/* Studio v3 — Tommy as a person, a practice, and a working archive.
   Visual reference: warm paper / ink / one signal colour / purposeful motion. */
:root {
  --studio-paper: #f7f4ee;
  --studio-paper-2: #ebe6dc;
  --studio-ink: #171820;
  --studio-ink-2: #242532;
  --studio-muted: #6c6b70;
  --studio-line: rgba(23,24,32,.16);
  --studio-red: #e85c45;
  --studio-blue: #5f78df;
  --studio-gold: #d5a24a;
  --studio-serif: 'Fraunces', 'Noto Serif SC', Georgia, serif;
  --studio-sans: 'DM Sans', 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --studio-mono: 'IBM Plex Mono', 'SFMono-Regular', Consolas, monospace;
}

body.cyber-home { margin: 0; color: var(--studio-ink); background: var(--studio-paper); font-family: var(--studio-sans); overflow-x: hidden; }
body.cyber-home > .cyber-preloader,
body.cyber-home > .signal-canvas,
body.cyber-home > .pointer-glow,
body.cyber-home > .cursor-dot,
body.cyber-home > .cursor-ring,
body.cyber-home > .signal-header,
body.cyber-home > main#main,
body.cyber-home > footer.cyber-footer,
body.cyber-home > .cyber-skip { display: none !important; }
#studio-v3-shell { position: relative; z-index: 1; display: block; min-height: 100vh; }
#studio-v3-shell, #studio-v3-shell * { box-sizing: border-box; }
#studio-v3-shell a { color: inherit; text-decoration: none; }
#studio-v3-shell button { font: inherit; }

.studio-nav { position: sticky; top: 0; z-index: 30; border-bottom: 1px solid transparent; background: rgba(247,244,238,.86); backdrop-filter: blur(16px); transition: border-color .25s ease, background .25s ease; }
.studio-nav.is-scrolled { border-color: var(--studio-line); background: rgba(247,244,238,.96); }
.studio-nav-inner { width: min(1240px, calc(100% - 64px)); min-height: 78px; margin: 0 auto; display: flex; align-items: center; gap: 30px; }
.studio-wordmark { display: inline-flex; align-items: baseline; gap: 7px; flex: none; font: 700 21px/1 var(--studio-serif); letter-spacing: -.05em; }
.studio-wordmark i { color: var(--studio-red); font: 500 24px/1 var(--studio-mono); }
.studio-wordmark b { font-weight: 500; }
.studio-links { display: flex; align-items: center; gap: 29px; margin-left: auto; color: var(--studio-muted); font: 500 12px var(--studio-sans); }
.studio-links a { transition: color .2s ease; }.studio-links a:hover { color: var(--studio-red); }
.studio-contact { display: inline-flex; align-items: center; gap: 13px; padding: 11px 14px; border: 1px solid var(--studio-ink); border-radius: 999px; color: var(--studio-ink); font-size: 12px; transition: color .2s ease, background .2s ease, transform .2s ease; }
.studio-contact span { color: var(--studio-red); font-size: 17px; }.studio-contact:hover { color: var(--studio-paper); background: var(--studio-ink); transform: translateY(-2px); }
.studio-menu { display: none; width: 39px; height: 39px; padding: 8px; margin-left: auto; border: 1px solid var(--studio-line); border-radius: 50%; background: transparent; cursor: pointer; }.studio-menu span { display: block; height: 1px; margin: 5px 0; background: var(--studio-ink); transition: transform .2s ease; }.studio-menu[aria-expanded=true] span:first-child { transform: translateY(3px) rotate(45deg); }.studio-menu[aria-expanded=true] span:last-child { transform: translateY(-3px) rotate(-45deg); }
.studio-mobile-nav { display: none; }

