.route-intro{padding:68px max(24px,calc((100% - 1120px)/2)) 58px;background:var(--paper);color:var(--ink)}
.route-intro>a{font-size:13px;text-underline-offset:5px}.route-intro h1{font:900 clamp(36px,5.4vw,76px)/1.06 var(--display);letter-spacing:-.035em;max-width:1050px;margin:30px 0 24px;text-wrap:balance;overflow-wrap:break-word}.route-intro>p{font-size:18px;max-width:65ch;line-height:1.6}
.route-page .header a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}
.route-demo .header{position:relative}.route-demo .route-intro{padding-block:45px}.route-demo .route-intro h1{font-size:clamp(32px,4vw,56px)}
.route-lab-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:1200px;margin:0 auto;padding:0 24px 80px}.route-lab-link{text-decoration:none;color:inherit;min-width:0}.route-lab-art{display:flex;align-items:center;justify-content:center;min-height:260px;border-radius:16px;font:900 44px/1 var(--display);letter-spacing:-.03em;overflow:hidden}.route-lab-link h2{font-size:24px;line-height:1.2;margin:24px 0 12px;text-transform:none;overflow-wrap:anywhere}.route-lab-link p{font-size:15px;line-height:1.6}.route-lab-link:hover h2{text-decoration:underline;text-underline-offset:6px}.route-sakura{background:linear-gradient(#20212415,#20212430),url('/assets/sakura-scene.jpg') center/cover;color:#fff}.route-letters{background:#f2ca52;font-size:100px}.route-prism{background:#202124;color:#f6f6f2;font:italic 44px Georgia,serif}
.route-credit,.route-fallback{padding:24px;max-width:none;font-size:13px}.site-pages-footer-nav{display:flex;flex-wrap:wrap;gap:16px 24px;margin:0 0 40px}.site-pages-footer-nav a{font-size:13px;color:inherit;text-underline-offset:5px}
.route-page #lab-work{padding-top:20px}.route-page .calculator{padding-top:35px}.route-page #lab-brief{padding-top:35px}.route-page .crew{padding-top:30px}
@media(min-width:761px) and (max-width:1180px){.header .menu-toggle{display:flex;align-items:center;gap:12px;min-height:44px;padding:10px 12px;border:1px solid var(--ink);color:var(--ink);background:transparent;font:800 12px var(--display);border-radius:14px}.header .menu-toggle svg{width:20px;height:20px}.header nav{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100svh - 84px);overflow-y:auto;flex-direction:column;align-items:stretch;gap:0;padding:12px 24px 24px;background:var(--paper);border-bottom:2px solid var(--ink)}.header nav[data-open]{display:flex}.header nav>a:not(.button){padding:14px 0;min-height:48px;border-bottom:1px solid var(--line);font-size:18px}.header nav>.header-cta{margin:18px 0 0;justify-content:space-between}.header-shell{justify-content:space-between}}
@media(min-width:1181px){.header nav{gap:20px}.header nav>a{font-size:11px}.header .header-wordmark{width:168px}}
@media(max-width:760px){.route-intro{padding:44px 20px}.route-intro h1{font-size:clamp(30px,8vw,48px)}.route-intro>p{font-size:16px}.route-lab-grid{grid-template-columns:1fr;padding:0 20px 60px;gap:38px}.route-lab-art{min-height:230px}.site-pages-footer-nav{gap:14px 20px}.route-demo .route-intro{padding-block:32px}}

.route-timeline {background:#0a0a0a;color:#ff5f00;font-size:clamp(24px,3vw,48px);font-variant-numeric:tabular-nums}

.route-wave {background:#e9eae5;color:#202124;font-size:clamp(24px,3vw,48px)}

.route-tiger {background:#f2f1ee;color:#cf2e3d;font-family:Impact, sans-serif;font-size:clamp(32px,4vw,64px)}

.route-pixels {background:#f6f6f2;color:#a62c65;font-size:clamp(32px,4vw,64px)}

/* Integrated editorial sections on the main site. */
[data-site-experience] {display:block;min-width:0}
.hero-ground[data-site-experience] {display:inline-block;max-width:100%}
.site-wave-footer {margin:0 calc(-1 * var(--gutter)) 48px}
#page-footer:has(.site-wave-footer) {padding-top:0}
#how:has([data-site-experience]) {scroll-margin-top:0}
#work-poster,#ownership {scroll-margin-top:0}

.systems-molten {margin:40px 0 56px}

#lab-systems {position:relative;isolation:isolate}
#lab-systems > .systems-glyphs {position:absolute;inset:0 0 auto auto;width:70%;height:680px;max-height:100%;z-index:0;opacity:.38;pointer-events:none;overflow:hidden;mask-image:linear-gradient(to bottom,#000,transparent)}
#lab-systems > :not(.systems-glyphs) {position:relative;z-index:1}

.toolkit-widgets {grid-column:1 / -1;min-width:0}

/* Compact shared footer. */
.site-wave-footer{margin-bottom:24px}
#page-footer{padding-bottom:28px}
#page-footer .footer-top{gap:16px}
#page-footer .footer-top>p{font:600 14px/1.4 var(--body)}
#page-footer .footer-brand{font-size:20px}
#page-footer .privacy{margin-top:20px}
#page-footer .footer-bottom{margin-top:16px;padding-top:16px}
@media(max-width:760px){#page-footer .footer-top>.logo{width:auto}#page-footer .footer-top>p{display:none}#page-footer .footer-bottom{padding-bottom:54px}}

/* Service explanations are readable articles with native links. */
.service-answers{max-width:800px;margin:0 auto;padding:0 24px 64px}
.service-answers section,.service-answers nav{margin-bottom:36px}
.service-answers h2{font:700 clamp(23px,3vw,30px)/1.25 var(--body);text-transform:none;letter-spacing:-.02em;margin-bottom:14px}
.service-answers p{font-size:18px;line-height:1.7;max-width:65ch}
.service-answers li{margin-block:10px}
.service-answers a{overflow-wrap:anywhere}
.service-nav{display:flex;flex-wrap:wrap;gap:12px 24px;padding-block:24px;font:600 15px/1.5 var(--body)}
.service-nav a{padding-block:6px}
@media(max-width:600px){.service-answers{padding-inline:20px}.service-answers p{font-size:16px}}

.route-lab-work{padding:0 max(24px,calc((100% - 1120px)/2)) 96px;background:var(--paper);color:var(--ink);min-height:32svh}
.route-lab-work p{padding-top:28px;border-top:1px solid var(--line);margin-bottom:28px;font-size:18px}
