@import url('https://fonts.googleapis.com/css2?family=Chakra+Petch:wght@500;600&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#09090b;--panel:#111114;--fg:#f2f0f5;--muted:#a3a1aa;--line:#2b2a30;--acid:#bca5ff;--purple:#a789ff;--display:'Chakra Petch','Space Grotesk',Arial,sans-serif;--body:'Space Grotesk',Arial,sans-serif;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font:1rem/1.6 var(--body)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--acid);outline-offset:6px}::selection{background:var(--acid);color:#09090b}img{display:block;max-width:100%}p{color:var(--muted);margin:0 0 1.4rem}h1,h2,h3{margin:0;line-height:.95}h1,h2{font-family:var(--display);font-weight:800;letter-spacing:-.025em;text-transform:uppercase}h1{font-size:clamp(3.6rem,8.5vw,8.5rem)}h2{font-size:clamp(2.8rem,5.6vw,5.7rem)}h3{font-size:1.5rem;font-weight:500;line-height:1.2}em{font-style:normal;color:var(--acid)}.label{font-size:.78rem;letter-spacing:.15em;font-weight:500;text-transform:uppercase;color:#c3c0ca}.site-header{height:108px;display:flex;align-items:center;gap:2rem;padding:0 4.5%;border-bottom:1px solid var(--line);position:relative;z-index:10;background:rgba(9,9,11,.98)}.brand{width:183px;flex-shrink:0}.brand img{width:183px;height:89px;object-fit:contain}.site-header nav{display:flex;gap:1.9rem;margin-left:auto}.site-header nav a{font-size:.85rem;color:#bdbbc4;transition:color .2s}.site-header nav a:hover,.site-header nav a.active{color:var(--acid)}.header-end{display:flex;align-items:center;gap:1.5rem}.lang{border:1px solid var(--line);padding:.3rem .55rem;font-size:.8rem}.header-cta{border-bottom:1px solid var(--acid);font-size:.83rem;padding-bottom:.3rem}.menu-toggle{display:none}.skip{position:absolute;left:1rem;top:-100px;z-index:99;background:var(--acid);color:black;padding:.8rem}.skip:focus{top:1rem}.hero{min-height:690px;height:calc(100svh - 108px);max-height:970px;position:relative;isolation:isolate;overflow:hidden;padding:7% 5% 80px;display:flex;align-items:center}.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.95}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,9,11,.78),rgba(9,9,11,.18) 65%,transparent)}.hero-copy{width:75%;position:relative}.hero .label{display:flex;align-items:center;gap:.65rem;margin-bottom:2rem}.marker{height:7px;width:7px;background:var(--acid);display:inline-block}.hero h1{font-size:clamp(4rem,8.6vw,9rem);max-width:1100px}.hero p{max-width:520px;margin:2rem 0;font-size:1.05rem;color:#c7c4ce}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:1rem 1.45rem;border:1px solid var(--acid);background:var(--acid);color:#151020;font-size:.85rem;font-weight:600;transition:background .2s,color .2s,transform .2s;border-radius:0;text-align:center}.button:hover{background:#d7c9ff;transform:translateY(-2px)}.button.outline{background:transparent;color:var(--fg);border-color:#67636e}.button.outline:hover{border-color:var(--acid);color:var(--acid)}.hero-bottom{position:absolute;bottom:1.5rem;left:5%;right:5%;display:flex;justify-content:space-between;font-size:.7rem;letter-spacing:.16em;color:#98949f}.ticker{background:var(--acid);color:#eeebf5;display:flex;justify-content:center;align-items:center;gap:3rem;white-space:nowrap;overflow:hidden;padding:.9rem 0;font-family:var(--display);font-size:1.6rem;font-weight:700;letter-spacing:.04em}.ticker b{font:1.2rem var(--body)}.section{padding:110px 5%;max-width:1800px;margin:auto}.section.compact{padding-top:20px}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:1.5rem 3rem;margin-bottom:3.5rem;align-items:start}.section-head .label{padding-top:.7rem}.section-head p{grid-column:2;max-width:600px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}.project-image{position:relative;overflow:hidden;background:#18131e;aspect-ratio:1.4}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.work-card:hover img{transform:scale(1.045)}.tag{position:absolute;top:1.1rem;left:1.1rem;font-size:.7rem;letter-spacing:.07em;background:#111c;padding:.45rem .65rem;border:1px solid #ffffff30}.card-caption{display:flex;justify-content:space-between;gap:1rem;padding:1.2rem 0;border-bottom:1px solid var(--line);align-items:center}.card-caption span{font-size:.76rem;color:var(--muted)}.services-section{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:70px 1.2fr 1fr 30px;gap:2rem;align-items:center;padding:2.2rem 0;border-top:1px solid var(--line);transition:color .2s,background .2s}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row:hover{color:var(--acid);background:#141417}.num{font-size:.75rem;color:var(--purple)}.service-row h3{font-family:var(--display);font-size:2.3rem;font-weight:600}.row-detail{font-size:.85rem;color:var(--muted);max-width:400px}.plus{font-size:2rem;font-weight:400;color:var(--acid)}.manifest{padding:110px 8%;background:#b9a0ef;color:#171120}.manifest .label{color:#3b2a50;margin-bottom:3rem}.manifest h2{font-size:clamp(3.2rem,7.5vw,8rem)}.manifest em{color:transparent;-webkit-text-stroke:1px #20142f}.manifest-bottom{display:flex;align-items:end;gap:3rem;justify-content:space-between;margin-top:3rem}.manifest p{color:#332640;max-width:600px;font-size:1.1rem;margin:0}.manifest .button.outline{color:#1b1326;border-color:#49355f;white-space:nowrap}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2.8rem}.step-number{display:block;font-family:var(--display);font-size:4rem;color:var(--purple);line-height:1;border-bottom:1px solid var(--line);padding-bottom:1.5rem;margin-bottom:1.5rem}.steps h3{margin-bottom:1rem}.steps p{font-size:.93rem}.faq{max-width:950px;margin-left:auto}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem 0;font-size:1.1rem}summary::-webkit-details-marker{display:none}summary span{color:var(--acid);font-size:1.5rem}details[open] summary span{transform:rotate(45deg)}details p{max-width:800px;padding:0 2rem .5rem 0}.closing{padding:95px 5%;border-top:1px solid var(--line);background:radial-gradient(ellipse at 90% 100%,#241336,transparent 70%),#0f0d12}.closing h2{font-size:clamp(4.5rem,10vw,10rem);margin:2rem 0 2.5rem}.closing .label{color:var(--purple)}footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem;padding:3rem 5%;border-top:1px solid var(--line);align-items:center;font-size:.8rem}footer p{font-size:.75rem;margin:.5rem 0 0}.footer-brand{width:190px}.legal-links{text-align:right}.legal-links a{display:inline-block;margin-left:1rem}.page-intro{padding:100px 5% 70px;background:radial-gradient(ellipse at 100% 0%,#23192e,transparent 65%)}.page-intro .label{color:var(--purple);margin-bottom:2rem}.page-intro h1{max-width:1250px}.lead{max-width:750px;margin-top:2rem;font-size:1.2rem}.studio-panel{margin:0 5%;display:grid;grid-template-columns:1.1fr 1fr;background:#141117}.studio-panel img{width:100%;height:100%;object-fit:cover;min-height:460px}.studio-panel>div{padding:4rem}.studio-panel h2{margin:2rem 0}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}.values h3{color:var(--acid);margin-bottom:1rem;font-size:2rem}.service-detail{max-width:1000px;margin:0}.service-detail h2{font-size:2.5rem;margin-bottom:2rem}.service-detail ol{list-style:decimal-leading-zero;padding-left:2rem;margin-bottom:2rem}.service-detail li{padding:1.3rem 0 1.3rem 1rem;border-bottom:1px solid var(--line);font-size:1.1rem}.service-detail li::marker{color:var(--purple)}.muted{font-size:.85rem;color:var(--muted)}.case-image{margin:0 5%}.case-image img{max-height:650px;width:100%;object-fit:cover}.case-image p{margin-top:1rem}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem}.case-grid h2{margin:2rem 0}.case-grid>div>p{margin-top:2rem}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:6rem}.contact-layout aside h2{font-size:3.5rem;margin-bottom:2rem}.contact-layout aside>a{color:var(--acid)}.contact-layout aside .muted{margin-top:2rem}form{padding:2.5rem;background:#131215;border:1px solid var(--line)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}label{display:block;font-size:.87rem;margin-bottom:1rem;color:#d7d3dd}input,select,textarea{display:block;background:#0b0b0d;border:1px solid #3b3742;color:var(--fg);width:100%;padding:.85rem .75rem;border-radius:0;margin-top:.5rem;min-width:0}input:focus,select:focus,textarea:focus{outline:1px solid var(--acid);border-color:var(--acid)}textarea{resize:vertical}.consent{display:flex;gap:.8rem;align-items:start;font-size:.8rem}.consent input{width:18px;height:18px;flex-shrink:0;margin-top:.2rem;accent-color:var(--acid)}.form-note{font-size:.8rem;margin-top:1rem}.text-button{background:none;border:0;border-bottom:1px solid var(--muted);color:var(--muted);padding:0;font-size:.8rem}.prose{max-width:950px;margin:0}.prose h2{font-family:var(--body);text-transform:none;font-size:1.5rem;line-height:1.3;margin:2rem 0 1rem;letter-spacing:0}#form-status{color:var(--acid);font-size:.9rem}
@media(min-width:1600px){.hero-copy{max-width:1350px}.hero{padding-left:max(5%,calc((100vw - 1600px)/2))}}
@media(max-width:1050px){.site-header{gap:1.4rem}.site-header nav{gap:1rem}.header-cta{display:none}.brand,.brand img{width:160px}.hero-copy{width:85%}.hero{min-height:650px}.section-head{grid-template-columns:1fr 2.5fr}.service-row{grid-template-columns:40px 1.2fr 1fr 20px;gap:1rem}.steps{gap:1.5rem}.contact-layout{gap:3rem}.card-caption{display:block}.card-caption span{display:block;margin-top:.5rem}}
@media(max-width:760px){.site-header{height:90px;padding:0 5%;gap:1rem}.brand,.brand img{width:150px;height:75px}.menu-toggle{display:flex;gap:1rem;margin-left:auto;align-items:center;background:none;border:0;color:white;font-size:.85rem;padding:.5rem}.menu-toggle span{color:var(--acid);font-size:1.5rem}.header-end{gap:0}.site-header nav{display:none;position:absolute;left:0;right:0;top:90px;background:#101012;padding:1.5rem 5% 2rem;border-bottom:1px solid var(--line);margin:0;flex-direction:column;gap:1.5rem}.site-header nav.open{display:flex}.site-header nav a{font-size:1.1rem}.hero{height:auto;min-height:700px;padding:80px 5% 95px;align-items:start}.hero-art{object-position:68% center;opacity:.65}.hero:after{background:linear-gradient(90deg,#09090baa,#09090b30),linear-gradient(0deg,#09090b,transparent 70%)}.hero-copy{width:100%}.hero h1{font-size:clamp(3.3rem,12vw,5.8rem)}.hero p{max-width:430px;font-size:1rem}.hero .label{font-size:.68rem;letter-spacing:.1em}.hero-bottom span:last-child{display:none}.hero-actions{flex-direction:column;align-items:start}.hero-actions .button{min-width:245px}.ticker{gap:2rem;font-size:1.4rem;justify-content:start}.section{padding:70px 5%}.section-head{display:block;margin-bottom:2.5rem}.section-head h2{margin:1.5rem 0}.section-head p{margin-top:1.5rem}.work-grid{grid-template-columns:1fr;gap:3rem}.project-image{aspect-ratio:1.3}.service-row{grid-template-columns:30px 1fr 20px;padding:1.7rem 0}.service-row h3{font-size:2rem}.row-detail{grid-column:2;grid-row:2}.plus{grid-column:3;grid-row:1}.manifest{padding:70px 5%}.manifest-bottom{display:block}.manifest-bottom .button{margin-top:2rem}.manifest h2{font-size:clamp(2.8rem,9.5vw,5rem)}.steps{grid-template-columns:1fr 1fr;gap:2rem}.step-number{font-size:3rem}.steps h3{font-size:1.3rem}.closing{padding:70px 5%}.closing h2{font-size:clamp(3.5rem,13vw,6rem)}footer{grid-template-columns:1fr;gap:2rem}.legal-links{text-align:left}.legal-links a{margin:0 1rem 0 0}.page-intro{padding:65px 5% 45px}.page-intro h1{font-size:clamp(3rem,10vw,5rem);overflow-wrap:break-word}.lead{font-size:1.05rem}.studio-panel{grid-template-columns:1fr}.studio-panel img{min-height:0;max-height:350px}.studio-panel>div{padding:2rem}.values{grid-template-columns:1fr;gap:1.5rem}.case-grid{grid-template-columns:1fr;gap:2rem}.contact-layout{grid-template-columns:1fr;gap:2rem}form{padding:1.25rem}.form-grid{grid-template-columns:1fr}.contact-layout aside h2{font-size:3rem}.service-detail h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Cyber Resistance — chrome / violet editorial direction */
h1,h2{font-weight:500;letter-spacing:-.055em;line-height:1.09;text-transform:none;text-wrap:balance}
h1{font-size:clamp(2.8rem,6.2vw,6.8rem)}
h2{font-size:clamp(2.2rem,4.4vw,4.6rem)}
.hero{min-height:690px;background:#050507}
.hero h1{font-size:clamp(3rem,6.7vw,7.2rem);line-height:1.08;max-width:1050px}
.hero-copy{width:77%}.hero p{max-width:490px}
.hero:after{background:linear-gradient(90deg,#070709cc,#07070940 65%,transparent)}
.hero-art{opacity:.95}
em{color:#baa0fb}
.button{border-color:#bca5ff;background:#bca5ff;color:#140d20;font-weight:600;border-radius:3px}
.button:hover{background:#d7c9ff}
.button.outline{border-color:#77707f}
.ticker{background:#111015;color:#c6b7e4;border-top:1px solid #3a2b51;border-bottom:1px solid #3a2b51;font-size:1rem;font-weight:500;letter-spacing:.14em;padding:1.3rem 0}
.service-row h3{font-family:var(--display);font-weight:500;font-size:1.65rem;line-height:1.3;letter-spacing:-.045em}
.step-number{font-weight:400;font-size:3rem;letter-spacing:-.08em}
.manifest{position:relative;isolation:isolate;overflow:hidden;background:#09070e;color:#f1eef8;min-height:650px;padding:100px 6%}
.manifest-art{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:80% center;opacity:.55}
.manifest:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#09070ef5,#09070e90 65%,transparent)}
.manifest .label{color:#bca5ff}.manifest h2{font-size:clamp(2.6rem,5.6vw,6rem);max-width:1150px}
.manifest em{color:#c0a4ff;-webkit-text-stroke:0}.manifest p{color:#c5bdcf}.manifest .button.outline{color:#efe9f8;border-color:#9a85b2}
.abstract-gallery{display:grid;grid-template-columns:1fr 1fr;gap:1px;border-top:1px solid #27222e;border-bottom:1px solid #27222e;background:#27222e}
.abstract-gallery figure{margin:0;background:#050506;overflow:hidden;aspect-ratio:1.5}
.abstract-gallery img{width:100%;height:100%;object-fit:cover;transition:transform 1s}
.abstract-gallery figure:hover img{transform:scale(1.035)}
.page-intro{position:relative;isolation:isolate;overflow:hidden;min-height:480px;padding:95px 5% 70px;display:flex;flex-direction:column;justify-content:center;background:#070609}
.page-intro h1{max-width:1000px;font-size:clamp(2.8rem,5.8vw,6.3rem)}
.page-art{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:75% center;opacity:.7}
.page-intro:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#09080cf2,#09080c99 55%,#09080c22)}
.page-intro .lead{max-width:690px;color:#c9c3d2}
.closing{position:relative;isolation:isolate;overflow:hidden;min-height:580px;background:#09080d}
.closing-art{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.65}
.closing:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#09080dfa,#09080d99 65%,#09080d22)}
.closing h2{font-size:clamp(3rem,6.8vw,7.4rem);font-weight:500;text-transform:none;max-width:1000px}
.studio-panel h2{font-size:clamp(2.5rem,4.4vw,4.8rem)}
.contact-layout aside h2{font-size:2.6rem}
.contact-art{margin-top:3rem;width:100%;aspect-ratio:1;object-fit:cover;border:1px solid #25202e}
.service-art-strip{height:300px;overflow:hidden;margin:0 5% 55px;border:1px solid #25202e}
.service-art-strip img{width:100%;height:100%;object-fit:cover;object-position:75% 45%}
.service-detail h2{font-size:2rem}
.prose h2{font-weight:500}
.site-header nav a,.header-cta,.button,.row-detail,.muted{font-size:.875rem}
@media(max-width:1050px){.hero-copy{width:90%}.hero h1{font-size:clamp(3rem,7.4vw,5.5rem)}.service-row h3{font-size:1.5rem}}
@media(max-width:760px){
 .hero{min-height:700px;padding-top:70px}.hero-copy{width:100%}.hero h1{font-size:clamp(2.65rem,9.1vw,4.4rem);letter-spacing:-.055em;line-height:1.13}.hero-art{object-position:65% center;opacity:.65}.hero:after{background:linear-gradient(90deg,#070709d9,#07070955),linear-gradient(0deg,#09090b,transparent 70%)}
 h2{font-size:clamp(2rem,7.7vw,3rem)}.section-head h2{margin-top:1rem}
 .page-intro{min-height:480px;padding:65px 5%}.page-intro h1{font-size:clamp(2.35rem,8.6vw,4rem)}.page-art{object-position:66% center;opacity:.55}.page-intro:after{background:linear-gradient(90deg,#09080ee0,#09080e60)}
 .abstract-gallery{grid-template-columns:1fr}.abstract-gallery figure{aspect-ratio:1.5}
 .manifest{padding:70px 5%;min-height:600px}.manifest h2{font-size:clamp(2rem,7.2vw,3.5rem);line-height:1.2}.manifest-art{opacity:.4}.manifest-bottom{margin-top:2rem}
 .closing{min-height:480px}.closing h2{font-size:clamp(2.5rem,9.5vw,4rem);line-height:1.15}.closing-art{opacity:.5}
 .service-row h3{font-size:1.3rem}.service-art-strip{height:220px;margin-bottom:35px}.contact-layout aside h2{font-size:2.2rem}.contact-art{max-height:320px;aspect-ratio:1.5}.studio-panel h2{font-size:2.8rem}
}

/* Squared, chamfered display typography */
h1,h2,.hero h1,.page-intro h1,.manifest h2,.closing h2,.studio-panel h2,.service-detail h2,.contact-layout aside h2{font-family:var(--display);font-weight:600;letter-spacing:-.025em;line-height:1.12}
.service-row h3{font-family:var(--display);font-weight:500;letter-spacing:-.015em}
@media(max-width:760px){.hero h1,.page-intro h1,.manifest h2,.closing h2{letter-spacing:-.02em;line-height:1.15}}

/* Journal, topic hubs and expanded studio stories */
[hidden]{display:none!important}
.site-header nav{gap:1.3rem}
.breadcrumbs{padding:1.1rem 5%;border-bottom:1px solid var(--line);font-size:.75rem;color:var(--muted)}
.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.45rem 1rem;margin:0;padding:0}
.breadcrumbs li:not(:last-child):after{content:'/';margin-left:1rem;color:#766a89}
.breadcrumbs a:hover,.article-prose a:hover,.article-toc a:hover{color:var(--purple)}
.editorial-block{display:grid;grid-template-columns:1fr 1.1fr;gap:7%;align-items:start;border-top:1px solid var(--line)}
.editorial-art{position:sticky;top:2rem;border:1px solid var(--line);background:#030305}
.editorial-art img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:65%}
.editorial-block>div>section{margin-top:2.5rem}.editorial-block h2{font-size:clamp(1.6rem,2.7vw,2.8rem);margin-bottom:1.3rem;letter-spacing:-.035em;line-height:1.2}
.editorial-block p{line-height:1.8;max-width:680px}
.hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
.hub-card{position:relative;isolation:isolate;min-height:480px;overflow:hidden;border:1px solid #393044;background:#08070b;display:flex;align-items:end}
.hub-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .6s;opacity:.8}
.hub-card:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#08070b 4%,#08070bdd 30%,#08070b20 90%)}
.hub-card>div{padding:2rem}.hub-card h2{font-size:clamp(1.8rem,3vw,3rem);margin:1rem 0}.hub-card p{max-width:540px;color:#c5bfce;font-size:.95rem}.hub-card:hover>img{transform:scale(1.035)}
.read-link{display:inline-block;color:var(--purple);font-size:.875rem;border-bottom:1px solid #776191;padding-bottom:.25rem;line-height:1.5}
.read-link:after{content:'';display:inline-block;width:.8em;height:.8em;margin-left:.45rem;background:currentColor;-webkit-mask:url('/assets/icons/arrow-up-right.svg') center/contain no-repeat;mask:url('/assets/icons/arrow-up-right.svg') center/contain no-repeat}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:2.5rem 0}
.article-card{border:1px solid var(--line);background:#101014;transition:border-color .25s;min-width:0}
.article-card:hover{border-color:#9580b2}.article-card>a{display:block;height:100%}
.article-image{overflow:hidden;aspect-ratio:1.6;background:#030305}.article-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.article-card:hover img{transform:scale(1.035)}
.article-card-body{padding:1.75rem}.article-card .label{font-size:.65rem;line-height:1.6;letter-spacing:.08em;display:block;color:#bca5e1}
.article-card h3{font-family:var(--display);font-size:1.5rem;line-height:1.3;letter-spacing:-.025em;margin:1rem 0}.article-card p{font-size:.88rem;line-height:1.7}
.blog-controls{padding:2rem;border:1px solid var(--line);background:#101014}.blog-controls label{margin:0}.blog-controls input{max-width:620px;margin:.7rem 0 1.5rem}
.topic-filters{display:flex;flex-wrap:wrap;gap:.6rem}.topic-filters button{padding:.6rem .85rem;background:transparent;border:1px solid #595061;color:#c5bdcf;font-size:.8rem}.topic-filters button[aria-pressed="true"]{background:var(--purple);color:#110b1a;border-color:var(--purple)}
#filter-status{font-size:.8rem;margin:1.2rem 0 0;min-height:1.3rem}.no-results{padding:2rem 0}
.hub-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;padding-top:65px!important}.hub-intro h2{font-size:2.3rem;margin-bottom:1.7rem}.hub-intro p{line-height:1.8}
.hub-route{border-left:1px solid #6b528f;padding-left:2rem}.hub-route ol{padding-left:1.3rem;margin-top:1.5rem}.hub-route li{padding-left:.5rem;margin-bottom:1.5rem}.hub-route li::marker{color:var(--purple)}.hub-route a{font-family:var(--display);font-size:1.25rem}.hub-route p{font-size:.85rem;margin:.5rem 0 0}
.pillar-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pillar-sections h2{font-size:1.8rem;line-height:1.2;margin:1.3rem 0}.pillar-sections p{font-size:.93rem;line-height:1.8}
.inline-cta{padding:3rem;border:1px solid #514061;background:radial-gradient(ellipse at 100% 0%,#29173c,transparent 75%),#111015}.inline-cta h2{font-size:clamp(1.7rem,3vw,3rem);max-width:900px;margin:1rem 0 1.5rem}.inline-cta p{max-width:720px;line-height:1.8}
.article-layout{display:grid;grid-template-columns:240px minmax(0,760px);gap:7%;max-width:1300px;margin:auto;padding:75px 5%}
.article-toc{position:sticky;top:2rem;align-self:start;border-top:1px solid var(--purple);padding-top:1.5rem;font-size:.82rem}.article-toc strong{font-weight:500;color:var(--purple)}.article-toc ol{padding-left:1.1rem;margin:1.5rem 0 2rem}.article-toc li{margin:0 0 1.1rem;padding-left:.35rem;color:#b9b2c2}
.article-meta{display:flex;flex-wrap:wrap;gap:.35rem .65rem;color:var(--muted);font-size:.75rem;padding-bottom:2rem;border-bottom:1px solid var(--line);margin-bottom:2.5rem}.article-meta a{color:var(--purple)}
.article-prose section{margin-bottom:3rem;scroll-margin-top:2rem}.article-prose h2{font-size:clamp(1.65rem,2.8vw,2.4rem);line-height:1.25;margin-bottom:1.3rem;letter-spacing:-.03em}.article-prose p{font-size:1rem;line-height:1.85;color:#bcb6c5}.article-prose li{line-height:1.8;margin-bottom:.7rem;color:#c4becd}.article-prose a{text-decoration:underline;text-underline-offset:4px}.article-prose .takeaways{background:#15101d;border-left:2px solid var(--purple);padding:2rem}.takeaways h2,.article-sources h2{font-size:1.5rem}.takeaways ul,.article-sources ul{padding-left:1.1rem;margin-bottom:0}.article-sources{font-size:.85rem}.next-reading{border-top:1px solid var(--line);padding-top:1.5rem}
.related{border-top:1px solid var(--line)}.related .article-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1100px;margin-left:auto}.section>h2{margin-bottom:2rem}
@media(max-width:1100px){.site-header{gap:1rem}.site-header nav{gap:1rem}.header-cta{display:none}.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{grid-template-columns:200px minmax(0,1fr);gap:5%}.pillar-sections{gap:1.5rem}}
@media(max-width:760px){.editorial-block,.hub-intro,.pillar-sections{grid-template-columns:1fr;gap:2.5rem}.editorial-art{position:static}.editorial-art img{aspect-ratio:1.5}.hub-grid{grid-template-columns:1fr}.hub-card{min-height:450px}.hub-card>div{padding:1.5rem}.article-grid,.related .article-grid{grid-template-columns:1fr}.article-card-body{padding:1.5rem}.blog-controls{padding:1.3rem}.topic-filters button{font-size:.75rem}.article-layout{display:block;padding:45px 5%}.article-toc{position:static;margin-bottom:3rem}.article-toc ol{columns:2;column-gap:2rem}.article-toc li{break-inside:avoid}.article-prose .takeaways{padding:1.5rem}.inline-cta{padding:1.6rem}.hub-route{padding-left:1.5rem}.breadcrumbs{font-size:.68rem}.editorial-block h2{font-size:1.7rem}}
@media(max-width:420px){.article-toc ol{columns:1}.site-header{gap:.5rem}.menu-toggle{gap:.5rem}.hub-card{min-height:420px}}

/* Keep the footer logo’s native proportions at its rendered width. */
.footer-brand{display:block;width:190px;max-width:100%;align-self:center}
.footer-brand img{display:block;width:100%;height:auto;object-fit:contain}
footer{grid-template-columns:minmax(190px,.8fr) minmax(210px,1fr) minmax(280px,1.4fr);gap:2rem}
.legal-links{display:flex;flex-wrap:wrap;gap:.7rem 1rem;justify-content:flex-end;align-items:center}
.legal-links a{margin:0}.legal-links p{flex-basis:100%;margin:0}
.jaxon-feature{position:relative;isolation:isolate;overflow:hidden;min-height:670px;padding:90px 6%;display:flex;align-items:center;background:#070609;border-bottom:1px solid #382640}
.jaxon-feature>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:75% center;z-index:-2}
.jaxon-feature:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#070609f2,#070609b0 48%,#07060915)}
.jaxon-feature-copy{max-width:700px}.jaxon-feature h2{font-size:clamp(3rem,6vw,6.5rem);margin:1.7rem 0;line-height:1.05}.jaxon-feature p{max-width:540px;color:#beb5c9}.jaxon-feature .jaxon-tagline{font-size:1.25rem;color:#f2ecf9;margin-bottom:.8rem}
.story-caption{display:block;font-size:.65rem;letter-spacing:.14em;color:#aa97bc;margin-top:1.5rem}
.story-entry{display:flex;flex-wrap:wrap;align-items:center;gap:1.3rem;margin-top:1rem}.story-entry>span{font-size:.7rem;letter-spacing:.1em;color:#bdafca}
.story-world{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem;border-bottom:1px solid var(--line);padding-top:65px;padding-bottom:65px}.story-world p{margin:1.3rem 0 0;font-size:1rem;color:#c1b7cb;max-width:380px}
.story-layout{display:grid;grid-template-columns:250px minmax(0,750px);gap:8%;max-width:1390px;margin:auto;padding:70px 5%}
.story-index{position:sticky;top:2rem;align-self:start}.story-index ol{list-style:none;margin:1.5rem 0;padding:0}.story-index li{border-top:1px solid var(--line)}.story-index a{display:flex;gap:.8rem;padding:1rem 0;font-size:.85rem;line-height:1.5;color:#beb5c8}.story-index a:hover{color:var(--purple)}.story-index a span{color:var(--purple);font-size:.7rem;padding-top:.15rem}
.story-chapter{padding:0 0 4rem;margin-bottom:4rem;border-bottom:1px solid var(--line);scroll-margin-top:2rem}.story-chapter:last-child{margin-bottom:0}.story-chapter h2{font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.15;margin:1.2rem 0 2rem}.story-chapter p{font-size:1.04rem;line-height:1.95;color:#c4bdce;margin-bottom:1.6rem}.story-chapter .read-link{margin-top:.8rem}
.story-question{padding:2rem;margin:2rem 0;border-left:2px solid var(--purple);background:#18101f}.story-question p{font-family:var(--display);font-size:1.8rem;line-height:1.3;color:#eee5f6;margin:1rem 0 0}.story-home{border-top:1px solid var(--line)}.story-home h2{margin:1rem 0 1.5rem}.story-home p{max-width:690px}
@media(min-width:761px) and (max-width:1100px){.site-header{height:90px}.header-cta{display:none}.menu-toggle{display:flex;gap:1rem;margin-left:auto;align-items:center;background:none;border:0;color:white;padding:.5rem}.menu-toggle span{color:var(--purple);font-size:1.5rem}.site-header nav{display:none;position:absolute;left:0;right:0;top:90px;background:#101012;padding:1.5rem 5% 2rem;border-bottom:1px solid var(--line);margin:0;flex-direction:column;gap:1.3rem}.site-header nav.open{display:flex}}
@media(max-width:900px){footer{grid-template-columns:1fr 1fr}.legal-links{grid-column:1/-1;justify-content:flex-start;text-align:left}.story-layout{grid-template-columns:210px minmax(0,1fr);gap:5%}.story-world{gap:1.5rem}}
@media(max-width:760px){footer{grid-template-columns:1fr}.legal-links{grid-column:auto}.jaxon-feature{padding:70px 5%;min-height:650px}.jaxon-feature>img{opacity:.6;object-position:65%}.jaxon-feature:after{background:linear-gradient(90deg,#070609db,#07060966)}.jaxon-feature h2{font-size:clamp(2.8rem,10vw,4.5rem)}.story-world{grid-template-columns:1fr;gap:2rem}.story-world p{max-width:100%}.story-layout{display:block;padding:45px 5%}.story-index{position:static;margin-bottom:3rem}.story-index ol{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}.story-chapter{padding-bottom:2.5rem;margin-bottom:3rem}.story-chapter p{font-size:1rem;line-height:1.85}.story-question{padding:1.4rem}.story-question p{font-size:1.5rem}}
@media(max-width:430px){.story-index ol{grid-template-columns:1fr}}

/* Illustrated serial: season archive and individual episode reading. */
.season-grid{display:grid;gap:2rem}.season-card{display:grid;grid-template-columns:1.1fr 1fr;border:1px solid #44334f;background:#110e16;overflow:hidden}.season-card>img{width:100%;height:100%;object-fit:cover;min-height:340px}.season-card>div{padding:3rem;align-self:center}.season-card h3{font-family:var(--display);font-size:clamp(2rem,3.4vw,3.5rem);line-height:1.15;margin:1.2rem 0}.season-card p{max-width:600px}.season-card:hover{border-color:var(--purple)}
.archive-heading{display:flex;justify-content:space-between;align-items:end;flex-wrap:wrap;gap:1.5rem}.archive-heading h2{margin-top:1rem;font-size:clamp(2rem,4vw,4rem)}.archive-heading>span{font-size:.8rem;color:var(--muted)}
.episode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:2.5rem 0}.episode-card{border:1px solid var(--line);background:#100e15;min-width:0;scroll-margin-top:2rem}.episode-card>a{display:block;height:100%}.episode-card img{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover}.episode-card a>div{padding:1.5rem}.episode-card .label{font-size:.7rem;letter-spacing:.08em;color:#bca5d6}.episode-card h3{font-family:var(--display);font-size:1.65rem;line-height:1.25;margin:1rem 0 1.5rem}.episode-card:hover{border-color:var(--purple)}
.series-archive{border-top:1px solid var(--line)}.series-note{border-left:2px solid var(--purple);padding:2rem 3rem;background:#131019}.series-note h2{font-size:2rem;margin:1rem 0 1.5rem}.series-note p{max-width:750px;margin:0;line-height:1.8}
.episode-intro{max-width:1300px;margin:auto;padding:75px 5% 45px}.episode-intro h1{font-size:clamp(2.7rem,5.5vw,5.7rem);max-width:1100px;margin:1.5rem 0 2rem}.episode-meta{display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;font-size:.8rem;color:var(--muted)}
.episode-visual{max-width:1200px;margin:0 auto;padding:0 5%}.episode-visual img{width:100%;height:auto;aspect-ratio:1.5;object-fit:contain;border:1px solid #302735}
.episode-reading{max-width:920px;margin:auto;padding:60px 5% 80px}.episode-prose p{font-size:1.1rem;line-height:1.95;color:#c9c2d2;margin-bottom:2rem}.episode-prose p:first-child:first-letter{float:left;font-family:var(--display);font-size:4.8rem;line-height:.85;margin:.2rem .6rem 0 0;color:var(--purple)}
.episode-pager{display:grid;grid-template-columns:1fr 1fr;gap:2rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:2rem 0;margin:3rem 0}.episode-pager a:last-child{text-align:right}.episode-pager .label{font-size:.65rem;color:var(--purple);display:block;margin-bottom:.75rem}.episode-pager strong{font-family:var(--display);font-size:1.3rem;line-height:1.3;font-weight:500}.episode-pager a:hover strong{color:var(--purple)}
.episode-season-nav h2{font-size:1.5rem;margin-bottom:1.5rem}.episode-season-nav ol{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 2rem;list-style:none;padding:0}.episode-season-nav a{font-size:.85rem;color:#a89bb5}.episode-season-nav a[aria-current="page"]{color:var(--purple);text-decoration:underline;text-underline-offset:5px}.episode-season-nav a:hover{color:white}
.jaxon-feature>img{object-position:center}.jaxon-feature:after{background:linear-gradient(90deg,#070609fa,#070609bb 42%,#07060910 80%)}
@media(max-width:1050px){.episode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.season-card>div{padding:2rem}}
@media(max-width:760px){.season-card{grid-template-columns:1fr}.season-card>img{height:auto;min-height:0;aspect-ratio:1.5}.season-card>div{padding:1.5rem}.episode-grid{grid-template-columns:1fr}.episode-intro{padding-top:50px}.episode-intro h1{font-size:clamp(2.4rem,9vw,4rem)}.episode-prose p{font-size:1.02rem;line-height:1.85}.episode-reading{padding-top:35px}.series-note{padding:1.5rem}.episode-pager{gap:1.2rem}.episode-pager strong{font-size:1.1rem}.episode-season-nav ol{grid-template-columns:1fr}.jaxon-feature>img{object-position:65%;opacity:.7}.jaxon-feature:after{background:linear-gradient(90deg,#070609e0,#07060966)}}

/* Jaxon artwork always stays fully inside the frame: no face cropping. */
.jaxon-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:4%;padding:70px 5%;background:radial-gradient(ellipse at 95% 70%,#161221,transparent 60%),#07070a;border-bottom:1px solid #302439;max-width:2000px;margin:auto}
.jaxon-hero-copy{padding:1rem 0}.jaxon-hero h1{font-size:clamp(2.7rem,5.6vw,6.3rem);margin:1.5rem 0;line-height:1.08}.jaxon-hero .lead{font-size:1.05rem;margin:1.5rem 0;color:#c6bdcf}.jaxon-hero figure{margin:0;min-width:0;background:#05070a;border:1px solid #29353a}.jaxon-hero figure img{display:block;position:static;width:100%;height:auto;object-fit:contain;opacity:1;max-height:none}
.jaxon-hero .story-entry{gap:.75rem}.jaxon-hero .button{padding:.9rem 1.1rem}
.jaxon-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:4%;padding:70px 5%;min-height:0}.jaxon-feature>img{position:static;grid-column:2;grid-row:1;inset:auto;width:100%;height:auto;object-fit:contain;opacity:1;z-index:auto;border:1px solid #29353a}.jaxon-feature:after{display:none}.jaxon-feature-copy{grid-column:1;grid-row:1;max-width:none}.jaxon-feature h2{font-size:clamp(2.8rem,4.8vw,5.4rem)}
@media(max-width:900px){.jaxon-hero,.jaxon-feature{grid-template-columns:1fr;padding:40px 5%;gap:1.5rem}.jaxon-hero figure{grid-row:1}.jaxon-hero-copy{grid-row:2}.jaxon-hero h1{font-size:clamp(2.7rem,8vw,4.7rem)}.jaxon-feature>img{grid-column:1;grid-row:1;opacity:1}.jaxon-feature-copy{grid-column:1;grid-row:2}.jaxon-feature h2{font-size:clamp(2.7rem,8vw,4.7rem)}.jaxon-hero .lead{font-size:1rem}}

/* Deep service and studio content, with in-page navigation and readable measures. */
.depth-nav{padding:1.5rem 5%;display:flex;align-items:center;gap:.7rem 1.5rem;flex-wrap:wrap;border-bottom:1px solid var(--line);background:#100d15}.depth-nav>.label{flex-basis:100%;color:var(--purple);font-size:.7rem}.depth-nav a{font-size:.8rem;line-height:1.5;color:#bbb1c7;border-bottom:1px solid #524260;padding-bottom:.25rem}.depth-nav a:hover{color:var(--purple)}
.depth-content{max-width:1800px;margin:auto}.depth-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:7%;padding:80px 5%;border-top:1px solid var(--line);scroll-margin-top:2rem}.depth-section h2{font-size:clamp(1.8rem,3.1vw,3.2rem);line-height:1.2;letter-spacing:-.035em;margin-top:1.5rem;max-width:540px}.depth-section .label{color:var(--purple)}.depth-copy{max-width:800px}.depth-copy p{font-size:1rem;line-height:1.85;color:#bdb5c8}.depth-copy p:last-child{margin-bottom:0}
.depth-art{height:330px;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#040405}.depth-art img{width:100%;height:100%;object-fit:cover;object-position:center}
.deliverables-panel{display:grid;grid-template-columns:1fr 1fr;gap:7%;border-top:1px solid var(--line);background:#110d17}.deliverables-panel h2{font-size:clamp(1.9rem,3vw,3rem);margin:1.2rem 0 1.5rem}.deliverables-panel p{max-width:580px}.deliverables-panel ul{list-style:none;margin:0;padding:0}.deliverables-panel li{padding:1rem 0;border-bottom:1px solid #3a2c48;color:#d0c4dd;line-height:1.6}.deliverables-panel li:before{content:'↗';color:var(--purple);margin-right:.8rem}.depth-faq{border-top:1px solid var(--line)}
@media(max-width:760px){.depth-section{grid-template-columns:1fr;gap:1.5rem;padding:55px 5%}.depth-section h2{font-size:1.9rem;margin-top:1rem}.depth-copy p{font-size:.98rem}.depth-art{height:220px}.deliverables-panel{grid-template-columns:1fr;gap:2rem}.depth-nav{gap:.7rem 1rem;padding:1.3rem 5%}.depth-nav a{font-size:.75rem}}

/* Visual-first studio pages: brief copy, big ideas and chrome in motion. */
.punch-page h1,.punch-page h2,.punch-page h3{text-wrap:balance}.punch-hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:2%;padding:65px 5%;min-height:650px;overflow:hidden;background:#070709}.punch-hero-copy{position:relative;z-index:1}.punch-hero h1{font-size:clamp(3.2rem,6.3vw,7rem);line-height:1.08;letter-spacing:-.05em;margin:1.6rem 0}.punch-hero p{max-width:470px;font-size:1.08rem;color:#c8c0d2;margin:1.5rem 0 2rem}.punch-hero .label{color:var(--purple)}
.motion-art{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1;background:#030305}.motion-art .floating-art{display:block;width:100%;height:100%;object-fit:contain;transform-origin:50% 50%;position:relative;z-index:1}.art-aura{position:absolute;inset:15%;z-index:0;border-radius:50%;background:radial-gradient(ellipse,#603a7c40,transparent 70%);pointer-events:none}.punch-hero>.motion-art{margin:-3% -5% -3% 0;aspect-ratio:1}
.punch-section{padding:90px 5%;max-width:1800px;margin:auto;border-top:1px solid var(--line)}.punch-heading{margin-bottom:3rem}.punch-heading>.label{color:var(--purple)}.punch-heading h2{margin-top:1.25rem;font-size:clamp(2.5rem,4.8vw,5rem);max-width:1000px;line-height:1.12}
.punch-service{display:grid;grid-template-columns:1fr 1fr;align-items:center;border-top:1px solid var(--line);min-height:560px}.punch-service-art{min-width:0}.punch-service-art .motion-art{aspect-ratio:1.3}.punch-service-copy{padding:60px 12% 60px 10%}.punch-service:nth-child(even) .punch-service-art{grid-column:2;grid-row:1}.punch-service:nth-child(even) .punch-service-copy{grid-column:1;grid-row:1;padding:60px 10%}.punch-service h2{font-size:clamp(2.5rem,4.3vw,4.8rem);line-height:1.1;margin:1.5rem 0}.punch-service p{max-width:470px;color:#beb5c9;font-size:1rem}.punch-service .label{font-size:.7rem;color:var(--purple)}
.punch-chips{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem;margin:1.5rem 0 2rem;padding:0}.punch-chips li{border:1px solid #50425c;font-size:.7rem;color:#d1c3df;padding:.45rem .8rem}
.punch-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.punch-tile{background:#0e0c12;border:1px solid var(--line);min-width:0;transition:border-color .3s,transform .3s}.punch-tile>.motion-art{aspect-ratio:1.25}.punch-tile>div:last-child{padding:1.8rem}.punch-tile h3{font-family:var(--display);font-size:2rem;letter-spacing:-.03em;margin-bottom:1rem;line-height:1.15}.punch-tile p{font-size:.98rem;line-height:1.65;margin:0;max-width:360px}.punch-tile:hover{border-color:#9f7dcb;transform:translateY(-5px)}
.punch-callout{padding:90px 5%;background:radial-gradient(ellipse at 80% 40%,#24143070,transparent 65%),#0c0910;border-top:1px solid #382843}.punch-callout h2{font-size:clamp(3rem,6vw,6.6rem);line-height:1.08;margin:1.5rem 0}.punch-callout p{max-width:520px;font-size:1.08rem}.punch-callout .button{margin-top:1rem}
.process-panels{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.process-panel{border:1px solid var(--line);background:#0c0a10;overflow:hidden}.process-visual{position:relative}.process-visual .motion-art{aspect-ratio:1.7}.process-index{position:absolute;bottom:0;left:1.5rem;font-family:var(--display);font-size:5rem;color:#d6c5ed;line-height:1;font-weight:500;z-index:2}.process-copy{padding:2rem}.process-copy h2{font-size:2.8rem;margin-bottom:1rem}.process-copy p{font-size:1.02rem;max-width:430px;min-height:3.4rem}.process-output{display:flex;gap:1rem;justify-content:space-between;align-items:center;border-top:1px solid #3a2b45;padding-top:1.3rem}.process-output span{font-size:.6rem;letter-spacing:.1em;color:#ac99bc}.process-output strong{font-size:.85rem;font-weight:500;color:#d0b8ea}
.punch-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}.punch-facts article{border-top:1px solid #5b416f;padding-top:1.3rem}.punch-facts h3{font-family:var(--display);font-size:1.8rem;margin:1rem 0}.punch-facts p{font-size:.95rem;max-width:340px}
.founder-block,.punch-deliverables{display:grid;grid-template-columns:1fr 1fr;align-items:center;border-top:1px solid var(--line)}.founder-block>div:last-child,.punch-deliverables>div:last-child{padding:50px 10%}.founder-block h2{font-size:clamp(3.5rem,7vw,7rem);margin:1.5rem 0}.founder-block .founder-role{font-family:var(--display);font-size:1.6rem;line-height:1.3;color:#d7cde3}.founder-block p{max-width:450px}.punch-deliverables h2{font-size:clamp(2.3rem,4vw,4.5rem);margin:1.5rem 0}.punch-deliverables ul{list-style:none;margin:2rem 0;padding:0}.punch-deliverables li{padding:1rem 0;border-top:1px solid #3a2b47;color:#c6b8d4;font-size:.95rem}.punch-deliverables li:before{content:'↗';color:var(--purple);margin-right:.8rem}
.studio-universe{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:4%;padding:70px 5%;border-top:1px solid var(--line);background:#080b0e}.studio-universe>img{width:100%;height:auto;object-fit:contain}.studio-universe h2{font-size:clamp(2.7rem,4.3vw,4.7rem);margin:1.5rem 0}.studio-universe p{max-width:450px}.journal-mini,.service-next{padding:70px 5%;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%;border-top:1px solid var(--line)}.journal-mini h2,.service-next h2{font-size:clamp(2rem,3vw,3.4rem);margin:1.25rem 0 2rem}.journal-mini details{max-width:600px}.journal-mini details p{font-size:.9rem;line-height:1.65}.service-next>div{padding:1rem 0}.service-next>div:last-child{border-left:1px solid #4b345e;padding-left:12%}
.motion-toggle{position:fixed;bottom:1rem;left:1rem;z-index:30;border:1px solid #655075;background:#100b17ed;color:#d4c5e3;padding:.55rem .8rem;font-size:.7rem;line-height:1.3;backdrop-filter:blur(10px);box-shadow:0 3px 20px #0004}.motion-toggle:hover{border-color:var(--purple)}
@keyframes sculptureFloat{0%,100%{transform:translate3d(0,0,0) rotate(-1deg) scale(.96)}50%{transform:translate3d(0,-9px,0) rotate(1deg) scale(.99)}}
@keyframes chromeAura{0%,100%{opacity:.35;transform:scale(.9)}50%{opacity:.7;transform:scale(1.15)}}
@keyframes gentleEntry{from{transform:translateY(16px);opacity:.65}to{transform:translateY(0);opacity:1}}
.motion-on .motion-art .floating-art{animation:sculptureFloat 8s ease-in-out infinite;animation-play-state:paused}.motion-on .motion-art.art-live .floating-art{animation-play-state:running}.motion-on .motion-art .art-aura{animation:chromeAura 8s ease-in-out infinite;animation-play-state:paused}.motion-on .motion-art.art-live .art-aura{animation-play-state:running}.motion-on .motion-art:nth-child(even) .floating-art{animation-delay:-4s}.motion-on .reveal.is-visible{animation:gentleEntry .65s ease both}.motion-on .read-link:after{display:inline-block;transition:transform .25s}.motion-on .read-link:hover:after{transform:translate(3px,-3px)}
body:not(.motion-on) .punch-tile:hover{transform:none}body:not(.motion-on) .reveal{animation:none}.punch-page~footer{padding-bottom:4rem}
@media(max-width:1050px){.punch-hero{min-height:550px}.punch-service-copy{padding:40px 8%}.punch-service{min-height:480px}.punch-tiles{gap:1rem}.punch-tile>div:last-child{padding:1.4rem}.punch-tile h3{font-size:1.6rem}.process-output{display:block}.process-output strong{display:block;margin-top:.5rem}}
@media(max-width:760px){.punch-hero{grid-template-columns:1fr;padding:45px 5% 0;min-height:0;gap:0}.punch-hero h1{font-size:clamp(2.9rem,10vw,4.7rem)}.punch-hero p{font-size:1rem;max-width:450px}.punch-hero>.motion-art{margin:0 -5%;aspect-ratio:1.5;max-height:400px}.punch-section{padding:60px 5%}.punch-heading h2{font-size:clamp(2.4rem,8vw,3.7rem)}.punch-service{display:flex;flex-direction:column;min-height:0}.punch-service-art{width:100%}.punch-service-art .motion-art{aspect-ratio:1.6}.punch-service-copy,.punch-service:nth-child(even) .punch-service-copy{padding:35px 5% 55px;width:100%}.punch-service h2{font-size:clamp(2.5rem,9vw,4rem)}.punch-tiles,.process-panels,.punch-facts{grid-template-columns:1fr;gap:1.5rem}.punch-tile>.motion-art{aspect-ratio:1.8}.punch-tile h3{font-size:2rem}.punch-callout{padding:65px 5%}.punch-callout h2{font-size:clamp(2.7rem,9vw,4.5rem)}.process-copy{padding:1.5rem}.process-copy p{min-height:0}.process-index{font-size:4rem}.process-copy h2{font-size:2.5rem}.process-output{display:flex}.process-output strong{margin:0}.founder-block,.punch-deliverables,.studio-universe,.journal-mini,.service-next{grid-template-columns:1fr}.founder-block .motion-art,.punch-deliverables .motion-art{aspect-ratio:1.5}.founder-block>div:last-child,.punch-deliverables>div:last-child{padding:40px 5% 60px}.studio-universe{padding:50px 5%;gap:2rem}.journal-mini,.service-next{padding:55px 5%;gap:2.5rem}.service-next>div:last-child{border-left:0;border-top:1px solid #4b345e;padding:2rem 0 0}.motion-toggle{font-size:.65rem;bottom:.7rem;left:.7rem}.punch-facts{gap:1rem}}
@media(prefers-reduced-motion:reduce){.floating-art,.art-aura,.reveal{animation:none!important;transform:none!important}.punch-tile:hover{transform:none!important}}
.punch-page .floating-art{mix-blend-mode:screen}

/* Navigation remains available while reading and completing a project brief. */
:root{--header-offset:108px}html{scroll-padding-top:calc(var(--header-offset) + 24px)}
.site-header{position:sticky;top:0;z-index:100;backdrop-filter:blur(16px)}.skip{z-index:200}
main [id],.brief-progress{scroll-margin-top:calc(var(--header-offset) + 24px)}
.article-toc,.story-index,.editorial-art{top:calc(var(--header-offset) + 24px)}
@media(max-width:1100px){:root{--header-offset:90px}.site-header nav{max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain}}

/* A guided conversation: short prompts, clear choices, a useful final brief. */
.project-flow-page{background:radial-gradient(ellipse at 100% 0%,#25153655,transparent 55%)}
.project-brief{max-width:1200px;margin:auto;padding:55px 5% 85px}.brief-heading{margin-bottom:2.5rem}.brief-heading .label{color:var(--purple);font-size:.75rem}.brief-heading h1{font-size:clamp(2.1rem,3.8vw,3.5rem);margin:1rem 0}.brief-heading p{max-width:600px;font-size:1rem}
.brief-progress{margin:2.5rem 0}.brief-progress>div{display:flex;justify-content:space-between;gap:1rem;font-size:.875rem;color:#b7a8cd;margin-bottom:.8rem}.brief-progress progress{appearance:none;display:block;width:100%;height:3px;border:0;background:#31263d}.brief-progress progress::-webkit-progress-bar{background:#31263d}.brief-progress progress::-webkit-progress-value{background:var(--purple)}.brief-progress progress::-moz-progress-bar{background:var(--purple)}
#project-flow{padding:0;border:0;background:none}#project-flow fieldset{border:0;padding:0;margin:0;min-width:0}.brief-step{min-width:0}.brief-step>legend{width:100%;padding:0;float:none}.brief-step>legend>.label{display:block;color:var(--purple);font-size:.75rem;margin-bottom:1rem}.brief-question{display:block;font-family:var(--display);font-weight:500;letter-spacing:-.04em;font-size:clamp(2.5rem,5vw,4.3rem);line-height:1.12;margin:0 0 1.25rem;text-wrap:balance}.brief-question:focus{outline:none}.brief-help{max-width:750px;margin:0 0 2rem;font-size:1rem;color:#bdb4c8;line-height:1.65}
.brief-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.brief-option{display:flex;align-items:flex-start;gap:1rem;position:relative;margin:0;padding:1.2rem;border:1px solid #3c3049;background:#100d16;cursor:pointer;transition:background .2s,border-color .2s}.brief-option:hover{border-color:#9172b2;background:#171120}.brief-option:has(input:checked){border-color:#bca5ff;background:#2a1c3c}.brief-option:focus-within{outline:2px solid var(--purple);outline-offset:3px}.brief-option input{width:19px;height:19px;flex:0 0 19px;margin:.2rem 0 0;padding:0;accent-color:#bca5ff}.choice-mark{display:none}.brief-option strong{display:block;font-size:1.08rem;font-weight:500;line-height:1.4;color:#f0eaf7}.brief-option small{display:block;font-size:.875rem;line-height:1.5;color:#bcb0cb;margin-top:.4rem}
#project-flow .budget-period{display:flex;flex-wrap:wrap;gap:.8rem 1.5rem;margin-top:2rem;border-top:1px solid #42314f;padding-top:1.2rem}.budget-period legend{font-size:1rem;padding:0 .8rem 0 0;color:#e5d9ef}.budget-period label,.brief-consent{display:flex;align-items:flex-start;gap:.8rem;font-size:.875rem;line-height:1.6;margin:0}.budget-period input,.brief-consent input{width:18px;height:18px;flex:0 0 18px;margin:.25rem 0 0;padding:0;accent-color:#bca5ff}.brief-step>label{font-size:1rem;margin-bottom:1.5rem}.brief-step input:not([type=radio]):not([type=checkbox]),.brief-step textarea{font-size:1rem}.brief-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.5rem}.brief-contact-fields label{font-size:1rem}.brief-contact-fields label:last-child{grid-column:1/-1}.brief-privacy{font-size:.875rem;line-height:1.7;color:#aca0ba;max-width:780px;margin:1.5rem 0}.brief-error{color:#e5bbef;min-height:1.5em;margin:1.3rem 0 .5rem;font-size:.95rem}.brief-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.3rem;border-top:1px solid #463052}.brief-controls .button{margin-left:auto;min-width:170px}.project-brief .text-button{font-size:.875rem;padding:.5rem 0;color:#cfbde5}.project-brief .button{font-size:.95rem}.brief-review>a{color:#cbb4ef;overflow-wrap:anywhere}
#brief-summary{display:grid;grid-template-columns:1fr 1fr;gap:1rem}#brief-summary>section{padding:1.4rem;border:1px solid #3e304b;background:#110e18;min-width:0}#brief-summary h3{font-family:var(--display);font-size:1.15rem;line-height:1.3;color:#b79bcf}#brief-summary p{margin:1rem 0 .6rem;color:#e8dfee;font-size:1rem;white-space:pre-wrap;overflow-wrap:anywhere}.brief-send{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:2rem}#brief-send-status{color:#cbb4ef;margin:1rem 0 0}
.matrix-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:5%;padding:65px 5%;border-top:1px solid #4a345c;background:#09070e}.matrix-feature>.motion-art{aspect-ratio:1}.matrix-feature h2{font-size:clamp(3.5rem,6vw,6.5rem);margin:1.5rem 0;line-height:1.02}.matrix-feature .label{color:#bca5ff;font-size:.875rem}.matrix-feature p{max-width:440px;color:#c8bad5;font-size:1.1rem}.matrix-feature .punch-chips li{font-size:.875rem}.social-home-strip{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding:65px 5%;border-top:1px solid #493453;background:linear-gradient(120deg,#170f23,#08080c)}.social-home-strip h2{font-size:clamp(2.5rem,4.3vw,4.5rem);margin-top:1.4rem}.social-home-strip p{max-width:490px;color:#c0b4ce;font-size:1.1rem}
@media(max-width:680px){.project-brief{padding:35px 5% 65px}.brief-heading h1{font-size:2.1rem}.brief-heading{margin-bottom:2rem}.brief-question{font-size:clamp(2.25rem,8vw,3.3rem);overflow-wrap:anywhere}.brief-options,.brief-contact-fields,#brief-summary{grid-template-columns:1fr}.brief-option{padding:1rem}.brief-contact-fields{gap:0}.brief-progress>div{font-size:.8rem}.brief-controls .button{min-width:0}.brief-controls .text-button{flex-shrink:0}.brief-send{align-items:stretch;flex-direction:column}.brief-send .text-button{align-self:flex-start}.matrix-feature,.social-home-strip{grid-template-columns:1fr;gap:2rem;padding:45px 5%}.matrix-feature>.motion-art{aspect-ratio:1.3}.matrix-feature h2{font-size:clamp(3.5rem,14vw,5rem)}}

/* Three-city contact page, with the guided project brief below. */
.contact-hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:4%;padding:50px 5% 60px;background:#07070a;border-bottom:1px solid #382c44;overflow:hidden}.contact-hero>div:first-child{min-width:0}.contact-hero .label{font-size:.875rem;color:#bca5ff}.contact-hero h1{font-size:clamp(3.3rem,6.6vw,7rem);line-height:1.08;margin:1.4rem 0 1.7rem}.contact-hero p{font-size:1.08rem;color:#c7bdcf;max-width:560px}.contact-email{display:inline-block;font-family:var(--display);font-size:clamp(1.1rem,2vw,1.7rem);color:#d5c3f4;border-bottom:1px solid #73578b;padding-bottom:.35rem;overflow-wrap:anywhere;max-width:100%}.contact-email:hover{color:white;border-color:#d5c3f4}.contact-actions{margin-top:2rem}.contact-hero>.motion-art{aspect-ratio:1;mix-blend-mode:screen}
.contact-locations{padding:65px 5% 75px;max-width:1800px;margin:auto;border-bottom:1px solid var(--line)}.contact-location-heading .label{font-size:.75rem;color:#b9a6d0}.contact-location-heading h2{font-size:clamp(2rem,3.5vw,3.8rem);margin:1.2rem 0 2.5rem}.contact-city-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.contact-city{position:relative;min-width:0;border:1px solid #42324f;background:linear-gradient(150deg,#1b1226,#0c0a10 70%);padding:2rem}.contact-city-index{display:block;font-family:var(--display);font-size:.875rem;letter-spacing:.12em;color:#b59dce;margin-bottom:2.7rem}.contact-city h3{font-family:var(--display);font-size:clamp(2rem,3.3vw,3.3rem);font-weight:500;letter-spacing:-.04em;line-height:1.1}.contact-region{font-size:.95rem;color:#baaac9;margin:1rem 0 2.3rem}.contact-city address{font-style:normal;color:#e1d6ec;font-size:1rem;line-height:1.7;margin-bottom:2rem}.contact-city-link{display:inline-block;font-size:.95rem;border-bottom:1px solid #8d6eaa;padding:.5rem 0;color:#d8c1f0}.contact-city-link:hover{color:white;border-color:white}.brief-heading h2{font-size:clamp(2.1rem,3.8vw,3.5rem);margin:1rem 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.contact-hero{grid-template-columns:1fr;padding:35px 5% 0;gap:1.5rem}.contact-hero h1{font-size:clamp(3.5rem,12vw,5rem)}.contact-hero>.motion-art{aspect-ratio:1.5;max-height:360px}.contact-city-grid{grid-template-columns:1fr;gap:1rem}.contact-city{padding:1.5rem}.contact-city-index{margin-bottom:1.5rem}.contact-city h3{font-size:2.5rem}.contact-region{margin-bottom:1rem}.contact-locations{padding:45px 5%}.brief-heading h2{font-size:2.1rem}}
.contact-location-heading h2{margin-bottom:1.2rem}.contact-location-note{max-width:760px;color:#c6b9d1;font-size:1rem;line-height:1.65;margin-bottom:2.5rem}.contact-city-index{margin-bottom:1.2rem}.contact-city-status{display:inline-block;font-size:.875rem;line-height:1.4;color:#ceb8ec;padding:.35rem .55rem;border:1px solid #634c79;margin-bottom:1.5rem}.contact-postal{font-size:1rem;line-height:1.8;color:#e3d9ec;margin-bottom:1.5rem}.contact-provider{display:block;width:fit-content;font-size:.875rem;color:#bca7d2;text-decoration:underline;text-underline-offset:4px;margin-bottom:.8rem}.contact-provider:hover{color:white}.contact-region{margin-bottom:1.4rem}

/* Contact remains part of the site; project questions are a focused standalone flow. */
.contact-city-logo{display:block;width:min(100%,270px);height:auto;object-fit:contain;margin:0 0 2rem;padding-bottom:1.5rem;border-bottom:1px solid #493556}.contact-city{padding-top:1.5rem}
html:has(.standalone-project){scroll-padding-top:24px}.standalone-project{--header-offset:0px;min-height:100svh}.standalone-project .project-flow-page{min-height:100svh;background:radial-gradient(ellipse at 80% 0%,#25153655,transparent 65%)}.standalone-project .project-brief{padding:35px 5% 55px;max-width:1150px}.standalone-project .brief-progress{margin:0 0 2.5rem}.standalone-project .brief-step>legend>.label{display:none}.standalone-project .brief-question{font-size:clamp(2.6rem,5vw,4.7rem)}.standalone-project .brief-controls{margin-bottom:1rem}.site-header nav .mobile-project-link{display:none}
@media(min-width:1101px) and (max-width:1280px){:root{--header-offset:90px}.site-header{height:90px;gap:1rem}.header-cta{display:none}.menu-toggle{display:flex;gap:1rem;margin-left:auto;align-items:center;background:none;border:0;color:white;padding:.5rem}.menu-toggle span{color:var(--purple);font-size:1.5rem}.site-header nav{display:none;position:absolute;left:0;right:0;top:90px;background:#101012;padding:1.5rem 5% 2rem;border-bottom:1px solid var(--line);margin:0;flex-direction:column;gap:1.3rem;max-height:calc(100dvh - 90px);overflow-y:auto}.site-header nav.open{display:flex}}
@media(max-width:1280px){.site-header nav .mobile-project-link{display:block;color:var(--purple)}}
@media(max-width:680px){.standalone-project .project-brief{padding-top:24px}.standalone-project .brief-progress{margin-bottom:2rem}.standalone-project .brief-question{font-size:clamp(2.25rem,8vw,3.3rem)}.contact-city-logo{width:min(100%,260px)}}

/* Keep the sweeping silhouette and orbiting fragments fully visible. */
img[src="/assets/organic-surge.webp"]{object-fit:contain;object-position:center}

/* Preserve the full silhouette of the flowing cube and crystal sculptures. */
img[src="/assets/organic-knot.webp"],img[src="/assets/chrome-undertow.webp"]{object-fit:contain;object-position:center}

/* Cyber Jaxon: complimentary illustrated fan edition. */
.jaxon-gift{position:relative;isolation:isolate;display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:2rem;margin:70px auto;padding:clamp(28px,5vw,76px);width:90%;max-width:1500px;border:1px solid #533878;border-radius:28px;background:radial-gradient(ellipse at 80% 65%,#62359130,transparent 57%),#0b090e;overflow:hidden}
.jaxon-gift .label{color:#c2b8cd;letter-spacing:.22em}.jaxon-gift-issue{font-family:'Chakra Petch',sans-serif;font-weight:600;font-size:1.05rem;letter-spacing:.08em;margin:1.7rem 0 1rem}.jaxon-gift-issue span{display:inline-block;margin-left:.8rem;color:#bc92ff}
.jaxon-gift h2{font-family:'Chakra Petch',sans-serif;font-size:clamp(2.5rem,4.6vw,5.3rem);font-weight:700;line-height:1.03;letter-spacing:-.035em;margin:0 0 1.6rem}.jaxon-gift h2 span{color:#b58af6}.jaxon-gift-description{max-width:570px;font-size:1.1rem;line-height:1.7;color:#c5bdce;margin-bottom:1.8rem}.jaxon-gift-download{background:linear-gradient(115deg,#6331a3,#2b153f);border:1px solid #a87ae7;color:#fff;white-space:normal;text-align:center;min-height:56px;padding:1rem 1.4rem}.jaxon-gift-download:hover{background:#7543ac;border-color:#d8baff}.jaxon-gift-download:focus-visible{outline:3px solid white;outline-offset:5px}.jaxon-gift-details{font-size:.875rem;line-height:1.65;color:#b9afc5;margin-top:1rem;max-width:530px}.jaxon-gift-art{display:flex;align-items:center;justify-content:center;min-width:0}.jaxon-gift-art img{width:100%;max-width:600px;max-height:900px;height:auto;object-fit:contain;filter:drop-shadow(0 20px 30px #0008)}
@media(max-width:850px){.jaxon-gift{grid-template-columns:1fr;padding:30px 24px;gap:24px;margin:40px auto}.jaxon-gift-art{grid-row:1}.jaxon-gift-art img{max-height:560px;max-width:100%}.jaxon-gift h2{font-size:clamp(2.25rem,8vw,4rem)}.jaxon-gift-issue span{margin-left:0;display:block;margin-top:.3rem}.jaxon-gift-download{width:100%}}
/* Name and email capture, with a PDF link revealed only after server confirmation. */
.jaxon-capture-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.jaxon-capture-fields label{display:grid;gap:9px;font-size:.875rem;color:#e0d7eb}.jaxon-capture-fields input{width:100%;min-width:0;min-height:54px;border:1px solid #584b66;background:#16111d;color:#fff;padding:14px;font:inherit;font-size:1rem;border-radius:10px}.jaxon-capture input:focus-visible{outline:2px solid #bd92ff;outline-offset:3px}.jaxon-capture-notice{font-size:.875rem;line-height:1.6;color:#bdb1cb;margin:14px 0}.jaxon-capture-notice a{color:#d5b5ff;text-decoration:underline}.jaxon-capture-consent{display:flex;align-items:flex-start;gap:10px;font-size:.875rem;line-height:1.55;color:#cec3d9;margin:12px 0}.jaxon-capture-consent input{width:18px;height:18px;flex:0 0 18px;margin-top:3px;accent-color:#a776ed}.jaxon-capture .jaxon-gift-download{width:100%;margin-top:12px;cursor:pointer;font:inherit;font-weight:600}.jaxon-capture button:disabled{opacity:.65;cursor:wait}.jaxon-capture-error{color:#ffb5b5;font-size:1rem;line-height:1.5}.jaxon-capture-success p{color:#e0cbff;font-size:1.05rem}.jaxon-capture [hidden]{display:none!important}.jaxon-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:580px){.jaxon-capture-fields{grid-template-columns:1fr}}

/* Project images come from their own brand sites. */
.project-case img{object-fit:contain;background:#0b090e;height:auto;max-height:740px}.project-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.project-facts article{border-top:1px solid var(--line);padding-top:1.3rem}.project-facts h2{font-size:clamp(1.5rem,2.2vw,2.1rem);line-height:1.15;margin:1rem 0}.project-facts p{font-size:1rem;line-height:1.65;color:var(--muted)}.project-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.8rem}.project-maris-xclaim img,.project-razar-optic img,.project-flycube img,.project-awkone img{object-fit:contain;background:#0b090e}.card-caption{gap:1rem}.card-caption span{text-align:right}
@media(max-width:760px){.project-facts{grid-template-columns:1fr}.project-actions{flex-direction:column;align-items:flex-start}.card-caption{align-items:flex-start}.card-caption span{max-width:48%}}

/* Preserve the complete silhouette of the new Services sculptures. */
img[src^="/assets/chrome-"]{object-fit:contain;object-position:center}

/* A distinct, larger sculpture for the Services overview hero. */
.services-overview-hero{grid-template-columns:1fr 1.15fr;gap:1%}
.sculpture-hero{grid-template-columns:minmax(0,.95fr) minmax(0,1.2fr);gap:1%;padding-right:3%}
img[src^="/assets/sculpture-"]{object-fit:contain;object-position:center}
.sculpture-hero>.motion-art{margin:-5% -4% -5% -2%;aspect-ratio:1.12;max-height:none;mix-blend-mode:screen}
@media(max-width:760px){.sculpture-hero{grid-template-columns:minmax(0,1fr);padding:40px 5% 0;gap:1rem}.sculpture-hero>.motion-art{margin:0 -5.5%;aspect-ratio:1.12;max-height:none}}
.services-overview-hero>.motion-art{margin:-5% -5% -5% -3%;aspect-ratio:1}
@media(max-width:760px){.services-overview-hero{grid-template-columns:1fr}.services-overview-hero>.motion-art{margin:0 -5%;aspect-ratio:1;max-height:none}}

/* Article cards keep every sculpture silhouette visible. */
.article-image img{object-fit:contain;object-position:center}

/* Supplied Jaxon portrait over the full-width clock-tower artwork. */
.jaxon-cinematic{position:relative;isolation:isolate;width:100%;max-width:none;margin:0;min-height:680px;padding:clamp(48px,6vw,110px) 5%;overflow:hidden;background-image:linear-gradient(90deg,rgba(4,8,12,.93),rgba(4,8,12,.69) 37%,rgba(4,8,12,.14) 70%),url('/assets/cyber-jaxon-clock-background.webp');background-size:cover;background-position:center;background-repeat:no-repeat;border-bottom:1px solid #393131}
.jaxon-cinematic .jaxon-hero-copy,.jaxon-cinematic .jaxon-feature-copy{position:relative;z-index:1}
.jaxon-cinematic .lead,.jaxon-cinematic .jaxon-feature-copy p{color:#ede7e5;text-shadow:0 2px 14px #000}
.jaxon-cinematic>figure,.jaxon-feature.jaxon-cinematic>img{border:1px solid #72929a66;box-shadow:0 24px 70px #0009;background:#081015}
.jaxon-cinematic>figure img,.jaxon-feature.jaxon-cinematic>img{width:100%;height:auto;object-fit:contain;opacity:1}
@media(max-width:900px){.jaxon-cinematic{min-height:0;padding:48px 5%;gap:28px;background-image:linear-gradient(180deg,rgba(4,8,12,.15),rgba(4,8,12,.56) 40%,rgba(4,8,12,.94) 72%),url('/assets/cyber-jaxon-clock-background.webp');background-position:50% top}.jaxon-cinematic>figure,.jaxon-feature.jaxon-cinematic>img{max-width:680px;margin:0 auto}.jaxon-cinematic .jaxon-hero-copy,.jaxon-cinematic .jaxon-feature-copy{padding:0}}

/* Product MVP service: numbered stages share the existing service-card grid. */
.mvp-stages .label{display:block;margin-bottom:1.5rem;color:var(--purple)}
.mvp-stages .punch-tile>div:last-child{padding:clamp(1.5rem,3vw,3rem)}

/* Supplied Cyber Jaxon bank: retain complete frames and make the story visual. */
.jaxon-world-art{margin:0 0 1.6rem}.jaxon-world-art img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:contain;background:#05080b;border:1px solid #2a3540}.story-world>div{min-width:0}
.jaxon-image-link{display:block;cursor:zoom-in}.jaxon-image-link:focus-visible{outline:3px solid #c9afff;outline-offset:5px}.jaxon-scene{margin:2.5rem -8% 3.5rem;width:116%}.jaxon-scene img{display:block;width:100%;height:auto;border:1px solid #32404b;background:#05080b}.jaxon-scene figcaption,.jaxon-gallery-item figcaption{font-size:.875rem;line-height:1.5;color:#b9b6c2;margin-top:.8rem}.jaxon-gallery{border-top:1px solid var(--line)}.jaxon-gallery-intro{font-size:1rem;max-width:670px;margin:1.5rem 0 2.5rem}.jaxon-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.5rem;margin-top:2rem}.jaxon-gallery-item{margin:0;min-width:0}.jaxon-gallery-item img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:contain;background:#05080b;border:1px solid #28353c;transition:border-color .2s}.jaxon-gallery-item a:hover img{border-color:var(--purple)}.jaxon-gallery-controls{margin-top:2.5rem;text-align:center}.jaxon-gallery-controls p{margin:0 0 1rem;font-size:.875rem}.jaxon-gallery [hidden]{display:none!important}
.jaxon-viewer{border:1px solid #495767;border-radius:0;background:#070a10;color:#f5f1fa;padding:clamp(12px,2vw,24px);width:min(1500px,96vw);max-width:96vw;max-height:96dvh;margin:auto;overflow:auto}.jaxon-viewer::backdrop{background:#000e;backdrop-filter:blur(8px)}.jaxon-viewer figure{margin:12px 0}.jaxon-viewer figure img{display:block;width:100%;height:min(72dvh,900px);object-fit:contain;background:#030507}.jaxon-viewer figcaption{margin-top:12px;font-size:1rem;line-height:1.5;text-align:center}.jaxon-viewer-toolbar,.jaxon-viewer-nav{display:flex;align-items:center;justify-content:space-between;gap:16px}.jaxon-viewer-toolbar>span{font-size:.875rem;color:#c5bdd0}.jaxon-viewer button{font:inherit;font-size:.875rem;min-height:44px;padding:10px 16px;background:#191321;border:1px solid #665179;color:#f6efff;cursor:pointer}.jaxon-viewer button:focus-visible{outline:3px solid #c9afff;outline-offset:3px}.jaxon-viewer button:disabled{opacity:.4;cursor:default}.jaxon-viewer-open{overflow:hidden}
@media(max-width:1000px){.jaxon-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jaxon-scene{margin:2rem 0 3rem;width:100%}}
@media(max-width:640px){.jaxon-gallery-grid{grid-template-columns:1fr;gap:2rem}.jaxon-gallery-item img{aspect-ratio:auto}.jaxon-viewer figure img{height:65dvh}.jaxon-viewer-nav button{font-size:.875rem;padding:10px}.jaxon-world-art{margin-bottom:1rem}}
@media(prefers-reduced-motion:reduce){.jaxon-gallery-item img{transition:none}}

/* Cyber Jaxon identity and the MARS Comics collaboration credit. */
.jaxon-cinematic .jaxon-brand-title{margin:1.8rem 0 1.6rem;line-height:1}
.jaxon-wordmark{display:block;width:100%;max-width:620px;height:auto;object-fit:contain;filter:drop-shadow(0 8px 18px #0009)}
.jaxon-feature .jaxon-feature-title{font-family:var(--display);font-size:clamp(1.8rem,3vw,3rem);line-height:1.2;margin:0 0 1.4rem;text-wrap:balance}
.jaxon-feature-title em{font-style:normal;color:#e6b5ae}
.jaxon-feature-portrait{grid-column:2;grid-row:1;min-width:0;width:100%;margin:0}
.jaxon-feature-portrait>img{display:block;width:100%;height:auto;object-fit:contain}
.jaxon-partnership{display:flex;align-items:center;justify-content:center;gap:1.15rem;padding:1rem 1.4rem;background:linear-gradient(115deg,#161a20,#090c10);border-top:1px solid #64717c55;text-align:left}
.jaxon-cinematic .jaxon-partnership .mars-comics-mark{flex:0 0 88px;width:88px;height:88px;object-fit:contain;filter:drop-shadow(0 5px 9px #0007)}
.jaxon-partnership>span{font-size:.875rem;line-height:1.5;color:#c9cbd0}
.jaxon-partnership strong{display:block;font-family:var(--display);font-size:1.15rem;letter-spacing:.12em;color:#f1f3f5;margin-top:.25rem}
@media(max-width:900px){.jaxon-feature-portrait{grid-column:1;grid-row:1}.jaxon-cinematic .jaxon-brand-title{margin:1.25rem 0}.jaxon-wordmark{max-width:540px}.jaxon-feature .jaxon-feature-title{font-size:clamp(1.8rem,6vw,2.5rem)}}
@media(max-width:480px){.jaxon-partnership{gap:.8rem;padding:.85rem}.jaxon-cinematic .jaxon-partnership .mars-comics-mark{flex-basis:72px;width:72px;height:72px}.jaxon-partnership strong{font-size:1rem;letter-spacing:.08em}}

/* Seamless black for the process/studio hero sculptures.
   Screen was applied to both the image and its container, adding the embedded
   near-black RGB values to the page twice. Lighten uses the darker floor of the
   surrounding page; a small black-point adjustment removes compression noise.
   Do not isolate the stage: the image must blend against the actual page.
   The source artwork, dimensions, animation, and responsive files stay intact. */
.punch-page .motion-art.sculpture-black-stage{background:transparent;isolation:auto;mix-blend-mode:normal}
.punch-page .sculpture-black-stage .art-aura{display:none}
.punch-page .sculpture-black-stage .floating-art.sculpture-neutral-black{mix-blend-mode:lighten;filter:contrast(1.08)}

/* Founder portrait sculpture: support the biography at a restrained scale. */
.punch-page .founder-block .motion-art{aspect-ratio:auto;min-height:0;padding:44px 12%;display:flex;align-items:center;justify-content:center}
.punch-page .founder-block .motion-art .floating-art{width:100%;height:auto;max-width:520px;object-fit:contain;flex:0 1 auto}
@media(max-width:760px){.punch-page .founder-block .motion-art{padding:28px 16%}.punch-page .founder-block .motion-art .floating-art{max-width:320px}}

/* A decoded video frame replaces the still only after successful playback. */
.hero .hero-video{opacity:0;pointer-events:none;transition:opacity .4s ease;object-fit:cover}
.hero.hero-video-active .hero-video{opacity:.95}
.hero.hero-video-active .hero-poster{visibility:hidden}
@media(max-width:760px){.hero.hero-video-active .hero-video{opacity:.65}}
@media(prefers-reduced-motion:reduce){.hero .hero-video{display:none!important}.hero.hero-video-active .hero-poster{visibility:visible}}

/* Optional logo-led homepage hero. Set design/home-hero.json to classic to revert. */
.hero.hero-brand{display:grid;place-items:center;min-height:560px;height:calc(100svh - 108px);max-height:940px;padding:48px 0;background:#000;isolation:isolate}
.hero.hero-brand .hero-art{inset:auto;left:50%;top:50%;width:auto;height:98%;max-width:none;object-fit:contain;object-position:center;transform:translate(-71%,-53%);opacity:.72;z-index:0;mix-blend-mode:lighten;filter:contrast(1.05);pointer-events:none}
.hero.hero-brand:after{inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at center,rgba(0,0,0,.35) 0%,rgba(0,0,0,.10) 54%,rgba(0,0,0,.75) 100%)}
.hero.hero-brand .hero-brandmark{position:relative;z-index:2;display:block;width:min(88vw,1280px);max-width:none;margin:0;padding:0;line-height:0;font-size:0}
.hero-brand-wordmark{display:block;width:100%;height:auto;max-width:none;filter:drop-shadow(0 0 2px #000) drop-shadow(0 9px 24px rgba(0,0,0,.85))}
@media(max-width:760px){.hero.hero-brand{height:calc(82svh - 88px);min-height:400px;max-height:680px;padding:32px 0}.hero.hero-brand .hero-art{height:88%;opacity:.67}.hero.hero-brand .hero-brandmark{width:94vw}}
@media(max-width:440px){.hero.hero-brand{min-height:370px}.hero.hero-brand .hero-art{height:80%}}

/* Mint text highlights belong only to CR Resistance display titles. */
:root{--title-highlight:#a5f2d3}
.cr-reference-title em,.cr-reference-title .cr-title-accent,.jaxon-gift h2.cr-reference-title span{color:var(--title-highlight)}
body .cr-title-neutral em,body .cr-title-neutral .cr-title-accent,body .jaxon-gift .cr-title-neutral span{color:inherit!important}
.plus,.cr-mint-symbol,.menu-toggle>span{color:var(--title-highlight)}
.read-link,.header-cta,.text-button,.contact-email,.contact-city-link{border-bottom-color:var(--title-highlight)}
.read-link:after{color:var(--title-highlight)}
.contact-email:hover,.contact-city-link:hover{border-bottom-color:var(--title-highlight)}
.article-prose a,.contact-provider,.episode-season-nav a[aria-current="page"],.jaxon-capture-notice a{text-decoration-color:var(--title-highlight)}

/* CR reference alphabet: distinct uppercase and lowercase, Latin accents and matching symbols. */
@font-face{font-family:'CR Resistance';src:url('/assets/fonts/CRResistance-Regular.woff2?v=1') format('woff2');font-weight:400;font-style:normal;font-display:swap}
main .cr-reference-title.cr-reference-title,.cr-reference-title.cr-reference-title{font-family:'CR Resistance',var(--display);font-weight:400;font-synthesis:none;letter-spacing:0;line-height:1.32;word-break:normal;overflow-wrap:break-word;text-transform:uppercase;text-wrap:balance}
/* Display lettering carries the attitude; supporting titles stay easy to read. */
.punch-page .floating-art.sculpture-fluid-chrome{padding:5%;mix-blend-mode:normal}
@font-face{font-family:'CR Reading';src:url('/assets/fonts/SpaceGrotesk-Regular.woff2?v=1') format('woff2');font-weight:400;font-style:normal;font-display:swap}
main .cr-readable-title.cr-readable-title,.cr-readable-title.cr-readable-title{font-family:'CR Reading',var(--body);font-weight:400;letter-spacing:0;line-height:1.3;text-transform:uppercase;word-break:normal;overflow-wrap:break-word;text-wrap:pretty}
main .cr-reference-title.cr-title-long,.cr-reference-title.cr-title-long{line-height:1.32}
@media(max-width:760px){
 main .cr-reference-title.cr-reference-title,.cr-reference-title.cr-reference-title{font-size:clamp(2.1rem,7.6vw,3.4rem);line-height:1.18;max-width:100%;min-width:0}
 main h1.cr-reference-title.cr-reference-title{font-size:clamp(2.4rem,9vw,4.2rem);line-height:1.16}
 main .cr-reference-title.cr-title-long,.cr-reference-title.cr-title-long{font-size:clamp(2rem,7.2vw,3.2rem);line-height:1.22}
 main h1.cr-reference-title.cr-title-long{font-size:clamp(2.2rem,8vw,3.6rem);line-height:1.2}
 .closing h2.cr-reference-title{font-size:clamp(2.8rem,10vw,4.8rem);line-height:1.16}
 main .cr-readable-title.cr-readable-title,.cr-readable-title.cr-readable-title{line-height:1.35}
}
/* Large content blocks use CR Resistance at their existing mobile sizes. */
.razar-site-presentation{padding-top:70px}
.razar-site-figure{max-width:760px;margin:0 auto}
.razar-preview-bar{display:flex;align-items:center;gap:1rem;padding:14px 20px;background:#111114;border:1px solid var(--line);border-bottom:0;border-radius:18px 18px 0 0;font-size:.65rem;letter-spacing:.13em;color:var(--muted)}
.razar-preview-dots{display:flex;gap:6px}.razar-preview-dots i{width:6px;height:6px;background:#69656f;border-radius:50%}.razar-preview-dots i:last-child{background:var(--title-highlight)}
.razar-site-window{height:min(78vh,760px);overflow-y:auto;overscroll-behavior-y:contain;border:1px solid var(--line);border-radius:0 0 18px 18px;background:#090909;scrollbar-color:var(--purple) #111114;scrollbar-width:thin}
.razar-site-window img{width:100%;height:auto;max-height:none;object-fit:contain}
.razar-site-window:focus-visible{outline:2px solid var(--purple);outline-offset:4px}
.razar-site-figure figcaption{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:1.2rem;color:var(--muted);font-size:.8rem}
@media(max-width:760px){.razar-site-presentation{padding-top:45px}.razar-site-window{height:min(72vh,620px)}.razar-site-figure figcaption{align-items:flex-start;flex-direction:column;gap:.8rem}}
@media(max-width:760px){
 main .editorial-block h2.cr-reference-title{font-size:1.7rem;line-height:1.18}
 main .process-copy h2.cr-reference-title{font-size:2.5rem;line-height:1.18}
 main .hub-card h2.cr-reference-title{font-size:clamp(1.8rem,3vw,3rem);line-height:1.18}
 main .inline-cta h2.cr-reference-title{font-size:clamp(1.7rem,3vw,3rem);line-height:1.18}
}

/* Portfolio captures share RAZAR's display width and scroll frame. */
.portfolio-site-presentation{padding-top:70px}
.portfolio-site-figure{max-width:760px;margin:0 auto}
.portfolio-preview-bar{display:flex;align-items:center;gap:1rem;padding:14px 20px;background:#111114;border:1px solid var(--line);border-bottom:0;border-radius:18px 18px 0 0;font-size:.75rem;letter-spacing:.08em;color:var(--muted)}
.portfolio-preview-dots{display:flex;gap:6px}.portfolio-preview-dots i{width:6px;height:6px;background:#69656f;border-radius:50%}.portfolio-preview-dots i:last-child{background:var(--title-highlight)}
.portfolio-site-window{height:min(78vh,760px);overflow-y:auto;overscroll-behavior-y:contain;border:1px solid var(--line);border-radius:0 0 18px 18px;background:#090909;scrollbar-color:var(--purple) #111114;scrollbar-width:thin}
.portfolio-site-window img{width:100%;height:auto;max-height:none;object-fit:contain}
.portfolio-site-window:focus-visible{outline:2px solid var(--purple);outline-offset:4px}
.portfolio-site-figure figcaption{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:1.2rem;color:var(--muted);font-size:.8rem}
@media(max-width:760px){.portfolio-site-presentation{padding-top:45px}.portfolio-site-window{height:min(72vh,620px)}.portfolio-site-figure figcaption{align-items:flex-start;flex-direction:column;gap:.8rem}}

/* Supplied portfolio covers: show the complete website viewport and dark UI. */
.work-grid{align-items:stretch}
.project-image.project-screenshot{aspect-ratio:1890 / 1130;background:transparent;border-radius:18px;isolation:isolate}
.project-image.project-screenshot img{width:100%;height:100%;object-fit:contain;background:transparent}
.work-card:hover .project-screenshot img{transform:none}
.project-screenshot .tag{display:none}
.project-case.project-screenshot{max-width:1380px;margin:0 auto;padding:0 5%;background:transparent}
.project-case.project-screenshot img{width:100%;height:auto;max-height:none;object-fit:contain;background:transparent}

/* Two-line homepage rallying cry, set in the custom CR letterforms. */
.hero.hero-brand h1.hero-brandmark.hero-slogan{width:min(88vw,1280px);max-width:none;font-family:'CR Resistance',var(--display);font-weight:400;font-synthesis:none;letter-spacing:0;line-height:1;color:#fff;text-align:center;text-wrap:nowrap;overflow-wrap:normal;word-break:normal;text-shadow:0 4px 22px #000;font-size:min(16.4vw,238px)}
.hero.hero-brand .hero-slogan .hero-slogan-line{display:block;white-space:nowrap;color:#fff;line-height:1}
.hero.hero-brand .hero-slogan .hero-slogan-line-2{font-size:1em;width:max-content;margin-inline:auto;text-align:left;letter-spacing:.039em;font-kerning:normal;transform:translateX(.094em)}
@media(max-width:760px){.hero.hero-brand h1.hero-brandmark.hero-slogan{width:88vw;font-size:16.4vw}.hero.hero-brand .hero-slogan .hero-slogan-line-2{font-size:1em}}

/* FanFactors: founder-led AI development case study. */
.ff-case{padding-top:70px;padding-bottom:70px;border-top:1px solid var(--line)}.ff-case>h2{font-size:clamp(2.6rem,5.6vw,6rem);line-height:1.12;margin:1.5rem 0 2rem;max-width:1200px}.ff-case-lead{font-size:clamp(1.1rem,1.7vw,1.35rem);line-height:1.7;max-width:950px;color:#d4d2da}.ff-case-metrics{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:2rem;padding:2.5rem 0;margin:3rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ff-case-metrics dt{font-family:var(--body);font-weight:600;font-size:clamp(2rem,4.2vw,4.5rem);line-height:1.2;color:var(--title-highlight,#a1ead9)}.ff-case-metrics dd{margin:.8rem 0 0;color:#c2c0ca;font-size:1rem;line-height:1.5}.ff-case-story,.ff-case-comparison,.ff-case-method{margin-top:3.5rem}.ff-case h3{font-family:var(--body);font-size:clamp(1.5rem,2.5vw,2.2rem);line-height:1.3;margin-bottom:1.2rem}.ff-case-story p,.ff-case-comparison>p{max-width:950px;font-size:1.05rem;line-height:1.8}.ff-case-method ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.ff-case-method li{padding-top:1.5rem;border-top:1px solid var(--line)}.ff-case-method h3{font-size:1.4rem;margin-top:1rem}.ff-case-method p{font-size:1rem;line-height:1.75}.ff-case-table{max-width:100%;overflow:auto;margin:1.8rem 0 1rem;border:1px solid var(--line)}.ff-case table{width:100%;border-collapse:collapse;min-width:580px;text-align:left;font-size:1rem}.ff-case th,.ff-case td{padding:1.3rem 1.5rem;vertical-align:top;line-height:1.6;border-bottom:1px solid var(--line)}.ff-case thead th{font-size:.9rem;color:#d9d6e0;background:#151319;white-space:normal}.ff-case th[scope=row]{font-weight:500;width:20%}.ff-case td:last-child{color:#b5eee0}.ff-case tbody tr:last-child>*{border-bottom:0}.ff-case .ff-case-note{font-size:.875rem;line-height:1.65;color:var(--muted)}.ff-case .ff-case-credit{font-size:.95rem;border-left:2px solid var(--title-highlight,#a1ead9);padding-left:1.3rem;color:#ccc8d3;margin-top:2rem}
@media(max-width:760px){.ff-case-metrics{grid-template-columns:1fr 1fr;gap:2rem 1rem}.ff-case-metrics>div:last-child{grid-column:1/-1}.ff-case-method ol{grid-template-columns:1fr;gap:1.2rem}.ff-case{padding-top:50px;padding-bottom:50px}.ff-case th,.ff-case td{padding:1rem}.ff-case-story,.ff-case-comparison,.ff-case-method{margin-top:2.5rem}}

/* FanFactors product showcase: supplied UI imagery leads the story. */
/* City wordmarks use the studio's own display face, in mint. */
.contact-city h3,.contact-city h3.cr-reference-title{font-family:'CR Resistance',var(--body);font-weight:400;font-size:clamp(1.8rem,2.9vw,3.2rem);letter-spacing:0;line-height:1.2;color:#a1ead9;text-transform:uppercase}.contact-city h3 .cr-title-accent{color:inherit}
/* FanFactors — an editorial exhibition of music, people and product. */
.ff-art{--ff-green:#b4f52c;--ff-light:#f3f3e9;background:#070b12;color:var(--ff-light);overflow:hidden}.ff-art figure{margin:0}.ff-art h1,.ff-art h2,.ff-art h3{font-family:var(--body)!important;font-weight:500;text-transform:none;letter-spacing:-.055em;line-height:1.04}.ff-art h2{font-size:clamp(2.7rem,6.5vw,7rem);max-width:none}.ff-art h3{font-size:clamp(1.5rem,2.3vw,2.4rem);letter-spacing:-.035em;line-height:1.15}.ff-art h1 .cr-title-accent,.ff-art h2 .cr-title-accent{color:inherit}.ff-art em{color:var(--ff-green)}.ff-art p{font-size:1.08rem;line-height:1.75;color:#b8bfc5}.ff-pad{padding:100px 6%;max-width:1800px;margin:auto}.ff-art .ff-eyebrow{font-size:.875rem;font-weight:500;letter-spacing:.11em;line-height:1.7;color:var(--ff-green);margin-bottom:2rem}.ff-art .ff-lead{font-size:clamp(1.35rem,2.35vw,2.5rem);line-height:1.45;color:var(--ff-light);letter-spacing:-.025em}.ff-art-meta,.ff-section-line{display:flex;justify-content:space-between;gap:1.5rem;font-size:.875rem;letter-spacing:.08em;line-height:1.6}.ff-art-title{padding-top:45px;padding-bottom:60px}.ff-art-meta{padding-bottom:28px;border-bottom:1px solid #394131;color:#c0c5bd}.ff-art-title h1{font-size:clamp(3.5rem,13.45vw,14rem);white-space:nowrap;letter-spacing:-.085em;line-height:1.1;margin:28px 0 35px}.ff-art-title .ff-title-dot{color:var(--ff-green)}.ff-art-deck{display:grid;grid-template-columns:1.5fr 1fr;gap:4rem}.ff-art-deck>p{font-size:clamp(1.4rem,2.4vw,2.5rem);line-height:1.35;letter-spacing:-.025em;color:var(--ff-light);margin:0}.ff-art-deck>div{max-width:460px;justify-self:end}.ff-art-deck .ff-eyebrow{display:block;margin-bottom:.7rem}.ff-art-deck p{margin-bottom:.7rem;font-size:1rem}.ff-art-link{font-size:1rem;display:inline-block;padding:.4rem 0;border-bottom:1px solid var(--ff-green);color:var(--ff-light)}.ff-art-link:hover{color:var(--ff-green)}.ff-art-image{width:100%;height:100%;object-fit:cover}.ff-art-hero{position:relative;min-height:700px;aspect-ratio:1.85;max-height:1100px;isolation:isolate}.ff-art-hero>.ff-art-image{position:absolute;inset:0;object-position:65% center;z-index:-2}.ff-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#03070cf2 0%,#03070c88 34%,transparent 73%),linear-gradient(0deg,#0007,transparent 40%);z-index:-1}.ff-art-hero-copy{position:absolute;left:6%;top:50%;transform:translateY(-50%);max-width:680px;width:49%}.ff-art-hero h2{font-size:clamp(3rem,6.5vw,7.2rem);margin:1.5rem 0 2rem}.ff-art-hero-copy>p:last-child{max-width:360px;color:#e0e3dd;font-size:1.15rem}.ff-image-caption{position:absolute;right:3%;bottom:22px;color:#d7ded4;font-size:.875rem;max-width:85%;text-align:right}.ff-manifesto{padding-top:120px;padding-bottom:120px;background:var(--ff-green);color:#070b12;max-width:none}.ff-manifesto .ff-eyebrow{color:#283713}.ff-manifesto h2{font-size:clamp(3.7rem,10vw,10.5rem);line-height:1.02;letter-spacing:-.075em;max-width:1350px}.ff-manifesto h2 em{color:#304315}.ff-manifesto-copy{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;margin:70px 0 0 28%;max-width:1000px}.ff-manifesto p,.ff-manifesto .ff-lead{color:#1d2b0b}.ff-manifesto-copy>p:last-child{font-size:1.05rem}.ff-community-photo{width:100%;aspect-ratio:1.72;max-height:1050px;overflow:hidden}.ff-community-photo img{object-position:center}.ff-community-copy{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem 8%;padding-top:75px;padding-bottom:55px;align-items:end}.ff-community-copy .ff-eyebrow{grid-column:1/-1;margin-bottom:0}.ff-community-copy p:last-child{max-width:440px;justify-self:end;margin-bottom:0;font-size:1.2rem}.ff-audience{padding-top:45px}.ff-section-line{border-top:1px solid #3a423c;padding-top:22px;color:#c4c9c0}.ff-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5%;margin-top:70px}.ff-number{display:block;font-size:1rem;color:var(--ff-green);letter-spacing:.05em;margin-bottom:35px}.ff-audience-grid .ff-eyebrow{color:#b6c0b4;font-size:.875rem;margin-bottom:12px}.ff-audience-grid h3{margin-bottom:25px}.ff-audience-grid p:last-child{font-size:1rem}.ff-art .ff-small-note{font-size:.875rem;color:#8f9c91;margin-top:30px}.ff-interface-intro{padding-top:90px;padding-bottom:70px;border-top:1px solid #2c3730}.ff-interface-intro h2{font-size:clamp(3.2rem,7.5vw,8rem)}.ff-split-copy{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.ff-interface-intro>.ff-split-copy{margin-top:55px;margin-left:20%}.ff-interface-art{background:#03060a}.ff-interface-art>img{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;max-height:1200px}.ff-interface-art figcaption{display:flex;justify-content:space-between;gap:2rem;padding:25px 6%;font-size:.875rem;color:#b6c3b2;border-top:1px solid #32432b}.ff-journey{padding-top:70px;padding-bottom:90px}.ff-journey ol{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3%;padding:0;margin:50px 0 0}.ff-journey li>span{font-size:.875rem;color:var(--ff-green);display:block;margin-bottom:25px}.ff-journey h3{font-size:clamp(1.4rem,2vw,2rem);margin-bottom:20px}.ff-journey p{font-size:1rem}.ff-actual{background:#11191d;max-width:none;padding-top:100px;padding-bottom:100px}.ff-actual-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:1rem 6%;align-items:end}.ff-actual-heading .ff-eyebrow{grid-column:1/-1}.ff-actual-heading>p:last-child{max-width:430px;justify-self:end}.ff-product-evidence{margin-top:55px}.ff-media-proof{background:#070b12;border:1px solid #3c4d39}.ff-media-proof>a{display:block;aspect-ratio:2048/1104;overflow:hidden}.ff-media-proof img{width:100%;height:auto;transform:translateY(-10.7%)}.ff-media-proof figcaption{display:flex;justify-content:space-between;gap:2rem;padding:22px 28px;color:#c7d0c2;font-size:.875rem}.ff-media-proof figcaption strong{color:var(--ff-green);font-weight:500}.ff-catalogue-proof{margin-top:25px;border-color:#45523e!important}.ff-catalogue-proof summary{padding:25px 0;color:#e1e6db;font-size:1.25rem}.ff-catalogue-proof summary span{font-size:.875rem;line-height:1.7;color:#b9c7b1}.ff-catalogue-proof summary:after,.ff-full-account summary:after{content:'+';font-size:1.6rem;color:var(--ff-green)}.ff-catalogue-proof[open] summary:after,.ff-full-account[open] summary:after{content:'−'}.ff-catalogue-proof>a{display:block;max-width:700px;margin:30px auto 50px}.ff-catalogue-proof img{width:100%;height:auto}.ff-game{padding-top:115px;padding-bottom:100px}.ff-game .ff-split-copy{align-items:end;margin-bottom:55px}.ff-game .ff-split-copy>p{max-width:520px;margin:0}.ff-game figure{border:1px solid #3b4830;background:#03070b}.ff-game figure img{width:100%;height:auto}.ff-game figcaption{padding:22px 28px;font-size:.875rem;color:#b9c6b0;letter-spacing:.06em}.ff-design{background:#0e151b;max-width:none}.ff-design-board{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center}.ff-type-specimen{padding:45px 8%;border:1px solid #495135;background:#070b12}.ff-type-specimen>p{font-size:clamp(2.9rem,5.8vw,6.5rem);line-height:1.1;letter-spacing:-.055em;color:var(--ff-light);margin:35px 0 40px}.ff-type-specimen>span:last-child{font-size:1rem;letter-spacing:.15em;color:#a9b29d}.ff-design-notes h2{font-size:clamp(2.5rem,4vw,4.5rem);margin-bottom:30px}.ff-colours{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:35px}.ff-colours i{display:block;background:var(--swatch);height:75px;border:1px solid #626955}.ff-colours span{display:block;margin-top:12px;font-size:.875rem;line-height:1.7;color:#bcc6b5}.ff-build{padding-top:110px;padding-bottom:110px}.ff-build-statement{display:grid;grid-template-columns:.9fr 1.3fr;gap:6%;align-items:center}.ff-ten{font-size:clamp(9rem,23vw,25rem);line-height:1;letter-spacing:-.11em;color:var(--ff-green);font-weight:500}.ff-ten span{display:block;font-size:1rem;line-height:1.5;letter-spacing:.15em;padding-left:8%;margin-top:20px}.ff-build-statement h2{font-size:clamp(2.6rem,4.8vw,5.5rem);margin-bottom:35px}.ff-build-statement p{max-width:660px}.ff-build-method{margin:85px 0 0 25%}.ff-build-method article{display:grid;grid-template-columns:50px 1fr;gap:30px;border-top:1px solid #35402e;padding:35px 0}.ff-build-method h3{font-size:1.75rem;margin-bottom:18px}.ff-build-method p{max-width:720px;margin:0}.ff-scale{background:#f3f3e9;color:#070b12;max-width:none;padding-top:100px;padding-bottom:90px}.ff-scale .ff-eyebrow{color:#3b5920}.ff-scale h2 em{color:#466723}.ff-scale h2{max-width:1400px;margin-bottom:45px}.ff-scale .ff-lead{color:#32402b;font-size:1.35rem}.ff-scale-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4%;margin:65px 0}.ff-scale-grid strong{font-size:clamp(4rem,7.5vw,8rem);font-weight:500;line-height:1.1;letter-spacing:-.065em}.ff-scale-grid strong span{font-size:1.5rem;letter-spacing:-.03em}.ff-scale-grid p{color:#34412d;margin-top:20px;line-height:1.6;font-size:1rem}.ff-scale-actual{border-top:1px solid #79876c;padding-top:30px;display:grid;grid-template-columns:1.4fr 1fr;gap:6%}.ff-scale-actual>strong{font-size:clamp(1.5rem,2.5vw,2.5rem);font-weight:500;line-height:1.4;letter-spacing:-.03em}.ff-scale-actual>p{color:#4d5945;font-size:.875rem;margin:0}.ff-full-account{margin-top:40px;border-color:#79876c!important}.ff-full-account>summary{font-size:1rem;color:#203019;padding:25px 0}.ff-full-account summary:after{color:#466723}.ff-full-account .ff-case{background:#070b12;color:var(--ff-light);padding:55px 5%;margin:0;max-width:none}.ff-full-account .ff-case h2{font-size:clamp(2.5rem,4.5vw,4.8rem)}.ff-finale{padding-top:110px;padding-bottom:110px}.ff-finale h2{font-size:clamp(3.1rem,7vw,7.5rem);margin-bottom:60px}.ff-finale .project-actions{margin-top:40px}.ff-finale .button{background:var(--ff-green);border-color:var(--ff-green);color:#070b12}.ff-finale .button.outline{background:transparent;color:var(--ff-light);border-color:#64745a}.ff-finale .button:hover{background:#d5ff70}.ff-finale .button.outline:hover{color:#070b12}.ff-art .ff-credit{color:#d9e2d1;font-size:.95rem;margin-top:25px}
@media(min-width:1800px){.ff-manifesto,.ff-actual,.ff-design,.ff-scale{padding-left:max(6%,calc((100vw - 1584px)/2));padding-right:max(6%,calc((100vw - 1584px)/2))}}
@media(max-width:1050px){.ff-pad{padding:75px 5%}.ff-art-title{padding-top:35px;padding-bottom:45px}.ff-art-title h1{font-size:13.5vw}.ff-art h2{font-size:clamp(3rem,7.3vw,5.7rem)}.ff-art-hero{min-height:600px;aspect-ratio:1.4}.ff-art-hero-copy{left:5%;width:58%}.ff-art-hero h2{font-size:7vw}.ff-manifesto h2{font-size:10vw}.ff-manifesto-copy{margin-left:15%;gap:6%;margin-top:45px}.ff-community-photo{aspect-ratio:1.4}.ff-audience-grid{gap:4%}.ff-interface-intro>.ff-split-copy{margin-left:0}.ff-design-board{gap:5%}.ff-type-specimen{padding:35px 6%}.ff-type-specimen>p{font-size:5.8vw}.ff-build-method{margin-left:15%}.ff-build-statement h2{font-size:4.8vw}.ff-scale-grid strong{font-size:8vw}.ff-scale h2{font-size:6.5vw}}
@media(max-width:700px){.contact-city h3,.contact-city h3.cr-reference-title{font-size:2.4rem}.ff-pad{padding:60px 6%}.ff-art-title{padding-top:28px;padding-bottom:35px}.ff-art-meta,.ff-section-line{font-size:.875rem;letter-spacing:.035em;gap:1rem;flex-wrap:wrap}.ff-art-meta{padding-bottom:18px}.ff-art-meta>span:last-child{display:none}.ff-art-title h1{font-size:13vw;letter-spacing:-.075em;margin:25px 0}.ff-art-deck{grid-template-columns:1fr;gap:28px}.ff-art-deck>p{font-size:1.8rem}.ff-art-deck>div{justify-self:start;max-width:100%}.ff-art h2,.ff-scale h2{font-size:clamp(2.7rem,9.5vw,4.5rem);line-height:1.08}.ff-art-hero{aspect-ratio:auto;min-height:740px}.ff-art-hero>.ff-art-image{object-position:66% center}.ff-hero-shade{background:linear-gradient(0deg,#03070cfa,#03070caa 40%,transparent 76%)}.ff-art-hero-copy{left:6%;right:6%;top:auto;bottom:70px;transform:none;width:auto;max-width:none}.ff-art-hero-copy .ff-eyebrow{margin-bottom:20px}.ff-art-hero h2{font-size:clamp(2.9rem,10vw,4.5rem);margin:0 0 22px}.ff-art-hero-copy>p:last-child{font-size:1rem;max-width:310px;margin:0}.ff-image-caption{right:6%;bottom:22px;font-size:.875rem}.ff-art .ff-eyebrow{margin-bottom:24px;letter-spacing:.08em}.ff-manifesto h2{font-size:clamp(3rem,12vw,5.5rem)}.ff-manifesto-copy,.ff-split-copy,.ff-community-copy,.ff-actual-heading,.ff-design-board,.ff-build-statement,.ff-scale-actual{grid-template-columns:1fr;gap:28px}.ff-manifesto-copy{margin:35px 0 0}.ff-community-photo{aspect-ratio:1.05}.ff-community-copy .ff-eyebrow,.ff-actual-heading .ff-eyebrow{grid-column:auto}.ff-community-copy p:last-child,.ff-actual-heading>p:last-child{justify-self:start}.ff-community-copy{padding-bottom:35px}.ff-audience{padding-top:30px}.ff-audience-grid{grid-template-columns:1fr;margin-top:40px;gap:30px}.ff-audience-grid article{border-bottom:1px solid #33402e;padding-bottom:15px}.ff-number{margin-bottom:18px}.ff-audience-grid h3{font-size:1.85rem;margin-bottom:18px}.ff-art .ff-lead{font-size:1.4rem}.ff-interface-intro>.ff-split-copy{margin-top:30px}.ff-interface-art>img{aspect-ratio:1.15;object-fit:cover}.ff-interface-art figcaption{flex-direction:column;gap:5px;padding:20px 6%;font-size:.875rem}.ff-journey ol{grid-template-columns:1fr 1fr;gap:25px 7%;margin-top:35px}.ff-journey h3{font-size:1.5rem}.ff-journey p{font-size:1rem}.ff-media-proof figcaption{flex-direction:column;gap:6px;padding:18px}.ff-catalogue-proof summary{flex-wrap:wrap;gap:10px}.ff-catalogue-proof summary span{flex-basis:80%}.ff-product-evidence{margin-top:30px}.ff-game .ff-split-copy{margin-bottom:30px}.ff-game figcaption{padding:18px;font-size:.875rem}.ff-type-specimen>p{font-size:clamp(2.5rem,10vw,4.5rem)}.ff-design-notes h2{font-size:2.6rem}.ff-colours i{height:55px}.ff-ten{font-size:55vw;letter-spacing:-.1em}.ff-ten span{margin-top:5px}.ff-build-statement h2{font-size:2.8rem;margin:15px 0 25px}.ff-build-method{margin:35px 0 0}.ff-build-method article{grid-template-columns:30px 1fr;gap:16px;padding:28px 0}.ff-build-method h3{font-size:1.5rem}.ff-scale-grid{grid-template-columns:1fr;gap:30px;margin:35px 0}.ff-scale-grid>div{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:20px;border-top:1px solid #aab29f;padding-top:25px}.ff-scale-grid strong{font-size:3.8rem}.ff-scale-grid strong span{font-size:1rem}.ff-scale-grid p{margin:0}.ff-full-account .ff-case{padding:30px 6%}.ff-finale h2{margin-bottom:35px}.ff-finale .project-actions{display:flex;flex-direction:column;align-items:stretch}}
@media(prefers-reduced-motion:reduce){.ff-art a,.ff-art img{transition:none}}
/* Preserve the complete device composition at every viewport size. */
.ff-interface-art>img{aspect-ratio:auto;height:auto;object-fit:contain;max-height:none}

/* Platform-independent mobile icons and genuine transparent wordmark. */
.ui-star{display:inline-block;width:1.2em;height:1.2em;vertical-align:middle;color:var(--title-highlight,#9de4d0)}
.ui-arrow{display:inline-block;width:.8em;height:.8em;margin-left:.4em;vertical-align:baseline;color:var(--title-highlight,#9de4d0)}
.contact-city-logo{padding-bottom:0;border-bottom:0;background:transparent;mix-blend-mode:normal}

/* Portfolio covers for the revised case studies. */
.project-razar-optic img{object-fit:cover;object-position:left center}
.project-cyber-resistance-studio{background:radial-gradient(ellipse at center,#26143a,#08070c 75%)}
.project-cyber-resistance-studio img{object-fit:contain!important;object-position:center!important;padding:12%;height:100%!important;transform:none!important}

/* Photographic covers for the music and eyewear case studies. */
.project-image.project-fanfactors img,.project-image.project-razar-optic img{object-fit:cover;object-position:65% center}

/* Custom photographic portfolio covers, shared by home and work indexes. */
.project-image.project-cover{aspect-ratio:1890 / 1130;background:#09090b;border-radius:18px;isolation:isolate}
.project-image.project-cover img{width:100%;height:100%;object-fit:cover;object-position:center}
.project-cover .tag{display:none}

/* Comic artwork fills the section, fading behind its copy and capture controls. */
.jaxon-gift-landscape{grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr);background:#0b090e}
.jaxon-gift-landscape .jaxon-gift-art{position:absolute;inset:0;display:block;z-index:-2;pointer-events:none}
.jaxon-gift-landscape .jaxon-gift-art img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:left center;border-radius:0;filter:none}
.jaxon-gift-landscape:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#0b090ef7 0%,#0b090ee3 25%,#0b090eb8 42%,#0b090e45 62%,#0b090e0d 85%),linear-gradient(0deg,#0b090e70,transparent 35%,transparent 85%,#0b090e30)}
.jaxon-gift-landscape h2{font-size:clamp(2.25rem,4vw,4.5rem)}
.jaxon-gift-landscape .jaxon-gift-copy{position:relative;grid-column:1;min-width:0;z-index:1}
.jaxon-gift-landscape .jaxon-capture{background:#0b090e7a;border-color:#ffffff1f;border-radius:16px;backdrop-filter:blur(8px)}
.jaxon-gift-landscape .jaxon-capture-fields input{background:#100d17a6}
@media(max-width:850px){
 .jaxon-gift-landscape{grid-template-columns:1fr;padding-top:clamp(300px,85vw,520px)}
 .jaxon-gift-landscape .jaxon-gift-art{grid-row:auto;background:radial-gradient(ellipse at 70% 0%,#24303e80,transparent 75%),#0b090e}
 .jaxon-gift-landscape .jaxon-gift-art img{position:absolute;top:0;right:-40%;width:180%;height:auto;object-fit:contain;object-position:center;mask-image:linear-gradient(180deg,#000 0%,#000 58%,transparent 100%)}
 .jaxon-gift-landscape:before{background:linear-gradient(180deg,transparent 0px,#0b090e20 240px,#0b090e80 440px,#0b090ec4 670px,#0b090ee0 100%)}
}

/* The original torus stays intact beneath an independent chrome shard field. */
.hero.hero-brand .hero-shard-explosion{position:absolute;left:50%;top:50%;width:auto;height:140%;max-width:none;object-fit:contain;transform:translate(-50%,-50%);z-index:0;opacity:.95;pointer-events:none;mask-image:radial-gradient(circle closest-side,transparent 0%,transparent 68%,#000 77%,#000 100%)}
@media(max-width:760px){.hero.hero-brand .hero-shard-explosion{height:120%}}
@media(max-width:440px){.hero.hero-brand .hero-shard-explosion{height:110%}}
