@font-face{font-family:"DM Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url("assets/fonts/dm-sans-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url("assets/fonts/manrope-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{--ink:#211626;--plum:#33203a;--purple:#765181;--paper:#f5f3ef;--white:#fff;--muted:#6b626b;--line:#d6d0d5;--edge:clamp(24px,5.2vw,88px);font-family:"DM Sans",Arial,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-snap-type:y mandatory}
html.story-jumping{scroll-snap-type:none}
body{margin:0;min-width:320px;overflow-x:clip}
main>section{scroll-snap-align:start;scroll-snap-stop:always}
.site-footer{scroll-snap-align:end}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
.inline-link{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.inline-link:hover{color:var(--purple)}
button{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid #ae7fb8;outline-offset:5px}
::selection{background:#ae7fb8;color:#fff}
.skip-link{position:fixed;z-index:100;top:-60px;left:20px;padding:12px 18px;background:#fff;color:var(--ink)}
.skip-link:focus{top:12px}
.reading-progress{position:fixed;z-index:80;top:0;left:0;width:100%;height:2px;pointer-events:none}
.reading-progress span{display:block;width:0;height:100%;background:#b792bc}
.site-header{height:80px;padding:0 var(--edge);display:flex;align-items:center;gap:48px;position:absolute;z-index:30;top:0;left:0;right:0;background:var(--ink);color:#fff;border-bottom:1px solid rgba(255,255,255,.14);transition:background .3s}
.site-header.is-scrolled{position:fixed;background:var(--ink)}
.brand{display:inline-flex;align-items:center;flex:none;width:clamp(165px,15vw,205px)}
.brand img{display:block;width:100%;height:auto}
.site-nav{display:flex;align-items:stretch;justify-content:flex-end;align-self:stretch;margin-left:auto}
.site-nav__group{position:relative;display:flex;align-items:stretch}
.site-nav>a,.site-nav__group>a{position:relative;display:flex;align-items:center;padding:0 clamp(14px,1.55vw,25px);border-left:1px solid rgba(255,255,255,.13);font-size:12px;font-weight:600;letter-spacing:.01em;white-space:nowrap;color:#eee8ef;transition:background .25s,color .25s}
.site-nav>a::after,.site-nav__group>a::after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#c9afd0;transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.22,1,.36,1)}
.site-nav>a:hover,.site-nav>a[aria-current="location"],.site-nav__group:hover>a,.site-nav__group:focus-within>a,.site-nav__group>a[aria-current]{background:rgba(255,255,255,.07);color:#fff}
.site-nav>a:hover::after,.site-nav>a[aria-current="location"]::after,.site-nav__group:hover>a::after,.site-nav__group:focus-within>a::after,.site-nav__group>a[aria-current]::after{transform:scaleX(1)}
.site-nav>a:last-child{border-right:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.055)}
.site-nav>a:last-child:hover,.site-nav>a:last-child[aria-current="location"]{background:rgba(255,255,255,.13)}
.site-nav__chevron{display:inline-block;width:6px;height:6px;margin:-3px 0 0 10px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.site-nav__group:hover .site-nav__chevron,.site-nav__group:focus-within .site-nav__chevron{transform:translateY(3px) rotate(225deg)}
.site-nav__submenu{position:absolute;top:100%;left:0;min-width:235px;display:flex;flex-direction:column;padding:8px 0;background:#291c2f;border:1px solid rgba(255,255,255,.2);border-top:2px solid #c9afd0;box-shadow:0 18px 34px rgba(13,7,16,.22);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,visibility .2s,transform .2s}
.site-nav__group:hover .site-nav__submenu,.site-nav__group:focus-within .site-nav__submenu{opacity:1;visibility:visible;transform:translateY(0)}
.site-nav__submenu a{display:block;padding:14px 20px;color:#eee8ef;font-size:12px;font-weight:600;white-space:nowrap;transition:background .2s,color .2s}
.site-nav__submenu a:hover,.site-nav__submenu a:focus-visible,.site-nav__submenu a[aria-current="page"]{background:rgba(255,255,255,.09);color:#fff}
.site-nav__submenu a+a{border-top:1px solid rgba(255,255,255,.12)}
.menu-toggle,.mobile-menu{display:none}
.section-kicker{font-size:11px;font-weight:700;letter-spacing:.16em;line-height:1.4}
.kicker-line{display:inline-block;width:34px;height:1px;background:currentColor;vertical-align:middle;margin-right:12px}
.text-action{display:inline-flex;gap:48px;justify-content:space-between;align-items:center;min-width:220px;padding:0 0 12px;border-bottom:1px solid currentColor;font-size:13px;font-weight:700;letter-spacing:.01em;transition:gap .2s,opacity .2s}
.text-action:hover{gap:58px;opacity:.7}
.text-action span{font-size:18px;font-weight:400}
.text-action--light{color:#fff}
.section-shell{padding-left:var(--edge);padding-right:var(--edge)}
.section-head{display:flex;justify-content:space-between;gap:20px;padding:25px 0;border-top:1px solid transparent;background:linear-gradient(rgba(33,22,38,.4),rgba(33,22,38,.4)) left top/var(--rule-progress,100%) 1px no-repeat;font-size:10px;font-weight:700;letter-spacing:.14em}
.section-head--dark{background-image:linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35))}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:Manrope,Arial,sans-serif;font-weight:600;letter-spacing:-.065em;line-height:1.08}
h1 em,h2 em{font-style:normal;font-weight:400;color:#ac90b2}
.hero{min-height:100svh;position:relative;isolation:isolate;overflow:hidden;background:var(--ink);color:#fff;display:flex;align-items:center;padding:135px var(--edge) 205px}
.hero__film{position:absolute;inset:0;z-index:-1;background:var(--ink) url('assets/home-video-poster.jpg') center/cover no-repeat}
.hero__film video{display:block;width:100%;height:100%;object-fit:cover}
.hero__film::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#211626 0%,rgba(33,22,38,.97) 24%,rgba(33,22,38,.8) 48%,rgba(33,22,38,.42) 78%,rgba(33,22,38,.38) 100%),linear-gradient(0deg,rgba(33,22,38,.46),transparent 38%)}
.hero__inner{width:min(100%,880px)}
.hero__eyebrow{margin:0 0 24px;color:#d4c3d8;font-size:10px;font-weight:700;letter-spacing:.17em;line-height:1.5}
.hero h1{font-size:clamp(54px,5.6vw,82px);line-height:1.08;margin:0;max-width:880px;font-weight:500;letter-spacing:-.067em}
.hero h1 span{color:#b893c1}
.hero__bottom{display:flex;flex-direction:column;align-items:flex-start;gap:22px;margin-top:27px}
.hero__bottom p{font-size:clamp(17px,1.4vw,20px);line-height:1.45;margin:0;color:#ded4e0}
.hero__bottom .text-action{min-width:0;gap:22px;padding-bottom:8px;font-size:13px}
.hero__bottom .text-action:hover{gap:28px}
.hero__actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 27px}
.hero__action-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-width:185px;padding:13px 16px;border:1px solid #fff;background:#fff;color:var(--ink);font-size:13px;font-weight:700;transition:background .2s,color .2s}
.hero__action-primary:hover{background:transparent;color:#fff}
.hero__action-primary:focus-visible,.hero__bottom .text-action:focus-visible{outline:2px solid #fff;outline-offset:4px}
.hero__metrics{position:absolute;left:var(--edge);right:var(--edge);bottom:33px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:690px;border-top:1px solid rgba(255,255,255,.42)}
.hero__metric{display:flex;align-items:baseline;gap:16px;min-width:0;padding:20px 26px 0 0}
.hero__metric+.hero__metric{padding-left:28px;border-left:1px solid rgba(255,255,255,.22)}
.hero__metric strong{display:grid;flex:none;font-family:Manrope,Arial,sans-serif;font-size:clamp(29px,3vw,43px);font-weight:500;line-height:1;letter-spacing:-.07em;font-variant-numeric:tabular-nums;white-space:nowrap}
.hero__metric strong::after{content:attr(data-final);grid-area:1/1;visibility:hidden}
.hero__metric-number{grid-area:1/1;display:inline-flex}
.hero__metric>span{max-width:120px;font-size:9px;font-weight:700;letter-spacing:.13em;line-height:1.35;color:#d4c3d8}
.intro{min-height:100svh;display:flex;flex-direction:column;overflow-x:clip;background:var(--paper);padding-top:70px;padding-bottom:45px}
.intro__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:4vw;align-items:center;flex:1;padding:5vh 0}
.intro__copy{min-width:0}
.intro h2,.offer h2,.facility h2{font-size:clamp(48px,5.6vw,95px);margin:0}
.intro h2 em,.offer h2 em,.facility h2 em{color:#775b7d}
.intro__aside{padding-bottom:10px;margin-top:30px;max-width:520px}
.intro__aside p,.offer__heading p,.facility__content>p:not(.section-kicker){font-size:clamp(16px,1.35vw,20px);line-height:1.55;color:#4d444d;margin-bottom:42px}
.intro__aside p{margin-bottom:17px}
.intro__aside .intro__lead{color:var(--ink);font-weight:600}
.intro__aside p:last-of-type{margin-bottom:30px}
.intro__product{margin:0;min-width:0;width:min(100%,480px);justify-self:end;align-self:center}
.intro__product img{display:block;width:100%;height:auto}
.intro__product figcaption{margin-top:10px;text-align:right;color:#776c77;font-size:10px;font-weight:700;letter-spacing:.12em}
.story{height:400vh;background:var(--ink);color:#fff}
.story__sticky{height:100svh;min-height:650px;position:sticky;top:0;padding:108px var(--edge) 25px;display:flex;flex-direction:column;overflow:hidden}
.story__sticky .section-head{padding:0 0 22px}
.story__layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:4vw;align-items:center;flex:1;min-height:0}
.story__development{display:none;flex:1;min-height:0;flex-direction:column;padding:16px 0 0}
.story[data-active="1"] .story__layout{display:none}
.story[data-active="1"] .story__development{display:flex}
.story__development-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.45fr);gap:3vw;align-items:end;padding:0 0 19px}
.story__development-head .section-kicker{color:#bdaac2;margin:0 0 8px}
.story .story__development-head h2{font-size:clamp(40px,4.5vw,66px);min-height:0;margin:0;line-height:1.03}
.story__development-head>p{max-width:330px;color:#d7c8da;font-size:clamp(14px,1.2vw,17px);line-height:1.45;margin:0 0 3px}
.development-map{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:relative;flex:1;min-height:0;margin:0;padding:0;border:1px solid rgba(219,191,226,.35);background:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),#251a2a;background-size:100% 25%,9.09% 100%,auto;overflow:hidden}
.development-map__step{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:15px clamp(12px,1.7vw,28px) 20px;border-right:1px solid rgba(255,255,255,.12);color:#b8a7bb;transition:background .45s,color .45s}
.development-map__step:last-child{border-right:0}
.development-map__step::after{content:"→";position:absolute;z-index:2;left:calc(100% - 9px);top:33%;font-size:26px;font-weight:300;color:#d5b7db;line-height:1;transform:translateY(-50%)}
.development-map__step:last-child::after{display:none}
.development-map__step.is-active{background:linear-gradient(180deg,rgba(183,143,192,.13),rgba(183,143,192,.025));color:#fff}
.development-map__step.is-complete{color:#e2d3e5}
.development-map__icon{position:relative;align-self:center;width:clamp(74px,8.5vw,124px);aspect-ratio:1;display:grid;place-items:center;margin:0 0 clamp(18px,3vh,34px);border:1px solid rgba(205,174,213,.48);border-radius:50%;transition:border-color .45s,box-shadow .45s,transform .45s}
.development-map__icon::before{content:"";position:absolute;inset:13%;border:1px solid rgba(205,174,213,.25);border-radius:50%}
.development-map__step.is-active .development-map__icon{border-color:#e9d0ee;box-shadow:0 0 0 10px rgba(212,176,220,.08),0 0 34px rgba(211,168,220,.22);transform:scale(1.04)}
.development-map__icon svg{width:63%;height:63%;fill:none;stroke:#cdb2d4;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px rgba(210,167,219,.45));transition:stroke .45s}
.development-map__step.is-active .development-map__icon svg{stroke:#f7e9fa}
.development-map__number{font-size:10px;font-weight:700;letter-spacing:.11em;margin-bottom:7px}
.development-map__step strong{min-height:2.5em;font-size:clamp(10px,.9vw,13px);line-height:1.25;letter-spacing:.095em;text-transform:uppercase}
.development-map__step p{width:100%;min-height:3.5em;border-top:1px solid rgba(255,255,255,.15);padding-top:12px;margin:5px 0 0;font-size:clamp(11px,.96vw,14px);line-height:1.35;color:inherit}
.development-map__step--final .development-map__icon{width:clamp(94px,10.5vw,150px)}
.development-map__can{position:relative;width:37%;height:67%;border:1px solid #f5e9f5;border-radius:8px 8px 6px 6px;background:linear-gradient(90deg,#615763 0%,#cfc6d1 16%,#79707e 38%,#eee7ee 58%,#817584 78%,#4c4152 100%);box-shadow:0 0 15px rgba(226,204,233,.42),inset 0 0 9px rgba(255,255,255,.5)}
.development-map__can::before,.development-map__can::after{content:"";position:absolute;left:5%;width:90%;height:5px;border:1px solid #f5e9f5;border-radius:50%;background:#c9bdcb}
.development-map__can::before{top:-3px}.development-map__can::after{bottom:-3px}
.story__development-foot{display:flex;justify-content:space-between;gap:15px;padding:12px 0 0;color:#bdaac2;font-size:10px;font-weight:700;letter-spacing:.14em}
.story__copy{max-width:730px;position:relative;z-index:2}
.story__copy .section-kicker{color:#b89cbe;margin-bottom:36px}
.story h2{font-size:clamp(58px,6vw,108px);margin:0 0 36px;min-height:2.2em}
.story__period{color:#b38dbb}
.story__copy>p:not(.section-kicker){font-size:clamp(17px,1.5vw,21px);line-height:1.55;color:#d9cddc;max-width:490px;margin-bottom:48px}
.story__visual{height:min(30vw,420px);max-height:50vh;position:relative;border:1px solid rgba(255,255,255,.28);overflow:hidden;background:#291c2e}
.story__visual-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.065) 1px,transparent 1px);background-size:16.66% 16.66%}
.story__visual-axis{position:absolute;background:rgba(255,255,255,.22)}
.story__visual-axis--x{height:1px;width:100%;top:50%}
.story__visual-axis--y{width:1px;height:100%;left:50%}
.story__visual-shape{position:absolute;width:54%;aspect-ratio:1;left:23%;top:50%;transform:translateY(-50%);border:1px solid #b692bf;transition:clip-path .7s,transform .7s,border-radius .7s,background .7s}
.story__visual-shape span{position:absolute;inset:17%;border:1px solid rgba(255,255,255,.55)}
.story[data-active="0"] .story__visual-shape{display:none}
.story__insight{display:none;position:absolute;z-index:3;inset:0;width:100%;height:100%;overflow:visible}
.story[data-active="0"] .story__insight{display:block}
.insight-map__orbits{fill:none;stroke:#c5a0cd;stroke-width:1;opacity:.52}
.insight-map__orbits .is-dotted{stroke-dasharray:2 4;opacity:.62}
.insight-map__orbits .is-faint{opacity:.27}
.insight-map__beam{filter:drop-shadow(0 0 11px #c38dd1)}
.insight-map__beam-line{fill:none;stroke:#e3b2ec;stroke-width:1.4;opacity:.75}
.insight-map__measure{fill:#dfbce7;stroke:#dfbce7;stroke-width:1;opacity:.72}
.insight-map__can{fill:none;stroke:#dcb5e6;stroke-width:1.6;filter:drop-shadow(0 0 8px rgba(221,172,235,.65))}
.insight-map__can-top{stroke-width:2}
.insight-map__node{color:#c5afca;transition:color .28s,opacity .28s;opacity:.64}
.insight-map__node>path{fill:none;stroke:currentColor;stroke-width:1.4}
.insight-map__node text{fill:currentColor;font:600 18px "DM Sans",Arial,sans-serif;letter-spacing:1.1px}
.insight-map__node .insight-map__halo{fill:#ddb3e8;opacity:.16;filter:url(#insightGlow)}
.insight-map__node .insight-map__ring{fill:none;stroke:currentColor;stroke-width:1.6}
.insight-map__node .insight-map__core{fill:currentColor}
.insight-map__node.is-active{color:#fae8ff;opacity:1}
.insight-map__node.is-active .insight-map__halo{opacity:.95}
.insight-map__node.is-active .insight-map__ring{filter:drop-shadow(0 0 6px #e0a8ed)}
.story[data-active="1"] .story__visual-shape{transform:translateY(-50%) rotate(45deg) scale(.72);background:rgba(145,100,155,.2)}
.story[data-active="2"] .story__visual-shape{transform:translateY(-50%) scale(.86);background:rgba(145,100,155,.28)}
.story[data-active="3"] .story__visual-shape{clip-path:polygon(0 0,100% 50%,0 100%);transform:translateY(-50%) scale(1.08);background:#a486ac}
.story[data-active="3"] .story__visual-shape span{border:0}
.story__process{position:absolute;z-index:5;inset:0;display:none;background:#342c34}
.story__visual.is-process .story__process{display:block}
.story__process canvas{display:block;width:100%;height:100%}
.story__visual-note{position:absolute;z-index:7;left:23px;right:23px;bottom:21px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.14em;color:#d2bed6;text-shadow:0 1px 4px #211626}
.story__footer{padding-top:27px}
.story__steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.story__step{text-align:left;border:0;border-top:1px solid rgba(255,255,255,.27);background:transparent;color:#9d8ca1;padding:14px 0 22px;cursor:pointer;font-size:13px;font-weight:700;transition:color .3s,border-color .3s}
.story__step span{font-size:10px;margin-right:14px}
.story__step.is-active,.story__step:hover{border-color:#c7aace;color:#fff}
.story__progress{height:2px;background:rgba(255,255,255,.18)}
.story__progress span{display:block;height:100%;width:0;background:#bb9ac3}
.offer{min-height:100svh;padding-top:42px;padding-bottom:38px;background:var(--paper);display:flex;flex-direction:column;justify-content:center}
.offer__heading{display:grid;grid-template-columns:1.35fr .65fr;gap:5vw;align-items:end;padding:24px 0 30px}
.offer h2{font-size:clamp(48px,4.7vw,76px)}
.offer__heading p{margin-bottom:10px;max-width:380px}
.offer__rows{border-top:1px solid #8a8088}
.offer__rows>a{display:grid;grid-template-columns:85px minmax(250px,1fr) minmax(200px,.8fr) 30px;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);transition:padding .25s,background .25s}
.offer__rows>a:hover{padding-left:18px;background:#ece8eb}
.offer__number{font-size:11px;font-weight:700;color:#887c87}
.offer__name{font-family:Manrope,Arial,sans-serif;font-size:clamp(25px,2.2vw,34px);font-weight:600;letter-spacing:-.055em}
.offer__detail{font-size:13px;color:#686068}
.offer__arrow{font-size:22px;font-weight:400;text-align:right}
.offer__all{margin-top:25px}
.facility{min-height:100svh;display:grid;grid-template-columns:1.17fr .83fr;background:#e8e5e2}
.facility__left{padding:70px var(--edge) 90px;display:flex;flex-direction:column}
.facility__content{margin:auto 0;max-width:730px;padding:80px 0}
.facility__content .section-kicker{margin-bottom:30px}
.facility__content>p:not(.section-kicker){max-width:500px;margin-top:44px}
.facility__right{background:#ddd6dc;display:flex;flex-direction:column;justify-content:center;padding:10vw 6vw}
.facility__figure{display:flex;align-items:end;gap:20px;padding:35px 0}
.facility__figure strong{display:grid;flex:none;font-family:Manrope,Arial,sans-serif;font-size:clamp(72px,8.2vw,140px);font-weight:500;letter-spacing:-.095em;line-height:.9;font-variant-numeric:tabular-nums}
.facility__figure strong::after{content:attr(data-final);grid-area:1/1;visibility:hidden}
.facility__figure .count-value{grid-area:1/1}
.facility__figure>span{font-size:10px;font-weight:700;letter-spacing:.12em;line-height:1.5;padding-bottom:9px}
.facility__rule{height:1px;background:#ab9eaa}
.partners{min-height:100svh;display:flex;flex-direction:column;background:#fff;padding-top:70px;padding-bottom:32px}
.partners__intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.46fr);gap:7vw;align-items:end;padding:3vh 0 32px}
.partners__intro .section-kicker{margin-bottom:12px;color:#805e87}
.partners h2{font-size:clamp(46px,5.3vw,78px);line-height:1.05;margin:0}
.partners h2 em{color:#805e87}
.partners__intro>p{max-width:390px;margin:0 0 5px;color:#635963;font-size:clamp(15px,1.25vw,18px);line-height:1.5}
.partners__list{display:flex;flex-wrap:wrap;align-content:center;flex:1;min-height:0;margin:0;padding:0;border-top:1px solid #e4dfe4;border-left:1px solid #e4dfe4;list-style:none}
.partners__logo{flex:0 0 16.666666%;min-width:0;height:clamp(93px,12vh,130px);display:flex;align-items:center;justify-content:center;padding:13px;border-right:1px solid #e4dfe4;border-bottom:1px solid #e4dfe4;overflow:hidden;background:#fff;transition:background .35s}
.partners__logo img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transition:transform .5s cubic-bezier(.22,1,.36,1)}
.partners__logo img[src$=".webp"]{max-width:min(100%,210px)}
.partners__logo:hover{background:#fbf9fb}
.partners__logo:hover img{transform:scale(1.045)}
.partners__logo--widecrop img{width:100%;height:100%;max-height:none;object-fit:cover}
.partners__logo--rays img{max-height:none;height:125%}
.partners__logo--agrify{flex-direction:column;gap:1px}
.partners__logo--agrify img{max-height:62%}
.partners__logo--agrify span{color:#1d2931;font-size:clamp(12px,1.35vw,18px);font-weight:650;letter-spacing:.21em;line-height:1}
.partners__logo--cloud img{filter:invert(1)}
.partners__logo--legacy span{color:#da822f;font-family:Georgia,serif;font-size:clamp(20px,2.4vw,32px);font-weight:700;letter-spacing:-.035em;line-height:1}
.partners__foot{display:flex;justify-content:space-between;gap:18px;padding-top:18px;color:#7c6d7d;font-size:10px;font-weight:700;letter-spacing:.12em}
.contact{min-height:100svh;background:var(--plum);color:#fff;padding-top:80px;display:flex;flex-direction:column}
.contact__main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(35px,5.5vw,90px);align-items:center;flex:1;padding:28px 0 32px}
.contact__copy{min-width:0}
.contact__copy .section-kicker{color:#c9afd0;margin-bottom:18px}
.contact h2{font-size:clamp(56px,5.9vw,98px);margin:0 0 23px}
.contact__copy>p:not(.section-kicker){font-size:clamp(15px,1.32vw,18px);line-height:1.55;color:#ded2e1;max-width:490px;margin-bottom:25px}
.contact__location{position:relative;overflow:hidden;border-top:1px solid rgba(255,255,255,.3);min-height:110px;padding:19px 0}
.contact__map{position:absolute;right:0;top:0;width:47%;height:100%;color:#b491bf;pointer-events:none}
.contact__location-copy{position:relative;z-index:1}
.contact__location-copy>span,.contact__form-head>span{display:block;font-size:10px;font-weight:700;letter-spacing:.14em;color:#c9afd0}
.contact__location-copy a{display:inline-block;margin-top:13px;font-size:15px;line-height:1.4;font-weight:600}
.contact__location-copy a span{padding-left:8px;font-size:17px}
.contact__form{border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.025);padding:27px 30px 21px;min-width:0}
.contact__form-head{display:flex;justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:24px}
.contact__form-head h3{font-family:Manrope,Arial,sans-serif;font-size:clamp(18px,1.8vw,24px);font-weight:600;letter-spacing:-.035em;line-height:1.2;margin:0}
.contact__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 22px}
.contact__fields label,.contact__message{display:block;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#c9afd0}
.contact__fields input,.contact__message textarea{display:block;width:100%;border:0;border-bottom:1px solid rgba(255,255,255,.38);border-radius:0;background:transparent;color:#fff;font:500 15px/1.4 "DM Sans",Arial,sans-serif;letter-spacing:0;text-transform:none;padding:10px 0 9px;outline:0}
.contact__fields input:focus,.contact__message textarea:focus{border-bottom-color:#fff;box-shadow:0 1px 0 #fff}
.contact__message{margin-top:20px}
.contact__message textarea{resize:vertical;min-height:62px}
.contact__form-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}
.contact__form-actions button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-width:194px;padding:13px 15px;border:1px solid #fff;border-radius:0;background:#fff;color:var(--ink);font-size:12px;font-weight:700;cursor:pointer;transition:background .2s,color .2s}
.contact__form-actions button:hover{background:transparent;color:#fff}
.contact__form-actions button span{font-size:18px;font-weight:400}
.contact__form-actions p{font-size:10px;line-height:1.45;color:#c9bdcd;margin:0;max-width:160px}
.contact__form-actions p a{text-decoration:underline;text-underline-offset:3px;color:#fff}
.contact__form-actions button:disabled{opacity:.65;cursor:wait}
.contact__form-status{font-size:11px;color:#ded2e1;margin:10px 0 0;min-height:0}
.contact__form-status.is-error{color:#ffd6df}
.contact__form-status:empty{display:none}
.contact__bottom{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;border-top:1px solid rgba(255,255,255,.3);padding:19px 0;font-size:11px;letter-spacing:.05em}
.contact__bottom a:last-child{text-align:right}
.contact__bottom a:hover,.contact__location-copy a:hover{text-decoration:underline;text-underline-offset:4px}
.site-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.68fr);column-gap:5vw;padding:40px var(--edge) 20px;background:#1b1720;color:#fff}
.site-footer__top{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:31px;padding-bottom:34px}
.brand--footer{width:clamp(160px,14vw,205px)}
.site-footer__ticker{display:flex;align-items:baseline;gap:11px;color:#f4eff5;transition:color .2s}
.site-footer__ticker span:first-child{font-size:9px;font-weight:700;letter-spacing:.13em;color:#baaebe}
.site-footer__ticker strong{font-size:18px;font-weight:600;letter-spacing:-.025em;white-space:nowrap}
.site-footer__ticker span:last-child{font-size:16px;transition:transform .25s}
.site-footer__ticker:hover,.site-footer__ticker:focus-visible{color:#d3addb}
.site-footer__ticker:hover span:last-child{transform:translate(2px,-2px)}
.site-footer__investor{display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:center;align-items:center;gap:14px 20px;padding:8px 0 34px 4vw;border-left:1px solid rgba(255,255,255,.28)}
.site-footer__investor>span{grid-column:1/-1;font-size:9px;font-weight:700;letter-spacing:.12em;color:#bdaac2}
.site-footer__investor strong{font-family:Manrope,Arial,sans-serif;font-size:clamp(29px,3vw,43px);font-weight:500;line-height:1.1;letter-spacing:-.055em;transition:color .25s}
.site-footer__investor b{font-size:28px;font-weight:400;line-height:1;transition:transform .25s}
.site-footer__investor:hover strong,.site-footer__investor:focus-visible strong{color:#d3addb}
.site-footer__investor:hover b,.site-footer__investor:focus-visible b{transform:translate(3px,-3px)}
.site-footer__bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid rgba(255,255,255,.29);padding:23px 0 26px}
.site-footer__links,.site-footer__socials{display:flex;flex-wrap:wrap;gap:12px 25px}
.site-footer__links a,.site-footer__socials a{font-size:12px;font-weight:600;color:#d6cbd8;transition:color .2s}
.site-footer__socials{justify-content:flex-end}
.site-footer__socials a{white-space:nowrap}
.site-footer__socials span{display:inline-block;margin-left:2px;transition:transform .2s}
.site-footer__links a:hover,.site-footer__socials a:hover,.site-footer__policies a:hover,.site-footer__legal a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.site-footer__socials a:hover span{transform:translate(2px,-2px)}
.site-footer__policies{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 26px;padding:0 0 20px}
.site-footer__policies a{font-size:11px;font-weight:600;color:#bdaec0;transition:color .2s}
.site-footer__legal{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;padding-top:15px;border-top:1px solid rgba(255,255,255,.15);font-size:10px;color:#aa9aac}
.site-footer__legal a{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:1100px){
.site-header{gap:28px}.site-nav>a,.site-nav__group>a{padding:0 12px;font-size:11px}
.story h2{font-size:clamp(52px,6vw,75px)}
.facility__figure{display:block}.facility__figure>span{display:block;margin-top:16px}
}
@media(max-width:900px){
.site-header{height:72px}.brand{width:165px}.site-nav{display:none}
.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;align-items:center;width:40px;height:40px;margin-left:auto;border:0;background:none;color:#fff;cursor:pointer}
.menu-toggle span{height:1px;width:22px;background:currentColor;transition:transform .2s}
.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.mobile-menu:not([hidden]){position:fixed;z-index:25;display:flex;flex-direction:column;inset:72px 0 0;background:var(--ink);color:#fff;padding:30px var(--edge);overflow:auto}
.mobile-menu a{border-bottom:1px solid rgba(255,255,255,.2);padding:20px 0;font-size:22px}
.mobile-menu .mobile-menu__sub{padding:12px 0 12px 19px;font-size:15px;color:#d7c5da}
.site-footer__bottom{flex-direction:column;align-items:flex-start;gap:20px}.site-footer__socials{justify-content:flex-start}
}
@media(max-width:760px){
:root{--edge:24px}
.hero{min-height:100svh;padding-top:115px;padding-bottom:180px}
.hero__film video{display:none}
.hero__film video{object-position:60% center}
.hero__film::after{background:linear-gradient(180deg,rgba(33,22,38,.72),rgba(33,22,38,.9) 47%,rgba(33,22,38,.62))}
.hero__eyebrow{font-size:9px;margin-bottom:18px}
.hero h1{font-size:clamp(42px,10vw,58px);line-height:1.08}
.hero__bottom{gap:19px;margin-top:24px}
.hero__bottom p{font-size:17px}
.hero__actions{gap:16px 20px}
.hero__metrics{bottom:28px;max-width:none}
.hero__metric{display:block;padding:16px 12px 0 0}
.hero__metric+.hero__metric{padding-left:15px}
.hero__metric strong{font-size:clamp(25px,6.3vw,38px)}
.hero__metric>span{display:block;margin-top:8px;font-size:8px}
.section-head{font-size:9px}.section-head span:last-child{text-align:right}
.intro{min-height:100svh;padding-top:55px;padding-bottom:50px}
.intro__grid{display:block;padding:42px 0}
.intro h2,.offer h2,.facility h2{font-size:clamp(45px,8.5vw,67px)}
.intro__aside{margin-top:25px;max-width:530px}
.intro__product{margin:28px auto 0}
.story{height:400svh}
.story__sticky{position:sticky;height:100svh;min-height:0;padding:90px var(--edge) 16px}
.story__sticky .section-head{padding-bottom:12px}
.story__layout{display:flex;flex-direction:column;align-items:stretch;justify-content:space-around;gap:12px;min-height:0}
.story__copy{padding:8px 0 0}
.story__copy .section-kicker{margin-bottom:14px;font-size:9px}
.story h2{font-size:clamp(39px,9vw,58px);min-height:0;margin-bottom:15px;max-width:520px}
.story__copy>p:not(.section-kicker){font-size:14px;line-height:1.45;margin-bottom:17px;max-width:540px}
.story__copy .text-action{font-size:12px;padding-bottom:7px;min-width:185px}
.story__visual{height:clamp(170px,31vh,250px);width:100%;max-height:none;flex-shrink:0}
.story .story__copy h2{letter-spacing:-.045em;word-spacing:.06em}
.insight-map__node text{font-size:22px;letter-spacing:.5px}
.story__visual-note{bottom:11px;left:12px;right:12px;font-size:8px}
.story__steps{grid-template-columns:repeat(2,1fr);gap:4px 16px}
.story__step{padding:7px 0;font-size:11px}.story__step span{font-size:9px;margin-right:7px}.story__footer{padding-top:8px}
.story__progress{margin-top:5px}
.offer{padding-top:60px;padding-bottom:80px}
.offer h2{font-size:clamp(45px,8.5vw,67px)}
.offer__heading{display:block;padding:70px 0 60px}.offer__heading p{margin-top:38px}
.offer__rows>a{grid-template-columns:34px 1fr 22px;gap:13px;padding:25px 0}
.offer__name{font-size:27px}.offer__detail{grid-column:2;grid-row:2}.offer__arrow{grid-column:3;grid-row:1}
.facility{display:block}.facility__left{padding:60px var(--edge) 75px}.facility__content{padding:80px 0 0}.facility__right{padding:60px var(--edge)}
.facility__figure{display:flex}.facility__figure strong{font-size:85px}.facility__figure>span{margin-top:0}
.partners{min-height:0;padding-top:60px;padding-bottom:36px}
.partners__intro{display:block;padding:35px 0 28px}
.partners h2{font-size:clamp(43px,10vw,64px)}
.partners__intro>p{margin:20px 0 0;font-size:16px}
.partners__logo{flex-basis:50%;height:112px;padding:12px}
.partners__foot{font-size:9px;line-height:1.4}
.contact{min-height:100svh;padding-top:72px}.contact__main{display:block;padding:48px 0 46px}
.contact h2{font-size:clamp(48px,10.5vw,70px)}
.contact__copy>p:not(.section-kicker){max-width:540px}
.contact__location{margin-top:30px}
.contact__form{margin-top:36px;padding:24px 22px 20px}
.contact__form-head{display:block}.contact__form-head h3{margin-top:11px}
.contact__bottom{grid-template-columns:1fr 1fr;line-height:1.6}.contact__bottom a:last-child{text-align:left}
.site-footer{grid-template-columns:1fr;padding-top:34px;padding-bottom:20px}.site-footer__top{gap:22px;padding-bottom:25px}.site-footer__ticker span:first-child{display:none}.site-footer__investor{padding:20px 0 25px;border-top:1px solid rgba(255,255,255,.29);border-left:0}.site-footer__investor strong{font-size:clamp(29px,8vw,40px)}.site-footer__bottom{padding-top:21px;padding-bottom:25px}
}
@media(max-width:420px){.hero h1{font-size:clamp(34px,9.3vw,40px);letter-spacing:-.04em;word-spacing:.08em}.facility__figure strong{font-size:70px}.facility__figure>span{font-size:9px}.contact__form-actions{display:block}.contact__form-actions p{margin-top:12px;max-width:none}}
@media(max-width:350px){.contact__fields{grid-template-columns:1fr}.contact__bottom{grid-template-columns:1fr}}
@media(max-width:760px){
.story__development{padding-top:4px}
.story__development-head{grid-template-columns:1fr;gap:5px;padding-bottom:12px}
.story__development-head .section-kicker{font-size:9px;margin-bottom:5px}
.story__development-head h2{font-size:clamp(35px,9vw,45px)}
.story__development-head>p{font-size:12px;line-height:1.3;max-width:none}
.development-map{grid-template-columns:1fr;grid-template-rows:repeat(5,minmax(0,1fr))}
.development-map__step{display:grid;grid-template-columns:44px 23px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;align-content:center;align-items:center;padding:5px 12px;border-right:0;border-bottom:1px solid rgba(255,255,255,.13)}
.development-map__step:last-child{border-bottom:0}
.development-map__step::after{display:none}
.development-map__icon,.development-map__step--final .development-map__icon{grid-column:1;grid-row:1/3;width:38px;margin:0;align-self:center}
.development-map__step.is-active .development-map__icon{box-shadow:0 0 0 4px rgba(212,176,220,.1),0 0 15px rgba(211,168,220,.28)}
.development-map__number{grid-column:2;grid-row:1;font-size:9px;margin:0}
.development-map__step strong{grid-column:3;grid-row:1;min-height:0;font-size:10px}
.development-map__step p{grid-column:2/-1;grid-row:2;min-height:0;padding:0;border:0;margin:3px 0 0;font-size:10px;line-height:1.2}
.story__development-foot{padding-top:8px;font-size:8px}
}
@media(max-width:760px) and (max-height:650px){.story__sticky{padding-top:76px}.story__visual{height:145px}.story h2{font-size:38px}.story__copy>p:not(.section-kicker){font-size:13px}}
@media(max-width:760px) and (max-height:650px){.story__development-head>p,.development-map__step p{display:none}.story__development-head h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;scroll-snap-type:none}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.hero__film video{display:none}.story{height:auto}.story__sticky{position:relative;height:auto;min-height:0}.story__visual{min-height:180px}}
