@font-face{font-family:Octave;src:url("fonts/OctaveMedium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
:root{--u:calc(min(100vw,1440px)/1440);--black:#1e1e1e;--muted:#8a8a8a;--body-grey:#6c6c6c;--light:#f1f1f1;--pale:#fafafa;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}
html{background:white}
body{margin:0;background:white;color:var(--black);font:500 20px/1.28 Octave,sans-serif;-webkit-font-smoothing:antialiased}
button{font-family:inherit;color:inherit}
p,h1,h2,h3,ul,blockquote{margin:0}
h1,h2,h3{font-weight:500}
button:focus-visible,[tabindex]:focus-visible{outline:2px solid #888;outline-offset:5px}
img{display:block}
.canvas{width:min(100%,1440px);margin-inline:auto;position:relative}
.headline{font-weight:500;font-size:calc(42*var(--u));line-height:1.14;letter-spacing:calc(-.84*var(--u))}
.muted{color:var(--muted)}
.tag{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;background:var(--light);color:var(--body-grey);font:500 calc(14*var(--u))/1.14 Octave,sans-serif;letter-spacing:calc(-.14*var(--u));padding:calc(14*var(--u)) calc(12*var(--u));border-radius:calc(10*var(--u))}
.cover-stage{height:max(100svh,calc(762*var(--u)));position:relative;text-align:center;background:white}
.cover-title{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);color:#8a8a8a;font-size:calc(54*var(--u));line-height:1.14;letter-spacing:calc(-2.7*var(--u));font-weight:500;white-space:nowrap}
.cover-statement{width:calc(788*var(--u));max-width:calc(100% - 40px);margin-inline:auto;padding-top:calc(570*var(--u));font-size:calc(42*var(--u));line-height:1.1;letter-spacing:calc(-.84*var(--u))}
.has-motion .cover-statement{position:absolute;padding:0;top:28.35%;left:50%;margin:0;transform:translate(-50%,20px);opacity:0}
.challenge{height:calc(1749*var(--u))}
.challenge>h2{position:absolute;top:calc(137*var(--u));width:100%;font-size:calc(46*var(--u));line-height:1.1;letter-spacing:calc(-.92*var(--u));text-align:center}
.challenge-timeline{position:absolute;top:calc(240*var(--u));left:50%;transform:translateX(-50%);width:calc(7*var(--u));height:calc(1084.5*var(--u))}
.challenge-timeline img{position:absolute;width:calc(7*var(--u));height:calc(1084.5*var(--u))}
.timeline-base{filter:brightness(0);opacity:.14}
.timeline-fill{filter:brightness(0);clip-path:inset(0 0 90% 0)}
.challenge-point{position:absolute;width:calc(315*var(--u));font-size:calc(20*var(--u));letter-spacing:calc(-.4*var(--u));line-height:1.28}
.challenge-point h3{font:inherit;color:black;margin-bottom:calc(14*var(--u))}
.challenge-point p{color:var(--body-grey)}
.challenge-point:nth-child(1){top:calc(466*var(--u));left:calc(752*var(--u))}
.challenge-point:nth-child(2){top:calc(716*var(--u));left:calc(364*var(--u));text-align:right}
.challenge-point:nth-child(3){top:calc(964*var(--u));left:calc(752*var(--u))}
.mobile-step,.mobile-connector{display:none}
.challenge-tag{position:absolute;top:calc(1352.5*var(--u));left:50%;transform:translateX(-50%)}
.challenge-question{position:absolute;top:calc(1450*var(--u));left:50%;transform:translateX(-50%);width:calc(788*var(--u));text-align:center}
.sync{height:calc(657*var(--u));display:flex;align-items:center;justify-content:center}
.sync-card{position:relative;width:calc(438*var(--u));height:calc(257*var(--u));border-radius:calc(20*var(--u));overflow:hidden;display:flex;justify-content:center;align-items:center}
.sync-media{position:absolute;inset:0;overflow:hidden}
.sync-media img{position:absolute;width:102.86%;height:259.87%;left:-1.85%;top:-75.09%;max-width:none}
.sync-media:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.32)}
.sync-card p{position:relative;text-align:center;color:#f5f5f5;font:500 calc(20.512*var(--u))/1.1 Octave,sans-serif;letter-spacing:calc(-.4102*var(--u))}
.recommendation{height:calc(1210*var(--u))}
.recommendation-heading{position:absolute;top:calc(135*var(--u));width:100%;text-align:center}
.recommendation-heading h2{margin-top:calc(24*var(--u))}
.recommendation-body{position:absolute;left:calc(265*var(--u));top:calc(557*var(--u));display:grid;grid-template-columns:calc(415*var(--u)) calc(371*var(--u));gap:calc(123*var(--u))}
.realignment-image{width:calc(415*var(--u));height:calc(518*var(--u));border-radius:calc(19*var(--u));position:relative;overflow:hidden;background:#171717}
.realignment-image img{position:absolute;width:113.8%;height:102.7%;left:-6.88%;top:-2.7%;max-width:none}
.recommendation-copy{padding-top:calc(126*var(--u))}
.recommendation-copy>p{color:var(--body-grey);font-size:calc(20*var(--u));letter-spacing:calc(-.4*var(--u));margin-top:calc(20*var(--u))}
.recommendation-copy ul{padding-left:calc(21*var(--u));font:500 calc(14*var(--u))/calc(31*var(--u)) Octave,sans-serif;margin-top:calc(40*var(--u))}
.phases{padding:calc(150*var(--u)) 0}
.phases-stage{min-height:calc(1007*var(--u));width:100%;display:flex;flex-direction:column;align-items:center}
.phases h2{text-align:center;margin-bottom:calc(68*var(--u))}
.phase-list{width:calc(557*var(--u))}
.phase{padding:0 calc(43*var(--u));border-radius:calc(30*var(--u));transition:background-color .45s var(--ease),padding .45s var(--ease)}
.phase h3{font-size:calc(20*var(--u));line-height:1.28}
.phase-heading{display:flex;align-items:center;gap:calc(18*var(--u));width:100%;text-align:left;border:0;background:none;padding:calc(34*var(--u)) 0;cursor:pointer;font-size:inherit;font-weight:500;line-height:1.28;letter-spacing:calc(-.4*var(--u));transition:padding .45s var(--ease)}
.phase-number{font-size:calc(12*var(--u));width:calc(21*var(--u));transition:width .45s var(--ease),opacity .45s var(--ease)}
.phase-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.phase-content{overflow:hidden;min-height:0;font-size:calc(20*var(--u));letter-spacing:calc(-.4*var(--u));color:var(--body-grey);opacity:0;transition:opacity .3s ease}
.phase-content>p{margin-bottom:calc(30*var(--u))}
.phase-divider{width:100%;height:calc(2*var(--u));margin-bottom:calc(30*var(--u))}
.phase-content .tag{color:#666666}
.phase-content ul{font:500 calc(14*var(--u))/calc(31*var(--u)) Octave,sans-serif;color:var(--black);letter-spacing:0;padding-left:calc(21*var(--u));margin:calc(30*var(--u)) 0 calc(60*var(--u))}
.phase.is-open{background:var(--pale);padding-inline:calc(60*var(--u));margin-bottom:calc(25*var(--u))}
.phase.is-open .phase-heading{padding-top:calc(60*var(--u));padding-bottom:calc(14*var(--u))}
.phase.is-open .phase-number{width:0;opacity:0;margin-right:calc(-18*var(--u));overflow:hidden}
.phase.is-open .phase-panel{grid-template-rows:1fr}
.phase.is-open .phase-content{opacity:1}
.placeholder-copy{padding-bottom:0}
.placeholder-copy .tag{margin-bottom:calc(30*var(--u))}
.phase.is-open .placeholder-copy{padding-bottom:calc(30*var(--u))}
.work{overflow:clip}
.work-stage{height:calc(1054*var(--u))}
.work h2{position:absolute;top:calc(149*var(--u));width:100%;text-align:center}
.work-viewport{position:absolute;top:calc(366*var(--u));left:0;width:100%;overflow:visible}
.work-track{display:flex;align-items:flex-start;gap:calc(14*var(--u));width:max-content;padding-left:calc(265*var(--u));padding-right:calc(120*var(--u))}
.case-card{position:relative;flex:0 0 calc(525*var(--u));width:calc(525*var(--u));height:calc(537*var(--u));padding:calc(28*var(--u));border-radius:calc(40*var(--u));overflow:hidden;display:flex;align-items:flex-end;background:#171717;color:white}
.case-media{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none}
.case-media>img,.case-media>video{position:absolute;max-width:none}
.auro{background:#f7f7f7;padding:calc(28*var(--u))}
.auro .case-media>img{width:112.49%;height:112.75%;left:-2.74%;top:-6.26%}
.auro-logo{position:absolute;width:calc(175*var(--u));height:calc(70*var(--u));left:50%;top:calc(199*var(--u));transform:translateX(-50%)}
.basal{background:rgba(237,237,237,.59);color:black}
.basal .case-media>img{width:72.09%;height:88.1%;left:13.96%;top:-3.98%}
.pinto .case-media>video{width:117.126%;height:129.738%;left:-8.563%;top:6.338%;object-fit:cover}
.mira{width:calc(485*var(--u));flex-basis:calc(485*var(--u));border-radius:calc(19*var(--u))}
.mira .case-media>img{width:122.67%;height:114.03%;left:-1.72%;top:-14.12%}
.mira .case-media:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 50.114%,rgba(0,0,0,.23))}
.case-copy{position:relative;isolation:isolate;padding-right:calc(40*var(--u));font-size:calc(20*var(--u));line-height:1.28;letter-spacing:calc(-.4*var(--u))}
/* A soft backdrop follows the copy height as the case descriptions wrap. */
.case-copy::before{content:"";position:absolute;z-index:-1;inset:-32px calc(-28*var(--u)) calc(-28*var(--u));background:linear-gradient(to bottom,transparent,rgba(0,0,0,.72) 32px);pointer-events:none}
.basal .case-copy::before{background:linear-gradient(to bottom,transparent,rgba(244,244,244,.96) 32px)}
.pinto .case-copy::before{background:linear-gradient(to bottom,transparent,rgba(24,24,24,.96) 32px)}
.case-copy h3{font:inherit;margin-bottom:calc(8*var(--u))}
.case-copy p{opacity:.59}
.basal .case-copy p{opacity:.5}
.mira .case-copy{font-size:calc(16*var(--u));line-height:1.14;letter-spacing:calc(-.16*var(--u));padding:0}
.mira .case-copy h3{font-weight:500}
.mira .case-copy p{opacity:.7}
.case-link{position:absolute;right:calc(20*var(--u));top:calc(20*var(--u));display:flex;align-items:center;justify-content:flex-end;gap:calc(12*var(--u));padding:calc(22*var(--u));border:1px solid rgba(226,226,226,.11);border-radius:38px;background:rgba(217,217,217,.29);backdrop-filter:blur(2px);font-size:calc(15*var(--u));font-weight:500;color:inherit;line-height:1;cursor:default;min-height:calc(59*var(--u))}
.case-link img{width:calc(13.8536*var(--u));height:calc(13.8536*var(--u));flex:none}
.basal .case-link img{width:calc(15.8536*var(--u));height:calc(15.8536*var(--u))}
.case-link span{white-space:nowrap;max-width:0;opacity:0;overflow:hidden;margin-right:calc(-12*var(--u));transition:max-width .4s var(--ease),opacity .3s ease,margin .4s var(--ease)}
.case-card:hover .case-link span,.case-card:focus-within .case-link span{max-width:140px;opacity:1;margin-right:0}
.testimonials{height:calc(900*var(--u));overflow:clip}
.testimonials>h2{position:absolute;top:calc(264*var(--u));left:calc(103*var(--u));font:500 calc(20*var(--u))/1.2 Octave,sans-serif;color:#191919}
.testimonial-list{position:absolute;top:calc(244*var(--u));left:calc(433*var(--u));display:flex;gap:calc(25*var(--u));overflow-x:auto;width:calc(100% - 433*var(--u));padding-right:calc(25*var(--u));scrollbar-width:none;scroll-snap-type:x mandatory}
.testimonial-list::-webkit-scrollbar{display:none}
.testimonial{position:relative;flex:none;width:calc(331*var(--u));height:calc(416*var(--u));padding:calc(24*var(--u));background:var(--pale);border-radius:calc(20*var(--u));display:flex;flex-direction:column;justify-content:space-between;scroll-snap-align:start}
.testimonial blockquote{font:500 calc(16*var(--u))/1.28 Octave,sans-serif;letter-spacing:calc(-.16*var(--u));color:black}
.testimonial-author{display:flex;gap:calc(14*var(--u));align-items:flex-end}
.testimonial-photo{position:relative;width:calc(75.497*var(--u));height:calc(75.497*var(--u));border-radius:calc(7*var(--u));overflow:hidden}
.testimonial-photo img{position:absolute;width:198.09%;height:202.42%;left:-77.36%;top:-26.42%;max-width:none}
.testimonial-author p{width:calc(75*var(--u));font:500 calc(14*var(--u))/1.35 Octave,sans-serif}
.testimonial-author p span{color:var(--muted)}
.next{padding:calc(205*var(--u)) calc(120*var(--u)) calc(120*var(--u))}
/* The new sections use the supplied Figma typography, spacing, and local assets. */
.fit,.ways{padding:calc(168*var(--u)) 24px;display:flex;flex-direction:column;align-items:center;gap:calc(115*var(--u))}
.fit>h2{width:calc(612*var(--u));max-width:100%;text-align:center}
.fit>h2>span{color:var(--body-grey)}
.fit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:calc(910*var(--u));max-width:100%;padding:calc(4*var(--u));background:var(--pale);border-radius:calc(28*var(--u))}
.fit-column{min-width:0;padding:calc(54*var(--u));border-radius:calc(28*var(--u));display:flex;flex-direction:column;gap:calc(25*var(--u))}
.fit-good{background:white}
.fit-column h3{display:flex;align-items:center;gap:calc(11*var(--u));font:500 calc(14*var(--u))/calc(31*var(--u)) Octave,sans-serif}
.fit-column h3 img{flex:none}
.fit-column ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:calc(20*var(--u));font-size:calc(20*var(--u));line-height:1.28;letter-spacing:calc(-.4*var(--u));color:#666666}
.ways>h2{text-align:center}
.ways-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(12*var(--u));width:calc(1122*var(--u));max-width:100%;align-items:stretch}
.option-card{min-width:0;background:var(--pale);padding:calc(54*var(--u));border-radius:calc(28*var(--u));display:flex;flex-direction:column;align-items:flex-start;gap:calc(30*var(--u))}
.option-card .tag{color:#666666}
.option-card h3{font-size:calc(31*var(--u));line-height:1.14;letter-spacing:calc(-.62*var(--u));color:black}
.option-divider{height:2px;width:100%;overflow:hidden;flex:none}
.option-card dl{width:100%;margin:0;display:flex;flex-direction:column;gap:calc(24*var(--u))}
.option-card dt{font:500 calc(14*var(--u))/calc(31*var(--u)) Octave,sans-serif;color:var(--body-grey)}
.option-card dd{margin:0;font-size:calc(20*var(--u));line-height:1.28;letter-spacing:calc(-.4*var(--u))}
.next-card{height:calc(490*var(--u));background:var(--black);border-radius:calc(30*var(--u));padding:calc(200*var(--u)) calc(100*var(--u)) 0;display:flex;flex-direction:column;align-items:center;gap:calc(28*var(--u));color:var(--light);text-align:center}
.start-button{font:500 calc(15*var(--u))/23.2px Octave,sans-serif;letter-spacing:calc(-.15*var(--u));padding:calc(14*var(--u)) calc(20*var(--u));border:0;border-radius:49px;background:#dedede;color:#313131;cursor:default}
@media(min-width:1100px) and (max-height:800px){.has-motion .phases-stage{min-height:0;padding:16px 0}.has-motion .phases h2{margin-bottom:24px}.has-motion .phase-list{width:calc(557*var(--u))}.has-motion .phase.is-open .phase-heading{padding-top:calc(24*var(--u));padding-bottom:calc(10*var(--u))}.has-motion .phase-content>p,.has-motion .phase-divider{margin-bottom:calc(20*var(--u))}.has-motion .phase-content ul{margin-top:calc(20*var(--u));margin-bottom:calc(24*var(--u))}.has-motion .phase-heading{padding-block:calc(15*var(--u))}}
@media(max-width:1099px){
  :root{--u:1px}
  body{font-size:18px}
  .headline{font-size:32px;letter-spacing:-.64px}
  .tag{font-size:12px;padding:10px 12px;border-radius:10px}
  .cover-stage{height:100svh;min-height:640px}
  .cover-title{font-size:28px;letter-spacing:-1.2px;padding:0 16px;white-space:normal;line-height:1.2}
  .cover-statement{width:calc(100% - 48px);max-width:450px;font-size:30px;letter-spacing:-.6px;padding-top:60svh;line-height:1.12}
  .has-motion .cover-statement{top:29%;max-width:450px;transform:translate(-50%,20px)}
  .challenge{height:auto;padding:100px 16px 80px}
  .challenge>h2{position:static;font-size:32px;letter-spacing:-.64px;margin-bottom:72px}
  .challenge-timeline{display:none}
  .challenge-points{display:flex;flex-direction:column;align-items:center}
  .challenge-point,.challenge-point:nth-child(n){position:relative;left:auto;top:auto;width:100%;max-width:430px;text-align:center;font-size:18px;letter-spacing:-.36px}
  .challenge-point h3{font-weight:500;margin-bottom:12px}
  .challenge-point p{padding:0 14px}
  .mobile-step{display:inline-flex;background:#f5f5f5;color:#999;align-items:center;justify-content:center;padding:10px 12px;border-radius:12px;font:500 12px/1 Octave,sans-serif;margin-bottom:28px}
  .mobile-connector{display:block;width:2px;height:120px;background:#ddd;margin:40px auto;position:relative;overflow:hidden}
  .mobile-connector>span{position:absolute;inset:0;background:var(--black);transform:scaleY(0);transform-origin:top}
  .challenge-tag{position:static;transform:none;display:flex;width:max-content;margin:4px auto 28px}
  .challenge-question{position:static;width:100%;max-width:450px;margin:auto;transform:none;font-size:30px;letter-spacing:-.6px}
  .sync{height:580px;padding:80px 24px}
  .sync-card{width:min(80vw,438px);height:220px;border-radius:20px;max-width:100%}
  .sync-card p{font-size:19px;letter-spacing:-.38px}
  .recommendation{height:auto;padding:80px 24px 100px}
  .recommendation-heading{position:static}
  .recommendation-heading h2{margin-top:24px;font-size:30px}
  .recommendation-heading h2 br{display:none}
  .recommendation-body{position:static;display:flex;flex-direction:column;gap:38px;margin:72px auto 0;max-width:450px}
  .realignment-image{width:100%;height:auto;aspect-ratio:415/518;border-radius:19px}
  .recommendation-copy{padding:0}
  .recommendation-copy>p{font-size:18px;letter-spacing:-.36px;margin-top:20px}
  .recommendation-copy ul{font-size:14px;line-height:31px;margin-top:28px;padding-left:21px}
  .phases{padding:60px 20px 100px}
  .phases-stage{min-height:0;padding:28px 0;width:100%}
  .phases h2{margin-bottom:38px}
  .phase-list{width:100%;max-width:480px}
  .phase{padding:0 16px;border-radius:24px}
  .phase-heading{font-size:18px;letter-spacing:-.36px;padding:22px 0}
  .phase.is-open{padding:0 24px;margin-bottom:12px}
  .phase.is-open .phase-heading{padding:28px 0 14px}
  .phase-number{font-size:12px;width:21px}
  .phase-content{font-size:18px;letter-spacing:-.36px}
  .phase-content>p{margin-bottom:24px}
  .phase-divider{margin-bottom:24px;height:2px}
  .phase-content ul{font-size:13px;line-height:26px;margin:24px 0 28px;padding-left:18px}
  .phase.is-open .placeholder-copy{padding-bottom:24px}
  .placeholder-copy .tag{margin-bottom:24px}
  .work{padding:72px 0 96px}
  .work-stage{height:auto}
  .work h2{position:static;font-size:30px;padding:0 24px;margin-bottom:52px}
  .work-viewport{position:static;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
  .work-viewport::-webkit-scrollbar{display:none}
  .work-track{gap:14px;padding:0 24px;transform:none!important}
  .case-card,.mira{width:min(82vw,400px);flex-basis:min(82vw,400px);height:420px;padding:24px;border-radius:30px;scroll-snap-align:center}
  .case-copy{font-size:18px;letter-spacing:-.36px;padding-right:10px}
  .mira .case-copy{font-size:16px}
  .case-link{top:16px;right:16px;min-height:44px;padding:14px;font-size:13px}
  .case-link span{max-width:140px;opacity:1;margin-right:0}
  .case-link img{width:13.8536px;height:13.8536px}
  .basal .case-link img{width:15.8536px;height:15.8536px}
  .auro-logo{width:175px;height:70px;top:72px}
  .testimonials{height:auto;padding:60px 0 100px}
  .testimonials>h2{position:static;font-size:20px;padding:0 24px;margin-bottom:36px}
  .testimonial-list{position:static;width:100%;gap:16px;padding:0 24px}
  .testimonial{width:82vw;max-width:331px;height:416px;padding:24px;border-radius:20px}
  .testimonial blockquote{font-size:16px;letter-spacing:-.16px}
  .testimonial-author{gap:14px}
  .testimonial-photo{width:75.497px;height:75.497px}
  .testimonial-author p{width:75px;font-size:14px}
  .next{padding:48px 24px 48px}
  .fit,.ways{padding:80px 24px;gap:48px}
  .fit>h2{width:100%;max-width:520px;font-size:30px;letter-spacing:-.6px}
  .fit-grid{width:100%;max-width:520px;grid-template-columns:minmax(0,1fr);padding:4px;border-radius:28px}
  .fit-column{padding:32px 24px;gap:24px;border-radius:24px}
  .fit-column h3{font-size:14px;line-height:1.5;gap:11px}
  .fit-column ul{font-size:18px;letter-spacing:-.36px;gap:20px}
  .ways>h2{font-size:30px;letter-spacing:-.6px}
  .ways-grid{width:100%;max-width:520px;grid-template-columns:minmax(0,1fr);gap:16px}
  .option-card{padding:32px;gap:28px;border-radius:28px}
  .option-card h3{font-size:28px;letter-spacing:-.56px}
  .option-card dl{gap:24px}
  .option-card dt{font-size:14px;line-height:31px}
  .option-card dd{font-size:18px;letter-spacing:-.36px}
  .next-card{height:350px;padding:105px 28px 0;border-radius:26px;gap:28px}
  .next-card .headline{font-size:30px}
  .start-button{font-size:15px;padding:14px 20px;line-height:23.2px}
}
@media(min-width:768px) and (max-width:1099px){
 .fit,.ways{padding:100px 32px;gap:64px}
 .fit>h2{width:612px;font-size:34px}
 .ways>h2{font-size:34px}
 .fit-grid,.ways-grid{width:100%}
 .fit-grid{max-width:910px}
 .fit-column{padding:32px 28px;gap:24px}
 .fit-column h3{font-size:14px;line-height:1.5}
 .fit-column ul{font-size:18px;gap:20px}
 .ways-grid{gap:12px}
 .option-card{padding:28px 24px;gap:28px}
 .option-card h3{font-size:26px}
 .option-card .tag{font-size:12px;padding:10px 12px}
 .option-card dl{gap:24px}
 .option-card dt{font-size:13px;line-height:28px}
 .option-card dd{font-size:18px}
}
@media(max-width:1099px) and (max-height:800px){.has-motion .phases-stage{padding:16px 0}.has-motion .phases h2{margin-bottom:20px}.has-motion .phase-heading{padding-block:14px;font-size:16px}.has-motion .phase.is-open .phase-heading{padding:20px 0 12px}.has-motion .phase-content{font-size:16px}.has-motion .phase-content>p,.has-motion .phase-divider{margin-bottom:16px}.has-motion .phase-content ul{margin:16px 0 20px;line-height:24px}.has-motion .placeholder-copy .tag{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.timeline-fill{clip-path:inset(0)}.mobile-connector>span{transform:scaleY(1)}.work-viewport{overflow-x:auto;scroll-snap-type:x mandatory}.case-card{scroll-snap-align:center}}

/* Revised cover and Figma geometry. */
.cover-title>span{display:inline-block;white-space:nowrap}
.cover-char{display:inline-block;will-change:filter,opacity}
.has-motion .cover-statement{top:50%;transform:translateX(-50%)}
.challenge-timeline{top:calc(309*var(--u));height:calc(961*var(--u))}
.challenge-timeline img{height:calc(961*var(--u))}
.challenge-point:nth-child(1){top:calc(299*var(--u))}
.challenge-point:nth-child(2){top:calc(624*var(--u))}
.challenge-point:nth-child(3){top:calc(947*var(--u))}
.challenge-tag{top:calc(1298*var(--u))}
.sync-card{aspect-ratio:438/257}
.sync-card p{transform-origin:center;white-space:nowrap}
.scope-copy{padding-bottom:calc(60*var(--u))}
.phase-divider{flex:none;opacity:1}
.pinto{background:#181818;isolation:isolate}
.pinto .case-media{mix-blend-mode:lighten}
.pinto .case-media>video{width:86%;height:auto;left:7%;top:-14.5%;object-fit:contain}
.case-link{transition:background-color .65s var(--ease),box-shadow .65s var(--ease);gap:0}
.case-link span{max-width:none;width:0;margin-right:0;transform:translateX(8px);transition:width .65s var(--ease),opacity .5s ease .12s,transform .65s var(--ease)}
.case-card:hover .case-link span,.case-card:focus-within .case-link span{max-width:none;width:calc(130*var(--u));margin-right:0;opacity:1;transform:translateX(0)}
.start-button{display:flex;align-items:center;justify-content:center;flex:none;width:calc(73*var(--u));height:calc(39*var(--u));padding:0;border-radius:calc(49*var(--u));line-height:1;box-shadow:none}
@media(min-width:1100px) and (max-height:800px){.has-motion .scope-copy{padding-bottom:calc(24*var(--u))}}
@media(max-width:1099px){
 .has-motion .cover-statement{top:50%;transform:translateX(-50%)}
 .challenge-point:nth-child(n){top:auto}
 .challenge-tag{top:auto}
 .sync-card{height:auto;aspect-ratio:438/257}
 .scope-copy{padding-bottom:28px}
 .case-link span{width:110px;opacity:1;transform:none}
 .case-card:hover .case-link span,.case-card:focus-within .case-link span{width:110px}
 .start-button{width:73px;height:39px;border-radius:49px;padding:0;line-height:1}
}
@media(max-width:1099px) and (max-height:800px){.has-motion .scope-copy{padding-bottom:20px}}

/* Cover reveal, full-height phase cards, and the confirmed content revisions. */
.motion-loading .cover-title,.motion-loading .cover-statement{visibility:hidden}
.timeline-dot{position:absolute;z-index:2;left:50%;top:calc(var(--dot-y)*var(--u));width:7px;height:7px;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:#dadada;box-shadow:0 0 0 4px white;transition:background-color .25s ease}
.timeline-dot.is-active{background:#1e1e1e}
.sync{display:block;height:auto}
.sync-stage{position:relative;min-height:100svh;display:flex;align-items:center;justify-content:center}
.sync-card{flex:none;max-width:none}
.sync-card p{font-family:Octave,sans-serif;font-weight:500}
.phases-scroll-stage{height:100svh;position:relative;overflow:clip}
.has-motion .phases-stage{position:absolute;top:0;left:0;min-height:0;height:auto;width:100%;padding-block:16px;will-change:transform}
.phase-content{max-height:none;overflow:hidden;scrollbar-width:auto}
.phase-divider{filter:none;opacity:1}
.mira{border-radius:calc(40*var(--u))}
.mira .case-copy{font-size:calc(20*var(--u));line-height:1.28;letter-spacing:calc(-.4*var(--u));padding-right:calc(40*var(--u))}
.mira .case-copy h3{font-weight:500}
.mira .case-copy p{opacity:.59}
.case-link{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
@media(max-width:1099px){
 .sync{padding:0}
 .sync-stage{width:100%}
 .mira{border-radius:30px}
 .mira .case-copy{font-size:18px;line-height:1.28;letter-spacing:-.36px;padding-right:10px}
 .has-motion .phases-stage{padding-block:16px}
}
@media(prefers-reduced-motion:reduce){
 .motion-loading .cover-title,.motion-loading .cover-statement{visibility:visible}
 .phases-scroll-stage{height:auto;overflow:visible}
 .sync-stage{min-height:0;padding:80px 24px}
 .sync-card{width:min(438px,100%);height:auto}
 .timeline-dot{background:#1e1e1e}
}
html{scrollbar-gutter:stable}
html.cover-revealing{overflow:hidden}
.cover-stage{height:100svh;min-height:0}
/* The sync image grows beyond the proposal's content canvas to both screen edges. */
.sync{width:100%;max-width:none;margin-inline:0}
@media(prefers-reduced-motion:reduce){.sync-stage{padding:0}.sync-card{width:100%;border-radius:0}}

/* Progress reaches the badge, then inverts its colors. */
.challenge-tag{transition:background-color .25s ease,color .25s ease}
.challenge-tag.is-reached{background:#1e1e1e;color:#fff}
/* Draw the caption at its actual font size, never as a scaled texture. */
.sync-card p{transform:none;filter:none;backdrop-filter:none;text-shadow:none;will-change:auto}
/* Updated testimonial geometry from Figma node 559:181. */
.testimonials>h2{top:calc(173*var(--u));left:calc(50% - 406*var(--u));font:500 calc(20*var(--u))/1.28 Octave,sans-serif;letter-spacing:calc(-.4*var(--u));color:var(--body-grey)}
.testimonial-list{left:0;width:100%;gap:calc(30*var(--u));padding-inline:calc(266*var(--u)) calc(120*var(--u));scroll-padding-inline-start:calc(266*var(--u));overscroll-behavior-x:contain}
.testimonial-item{flex:none;width:calc(370*var(--u));height:calc(438*var(--u));scroll-snap-align:start}
.testimonial-list.is-draggable{cursor:grab;touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none;scroll-snap-type:none;-webkit-overflow-scrolling:touch}
.testimonial-list.is-dragging{cursor:grabbing}
.testimonial-list:focus-visible{outline:2px solid var(--body-grey);outline-offset:8px}
.testimonial-instructions{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.testimonial{width:calc(370*var(--u));height:calc(438*var(--u));padding:calc(40*var(--u));border-radius:calc(28*var(--u))}
.testimonial blockquote{font-size:calc(18*var(--u));letter-spacing:calc(-.36*var(--u))}
.testimonial-photo{border-radius:calc(10*var(--u))}
.testimonial-author p span{color:var(--body-grey)}
/* Keep the two sequential reveals in view while the client scrolls. */
@media(min-width:1100px){
 .has-motion .fit,.has-motion .ways{min-height:100svh;justify-content:center;padding-block:64px;gap:48px}
 .has-motion .fit{gap:calc(115*var(--u))}
}
/* The final black panel expands to the viewport without scaling its text. */
.next{width:100%;max-width:none;margin:0;padding:calc(205*var(--u)) 0 0}
.next-stage{position:relative;width:100%;height:100svh;display:flex;align-items:center;justify-content:center}
.next-card{flex:none;width:min(calc(1200*var(--u)),calc(100% - 48px));height:calc(490*var(--u));padding:32px;display:flex;align-items:center;justify-content:center;gap:0;border-radius:calc(28*var(--u))}
.next-content{display:flex;flex-direction:column;align-items:center;gap:calc(28*var(--u));text-align:center;width:100%;max-width:900px}
@media(max-width:1099px){
 .testimonials>h2{top:auto;font-size:20px;letter-spacing:-.4px}
 .testimonial-list{gap:20px;padding:0 24px;scroll-padding-inline-start:24px}
 .testimonial{width:calc(100vw - 64px);max-width:370px;height:438px;padding:32px;border-radius:28px}
 .testimonial-item{width:calc(100vw - 64px);max-width:370px;height:438px}
 .testimonial blockquote{font-size:18px;letter-spacing:-.36px}
 .testimonial-photo{border-radius:10px}
 .next{padding:48px 0 0}
 .next-card{width:calc(100% - 48px);height:350px;padding:28px;border-radius:26px}
 .next-content{gap:28px}
}
@media(max-width:374px){.testimonial{height:auto;min-height:438px;padding:28px}.testimonial-author{margin-top:32px}}
.testimonial-item>.testimonial{width:100%;height:100%}
@media(prefers-reduced-motion:reduce){
 .next{padding-bottom:48px}
 .next-stage{height:auto;min-height:350px}
}

/* Restore the clear gap below the progress line. */
.challenge-tag{top:calc(1270*var(--u) + 28px)}
/* Align closed phase titles with the text inside the open card. */
.phase:not(.is-open){padding-inline:calc(26*var(--u))}
.phase-heading{gap:calc(12*var(--u))}
.phase.is-open .phase-number{margin-right:calc(-12*var(--u))}
/* The outlined card unfolds into Figma's shared gray enclosure. */
.fit-grid{position:relative;background:transparent;isolation:isolate;overflow:visible}
.fit-grid::before{content:"";position:absolute;inset:0;z-index:0;background:var(--pale);border-radius:inherit;opacity:var(--fit-panel-opacity,1);transform:scaleX(var(--fit-panel-scale,1));pointer-events:none}
.fit-column{position:relative}
.fit-good{z-index:2}
.fit-good::after{content:"";position:absolute;inset:0;border:4px solid var(--pale);border-radius:inherit;pointer-events:none}
.closing-brand{white-space:nowrap}
.start-label{position:relative;display:block;overflow:hidden;line-height:1.2}
.start-text-row{display:block;white-space:nowrap}
.start-text-row[aria-hidden="true"]{position:absolute;left:0;top:100%}
.start-char{display:inline-block}
.fit-caution{z-index:1;background:transparent;border-radius:0}
.pinto-play{position:absolute;z-index:2;top:45%;left:50%;transform:translate(-50%,-50%);padding:12px 18px;border:1px solid rgba(255,255,255,.3);border-radius:32px;background:rgba(30,30,30,.75);color:white;font:500 14px/1.2 Octave,sans-serif;cursor:pointer}
.pinto-play[hidden]{display:none}
@media(min-width:1100px) and (max-height:800px){
 .has-motion .phases h2{margin-bottom:calc(68*var(--u))}
 .has-motion .phase.is-open .phase-heading{padding-top:calc(60*var(--u));padding-bottom:calc(14*var(--u))}
 .has-motion .phase-heading{padding-block:calc(34*var(--u))}
 .has-motion .phase-content>p,.has-motion .phase-divider{margin-bottom:calc(30*var(--u))}
 .has-motion .phase-content ul{margin-top:calc(30*var(--u));margin-bottom:calc(60*var(--u))}
}
@media(max-width:1099px){
 .challenge-tag{top:auto;margin:28px auto 28px}
 .challenge-point:last-child .mobile-connector{margin-bottom:0}
 .phase:not(.is-open){padding-inline:0}
 .phase:not(.is-open) .phase-number{width:12px}
 .phase-heading{gap:12px}
 .phase.is-open .phase-number{margin-right:-12px}
 .fit-grid{overflow:hidden}
}

/* Keep accordion text at a fixed width while its height and position ease. */
.phase,.phase:not(.is-open){--phase-ease:cubic-bezier(.45,0,.25,1);padding-inline:calc(60*var(--u));transition:background-color .85s var(--phase-ease),margin-bottom .85s var(--phase-ease)}
.phase-heading{position:relative;gap:0;transition:padding .85s var(--phase-ease)}
.phase-number,.phase.is-open .phase-number{position:absolute;left:calc(-33*var(--u));width:calc(21*var(--u));margin-right:0;transition:opacity .4s ease}
.phase-panel{transition:grid-template-rows .85s var(--phase-ease)}
@media(max-width:1099px){
 .cover-title{font-size:clamp(18px,5.5vw,28px);letter-spacing:-.04em}
 .challenge-point:not(:last-child) .mobile-connector{height:156px;margin:52px auto}
 .sync-card{width:70%;height:70svh;aspect-ratio:auto;border-radius:10px}
 .sync-media img{width:100%;height:100%;left:0;top:0;object-fit:cover;object-position:center}
 .phases{padding-inline:40px}
 .phase,.phase:not(.is-open),.phase.is-open{padding-inline:24px}
 .phase-number,.phase.is-open .phase-number{left:-24px;width:12px;margin-right:0}
}
@media(max-width:1099px) and (prefers-reduced-motion:reduce){.sync-card{width:100%;height:100svh}}

/* Zuso proposal content uses the retained New Apology design system. */
a{color:inherit}
a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.skip-link{position:fixed;z-index:100;left:16px;top:16px;padding:12px 18px;background:var(--black);color:white;border-radius:8px;transform:translateY(-160%);font-size:16px;text-decoration:none}
.skip-link:focus{transform:none}
.ways{gap:56px;scroll-margin-top:32px}
.ways-heading{text-align:center;max-width:800px}
.ways-heading>p{margin-top:24px;color:#737373;font-size:20px;line-height:1.4}
.ways-grid{width:min(1280px,100%);gap:16px}
.option-card{padding:40px 32px;gap:26px;position:relative;border:1px solid transparent}
.option-card.is-recommended{background:#f0f0f0}
.option-card>.tag{font-size:13px;padding:11px 12px;letter-spacing:0;border-radius:9px}
.option-card h3{font-size:30px;line-height:1.16;letter-spacing:-.6px;min-height:70px}
.option-card .option-price{font-size:52px;line-height:1;letter-spacing:-2px;color:var(--black);font-weight:500}
.option-card .option-intro{font-size:18px;line-height:1.4;color:#707070;min-height:76px;letter-spacing:-.25px}
.option-card .option-divider{opacity:.65}
.option-scope{padding:0;list-style:none;display:flex;flex-direction:column;gap:13px;width:100%;font-size:17px;line-height:1.35}
.option-scope li{position:relative;padding-left:17px}
.option-scope li:before{content:"";position:absolute;left:0;top:.54em;width:4px;height:4px;border-radius:50%;background:currentColor}
.option-card dl{margin-top:auto;padding-top:8px;gap:22px}
.option-card dt{color:#6c6c6c;font-size:13px;line-height:1.5;margin-bottom:7px}
.option-card dd{font-size:16px;line-height:1.45;letter-spacing:-.15px}
.package-notes{width:min(900px,100%);display:grid;gap:22px;color:#747474;font-size:18px;line-height:1.5;letter-spacing:-.2px}
.package-notes strong{color:var(--black);font-weight:500}
.delivery{padding:120px 32px 80px;max-width:1064px}
.delivery-heading{max-width:750px;margin-bottom:64px}
.delivery-heading .headline{margin-top:24px;font-size:42px}
.delivery-heading>p{margin-top:24px;font-size:18px;line-height:1.45;color:#737373;max-width:580px}
.delivery-timeline{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}
.delivery-timeline li{padding:30px 0;border-top:1px solid #dedede;display:grid;grid-template-columns:190px 1fr;gap:32px}
.delivery-weeks{font-size:15px;line-height:1.5;color:#737373;padding-top:5px}
.delivery-timeline h3{font-size:24px;line-height:1.25;letter-spacing:-.4px}
.delivery-timeline p{font-size:18px;line-height:1.45;color:#737373;margin-top:10px}
.scope-details{border-top:1px solid #dedede;margin-top:48px;padding-top:36px;max-width:780px}
.scope-details h3{font-size:24px;margin-bottom:20px}
.scope-details p{font-size:16px;line-height:1.55;color:#737373;margin-top:16px}
.start-button{width:164px;height:46px;border-radius:49px;font-size:15px;text-decoration:none;cursor:pointer}
.proposal-footer{padding:32px 40px;display:flex;justify-content:space-between;gap:24px;font-size:12px;color:#737373;line-height:1.5}
.proposal-footer a{text-underline-offset:3px}
@media(min-width:768px) and (max-width:1099px){
 .ways-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
 .option-card{padding:30px 20px;gap:24px}
 .option-card>.tag{font-size:11px;padding:10px}
 .option-card h3{font-size:23px;min-height:56px}
 .option-card .option-price{font-size:44px}
 .option-card .option-intro{font-size:16px;min-height:90px}
 .option-scope{font-size:15px;gap:12px}
 .option-card dd{font-size:15px}
}
@media(max-width:1099px){
 .ways{gap:40px}
 .ways-heading .headline{font-size:30px;letter-spacing:-.6px}
 .ways-heading>p{font-size:18px;margin-top:20px}
 .ways-grid{max-width:520px;gap:20px}
 .option-card{padding:32px;gap:24px}
 .option-card h3{font-size:30px;min-height:0}
 .option-card .option-intro{font-size:18px;min-height:0}
 .option-card .option-price{font-size:48px}
 .option-scope{font-size:17px}
 .option-card dl{padding-top:4px}
 .package-notes{font-size:16px;line-height:1.5;gap:20px;max-width:520px}
 .delivery{padding:60px 24px 72px}
 .delivery-heading{margin-bottom:40px}
 .delivery-heading .headline{font-size:30px;letter-spacing:-.6px}
 .delivery-heading>p{font-size:16px}
 .delivery-timeline li{grid-template-columns:1fr;gap:12px;padding:24px 0}
 .delivery-weeks{font-size:13px;padding:0}
 .delivery-timeline h3{font-size:22px}
 .delivery-timeline p{font-size:16px}
 .scope-details{margin-top:24px;padding-top:28px}
 .scope-details h3{font-size:22px}
 .scope-details p{font-size:15px}
 .start-button{width:164px;height:46px;font-size:15px}
 .proposal-footer{padding:24px;flex-direction:column;gap:10px}
}
@media(prefers-reduced-motion:reduce){.skip-link{transition:none}}

/* Keep portfolio copy readable over photography. */
.case-copy p,.mira .case-copy p{opacity:.9}
.basal .case-copy p{color:#6c6c6c;opacity:1}
.auro .case-media:after,.mira .case-media:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 35%,rgba(0,0,0,.78) 100%)}
/* A phase list remains reachable when scroll animation is unavailable. */
html:not(.has-motion) .phases-scroll-stage{height:auto;overflow:visible}

@media print{
 :root{--u:1px}
 html,body{background:white!important;color:#1e1e1e!important;font-size:11pt!important;line-height:1.4!important}
 @page{size:letter;margin:.6in}
 .skip-link,.sync,.work,.next,.challenge-timeline,.mobile-step,.mobile-connector,.phase-divider,.option-divider{display:none!important}
 .pin-spacer{display:contents!important;padding:0!important;height:auto!important}
 section,.cover-stage,.phases-scroll-stage,.phases-stage{height:auto!important;min-height:0!important;position:static!important;transform:none!important;padding:0!important;margin:0 0 32px!important;overflow:visible!important;max-width:none!important;width:100%!important}
 .cover-title,.cover-statement,.challenge>h2,.challenge-point,.challenge-tag,.challenge-question,.recommendation-heading,.recommendation-body,.recommendation-copy,.fit>h2{position:static!important;transform:none!important;width:100%!important;max-width:none!important;padding:0!important;margin:0 0 16px!important;opacity:1!important;visibility:visible!important;text-align:left!important}
 .cover-title{font-size:28pt!important;color:#1e1e1e!important;letter-spacing:-1px!important;white-space:normal!important}
 .cover-char{filter:none!important;opacity:1!important;transform:none!important}
 .cover-statement{font-size:18pt!important;line-height:1.25!important;letter-spacing:0!important}
 .headline{font-size:22pt!important;line-height:1.2!important;letter-spacing:-.4px!important}
 .muted{color:#737373!important}
 .challenge-points{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:22px}
 .challenge-point{font-size:10pt!important;text-align:left!important;break-inside:avoid}
 .challenge-point h3{font-size:11pt!important;margin-bottom:8px!important}
 .challenge-question{font-size:18pt!important}
 .recommendation-body{display:block!important}
 .realignment-image{display:none!important}
 .recommendation-copy h3{font-size:15pt!important}
 .recommendation-copy p{font-size:11pt!important;margin-top:12px!important}
 .recommendation-copy ul{font-size:10pt!important;line-height:1.6!important;margin-top:12px!important;padding-left:18px!important}
 .tag{font-size:9pt!important;padding:0!important;background:none!important;color:#737373!important;border-radius:0!important}
 .recommendation-heading h2{margin-top:12px!important}
 .phases{break-before:page}
 .phases h2{font-size:22pt!important;text-align:left!important;margin-bottom:24px!important}
 .phase-list{width:100%!important}
 .phase{padding:0!important;margin:0 0 24px!important;background:none!important;break-inside:avoid}
 .phase-heading{font-size:15pt!important;padding:0 0 8px!important;gap:0!important}
 .phase-number{display:none!important}
 .phase-panel{display:block!important;grid-template-rows:1fr!important}
 .phase-content{font-size:11pt!important;opacity:1!important;overflow:visible!important;color:#555!important}
 .phase-content p{margin-bottom:10px!important}
 .phase-content ul{font-size:10pt!important;line-height:1.6!important;margin:10px 0 0!important;padding-left:18px!important}
 .fit{display:none!important}
 .ways{break-before:page;display:block!important}
 .ways-heading{text-align:left!important}
 .ways-heading p{font-size:11pt!important;margin-top:12px!important;margin-bottom:24px!important}
 .ways-grid{display:block!important;width:100%!important}
 .option-card{display:block!important;border:1px solid #ddd!important;background:none!important;padding:24px!important;border-radius:12px!important;break-inside:avoid;opacity:1!important;visibility:visible!important;transform:none!important;margin-bottom:24px!important}
 .option-card h3{font-size:20pt!important;min-height:0!important;margin:12px 0!important}
 .option-card h3 br{display:none!important}
 .option-card h3 br:after{content:" "}
 .option-card .option-price{font-size:28pt!important;margin:12px 0!important;letter-spacing:-1px!important}
 .option-card .option-intro{font-size:11pt!important;min-height:0!important;margin-bottom:16px!important}
 .option-scope{font-size:10pt!important;line-height:1.45!important;gap:6px!important}
 .option-card dl{display:grid!important;grid-template-columns:1fr 1fr;gap:24px!important;margin-top:18px!important}
 .option-card dt{font-size:9pt!important}
 .option-card dd{font-size:10pt!important}
 .package-notes{font-size:11pt!important;margin-top:24px!important;gap:16px!important;break-inside:avoid}
 .delivery{break-before:page}
 .delivery-heading .headline{font-size:22pt!important;margin-top:16px!important}
 .delivery-heading p{font-size:11pt!important;margin-top:12px!important}
 .delivery-timeline li{padding:16px 0!important;grid-template-columns:100px 1fr!important;gap:20px!important;break-inside:avoid}
 .delivery-timeline h3{font-size:13pt!important}
 .delivery-timeline p{font-size:11pt!important;margin-top:8px!important}
 .delivery-weeks{font-size:10pt!important}
 .scope-details{margin-top:24px!important;padding-top:24px!important;break-inside:avoid}
 .scope-details h3{font-size:14pt!important}
 .scope-details p{font-size:10pt!important}
 .proposal-footer{font-size:8pt!important;padding:20px 0!important;border-top:1px solid #ddd!important}
}
