/* FOURI EDITORIAL V4: original design system + original licensed FOURI media. */
:root{--ed-black:#101718;--ed-lime:#d4ee58;--ed-white:#f5f3ed;--ed-hair:rgba(255,255,255,.24)}
.ed-page{overflow:clip}.ed-container{width:min(1480px,calc(100% - 100px));margin-inline:auto}
.ed-overline,.ed-meta,.ed-concept-tag,.ed-kicker,.ed-image-credit,.ed-product-index,.ed-hero-rail,.ed-access-note span{font:600 11px/1.45 Consolas,monospace;letter-spacing:.13em;text-transform:uppercase}
.ed-space{padding-block:clamp(90px,10vw,175px)}
.ed-dot{color:#93a92b}.ed-under-link{font:600 12px/1.4 Arial,sans-serif;border-bottom:1px solid currentColor;padding-bottom:6px;white-space:nowrap}
.ed-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;padding:18px 23px;border:1px solid currentColor;font-size:12px;font-weight:700;min-width:210px;transition:transform .3s,background .3s}
.ed-btn:hover{transform:translateY(-4px)}.ed-btn-acid{background:var(--ed-lime);color:#12221e;border-color:var(--ed-lime)}.ed-btn-acid:hover{background:#e7fc93}
.ed-textlink{font-size:12px;border-bottom:1px solid #fff;padding-bottom:7px;color:#fff}
.ed-overline{display:block;margin-bottom:22px;color:var(--muted)}
/* nav and footer: elevated editorial identity, retaining theme switching and current routes */
.masthead{z-index:60}.masthead .nav{width:min(1480px,calc(100% - 100px));height:82px;gap:23px}.masthead .logo{font-size:29px;font-weight:900;letter-spacing:-.075em}.masthead .logo small{letter-spacing:.25em;font-size:7px}.masthead .nav nav{gap:22px}.masthead .nav nav a{position:relative;font-size:12px;transition:opacity .2s}.masthead .nav nav a:hover{opacity:.57}.masthead .nav nav .ed-nav-work{font-weight:700}
.footer{overflow:hidden;position:relative}.ed-footer-wordmark{font-size:clamp(130px,23.9vw,430px);line-height:.71;white-space:nowrap;letter-spacing:-.105em;font-weight:900;padding:25px 0 45px;color:var(--ink);opacity:.12;user-select:none;pointer-events:none}.ed-footer-wordmark span{font-size:.11em;vertical-align:top;letter-spacing:0;margin-left:.09em}
.footer .footer-top,.footer .footer-bottom{position:relative;z-index:1}.footer .footer-top{width:min(1380px,calc(100% - 100px));margin:auto}.footer .footer-bottom{width:min(1380px,calc(100% - 100px));margin-inline:auto}
/* LARGE, IMMERSIVE HOME: radically different from old two-column hero */
.ed-hero{position:relative;isolation:isolate;color:#fff;background:#102623;min-height:min(900px,calc(100svh - 82px));display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.ed-hero-images{position:absolute;inset:0;z-index:-2}.ed-hero-images::after{content:"";position:absolute;inset:0;background:#07252036;mix-blend-mode:multiply}.ed-hero-primary{position:absolute;inset:0;width:73%;height:100%;object-fit:cover;object-position:48% 40%;filter:saturate(.82)}.ed-hero-secondary{position:absolute;right:0;top:0;width:33%;height:100%;object-fit:cover;object-position:47%;filter:saturate(.8);border-left:4px solid #fff2}
.ed-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0b1b1ad6 0%,#0b1b1a9e 45%,#0b1b1a53 75%),linear-gradient(0deg,#081b18df,transparent 55%);z-index:-1}
.ed-hero-content{width:100%;padding-top:clamp(66px,9vw,125px);padding-bottom:52px}.ed-kicker{display:flex;align-items:center;gap:12px;color:#f0f6d8}.ed-active-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ed-lime);box-shadow:0 0 16px var(--ed-lime)}
.ed-home-hero h1{margin-top:clamp(65px,8vw,135px);font-size:clamp(64px,9.55vw,170px);font-weight:900;line-height:.84;letter-spacing:-.097em;max-width:1350px;text-wrap:balance}
.ed-home-hero h1 span,.ed-home-hero h1 strong{display:block}.ed-home-hero h1 strong{font-weight:900;color:var(--ed-lime)}
.ed-hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:55px;padding:clamp(40px,5vw,70px) 0 0}.ed-hero-bottom p{font-size:clamp(15px,1.43vw,20px);color:#e8eee9;max-width:490px;line-height:1.55}.ed-hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}
.ed-hero-rail{position:relative;display:flex;justify-content:space-between;border-top:1px solid #dce9d57a;padding-block:17px 21px;color:#ecf2e8;font-size:10px}
.ed-section-intro{display:grid;grid-template-columns:1.3fr .75fr;column-gap:60px;align-items:end;margin-bottom:54px}
.ed-section-intro .ed-overline{grid-column:1/-1}.ed-section-intro h2{font-weight:800;letter-spacing:-.083em;max-width:950px;font-size:clamp(50px,6.6vw,105px);line-height:.94}.ed-section-intro p{font-size:clamp(14px,1.35vw,19px);max-width:520px;line-height:1.75}
.ed-feature-grid{display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:repeat(2,340px);gap:17px}
.ed-feature{display:block;position:relative;overflow:hidden;background:#142321;color:#fff}.ed-feature-1{grid-row:span 2}.ed-feature-image{position:absolute;inset:0;overflow:hidden}.ed-feature-image img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.75,.2,1);filter:saturate(.8)}.ed-feature:hover .ed-feature-image img{transform:scale(1.08)}.ed-feature-image::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#061211e8,transparent 64%)}
.ed-concept-tag{position:absolute;top:22px;right:22px;color:#f2f8ed;font-size:9px;border:1px solid #ffffff8a;padding:9px;background:#0b1a1a77}
.ed-feature-copy{position:absolute;left:clamp(22px,3vw,50px);right:clamp(22px,3vw,50px);bottom:clamp(25px,3vw,50px);display:flex;justify-content:space-between;align-items:end;gap:20px}.ed-feature-copy h3{font-size:clamp(38px,4.6vw,72px);font-weight:750;letter-spacing:-.068em;line-height:.99}.ed-feature:not(.ed-feature-1) .ed-feature-copy h3{font-size:clamp(35px,3.6vw,55px)}.ed-meta{display:block;color:#d6dfd1;font-size:10px;margin-bottom:12px}.ed-big-arrow{font-size:38px;font-weight:300;line-height:1;transition:transform .3s}.ed-feature:hover .ed-big-arrow{transform:translate(5px,-5px)}
.ed-selected-foot{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:24px;margin-top:28px}.ed-selected-foot span{max-width:600px;color:var(--muted);font-size:14px}
.ed-statement{padding:clamp(100px,11vw,190px) 0;background:#172926;color:#f5f7ea}.ed-statement .ed-overline{color:var(--ed-lime)}.ed-statement h2{font-size:clamp(66px,9.1vw,156px);line-height:.89;letter-spacing:-.088em;max-width:1250px;font-weight:800}
.ed-statement-lower{display:grid;grid-template-columns:1fr 1.5fr;gap:70px;border-top:1px solid #70837985;margin-top:75px;padding-top:30px}.ed-statement-lower p{color:#cbd8d0;font-size:16px;max-width:370px}.ed-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.ed-facts span{font:10px/1.8 Consolas,monospace;letter-spacing:.05em;color:#c4d3c4}.ed-facts b{display:block;font:500 clamp(58px,6.4vw,96px)/1 Arial,sans-serif;color:var(--ed-lime);letter-spacing:-.07em;margin-bottom:12px}
.ed-proof{background:var(--paper)}.ed-proof-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:15px}.ed-proof-grid figure{position:relative;overflow:hidden;margin:0;min-height:320px;background:#12231e}.ed-proof-grid img{width:100%;height:100%;min-height:320px;object-fit:cover;filter:saturate(.8);transition:transform .7s}.ed-proof-grid figure:hover img{transform:scale(1.04)}.ed-proof-grid figcaption{position:absolute;bottom:0;left:0;right:0;padding:30px 18px 14px;background:linear-gradient(transparent,#0b1d1bcf);color:#fff;font:10px Consolas;letter-spacing:.08em}.ed-proof-links{display:flex;gap:35px;justify-content:flex-end;padding-top:28px}
/* legacy sections recast as editorial chapters, not a repeated card UI */
.ed-home .lab-entry{padding-top:clamp(85px,10vw,145px);padding-bottom:clamp(85px,10vw,145px)}.ed-home .lab-entry h2,.ed-home .solutions h2,.ed-home .ecosystem h2,.ed-home .process h2{font-weight:750;letter-spacing:-.075em;font-size:clamp(42px,5.5vw,88px)}
.ed-home .study-directory{padding-top:90px;padding-bottom:90px}.ed-home .study-directory h2{font-size:clamp(36px,4vw,60px)}
.ed-home .product-grid{gap:13px}.ed-home .product-card{border:0}.ed-home .product-visual{height:clamp(180px,19vw,295px)}.ed-home .product-card h3{font-size:clamp(25px,2.8vw,42px);font-weight:700}.ed-home .product-card .card-body{padding:28px}
.ed-home .pillars{border:0;gap:14px}.ed-home .pillar{border:1px solid var(--line);min-height:300px;padding:clamp(24px,3vw,46px)}.ed-home .step{padding-top:28px}.ed-home .evidence{padding-top:100px}
.ed-page .cta{padding:clamp(85px,9vw,140px) 0;background:var(--ed-lime);color:#15241e}.ed-page .cta h2{font-weight:800;letter-spacing:-.085em;font-size:clamp(42px,6.3vw,104px)}.ed-page .cta .btn{background:#10221e;color:#fff}
/* product pages: full bleed editorial product identity */
.ed-product-hero,.ed-inner-hero{position:relative;isolation:isolate;min-height:clamp(600px,72vh,800px);background:#0c2422;overflow:hidden;color:#fff;display:flex;align-items:flex-end}
.ed-product-bg,.ed-inner-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:saturate(.85)}.ed-product-tint,.ed-inner-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#091a19d9,#0925227c 56%,#09252220),linear-gradient(0deg,#081d1bd9,transparent 72%)}
.ed-product-head,.ed-inner-content{width:100%;padding-top:100px;padding-bottom:85px}.ed-product-head .ed-overline,.ed-inner-content .ed-overline{color:var(--ed-lime)}.ed-product-head h1,.ed-inner-content h1{max-width:1250px;font-size:clamp(74px,11vw,173px);line-height:.87;font-weight:900;letter-spacing:-.09em;overflow-wrap:anywhere}.ed-product-head>p{max-width:550px;margin:30px 0 40px;color:#edf3e8;font-size:15px}.ed-product-actions{display:flex;flex-wrap:wrap;align-items:center;gap:33px}.ed-product-actions .ed-under-link{color:#fff}.ed-product-index{position:absolute;right:48px;bottom:22px;color:#e8eee3;font-size:9px}
.ed-access-note{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.ed-access-note span{color:var(--muted)}.ed-access-note p{font-size:12px;max-width:530px}
.ed-product-page .phase5-demo,.ed-product-page .phase4-demo,.ed-product-page .lab-block{margin-top:90px;margin-bottom:110px}.ed-product-page section.detail-layout{padding-block:clamp(80px,9vw,150px)}.ed-product-page .detail-copy h2{font-size:clamp(36px,4.4vw,67px);font-weight:750;letter-spacing:-.068em}.ed-product-page .detail-aside{border:1px solid var(--line);background:var(--white)}
.ed-product-page section.night{padding-block:100px}.ed-product-page section.release-media{padding-block:100px}
/* tech lab retains original interactive controls but reads like editorial chapters */
.ed-inner-content>p{max-width:690px;margin-top:34px;color:#edf5eb;font-size:clamp(16px,1.6vw,22px);line-height:1.6}.ed-inner-content h1{font-size:clamp(66px,9vw,145px)}.ed-image-credit{display:inline-block;margin-top:55px;border-top:1px solid #ffffff92;padding-top:11px;color:#dee8da}
.ed-tech-page .tl-chapters{top:82px}.ed-tech-page .tl-section{padding-block:clamp(105px,12vw,185px)}.ed-tech-page .tl-intro h2{font-size:clamp(52px,6.5vw,97px);font-weight:760;letter-spacing:-.085em}.ed-tech-page .tl-universe-board{border:0;box-shadow:0 30px 65px #061f1f18}.ed-tech-page .tl-format{background:#e9eee4}.ed-tech-page .tl-evidence{background:#111f1d;color:#f4f7eb}.ed-tech-page .tl-evidence .tl-intro h2{color:#f4f7eb}.ed-tech-page .tl-evidence .tl-intro p,.ed-tech-page .tl-evidence p{color:#b8cbbb}
.ed-tech-page .tl-resources{border-top:1px solid var(--line)}
/* genuine launch images / company / press: collage-like editorial approach */
.ed-company-page .story,.ed-press-page .story{padding-block:100px}.ed-company-page .story h2,.ed-press-page .story h2{font-weight:760;font-size:clamp(42px,4.6vw,77px);letter-spacing:-.075em}
.ed-company-page .launch-gallery{gap:10px}.ed-company-page .launch-gallery figure:nth-child(2){transform:translateY(35px)}.ed-company-page .launch-gallery img{aspect-ratio:.94}
.ed-press-page .page-hero{padding-block:90px}.ed-press-page .section h2{font-size:clamp(42px,5.2vw,75px);font-weight:760}.ed-press-page .section{padding-block:90px}.ed-press-page .launch-gallery img{aspect-ratio:1.1}
.ed-contact-page .brief-grid{padding-block:clamp(80px,8vw,145px)}.ed-contact-page .brief-form input,.ed-contact-page .brief-form textarea,.ed-contact-page .brief-form select{border:0;border-bottom:1px solid var(--line);background:transparent;font-size:15px;padding:17px 0}.ed-contact-page .contact-details{padding:35px;border:1px solid var(--line)}
.ed-generic-page .page-hero{padding-block:clamp(65px,8vw,140px)}.ed-generic-page .page-hero h1{font-weight:800;letter-spacing:-.078em}
/* subtle enhancements and accessibility */
.ed-feature:focus-visible,.ed-btn:focus-visible,.ed-under-link:focus-visible{outline:3px solid #d4ee58;outline-offset:5px}.ed-hero a:focus-visible{outline-color:#fff}.ed-feature-grid [hidden],.ed-page [hidden]{display:none!important}
.ed-page section[id]{scroll-margin-top:105px}.ed-home-hero h1,.ed-inner-content h1,.ed-product-head h1{hyphens:auto}
@media(max-width:1100px){.ed-container,.masthead .nav{width:calc(100% - 60px)}.ed-home-hero h1{font-size:clamp(65px,10vw,115px)}.ed-hero-bottom{align-items:start;flex-direction:column;gap:27px}.ed-feature-grid{grid-template-rows:repeat(2,300px)}.ed-product-head h1{font-size:clamp(67px,10vw,115px)}.ed-section-intro{grid-template-columns:1fr 1fr}.ed-statement h2{font-size:clamp(60px,9vw,110px)}}
@media(max-width:760px){.ed-container,.masthead .nav{width:calc(100% - 34px)}.masthead .nav{height:72px}.masthead .nav nav{top:72px}.ed-hero{min-height:max(700px,calc(100svh - 72px))}.ed-hero-primary{width:100%;object-position:50%}.ed-hero-secondary{display:none}.ed-hero-shade{background:linear-gradient(0deg,#081b1af2 0%,#081b1ad7 35%,#0b211a86 90%)}.ed-hero-content{padding-top:65px;padding-bottom:50px}.ed-home-hero h1{font-size:clamp(60px,12.2vw,90px);margin-top:clamp(110px,21vw,165px);line-height:.86}.ed-home-hero h1 span,.ed-home-hero h1 strong{overflow-wrap:anywhere}.ed-hero-bottom p{font-size:17px}.ed-hero-actions{gap:20px}.ed-hero-rail{font-size:8px}.ed-section-intro{grid-template-columns:1fr;gap:20px}.ed-section-intro h2{font-size:clamp(49px,11vw,75px)}.ed-feature-grid{grid-template-columns:1fr;grid-template-rows:auto;gap:10px}.ed-feature,.ed-feature-1{grid-row:auto;min-height:390px}.ed-feature-1{min-height:490px}.ed-feature-copy h3,.ed-feature:not(.ed-feature-1) .ed-feature-copy h3{font-size:clamp(40px,10vw,64px)}.ed-selected-foot{display:block}.ed-selected-foot .ed-under-link{display:inline-block;margin-top:18px}.ed-statement h2{font-size:clamp(55px,11.5vw,90px)}.ed-statement-lower{grid-template-columns:1fr;margin-top:48px;gap:38px}.ed-facts{gap:12px}.ed-facts b{font-size:clamp(39px,11vw,60px)}.ed-facts span{font-size:9px}.ed-proof-grid{grid-template-columns:1fr 1fr}.ed-proof-grid figure:first-child{grid-column:1/-1;min-height:340px}.ed-proof-grid figure:not(:first-child){min-height:220px}.ed-proof-grid img{min-height:220px}.ed-proof-links{justify-content:flex-start}.ed-inner-hero,.ed-product-hero{min-height:600px}.ed-inner-content,.ed-product-head{padding-block:85px 55px}.ed-product-head h1,.ed-inner-content h1{font-size:clamp(59px,11.3vw,93px)}.ed-product-index{right:18px;bottom:12px}.ed-access-note{display:block;padding:20px 0}.ed-access-note p{margin-top:8px}.ed-tech-page .tl-chapters{top:72px}.ed-tech-page .tl-section{padding-block:90px}.ed-tech-page .tl-intro h2{font-size:clamp(45px,9vw,65px)}.ed-company-page .launch-gallery figure:nth-child(2){transform:none}.ed-page .cta h2{font-size:clamp(42px,8.5vw,68px)}.footer .footer-top,.footer .footer-bottom{width:calc(100% - 36px)}.ed-footer-wordmark{font-size:24vw;padding:27px 0 20px}}
@media(max-width:420px){.ed-kicker{font-size:9px}.ed-home-hero h1{font-size:clamp(56px,12.4vw,73px)}.ed-facts{grid-template-columns:1fr 1fr}.ed-facts span:last-child{grid-column:1/-1}.ed-proof-grid{grid-template-columns:1fr}.ed-proof-grid figure:first-child{grid-column:auto}.ed-proof-grid figure{min-height:285px!important}.ed-btn{min-width:190px}.ed-product-head h1,.ed-inner-content h1{font-size:clamp(53px,12vw,70px)}}
@media(prefers-reduced-motion:reduce){.ed-feature-image img,.ed-feature,.ed-big-arrow,.ed-btn{transition:none!important}.ed-feature:hover .ed-feature-image img{transform:none!important}}

/* Final viewport gutters: override full-width content in hero variants. */
.ed-hero-content,.ed-inner-content,.ed-product-head{width:min(1480px,calc(100% - 100px))}
.ed-product-page .product-access{padding:18px 30px;margin:22px auto 0;max-width:1320px;border:1px solid var(--line);background:transparent;font-size:12px}
.ed-product-page .product-access p{font-size:12px}
@media(max-width:1100px){.ed-hero-content,.ed-inner-content,.ed-product-head{width:calc(100% - 60px)}}
@media(max-width:760px){.ed-hero-content,.ed-inner-content,.ed-product-head{width:calc(100% - 34px)}.ed-product-page .product-access{margin:15px 17px 0;padding:15px}}

.ed-core-panel{position:relative;background:#0d2924;color:#f4f8ed;margin:34px 0 55px;padding:clamp(25px,4vw,55px);overflow:hidden}.ed-core-panel .ed-core-label{position:relative;z-index:3;color:#d4ee58;font:600 10px Consolas,monospace;letter-spacing:.18em}.ed-core-panel .tl-hero-visual{max-width:820px;margin:auto;padding:0 0 10px;min-height:490px}.ed-core-panel .tl-core-caption{color:#d2dfd4!important}.ed-core-panel .tl-core-caption strong{color:#fff}.ed-core-panel .tl-core{max-height:620px;min-height:430px}.ed-core-panel .tl-visual-top,.ed-core-panel .tl-core-bottom{color:#d1e0d1}.ed-core-panel .tl-core-caption{border-color:#496a5b}.ed-core-panel .tl-core-center{color:#f4f8ed}
@media(max-width:760px){.ed-core-panel{margin:32px 0 40px;padding:24px 9px}.ed-core-panel .tl-hero-visual{min-height:370px}.ed-core-panel .tl-core{min-height:330px}.ed-core-panel .ed-core-label{padding-left:12px}}
