/* V7 visual system: titanium, midnight blue, cyan light, restrained brand red. */
:root {
  --font-body: "PingFang SC", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, sans-serif;
  --font-tech: "Avenir Next", "Bahnschrift", "DIN Alternate", "PingFang SC", sans-serif;
  --paper: #f0f3fa;
  --ink: #1b243b;
  --muted: #5b6680;
  --blue: #4256ba;
  --cyan: #86ebff;
  --line: #d8deec;
  --brand-red: #ce2c4b;
  --night: #0c1425;
  --night-text: #edf3ff;
  --night-muted: #adbad3;
  font-family: var(--font-body);
}
body {font-size:15px;line-height:1.9;letter-spacing:.02em;background:var(--paper);-webkit-font-smoothing:antialiased}
h1,h2,h3 {font-family:var(--font-body);font-weight:600;letter-spacing:-.025em;line-height:1.4}
p {text-wrap:pretty}
::selection {background:#b3cbf0;color:#132339}
.eyebrow,.micro-label,.brand-sub,.number,.image-tag,.lab-topline,.stage-caption,.lab-services,.lab-bottom,.insight-index,.style-tab-label b,.brand-rail span,.footer-domain {font-family:var(--font-tech);font-weight:600}
.eyebrow {font-size:11px;letter-spacing:.16em;color:#4c5f9d;line-height:1.6;margin-bottom:20px}
.eyebrow:before {content:'';display:inline-block;width:20px;height:2px;vertical-align:middle;margin-right:12px;background:linear-gradient(90deg,#5b6fc3,#a4c6eb)}
.micro-label {font-size:11px;letter-spacing:.13em;color:#65718b}
.section {padding-block:96px}
.section-heading {margin-bottom:38px;gap:48px}
.section-heading h2,.about-home h2 {font-size:42px;line-height:1.45;font-weight:600}
.section-description,.section-intro,.lede {font-size:15px;line-height:1.95;color:var(--muted)}
.accent,.text-link {color:#445bbb}
.text-link {font-size:14px;font-weight:600;letter-spacing:.04em}
.text-link:hover {color:#293f95}
.button {font-weight:600;font-size:14px;letter-spacing:.055em;min-height:50px;background:var(--brand-red);border-color:#ef667c;box-shadow:inset 0 1px 0 #ffadc32e;gap:24px;padding:15px 25px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px))}
.button:hover {background:#b72443;filter:drop-shadow(0 5px 13px #bc275c25)}
.button.secondary {background:#f6f8fd;border-color:#bac4dc;color:#3e518e}
.button.secondary:hover {background:#e9effb;color:#243c84;border-color:#748bc0}
.button.small {min-height:44px;font-size:12px;padding:12px 19px}
a:focus-visible,button:focus-visible,summary:focus-visible {outline:3px solid #7ccddd;outline-offset:5px}

/* Header: readable spacing and a quiet metal edge. */
.header-shell {background:#0d1423f2;border-bottom:1px solid #93b5db28;color:#f3f6fc}
.header-shell:after {width:100%;height:1px;background:linear-gradient(90deg,#d14161,transparent 30%,#7695e349 70%,#7bdded65)}
.site-header {height:86px;gap:30px}
.brand-word {font-size:21px;font-weight:600;letter-spacing:.17em}
.brand-sub {font-size:9px;letter-spacing:.29em;color:#abb8ce;line-height:2}
.brand-mark {width:48px;height:48px}
.site-header nav {gap:38px;font-size:14px;font-weight:500;color:#c5cfe1}
.site-header nav a {padding:28px 0;letter-spacing:.04em}
.site-header nav a:after {height:2px;background:linear-gradient(90deg,#91e9fa,#ab9bff)}
.site-header nav a:hover,.site-header nav [aria-current] {color:#f0f6ff}

/* Main stage: fewer competing colors, softer typography, stronger contrast. */
.space-lab {background:radial-gradient(ellipse at 75% 12%,#2936553d,transparent 55%),linear-gradient(115deg,#101b2d,#0c1425 55%,#131c35);--electric:#8debff;--violet:#b7a7ff;--hot:#dc537b}
.lab-grid {opacity:.62}
.aura-blue {background:#377ea746;opacity:.5}
.aura-red {background:#505ab865;opacity:.4;left:-230px;top:230px}
.lab-wordmark {font-family:var(--font-tech);font-weight:750;letter-spacing:-.06em;-webkit-text-stroke:1px #bdcff025;left:39%;top:20px;font-size:clamp(150px,17vw,270px);opacity:.8}
.lab-wordmark span {letter-spacing:.23em;margin-top:-18px;margin-left:175px;font-weight:500}
.lab-topline {height:63px;color:#a1b2cc;letter-spacing:.14em;font-size:10px;border-bottom-color:#95b2d51f}
.lab-topline span:last-child {font-family:var(--font-body);font-size:11px;letter-spacing:.12em}
.lab-topline b {color:#9aaff2;font-size:16px}
.lab-layout {min-height:692px;padding-block:30px 34px;grid-template-columns:.88fr 1.25fr}
.lab-copy {padding-bottom:47px}
.lab-kicker {display:inline-flex;gap:11px;padding:7px 13px;border:1px solid #9db8d82c;border-radius:3px;background:linear-gradient(90deg,#9ea9e411,#8ed8ec06);color:#d0dcef;font-size:12px;font-weight:500;letter-spacing:.13em;margin-bottom:25px}
.lab-kicker:before {width:5px;height:5px;background:#99eafa;box-shadow:0 0 12px #6de1f594;transform:rotate(45deg)}
.lab-copy h1 {font-family:var(--font-body);font-size:clamp(48px,4.8vw,70px);font-weight:600;line-height:1.4;letter-spacing:-.04em}
.lab-copy h1>span {color:#f4f7ff}
.lab-copy h1 strong {font-weight:600;background:linear-gradient(100deg,#a9eaff,#c2c1ff 68%,#dce5ff);background-clip:text;-webkit-background-clip:text;color:transparent;filter:none}
.lab-description {font-size:14px;line-height:2;color:#b8c5db;margin-top:24px;letter-spacing:.025em}
.lab-copy .hero-actions {margin-top:31px;gap:27px}
.lab-copy .button {min-width:187px;background:linear-gradient(105deg,#ce2c4b,#bd3153);border-color:#fa7c8e;box-shadow:0 7px 28px #d0415320,inset 0 1px 0 #fff2;padding-block:17px}
.lab-copy .button:hover {background:linear-gradient(105deg,#b52341,#c63362);filter:drop-shadow(0 3px 17px #ee577625)}
.lab-case-link {font-size:13px;color:#d3deef;padding-block:10px;gap:20px;border-color:#93aaca50}
.lab-services {font-size:11px;gap:21px;color:#9faec8;margin-top:29px;letter-spacing:.025em}
.lab-stage {margin-left:-60px;margin-right:-52px}
.stage-room img {mask-image:radial-gradient(ellipse at 50% 51%,#000 47%,#000e 61%,transparent 78%)}
.stage-caption {color:#c4dbed;font-size:10px;letter-spacing:.11em;max-width:260px;right:40px;top:19px;line-height:1.8}
.stage-caption small {font-size:10px;color:#9caec8;letter-spacing:.025em}
.stage-reticle {color:#8097bc85}
.stage-tools {left:24%;right:14%;bottom:5px;border-color:#8daaca3b;padding-top:13px;gap:24px}
.stage-tools button {font-size:11px;color:#b3c3db;min-height:38px;letter-spacing:.04em}
.stage-tools button:first-child {color:#e0ebf7}
.stage-tools button:hover {color:#8deafa}
.space-hotspot {padding:9px}
.space-hotspot b {height:32px;width:32px;font-size:11px;background:#172c43e8;border-color:#ade9f491;box-shadow:0 0 0 5px #86d7f216,0 0 20px #75c7ed21}
.space-hotspot span {font-size:11px;letter-spacing:.03em;padding:5px 8px;color:#e2f2fc;background:#17283df0;border-color:#86a7ca60;backdrop-filter:blur(12px)}
.space-hotspot[aria-expanded=true] b {background:#aeeaf4;color:#0f2841;border-color:#d5f7ff;box-shadow:0 0 0 6px #8de9ff21,0 0 25px #7cddff4d}
.space-hotspot[aria-expanded=true] span {color:#d9faff;border-color:#a4e8f391;background:#203449e8}
.lab-insight {padding:21px 24px;gap:19px;border:1px solid #879cbd42;background:linear-gradient(110deg,#283451c7,#1b294194);box-shadow:inset 2px 0 0 #a5dce4;width:100%;backdrop-filter:blur(14px);min-height:133px}
.lab-insight:after {width:60%;background:linear-gradient(90deg,#9cdfed,transparent)}
.insight-index {font-size:38px;font-weight:500;color:#92abce6b;letter-spacing:-.07em;padding-top:2px}
.lab-insight .micro-label {color:#9fbee4;font-size:10px;letter-spacing:.11em}
.lab-insight h2 {font-size:18px;line-height:1.55;letter-spacing:.01em;font-weight:500;color:#f1f4fd;margin-top:6px}
.lab-insight [data-insight-copy] {font-size:12px;color:#b4c2da;line-height:1.85;margin-top:8px}
.insight-corner {color:#b4d6f0}
.lab-companion {right:0;bottom:69px;gap:9px}
.lab-companion img {height:92px}
.lab-companion>span {font-size:11px;max-width:140px;color:#d4ddef}
.lab-companion small {font-family:var(--font-tech);font-size:8px;color:#a3b9d2;letter-spacing:.08em}
.lab-bottom {font-size:10px;color:#a1b2cc;border-color:#98adcf25;min-height:58px;letter-spacing:.05em}
.lab-bottom a {color:#d4e4f7;font-size:11px}
.lab-bottom b {color:#abe5f4}
.brand-rail {background:linear-gradient(95deg,#182a40,#243148 60%,#33304a);border-top:1px solid #8cb4d546;border-bottom:1px solid #19273f;color:#cdd9ed}
.brand-rail:before,.brand-rail:after {display:none}
.brand-rail .wrap {min-height:66px}
.brand-rail strong {font-size:16px;font-weight:500;color:#eef5ff;letter-spacing:.08em}
.brand-rail span {font-size:10px;letter-spacing:.14em;color:#a9bdd4}
.brand-rail b {color:#748fae;font-weight:400}
.brand-rail a {font-size:12px;color:#d4e7f6}

/* The emotional copy gets its own bright, airy titanium panel. */
.brand-story {background:radial-gradient(ellipse at 10% 10%,#e2eafa,transparent 60%),linear-gradient(125deg,#eff3fa,#f8f9fd);color:var(--ink);border-bottom:1px solid #d8e1ed;padding-block:90px}
.brand-story:before {color:#4e66920a;-webkit-text-stroke:1px #6f8aba12;letter-spacing:.05em}
.story-layout {grid-template-columns:.95fr 1.05fr;gap:90px;align-items:center}
.story-heading .eyebrow {color:#64769b}
.story-heading h2 {font-size:45px;font-weight:500;line-height:1.55;color:#23324c}
.story-heading h2 span {color:#5d69b5;background:none;-webkit-text-fill-color:currentColor}
.story-signature {color:#677a95;font-size:12px;letter-spacing:.1em;margin-top:22px}
.story-copy {font-size:15px;color:#5b6b83;line-height:2.05;position:relative;padding-left:33px;border-left:1px solid #becde251}
.story-copy .story-lead {font-size:20px;font-weight:500;color:#23364f}
.story-copy p+p {margin-top:18px}
.story-copy .story-last {border-color:#cbd6e8;font-size:15px;margin-top:24px}
.story-last strong {color:#4b5daa;font-weight:600}

/* Large style selector, legible labels, consistent cyan selection state. */
.style-section {background:radial-gradient(ellipse at 10% 30%,#26395255,transparent 60%),linear-gradient(135deg,#172237,#0f182a);border-top:1px solid #829bd638}
.style-section:before {color:#d4e3ff05;letter-spacing:.01em;font-family:var(--font-tech);font-weight:600}
.style-section .eyebrow {color:#a3bbdf}
.style-section .eyebrow:before {background:linear-gradient(90deg,#8de6f3,#9b9ed5)}
.style-section h2 {font-size:42px;color:#f0f4ff;font-weight:500}
.style-section .accent {color:#b4c3f3}
.style-section .section-description {font-size:14px;color:#b4c3da}
.style-explorer {grid-template-columns:200px 1fr;border-color:#9db4d13b;box-shadow:0 25px 70px #060b182b;border-radius:4px;background:#172237}
.style-tabs {padding:10px;gap:4px;background:#172237;border-right-color:#b4c6e224}
.style-tabs button {background:#172437;border-radius:2px;min-height:88px;isolation:isolate}
.style-tabs button img {opacity:.3}
.style-tabs button .style-tab-label {font-size:13px;color:#d8e7fb;font-weight:500;padding:9px 13px;line-height:1.7;letter-spacing:.04em}
.style-tab-label b {color:#becde4;font-size:10px;letter-spacing:.07em;font-weight:500}
.style-tabs button[aria-selected=true] {border-color:#91dcec91;background:#263951}
.style-tabs button[aria-selected=true]:before {background:#a8e9f4;box-shadow:0 0 17px #64cfe887}
.style-tabs button[aria-selected=true]:after {background:linear-gradient(90deg,#172c45de,#18284257)}
.style-tabs button[aria-selected=true] .style-tab-label {color:#f3fcff}
.style-tabs button[aria-selected=true] img {opacity:.72}
.style-panel {min-height:565px;background:#142034}
.style-copy {padding:82px 34px 30px;grid-template-columns:1fr 186px;background:linear-gradient(0deg,#0d192bf7 0,#0d192bdb 52%,transparent);gap:0 25px}
.style-copy .micro-label {color:#b7d8ee;font-size:11px}
.style-copy h3 {font-size:32px;font-weight:500;letter-spacing:0;margin-block:8px 13px}
.style-copy>p:not(.micro-label) {font-size:14px;line-height:1.9;color:#c0cde1}
.style-copy .style-tags {font-size:11px!important;color:#adbed6;margin-top:16px}
.style-picture .image-tag {font-size:10px;color:#e1edf9;background:#16283edf;border-color:#aac3db47;backdrop-filter:blur(8px)}
.style-copy .button {background:#aecbdd12;border-color:#9fc2d991;color:#e2f6ff;font-size:12px}
.style-copy .button:hover {background:#8fcae42b;color:#fff;border-color:#9aebf7}
.scenario-picker {border-color:#97b5d330;gap:35px;padding-top:31px}
.scenario-picker .micro-label {font-size:10px;color:#a1b7d1}
.scenario-picker h3 {font-size:21px;font-weight:500;color:#e6eefc}
.scenario-options button {font-size:12px;min-height:41px;padding:9px 13px;color:#c0cfe6;border-color:#a2bcdd38;background:#273a531e;border-radius:3px}
.scenario-options button[aria-pressed=true] {color:#dcfaff;border-color:#98d7e88a;background:#84c7d51c}
.scenario-description {font-size:13px;color:#b0c1d8;line-height:1.8}

/* Silver content surfaces and matching dark product stage. */
.case-home {background:linear-gradient(135deg,#e9eef7,#f6f8fc)}
.case-home .section-heading h2 {font-size:42px;font-weight:600;color:#202e48}
.case-flow {font-size:13px;border-color:#bdcbe151;color:#5d6d87;padding-block:14px}
.case-flow b {color:#627ab3;font-family:var(--font-tech);font-size:12px}
.empty-state {background:#fafcff;border:1px solid #cbd6e6;border-radius:4px;color:#61718a;box-shadow:0 12px 28px #31436404}
.empty-state h3 {font-size:20px;color:#3f526f;font-weight:500}
.empty-state p {font-size:14px}
.empty-state .empty-symbol {color:#8fa1bf}
.product-home-section,.product-hero-shell {background:radial-gradient(ellipse at 20% 80%,#46648e35,transparent 60%),radial-gradient(ellipse at 85% 10%,#53599340,transparent 60%),#121d31}
.product-home-section .section-heading h2 {color:#edf3ff;font-weight:500}
.product-home-section .accent {color:#adbef1}
.product-home-section .eyebrow,.product-home-section>.wrap>.section-heading>.text-link {color:#abc9ea}
.product-home-section .section-watermark {color:#c1ccec06;font-family:var(--font-tech)}
.product-card {border-color:#a2b9d442;background:linear-gradient(110deg,#203149,#27304b);border-radius:4px;box-shadow:0 18px 70px #02091720;min-height:380px}
.product-card:hover {border-color:#a3d9e56e;box-shadow:0 18px 70px #7097d412}
.product-card:after {background:linear-gradient(90deg,#9eddea,#a1aee8,transparent);opacity:.6}
.product-card-image {background:radial-gradient(ellipse at 55% 65%,#779ec42b,transparent 70%)}
.product-card-image:after {border-color:#83cbdb45;box-shadow:0 9px 30px #91b7e336}
.product-card-image img {height:350px;object-fit:contain}
.product-card-image .image-tag {font-size:11px;color:#d1e9f2;background:#25364ae6;border-color:#90b6cb3d}
.product-card-copy {padding:44px 40px}
.product-card-copy>p.eyebrow {font-size:11px;color:#b0cce6}
.product-card-copy h3 {font-size:33px;line-height:1.5;color:#f0f5fc;font-weight:500}
.product-card-copy>p {font-size:16px;color:#c4d1e4}
.product-card-copy .product-summary {font-size:14px;color:#adbed6;line-height:1.9}
.product-card-copy .text-link {color:#b0e3ed;font-size:14px}
.services-section,.feature-section {background:#e9eef7;border-color:#d9e1ef}
.service-card,.feature-grid article {background:linear-gradient(145deg,#fff,#f8faff);border-color:#cbd5e6;border-radius:3px;box-shadow:0 8px 25px #263d6305;padding:32px}
.service-card .number,.feature-grid .number {font-size:15px;color:#8396b9;font-weight:500}
.service-card h3,.service-card h2 {font-size:25px;font-weight:500;color:#263b58;margin-block:24px 16px}
.service-card p,.feature-grid p {font-size:14px;line-height:1.9;color:#62728a}
.process {border-color:#c5d2e6;padding-top:13px;margin-top:25px}
.process ol {font-size:14px;gap:32px;color:#455b7d}
.process b {font-family:var(--font-tech);color:#667bb0;font-size:12px}
.about-home {gap:75px;grid-template-columns:.67fr 1fr}
.about-brand {border:1px solid #cbd6e6;border-radius:4px;background:#fff;box-shadow:15px 15px 0 #d9e1ef45;overflow:hidden}
.about-home p:not(.eyebrow) {font-size:15px;color:#63738b}
.aftercare-section {background:#fafbfd}
.aftercare-grid {gap:32px}
.aftercare-grid article {border-top-color:#becbe0;padding-top:25px}
.aftercare-grid article>span {font-size:11px;color:#6c7da0;letter-spacing:.03em}
.aftercare-grid h3 {font-size:20px;font-weight:500;color:#34455f}
.aftercare-grid p,.care-details {font-size:14px;line-height:1.95;color:#62718a}
.care-details {border-color:#d2ddeb;background:#f4f7fb}
.care-details summary {color:#435777;min-height:26px;font-weight:500}
.contact-section {background:radial-gradient(ellipse at 23% 50%,#5778ac30,transparent 58%),linear-gradient(125deg,#16253b,#20283f);border-top:1px solid #87acc94f}
.contact-copy h2 {color:#edf4ff;font-size:42px;font-weight:500}
.contact-copy .accent {color:#b7cdf9}
.contact-copy .eyebrow {color:#a9c5e2}
.contact-copy>p:not(.eyebrow) {font-size:15px;line-height:1.95;color:#b9c8e0}
.contact-number {color:#e0edff;font-family:var(--font-tech);font-weight:500;font-size:23px;letter-spacing:.02em}
.contact-number small {color:#b4c5df;font-family:var(--font-body);font-size:11px}
.contact-mascot .orbit {border-color:#9ecded66;box-shadow:0 0 0 30px #86bee914,0 0 0 60px #8b99d607}
.site-footer {background:#0e1829;border-top:1px solid #90aaca22}
.footer-top p {color:#becce1;font-size:14px}
.footer-phone {color:#dfeaf8;font-family:var(--font-tech);font-weight:500;letter-spacing:.03em}
.footer-phone span,.footer-meta,.preview-note {color:#a4b4cd;font-size:11px}
.footer-meta {border-color:#829bb92b}
.back-top {background:#1e304b;color:#c4e7f3;border:1px solid #8fb1d370;font-size:20px}

/* Secondary pages share the same type scale and light surfaces. */
.page-heading {padding-block:64px 46px;border-bottom-color:#d0dbea}
.page-heading h1 {font-size:48px;font-weight:600;color:#243550}
.page-heading:before {opacity:.04}
.page-heading .lede {font-size:17px;max-width:740px;color:#62728b}
.company-intro h2 {font-size:35px;font-weight:500;color:#2a3e5b}
.prose {font-size:15px;line-height:2;color:#5f7089}
.showroom-section {background:#e9eff8;border-color:#d6e0ee}
.showroom-card {background:#fcfdff;border-color:#cad6e6;border-radius:4px}
.showroom-card-copy h3 {font-size:21px;font-weight:500;color:#2b4162}
.showroom-card-copy p:not(.micro-label) {font-size:14px;line-height:1.85;color:#637591}
.photo-placeholder {background:linear-gradient(135deg,#e1e9f4,#edf3fa);color:#7b8ea9}
.photo-placeholder strong {color:#59708f}
.open-badge {font-size:12px;background:#e3f2f4;color:#316272;border-color:#afd2dc}
.location-graphic {background:linear-gradient(140deg,#dce8f5,#eef4fa);border:1px solid #c6d6e8}
.location-pin strong {color:#3c587d}.location-note {font-size:11px;color:#627998}
.visit-copy address {color:#304a6d;font-size:21px;font-weight:500}
.visit-copy p {color:#63748c;font-size:14px}
.contact-phone {color:#4a5f93;font-family:var(--font-tech);font-weight:500}
.product-hero h1 {font-size:46px;font-weight:500;color:#f0f5ff}
.product-hero .eyebrow {color:#a7c1e5}
.product-hero .product-stage {font-size:11px;background:#8faee619;border-color:#b1c9e546;color:#c6daf2}
.product-hero .product-subtitle {font-size:21px;color:#c4d9f1;line-height:1.7}
.product-hero>div>p:not(.product-subtitle) {font-size:15px;color:#acbfd9;line-height:1.9}
.product-main-image figcaption {color:#a9bfdb;font-size:11px}
.feature-grid h3 {font-size:21px;font-weight:500;color:#304761}
.roadmap-section {background:#e5edf8}
.roadmap-grid p,.spec-list {font-size:14px;color:#60728e;line-height:1.95}
.detail-callout {background:linear-gradient(120deg,#dce7f7,#edf2fc);border-color:#c4d2e8}
.detail-callout h2 {font-size:30px;color:#2f4567;font-weight:500}
.room-preview-dialog,.preview-dialog {border-color:#a6bbd5;border-radius:5px;box-shadow:0 35px 120px #08142675;background:#f2f6fc}
dialog::backdrop {background:#040b1ace;backdrop-filter:blur(9px)}
.dialog-heading {background:#f2f6fcf5;border-color:#c7d4e6}
.dialog-close {background:#e4edf8;color:#304f78;border-color:#b6c9e2;min-width:40px;min-height:40px;font-size:24px}
.concept-full-dialog,.concept-full-dialog .dialog-heading {background:#102037;color:#e4f0ff}
.concept-full-dialog .dialog-close {background:#29425f;color:#c7e3fc;border-color:#779ebf}
.concept-full-dialog p {font-size:12px;color:#b5c9e2}
.consult-form {background:#fcfdff;border-color:#cbd9eb}
.consult-form label {color:#405874;font-size:14px}
.fine-print,figcaption {font-size:12px;color:#657a97}

@media(min-width:1700px) {
  .lab-layout {min-height:745px}
  .lab-copy h1 {font-size:73px}
}
@media(max-width:1100px) {
  .section {padding-block:76px}
  .site-header nav {gap:23px;font-size:13px}
  .site-header {gap:20px}
  .lab-copy h1 {font-size:51px}
  .lab-layout {min-height:660px;grid-template-columns:.95fr 1.1fr}
  .lab-description {font-size:13px}
  .lab-services {font-size:10px;gap:14px}
  .lab-insight {padding:19px;gap:12px;width:calc(100% + 24px)}
  .lab-insight h2 {font-size:17px}
  .lab-insight [data-insight-copy] {font-size:11px}
  .insight-index {font-size:30px}
  .lab-stage {margin-left:-55px;margin-right:-24px}
  .stage-caption {font-size:9px;right:24px;top:36px;max-width:240px}
  .stage-caption small {font-size:9px}
  .stage-tools {left:20%;right:5%;bottom:15px;gap:12px}
  .stage-tools button {font-size:10px}
  .lab-companion {bottom:110px;right:0}
  .lab-companion img {height:74px}
  .lab-companion>span {font-size:9px;max-width:110px}
  .lab-companion small {font-size:7px}
  .story-layout {gap:50px}
  .story-heading h2 {font-size:38px}
  .section-heading h2,.style-section h2,.case-home .section-heading h2,.about-home h2 {font-size:35px}
  .style-explorer {grid-template-columns:178px 1fr}
  .style-tabs button .style-tab-label {font-size:12px}
  .style-copy {padding-inline:28px;grid-template-columns:1fr 160px;column-gap:20px}
  .style-copy>p:not(.micro-label) {font-size:13px}
  .style-copy .button {font-size:11px;padding-inline:12px}
  .product-card-copy {padding:30px}
  .product-card-copy h3 {font-size:28px}
  .service-card {padding:25px}
  .service-card h3 {font-size:22px}
  .about-home {gap:45px}
}
@media(max-width:800px) {
  body {font-size:14px;line-height:1.85}
  .section {padding-block:58px}
  .section-heading {margin-bottom:27px}
  .section-heading h2,.style-section h2,.case-home .section-heading h2,.about-home h2 {font-size:29px;line-height:1.5;letter-spacing:-.03em}
  .section-description,.section-intro {font-size:14px;line-height:1.9}
  .eyebrow {font-size:10px;letter-spacing:.105em;margin-bottom:17px}
  .eyebrow:before {width:16px;margin-right:9px}
  .micro-label {font-size:10px;letter-spacing:.08em}
  .button {font-size:13px;min-height:47px;padding:13px 21px;gap:20px}
  .button.small {min-height:38px;font-size:11px;padding:9px 12px}
  .site-header {height:auto;min-height:103px;gap:7px;padding-block:10px 3px}
  .brand-word {font-size:18px;letter-spacing:.13em}
  .brand-sub {font-size:8px;letter-spacing:.24em}
  .brand-mark {width:44px;height:43px}
  .brand {gap:9px}
  .site-header nav {font-size:12px;gap:12px}
  .site-header nav a {padding:8px 0;min-height:39px;letter-spacing:.02em}
  .lab-topline {height:46px;font-size:8px;letter-spacing:.07em;gap:7px}
  .lab-topline span:first-child {max-width:65%;line-height:1.6}
  .lab-topline span:last-child {font-size:9px;letter-spacing:.02em}
  .lab-topline b {font-size:12px}
  .lab-wordmark {top:366px;font-size:132px;left:3px;letter-spacing:-.06em}
  .lab-wordmark span {font-size:54px;letter-spacing:.17em;margin-left:75px;margin-top:-5px}
  .lab-layout {min-height:0;padding-block:27px 23px}
  .lab-copy {padding-bottom:0}
  .lab-kicker {font-size:11px;letter-spacing:.09em;padding:5px 10px;margin-bottom:18px;gap:9px}
  .lab-copy h1 {font-size:44px;line-height:1.4;letter-spacing:-.045em;font-weight:600}
  .lab-description {font-size:14px;line-height:1.9;letter-spacing:0;margin-top:19px}
  .lab-copy .hero-actions {margin-top:24px;gap:24px}
  .lab-copy .button {min-width:162px;font-size:13px;padding:14px 20px}
  .lab-case-link {font-size:12px;gap:15px}
  .lab-services {margin-top:22px;font-size:10px;gap:16px;color:#b0bfd6}
  .lab-stage {height:345px;min-height:345px;margin:23px -18px 0}
  .stage-caption {top:2px;right:15px;font-size:8px;max-width:235px;gap:6px;line-height:1.7}
  .stage-caption small {font-size:9px;color:#a3b9d3}
  .stage-tools {left:18px;right:18px;bottom:-1px;gap:10px;padding-top:7px}
  .stage-tools button {font-size:11px;padding:3px;min-height:35px;letter-spacing:.01em}
  .space-hotspot {gap:5px;padding:7px;min-height:44px}
  .space-hotspot b {width:29px;height:29px;font-size:10px}
  .space-hotspot span {font-size:10px;letter-spacing:0;padding:3px 5px}
  .space-hotspot[aria-expanded=true] b {box-shadow:0 0 0 4px #8de9ff21,0 0 20px #7cddff4d}
  .lab-insight {width:100%;padding:18px;margin-top:22px;gap:13px;min-height:0}
  .insight-index {font-size:29px;padding-top:3px}
  .lab-insight .micro-label {font-size:9px;letter-spacing:.08em}
  .lab-insight h2 {font-size:17px;line-height:1.55;font-weight:500}
  .lab-insight [data-insight-copy] {font-size:13px;line-height:1.9;margin-top:9px}
  .lab-companion {right:auto;bottom:auto;align-self:flex-end;margin-top:13px;gap:9px;height:61px}
  .lab-companion img {height:68px}
  .lab-companion>span {font-size:10px;max-width:150px}
  .lab-companion small {font-size:7px}
  .lab-bottom {font-size:10px;min-height:51px;gap:8px}
  .lab-bottom>span:before {font-size:9px;color:#adbed8}
  .lab-bottom a {font-size:10px;gap:9px}
  .brand-rail .wrap {min-height:60px}
  .brand-rail strong {font-size:14px;letter-spacing:.03em}
  .brand-rail a {font-size:11px}
  .brand-story {padding-block:58px}
  .story-layout {grid-template-columns:1fr;gap:30px}
  .story-heading h2 {font-size:34px;line-height:1.5}
  .story-signature {font-size:11px;line-height:1.7;margin-top:14px}
  .story-copy {font-size:14px;padding-left:0;border-left:0;line-height:1.95}
  .story-copy .story-lead {font-size:19px}
  .story-copy p+p {margin-top:18px}
  .story-copy .story-last {font-size:14px;line-height:2}
  .style-section {padding-inline:18px}
  .style-section .section-description {font-size:14px;line-height:1.9}
  .style-explorer {display:block}
  .style-tabs {padding:6px;gap:4px}
  .style-tabs button {min-height:77px}
  .style-tabs button .style-tab-label {font-size:12px;line-height:1.55;padding:7px 6px;letter-spacing:0}
  .style-tab-label b {font-size:10px;letter-spacing:.04em;margin-bottom:4px}
  .style-panel {min-height:0}
  .style-picture img {height:268px}
  .style-picture .image-tag {font-size:9px;padding:4px 7px;top:11px;left:11px}
  .style-copy {display:block;margin-top:194px;padding:50px 20px 24px;min-height:278px;background:linear-gradient(0deg,#112038 0,#112038f7 72%,transparent)}
  .style-copy .micro-label {font-size:10px}
  .style-copy h3 {font-size:28px;letter-spacing:0;margin-block:8px 13px}
  .style-copy>p:not(.micro-label) {font-size:13px;line-height:1.9}
  .style-copy .style-tags {font-size:10px!important;line-height:1.8;margin-top:14px}
  .style-copy .button {margin-top:19px;font-size:12px;min-height:44px;padding:12px 16px}
  .scenario-picker {gap:19px;padding-top:26px}
  .scenario-picker h3 {font-size:21px}
  .scenario-options {gap:8px}
  .scenario-options button {font-size:12px;min-height:41px;padding:8px 11px}
  .scenario-description {font-size:13px;line-height:1.85}
  .case-flow {font-size:11px;gap:7px;padding-block:11px}
  .case-flow b {font-size:10px;margin-right:4px}
  .empty-state {padding:25px}
  .empty-state h3 {font-size:18px;line-height:1.7}
  .empty-state p {font-size:13px}
  .product-card {grid-template-columns:1fr;min-height:0}
  .product-card-image img {height:255px}
  .product-card-image .image-tag {font-size:10px}
  .product-card-copy {padding:25px 23px 30px}
  .product-card-copy>p.eyebrow {font-size:10px}
  .product-card-copy h3 {font-size:27px}
  .product-card-copy>p {font-size:15px}
  .product-card-copy .product-summary {font-size:13px;line-height:1.9}
  .service-card,.feature-grid article {padding:25px}
  .service-card h3,.service-card h2 {font-size:23px;margin-block:17px 13px}
  .service-card p {font-size:14px}
  .process ol {font-size:12px;gap:0;margin-top:16px}
  .process b {font-size:10px;margin-right:5px}
  .about-home {grid-template-columns:1fr;gap:33px}
  .about-home p:not(.eyebrow) {font-size:14px}
  .aftercare-grid h3 {font-size:19px}
  .aftercare-grid p,.care-details {font-size:14px}
  .contact-copy h2 {font-size:32px;line-height:1.5}
  .contact-copy>p:not(.eyebrow) {font-size:14px;line-height:1.9}
  .contact-number {font-size:22px}
  .contact-number small {font-size:11px}
  .contact-inner {padding-block:45px 54px}
  .footer-meta,.preview-note {font-size:11px;line-height:1.9}
  .footer-phone {font-size:23px}
  .page-heading {padding-block:43px 36px}
  .page-heading h1 {font-size:34px;line-height:1.5}
  .page-heading .lede {font-size:15px}
  .company-intro h2 {font-size:29px}
  .prose {font-size:14px;line-height:1.95}
  .showroom-card-copy h3 {font-size:17px}
  .showroom-card-copy p:not(.micro-label) {font-size:12px}
  .showroom-card-copy .micro-label {font-size:9px}
  .visit-copy address {font-size:18px;line-height:1.85}
  .visit-copy p {font-size:14px}
  .product-hero h1 {font-size:34px;line-height:1.5}
  .product-hero .product-subtitle {font-size:19px}
  .product-hero>div>p:not(.product-subtitle) {font-size:14px}
  .feature-grid h3 {font-size:20px}
  .feature-grid p {font-size:13px}
  .detail-callout h2 {font-size:25px}
  .concept-full-dialog p {font-size:11px}
}
@media(max-width:360px) {
  .lab-copy h1 {font-size:39px}
  .lab-services {font-size:9px;gap:12px}
  .lab-copy .hero-actions {gap:18px}
  .style-tabs button .style-tab-label {font-size:10px}
  .case-flow {font-size:10px;gap:5px}
}
@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after {transition:none!important;animation:none!important}
}

/* Hotspot coordinates follow the contained artwork; each anchor is its circle center. */
.space-hotspots {right:auto;bottom:auto}
.space-hotspot {padding:0;gap:4px;min-height:44px;transform:translate(-22px,-50%)}
.space-hotspot b {width:34px;height:34px;flex:0 0 34px;margin:5px}
.space-hotspot.spot-light {left:62%;top:22%;right:auto;flex-direction:row}
.space-hotspot.spot-layout {left:43%;top:40%;right:auto;flex-direction:row}
.space-hotspot.spot-pc {left:69%;top:33%;right:auto;flex-direction:row-reverse;transform:translate(calc(-100% + 22px),-50%)}
@media(max-width:600px) {
  .space-hotspot span {display:none}
}
