:root{--ink:#111820;--nav:#252b34;--deep:#171c23;--blue:#13b8ea;--blue2:#3d82ff;--paper:#fff;--soft:#f2f6fa;--line:#dfe6ec;--muted:#68727d;--max:1240px;--radius:4px;--shadow:0 18px 45px rgba(17,24,32,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif;background:#fff;line-height:1.65}img{max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.site-header{height:78px;background:var(--nav);color:#fff;position:sticky;top:0;z-index:50}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:700;letter-spacing:.08em;white-space:nowrap}.brand-mark{width:34px;height:34px;border:2px solid var(--blue);border-radius:50% 50% 12% 50%;transform:rotate(45deg);position:relative}.brand-mark:after{content:"";position:absolute;width:8px;height:8px;background:var(--blue);border-radius:50%;right:4px;bottom:4px}.main-nav{display:flex;align-items:center;height:100%;gap:34px}.main-nav a{height:100%;display:grid;place-items:center;position:relative;color:#e7ebef;font-size:15px;white-space:nowrap}.main-nav a:hover,.main-nav a.active{color:var(--blue)}.main-nav a.active:after{content:"";position:absolute;height:3px;background:var(--blue);bottom:0;left:0;right:0}.menu-toggle{display:none;border:0;background:none;color:white;font-size:26px}.placeholder{min-height:240px;background:linear-gradient(135deg,#dbe4ec,#f7f9fb 48%,#cbd7e1);display:grid;place-items:center;position:relative;overflow:hidden;color:#677480}.placeholder:before,.placeholder:after{content:"";position:absolute;border:1px solid rgba(73,102,128,.18);width:140%;height:1px;transform:rotate(25deg)}.placeholder:after{transform:rotate(-25deg)}.placeholder span{position:relative;z-index:1;padding:9px 14px;border:1px solid rgba(75,96,115,.28);background:rgba(255,255,255,.64);font-size:13px;letter-spacing:.05em}.hero{height:720px;position:relative;color:white;overflow:hidden}.placeholder-hero{height:100%;background:linear-gradient(120deg,#07121f,#173c5e 55%,#9fc5db)}.hero:after,.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,11,18,.7),rgba(4,11,18,.05) 70%)}.hero-copy{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-copy h1{font-size:clamp(42px,5vw,72px);margin:8px 0 12px;line-height:1.15}.hero-copy>p:not(.eyebrow){font-size:19px;max-width:580px;color:#e6edf4}.eyebrow,.section-heading>p,.page-intro>p{color:var(--blue);font-weight:700;letter-spacing:.18em;font-size:13px}.button{display:inline-flex;align-items:center;gap:24px;margin-top:24px;padding:13px 24px;background:var(--blue);color:#061119;font-weight:700;transition:.25s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(19,184,234,.3)}.button-dark{background:var(--ink);color:#fff}.section{padding:96px 0}.section-heading{text-align:center;margin-bottom:42px}.section-heading.align-left{text-align:left}.section-heading h2{font-size:clamp(30px,3vw,44px);margin:5px 0 8px;line-height:1.25}.section-heading span{color:var(--muted)}.section-heading.light h2{color:#fff}.scene-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.feature-wide{grid-column:1/-1}.feature-card{position:relative;overflow:hidden;background:#dde5ec}.feature-card .placeholder{height:390px}.feature-wide .placeholder{height:530px}.card-copy{position:absolute;inset:auto auto 34px 36px;color:white;text-shadow:0 2px 14px rgba(0,0,0,.55)}.card-copy small{color:var(--blue)}.card-copy h3{font-size:28px;margin:4px 0}.card-copy p{margin:0}.section-dark{background:var(--deep);color:white}.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.value-grid article{padding:36px 28px;border:1px solid #38424d;min-height:235px}.value-grid i{font-style:normal;color:var(--blue);font-weight:700}.value-grid h3{font-size:21px;margin:30px 0 8px}.value-grid p{color:#aeb7c0;margin:0}.split-banner,.about-split,.contact-layout{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.split-banner>div:first-child,.about-split>div:first-child{padding:68px;background:var(--soft)}.split-banner h2,.about-split h2,.contact-panel h2{font-size:36px;line-height:1.3;margin:10px 0 16px}.split-banner .placeholder,.about-split .placeholder{min-height:440px}.site-footer{background:var(--nav);color:#d3d9df}.footer-main{display:grid;grid-template-columns:1.2fr .8fr .8fr 1.5fr .8fr;gap:38px;padding:65px 0}.footer-main h3{color:white;font-size:16px;margin:0 0 20px}.footer-main a,.footer-main p{display:block;color:#aeb6bf;font-size:14px;margin:8px 0}.qr{min-height:130px;background:#1d232b;border:1px solid #65707b;display:grid;place-items:center;text-align:center}.copyright{background:#14181e;padding:18px 0;color:#7f8993;text-align:center;font-size:13px}.page-hero{height:500px;position:relative;color:white}.page-hero.tall{height:650px}.page-hero>.placeholder{height:100%;background:linear-gradient(120deg,#161e27,#536b79,#becbd2)}.page-hero-copy{position:absolute;z-index:2;inset:0;display:grid;place-content:center;text-align:center}.page-hero-copy p{letter-spacing:.18em;color:var(--blue);font-weight:700}.page-hero-copy h1{font-size:52px;margin:0}.page-hero-copy span{margin-top:12px}.category-tabs,.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:34px}.category-tabs a,.filter-row button{padding:10px 17px;border:1px solid var(--line);background:white;cursor:pointer}.category-tabs a:hover,.filter-row button.active,.filter-row button:hover{background:var(--ink);color:white;border-color:var(--ink)}.product-sections{display:grid;gap:58px}.product-group h2{font-size:25px;border-bottom:1px solid var(--line);padding-bottom:13px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.product-card{border:1px solid var(--line);background:white}.product-card .placeholder{min-height:230px}.product-card h3{padding:5px 20px 20px;margin:0;font-size:17px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.process-grid article{border:1px solid var(--line);padding:30px;min-height:220px}.process-grid b{color:var(--blue);font-size:26px}.process-grid h3{font-size:21px;margin:34px 0 8px}.process-grid p{color:var(--muted)}.soft{background:var(--soft)}.system-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.system-grid article{background:white;padding-bottom:22px}.system-grid .placeholder{min-height:250px}.system-grid h3,.system-grid p{margin-left:22px;margin-right:22px}.system-grid p{color:var(--muted)}.cta{background:linear-gradient(115deg,#0b1927,#174b6c);color:white;padding:70px;text-align:center}.cta h2{font-size:38px;margin:6px}.page-intro{padding:90px 0 45px}.page-intro h1{font-size:52px;margin:5px 0}.page-intro span{color:var(--muted)}.case-feature{height:520px;position:relative;color:white}.case-feature>.placeholder{height:100%;background:linear-gradient(135deg,#1b2731,#738895)}.case-feature:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent)}.case-overlay{position:absolute;z-index:2;left:45px;bottom:38px}.case-overlay h2{font-size:34px;margin:5px 0}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 18px}.case-card .placeholder{height:250px}.case-card h2{font-size:19px;margin:14px 0 2px}.case-card p{margin:0;color:var(--muted);font-size:14px}.about-split{gap:56px}.about-split>div:first-child{padding:20px 0;background:white}.about-split p{color:#424d58}.muted{color:var(--muted)!important}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.stat-grid article+article{border-left:1px solid var(--line)}.stat-grid strong{font-size:50px}.stat-grid strong span{font-size:18px;color:var(--blue)}.light-cards article{border-color:var(--line);color:var(--ink)}.light-cards p{color:var(--muted)}.contact-layout{box-shadow:var(--shadow)}.map-placeholder{min-height:480px}.contact-panel{background:var(--soft);padding:58px}.contact-panel dl{display:grid;grid-template-columns:90px 1fr;gap:16px;margin-top:35px}.contact-panel dt{font-weight:700}.contact-panel dd{margin:0;color:var(--muted)}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.contact-cards article{padding:30px;background:var(--soft)}.contact-cards span{color:var(--blue);font-weight:700}.contact-cards h3{margin:20px 0 5px}.contact-cards p{color:var(--muted)}.contact-cards a{font-weight:700}@media(max-width:980px){.main-nav{display:none;position:absolute;top:78px;left:0;right:0;height:auto;background:var(--nav);padding:12px 24px;flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav a{height:auto;padding:14px 0;display:block}.main-nav a.active:after{right:auto;width:36px}.menu-toggle{display:block}.value-grid,.system-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.process-grid,.case-grid{grid-template-columns:repeat(2,1fr)}.footer-main{grid-template-columns:repeat(2,1fr)}.hero{height:620px}}@media(max-width:680px){.container{width:min(calc(100% - 32px),var(--max))}.site-header{height:68px}.main-nav{top:68px}.hero{height:540px}.hero-copy h1{font-size:40px}.section{padding:68px 0}.scene-grid,.split-banner,.about-split,.contact-layout{grid-template-columns:1fr}.feature-wide .placeholder,.feature-card .placeholder{height:350px}.value-grid,.system-grid,.product-grid,.process-grid,.case-grid,.stat-grid,.contact-cards{grid-template-columns:1fr}.page-hero,.page-hero.tall{height:430px}.page-hero-copy h1,.page-intro h1{font-size:38px}.split-banner>div:first-child,.contact-panel,.cta{padding:38px 26px}.case-feature{height:420px}.case-overlay{left:24px;bottom:24px}.case-grid .placeholder{height:220px}.footer-main{grid-template-columns:1fr 1fr;padding:45px 0}.footer-main>div:nth-child(4),.footer-main>div:nth-child(5){grid-column:1/-1}.stat-grid article{padding:18px}.stat-grid article+article{border-left:0;border-top:1px solid var(--line)}}
/* Navigation aligned with the retained yuntu-home design. */
:root{--nav-h:80px}.no-scroll{overflow:hidden}.site-header{position:fixed;inset:0 0 auto;height:var(--nav-h);background:rgba(17,24,39,.92);border-bottom:1px solid rgba(52,213,255,.14);backdrop-filter:blur(18px);transition:background .28s ease,box-shadow .28s ease}.site-header.scrolled{background:rgba(12,18,30,.97);box-shadow:0 12px 36px rgba(1,10,24,.22)}.header-inner{height:var(--nav-h);max-width:1200px}.site-header .brand{gap:10px;min-width:190px;font-size:inherit;letter-spacing:normal}.brand-logo{display:block;width:62px;height:62px;object-fit:contain}.brand-text strong{display:block;color:#fff;font-size:1.42rem;line-height:1.08;letter-spacing:.04em}.brand-text span{display:none;color:rgba(255,255,255,.5);font-size:.65rem;letter-spacing:.08em}.site-header .main-nav{display:flex;align-items:stretch;flex:1;height:100%;gap:0;margin:0 18px}.site-header .main-nav a{flex:1;min-width:0;padding:0 14px;font-size:1rem;font-weight:600;letter-spacing:.02em}.site-header .main-nav a.active:after,.site-header .main-nav a:hover:after{content:"";position:absolute;left:0;right:0;height:4px;bottom:10px;background:var(--blue)}.nav-cta{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 18px;border:1px solid var(--blue);border-radius:6px;color:#fff;background:linear-gradient(135deg,var(--blue),#007db8);font-size:.85rem;font-weight:500;white-space:nowrap;transition:.2s}.nav-cta:hover{background:#0099d1;transform:translateY(-1px)}.site-header .menu-toggle{width:38px;height:38px;padding:9px;border:1px solid rgba(52,213,255,.28);background:rgba(255,255,255,.04);border-radius:4px}.menu-toggle span{display:block;width:100%;height:2px;margin:4px 0;background:#fff;transition:.22s}.header-inner.open .menu-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}.header-inner.open .menu-toggle span:nth-child(2){opacity:0}.header-inner.open .menu-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.page-intro{padding-top:calc(10px + var(--nav-h))}
@media(max-width:980px){.site-header .main-nav,.site-header .nav-cta{display:none}.site-header .menu-toggle{display:block}.header-inner.open .main-nav{position:fixed;inset:var(--nav-h) 0 0;display:flex;height:calc(100vh - var(--nav-h));margin:0;padding:22px 28px 40px;background:rgba(11,16,24,.985);flex-direction:column;align-items:stretch;overflow:auto}.header-inner.open .main-nav a{flex:0 0 auto;height:auto;padding:18px 0;display:block;border-bottom:1px solid rgba(255,255,255,.1);font-size:1.15rem}.header-inner.open .main-nav a:after{bottom:0;right:auto;width:42px}.site-header .brand{min-width:0}}
@media(max-width:680px){:root{--nav-h:68px}.brand-logo{width:42px;height:42px}.brand-text strong{font-size:1.25rem}.brand-text span{display:block;font-size:.56rem}.page-intro{padding-top:calc(64px + var(--nav-h))}}
/* Contact page — current site styling with retained form and map structure. */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 24px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);cursor:pointer;font-weight:600;transition:.2s}.btn.primary{background:var(--blue);color:#061119;border-color:var(--blue)}.btn.primary:hover{background:#34d5ff;transform:translateY(-1px)}.btn.ghost:hover{border-color:var(--blue);color:#007da8}
body[data-page="contact"] .btn.primary,body[data-page="contact"] .btn.primary i{color:#fff}

/* About page — company overview adapted from the supplied report */
.about-overview-section{padding:82px 0 88px;background:#f3f5f7}
.about-overview-heading{margin-bottom:42px}
.about-overview-heading p{margin:0 0 8px;color:#078fba;font-size:.78rem;font-weight:700;letter-spacing:.2em}
.about-overview-heading h2{margin:0;font-size:clamp(2rem,3.4vw,3.25rem);font-weight:500;line-height:1.24;letter-spacing:-.025em}
.about-overview-layout{display:grid;grid-template-columns:minmax(300px,.68fr) minmax(0,1.8fr);gap:28px;align-items:stretch}
.about-profile-card{display:flex;min-height:630px;padding:52px 42px 44px;justify-content:space-between;flex-direction:column;border-radius:8px;background:#08636b;color:#fff;box-shadow:0 18px 38px rgba(13,61,67,.15)}
.about-profile-card>div{padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.28)}
.about-profile-card span{color:#75e0e8;font-size:.88rem;letter-spacing:.16em}
.about-profile-card h2{margin:14px 0 0;font-size:clamp(2.25rem,3.8vw,3.8rem);font-weight:500;line-height:1.18}
.about-profile-card p{margin:42px 0 0;color:#d4e7e9;font-size:1rem;line-height:2;text-align:justify}
.about-principles{display:grid;gap:18px}
.about-principles>article{display:grid;grid-template-columns:88px minmax(0,1fr);gap:28px;align-items:center;padding:34px 40px;border:1px solid #e0e6e9;border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(34,56,68,.07)}
.about-principle-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:10px;background:#e4f4f5;color:#08636b;font-size:1.8rem}
.about-principles span{color:#078fba;font-size:.72rem;font-weight:700;letter-spacing:.16em}
.about-principles h3{margin:5px 0 10px;color:#075e66;font-size:1.55rem;font-weight:600}
.about-principles p{margin:0;color:#68727d;font-size:1rem;line-height:1.9}
.about-facts{display:grid;grid-template-columns:repeat(4,1fr);margin-top:28px;overflow:hidden;border:1px solid #dfe6e9;border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(34,56,68,.06)}
.about-facts article{padding:26px 22px;text-align:center}
.about-facts article+article{border-left:1px solid #e3e8eb}
.about-facts strong{display:block;color:#08636b;font-size:2.15rem;line-height:1.2}
.about-facts strong span{margin-left:3px;color:#078fba;font-size:.9rem}
.about-facts p{margin:8px 0 0;color:#68727d;font-size:.86rem}
@media(max-width:980px){.about-overview-layout{grid-template-columns:1fr}.about-profile-card{min-height:auto}.about-profile-card p{max-width:760px}.about-principles>article{padding:30px 32px}.about-facts{grid-template-columns:repeat(2,1fr)}.about-facts article:nth-child(3){border-left:0;border-top:1px solid #e3e8eb}.about-facts article:nth-child(4){border-top:1px solid #e3e8eb}}
@media(max-width:680px){.about-overview-section{padding:58px 0 64px}.about-overview-heading{margin-bottom:28px}.about-overview-heading h2{font-size:2rem}.about-profile-card{padding:34px 26px;border-radius:6px}.about-profile-card h2{font-size:2.4rem}.about-profile-card p{margin-top:30px;font-size:.95rem;line-height:1.85;text-align:left}.about-principles>article{grid-template-columns:1fr;gap:18px;padding:28px 24px;border-radius:6px}.about-principle-icon{width:58px;height:58px;font-size:1.4rem}.about-principles h3{font-size:1.35rem}.about-principles p{font-size:.95rem;line-height:1.8}.about-facts{grid-template-columns:1fr 1fr}.about-facts article{padding:22px 12px}.about-facts strong{font-size:1.8rem}}
.contact-hero{height:470px;margin-top:var(--nav-h);position:relative;overflow:hidden;background:#e8eef3}.contact-hero:after{display:none!important;content:none!important}.contact-hero>img{display:block;width:100%;height:100%;object-fit:cover;opacity:1;filter:none}.contact-hero-title{position:absolute;z-index:2;top:0;bottom:0;left:max(24px,calc((100% - var(--max))/2));width:min(440px,42vw);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;text-align:left;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.58)}.contact-hero-title p{margin:0 0 6px;color:var(--blue);font-size:.82rem;font-weight:700;letter-spacing:.18em}.contact-hero-title h1{margin:0;font-size:clamp(2.25rem,4vw,3.6rem);line-height:1.2}.contact-lead{max-width:720px;margin:0 auto 42px;text-align:center;color:var(--muted);font-size:1rem}
.contact-page-section{background:#fff;padding:88px 0 100px}.contact-page-section .section-heading h1{font-size:clamp(2rem,3vw,2.8rem);margin:5px 0 8px}.contact-workbench{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;align-items:start}.contact-form-card,.contact-location-card{background:#fff;border:1px solid var(--line);box-shadow:none}.contact-form-card{padding:38px}.contact-form-card h2,.contact-location-card h2{margin:7px 0 12px;font-size:clamp(1.55rem,2.2vw,2rem);line-height:1.25}.contact-form-card>p{margin:0 0 28px;color:var(--muted)}.form-row{margin-bottom:18px}.form-row label{display:block;margin-bottom:8px;color:#4e5965;font-size:.92rem}.contact-form-card input,.contact-form-card select,.contact-form-card textarea{width:100%;min-height:50px;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--soft);color:var(--ink);outline:none}.contact-form-card textarea{min-height:112px;padding-top:12px;resize:vertical}.contact-form-card input:focus,.contact-form-card select:focus,.contact-form-card textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(19,184,234,.12);background:#fff}
.contact-location-card{padding:38px}.contact-location-card address{display:block;margin:0 0 22px;font-style:normal;color:var(--muted);line-height:1.8}.location-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.contact-map-visual{height:500px;position:relative;overflow:hidden;background:var(--soft);border:1px solid var(--line)}.baidu-map-frame{position:absolute;inset:0;width:100%;height:100%;border:0;background:var(--soft)}.address-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;margin-top:18px;color:var(--muted);font-size:.88rem}.address-meta i{width:20px;color:var(--blue)}.toast{position:fixed;z-index:2000;right:22px;bottom:22px;display:none;max-width:min(360px,calc(100% - 44px));padding:14px 18px;background:#fff;border-left:4px solid var(--blue);box-shadow:var(--shadow);color:var(--ink)}.toast.show{display:block}
@media(max-width:980px){.contact-workbench{grid-template-columns:1fr}.contact-map-visual{height:440px}}
@media(max-width:680px){.contact-hero{height:300px}.contact-hero-title{left:16px;width:calc(100% - 32px)}.contact-page-section{padding:62px 0 70px}.contact-form-card,.contact-location-card{padding:24px}.contact-map-visual{height:300px}.location-actions .btn{width:100%}.address-meta{display:grid}}

/* Equal-height desktop contact panels and rounded frames. */
.contact-form-card,.contact-location-card{border-radius:8px;overflow:hidden;box-shadow:0 14px 36px rgba(17,24,32,.09),0 3px 10px rgba(17,24,32,.05)}.contact-map-visual{border-radius:6px;box-shadow:inset 0 0 0 1px rgba(17,24,32,.03)}
.contact-notes{padding:0 0 100px;background:#fff;scroll-margin-top:100px}.contact-notes-heading{text-align:center;margin-bottom:30px}.contact-notes-heading h2{margin:5px 0 0;font-size:clamp(1.8rem,2.6vw,2.5rem);line-height:1.25}.contact-note-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.contact-note-grid article{display:flex;gap:18px;min-height:158px;padding:30px 28px;background:#e9f5fa;border:1px solid #c9e9f4;border-radius:8px;box-shadow:0 10px 28px rgba(24,92,120,.09)}.contact-note-grid article>i{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:8px;background:#cceefa;color:#0789b5;font-size:1.15rem}.contact-note-grid strong,.contact-note-grid span{display:block}.contact-note-grid strong{margin-bottom:7px;font-size:1.05rem;color:#173545}.contact-note-grid span{color:#526c79;font-size:.92rem;line-height:1.75}
@media(min-width:981px){.contact-workbench{align-items:stretch}.contact-form-card,.contact-location-card{height:100%}.contact-location-card{display:flex;flex-direction:column}.contact-map-visual{flex:1;height:auto;min-height:0}}
@media(max-width:980px){.contact-note-grid{grid-template-columns:1fr}.contact-note-grid article{min-height:auto}}
@media(max-width:680px){.contact-notes{padding-bottom:70px}.contact-notes-heading{margin-bottom:24px}.contact-note-grid article{padding:24px 22px}}

/* Solution page */
.solution-page{background:#fff}.solution-intro{padding:110px 0 92px}.solution-intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:end}.solution-intro h1{max-width:660px;margin:8px 0 0;font-size:clamp(2.35rem,4.2vw,4.5rem);line-height:1.16;letter-spacing:-.04em}.solution-intro-grid>p{margin:0;color:var(--muted);font-size:1.05rem;line-height:1.9}.solution-values{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:72px;background:var(--line);border:1px solid var(--line)}.solution-values article{padding:28px;background:#fff}.solution-values b,.solution-project-grid b,.solution-process b{color:var(--blue);font-size:.82rem;letter-spacing:.14em}.solution-values h2{margin:18px 0 7px;font-size:1.12rem}.solution-values p{margin:0;color:var(--muted);font-size:.9rem}.solution-heading{text-align:center;max-width:820px;margin:0 auto 46px}.solution-heading h2{margin:7px 0 12px;font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.25;letter-spacing:-.025em}.solution-heading>span{color:var(--muted);font-size:1rem}.solution-interaction{padding:20px 0 20px;background:#fbfcfd}.interaction-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.interaction-grid>article{display:flex;flex-direction:column;min-width:0;height:460px;padding:30px 0 0;border-radius:10px;overflow:hidden}.interaction-grid>article>div:first-child{padding:0 25px}.interaction-grid h3{margin:0;padding-bottom:10px;border-bottom:1px solid rgba(17,24,32,.55);font-size:1.55rem}.interaction-grid p{margin:8px 0 0;color:#42515b}.interaction-media{flex:1;min-height:0;margin-top:26px;background:rgba(255,255,255,.26)}.interaction-touch{background:#d7f5dc}.interaction-voice{background:#f7e7c4}.interaction-app{background:#e4e5e7}.interaction-button{background:#d8effc}.interaction-sense{background:#e6e2f7}.interaction-sense .interaction-media{background:rgba(255,255,255,.2)}.solution-scenes{padding:40px 0;background:#fff}.scene-layout{display:grid;grid-template-columns:220px 1fr;gap:32px;align-items:stretch}.scene-menu{display:grid;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.scene-menu span{display:grid;place-items:center;min-height:74px;padding:12px 20px;border-right:3px solid transparent;border-bottom:1px solid var(--line);background:#f4f7fa;color:#53606c}.scene-menu span:last-child{border-bottom:0}.scene-menu .active{border-right-color:var(--blue);background:#fff;color:#08a9dc;font-weight:700}.scene-preview{position:relative;min-height:520px;overflow:hidden;background:#e8eef3}.scene-preview>.placeholder{height:100%;min-height:520px}.scene-preview-copy{position:absolute;right:0;bottom:0;display:flex;gap:20px;width:min(520px,72%);padding:30px;background:rgba(25,35,44,.86);color:#fff;backdrop-filter:blur(5px)}.scene-preview-copy>i{font-size:2rem;color:var(--blue)}.scene-preview-copy h3{margin:0 0 10px;font-size:1.45rem}.scene-preview-copy p{margin:0 0 12px;color:#d8e0e6}.scene-preview-copy span{color:#86dff7;font-size:.82rem}.solution-systems{padding:108px 0;background:#1b222b;color:#fff}.solution-heading.light>span{color:#aeb8c2}.solution-system-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.solution-system-grid article{position:relative;min-height:390px;padding:38px 34px;border:1px solid #394550;background:#222b35}.solution-system-grid article>b{position:absolute;top:25px;right:28px;color:#53616f;font-size:2.5rem}.solution-system-grid article>i{margin-top:34px;color:var(--blue);font-size:1.7rem}.solution-system-grid h3{margin:20px 0 10px;font-size:1.45rem}.solution-system-grid p,.solution-system-grid li{color:#aeb8c2}.solution-system-grid ul{margin:22px 0 0;padding:20px 0 0 18px;border-top:1px solid #394550}.solution-system-grid li{margin:7px 0}.solution-projects{padding:108px 0;background:#f3f6f8}.solution-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.solution-project-grid article{overflow:hidden;background:#fff;box-shadow:0 14px 34px rgba(17,24,32,.07)}.solution-project-grid .placeholder{height:265px}.solution-project-grid article>div:last-child{padding:28px}.solution-project-grid h3{margin:8px 0 8px;font-size:1.3rem}.solution-project-grid p{margin:0;color:var(--muted)}.solution-process{padding:108px 0;background:#fff}.solution-process ol{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.solution-process li{position:relative;padding:32px 26px;min-height:190px}.solution-process li+li{border-left:1px solid var(--line)}.solution-process h3{margin:26px 0 7px;font-size:1.05rem}.solution-process p{margin:0;color:var(--muted);font-size:.9rem}.solution-cta{padding:70px 0;background:linear-gradient(115deg,#0b1927,#174b6c);color:#fff}.solution-cta .container{display:flex;align-items:center;justify-content:space-between;gap:40px}.solution-cta h2{margin:7px 0 8px;font-size:clamp(1.9rem,3vw,2.8rem)}.solution-cta span{color:#bdcbd5}.solution-cta .button{flex:0 0 auto;margin:0}
@media(max-width:1100px){.interaction-grid{grid-template-columns:repeat(3,1fr)}.interaction-grid>article{height:400px}.solution-process ol{grid-template-columns:repeat(3,1fr)}.solution-process li:nth-child(4){border-left:0;border-top:1px solid var(--line)}.solution-process li:nth-child(5){border-top:1px solid var(--line)}}
@media(max-width:980px){.solution-intro-grid{grid-template-columns:1fr;gap:28px}.solution-values{grid-template-columns:repeat(2,1fr)}.scene-layout{grid-template-columns:1fr}.scene-menu{grid-template-columns:repeat(3,1fr)}.scene-menu span{border-right:1px solid var(--line)}.scene-menu .active{border-right:1px solid var(--line);border-bottom:3px solid var(--blue)}.solution-system-grid,.solution-project-grid{grid-template-columns:1fr}.solution-system-grid article{min-height:auto}.solution-project-grid article{display:grid;grid-template-columns:.8fr 1fr}.solution-project-grid .placeholder{height:100%;min-height:250px}}
@media(max-width:680px){.solution-intro{padding:76px 0 64px}.solution-intro h1{font-size:2.35rem}.solution-values{grid-template-columns:1fr;margin-top:48px}.solution-interaction,.solution-scenes,.solution-systems,.solution-projects,.solution-process{padding:72px 0}.interaction-grid{grid-template-columns:1fr}.interaction-grid>article{height:360px}.scene-menu{display:flex;overflow-x:auto}.scene-menu span{flex:0 0 112px;min-height:58px}.scene-preview,.scene-preview>.placeholder{min-height:390px}.scene-preview-copy{width:100%;padding:22px}.scene-preview-copy>i{display:none}.solution-project-grid article{grid-template-columns:1fr}.solution-project-grid .placeholder{height:230px}.solution-process ol{grid-template-columns:1fr}.solution-process li{min-height:auto}.solution-process li+li,.solution-process li:nth-child(4),.solution-process li:nth-child(5){border-left:0;border-top:1px solid var(--line)}.solution-cta{padding:58px 0}.solution-cta .container{align-items:flex-start;flex-direction:column}.solution-cta .button{width:100%;justify-content:center}}
.solution-hero{position:relative;height:600px;overflow:hidden;background:#18252e;color:#fff}
.solution-hero::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(8,18,25,.84),rgba(8,18,25,.35) 58%,rgba(8,18,25,.08));pointer-events:none}
.solution-hero-media{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.solution-hero-copy{position:absolute;z-index:2;inset:0;display:flex;justify-content:center;align-items:flex-start;flex-direction:column;text-shadow:0 2px 14px rgba(0,0,0,.58)}
.solution-hero-copy p{margin:0 0 6px;color:var(--blue);font-size:.82rem;font-weight:700;letter-spacing:.18em}
.solution-hero-copy h1{margin:0;font-size:clamp(2.25rem,4vw,3.6rem);font-weight:700;line-height:1.2}
.solution-intro{padding:40px 0 52px}
.solution-intro .solution-values{margin-top:0}
@media(max-width:680px){.solution-hero{height:300px}.solution-hero-copy{padding-bottom:0}.solution-intro{padding:26px 0 40px}}

.scene-menu button{display:grid;place-items:center;min-height:74px;padding:12px 20px;border:0;border-right:3px solid transparent;border-bottom:1px solid var(--line);background:#f4f7fa;color:#53606c;font:inherit;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.scene-menu button:last-child{border-bottom:0}.scene-menu button:hover{background:#eaf7fb;color:#078fba}.scene-menu button:focus-visible{position:relative;z-index:1;outline:3px solid rgba(19,184,234,.3);outline-offset:-3px}.scene-menu button.active{border-right-color:var(--blue);background:#fff;color:#08a9dc;font-weight:700}.scene-preview.scene-changing .scene-preview-copy{animation:scene-copy-in .28s ease both}@keyframes scene-copy-in{from{opacity:.25;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:980px){.scene-menu button{border-right:1px solid var(--line)}.scene-menu button.active{border-right:1px solid var(--line);border-bottom:3px solid var(--blue)}}
@media(max-width:680px){.scene-menu button{flex:0 0 112px;min-height:58px}}

.interaction-grid>article{position:relative;height:auto;aspect-ratio:12/23;padding:0;background:#dfe8ee}.interaction-grid>article:after{content:"";position:absolute;z-index:1;inset:0 0 auto;height:38%;background:linear-gradient(180deg,rgba(255,255,255,.66),rgba(255,255,255,0));pointer-events:none}.interaction-grid>article>div:first-of-type{position:relative;z-index:2;padding:28px 24px}.interaction-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.interaction-grid h3{border-color:rgba(0,0,0,.58);color:#000}.interaction-grid p,.interaction-button p{color:#000}.interaction-button:after{background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,0))}
@media(max-width:1100px){.interaction-grid>article{height:auto}}
@media(max-width:680px){.interaction-grid>article{height:auto;max-width:360px;width:100%;margin-inline:auto}}
.interaction-footnote{position:absolute;z-index:2;left:24px;right:24px;bottom:24px;margin:0!important;color:#111820!important;font-size:.88rem;line-height:1.65}
.interaction-grid>article{box-shadow:0 12px 28px rgba(20,42,58,.13),0 3px 8px rgba(20,42,58,.07);transition:transform .25s ease,box-shadow .25s ease}@media(hover:hover){.interaction-grid>article:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(20,42,58,.17),0 5px 12px rgba(20,42,58,.08)}}
.solution-page .solution-heading h2{font-size:clamp(1.75rem,2.6vw,2.6rem)}
.solution-projects{background:#fff}
.solution-process{background:#fbfcfd}
.scene-image{display:block;width:100%;height:100%;min-height:520px;object-fit:cover}.scene-preview.scene-changing .scene-image{animation:scene-image-in .38s ease both}@keyframes scene-image-in{from{opacity:.35;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}
@media(max-width:680px){.scene-image{min-height:390px}}
.scene-preview-copy{left:0;right:0;bottom:0;width:100%;min-height:220px;align-items:flex-end;justify-content:flex-end;padding:78px 38px 30px;background:linear-gradient(180deg,rgba(12,20,28,0) 0%,rgba(12,20,28,.18) 30%,rgba(12,20,28,.86) 100%);backdrop-filter:none}.scene-preview-copy>div{width:min(520px,70%)}
@media(max-width:680px){.scene-preview-copy{min-height:190px;padding:58px 22px 22px}.scene-preview-copy>div{width:100%}}

.solution-system-grid article{display:flex;flex-direction:column;min-height:510px;padding:0;overflow:hidden;border-radius:8px;box-shadow:0 16px 38px rgba(0,0,0,.18)}.solution-system-media{position:relative;height:215px;overflow:hidden;background:#18212a}.solution-system-media .placeholder{height:100%;min-height:0;background:linear-gradient(135deg,#263848,#53697a)}.solution-system-media .placeholder span{border-color:rgba(255,255,255,.22);background:rgba(16,28,38,.55);color:#dce8ef}.solution-system-media>b{position:absolute;z-index:2;left:26px;bottom:18px;color:#fff;font-size:1.45rem;letter-spacing:.12em;text-shadow:0 2px 10px rgba(0,0,0,.5)}.solution-system-body{display:flex;flex:1;flex-direction:column;padding:30px 28px}.solution-system-body>i{color:var(--blue);font-size:1.55rem}.solution-system-body h3{margin:16px 0 9px}.solution-system-body p{margin:0}.solution-system-body ul{margin-top:auto}
.solution-project-grid article{border:1px solid #e0e9ef;border-radius:8px;transition:transform .25s ease,box-shadow .25s ease}.solution-project-grid article:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(17,45,62,.12)}.solution-project-grid ul{margin:22px 0 0;padding:0;list-style:none}.solution-project-grid li{padding:9px 0;border-top:1px solid var(--line);color:#53616d;font-size:.9rem}.solution-project-grid li:before{content:"·";margin-right:8px;color:var(--blue);font-weight:700}
.solution-process ol{border:0;gap:12px}.solution-process li{min-height:205px;border:1px solid var(--line);border-radius:8px;background:#f7fafc;transition:border-color .2s ease,box-shadow .2s ease}.solution-process li+li{border-left:1px solid var(--line)}.solution-process li:hover{border-color:#a8dce9;box-shadow:0 12px 28px rgba(17,45,62,.08)}.solution-process-icon{display:flex;align-items:center;justify-content:space-between}.solution-process-icon i{display:grid;place-items:center;width:44px;height:44px;border-radius:7px;background:#dff4fa;color:#0797c2;font-size:1.15rem}.solution-process h3{margin:22px 0 7px}
@media(max-width:1100px){.solution-process li:nth-child(4),.solution-process li:nth-child(5){border:1px solid var(--line)}}
@media(max-width:980px){.solution-system-grid article{min-height:auto}.solution-project-grid article>div:last-child{padding:30px}}
@media(max-width:680px){.solution-system-media{height:210px}.solution-process li,.solution-process li+li,.solution-process li:nth-child(4),.solution-process li:nth-child(5){border:1px solid var(--line)}}
.solution-systems{background:#fbfcfd;color:var(--ink)}.solution-systems .solution-heading h2{color:var(--ink)}.solution-systems .solution-heading.light>span{color:var(--muted)}.solution-system-grid article{border:1px solid #dfe8ee;background:#fff;box-shadow:0 14px 34px rgba(17,45,62,.08)}.solution-system-media{background:#e8f0f4}.solution-system-media .placeholder{background:linear-gradient(135deg,#dcebf2,#f4f8fa)}.solution-system-media .placeholder span{border-color:rgba(61,103,125,.24);background:rgba(255,255,255,.66);color:#526875}.solution-system-media>b{color:#078fba;text-shadow:none}.solution-system-grid h3{color:var(--ink)}.solution-system-grid p,.solution-system-grid li{color:var(--muted)}.solution-system-grid ul{border-top-color:var(--line)}
.solution-systems,.solution-projects,.solution-process{padding-top:44px;padding-bottom:44px}
@media(max-width:680px){.solution-systems,.solution-projects,.solution-process{padding-top:40px;padding-bottom:40px}}

/* Unified typography and coordinated pastel cards for solution detail sections */
.solution-systems .solution-heading h2,.solution-projects .solution-heading h2,.solution-process .solution-heading h2,.solution-system-grid h3,.solution-project-grid h3,.solution-process h3{color:var(--ink)}
.solution-systems .solution-heading>span,.solution-system-grid p,.solution-system-grid li,.solution-project-grid p,.solution-project-grid li,.solution-process p{color:var(--muted)}
.solution-systems .eyebrow,.solution-projects .eyebrow,.solution-process .eyebrow,.solution-system-media>b,.solution-project-grid b,.solution-process b{color:#078fba}
.solution-system-grid article,.solution-project-grid article,.solution-process li{background:var(--card-bg);border-color:var(--card-border);color:var(--ink);box-shadow:0 12px 30px rgba(33,67,86,.08)}
.solution-project-grid article{--card-bg:#edf6fa;--card-border:#d1e5ed}
.solution-process li{--card-bg:#eef1f3;--card-border:#d8dee3}
.solution-system-media,.solution-system-media .placeholder{background:linear-gradient(135deg,var(--card-media),var(--card-bg))}
.solution-project-grid article>.placeholder{background:linear-gradient(135deg,#d9ebf2,#f4f9fb)}
.solution-system-grid ul,.solution-project-grid li{border-color:rgba(91,113,126,.18)}
.solution-process-icon i{background:rgba(255,255,255,.62);color:#078fba}
.solution-system-grid article:hover,.solution-project-grid article:hover,.solution-process li:hover{border-color:#a9d7e6;box-shadow:0 16px 36px rgba(33,67,86,.12)}
.solution-system-grid article{--card-bg:#202d37;--card-border:#344956;--card-media:#2b414f;box-shadow:0 16px 36px rgba(18,34,44,.16)}
.solution-system-grid h3{color:#fff}
.solution-system-grid p,.solution-system-grid li{color:#c4cdd3}
.solution-system-grid ul{border-top-color:rgba(255,255,255,.14)}
.solution-system-body>i,.solution-system-media>b{color:#45c7ed}
.solution-system-media,.solution-system-media .placeholder{background:linear-gradient(135deg,#2d4655,#1a2832)}
.solution-system-media .placeholder span{border-color:rgba(255,255,255,.2);background:rgba(11,24,32,.46);color:#e6f0f4}
.solution-system-grid article:hover{border-color:#5abbd6;box-shadow:0 20px 42px rgba(18,34,44,.22)}
.solution-system-media{height:auto;aspect-ratio:400/215}
.solution-system-media img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:680px){.solution-system-media{height:auto}}
.solution-project-media{height:265px;overflow:hidden}
.solution-project-media img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:980px){.solution-project-media{height:100%;min-height:250px}}
@media(max-width:680px){.solution-project-media{height:230px;min-height:0}}

/* Products page — layout based on the supplied product-center reference */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.products-page{background:#303030;color:#fff;padding:0 0 82px}
.products-hero{position:relative;height:440px;overflow:hidden;background:#26333c}
.products-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,22,30,.82),rgba(12,22,30,.3) 58%,rgba(12,22,30,.08))}
.products-hero-media{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(125deg,#1d2b35,#536c7b 58%,#bdcbd2);color:rgba(255,255,255,.48);font-size:.82rem;letter-spacing:.1em}
.products-hero-media span{padding:10px 16px;border:1px solid rgba(255,255,255,.24);background:rgba(15,28,37,.2)}
.products-hero-copy{position:relative;z-index:2;display:flex;height:100%;align-items:flex-start;justify-content:center;flex-direction:column}
.products-hero-copy p{margin:0 0 8px;color:#37c8f0;font-size:.82rem;font-weight:700;letter-spacing:.2em}
.products-hero-copy h1{margin:0;font-size:clamp(2.8rem,5vw,4.7rem);line-height:1.12;letter-spacing:-.03em}
.products-hero-copy>span{max-width:570px;margin-top:16px;color:#dce5ea;font-size:1rem;line-height:1.8}
.product-category-nav-wrap{position:sticky;z-index:35;top:78px;background:rgba(255,255,255,.97);box-shadow:0 8px 24px rgba(0,0,0,.1);backdrop-filter:blur(12px)}
.product-category-nav{display:grid;grid-template-columns:repeat(11,minmax(104px,1fr));overflow-x:auto;scrollbar-width:none}
.product-category-nav::-webkit-scrollbar{display:none}
.product-category-nav a{position:relative;display:flex;min-height:76px;align-items:center;justify-content:center;flex-direction:column;border-right:1px solid #e6eaed;color:#25313a;white-space:nowrap;transition:color .2s ease,background .2s ease}
.product-category-nav a:first-child{border-left:1px solid #e6eaed}
.product-category-nav a:after{content:"";position:absolute;right:26%;bottom:0;left:26%;height:3px;background:#15b8e8;transform:scaleX(0);transition:transform .2s ease}
.product-category-nav a:hover{background:#f2f7fa;color:#078fba}
.product-category-nav a:hover:after{transform:scaleX(1)}
.product-category-nav i{margin-bottom:7px;color:#7d8991;font-size:1.05rem;transition:color .2s ease,transform .2s ease}
.product-category-nav span{font-size:.82rem;font-weight:600}
.product-category-nav a:hover i{color:#078fba;transform:translateY(-1px)}
.product-showcase{padding-top:28px;padding-bottom:58px}
.product-feature,.catalog-group{scroll-margin-top:176px}
.product-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.product-feature{position:relative;height:500px;overflow:hidden;border-radius:8px;background:#d6d6d6}
.product-feature-wide{grid-column:1/-1;height:455px}
.product-feature-banner{height:390px}
.product-feature-low{height:320px}
.product-feature-title{position:absolute;z-index:2;top:28px;left:30px;display:flex;align-items:center;gap:12px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.3)}
.product-feature-title.dark{color:#121212;text-shadow:none}
.product-feature-title i{display:block;width:4px;height:24px;background:currentColor}
.product-feature-title h2{margin:0;font-size:1.55rem;line-height:1.2;letter-spacing:.01em}
.product-feature-media{display:grid;place-items:center;width:100%;height:100%;color:rgba(255,255,255,.76);font-size:.82rem;letter-spacing:.08em}
.product-feature-media span{padding:10px 15px;border:1px solid currentColor;background:rgba(45,45,45,.12)}
.feature-composition{position:relative;display:block;isolation:isolate}
.feature-composition:before{content:"";position:absolute;inset:17% 10% 6%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.74),rgba(255,255,255,0) 69%);pointer-events:none}
.feature-composition img{position:absolute;display:block;max-width:none;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 18px 14px rgba(29,35,42,.12))}
.lighting-feature-carousel .lighting-carousel-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;pointer-events:none}
.lighting-feature-carousel .lighting-carousel-slide.is-active{opacity:1}
.lighting-feature-carousel .lighting-composite-image{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;mix-blend-mode:normal;filter:none}
.lighting-feature-carousel .lighting-carousel-title{position:absolute;z-index:2;bottom:17px;left:20px;max-width:65%;margin:0;padding:8px 12px;border-radius:5px;background:rgba(255,255,255,.75);color:#1b2429;font-size:.85rem;font-weight:600;line-height:1.3;backdrop-filter:blur(8px)}
.lighting-feature-carousel .lighting-carousel-dots{position:absolute;z-index:3;right:17px;bottom:25px;display:flex;gap:8px}
.lighting-feature-carousel .lighting-carousel-dots button{width:9px;height:9px;padding:0;border:0;border-radius:8px;background:rgba(35,48,53,.45);cursor:pointer;transition:width .2s ease,background .2s ease}
.lighting-feature-carousel .lighting-carousel-dots button.is-active{width:25px;background:#139bc2}
.lighting-feature-carousel .lighting-carousel-dots button:focus-visible{outline:2px solid #098ab0;outline-offset:3px}
.curtains-feature-carousel .curtains-carousel-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;pointer-events:none}
.curtains-feature-carousel .curtains-carousel-slide.is-active{opacity:1}
.feature-composition-curtains .curtains-composite-image{z-index:1;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;mix-blend-mode:normal;filter:none}
.curtains-feature-carousel .curtains-carousel-title{position:absolute;z-index:2;bottom:17px;left:20px;max-width:65%;margin:0;padding:8px 12px;border-radius:5px;background:rgba(255,255,255,.75);color:#1b2429;font-size:.85rem;font-weight:600;line-height:1.3;backdrop-filter:blur(8px)}
.curtains-feature-carousel .curtains-carousel-dots{position:absolute;z-index:3;right:17px;bottom:25px;display:flex;gap:8px}
.curtains-feature-carousel .curtains-carousel-dots button{width:9px;height:9px;padding:0;border:0;border-radius:8px;background:rgba(35,48,53,.45);cursor:pointer;transition:width .2s ease,background .2s ease}
.curtains-feature-carousel .curtains-carousel-dots button.is-active{width:25px;background:#139bc2}
.curtains-feature-carousel .curtains-carousel-dots button:focus-visible{outline:2px solid #098ab0;outline-offset:3px}
.feature-composition-environment .environment-composite-image{z-index:1;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;mix-blend-mode:normal;filter:none}
.furnishing-feature-carousel .furnishing-carousel-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;pointer-events:none}
.furnishing-feature-carousel .furnishing-carousel-slide.is-active{opacity:1}
.feature-composition-living .furnishing-composite-image{z-index:1;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;mix-blend-mode:normal;filter:none}
.furnishing-feature-carousel .furnishing-carousel-title{position:absolute;z-index:2;bottom:17px;left:20px;max-width:65%;margin:0;padding:8px 12px;border-radius:5px;background:rgba(255,255,255,.75);color:#1b2429;font-size:.85rem;font-weight:600;line-height:1.3;backdrop-filter:blur(8px)}
.furnishing-feature-carousel .furnishing-carousel-dots{position:absolute;z-index:3;right:17px;bottom:25px;display:flex;gap:8px}
.furnishing-feature-carousel .furnishing-carousel-dots button{width:9px;height:9px;padding:0;border:0;border-radius:8px;background:rgba(35,48,53,.45);cursor:pointer;transition:width .2s ease,background .2s ease}
.furnishing-feature-carousel .furnishing-carousel-dots button.is-active{width:25px;background:#139bc2}
.furnishing-feature-carousel .furnishing-carousel-dots button:focus-visible{outline:2px solid #098ab0;outline-offset:3px}
.feature-composition-control .feature-main{z-index:2;left:5%;top:24%;width:56%;height:60%}
.feature-composition-control .feature-side{right:7%;top:19%;width:37%;height:58%}
.feature-composition-control .feature-accent{z-index:3;right:20%;bottom:4%;width:22%;height:32%}
.audio-feature-carousel .audio-carousel-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;pointer-events:none}
.audio-feature-carousel .audio-carousel-slide.is-active{opacity:1}
.feature-composition-audio .audio-composite-image{z-index:1;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;mix-blend-mode:normal;filter:none}
.audio-feature-carousel .audio-carousel-title{position:absolute;z-index:2;bottom:20px;left:30px;max-width:65%;margin:0;color:#253039;font-size:.88rem;font-weight:600;line-height:1.4}
.audio-feature-carousel .audio-carousel-dots{position:absolute;z-index:3;right:24px;bottom:26px;display:flex;gap:8px}
.audio-feature-carousel .audio-carousel-dots button{width:9px;height:9px;padding:0;border:0;border-radius:8px;background:rgba(35,48,53,.42);cursor:pointer;transition:width .2s ease,background .2s ease}
.audio-feature-carousel .audio-carousel-dots button.is-active{width:25px;background:#139bc2}
.audio-feature-carousel .audio-carousel-dots button:focus-visible{outline:2px solid #098ab0;outline-offset:3px}
.audio-feature-carousel.is-dark .product-feature-title.dark,.audio-feature-carousel.is-dark .audio-carousel-title{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.34)}
.audio-feature-carousel.is-dark .audio-carousel-dots button:not(.is-active){background:rgba(255,255,255,.58)}
.tone-dark{background:linear-gradient(135deg,#4b4b4b,#2d2d2d 70%)}
.tone-silver{background:linear-gradient(120deg,#eef0f1,#c9ced1 58%,#aeb6bb)}
.tone-light{background:linear-gradient(135deg,#f6f6f6,#d8d8d8)}
.tone-concrete{background:linear-gradient(145deg,#dedede,#b8b8b8)}
.tone-soft{background:linear-gradient(140deg,#f1f1f1,#d2d2d2)}
.tone-white{background:linear-gradient(135deg,#f7f7f7,#dcdcdc)}
.tone-charcoal{background:linear-gradient(130deg,#42484b,#202426)}
.tone-home{background:linear-gradient(130deg,#565656,#292929)}
.tone-silver .product-feature-media,.tone-light .product-feature-media,.tone-concrete .product-feature-media,.tone-soft .product-feature-media,.tone-white .product-feature-media{color:rgba(30,30,30,.48)}
.security-carousel::after{content:"";position:absolute;z-index:1;inset:0 0 auto;height:130px;background:linear-gradient(180deg,rgba(0,0,0,.5),transparent);pointer-events:none}
.security-carousel-slides{position:relative;overflow:hidden}
.security-carousel-slide{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;opacity:0;transition:opacity .6s ease}
.security-carousel-slide.is-active{opacity:1}
.security-carousel-dots{position:absolute;z-index:3;right:0;bottom:20px;left:0;display:flex;justify-content:center;align-items:center;gap:9px}
.security-carousel-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.56);box-shadow:0 1px 5px rgba(0,0,0,.3);cursor:pointer;transition:width .2s ease,background .2s ease}
.security-carousel-dots button.is-active{width:25px;border-radius:8px;background:#fff}
.security-carousel-dots button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
@media(max-width:680px){.security-carousel-dots{bottom:14px}}
@media(prefers-reduced-motion:reduce){.security-carousel-slide,.security-carousel-dots button{transition:none}}
.product-catalog{padding-top:0}
.product-catalog>.container{width:min(calc(100% - 48px),var(--max))}
.catalog-group+.catalog-group{margin-top:56px}
.catalog-group>h2{position:relative;display:block;margin:0 0 20px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.42);color:#fff;font-size:clamp(1.55rem,2.2vw,2.15rem);font-weight:600;line-height:1.2}
.catalog-group>h2 span{position:relative;display:inline-block}
.catalog-group>h2 span:after{content:"";position:absolute;left:0;right:0;bottom:-17px;height:4px;background:#fff}
.catalog-grid{display:grid;grid-template-columns:repeat(4,285px);gap:14px;justify-content:space-between}
.catalog-grid article{display:flex;flex-direction:column;width:285px;height:380px;overflow:hidden;border-radius:8px;background:#fff;color:#151515;box-shadow:0 7px 18px rgba(0,0,0,.14);transition:transform .22s ease,box-shadow .22s ease}
.catalog-grid article:hover{transform:translateY(-3px);box-shadow:0 13px 28px rgba(0,0,0,.2)}
.catalog-media{display:grid;place-items:center;flex:0 0 326px;height:326px;margin:0;background:linear-gradient(145deg,#fff,#f1f2f3);color:#9aa0a4}
.catalog-media span{font-size:.76rem;letter-spacing:.05em}
.catalog-media img{display:block;width:82%;height:82%;object-fit:contain;mix-blend-mode:multiply}
.catalog-grid-smart-living .catalog-media,.catalog-grid-gateway .catalog-media{background:#f7f7f7}
.catalog-grid-smart-living .catalog-media img,.catalog-grid-gateway .catalog-media img{width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.catalog-grid-smart-living .catalog-media img.presence-sensor-image{width:82%;height:82%}
.catalog-grid-switches .catalog-media{background:#f7f7f7}
.catalog-grid-switches .catalog-media-photo{overflow:hidden}
.catalog-grid-switches .catalog-media-photo img{width:100%;height:100%;object-fit:cover;mix-blend-mode:normal}
.catalog-grid-switches .catalog-media-wireless img{transform:scale(1.7);transform-origin:50% 95%}
.catalog-grid-switches .catalog-media-studio img{width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.catalog-grid-network .catalog-media,.catalog-grid-voice .catalog-media{background:#f7f7f7}
.catalog-grid-network .catalog-media img,.catalog-grid-voice .catalog-media img{width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.catalog-grid h3{flex:0 0 54px;min-height:54px;display:grid;place-items:center;margin:0;padding:10px 12px;color:#111;font-size:1.08rem;font-weight:600;text-align:center}
.catalog-grid-three{grid-template-columns:repeat(3,285px);justify-content:start;column-gap:24px}
@media(min-width:981px) and (max-width:1229px){.catalog-grid,.catalog-grid-three{grid-template-columns:repeat(3,285px)}}
@media(max-width:980px){.product-feature{height:420px}.product-feature-wide{height:360px}.product-feature-banner{height:320px}.product-feature-low{height:280px}.catalog-grid,.catalog-grid-three{grid-template-columns:repeat(2,285px)}.catalog-media{height:326px}}
@media(max-width:680px){.products-page{padding:0 0 58px}.products-hero{height:370px}.products-hero:after{background:linear-gradient(90deg,rgba(12,22,30,.78),rgba(12,22,30,.24))}.products-hero-copy{justify-content:flex-end;padding-bottom:48px}.products-hero-copy h1{font-size:2.65rem}.products-hero-copy>span{max-width:18em;font-size:.92rem}.product-category-nav-wrap{top:68px}.product-category-nav{width:100%;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:96px}.product-category-nav a{min-height:64px}.product-category-nav i{margin-bottom:5px;font-size:.96rem}.product-category-nav span{font-size:.78rem}.products-page .product-showcase{padding-top:16px;padding-bottom:44px}.product-feature-grid{grid-template-columns:1fr;gap:8px}.product-feature,.product-feature-wide,.product-feature-banner,.product-feature-low{grid-column:auto;height:320px;scroll-margin-top:148px}.product-feature-title{top:20px;left:20px}.product-feature-title i{width:3px;height:20px}.product-feature-title h2{font-size:1.3rem}.product-catalog>.container{width:min(calc(100% - 32px),1120px)}.catalog-group{scroll-margin-top:148px}.catalog-group+.catalog-group{margin-top:42px}.catalog-group>h2{margin-bottom:15px;padding-bottom:12px;font-size:1.55rem}.catalog-group>h2 span:after{bottom:-15px;height:3px}.catalog-grid,.catalog-grid-three{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.catalog-grid article{width:100%;height:auto}.catalog-media{flex:0 0 160px;height:160px}.catalog-grid h3{flex:0 0 50px;min-height:50px;padding:9px 7px;font-size:1rem}}
@media(max-width:420px){.catalog-grid,.catalog-grid-three{grid-template-columns:1fr}.catalog-media{flex-basis:220px;height:220px}}
@media(max-width:680px){.lighting-feature-carousel .lighting-carousel-title{bottom:13px;left:14px;max-width:68%;padding:6px 9px;font-size:.72rem}.lighting-feature-carousel .lighting-carousel-dots{right:13px;bottom:21px;gap:6px}}
@media(max-width:680px){.curtains-feature-carousel .curtains-carousel-title{bottom:13px;left:14px;max-width:68%;padding:6px 9px;font-size:.72rem}.curtains-feature-carousel .curtains-carousel-dots{right:13px;bottom:21px;gap:6px}}
@media(max-width:680px){.furnishing-feature-carousel .furnishing-carousel-title{bottom:13px;left:14px;max-width:68%;padding:6px 9px;font-size:.72rem}.furnishing-feature-carousel .furnishing-carousel-dots{right:13px;bottom:21px;gap:6px}}
@media(max-width:680px){.feature-composition-audio .audio-composite-image{object-position:59% center}.audio-feature-carousel .audio-carousel-title{bottom:14px;left:20px;max-width:69%;font-size:.76rem}.audio-feature-carousel .audio-carousel-dots{right:16px;bottom:19px;gap:6px}}
@media(prefers-reduced-motion:reduce){.lighting-carousel-slide,.lighting-carousel-dots button,.curtains-carousel-slide,.curtains-carousel-dots button,.furnishing-carousel-slide,.furnishing-carousel-dots button,.audio-carousel-slide,.audio-carousel-dots button{transition:none}}

/* Premium About page */
.about-brand-page{background:#fff}
.about-brand-hero{position:relative;height:560px;overflow:hidden;color:#fff;background:#18252e}
.about-brand-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,18,25,.84),rgba(8,18,25,.35) 58%,rgba(8,18,25,.08))}
.about-brand-hero-media{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-brand-hero-copy{position:relative;z-index:2;display:flex;height:100%;justify-content:center;align-items:flex-start;flex-direction:column}
.about-brand-hero-copy p,.about-section-heading>span,.about-story-grid header>span,.about-local-copy>span{margin:0 0 15px;color:#36c6e9;font-size:.76rem;font-weight:700;letter-spacing:.2em}
.about-brand-hero-copy h1{margin:0;font-size:clamp(3rem,5.5vw,5.3rem);font-weight:500;line-height:1.13;letter-spacing:-.045em}
.about-brand-hero-copy>span{max-width:560px;margin-top:22px;color:#d4e0e6;font-size:1.05rem;letter-spacing:.02em}
.about-story-section{padding:108px 0 96px}
.about-story-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:100px;padding-bottom:64px;border-bottom:1px solid #dfe6e9}
.about-story-grid h2,.about-section-heading h2,.about-local-copy h2{margin:0;color:#121b22;font-size:clamp(2.15rem,3.7vw,3.5rem);font-weight:500;line-height:1.28;letter-spacing:-.035em}
.about-story-copy p{margin:0;color:#68727d;font-size:1rem;line-height:1.95}
.about-story-copy .lead{margin-bottom:22px;color:#26353f;font-size:1.18rem;line-height:1.85}
.about-belief-row{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:56px;border-top:1px solid #dfe6e9;border-bottom:1px solid #dfe6e9}
.about-belief-row article{padding:34px 44px 38px 0}
.about-belief-row article+article{padding-left:44px;border-left:1px solid #dfe6e9}
.about-belief-row span{color:#078fba;font-size:.7rem;font-weight:700;letter-spacing:.17em}
.about-belief-row h3{margin:8px 0 12px;font-size:1.45rem;font-weight:600}
.about-belief-row p{margin:0;color:#68727d;line-height:1.85}
.about-metrics{display:grid;grid-template-columns:repeat(4,1fr);margin-top:42px;background:#f2f6f7}
.about-metrics article{padding:30px 24px;text-align:center}
.about-metrics article+article{border-left:1px solid #dce5e8}
.about-metrics strong{display:block;color:#12303d;font-size:2.35rem;line-height:1.15}
.about-metrics strong span{margin-left:3px;color:#0799c4;font-size:.85rem}
.about-metrics p{margin:8px 0 0;color:#68727d;font-size:.84rem}
.about-tech-section{padding:104px 0;background:#14212a;color:#fff}
.about-section-heading{margin-bottom:48px}
.about-section-heading.light h2{color:#fff}
.about-section-heading>p{margin:16px 0 0;color:#68727d;line-height:1.85}
.about-section-heading.light>p{color:#9dabb4}
.about-tech-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #3a4a54;border-bottom:1px solid #3a4a54}
.about-tech-grid article{position:relative;min-height:430px;padding:42px 38px 38px}
.about-tech-grid article+article{border-left:1px solid #3a4a54}
.about-tech-grid b{position:absolute;top:34px;right:34px;color:#54656f;font-size:.8rem;letter-spacing:.16em}
.about-tech-grid i{color:#38c5e8;font-size:1.7rem}
.about-tech-grid h3{margin:54px 0 0;font-size:2.8rem;font-weight:500;letter-spacing:.02em}
.about-tech-grid h4{margin:4px 0 18px;color:#dce6eb;font-size:1.05rem;font-weight:500}
.about-tech-grid p{margin:0;color:#9eacb5;line-height:1.85}
.about-tech-grid span{position:absolute;right:38px;bottom:32px;left:38px;padding-top:16px;border-top:1px solid #34444e;color:#4fc8e5;font-size:.78rem;letter-spacing:.08em}
.about-strength-section{padding:108px 0}
.about-strength-layout,.about-business-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:90px;align-items:start}
.about-strength-layout>.about-section-heading,.about-business-layout>.about-section-heading{margin:0;position:sticky;top:120px}
.about-strength-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #dce4e8}
.about-strength-grid article{display:grid;grid-template-columns:48px 1fr;gap:20px;min-height:210px;padding:34px 28px 32px 0;border-bottom:1px solid #dce4e8}
.about-strength-grid article:nth-child(even){padding-left:32px;border-left:1px solid #dce4e8}
.about-strength-grid b{color:#12a9d2;font-size:.72rem;letter-spacing:.12em}
.about-strength-grid h3{margin:0 0 11px;font-size:1.3rem}
.about-strength-grid p{margin:0;color:#68727d;line-height:1.8}
.about-business-section{padding:104px 0;background:#f2f5f6}
.about-business-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.about-business-grid article{min-height:230px;padding:30px 25px;border:1px solid #dfe6e9;background:#fff;transition:transform .22s ease,box-shadow .22s ease}
.about-business-grid article:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(25,51,65,.1)}
.about-business-grid i{color:#0799c4;font-size:1.4rem}
.about-business-grid h3{margin:42px 0 10px;font-size:1.18rem}
.about-business-grid p{margin:0;color:#68727d;font-size:.9rem;line-height:1.75}
.about-local-section{padding:108px 0;background:#fff}
.about-local-grid{display:grid;grid-template-columns:1.1fr .9fr;min-height:500px}
.about-local-visual{position:relative;min-height:500px;overflow:hidden;background:#dbe5e9}
.about-local-visual img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-local-copy{display:flex;padding:62px 58px;justify-content:center;align-items:flex-start;flex-direction:column;background:#0d5961;color:#fff}
.about-local-copy h2{color:#fff}
.about-local-copy>p{margin:24px 0 34px;color:#c8dfe1;line-height:1.9}
.about-local-copy>div{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:8px 14px;align-items:end;padding-top:24px;border-top:1px solid rgba(255,255,255,.25)}
.about-local-copy strong{font-size:2rem;line-height:1;color:#fff}
.about-local-copy>div span{color:#a9ced2;font-size:.78rem}
@media(max-width:980px){.about-story-grid,.about-strength-layout,.about-business-layout{grid-template-columns:1fr;gap:44px}.about-strength-layout>.about-section-heading,.about-business-layout>.about-section-heading{position:static}.about-tech-grid{grid-template-columns:1fr}.about-tech-grid article{min-height:330px}.about-tech-grid article+article{border-top:1px solid #3a4a54;border-left:0}.about-business-grid{grid-template-columns:repeat(2,1fr)}.about-local-grid{grid-template-columns:1fr}.about-local-visual{min-height:420px}.about-local-copy{padding:56px 48px}.about-section-heading{max-width:760px}}
@media(max-width:680px){.about-brand-hero{height:460px}.about-brand-hero-copy{justify-content:flex-end;padding-bottom:54px}.about-brand-hero-copy h1{font-size:2.8rem}.about-brand-hero-copy>span{max-width:18em;font-size:.94rem}.about-story-section,.about-tech-section,.about-strength-section,.about-business-section,.about-local-section{padding:68px 0}.about-story-grid{gap:30px;padding-bottom:44px}.about-story-grid h2,.about-section-heading h2,.about-local-copy h2{font-size:2rem}.about-story-copy .lead{font-size:1.05rem}.about-belief-row{grid-template-columns:1fr;margin-top:42px}.about-belief-row article,.about-belief-row article+article{padding:28px 0;border-left:0}.about-belief-row article+article{border-top:1px solid #dfe6e9}.about-metrics{grid-template-columns:1fr 1fr}.about-metrics article:nth-child(3){border-top:1px solid #dce5e8;border-left:0}.about-metrics article:nth-child(4){border-top:1px solid #dce5e8}.about-metrics strong{font-size:1.9rem}.about-tech-grid article{min-height:350px;padding:34px 26px}.about-tech-grid span{right:26px;left:26px}.about-strength-grid{grid-template-columns:1fr}.about-strength-grid article,.about-strength-grid article:nth-child(even){min-height:auto;padding:28px 0;border-left:0}.about-business-grid{grid-template-columns:1fr}.about-business-grid article{min-height:190px}.about-business-grid h3{margin-top:32px}.about-local-visual{min-height:300px}.about-local-copy{padding:38px 26px}.about-local-copy>div{grid-template-columns:auto 1fr}.about-local-copy strong:nth-of-type(2){margin-top:14px}}

/* About page aligned with the Solutions visual system */
.about-brand-hero{height:500px}
.about-brand-hero-copy h1{font-size:clamp(2.35rem,4.2vw,4.5rem);font-weight:600;line-height:1.16}
.about-brand-hero-copy>span{font-size:1rem}
.about-story-section,.about-tech-section,.about-strength-section,.about-business-section,.about-local-section{padding:64px 0}
.about-story-section,.about-strength-section,.about-local-section{background:#fff}
.about-tech-section,.about-business-section{background:#fbfcfd;color:var(--ink)}
.about-story-grid h2,.about-section-heading h2,.about-local-copy h2{font-size:clamp(1.75rem,2.6vw,2.6rem);font-weight:600;line-height:1.25;letter-spacing:-.025em}
.about-section-heading{margin-bottom:40px}
.about-section-heading.light h2{color:var(--ink)}
.about-section-heading.light>p,.about-section-heading>p{color:var(--muted);font-size:1rem}
.about-story-grid{gap:64px;padding-bottom:5px;border-bottom:0}
.about-story-copy .lead{font-size:1.05rem;line-height:1.9}
.about-story-copy p,.about-belief-row p,.about-strength-grid p,.about-business-grid p,.about-local-copy>p{font-size:.95rem;color:var(--muted)}
.about-belief-row{margin-top:40px}
.about-belief-row h3{font-size:1.3rem}
.about-metrics{margin-top:32px;background:#f3f6f8}
.about-tech-grid{gap:18px;border:0}
.about-tech-grid article,.about-tech-grid article+article{min-height:390px;padding:34px 30px;border:1px solid #344956;border-radius:8px;background:#202d37;box-shadow:0 16px 36px rgba(18,34,44,.16)}
.about-tech-grid b{top:28px;right:28px}
.about-tech-grid h3{margin-top:38px;color:#fff;font-size:1.45rem;font-weight:600}
.about-tech-grid h4{font-size:1rem}
.about-tech-grid p{color:#c4cdd3;font-size:.95rem}
.about-tech-grid span{right:30px;bottom:26px;left:30px;color:#45c7ed}
.about-strength-layout,.about-business-layout{gap:64px}
.about-strength-grid h3,.about-business-grid h3{font-size:1.3rem}
.about-strength-grid article{grid-template-columns:1fr}
.about-business-grid article{border-radius:8px;box-shadow:0 12px 30px rgba(33,67,86,.07)}
.about-local-copy{background:#202d37}
.about-local-copy>p{color:#c4cdd3}
@media(max-width:680px){.about-brand-hero{height:430px}.about-brand-hero-copy h1{font-size:2.35rem}.about-story-section,.about-tech-section,.about-strength-section,.about-business-section,.about-local-section{padding:40px 0}.about-story-grid h2,.about-section-heading h2,.about-local-copy h2{font-size:1.75rem}.about-story-grid{gap:26px;padding-bottom:36px}.about-section-heading{margin-bottom:30px}.about-tech-grid article,.about-tech-grid article+article{min-height:330px}.about-strength-grid h3,.about-business-grid h3,.about-belief-row h3{font-size:1.2rem}}

/* About introduction with reserved video area */
.about-story-heading{margin-bottom:38px;text-align:center}
.about-story-heading span,.about-story-copy>span{display:block;margin-bottom:8px;color:#078fba;font-size:.76rem;font-weight:700;letter-spacing:.18em}
.about-story-heading h2{margin:0;color:var(--ink);font-size:clamp(1.75rem,2.6vw,2.6rem);line-height:1.25}
.about-story-grid{grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.about-video-frame{position:relative;overflow:hidden;aspect-ratio:16/9;border-radius:8px;background:#14212a;box-shadow:0 18px 42px rgba(17,45,62,.16)}
.about-video-frame video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;background:#14212a}
.about-story-copy h2{margin:0 0 22px}
.about-story-copy .lead{margin-bottom:18px}
.about-story-copy p+p{margin-top:14px}
.about-story-copy strong{color:var(--ink);font-weight:600}
@media(max-width:980px){.about-story-grid{grid-template-columns:1fr;gap:34px}.about-video-frame{width:100%}}
@media(max-width:680px){.about-story-heading{margin-bottom:26px}.about-video-frame{border-radius:6px}.about-story-copy h2{margin-bottom:18px}}

/* Keep About and Contact hero typography consistent */
.about-brand-hero-copy p{margin:0 0 6px;color:var(--blue);font-size:.82rem;font-weight:700;letter-spacing:.18em}
.about-brand-hero-copy h1{margin:0;font-size:clamp(2.25rem,4vw,3.6rem);font-weight:700;line-height:1.2;letter-spacing:0}
.about-brand-hero-copy>span{margin-top:12px;font-size:1rem}
@media(max-width:680px){.about-brand-hero-copy h1{font-size:clamp(2.25rem,4vw,3.6rem)}}

/* Products hero aligned with Contact hero */
.products-hero{height:470px}
.products-hero:after{display:none;content:none}
.products-hero-media{display:block;width:100%;height:100%;object-fit:cover;opacity:1;filter:none}
.products-hero-copy{color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.58)}
.products-hero-copy p{margin:0 0 6px;color:var(--blue);font-size:.82rem;font-weight:700;letter-spacing:.18em}
.products-hero-copy h1{margin:0;font-size:clamp(2.25rem,4vw,3.6rem);font-weight:700;line-height:1.2;letter-spacing:0}
.products-hero-copy>span{margin-top:12px;color:#fff;font-size:1rem;line-height:1.65}
@media(max-width:680px){.products-hero{height:300px}.products-hero-copy{justify-content:center;padding-bottom:0}.products-hero-copy h1{font-size:clamp(2.25rem,4vw,3.6rem)}}

/* Home page product matrix, carried over from the original homepage. */
.case-feature{overflow:hidden;border-radius:8px;background:#25313b}
.case-feature-slides,.case-feature-slide{position:absolute;inset:0}
.case-feature-slide{opacity:0;transition:opacity .85s ease}
.case-feature-slide.is-active{opacity:1}
.case-feature-slide img{display:block;width:100%;height:100%;object-fit:cover}
.case-feature::after{z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(4,11,17,.83),rgba(4,11,17,.18) 60%,transparent)}
.case-feature .case-overlay{max-width:640px}
.case-feature .case-overlay small{color:#66d6f4;font-size:.78rem;font-weight:700;letter-spacing:.13em}
.case-feature .case-overlay h2{margin:10px 0 8px;font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.25}
.case-feature .case-overlay p{max-width:590px;margin:0;color:#e5ebef;font-size:.94rem;line-height:1.7}
.case-feature-dots{position:absolute;z-index:3;right:45px;bottom:44px;display:flex;align-items:center;gap:9px}
.case-feature-dots button{width:22px;height:4px;padding:0;border:0;border-radius:4px;background:rgba(255,255,255,.55);cursor:pointer;transition:width .25s ease,background .25s ease}
.case-feature-dots button.is-active{width:42px;background:#fff}
.case-feature-dots button:focus-visible{outline:2px solid var(--blue);outline-offset:5px}
@media(max-width:680px){.case-feature .case-overlay{right:24px;bottom:28px}.case-feature .case-overlay h2{font-size:1.45rem}.case-feature .case-overlay p{font-size:.84rem}.case-feature-dots{top:22px;right:22px;bottom:auto}.case-feature-dots button{width:16px}.case-feature-dots button.is-active{width:28px}}
@media(prefers-reduced-motion:reduce){.case-feature-slide,.case-feature-dots button{transition:none}}
.case-projects{padding:86px 0 112px;background:#f7f8fa}
body[data-page="cases"] .page-intro{padding:calc(var(--nav-h) + 28px) 0 26px}
body[data-page="cases"] .page-intro>p{margin:0 0 8px}
body[data-page="cases"] .page-intro h1{margin:0 0 9px}
body[data-page="cases"] .page-intro span{display:block;max-width:640px}
.case-projects-heading{max-width:760px;margin:0 0 48px}
.case-projects-heading h2{margin:9px 0 11px;font-size:clamp(1.8rem,2.8vw,2.7rem);line-height:1.25;letter-spacing:-.02em}
.case-projects-heading p{margin:0;color:var(--muted);font-size:1rem}
.case-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px;row-gap:54px}
.case-project-media{min-width:0}
.case-project-image{position:relative;display:block;width:100%;padding:0;overflow:hidden;border:0;border-radius:7px;background:#e9eef2;cursor:zoom-in}
.case-project-cover{aspect-ratio:1.62}
.case-project-image img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.case-project-image:hover img{transform:scale(1.035)}
.case-project-image:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.case-project-thumbs{display:grid;grid-template-columns:repeat(var(--thumb-count),minmax(0,1fr));gap:8px;margin-top:8px;aspect-ratio:5 / 1}
.case-project-thumbs .case-project-image{height:100%;border-radius:5px}
.case-project-caption{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;min-height:112px;padding:21px 0 22px;border-bottom:1px solid #dce3e8}
.case-project-caption>div{min-width:0}
.case-project-caption>div>span{color:#2e9fc5;font-size:.68rem;font-weight:700;letter-spacing:.17em}
.case-project-caption h3{margin:6px 0 0;font-size:clamp(1.16rem,1.7vw,1.52rem);font-weight:650;line-height:1.4}
.case-project-caption>button{flex:0 0 auto;padding:5px 0;border:0;border-bottom:1px solid #313d48;background:none;color:#313d48;font-size:.83rem;cursor:pointer;white-space:nowrap}
.case-project-caption>button:hover{color:#078fba;border-color:#078fba}
.case-project-caption>button:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.case-lightbox{width:min(1100px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 32px);padding:0;overflow:hidden;border:0;border-radius:10px;background:#111820;color:#fff;box-shadow:0 28px 90px rgba(0,0,0,.4)}
.case-lightbox::backdrop{background:rgba(4,10,16,.88)}
.case-lightbox-head,.case-lightbox-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 22px}
.case-lightbox-head{font-weight:600}
.case-lightbox-head button{width:36px;height:36px;border:0;background:none;color:#fff;font-size:2rem;line-height:1;cursor:pointer}
.case-lightbox-stage{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;min-height:200px;background:#0a0e13}
.case-lightbox-stage img{display:block;max-width:100%;max-height:calc(100vh - 165px);margin:auto;object-fit:contain}
.case-lightbox-stage button{align-self:stretch;border:0;background:rgba(255,255,255,.04);color:#fff;font-size:2rem;cursor:pointer}
.case-lightbox-stage button:hover{background:rgba(255,255,255,.16)}
.case-lightbox-foot{color:#aab5be;font-size:.78rem}
@media(max-width:800px){.case-project-grid{column-gap:18px}.case-project-caption{align-items:flex-start;flex-direction:column;gap:9px}.case-project-caption h3{font-size:1.18rem}}
@media(max-width:680px){body[data-page="cases"] .page-intro{padding:calc(var(--nav-h) + 22px) 0 24px}.case-projects{padding:62px 0 72px}.case-projects-heading{margin-bottom:30px}.case-projects-heading h2{font-size:1.75rem}.case-projects-heading p{font-size:.92rem}.case-project-grid{grid-template-columns:1fr;row-gap:42px}.case-project-cover{aspect-ratio:1.44}.case-project-caption{min-height:0;padding-top:16px}.case-project-thumbs{gap:6px;margin-top:6px}.case-lightbox-stage{grid-template-columns:34px minmax(0,1fr) 34px}.case-lightbox-head,.case-lightbox-foot{padding:10px 12px}.case-lightbox-foot span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.case-project-image img{transition:none}}
.site-footer .qr{width:180px;height:180px;min-height:0;border:0;background:transparent}
.site-footer .qr img{display:block;width:180px;height:180px;max-width:none}
.hero-home .hero-slides,.hero-home .hero-slide{position:absolute;inset:0}
.hero-home .hero-slide{opacity:0;transition:opacity 1.1s ease}
.hero-home .hero-slide.is-active{opacity:1}
.hero-home .hero-slide img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1);transition:transform 6.5s linear}
.hero-home .hero-slide.is-active img{transform:scale(1.08)}
.hero-home::after{z-index:1}
.hero-home .hero-dots{position:absolute;z-index:3;right:24px;bottom:28px;left:24px;display:flex;justify-content:center;gap:10px}
.hero-home .hero-dots button{width:11px;height:11px;padding:0;border:1px solid rgba(255,255,255,.85);border-radius:50%;background:rgba(255,255,255,.35);box-shadow:0 1px 5px rgba(0,0,0,.35);cursor:pointer;transition:background .25s ease,transform .25s ease}
.hero-home .hero-dots button.is-active{background:#fff;transform:scale(1.25)}
.hero-home .hero-dots button:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.hero-home .hero-motion-toggle{position:absolute;z-index:4;right:24px;bottom:20px;display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 12px;border:1px solid rgba(255,255,255,.65);border-radius:4px;background:rgba(8,15,24,.68);color:#fff;font-size:13px;font-weight:600;cursor:pointer}
.hero-home .hero-motion-toggle[hidden]{display:none}
.hero-home .hero-motion-toggle:hover,.hero-home .hero-motion-toggle:focus-visible{border-color:#fff;background:rgba(8,15,24,.88)}
@media(max-width:680px){.hero-home .hero-motion-toggle{right:16px;bottom:62px}}
@media(prefers-reduced-motion:reduce){.hero-home .hero-slide,.hero-home .hero-slide img,.hero-home .hero-dots button{transition:none}.hero-home .hero-slide.is-active img{transform:none}}
@media(prefers-reduced-motion:reduce){.hero-home.motion-opt-in .hero-slide{transition:opacity 1.1s ease}.hero-home.motion-opt-in .hero-slide img{transition:transform 6.5s linear}.hero-home.motion-opt-in .hero-slide.is-active img{transform:scale(1.08)}.hero-home.motion-opt-in .hero-dots button{transition:background .25s ease,transform .25s ease}}
.home-scenes .feature-card{border-radius:12px}
.home-scenes .home-scene-photo{display:block;width:100%;height:390px;object-fit:cover}
.home-scenes .feature-wide .home-scene-photo{height:530px}
.home-scenes .feature-card::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.5));pointer-events:none}
.home-scenes .card-copy{z-index:1}
@media(max-width:680px){.home-scenes .feature-card .home-scene-photo{height:350px}}
.product-matrix{padding:48px 0 64px;background:#f5f6f8}
.home-scenes,.product-matrix>.container{width:min(calc(100% - 40px),1500px)}
.matrix-heading{max-width:820px;margin:0 auto 34px;text-align:center}
.product-matrix .section-title{margin:10px 0 14px;color:#1a1a1a;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.25;letter-spacing:.03em}
.product-matrix .section-lead{max-width:720px;margin:0 auto;color:var(--muted);text-align:center}
.matrix-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;justify-content:center}
.matrix-card{position:relative;display:flex;width:100%;height:350px;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;padding:0;border:1px solid #e8e8e8;border-radius:6px;background:#fff;color:var(--ink);text-align:center;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.matrix-card:hover{transform:translateY(-4px);border-color:#c0c0c0;box-shadow:0 12px 32px rgba(0,0,0,.2)}
.matrix-card img{width:auto;height:auto;max-width:100%;max-height:350px;object-fit:contain;margin:0}
.matrix-text{position:absolute;right:16px;bottom:18px;left:16px}
.matrix-text h3{margin:0 0 6px;color:var(--ink);font-size:1.1rem;font-weight:600;letter-spacing:.02em}
.matrix-text p{margin:0;color:#999;font-size:.84rem;line-height:1.5}
@media(max-width:991px){.matrix-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.matrix-card{height:286px;padding:20px 10px 16px}.matrix-card img{max-width:120px;max-height:120px}}
@media(max-width:767px){.product-matrix{padding:40px 0 48px}.home-scenes,.product-matrix>.container{width:calc(100% - 28px)}.matrix-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.matrix-card{height:248px;padding:16px 8px 14px}.matrix-card img{max-width:96px;max-height:96px}}
