/* AWRP page — Figma 830:3298 (1512 artboard, container x=120) */
.awrp { --fs-48: clamp(32px, 1.45rem + 1.75vw, 48px); --r-20: 20px; }
.awrp .rounded-20 { border-radius: var(--r-20); overflow: hidden; }
.awrp .rounded-20 img { width: 100%; height: 100%; object-fit: cover; }
.awrp-h2 { font-family: var(--ff-display); font-weight: var(--fw-medium); font-size: var(--fs-48); line-height: 1.2; color: var(--c-black); }
.awrp-eyebrow { font-family: var(--ff-display); font-style: italic; font-weight: var(--fw-regular); font-size: 20px; line-height: 1.6; color: var(--c-black); }

/* ---------- Hero ---------- */
.awrp-hero { position: relative; padding-top: 249px; }
.awrp-hero__bg::after { background: linear-gradient(to top, #fff 0%, rgba(255,255,255,0) 26%); }
.awrp-hero__title { max-width: 691px; }
.awrp-hero__row { display: grid; grid-template-columns: 386px 528px 1fr; column-gap: 0; margin-top: 31px; }
.awrp-hero__sub { font-family: var(--ff-display); font-weight: var(--fw-medium); font-size: 32px; line-height: 1.2; color: var(--c-blue); max-width: 386px; }
.awrp-hero__text { grid-column: 2; margin-left: -28px; font-family: var(--ff-body); font-weight: 300; font-size: 18px; line-height: 30px; letter-spacing: .36px; color: var(--c-black); }
.awrp-hero__ctas { display: flex; flex-direction: column; align-items: flex-start; gap: 23px; padding-left: 213px; }

/* ---------- Marquee ---------- */
.awrp-marquee { margin-top: 38px; font-family: var(--ff-display); font-style: italic; font-size: clamp(44px, 2rem + 3.6vw, 84px); line-height: 1.2; color: var(--c-light-blue); user-select: none; }
.awrp-marquee .marquee__track { --marquee-dur: 50s; }

/* ---------- Section head ---------- */
.awrp-head { display: grid; justify-items: center; }
.awrp-head__emblem { width: 92px; height: auto; margin-bottom: 14px; }
.awrp-head .awrp-h2 { margin-top: 8px; }

/* ---------- Why AWRP ---------- */
.awrp-why { padding-top: 190px; }
.awrp-why__grid { display: grid; grid-template-columns: 590px 1fr; gap: 56px; margin-top: 48px; align-items: start; }
.awrp-why__media { aspect-ratio: 590 / 607; }
.awrp-why__list { position: relative; margin-top: 69px; border-top: 1px solid var(--c-grey); max-width: 626px; }
.awrp-why__dot { position: absolute; left: -72px; top: 25px; width: 33px; height: 33px; border-radius: 50%; background: var(--c-lila);
  transition: transform var(--dur-slow) var(--ease); transform: translateY(var(--dot-y, 0px)); }

/* Accordion (shared by Why + FAQ) */
.acc { border-bottom: 1px solid var(--c-grey); }
.acc__h { font: inherit; }
.acc__btn { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 24px; text-align: left;
  font-family: var(--ff-display); font-weight: var(--fw-regular); font-size: 20px; letter-spacing: .4px; line-height: 1.2; color: var(--c-grey);
  padding: 25px 0; transition: color var(--dur-fast) var(--ease); }
.acc__btn:hover, .acc.is-open .acc__btn { color: var(--c-black); }
.acc__btn > span:first-child { max-width: 583px; }
.acc__icon { position: relative; flex: none; width: 24px; height: 24px; margin-right: 14px; }
.acc__icon::before, .acc__icon::after { content: ""; position: absolute; left: 5px; right: 5px; top: 50%; height: 1.5px; margin-top: -.75px; background: currentColor; transition: transform var(--dur) var(--ease); }
.acc__icon::after { transform: rotate(90deg); }
.acc.is-open .acc__icon::after { transform: rotate(0deg); }
.acc__panel { overflow: hidden; }
.acc__panel p { font-family: var(--ff-body); font-size: 16px; line-height: 28px; color: var(--c-grey); max-width: 545px; padding-bottom: 16px; }
.acc.is-open .acc__btn { padding-bottom: 8px; }
.acc--lg .acc__btn { font-size: clamp(22px, 1.1rem + .9vw, 32px); letter-spacing: .64px; padding: 22px 0; justify-content: flex-start; gap: 26px; }
.acc--lg .acc__btn > span:first-child { max-width: none; }
.acc--lg:last-child .acc__btn > span:first-child { max-width: 385px; }
.acc--lg .acc__icon { margin-right: 0; }
.acc--lg .acc__panel p { font-size: 16px; line-height: 24px; max-width: 609px; padding-bottom: 22px; }
.acc--lg.is-open .acc__btn { padding-bottom: 6px; }

/* ---------- What is included ---------- */
.awrp-incl { padding-top: 195px; }
.awrp-incl__intro { max-width: 465px; }
.awrp-incl__intro .t-body { margin-top: 12px; font-size: 16px; }
.awrp-incl__intro strong { font-weight: var(--fw-bold); color: var(--c-grey); }
.awrp-incl__row { display: grid; grid-template-columns: 1fr 590px; gap: 92px; align-items: start; margin-top: 25px; }
.awrp-incl__row--rev { grid-template-columns: 590px 1fr; margin-top: 80px; }
.awrp-incl__row--rev .awrp-incl__copy { order: 2; padding-top: 21px; }
.awrp-incl__copy { padding-top: 21px; max-width: 590px; }
.awrp-incl__lead { max-width: 415px; margin-top: 18px; }
.awrp-incl__media { position: relative; }
.awrp-incl__media > .rounded-20, .awrp-incl__media.rounded-20 { aspect-ratio: 590 / 400; }
.awrp-incl__media--people { margin-top: 0; }
.awrp-badge { position: absolute; z-index: 1; width: 228px; height: 228px; left: -102px; top: -114px; pointer-events: none;
  animation: awrp-spin 40s linear infinite; }
@keyframes awrp-spin { to { transform: rotate(360deg); } }
.awrp-chips { display: flex; flex-wrap: wrap; gap: 16px; max-width: 555px; margin-top: 32px; }
.awrp-chips li { padding: 10px; background: var(--c-light-blue); font-family: var(--ff-display); font-weight: 300; font-size: 16px; line-height: normal; letter-spacing: .32px; color: var(--c-black); }

/* ---------- How it works ---------- */
.awrp-how { margin-top: 195px; background: var(--c-light-grey); border-radius: var(--r-20); padding: 102px 24px 136px; }
.awrp-how__sub { margin-top: 8px; }
.awrp-steps { display: grid; grid-template-columns: 120px 734px; gap: 40px; justify-content: center; padding-right: 72px; margin-top: 54px; }
.awrp-steps__nav { display: flex; flex-direction: column; align-items: flex-end; padding-top: 82px; }
.awrp-steps__nav [role="tab"] { font-family: var(--ff-display); font-size: 14px; line-height: 2; letter-spacing: .4px; color: var(--c-grey); transition: color var(--dur-fast) var(--ease), font-size var(--dur) var(--ease); }
.awrp-steps__nav [role="tab"][aria-selected="true"] { font-size: 20px; color: var(--c-black); }
.awrp-steps__nav [role="tab"]:hover { color: var(--c-black); }
.awrp-steps__stack { position: relative; height: 299px; }
.awrp-steps__layer { position: absolute; inset: 0; border: 1px solid var(--c-light-blue); border-radius: var(--r-20); background: #fff; transition: transform var(--dur-slow) var(--ease); }
.awrp-steps__layer:nth-child(1) { transform: translate(72px, 72px); }
.awrp-steps__layer:nth-child(2) { transform: translate(48px, 48px); background: var(--c-light-blue); }
.awrp-steps__layer:nth-child(3) { transform: translate(24px, 24px); background: var(--c-light-grey); }
.awrp-step { position: absolute; inset: 0; display: flex; gap: 66px; padding: 79px 40px 40px 36px; border: 1px solid var(--c-light-blue); border-radius: var(--r-20); background: #fff; }
.awrp-step img { width: 64px; height: auto; flex: none; align-self: flex-start; margin-top: 39px; }
.awrp-step h3 { font-family: var(--ff-display); font-weight: var(--fw-regular); font-size: 32px; line-height: normal; letter-spacing: .64px; color: var(--c-black); }
.awrp-step p { margin-top: 8px; max-width: 450px; font-family: var(--ff-body); font-size: 20px; line-height: 32px; color: var(--c-grey); }
.awrp-step[hidden] { display: none; }
.js .awrp-step.is-active { animation: awrp-step-in 600ms var(--ease) both; }
@keyframes awrp-step-in { from { opacity: 0; transform: translate(12px, 12px); } to { opacity: 1; transform: none; } }

/* ---------- Who for ---------- */
.awrp-for { padding-top: 122px; }
.awrp-for__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 19px; margin-top: 48px; }
.awrp-for__card { display: flex; flex-direction: column; justify-content: space-between; gap: 48px; min-height: 313px; padding: 49px 28px 45px 42px; background: var(--c-light-grey); border-radius: var(--r-20);
  transition: transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease); }
.awrp-for__card:hover { transform: translateY(-4px); box-shadow: var(--sh-card); }
.awrp-for__card h3 { display: flex; align-items: center; gap: 13px; font-family: var(--ff-display); font-weight: var(--fw-bold); font-size: 20px; line-height: 1.2; color: var(--c-black); }
.awrp-for__card h3::before { content: ""; width: 27px; height: 1px; background: var(--c-black); flex: none; }
.awrp-for__card p { font-size: 16px; line-height: 28px; color: var(--c-grey); max-width: 317px; }

/* ---------- Split CTA ---------- */
.awrp-split { display: grid; grid-template-columns: 874fr 638fr; margin-top: 122px; min-height: 596px; color: #fff; }
.awrp-split__left { position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: center; padding: 64px 48px 64px var(--gutter); }
.awrp-split__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform 1.6s var(--ease); }
.awrp-split__left::after { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,.5); z-index: -1; }
.awrp-split__left:hover .awrp-split__bg { transform: scale(1.03); }
.awrp-split__left h2 { font-family: var(--ff-display); font-weight: var(--fw-medium); font-size: var(--fs-48); line-height: 1.2; color: #fff; max-width: 618px; }
.awrp-split__left p { margin-top: 12px; font-size: 20px; line-height: 28px; max-width: 672px; }
.awrp-split__left .btn { margin-top: 32px; }
.awrp-split__inner { position: relative; }
.awrp-split__right { background: var(--c-blue); display: flex; align-items: center; padding: 64px var(--gutter) 64px 107px; }
.awrp-split__right img { width: 70px; height: auto; }
.awrp-split__right h3 { margin-top: 32px; font-family: var(--ff-display); font-weight: var(--fw-bold); font-style: italic; font-size: 20px; line-height: 1.6; color: #fff; }
.awrp-split__right p { margin-top: 8px; font-size: 16px; line-height: 28px; max-width: 375px; }
.awrp-split__right .btn { margin-top: 32px; }

/* ---------- Light panel: stats / team / FAQ ---------- */
.awrp-panel { background: var(--c-light-grey); padding: 116px 0 168px; }
.awrp-stats { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0; align-items: start; }
.awrp-stats .awrp-h2 { max-width: 572px; }
.awrp-stats__text { margin-top: 26px; max-width: 529px; }
.awrp-stats__list { display: grid; grid-template-columns: 211px 222px auto; padding-right: 30px; margin-left: -60px; }
.awrp-stats__list dt { display: flex; align-items: baseline; gap: 6px; white-space: nowrap; }
.awrp-stats__num { font-family: var(--ff-display); font-weight: var(--fw-medium); font-style: italic; font-size: clamp(44px, 2rem + 1.8vw, 64px); letter-spacing: 1.28px; line-height: 1; color: var(--c-blue); }
.awrp-stats__unit { font-family: var(--ff-body); font-weight: var(--fw-medium); font-style: italic; font-size: 16px; color: var(--c-blue); }
.awrp-stats__list dd { margin-top: 14px; max-width: 181px; font-family: var(--ff-body); font-weight: 300; font-style: italic; font-size: 16px; line-height: 20px; color: var(--c-blue); }

.awrp-team { display: grid; grid-template-columns: 1fr 841px; gap: 19px; margin-top: 64px; align-items: center; }
.awrp-team__head .awrp-h2 { max-width: 405px; }
.awrp-team__link { display: inline-flex; gap: 6px; margin-top: 30px; font-family: var(--ff-display); font-weight: 300; font-size: 20px; letter-spacing: .4px; color: var(--c-blue); }
.awrp-team__link span:last-child { transition: transform var(--dur) var(--ease); }
.awrp-team__link:hover span:last-child { transform: translateX(4px); }
.awrp-team__cards { display: grid; grid-template-columns: 1fr 1fr; gap: 19px; }
.awrp-person { display: flex; flex-direction: column; height: 100%; min-height: 353px; padding: 39px 40px 32px; background: #fff; border: 1px solid var(--c-light-blue); border-radius: var(--r-20);
  transition: transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease); }
.awrp-person:hover { transform: translateY(-4px); box-shadow: var(--sh-card); }
.awrp-person__top { display: flex; align-items: flex-end; gap: 20px; }
.awrp-person__top img { width: 100px; height: 100px; border-radius: 10px; object-fit: cover; object-position: top; }
.awrp-person__arrow { width: 24px; height: 24px; color: var(--c-grey); transition: transform var(--dur) var(--ease); }
.awrp-person:hover .awrp-person__arrow { transform: translate(3px, -3px); }
.awrp-person__name { margin-top: 20px; font-family: var(--ff-display); font-weight: var(--fw-bold); font-size: 32px; letter-spacing: .64px; color: var(--c-black); }
.awrp-person__role { margin-top: 4px; font-family: var(--ff-body); font-style: italic; font-size: 16px; line-height: 28px; color: var(--c-black); max-width: 336px; }

.awrp-faq { display: grid; grid-template-columns: 590px 1fr; gap: 56px; margin-top: 168px; align-items: start; }
.awrp-faq__media { aspect-ratio: 590 / 800; }
.awrp-faq .awrp-h2 { margin-top: 27px; }
.awrp-faq__list { margin-top: 26px; border-top: 1px solid var(--c-grey); max-width: 626px; }
.awrp-faq .acc__btn { min-height: 72px; padding: 14px 0; color: var(--c-grey); }
.awrp-faq .acc.is-open .acc__btn { color: var(--c-black); }

/* ---------- Final CTA ---------- */
.awrp-final { position: relative; isolation: isolate; overflow: hidden; min-height: 479px; display: grid; place-items: center; text-align: center; color: #fff; padding: 96px 0; }
.awrp-final__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.awrp-final::after { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,.55); z-index: -1; }
.awrp-final h2 { margin-inline: auto; max-width: 618px; font-family: var(--ff-display); font-weight: var(--fw-medium); font-size: var(--fs-48); line-height: 1.2; color: #fff; }
.awrp-final p { margin: 12px auto 0; max-width: 488px; font-size: 20px; line-height: 28px; }
.awrp-final__ctas { display: flex; flex-wrap: wrap; justify-content: center; gap: 18px; margin-top: 40px; }

/* ---------- Responsive ---------- */
@media (max-width: 1399px) {
  .awrp-hero__row { grid-template-columns: minmax(0, 340px) minmax(0, 1fr) auto; column-gap: 40px; }
  .awrp-hero__text { margin-left: 0; max-width: 528px; }
  .awrp-hero__ctas { padding-left: 0; }
  .awrp-why__grid, .awrp-faq { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .awrp-incl__row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; }
  .awrp-steps { grid-template-columns: 80px minmax(0, 734px); gap: 24px; }
  .awrp-team { grid-template-columns: 1fr 2fr; }
  .awrp-stats__list { margin-left: 0; }
  .awrp-why__dot { left: -50px; }
}
@media (max-width: 1099px) {
  .awrp-hero { padding-top: 200px; }
  .awrp-hero__row { grid-template-columns: 1fr 1fr; row-gap: 24px; }
  .awrp-hero__text { grid-column: 2; grid-row: 1 / span 2; }
  .awrp-hero__ctas { flex-direction: row; flex-wrap: wrap; gap: 12px; }
  .awrp-stats { grid-template-columns: 1fr; }
  .awrp-stats__list { grid-template-columns: repeat(3, auto); justify-content: start; gap: 40px; padding: 0; }
  .awrp-team { grid-template-columns: 1fr; }
  .awrp-why__dot { display: none; }
  .awrp-split { grid-template-columns: 1fr; }
  .awrp-split__left, .awrp-split__right { padding: 96px var(--gutter); }
}
@media (max-width: 899px) {
  .awrp-hero__row { grid-template-columns: 1fr; }
  .awrp-hero__text { grid-column: 1; grid-row: auto; }
  .awrp-hero__sub { font-size: 26px; }
  .awrp-why, .awrp-incl { padding-top: 120px; }
  .awrp-why__grid, .awrp-faq, .awrp-incl__row, .awrp-incl__row--rev { grid-template-columns: 1fr; gap: 32px; }
  .awrp-why__list, .awrp-faq__list { margin-top: 0; max-width: none; }
  .awrp-why__media { aspect-ratio: 16 / 10; }
  .awrp-faq__media { aspect-ratio: 16 / 10; order: 2; }
  .awrp-incl__row--rev .awrp-incl__copy { order: 0; }
  .awrp-incl__row--rev { margin-top: 72px; }
  .awrp-incl__media--people { margin-top: 64px; }
  .awrp-badge { width: 150px; height: 150px; left: auto; right: -12px; top: -75px; }
  .awrp-how { margin-top: 120px; padding: 72px 20px 88px; }
  .awrp-steps { grid-template-columns: 1fr; padding-right: 0; gap: 0; }
  .awrp-steps__nav { flex-direction: row; justify-content: center; align-items: baseline; gap: 16px; padding: 0 0 24px; }
  .awrp-steps__stack { margin: 0 36px 36px 0; height: auto; min-height: 280px; }
  .awrp-step { flex-direction: column; gap: 16px; padding: 32px 24px; position: relative; inset: auto; min-height: 280px; }
  .awrp-step[hidden] { display: none; }
  .awrp-steps__layer:nth-child(1) { transform: translate(36px, 36px); }
  .awrp-steps__layer:nth-child(2) { transform: translate(24px, 24px); }
  .awrp-steps__layer:nth-child(3) { transform: translate(12px, 12px); }
  .awrp-step img { margin-top: 0; width: 48px; }
  .awrp-step h3 { font-size: 28px; }
  .awrp-step p { font-size: 18px; line-height: 28px; }
  .awrp-for { padding-top: 96px; }
  .awrp-for__grid { grid-template-columns: 1fr; }
  .awrp-for__card { min-height: 0; padding: 32px 28px; }
  .awrp-split { margin-top: 96px; }
  .awrp-split__left, .awrp-split__right { padding: 80px var(--gutter); }
  .awrp-panel { padding: 88px 0 112px; }
  .awrp-team__cards { grid-template-columns: 1fr; }
  .awrp-faq { margin-top: 112px; }
  .awrp-faq .awrp-h2 { margin-top: 0; }
}
@media (max-width: 639px) {
  .awrp-hero { padding-top: 160px; }
  .awrp-stats__list { grid-template-columns: 1fr 1fr; gap: 32px 24px; }
  .awrp-person { padding: 28px 24px; min-height: 0; }
  .awrp-person__name { font-size: 28px; }
  .awrp-split__left p, .awrp-final p { font-size: 18px; }
  .acc__icon { margin-right: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .awrp-badge { animation: none; }
}
