@font-face{font-family:Outfit;src:url('/assets/fonts/outfit-latin.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url('/assets/fonts/source-sans-3-latin.woff2') format('woff2');font-weight:200 900;font-display:swap}
/* The sole brand palette, shared by the page, artwork, and world. */
:root[data-palette="brand"] {
  --paper: #F5F1EA;
  --ink: #0B132B;
  --muted: #66697A;
  --butter: #ffc96b;
  --white: #FFFDFA;
  --focus: #235fbc;
  --nav-border: #66697A;
  --eyebrow: #66697A;
  --hero-text: #66697A;
  --primary-hover: #235fbc;
  --caption-line: #CBD5E1;
  --divider: #CBD5E1;
  --control-text: #66697A;
  --control-hover: #CBD5E1;
  --control-active: #CBD5E1;
  --control-divider: #CBD5E1;
  --hero-foot: #66697A;
  --intro-text: #66697A;
  --game-bg: #0B132B;
  --game-text: #FFFDFA;
  --pill-bg: #1d253b;
  --pill-border: #ffffff2b;
  --status-dot: #ffc96b;
  --art-note: #CBD5E1;
  --door-dark: #0B132B;
  --door-side: #235fbc;
  --arch: #3B82F6;
  --door: #3B82F6;
  --door-edge: #CBD5E1;
  --door-inset: #CBD5E1;
  --door-glow: #ffc96b94;
  --eyes: #ffc96b;
  --step: #3B82F6;
  --step-side: #235fbc;
  --step-shadow: #0B132B;
  --door-shadow: #0b132b52;
  --door-star: #CBD5E1;
  --flow-bg: #F5F1EA;
  --flow-ink: #0B132B;
  --flow-window: #17232a;
  --flow-shadow: #0b132b30;
  --flow-border: #233c37;
  --flow-dots: #91b7a8;
  --flow-window-text: #b1c6bb;
  --project-type: #66697A;
  --project-text: #66697A;
  --round-border: #CBD5E1;
    --studio-text: #66697A;
  --footer: #0B132B;
  --footer-text: #FFFDFA;
  --contact-muted: #CBD5E1;
  --contact-border: #66697A;
  --footer-divider: #66697A;
  --footer-muted: #CBD5E1;
  --dialog-hover: #CBD5E1;
  --backdrop: #0b132bc7;
  --dialog-star: #3B82F6;
  --dialog-text: #66697A;
  --dialog-divider: #CBD5E1;
  --link: #235fbc;
  --focus-dark: #3B82F6;
  --still-shadow: #CBD5E1;
  --still-base: #CBD5E1;
  --still-top: #F5F1EA;
  --still-mark: #3B82F6;
  --still-mark-side: #0B132B;
  --still-ledge: #3B82F6;
  --still-ledge-side: #0B132B;
  --still-sun: #ffc96b;
  --still-creature: #FFFDFA;
  --still-ears: #CBD5E1;
  --world-base: #CBD5E1;
  --world-top: #F5F1EA;
  --world-edge: #CBD5E1;
  --world-logo: #3B82F6;
  --world-cream: #F5F1EA;
  --world-yellow: #ffc96b;
  --world-pink: #CBD5E1;
  --world-plum: #0B132B;
  --world-dark: #0B132B;
  --world-track: #FFFDFA;
  --world-green: #CBD5E1;
  --world-white: #FFFDFA;
  --world-copper: #0B132B;
  --world-amber: #ffc96b;
  --world-emissive: #ffc96b;
  --world-sky: #FFFDFA;
  --world-ground-light: #CBD5E1;
  --world-key: #FFFDFA;
  --world-rim: #CBD5E1;
  --world-warm: #ffc96b;
  --world-shadow: #0B132B;
  --world-label: #0B132B;
  --world-label-text: #FFFDFA;
  --world-creature-one: #FFFDFA;
  --world-creature-two: #F5F1EA;
  --world-creature-three: #CBD5E1;
  --world-moon: #3B82F6;
  --world-blue: #3B82F6;
}
:root { --gutter: clamp(24px,5.4vw,92px); }

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:30px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Source Sans 3",sans-serif;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
button,input{font:inherit}
button,a{touch-action:manipulation}
a{color:inherit;text-decoration:none}
button{color:inherit}
h1,h2,h3,p{margin:0}
button{cursor:pointer}
button:disabled{cursor:default;opacity:.4}
button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid var(--focus);outline-offset:6px}
::selection{background:var(--ink);color:var(--paper)}
.wrap{max-width:1600px;margin:0 auto;padding-inline:var(--gutter)}
svg{display:block}
a svg,button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.skip-link{position:fixed;top:12px;left:20px;transform:translateY(-160px);z-index:10;padding:12px;background:var(--ink);color:white}
.skip-link:focus{transform:none}
.site-header{height:112px;display:flex;align-items:center;justify-content:space-between}
.brand{display:inline-flex;align-items:center;gap:12px;font-family:Outfit,sans-serif;font-size:25px;font-weight:620;line-height:1.2;letter-spacing:-.04em;white-space:nowrap}
.brand>img{display:block;width:41px;height:45px;flex:none}
.site-header nav{display:flex;align-items:center;gap:38px;font-size:15px;font-weight:550}
.site-header nav>a{padding:12px 0}
.site-header nav>a:hover{text-decoration:underline;text-underline-offset:5px}
.site-header nav .nav-contact{display:flex;align-items:center;gap:20px;border:1px solid var(--nav-border);border-radius:30px;padding:12px 20px;font-size:14px}
.nav-contact svg{width:17px;height:17px}
.hero{min-height:680px;position:relative;display:grid;grid-template-columns:1fr 1.05fr;align-items:center;padding-top:22px}
.hero-copy{position:relative;z-index:2;padding:25px 0 60px;pointer-events:none}
.hero-copy a{pointer-events:auto}
.hello{font-size:14px;font-weight:650;letter-spacing:.015em;line-height:1.5;color:var(--eyebrow);margin-bottom:30px}
.hero h1{font-family:Outfit,sans-serif;font-size:clamp(60px,6.2vw,102px);font-weight:600;letter-spacing:-.066em;line-height:1.03;text-wrap:balance}
.hero-description{font-size:19px;line-height:1.52;color:var(--hero-text);margin-top:26px}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:51px;padding:12px 24px;border-radius:30px;font-size:15px;font-weight:600;border:1px solid transparent}
.primary{background:var(--ink);color:var(--white)}
.primary:hover{background:var(--primary-hover)}
.hero .pill{margin-top:30px}
.world-column{position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0;margin-left:-30px;margin-right:-30px}
.world-frame{position:relative;width:100%;height:560px}
.world-frame canvas{position:absolute;inset:0;width:100%;height:100%;cursor:grab;touch-action:pan-y;outline-offset:-10px;opacity:0;transition:opacity .6s}
.world-frame canvas:active{cursor:grabbing}
.world-frame.ready canvas{opacity:1}
.world-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:opacity .3s}
.world-fallback svg{width:100%;height:100%}
.world-frame.ready .world-fallback{opacity:0;pointer-events:none}
.world-caption{position:absolute;right:22px;top:46px;display:flex;align-items:center;gap:10px;font-size:13px;color:var(--hero-text);transform:rotate(7deg);pointer-events:none}
.caption-line{display:block;width:32px;height:16px;border-top:1px solid var(--caption-line);border-radius:50%;transform:rotate(-17deg)}
.scene-status{position:absolute;bottom:20px;left:0;right:0;text-align:center;font-size:13px;color:var(--hero-text);pointer-events:none}
.world-controls{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:0 36px 26px;padding-top:12px;border-top:1px solid var(--divider)}
.world-controls p{font-size:13px;color:var(--control-text);display:flex;align-items:center;gap:10px}
.world-controls p>svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.2}
.control-buttons{display:flex;align-items:center;gap:4px}
.icon-button{display:grid;place-items:center;border:0;background:transparent;width:34px;height:36px;border-radius:50%;padding:8px}
.icon-button:hover{background:var(--control-hover)}
.icon-button[aria-pressed=true]{background:var(--control-active)}
.icon-button svg{width:18px;height:18px}
.control-divider{height:19px;width:1px;background:var(--control-divider);margin:0 5px}
.pause-symbol{display:none}
.icon-button[aria-pressed=true] .play-symbol{display:none}
.icon-button[aria-pressed=true] .pause-symbol{display:block}
.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--divider);padding:24px 0 33px;font-size:13px;color:var(--hero-foot)}
.hero-foot a{display:flex;gap:20px;align-items:center}
.hero-foot a span{font-size:20px}
.hero-foot a:hover{color:var(--ink)}
.work-section{background:var(--white);padding:82px 0 96px;border-radius:30px 30px 0 0;position:relative}
.section-intro{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:40px}
.section-intro h2{font:550 clamp(36px,3.5vw,56px)/1.1 Outfit,sans-serif;letter-spacing:-.045em}
.section-intro>p{font-size:16px;line-height:1.45;color:var(--intro-text);max-width:290px;padding-right:32px}
.project-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:32px}
.game-art,.flow-art{height:385px;border-radius:14px;overflow:hidden;position:relative}
.game-art{background:var(--game-bg);color:var(--game-text);isolation:isolate}
.project-status{position:absolute;left:24px;top:22px;font-size:12px;display:flex;align-items:center;gap:7px;background:var(--pill-bg);border:1px solid var(--pill-border);border-radius:20px;padding:6px 12px;z-index:1}
.project-status>span{width:5px;height:5px;background:var(--status-dot);border-radius:50%}
.game-art-caption{position:absolute;bottom:26px;left:27px;font-family:Outfit;font-size:28px;font-weight:450;letter-spacing:-.5px}
.art-note{position:absolute;right:18px;bottom:12px;font-size:10px;color:var(--art-note)}
.secret-illustration{width:330px;height:285px;position:absolute;left:50%;top:40px;transform:translateX(-50%)}
.arch{position:absolute;width:126px;height:180px;left:107px;top:13px;background:var(--door-dark);border-radius:67px 67px 0 0;box-shadow:12px 0 0 0 var(--door-side),0 0 0 12px var(--arch);transform:skewY(-7deg);overflow:hidden}
.door{position:absolute;inset:0;background:var(--door);border-radius:67px 67px 0 0;transform-origin:left;transform:perspective(350px) rotateY(-51deg);box-shadow:inset -5px 0 var(--door-edge);z-index:1}
.door:before{content:'';position:absolute;inset:18px;border:1px solid var(--door-inset);border-radius:60px 60px 0 0}
.door-knob{position:absolute;right:14px;top:118px;width:8px;height:8px;background:var(--butter);border-radius:50%}
.door-glow{position:absolute;width:100%;height:40%;bottom:0;background:linear-gradient(0deg,var(--door-glow),transparent)}
.little-eyes{position:absolute;bottom:34px;right:12px;display:flex;gap:6px}
.little-eyes i{width:6px;height:8px;background:var(--eyes);border-radius:50%;transform:rotate(8deg)}
.step{position:absolute;left:95px;width:150px;height:26px;transform:skewY(-7deg);background:var(--step);border-bottom:11px solid var(--step-side);box-shadow:10px 6px 0 var(--step-shadow)}
.step-one{top:193px}
.step-two{top:215px;left:80px;width:165px}
.step-three{top:237px;left:65px;width:180px}
.door-shadow{position:absolute;width:215px;height:60px;background:var(--door-shadow);bottom:0;left:30px;border-radius:50%;filter:blur(14px)}
.door-star{position:absolute;color:var(--door-star)}
.star-one{right:21px;top:56px;font-size:24px}
.star-two{left:40px;top:154px;font-size:15px}
.flow-art{display:flex;flex-direction:column;background:var(--flow-bg);padding:28px 28px 0;color:var(--flow-ink)}
.flow-title{display:flex;align-items:center;gap:10px;font-family:Outfit;font-size:25px;font-weight:650;letter-spacing:-1px}
.flow-title img{width:36px;height:36px;border-radius:10px}
.flow-art>p{font-family:Outfit;font-size:28px;line-height:1.18;letter-spacing:-.7px;margin-top:18px;position:relative;z-index:2}
.flow-window{position:relative;left:4px;width:calc(100% + 60px);margin-top:auto;padding-top:0;top:34px;transform:rotate(-7deg);border-radius:10px;background:var(--flow-window);box-shadow:0 18px 28px var(--flow-shadow);overflow:hidden;border:4px solid var(--flow-border);transition:transform .25s}

