@import url("../../site-layout-tokens.css?v=20260818-04");
@font-face{font-family:Montserrat;src:url("../../assets/fonts/Montserrat-Variable.ttf") format("truetype");font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Anton;src:url("../../assets/fonts/Anton-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
:root{--ink:#000;--paper:#fff;--mist:#eef2f4;--line:rgba(0,0,0,.2);--ease:cubic-bezier(.7,0,.2,1);font-family:Montserrat,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{min-width:320px;min-height:100%;margin:0;background:#fff}body{overflow-x:hidden}button,a,input,textarea{font:inherit}.skip-link{position:fixed;z-index:12000;top:-4rem;left:1rem;padding:.8rem 1rem;color:#fff;background:#000}.skip-link:focus{top:1rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.page-shell{overflow:hidden}.page-section{position:relative;isolation:isolate;padding:clamp(92px,10vw,164px) clamp(26px,7vw,140px);border-bottom:1px solid var(--line);background:#fff}.page-section--mist{background:var(--mist)}.page-section--dark{color:#000;background:#fff}.page-section__inner{position:relative;z-index:2;width:min(1480px,100%);margin:0 auto}.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 22px;color:#000;font-size:11px;font-weight:720;line-height:1.25;letter-spacing:.13em;text-transform:uppercase}.eyebrow::after{width:52px;height:1px;background:currentColor;content:"";opacity:.45}h1,h2,h3{margin:0;font-family:Anton,Impact,sans-serif;font-weight:400;line-height:1;letter-spacing:0}h1{font-size:clamp(58px,6.2vw,112px)}h2{max-width:14ch;font-size:clamp(42px,4.1vw,74px)}h3{font-size:clamp(28px,3vw,48px)}p{font-size:clamp(14px,1.05vw,17px);font-weight:470;line-height:1.55}.lead{max-width:64ch;font-size:clamp(15px,1.15vw,19px);line-height:1.55}.source{color:rgba(0,0,0,.58);font-size:11px;line-height:1.55}.page-section--dark .source{color:rgba(0,0,0,.58)}
.hero{min-height:100svh;display:grid;align-items:center;padding-top:clamp(130px,14vw,190px)}.hero__media{position:absolute;z-index:0;inset:0}.hero__media img{width:100%;height:100%;object-fit:cover;object-position:center}.hero__wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.95) 35%,rgba(255,255,255,.5) 58%,rgba(255,255,255,0) 78%)}.hero__copy{position:relative;z-index:2;width:min(650px,44vw)}.hero__title-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.status{display:inline-flex;align-items:center;width:max-content;padding:7px 11px;border:1px solid currentColor;border-radius:0;color:#000;background:rgba(255,255,255,.72);font-size:10px;font-weight:750;line-height:1;letter-spacing:.12em;text-transform:uppercase}.status--development{color:#000;background:rgba(255,255,255,.72)}.hero__statement{max-width:26ch;margin:28px 0 22px;font-family:Anton,Impact,sans-serif;font-size:clamp(28px,3.1vw,50px);font-weight:400;line-height:1;letter-spacing:0}.hero__actions,.button-row{display:flex;align-items:center;gap:32px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:0;padding:0 0 9px;color:#000;border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;font-size:12px;font-weight:700;text-decoration:none;transition:gap .25s ease}.button:hover,.button:focus-visible{gap:38px;color:#000;background:transparent;outline:0}.button--outline{color:#000;background:transparent}
.hero__copy a:not(.button){color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}.hero--rd .hero__copy{width:min(980px,68vw);margin-right:auto;margin-left:0}.hero--rd .hero__title-row{display:block}.hero--rd .hero__title-row .status{margin-top:20px}.hero--rd h1{font-size:clamp(54px,5.2vw,96px)}.hero--rd .lead{max-width:720px;margin:20px 0 0}.hero--rd .hero__statement{max-width:24ch;margin:26px 0 0;font-size:clamp(28px,2.65vw,44px)}.hero--rd .hero__actions{margin-top:28px}
.hero__pathways{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;max-width:980px;margin-top:clamp(28px,4vh,40px);border-top:1px solid var(--line);border-left:1px solid var(--line)}.hero__pathways a{display:flex;min-height:72px;padding:16px 24px;align-items:center;color:#000;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.78);font-size:clamp(14px,1.05vw,17px);font-weight:650;line-height:1.25;text-decoration:none;transition:color .25s ease,background .25s ease}.hero__pathways a:hover,.hero__pathways a:focus-visible{color:#fff;background:#000;outline:0}
.section-nav{position:sticky;z-index:30;top:0;display:flex;align-items:center;gap:28px;padding:16px clamp(24px,7vw,140px);overflow-x:auto;border-bottom:1px solid var(--line);background:rgba(255,255,255,.92);backdrop-filter:blur(18px);scrollbar-width:none}.section-nav::-webkit-scrollbar{display:none}.section-nav a{flex:none;padding:6px 0;color:#000;border-bottom:1px solid transparent;font-size:10px;font-weight:760;letter-spacing:.09em;text-decoration:none;text-transform:uppercase}.section-nav a.is-active{border-color:#000}
.split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(46px,8vw,140px);align-items:center}.split--reverse{grid-template-columns:minmax(360px,.95fr) minmax(0,1.05fr)}.split--reverse .split__media{order:-1}.split__copy>p{max-width:75ch}.split__media{overflow:hidden;min-height:380px;background:#f5f7f8}.split__media img{display:block;width:100%;height:100%;min-height:380px;object-fit:cover;transition:transform 1.2s var(--ease)}.split__media:hover img{transform:scale(1.025)}
.split__copy h2+p{margin-top:clamp(24px,3vh,32px)}.split__copy p+p{margin-top:clamp(16px,2vh,22px)}
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:52px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.metric{min-height:210px;padding:26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.56)}.metric strong{display:block;margin-bottom:44px;font-family:Anton,Impact,sans-serif;font-size:clamp(42px,5vw,82px);font-weight:400;line-height:1}.metric span{display:block;max-width:32ch;font-size:12px;line-height:1.5}.metric small{display:block;margin-top:10px;color:rgba(8,10,13,.56);font-size:10px;line-height:1.4}
.proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:48px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.proof-grid article{min-height:170px;padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.proof-grid strong{display:block;margin-bottom:36px;font-family:Anton,Impact,sans-serif;font-size:38px;font-weight:400}.proof-grid span{font-size:11px;line-height:1.45}
.product-feature{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:670px;padding:0}.product-feature__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(76px,8vw,140px)}.product-feature__copy p{max-width:68ch}.product-feature__media{min-height:540px}.product-feature__media img{display:block;width:100%;height:100%;object-fit:cover}.product-feature--reverse .product-feature__copy{order:2}.product-feature--reverse .product-feature__media{order:1}
.comparison-wrap{margin-top:48px;overflow-x:auto}.comparison{width:100%;min-width:960px;border-collapse:collapse;font-size:12px;text-align:left}.comparison th,.comparison td{padding:18px;border:1px solid var(--line);vertical-align:top}.comparison thead th{color:#fff;background:#000;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.comparison tbody tr:nth-child(even){background:var(--mist)}.comparison tbody tr:first-child{background:#eef2f4;font-weight:700}
.application-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:52px}.application-card{display:flex;min-height:620px;flex-direction:column;padding:20px;border:1px solid var(--line);background:#fff}.application-card__image{height:240px;overflow:hidden;background:var(--mist)}.application-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.application-card:hover .application-card__image img{transform:scale(1.025)}.application-card__body{display:flex;flex:1;flex-direction:column;padding:24px 8px 8px}.application-card__body .status{margin-bottom:20px}.application-card__body p{margin:20px 0 0}.application-card__link{margin-top:auto;padding-top:26px;color:#000;font-size:11px;font-weight:720;text-decoration:none}
.contact-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.75fr);gap:clamp(50px,8vw,130px);align-items:start}.contact-band h2{max-width:12ch}.contact-form{display:grid;gap:19px;padding:28px;color:#000;border:1px solid rgba(0,0,0,.2);background:rgba(255,255,255,.84);backdrop-filter:blur(12px)}.contact-form label{display:grid;gap:9px}.contact-form label span{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.contact-form input,.contact-form textarea{width:100%;padding:14px 0;color:#000;border:0;border-bottom:1px solid rgba(0,0,0,.42);border-radius:0;outline:0;background:transparent;font-size:15px}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:#000}.contact-form .button{justify-self:start;padding:14px 18px;color:#fff;border:1px solid #000;border-radius:8px;background:#000}.contact-form .button:hover,.contact-form .button:focus-visible{gap:26px;color:#000;background:#fff}.form-status{min-height:20px;margin:0;font-size:12px}
.cp-footer{position:relative;z-index:20;min-height:100svh;padding:0;overflow:clip;background:transparent}.cp-footer-panel{position:relative;display:grid;grid-template-rows:1fr auto;min-height:100svh;padding:clamp(30px,4vw,64px) clamp(24px,7.2vw,148px) max(28px,env(safe-area-inset-bottom));color:#000;background:radial-gradient(circle at 76% 22%,rgba(255,255,255,.92),transparent 27%),linear-gradient(145deg,#f8fbfd 0%,#e7f0f6 55%,#d6e6f1 100%)}.cp-footer-panel::before{position:absolute;inset:0;background:linear-gradient(rgba(45,98,140,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(45,98,140,.045) 1px,transparent 1px);background-size:88px 88px;mask-image:linear-gradient(120deg,transparent 4%,rgba(0,0,0,.42) 52%,transparent 96%);content:"";pointer-events:none}.cp-footer-grid,.cp-footer-bottom{position:relative;z-index:1}.cp-footer-top-link{position:absolute;z-index:2;right:clamp(24px,7.2vw,148px);bottom:max(26px,env(safe-area-inset-bottom));display:inline-flex;align-items:center;gap:10px;color:#000;font-size:11px;font-weight:650;letter-spacing:.09em;text-decoration:none;text-transform:uppercase}.cp-footer-top-link span{display:grid;width:42px;aspect-ratio:1;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:19px;line-height:1;transition:color .25s ease,background .25s ease,transform .25s ease}.cp-footer-top-link:hover span,.cp-footer-top-link:focus-visible span{color:#fff;background:#000;transform:translateY(-3px)}.cp-footer-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(160px,.55fr) minmax(140px,.38fr);gap:clamp(42px,8vw,132px);align-items:start;padding:clamp(108px,16vh,156px) 0 clamp(52px,8vh,92px)}.cp-footer-newsletter h2{max-width:18ch;margin:0;font-size:clamp(30px,3.6vw,58px)}.cp-footer-form{display:grid;grid-template-columns:1fr auto;max-width:700px;margin-top:clamp(28px,4vh,46px);padding:6px;border:1px solid rgba(0,0,0,.34);border-radius:8px;background:rgba(255,255,255,.52);box-shadow:0 18px 50px rgba(18,63,96,.08);backdrop-filter:blur(18px)}.cp-footer-form input{min-width:0;min-height:54px;padding:0 17px;color:#000;border:0;outline:0;background:transparent;font-size:14px}.cp-footer-form input::placeholder{color:rgba(0,0,0,.58)}.cp-footer-form:focus-within{border-color:#000;box-shadow:0 18px 55px rgba(18,63,96,.13)}.cp-footer-form button{display:flex;min-width:132px;padding:0 16px;align-items:center;justify-content:center;gap:6px;color:#fff;border:0;border-radius:8px;background:#000;cursor:pointer;font-size:12px;font-weight:650;transition:transform .25s ease}.cp-footer-form button:hover,.cp-footer-form button:focus-visible{transform:translateX(2px)}.cp-footer-consent{max-width:68ch;margin:14px 0 0;color:#000;font-size:10.5px;line-height:1.6}.cp-footer-consent a{color:#000;text-underline-offset:3px}.cp-footer h3{margin:0 0 22px;color:#000;font-size:18px;text-transform:uppercase}.cp-footer ul{margin:0;padding:0;list-style:none}.cp-footer li+li{margin-top:13px}.cp-footer-nav a,.cp-footer-contact-link,.cp-footer-social a{display:inline-flex;gap:10px;padding:0;color:#000;border:0;background-color:transparent;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0 1px;font-size:14px;font-weight:400;line-height:1.4;text-decoration:none;cursor:pointer;transition:background-size .28s var(--ease)}.cp-footer-nav a:hover,.cp-footer-nav a:focus-visible,.cp-footer-contact-link:hover,.cp-footer-contact-link:focus-visible,.cp-footer-social a:hover,.cp-footer-social a:focus-visible{background-size:100% 1px;outline:none}.cp-footer-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:24px min(230px,24vw) 0 0;color:#000;border-top:1px solid var(--line);font-size:10.5px}.cp-footer-bottom p{margin:0;font-size:10.5px;line-height:1.4}.cp-footer-legal{display:flex;gap:28px}.cp-footer-legal a{color:#000;text-decoration:none}.cp-footer-legal a:hover,.cp-footer-legal a:focus-visible{text-decoration:underline;text-underline-offset:4px}.cp-sr-only{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
[data-reveal]{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .9s var(--ease)}[data-reveal].is-visible{opacity:1;transform:none}.page-progress{position:fixed;z-index:10010;top:0;right:0;left:0;height:2px;background:rgba(0,0,0,.08);pointer-events:none}.page-progress i{display:block;width:100%;height:100%;background:#000;transform:scaleX(var(--scroll-progress,0));transform-origin:left}
@media(max-width:1050px){.split,.split--reverse,.contact-band{grid-template-columns:1fr}.split--reverse .split__media{order:0}.proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-feature{grid-template-columns:1fr}.product-feature--reverse .product-feature__copy,.product-feature--reverse .product-feature__media{order:initial}.product-feature__media{min-height:460px}.hero__copy{width:min(720px,72vw)}.hero--rd .hero__copy{width:min(820px,100%)}.hero__wash{background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.95) 58%,rgba(255,255,255,.2) 100%)}.cp-footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.page-section{padding:84px 24px}.hero{min-height:920px;padding-top:130px;align-items:end}.hero__copy{width:100%;padding-bottom:60px}.hero--rd .hero__copy{width:calc(100vw - 48px);max-width:calc(100vw - 48px);padding-bottom:60px}.hero--rd .hero__copy a{overflow-wrap:anywhere}.hero__pathways{grid-template-columns:repeat(2,minmax(0,1fr))}.hero__pathways a{min-height:68px;padding:14px 16px}.hero__media img{object-position:68% top}.hero__wash{background:linear-gradient(180deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,.6) 42%,#fff 69%)}h1{font-size:clamp(54px,17vw,72px)}.hero--rd h1{font-size:clamp(48px,13.5vw,58px)}h2{font-size:clamp(44px,13vw,68px)}.hero__statement{font-size:clamp(28px,8vw,38px)}.section-nav{top:0;padding-right:24px;padding-left:24px}.metrics,.application-grid{grid-template-columns:1fr}.metric{min-height:150px}.metric strong{margin-bottom:24px}.proof-grid{grid-template-columns:1fr 1fr}.proof-grid article{min-height:140px}.product-feature__copy{padding:84px 24px}.product-feature__media{min-height:360px}.application-card{min-height:0}.application-card__image{height:210px}.contact-form{padding:22px}.cp-footer{padding-right:24px;padding-left:24px}.cp-footer__grid{grid-template-columns:1fr 1fr}.cp-footer__brand{grid-column:1/-1}.cp-footer__bottom{align-items:flex-start;flex-direction:column}.cp-footer__legal{flex-wrap:wrap}.split__media,.split__media img{min-height:300px}}
@media(max-width:899px){.cp-footer{min-height:auto;padding:0}.cp-footer-panel{min-height:100svh;padding:28px 24px max(24px,env(safe-area-inset-bottom))}.cp-footer-grid{grid-template-columns:1fr 1fr;gap:38px 24px;padding:104px 0 72px}.cp-footer-newsletter{grid-column:1/-1}.cp-footer-newsletter h2{font-size:clamp(29px,9vw,42px)}.cp-footer-form{grid-template-columns:1fr 54px}.cp-footer-form button{min-width:54px;padding:0}.cp-footer-form button span:first-child{display:none}.cp-footer-bottom{align-items:flex-start;flex-direction:column;padding-right:0;padding-bottom:72px}.cp-footer-top-link{right:24px;bottom:max(24px,env(safe-area-inset-bottom));font-size:9px}.cp-footer-legal{flex-wrap:wrap;gap:12px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}[data-reveal]{opacity:1;transform:none}}

/* Shared horizontal rail migration. */
.page-section{padding-right:var(--section-rail-inline-end);padding-left:var(--section-rail-inline-start)}
.section-nav{padding-right:var(--section-rail-inline-end);padding-left:var(--section-rail-inline-start)}
.cp-footer-panel{padding-right:var(--footer-rail-inline-end);padding-left:var(--footer-rail-inline-start)}
.cp-footer-top-link{right:var(--footer-rail-inline-end)}

/* These content-led sections must span the full shared rail on wide screens.
   The legacy 1480px inner cap recentred them away from both nav anchors. */
#applications>.page-section__inner,
#partner-development>.page-section__inner{width:100%;max-width:none;margin-inline:0}
#partner-development .split__media{margin:0}

/* Vertical spacing follows viewport height. The previous 10vw/14vw values
   made wide screens create disproportionately large blank bands. */
.page-section{padding-top:var(--scroll-section-padding-block);padding-bottom:var(--scroll-section-padding-block)}
.page-section.hero{padding-top:var(--hero-section-padding-start)}

/* Shared content rhythm tokens. */
.eyebrow{margin-bottom:var(--content-eyebrow-gap);font-size:var(--content-eyebrow-size)}
.split__copy h2+p{margin-top:var(--content-heading-body-gap)}
.hero__actions,.button-row{gap:var(--content-action-gap)}
.button{padding-bottom:var(--text-link-padding-block-end)}
