/* EXINCOR v0.4
   CSS = Cascading Style Sheets: presentation, layout and movement.
   Brand green unchanged. Project colours are deliberately not Exincor products.
   Typography uses system fonts; no font files or remote font requests. */
:root{--green:#064a45;--grey:#a6a8ab;--paper:#f1f0e9;--cream:#f6f3eb;--plum:#452734;--coral:#d7826b;--lilac:#d9d0e3;--ink:var(--green);--pad:clamp(22px,3.4vw,68px);--head:88px;--line:#064a4535;--sans:"Inter Display","Helvetica Neue",Arial,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:var(--head)}body{margin:0;padding-top:var(--head);background:var(--green);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;background:none;border:0;color:inherit}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-decoration:none}img,svg{max-width:100%;vertical-align:middle}img{height:auto}button,a,input,textarea,summary{outline-offset:6px}*:focus-visible{outline:2px solid currentColor}::selection{background:var(--coral);color:var(--plum)}[hidden]{display:none!important}.sr-only{position:absolute;overflow:hidden;clip:rect(0,0,0,0);width:1px;height:1px;white-space:nowrap}.skip-link{position:fixed;top:-70px;left:20px;background:white;color:var(--green);padding:16px;z-index:500}.skip-link:focus{top:15px}.section-padding{padding-left:var(--pad);padding-right:var(--pad)}.eyebrow{font-size:11px;line-height:1.4;font-weight:500;letter-spacing:.075em}.section-kicker{display:flex;justify-content:space-between;align-items:center;gap:20px}.small-back{font-size:12px;white-space:nowrap}.page-view{background:var(--cream)}main:focus{outline:none}.site-header{height:var(--head);display:flex;align-items:center;gap:35px;padding:0 var(--pad);background:var(--green);color:#fff;position:fixed;top:0;left:0;right:0;z-index:50;border-bottom:1px solid #ffffff12}.brand{display:flex;align-items:center;gap:16px;flex-shrink:0}.brand img{display:block;width:127px;height:auto}.brand span{font-size:9px;letter-spacing:.12em;border-left:1px solid #ffffff5e;padding-left:14px;margin-top:4px}.header-descriptor{font-size:12px;line-height:1.4;margin:0 auto 0 14px}.desktop-nav{display:flex;gap:28px;align-items:center;font-size:13px}.desktop-nav a{position:relative;padding:7px 0}.desktop-nav a:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:white;transform:scaleX(0);transform-origin:left;transition:transform .3s}.desktop-nav a:hover:after,.desktop-nav a[aria-current="page"]:after{transform:scaleX(1)}.round-link{border:1px solid #ffffff65;border-radius:100px;padding:14px 19px;display:flex;align-items:center;gap:22px;font-size:13px;transition:background .25s,color .25s;white-space:nowrap}.round-link:hover{background:white;color:var(--green)}.round-link span{font-size:21px;line-height:1}.menu-button{display:none;width:40px;height:40px;padding:8px}.menu-button span{height:1px;background:currentColor;display:block;margin:6px 0}.hero-wrap{background:var(--green);position:relative;z-index:0}.hero{background:var(--green);color:#fff;min-height:clamp(500px,63svh,840px);padding:45px var(--pad) 23px;display:flex;flex-direction:column;justify-content:space-between;will-change:transform}.hero-top{display:flex;justify-content:space-between;align-items:center}.hero-top>.eyebrow:first-child{font-size:21px;letter-spacing:-.025em}.hero-body{display:grid;grid-template-columns:1fr 270px;gap:5vw;align-items:end;padding:74px 0 43px}.hero-wordmark img{display:block;width:100%;height:auto}.wordmark-caption{font-size:12px;display:block;margin-top:25px;letter-spacing:.02em}.hero-copy{position:relative;padding-bottom:32px}.hero-copy h1{font-size:clamp(28px,2.9vw,47px);line-height:1.04;letter-spacing:-.045em;font-weight:400;margin:0 0 18px}.hero-copy p{font-size:14px;line-height:1.5;margin:0}.circle-arrow{width:46px;height:46px;border:1px solid #ffffff70;border-radius:50%;font-size:28px;position:absolute;right:0;bottom:-16px;display:grid;place-items:center;transition:transform .3s,background .3s,color .3s}.circle-arrow:hover{transform:rotate(45deg);background:white;color:var(--green)}.hero-bottom{border-top:1px solid #ffffff33;padding-top:17px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.06em}.hero-bottom button{font-size:12px;letter-spacing:0;display:flex;gap:45px;padding:3px 0;align-items:center}.hero-bottom button span{font-size:19px}
/* A native-scroll narrative: the page is not locked and wheel events are not hijacked. */
.sequence{position:relative;height:490svh;background:var(--paper);z-index:2;--p:0}.sequence-stage{height:calc(100svh - var(--head));min-height:570px;position:sticky;top:var(--head);isolation:isolate;overflow:hidden;background:var(--paper);transition:color .5s}.stage-color{position:absolute;inset:0;transform:translateY(101%);transition:transform .8s var(--ease);pointer-events:none;z-index:-2}.stage-color-lilac{background:#dcd5e6}.stage-color-coral{background:#e9b9a7;z-index:-1}.sequence-stage[data-phase="1"] .stage-color-lilac,.sequence-stage[data-phase="2"] .stage-color-lilac,.sequence-stage[data-phase="3"] .stage-color-lilac,.sequence-stage[data-phase="2"] .stage-color-coral,.sequence-stage[data-phase="3"] .stage-color-coral{transform:translateY(0)}.sequence-stage[data-phase="1"],.sequence-stage[data-phase="2"]{color:var(--plum)}.stage-top{position:absolute;top:27px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;align-items:center;gap:20px;z-index:6}.concept-tag{font-size:10px;letter-spacing:.065em;border:1px solid currentColor;padding:9px 14px;border-radius:99px}.stage-copy{position:absolute;left:var(--pad);top:14%;z-index:4;max-width:43%;pointer-events:none}.chapter-index{font-size:35px;font-weight:400;letter-spacing:-.05em;line-height:1;display:inline-block;padding-bottom:10px;border-bottom:1px solid currentColor;width:55px}.stage-kicker{font-size:10px;letter-spacing:.08em;margin:22px 0 21px;line-height:1.4}.stage-copy h2{font-size:clamp(58px,6.5vw,112px);font-weight:400;line-height:.96;letter-spacing:-.06em;margin:0 0 27px}.stage-copy>p:last-child{font-size:16px;line-height:1.5;letter-spacing:-.015em;max-width:345px;margin-bottom:0}.stage-copy.switching{animation:chapterEnter .67s var(--ease) both}@keyframes chapterEnter{from{opacity:0;transform:translateY(42px)}to{opacity:1;transform:translateY(0)}}.scene-frame{position:absolute;width:73%;height:100%;right:-5%;top:0;display:flex;align-items:center;justify-content:center;transition:opacity .55s,transform .9s var(--ease);pointer-events:none;z-index:2}.scene-frame>svg{height:103%;width:100%;max-width:none;overflow:visible}.sequence-stage[data-phase="3"] .scene-frame{opacity:0;transform:translateY(-35px)}.stage-photo{position:absolute;inset:0;transform:translateY(101%);transition:transform .95s var(--ease);z-index:3;overflow:hidden}.stage-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.03)}.photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(29,17,22,.8) 0%,rgba(29,17,22,.42) 36%,transparent 70%),linear-gradient(0deg,rgba(29,17,22,.68),transparent 24%)}.sequence-stage[data-phase="3"]{color:#fff4e8}.sequence-stage[data-phase="3"] .stage-photo{transform:translateY(0)}.stage-bottom{position:absolute;bottom:28px;left:var(--pad);right:var(--pad);display:flex;align-items:flex-end;justify-content:space-between;gap:30px;z-index:6}.phase-buttons{display:flex;gap:18px}.phase-buttons button{position:relative;display:flex;align-items:baseline;gap:14px;min-width:125px;text-align:left;font-size:12px;border-top:1px solid currentColor;padding:12px 0 0;opacity:.6;transition:opacity .3s,transform .3s}.phase-buttons button b{font-size:18px;font-weight:400;letter-spacing:-.03em}.phase-buttons button.active{opacity:1;border-top-width:3px;padding-top:10px}.phase-buttons button:hover{opacity:1;transform:translateY(-3px)}.scene-disclaimer{font-size:9px;letter-spacing:.05em;line-height:1.6;text-align:right}.stage-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#064a4514;z-index:7}.stage-progress span{display:block;width:calc(var(--p)*100%);height:100%;background:currentColor}
/* Open editorial space, then tactile project colours. */
.chapter-section{position:relative;z-index:3}.manifesto{background:var(--cream);padding-top:58px;padding-bottom:58px}.small-cross{font-size:40px;line-height:1}.manifesto-main{display:grid;grid-template-columns:1fr 300px;gap:6vw;align-items:end;margin:65px 0 76px}.display{font-size:clamp(62px,8.2vw,145px);line-height:.97;letter-spacing:-.065em;font-weight:400;margin:0}.italic-word{font-family:Georgia,"Times New Roman",serif;font-style:italic;letter-spacing:-.07em;font-weight:400}.manifesto-main .italic-word{white-space:nowrap;font-size:.82em}.manifesto-side{padding-bottom:5px}.manifesto-symbol{width:80px;height:auto;margin-bottom:25px}.manifesto-side p{font-size:17px;line-height:1.5;letter-spacing:-.025em;margin:0 0 22px}.text-link{display:inline-flex;align-items:center;gap:24px;font-size:16px;line-height:1.4;padding:7px 0;border-bottom:1px solid currentColor;text-align:left}.text-link span{font-size:26px;transition:transform .3s}.text-link:hover span{transform:translate(4px,-4px)}.principle-line{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:12px;padding-top:25px;border-top:1px solid var(--line);letter-spacing:.04em}.principle-line>span:nth-child(even){font-size:23px;font-weight:300}.workbench{background:var(--cream)}.bench-heading{display:grid;grid-template-columns:.8fr 1.35fr .75fr;gap:30px;align-items:end;padding-top:78px;padding-bottom:46px}.bench-heading>.eyebrow{align-self:start;margin-top:12px}.bench-heading h2{font-size:clamp(42px,4.8vw,82px);font-weight:400;letter-spacing:-.052em;line-height:1.02;margin:0}.bench-heading p{font-size:16px;line-height:1.5;margin:0}.bench-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px}.bench-panel{aspect-ratio:1/.98;position:relative;overflow:hidden;display:block}.photo-panel img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;transition:transform 1.3s var(--ease)}.photo-panel:hover img{transform:scale(1.045)}.image-meta{position:absolute;bottom:23px;left:25px;right:25px;font-size:9px;letter-spacing:.06em;color:white;text-shadow:0 1px 8px #0009;z-index:2}.photo-panel:after,.split-photo:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(0deg,#22171d70,transparent);pointer-events:none}.hover-round{position:absolute;width:58px;height:58px;border:1px solid #fff9;border-radius:50%;display:grid;place-items:center;right:27px;bottom:58px;font-size:27px;color:#fff;transition:background .3s,color .3s,transform .5s}.bench-panel:hover .hover-round{background:var(--cream);color:var(--plum);transform:rotate(45deg)}.concept-panel{background:var(--plum);color:#f2ddc7}.panel-label{position:absolute;left:28px;right:28px;top:25px;font-size:9px;letter-spacing:.06em;display:flex;justify-content:space-between;z-index:2}.bruma-type{position:absolute;top:20%;left:8%;right:8%;font-size:clamp(54px,8vw,150px);letter-spacing:.075em;line-height:1;font-weight:300;text-align:center}.mountain-art{position:absolute;bottom:-17%;width:113%;height:85%;max-width:none;left:-8%;transition:transform 1.5s var(--ease)}.concept-panel:hover .mountain-art{transform:translateY(-14px) rotate(-3deg)}.concept-caption{position:absolute;bottom:7%;left:7%;font-size:19px;line-height:1.3;color:var(--plum);z-index:2}.concept-panel .hover-round{border-color:var(--plum);color:var(--plum);bottom:7%}.bench-footer{padding-top:35px;padding-bottom:75px;display:flex;justify-content:space-between;align-items:center;gap:40px}.bench-footer p{font-size:18px;line-height:1.45;letter-spacing:-.02em}.bench-footer strong{font-weight:500}.outline-button{border:1px solid currentColor;border-radius:99px;padding:17px 23px;font-size:14px;display:inline-flex;align-items:center;gap:35px;transition:background .3s,color .3s;white-space:nowrap}.outline-button:hover{background:var(--green);color:white}.outline-button span{font-size:22px}.expertise{background:var(--lilac);color:var(--plum);padding-top:45px;padding-bottom:65px}.expertise-heading{display:grid;grid-template-columns:1fr 290px;gap:6vw;align-items:end;margin:70px 0 65px}.expertise-heading .display{font-size:clamp(54px,7.8vw,140px)}.outline-word{-webkit-text-stroke:1px currentColor;color:transparent;-webkit-text-stroke-color:var(--plum)}.expertise-intro p{font-size:17px;line-height:1.5;margin:0 0 25px}.service-links a{display:grid;grid-template-columns:55px 1fr 240px 32px;gap:20px;align-items:center;border-top:1px solid #45273445;padding:25px 0;transition:padding .4s,color .3s}.service-links a:last-child{border-bottom:1px solid #45273445}.service-links a>span:first-child{font-size:12px}.service-links a>span:nth-last-child(2){font-size:10px;letter-spacing:.05em}.service-links h3{font-size:clamp(29px,3.1vw,52px);letter-spacing:-.04em;font-weight:400;margin:0}.service-links b{font-weight:300;font-size:30px}.service-links a:hover{padding-left:14px;padding-right:14px;color:#805063}.contact-teaser{background:var(--coral);color:var(--plum);padding-top:40px;padding-bottom:65px}.contact-main{display:flex;justify-content:space-between;align-items:center;margin:67px 0 60px;gap:30px}.contact-main h2{font-size:clamp(108px,19vw,340px);letter-spacing:-.075em;line-height:.84;font-weight:400;margin:0}.contact-main h2 span{font-family:Georgia,serif;font-style:italic;font-size:.94em;font-weight:400}.contact-orbit{width:clamp(120px,19vw,340px);aspect-ratio:1;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:clamp(62px,12vw,190px);font-weight:200;transition:transform .7s var(--ease),background .3s,color .3s;flex-shrink:0}.contact-orbit:hover{transform:rotate(45deg);background:var(--plum);color:var(--coral)}.contact-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.contact-bottom p{font-size:18px;line-height:1.45;margin:0}.contact-bottom>div{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.copy-email{display:flex;align-items:center;gap:20px;padding:0;font-size:15px;text-align:left}.copy-label{font-size:9px;letter-spacing:.06em;opacity:.75}.copy-email:hover .copy-label{opacity:1}
/* Independent views; these links are not section anchors. */
.inner-hero{padding-top:40px;padding-bottom:85px;background:var(--cream)}.super-title{font-size:clamp(86px,11.5vw,192px);font-weight:400;letter-spacing:-.07em;line-height:.93;margin:80px 0 66px;max-width:1350px}.inner-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start;border-top:1px solid var(--line);padding-top:28px}.inner-intro p{font-size:clamp(20px,2.2vw,34px);font-weight:400;letter-spacing:-.03em;line-height:1.35;margin:0;max-width:740px}.view-split{display:grid;grid-template-columns:1fr 1fr;min-height:700px}.split-photo{position:relative;overflow:hidden}.split-photo>img{height:100%;width:100%;object-fit:cover}.split-copy{padding:70px 8% 75px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;color:var(--plum)}.lilac{background:var(--lilac)}.split-copy h2{font-size:clamp(50px,5.5vw,90px);font-weight:400;letter-spacing:-.05em;line-height:1;margin:40px 0 25px}.split-copy>p:not(.eyebrow){font-size:18px;line-height:1.5;max-width:420px}.split-copy .text-link{margin-top:30px}.principles{padding-top:80px;padding-bottom:75px}.principles>p{margin-bottom:50px}.principles article{display:grid;grid-template-columns:70px 1.1fr 1fr;gap:5vw;padding:38px 0 50px;border-top:1px solid var(--line)}.principles article>span{font-size:13px;padding-top:6px}.principles h2{font-size:clamp(36px,4.6vw,78px);letter-spacing:-.05em;font-weight:400;line-height:1.03;margin:0}.principles article p{font-size:18px;line-height:1.5;margin:5px 0;max-width:400px}.view-next{background:var(--lilac);color:var(--plum);padding-top:35px;padding-bottom:48px}.view-next>span{font-size:10px;letter-spacing:.08em;display:block;margin-bottom:22px}.view-next>a{font-size:clamp(33px,4.7vw,80px);font-weight:400;letter-spacing:-.05em;display:flex;gap:25px;align-items:center;justify-content:space-between;line-height:1.05}.view-next b{font-weight:300;font-size:1.3em;transition:transform .4s}.view-next>a:hover b{transform:rotate(45deg)}.full-editorial{margin:0;background:#e1d7cb;position:relative}.full-editorial img{width:100%;max-height:900px;object-fit:cover}.full-editorial figcaption{font-size:9px;letter-spacing:.055em;padding:14px var(--pad);background:var(--cream);color:var(--green);line-height:1.6}.studio-body{display:grid;grid-template-columns:1.3fr 1fr;gap:12vw;padding-top:95px;padding-bottom:110px}.studio-body .eyebrow{margin:0 0 40px}.studio-body .display{font-size:clamp(55px,6.9vw,122px)}.studio-text{align-self:center;font-size:20px;line-height:1.5;letter-spacing:-.02em}.studio-text p{margin:0 0 30px}.studio-text .text-link{margin-top:25px}.studio-banner{background:var(--plum);color:var(--cream);padding:60px var(--pad);display:flex;justify-content:space-between;align-items:center;font-size:clamp(36px,5.4vw,100px);letter-spacing:-.045em;gap:15px}.studio-banner .banner-symbol{color:var(--coral);font-weight:300}.capabilities-hero{background:var(--lilac);color:var(--plum)}.capability-row{display:grid;grid-template-columns:50px 1fr 1fr;gap:4vw;padding-top:75px;padding-bottom:85px;border-bottom:1px solid var(--line)}.cap-index{font-size:16px}.capability-row h2{font-size:clamp(55px,6vw,110px);font-weight:400;letter-spacing:-.06em;line-height:.97;margin:0 0 35px}.capability-row p{font-size:18px;line-height:1.5;max-width:420px;margin-bottom:32px}.capability-row ul{padding-left:17px;font-size:14px;line-height:1.8}.capability-row.alt{background:#e9e3d8}.cap-art{position:relative;min-height:430px;overflow:hidden}.cap-art img{width:100%;height:100%;object-fit:cover;position:absolute}.cap-art small{position:absolute;bottom:20px;left:25px;right:25px;z-index:2;font-size:8px;letter-spacing:.08em;color:white;text-shadow:0 1px 8px #0009}.cap-art-type{background:var(--plum);color:var(--coral);padding:12% 8%;display:flex;align-items:center}.cap-art-type>span{font-size:clamp(50px,5.6vw,98px);letter-spacing:-.04em;line-height:.98}.cap-art-type i{font-family:Georgia,serif;font-weight:400;color:var(--lilac)}.pieces{padding-top:90px;padding-bottom:80px;background:var(--green);color:var(--cream)}.pieces h2{font-size:clamp(50px,7vw,125px);font-weight:400;letter-spacing:-.04em;line-height:1;margin:50px 0 40px}.pieces>p:last-child{font-size:18px}.project-hero{background:var(--plum);color:#f1e0cc;padding-top:40px;padding-bottom:40px}.project-hero h1{font-size:clamp(95px,21vw,380px);font-weight:300;letter-spacing:.005em;margin:80px 0 45px;line-height:.9;text-align:center}.project-sub{display:flex;justify-content:space-between;gap:30px;align-items:flex-end}.project-sub>span:first-child{font-size:20px;line-height:1.3}.project-sub>span:last-child{font-size:10px;letter-spacing:.05em;line-height:1.6}.project-photo{margin:0;position:relative}.project-photo img{width:100%}.project-photo figcaption{font-size:10px;padding:15px var(--pad);background:var(--plum);color:var(--cream);letter-spacing:.045em}.project-body{display:grid;grid-template-columns:1fr 1fr;gap:12vw;padding-top:90px;padding-bottom:100px}.project-body h2{font-size:clamp(55px,7vw,120px);line-height:.96;letter-spacing:-.06em;font-weight:400;margin:0}.project-body h2 i{font-family:Georgia,serif;font-weight:400}.project-body>div{font-size:20px;line-height:1.5;letter-spacing:-.02em}.project-body p{margin:0 0 28px}.project-body .fineprint{font-size:12px}.fineprint{font-size:11px;line-height:1.6;letter-spacing:0}
/* The contact flow stays inside the website. */
.contact-page{display:grid;grid-template-columns:1fr 1fr;gap:10vw;padding-top:65px;padding-bottom:85px;min-height:calc(100svh - var(--head))}.contact-editorial h1{font-size:clamp(66px,7.8vw,133px);font-weight:400;letter-spacing:-.063em;line-height:.95;margin:58px 0 35px}.contact-editorial h1 i{font-family:Georgia,serif;font-weight:400}.contact-editorial>p{font-size:17px;line-height:1.5}.contact-address{margin-top:45px}.contact-address>.fineprint{display:block;margin-top:8px;opacity:.7}.brief-panel{padding-top:2px;max-width:650px;min-width:0}.brief-top{display:flex;justify-content:space-between;align-items:center}.brief-progress{height:2px;background:var(--line);margin-top:19px;margin-bottom:43px}.brief-progress span{width:25%;height:100%;display:block;background:var(--green);transition:width .5s var(--ease)}.brief-panel>h2{font-size:clamp(41px,4.4vw,72px);font-weight:400;letter-spacing:-.055em;line-height:1.04;margin:0 0 19px}.brief-panel>h2:focus{outline:none}.brief-panel>p{font-size:15px;line-height:1.5;margin-bottom:38px;max-width:470px}.brief-panel fieldset{border:0;padding:0;margin:0;min-width:0;animation:fieldEnter .4s var(--ease)}@keyframes fieldEnter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.brief-panel label:not(.consent-label){display:block;font-size:12px;margin:0 0 9px;line-height:1.5}.brief-panel label>span:not(.choice-grid span){font-weight:400}.brief-panel input:not([type=checkbox]):not([type=radio]),.brief-panel textarea{width:100%;border:0;border-bottom:1px solid #064a4560;border-radius:0;padding:13px 0;color:var(--green);background:transparent;font-size:17px;line-height:1.4;margin-bottom:24px;resize:vertical}.brief-panel textarea{min-height:100px}.brief-panel input::placeholder,.brief-panel textarea::placeholder{color:#708e87;opacity:1}.brief-panel .form-two{display:grid;grid-template-columns:1fr 1fr;gap:25px}.choice-grid{display:grid;gap:12px;margin:5px 0 25px}.choice-grid label{position:relative;cursor:pointer;margin:0!important}.choice-grid input{position:absolute;opacity:0;width:1px;height:1px}.choice-grid input+span{display:flex;align-items:center;justify-content:space-between;font-size:18px;line-height:1.3;padding:20px 20px;border:1px solid #064a453c;transition:background .25s,color .25s}.choice-grid input+span b{font-size:25px;font-weight:300}.choice-grid input:checked+span{background:var(--green);color:var(--cream)}.choice-grid input:focus-visible+span{outline:2px solid var(--green);outline-offset:4px}.choice-grid input:hover+span{border-color:var(--green)}.brief-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px}.solid-button{background:var(--green);color:var(--cream);border-radius:100px;font-size:14px;padding:17px 25px;min-height:52px;display:inline-flex;justify-content:center;align-items:center;gap:30px;transition:background .25s}.solid-button:hover{background:#0e625b}.solid-button span{font-size:21px}.back-button{font-size:13px;padding:12px 0}.field-error{font-size:12px;color:#a83135;line-height:1.45;min-height:0;margin:0 0 10px}.field-error:empty{display:none}.consent-label{display:flex;gap:11px;align-items:flex-start;font-size:11px;line-height:1.6;margin:7px 0 20px}.consent-label input{width:15px;height:15px;accent-color:var(--green);margin:1px 0 0;flex-shrink:0}.consent-label a{text-decoration:underline;text-underline-offset:3px}.demo-notice{font-size:11px!important;line-height:1.55;padding:13px 15px;border-left:2px solid var(--coral);background:#e4dcd150;letter-spacing:0}.brief-alternative{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;border-top:1px solid var(--line);margin-top:42px;padding-top:18px}.brief-alternative button{padding:4px 0}.honeypot{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.result-badge{font-size:10px;letter-spacing:.08em;padding:10px 14px;border:1px solid currentColor;border-radius:99px;display:inline-block;margin:0}.result-mark{font-size:95px;line-height:1;color:var(--coral);margin:35px 0}.brief-panel #brief-result h2{font-size:clamp(45px,4.7vw,79px);font-weight:400;letter-spacing:-.055em;line-height:1.04;margin:0 0 28px}.brief-panel #brief-result h2:focus{outline:none}#brief-result>p:not(.result-badge){font-size:17px;line-height:1.5}#brief-result .result-signoff{font-family:Georgia,serif;font-style:italic;font-size:25px!important}.contact-details{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding-top:45px;padding-bottom:55px;background:var(--lilac);color:var(--plum)}.contact-details>div{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.contact-details>div>button,.contact-details>div>span:not(.eyebrow){font-size:clamp(17px,1.9vw,30px);letter-spacing:-.02em;padding:0}.contact-details small{font-size:10px;margin-top:-10px;opacity:.8}.privacy-page{padding-top:60px;padding-bottom:100px;min-height:75svh}.privacy-page h1{font-size:clamp(50px,8vw,120px);letter-spacing:-.05em;font-weight:400;margin:65px 0 40px}.privacy-page>p{font-size:18px;line-height:1.6;max-width:760px}.privacy-page .text-link{margin-top:30px}
/* Footer and navigation layers. */
.site-footer{background:var(--green);color:#fff;padding-top:32px;padding-bottom:23px}.footer-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;gap:20px;padding-bottom:35px}.footer-logo{display:block;width:100%;padding:25px 0 48px}.footer-logo img{width:100%;height:auto}.footer-contact{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:25px;padding:25px 0 38px;border-top:1px solid #ffffff36;align-items:start}.footer-email{font-size:clamp(17px,2vw,32px);padding:0;text-align:left;letter-spacing:-.02em}.footer-contact small{display:block;font-size:8px;letter-spacing:.075em;margin-top:13px;opacity:.65}.footer-contact>span{font-size:17px}.footer-meta{display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:.045em;border-top:1px solid #ffffff36;padding-top:20px;gap:20px;line-height:1.5}.footer-meta button{padding:0;font-size:10px}.transition-curtain{position:fixed;inset:0;background:var(--green);color:var(--cream);z-index:140;transform:translateY(-102%);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:var(--pad);gap:32px;pointer-events:none;visibility:hidden}.transition-curtain.active{visibility:visible;pointer-events:auto}.transition-curtain>span{font-size:clamp(55px,9vw,165px);line-height:.95;letter-spacing:-.06em;font-weight:400}.transition-curtain small{font-size:10px;letter-spacing:.1em}.transition-curtain img{position:absolute;top:34px;left:var(--pad)}.page-arriving{animation:pageArrive .75s var(--ease) both}@keyframes pageArrive{from{transform:translateY(-35px);opacity:.7}to{transform:translateY(0);opacity:1}}dialog{border:0;color:var(--green);padding:0}dialog::backdrop{background:#041e1bea;backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:25px}.close-button{font-size:40px;line-height:1;width:48px;height:48px;font-weight:200;display:grid;place-items:center}.menu-dialog{width:100%;max-width:none;max-height:100svh;height:100svh;margin:0;background:var(--green);color:var(--cream);padding:25px var(--pad) 35px}.menu-dialog[open]{animation:menuEnter .6s var(--ease)}@keyframes menuEnter{from{transform:translateY(-100%)}to{transform:translateY(0)}}.menu-dialog nav{display:grid;margin:40px 0 50px}.menu-dialog nav a{font-size:clamp(37px,6vw,94px);letter-spacing:-.04em;border-bottom:1px solid #ffffff36;padding:14px 0;display:flex;align-items:center;justify-content:space-between;gap:15px}.menu-dialog nav a span{font-size:14px;letter-spacing:0}.info-dialog{background:var(--paper);width:min(640px,calc(100% - 36px));max-height:88svh;padding:25px 35px 35px}.info-dialog h2{font-size:45px;letter-spacing:-.05em;font-weight:400;line-height:1;margin:30px 0}.info-dialog p{font-size:14px;line-height:1.6}.dialog-open{overflow:hidden}.toast{position:fixed;left:50%;bottom:25px;max-width:calc(100vw - 36px);transform:translate(-50%,20px);z-index:170;pointer-events:none;opacity:0;background:var(--cream);color:var(--green);box-shadow:0 10px 60px #0003;border:1px solid var(--line);padding:15px 22px;border-radius:100px;font-size:12px;text-align:center;transition:opacity .25s,transform .3s;line-height:1.5}.toast.visible{opacity:1;transform:translate(-50%,0)}.noscript-note{position:fixed;bottom:0;left:0;right:0;padding:20px;background:var(--paper);color:var(--green);z-index:80;font-size:13px}.js-ready .reveal{opacity:0;transform:translateY(45px);transition:opacity .8s var(--ease),transform 1s var(--ease)}.js-ready .reveal.visible{opacity:1;transform:none}
@media(min-width:1800px){.scene-frame{right:0;width:70%}.stage-copy{top:16%}.hero-body{grid-template-columns:1fr 340px}.hero-copy h1{font-size:48px}}
@media(max-width:1150px){.site-header{gap:22px}.header-descriptor{display:none}.desktop-nav{margin-left:auto;gap:23px}.hero-body{grid-template-columns:1fr 230px;gap:5vw}.hero{min-height:500px}.phase-buttons button{min-width:105px}.scene-disclaimer{max-width:180px}.manifesto-main{grid-template-columns:1fr 245px;gap:45px}.manifesto-side p{font-size:15px}.expertise-heading{grid-template-columns:1fr 245px;gap:40px}.expertise-intro p{font-size:15px}.contact-page{gap:6vw}.stage-copy h2{font-size:6.5vw}.stage-copy>p:last-child{font-size:15px}.stage-kicker{font-size:9px}.bench-heading{grid-template-columns:.6fr 1.2fr .8fr;gap:20px}.footer-contact>span{font-size:15px}}
@media(max-width:850px){:root{--head:76px;--pad:25px}.desktop-nav{display:none}.header-cta{margin-left:auto}.menu-button{display:block}.hero-body{grid-template-columns:1fr 210px;gap:35px;padding:65px 0 35px}.hero{min-height:440px}.hero-copy h1{font-size:31px}.hero-index{max-width:230px;text-align:right;font-size:9px}.hero-top>.eyebrow:first-child{font-size:18px}.stage-copy{max-width:45%;top:16%}.stage-copy h2{font-size:7vw}.scene-frame{width:77%;right:-13%;top:5%}.stage-copy>p:last-child{font-size:14px}.phase-buttons{gap:12px}.phase-buttons button{min-width:92px;gap:8px;font-size:11px}.scene-disclaimer{font-size:8px;max-width:115px}.concept-tag{font-size:8px}.stage-top .eyebrow{font-size:9px}.manifesto-main{grid-template-columns:1fr 220px;gap:25px}.manifesto-main .display{font-size:8vw}.manifesto-side p{font-size:14px}.manifesto-side .text-link{font-size:13px}.principle-line{font-size:10px;gap:7px}.bench-heading{grid-template-columns:1fr 1fr;gap:30px}.bench-heading>.eyebrow{grid-column:1/-1}.bench-heading h2{font-size:48px}.bench-heading p{font-size:15px}.bench-panel{aspect-ratio:1/1.2}.bruma-type{font-size:9vw;top:24%}.concept-caption{font-size:15px}.bench-footer{gap:20px}.bench-footer p{font-size:15px}.outline-button{font-size:12px;padding:14px 18px;gap:17px}.expertise-heading{grid-template-columns:1fr;gap:35px;margin-top:60px}.expertise-heading .display{font-size:10vw}.expertise-intro{display:grid;grid-template-columns:1fr 1fr;gap:35px;max-width:680px}.service-links a{grid-template-columns:40px 1fr 160px 30px;gap:15px}.service-links a>span:nth-last-child(2){font-size:8px}.contact-main{margin-top:70px;margin-bottom:70px}.contact-main h2{font-size:21vw}.contact-orbit{width:25vw;font-size:16vw}.contact-bottom p{font-size:15px}.contact-bottom .text-link{font-size:14px}.super-title{font-size:13vw;margin:70px 0 55px}.inner-intro{gap:40px}.inner-intro p{font-size:23px}.view-split{min-height:550px}.split-copy{padding:40px 30px}.split-copy h2{font-size:44px}.split-copy>p:not(.eyebrow){font-size:15px}.split-copy .text-link{font-size:14px;gap:10px}.principles article{grid-template-columns:40px 1fr 1fr;gap:30px}.principles article p{font-size:15px}.studio-body{gap:45px}.studio-text{font-size:17px}.capability-row{grid-template-columns:28px 1fr 1fr;gap:25px}.capability-row h2{font-size:55px}.capability-row p{font-size:15px}.capability-row ul{font-size:12px}.cap-art{min-height:350px}.cap-art-type>span{font-size:6vw}.contact-page{gap:40px;padding-top:45px}.contact-editorial h1{font-size:9vw}.contact-editorial>p{font-size:15px}.brief-panel>h2{font-size:41px}.brief-panel>p{font-size:13px}.brief-panel .form-two{gap:16px}.choice-grid input+span{font-size:15px;padding:18px 15px}.contact-address .copy-email{font-size:14px;gap:10px}.brief-alternative{font-size:10px;gap:12px}.contact-details{gap:25px}.contact-details>div>button,.contact-details>div>span:not(.eyebrow){font-size:16px}.footer-meta>span:nth-child(2){max-width:190px}.project-body{gap:60px}.project-body>div{font-size:17px}.footer-contact{grid-template-columns:1.3fr 1fr 1fr}}
@media(max-width:600px){:root{--head:70px;--pad:21px}.site-header{gap:12px}.brand{gap:10px}.brand img{width:107px}.brand span{font-size:7px;padding-left:9px}.header-cta{font-size:11px;padding:10px 12px;gap:12px}.header-cta span{font-size:19px}.menu-button{width:32px;padding:5px}.hero{min-height:565px;padding-top:27px;padding-bottom:21px}.hero-top{gap:25px;align-items:flex-start}.hero-top>.eyebrow:first-child{font-size:17px}.hero-index{max-width:145px;font-size:8px;line-height:1.5}.hero-body{display:flex;flex-direction:column;align-items:stretch;gap:30px;padding:52px 0 35px}.hero-wordmark img{width:100%}.wordmark-caption{font-size:10px;margin-top:15px}.hero-copy{padding-bottom:0;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:end}.hero-copy h1{font-size:34px;margin:0;line-height:1}.hero-copy p{font-size:11px;line-height:1.5;margin-bottom:0;padding-bottom:43px}.circle-arrow{right:0;bottom:0;width:35px;height:35px;font-size:23px}.hero-bottom{align-items:flex-end;gap:25px}.hero-bottom>span{max-width:110px;text-align:right;font-size:7px;line-height:1.5}.hero-bottom button{font-size:10px;gap:13px;text-align:left}.sequence{height:450svh}.sequence-stage{min-height:620px}.stage-top{top:20px;align-items:center;gap:15px}.stage-top>.eyebrow{font-size:7px;max-width:90px;line-height:1.5}.concept-tag{font-size:7px;padding:8px 10px}.stage-copy{left:var(--pad);top:11%;max-width:calc(100% - 2*var(--pad));width:100%}.chapter-index{font-size:23px;position:absolute;top:0;right:0;width:34px;padding-bottom:6px}.stage-kicker{font-size:8px;margin:0 50px 13px 0}.stage-copy h2{font-size:clamp(42px,12vw,63px);line-height:.96;letter-spacing:-.055em;margin:0 0 12px;max-width:90%}.stage-copy>p:last-child{font-size:11px;line-height:1.5;max-width:215px}.scene-frame{width:112%;height:70%;right:-3%;top:30%;justify-content:center}.scene-frame>svg{width:100%;height:100%}.stage-copy.switching{animation-duration:.5s}.stage-bottom{bottom:22px;display:block}.phase-buttons{gap:13px;display:grid;grid-template-columns:repeat(4,1fr)}.phase-buttons button{min-width:0;display:flex;flex-direction:column;gap:5px;font-size:9px;padding-top:9px}.phase-buttons button.active{padding-top:7px}.phase-buttons button b{font-size:16px}.scene-disclaimer{display:block;text-align:right;font-size:6.5px;max-width:none;margin-top:14px;line-height:1.3}.scene-disclaimer br{display:none}.stage-photo img{object-position:61% center}.photo-shade{background:linear-gradient(180deg,rgba(29,17,22,.76) 0%,rgba(29,17,22,.38) 37%,transparent 65%,rgba(29,17,22,.7) 100%)}.sequence-stage[data-phase="3"] .stage-copy{top:13%}.sequence-stage[data-phase="3"] .stage-copy h2{font-size:14vw}.stage-progress{height:2px}.manifesto{padding-top:35px;padding-bottom:35px}.section-kicker .eyebrow{font-size:8px}.small-cross{font-size:30px}.manifesto-main{grid-template-columns:1fr;gap:43px;margin:42px 0 40px}.manifesto-main .display{font-size:16vw;line-height:.97}.manifesto-main .italic-word{font-size:.80em}.manifesto-side{display:grid;grid-template-columns:65px 1fr;gap:0 22px}.manifesto-symbol{width:60px;grid-row:1/4;margin:6px 0 0}.manifesto-side p{font-size:15px;margin-bottom:17px}.manifesto-side .text-link{font-size:13px;grid-column:2;justify-self:start}.principle-line{display:grid;grid-template-columns:auto 12px auto;justify-content:space-between;gap:12px;font-size:9px;line-height:1.5}.principle-line>span:nth-child(4){display:none}.principle-line>span:nth-child(5){grid-column:1}.principle-line>span:nth-child(7){font-size:8px}.bench-heading{padding-top:47px;padding-bottom:32px;gap:23px;grid-template-columns:1fr}.bench-heading>.eyebrow{margin:0}.bench-heading h2{font-size:43px;letter-spacing:-.05em}.bench-heading p{font-size:14px;max-width:250px}.bench-grid{grid-template-columns:1fr;gap:0}.bench-panel{aspect-ratio:1/1.03}.panel-label{left:22px;right:22px;top:21px;font-size:8px}.bruma-type{font-size:14vw;top:24%}.concept-caption{font-size:18px}.hover-round{width:45px;height:45px;right:22px;bottom:50px;font-size:26px}.image-meta{left:22px;right:22px;font-size:7px}.bench-footer{display:block;padding-top:26px;padding-bottom:45px}.bench-footer p{font-size:15px;margin:0 0 25px}.expertise{padding-top:30px;padding-bottom:38px}.expertise .section-kicker>.eyebrow:last-child{display:none}.expertise-heading{margin:40px 0 35px;gap:30px}.expertise-heading .display{font-size:12.2vw;line-height:1}.expertise-intro{grid-template-columns:1fr;gap:5px}.expertise-intro p{font-size:15px;max-width:290px;margin-bottom:12px}.service-links a{grid-template-columns:27px 1fr 25px;gap:10px;padding:22px 0}.service-links h3{font-size:30px}.service-links a>span:nth-last-child(2){display:none}.service-links b{font-size:27px}.contact-teaser{padding-top:25px;padding-bottom:40px}.contact-main{margin:45px 0;gap:15px;align-items:flex-end}.contact-main h2{font-size:24vw}.contact-orbit{width:24vw;font-size:15vw;margin-bottom:3px}.contact-bottom{display:block}.contact-bottom p{font-size:14px;margin-bottom:25px}.contact-bottom>div{gap:19px}.contact-bottom .text-link{font-size:15px}.copy-email{font-size:13px}.inner-hero{padding-top:28px;padding-bottom:45px}.small-back{font-size:10px}.super-title{font-size:16vw;letter-spacing:-.065em;margin:63px 0 40px}.super-title .italic-word{font-size:.95em}.inner-intro{grid-template-columns:1fr;gap:20px;padding-top:20px}.inner-intro>.eyebrow{font-size:9px;max-width:240px}.inner-intro p{font-size:20px;max-width:330px}.view-split{grid-template-columns:1fr;min-height:0}.split-photo{height:430px}.split-copy{padding:40px 25px 45px}.split-copy h2{font-size:49px;margin-top:25px}.split-copy>p:not(.eyebrow){font-size:16px}.principles{padding-top:40px;padding-bottom:40px}.principles>p{margin-bottom:28px}.principles article{grid-template-columns:22px 1fr;gap:15px;padding:27px 0 35px}.principles article h2{font-size:42px}.principles article p{grid-column:2;font-size:15px;max-width:310px}.view-next{padding-top:26px;padding-bottom:33px}.view-next>span{font-size:8px;margin-bottom:18px}.view-next>a{font-size:34px;gap:15px}.full-editorial img{height:440px;object-fit:cover;object-position:57%}.full-editorial figcaption{font-size:7px;line-height:1.8}.studio-body{grid-template-columns:1fr;padding-top:48px;padding-bottom:50px;gap:32px}.studio-body .eyebrow{font-size:9px;margin-bottom:30px}.studio-body .display{font-size:17vw}.studio-text{font-size:17px;max-width:360px}.studio-text p{margin-bottom:25px}.studio-text .text-link{font-size:15px;margin-top:10px}.studio-banner{font-size:6.7vw;padding-top:38px;padding-bottom:38px;gap:10px}.capability-row{grid-template-columns:25px 1fr;gap:18px;padding-top:40px;padding-bottom:42px}.cap-index{font-size:12px}.capability-row h2{font-size:55px;margin-bottom:25px}.capability-row p{font-size:16px}.capability-row ul{font-size:13px;padding-left:17px}.cap-art{grid-column:1/-1;min-height:330px;margin-top:15px}.cap-art-type{padding:40px 35px;min-height:365px}.cap-art-type>span{font-size:60px}.cap-art small{font-size:7px}.pieces{padding-top:45px;padding-bottom:45px}.pieces .eyebrow{font-size:9px}.pieces h2{font-size:13vw;margin:35px 0}.pieces>p:last-child{font-size:14px;line-height:1.5}.project-hero{padding-top:28px;padding-bottom:27px}.project-hero h1{font-size:20.8vw;margin:65px 0 40px}.project-sub{gap:20px;align-items:start}.project-sub>span:first-child{font-size:14px;max-width:160px}.project-sub>span:last-child{font-size:7px;max-width:130px}.project-photo img{height:400px;object-fit:cover;object-position:center}.project-photo figcaption{font-size:7px;line-height:1.5;padding-top:12px;padding-bottom:12px}.project-body{grid-template-columns:1fr;gap:35px;padding-top:48px;padding-bottom:50px}.project-body h2{font-size:17vw}.project-body>div{font-size:17px}.project-body .fineprint{font-size:11px}.project-body .text-link{font-size:15px}.contact-page{grid-template-columns:1fr;gap:50px;padding-top:34px;padding-bottom:50px}.contact-editorial h1{font-size:16vw;margin:35px 0 25px;line-height:.98}.contact-editorial h1 br:nth-of-type(1){display:none}.contact-editorial h1 br:nth-of-type(1):after{content:" "}.contact-editorial h1 i br{display:none}.contact-editorial h1 i{white-space:normal}.contact-editorial>p{font-size:15px}.contact-address{margin-top:25px}.contact-address .fineprint{font-size:10px}.brief-panel{max-width:none}.brief-top{font-size:9px}.brief-top>.eyebrow{font-size:9px}.brief-progress{margin:17px 0 30px}.brief-panel>h2{font-size:43px;margin-bottom:17px}.brief-panel>p{font-size:14px;margin-bottom:28px}.brief-panel input:not([type=checkbox]):not([type=radio]),.brief-panel textarea{font-size:16px}.brief-panel .form-two{gap:20px}.brief-panel label:not(.consent-label){font-size:11px}.choice-grid input+span{font-size:17px;padding:19px 17px}.brief-actions{margin-top:24px}.brief-alternative{margin-top:32px;font-size:11px}.brief-panel #brief-result h2{font-size:48px}.contact-details{grid-template-columns:1fr;gap:35px;padding-top:37px;padding-bottom:42px}.contact-details>div{gap:14px}.contact-details>div>button,.contact-details>div>span:not(.eyebrow){font-size:24px}.contact-details small{font-size:9px;margin-top:-5px}.contact-details .eyebrow{font-size:9px}.privacy-page{padding-top:35px;padding-bottom:55px}.privacy-page h1{font-size:52px;margin:45px 0 30px}.privacy-page>p{font-size:16px}.site-footer{padding-top:25px;padding-bottom:25px}.footer-top{font-size:10px;gap:15px;padding-bottom:20px}.footer-top>.eyebrow{font-size:8px}.footer-top>span:nth-child(2){display:none}.footer-logo{padding:22px 0 32px}.footer-contact{grid-template-columns:1fr 1fr;gap:28px 20px;padding-bottom:25px}.footer-email{grid-column:1/-1;font-size:24px;display:flex;gap:22px;align-items:center}.footer-email small{margin-top:3px}.footer-contact>span{font-size:13px}.footer-contact small{font-size:7px;line-height:1.5;margin-top:9px}.footer-meta{font-size:7px;flex-wrap:wrap;gap:12px}.footer-meta>span:nth-child(2){display:none}.footer-meta button{font-size:9px}.menu-dialog{padding-top:20px}.menu-dialog nav{margin:35px 0}.menu-dialog nav a{font-size:36px;padding:17px 0}.menu-dialog .eyebrow{font-size:9px}.close-button{font-size:35px}.info-dialog{padding:20px 24px 26px}.info-dialog h2{font-size:35px}.info-dialog p{font-size:12px}.transition-curtain>span{font-size:16vw}.transition-curtain img{top:24px;width:128px}.transition-curtain small{font-size:8px}}
@media(max-width:370px){:root{--pad:17px}.brand span{display:none}.stage-copy h2{font-size:43px}.stage-copy>p:last-child{font-size:10px}.hero-copy h1{font-size:31px}.hero{min-height:540px}.phase-buttons{gap:9px}.phase-buttons button{font-size:8px}.contact-main h2{font-size:24vw}.service-links h3{font-size:26px}.footer-email{font-size:22px}.concept-tag{font-size:6.5px}}

@media print{body{padding-top:0;background:white}.site-header,.footer-meta,.transition-curtain,dialog,.toast,.contact-orbit{display:none!important}.sequence{height:750px}.sequence-stage{position:relative;top:0;height:750px}.hero,.site-footer,.expertise,.contact-teaser{print-color-adjust:exact}.reveal{opacity:1!important;transform:none!important}.page-view[hidden]{display:none!important}}

@media(max-width:600px){.scene-frame #wine-callouts{display:none}.brief-panel{scroll-margin-top:calc(var(--head) + 18px)}}

/* v0.4: the original visual system remains intact. These are additive changes. */
:root { --kraft: #ceb18a; --kraft-light: #dcc39e; --kraft-dark: #9b7952; }
.brand-region { display:flex; align-items:center; gap:15px; flex-shrink:0; }
.region-switch { position:relative; flex-shrink:0; }
.region-switch summary { display:flex; align-items:center; gap:8px; list-style:none; padding:10px 0 10px 15px; cursor:pointer; border-left:1px solid #ffffff48; font-size:9px; letter-spacing:.12em; user-select:none; }
.region-switch summary::-webkit-details-marker { display:none; }
.region-switch summary svg { transition:transform .22s var(--ease); }
.region-switch[open] summary svg { transform:rotate(180deg); }
.region-options { position:absolute; left:-16px; top:calc(100% + 17px); width:266px; padding:22px 20px 12px; background:var(--cream); color:var(--green); box-shadow:0 20px 70px #002d2855; border:1px solid #064a4519; }
.region-switch[open] .region-options { animation:region-arrive .25s var(--ease) both; }
.region-label { display:block; font-size:8px; letter-spacing:.06em; opacity:.7; margin-bottom:16px; }
.region-options button,.region-options a { display:flex; flex-direction:column; width:100%; text-align:left; padding:18px 0 16px; border-top:1px solid var(--line); gap:9px; transition:padding-left .2s; }
.region-options button>span,.region-options a>span { font-size:28px; letter-spacing:-.035em; display:flex; align-items:center; justify-content:space-between; width:100%; }
.region-options small { font-size:8px; letter-spacing:.07em; }
.region-options i { font-size:23px; font-style:normal; }
.region-options a:hover { padding-left:6px; }
@keyframes region-arrive { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:translateY(0); } }
.header-descriptor { margin-left:0; white-space:nowrap; }

/* The supplied symbol now contains only the two exact, clipped coloured shapes. */
.manifesto-symbol { background:transparent; }
.paper-touch { position:relative; isolation:isolate; }
.paper-touch::before { content:""; position:absolute; inset:0; pointer-events:none; z-index:-1; background-image:url("assets/kraft-tile.webp"); background-size:480px; opacity:.32; }

/* A specimen of ordinary board treated with the same design care as a premium pack. */
.material { position:relative; overflow:hidden; isolation:isolate; background:var(--kraft-light); color:var(--green); padding-top:35px; padding-bottom:29px; }
.material::before { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background-image:url("assets/kraft-tile.webp"),linear-gradient(112deg,#ead9b650,#936f3a14); background-size:480px,cover; }
.material-heading { display:flex; align-items:center; justify-content:space-between; gap:25px; border-bottom:1px solid #064a453b; padding-bottom:22px; }
.material-grid { display:grid; grid-template-columns:.92fr 1.08fr; align-items:center; gap:4vw; min-height:560px; }
.material-copy { padding-top:48px; padding-bottom:47px; }
.material-copy h2 { font-size:clamp(46px,6.8vw,116px); letter-spacing:-.065em; line-height:.98; font-weight:400; margin:0 0 30px; }
.material-copy h2 i { font-family:Georgia,"Times New Roman",serif; font-size:.91em; letter-spacing:-.065em; font-weight:400; }
.material-copy p { font-size:18px; line-height:1.55; margin:0 0 29px; letter-spacing:-.02em; }
.material-copy .text-link { font-size:14px; }
.material-samples { position:relative; height:540px; width:100%; margin:0; perspective:1200px; }
.sample-outline { position:absolute; inset:17% 3% 10% 1%; border:1px solid #064a4529; transform:rotate(5deg); }
.sample-outline::before,.sample-outline::after { content:"+"; position:absolute; font-size:20px; font-weight:300; opacity:.65; }
.sample-outline::before { left:-7px; top:-12px; }
.sample-outline::after { right:-7px; bottom:-12px; }
.board-sample { width:85%; aspect-ratio:1.53; position:absolute; top:17%; left:2%; transform:rotate(-9deg) rotateX(14deg) rotateY(-8deg); transform-style:preserve-3d; filter:drop-shadow(15px 28px 16px #68492235); transition:transform .9s var(--ease); }
.material-samples:hover .board-sample { transform:rotate(-7deg) rotateX(9deg) rotateY(-5deg) translateY(-5px); }
.board-face { height:100%; width:100%; padding:7% 9%; display:flex; flex-direction:column; justify-content:space-between; position:relative; isolation:isolate; overflow:hidden; background-color:#c9a77a; background-image:linear-gradient(125deg,#ffeacd45,transparent 57%,#62452218); border:1px solid #76552c50; }
.board-face::before { content:""; position:absolute; z-index:-1; inset:0; background:url("assets/kraft-tile.webp") 0 0/360px; opacity:1; }
.board-face::after { content:""; height:1px; background:#76552c48; position:absolute; left:0; right:0; bottom:15%; box-shadow:0 1px 1px #efd6ae65; }
.sample-micro { display:block; font-size:8px; letter-spacing:.08em; }
.board-face img { display:block; width:88%; height:auto; mix-blend-mode:multiply; }
.board-note { font-size:12px; letter-spacing:-.015em; }
.board-edge { position:absolute; left:0; right:0; top:100%; height:13px; transform-origin:top; transform:skewX(18deg); border-top:2px solid #987346; border-bottom:2px solid #bd9669; background-color:#543b24; background-image:repeating-radial-gradient(ellipse at 50% 105%,transparent 0 4px,#d7b283 4.5px 6.5px,transparent 7px 10px); background-size:17px 12px; box-shadow:0 3px 0 #967046; }
.kraft-card { position:absolute; width:53%; aspect-ratio:1.72; right:1%; top:55%; transform:rotate(9deg); background:#ddc298 url("assets/kraft-tile.webp") 0 0/290px; box-shadow:0 1px 0 #99754e,0 3px 0 #c2a078,0 4px 0 #97734c,13px 22px 20px #6b48262c; }
.card-under { transform:rotate(5deg) translate(-13px,14px); background-color:#bfa078; }
.card-top { padding:7% 5% 5%; display:flex; align-items:flex-start; gap:13%; justify-content:space-between; }
.card-top>img { width:23%; flex-shrink:0; mix-blend-mode:multiply; }
.card-top>div { display:flex; flex-direction:column; justify-content:space-between; height:100%; gap:20px; flex:1; }
.card-top>div>span { font-size:clamp(12px,1.35vw,23px); letter-spacing:-.035em; line-height:1.2; }
.card-top small { font-size:clamp(7px,.65vw,10px); letter-spacing:0; white-space:nowrap; }
.material-samples figcaption { position:absolute; bottom:5%; left:4%; font-size:8px; letter-spacing:.09em; opacity:.85; }
.material-bottom { border-top:1px solid #064a453b; padding-top:23px; display:grid; grid-template-columns:1.3fr 1fr auto; align-items:start; gap:35px; }
.material-bottom>span:first-child { font-size:24px; letter-spacing:-.04em; }
.material-bottom p { margin:0; font-size:13px; line-height:1.5; }
.material-index { font-size:9px; letter-spacing:.07em; }

/* All views share this footer. No text, legal line or padding follows the wordmark. */
.site-footer { padding-bottom:0; overflow:hidden; }
.footer-top { padding-bottom:32px; }
.footer-contact { padding-top:27px; padding-bottom:33px; }
.footer-meta { padding-top:19px; }
.footer-logo { display:block; width:100%; padding:50px 0 0; line-height:0; margin:0 0 -1px; }
.footer-logo img { width:100%; height:auto; display:block; }
.footer-logo:focus-visible { outline-offset:-5px; }

@media(min-width:1800px) {
 .material-grid { min-height:680px; }
 .material-samples { height:660px; }
 .board-note { font-size:17px; }
 .sample-micro { font-size:11px; }
}
@media(max-width:1150px) {
 .site-header { gap:20px; }
 .header-descriptor { display:block; font-size:10px; }
 .brand-region { gap:12px; }
 .desktop-nav { gap:18px; font-size:12px; }
 .region-switch summary { padding-left:12px; }
 .material-grid { min-height:510px; gap:3vw; }
 .material-samples { height:490px; }
 .material-copy p { font-size:16px; }
 .material-copy h2 { font-size:6.9vw; }
 .card-top { gap:10%; }
}
@media(max-width:1050px) {
 .desktop-nav { display:none; }
 .menu-button { display:block; }
 .header-cta { margin-left:auto; }
 .header-descriptor { margin-right:auto; }
}
@media(max-width:850px) {
 .material-samples { height:400px; }
 .material-grid { min-height:440px; }
 .material-copy p { font-size:14px; }
 .material-copy .text-link { font-size:12px; }
 .card-top>div { gap:12px; }
 .material-bottom>span:first-child { font-size:21px; }
 .material-bottom p { font-size:11px; }
}
@media(max-width:700px) {
 :root { --head:94px; }
 .site-header { gap:13px; padding-top:0; padding-bottom:25px; }
 .brand-region { gap:10px; }
 .brand img { width:108px; }
 .region-switch summary { font-size:8px; gap:5px; padding-left:10px; }
 .region-options { left:-65px; top:calc(100% + 16px); width:247px; }
 .header-descriptor { position:absolute; display:block; left:var(--pad); bottom:11px; font-size:9px; line-height:1; margin:0; letter-spacing:.005em; }
 .header-descriptor br,.header-descriptor>span:last-child { display:none; }
 .header-cta { font-size:11px; padding:10px 12px; gap:11px; }
 .material { padding-top:27px; padding-bottom:25px; }
 .material-heading .eyebrow { font-size:8px; }
 .material-heading>.eyebrow:last-child { max-width:133px; text-align:right; }
 .material-grid { grid-template-columns:1fr; gap:0; }
 .material-copy { padding-top:38px; padding-bottom:0; }
 .material-copy h2 { font-size:13.5vw; margin-bottom:23px; }
 .material-copy h2 br:nth-of-type(1) { display:none; }
 .material-copy h2 br:nth-of-type(1)::after { content:" "; }
 .material-copy h2 { max-width:490px; }
 .material-copy p { font-size:15px; line-height:1.5; }
 .material-copy p br { display:none; }
 .material-copy p { max-width:275px; margin-bottom:23px; }
 .material-copy .text-link { font-size:13px; }
 .material-samples { height:390px; max-width:540px; margin:10px auto 3px; }
 .board-sample { width:80%; top:17%; left:4%; }
 .sample-outline { inset:16% 6% 13% 5%; }
 .kraft-card { width:49%; right:3%; top:54%; }
 .sample-micro { font-size:7px; }
 .board-note { font-size:10px; }
 .card-top>div>span { font-size:clamp(12px,2.6vw,19px); }
 .card-top small { font-size:8px; }
 .material-samples figcaption { font-size:7px; bottom:6%; left:4%; }
 .material-bottom { grid-template-columns:1fr auto; gap:17px; }
 .material-bottom>span:first-child { font-size:22px; }
 .material-bottom p { grid-column:1; grid-row:2; font-size:12px; }
 .material-index { grid-column:2; grid-row:1; font-size:8px; padding-top:5px; }
 .site-footer { padding-bottom:0; }
 .footer-top { padding-bottom:23px; }
 .footer-contact { padding-top:23px; padding-bottom:24px; }
 .footer-logo { padding:34px 0 0; margin-bottom:-1px; }
 .footer-meta { font-size:7px; }
}
@media(max-width:400px) {
 .brand img { width:96px; }
 .brand-region { gap:7px; }
 .region-switch summary { padding-left:8px; font-size:7px; gap:4px; }
 .site-header { gap:10px; }
 .header-cta { font-size:10px; padding:9px 10px; gap:9px; }
 .material-samples { height:330px; }
 .card-top small { font-size:6.5px; }
 .board-note { font-size:9px; }
 .sample-micro { font-size:6px; }
 .material-samples figcaption { font-size:6.5px; bottom:4%; }
 .material-copy h2 { font-size:14vw; }
 .board-edge { height:10px; background-size:13px 10px; }
}
@media(max-width:350px) {
 .header-cta { display:none; }
 .menu-button { margin-left:auto; }
 .region-options { left:-60px; width:225px; }
 .material-samples { height:290px; }
 .sample-micro { font-size:5.5px; }
 .card-top>div>span { font-size:10px; }
 .card-top small { font-size:6px; }
}


/* Final alignment and compact header refinements. */
.region-switch { z-index:2; }
.material-samples figcaption { top:3%; bottom:auto; left:auto; right:4%; text-align:right; }
@media(max-width:700px) {
 .region-options { top:calc(100% + 39px); }
 .material-copy h2 br:nth-of-type(1),.material-copy p br { display:initial; }
 .material-samples figcaption { top:3%; bottom:auto; left:auto; right:4%; }
}

/* v0.4 / deliberate motion, natural fibre, and a real mobile composition.
   SVG = Scalable Vector Graphics: icons are paths, never emoji characters.
   svh = small viewport height: a stable mobile height with browser controls visible. */
.ui-icon{display:inline-block;flex-shrink:0;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.13em;overflow:visible}
.circle-arrow .ui-icon{width:24px;height:24px}.round-link .ui-icon{width:18px;height:18px}.text-link .ui-icon{width:23px;height:23px}.outline-button .ui-icon{width:20px;height:20px}.contact-orbit .ui-icon{width:54%;height:54%;stroke-width:1.1}.hover-round .ui-icon{width:23px;height:23px}.small-cross .ui-icon,.result-mark .ui-icon{width:1em;height:1em}.close-button .ui-icon{width:24px;height:24px}.hero-bottom .ui-icon{width:20px;height:20px}.region-options .ui-icon{width:19px;height:19px}.solid-button .ui-icon{width:20px;height:20px}
.site-header{gap:24px}.header-descriptor{font-size:11px;margin-right:auto}.desktop-nav{gap:22px}.motion-control{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:5px 1px;font-size:10px;line-height:1;white-space:nowrap;opacity:.76;transition:opacity .2s}.motion-control:hover,.motion-control[aria-pressed=true]{opacity:1}.motion-control .ui-icon{width:17px;height:17px}.menu-motion{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid #ffffff30;padding-top:20px}.menu-motion small{font-size:10px;max-width:175px;line-height:1.5;opacity:.7}.menu-motion .motion-control{font-size:13px}
.hero-top>.eyebrow:first-child{font-size:18px}.hero-copy h1{font-size:clamp(30px,2.9vw,47px)}.wordmark-caption{letter-spacing:0}.hero-wordmark{overflow:hidden}.hero-wordmark img{transform-origin:left bottom}.hero-copy .circle-arrow:hover{transform:translate(2px,-2px)}
/* Clear chapter handovers, with line masks. No full-page loader. */
.stage-copy.switching{animation:none}.stage-copy.switching h2{animation:chapter-text .62s var(--ease) both}.stage-copy.switching #stage-caption{animation:chapter-text .62s .06s var(--ease) both}.stage-copy.switching .stage-kicker{animation:chapter-text .4s var(--ease) both}.chapter-index{transition:color .35s}.stage-color{transition-duration:.75s}.stage-photo{transition-duration:.8s}.stage-photo img{transition:transform 1.4s var(--ease);transform:scale(1.065)}.sequence-stage[data-phase="3"] .stage-photo img{transform:scale(1)}
@keyframes chapter-text{from{opacity:0;transform:translateY(24px);clip-path:inset(0 0 95% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
.js-ready .reveal{opacity:0;transform:translate3d(0,30px,0);transition:opacity .72s var(--ease),transform .85s var(--ease);transition-delay:var(--reveal-delay,0ms)}.js-ready .reveal.visible{opacity:1;transform:translateZ(0)}
/* Never animate an ancestor of the sticky scene: it changes the scroll containing block. */
.page-view,.sequence{transform:none}.hero{will-change:auto}.workbench{padding-top:0}.bench-footer{border-top:1px solid var(--line);padding-top:48px;padding-bottom:55px;background:var(--cream)}.bench-footer p{font-size:clamp(19px,2vw,32px);line-height:1.35;letter-spacing:-.03em;max-width:860px}.bench-footer strong{font-weight:500}.bench-footer .outline-button{white-space:nowrap}.view-cta{margin-top:50px}.view-cta .text-link{font-size:17px}
/* Actual photographic fibre from the provided paper. No synthetic straw-like grain. */
:root{--kraft:#c1a078;--kraft-light:#d9bd92;--kraft-dark:#8a6643}
.paper-touch::before{background-image:none}.material{background:var(--kraft-light);color:#033c35}.material::before{background-image:linear-gradient(110deg,#d1b89014,#8a603326),url("assets/kraft-tile.webp");background-size:cover,780px;opacity:1}.material-heading{border-color:#294e3950}.material-grid{gap:5vw;min-height:610px}.material-copy{padding-bottom:55px}.material-copy h2{font-size:clamp(52px,6.8vw,116px);line-height:.96}.material-copy>p{max-width:395px;font-size:18px;line-height:1.55;letter-spacing:-.02em}.material-copy>p br{display:none}.material-samples{height:570px}.board-face{background:#bd996b url("assets/kraft-fibre.webp") center/cover;background-blend-mode:multiply;border:1px solid #71523160;box-shadow:inset 0 0 45px #6e4c1a15}.board-face::before{background:none}.board-face img,.card-top img{mix-blend-mode:multiply}.board-sample{transition:transform .9s var(--ease);filter:none}.board-note{font-size:clamp(13px,1.3vw,21px)}.board-edge{background-color:#9c794b}.kraft-card{background:#ddc39c url("assets/kraft-fibre.webp") center/cover;background-blend-mode:multiply;transition:transform .95s var(--ease);box-shadow:0 1px 0 #a08360,0 3px 0 #d3b68f,0 4px 0 #a18158,10px 22px 25px #4d341e33}.card-under{background-color:#c6aa81}.sample-outline{opacity:.4}.material-bottom{border-color:#294e3950;grid-template-columns:1fr 1.15fr auto}.material-bottom>span:first-child{max-width:380px;font-size:27px}.material-bottom p{font-size:14px;line-height:1.6;max-width:510px}.material-index{padding-top:8px}.material-samples figcaption{font-size:8px;letter-spacing:.05em}
@media(hover:hover) and (pointer:fine){html[data-motion=full] .material-samples:hover .card-top{transform:rotate(5deg) translate(3px,-12px)}html[data-motion=full] .material-samples:hover .card-under{transform:rotate(13deg) translate(-5px,4px)}.split-image img,.studio-photo>img,.project-cover>img{transition:transform 1.1s var(--ease)}html[data-motion=full] .split-image:hover img,html[data-motion=full] .studio-photo:hover>img{transform:scale(1.025)}}
/* Two independent contact actions, both with generous touch targets. */
.email-pair{display:inline-flex;align-items:center;flex-wrap:wrap;gap:16px;max-width:100%}.email-address{font-size:inherit;letter-spacing:-.035em;overflow-wrap:anywhere;text-decoration-thickness:1px;text-underline-offset:6px}.email-address:hover{text-decoration:underline}.copy-icon{display:inline-flex;align-items:center;gap:6px;min-height:44px;min-width:44px;padding:10px 0;flex-shrink:0;opacity:.8}.copy-icon:hover{opacity:1}.copy-icon .ui-icon{width:16px;height:16px}.copy-label{font-size:8px;letter-spacing:.06em}.contact-bottom .email-pair{display:flex;margin-top:18px;font-size:18px}.contact-address .email-pair{font-size:19px}.contact-address>.fineprint{margin-top:8px}.footer-contact{grid-template-columns:1fr auto;gap:40px}.footer-email-pair{font-size:clamp(25px,3vw,44px)}.footer-email-pair .copy-label{font-size:8px}.contact-details{grid-template-columns:1.2fr 1fr}.contact-details .email-pair{font-size:26px}.brief-alternative>a{display:flex;gap:12px;align-items:center;text-decoration:underline;text-underline-offset:5px}.brief-alternative .ui-icon{width:16px;height:16px}.brief-actions .solid-button{display:flex;gap:14px;justify-content:center;align-items:center}.brief-step-labels{list-style:none;padding:0;margin:-13px 0 32px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;font-size:9px;color:#064a4599;letter-spacing:.015em}.brief-step-labels li{padding-top:6px}.brief-step-labels li.active{color:var(--green);font-weight:600}.brief-step-labels li.complete{color:#064a45ba}.brief-step-labels li:last-child{text-align:right}.brief-progress{margin-bottom:12px}.brief-panel label,.brief-panel input{touch-action:manipulation}.brief-panel fieldset{min-width:0}.brief-panel textarea{resize:vertical}.brief-panel input:focus,.brief-panel textarea:focus{box-shadow:0 1px 0 currentColor}.brief-panel input,.brief-panel textarea{scroll-margin-top:calc(var(--head) + 35px)}
@media(max-width:1220px){.desktop-nav{display:none}.menu-button{display:block}.header-cta{margin-left:0}.site-header{gap:21px}.header-descriptor{margin-right:auto}.motion-control{font-size:10px}.material-copy>p{font-size:16px}.material-grid{min-height:550px}.material-samples{height:510px}}
@media(max-width:850px){.bench-footer{display:block}.bench-footer .outline-button{display:inline-flex;margin-top:22px}.material-grid{min-height:440px}.material-samples{height:405px}.material-copy>p{font-size:15px}.material-bottom>span:first-child{font-size:22px}.material-bottom p{font-size:12px}}
/* Mobile: four deliberate rows fit the available screen. Product and text do not overlap. */
@media(max-width:700px){
 :root{--head:94px;--pad:21px}
 .site-header{gap:12px;padding-bottom:25px}.header-descriptor{font-size:9px;bottom:14px}.site-header>.motion-control{position:absolute;right:var(--pad);bottom:2px;min-height:33px;font-size:8px;gap:5px;padding:0}.site-header>.motion-control .ui-icon{width:13px;height:13px}.header-cta{margin-left:auto;min-height:42px}.menu-button{width:38px;height:44px}.hero-top>.eyebrow:first-child{font-size:14px;max-width:160px;line-height:1.2}.hero{min-height:520px}.hero-copy h1{font-size:clamp(29px,8.5vw,42px);line-height:1.04}.hero-copy p{font-size:12px;line-height:1.5}.hero-body{gap:35px}.wordmark-caption{font-size:10px}.hero-bottom button{font-size:11px;min-height:44px}.hero-bottom>span{max-width:105px;font-size:7px}.circle-arrow{min-width:40px;min-height:40px}
 .sequence{height:410svh;touch-action:pan-y pinch-zoom}
 .sequence-stage{height:calc(100svh - var(--head));min-height:0;display:grid;grid-template-rows:43px auto minmax(0,1fr) 74px;gap:0;padding:12px var(--pad) 9px;top:var(--head);overflow:hidden}
 .stage-top{position:relative;inset:auto;grid-row:1;align-self:start;gap:16px;min-width:0;width:100%}.stage-top>.eyebrow{font-size:7px;max-width:134px;line-height:1.4}.concept-tag{font-size:6.5px;letter-spacing:.02em;padding:7px 9px;white-space:nowrap;flex-shrink:0}
 .stage-copy,.sequence-stage[data-phase="3"] .stage-copy{position:relative;inset:auto;grid-row:2;width:100%;max-width:100%;padding:0 33px 0 0;pointer-events:none}.chapter-index{font-size:22px;position:absolute;right:0;top:0;width:29px;padding-bottom:5px}.stage-kicker{font-size:7px;margin:0 0 9px;max-width:92%;line-height:1.4;letter-spacing:.055em}.stage-copy h2,.sequence-stage[data-phase="3"] .stage-copy h2{font-size:clamp(33px,10.1vw,56px);line-height:.97;letter-spacing:-.053em;max-width:100%;margin:0 0 11px}.stage-copy>p:last-child{font-size:11px;line-height:1.45;max-width:none;margin:0}.stage-copy h2 br{display:initial}
 .scene-frame{position:relative;inset:auto;grid-row:3;width:100%;height:100%;min-width:0;min-height:0;padding:0;display:flex;justify-content:center;align-items:center;overflow:visible}.scene-frame>svg{width:100%;height:100%;max-width:100%;overflow:visible}.scene-frame #wine-callouts{display:none}.scene-frame #assembly-shadow{filter:none;opacity:.07}.scene-frame #construction-lines{stroke-opacity:.12}
 .stage-bottom{position:relative;inset:auto;grid-row:4;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;gap:7px;min-width:0}.phase-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%}.phase-buttons button{display:flex;flex-direction:column;gap:4px;min-width:0;min-height:45px;align-items:flex-start;line-height:1.15;font-size:8px;padding:8px 0 0;touch-action:manipulation;transform:none}.phase-buttons button b{font-size:15px}.phase-buttons button.active{padding-top:6px}.phase-buttons button>span{white-space:normal}.scene-disclaimer{font-size:6px;line-height:1.3;text-align:right;margin:0;max-width:none;letter-spacing:.035em}.scene-disclaimer br{display:none}.stage-photo img{object-position:63% center}.photo-shade{background:linear-gradient(180deg,#1d1116db 0%,#1d111657 39%,transparent 62%,#1d1116cf 100%)}
 .manifesto-main{margin-top:42px;margin-bottom:42px}.principle-line{font-size:8px;letter-spacing:0;gap:6px}.principle-line>span:last-child{max-width:95px;text-align:right;line-height:1.4}.bench-footer{padding-top:35px;padding-bottom:39px}.bench-footer p{font-size:23px;line-height:1.3}.bench-footer strong{display:block;margin-top:8px}.bench-footer p br{display:none}.bench-footer .outline-button{white-space:normal;font-size:13px}
 .material-grid{grid-template-columns:1fr;gap:0;min-height:0}.material-copy{padding-top:35px;padding-bottom:0}.material-copy h2{font-size:clamp(49px,14.8vw,83px);line-height:.94;margin-bottom:24px;max-width:none}.material-copy h2 br{display:initial}.material-copy>p{font-size:15px;line-height:1.55;max-width:335px}.material-samples{height:390px;max-width:500px;margin:15px auto 5px}.board-face{background-size:cover}.board-note{font-size:12px}.material-samples figcaption{font-size:6.5px;max-width:150px;line-height:1.5}.material-bottom{grid-template-columns:1fr auto;gap:15px}.material-bottom>span:first-child{font-size:24px;max-width:240px}.material-bottom p{grid-row:2;grid-column:1/-1;font-size:13px;max-width:100%}.material-heading .eyebrow{font-size:7.5px}.sample-micro{font-size:7px}.card-top>div>span{font-size:12px}.card-top small{font-size:7px}.material-copy .text-link{font-size:14px}
 .contact-details{grid-template-columns:1fr}.contact-details .email-pair{font-size:25px}.footer-contact{grid-template-columns:1fr;gap:20px}.footer-email-pair{font-size:29px;display:flex;gap:18px}.footer-contact>span{font-size:14px}.contact-address .email-pair{font-size:20px}.contact-bottom .email-pair{font-size:19px}.email-pair{gap:12px}.copy-icon{min-width:44px}.contact-bottom p{font-size:17px}.brief-panel>h2{font-size:clamp(34px,10vw,45px)}.brief-step-labels{font-size:9px;margin-bottom:30px}.view-cta{margin-top:30px}.view-cta .text-link{font-size:16px;gap:15px}.brief-actions .solid-button{font-size:13px}.contact-orbit{width:24vw;height:24vw}.menu-dialog nav a{font-size:clamp(29px,8.8vw,42px)}.menu-dialog{max-height:100dvh;overflow-y:auto}
}
@media(max-width:370px){:root{--pad:17px}.brand-region{gap:7px}.brand img{width:98px}.region-switch summary{font-size:7px;padding-left:8px}.header-cta{font-size:10px;padding:8px 10px;gap:8px}.site-header{gap:8px}.hero-copy{gap:18px}.hero-copy h1{font-size:29px}.hero-copy p{font-size:11px}.hero-top>.eyebrow:first-child{font-size:13px}.hero-index{font-size:7px}.header-descriptor{font-size:8px}.stage-copy h2{font-size:32px}.stage-copy>p:last-child{font-size:10px}.stage-kicker{font-size:6.5px}.phase-buttons{gap:8px}.phase-buttons button{font-size:7px}.concept-tag{font-size:6px;padding:7px}.material-samples{height:325px}.footer-email-pair{font-size:24px}.material-copy h2{font-size:49px}.card-top>div>span{font-size:10px}}
/* Landscape phones and extremely short windows: do not pin an unreadable viewport. */
@media(max-height:540px) and (max-width:1000px){.sequence-stage{min-height:440px}.sequence{height:2300px}.stage-copy h2{font-size:40px}.scene-frame{max-height:100%}.site-header{--head:78px}.hero{min-height:410px}}
/* One explicit mode also follows the system preference at first load. Switching keeps all 4 stages. */
html[data-motion=reduced] *,html[data-motion=reduced] *::before,html[data-motion=reduced] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html[data-motion=reduced] .sequence{height:auto;min-height:0}
html[data-motion=reduced] .sequence-stage{position:relative;top:0;min-height:570px}
html[data-motion=reduced] .phase-buttons{display:flex}
html[data-motion=reduced] .stage-copy{animation:none!important}
html[data-motion=reduced] .reveal{opacity:1!important;transform:none!important}
html[data-motion=reduced] .transition-curtain{display:none!important}
html[data-motion=reduced] .stage-photo img{transform:none}
html[data-motion=reduced] .hero{transform:none!important}
html[data-motion=reduced] .material-samples:hover .board-sample{transform:rotate(-9deg) rotateX(14deg) rotateY(-8deg)}
html:not(.enhanced) .sequence{height:auto}
html:not(.enhanced) .sequence-stage{position:relative;top:0}
@media(max-width:700px){html[data-motion=reduced] .sequence-stage{min-height:0;height:calc(100svh - var(--head))}html[data-motion=reduced] .phase-buttons{display:grid}}

@media(max-width:360px){.stage-copy h2,.sequence-stage[data-phase="3"] .stage-copy h2{font-size:28px;line-height:.98}.stage-copy>p:last-child{font-size:10px}.stage-kicker{margin-bottom:8px}.scene-frame #assembly-shadow{display:none}}
@media(min-width:361px) and (max-width:700px){.phase-buttons button{font-size:9px}}
.concept-tag{transition:background .2s,color .2s}.concept-tag:hover{background:var(--green);color:var(--cream)}
/* Keep the approved opening in two columns without orphaning the word "Tu". */
@media(max-width:700px){.hero-copy{grid-template-columns:1.22fr .78fr;gap:17px}.hero-copy h1{max-width:none}.hero-copy p{font-size:11.5px}}
@media(max-width:360px){.hero-copy p{font-size:10.5px}}

/* v0.5 - Progressive enhancement, native mobile navigation and a complete static story. */
html{scroll-padding-top:calc(var(--head) + 12px)}
.hero-bottom a{font-size:12px;letter-spacing:0;display:flex;gap:45px;padding:3px 0;align-items:center;min-height:44px}
.mobile-menu{display:none;flex-shrink:0}
.mobile-menu>summary{list-style:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.mobile-menu>summary::-webkit-details-marker{display:none}
.mobile-menu>summary::marker{content:''}
.mobile-menu-panel{position:fixed;inset:var(--head) 0 0;background:var(--green);color:var(--cream);padding:20px var(--pad) 38px;overflow-y:auto;overscroll-behavior:contain;z-index:65}
.mobile-menu:not([open])>.mobile-menu-panel{display:none}
.mobile-menu-panel nav{display:flex;flex-direction:column;margin:20px 0 26px}
.mobile-menu-panel nav a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid #ffffff35;font-size:clamp(28px,5.5vw,58px);font-weight:400;line-height:1.15;letter-spacing:-.045em;min-height:52px}
.mobile-menu-panel nav a span{font-size:12px;letter-spacing:0}
.mobile-menu-panel nav a span svg{width:25px;height:25px}
.mobile-menu-panel .dialog-head{margin-bottom:10px}
.mobile-menu-panel .close-button{min-width:44px;min-height:44px;display:grid;place-items:center}
html[data-motion=full] .mobile-menu[open]>.mobile-menu-panel{animation:menu-reveal .4s var(--ease) both}
@keyframes menu-reveal{from{clip-path:inset(0 0 100%);opacity:.7}to{clip-path:inset(0);opacity:1}}
body.menu-is-open{overflow:hidden}
@supports selector(body:has(details[open])){body:has(.mobile-menu[open]){overflow:hidden}}
.motion-preferences{margin:18px 0 22px;font-size:11px;max-width:400px;line-height:1.6}
.motion-preferences summary{cursor:pointer;width:fit-content;min-height:40px;display:flex;align-items:center;gap:10px;opacity:.75;list-style:none}
.motion-preferences summary::-webkit-details-marker{display:none}
.motion-preferences summary::before{content:'+';font-size:17px;line-height:1;font-family:Arial,sans-serif}
.motion-preferences[open] summary::before{content:'-'}
.motion-preferences-panel{padding:8px 0 20px;border-top:1px solid #ffffff25}
.motion-preferences-panel p{margin:6px 0 10px;font-size:13px}
.motion-preferences-panel small{display:block;opacity:.6;font-size:10px;margin-top:12px}
.motion-preferences-panel .motion-control{border:1px solid #ffffff55;border-radius:30px;padding:10px 16px;font-size:12px;min-height:44px}
.story-static{display:none}
.story-card{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4vw;min-height:620px;padding:70px var(--pad);background:#f4f0e8;color:var(--green)}
.story-card:nth-child(2){background:#dcd5e6;color:var(--plum)}
.story-card:nth-child(3){background:#e9b9a7;color:var(--plum)}
.story-card:nth-child(4){background:var(--plum);color:var(--cream)}
.story-card h2{font-size:clamp(42px,5.6vw,90px);font-weight:400;letter-spacing:-.055em;line-height:.98;margin:27px 0}
.story-card-copy>p:not(.eyebrow){font-size:17px;line-height:1.5;max-width:365px}
.story-card-copy>small{display:block;font-size:10px;letter-spacing:.06em;line-height:1.5;margin-top:28px}
.story-card figure{margin:0;min-width:0;display:flex;align-items:center;justify-content:center}
.story-card figure img{width:100%;height:auto;max-height:560px;object-fit:contain;display:block}
.story-card-result figure img{aspect-ratio:1/1.1;object-fit:cover;object-position:center}
html[data-motion=reduced] .sequence,html:not(.enhanced) .sequence{height:auto!important;min-height:0}
html[data-motion=reduced] .sequence-stage,html:not(.enhanced) .sequence-stage{display:none!important}
html[data-motion=reduced] .story-static,html:not(.enhanced) .story-static{display:block}
html:not(.enhanced) .reveal{opacity:1!important;transform:none!important}
html:not(.enhanced) .transition-curtain{display:none!important}
.noscript-contact h2{font-size:42px;font-weight:400;line-height:1.05;letter-spacing:-.045em}
.noscript-contact p{font-size:15px;line-height:1.6}
@media(max-width:1220px){.mobile-menu{display:block}.mobile-menu .menu-button{display:block}}
@media(max-width:700px){
 .site-header{gap:13px}.header-cta{margin-left:auto}.mobile-menu{margin-left:0}.mobile-menu .menu-button{width:40px;height:44px}
 .header-descriptor{bottom:12px}.hero-bottom a{font-size:11px;gap:25px}
 .sequence{height:410vh;height:410svh}
 .mobile-menu-panel{padding-top:10px}.mobile-menu-panel nav{margin-top:8px}.mobile-menu-panel nav a{font-size:clamp(28px,8.8vw,42px);padding:15px 0}
 .motion-preferences{margin:12px 0 15px;font-size:10px}
 .story-card{grid-template-columns:1fr;gap:0;min-height:0;padding:35px var(--pad) 25px}
 .story-card h2{font-size:clamp(35px,10.2vw,54px);margin:18px 0 16px;line-height:1}
 .story-card-copy>p:not(.eyebrow){font-size:14px;line-height:1.5;max-width:100%}
 .story-card-copy>small{margin-top:17px;font-size:8px}
 .story-card .eyebrow{font-size:10px}
 .story-card figure{padding-top:7px}.story-card figure img{height:360px;max-height:50svh;object-fit:contain}
 .story-card-result figure{margin-top:20px}.story-card-result figure img{height:330px;object-fit:cover}
}
@media(max-width:360px){.site-header{gap:8px}.mobile-menu .menu-button{width:36px}.story-card figure img{height:285px;max-height:50svh}.story-card h2{font-size:35px}.mobile-menu-panel nav a{padding:12px 0;font-size:29px}}
@media print{.mobile-menu,.motion-preferences{display:none!important}.sequence-stage{display:none!important}.story-static{display:block}.story-card{min-height:0;break-inside:avoid}}
/* Hablemos remains present even at the narrowest phone width. */
@media(max-width:1220px){.site-header>.header-cta{display:flex}}
@media(max-width:360px){.brand img{width:90px}.site-header .brand-region{gap:6px}.region-switch summary{padding-left:6px;font-size:7px}.site-header>.header-cta{gap:5px;padding:8px;font-size:10px;min-height:40px}.header-cta .ui-icon{width:15px;height:15px}.mobile-menu .menu-button{width:32px}}