.flow-window>img{display:block;width:100%;height:auto}
.window-dots{height:26px;display:flex;gap:4px;align-items:center;padding:0 10px}
.window-dots i{width:4px;height:4px;border-radius:50%;background:var(--flow-dots)}
.window-dots span{font-size:8px;color:var(--flow-window-text);margin-left:8px}
.project-description{display:flex;gap:20px;justify-content:space-between;padding-top:24px}
.project-type{font-size:12px;color:var(--project-type);margin-bottom:8px}
.project-description h3{font-family:Outfit;font-size:27px;line-height:1.2;font-weight:550;letter-spacing:-.7px}
.project-description div>p:not(.project-type){font-size:16px;line-height:1.5;color:var(--project-text);max-width:380px;margin-top:10px}
.round-link{display:grid;place-items:center;flex:none;align-self:center;width:45px;height:45px;border-radius:50%;border:1px solid var(--round-border);background:transparent}
.round-link:hover{background:var(--paper)}
.round-link svg{width:19px;height:19px}
.studio-section{padding-top:98px;padding-bottom:108px;display:grid;grid-template-columns:1fr;gap:55px;align-items:start}

.studio-section h2{font:550 clamp(38px,3.8vw,61px)/1.07 Outfit;letter-spacing:-.055em;margin-bottom:27px}
.studio-section p{font-size:18px;line-height:1.6;max-width:490px;color:var(--studio-text)}
.studio-section p+p{margin-top:15px}
footer{background:var(--footer);color:var(--footer-text);padding-top:65px;padding-bottom:26px;border-radius:28px 28px 0 0}
.contact-row{display:flex;justify-content:space-between;align-items:center;padding-bottom:62px;gap:30px}
.contact-row p{font-size:16px;color:var(--contact-muted);margin-bottom:10px}
.contact-row h2{font:500 80px/1 Outfit;letter-spacing:-4px}
.contact-link{font-family:Outfit;font-size:clamp(19px,2.5vw,33px);letter-spacing:-.7px;display:flex;gap:27px;align-items:center;padding-bottom:11px;border-bottom:1px solid var(--contact-border)}
.contact-link svg{width:25px;height:25px}
.contact-link:hover{color:var(--butter)}
.footer-bottom{border-top:1px solid var(--footer-divider);padding-top:27px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--footer-muted);font-size:12px}
.dialog-close{position:absolute;right:17px;top:14px;font-size:30px;width:40px;height:40px;border:0;border-radius:50%;background:transparent}
.dialog-close:hover{background:var(--dialog-hover)}
dialog{background:var(--paper);color:var(--ink);padding:45px;border:0;border-radius:22px;width:min(490px,calc(100% - 32px));max-height:calc(100dvh - 40px)}
dialog::backdrop{background:var(--backdrop);backdrop-filter:blur(6px)}

