@font-face{font-family:Manrope;src:url('assets/fonts/manrope-variable.ttf') format('truetype');font-style:normal;font-weight:200 800;font-display:swap}
:root{--paper:#eeede8;--ink:#262824;--muted:#62665c;--line:#cccec5;--accent:#254ce5;--white:#fff;--dark:#252824;--gutter:clamp(24px,5.5vw,96px);--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--white)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500;letter-spacing:-.067em}p{line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.065em}h1{font-size:clamp(76px,8.2vw,128px);line-height:1.02}h2{font-size:clamp(64px,7.8vw,120px);line-height:1.04}h3{font-size:clamp(27px,2.8vw,40px);line-height:1.15;letter-spacing:-.05em}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:600;line-height:1.6}.skip-link{position:fixed;z-index:100;top:10px;left:10px;padding:14px;background:var(--accent);color:var(--white);transform:translateY(-160%)}.skip-link:focus{transform:none}.site-header{height:100px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:10}.brand{display:block;flex-shrink:0}.brand img{width:108px;height:auto;filter:brightness(0);object-fit:contain}.site-header nav{display:flex;gap:32px}.site-header nav a,.header-contact{font-size:11px;min-height:44px;display:inline-flex;align-items:center;position:relative}.site-header nav a:after{content:'';position:absolute;bottom:8px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}.site-header nav a:hover:after{transform:scaleX(1)}.header-contact{gap:20px;border-bottom:1px solid var(--ink)}.header-contact span{font-size:19px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:54px;padding:16px 23px;border-radius:4px;background:var(--ink);color:var(--paper);font-size:12px;border:1px solid var(--ink);transition:background .25s,color .25s,transform .25s}.button span{font-size:21px;line-height:1;transition:transform .25s}.button:hover{background:var(--accent);border-color:var(--accent)}.button:hover span{transform:translate(3px,-3px)}.tiny-square{width:6px;height:6px;background:var(--accent);display:inline-block}.world{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .6s}.world canvas{display:block;width:100%;height:100%}.world.is-rendered{opacity:1}.hero{min-height:calc(100svh - 100px);padding:65px var(--gutter) 0;display:flex;align-items:center;position:relative}.hero-copy{position:relative;z-index:2;width:53%;padding-bottom:80px}.hero-copy .eyebrow{display:flex;gap:10px;align-items:center;margin-bottom:30px}.hero h1 em{color:var(--accent)}.hero-description{font-size:14px;color:#54584f;margin:30px 0 28px;line-height:1.75}.hero-baseline{position:absolute;left:var(--gutter);right:var(--gutter);bottom:0;display:flex;justify-content:space-between;align-items:center;min-height:70px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);z-index:2}.hero-baseline a{min-height:44px;display:flex;align-items:center;gap:32px;color:var(--ink)}.hero-baseline a span{font-size:20px}.sculpture-static{position:absolute;width:52%;right:1%;top:10%;pointer-events:none}.sculpture-static img{width:100%;height:auto}.has-world .sculpture-static{visibility:hidden}.chapter{min-height:115svh;position:relative;padding:12svh var(--gutter);display:flex;align-items:center}.chapter:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent,#e4e6de55 50%,transparent);pointer-events:none;z-index:0}.scene-copy{position:relative;z-index:2;transform-origin:left center;will-change:transform;max-width:50%;--panel-scale:1;--panel-y:0px;transform:translateY(var(--panel-y)) scale(var(--panel-scale))}.chapter .eyebrow{margin-bottom:32px}.chapter h2 em{color:var(--accent)}.chapter-description{margin:32px 0 34px;font-size:14px;line-height:1.95;color:#54584f}.chapter-foot{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.chapter--reverse{justify-content:flex-end}.chapter--reverse .scene-copy{width:44%;transform-origin:right center}.chapter-caption{position:absolute;z-index:2;bottom:7svh;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.section{padding:110px var(--gutter);position:relative}.section-heading{position:relative;z-index:2;max-width:940px;margin-bottom:70px}.section-heading .eyebrow{margin-bottom:28px}.section-heading h2{font-size:clamp(54px,5.8vw,88px)}.applications{background:#e0e4da;z-index:3}.project{position:relative;display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(48px,8vw,140px);align-items:center;margin-bottom:90px;min-height:480px}.project:last-child{margin-bottom:0}.project-identity{border-radius:12px;position:relative;min-height:480px;padding:40px;overflow:hidden;transition:transform .45s var(--ease);background:#d1d9c5}.project-identity:hover{transform:translateY(-6px)}.project-identity:after{content:'';position:absolute;right:-60px;bottom:-90px;width:260px;height:260px;border-radius:50%;background:#eef0e4;opacity:.55;pointer-events:none}.visual-index{font-size:10px;display:block;letter-spacing:.09em;margin-bottom:34px;color:#59664a}.outsendr-logo{width:225px;height:auto}.identity-message{font-size:clamp(46px,5.2vw,76px);line-height:1.04;letter-spacing:-.065em;margin-top:50px;position:relative;z-index:1}.identity-message em{color:#536246}.visual-caption{position:absolute;bottom:32px;left:40px;font-size:10px;z-index:1}.project-copy{position:relative;z-index:2;padding:24px 0}.project-copy .eyebrow{color:var(--muted);margin-bottom:24px}.project-copy>p:not(.eyebrow){font-size:14px;color:#555b50;max-width:370px;margin-top:22px}.project--apte .project-identity{background:#d4d8ec}.project--apte .identity-message em{color:#526298}.project--apte .project-identity:after{background:#eef1ff}.apte-brand{display:flex;align-items:center;gap:12px;font-size:30px;font-weight:600;letter-spacing:-.05em;min-height:50px}.apte-brand img{width:54px;height:54px}.project--aqua .project-identity{background:#cadbdd}.project--aqua .identity-message em{color:#43676c}.project--aqua .project-identity:after{background:#e8f4f2}.product-wordmark{font-size:32px;letter-spacing:-.06em;line-height:54px}.product-wordmark>span{color:var(--accent)}.text-link{margin-top:28px;font-size:12px;display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:44px;border-bottom:1px solid currentColor}.text-link>span:not(.sr-only){font-size:22px;transition:transform .25s}.text-link:hover{color:var(--accent)}.text-link:hover>span:not(.sr-only){transform:translate(4px,-4px)}.project-details{margin-top:20px;font-size:12px;max-width:370px;border-bottom:1px solid #a9b4a0}.project-details summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:44px}.project-details summary::-webkit-details-marker{display:none}.project-details summary span{font-size:22px;transition:transform .25s}.project-details[open] summary span{transform:rotate(45deg)}.project-details p{padding:0 0 16px;color:#555b50}.clients{background:var(--paper);z-index:3}.clients .section-heading{max-width:850px}.client-list{border-top:1px solid var(--line)}.client{display:grid;grid-template-columns:1.2fr 1.8fr 2fr 40px;align-items:center;gap:28px;padding:30px 0;border-bottom:1px solid var(--line);transition:padding .25s,background .25s}.client-logo{height:65px;display:flex;align-items:center}.client-logo img{width:auto;max-width:140px;height:auto;max-height:55px;object-fit:contain}.inaes-logo{filter:brightness(0)}.client-name{font-size:20px;letter-spacing:-.04em}.client-work{font-size:12px;color:var(--muted)}.client-arrow{font-size:28px;transition:transform .25s}.client:hover{padding-left:15px;padding-right:15px;background:#e0e4da}.client:hover .client-arrow{transform:translate(4px,-4px);color:var(--accent)}.closing{min-height:90svh;display:flex;align-items:flex-start;justify-content:center;flex-direction:column}.closing .eyebrow{margin-bottom:32px;position:relative;z-index:2}.closing h2{font-size:clamp(60px,6.7vw,100px);max-width:75%;position:relative;z-index:2}.closing h2 em{color:var(--accent)}.closing .button{margin-top:40px;position:relative;z-index:2}.site-footer{position:relative;z-index:3;background:var(--paper);padding:35px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:10px;color:var(--muted)}.site-footer .brand img{width:78px}.site-footer>div{display:flex;gap:28px;align-items:center}.site-footer a:not(.brand){min-height:44px;display:flex;align-items:center}.site-footer a:hover{color:var(--accent)}.scroll-progress{position:fixed;z-index:30;top:0;left:0;height:2px;background:var(--accent);width:100%;transform:scaleX(0);transform-origin:left;pointer-events:none}[hidden]{display:none!important}.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}.form-help a{text-decoration:underline;text-underline-offset:4px}
.page-main{padding:75px var(--gutter) 100px;min-height:calc(100svh - 214px)}.page-heading{margin-bottom:60px}.page-heading .eyebrow{margin-bottom:25px}.page-heading h1{font-size:clamp(58px,6.8vw,108px);line-height:1.04}.page-heading p:last-child{font-size:14px;color:var(--muted);margin-top:26px}.contact-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:10vw}.contact-details{border-top:1px solid var(--line);padding-top:25px}.contact-details h2{font-size:25px;letter-spacing:-.04em;margin-bottom:25px}.contact-details>a{display:block;font-size:clamp(16px,2vw,23px);width:fit-content;border-bottom:1px solid var(--line);padding:10px 0}.contact-details>a:hover{color:var(--accent)}.contact-details>p{font-size:12px;color:var(--muted);margin-top:20px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:23px}.field{display:flex;flex-direction:column;gap:9px}.field label{font-size:11px}.field input,.field textarea,.field select{background:transparent;border:0;border-bottom:1px solid #9c9f93;border-radius:0;padding:12px 0;color:var(--ink);min-height:46px;width:100%;font-size:14px}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-bottom:2px solid var(--accent)}.field textarea{resize:vertical;min-height:115px}.field--wide,.form-help,.form-actions,.draft-result{grid-column:1/-1}.form-help{font-size:11px;color:#62665a;line-height:1.65}.form-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.form-actions button{cursor:pointer}.secondary-button{border:0;border-bottom:1px solid var(--ink);background:none;font-size:12px;min-height:44px;padding:10px 0;cursor:pointer}.draft-result{border:1px solid var(--line);padding:20px;font-size:12px}.draft-result[hidden]{display:none}.draft-result h2{font-size:20px;margin-bottom:12px;letter-spacing:-.04em}.draft-result textarea{width:100%;height:180px;resize:vertical;background:#f9f9f5;border:1px solid var(--line);padding:14px;font:12px/1.6 Manrope,Arial,sans-serif;margin:15px 0}.draft-result a{color:var(--accent);min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid currentColor}.draft-result .status{margin-top:10px;color:var(--muted)}.legal-content{max-width:800px}.legal-content h2{font-size:28px;letter-spacing:-.04em;margin:38px 0 16px}.legal-content p{font-size:14px;color:#555b50;margin-bottom:12px}.legal-content dl{display:grid;grid-template-columns:180px 1fr;gap:15px;font-size:13px}.legal-content dt{color:var(--muted)}.legal-content dd{margin:0;overflow-wrap:anywhere}.legal-note{background:#e3e5dc;padding:20px;line-height:1.65;font-size:13px}.legal-content a{text-decoration:underline;text-underline-offset:4px}

@media(max-width:1000px){.site-header nav{gap:20px}.hero h1{font-size:9vw}.chapter h2{font-size:9vw}.project{gap:40px}.project-identity{padding:30px;min-height:440px}.identity-message{font-size:6vw}.visual-caption{left:30px}.client{grid-template-columns:1fr 1.5fr 1.7fr 30px}.client-name{font-size:18px}}
@media(max-width:700px){:root{--gutter:24px}.site-header{height:78px;gap:12px}.brand img{width:76px}.site-header nav{display:none}.header-contact{font-size:10px;gap:14px}.hero{min-height:calc(100svh - 78px);padding-top:36px;align-items:flex-start;display:block}.hero-copy{max-width:100%;width:100%;padding:0}.hero-copy .eyebrow{font-size:8px;margin-bottom:24px;letter-spacing:.08em}.hero h1{font-size:clamp(58px,16.7vw,90px)}.hero-description{font-size:12px;margin:22px 0}.button{min-height:50px;padding:14px 18px;font-size:11px;gap:30px}.hero-baseline{font-size:9px;min-height:58px}.hero-baseline>span:last-child{display:none}.sculpture-static{width:72%;right:14%;top:390px}.chapter{min-height:91svh;padding-top:64px;padding-bottom:340px;align-items:flex-start;display:block}.scene-copy,.chapter--reverse .scene-copy{max-width:100%;width:100%;transform:none!important}.chapter .eyebrow{font-size:9px;margin-bottom:24px}.chapter h2{font-size:clamp(54px,15vw,76px);max-width:100%}.chapter-description{font-size:12px;margin:24px 0;line-height:1.7}.chapter-foot{font-size:8px}.chapter-caption{bottom:36px;font-size:8px}.section{padding-block:64px}.section-heading{margin-bottom:40px}.section-heading .eyebrow{font-size:9px;margin-bottom:24px}.section-heading h2{font-size:42px}.project{grid-template-columns:1fr;gap:28px;margin-bottom:64px;min-height:0}.project-identity{min-height:360px;padding:28px;border-radius:12px}.visual-index{font-size:9px;margin-bottom:26px}.outsendr-logo{width:200px}.identity-message{font-size:54px;margin-top:32px}.visual-caption{bottom:26px;left:28px;font-size:9px}.apte-brand{font-size:27px}.apte-brand img{width:46px;height:46px}.product-wordmark{font-size:29px}.project-copy{padding:0}.project-copy .eyebrow{font-size:9px;margin-bottom:18px}.project-copy h3{font-size:29px}.project-copy>p:not(.eyebrow){font-size:13px;max-width:100%;margin-top:18px}.text-link{margin-top:20px}.client{grid-template-columns:1fr 30px;gap:12px;padding:24px 0}.client-logo{grid-column:1;grid-row:1;height:55px}.client-name{grid-column:1;grid-row:2;font-size:20px}.client-work{grid-column:1;grid-row:3;font-size:11px}.client-arrow{grid-column:2;grid-row:1/4}.client-logo img{max-height:48px;max-width:130px}.closing{min-height:75svh;padding-top:64px;padding-bottom:270px}.closing h2{font-size:clamp(40px,11.5vw,70px);max-width:100%;line-height:1.1;overflow-wrap:normal}.closing .eyebrow{font-size:9px;margin-bottom:24px}.closing .button{margin-top:28px}.site-footer{flex-wrap:wrap;gap:15px;padding-block:24px}.site-footer>span{font-size:9px}.site-footer>div{width:100%;justify-content:space-between;gap:14px;font-size:9px}.page-main{padding-top:45px;padding-bottom:60px}.page-heading h1{font-size:56px}.page-heading{margin-bottom:40px}.page-heading .eyebrow{font-size:9px}.page-heading p:last-child{font-size:12px}.contact-layout{grid-template-columns:1fr;gap:45px}.contact-details>a{font-size:20px}.contact-form{grid-template-columns:1fr;gap:22px}.field--wide,.form-help,.form-actions,.draft-result{grid-column:1}.legal-content dl{grid-template-columns:1fr;gap:6px}.legal-content dd{margin-bottom:14px}.legal-content h2{font-size:25px}.legal-content p{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.scene-copy{transform:none!important;will-change:auto}.world{display:none}.has-world .sculpture-static{visibility:visible}}
.applications,.clients{background:transparent;z-index:auto}.applications:before,.clients:before{content:'';position:absolute;inset:0;background:#e0e4da;z-index:0;pointer-events:none}.clients:before{background:var(--paper)}.project-identity,.client-list{position:relative;z-index:2}
.project-identity{--project-y:0px;--project-scale:1;transform:translateY(var(--project-y)) scale(var(--project-scale));will-change:transform}.project-identity:hover{transform:translateY(calc(var(--project-y) - 6px)) scale(var(--project-scale))}
@media(max-width:700px),(prefers-reduced-motion:reduce){.project-identity{transform:none!important;will-change:auto}}
/* Storyboard composition: a quiet header, strong type, four held tableaus. */
:root{--paper:#f3f2ee;--ink:#111214;--muted:#585a59;--line:#d1d0cb;--accent:#0730be;--gutter:clamp(24px,4.2vw,72px)}
.home .site-header{position:fixed;inset:0 0 auto;height:100px;background:linear-gradient(var(--paper),#f3f2ee00)}
.site-header .brand img{width:68px}
.site-header nav a,.header-contact{font-size:14px}
.header-contact{border:0;gap:8px}
.site-header nav{gap:38px}
.home .hero{min-height:100svh;padding:0 var(--gutter);display:block}
.hero-copy{width:51%;max-width:51%;padding:25svh 0 0;transform:none!important}
.hero h1{font-size:clamp(90px,9.7vw,156px);font-weight:720;line-height:.94;letter-spacing:-.076em}
.hero h1 em{font-size:1.06em;letter-spacing:-.075em}
.hero-description{font-size:19px;color:var(--ink);margin:34px 0 38px;line-height:1.45}
.hero .button{min-height:66px;padding:20px 32px;gap:20px;border-radius:0;font-size:17px}
.hero .button span{font-size:22px}
.hero-baseline{border:0;bottom:22px;min-height:54px;font-size:13px}
.hero-baseline>span:last-child{display:none}
.hero-baseline a{gap:12px}
.chapter{min-height:115svh;padding:0 var(--gutter);align-items:center}
.chapter:before{display:none}
.chapter .scene-copy{max-width:48%;padding-bottom:1svh}
.chapter h2{font-size:clamp(80px,9.75vw,156px);font-weight:720;line-height:.95;letter-spacing:-.075em}
.chapter h2 em{font-size:1.08em}
.chapter .eyebrow{font-size:12px;letter-spacing:.17em;display:flex;align-items:center;gap:22px;margin-bottom:46px}
.chapter .eyebrow:after{content:'';width:76px;height:1px;background:#a2a4a4}
.chapter-description{font-size:19px;color:var(--ink);line-height:1.5;margin:32px 0 0}
.chapter-foot{display:none}
.chapter--reverse .scene-copy{width:33%;max-width:33%}
.chapter--reverse h2{font-size:clamp(72px,7.65vw,126px)}
.chapter--reverse .eyebrow{position:absolute;left:calc(-2.1 * (100% + 20px));top:-100px;white-space:nowrap}
.chapter-caption{bottom:6svh;font-size:13px;letter-spacing:0}
.chapter-caption a{min-height:44px;display:inline-flex;align-items:center;gap:12px}
.chapter-caption a span{font-size:20px}
.section-heading h2,.closing h2{font-weight:650}
.applications:before{background:#e6e8e2}
@media(max-width:1000px) and (min-width:701px){.hero h1{font-size:10.2vw}.chapter h2{font-size:10vw}.chapter--reverse h2{font-size:8vw}.hero-description,.chapter-description{font-size:16px}.site-header nav{gap:24px}.site-header nav a,.header-contact{font-size:12px}.hero .button{font-size:14px;min-height:58px;padding:18px 24px}.chapter--reverse .eyebrow{left:calc(-2.1 * (100% + 20px))}}
@media(max-width:700px){.home .site-header{height:76px;background:linear-gradient(var(--paper) 65%,#f3f2ee00)}.site-header .brand img{width:60px}.header-contact{font-size:11px;gap:6px}.home .hero{min-height:100svh;padding-top:0}.hero-copy{width:100%;max-width:100%;padding:132px 0 0}.hero h1{font-size:clamp(58px,16.4vw,104px);line-height:.96}.hero-description{font-size:13px;margin:24px 0}.hero .button{min-height:50px;padding:14px 20px;font-size:12px;gap:15px}.hero-baseline{font-size:10px;bottom:8px;min-height:44px}.sculpture-static{top:440px;width:76%;right:12%}.chapter{min-height:100svh;padding:124px var(--gutter) 330px;display:block}.chapter .scene-copy,.chapter--reverse .scene-copy{width:100%;max-width:100%;padding:0}.chapter h2,.chapter--reverse h2{font-size:clamp(58px,15.8vw,92px);line-height:.96}.chapter .eyebrow{font-size:10px;gap:16px;margin-bottom:30px}.chapter .eyebrow:after{width:40px}.chapter--reverse .eyebrow{position:static}.chapter-description{font-size:13px;line-height:1.5;margin:24px 0 0}.chapter-caption{bottom:24px;font-size:10px}.chapter-caption a{gap:8px}.chapter-caption a span{font-size:16px}}

.hero-line{white-space:nowrap}
.chapter--reverse .chapter-step{position:absolute;left:var(--gutter);top:calc(50% - 260px);z-index:2;white-space:nowrap}
@media(max-width:700px){.chapter--reverse .chapter-step{position:static}}

/* A single editorial selection, followed by the client list. */
.applications{padding-block:72px 64px;background:var(--paper);z-index:3}
.applications:before{display:none}
.applications .section-heading{margin-bottom:32px}
.applications .section-heading h2{font-size:clamp(42px,5vw,72px)}
.application-list{border-top:1px solid var(--line);position:relative;z-index:2}
.application-row{display:grid;grid-template-columns:1.15fr 1fr 48px;align-items:center;gap:32px;min-height:132px;border-bottom:1px solid var(--line);transition:color .25s,background .25s,padding .25s}
.application-brand{font-size:clamp(32px,3.2vw,48px);letter-spacing:-.065em;display:flex;align-items:center;gap:14px;white-space:nowrap;font-weight:600}
.application-brand>img{width:clamp(180px,24vw,320px);height:auto}
.application-brand--apte>img{width:48px;height:48px;object-fit:contain}
.application-brand--aqua{gap:0;font-weight:500}
.application-brand--aqua>span{color:var(--accent)}
.application-description{font-size:15px;color:var(--muted);line-height:1.5}
.application-arrow{font-size:36px;justify-self:end;transition:transform .25s}
.application-row:hover,.application-row:focus-visible{color:var(--accent);background:#0730be05;padding-inline:12px}
.application-row:hover .application-arrow{transform:translate(4px,-4px)}
.has-rail .approach-rail{height:100svh;overflow:clip;position:relative}
.has-rail .approach-track{display:flex;width:200%;height:100%}
.has-rail .approach-track .chapter{width:50%;flex-shrink:0;min-height:100svh;height:100svh;padding-inline:var(--gutter)}
.has-rail .chapter-caption{bottom:6svh}
.has-rail .chapter--reverse .chapter-step{top:calc(50% - 240px)}
@media(max-width:700px){
 .applications{padding-block:48px 40px}.applications .section-heading{margin-bottom:24px}.applications .section-heading .eyebrow{margin-bottom:18px}.applications .section-heading h2{font-size:39px}
 .application-row{grid-template-columns:1fr 28px;gap:10px 8px;min-height:136px;padding:24px 0}.application-brand{font-size:34px;grid-column:1;gap:10px}.application-brand>img{width:215px}.application-brand--apte>img{width:35px;height:35px}.application-brand--aqua{font-size:34px;gap:0}.application-description{font-size:12px;grid-column:1;grid-row:2;max-width:290px}.application-arrow{grid-column:2;grid-row:1/3;font-size:29px}
 .home .hero{min-height:max(100svh,760px)}.hero-copy{padding-top:114px}.chapter{min-height:max(100svh,780px);padding-top:108px;padding-bottom:330px}.closing{min-height:max(90svh,660px);padding-top:68px;padding-bottom:320px;justify-content:flex-start}.closing h2{font-size:clamp(40px,11.5vw,70px)}
}
@media(max-width:700px) and (max-height:600px){.home .hero{min-height:740px}.chapter{min-height:760px}.hero-copy{padding-top:100px}}

.button,.hero .button{border-radius:100px;position:relative;overflow:hidden;transform:translate(var(--magnet-x,0px),var(--magnet-y,0px));transition:background .3s,color .3s,transform .2s}
.button>span:not(.sr-only),.hero .button>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#ffffff18;font-size:19px;transition:transform .3s,background .3s}
.button:hover>span:not(.sr-only){transform:rotate(45deg);background:#ffffff30}
.clients{padding-block:64px 48px;overflow:hidden;background:var(--paper);z-index:3}.clients:before{display:none}.clients .section-heading{margin-bottom:36px;max-width:none}.clients .section-heading h2{font-size:clamp(34px,4.5vw,65px)}
.client-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.client-track{display:flex;width:max-content}
.client-marquee.is-mouse-hover .client-track,.client-marquee.is-keyboard-focus .client-track,.client-marquee.is-paused .client-track{animation-play-state:paused}
.client-list{display:flex;border:0;flex-shrink:0;padding-right:48px;gap:48px}.client{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;border:0;width:300px;padding:20px 8px;gap:12px}.client:hover{padding:20px 8px;background:transparent}.client-logo{height:62px}.client-logo img{max-width:190px;max-height:58px}.client-name{font-size:19px}.client-work{font-size:12px}.client-arrow{display:none}
.marquee-pause{border:0;background:transparent;color:var(--muted);font-size:11px;min-height:44px;padding:8px 0;cursor:pointer;text-decoration:underline;text-underline-offset:4px;margin-top:16px}
@keyframes clients-drift{to{transform:translateX(-50%)}}
@media(max-width:700px){.clients{padding-block:40px 32px}.clients .section-heading h2{font-size:34px}.clients .section-heading{margin-bottom:24px}.client{width:225px}.client-list{gap:24px;padding-right:24px}.client-logo img{max-width:170px}.button>span:not(.sr-only),.hero .button>span{width:27px;height:27px}}
@media(prefers-reduced-motion:reduce){.client-track{animation:none;width:100%}.client-list{flex-wrap:wrap;width:100%;gap:20px;padding-right:0}.client-list[aria-hidden],.client-list>[aria-hidden]{display:none}.client{width:auto;flex:1 1 210px}.client-marquee{mask-image:none}.marquee-pause{display:none}.button{transform:none}}

.button>span:not(.sr-only),.hero .button>span{background:var(--paper);color:var(--ink)}
.button:hover>span:not(.sr-only){background:var(--paper);color:var(--accent);transform:translate(2px,-2px)}
.button:focus-visible{outline:1px solid var(--ink);outline-offset:4px}
.client-logo img{filter:grayscale(1)}.client-logo .inaes-logo{filter:brightness(0)}

@media(max-width:700px) and (max-height:680px){
 .home .hero{min-height:100svh}.hero-copy{padding-top:96px}.hero h1{font-size:52px;line-height:.96}.hero-description{margin:16px 0;font-size:12px}.hero .button{padding:10px 16px;min-height:48px}.hero-baseline{bottom:6px;font-size:9px}
}

@media(prefers-reduced-motion:no-preference){.client-marquee.is-ready .client-track{animation-name:clients-drift;animation-duration:32s;animation-timing-function:linear;animation-iteration-count:infinite}}
.client-marquee:not(.is-ready){mask-image:none}.client-marquee:not(.is-ready) .client-track{width:100%}.client-marquee:not(.is-ready) .client-list{width:100%;flex-wrap:wrap;padding-right:0;gap:24px}

@media(max-width:700px) and (max-height:680px){
 .chapter{padding-top:96px}.chapter h2,.chapter--reverse h2{font-size:52px}.chapter .eyebrow{margin-bottom:20px}.chapter-description{margin-top:16px;font-size:12px}
 .sculpture-static{top:64svh;width:36%;right:32%}
}
@media(max-width:700px) and (max-height:480px){
 .hero-copy{padding-top:82px}.hero h1{font-size:40px}.hero-description{margin:12px 0}.sculpture-static{top:65svh;width:24%;right:38%}
}

@media(max-width:700px){html{scroll-padding-top:76px}.chapter{min-height:100svh;padding-bottom:0}}
@media(max-width:700px) and (max-height:680px){.chapter{padding-top:88px}.chapter h2,.chapter--reverse h2{font-size:44px}.chapter .eyebrow{margin-bottom:18px}.chapter-description{margin-top:18px;font-size:12px}}

/* One mobile narrative viewport keeps the copy above the same eight shells. */
.story-screen{display:contents}.story-sculpture-space{display:none}
/* Translated/sticky chapters create stacking contexts. Keep the entire copy
   layer above the transparent world, including mid-scroll and rail travel. */
.has-world .story{position:relative;z-index:2}
.sculpture-slot:not(.sculpture-static){display:none}
@media(max-width:700px){
 .sculpture-slot,.sculpture-slot:not(.sculpture-static){display:flex;position:relative;inset:auto;width:100%;height:clamp(160px,34svh,300px);margin:24px 0;align-items:center;justify-content:center;pointer-events:none}
 .sculpture-slot img{width:auto;height:90%;max-width:90%;object-fit:contain}
 .home .hero,.chapter,.closing{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:100svh;padding-bottom:24px}
 .hero-baseline,.chapter-caption{position:relative;inset:auto;min-height:44px;margin-top:auto;align-items:center;width:100%}
 .has-world .sculpture-slot img{visibility:hidden}
 .has-world .story-screen{display:contents}
 .has-world .story .scene-section{position:relative;min-height:100svh;height:100svh;padding:108px var(--gutter) 24px;display:flex;flex-direction:column;opacity:1}
 .has-world .story .scene-copy{width:100%;max-width:100%;padding:0;transform:none!important;will-change:auto}
 .has-world .story .chapter-step{position:static;margin-bottom:30px}
 .has-world .story .chapter-caption,.has-world .story .hero-baseline{position:relative;inset:auto;width:100%;margin-top:auto;min-height:44px}
 .has-world .story .sculpture-static{display:none}
 .has-world .world{height:100svh}
 .has-world .story-sculpture-space{display:block;position:fixed;left:var(--gutter);right:var(--gutter);top:max(390px,48svh);bottom:calc(100% - 100svh + 76px);pointer-events:none}
 .has-rail .approach-track .chapter{padding-top:108px}
 .has-world .closing .sculpture-slot{display:flex}
 .closing{padding-top:104px}
}
@media(max-width:700px) and (max-height:680px){
 .has-world .story .scene-section{padding-top:88px}
 .has-world .story h1,.has-world .story h2{font-size:44px;line-height:.96}
 .has-world .story .eyebrow,.has-world .story .chapter-step{margin-bottom:18px}
 .has-world .story .hero-description,.has-world .story .chapter-description{font-size:12px;margin-top:16px}
 .has-world .story .hero-description{margin-bottom:16px}
 .has-world .story-sculpture-space{top:325px;bottom:calc(100% - 100svh + 64px)}
 .has-rail .approach-track .chapter{padding-top:88px}
 .closing .sculpture-slot{height:clamp(100px,20svh,140px);margin-block:16px}
}
@media(prefers-reduced-motion:reduce){.has-world .sculpture-slot img{visibility:visible}}

.entry-status{position:fixed;z-index:80;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;pointer-events:none;background:var(--paper);transition:opacity .4s}
.entry-status:before{content:'LDI';font-weight:750;letter-spacing:-.075em;font-size:32px;position:absolute;left:50%;top:calc(50% - 74px);transform:translateX(-50%)}
.is-entry-loading .entry-status{display:flex!important}
.entry-status span{display:block;width:18px;height:42px;border:1px solid var(--accent);border-radius:70% 15%;background:var(--accent);animation:entry-breathe 1s ease-in-out infinite alternate}
.entry-status span:nth-child(2){animation-delay:.15s;background:var(--paper)}.entry-status span:nth-child(3){animation-delay:.3s}
.entry-status.is-complete{opacity:0}.is-preparing .world{opacity:0!important}
@keyframes entry-breathe{to{transform:translateY(-6px) rotate(12deg);opacity:.45}}
.growth-keywords{font-size:10px;line-height:1.8;letter-spacing:.015em;color:var(--muted);max-width:490px;margin-top:24px}
@media(max-width:700px){.growth-keywords{font-size:9px;max-width:300px;margin-top:16px}.has-world .story .chapter-foot{display:block;margin-top:14px}.has-world .story .chapter-description{line-height:1.55}}
@media(max-width:700px) and (max-height:680px){.has-world .story .chapter-foot{margin-top:10px;font-size:8px}.growth-keywords{font-size:8px;margin-top:10px;line-height:1.5}.has-world .story .hero-description{max-width:310px}.has-world .story .chapter-description{margin-top:14px}}
@media(max-width:700px) and (max-height:480px){.has-world .story .scene-section{padding-top:80px}.has-world .story h1,.has-world .story h2{font-size:35px}.has-world .story .chapter-step,.has-world .story .eyebrow{margin-bottom:10px}.has-world .story .chapter-description{font-size:10px;line-height:1.4;margin-top:10px}.has-world .story .chapter-foot,.growth-keywords{display:none}.has-world .story-sculpture-space{top:265px;bottom:calc(100% - 100svh + 52px)}.has-world .story .hero-description{margin:10px 0;font-size:10px}.has-world .story .button{min-height:44px;padding:8px 16px}}

@media(min-width:701px){.chapter{min-height:100svh;height:100svh}}

@media(min-width:701px){#developper .chapter-foot{display:block;margin-top:18px}}
.client-logo img[src$="marbec.png"]{background:var(--ink);padding:6px;border-radius:4px}

.client-logo--joint{gap:10px}.client-logo--joint img{max-width:100px;max-height:58px}

.client-logo img[src$="hydeol.svg"],.client-logo img[src$="sub-c-marine.svg"]{filter:brightness(0)}
.client-logo--text{font-size:19px;letter-spacing:0;font-weight:500}.client:has(.client-logo--text) .client-name{display:none}

.client-logo{width:190px;flex-shrink:0}.client-logo img{width:190px;height:58px;max-width:100%;object-fit:contain;flex:none}
.client-logo--joint{width:210px}.client-logo--joint img{width:100px;height:58px;max-width:100px}

/* Project identities share the compact editorial list. */
.application-brand--hydeol>img{width:64px;height:64px;object-fit:contain;filter:brightness(0)}
.application-brand--inaes>img{width:160px;height:70px;object-fit:contain}
@media(max-width:700px){.application-brand--hydeol>img{width:46px;height:46px}.application-brand--hydeol{font-size:28px}.application-brand--inaes>img{width:140px;height:60px}.hero-copy .eyebrow{margin-bottom:20px}}

.cookie-banner{position:fixed;z-index:90;right:24px;bottom:24px;max-width:480px;padding:20px 24px;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 32px #0002}
.cookie-banner h2{font-size:20px;letter-spacing:-.03em;margin-bottom:8px}.cookie-banner p{font-size:13px;line-height:1.5;max-width:400px}.cookie-banner p a{text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:flex;gap:12px;margin-top:16px}.cookie-actions button{min-height:44px;min-width:100px;padding:8px 16px;background:transparent;color:var(--ink);border:1px solid var(--ink);border-radius:8px;cursor:pointer}.cookie-actions button:hover{color:var(--accent);border-color:var(--accent)}.cookie-settings{border:0;background:none;color:inherit;font-size:inherit;min-height:44px;padding:0;cursor:pointer}.cookie-settings:hover{color:var(--accent)}
@media(max-width:700px){.cookie-banner{left:16px;right:16px;bottom:16px;padding:16px;max-width:none}.cookie-banner p{font-size:12px}.site-footer>div{flex-wrap:wrap}}

/* A native language control keeps the header quiet and keyboard accessible. */
.home .site-header{background:var(--paper)}
.brand img{filter:none}
.site-header .brand img{width:88px}
.section-heading h2 em,.page-heading h1 em{color:var(--accent)}
.header-actions{display:flex;align-items:center;gap:16px;flex-shrink:0}
.language-switch{direction:ltr;min-height:44px;width:76px;padding:8px 4px;background:transparent;color:var(--muted);border:0;border-bottom:1px solid var(--line);border-radius:0;font-size:11px;cursor:pointer}
.language-switch:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.application-row--private{grid-template-columns:1.15fr 1fr auto}
.application-private{font-size:10px;color:var(--muted);white-space:nowrap;padding:6px 8px;border:1px solid var(--line);border-radius:4px;justify-self:end}
.application-row--private:hover{color:inherit;background:transparent;padding-inline:0}
.brand,.application-brand,.client-logo,.client-name{direction:ltr}
/* Physical scroll geometry remains LTR, while Arabic copy reads RTL. */
.hero,.chapter,.closing,.approach-rail,.approach-track,.client-marquee,.client-track{direction:ltr}
/* Mirror only the Arabic scene composition; scroll coordinates stay unchanged. */
html[dir="rtl"] .hero,html[dir="rtl"] .chapter,html[dir="rtl"] .closing{direction:rtl}
html[dir="rtl"] .scene-copy,html[dir="rtl"] .chapter-caption,html[dir="rtl"] .hero-baseline,html[dir="rtl"] .chapter-step,html[dir="rtl"] .closing>h2,html[dir="rtl"] .closing>.eyebrow,html[dir="rtl"] .closing>.button,html[dir="rtl"] .client-work{direction:rtl}
html[dir="rtl"] h1,html[dir="rtl"] h2,html[dir="rtl"] h3,html[dir="rtl"] em{letter-spacing:0;font-family:Arial,sans-serif}
html[dir="rtl"] .scene-copy,html[dir="rtl"] .page-heading,html[dir="rtl"] .application-description,html[dir="rtl"] .legal-content,html[dir="rtl"] .contact-details,html[dir="rtl"] .field,html[dir="rtl"] .cookie-banner{text-align:right}
html[dir="rtl"] .eyebrow{letter-spacing:0}
html[dir="rtl"] .hero-line{white-space:normal}
html[dir="rtl"] .hero-copy{margin-left:auto;margin-right:0}
html[dir="rtl"] .chapter--reverse .chapter-step{left:auto;right:var(--gutter)}
html[dir="rtl"] .contact-details a,html[dir="rtl"] #contact-email{text-align:left}
@media(min-width:701px){html[dir="rtl"] .hero-copy{width:48%;max-width:48%}html[dir="rtl"] .hero h1{font-size:clamp(78px,8.2vw,118px)}html[dir="rtl"] .sculpture-static{right:auto;left:1%}}
@media(max-width:1000px) and (min-width:701px){.site-header nav{gap:16px}.header-actions{gap:10px}.site-header{gap:16px}.header-contact{font-size:11px}}
@media(max-width:700px){.header-actions{gap:8px;min-width:0}.language-switch{width:66px;font-size:10px}.site-header{gap:8px}.header-contact{font-size:10px;gap:4px}.application-row--private{grid-template-columns:1fr auto}.application-private{grid-column:2;grid-row:1/3;font-size:9px;padding:6px}.application-row--private .application-description{max-width:250px}html[dir="rtl"] .chapter--reverse .chapter-step{right:auto}html[dir="rtl"] .hero h1,html[dir="rtl"] .chapter h2{font-size:clamp(48px,14.5vw,80px)}html[lang="en"] .closing h2{font-size:clamp(36px,10.5vw,65px)}}
/* Native sticky owns vertical pinning; only horizontal travel uses a transform.
   The two chapters retain their original total document height and fallback. */
.has-world .approach-rail{height:200svh;overflow-x:clip;overflow-y:visible;position:relative}
.has-world .approach-track{position:sticky;top:var(--rail-top,0px);height:100svh;display:grid;grid-template-columns:minmax(0,1fr)}
.has-world .approach-track>.chapter{grid-area:1/1;min-width:0}

/* Closing: a perspective field beside the CTA, below it on small screens. */
.closing{position:relative;overflow:hidden}
.closing .closing-field-slot{display:block;position:absolute;left:42%;right:0;top:0;width:58%;height:100%;margin:0;overflow:hidden;pointer-events:none}
html[dir="rtl"] .closing .closing-field-slot{left:0;right:42%}
.closing-field-fallback{position:absolute;inset:-20%;background:url('assets/visuals/sculpture.svg') repeat;background-size:110px 110px;transform:perspective(600px) rotateX(48deg) rotateZ(-14deg);mask-image:linear-gradient(transparent,#000 25%,#000 85%,transparent)}
.has-world .closing-field-fallback{display:none}
@media(max-width:700px){
 .closing .closing-field-slot,html[dir="rtl"] .closing .closing-field-slot{position:relative;inset:auto;width:calc(100% + 48px);margin:24px -24px 0;height:clamp(280px,42svh,420px);flex-shrink:0}
}

/* Keep the hero action and baseline in separate flow rows, including short
   viewports. Height-aware type retains room for the fixed header and action. */
@media(min-width:701px){
 .home .hero{display:flex;flex-direction:column;align-items:stretch;padding-top:clamp(132px,20svh,300px);padding-bottom:22px;gap:32px}
 .hero-copy{flex-shrink:0;padding:0}
 .hero h1{font-size:min(8.2vw,156px,16svh)}
 .hero-description{margin:24px 0 28px}
 .hero-baseline{position:relative;inset:auto;width:100%;flex-shrink:0;margin-top:auto;gap:24px}
 html[dir="rtl"] .hero h1{font-size:min(clamp(78px,8.2vw,118px),16svh)}
}
@media(min-width:701px) and (max-height:680px){
 .home .hero{padding-top:112px;gap:24px;padding-bottom:16px}
 .hero-description{font-size:16px;margin:20px 0 24px}
 .hero .button{min-height:58px;padding:16px 24px;font-size:14px}
}
@media(max-width:700px){
 .site-header .brand img{width:76px}
 .hero-copy,.hero-baseline{flex-shrink:0}
 .has-world .story .hero{height:auto;min-height:100svh}
 .hero-baseline{gap:16px}
}
