/* Owner's v38 corrections, continuing the approved visual language. */
body:has(.hero-frame) .site-header:not(.is-scrolled) .glass-nav::before{background:linear-gradient(130deg,#6e8aac42,#39393938)}
[data-theme=dark] body:has(.hero-frame) .site-header:not(.is-scrolled) .glass-nav::before{background:linear-gradient(135deg,#f8f8f870,#e3e3e33b 55%,#f3f3f35c)}
[data-theme=dark] body:has(.hero-frame) .site-header:not(.is-scrolled) .glass-nav{border-color:#ffffff6b}
.bio-tabs{background:linear-gradient(135deg,#aec6e524,#d3d3d30c 55%,#6392b819);}
.bio-tabs button[aria-pressed=true]{background:linear-gradient(145deg,#f0f3f9,#cfd2d8);color:#21242a;}
[data-theme=dark] .bio-tabs button[aria-pressed=true]{background:linear-gradient(145deg,#4a4d53,#2e3137);color:#f2f5fb;}
.portrait-glass{width:88px!important;height:94px!important;border:0!important;background:none!important;overflow:visible!important;flex:0 0 88px!important}
.portrait-glass canvas{inset:-8px!important;width:calc(100% + 16px)!important;height:calc(100% + 16px)!important;pointer-events:none}
.portrait-glass[data-context=ready] img{opacity:0}
.hero-orbit{border:1px solid #abc9e83b;background:radial-gradient(ellipse at 28% 20%,#a6cdf91a,transparent 65%);border-radius:50%}
.process-scroll{background:linear-gradient(180deg,transparent 0%,#24272d 24%,#24272d 77%,transparent 100%)}
[data-theme=dark] .process-scroll{background:linear-gradient(180deg,transparent 0%,#101319 24%,#101319 77%,transparent 100%)}
body[data-page=about] .page-opening{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:clamp(150px,15vw,210px);gap:0;min-height:0}
body[data-page=about] .about-opening-copy{max-width:none;width:100%}
body[data-page=about] .page-opening h1{font-size:clamp(60px,10.8vw,164px);white-space:nowrap;line-height:1.05;letter-spacing:-.065em}
body[data-page=about] .page-opening p{max-width:680px;margin:26px auto 0;font-size:clamp(19px,2vw,27px);line-height:1.45}
body[data-page=about] .page-opening .about-profile{width:min(640px,78vw);aspect-ratio:1;min-height:0;margin:24px auto 0;position:relative}
body[data-page=about] .about-intro{display:none}
.career-detail,.battle-section,.practice-detail{padding:100px var(--gutter)}
.career-detail .section-heading,.battle-section .section-heading{margin-bottom:64px}
.career-list{display:grid;gap:0}
.career-row{display:grid;grid-template-columns:1fr 1.15fr;gap:40px;padding:36px 0;border-top:1px solid var(--line)}
.career-row h3{font-size:clamp(28px,3.8vw,54px);line-height:1.08;letter-spacing:-.04em;margin:0}
.career-row .career-role{font-size:clamp(18px,2vw,25px);margin:0 0 14px;color:var(--ink)}
.career-row p{font-size:18px;line-height:1.5;color:var(--muted);max-width:570px;margin:0}
.career-links{display:flex;gap:30px;margin-top:35px;font-size:18px}
.battle-screen{aspect-ratio:16/9;background:linear-gradient(145deg,#26292f,#13161c);display:grid;place-items:center;position:relative;overflow:hidden;border-radius:12px;color:#f0f3f9}
.battle-screen button{font:inherit;font-size:clamp(24px,4vw,56px);letter-spacing:-.04em;background:transparent;color:inherit;padding:30px;min-height:44px;border-bottom:1px solid #9bb5d255}
.battle-screen iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.battle-section>p{font-size:18px;line-height:1.5;color:var(--muted);max-width:650px;margin-top:24px}
body[data-page=approach] .page-opening{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:6vw;min-height:0;padding-top:clamp(160px,17vw,230px);padding-bottom:80px}
body[data-page=approach] .page-opening h1{font-size:clamp(65px,9.3vw,144px);line-height:.98;letter-spacing:-.065em}
body[data-page=approach] .page-opening p{font-size:clamp(19px,2.1vw,29px);line-height:1.45;max-width:450px;padding-bottom:5px}
body[data-page=approach] .design-cycle{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:3vw;padding:20px 0 80px}
body[data-page=approach] .cycle-detail{grid-column:1;grid-row:1;width:100%;margin:0;max-width:none}
body[data-page=approach] .cycle-diagram{grid-column:2;grid-row:1;width:100%;max-width:760px;min-width:0}
body[data-page=approach] .cycle-panel{text-align:left;margin:0;max-width:510px}
body[data-page=approach] .cycle-panel h3{font-size:clamp(42px,5.7vw,84px);line-height:1.02;margin:0 0 26px}
body[data-page=approach] .cycle-panel p{font-size:clamp(18px,1.7vw,24px);line-height:1.5;color:var(--muted)}
.cycle-panel ul{list-style:none;padding:0;margin:30px 0 0;font-size:16px;line-height:1.7;color:var(--muted)}
.cycle-panel li{padding:6px 0;border-top:1px solid var(--line)}
body[data-page=approach] .cycle-panels{min-height:390px}
.cycle-auto{background:none;color:var(--muted);padding:12px 0;min-height:44px;font:inherit;font-size:14px;margin-top:24px;text-decoration:underline;text-underline-offset:5px}
.cycle-auto:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.cycle-arc{stroke-dasharray:calc(1 + var(--cycle-progress,0)*16) 100}
.practice-detail{padding-top:35px}
.practice-detail h2{font-size:clamp(44px,6vw,86px);letter-spacing:-.05em;line-height:1.06;max-width:850px;margin-bottom:60px}
.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}
.practice-grid h3{font-size:28px;letter-spacing:-.035em;line-height:1.1;margin-bottom:20px}
.practice-grid p{font-size:18px;line-height:1.55;color:var(--muted)}
.content-plane{transform-origin:50% 100%;backface-visibility:hidden}
.content-plane:focus-within{transform:none!important}
.logo-marquee .web3-tag{display:none!important}
.logo-marquee .about-logo-block{width:clamp(360px,36vw,620px);height:clamp(180px,22vw,290px);padding:25px 50px}
.logo-marquee .about-logo-block img,.logo-marquee .about-logo-block svg{max-width:88%;max-height:110px}
.logo-lane,.logo-set{gap:80px}
.industry-panel{border-radius:18px 18px 0 0;padding-inline:clamp(24px,4vw,70px)!important;background:#e9ecf2!important}
.industry-panel:nth-child(2){background:#e0e3e9!important}.industry-panel:nth-child(3){background:#edf0f6!important}
[data-theme=dark] .industry-panel{background:#1e2127!important;}
[data-theme=dark] .industry-panel:nth-child(2){background:#2d3036!important}[data-theme=dark] .industry-panel:nth-child(3){background:#23262c!important}
.service-preview,[data-page=approach] .service-preview{width:clamp(260px,30vw,440px);height:clamp(260px,30vw,440px);right:6%}
.service-rows>a>svg{display:none}
.service-rows>a:focus-visible{outline:2px solid var(--ink);outline-offset:6px}
@media(hover:hover) and (pointer:fine){.hero-orbit{transition:background-color 200ms ease-out,box-shadow 200ms ease-out}.hero-orbit:hover{background-color:#8bbaff18;}}
@media(max-width:700px){body[data-page=about] .page-opening h1{white-space:normal;font-size:clamp(48px,13vw,90px)}body[data-page=about] .page-opening{padding-top:145px}body[data-page=about] .page-opening .about-profile{width:92vw;margin-top:12px}.career-detail,.battle-section,.practice-detail{padding:65px var(--gutter)}.career-row{grid-template-columns:1fr;gap:18px;padding:28px 0}.career-links{flex-wrap:wrap;gap:22px}body[data-page=approach] .page-opening{grid-template-columns:1fr;gap:30px;padding-top:145px;padding-bottom:45px}body[data-page=approach] .page-opening h1{font-size:clamp(58px,12.5vw,90px)}body[data-page=approach] .design-cycle{display:flex;flex-direction:column;gap:30px;padding-bottom:45px}body[data-page=approach] .cycle-diagram{order:2;width:min(100%,560px)}body[data-page=approach] .cycle-detail{order:1;padding:0}body[data-page=approach] .cycle-panels{min-height:340px}body[data-page=approach] .cycle-panel h3{font-size:48px}.practice-grid{grid-template-columns:1fr;gap:30px}.portrait-glass{width:68px!important;height:76px!important;flex-basis:68px!important}.content-plane{transform:none!important}.logo-marquee .about-logo-block{width:300px;height:160px;padding:20px 30px}.logo-lane,.logo-set{gap:35px}.service-preview,[data-page=approach] .service-preview{width:210px;height:210px;right:0}}
@media(prefers-reduced-motion:reduce){.content-plane{transform:none!important}.hero-orbit,.hero-orbit svg,.cycle-arc{transition:none!important}}

body[data-page=approach] .design-cycle{padding-inline:var(--gutter)}
body[data-page=approach] .page-opening h1{font-size:clamp(65px,8.2vw,126px)}
body[data-page=about] .about-art{height:100%;min-height:0}
@media(max-width:700px){body[data-page=approach] .page-opening h1{font-size:clamp(58px,12.5vw,90px)}body[data-page=approach] .design-cycle{padding-inline:var(--gutter)}}

body[data-page=home] .service-rows>a,body:not([data-page]) .service-rows>a{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:260px;padding:40px 0;gap:16px}
body[data-page=home] .service-rows>a h3,body:not([data-page]) .service-rows>a h3{max-width:65%}
body[data-page=home] .service-rows>a p,body:not([data-page]) .service-rows>a p{max-width:50%;margin:0}
.industry-panel{transform:perspective(1400px) rotateX(calc(var(--stack-depth,0)*-20deg)) scale(calc(1 - var(--stack-depth,0)*.06)) translateY(calc(var(--stack-depth,0)*-18px));transform-origin:50% 100%}
@media(max-width:700px){.industry-panel{transform:none}.service-rows>a h3{max-width:100%}.service-rows>a p{max-width:100%}}

body[data-page=about] .page-opening .about-profile{height:min(640px,78vw);max-width:100%}
body[data-page=about] .page-opening .about-art{position:absolute;inset:0;width:100%;height:100%;min-height:0}
@media(max-width:700px){body[data-page=about] .page-opening .about-profile{width:100%;height:auto;aspect-ratio:1}}

/* Match paragraph entrances to authored heading masks. */
:root{--ease:cubic-bezier(.22,1,.36,1)}
[data-reveal].reveal-visible .text-mask>span{transition-duration:720ms;transition-delay:calc(var(--line-index,0)*70ms)}
@media(prefers-reduced-motion:reduce){.industry-panel{transform:none!important}.text-mask>span{transition:none!important;transform:none!important}}