dialog h2{font:550 48px/1.04 Outfit;letter-spacing:-2px;margin:15px 0 20px}
dialog .project-type{color:var(--dialog-text)}
dialog>p:not(.project-type){font-size:17px;line-height:1.5;color:var(--dialog-text)}
dialog .dialog-note{border-top:1px solid var(--dialog-divider);padding-top:20px;margin-top:22px;font-size:14px!important}
dialog .pill{margin-top:26px}
.site-header{height:96px}
.hero{padding-top:0;min-height:600px}
.hero h1{letter-spacing:-.035em}
.world-frame{height:480px}
.world-caption{top:22px}
.hero-copy{padding-bottom:37px}
.world-controls{margin-bottom:22px}
.flow-window{transform:rotate(-5deg);transform-origin:left top}

@media(min-width:1500px){.world-frame{height:580px}
.hero{padding-top:20px}
.hero-copy{padding-bottom:65px}
}
@media(max-width:1100px){.site-header{height:98px}
.site-header nav{gap:25px}
.hero{min-height:600px;grid-template-columns:1fr 1fr}
.hero h1{font-size:7vw}
.hello{font-size:12px;gap:7px}
.hero-description{font-size:17px}
.world-frame{height:480px}
.world-controls{margin-inline:22px;gap:8px}
.world-controls p{gap:5px;font-size:11px}
.icon-button{width:30px;height:34px;padding:6px}
.world-caption{font-size:11px;right:4px;top:25px}
.project-grid{gap:24px}
.game-art,.flow-art{height:340px}
.flow-art{padding:24px 24px 0}
.flow-art>p{font-size:25px}
.flow-window{top:30px}
.game-art-caption{font-size:23px}
.secret-illustration{top:17px;transform:translateX(-50%) scale(.9)}
.studio-section{gap:30px;grid-template-columns:1fr}

}
@media(max-width:760px){:root{--gutter:25px}
.site-header{height:90px}
.brand{font-size:22px;gap:9px}
.brand>img{width:33px;height:37px}
.site-header nav{gap:20px;font-size:13px}
.site-header nav .nav-contact{padding:9px 13px;font-size:12px;gap:8px}
.site-header nav>a:nth-child(2){display:none}
.hero{display:flex;flex-direction:column;padding-top:22px;align-items:stretch}
.hero-copy{padding:8px 0 0}
.hello{font-size:12px;margin-bottom:20px}
.hero h1{font-size:clamp(54px,10.2vw,79px);letter-spacing:-.065em}
.hero-description{font-size:17px;margin-top:23px}
.hero .pill{margin-top:24px;min-height:48px;padding-inline:22px}
.world-column{margin:4px -15px 0}
.world-frame{height:410px}
.world-caption{top:25px;right:22px;font-size:12px}
.world-controls{margin:0 20px 27px;padding-top:12px}
.world-controls p{font-size:12px;gap:7px}
.icon-button{width:34px;height:38px}
.hero-foot{font-size:11px;padding:19px 0 24px;gap:15px}
.hero-foot>p{max-width:170px}
.hero-foot a{gap:10px}
.work-section{padding:51px 0 56px;border-radius:22px 22px 0 0}
.section-intro{display:block;margin-bottom:28px}
.section-intro h2{font-size:37px}
.section-intro>p{font-size:15px;margin-top:15px}
.section-intro>p br{display:none}
.project-grid{grid-template-columns:1fr;gap:38px}
.game-art,.flow-art{height:340px}
.project-description{padding-top:21px;gap:18px}
.project-description h3{font-size:25px}
.project-description div>p:not(.project-type){font-size:15px}
.secret-illustration{top:13px;transform:translateX(-50%) scale(.91)}
.game-art-caption{font-size:25px;bottom:29px;left:23px}
.project-status{left:20px;top:20px}
.flow-art{padding:26px 26px 0}
.flow-art>p{font-size:28px}
.flow-window{left:0;width:calc(100% + 45px);top:28px}
.studio-section{padding-top:55px;padding-bottom:55px;grid-template-columns:1fr;gap:20px}

.studio-section h2{font-size:43px;margin-bottom:23px}
.studio-section p{font-size:17px}
footer{padding-top:40px;border-radius:22px 22px 0 0}
.contact-row{display:block;padding-bottom:37px}
.contact-row h2{font-size:67px;letter-spacing:-3px}
.contact-link{font-size:23px;margin-top:30px;width:fit-content;gap:20px}
.contact-link svg{width:21px;height:21px}
.footer-bottom{flex-wrap:wrap;gap:20px 15px;padding-top:23px}
.world-controls .control-buttons{gap:3px}
dialog{padding:34px 27px}
dialog h2{font-size:43px}
}
@media(max-width:380px){:root{--gutter:20px}
.site-header nav{gap:14px}
.site-header nav .nav-contact{padding:8px 10px}
.nav-contact svg{display:none}
.hero h1{font-size:51px}
.world-frame{height:360px}
.world-caption{top:10px}
.world-controls{margin-inline:12px}
.control-buttons{gap:1px!important}
.icon-button{width:30px}
.hello{font-size:11px}
.flow-art>p{font-size:25px}
.game-art-caption{font-size:23px}
}
.flow-window{top:26px}
.world-frame canvas,.world-fallback{transition:none}
@media(max-width:760px){.hero h1{letter-spacing:-.045em}
}
@media(max-width:380px){.contact-link{font-size:21px;gap:14px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{transition:none!important;animation:none!important}
}

/* Wordmarks, brand illustration, and the exact legal footer line. */
.flow-title .flow-wordmark { font-family: Outfit,sans-serif; font-weight: 800; letter-spacing: -.02em; color: #0d1117; }
.flow-wordmark > span { color: #096b62; }
.project-url { display: inline-block; margin-top: 12px; color: var(--link); font-size: 15px; text-decoration: underline; text-underline-offset: 4px; }
.project-url:hover { text-decoration-thickness: 2px; }
.site-header nav > a,
.hero-foot a,
.round-link { color: var(--link); }
.footer-bottom { display: block; line-height: 1.8; }
.footer-bottom a { white-space: nowrap; text-decoration: underline; text-underline-offset: 3px; }
footer a:focus-visible { outline-color: var(--focus-dark); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (hover: hover) and (pointer: fine) {
  .flow-art:hover .flow-window { transform: rotate(-3deg) translateY(-4px); }
}
@media (prefers-reduced-motion: reduce) {
  .flow-art:hover .flow-window { transform: rotate(-5deg); }
}
.still-shadow { fill: var(--still-shadow); }
.still-base { fill: var(--still-base); }
.still-top { fill: var(--still-top); }
.still-mark { fill: var(--still-mark); }
.still-mark-side { fill: var(--still-mark-side); }
.still-ledge { fill: var(--still-ledge); }
.still-ledge-side { fill: var(--still-ledge-side); }
.still-sun { fill: var(--still-sun); }
.still-creature { fill: var(--still-creature); }
.still-ears { fill: var(--still-ears); }

/* The studio statement fills the space released by the location block. */
.studio-copy { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
.studio-copy h2 { margin-bottom: 0; }
.studio-prose { padding-top: 5px; }

/* Inner pages share the home page's paper, type, navigation, and contact band. */
.inner-page { min-height: 100dvh; display: flex; flex-direction: column; }
.inner-page .site-header { width: 100%; flex: none; }
.page { flex: 1; padding-block: 72px 112px; }
.page-content { display: grid; grid-template-columns: minmax(200px, .65fr) minmax(0, 1fr); gap: 72px; }
.page-heading { align-self: start; }
.page-eyebrow { color: var(--link); font-size: 13px; font-weight: 650; letter-spacing: .06em; margin-bottom: 21px; }
.page h1 { font: 550 clamp(48px, 5.5vw, 80px)/1.04 Outfit,sans-serif; letter-spacing: -.045em; text-wrap: balance; }
.page-body { max-width: 660px; padding-top: 39px; }
.page .prose { font-size: 19px; line-height: 1.65; color: var(--ink); }
.page .prose p + p { margin-top: 22px; }
.page-body a { color: var(--link); text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.page-body a:hover { text-decoration-thickness: 2px; }
.page-body h2 { font: 550 32px/1.15 Outfit,sans-serif; letter-spacing: -.03em; margin-top: 45px; }
.page .meta { color: var(--muted); font-size: 14px; padding-top: 16px; }
.facts { display: grid; grid-template-columns: 145px minmax(0, 1fr); margin: 22px 0 0; font-size: 17px; line-height: 1.55; }
.facts dt, .facts dd { border-top: 1px solid var(--divider); padding-block: 14px; }
.facts dt { font-weight: 600; }
.facts dd { margin: 0; color: var(--muted); }
.contact-list { margin: 35px 0 0; font-size: 17px; line-height: 1.55; }
.contact-list > div { display: grid; grid-template-columns: 145px minmax(0, 1fr); gap: 20px; border-top: 1px solid var(--divider); padding-block: 20px; }
.contact-list dt { font-weight: 600; }
.contact-list dd { margin: 0; color: var(--muted); }
.page-404 { display: flex; align-items: center; min-height: 410px; }
.page-404 .page-content { width: 100%; }

@media (max-width: 1100px) {
  .studio-copy { gap: 30px; }
  .page-content { grid-template-columns: minmax(170px, .6fr) minmax(0, 1fr); gap: 40px; }
}
@media (min-width: 761px) and (max-width: 1000px) {
  .studio-copy { grid-template-columns: 1fr; gap: 24px; }
}
@media (max-width: 760px) {
  .studio-copy { grid-template-columns: 1fr; gap: 23px; }
  .studio-prose { padding-top: 0; }
  .page { padding-block: 42px 65px; }
  .page-content { grid-template-columns: 1fr; gap: 30px; }
  .page-eyebrow { margin-bottom: 14px; }
  .page h1 { font-size: 54px; }
  .page-body { padding-top: 0; }
  .page .prose { font-size: 18px; }
  .facts { grid-template-columns: 110px minmax(0, 1fr); font-size: 16px; }
  .contact-list > div { grid-template-columns: 1fr; gap: 7px; }
  .page-404 { min-height: 360px; }
}
@media (max-width: 420px) {
  .site-header nav { gap: 12px; }
  .site-header nav .nav-contact { padding: 9px 11px; }
  .nav-contact svg { display: none; }
  .brand { font-size: 21px; gap: 6px; }
}
@media (max-width: 350px) {
  .brand { font-size: 19px; }
  .brand > img { width: 29px; height: 33px; }
  .site-header nav { gap: 9px; }
  .site-header nav .nav-contact { padding: 8px; }
}
