@font-face{font-family:"Space Grotesk";src:url("assets/fonts/SpaceGrotesk-Variable.woff2") format("woff2");font-style:normal;font-weight:300 700;font-display:swap}
/* TFX.DIGITAL V2 — presentation layer over the preserved production site. */
:root{--bg:#08080c;--surface:#111017;--text:#f7f6fa;--muted:#b9b6c6;--accent:#b493f5;--line:#302b3c;--control:#71667f;color-scheme:dark}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}
::selection{background:#ad87ed;color:#0b0810}
img{max-width:100%}
.wrap{width:100%;max-width:1376px;padding-left:64px;padding-right:64px}
h1,h2,h3{text-wrap:balance;letter-spacing:-.05em}
h1{font-weight:600}
h2{font-size:clamp(2.5rem,4.5vw,4rem);font-weight:550;line-height:1.08}
.eyebrow,.mono{font-size:11px;letter-spacing:.15em}
.eyebrow{color:#bd9bf6;margin-bottom:22px}
.preview-bar{position:relative;z-index:22;background:#131019;color:#c5afe9;font-size:9px;letter-spacing:.14em;padding:6px 16px;min-height:27px}
.preview-bar span{font-size:10px;color:#bcb3c8;letter-spacing:.025em}
.header{background:#09090de8;border-bottom:1px solid #b58ef41b;backdrop-filter:blur(14px)}
.nav{height:84px;gap:36px;flex-wrap:nowrap}
.brand{display:flex;align-items:center;min-width:0;flex-shrink:0}
.brand-image{width:201px;height:auto;display:block;mix-blend-mode:screen;animation:none!important}
.site-navigation.direct-navigation{display:flex;align-items:center;justify-content:flex-end;gap:30px;width:auto;order:0;padding:0;margin-left:auto}
.direct-navigation a{font:400 13px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;color:#c9c4d4;padding:16px 0;white-space:nowrap}
.direct-navigation a:hover,.direct-navigation a[aria-current=page]{color:#d0adff}
.button{border-radius:6px;padding:15px 23px;min-height:50px;font-size:13px;gap:35px;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}
.button[href^="start-a-project.html"],#open-form{font-family:"Space Grotesk",Inter,ui-sans-serif,system-ui,sans-serif;font-weight:600;letter-spacing:.015em}
.button:active{transform:translateY(1px)}
.primary{background:linear-gradient(125deg,#b08bed,#b994f8);color:#160c24;border:1px solid #b996f1;box-shadow:0 2px 24px #9871d81b}
.primary:hover{background:#c6a6ff;box-shadow:0 4px 28px #9861e230}
.nav-cta{order:0;color:#f1ecfa;background:linear-gradient(135deg,#18151e,#0f0e14);border-color:#38303f;padding:12px 18px;font-size:12px;gap:26px;white-space:nowrap}
.nav-cta:hover{background:#21192c;border-color:#7d5b9d}
.text-link{font-size:13px;gap:25px;min-height:48px}
.skip{z-index:100}
.status-dot{display:inline-block;width:5px;height:5px;flex-shrink:0;background:#4ed8d5;border-radius:50%;box-shadow:0 0 10px #48dad778}
.signal{font:10px/1.5 ui-monospace,monospace;letter-spacing:.17em;display:flex;align-items:center;gap:10px;color:#cac3d6}

/* Full-bleed hero. Native scrolling reaches the services without a pinned gap. */
.v2-hero{position:relative;isolation:isolate;min-height:680px;overflow:hidden;background:#08080d}
.hero-backdrop{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.hero-scene-picture img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 65%;filter:saturate(1.35);opacity:.97}
.hero-smoke{position:absolute;inset:-8%;background:url("assets/tfx-nebula.jpg") center 65%/cover no-repeat;pointer-events:none;will-change:auto;animation-play-state:paused!important}
.smoke-left{opacity:.4;mask-image:radial-gradient(ellipse 51% 60% at 6% 33%,#000 8%,#000b 42%,transparent 78%);animation:cloud-left 27s ease-in-out infinite alternate}
.smoke-right{opacity:.35;mask-image:radial-gradient(ellipse 51% 61% at 94% 32%,#000 7%,#000b 40%,transparent 78%);animation:cloud-right 33s ease-in-out infinite alternate}
.smoke-mist{inset:0;background:radial-gradient(ellipse at 7% 35%,#ac76de38,transparent 38%),radial-gradient(ellipse at 96% 42%,#8064d132,transparent 37%);mask-image:linear-gradient(#000, #000 55%,transparent 83%);opacity:.4;animation:cloud-mist 22s ease-in-out infinite alternate}
.motion-running .hero-smoke{animation-play-state:running!important;will-change:transform,opacity}
@keyframes cloud-left{0%{transform:translate3d(-1.8%,2%,0) scale(1.02) rotate(-1deg);opacity:.23}55%{opacity:.65}100%{transform:translate3d(3.3%,-2.8%,0) scale(1.12) rotate(1.5deg);opacity:.42}}
@keyframes cloud-right{0%{transform:translate3d(2%,1.2%,0) scale(1.08) rotate(1deg);opacity:.45}60%{opacity:.23}100%{transform:translate3d(-3.2%,-1.7%,0) scale(1.01) rotate(-1.3deg);opacity:.67}}
@keyframes cloud-mist{0%{transform:translate3d(-3%,1%,0) scale(1);opacity:.25}100%{transform:translate3d(4%,-2%,0) scale(1.13);opacity:.7}}


.hero-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 39%,#08080c66,transparent 62%),linear-gradient(#08080c18,transparent 28%,transparent 70%,#08080c 100%)}
.horizon-light{position:absolute;left:23%;right:23%;bottom:15%;height:5px;background:#c59aff40;border-radius:50%;filter:blur(10px);box-shadow:0 -6px 65px 12px #8c4be12b;opacity:.65}

.hero-inner{display:flex;flex-direction:column;align-items:center;min-height:680px;padding-top:66px;padding-bottom:28px}
.hero-copy{margin:auto 0;text-align:center;max-width:100%;padding:0 0 43px;animation:hero-arrive .7s ease-out both}
.hero-copy .hero-eyebrow{justify-content:center;font-size:11px;margin:0 0 27px;gap:12px}
.hero-copy h1{font-size:clamp(4.5rem,8.7vw,7.8rem);letter-spacing:-.065em;line-height:1.03;white-space:nowrap;font-weight:620}
.hero-copy h1 .purple{color:#b383f3}
.hero-copy .hero-sub{font-size:clamp(1.8rem,3vw,2.65rem);letter-spacing:-.045em;line-height:1.15;margin:18px 0 21px;color:#f0edf6}
.hero-copy .hero-description{font-size:15px;line-height:1.7;color:#cec9d8;max-width:550px;margin:auto}
.hero-copy .actions{justify-content:center;gap:20px;margin-top:30px;flex-wrap:wrap}
.hero-copy .actions>.primary{background:linear-gradient(135deg,#17111f,#0b0911);color:#f7f0ff;border-color:#bb8cf5;box-shadow:0 0 0 1px #b17ee526,0 0 22px #a66be74a,inset 0 0 18px #9a62d214}
.hero-copy .actions>.text-link{justify-content:center;padding:15px 23px;border:1px solid #9c78cb;border-radius:6px;background:#0b0911b8;color:#f2eafa;box-shadow:0 0 17px #a66be72b;transition:background .2s,border-color .2s,box-shadow .2s}
.hero-copy .actions>a:hover,.hero-copy .actions>a:focus-visible{background:#21152e;border-color:#d3acff;box-shadow:0 0 25px #b47af160,inset 0 0 18px #ab71de1f}
.hero-bottom{display:flex;justify-content:space-between;align-items:center;width:100%;margin:0;gap:20px;border-top:1px solid #b494df36;padding-top:21px;min-height:38px;color:#aaa1b6}
.hero-bottom .mono{font-size:9px;letter-spacing:.16em}
@keyframes hero-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* Four established service routes, each with a visual of its own. */
.section{padding-top:91px;padding-bottom:91px}
.goals-section{position:relative;z-index:1;margin:0 auto;background:none;padding-top:66px;padding-bottom:80px}
.section-top{align-items:flex-end;gap:50px;margin-bottom:39px}
.section-note{font-size:14px;line-height:1.75;color:#c0b8cd;max-width:360px;padding-bottom:4px}
.goal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;border:0;background:none}
.goal,.goal+.goal,.goal:nth-child(3),.goal:nth-child(4){position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;min-height:310px;border:1px solid #54416e80;padding:26px 29px 27px;border-radius:12px;background:#0c0b12;box-shadow:0 10px 40px #0003;transition:border-color .25s,box-shadow .25s}
.goal:hover,.goal:focus-visible{border-color:#ab7ce0;box-shadow:0 9px 38px #6c3cac20}
.goal-art{position:absolute;inset:0;z-index:-2;pointer-events:none}
.goal-art>img{width:100%;height:100%;object-fit:cover;object-position:62% 51%;transition:transform .6s ease}
.goal:hover .goal-art>img{transform:scale(1.04)}
.goal::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#0c0a13f5 0%,#0c0a13cb 30%,#0c0a1333 58%,transparent),linear-gradient(0deg,#0c0a1380,transparent 60%)}
.goal-num{display:flex;justify-content:space-between;align-items:center;font:10px/1.5 ui-monospace,monospace;letter-spacing:.07em;color:#c4b7d5;margin:0 0 28px;z-index:1}
.goal-num>span{font-size:24px;color:#e6d8f8;transition:transform .25s}
.goal:hover .goal-num>span{transform:translate(2px,-2px)}
.goal-copy{width:53%;max-width:290px}
.goal h3{font-size:clamp(1.6rem,2.3vw,2rem);line-height:1.08;letter-spacing:-.045em;font-weight:560;margin-bottom:14px;color:#f5f0fb;transition:color .2s}
.goal h3 br{display:initial}
.goal p{font-size:12px;line-height:1.65;color:#c6bfd3;max-width:250px}
.goal-explore{display:flex;align-items:center;gap:20px;font-size:10px;font-weight:500;color:#c19ce8;letter-spacing:.03em;margin-top:19px;opacity:.85}
.goal-explore>span{font-size:14px}
.goal-support{background:radial-gradient(ellipse at 100% 0%,#272044,#0c0b12 70%)}
.goal-support .goal-art{display:flex;align-items:center;justify-content:flex-end;padding-right:21px}
.utility-art{width:240px;max-width:100%;padding:20px 18px 17px;border:1px solid #6950828c;border-radius:10px;background:linear-gradient(135deg,#1c1728f0,#090a12);box-shadow:10px 12px 40px #0007,-2px 0 30px #8750e017;transform:perspective(900px) rotateY(-14deg) rotateZ(4deg);font-family:ui-monospace,monospace}
.utility-top{display:flex;justify-content:space-between;align-items:center;gap:7px;font-size:5px;letter-spacing:.07em;color:#b2a4c5;padding-bottom:13px;border-bottom:1px solid #72608035}
.window-dots{display:flex;gap:3px}.window-dots i{width:4px;height:4px;border-radius:50%;background:#c17da8}.window-dots i:nth-child(2){background:#b9a174}.window-dots i:nth-child(3){background:#7ea89e}
.utility-title{font:500 18px/1.14 ui-sans-serif,system-ui,sans-serif;letter-spacing:-.03em;color:#e8dff6;padding:15px 0 12px}
.utility-row{display:flex;align-items:center;gap:9px;padding:10px 2px;border-bottom:1px solid #72608024;font-size:9px;color:#ccc1db}
.utility-row:last-child{border-bottom:0}.utility-row>i{margin-left:auto;width:4px;height:4px;border-radius:50%;background:#82cba6;box-shadow:0 0 8px #78caaa26}
.utility-icon{color:#ad8bcd;font-size:13px}

/* Labeled visual studies keep examples distinct from client work. */
.work-section{border-top:1px solid #49375966;padding-top:68px;padding-bottom:85px}
.work-section .section-top{margin-bottom:17px}
.concept-label{display:flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid #58436566;border-radius:20px;font:9px ui-monospace,monospace;letter-spacing:.1em;white-space:nowrap;color:#c6b3df;margin-bottom:7px}
.concept-label i{width:5px;height:5px;background:#a97ce4;border-radius:50%}
.work-intro{font-size:13px;line-height:1.7;max-width:590px;color:#aaa0b9;margin-bottom:31px}
.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.work-card{min-width:0}
.work-visual{position:relative;aspect-ratio:1.5;border:1px solid #3b2e4c;border-radius:9px;overflow:hidden;background:#111019}
.work-visual img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .5s}
.work-card:hover img{transform:scale(1.04)}
.work-visual-ascent img{object-position:50% center}
.work-open{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:34px;height:34px;border:1px solid #b3a1cc66;border-radius:50%;background:#121018a6;backdrop-filter:blur(8px);font-size:19px;transition:background .2s}
.work-card:hover .work-open{background:#8b62bf99}
.work-caption{padding-top:17px}
.work-caption h3{font-size:20px;letter-spacing:-.025em;font-weight:550;line-height:1.3}
.work-caption p{font-size:12px;line-height:1.65;color:#bdb3c9;margin-top:9px;max-width:350px}
.work-caption>span{display:block;font:8px ui-monospace,monospace;letter-spacing:.12em;color:#a195b0;margin-top:8px}

/* Original membership content and prices. */
.membership-band{background:radial-gradient(ellipse at 52% 0%,#21152f55,transparent 64%),#0b0a10;border-color:#35263f}
.membership-band .section{padding-top:83px;padding-bottom:85px}
.membership-band .section-top{align-items:flex-start}
.membership-band .section-note{max-width:345px;font-size:13px;padding-top:35px}
.membership-band .disclosure{color:#aba0bc;font-size:12px;line-height:1.75}
.tier-grid{gap:20px}
.tier{border:1px solid #493a5b;border-radius:10px;padding:28px 27px;background:linear-gradient(140deg,#15101d,#0c0b12);box-shadow:0 10px 32px #0003}
.tier:first-child{border-color:#33435c;background:radial-gradient(ellipse at 50% 0%,#18263980,transparent 65%),#0c0d14}
.tier.purple-tier{border-color:#8a60b2;background:radial-gradient(ellipse at 50% 0%,#38204585,transparent 74%),#100b17;box-shadow:0 0 35px #8f4ace10}
.tier:nth-child(3){background:radial-gradient(ellipse at 50% 0%,#39313e60,transparent 60%),#0d0b10}
.tier-label{font-size:11px;margin-bottom:21px;letter-spacing:.13em}
.tier-label span{font-size:9px;color:#a69bb7}
.tier h3{font-size:20px;letter-spacing:-.035em;min-height:48px}
.tier-price{font-size:55px;color:#f4eefa;letter-spacing:-.06em;margin-top:12px}
.tier-price span{font-size:12px;color:#b4a9c2;margin-left:8px}
.annual{font-size:10px;color:#a297b3;margin-top:9px}
.tier-rule{background:#52425e77;margin:24px 0}
.tier li{font-size:12px;line-height:1.7;margin-bottom:12px;color:#c0b6ce;padding-left:20px}
.tier .button{font-size:12px;border-color:#655173;background:#17101f;gap:16px}
.purple-tier .button{background:#b28ce9;color:#170d22;border-color:#b28ce9}
.fine-print{font-size:11px;line-height:1.8;color:#a69bad;margin-top:25px}

.v2-close{position:relative;isolation:isolate;overflow:hidden;display:grid;place-items:center;text-align:center;margin:0;border:0;border-radius:0;width:100%;max-width:none;min-height:640px;padding:110px 0;background:#08080c}
.finale-backdrop{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.finale-backdrop img{display:block;width:100%;height:100%;object-fit:cover;object-position:55% 58%;opacity:.98}
.finale-shade{position:absolute;inset:0;background:linear-gradient(#08080c 0%,#08080c20 26%,#08080c0d 58%,#08080c 100%),radial-gradient(ellipse at 50% 45%,#08060d80,transparent 72%)}
.finale-copy{position:relative;padding-top:0;padding-bottom:25px}
.v2-close .eyebrow{font-size:10px;margin-bottom:24px}
.v2-close h2{font-size:clamp(2.9rem,5.7vw,5.1rem);letter-spacing:-.055em;text-shadow:0 3px 40px #08060c88}
.finale-copy>p{font-size:14px;margin-top:21px;color:#ded1ed;text-shadow:0 2px 16px #08060ca8}
.v2-close .button{margin-top:32px;box-shadow:0 5px 35px #aa6ce72e}
.footer{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:30px;position:relative;z-index:2;width:100%;max-width:none;background:var(--bg);padding-left:max(64px,calc((100% - 1248px)/2));padding-right:max(64px,calc((100% - 1248px)/2));padding-top:35px;padding-bottom:35px;border-top:1px solid #3b2d4866;box-shadow:none}
.footer .brand{grid-column:2;grid-row:1;justify-self:center}
.footer .brand-image{width:180px}
.footer .mono{font-size:9px;letter-spacing:.13em;color:#a195ae}
.footer .text-link{font-size:12px;color:#c7b9d5}
.footer-signature{grid-column:1;grid-row:1;justify-self:start;display:inline-flex;align-items:center;gap:10px;font:10px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;color:#c8bdd6;white-space:nowrap}
.footer-signature .status-dot{box-shadow:0 0 12px #4ed8d5a3}
.footer-links{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:26px}
.footer-links .text-link{margin-left:0;font:400 10px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}
.bottom-signal{max-width:1376px;padding-top:16px;padding-bottom:20px;background:var(--bg);border-top:1px solid #31253866;font-size:8px;letter-spacing:.12em;color:#9c8eab}
.bottom-signal>span:first-child{display:flex;gap:9px;align-items:center}

/* Service and intake pages retain production behavior and receive the same skin. */
.category-hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;column-gap:20px;text-align:left;min-height:0;padding-top:83px;padding-bottom:28px;overflow:visible;background:transparent;isolation:isolate}
.v2-category-copy{min-width:0;position:relative;z-index:1}
.v2-category-copy .hero-eyebrow{justify-content:flex-start;margin-bottom:22px;font-size:10px}
.v2-category-copy h1{font-size:clamp(3rem,5.2vw,5rem);letter-spacing:-.055em;line-height:1.05;max-width:600px}
.v2-category-copy .hero-sub{font-size:clamp(1.6rem,2.5vw,2rem);line-height:1.2;max-width:420px;margin:22px 0}
.v2-category-copy .hero-description{font-size:14px;max-width:430px}
.v2-category-copy .actions{justify-content:flex-start;gap:23px;margin-top:27px;flex-wrap:wrap}
.v2-category-visual{display:flex;justify-content:center;align-items:center;min-width:0;aspect-ratio:1;border-radius:18px;overflow:hidden;mask-image:radial-gradient(ellipse,#000 35%,transparent 74%)}
.v2-category-visual>img{width:145%;max-width:none;height:100%;object-fit:cover;object-position:75% center}
.v2-category-visual .utility-art{width:320px;transform:perspective(900px) rotateY(-14deg) rotateZ(3deg)}
.v2-category-visual .utility-top{font-size:7px}.v2-category-visual .utility-row{font-size:13px;padding:17px 2px}.v2-category-visual .utility-title{font-size:27px}
.category-hero>.hero-bottom{grid-column:1/-1;margin-top:30px}
.service-page #pricing{padding-top:65px}
.category-hero .glitch-signal{animation:none;font-size:9px;gap:10px}.signal-bars{display:none}
.home-close{animation:none;background:radial-gradient(ellipse at 50% 70%,#35204377,transparent 75%),#0c0a12;border-radius:12px;border-color:#58406e;box-shadow:none;max-width:1248px;width:calc(100% - 128px);margin:45px auto 65px;padding-top:70px;padding-bottom:80px}
.launch-aurora,.launch-beam,.launch-horizon,.home-close .portal-mark,.home-close .button,.glitch-signal,.cosmic-haze,.cosmic-wisp,.cosmic-stars,.closing-nebula,.closing-wisp{animation:none!important;translate:none!important}
.home-close .portal-mark{width:70px;height:70px;margin-bottom:20px}
.home-close .portal-mark img{width:280px;height:70px;left:-105px}
.home-close h2{font-size:clamp(2.9rem,5vw,4.4rem)}
.product-offering{border-radius:10px!important;box-shadow:0 10px 35px #0002!important}
.catalog-table{box-shadow:none}
.catalog-table table{font-size:12px}
.project-page .final-section{padding-top:80px;min-height:80svh;isolation:isolate}
.project-page .final-intro h2{font-size:clamp(3.7rem,6.5vw,6rem)}
.project-page .final-intro>p{font-size:16px}
.project-page .closing-scene{opacity:.65}
.project-panel{background:linear-gradient(130deg,#191220,#0e0d14);border-color:#674b7c;border-radius:12px;scroll-margin-top:110px}
.form-title{font-size:30px;letter-spacing:-.035em}
.choice-grid{gap:13px}.choice{background:#0d0b12;border-color:#65516f;font-size:13px;padding:17px}
.choice:has(input:checked){border-color:#b68ce9;background:#2a1d3b}
.field input,.field select,.field textarea{background:#0d0b12;border-color:#65516f}
.form-header>.eyebrow{font-size:10px}.demo-note{background:#241a30;border-color:#564064;font-size:12px}
.review-block{background:#100d16;border-color:#4f3a61}
.close-button{border-color:#756081}

.concept-dialog{position:fixed;padding:0;border:1px solid #775690;border-radius:12px;width:min(1000px,calc(100vw - 40px));max-height:90svh;color:var(--text);background:#0e0a15;box-shadow:0 30px 150px #0009;overflow:auto}
.concept-dialog::backdrop{background:#040207e6;backdrop-filter:blur(10px)}
.concept-close{position:absolute;right:14px;top:14px;z-index:2;border:1px solid #a28bbf88;border-radius:50%;width:44px;height:44px;background:#110d1cdc;color:white;font-size:26px}
.concept-dialog-image{background:#09070e}.concept-dialog-image img{width:100%;max-height:65svh;object-fit:contain;display:block}
.concept-dialog-caption{padding:26px 32px 30px}.concept-dialog-caption .eyebrow{font-size:9px;display:block;margin-bottom:14px}.concept-dialog-caption h2{font-size:30px;margin-bottom:12px}.concept-dialog-caption p{font-size:13px;color:#bdb0cd}

@media(min-width:1600px){.v2-hero,.hero-inner{min-height:740px}.hero-inner{padding-top:75px}.hero-copy{padding-bottom:40px}}
@media(max-width:1100px){
 .wrap{padding-left:40px;padding-right:40px}.nav{gap:27px}.brand-image{width:180px}.direct-navigation{gap:23px!important}
 .v2-hero,.hero-inner{min-height:650px}.goal,.goal+.goal{min-height:295px;padding:24px}.goal-copy{width:56%}.goal h3{font-size:28px}.goal p{font-size:11px}.goal-grid{gap:17px}
 .goal-support .goal-art{padding-right:14px}.utility-art{width:210px;padding:16px 15px}.utility-title{font-size:17px}.utility-row{padding:9px 2px;font-size:8px}
 .work-grid{gap:16px}.work-caption h3{font-size:15px}.tier{padding:24px 22px}.tier-price{font-size:49px}.tier h3{font-size:19px}
 .home-close{width:calc(100% - 80px)}.v2-category-copy .actions{gap:15px}.v2-category-copy .button{gap:18px;padding:14px 18px}.v2-category-copy .text-link{font-size:12px;gap:12px}
}
@media(max-width:760px){
 html{scroll-padding-top:122px}.wrap{padding-left:25px;padding-right:25px}.preview-bar{font-size:8px;padding:6px 12px;min-height:28px}.preview-bar span{font-size:9px;margin-left:9px;line-height:1.6}
 .nav{height:76px;gap:21px;min-height:0;flex-wrap:nowrap;padding-top:0;padding-bottom:0}.brand-image{width:155px}.site-navigation.direct-navigation{gap:18px!important;margin-left:auto}.direct-navigation a{font-size:11px}.nav-cta{font-size:11px;padding:10px 13px;gap:15px;min-height:44px}
 .v2-hero,.hero-inner{min-height:620px}.hero-inner{padding-top:67px;padding-bottom:23px}.hero-copy{padding-bottom:46px}.hero-copy h1{font-size:clamp(3.6rem,11.1vw,5.5rem)}.hero-copy .hero-sub{font-size:31px}.hero-copy .hero-description{font-size:14px;max-width:440px}.hero-copy .hero-eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:25px}.hero-copy .actions{gap:24px}.hero-copy .text-link{gap:13px;font-size:12px}.hero-bottom .mono{font-size:8px}.signal{font-size:8px;gap:8px}
 .section{padding-top:65px;padding-bottom:65px}.goals-section{padding-top:52px;padding-bottom:58px}.section-top{gap:22px;margin-bottom:30px;align-items:flex-start}.section-note{font-size:13px}.eyebrow{font-size:10px;margin-bottom:18px}h2{font-size:42px}
 .goal-grid{grid-template-columns:1fr 1fr;gap:14px}.goal,.goal+.goal{min-height:310px;padding:20px}.goal-copy{width:100%;max-width:210px}.goal-art{opacity:.72}.goal-art>img{object-position:70% center}.goal::after{background:linear-gradient(90deg,#0c0a13dd,#0c0a1377 65%,transparent),linear-gradient(0deg,#0c0a13b3,transparent 80%)}.goal h3{font-size:27px;max-width:190px}.goal p{font-size:11px;max-width:180px}.goal-num{margin-bottom:45px}.goal-explore{font-size:9px;margin-top:15px}.goal-support .goal-art{padding-right:5px;justify-content:flex-end}.goal-support .utility-art{width:185px;transform:perspective(900px) rotateY(-15deg) rotateZ(4deg) translateX(28px)}
 .work-section{padding-top:50px}.work-section .section-top{flex-direction:row;align-items:flex-start;gap:25px}.work-section h2{font-size:36px}.concept-label{font-size:7px;letter-spacing:.05em;padding:8px 10px;margin-top:11px}.work-grid{grid-template-columns:1fr 1fr}.work-card:last-child{grid-column:1/-1}.work-card:last-child .work-visual{aspect-ratio:1.5}.work-intro{font-size:12px}.work-caption h3{font-size:16px}.work-caption>span{font-size:7px}.work-visual{aspect-ratio:1.5}
 .membership-band .section{padding-top:61px;padding-bottom:60px}.membership-band .section-top{gap:25px}.membership-band .section-note{max-width:100%;padding-top:0}.tier-grid{grid-template-columns:1fr;gap:17px}.tier{padding:27px}.tier h3{min-height:0;font-size:23px}.tier-label{font-size:11px;margin-bottom:15px}.tier-price{font-size:55px;margin-top:22px}.tier-price span{font-size:13px}.tier ul{margin-bottom:20px}.tier li{font-size:13px}.annual{font-size:11px}.fine-print{font-size:11px;line-height:1.85}
 .home-close{width:calc(100% - 50px);margin-top:40px;margin-bottom:50px;padding:60px 25px 68px}.v2-close{min-height:580px;padding:95px 0}.v2-close h2{font-size:43px}.finale-copy>p{font-size:13px}.finale-backdrop img{object-position:62% 55%}.footer{gap:25px;padding-top:28px;padding-bottom:28px;flex-wrap:wrap}.footer .brand-image{width:160px}.footer .mono{order:3;flex-basis:100%;font-size:8px}.footer .text-link{margin-left:auto;font-size:11px}.bottom-signal{font-size:7px;gap:10px}
 .category-hero{grid-template-columns:1fr;row-gap:20px;padding-top:55px;overflow:hidden;text-align:center}.v2-category-copy{grid-row:2}.v2-category-copy .hero-eyebrow{justify-content:center}.v2-category-copy h1{font-size:54px;margin:auto}.v2-category-copy .hero-sub{font-size:28px;margin:20px auto}.v2-category-copy .hero-description{font-size:14px;margin:auto;max-width:480px}.v2-category-copy .actions{justify-content:center;gap:22px}.v2-category-visual{grid-row:1;aspect-ratio:1.8;width:min(100%,500px);margin:auto;mask-image:radial-gradient(ellipse,#000 35%,transparent 76%)}.v2-category-visual>img{width:120%;object-position:70% 53%}.v2-category-visual .utility-art{width:235px}.v2-category-visual .utility-row{font-size:9px;padding:9px 2px}.v2-category-visual .utility-title{font-size:18px}.category-hero>.hero-bottom{margin-top:25px}.service-page #pricing{padding-top:50px}
 .project-page .final-section{padding-top:60px}.project-panel{padding:25px;scroll-margin-top:110px}.concept-dialog-caption{padding:24px}.concept-dialog-caption h2{font-size:26px}
}
@media(max-width:560px){
 .preview-bar span{display:block;margin:3px 0 0;font-size:8px;letter-spacing:.015em}.preview-bar{padding:6px 18px;min-height:41px}
 .nav{height:auto;min-height:102px;padding-top:14px;padding-bottom:12px;display:grid;grid-template-columns:1fr auto;gap:8px 15px}.nav .brand{flex-basis:auto}.brand-image{width:160px}.nav-cta{grid-column:2;grid-row:1;font-size:10px;padding:9px 11px;min-height:41px;gap:17px}.site-navigation.direct-navigation{grid-column:1/-1;grid-row:2;order:0;width:100%;margin:0;justify-content:center;gap:30px!important}.direct-navigation a{font-size:11px;padding:7px 4px;min-height:34px}
 .v2-hero,.hero-inner{min-height:600px}.hero-inner{padding-top:56px;padding-bottom:22px}.hero-copy{padding-bottom:43px}.hero-copy h1{font-size:clamp(3.1rem,12.5vw,4.3rem);letter-spacing:-.058em}.hero-copy .hero-sub{font-size:29px;line-height:1.16;margin:22px 0}.hero-copy .hero-description{font-size:13px;line-height:1.8;max-width:320px}.hero-copy .hero-eyebrow{font-size:8px;letter-spacing:.13em;gap:8px;margin-bottom:28px}.hero-copy .actions{gap:18px;margin-top:30px}.hero-copy .button{font-size:11px;gap:22px;min-height:47px;padding:14px 16px}.hero-copy .text-link{font-size:10px;gap:10px;min-height:47px}.hero-bottom{gap:12px;padding-top:17px}.hero-bottom .mono{font-size:6.8px;letter-spacing:.08em}.signal{font-size:6.8px;letter-spacing:.09em;gap:6px}.hero-scene-picture img{object-position:50% 60%;opacity:.9}.hero-vignette{background:radial-gradient(ellipse at 50% 40%,#08080c80,transparent 85%),linear-gradient(transparent 50%,#08080caa 100%)}.horizon-light{bottom:17%;left:10%;right:10%}
 h2{font-size:38px}.section-top{gap:19px;margin-bottom:29px}.goals-section{padding-top:40px}.goals-section .section-note{font-size:12px}.goal-grid{grid-template-columns:1fr;gap:15px}.goal,.goal+.goal{min-height:280px;padding:23px}.goal-copy{width:58%;max-width:230px}.goal-art{opacity:1}.goal::after{background:linear-gradient(90deg,#0c0a13f0 0%,#0c0a13c9 33%,#0c0a1322 72%,transparent),linear-gradient(0deg,#0c0a1366,transparent)}.goal h3{font-size:30px;max-width:220px}.goal p{font-size:11px;max-width:210px}.goal-num{font-size:9px;margin-bottom:30px}.goal-num>span{font-size:22px}.goal-explore{font-size:9px;margin-top:18px}.goal-art>img{object-position:69% 50%}.goal-support .goal-art{padding-right:16px}.goal-support .utility-art{width:200px;transform:perspective(900px) rotateY(-14deg) rotateZ(4deg) translateX(14px)}
 .work-section .section-top{flex-direction:column;gap:18px;margin-bottom:17px}.concept-label{font-size:8px;margin:0}.work-section h2{font-size:38px}.work-grid{grid-template-columns:1fr;gap:27px}.work-card:last-child{grid-column:auto}.work-visual,.work-card:last-child .work-visual{aspect-ratio:1.5}.work-caption{padding-top:14px}.work-caption h3{font-size:18px}.work-caption>span{font-size:8px}.work-intro{margin-bottom:25px}.work-visual img{object-position:center}
 .membership-band .section-top h2{font-size:37px}.tier{padding:26px}.v2-close{min-height:590px}.v2-close h2{font-size:40px}.finale-copy>p{max-width:235px;margin:21px auto 0}.v2-close .eyebrow{font-size:8px;letter-spacing:.1em}.finale-shade{background:linear-gradient(#08080c 0%,#08080c30 29%,#08080c25 65%,#08080c 100%),radial-gradient(ellipse at 50% 45%,#08060d91,transparent 85%)}.hero-smoke{inset:-10%;background-position:50% 60%}.smoke-left{mask-image:radial-gradient(ellipse 75% 59% at 1% 34%,#000 5%,#000b 35%,transparent 80%)}.smoke-right{mask-image:radial-gradient(ellipse 75% 59% at 99% 34%,#000 5%,#000b 35%,transparent 80%)}.footer{gap:16px}.footer .brand-image{width:150px}.footer .text-link{font-size:10px}.bottom-signal{flex-direction:column;gap:13px;font-size:7px}.bottom-signal>span:last-child{font-size:7px}
 .v2-category-copy h1{font-size:46px;letter-spacing:-.05em}.category-hero{padding-top:30px;row-gap:10px}.v2-category-visual{aspect-ratio:1.6}.v2-category-copy .hero-eyebrow{font-size:8px}.v2-category-copy .hero-description{font-size:13px}.v2-category-copy .hero-sub{font-size:26px}.v2-category-copy .actions{gap:18px}.v2-category-copy .text-link{font-size:11px;gap:10px}.v2-category-copy .button{font-size:11px;gap:21px}.category-hero .glitch-signal{font-size:7px;gap:7px}.service-page #pricing h2{font-size:38px}.project-page .final-intro h2{font-size:54px}.project-page .final-intro>p{font-size:14px}.project-panel{padding:20px}.form-title{font-size:26px}.choice{font-size:12px;padding:15px}.form-progress{font-size:10px;gap:12px}.form-actions .button{font-size:12px}.concept-dialog{width:calc(100vw - 24px)}.concept-dialog-caption{padding:22px}.concept-dialog-caption h2{font-size:25px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-copy{opacity:1;transform:none}.hero-smoke{display:none!important}}
@media(max-width:360px){.hero-copy .actions{flex-direction:column;gap:8px}.hero-copy .button{min-width:190px;white-space:nowrap}.hero-copy .text-link{min-height:44px;white-space:nowrap}.v2-hero,.hero-inner{min-height:650px}.hero-inner{padding-top:40px}.hero-copy{padding-bottom:25px}}
@media(forced-colors:active){.hero-copy .actions>a{background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none}.hero-backdrop,.goal-art,.v2-category-visual,.finale-backdrop{display:none}.goal{border:1px solid CanvasText}.goal::after{display:none}.goal-copy{width:100%}.primary{background:ButtonFace;color:ButtonText;border:1px solid ButtonText}.status-dot{background:CanvasText;box-shadow:none}.v2-category-copy{grid-column:1/-1}.concept-dialog{border:1px solid CanvasText}}
@media(max-width:1100px){.footer-links{flex-direction:column;align-items:flex-end;gap:0}}
@media(max-width:760px){.footer{grid-template-columns:minmax(0,1fr) auto;gap:18px 24px}.footer .brand{grid-column:1/-1;grid-row:1;justify-self:center;max-width:100%}.footer-signature{grid-column:1;grid-row:2;font-size:9px}.footer-links{grid-column:2;grid-row:2}.footer-links .text-link{min-height:36px;font-size:9px}}
@media(max-width:420px){.footer{grid-template-columns:minmax(0,1fr);gap:16px}.footer-signature{grid-column:1;grid-row:2}.footer-links{grid-column:1;grid-row:3;flex-direction:row;flex-wrap:wrap;gap:0 24px;justify-content:flex-end;max-width:100%}}



/* An occasional invitation glow, with steady text and no layout movement. */
.nav-cta{position:relative;isolation:isolate;border-color:#775098;box-shadow:0 0 14px #a66bef12}
.nav-cta::before{content:"";position:absolute;inset:-1px;border:1px solid #d3b3ff;border-radius:inherit;box-shadow:0 0 22px 5px #ac6ef766,inset 0 0 14px #ac6ef726;opacity:0;pointer-events:none;animation:project-invitation-glow 9s ease-in-out infinite}
@keyframes project-invitation-glow{0%,58%,100%{opacity:0}72%{opacity:.82}86%{opacity:.12}}
.nav-cta:hover::before,.nav-cta:focus-visible::before{animation:none;opacity:.8}

/* A new full-width gateway scene for the existing enquiry page. */
.project-page .final-section{position:relative;max-width:none;width:100%;isolation:isolate}
.project-page .project-gateway{inset:0;height:auto;max-height:940px;opacity:1;mask-image:none}
.project-gateway>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 60%}
.project-gateway::after{display:none}
.project-scene-shade{position:absolute;inset:0;background:linear-gradient(#08080c2b 0%,#08080c0d 46%,#08080c38 72%,#08080c 100%),radial-gradient(ellipse at 50% 34%,#08080c52 0%,transparent 58%)}
.project-page .final-intro{text-shadow:0 2px 28px #08080ccc}
@media(max-width:760px){.project-gateway>img{object-position:62% center}.project-scene-shade{background:linear-gradient(#08080c38,#08080c12 38%,#08080c65 76%,#08080c 100%),radial-gradient(ellipse at 50% 32%,#08080c88,transparent 75%)}}
@media(prefers-reduced-motion:reduce){.nav-cta::before{animation:none!important;opacity:.25}}
@media(forced-colors:active){.nav-cta::before{display:none}}

/* An opening to a luminous world, with light above and an obsidian floor below. */
.hero-scene-picture{position:absolute;inset:0;display:block}
.v2-home .hero-scene-picture img{filter:saturate(.98);opacity:1;object-position:50% 40%}
.v2-home .smoke-left{mask-image:radial-gradient(ellipse 36% 27% at 0% 80%,#0006 4%,#0003 34%,transparent 80%)}
.v2-home .smoke-right{mask-image:radial-gradient(ellipse 34% 26% at 100% 80%,#0005 4%,#0002 34%,transparent 80%)}
.v2-home .hero-vignette{background:linear-gradient(180deg,transparent 0%,#08080c0d 16%,#08080c5c 34%,#08080c85 58%,#08080cde 85%,#08080c 100%),radial-gradient(ellipse 44% 40% at 50% 43%,#08080c73,transparent 100%)}
.v2-home .hero-copy{text-shadow:0 2px 18px #08080ccc}
.v2-home .hero-copy .hero-eyebrow{color:#f3edff;text-shadow:0 1px 2px #08080c,0 0 5px #08080c}
.v2-home .hero-description{color:#e3ddec;text-shadow:0 1px 4px #08080c,0 2px 20px #08080c}
.v2-home .hero-copy .button{text-shadow:none}
.goal-video .goal-art>img{object-position:72% 44%}
.work-visual-camera img{object-position:82% center}
@media(max-width:600px){.v2-home .hero-copy .hero-eyebrow{font-size:9px;letter-spacing:.11em}.v2-home .hero-scene-picture img{object-position:50% 10%}.v2-home .hero-vignette{background:linear-gradient(transparent 0%,#08080c33 18%,#08080c99 40%,#08080ca6 65%,#08080c 100%),radial-gradient(ellipse 80% 50% at 50% 45%,#08080c40,transparent 100%)}}