.studio-main { background: var(--studio-paper); }
.studio-hero { position: relative; width: min(1240px, calc(100% - 64px)); min-height: 720px; margin: 0 auto; padding: 104px 0 108px; display: grid; grid-template-columns: .9fr 1.1fr; gap: 72px; align-items: center; }
.studio-hero::before { content: 'TOMMY / 26'; position: absolute; left: -2px; top: 40px; color: var(--studio-red); font: 500 10px var(--studio-mono); letter-spacing: .13em; writing-mode: vertical-rl; }
.studio-hero-copy { position: relative; z-index: 2; max-width: 535px; }.studio-kicker { display: flex; align-items: center; gap: 10px; margin: 0 0 28px; color: var(--studio-muted); font: 500 10px var(--studio-mono); letter-spacing: .14em; text-transform: uppercase; }.studio-kicker span { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--studio-red); }
.studio-hero h1 { margin: 0; color: var(--studio-ink); font: 600 clamp(56px, 7.6vw, 114px)/.9 var(--studio-serif); letter-spacing: -.085em; }.studio-hero h1 em { display: inline-block; color: var(--studio-red); font-style: italic; font-weight: 450; }
.studio-intro { max-width: 480px; margin: 34px 0 0; color: #4e4e55; font-size: 16px; line-height: 1.8; }.studio-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; margin-top: 36px; }.studio-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 26px; min-height: 49px; padding: 0 17px; border: 1px solid transparent; font-size: 12px; transition: transform .25s ease, background .25s ease, color .25s ease; }.studio-button span { font-size: 17px; }.studio-button-solid { color: var(--studio-paper); background: var(--studio-ink); box-shadow: 7px 7px 0 rgba(232,92,69,.26); }.studio-button-solid:hover { color: var(--studio-ink); background: var(--studio-red); transform: translateY(-3px); }.studio-button-light { color: var(--studio-ink); background: var(--studio-paper); }.studio-button-light:hover { background: var(--studio-red); transform: translateY(-3px); }
.studio-text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--studio-muted); font: 500 12px var(--studio-mono); }.studio-text-link span { color: var(--studio-red); font-size: 17px; }.studio-text-link:hover { color: var(--studio-red); }
.studio-signature { margin: 44px 0 0; color: var(--studio-muted); font: 500 10px/1.65 var(--studio-mono); letter-spacing: .04em; }.studio-signature small { color: var(--studio-red); font: 500 10px var(--studio-sans); letter-spacing: 0; }

