/* A photographic, personal identity with selective glass surfaces.
   Solid fallback colours come first; blur is a progressive enhancement. */
:root{--palette-paper:#f5f3ee;--palette-surface:#fff;--palette-ink:#1d3439;--palette-muted:#5d6c67;--palette-primary:#24535b;--palette-primary-soft:#e6ece8;--palette-deep:#12313a;--palette-line:#d6ded9;--palette-warm:#ead1a7;--palette-warm-ink:#543e23;--glass-light:#fcfcfaf0;--glass-dark:#12313af0;--glass-edge:#ffffff75;--glass-shadow:0 16px 46px -24px #193c5b55;--motion-quick:180ms;--motion-enter:460ms;--motion-ease:cubic-bezier(.22,1,.36,1)}
body{background:var(--palette-paper);color:var(--palette-ink)}
::selection{background:#c4deed;color:var(--palette-deep)}
.eyebrow{color:#526f82;letter-spacing:.12em}
.button,.nav-cta{border-radius:100px;background:var(--palette-primary);box-shadow:inset 0 1px 0 #ffffff20,0 5px 16px -10px #163b5770}
.button:not(:disabled):hover,.nav-cta:hover{background:#1b4258;box-shadow:inset 0 1px 0 #ffffff20,0 7px 18px -12px #163b5770}
.text-link{text-decoration-color:#90afc0}
.modern-nav{padding:14px 18px;border-radius:24px;background:var(--glass-light);border:1px solid #fff;box-shadow:var(--glass-shadow),inset 0 1px 0 #fff;gap:22px}
.experience-page .modern-nav{margin-top:20px}
.modern-nav .brand{gap:12px}
.modern-nav .brand small{font-size:.75rem;color:#566875}
.modern-nav nav{gap:8px}
.modern-nav nav>a:not(.nav-cta){padding:10px 13px;border-radius:100px;text-decoration:none;color:#3a5364;transition:background .2s,color .2s}
.modern-nav nav>a[aria-current=page],.modern-nav nav>a:not(.nav-cta):hover{background:#dde8f2;color:#173d56;text-decoration:none}
.modern-nav .nav-cta{padding-inline:22px;margin-left:5px;background:var(--palette-primary);color:#fff;border-radius:100px}
.modern-nav .menu-toggle{background:#e6edf4;color:#18394d;border-color:#d3e0e9;border-radius:100px}
.home-editorial .hero{margin:16px;min-height:clamp(660px,89svh,860px);border-radius:30px;padding-top:18px;padding-bottom:28px;box-shadow:0 16px 36px -24px #183b5b70}
.home-editorial .hero .modern-nav{background:var(--glass-dark);border-color:#ffffff42;color:#f5faff;box-shadow:0 14px 40px -20px #0008,inset 0 1px 0 #ffffff25}
.hero .modern-nav .brand small{color:#d8e5ee}
.hero .modern-nav nav>a:not(.nav-cta){color:#edf5fa}
.hero .modern-nav nav>a[aria-current=page],.hero .modern-nav nav>a:not(.nav-cta):hover{background:#ffffff1c;color:#fff}
.hero .modern-nav .nav-cta{background:#f2f7fc;color:#18374b;border-color:#ffffff50;box-shadow:inset 0 1px 0 #fff}
.hero .modern-nav .menu-toggle{background:#ffffff18;color:#fff;border-color:#ffffff38}
.home-editorial .hero-shade{background:linear-gradient(90deg,#0a192dd9 0%,#0a192d88 47%,#0a192d05 100%),linear-gradient(0deg,#0a192de8,transparent 48%)}
.home-editorial .hero-photo,.home-editorial .hero-film{filter:saturate(.86)}
.home-editorial .hero-main{padding:72px 0 76px}
.home-editorial .hero-content{max-width:1020px}
.home-editorial .hero h1{font-size:clamp(3.4rem,5.7vw,5.5rem);font-weight:500;letter-spacing:-.052em;line-height:1.14}
.home-editorial .hero h1 .hero-title-line:first-child{font-size:.8em;letter-spacing:-.045em;margin-bottom:8px}
.home-editorial .hero h1 em{color:#f6faff}
.home-editorial .hero-description{color:#dce8f2;max-width:440px;margin-block:28px 32px;font-size:1.0625rem}
.home-editorial .hero-actions{gap:14px}
.hero .button{background:#f2f7fc;color:#18374b;border-color:#fff;min-height:56px;padding-inline:28px}
.hero .button:not(:disabled):hover,.hero .modern-nav .nav-cta:hover{background:#fff;color:#18374b}
.home-editorial .hero-demo-link{padding:15px 24px;min-height:56px;border:1px solid #ffffff50;border-radius:100px;background:#132a3eac;color:#f5faff;text-decoration:none;box-shadow:inset 0 1px 0 #ffffff20}
.home-editorial .hero-demo-link:hover{background:#25415aca;color:#fff}
.home-editorial .hero-location{color:#d7e6f0}
.home-editorial .hero-assurance{gap:10px;border:0;padding-top:0;color:#e4eff8}
.home-editorial .hero-assurance>span{padding:9px 16px;background:#172e44bd;border:1px solid #ffffff2c;border-radius:100px;font-size:.8125rem}
.hero-assurance>span::before{display:none}
.home-editorial .hero-media-tools{bottom:38px;right:var(--page-gutter);color:#c9dbe7}
.home-editorial .hero-media-tools button{border-radius:100px;background:#162b42ca;border-color:#ffffff38;color:#f1f8ff}
.home-editorial .home-everyday{background:var(--palette-paper);padding-block:108px 88px}
.home-editorial .section h2{letter-spacing:-.045em}
.everyday-intro{gap:80px;margin-bottom:48px}
.everyday-intro h2{font-size:clamp(2.2rem,3.6vw,3.5rem)}
.everyday-intro>p{color:#566875}
.everyday-explore{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:36px;align-items:center}
.everyday-visual{min-height:620px;border-radius:28px}
.everyday-visual figcaption{inset:auto 20px 20px;padding:22px 24px;border:1px solid #ffffff40;border-radius:20px;background:var(--glass-dark);box-shadow:var(--glass-shadow)}
.everyday-visual figcaption>span{color:#cbdce9}
.everyday-visual figcaption p{font-size:1.5rem;min-height:0;max-width:24ch;color:#f5faff}
.everyday-controls{position:relative;margin:0;padding:32px;background:var(--palette-surface);border:1px solid var(--palette-line);border-radius:26px;box-shadow:0 12px 36px -28px #193c5b40}
.explore-label{color:#506d82;margin-bottom:18px}
.automation-tabs{gap:8px;border:0;margin-bottom:26px}
.automation-tabs button{min-height:52px;padding:12px;border:1px solid transparent;border-radius:14px;background:#e7edf3;color:#4b6576;line-height:1.5}
.automation-tabs button[aria-selected=true]{background:var(--palette-primary);color:#fff;border:1px solid var(--palette-primary);font-weight:500;box-shadow:inset 0 1px 0 #ffffff30,0 6px 14px -10px #19394e}
.automation-tabs button:hover{background:#dce7f0;color:var(--palette-primary)}
.automation-tabs button[aria-selected=true]:hover{background:#1b4258;color:#fff}
.automation-panel{min-height:212px}
.automation-panel h3{font-size:1.6rem}
.automation-panel>p,.home-fineprint,.everyday-local-note{color:#566875}
.automation-example{border-left-color:#8db5ca;padding-left:16px}
.automation-example>span{color:#526f82}
.automation-example>p{color:#38576c}
.everyday-local-note .ui-icon{color:#526f82}
.home-editorial .routine-section{background:linear-gradient(115deg,#122739,var(--palette-deep) 72%);padding-block:96px;--focus:#a5d6f1}
.routine-heading .eyebrow{color:#aec9dc}
.routine-heading>p,.routine-image-caption,.routine-footer>p{color:#c2d4e2}
.routine-tabs{width:min(100%,510px);border-radius:100px;padding:5px;background:#ffffff12;border-color:#ffffff28}
.routine-tabs button{border-radius:100px;color:#e6f0f7;min-height:48px}
.routine-tabs button[aria-selected=true]{background:#f0f7fc;color:#1b3c52;border-color:#fff;box-shadow:0 3px 8px #0002}
.routine-tabs button::after{display:none!important}
.routine-tabs button:hover{background:#ffffff20}
.routine-tabs button[aria-selected=true]:hover{background:#fff}
.routine-example{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:24px 32px;align-items:start}
.routine-room{border-radius:26px}
.routine-dashboard{position:relative;margin:0;padding:28px;border:1px solid #fff;border-radius:26px;background:#f5f9ff;box-shadow:0 18px 48px -28px #0006;color:var(--palette-ink);--focus:#2c6c69}
.routine-trigger,.routine-readouts>div{border-color:var(--palette-line)}
.routine-kicker,.routine-readouts .ui-icon{color:#506f83}
.routine-product{border-radius:12px;border-color:#dbe5ed}
.routine-replay{border-radius:100px;border-color:#c6d8e5;color:#355d77}
.routine-replay:hover{background:#e2edf5}
.routine-result{color:#e7f2fa}
.routine-footer{border-color:#ffffff24}
.routine-footer .button{background:#eff6fc;color:#1b3c52;border-color:#fff}
.routine-footer .button:not(:disabled):hover{background:#fff;color:#1b3c52}
.home-editorial .home-projects{background:#fff;padding-block:104px 64px}
.home-project-feature{border:1px solid #e1e8ef;background:#f1f5f9;border-radius:26px;padding:48px;gap:48px}
.home-project-story .eyebrow,.home-project-number,.home-project-secondary .ui-icon{color:#526f82}
.home-project-story>p:not(.eyebrow),.home-project-equipment figcaption,.home-project-secondary small{color:#566875}
.home-project-secondary{border-color:#d9e2e9}
.home-editorial .process{background:#fff;padding-block:48px 104px}
.home-editorial .steps{gap:32px}
.home-editorial .steps article{border-color:#cfdde7;padding-top:24px}
.home-editorial .steps article>span{font-family:"Plus Jakarta Sans",Inter,sans-serif;font-size:1.6rem;font-weight:500;color:#638397}
.home-editorial .steps h3{margin-top:16px}
.home-editorial .steps p{color:#566875}
.home-editorial .about-compact{background:#eaf0f5;padding-block:96px;gap:clamp(40px,7vw,100px)}
.home-editorial .portrait{border-radius:26px;background:#dce6ee;box-shadow:0 20px 40px -30px #18394e55}
.home-editorial .about-intro{font-size:clamp(1.6rem,2.1vw,2rem);color:#284d63}
.home-editorial .community-note{background:var(--palette-paper);border-block:1px solid #dde6ee}
.home-editorial .community-poster{border-radius:20px;overflow:hidden}
.home-editorial .contact{background:var(--palette-deep);color:#f4f8fc;padding-block:104px 88px;--focus:#a5d6f1}
.home-editorial .contact-intro>.eyebrow,.home-editorial .contact-next .eyebrow{color:#b4cedf}
.home-editorial .contact-intro h2{font-size:clamp(2.5rem,4.3vw,4rem)}
.home-editorial .contact-intro>p:not(.eyebrow),.home-editorial .contact-next>p,.home-editorial .contact-region span{color:#bcd0de}
.home-editorial .contact-region{color:#eef6fc}
.home-editorial .contact-next{border-color:#ffffff24}
.home-editorial #inquiry-form{background:#f7faff;border:1px solid #fff;border-radius:26px;box-shadow:0 24px 64px -28px #0008;color:var(--palette-ink);--focus:#2c6c69}
#inquiry-form input:not([type=radio]):not([type=checkbox]):not([type=hidden]),#inquiry-form select,#inquiry-form textarea{background:#ecf2f7;border-color:var(--palette-line);border-radius:12px;color:var(--palette-ink)}
#inquiry-form input:not([type=radio]):not([type=checkbox]):focus,#inquiry-form textarea:focus{background:#fff;border-color:#527f99;box-shadow:0 0 0 3px #527f9920}
#inquiry-form input[aria-invalid=true],#inquiry-form textarea[aria-invalid=true]{border-color:#a65845;background:#fff8f2}
#inquiry-form .reply-options{background:#eaf1f7;border-color:var(--palette-line);border-radius:100px}
#inquiry-form .reply-options label>span{border-radius:100px;color:#436277}
#inquiry-form .reply-options input:checked+span{background:#fff;border-color:var(--palette-line);color:#1b3c52}
#inquiry-form .interest-options label>span{background:#edf3f8;border-color:var(--palette-line);border-radius:12px;color:#436277}
#inquiry-form .interest-options input:checked+span{background:var(--palette-primary);color:#fff;border-color:var(--palette-primary)}
#inquiry-form .form-submit-row .button{background:var(--palette-primary);border-radius:100px}
#inquiry-form .form-submit-row .button:not(:disabled):hover{background:#1b4258}
.site-footer{background:var(--palette-deep);border-color:#ffffff20}
.site-footer .footer-label{color:#b5d0e2}
.footer-name b,.site-footer .footer-local,.footer-links a{color:#e8f2fa}
.footer-identity [data-brand=descriptor],.site-footer .footer-area-note,.footer-bottom{color:#b4cad9}
.footer-region,.footer-bottom{border-color:#ffffff20}
.footer-links a:hover,.footer-bottom a:hover{color:#fff;text-decoration-color:#b5d0e2}
.back-to-top{width:52px;height:52px;border-radius:100%;background:linear-gradient(145deg,#476980,#1c3c54);color:#fff;border-color:#bfdbea85;box-shadow:0 8px 28px -10px #102d4d70,inset 0 1px 1px #ffffff70,inset 0 -1px 1px #091d3c40;transition:background 180ms,box-shadow 180ms,transform 180ms}
.back-to-top::before{inset:3px;border-color:#ffffff20;background:linear-gradient(145deg,#ffffff18,transparent 65%)}
.back-to-top svg{stroke-width:1.7;filter:drop-shadow(0 1px 2px #11293b70)}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .back-to-top{background:linear-gradient(145deg,#345b78b8,#183c58b8);-webkit-backdrop-filter:blur(18px) saturate(1.5);backdrop-filter:blur(18px) saturate(1.5)}
}
/* Inner pages retain their individual compositions and original content. */
.experience-intro,.services-page .services-intro{background:transparent}
.services-hero-copy h1 em,.device-guide-intro h1 em{color:#627f93}
.services-hero-photo img{border-radius:26px;border-color:#d9e2e9;box-shadow:var(--glass-shadow)}
.services-page-nav,.device-guide-nav,.portfolio-nav{padding:10px 20px;border:1px solid #fff;border-radius:20px;background:#ffffffc9;box-shadow:0 8px 24px -18px #193c5b55}
.services-page .service-no{background:#e8f0f7;border-color:#d5e2eb;color:#43687f;border-radius:12px}
.services-page .service-detail>div{background:#eaf2f8;border-color:#8db5ca}
.services-page .starting-options article,.services-page .scope-grid article{background:#fff;border-color:#d9e2e9;border-radius:22px;box-shadow:0 10px 28px -24px #15395255}
.services-page .starting-options article>span,.services-page .starting-options ul{color:#506a7d}
.services-page .starting-options article:hover{background:#f8fbff;border-color:#a9c3d5}
.services-page .services-security,.page-next{background:var(--palette-deep)}
.services-page .services-security .security-principles p,.services-page .page-next p:not(.eyebrow){color:#ccdde9}
.services-page .page-next .button{background:#f0f7fc;color:#1b3c52}
.services-page .page-next .button:not(:disabled):hover{background:#fff;color:#1b3c52}
.services-page .service-scope{background:#f0f4f8}
.handover-sample{border-color:#d5e2eb;border-radius:22px}
.handover-document{background:#f5f9fd;border-color:#dae5ed;border-radius:14px}
.lab-case,.project-card,.device-category{border-color:#d9e2e9;border-radius:24px;box-shadow:0 10px 30px -24px #1c426055}
.lab-story{background:#f7faff}
.lab-foundation{background:#edf3f8;border-color:#d9e2e9}
.device-category{background:#fff}
.category-label,.device-slide figcaption p{color:#566875}
.category-label>span:first-child{color:#637f92}
.gallery-controls button,.gallery-thumbnail{border-color:#d3e0e9;border-radius:12px;background:#f2f6fa;color:#294e65}
.gallery-thumbnail[aria-current=true]{border-color:#527f99;background:#e3eef6;box-shadow:inset 0 0 0 1px #527f99}
.device-guide-nav{gap:4px 24px}
.devices-page .device-personal-selection .button{background:#eff6fc;color:#1b3c52}
.devices-page .device-personal-selection .button:not(:disabled):hover{background:#fff;color:#1b3c52}
.devices-page .device-personal-selection p:not(.eyebrow){color:#ccdde9}
/* Demo: preserve its control sizing, phone grid, themes and device state. */
.demo-page{background:var(--palette-paper);color:var(--palette-ink)}
.demo-page>.modern-nav{position:relative;top:auto;left:auto;right:auto;flex:none;width:calc(100% - 7%);max-width:1525px;margin:16px auto 14px;view-transition-name:site-navigation}
.demo-page .modern-nav .brand-mark{display:block}
.demo-page .modern-nav .brand small{letter-spacing:0}
.modern-nav .menu-toggle:not([hidden]){background:var(--palette-primary-soft);color:var(--palette-primary);border-color:var(--palette-line);border-radius:100px}
.modern-nav .menu-toggle:not([hidden]):focus-visible{outline:3px solid #286b91;outline-offset:4px}
.hero .modern-nav .menu-toggle:not([hidden]){background:#ffffff18;color:#fff;border-color:#ffffff38}
.demo-page .demo-intro{margin:0 0 18px}
.demo-page .demo-intro h1{color:var(--palette-ink)}
.demo-page .demo-wall{max-width:1640px}
.demo-workspace[data-design=tiles]{--dash-bg:#edf3f9;--dash-card:#ffffffea;--dash-ink:#203647;--dash-muted:#566b7c;--dash-line:#d7e3ec;--dash-control:#fff;--dash-accent:#315e7a;--dash-icon:#e5eff7}
.demo-workspace[data-design=studio]{--dash-bg:#f8fafc;--dash-card:#edf2f6;--dash-ink:#233b4c;--dash-muted:#566b7c;--dash-line:#d7e3ec;--dash-control:#fff;--dash-accent:#315e7a;--dash-active:#e6ece8;--dash-active-ink:#233b4c;--dash-icon:transparent}
.demo-workspace[data-design=night]{--dash-bg:#102332;--dash-card:#1c3347;--dash-ink:#edf7ff;--dash-muted:#bfd1df;--dash-line:#ffffff24;--dash-control:#243e54;--dash-accent:#a0cce7;--dash-icon:#29465d}
.demo-workspace[data-design=night] .tablet-screen{background:var(--dash-bg)}
.demo-workspace[data-design=night] .home-quick-card{background:linear-gradient(135deg,#243f54,#1b3245);border-color:#ffffff1c;box-shadow:inset 0 1px 0 #ffffff0c}
.demo-workspace[data-design=night] .dashboard-tabs{background:#ffffff08;border-color:#ffffff20}
.demo-workspace[data-design=night] .dashboard-tabs button{color:#c5dae9}
.demo-workspace[data-design=night] .dashboard-tabs button[aria-selected=true]{background:#29485f;color:#fff}
.demo-page .design-switcher,.demo-page .view-switcher,.demo-page .daylight-controls{background:#e7eef5e6;border-color:#ffffffbd;box-shadow:inset 0 1px 0 #fff;border-radius:100px}
.demo-page .design-switcher button,.demo-page .view-switcher button,.demo-page .daylight-controls button{border-radius:100px;color:#365e77}
.demo-page .design-switcher button[aria-pressed=true]{background:#fff;color:#244e68;border-color:#d0e0ec}
.demo-page .view-switcher button[aria-pressed=true],.demo-page .daylight-controls button[aria-pressed=true]{background:#244e68;color:#fff}
.demo-page .house-art{border-radius:24px;border-color:#d1e0eb}
.demo-page .home-visual #preview-controls,.demo-page .preview-label,.demo-page .camera-readout{background:#162b3eea;border-color:#ffffff40;color:#eff8ff;box-shadow:var(--glass-shadow)}
.demo-page .house-hotspot{background:#203e56cc;border-color:#ffffff65;color:#fff;box-shadow:inset 0 1px 0 #ffffff30,0 4px 12px #0003}
.demo-page .house-hotspot[aria-pressed=true]{background:#f2d688;color:#473711}
.demo-page .home-visual .house-art{border-radius:24px}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .modern-nav{background:#f7fbffe0;-webkit-backdrop-filter:blur(24px) saturate(1.35);backdrop-filter:blur(24px) saturate(1.35)}
 .home-editorial .hero .modern-nav{background:#b9d5ed16}
 .everyday-visual figcaption{background:#122638a3;-webkit-backdrop-filter:blur(18px) saturate(1.25);backdrop-filter:blur(18px) saturate(1.25)}
 .home-editorial .hero-demo-link,.home-editorial .hero-assurance>span,.hero-media-tools button{background:#b9d5ed16;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
 .demo-page .home-visual #preview-controls,.demo-page .preview-label,.demo-page .camera-readout,.demo-page .house-hotspot{background:#162b3eb5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
 .demo-page .house-hotspot[aria-pressed=true]{background:#f2d688}
}
@media(min-width:1201px) and (max-width:1400px){.modern-nav nav{gap:2px}.modern-nav nav>a:not(.nav-cta){padding-inline:8px}.modern-nav .nav-cta{padding-inline:16px}.modern-nav{gap:16px}}
@media(max-width:1200px){
 .modern-nav:has(nav.is-open){background:#f7fbfff5}
 .home-editorial .hero .modern-nav:has(nav.is-open){background:#142a3ee8}
 .modern-nav nav.is-open{border-color:#d4e1eb}
 .hero .modern-nav nav.is-open{border-color:#ffffff28}
 .modern-nav nav>a.nav-group-start::before{background:#d4e1eb}
 .hero .modern-nav nav>a.nav-group-start::before{background:#ffffff28}
 .home-editorial .hero-media-tools{position:static;margin:0;align-self:flex-end}
 .home-editorial .hero-assurance{margin-top:20px}
 .everyday-controls{padding:24px;margin:0}
 .everyday-intro{gap:40px}
}
@media(max-width:800px){
 .home-editorial .hero{margin:12px;border-radius:24px;min-height:660px;padding-top:14px}
 .home-editorial .hero-main{padding:72px 0 56px}
 .home-editorial .hero h1{font-size:clamp(2.9rem,6.8vw,4.6rem)}
 .home-editorial .home-everyday,.home-editorial .home-projects{padding-block:64px}
 .everyday-explore{grid-template-columns:1fr;gap:24px}
 .everyday-visual{min-height:0;aspect-ratio:16/10}
 .everyday-visual figcaption{inset:auto 16px 16px}
 .everyday-controls{margin:0;padding:28px;border-radius:22px}
 .automation-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .automation-tabs button{flex-direction:row;align-items:center;min-height:52px}
 .routine-example{grid-template-columns:1fr;gap:24px}
 .routine-dashboard{margin:0;padding:24px;border-radius:22px}
 .routine-image-caption{padding-bottom:0}
 .routine-result{margin-top:24px}
 .home-project-feature{padding:28px;gap:28px}
 .home-editorial .process{padding-block:24px 64px}
 .home-editorial .about-compact,.home-editorial .contact{padding-block:64px}
}
@media(max-width:600px){
 .modern-nav{border-radius:20px;padding:12px;gap:10px}
 .modern-nav .brand{gap:9px}
 .modern-nav .brand-mark{width:38px;height:38px}
 .modern-nav .brand b{font-size:.9375rem}
 .modern-nav .brand small{font-size:.75rem;max-width:21ch}
 .modern-nav .menu-toggle{padding:10px;gap:6px}
 .home-editorial .hero{margin:8px;border-radius:22px;min-height:0;padding:12px 5% 24px}
 .home-editorial .hero-main{padding:60px 0 44px}
 .home-editorial .hero h1{font-size:clamp(2.1rem,8.9vw,3.2rem);line-height:1.2;letter-spacing:-.04em}
 .home-editorial .hero h1 .hero-title-line:first-child{font-size:.92em;margin-bottom:10px}
 .home-editorial .hero-description{font-size:1rem;margin:24px 0 26px;line-height:1.7}
 .home-editorial .hero-actions{flex-direction:column;gap:10px;align-items:stretch}
 .home-editorial .hero-actions .button,.home-editorial .hero-demo-link{width:100%;align-self:stretch;min-height:52px;font-size:.9375rem}
 .home-editorial .hero-location{margin-top:22px}
 .home-editorial .hero-assurance{display:none}
 .home-editorial .hero-shade{background:linear-gradient(90deg,#0a192dcc,#0a192d55),linear-gradient(0deg,#0a192dc9,transparent 70%)}
 .home-editorial .hero-media-tools{margin-top:0}
 .home-editorial .home-everyday{padding-top:56px;padding-bottom:56px}
 .everyday-intro h2{font-size:2.1rem}
 .everyday-visual{aspect-ratio:5/4;border-radius:22px}
 .everyday-visual figcaption{padding:18px;inset:auto 12px 12px;border-radius:16px}
 .everyday-visual figcaption p{font-size:1.25rem}
 .everyday-controls{margin:0;padding:22px 18px}
 .automation-tabs button{font-size:.875rem;padding:10px 8px;gap:8px}
 .automation-panel{min-height:244px}
 .home-editorial .routine-section{padding-block:56px}
 .routine-tabs{width:100%}
 .routine-tabs button{font-size:.875rem;padding-inline:5px}
 .routine-room{border-radius:22px}
 .routine-dashboard{margin:0;padding:22px 20px}
 .routine-result{font-size:1.125rem}
 .home-editorial .home-projects{padding-block:56px 40px}
 .home-project-feature{padding:26px 22px;border-radius:22px}
 .home-editorial .process{padding-bottom:40px}
 .home-editorial .steps article>span{font-size:1.125rem}
 .home-editorial .about-compact,.home-editorial .contact{padding-block:56px}
 .home-editorial .portrait{border-radius:22px}
 .home-editorial #inquiry-form{border-radius:22px;padding:24px 20px}
 .services-page-nav,.device-guide-nav,.portfolio-nav{padding:10px 16px;gap:4px 18px;border-radius:18px}
 .services-hero-photo img,.device-category,.lab-case{border-radius:22px}
}
@media(max-width:700px), (max-width:950px) and (max-height:500px) and (pointer:coarse){
 .demo-page>.modern-nav{width:calc(100% - 20px);max-width:none;margin:8px 10px 4px;border-radius:18px;padding:10px 12px}
 .demo-page:has(.modern-nav nav.is-open){height:auto;min-height:100dvh;overflow:visible}
 #demo-workspace .mobile-design select{background:#f8fbff;border-color:#cfdfeb;color:#244e68;border-radius:14px}
 #demo-workspace #demo-fullscreen,#demo-workspace #phone-preview-open{background:#e8f0f7;color:#244e68;border-color:#cfdfeb;border-radius:14px}
 #demo-workspace .phone-preview-summary p{color:#566b7c}
 #demo-workspace .phone-preview-summary strong{color:#203647}
 #demo-workspace .tablet-screen{border-radius:20px}
 #demo-workspace[data-design=tiles] .dashboard-tabs button[aria-selected=true]{background:#dbeaf5}
 #demo-workspace[data-design=night] .dashboard-tabs button[aria-selected=true]{background:#29485f;color:#fff}
}
/* Tonal roles: cool neutral foundations, blue controls, warm lighting states. */
.about-local,.home-project-equipment figcaption>span,.home-project-tail>p,.home-editorial .home-project-secondary small,.services-section-intro>p:last-child,.services-hero-photo figcaption,.community-affiliation,.community-action>span{color:var(--palette-muted)}
.community-note .community-meta{color:var(--palette-muted)!important}
.reading-progress{height:2px;background:#789fb4}
.back-to-top:hover{background:linear-gradient(145deg,#426d88d6,#244962d6);border-color:#e1f4ff;box-shadow:0 10px 30px -10px #102d4d85,inset 0 1px 1px #ffffff85;transform:translateY(-2px)}
.demo-page :is(.design-label,.design-note,.demo-eyebrow,.house-readouts small,.house-hint,.house-credit,.scene-caption>span,.demo-intro-tools p){color:var(--palette-muted)}
.demo-page :is(.house-readouts strong,.scene-caption h3){color:var(--palette-ink)}
.demo-page .scene-caption p,.demo-page .design-switcher small{color:var(--palette-muted)}
.demo-page .demo-disclosure,.demo-page .demo-tools #dash-status,.demo-page .demo-contact{color:var(--palette-muted)}
.demo-page .house-readouts,.demo-page .house-readouts>span+span{border-color:var(--palette-line)}
.demo-page .hotspot-label{background:var(--palette-deep);color:#f7fbff;border-color:#6f8fa2}
.demo-page #demo-fullscreen,.demo-page #dash-reset{border-color:var(--palette-line);background:var(--palette-surface);color:var(--palette-primary);border-radius:100px}
.demo-workspace[data-design=tiles]{--dash-active:var(--palette-warm);--dash-active-ink:var(--palette-warm-ink)}
.demo-workspace[data-design=tiles] .dash-scenes button[aria-pressed=true]{background:var(--palette-primary-soft);border-color:#b5ccda;color:var(--palette-primary);box-shadow:inset 0 1px 0 #fff}
.demo-workspace[data-design=night] .dash-scenes button[aria-pressed=true]{background:#2c465a;color:var(--palette-warm);border-color:#627887}
.demo-workspace[data-design=night] .room-tile[data-on=true]{background:#3d3d32;border-color:#7c7057}
.demo-workspace[data-design=night] .temperature-control output{border-color:#7197ac}
.demo-workspace:is(:fullscreen,.is-expanded){background:var(--palette-paper)}
.demo-workspace:is(:fullscreen,.is-expanded)[data-design=night]{background:var(--palette-deep)}
.demo-workspace:is(:fullscreen,.is-expanded)[data-expanded-view=controls][data-design=night] .dashboard-tabs{background:#1c3347;border-color:#ffffff28}
.demo-workspace .system-dialog::backdrop,.demo-workspace .light-dialog::backdrop{background:#0d2438bb}
.demo-workspace .expanded-view-switch{background:#e6eff6;border-color:#cbdde9}
.demo-workspace .expanded-view-switch button{color:var(--palette-primary)}
.demo-workspace .expanded-view-switch button[aria-pressed=true]{background:#fff;color:var(--palette-ink)}
.demo-workspace .tablet-screen :is(button,input,select):focus-visible{outline-color:#5a93b4}
.demo-workspace[data-design=night] .tablet-screen :is(button,input,select):focus-visible{outline-color:#b8deef}
.home-visual .photo-loading,.home-visual .photo-error{background:var(--palette-paper);color:var(--palette-muted)}
/* Small, composited movement; the photo scenes retain their existing controls. */
.editorial-reveal.is-waiting{transform:translateY(12px)}
.editorial-reveal.is-visible{transition:opacity var(--motion-enter) var(--motion-ease) var(--reveal-delay,0ms),transform var(--motion-enter) var(--motion-ease) var(--reveal-delay,0ms)}
.portrait.editorial-reveal{transform:none}
.automation-panel:not([hidden]){animation:panel-arrive 220ms var(--motion-ease) both}
.automation-tabs button,.gallery-controls button,.gallery-thumbnail,.demo-workspace .home-quick-card{transition:background-color var(--motion-quick),border-color var(--motion-quick),box-shadow var(--motion-quick)}
.button,.nav-cta{transition:background-color var(--motion-quick),box-shadow var(--motion-quick),transform var(--motion-quick)}
.routine-tabs{position:relative;isolation:isolate;gap:0}
.routine-tabs::before{content:"";position:absolute;top:5px;bottom:5px;left:5px;width:calc((100% - 10px)/3);background:#f0f7fc;border:1px solid #fff;border-radius:100px;box-shadow:0 3px 10px #0002;transform:translateX(calc(var(--segment,0)*100%));transition:transform 300ms var(--motion-ease);pointer-events:none}
.routine-tabs:has(button:nth-child(2)[aria-selected=true]){--segment:1}
.routine-tabs:has(button:nth-child(3)[aria-selected=true]){--segment:2}
.routine-tabs button{position:relative;z-index:1;border-color:transparent;background:transparent}
.routine-tabs button[aria-selected=true],.routine-tabs button[aria-selected=true]:hover{background:transparent;border-color:transparent;box-shadow:none}
@keyframes panel-arrive{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){
 .button:not(:disabled):hover,.nav-cta:hover{transform:translateY(-2px);box-shadow:0 9px 20px -12px #193c5b80}
 .button:not(:disabled):active,.nav-cta:active{transform:translateY(0)}
 .device-category:hover{border-color:#b8cedd}
}
@media(max-width:600px){.routine-tabs{padding:5px;gap:0}}
@media(max-height:620px){
 .demo-page.demo-ready{height:auto;min-height:100dvh;overflow:auto}
 .demo-page .demo-workspace:not(:fullscreen):not(.is-expanded){min-height:560px}
}
@media(max-width:700px), (max-width:950px) and (max-height:500px) and (pointer:coarse){
 #demo-workspace[data-phone-preview=true] .house-view{background:var(--palette-paper);border-color:var(--palette-line)}
 #demo-workspace[data-phone-preview=true] .phone-preview-close{background:var(--palette-primary);color:#fff}
}
@media(max-width:360px){.modern-nav .brand small{max-width:18ch}.modern-nav .brand b{font-size:.875rem}.modern-nav .brand-mark{width:32px;height:32px}.modern-nav .menu-toggle .menu-label{display:none}.modern-nav .menu-toggle{width:44px}.everyday-controls{padding-inline:14px}}
@media(prefers-reduced-transparency:reduce){.modern-nav,.everyday-controls{background:#f8fbff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.home-editorial .hero .modern-nav,.everyday-visual figcaption,.hero .hero-demo-link,.hero-assurance>span,.hero-media-tools button,.demo-page .home-visual #preview-controls,.demo-page .preview-label,.demo-page .camera-readout,.demo-page .house-hotspot{background:#18334b!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.demo-page .house-hotspot[aria-pressed=true]{background:#ead1a7!important;color:#543e23}}
@media(prefers-reduced-transparency:reduce){.back-to-top{background:#24535b!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}
@media(prefers-reduced-motion:reduce){.button,.nav-cta,.back-to-top,.back-to-top svg,.automation-tabs button,.routine-tabs button,.routine-tabs::before,.editorial-reveal.is-visible,.gallery-controls button,.gallery-thumbnail,.automation-panel:not([hidden]){animation:none;transition:none;transform:none}.routine-tabs::before{transform:translateX(calc(var(--segment,0)*100%))}.editorial-reveal.is-waiting{opacity:1;transform:none}}
