
:root{--black:#090a08;--black2:#11130f;--steel:#1c211a;--paper:#eceee8;--fog:#a8ada3;--acid:#98ff54;--line:rgba(236,238,232,.22);--wide:min(1640px,calc(100% - 44px));--cond:"DejaVu Sans Condensed","Arial Narrow",Arial,sans-serif;--body:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--black)}body{margin:0;background:var(--black);color:var(--paper);font-family:var(--body);overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:999;pointer-events:none;opacity:.045;background-image:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.08) 4px)}a{color:inherit}img{display:block;width:100%;height:auto}.skip{position:fixed;top:-100px;left:12px;background:var(--acid);color:#000;padding:12px 16px;z-index:1000}.skip:focus{top:12px}.topbar{position:fixed;z-index:100;top:0;left:0;right:0;height:82px;display:grid;grid-template-columns:220px 1fr auto auto;align-items:center;gap:24px;padding:0 22px;background:rgba(9,10,8,.86);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.logo{width:190px}.logo img{height:auto}.coordinates{font:700 10px/1 var(--cond);letter-spacing:.15em;color:#7e8578}.desktop-nav{display:flex;gap:22px}.desktop-nav a,.project-link{font:800 11px/1 var(--cond);letter-spacing:.12em;text-transform:uppercase;text-decoration:none}.desktop-nav a{color:#c9cdc5}.desktop-nav a:hover{color:var(--acid)}.project-link{height:44px;display:flex;align-items:center;gap:18px;border-left:1px solid var(--line);padding-left:25px}.project-link b{color:var(--acid)}.menu{display:none;background:none;border:1px solid var(--line);width:44px;height:44px}.menu i{display:block;width:20px;height:1px;background:white;margin:6px auto}.hero{min-height:100svh;position:relative;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:82px 1fr;overflow:hidden}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:calc(100% / 12) 100%,100% 82px;pointer-events:none}.hero-copy{grid-column:1/8;grid-row:2;z-index:3;padding:11vh 4vw 8vh 5vw;align-self:end}.micro,.section-head p,.work-head p,.cap-intro>p,.process-copy>p,.finale>p,.rail-label{font:800 10px/1.4 var(--cond);letter-spacing:.2em;text-transform:uppercase;color:var(--acid)}.hero h1{font:900 clamp(4.7rem,9.1vw,10.8rem)/.77 var(--cond);letter-spacing:-.065em;text-transform:uppercase;margin:20px 0 28px}.hero h1 span{display:block}.hero h1 span:nth-child(2){color:transparent;-webkit-text-stroke:1.5px var(--paper);transform:translateX(7vw)}.lead{max-width:580px;color:#c9cdc5;font-size:clamp(1rem,1.3vw,1.25rem);line-height:1.6;margin:0}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:30px}.solid{background:var(--acid);color:#050604;text-decoration:none;padding:16px 20px;font:900 11px/1 var(--cond);letter-spacing:.15em}.solid b{margin-left:20px}.under{font:800 11px/1 var(--cond);letter-spacing:.13em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid #fff;padding-bottom:7px}.under b{margin-left:12px}.hero-image{position:absolute;overflow:hidden}.hero-image img{height:100%;object-fit:cover;filter:saturate(.92) contrast(1.04)}.hero-image.primary{right:0;top:82px;width:47vw;height:74vh;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%)}.hero-image.primary:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,10,8,.78),transparent 35%)}.hero-image.secondary{right:4vw;bottom:3.5vh;width:24vw;height:28vh;border:8px solid var(--black);box-shadow:0 0 0 1px var(--line)}.hero-stamp{position:absolute;right:1.8vw;top:38vh;z-index:5;display:flex;align-items:flex-end;gap:5px;transform:rotate(90deg);transform-origin:right}.hero-stamp span{font:900 24px/1 var(--cond);color:var(--acid)}.hero-stamp b{font:900 128px/.7 var(--cond);color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.5)}.vertical-type{position:absolute;right:10px;top:100px;writing-mode:vertical-rl;font:800 9px/1 var(--cond);letter-spacing:.2em;color:#9da297;z-index:6}.hero-index{position:absolute;left:22px;bottom:18px;display:flex;gap:18px;align-items:center;font:800 9px/1 var(--cond);letter-spacing:.15em;color:#777d72}.hero-index b{font-size:24px;color:var(--acid)}
.manifesto{display:grid;grid-template-columns:140px 1fr;min-height:76vh;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.rail-label{writing-mode:vertical-rl;transform:rotate(180deg);padding:42px;border-right:1px solid var(--line)}.manifesto-copy{padding:11vw 9vw}.manifesto h2{font:900 clamp(3.6rem,7.6vw,9rem)/.87 var(--cond);letter-spacing:-.055em;text-transform:uppercase;margin:0}.manifesto h2 span{color:var(--acid)}.manifesto p{max-width:720px;color:#abb0a7;font-size:1.1rem;line-height:1.75;margin:45px 0 28px}.manifesto a{font:800 11px/1 var(--cond);letter-spacing:.15em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid;padding-bottom:8px}.manifesto a b{color:var(--acid);margin-left:14px}
.duality{padding:110px 22px;background:#dfe2dc;color:#0a0b09}.section-head{width:var(--wide);margin:0 auto 45px;display:grid;grid-template-columns:250px 1fr;gap:40px}.section-head p{color:#39770d;padding-top:12px}.section-head h2{font:900 clamp(3.3rem,6.2vw,7.4rem)/.88 var(--cond);letter-spacing:-.055em;text-transform:uppercase;margin:0}.duality-grid{width:var(--wide);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#151713}.duality-panel{min-height:72vh;position:relative;overflow:hidden;text-decoration:none}.duality-panel img{height:100%;object-fit:cover;transition:transform .7s}.duality-panel:hover img{transform:scale(1.04)}.duality-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.92),transparent 58%)}.panel-code{position:absolute;z-index:2;left:20px;top:20px;background:var(--acid);color:#080908;padding:8px 10px;font:900 10px/1 var(--cond);letter-spacing:.15em}.panel-copy{position:absolute;z-index:2;left:28px;right:28px;bottom:28px;color:white}.panel-copy h3{font:900 clamp(2.6rem,4.5vw,5.6rem)/.88 var(--cond);letter-spacing:-.045em;text-transform:uppercase;margin:0;max-width:700px}.panel-copy span{display:inline-block;margin-top:18px;font:800 10px/1 var(--cond);letter-spacing:.14em;text-transform:uppercase;color:var(--acid)}
.work-index{padding:120px 0;background:var(--black)}.work-head{width:var(--wide);margin:auto;display:flex;justify-content:space-between;align-items:end;padding-bottom:38px}.work-head h2{font:900 clamp(4rem,8vw,9rem)/.8 var(--cond);letter-spacing:-.06em;text-transform:uppercase;margin:18px 0 0}.work-key{font:800 9px/1 var(--cond);letter-spacing:.13em;color:#777d72;text-transform:uppercase}.work-key span{color:var(--acid);margin-left:18px}.work-row{width:var(--wide);margin:auto;display:grid;grid-template-columns:38% 62%;min-height:72vh;border-top:1px solid var(--line)}.work-row.reverse{grid-template-columns:62% 38%}.work-row.reverse .work-meta{order:2}.work-meta{padding:5vw 4vw 4vw 0;align-self:center}.work-row.reverse .work-meta{padding-left:4vw;padding-right:0}.work-meta>b{font:900 4rem/1 var(--cond);color:transparent;-webkit-text-stroke:1px #555b51}.work-meta>span{display:block;color:var(--acid);font:800 10px/1 var(--cond);letter-spacing:.17em;text-transform:uppercase;margin:30px 0 18px}.work-meta h3{font:900 clamp(3rem,5.4vw,6.2rem)/.88 var(--cond);letter-spacing:-.05em;text-transform:uppercase;margin:0}.work-meta p{max-width:420px;color:#9ca198;line-height:1.7}.work-row figure{margin:0;min-height:72vh;overflow:hidden;position:relative}.work-row figure:before,.work-row figure:after{content:"";position:absolute;z-index:2;width:36px;height:36px;border-color:var(--acid)}.work-row figure:before{left:15px;top:15px;border-left:1px solid;border-top:1px solid}.work-row figure:after{right:15px;bottom:15px;border-right:1px solid;border-bottom:1px solid}.work-row figure img{height:100%;object-fit:cover;filter:saturate(.95);transition:transform .8s}.work-row:hover img{transform:scale(1.025)}
.capabilities{display:grid;grid-template-columns:40% 60%;background:#dfe2dc;color:#0a0b09;border-top:1px solid #0a0b09}.cap-intro{padding:110px 5vw;position:sticky;top:82px;align-self:start}.cap-intro>p{color:#39770d}.cap-intro h2{font:900 clamp(3.3rem,5.5vw,6.8rem)/.87 var(--cond);letter-spacing:-.055em;text-transform:uppercase;margin:24px 0}.cap-intro>span{display:block;max-width:480px;color:#555a52;line-height:1.7}.cap-grid{border-left:1px solid #0a0b09}.cap-grid a{min-height:180px;display:grid;grid-template-columns:60px 1fr 45px;gap:18px;align-items:center;padding:30px;border-bottom:1px solid #0a0b09;text-decoration:none;position:relative;overflow:hidden}.cap-grid a:before{content:"";position:absolute;inset:0;background:var(--acid);transform:translateX(-101%);transition:.35s}.cap-grid a>*{position:relative}.cap-grid a:hover:before{transform:none}.cap-grid b{font:900 11px/1 var(--cond);color:#39770d}.cap-grid h3{font:900 clamp(2rem,3.4vw,4.2rem)/.9 var(--cond);letter-spacing:-.04em;text-transform:uppercase;margin:0}.cap-grid i{font-style:normal;font-size:24px}
.process{display:grid;grid-template-columns:55% 45%;min-height:100vh}.process-image{position:sticky;top:0;height:100vh}.process-image img{height:100%;object-fit:cover}.process-image span{position:absolute;left:15px;bottom:15px;background:#090a08;color:var(--acid);padding:9px 11px;font:900 9px/1 var(--cond);letter-spacing:.15em}.process-copy{padding:100px 5vw}.process-copy h2{font:900 clamp(3.5rem,6vw,7rem)/.87 var(--cond);text-transform:uppercase;letter-spacing:-.055em;margin:23px 0 55px}.process-copy ol{list-style:none;padding:0;margin:0}.process-copy li{display:grid;grid-template-columns:65px 1fr;gap:20px;padding:25px 0;border-top:1px solid var(--line)}.process-copy li>b{font:900 11px/1 var(--cond);color:var(--acid)}.process-copy h3{font:900 2rem/1 var(--cond);text-transform:uppercase;margin:0}.process-copy li p{color:#999f95;margin:8px 0 0;line-height:1.6}
.finale{min-height:90vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;border-top:1px solid var(--line)}.outline-nine{position:absolute;font:900 55vw/.7 var(--cond);color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.08);letter-spacing:-.12em}.finale h2{font:900 clamp(4rem,8vw,9.5rem)/.83 var(--cond);letter-spacing:-.06em;text-transform:uppercase;margin:25px 0 45px;position:relative}.finale h2 span{color:var(--acid)}.finale>a{position:relative;background:var(--acid);color:#070806;text-decoration:none;padding:21px 26px;font:900 12px/1 var(--cond);letter-spacing:.16em}.finale>a b{margin-left:34px}
.footer{background:#030403;border-top:1px solid var(--line);padding:80px 22px 24px}.footer-top,.footer-grid,.footer-bottom{width:var(--wide);margin:auto}.footer-top{display:flex;justify-content:space-between;gap:60px;align-items:end;padding-bottom:65px}.footer-top span{font:900 10px/1 var(--cond);letter-spacing:.17em;color:var(--acid)}.footer-top h2{font:900 clamp(3.2rem,6vw,7.5rem)/.85 var(--cond);letter-spacing:-.055em;text-transform:uppercase;margin:20px 0 0}.footer-top>a{min-width:190px;height:190px;display:grid;place-items:center;text-align:center;border:1px solid var(--acid);color:var(--acid);text-decoration:none;font:900 11px/1.3 var(--cond);letter-spacing:.15em;clip-path:polygon(15% 0,100% 0,100% 85%,85% 100%,0 100%,0 15%)}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,.65fr);gap:50px;border-top:1px solid var(--line);padding:45px 0}.footer-brand img{max-width:230px}.footer-brand p{max-width:500px;color:#858b81;line-height:1.7}.footer-grid h3{font:900 10px/1 var(--cond);letter-spacing:.16em;text-transform:uppercase;color:var(--acid);margin:0 0 18px}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;align-items:flex-start}.footer-grid a{text-decoration:none;color:#b6bbb2;font-size:14px;padding:6px 0}.footer-grid a:hover{color:var(--acid)}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:22px;color:#656b61;font:800 9px/1 var(--cond);letter-spacing:.13em;text-transform:uppercase}
@media(max-width:1100px){.topbar{grid-template-columns:190px 1fr auto}.coordinates,.desktop-nav{display:none}.menu{display:block}.project-link{margin-left:auto}.hero-copy{grid-column:1/9}.hero-image.primary{width:51vw}.hero h1{font-size:clamp(4.7rem,11vw,8rem)}.section-head{grid-template-columns:1fr}.work-row,.work-row.reverse{grid-template-columns:1fr 1.25fr}.capabilities{grid-template-columns:1fr}.cap-intro{position:relative;top:auto}.process{grid-template-columns:1fr}.process-image{position:relative;height:70vh}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}}
@media(max-width:720px){:root{--wide:calc(100% - 24px)}.topbar{height:70px;padding:0 12px;grid-template-columns:150px 1fr 44px}.logo{width:150px}.project-link{display:none}.hero{min-height:850px;grid-template-rows:70px 1fr}.hero-grid{background-size:25% 100%,100% 70px}.hero-copy{grid-column:1/13;padding:100px 16px 330px;align-self:start}.micro{max-width:290px;line-height:1.6}.hero h1{font-size:clamp(4.1rem,20vw,6.4rem);margin-top:18px}.hero h1 span:last-child{font-size:.68em;letter-spacing:-.075em}.hero h1 span:nth-child(2){transform:none}.lead{font-size:.94rem;max-width:360px}.hero-actions{gap:18px;align-items:flex-start;flex-direction:column}.hero-image.primary{top:auto;right:0;bottom:0;width:92vw;height:340px;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)}.hero-image.secondary{width:42vw;height:155px;right:12px;bottom:20px}.hero-stamp{display:none}.vertical-type{top:80px}.hero-index{display:none}.manifesto{grid-template-columns:42px}.rail-label{padding:15px 13px}.manifesto-copy{padding:90px 22px}.manifesto h2{font-size:3.7rem}.manifesto p{font-size:1rem}.duality{padding:80px 12px}.section-head{gap:18px}.section-head h2{font-size:3.55rem}.duality-grid{grid-template-columns:1fr}.duality-panel{min-height:560px}.panel-copy h3{font-size:3.35rem}.work-index{padding:90px 0}.work-head{align-items:start;flex-direction:column}.work-head h2{font-size:4.3rem}.work-key{margin-top:25px}.work-row,.work-row.reverse{grid-template-columns:1fr;min-height:0}.work-row.reverse .work-meta{order:0}.work-meta,.work-row.reverse .work-meta{padding:60px 5px 28px}.work-meta h3{font-size:3.7rem}.work-row figure{min-height:430px}.cap-intro{padding:85px 18px}.cap-intro h2{font-size:3.7rem}.cap-grid a{min-height:130px;padding:20px;grid-template-columns:35px 1fr 25px}.cap-grid h3{font-size:2.1rem}.process-image{height:60vh}.process-copy{padding:85px 22px}.process-copy h2{font-size:4rem}.finale{min-height:720px;padding:70px 18px}.finale h2{font-size:4rem}.footer{padding:70px 12px 22px}.footer-top{align-items:flex-start;flex-direction:column}.footer-top h2{font-size:4rem}.footer-top>a{width:150px;height:150px;min-width:150px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:9px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}


/* V6 complete-site extensions */
body.menu-open{overflow:hidden}.topbar .logo img{max-height:58px;object-fit:contain}.desktop-nav a[aria-current="page"]{color:var(--acid)}.mobile-nav{position:fixed;inset:0;z-index:90;background:#090a08;padding:100px 24px 30px;display:grid;grid-template-columns:minmax(220px,35%) 1fr;gap:7vw;align-items:center}.mobile-nav[hidden]{display:none}.mobile-nav-brand img{max-height:68vh;object-fit:contain}.mobile-nav nav{display:flex;flex-direction:column}.mobile-nav nav a{font:900 clamp(2.7rem,6vw,6rem)/1 var(--cond);letter-spacing:-.04em;text-transform:uppercase;text-decoration:none;padding:10px 0;border-bottom:1px solid var(--line)}.mobile-nav nav a:hover{color:var(--acid)}
.event-worlds{padding:110px 22px;background:#dfe2dc;color:#0a0b09}.world-grid{width:var(--wide);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#151713}.world-panel{min-height:70vh;position:relative;overflow:hidden;text-decoration:none}.world-panel picture,.world-panel img{height:100%}.world-panel img{object-fit:cover;transition:transform .7s}.world-panel:hover img{transform:scale(1.035)}.world-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.93),transparent 63%)}
.work-meta>a{display:inline-block;margin-top:15px;color:var(--acid);font:800 10px/1 var(--cond);letter-spacing:.14em;text-transform:uppercase;text-decoration:none}.brand-pair{display:grid;grid-template-columns:1fr 1fr;background:#020302;border-top:1px solid var(--line)}.brand-pair>a{min-height:55vh;padding:6vw;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;text-decoration:none;border-right:1px solid var(--line);position:relative;overflow:hidden}.brand-pair>a:last-child{border-right:0}.brand-pair>a:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(152,255,84,.08),transparent 62%)}.brand-pair img{position:relative;max-width:580px;max-height:290px;object-fit:contain}.brand-pair>a:last-child img{max-width:190px}.brand-pair span,.brand-pair b{position:relative;display:block;margin-top:20px;font:800 11px/1.5 var(--cond);letter-spacing:.14em;text-transform:uppercase}.brand-pair span{color:#a9afa4}.brand-pair b{font-size:2rem;color:white}
.page-hero{min-height:86vh;padding-top:82px;position:relative;overflow:hidden;display:flex;align-items:flex-end}.page-hero-media{position:absolute;inset:82px 0 0}.page-hero-media picture,.page-hero-media img{height:100%}.page-hero-media img{object-fit:cover;filter:saturate(.92) contrast(1.06)}.page-hero:after{content:"";position:absolute;inset:82px 0 0;background:linear-gradient(90deg,rgba(9,10,8,.95),rgba(9,10,8,.63) 48%,rgba(9,10,8,.08)),linear-gradient(0deg,rgba(9,10,8,.9),transparent 62%)}.page-hero-grid{position:absolute;inset:82px 0 0;z-index:2;background-image:linear-gradient(90deg,rgba(255,255,255,.075) 1px,transparent 1px);background-size:calc(100% / 12) 100%;pointer-events:none}.page-hero-copy{position:relative;z-index:3;width:var(--wide);margin:0 auto;padding:80px 3vw 70px}.page-hero-copy>p,.story-grid span,.motion-block span,.illumi-intro+* span,.bd-profile span,.project-intake aside>span,.download-strip span,.brand-bridge span{font:800 10px/1.4 var(--cond);letter-spacing:.2em;text-transform:uppercase;color:var(--acid)}.page-hero h1{font:900 clamp(4.5rem,9vw,10.5rem)/.82 var(--cond);letter-spacing:-.06em;text-transform:uppercase;margin:20px 0 25px;max-width:1200px}.page-hero-copy>span{display:block;max-width:690px;color:#d0d3cd;font-size:1.15rem;line-height:1.7}.manifesto.compact{min-height:55vh}.manifesto.compact .manifesto-copy{padding-top:8vw;padding-bottom:8vw}.story-grid{background:#dfe2dc;color:#090a08}.story-grid article{min-height:78vh;display:grid;grid-template-columns:42% 58%;border-bottom:1px solid #111}.story-grid article.reverse{grid-template-columns:58% 42%}.story-grid article.reverse>div{order:2}.story-grid article>div{padding:7vw 5vw;align-self:center}.story-grid h2{font:900 clamp(3rem,5.7vw,6.8rem)/.86 var(--cond);letter-spacing:-.055em;text-transform:uppercase;margin:20px 0}.story-grid p{color:#545950;font-size:1.05rem;line-height:1.75;max-width:560px}.story-grid picture,.story-grid article>picture,.story-grid article>picture img{height:100%}.story-grid article>picture img{object-fit:cover;min-height:78vh}.motion-block{display:grid;grid-template-columns:58% 42%;min-height:80vh;background:#050604}.motion-block video{width:100%;height:80vh;object-fit:cover}.motion-block>div{padding:7vw 5vw;align-self:center}.motion-block h2{font:900 clamp(3rem,5vw,6rem)/.87 var(--cond);letter-spacing:-.05em;text-transform:uppercase;margin:20px 0}.motion-block p{color:#9fa59b;line-height:1.75}.faq{display:grid;grid-template-columns:38% 62%;padding:110px 5vw;background:#dfe2dc;color:#090a08}.faq>div:first-child{padding-right:5vw}.faq>div:first-child p{font:800 10px/1 var(--cond);letter-spacing:.18em;color:#39770d}.faq h2{font:900 clamp(3rem,5.2vw,6rem)/.87 var(--cond);text-transform:uppercase;letter-spacing:-.05em}.faq details{border-top:1px solid #333;padding:24px 0}.faq details:last-child{border-bottom:1px solid #333}.faq summary{cursor:pointer;list-style:none;font:900 clamp(1.6rem,2.6vw,2.8rem)/1 var(--cond);text-transform:uppercase}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";float:right;color:#39770d}.faq details[open] summary:after{content:"−"}.faq details p{max-width:720px;color:#555a52;line-height:1.7}.brand-bridge,.download-strip{padding:70px 5vw;background:#151812;display:grid;grid-template-columns:1fr auto;gap:5vw;align-items:end;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.brand-bridge h2,.download-strip h2{font:900 clamp(2.8rem,5vw,5.8rem)/.87 var(--cond);text-transform:uppercase;letter-spacing:-.05em;margin:18px 0}.brand-bridge p,.download-strip p{max-width:720px;color:#9ca298;line-height:1.7}.bridge-link,.download-strip>a{display:flex;min-width:190px;min-height:100px;padding:25px;align-items:center;justify-content:center;border:1px solid var(--acid);color:var(--acid);font:900 11px/1.5 var(--cond);letter-spacing:.15em;text-align:center;text-decoration:none}.illumi-intro{min-height:62vh;padding:100px 6vw;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;background:#030403}.illumi-intro img{max-width:760px;max-height:260px;object-fit:contain}.illumi-intro p{max-width:760px;color:#acb1a8;font-size:1.1rem;line-height:1.75;margin:30px 0}.download-strip{grid-template-columns:1fr auto auto;background:#dfe2dc;color:#090a08}.download-strip p{color:#555a52}.download-strip>a{color:#090a08;border-color:#090a08}.bd-profile{display:grid;grid-template-columns:42% 58%;gap:6vw;padding:110px 6vw;background:#dfe2dc;color:#090a08}.bd-photo picture,.bd-photo img{height:100%}.bd-photo img{object-fit:cover;max-height:780px}.profile-name{font:900 clamp(4rem,7vw,8rem)/.82 var(--cond);text-transform:uppercase;letter-spacing:-.06em;margin:20px 0}.bd-profile p{font-size:1.12rem;line-height:1.75;color:#545950;max-width:700px}.contact-actions{display:flex;gap:24px;margin:30px 0}.bd-profile .under{color:#090a08;border-color:#090a08}.bd-profile dl{border-top:1px solid #333;margin-top:50px}.bd-profile dl>div{display:grid;grid-template-columns:140px 1fr;gap:25px;padding:22px 0;border-bottom:1px solid #333}.bd-profile dt{font:900 11px/1 var(--cond);text-transform:uppercase;color:#39770d}.bd-profile dd{margin:0;color:#545950}.project-intake{display:grid;grid-template-columns:35% 65%;gap:6vw;padding:100px 6vw;background:#dfe2dc;color:#090a08}.project-intake aside{padding-right:4vw;border-right:1px solid #333}.project-intake aside h2{font:900 clamp(3rem,5vw,5.8rem)/.87 var(--cond);text-transform:uppercase;letter-spacing:-.05em}.project-intake aside li{margin:12px 0;color:#555a52}.project-intake aside>a{display:block;margin-top:20px;color:#090a08;font-weight:bold}.project-intake form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.project-intake label{display:grid;gap:8px;font:800 10px/1 var(--cond);letter-spacing:.13em;text-transform:uppercase}.project-intake label.full,.project-intake .form-note,.project-intake button,.project-intake .form-status{grid-column:1/-1}.project-intake input,.project-intake select,.project-intake textarea{width:100%;border:1px solid #888;background:#f4f5f1;color:#090a08;padding:15px;font:400 16px/1.4 var(--body)}.project-intake textarea{min-height:180px;resize:vertical}.project-intake button{border:0;justify-self:start;cursor:pointer}.form-note{color:#62675f;font-size:.88rem;line-height:1.6}.form-status{min-height:1.5em;font-weight:bold}
@supports(animation-timeline:view()){.work-row figure img,.story-grid article>picture img{animation:image-reveal linear both;animation-timeline:view();animation-range:entry 0% cover 35%}@keyframes image-reveal{from{transform:scale(1.08);filter:saturate(.6) contrast(1.1)}to{transform:scale(1);filter:saturate(1) contrast(1)}}}
@media(max-width:1100px){.world-grid{grid-template-columns:1fr}.world-panel{min-height:65vh}.story-grid article,.story-grid article.reverse{grid-template-columns:1fr}.story-grid article.reverse>div{order:0}.story-grid article>picture img{min-height:60vh}.motion-block{grid-template-columns:1fr}.motion-block video{height:60vh}.faq{grid-template-columns:1fr;gap:40px}.download-strip{grid-template-columns:1fr 1fr}.download-strip>div{grid-column:1/-1}.bd-profile,.project-intake{grid-template-columns:1fr}.project-intake aside{border-right:0;border-bottom:1px solid #333;padding-bottom:45px}.brand-pair{grid-template-columns:1fr}.brand-pair>a{border-right:0;border-bottom:1px solid var(--line)}}
@media(max-width:720px){.mobile-nav{grid-template-columns:1fr;padding-top:80px}.mobile-nav-brand{display:none}.mobile-nav nav a{font-size:2.55rem}.page-hero{min-height:760px;padding-top:70px}.page-hero-media{inset:70px 0 0}.page-hero:after,.page-hero-grid{inset:70px 0 0}.page-hero-copy{padding:80px 18px 45px}.page-hero h1{font-size:4.4rem}.page-hero-copy>span{font-size:1rem}.event-worlds{padding:80px 12px}.world-panel{min-height:520px}.story-grid article>div{padding:70px 22px}.story-grid h2{font-size:3.5rem}.story-grid article>picture img{min-height:440px}.motion-block video{height:430px}.motion-block>div{padding:70px 22px}.motion-block h2{font-size:3.5rem}.faq{padding:80px 22px}.brand-bridge,.download-strip{grid-template-columns:1fr;padding:65px 22px}.bridge-link,.download-strip>a{width:100%}.brand-pair>a{min-height:420px;padding:60px 25px}.bd-profile,.project-intake{padding:80px 22px}.project-intake form{grid-template-columns:1fr}.project-intake label.full,.project-intake .form-note,.project-intake button,.project-intake .form-status{grid-column:auto}.contact-actions{flex-direction:column;align-items:flex-start}.bd-profile dl>div{grid-template-columns:1fr}.illumi-intro{padding:80px 22px}}


/* V6.2 corrections: single-image hero, restored duality, visible gallery and motion */
.hero-image.primary{width:54vw;height:82vh}
.gallery-preview,.portfolio-section,.portfolio-video{padding:110px 22px;background:#dfe2dc;color:#090a08}
.gallery-preview-grid,.portfolio-grid{width:var(--wide);margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#111}
.gallery-tile,.portfolio-grid figure{position:relative;min-height:430px;margin:0;overflow:hidden;background:#111;text-decoration:none}
.gallery-tile.wide,.portfolio-grid figure.span-2{grid-column:span 2}
.gallery-tile picture,.gallery-tile img,.portfolio-grid picture,.portfolio-grid img{height:100%}
.gallery-tile img,.portfolio-grid img{object-fit:cover;transition:transform .65s ease}
.gallery-tile:hover img,.portfolio-grid figure:hover img{transform:scale(1.025)}
.gallery-tile:after,.portfolio-grid figure:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.78),transparent 55%);pointer-events:none}
.gallery-tile span,.portfolio-grid figcaption{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;color:#fff;font:900 11px/1.4 var(--cond);letter-spacing:.14em;text-transform:uppercase}
.gallery-link-row{width:var(--wide);margin:30px auto 0;display:flex;justify-content:flex-end}
.home-motion{padding:115px 22px;background:#050604;color:#eceee8}
.home-motion .section-head p,.portfolio-video .section-head p{color:var(--acid)}
.home-motion-grid{width:var(--wide);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}
.home-motion-grid article{background:#090a08}
.home-motion-grid video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#000}
.home-motion-grid article>div{padding:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}
.home-motion-grid b{font:900 12px/1.2 var(--cond);letter-spacing:.12em;text-transform:uppercase}
.home-motion-grid span{color:#8f958a;font:800 10px/1.4 var(--cond);letter-spacing:.12em;text-transform:uppercase;text-align:right}
.portfolio-section.dark-gallery,.portfolio-video{background:#090a08;color:#eceee8}
.portfolio-section.dark-gallery .section-head p{color:var(--acid)}
.portfolio-section.dark-gallery .portfolio-grid,.portfolio-video .home-motion-grid{background:var(--line)}
.portfolio-hero .page-hero-media img{filter:saturate(1.03) contrast(1.06)}
@media(max-width:900px){.gallery-preview-grid,.portfolio-grid{grid-template-columns:1fr 1fr}.gallery-tile.wide,.portfolio-grid figure.span-2{grid-column:span 2}.home-motion-grid{grid-template-columns:1fr}.hero-image.primary{width:58vw}}
@media(max-width:720px){.hero-image.primary{width:92vw;height:340px}.gallery-preview,.portfolio-section,.portfolio-video,.home-motion{padding:80px 12px}.gallery-preview-grid,.portfolio-grid{grid-template-columns:1fr}.gallery-tile.wide,.portfolio-grid figure.span-2{grid-column:auto}.gallery-tile,.portfolio-grid figure{min-height:420px}.home-motion-grid article>div{flex-direction:column}.home-motion-grid span{text-align:left}}


/* V6.3 — completed gallery grids and mobile-first refinement */
@media (max-width:720px){
  :root{--wide:calc(100% - 28px)}
  html{scroll-padding-top:64px}
  body:before{opacity:.025}
  body.menu-open{overflow:hidden}

  .topbar{
    height:64px;
    padding:0 14px;
    grid-template-columns:minmax(0,1fr) 48px;
    gap:12px
  }
  .logo{width:148px}
  .menu{
    display:block;
    width:46px;
    height:46px;
    justify-self:end;
    padding:0;
    touch-action:manipulation
  }
  .mobile-nav{
    padding:78px 16px 28px;
    align-items:start;
    overflow-y:auto;
    overscroll-behavior:contain
  }
  .mobile-nav nav{width:100%}
  .mobile-nav nav a{
    font-size:clamp(1.9rem,10vw,2.55rem);
    line-height:.95;
    padding:14px 2px
  }

  .hero{
    min-height:820px;
    grid-template-rows:64px 1fr
  }
  .hero-grid{background-size:25% 100%,100% 64px}
  .hero-copy{
    grid-column:1/13;
    padding:86px 16px 350px;
    align-self:start
  }
  .hero h1{
    font-size:clamp(3.6rem,18vw,5.15rem);
    line-height:.79;
    margin:16px 0 22px
  }
  .hero h1 span:nth-child(2){
    transform:none;
    -webkit-text-stroke:1px var(--paper)
  }
  .lead{font-size:.98rem;line-height:1.55}
  .hero-actions{margin-top:24px;gap:18px}
  .solid{
    min-height:50px;
    display:inline-flex;
    align-items:center;
    justify-content:center
  }
  .hero-image.primary{
    left:0;
    right:0;
    bottom:0;
    width:100%;
    height:330px;
    clip-path:none
  }
  .hero-image.primary:after{
    background:linear-gradient(180deg,rgba(9,10,8,.42),transparent 30%)
  }
  .hero-stamp,.vertical-type,.hero-index{display:none}

  .manifesto{
    grid-template-columns:30px 1fr;
    min-height:0
  }
  .rail-label{padding:16px 8px;font-size:8px}
  .manifesto-copy{padding:72px 18px}
  .manifesto h2{font-size:clamp(2.75rem,13vw,3.65rem)}
  .manifesto p{margin:28px 0;font-size:1rem}

  .duality,.event-worlds{padding:70px 14px}
  .section-head{gap:14px;margin-bottom:28px}
  .section-head p{padding-top:0}
  .section-head h2{
    font-size:clamp(2.7rem,13vw,3.45rem);
    line-height:.9
  }
  .duality-panel,.world-panel{min-height:470px}
  .panel-copy{left:20px;right:20px;bottom:20px}
  .panel-copy h3{font-size:clamp(2.55rem,13vw,3.25rem)}

  .work-index{padding:76px 0}
  .work-head{padding-bottom:24px}
  .work-head h2{font-size:clamp(3.25rem,16vw,4.25rem)}
  .work-row,.work-row.reverse{grid-template-columns:1fr}
  .work-meta,.work-row.reverse .work-meta{padding:48px 2px 24px}
  .work-meta>b{font-size:3rem}
  .work-meta>span{margin:20px 0 14px}
  .work-meta h3{font-size:clamp(2.8rem,14vw,3.65rem)}
  .work-row figure{
    min-height:0;
    aspect-ratio:4/3
  }

  .cap-intro{padding:72px 18px}
  .cap-intro h2{font-size:clamp(2.9rem,14vw,3.7rem)}
  .cap-grid a{
    min-height:116px;
    padding:18px 16px;
    grid-template-columns:30px 1fr 22px
  }
  .cap-grid h3{font-size:clamp(1.85rem,9vw,2.25rem)}

  .process-image{
    position:relative;
    height:auto;
    aspect-ratio:4/3
  }
  .process-copy{padding:72px 18px}
  .process-copy h2{font-size:clamp(3rem,14vw,3.8rem);margin-bottom:36px}
  .process-copy li{grid-template-columns:42px 1fr}

  .page-hero{
    min-height:620px;
    padding-top:64px
  }
  .page-hero-media{inset:64px 0 0}
  .page-hero:after,.page-hero-grid{inset:64px 0 0}
  .page-hero-copy{padding:62px 14px 38px}
  .page-hero h1{
    font-size:clamp(3.1rem,15vw,4.15rem);
    line-height:.84
  }
  .page-hero-copy>span{font-size:.98rem;line-height:1.55}

  .story-grid article>div{padding:54px 18px}
  .story-grid h2{font-size:clamp(2.75rem,13vw,3.45rem)}
  .story-grid article>picture img{
    min-height:0;
    aspect-ratio:4/3
  }
  .motion-block{min-height:0}
  .motion-block video{
    height:auto;
    aspect-ratio:16/9
  }
  .motion-block>div{padding:54px 18px}
  .motion-block h2{font-size:clamp(2.75rem,13vw,3.45rem)}

  .faq{padding:68px 18px;gap:28px}
  .faq h2{font-size:clamp(2.8rem,13vw,3.5rem)}
  .faq summary{font-size:clamp(1.45rem,7vw,1.9rem)}

  .gallery-preview,.portfolio-section,.portfolio-video,.home-motion{
    padding:68px 14px
  }
  .gallery-preview-grid,.portfolio-grid{grid-template-columns:1fr}
  .gallery-tile.wide,.portfolio-grid figure.span-2{grid-column:auto}
  .gallery-tile,.portfolio-grid figure{
    min-height:0;
    aspect-ratio:4/3
  }
  .gallery-tile.wide,.portfolio-grid figure.span-2{aspect-ratio:16/10}
  .portfolio-grid figure.portrait{aspect-ratio:4/5}
  .gallery-tile span,.portfolio-grid figcaption{
    left:16px;
    right:16px;
    bottom:14px;
    font-size:10px
  }
  .home-motion-grid video{height:auto;aspect-ratio:16/9}
  .home-motion-grid article>div{padding:17px;gap:8px}

  .brand-bridge,.download-strip{padding:56px 18px}
  .brand-bridge h2,.download-strip h2{font-size:clamp(2.75rem,13vw,3.5rem)}
  .bridge-link,.download-strip>a{min-height:72px}
  .brand-pair>a{min-height:330px;padding:48px 22px}
  .brand-pair img{max-height:180px}

  .bd-profile,.project-intake{padding:68px 18px}
  .profile-name{font-size:clamp(3.2rem,15vw,4.3rem)}
  .contact-actions{gap:16px}

  .finale{min-height:600px;padding:60px 18px}
  .finale h2{font-size:clamp(3rem,14vw,3.8rem)}

  .footer{padding:58px 14px 22px}
  .footer-top{gap:30px;padding-bottom:42px}
  .footer-top h2{font-size:clamp(3rem,14vw,3.8rem)}
  .footer-top>a{
    width:118px;
    height:118px;
    min-width:118px
  }
  .footer-grid{padding:34px 0;gap:24px}
  .footer-brand img{max-width:190px}
  .footer-bottom{line-height:1.5}
}

@media (max-width:390px){
  .hero h1{font-size:3.55rem}
  .page-hero h1{font-size:3.05rem}
  .mobile-nav nav a{font-size:2rem}
}


/* V6.4 — real-device mobile width hardening (iPhone + Pixel) */
html,body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
  overscroll-behavior-x:none;
}
@supports (overflow:clip){html,body{overflow-x:clip}}
body{position:relative}
main,header,footer,section,article,aside,nav,div,figure,picture,form,
.hero-copy,.page-hero-copy,.manifesto-copy,.work-meta,.panel-copy,
.cap-intro,.process-copy,.story-grid article>div,.motion-block>div,
.footer-top,.footer-grid,.footer-bottom,.bd-profile,.project-intake{
  min-width:0;
  max-width:100%;
}
picture,video,iframe,svg,canvas{max-width:100%}
input,select,textarea,button{min-width:0;max-width:100%}
.topbar,.mobile-nav{max-width:100vw}

@media (max-width:720px){
  :root{--wide:calc(100% - 32px)}
  .topbar{
    width:100%;
    max-width:100%;
    padding-left:max(14px,env(safe-area-inset-left));
    padding-right:max(14px,env(safe-area-inset-right));
  }
  .mobile-nav{
    width:100%;
    max-width:100%;
    padding-left:max(16px,env(safe-area-inset-left));
    padding-right:max(16px,env(safe-area-inset-right));
    overflow-x:hidden
  }
  .mobile-nav nav,.mobile-nav nav a{min-width:0;max-width:100%}
  .mobile-nav nav a{white-space:normal;overflow-wrap:break-word}

  .hero-copy,.page-hero-copy,.manifesto-copy,.work-meta,
  .cap-intro,.process-copy,.story-grid article>div,.motion-block>div,
  .faq,.brand-bridge,.download-strip,.bd-profile,.project-intake,
  .finale,.footer{width:100%;max-width:100%}

  .hero h1{font-size:clamp(3.25rem,15vw,4.35rem)}
  .page-hero h1{font-size:clamp(2.9rem,13vw,3.85rem)}
  .manifesto h2,.section-head h2,.story-grid h2,.motion-block h2,
  .faq h2,.brand-bridge h2,.download-strip h2,.cap-intro h2,
  .process-copy h2,.footer-top h2,.finale h2{
    font-size:clamp(2.55rem,11.5vw,3.35rem)
  }
  .work-head h2{font-size:clamp(3rem,14vw,3.85rem)}
  .work-meta h3{font-size:clamp(2.55rem,12vw,3.35rem)}
  .profile-name{font-size:clamp(2.9rem,13vw,3.9rem)}

  .hero h1,.page-hero h1,.manifesto h2,.section-head h2,
  .work-head h2,.work-meta h3,.cap-intro h2,.process-copy h2,
  .story-grid h2,.motion-block h2,.faq h2,.brand-bridge h2,
  .download-strip h2,.profile-name,.project-intake h2,
  .footer-top h2,.finale h2,.panel-copy h3{
    max-width:100%;
    overflow-wrap:anywhere;
    word-break:normal
  }

  .solid,.under,.bridge-link,.download-strip>a,.finale>a,
  .project-intake button{
    max-width:100%;
    white-space:normal;
    overflow-wrap:break-word;
    line-height:1.3
  }
  .solid b,.finale>a b{margin-left:12px}

  .section-head,.work-head,.work-row,.duality-grid,.world-grid,
  .gallery-preview-grid,.portfolio-grid,.home-motion-grid,
  .footer-top,.footer-grid,.footer-bottom{
    width:var(--wide);
    max-width:var(--wide)
  }

  .gallery-tile,.portfolio-grid figure,.world-panel,.duality-panel,
  .work-row figure,.story-grid article>picture{width:100%;max-width:100%}
  .footer-bottom{overflow-wrap:anywhere}
}

@media (max-width:390px){
  :root{--wide:calc(100% - 26px)}
  .logo{width:138px}
  .hero-copy{padding-left:14px;padding-right:14px}
  .hero h1{font-size:clamp(3rem,14.5vw,3.55rem)}
  .page-hero h1{font-size:clamp(2.65rem,12.5vw,3.15rem)}
  .mobile-nav nav a{font-size:clamp(1.72rem,8.6vw,1.95rem)}
  .footer-top>a{width:104px;height:104px;min-width:104px}
}


/* V6.5 — portal credibility, gateway architecture and mobile typography */
.trust-strip{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#0d0f0b;
  padding:34px 0 30px;
  overflow:hidden;
}
.trust-heading{
  width:var(--wide);
  margin:0 auto 24px;
  display:grid;
  grid-template-columns:280px 1fr;
  gap:34px;
  align-items:end;
}
.trust-heading p,
.gateway-intro>p{
  margin:0;
  color:var(--acid);
  font:800 10px/1.4 var(--cond);
  letter-spacing:.18em;
  text-transform:uppercase;
}
.trust-heading h2{
  margin:0;
  max-width:900px;
  font:900 clamp(1.8rem,3.2vw,3.7rem)/.92 var(--cond);
  letter-spacing:-.04em;
  text-transform:uppercase;
}
.trust-viewport{
  width:100%;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
.trust-track{
  display:flex;
  width:max-content;
  transform:translateZ(0);
}
.trust-track.marquee-ready{
  animation:trust-scroll 30s linear infinite;
}
.trust-group{
  display:flex;
  gap:12px;
  margin:0;
  padding:0 12px 0 0;
  list-style:none;
}
.trust-logo{
  width:220px;
  height:92px;
  flex:0 0 220px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px;
  border:1px solid rgba(236,238,232,.28);
  color:#d8dbd4;
  background:rgba(255,255,255,.025);
  font:900 12px/1 var(--cond);
  letter-spacing:.13em;
}
.trust-logo small{
  color:#697066;
  font:800 9px/1 var(--cond);
}
.trust-viewport:hover .trust-track,
.trust-viewport:focus-within .trust-track{animation-play-state:paused}
@keyframes trust-scroll{
  to{transform:translateX(-50%)}
}

.brand-gateways{
  padding:110px 22px;
  background:#dfe2dc;
  color:#090a08;
}
.gateway-intro{
  width:var(--wide);
  margin:0 auto 44px;
  display:grid;
  grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);
  gap:50px;
}
.gateway-intro h2{
  margin:18px 0 0;
  font:900 clamp(3rem,5.8vw,6.9rem)/.86 var(--cond);
  letter-spacing:-.055em;
  text-transform:uppercase;
}
.gateway-context{
  align-self:end;
  max-width:680px;
}
.gateway-context p{
  color:#4f554c;
  line-height:1.75;
}
.gateway-context a{
  color:#090a08;
  font-weight:800;
  text-decoration-thickness:1px;
  text-underline-offset:4px;
}
.gateway-grid{
  width:var(--wide);
  margin:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  background:#090a08;
}
.gateway-card{
  min-height:640px;
  position:relative;
  overflow:hidden;
  color:white;
  text-decoration:none;
}
.gateway-card picture,
.gateway-card img{
  width:100%;
  height:100%;
}
.gateway-card img{
  object-fit:cover;
  filter:saturate(.86) contrast(1.08);
  transition:transform .65s ease,filter .65s ease;
}
.gateway-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.2) 68%);
}
.gateway-card:hover img,
.gateway-card:focus-visible img{
  transform:scale(1.035);
  filter:saturate(1) contrast(1.05);
}
.gateway-copy{
  position:absolute;
  z-index:2;
  left:30px;
  right:30px;
  bottom:28px;
}
.gateway-copy span{
  color:var(--acid);
  font:900 10px/1 var(--cond);
  letter-spacing:.16em;
}
.gateway-copy h3{
  margin:15px 0 20px;
  max-width:720px;
  font:900 clamp(2.4rem,4.3vw,5.1rem)/.88 var(--cond);
  letter-spacing:-.045em;
  text-transform:uppercase;
}
.gateway-copy b{
  font:900 10px/1.4 var(--cond);
  letter-spacing:.14em;
  text-transform:uppercase;
}

@media(max-width:900px){
  .trust-heading,
  .gateway-intro{
    grid-template-columns:1fr;
    gap:16px;
  }
  .gateway-grid{grid-template-columns:1fr}
  .gateway-card{min-height:520px}
}

@media(max-width:720px){
  /* Prevent the mobile headings from splitting words or overrunning iPhone/Pixel widths. */
  .hero h1,
  .page-hero h1,
  .manifesto h2,
  .section-head h2,
  .work-head h2,
  .work-meta h3,
  .cap-intro h2,
  .process-copy h2,
  .story-grid h2,
  .motion-block h2,
  .faq h2,
  .brand-bridge h2,
  .download-strip h2,
  .profile-name,
  .project-intake h2,
  .footer-top h2,
  .finale h2,
  .panel-copy h3,
  .gateway-intro h2,
  .gateway-copy h3{
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
    text-wrap:balance;
  }
  .panel-copy{
    left:18px;
    right:18px;
    bottom:18px;
  }
  .panel-copy h3{
    max-width:14ch;
    font-size:clamp(1.85rem,8.4vw,2.45rem);
    line-height:.93;
    letter-spacing:-.035em;
  }
  .duality-panel,.world-panel{min-height:440px}
  .trust-strip{padding:28px 0 24px}
  .trust-heading{width:calc(100% - 28px);margin-bottom:18px}
  .trust-heading h2{font-size:clamp(1.65rem,7.7vw,2.2rem);line-height:.96}
  .trust-logo{width:180px;flex-basis:180px;height:78px}
  .brand-gateways{padding:72px 14px}
  .gateway-intro,.gateway-grid{width:100%}
  .gateway-intro h2{font-size:clamp(2.45rem,11vw,3.2rem)}
  .gateway-card{min-height:430px}
  .gateway-copy{left:18px;right:18px;bottom:18px}
  .gateway-copy h3{
    max-width:15ch;
    font-size:clamp(2rem,9.2vw,2.75rem);
  }
  .process-copy h3{
    font-size:clamp(1.35rem,6.3vw,1.9rem);
    line-height:1.02;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
  }
}

@media(max-width:390px){
  .panel-copy h3{font-size:clamp(1.72rem,8.1vw,2.05rem)}
  .gateway-copy h3{font-size:clamp(1.85rem,8.8vw,2.3rem)}
}

@media(prefers-reduced-motion:reduce){
  .trust-track.marquee-ready{animation:none}
  .trust-viewport{overflow-x:auto;mask-image:none;-webkit-mask-image:none}
  .gateway-card img{transition:none}
}


/* V6.8 — custom identity system, human display copy and restrained type scale */
:root{--display-measure:16ch}

/* Display text remains confident without overpowering the work */
.hero h1{
  font-size:clamp(3.15rem,5.45vw,5.75rem);
  line-height:.91;
  max-width:13ch;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.hero h1 span:nth-child(2){transform:none}
.manifesto h2{
  font-size:clamp(2.55rem,4.25vw,4.65rem);
  line-height:.96;
  max-width:15.5ch;
  letter-spacing:-.04em;
  text-wrap:balance;
}
.section-head h2{
  font-size:clamp(2.25rem,3.5vw,3.85rem);
  line-height:.97;
  max-width:18ch;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.panel-copy h3{
  font-size:clamp(1.72rem,2.25vw,2.55rem);
  line-height:1;
  max-width:18ch;
  letter-spacing:-.03em;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  text-wrap:balance;
}
.work-head h2{
  font-size:clamp(2.45rem,3.7vw,4rem);
  line-height:.96;
  letter-spacing:-.035em;
}
.work-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:28px;
  align-items:end;
}
.work-head-mark{
  width:112px;
  height:auto;
  opacity:.72;
  filter:drop-shadow(0 0 18px rgba(152,255,84,.08));
}
.work-row,.work-row.reverse{
  grid-template-columns:minmax(0,45%) minmax(0,55%);
  isolation:isolate;
}
.work-row.reverse{grid-template-columns:minmax(0,55%) minmax(0,45%)}
.work-row>*{min-width:0;max-width:100%}
.work-meta,.work-row.reverse .work-meta{
  min-width:0;
  max-width:100%;
  overflow:visible;
  position:relative;
  z-index:2;
  padding:clamp(42px,5vw,82px) clamp(28px,4vw,66px);
}
.work-meta h3{
  font-size:clamp(1.95rem,2.7vw,2.95rem);
  line-height:.99;
  max-width:100%;
  letter-spacing:-.03em;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  text-wrap:balance;
}
.work-row picture,.work-row img{position:relative;z-index:1;min-width:0;max-width:100%}
.cap-intro h2{
  font-size:clamp(2.25rem,3.45vw,3.75rem);
  line-height:.97;
  letter-spacing:-.035em;
}
.cap-grid h3{font-size:clamp(1.5rem,2vw,2.2rem);line-height:1}
.process-copy h2{
  font-size:clamp(2.3rem,3.45vw,3.8rem);
  line-height:.97;
  letter-spacing:-.035em;
}
.process-copy h3{font-size:clamp(1.35rem,1.7vw,1.8rem);line-height:1.03}
.finale h2{
  font-size:clamp(2.7rem,4.05vw,4.4rem);
  line-height:.96;
  max-width:17ch;
  letter-spacing:-.04em;
  text-wrap:balance;
}
.footer-top h2{
  font-size:clamp(2.25rem,3.3vw,3.6rem);
  line-height:.97;
  letter-spacing:-.035em;
}
.page-hero h1{
  font-size:clamp(2.85rem,4.65vw,4.95rem);
  line-height:.94;
  max-width:15ch;
  letter-spacing:-.04em;
  text-wrap:balance;
}
.story-grid h2{
  font-size:clamp(2rem,2.85vw,3.1rem);
  line-height:.99;
  max-width:16ch;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.motion-block h2,.faq h2,.brand-bridge h2,.download-strip h2,.gateway-intro h2{
  font-size:clamp(2.05rem,3vw,3.3rem);
  line-height:.98;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.gateway-copy h3{
  font-size:clamp(1.7rem,2.25vw,2.55rem);
  line-height:.99;
  max-width:19ch;
  text-wrap:balance;
}
.profile-name,.project-intake aside h2{
  font-size:clamp(2.4rem,3.55vw,3.85rem);
  line-height:.96;
  letter-spacing:-.04em;
}

/* Alternate logo artwork functions as visual architecture */
.hero,.duality,.work-index,.process,.brand-gateways,.page-hero,.story-grid,.motion-block,
.download-strip,.portfolio-video,.brand-bridge,.project-intake,footer{position:relative}
.home-hero-crest,.duality-brand-seal,.work-head-mark,.process-brand-mark,.gateway-brand-seal,
.brand-ornament,.page-brand-mark,.section-brand-mark,.footer-signature-mark{
  pointer-events:none;
  user-select:none;
}
.home-hero-crest{
  position:absolute;
  left:-3.5vw;
  bottom:-11vh;
  width:clamp(260px,33vw,570px);
  height:auto;
  opacity:.13;
  z-index:1;
  mix-blend-mode:screen;
  filter:saturate(.9) drop-shadow(0 0 35px rgba(152,255,84,.05));
  transform:rotate(-8deg);
}
.hero-copy,.hero-image,.hero-stamp,.vertical-type,.hero-index{position:relative;z-index:3}
.duality-brand-seal{
  position:absolute;
  left:50%;
  top:48%;
  width:84px;
  height:auto;
  z-index:5;
  transform:translate(-50%,-50%) rotate(4deg);
  background:#090a08;
  border:1px solid rgba(152,255,84,.55);
  padding:10px;
  box-shadow:0 16px 40px rgba(0,0,0,.28);
}
.process-brand-mark{
  position:absolute;
  right:-55px;
  bottom:8%;
  width:clamp(210px,23vw,390px);
  height:auto;
  opacity:.075;
  z-index:2;
  transform:rotate(8deg);
  mix-blend-mode:screen;
}
.gateway-brand-seal{
  position:absolute;
  top:24px;
  right:24px;
  width:74px!important;
  height:auto!important;
  z-index:3;
  opacity:.8;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.45));
}
.gateway-brand-seal-stacked{width:88px!important}
.brand-ornament{
  position:absolute;
  object-fit:contain;
  z-index:0;
  filter:saturate(.9);
}
.brand-ornament-crest{
  width:clamp(230px,28vw,480px);
  height:auto;
  right:2vw;
  bottom:-10%;
  opacity:.085;
  transform:rotate(7deg);
}
.brand-ornament-stacked{
  width:clamp(245px,27vw,450px);
  height:auto;
  left:-1vw;
  bottom:-9%;
  opacity:.095;
  transform:rotate(-6deg);
}
.manifesto>*:not(.brand-ornament),.brand-gateways>*:not(.brand-ornament){position:relative;z-index:1}
.page-brand-mark{
  position:absolute;
  right:clamp(18px,4vw,72px);
  top:clamp(104px,14vh,170px);
  width:clamp(185px,20vw,340px);
  height:auto;
  object-fit:contain;
  opacity:.2;
  z-index:2;
  mix-blend-mode:screen;
  filter:saturate(.95) drop-shadow(0 0 24px rgba(0,0,0,.3));
}
.page-brand-mark-stacked{transform:rotate(3deg)}
.page-brand-mark-crest{transform:rotate(-3deg)}
.section-brand-mark{
  position:absolute;
  width:clamp(150px,18vw,310px);
  height:auto;
  opacity:.12;
  z-index:2;
  object-fit:contain;
  mix-blend-mode:screen;
  filter:saturate(.9);
}
.section-brand-mark-crest{right:-2vw;bottom:-7%;transform:rotate(7deg)}
.section-brand-mark-stacked{left:-2vw;bottom:-8%;transform:rotate(-6deg)}
.story-grid>*:not(.section-brand-mark),.motion-block>*:not(.section-brand-mark),
.download-strip>*:not(.section-brand-mark),.portfolio-video>*:not(.section-brand-mark),
.brand-bridge>*:not(.section-brand-mark),.project-intake>*:not(.section-brand-mark){position:relative;z-index:3}
.footer-signature-mark{
  width:52px;
  height:auto;
  opacity:.9;
  flex:0 0 auto;
  margin-right:14px;
}
.footer-bottom{align-items:center}

/* Remove the visual footprint of the retired placeholder logo marquee if cached HTML is mixed accidentally */
.trust-strip{display:none!important}

@media(max-width:1020px) and (min-width:721px){
  .hero h1{font-size:clamp(2.95rem,6.2vw,4.45rem)}
  .work-row,.work-row.reverse{grid-template-columns:minmax(0,47%) minmax(0,53%)}
  .work-meta h3{font-size:clamp(1.8rem,3.3vw,2.45rem)}
  .story-grid h2{font-size:clamp(1.95rem,3.35vw,2.75rem)}
  .page-brand-mark{width:clamp(155px,18vw,235px);opacity:.16}
  .work-head-mark{width:92px}
}

@media(max-width:720px){
  .hero h1{
    font-size:clamp(2.18rem,9.1vw,2.7rem);
    line-height:.97;
    max-width:12.5ch;
  }
  .page-hero h1{
    font-size:clamp(2rem,8.4vw,2.5rem);
    line-height:.97;
    max-width:14ch;
  }
  .manifesto h2,.section-head h2,.work-head h2,.cap-intro h2,
  .process-copy h2,.story-grid h2,.motion-block h2,.faq h2,
  .brand-bridge h2,.download-strip h2,.footer-top h2,.finale h2,
  .gateway-intro h2{
    font-size:clamp(1.72rem,7.3vw,2.15rem);
    line-height:1;
    max-width:100%;
    letter-spacing:-.03em;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
  }
  .panel-copy h3{
    font-size:clamp(1.38rem,5.9vw,1.72rem);
    line-height:1.03;
    max-width:17ch;
  }
  .work-head{grid-template-columns:1fr auto;gap:16px}
  .work-key{grid-column:1/-1;order:3}
  .work-head-mark{width:72px}
  .work-row,.work-row.reverse{grid-template-columns:1fr}
  .work-row.reverse .work-meta{order:0}
  .work-meta,.work-row.reverse .work-meta{width:100%;padding:40px 14px 24px}
  .work-meta h3{
    font-size:clamp(1.52rem,6.4vw,1.9rem);
    line-height:1.02;
    max-width:17ch;
  }
  .work-row figure{width:100%;aspect-ratio:4/3;min-height:0}
  .cap-grid h3{font-size:clamp(1.28rem,5.5vw,1.58rem)}
  .process-copy h3{font-size:clamp(1.08rem,4.7vw,1.36rem)}
  .gateway-copy h3{font-size:clamp(1.45rem,6.2vw,1.82rem);max-width:18ch}
  .profile-name,.project-intake aside h2{font-size:clamp(1.85rem,7.8vw,2.28rem)}
  .home-hero-crest{width:260px;left:-105px;bottom:-40px;opacity:.09}
  .duality-brand-seal{width:64px;top:50%;padding:8px}
  .page-brand-mark{top:88px;right:8px;width:118px;opacity:.14}
  .section-brand-mark{width:175px;opacity:.075}
  .section-brand-mark-crest{right:-62px;bottom:-3%}
  .section-brand-mark-stacked{left:-68px;bottom:-3%}
  .process-brand-mark{width:210px;right:-86px;bottom:1%;opacity:.055}
  .gateway-brand-seal{width:58px!important;top:16px;right:16px}
  .gateway-brand-seal-stacked{width:68px!important}
  .brand-ornament-crest{width:230px;right:-70px;opacity:.055}
  .brand-ornament-stacked{width:235px;left:-78px;opacity:.06}
  .footer-signature-mark{width:42px;margin:0 0 10px}
  .footer-bottom{align-items:flex-start}
}

@media(max-width:390px){
  .hero h1{font-size:clamp(2.05rem,8.7vw,2.45rem)}
  .page-hero h1{font-size:clamp(1.9rem,8vw,2.32rem)}
  .panel-copy h3{font-size:clamp(1.32rem,5.6vw,1.62rem)}
  .work-meta h3{font-size:clamp(1.45rem,6.1vw,1.76rem)}
}

@media(prefers-reduced-motion:reduce){
  .gateway-card img{transition:none}
}


/* V6.9 — custom edgy industrial-luxury homepage rebuild */
.home .hero-v69{
  min-height:auto;
  display:block;
  padding:82px 0 0;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 8% 38%,rgba(152,255,84,.07),transparent 26%),
    linear-gradient(135deg,#080a09 0%,#0b0e0c 45%,#050706 100%);
}
.home .hero-v69 .hero-grid{
  inset:82px 0 0;
  background-image:
    linear-gradient(90deg,rgba(236,238,232,.075) 1px,transparent 1px),
    linear-gradient(rgba(236,238,232,.055) 1px,transparent 1px);
  background-size:calc(100% / 12) 100%,100% 82px;
  opacity:.58;
}
.hero-v69-shell{
  position:relative;
  z-index:3;
  width:var(--wide);
  min-height:calc(100svh - 82px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(360px,.84fr) minmax(520px,1.16fr);
  gap:clamp(34px,5vw,90px);
  align-items:stretch;
}
.home .hero-v69 .hero-copy{
  min-width:0;
  grid-column:auto;
  grid-row:auto;
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(72px,9vh,128px) 0 clamp(56px,7vh,90px);
  position:relative;
  z-index:4;
}
.hero-brand-lockup{
  display:grid;
  grid-template-columns:116px minmax(0,1fr);
  gap:20px;
  align-items:center;
  margin-bottom:22px;
}
.hero-lockup-stacked{
  width:116px;
  height:116px;
  object-fit:contain;
  opacity:.92;
  filter:drop-shadow(0 10px 24px rgba(0,0,0,.38));
}
.home .hero-v69 .micro{margin:0;max-width:36ch}
.home .hero-v69 h1{
  font:900 clamp(3.15rem,5.55vw,6.7rem)/.86 var(--cond);
  letter-spacing:-.055em;
  text-transform:uppercase;
  margin:12px 0 26px;
  max-width:8.9ch;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
.home .hero-v69 h1 span{display:block}
.home .hero-v69 h1 span:nth-child(2){
  color:transparent;
  -webkit-text-stroke:1.25px var(--paper);
  transform:none;
}
.home .hero-v69 .lead{
  max-width:55ch;
  font-size:clamp(.98rem,1.05vw,1.13rem);
  line-height:1.72;
}
.home .hero-v69 .hero-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:20px 26px;
  margin-top:30px;
}
.hero-brand-line{
  margin-top:42px;
  padding-top:20px;
  border-top:1px solid var(--line);
  display:flex;
  align-items:center;
  gap:14px;
  color:#7f877d;
  font:800 9px/1.35 var(--cond);
  letter-spacing:.17em;
  text-transform:uppercase;
}
.hero-brand-line img{width:44px;height:52px;object-fit:contain;opacity:.85}
.home .hero-v69 .hero-image.primary{
  position:relative;
  inset:auto;
  width:auto;
  height:auto;
  min-width:0;
  min-height:680px;
  margin:clamp(34px,5vh,62px) 0;
  clip-path:polygon(5% 0,100% 0,100% 94%,95% 100%,0 100%,0 6%);
  border:1px solid rgba(236,238,232,.24);
  box-shadow:0 32px 90px rgba(0,0,0,.48);
  overflow:hidden;
  background:#111;
}
.home .hero-v69 .hero-image.primary picture,
.home .hero-v69 .hero-image.primary img{width:100%;height:100%}
.home .hero-v69 .hero-image.primary img{
  object-fit:cover;
  object-position:center center;
  filter:saturate(.92) contrast(1.04);
}
.home .hero-v69 .hero-image.primary:after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(5,7,6,.2),transparent 25%),
    linear-gradient(0deg,rgba(5,7,6,.45),transparent 28%);
  pointer-events:none;
}
.home .hero-v69 .hero-image.primary:before{
  content:"";
  position:absolute;
  z-index:4;
  inset:16px;
  border:1px solid rgba(152,255,84,.3);
  clip-path:polygon(0 0,50px 0,50px 1px,1px 1px,1px 50px,0 50px,0 0,100% 0,100% 100%,0 100%);
  pointer-events:none;
}
.hero-image-badge{
  position:absolute;
  z-index:5;
  left:22px;
  bottom:22px;
  width:min(360px,calc(100% - 44px));
  display:grid;
  grid-template-columns:62px 1fr;
  gap:15px;
  align-items:center;
  padding:14px 16px;
  background:rgba(5,7,6,.88);
  border:1px solid rgba(236,238,232,.2);
  backdrop-filter:blur(10px);
}
.hero-image-badge img{width:62px!important;height:62px!important;object-fit:contain!important}
.hero-image-badge b{display:block;color:var(--acid);font:900 1.5rem/1 var(--cond)}
.hero-image-badge span{display:block;margin-top:7px;color:#aeb4aa;font:800 9px/1.35 var(--cond);letter-spacing:.15em;text-transform:uppercase}
.hero-image-rail{
  position:absolute;
  z-index:5;
  right:18px;
  top:18px;
  width:86px;
  height:170px;
  padding:10px;
  display:grid;
  place-items:center;
  background:rgba(5,7,6,.68);
  border:1px solid rgba(236,238,232,.18);
  backdrop-filter:blur(8px);
}
.hero-image-rail img{width:100%!important;height:100%!important;object-fit:contain!important}
.hero-watermark-crest,.hero-watermark-stacked{position:absolute;z-index:1;pointer-events:none;user-select:none;object-fit:contain}
.hero-watermark-crest{left:-120px;bottom:-170px;width:520px;height:auto;opacity:.11;transform:rotate(-8deg);mix-blend-mode:screen}
.hero-watermark-stacked{right:-55px;top:132px;width:250px;height:auto;opacity:.06;transform:rotate(5deg);mix-blend-mode:screen}

.identity-spine{
  position:relative;
  z-index:4;
  overflow:hidden;
  border-top:1px solid rgba(236,238,232,.22);
  border-bottom:1px solid rgba(236,238,232,.22);
  background:#030503;
}
.identity-spine-track{
  width:var(--wide);
  min-height:94px;
  margin:auto;
  display:grid;
  grid-template-columns:64px auto 1fr 88px auto 1fr 64px;
  gap:20px;
  align-items:center;
  color:#c4c9c1;
  font:900 clamp(.72rem,.8vw,.9rem)/1 var(--cond);
  letter-spacing:.19em;
  text-transform:uppercase;
}
.identity-spine img{width:64px;height:70px;object-fit:contain}
.identity-spine img.identity-stacked{width:88px}
.identity-spine i{display:block;height:1px;background:linear-gradient(90deg,var(--acid),transparent)}

/* More visible, deliberate brand architecture */
.home .manifesto .brand-ornament-crest{opacity:.14;right:3vw;bottom:-3%;width:clamp(250px,31vw,520px)}
.home .duality-brand-seal{width:104px;padding:12px;opacity:1}
.home .work-head-mark{width:128px;opacity:.78;transform:rotate(2deg)}
.home .process-brand-mark{opacity:.13;right:-25px;width:clamp(250px,26vw,420px)}
.home .brand-ornament-stacked{opacity:.15;width:clamp(275px,30vw,490px)}
.home .footer-signature-mark{width:68px}

.work-meta{position:relative;overflow:hidden}
.work-row-brand-mark{
  position:absolute;
  right:10px;
  top:22px;
  width:96px;
  height:104px;
  object-fit:contain;
  opacity:.14;
  pointer-events:none;
  mix-blend-mode:screen;
}
.work-row-brand-mark-stacked{width:112px}

/* Restrained display hierarchy: bold, not oversized */
.home .manifesto h2{font-size:clamp(2.75rem,5.2vw,6rem);line-height:.92;max-width:17ch}
.home .section-head h2{font-size:clamp(2.45rem,4.45vw,5.15rem);line-height:.94;max-width:19ch}
.home .work-head h2{font-size:clamp(3rem,5.55vw,6.3rem);line-height:.88}
.home .work-row{grid-template-columns:minmax(0,44%) minmax(0,56%)}
.home .work-row.reverse{grid-template-columns:minmax(0,56%) minmax(0,44%)}
.home .work-meta h3{
  font-size:clamp(2.15rem,3.65vw,4.15rem);
  line-height:.94;
  max-width:10.5ch;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
.home .process-copy h2{font-size:clamp(2.6rem,4.2vw,4.9rem);line-height:.94}
.home .gateway-intro h2{font-size:clamp(2.35rem,3.8vw,4.4rem);line-height:.96;max-width:17ch}
.home .finale h2{font-size:clamp(2.8rem,5.15vw,5.9rem);line-height:.9;max-width:16ch}
.home .footer-top h2{font-size:clamp(2.55rem,4.4vw,5rem);line-height:.92}

/* Angular industrial detail without card-template styling */
.home .section-head{position:relative;padding-top:22px}
.home .section-head:before{
  content:"";
  position:absolute;
  top:0;
  left:250px;
  width:110px;
  height:2px;
  background:linear-gradient(90deg,var(--acid),transparent);
  transform:skewX(-36deg);
}
.home .work-row figure{clip-path:polygon(0 0,100% 0,100% 94%,96% 100%,0 100%)}

@media(max-width:1100px){
  .hero-v69-shell{grid-template-columns:minmax(300px,.9fr) minmax(440px,1.1fr);gap:32px}
  .home .hero-v69 h1{font-size:clamp(2.8rem,5.5vw,4.8rem)}
  .home .hero-v69 .hero-image.primary{min-height:600px}
  .identity-spine-track{grid-template-columns:56px auto 1fr 74px auto 1fr 56px;gap:14px}
  .identity-spine img{width:56px}.identity-spine img.identity-stacked{width:74px}
}

@media(max-width:820px){
  .home .hero-v69{padding-top:70px}
  .home .hero-v69 .hero-grid{inset:70px 0 0}
  .hero-v69-shell{
    min-height:auto;
    grid-template-columns:1fr;
    gap:0;
    width:100%;
  }
  .home .hero-v69 .hero-copy{padding:52px 20px 38px}
  .hero-brand-lockup{grid-template-columns:84px 1fr;gap:14px;margin-bottom:16px}
  .hero-lockup-stacked{width:84px;height:88px}
  .home .hero-v69 h1{font-size:clamp(2.45rem,9vw,3.55rem);line-height:.91;max-width:10.5ch;margin:10px 0 20px}
  .home .hero-v69 .hero-actions{align-items:flex-start;gap:16px 20px}
  .hero-brand-line{margin-top:30px}
  .home .hero-v69 .hero-image.primary{
    min-height:0;
    height:auto;
    aspect-ratio:4/4.35;
    margin:0 14px 28px;
    clip-path:polygon(5% 0,100% 0,100% 95%,95% 100%,0 100%,0 5%);
  }
  .hero-image-badge{left:12px;bottom:12px;width:calc(100% - 24px);grid-template-columns:48px 1fr;padding:10px 12px}
  .hero-image-badge img{width:48px!important;height:48px!important}
  .hero-image-rail{right:12px;top:12px;width:62px;height:118px;padding:7px}
  .hero-watermark-crest{width:330px;left:-135px;bottom:32%;opacity:.08}
  .hero-watermark-stacked{width:160px;right:-50px;top:145px;opacity:.055}
  .identity-spine-track{
    width:100%;
    min-height:82px;
    padding:10px 14px;
    grid-template-columns:48px 1fr 64px 1fr 48px;
    gap:12px;
    font-size:.62rem;
    letter-spacing:.13em;
  }
  .identity-spine i{display:none}
  .identity-spine img{width:48px;height:58px}.identity-spine img.identity-stacked{width:64px}
  .home .work-row,.home .work-row.reverse{grid-template-columns:1fr}
  .home .work-row.reverse .work-meta{order:0}
  .home .work-meta h3{font-size:clamp(1.7rem,7vw,2.25rem);max-width:15ch}
  .home .section-head:before{left:0}
  .home .duality-brand-seal{width:74px}
  .home .work-head-mark{width:80px}
}

@media(max-width:430px){
  .home .hero-v69 .hero-copy{padding-left:16px;padding-right:16px}
  .home .hero-v69 h1{font-size:clamp(2.2rem,10.7vw,2.85rem);max-width:10ch}
  .home .hero-v69 .lead{font-size:.96rem;line-height:1.62}
  .home .hero-v69 .hero-actions{flex-direction:column;align-items:flex-start}
  .home .hero-v69 .hero-image.primary{margin-left:10px;margin-right:10px;aspect-ratio:4/4.7}
  .hero-image-rail{display:none}
  .hero-image-badge span{font-size:8px;letter-spacing:.11em}
  .identity-spine-track{grid-template-columns:42px 1fr 55px 1fr 42px;gap:8px;font-size:.55rem;padding-inline:10px}
  .identity-spine img{width:42px;height:50px}.identity-spine img.identity-stacked{width:55px}
  .work-row-brand-mark{width:74px;height:82px;right:6px;top:14px}
}

/* V6.9.1 — Chrome-safe hero and decorative-logo cleanup */
.home .duality-brand-seal{display:none!important}

@media (min-width:821px){
  .home .hero-v69 .hero-v69-shell{
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
    column-gap:clamp(56px,5.5vw,104px);
  }
  .home .hero-v69 .hero-copy{
    min-width:0;
    max-width:100%;
    overflow:visible;
  }
  .home .hero-v69 h1{
    width:min(100%,8.15ch);
    max-width:8.15ch;
    font-size:clamp(3rem,4.95vw,5.85rem);
    line-height:.89;
    letter-spacing:-.052em;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
  }
  .home .hero-v69 .hero-image.primary{
    min-width:0;
    overflow:hidden;
  }
}

@media (min-width:821px) and (max-width:1180px){
  .home .hero-v69 .hero-v69-shell{
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
    column-gap:42px;
  }
  .home .hero-v69 h1{
    font-size:clamp(2.7rem,4.7vw,4.5rem);
    max-width:8.4ch;
  }
}

/* V7.0 consolidated media refresh */
.home-motion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.home-motion-grid{grid-template-columns:1fr}.duality-brand-seal{display:none!important}}
.hero-image-rail,.hero-image-badge{display:none!important}


/* V7.2 — fast, in-page portfolio image viewer */
.portfolio-grid figure{cursor:zoom-in}
.portfolio-grid figure:focus-visible{outline:3px solid var(--acid);outline-offset:4px}
.portfolio-grid figure::before{
  content:"VIEW";
  position:absolute;
  z-index:3;
  top:16px;
  right:16px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.5);
  background:rgba(5,7,6,.7);
  color:#fff;
  font:900 9px/1 var(--cond);
  letter-spacing:.16em;
  opacity:0;
  transform:translateY(-5px);
  transition:opacity .2s ease,transform .2s ease;
  pointer-events:none;
}
.portfolio-grid figure:hover::before,
.portfolio-grid figure:focus-visible::before{opacity:1;transform:none}

.gallery-viewer{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  visibility:hidden;
  opacity:0;
  transition:opacity .18s ease,visibility 0s linear .18s;
}
.gallery-viewer.is-open{
  visibility:visible;
  opacity:1;
  transition:opacity .18s ease;
}
.gallery-viewer-backdrop{
  position:absolute;
  inset:0;
  background:rgba(3,5,4,.94);
  backdrop-filter:blur(8px);
}
.gallery-viewer-shell{
  position:relative;
  z-index:1;
  width:min(1500px,100%);
  height:100%;
  padding:18px clamp(14px,2.5vw,40px) 22px;
  display:grid;
  grid-template-rows:auto 1fr;
}
.gallery-viewer-topbar{
  min-height:52px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  border-bottom:1px solid rgba(236,238,232,.18);
}
.gallery-viewer-count{
  color:var(--acid);
  font:900 10px/1 var(--cond);
  letter-spacing:.18em;
  text-transform:uppercase;
}
.gallery-viewer-close{
  border:0;
  background:none;
  color:#eceee8;
  font:900 10px/1 var(--cond);
  letter-spacing:.16em;
  text-transform:uppercase;
  cursor:pointer;
}
.gallery-viewer-close span{margin-left:10px;font-size:24px;line-height:0;vertical-align:-3px}
.gallery-viewer-stage{
  min-height:0;
  display:grid;
  grid-template-columns:56px minmax(0,1fr) 56px;
  align-items:center;
  gap:12px;
}
.gallery-viewer-figure{
  min-width:0;
  min-height:0;
  height:100%;
  margin:0;
  padding:18px 0 0;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  align-items:center;
  justify-items:center;
  gap:12px;
}
.gallery-viewer-figure img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:calc(100vh - 126px);
  object-fit:contain;
  box-shadow:0 26px 90px rgba(0,0,0,.45);
}
.gallery-viewer-figure figcaption{
  max-width:900px;
  color:#c7cbc4;
  font:800 10px/1.45 var(--cond);
  letter-spacing:.13em;
  text-align:center;
  text-transform:uppercase;
}
.gallery-viewer-nav{
  width:52px;
  height:52px;
  border:1px solid rgba(236,238,232,.28);
  background:rgba(8,10,8,.72);
  color:#eceee8;
  font-size:23px;
  cursor:pointer;
  transition:border-color .2s ease,background .2s ease,color .2s ease;
}
.gallery-viewer-nav:hover,
.gallery-viewer-nav:focus-visible{border-color:var(--acid);background:#111;color:var(--acid)}
.gallery-viewer button:focus-visible{outline:2px solid var(--acid);outline-offset:3px}
body.gallery-viewer-open{overflow:hidden}

@media(max-width:720px){
  .portfolio-grid figure::before{opacity:1;transform:none;top:10px;right:10px;padding:7px 8px;font-size:8px}
  .gallery-viewer-shell{padding:8px 10px 12px}
  .gallery-viewer-topbar{min-height:46px}
  .gallery-viewer-stage{grid-template-columns:42px minmax(0,1fr) 42px;gap:4px}
  .gallery-viewer-nav{width:40px;height:48px;font-size:20px}
  .gallery-viewer-figure{padding-top:8px;gap:8px}
  .gallery-viewer-figure img{max-height:calc(100vh - 108px)}
  .gallery-viewer-figure figcaption{font-size:8px;letter-spacing:.1em;padding:0 6px}
}

@media(prefers-reduced-motion:reduce){
  .gallery-viewer,.portfolio-grid figure::before{transition:none}
}


/* V7.3 About page and navigation refinement */
.coordinates{display:none!important}
.about-copy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,5vw,90px);max-width:1180px}
.about-copy-grid p{font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.65;color:rgba(255,255,255,.76);margin:0}
.about-value-grid,.about-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.15);border-left:1px solid rgba(255,255,255,.15)}
.about-value-grid article,.about-process-grid article{padding:clamp(24px,3vw,44px);border-right:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15);min-height:260px}
.about-value-grid span,.about-process-grid b{display:block;color:var(--acid,#b6ff00);font-family:monospace;font-size:.75rem;letter-spacing:.14em;margin-bottom:3rem}
.about-value-grid h3,.about-process-grid h3,.about-family-grid h3{font-size:clamp(1.45rem,2vw,2.15rem);line-height:1;margin:0 0 1.2rem}
.about-value-grid p,.about-process-grid p,.about-family-grid p{color:rgba(255,255,255,.68);line-height:1.6;margin:0}
.about-family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.about-family-grid article{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.14);padding:clamp(28px,4vw,52px);min-height:310px;display:flex;flex-direction:column}
.about-family-grid a{margin-top:auto;color:var(--acid,#b6ff00);text-decoration:none;text-transform:uppercase;font-size:.76rem;letter-spacing:.12em}
.about-service .btn{margin-top:42px}
@media(max-width:900px){.about-copy-grid,.about-family-grid{grid-template-columns:1fr}.about-value-grid,.about-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.about-value-grid,.about-process-grid{grid-template-columns:1fr}.about-value-grid article,.about-process-grid article{min-height:0}.about-copy-grid p{font-size:1rem}}


/* V7.4 SECTION 1 PREVIEW — expanded service-page content */
.service-depth{position:relative;padding:clamp(72px,9vw,138px) clamp(22px,5vw,82px);background:#101211;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.service-depth-intro{max-width:980px;margin:0 0 clamp(44px,6vw,78px)}
.service-depth-intro>p:first-child{margin:0 0 16px;color:var(--green,#9cff00);font:700 .75rem/1.2 Arial,sans-serif;letter-spacing:.2em}
.service-depth h2{margin:0;font-size:clamp(2.5rem,5.8vw,6.3rem);line-height:.9;max-width:13ch;text-transform:uppercase}
.service-depth-lede{max-width:850px;margin:28px 0 0;font-size:clamp(1.1rem,1.7vw,1.42rem);line-height:1.6;color:rgba(255,255,255,.78)}
.service-depth-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4vw,68px)}
.service-depth-grid>div{padding-top:24px;border-top:2px solid rgba(156,255,0,.65)}
.service-depth h3{margin:0 0 18px;font-size:clamp(1.45rem,2.2vw,2.15rem);line-height:1.05;text-transform:uppercase}
.service-depth-grid p{margin:0 0 18px;color:rgba(255,255,255,.72);font-size:1rem;line-height:1.75}
@media(max-width:980px){.service-depth-grid{grid-template-columns:1fr}.service-depth-grid>div{max-width:820px}.service-depth h2{max-width:15ch}}
@media(max-width:600px){.service-depth{padding:64px 18px}.service-depth h2{font-size:clamp(2.2rem,12vw,3.5rem)}.service-depth-grid p{font-size:.98rem;line-height:1.7}}


/* V7.4.1 About page left gutter alignment */
.about-page .section-pad{
  width:min(1500px,calc(100% - 56px));
  margin:0 auto;
  padding-left:clamp(36px,4vw,72px);
  padding-right:clamp(24px,3vw,48px);
}
.about-page .section-heading{
  max-width:1200px;
}
@media (max-width:720px){
  .about-page .section-pad{
    width:calc(100% - 28px);
    padding-left:18px;
    padding-right:18px;
  }
}


/* V7.5 — final navigation, retained pages and support resources */
.desktop-nav{gap:clamp(9px,1vw,17px)}
.desktop-nav a,.project-link{font-size:10px;letter-spacing:.105em}
.project-link{gap:12px;padding-left:18px}
.mobile-nav nav a[aria-current="page"]{color:var(--acid)}
@media (min-width:721px) and (max-width:1320px){
  .topbar{grid-template-columns:190px 1fr auto;gap:18px}
  .desktop-nav{display:none}
  .menu{display:block}
  .project-link{margin-left:auto}
}
.capabilities-page .page-content,.partners-page .page-content,.resources-page .page-content{
  width:min(1500px,calc(100% - 56px));margin:0 auto;padding:clamp(76px,9vw,138px) clamp(36px,4vw,72px)
}
.capabilities-page .page-content.light,.partners-page .page-content.light,.resources-page .page-content.light{
  width:100%;max-width:none;padding-left:max(clamp(36px,7vw,120px),calc((100vw - 1500px)/2 + 58px));padding-right:max(clamp(36px,7vw,120px),calc((100vw - 1500px)/2 + 58px));background:#dfe2dc;color:#090a08
}
.page-kicker{margin:0 0 18px;color:var(--acid);font:800 10px/1.4 var(--cond);letter-spacing:.2em;text-transform:uppercase}
.page-content.light .page-kicker{color:#39770d}
.page-heading{margin:0;max-width:16ch;font:900 clamp(2.55rem,5vw,5.7rem)/.9 var(--cond);letter-spacing:-.05em;text-transform:uppercase}
.page-lede{max-width:850px;margin:28px 0 0;color:#aeb3aa;font-size:clamp(1.05rem,1.55vw,1.32rem);line-height:1.7}
.page-content.light .page-lede{color:#50564d}
.intro-columns{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(36px,7vw,110px);align-items:start}
.intro-copy p{margin:0 0 20px;color:inherit;font-size:clamp(1.02rem,1.35vw,1.2rem);line-height:1.75}
.pathway-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:50px}
.pathway-grid article{min-height:300px;display:flex;flex-direction:column;padding:clamp(28px,4vw,50px);border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.035)}
.pathway-grid h3{margin:0 0 18px;font:900 clamp(1.45rem,2.2vw,2.2rem)/1 var(--cond);text-transform:uppercase}
.pathway-grid p{margin:0;color:#aeb3aa;line-height:1.7}
.pathway-grid a{margin-top:auto;padding-top:30px;color:var(--acid);text-decoration:none;text-transform:uppercase;font:800 10px/1.3 var(--cond);letter-spacing:.14em}
.partner-faq{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(40px,7vw,110px)}
.partner-faq details{padding:24px 0;border-top:1px solid rgba(255,255,255,.18)}
.partner-faq details:last-child{border-bottom:1px solid rgba(255,255,255,.18)}
.partner-faq summary{cursor:pointer;list-style:none;font:900 clamp(1.35rem,2vw,2rem)/1.05 var(--cond);text-transform:uppercase}
.partner-faq summary::-webkit-details-marker{display:none}
.partner-faq summary:after{content:"+";float:right;color:var(--acid)}
.partner-faq details[open] summary:after{content:"−"}
.partner-faq details p{max-width:760px;color:#aeb3aa;line-height:1.7}
.resource-download-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:50px}
.resource-download-grid article{min-height:330px;display:flex;flex-direction:column;padding:clamp(26px,3.5vw,44px);border:1px solid rgba(9,10,8,.22);background:#f1f2ee}
.resource-download-grid span{color:#39770d;font:800 10px/1.4 var(--cond);letter-spacing:.16em;text-transform:uppercase}
.resource-download-grid h3{margin:34px 0 16px;font:900 clamp(1.45rem,2vw,2.05rem)/1 var(--cond);text-transform:uppercase}
.resource-download-grid p{margin:0;color:#50564d;line-height:1.7}
.resource-download-grid a{margin-top:auto;padding-top:30px;color:#090a08;text-decoration:none;text-transform:uppercase;font:900 10px/1.3 var(--cond);letter-spacing:.14em}
.final-cta{min-height:58vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:90px 24px;text-align:center;border-top:1px solid rgba(255,255,255,.15);background:radial-gradient(circle at center,rgba(152,255,84,.12),transparent 38%),#090a08}
.final-cta h2{max-width:16ch;margin:18px auto 36px;font:900 clamp(2.7rem,5.6vw,6.2rem)/.88 var(--cond);letter-spacing:-.05em;text-transform:uppercase}
.final-cta>a{display:inline-flex;align-items:center;min-height:54px;padding:0 24px;background:var(--acid);color:#090a08;text-decoration:none;text-transform:uppercase;font:900 11px/1 var(--cond);letter-spacing:.14em}
@media(max-width:900px){.intro-columns,.partner-faq{grid-template-columns:1fr}.pathway-grid,.resource-download-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){
  .capabilities-page .page-content,.partners-page .page-content,.resources-page .page-content{width:calc(100% - 28px);padding:68px 18px}
  .capabilities-page .page-content.light,.partners-page .page-content.light,.resources-page .page-content.light{width:100%;padding:68px 28px}
  .page-heading{font-size:clamp(2.15rem,10vw,3rem)}
  .pathway-grid,.resource-download-grid{grid-template-columns:1fr}
  .pathway-grid article,.resource-download-grid article{min-height:0}
}

/* V7.5.1 — Partners page restrained typography */
.partners-page .page-hero h1{
  font-size:clamp(2.65rem,4vw,4.35rem);
  line-height:.96;
  max-width:18ch;
}
.partners-page .service-depth h2{
  font-size:clamp(2.25rem,3.8vw,4.15rem);
  line-height:.96;
  max-width:18ch;
}
.partners-page .story-grid h2{
  font-size:clamp(2rem,2.65vw,2.85rem);
  line-height:1;
  max-width:20ch;
}
.partners-page .page-heading{
  font-size:clamp(2rem,3vw,3.35rem);
  line-height:.98;
  max-width:20ch;
  letter-spacing:-.035em;
}
.partners-page .partner-faq{
  grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);
  gap:clamp(42px,5vw,82px);
}
.partners-page .partner-faq summary{
  font-size:clamp(1rem,1.35vw,1.35rem);
  line-height:1.18;
  letter-spacing:-.015em;
  padding-right:34px;
  position:relative;
}
.partners-page .partner-faq summary:after{
  position:absolute;
  right:0;
  top:0;
}
.partners-page .final-cta h2{
  font-size:clamp(2.35rem,4vw,4.4rem);
  line-height:.95;
  max-width:18ch;
}
@media(max-width:900px){
  .partners-page .partner-faq{grid-template-columns:1fr}
}
@media(max-width:720px){
  .partners-page .page-hero h1{font-size:clamp(2rem,8.3vw,2.5rem)}
  .partners-page .service-depth h2,
  .partners-page .page-heading,
  .partners-page .final-cta h2{font-size:clamp(1.8rem,7.6vw,2.25rem)}
  .partners-page .story-grid h2{font-size:clamp(1.65rem,7vw,2.05rem)}
  .partners-page .partner-faq summary{font-size:1rem;line-height:1.25}
}


/* V7.5.4 — restrained planner credits; gallery-safe implementation */
.has-event-credit{position:relative}
.event-credit{
  position:absolute;z-index:8;left:14px;bottom:14px;max-width:calc(100% - 28px);
  padding:8px 10px;background:rgba(5,7,6,.84);border:1px solid rgba(236,238,232,.2);
  color:#d9ddd6;font:800 9px/1.35 var(--cond);letter-spacing:.08em;text-transform:uppercase;
  backdrop-filter:blur(8px)
}
.event-credit a,.gallery-credit a,.video-credit a{color:var(--acid);font-weight:900;text-decoration:none}
.event-credit a:hover,.gallery-credit a:hover,.video-credit a:hover{text-decoration:underline;text-underline-offset:3px}
/* Gallery credits stay inside the existing caption so they cannot interfere with the image viewer. */
.portfolio-grid figcaption{display:block}
.gallery-credit{
  display:block;margin-top:7px;color:#d9ddd6;font:800 8px/1.35 var(--cond);
  letter-spacing:.08em;text-transform:uppercase
}
.video-credit{
  display:block;margin-top:8px;color:#aeb4aa;font:800 8px/1.35 var(--cond);
  letter-spacing:.08em;text-transform:uppercase
}
@media(max-width:720px){
  .event-credit{left:9px;bottom:9px;max-width:calc(100% - 18px);font-size:8px;padding:7px 8px}
  .gallery-credit,.video-credit{font-size:7.5px}
}


/* V7.5.5 — credit alignment and gallery viewer restoration */
.media-credit{position:relative;display:block}
.media-credit picture{display:block}
.media-credit img,.media-credit video{display:block}
.event-credit,.gallery-credit,.video-credit{font-family:var(--cond);font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.event-credit{position:absolute;z-index:8;left:14px;bottom:14px;max-width:calc(100% - 28px);padding:8px 10px;background:rgba(5,7,6,.84);border:1px solid rgba(236,238,232,.2);color:#f2f4ef !important;font-size:9px;line-height:1.35;backdrop-filter:blur(8px)}
.event-credit a,.gallery-credit a,.video-credit a{color:var(--acid) !important;font-weight:900;text-decoration:none}
.event-credit a:hover,.gallery-credit a:hover,.video-credit a:hover{text-decoration:underline;text-underline-offset:3px}
.portfolio-grid figcaption{display:block}
.gallery-credit{display:block;margin-top:7px;color:#f2f4ef !important;font-size:8px;line-height:1.35}
.video-credit{display:block;margin-top:8px;color:#f2f4ef !important;font-size:8px;line-height:1.35}
@media(max-width:720px){.event-credit{left:9px;bottom:9px;max-width:calc(100% - 18px);font-size:8px;padding:7px 8px}.gallery-credit,.video-credit{font-size:7.5px}}


/* V7.5.6 — restore non-gallery layouts; image-attached planner credits */
/* No .media-credit wrappers are used on these pages. */
.event-credit{
  color:#f2f4ef !important;
  white-space:normal;
}
.event-credit a{color:var(--acid) !important}

/* Standard image containers already establish the correct positioning context. */
.page-hero-media.has-event-credit,
.duality-panel.has-event-credit,
.work-row figure,
.gallery-tile.has-event-credit,
.process-image.has-event-credit{
  position:relative;
}

/* Service-page story grids: place the credit in the same grid cell as the image. */
.story-grid article.has-event-credit{position:relative}
.story-grid article.has-event-credit > .event-credit{
  position:relative;
  z-index:8;
  align-self:end;
  justify-self:start;
  left:auto;
  bottom:auto;
  margin:0 0 14px 14px;
  grid-column:2;
  grid-row:1;
}
.story-grid article.reverse.has-event-credit > .event-credit{
  grid-column:1;
  grid-row:1;
}

/* Keep the existing picture dimensions and grid participation intact. */
.story-grid article > picture{min-width:0}

@media(max-width:1100px){
  .story-grid article.has-event-credit > div{
    grid-column:1;
    grid-row:1;
  }
  .story-grid article.has-event-credit > picture{
    grid-column:1;
    grid-row:2;
  }
  .story-grid article.has-event-credit > .event-credit{
    grid-column:1;
    grid-row:2;
    margin:0 0 12px 12px;
  }
  .story-grid article.reverse.has-event-credit > picture{
    grid-column:1;
    grid-row:1;
  }
  .story-grid article.reverse.has-event-credit > .event-credit{
    grid-column:1;
    grid-row:1;
  }
  .story-grid article.reverse.has-event-credit > div{
    grid-column:1;
    grid-row:2;
    order:initial;
  }
}

/* Homepage tile credits: keep captions and planner line separate and visible. */
.duality-panel .event-credit,
.gallery-tile .event-credit{
  color:#f2f4ef !important;
}
.duality-panel .event-credit a,
.gallery-tile .event-credit a,
.duality-panel .event-credit strong,
.gallery-tile .event-credit strong{
  color:var(--acid) !important;
}

/* A picture element must not become the positioning context inside a gallery tile. */
.gallery-tile picture{position:static}

@media(max-width:720px){
  .story-grid article.has-event-credit > .event-credit,
  .story-grid article.reverse.has-event-credit > .event-credit{
    margin:0 0 9px 9px;
  }
}


/* V7.5.7 — image-column planner credit placement; portfolio page intentionally untouched */
/* Story/service rows: place the credit over the actual image column. */
.story-grid article.has-event-credit{position:relative}
.story-grid article.has-event-credit>.event-credit{
  left:calc(42% + 14px);
  right:auto;
  bottom:14px;
  max-width:calc(58% - 28px);
}
.story-grid article.reverse.has-event-credit>.event-credit{
  left:14px;
  right:auto;
  max-width:calc(58% - 28px);
}
/* Capabilities uses the same 42/58 structure. */
.capabilities-page .story-grid article.has-event-credit>.event-credit,
.partners-page .story-grid article.has-event-credit>.event-credit{
  left:calc(42% + 14px);
  max-width:calc(58% - 28px);
}
.partners-page .story-grid article.reverse.has-event-credit>.event-credit{
  left:14px;
  max-width:calc(58% - 28px);
}
/* Homepage mini-gallery: valid structure, no nested anchors. */
.gallery-preview-grid .gallery-tile{display:block;position:relative;color:inherit}
.gallery-preview-grid .gallery-tile-main{position:absolute;inset:0;display:block;color:inherit;text-decoration:none;z-index:1}
.gallery-preview-grid .gallery-tile-main picture,
.gallery-preview-grid .gallery-tile-main img{width:100%;height:100%;display:block}
.gallery-preview-grid .gallery-tile-main img{object-fit:cover;transition:transform .65s ease}
.gallery-preview-grid .gallery-tile:hover .gallery-tile-main img{transform:scale(1.025)}
.gallery-preview-grid .gallery-tile-main:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.78),transparent 55%);pointer-events:none}
.gallery-preview-grid .gallery-tile-main>span{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;color:#fff;font:900 11px/1.4 var(--cond);letter-spacing:.14em;text-transform:uppercase}
.gallery-preview-grid .gallery-tile>.event-credit{left:14px;bottom:48px;right:auto;max-width:calc(100% - 28px);z-index:4}
.gallery-preview-grid .gallery-tile>.event-credit a{position:relative;z-index:5}
/* Hero and process-image credits remain attached to their already-correct image containers. */
@media(max-width:1100px){
  .story-grid article.has-event-credit>.event-credit,
  .story-grid article.reverse.has-event-credit>.event-credit,
  .capabilities-page .story-grid article.has-event-credit>.event-credit,
  .partners-page .story-grid article.has-event-credit>.event-credit,
  .partners-page .story-grid article.reverse.has-event-credit>.event-credit{
    left:14px;right:auto;bottom:14px;max-width:calc(100% - 28px)
  }
}
@media(max-width:720px){
  .gallery-preview-grid .gallery-tile-main>span{left:16px;right:16px;bottom:14px;font-size:10px}
  .gallery-preview-grid .gallery-tile>.event-credit{left:9px;bottom:42px;max-width:calc(100% - 18px)}
}


/* V7.5.8 — targeted credit structure fix; portfolio/gallery untouched */
.duality-panel{position:relative;display:block;overflow:hidden}
.duality-panel-main{position:absolute;inset:0;display:block;color:inherit;text-decoration:none;z-index:1}
.duality-panel-main picture,.duality-panel-main img{display:block;width:100%;height:100%}
.duality-panel-main img{object-fit:cover;transition:transform .7s}
.duality-panel:hover .duality-panel-main img{transform:scale(1.04)}
.duality-panel-main:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.92),transparent 58%);pointer-events:none}
.duality-panel .panel-code,.duality-panel .panel-copy{z-index:3}
.duality-panel>.event-credit{z-index:6;left:14px;bottom:14px;right:auto;max-width:calc(100% - 28px)}
.duality-panel>.event-credit a{position:relative;z-index:7}

.story-grid article>.story-media-credit{position:relative;min-width:0;height:100%;overflow:hidden;align-self:stretch}
.story-grid article>.story-media-credit picture,
.story-grid article>.story-media-credit img{display:block;width:100%;height:100%}
.story-grid article>.story-media-credit img{object-fit:cover;min-height:78vh}
.story-grid article>.story-media-credit>.event-credit{position:absolute;left:14px;bottom:14px;right:auto;max-width:calc(100% - 28px);z-index:8}
.story-grid article.reverse>.story-media-credit{order:1}
.story-grid article.reverse>div{order:2}
/* neutralize old row-relative rules */
.story-grid article.has-event-credit>.event-credit{display:none!important}

@media(max-width:720px){
  .duality-panel>.event-credit,
  .story-grid article>.story-media-credit>.event-credit{left:9px;bottom:9px;max-width:calc(100% - 18px)}
  .story-grid article>.story-media-credit img{min-height:430px}
}


/* V7.5.9 — final story-image credit positioning fix */
.story-grid article > .story-media-credit{
  position:relative;
  padding:0 !important;
  margin:0;
  min-width:0;
  width:100%;
  height:100%;
  align-self:stretch;
  overflow:hidden;
}
.story-grid article > .story-media-credit picture{
  display:block;
  width:100%;
  height:100%;
  margin:0;
}
.story-grid article > .story-media-credit img{
  display:block;
  width:100%;
  height:100%;
  min-height:78vh;
  object-fit:cover;
}
.story-grid article > .story-media-credit > .event-credit{
  position:absolute !important;
  left:14px !important;
  right:auto !important;
  bottom:14px !important;
  top:auto !important;
  z-index:10;
  max-width:calc(100% - 28px);
}
.story-grid article:not(.reverse) > .story-media-credit{grid-column:2;order:2}
.story-grid article:not(.reverse) > div:not(.story-media-credit){grid-column:1;order:1}
.story-grid article.reverse > .story-media-credit{grid-column:1;order:1}
.story-grid article.reverse > div:not(.story-media-credit){grid-column:2;order:2}

@media(max-width:1100px){
  .story-grid article > .story-media-credit,
  .story-grid article.reverse > .story-media-credit,
  .story-grid article:not(.reverse) > .story-media-credit,
  .story-grid article > div:not(.story-media-credit),
  .story-grid article.reverse > div:not(.story-media-credit),
  .story-grid article:not(.reverse) > div:not(.story-media-credit){
    grid-column:1;
  }
  .story-grid article > div:not(.story-media-credit){order:1}
  .story-grid article > .story-media-credit{order:2}
}

@media(max-width:720px){
  .story-grid article > .story-media-credit img{min-height:430px}
  .story-grid article > .story-media-credit > .event-credit{
    left:9px !important;
    bottom:9px !important;
    max-width:calc(100% - 18px);
  }
}


/* V7.5.10 — Gallery viewer caption separation */
.gallery-viewer-caption-title{
  display:block;
}
.gallery-viewer-caption-credit{
  display:block;
  margin-top:6px;
  color:#f2f4ef;
}
.gallery-viewer-caption-credit a{
  color:var(--acid);
  font-weight:900;
  text-decoration:none;
}
.gallery-viewer-caption-credit a:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

/* MR9 V7.6 — THE PROP FACTORY BRIDGE PAGE START */
@media (min-width:721px) and (max-width:1460px){
  .topbar{grid-template-columns:190px 1fr auto;gap:18px}
  .desktop-nav{display:none}
  .menu{display:block}
  .project-link{margin-left:auto}
}
@media (min-width:1461px){
  .desktop-nav{display:flex}
  .menu{display:none}
}

.tpf-page .tpf-hero{
  min-height:92vh;
}
.tpf-page .tpf-hero .page-hero-media img{
  object-position:center 54%;
  filter:brightness(1.16) saturate(1.07) contrast(1.01);
}
.tpf-page .tpf-hero:after{
  background:
    linear-gradient(90deg,rgba(9,10,8,.72),rgba(9,10,8,.36) 48%,rgba(9,10,8,.03) 78%),
    linear-gradient(0deg,rgba(9,10,8,.58),rgba(9,10,8,.08) 58%,transparent 76%);
}
.tpf-page .tpf-hero .page-hero-copy{
  padding-bottom:clamp(54px,7vw,96px);
  text-shadow:0 2px 22px rgba(0,0,0,.7);
}
.tpf-page .tpf-hero h1{
  max-width:15ch;
  font-size:clamp(3.65rem,7.25vw,8.3rem);
  line-height:.83;
}
.tpf-page .tpf-hero .page-hero-copy>span{
  max-width:940px;
  font-size:clamp(1rem,1.3vw,1.22rem);
}

.tpf-kicker{
  margin:0 0 18px;
  color:var(--acid);
  font:800 10px/1.4 var(--cond);
  letter-spacing:.2em;
  text-transform:uppercase;
}
.tpf-intro{
  padding:clamp(82px,10vw,150px) 22px;
  background:#dfe2dc;
  color:#090a08;
}
.tpf-intro-shell{
  width:var(--wide);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  gap:clamp(44px,8vw,140px);
  align-items:start;
}
.tpf-intro .tpf-kicker{color:#39770d}
.tpf-intro h2,
.tpf-section-head h2,
.tpf-project-head h2,
.tpf-production-copy h2,
.tpf-final-cta h2{
  margin:0;
  font:900 clamp(3rem,5.7vw,6.8rem)/.86 var(--cond);
  letter-spacing:-.055em;
  text-transform:uppercase;
}
.tpf-intro h2{max-width:14ch}
.tpf-intro-copy{
  display:grid;
  gap:24px;
  padding-top:34px;
}
.tpf-intro-copy p{
  margin:0;
  font-size:clamp(1.05rem,1.45vw,1.3rem);
  line-height:1.7;
  color:#32372f;
}

.tpf-capabilities{
  padding:clamp(82px,10vw,150px) 22px;
  background:#090a08;
}
.tpf-section-head{
  width:var(--wide);
  margin:0 auto clamp(42px,6vw,84px);
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  gap:clamp(36px,7vw,120px);
  align-items:end;
}
.tpf-section-head>p:last-child,
.tpf-project-head>p{
  margin:0;
  color:#aeb4aa;
  font-size:clamp(1rem,1.25vw,1.15rem);
  line-height:1.75;
}
.tpf-capability-grid{
  width:var(--wide);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.tpf-capability-grid article{
  min-height:310px;
  padding:clamp(26px,3vw,46px);
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex;
  flex-direction:column;
}
.tpf-capability-grid span,
.tpf-process-grid span{
  color:var(--acid);
  font:900 10px/1 var(--cond);
  letter-spacing:.18em;
}
.tpf-capability-grid h3,
.tpf-process-grid h3{
  margin:auto 0 18px;
  font:900 clamp(1.6rem,2.35vw,2.55rem)/.95 var(--cond);
  letter-spacing:-.03em;
  text-transform:uppercase;
}
.tpf-capability-grid p,
.tpf-process-grid p{
  margin:0;
  color:#aeb4aa;
  line-height:1.7;
}

.tpf-production-story{
  display:grid;
  grid-template-columns:minmax(0,58%) minmax(0,42%);
  min-height:78vh;
  background:#dfe2dc;
  color:#090a08;
}
.tpf-production-media{
  min-height:720px;
  overflow:hidden;
}
.tpf-production-media picture,
.tpf-production-media img{
  width:100%;
  height:100%;
}
.tpf-production-media img{
  object-fit:cover;
  object-position:center;
}
.tpf-production-copy{
  padding:clamp(62px,7vw,120px) clamp(34px,5vw,84px);
  align-self:center;
}
.tpf-production-copy .tpf-kicker{color:#39770d}
.tpf-production-copy h2{
  max-width:10ch;
  font-size:clamp(3rem,5vw,6rem);
}
.tpf-production-copy>p{
  margin:30px 0 34px;
  color:#343a31;
  font-size:clamp(1rem,1.25vw,1.18rem);
  line-height:1.75;
}
.tpf-production-copy ul{
  list-style:none;
  margin:0;
  padding:0;
  border-top:1px solid rgba(9,10,8,.24);
}
.tpf-production-copy li{
  padding:16px 0;
  border-bottom:1px solid rgba(9,10,8,.24);
  font:800 11px/1.45 var(--cond);
  letter-spacing:.13em;
  text-transform:uppercase;
}

.tpf-project-band{
  padding:clamp(82px,10vw,150px) 22px;
  background:#090a08;
  color:#eceee8;
  border-top:1px solid var(--line);
}
.tpf-project-band-light{
  background:#dfe2dc;
  color:#090a08;
}
.tpf-project-band-light .tpf-kicker{color:#39770d}
.tpf-project-band-light .tpf-project-head>p{color:#485046}
.tpf-project-head{
  width:var(--wide);
  margin:0 auto clamp(38px,5vw,66px);
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  gap:clamp(36px,7vw,120px);
  align-items:end;
}
.tpf-project-head h2{
  max-width:14ch;
  font-size:clamp(3rem,5vw,6rem);
}

.tpf-page .portfolio-grid.tpf-portfolio-grid{
  width:var(--wide);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:12px;
  background:transparent;
}
.tpf-page .portfolio-grid.tpf-portfolio-grid figure{
  grid-column:span 6;
  min-height:0 !important;
  aspect-ratio:auto !important;
  margin:0;
  overflow:visible;
  display:flex;
  flex-direction:column;
  background:#111;
  border:1px solid rgba(255,255,255,.12);
}
.tpf-page .portfolio-grid.tpf-portfolio-grid figure:after{
  display:none !important;
}
.tpf-page .portfolio-grid.tpf-portfolio-grid .tpf-span-12{grid-column:span 12}
.tpf-page .portfolio-grid.tpf-portfolio-grid .tpf-span-8{grid-column:span 8}
.tpf-page .portfolio-grid.tpf-portfolio-grid .tpf-span-6{grid-column:span 6}
.tpf-page .portfolio-grid.tpf-portfolio-grid .tpf-span-4{grid-column:span 4}
.tpf-page .portfolio-grid.tpf-portfolio-grid .tpf-span-3{grid-column:span 3}
.tpf-figure-media{
  position:relative;
  overflow:hidden;
  background:#10110e;
}
.tpf-wide .tpf-figure-media{aspect-ratio:16/10}
.tpf-panorama .tpf-figure-media{aspect-ratio:16/8.6}
.tpf-portrait .tpf-figure-media{aspect-ratio:3/4}
.tpf-page .portfolio-grid.tpf-portfolio-grid picture,
.tpf-page .portfolio-grid.tpf-portfolio-grid img{
  width:100%;
  height:100% !important;
}
.tpf-page .portfolio-grid.tpf-portfolio-grid img{
  object-fit:cover;
}
.tpf-page .portfolio-grid.tpf-portfolio-grid figcaption{
  position:static !important;
  inset:auto !important;
  min-height:78px;
  padding:18px 20px;
  background:#10110e;
  color:#fff;
  font:900 10px/1.45 var(--cond);
  letter-spacing:.12em;
  text-transform:uppercase;
  display:flex !important;
  flex-direction:column;
  justify-content:center;
}
.tpf-page .portfolio-grid.tpf-portfolio-grid .gallery-credit{
  margin-top:7px;
  color:#f2f4ef !important;
  font-size:8px;
  line-height:1.35;
}
.tpf-page .portfolio-grid.tpf-portfolio-grid figure::before{
  top:14px;
  right:14px;
}

.tpf-process{
  padding:clamp(82px,10vw,150px) 22px;
  background:#050604;
  border-top:1px solid var(--line);
}
.tpf-process .tpf-section-head{
  grid-template-columns:1fr;
  margin-bottom:clamp(42px,6vw,74px);
}
.tpf-process .tpf-section-head h2{max-width:13ch}
.tpf-process-grid{
  width:var(--wide);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.tpf-process-grid article{
  min-height:330px;
  padding:clamp(26px,3vw,44px);
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex;
  flex-direction:column;
}
.tpf-process-grid h3{margin:auto 0 18px}

.tpf-final-cta{
  min-height:680px;
  padding:clamp(74px,9vw,140px) 22px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  background:
    radial-gradient(circle at 50% 50%,rgba(152,255,84,.08),transparent 38%),
    #090a08;
}
.tpf-final-cta>p{
  margin:0 0 24px;
  color:var(--acid);
  font:800 10px/1.4 var(--cond);
  letter-spacing:.2em;
}
.tpf-final-cta h2{
  max-width:13ch;
  font-size:clamp(3.4rem,7vw,8rem);
}
.tpf-final-cta>div{
  margin-top:42px;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:22px;
}
.tpf-external{
  min-height:52px;
  display:inline-flex;
  align-items:center;
  gap:20px;
  padding:0 22px;
  border:1px solid rgba(236,238,232,.34);
  color:#eceee8;
  text-decoration:none;
  font:900 10px/1 var(--cond);
  letter-spacing:.14em;
  text-transform:uppercase;
}
.tpf-external b{color:var(--acid)}
.tpf-external:hover,
.tpf-external:focus-visible{border-color:var(--acid)}
.tpf-page .gallery-credit a,
.tpf-page .event-credit a{color:var(--acid) !important}

@media(max-width:1100px){
  .tpf-intro-shell,
  .tpf-section-head,
  .tpf-project-head{
    grid-template-columns:1fr;
    gap:30px;
  }
  .tpf-intro-copy{padding-top:0}
  .tpf-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tpf-production-story{grid-template-columns:1fr}
  .tpf-production-media{min-height:0;aspect-ratio:16/10}
  .tpf-production-copy h2{max-width:14ch}
  .tpf-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tpf-page .portfolio-grid.tpf-portfolio-grid .tpf-span-3{grid-column:span 6}
}
@media(max-width:720px){
  .tpf-page .tpf-hero{min-height:690px}
  .tpf-page .tpf-hero h1{
    max-width:9.8ch;
    font-size:clamp(2.75rem,13.2vw,4rem);
    line-height:.85;
  }
  .tpf-page .tpf-hero .page-hero-copy>span{
    font-size:.94rem;
    line-height:1.55;
  }
  .tpf-intro,
  .tpf-capabilities,
  .tpf-project-band,
  .tpf-process{
    padding:68px 14px;
  }
  .tpf-intro-shell,
  .tpf-section-head,
  .tpf-project-head,
  .tpf-capability-grid,
  .tpf-process-grid{
    width:100%;
  }
  .tpf-intro h2,
  .tpf-section-head h2,
  .tpf-project-head h2,
  .tpf-production-copy h2{
    font-size:clamp(2.55rem,12.5vw,3.65rem);
  }
  .tpf-capability-grid,
  .tpf-process-grid{
    grid-template-columns:1fr;
  }
  .tpf-capability-grid article,
  .tpf-process-grid article{
    min-height:250px;
  }
  .tpf-production-media{aspect-ratio:4/3}
  .tpf-production-copy{padding:60px 18px}
  .tpf-page .portfolio-grid.tpf-portfolio-grid{
    width:100%;
    grid-template-columns:1fr;
    gap:14px;
  }
  .tpf-page .portfolio-grid.tpf-portfolio-grid figure,
  .tpf-page .portfolio-grid.tpf-portfolio-grid .tpf-span-12,
  .tpf-page .portfolio-grid.tpf-portfolio-grid .tpf-span-8,
  .tpf-page .portfolio-grid.tpf-portfolio-grid .tpf-span-6,
  .tpf-page .portfolio-grid.tpf-portfolio-grid .tpf-span-4,
  .tpf-page .portfolio-grid.tpf-portfolio-grid .tpf-span-3{
    grid-column:1;
  }
  .tpf-page .portfolio-grid.tpf-portfolio-grid figcaption{
    min-height:70px;
    padding:16px;
  }
  .tpf-final-cta{
    min-height:580px;
    padding:70px 18px;
  }
  .tpf-final-cta h2{
    font-size:clamp(3rem,14vw,4.2rem);
  }
  .tpf-final-cta>div{flex-direction:column;width:100%;max-width:360px}
  .tpf-final-cta .solid,
  .tpf-final-cta .tpf-external{justify-content:center;width:100%}
}
@media(prefers-reduced-motion:reduce){
  .tpf-page .portfolio-grid.tpf-portfolio-grid img{transition:none}
}
/* MR9 V7.6 — THE PROP FACTORY BRIDGE PAGE END */

/* MR9 V7.6.2 — MOBILE PAGE HERO + GALLERY FEATURE START */

/* The new Gallery block deliberately reuses the existing portfolio grid and viewer. */
.tpf-gallery-feature .tpf-gallery-intro{
  width:var(--wide);
  max-width:980px;
  margin:-16px auto 46px;
  color:#aeb4aa;
  font-size:clamp(1rem,1.2vw,1.14rem);
  line-height:1.75;
}
.tpf-gallery-feature .tpf-gallery-intro a{
  color:var(--acid);
  font-weight:800;
  text-underline-offset:4px;
}
.tpf-gallery-feature .gallery-credit{
  display:block;
  margin-top:6px;
  font-size:8px;
  line-height:1.4;
}
.tpf-gallery-feature .gallery-credit a{color:var(--acid)}

/*
  Real-device correction for every secondary-page hero, including TPF.
  Desktop is untouched. On phones, copy and image become two deliberate rows
  instead of retaining the desktop left-column placement that caused overflow.
*/
@media (max-width:720px){
  html,body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
    overscroll-behavior-x:none;
  }
  @supports (overflow:clip){html,body{overflow-x:clip}}

  .page-hero,
  .tpf-page .tpf-hero{
    min-height:0 !important;
    height:auto !important;
    padding-top:64px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    align-items:stretch !important;
    overflow:hidden !important;
    background:#090a08 !important;
  }

  .page-hero:after,
  .tpf-page .tpf-hero:after,
  .page-hero-grid{
    display:none !important;
  }

  .page-hero .page-hero-copy,
  .tpf-page .tpf-hero .page-hero-copy{
    position:relative !important;
    inset:auto !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    grid-column:1 !important;
    grid-row:1 !important;
    display:block !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
    padding:
      50px max(18px,env(safe-area-inset-right))
      42px max(18px,env(safe-area-inset-left)) !important;
    align-self:auto !important;
    justify-self:stretch !important;
    transform:none !important;
    overflow:visible !important;
    z-index:4 !important;
    background:#090a08;
    text-shadow:none !important;
  }

  .page-hero .page-hero-copy>p{
    max-width:38ch;
    margin:0 0 18px;
  }

  .page-hero h1,
  .tpf-page .tpf-hero h1{
    display:block !important;
    width:100% !important;
    max-width:12ch !important;
    min-width:0 !important;
    margin:0 0 24px !important;
    font-size:clamp(2.3rem,11.15vw,3.55rem) !important;
    line-height:.89 !important;
    letter-spacing:-.045em !important;
    overflow:visible !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
    text-wrap:balance;
  }

  .tpf-page .tpf-hero h1{
    max-width:12.5ch !important;
    font-size:clamp(2.25rem,10.9vw,3.45rem) !important;
    line-height:.9 !important;
  }

  .page-hero .page-hero-copy>span,
  .tpf-page .tpf-hero .page-hero-copy>span{
    display:block !important;
    width:100% !important;
    max-width:36ch !important;
    margin:0 !important;
    font-size:.98rem !important;
    line-height:1.58 !important;
  }

  .page-hero .page-hero-media,
  .tpf-page .tpf-hero .page-hero-media{
    position:relative !important;
    inset:auto !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    grid-column:1 !important;
    grid-row:2 !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:4/3;
    margin:0 !important;
    overflow:hidden !important;
    z-index:1 !important;
  }

  .tpf-page .tpf-hero .page-hero-media{aspect-ratio:16/10}

  .page-hero .page-hero-media picture,
  .page-hero .page-hero-media img,
  .tpf-page .tpf-hero .page-hero-media picture,
  .tpf-page .tpf-hero .page-hero-media img{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    height:100% !important;
    margin:0 !important;
  }

  .page-hero .page-hero-media img{
    object-fit:cover !important;
  }

  .tpf-page .tpf-hero .page-hero-media img{
    object-position:center 54% !important;
    filter:brightness(1.13) saturate(1.06) contrast(1.01) !important;
  }

  .page-hero .page-brand-mark{
    display:none !important;
  }

  .page-hero .event-credit{
    right:auto !important;
    bottom:12px !important;
    left:12px !important;
    max-width:calc(100% - 24px) !important;
  }

  /* Additional containment for large, left-aligned headings below the hero. */
  .manifesto h2,
  .section-head h2,
  .work-head h2,
  .work-meta h3,
  .cap-intro h2,
  .process-copy h2,
  .story-grid h2,
  .motion-block h2,
  .faq h2,
  .brand-bridge h2,
  .download-strip h2,
  .profile-name,
  .project-intake h2,
  .footer-top h2,
  .finale h2,
  .panel-copy h3,
  .tpf-intro h2,
  .tpf-section-head h2,
  .tpf-project-head h2,
  .tpf-production-copy h2,
  .tpf-final-cta h2{
    min-width:0 !important;
    max-width:100% !important;
    overflow:visible !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }

  .tpf-gallery-feature .tpf-gallery-intro{
    width:100%;
    max-width:100%;
    margin:-8px auto 32px;
    padding:0 2px;
  }
}

@media (max-width:390px){
  .page-hero h1,
  .tpf-page .tpf-hero h1{
    font-size:clamp(2.15rem,10.8vw,2.7rem) !important;
    line-height:.91 !important;
  }
}

/* MR9 V7.6.2 — MOBILE PAGE HERO + GALLERY FEATURE END */

/* MR9 V7.6.4 — BRIGHTER + MORE COMPACT HERO SYSTEM START */

/*
  Secondary-page heroes were visually strong but occupied too much of the first
  screen and the image overlays concealed too much of the photography. This
  final override keeps the established design language while revealing more of
  each image and bringing the page content into view sooner.
*/
@media (min-width:721px){
  body .page-hero{
    min-height:clamp(520px,68vh,720px) !important;
  }
  body .page-hero .page-hero-media img{
    filter:brightness(1.10) saturate(1.04) contrast(1.01) !important;
  }
  body .page-hero::after{
    background:
      linear-gradient(90deg,rgba(9,10,8,.78),rgba(9,10,8,.43) 48%,rgba(9,10,8,.05) 82%),
      linear-gradient(0deg,rgba(9,10,8,.58),rgba(9,10,8,.08) 62%,transparent 82%) !important;
  }
  body .page-hero .page-hero-copy{
    padding-top:clamp(46px,5vw,68px) !important;
    padding-bottom:clamp(42px,5vw,60px) !important;
    text-shadow:0 2px 20px rgba(0,0,0,.78);
  }
  body .page-hero h1{
    font-size:clamp(3.7rem,7.4vw,8.2rem) !important;
    line-height:.86 !important;
  }

  /* TPF remains the largest secondary hero, but no longer consumes a full screen. */
  body.tpf-page .tpf-hero{
    min-height:clamp(580px,74vh,780px) !important;
  }
  body.tpf-page .tpf-hero .page-hero-media img{
    filter:brightness(1.18) saturate(1.06) contrast(1.01) !important;
  }
  body.tpf-page .tpf-hero h1{
    max-width:18ch !important;
    font-size:clamp(3.15rem,5.8vw,6.6rem) !important;
    line-height:.86 !important;
  }
  body.tpf-page .tpf-hero::after{
    background:
      linear-gradient(90deg,rgba(9,10,8,.66),rgba(9,10,8,.31) 48%,rgba(9,10,8,.02) 82%),
      linear-gradient(0deg,rgba(9,10,8,.48),rgba(9,10,8,.05) 62%,transparent 82%) !important;
  }

  /* Debbie's page is an introduction, not a portfolio reveal: keep it compact. */
  body.business-development-page .page-hero{
    min-height:clamp(470px,54vh,540px) !important;
    align-items:center !important;
    background:
      radial-gradient(circle at 84% 43%,rgba(152,255,84,.085),transparent 25%),
      #090a08 !important;
  }
  body.business-development-page .page-hero .page-hero-media{
    display:none !important;
  }
  body.business-development-page .page-hero::after{
    background:linear-gradient(90deg,rgba(9,10,8,.28),rgba(9,10,8,.06) 58%,transparent 84%) !important;
  }
  body.business-development-page .page-hero .page-hero-copy{
    padding-top:70px !important;
    padding-bottom:42px !important;
    text-shadow:none;
  }
  body.business-development-page .page-hero h1{
    max-width:10ch !important;
    font-size:clamp(3.5rem,5.8vw,6.4rem) !important;
    line-height:.88 !important;
  }
  body.business-development-page .page-brand-mark{
    opacity:.24 !important;
    transform:scale(.82);
    transform-origin:center;
  }
}

@media (max-width:720px){
  /* The established two-row mobile layout stays intact, but is less tall. */
  body .page-hero .page-hero-copy,
  body.tpf-page .tpf-hero .page-hero-copy{
    padding-top:38px !important;
    padding-bottom:34px !important;
  }
  body .page-hero .page-hero-media,
  body.tpf-page .tpf-hero .page-hero-media{
    aspect-ratio:16/10 !important;
  }
  body .page-hero .page-hero-media img{
    filter:brightness(1.08) saturate(1.04) contrast(1.01) !important;
  }
  body.tpf-page .tpf-hero .page-hero-media img{
    filter:brightness(1.16) saturate(1.06) contrast(1.01) !important;
  }

  /* Debbie's mobile hero becomes a concise text introduction with no empty media row. */
  body.business-development-page .page-hero{
    min-height:0 !important;
    height:auto !important;
    display:block !important;
    padding-top:64px !important;
    background:
      radial-gradient(circle at 88% 34%,rgba(152,255,84,.075),transparent 31%),
      #090a08 !important;
  }
  body.business-development-page .page-hero .page-hero-media{
    display:none !important;
  }
  body.business-development-page .page-hero .page-hero-copy{
    padding:
      40px max(18px,env(safe-area-inset-right))
      44px max(18px,env(safe-area-inset-left)) !important;
  }
  body.business-development-page .page-hero h1{
    max-width:11ch !important;
  }
}

/* MR9 V7.6.4 — BRIGHTER + MORE COMPACT HERO SYSTEM END */

/* MR9 v10.9.3 — sitewide Site at Work attribution and footer normalization */
.coordinates,
footer .mr9-footer-staff-portal,
footer .mr9-clean-footer-staff,
footer .mr9-final-staff-link,
footer .mr9-footer-staff-link,
footer a[href*="staff-portal.php"],
footer a[href*="staff-portal.htm"] {
  display: none !important;
}

footer.footer,
footer.mr9-clean-footer,
footer {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

#site-at-work-builder-credit.mr9-site-at-work-credit {
  display: block !important;
  box-sizing: border-box !important;
  width: var(--wide, min(1640px, calc(100% - 44px))) !important;
  max-width: calc(100% - 28px) !important;
  min-height: 0 !important;
  margin: 26px auto 22px !important;
  padding: 0 !important;
  clear: both !important;
  overflow: visible !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  background: #10130f !important;
  border: 1px solid rgba(152,255,84,.28) !important;
  color: #fff !important;
  position: relative !important;
  z-index: 3 !important;
}

.mr9-site-at-work-credit__inner {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 126px !important;
  margin: 0 !important;
  padding: 24px 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 28px !important;
}

.mr9-site-at-work-credit__copy {
  display: flex !important;
  flex-direction: column !important;
  gap: 7px !important;
  min-width: 0 !important;
}

.mr9-site-at-work-credit__label {
  display: block !important;
  color: #98ff54 !important;
  font: 800 10px/1.2 "DejaVu Sans Condensed", "Arial Narrow", Arial, sans-serif !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}

.mr9-site-at-work-credit__title {
  display: block !important;
  color: #fff !important;
  font: 700 17px/1.35 Arial, sans-serif !important;
  letter-spacing: .01em !important;
}

.mr9-site-at-work-credit__link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #fff !important;
  text-decoration: none !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.mr9-site-at-work-credit__logo {
  display: block !important;
  width: 255px !important;
  max-width: 38vw !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  filter: none !important;
  transform: none !important;
}

.mr9-site-at-work-credit__link:hover .mr9-site-at-work-credit__logo,
.mr9-site-at-work-credit__link:focus-visible .mr9-site-at-work-credit__logo {
  opacity: .84 !important;
}

@media (max-width: 760px) {
  #site-at-work-builder-credit.mr9-site-at-work-credit {
    width: calc(100% - 28px) !important;
    margin: 20px auto 18px !important;
  }

  .mr9-site-at-work-credit__inner {
    min-height: 0 !important;
    padding: 22px 18px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 18px !important;
  }

  .mr9-site-at-work-credit__title {
    font-size: 16px !important;
  }

  .mr9-site-at-work-credit__logo {
    width: 220px !important;
    max-width: 78vw !important;
  }
}
/* MR9 v10.9.3 END */