.studio-hero-art { position: relative; min-height: 506px; overflow: hidden; border-radius: 2px; background: var(--studio-ink); box-shadow: 18px 18px 0 rgba(232,92,69,.16); }.studio-art-grid { position: absolute; inset: 0; opacity: .23; background-image: linear-gradient(rgba(247,244,238,.12) 1px, transparent 1px), linear-gradient(90deg, rgba(247,244,238,.12) 1px, transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(90deg, #000, transparent 88%); }.studio-art-circle { position: absolute; border: 1px solid rgba(247,244,238,.26); border-radius: 50%; }.studio-art-circle-a { width: 460px; height: 460px; right: -102px; top: -86px; border-color: rgba(232,92,69,.7); }.studio-art-circle-b { width: 275px; height: 275px; right: 15px; top: 42px; border-color: rgba(95,120,223,.8); }.studio-art-label { position: absolute; top: 21px; left: 23px; color: rgba(247,244,238,.56); font: 500 9px var(--studio-mono); letter-spacing: .12em; }.studio-art-card { position: absolute; z-index: 2; display: grid; gap: 6px; width: 211px; padding: 15px; border: 1px solid rgba(247,244,238,.42); background: rgba(23,24,32,.78); box-shadow: 7px 7px 0 rgba(0,0,0,.15); transition: transform .3s ease, border-color .3s ease; }.studio-art-card:hover { border-color: var(--studio-red); transform: translateY(-5px) rotate(0deg); }.studio-art-card small { color: var(--studio-red); font: 500 9px var(--studio-mono); }.studio-art-card strong { color: var(--studio-paper); font: 600 22px var(--studio-serif); letter-spacing: -.03em; }.studio-art-card span { color: rgba(247,244,238,.62); font: 500 9px var(--studio-mono); }.studio-art-card-input { top: 120px; left: 70px; transform: rotate(-4deg); }.studio-art-card-model { top: 250px; right: 58px; border-color: rgba(95,120,223,.8); transform: rotate(3deg); }.studio-art-card-model small { color: #9eafff; }.studio-art-card-human { bottom: 56px; left: 118px; border-color: rgba(213,162,74,.75); transform: rotate(-2deg); }.studio-art-card-human small { color: var(--studio-gold); }.studio-art-note { position: absolute; top: 72px; right: 40px; z-index: 3; color: var(--studio-red); font: 600 17px/1.08 var(--studio-serif); font-style: italic; transform: rotate(5deg); }.studio-art-mark { position: absolute; right: 31px; bottom: 27px; color: rgba(247,244,238,.88); font: 600 94px/.75 var(--studio-serif); letter-spacing: -.14em; }.studio-art-mark span { color: var(--studio-red); }.studio-art-caption { position: absolute; left: 24px; bottom: 23px; color: rgba(247,244,238,.52); font: 500 10px/1.55 var(--studio-mono); }

.studio-marquee { overflow: hidden; border-top: 1px solid var(--studio-ink); border-bottom: 1px solid var(--studio-ink); color: var(--studio-paper); background: var(--studio-ink); }.studio-marquee > div { display: flex; width: max-content; align-items: center; gap: 24px; padding: 13px 0; animation: studio-marquee 32s linear infinite; font: 500 10px var(--studio-mono); letter-spacing: .10em; }.studio-marquee i { color: var(--studio-red); font-style: normal; font-size: 15px; }@keyframes studio-marquee { to { transform: translateX(-50%); } }

.studio-section { width: min(1240px, calc(100% - 64px)); margin: 0 auto; }.studio-work { padding: 134px 0 128px; }.studio-section-head { display: grid; grid-template-columns: 1fr .74fr; gap: 26px 72px; align-items: end; margin-bottom: 56px; }.studio-section-head .studio-kicker { grid-column: 1 / -1; margin-bottom: 2px; }.studio-section-head h2, .studio-method h2, .studio-desk h2, .studio-contact-band h2 { margin: 0; color: var(--studio-ink); font: 600 clamp(44px, 5.5vw, 78px)/.93 var(--studio-serif); letter-spacing: -.075em; }.studio-section-head h2 em, .studio-method h2 em, .studio-desk h2 em, .studio-contact-band h2 em { color: var(--studio-red); font-style: italic; font-weight: 450; }.studio-section-lede { max-width: 390px; margin: 0; color: var(--studio-muted); font-size: 14px; line-height: 1.75; }
.studio-case-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 14px; }.studio-case { position: relative; min-height: 405px; display: flex; flex-direction: column; grid-column: span 4; padding: 21px; overflow: hidden; color: var(--studio-paper); background: var(--studio-ink); transition: transform .3s ease, box-shadow .3s ease; }.studio-case-wide { grid-column: span 6; min-height: 470px; }.studio-case:hover { transform: translateY(-7px); box-shadow: 9px 9px 0 rgba(23,24,32,.13); }.studio-case-top, .studio-case-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; font: 500 10px var(--studio-mono); }.studio-case-top { color: rgba(247,244,238,.65); }.studio-case-top b { color: rgba(247,244,238,.43); font-weight: 500; }.studio-case-art { position: relative; min-height: 184px; margin: 26px -21px 20px; padding: 22px; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; background: #333645; }.studio-case-art i { position: relative; z-index: 2; color: var(--studio-paper); font: 600 59px/.8 var(--studio-serif); font-style: normal; letter-spacing: -.11em; }.studio-case-art > span { position: relative; z-index: 2; color: rgba(247,244,238,.82); font: 500 10px/1.3 var(--studio-mono); letter-spacing: .13em; }.studio-case h3 { margin: 0; font: 600 30px/1 var(--studio-serif); letter-spacing: -.05em; }.studio-case p { max-width: 310px; margin: 13px 0 25px; color: rgba(247,244,238,.66); font-size: 13px; line-height: 1.65; }.studio-case-foot { margin-top: auto; color: rgba(247,244,238,.56); }.studio-case-foot strong { color: var(--studio-paper); font-weight: 500; }.studio-case-orange .studio-case-art { background: linear-gradient(132deg, #f58b57, #ad3c35 66%, #52242c); }.studio-case-blue .studio-case-art { background: linear-gradient(132deg, #5b72df, #202e6a 66%, #161a35); }.studio-case-ink .studio-case-art { background: linear-gradient(132deg, #3c4050, #171820); }.studio-case-lilac .studio-case-art { background: linear-gradient(132deg, #9c8cbd, #454566 66%, #202132); }.studio-case-red .studio-case-art { background: linear-gradient(132deg, #ee6d59, #7e2d43 66%, #361c31); }.studio-case-green .studio-case-art { background: linear-gradient(132deg, #5f8f7b, #274d52 66%, #152a33); }.case-art-line { position: absolute; right: -16px; bottom: 17px; width: 76%; height: 1px; background: rgba(247,244,238,.7); transform: rotate(-18deg); box-shadow: 0 -16px 0 rgba(247,244,238,.28), 0 16px 0 rgba(247,244,238,.16); }.case-art-wave { position: absolute; right: 18px; bottom: 20px; width: 70%; height: 66px; border-top: 2px solid rgba(247,244,238,.8); border-radius: 50%; transform: rotate(-9deg); box-shadow: 0 19px 0 rgba(247,244,238,.28), 0 38px 0 rgba(247,244,238,.14); }.case-art-dots { position: absolute; right: 22px; bottom: 25px; width: 140px; height: 100px; background-image: radial-gradient(circle, rgba(247,244,238,.75) 0 2px, transparent 2.5px); background-size: 18px 18px; transform: rotate(-10deg); }.case-art-orbit { position: absolute; right: 22px; bottom: 9px; width: 135px; height: 135px; border: 1px solid rgba(247,244,238,.82); border-radius: 50%; transform: rotateX(65deg) rotateZ(-19deg); box-shadow: 0 0 0 19px rgba(247,244,238,.10), 0 0 0 38px rgba(247,244,238,.08); }.case-art-bars { position: absolute; right: 23px; bottom: 29px; display: grid; gap: 8px; width: 155px; }.case-art-bars b { display: block; height: 6px; background: rgba(247,244,238,.78); }.case-art-bars b:nth-child(2) { width: 76%; opacity: .58; }.case-art-bars b:nth-child(3) { width: 49%; opacity: .34; }.case-art-chart { position: absolute; right: 17px; bottom: 14px; width: 180px; height: 103px; border-bottom: 1px solid rgba(247,244,238,.5); border-left: 1px solid rgba(247,244,238,.5); background: linear-gradient(145deg, transparent 0 32%, rgba(247,244,238,.7) 33% 34%, transparent 35% 49%, rgba(247,244,238,.45) 50% 51%, transparent 52% 61%, rgba(247,244,238,.78) 62% 63%, transparent 64%); transform: skewY(-13deg); }
.studio-more { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-top: 23px; color: var(--studio-muted); font: 500 11px var(--studio-mono); }.studio-more a { color: var(--studio-red); }.studio-more b { margin-left: 7px; font-size: 16px; }

.studio-method { width: 100%; max-width: none; padding: 132px max(32px, calc((100% - 1240px) / 2)) 136px; color: var(--studio-paper); background: var(--studio-ink); }.studio-method-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 100px; align-items: start; }.studio-method .studio-kicker { color: rgba(247,244,238,.55); }.studio-method h2 { color: var(--studio-paper); }.studio-method-copy { max-width: 410px; margin: 31px 0 28px; color: rgba(247,244,238,.63); font-size: 15px; line-height: 1.8; }.studio-method .studio-text-link { color: rgba(247,244,238,.76); }.studio-method .studio-text-link:hover { color: var(--studio-red); }.studio-steps { border-top: 1px solid rgba(247,244,238,.22); }.studio-steps article { position: relative; min-height: 164px; display: grid; grid-template-columns: 44px 1fr 1fr; gap: 22px; align-items: start; padding: 23px 0; border-bottom: 1px solid rgba(247,244,238,.22); }.studio-steps article > b { color: var(--studio-red); font: 500 11px var(--studio-mono); }.studio-steps h3 { margin: 0; color: var(--studio-paper); font: 600 27px/1 var(--studio-serif); }.studio-steps p { max-width: 250px; margin: 0; color: rgba(247,244,238,.62); font-size: 13px; line-height: 1.6; }.studio-steps small { grid-column: 2 / -1; color: var(--studio-gold); font: 500 10px var(--studio-mono); }

.studio-desk { padding: 132px 0 137px; }.studio-desk-head { display: grid; grid-template-columns: .8fr .65fr; gap: 20px 80px; align-items: end; margin-bottom: 51px; }.studio-desk-head .studio-kicker { grid-column: 1 / -1; }.studio-desk-head > p:last-child { max-width: 380px; margin: 0; color: var(--studio-muted); font-size: 14px; line-height: 1.75; }.studio-terminal { color: var(--studio-paper); background: #272431; box-shadow: 14px 14px 0 rgba(232,92,69,.16); }.studio-terminal-top { min-height: 49px; display: flex; align-items: center; gap: 12px; padding: 0 18px; border-bottom: 1px solid rgba(247,244,238,.18); color: rgba(247,244,238,.53); font: 500 10px var(--studio-mono); }.studio-terminal-top > span { display: inline-flex; gap: 5px; }.studio-terminal-top i { width: 7px; height: 7px; border-radius: 50%; background: rgba(247,244,238,.38); }.studio-terminal-top i:first-child { background: var(--studio-red); }.studio-terminal-top i:nth-child(2) { background: var(--studio-gold); }.studio-terminal-top em { margin-left: auto; color: var(--studio-red); font-style: normal; font-size: 9px; }.studio-terminal-body { padding: 14px 21px 6px; }.studio-terminal-body > div { display: grid; grid-template-columns: 62px 94px 1fr; gap: 15px; align-items: center; min-height: 55px; border-bottom: 1px solid rgba(247,244,238,.14); font: 500 11px var(--studio-mono); }.studio-terminal-body time { color: rgba(247,244,238,.42); }.studio-terminal-body strong { color: var(--studio-red); font-weight: 500; }.studio-terminal-body span { color: rgba(247,244,238,.74); }.studio-terminal-note { padding: 20px 21px 22px; color: var(--studio-gold); font: italic 500 13px var(--studio-serif); }
.studio-contact-band { position: relative; max-width: none; padding: 137px max(32px, calc((100% - 1240px) / 2)) 142px; overflow: hidden; color: var(--studio-paper); background: var(--studio-red); }.studio-contact-band::before { content: ''; position: absolute; width: 520px; height: 520px; right: -70px; top: -130px; border: 1px solid rgba(247,244,238,.4); border-radius: 50%; box-shadow: 0 0 0 58px rgba(247,244,238,.07), 0 0 0 116px rgba(247,244,238,.05); }.studio-contact-band .studio-kicker { color: rgba(247,244,238,.7); }.studio-contact-band h2 { position: relative; color: var(--studio-paper); }.studio-contact-band h2 em { color: var(--studio-ink); }.studio-contact-band > p:not(.studio-kicker) { position: relative; max-width: 430px; margin: 28px 0 31px; color: rgba(247,244,238,.77); font-size: 15px; line-height: 1.75; }.studio-contact-mark { position: absolute; right: max(32px, calc((100% - 1240px) / 2)); bottom: 32px; color: rgba(247,244,238,.74); font: 600 112px/.7 var(--studio-serif); letter-spacing: -.15em; }
.studio-footer { width: min(1240px, calc(100% - 64px)); margin: 0 auto; display: grid; grid-template-columns: 1fr auto auto; align-items: end; gap: 30px; padding: 43px 0 28px; color: var(--studio-muted); }.studio-footer p { margin: 13px 0 0; font-size: 12px; }.studio-footer-links { display: flex; gap: 22px; font-size: 12px; }.studio-footer-links a:hover { color: var(--studio-red); }.studio-footer > small { font: 500 10px var(--studio-mono); }
.studio-reveal { animation: studio-rise .85s cubic-bezier(.2,.7,.2,1) both; }.studio-reveal-delay { animation-delay: .16s; }@keyframes studio-rise { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: translateY(0); } }

/* Route pages keep a quiet extension of the same studio identity. */
body:not(.cyber-home) { color: var(--studio-ink); background: var(--studio-paper); font-family: var(--studio-sans); }
body:not(.cyber-home) .site-header { border-color: var(--studio-line); background: rgba(247,244,238,.92); }
body:not(.cyber-home) .wordmark-mark { color: var(--studio-paper); background: var(--studio-ink); }.wordmark-mark span { color: var(--studio-red); }
body:not(.cyber-home) .wordmark-copy strong { color: var(--studio-ink); }.wordmark-copy small { color: var(--studio-muted); }
body:not(.cyber-home) .desktop-nav a, body:not(.cyber-home) .mobile-nav a { color: var(--studio-muted); } body:not(.cyber-home) .desktop-nav a:hover, body:not(.cyber-home) .mobile-nav a:hover { color: var(--studio-red); }
body:not(.cyber-home) .button-primary { color: var(--studio-paper); background: var(--studio-ink); box-shadow: 6px 6px 0 rgba(232,92,69,.22); } body:not(.cyber-home) .button-primary:hover { color: var(--studio-ink); background: var(--studio-red); }
body:not(.cyber-home) .button-outline { border-color: var(--studio-ink); color: var(--studio-ink); background: transparent; } body:not(.cyber-home) .button-outline:hover { color: var(--studio-paper); background: var(--studio-ink); }
body:not(.cyber-home) .page-hero, body:not(.cyber-home) .inner-page-hero { background: var(--studio-paper); border-color: var(--studio-line); }
body:not(.cyber-home) .page-hero h1, body:not(.cyber-home) .inner-page-hero h1, body:not(.cyber-home) .route-title h2, body:not(.cyber-home) .section-heading h2 { color: var(--studio-ink); }
body:not(.cyber-home) .page-hero h1 em, body:not(.cyber-home) .inner-page-hero h1 em, body:not(.cyber-home) .accent { color: var(--studio-red); }
body:not(.cyber-home) .page-hero-lede, body:not(.cyber-home) .route-title p, body:not(.cyber-home) .section-heading > p, body:not(.cyber-home) .case-summary, body:not(.cyber-home) .case-proof { color: var(--studio-muted); }
body:not(.cyber-home) .case-card, body:not(.cyber-home) .matrix-card, body:not(.cyber-home) .price-card, body:not(.cyber-home) .simple-form, body:not(.cyber-home) .page-hero-aside { border-color: var(--studio-line); border-radius: 2px; background: var(--studio-paper); box-shadow: 6px 6px 0 rgba(23,24,32,.06); }
body:not(.cyber-home) .case-card:hover, body:not(.cyber-home) .matrix-card:hover, body:not(.cyber-home) .price-card:hover { border-color: var(--studio-red); box-shadow: 7px 7px 0 rgba(232,92,69,.16); }
body:not(.cyber-home) .case-card h3, body:not(.cyber-home) .matrix-card h3, body:not(.cyber-home) .price-card h3, body:not(.cyber-home) .timeline h3 { color: var(--studio-ink); font-family: var(--studio-serif); }
body:not(.cyber-home) .case-status, body:not(.cyber-home) .matrix-card b, body:not(.cyber-home) .price-card > b, body:not(.cyber-home) .route-kicker { color: var(--studio-red); }
body:not(.cyber-home) .case-proof { border-color: var(--studio-red); background: rgba(232,92,69,.055); }
body:not(.cyber-home) .lab-section, body:not(.cyber-home) .lab-output { color: var(--studio-paper); background: var(--studio-ink); }
body:not(.cyber-home) .site-footer { color: rgba(247,244,238,.65); background: var(--studio-ink); border-color: var(--studio-ink); }.site-footer a:hover { color: var(--studio-red); }

@media (max-width: 980px) { .studio-hero { grid-template-columns: 1fr; gap: 55px; padding-top: 84px; }.studio-hero-copy { max-width: 690px; }.studio-hero-art { min-height: 480px; max-width: 720px; width: 100%; margin-left: auto; }.studio-method-grid { grid-template-columns: 1fr; gap: 58px; }.studio-case-wide { grid-column: span 6; }.studio-desk-head, .studio-section-head { grid-template-columns: 1fr .8fr; }.studio-contact-mark { opacity: .4; } }
@media (max-width: 720px) { .studio-nav-inner, .studio-hero, .studio-section, .studio-footer { width: min(100% - 34px, 560px); }.studio-nav-inner { min-height: 69px; }.studio-links, .studio-contact { display: none; }.studio-menu { display: block; }.studio-mobile-nav { padding: 9px 17px 17px; border-top: 1px solid var(--studio-line); background: var(--studio-paper); }.studio-mobile-nav.is-open { display: grid; gap: 1px; }.studio-mobile-nav a { padding: 12px 0; border-bottom: 1px solid var(--studio-line); color: var(--studio-muted); font-size: 13px; }.studio-hero { min-height: auto; padding: 75px 0 88px; }.studio-hero::before { display: none; }.studio-hero h1 { font-size: clamp(54px, 17vw, 78px); }.studio-intro { font-size: 15px; }.studio-hero-art { min-height: 430px; }.studio-art-card { width: 183px; }.studio-art-card-input { left: 25px; }.studio-art-card-model { right: 22px; }.studio-art-card-human { left: 58px; }.studio-art-note { right: 17px; font-size: 14px; }.studio-art-mark { font-size: 75px; right: 18px; }.studio-work, .studio-desk { padding: 88px 0; }.studio-section-head, .studio-desk-head { display: block; }.studio-section-head .studio-kicker, .studio-desk-head .studio-kicker { margin-bottom: 31px; }.studio-section-head h2, .studio-method h2, .studio-desk h2, .studio-contact-band h2 { font-size: clamp(43px, 13vw, 61px); }.studio-section-lede, .studio-desk-head > p:last-child { margin-top: 24px; }.studio-case-grid { display: grid; grid-template-columns: 1fr; }.studio-case, .studio-case-wide { grid-column: auto; min-height: 385px; }.studio-case-wide { min-height: 425px; }.studio-more { display: grid; gap: 10px; }.studio-method { padding: 88px 17px 94px; }.studio-steps article { grid-template-columns: 34px 1fr; gap: 10px 14px; }.studio-steps article p { grid-column: 2; max-width: none; }.studio-steps small { grid-column: 2; }.studio-terminal-body > div { grid-template-columns: 49px 65px 1fr; gap: 8px; font-size: 9px; }.studio-contact-band { padding: 90px 17px 100px; }.studio-contact-mark { right: 19px; font-size: 82px; }.studio-footer { display: grid; grid-template-columns: 1fr; align-items: start; gap: 25px; }.studio-footer-links { gap: 17px; }.studio-footer > small { margin-top: 8px; } }
@media (prefers-reduced-motion: reduce) { .studio-reveal, .studio-marquee > div { animation: none; }.studio-case, .studio-art-card, .studio-button { transition: none; } }
