:root{--navy:#041a38;--navy2:#071226;--blue:#0788ff;--cyan:#15b8ff;--white:#fff;--muted:#aebbd0;--line:#dce5ef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:#0b1a31;background:#fff}a{text-decoration:none;color:inherit}.top{height:86px;padding:8px 4vw;display:flex;align-items:center;gap:32px;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);box-shadow:0 1px 20px #00152a18}.brand img{width:165px;height:68px;object-fit:contain}.top nav{display:flex;gap:25px;margin-left:auto;font-size:13px;font-weight:700}.top nav a:hover{color:var(--blue)}.head-actions{display:flex;align-items:center;gap:15px}.phone{font-weight:800;color:var(--navy)}.button{display:inline-block;border:0;border-radius:6px;background:linear-gradient(135deg,var(--blue),#0064dc);color:#fff;padding:15px 23px;font-weight:800;box-shadow:0 8px 24px #007fff30;cursor:pointer}.button.small{padding:11px 15px;font-size:12px}.button.ghost{background:transparent;border:1px solid #ffffff80;box-shadow:none}.menu{display:none;background:none;border:0;font-size:26px}.hero{min-height:670px;position:relative;overflow:hidden;background:#03152e;color:#fff;display:flex;align-items:center;padding:70px 6vw}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,#03142ef2 0%,#041a38d4 42%,#00152a50 70%),url('https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2200&q=90') center/cover}.hero-copy{position:relative;z-index:2;max-width:690px}.eyebrow{font-size:12px;letter-spacing:2.1px;font-weight:800;color:#d7eaff}.eyebrow.blue{color:var(--blue)}h1{font:800 clamp(44px,6vw,82px)/.92 Manrope,sans-serif;letter-spacing:-4px;margin:18px 0 24px}h1 em{font-style:normal;color:#18a6ff}.hero p{font-size:18px;line-height:1.6;max-width:600px;color:#d8e2f0}.hero-actions{display:flex;gap:12px;margin-top:30px}.trust{display:flex;gap:28px;margin-top:45px;color:#91a8c5;font-size:10px;letter-spacing:1.4px;font-weight:800}.hero-card{position:absolute;z-index:3;right:5vw;bottom:65px;width:315px;padding:20px;background:#07101ed9;border:1px solid #ffffff22;border-radius:16px;backdrop-filter:blur(10px);box-shadow:0 25px 80px #0009}.hero-card img{width:150px;background:#000}.hero-card p{margin:14px 0 6px;color:#fff;font-weight:800}.hero-card small{color:#9fb2c9}.service-strip{display:grid;grid-template-columns:repeat(6,1fr);background:#051a38;color:#fff;padding:20px 3vw;border-top:1px solid #188fff55}.service-strip div{display:flex;align-items:center;justify-content:center;gap:10px;border-right:1px solid #ffffff1c;color:#19a4ff;font-size:24px}.service-strip div:last-child{border:0}.service-strip span{font-size:10px;line-height:1.4;color:#fff;font-weight:700}.section{padding:90px 5vw}.section-head{max-width:780px;margin:0 auto 45px;text-align:center}.section-head h2,.builders h2,.contact h2,.control h2,.legacy h2{font:800 clamp(32px,4vw,54px)/1.05 Manrope,sans-serif;letter-spacing:-2px;margin:10px 0 16px}.section-head p,.builders p,.contact p,.legacy p{color:#5b6a7c;line-height:1.7}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.cards article{height:410px;border-radius:12px;overflow:hidden;position:relative;background:linear-gradient(0deg,#001329f2 0%,transparent 70%),var(--img) center/cover}.cards article div{position:absolute;left:22px;right:22px;bottom:24px;color:#fff}.cards h3{font:800 22px/1.1 Manrope;margin:0 0 8px}.cards p{font-size:13px;color:#dce7f5;line-height:1.5}.cards a{color:#40b8ff;font-size:12px;font-weight:800}.control{min-height:660px;background:#020b17;color:#fff;display:grid;grid-template-columns:48% 52%;overflow:hidden}.control-copy{padding:80px 6vw;align-self:center}.control-copy>img{display:block;width:210px;margin:18px 0 30px;background:#000}.control-copy p{color:#b9c7d8;line-height:1.7}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.chips span{border:1px solid #1b4f7e;background:#071a31;border-radius:99px;padding:9px 13px;font-size:11px}.control-image{background:linear-gradient(90deg,#020b17 0%,transparent 25%),url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1500&q=90') center/cover}.builders{padding:80px 6vw;display:grid;grid-template-columns:1fr 1.3fr;gap:70px;align-items:center;background:#f5f9fd}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.stats div{background:#fff;padding:28px;border-radius:12px;box-shadow:0 12px 30px #0521440d}.stats b{font:800 30px Manrope;color:#179cff;display:block}.stats span{font-weight:700;font-size:13px}.legacy{padding:90px 6vw;color:#fff;background:linear-gradient(90deg,#051a38f2,#051a38b5),url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?auto=format&fit=crop&w=1800&q=85') center/cover}.legacy>div{max-width:700px}.legacy p{color:#c4d2e4;font-size:17px}.contact{padding:90px 6vw;display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-links{display:flex;flex-direction:column;gap:8px;font-weight:800;color:#087de6!important}.contact form{display:flex;flex-direction:column;gap:12px}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}input,select,textarea{width:100%;border:1px solid #d7e0e9;background:#f8fafc;border-radius:7px;padding:15px;font:inherit}textarea{min-height:120px;resize:vertical}footer{background:#020c1a;color:#b7c6d8;padding:30px 5vw;display:flex;align-items:center;gap:18px;flex-wrap:wrap}footer img{width:100px;height:62px;object-fit:contain;background:#fff;border-radius:4px}footer div{display:flex;flex-direction:column;font-size:12px}.social{margin-left:auto;flex-direction:row;gap:18px!important}.social a:hover{color:#21a7ff}footer small{width:100%;border-top:1px solid #ffffff1a;padding-top:18px;color:#667d99}@media(max-width:980px){.top nav,.head-actions{display:none}.menu{display:block;margin-left:auto}.nav-open .top nav{display:flex;position:absolute;top:86px;left:0;right:0;background:#fff;padding:25px;flex-direction:column;box-shadow:0 20px 30px #00152a22}.hero-card{display:none}.service-strip{grid-template-columns:repeat(3,1fr);gap:20px}.cards{grid-template-columns:repeat(2,1fr)}.control{grid-template-columns:1fr}.control-image{min-height:430px}.builders,.contact{grid-template-columns:1fr}.top{height:78px}.brand img{height:60px}}@media(max-width:600px){.hero{min-height:650px;padding:60px 24px}.hero-bg{background:linear-gradient(90deg,#03142ef5,#03142eb5),url('https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=900&q=85') center/cover}h1{letter-spacing:-2px}.hero-actions{flex-direction:column;align-items:flex-start}.trust{flex-direction:column;gap:8px}.service-strip{grid-template-columns:repeat(2,1fr)}.service-strip div{justify-content:flex-start;padding-left:12px}.cards{grid-template-columns:1fr}.cards article{height:360px}.section,.control-copy,.builders,.contact,.legacy{padding:65px 24px}.stats{grid-template-columns:1fr 1fr}.row{grid-template-columns:1fr}.social{margin-left:0;width:100%}}

.page-hero{padding:95px 6vw;background:linear-gradient(110deg,#03142ef5,#052f5de0),url('https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=1800&q=80') center/cover;color:white}.page-hero h1{max-width:950px;line-height:1.05}.page-hero p{max-width:680px;font-size:19px;line-height:1.6;color:#d9e7f5;margin-bottom:30px}.page-hero.compact{padding:75px 6vw}.page-hero.compact h1{font-size:clamp(42px,5vw,68px)}.back{display:block;margin-bottom:36px;color:#a9d8ff}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{min-height:270px;padding:32px;background:#f3f8fd;border:1px solid #d9e8f6;border-radius:10px;display:flex;flex-direction:column}.service-card span{color:#0b86ee;font-weight:800}.service-card h3{font:800 24px Manrope,Inter,sans-serif;margin:25px 0 10px}.service-card p{line-height:1.6;color:#4f6278}.service-card b{margin-top:auto;color:#067bdc}.service-card:hover{border-color:#168fea;box-shadow:0 15px 35px #041a3817}.bottom-cta{padding:65px 6vw;background:#051a38;color:#fff}.bottom-cta p{color:#c8d6e5}.detail,.request-layout{padding:70px 6vw;display:grid;grid-template-columns:1fr 1fr;gap:9vw}.detail h2,.request-layout h2{font:800 clamp(30px,4vw,48px)/1.1 Manrope,Inter,sans-serif}.detail p,.request-layout p{line-height:1.7;color:#4e6176}.detail aside{background:#eff6fd;padding:35px;border-radius:10px}.detail aside a,.request-layout a{color:#087ee6;font-weight:700}.request-layout form{display:grid;gap:15px;background:#f5f9fd;padding:30px;border-radius:12px}.request-layout label{font-size:14px;font-weight:700;display:grid;gap:7px}.request-layout input,.request-layout select,.request-layout textarea{background:white}.form-note{font-size:13px!important;margin:0}.path-switch{display:flex;gap:15px;flex-wrap:wrap;margin:30px 0}.path-switch a{border-bottom:2px solid #0788ff;padding-bottom:8px}.booking-choices{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-choices article{border:1px solid #dce5ef;background:#f7fbff;padding:30px;border-radius:12px}.booking-choices h3{font:800 25px Manrope,Inter,sans-serif}.booking-choices p{min-height:90px}.social span{color:#93a4b9}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #13a9ff;outline-offset:3px}@media(max-width:980px){.top.mobile-open nav{display:flex;position:absolute;top:78px;left:0;right:0;background:white;padding:25px;flex-direction:column;box-shadow:0 20px 30px #00152a22}.service-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.service-grid,.detail,.request-layout,.booking-choices{grid-template-columns:1fr}.page-hero{padding:70px 24px}.page-hero h1{letter-spacing:-2px}.request-layout,.detail{padding:55px 24px}.booking-choices p{min-height:0}}

.social a{display:inline-flex;align-items:center;gap:6px}.social svg{width:19px;height:19px;flex:none}

.top{min-height:108px;height:auto;padding-block:10px}.brand{width:214px;display:flex;flex-direction:column;flex:none;align-items:center;text-align:center;gap:2px}.brand img{width:200px;height:76px;object-fit:contain}.brand span{font-size:10px;line-height:1.25;font-weight:700;color:#39526c;letter-spacing:.1px}.top nav{margin-left:auto}.control-feature{min-height:810px;grid-template-columns:46% 54%}.control-feature .control-copy{padding:95px 5vw}.control-feature h2{font-size:clamp(38px,4.5vw,64px)}.control-feature .control-copy>img{width:250px}.control-feature p{font-size:18px}.control-feature .control-image{background:linear-gradient(90deg,#020b17 0%,#020b1708 20%),url('assets/smart-home-room.png') center/cover}.control-feature .button.ghost{border-color:#6393b8}.service-card[style]{background:linear-gradient(0deg,#041a38ee,#041a3899),var(--card-image) center/cover;color:#fff}.service-card[style] p{color:#e1edfa}.service-card[style] b{color:#58bfff}.service-photo{background:linear-gradient(90deg,#03142ee8,#03142e66),var(--detail-image) center/cover}.c4-hero{min-height:660px;display:flex;align-items:center;padding:80px 6vw;background:linear-gradient(90deg,#03142efa 0%,#03142ec9 48%,#03142e18 100%),url('assets/smart-home-room.png') center/cover;color:white}.c4-hero>div{max-width:660px}.c4-hero p{font-size:19px;line-height:1.7;color:#e2ebf7}.c4-logo{display:block;width:230px;margin-bottom:32px}.explain{padding:85px 6vw;display:grid;grid-template-columns:1.2fr .8fr;gap:10vw;align-items:center}.explain h2{font:800 clamp(34px,4vw,52px)/1.1 Manrope,Inter,sans-serif}.explain p,.c4-options p{line-height:1.7;color:#4c5f75}.example{background:#eaf4ff;border-left:5px solid #0a8cff;padding:36px;border-radius:8px}.example span{font-size:13px;font-weight:800;color:#087ee6;letter-spacing:1px}.example h3{font-size:30px}.c4-options{background:#f7fbff}.c4-options article{background:#fff;padding:28px;border:1px solid #d8e7f6;border-radius:10px}.c4-options h3{font-size:22px}.c4-note{font-size:13px;color:#acc0d5!important;margin-top:25px}@media(max-width:980px){.control-feature{grid-template-columns:1fr;min-height:auto}.control-feature .control-image{min-height:470px}.explain{grid-template-columns:1fr}.top{min-height:94px}.brand{width:180px}.brand img{width:165px;height:62px}.top.mobile-open nav{top:94px}}@media(max-width:600px){.control-feature .control-copy{padding:65px 24px}.control-feature .control-image{min-height:320px}.c4-hero{min-height:630px;padding:70px 24px;background:linear-gradient(90deg,#03142eee,#03142eaa),url('assets/smart-home-room.png') center/cover}.explain{padding:65px 24px}.c4-logo{width:190px}.brand span{font-size:9px}}

/* Editorial refinement */
:root{--navy:#07182d;--navy2:#07182d;--blue:#176ba9;--cyan:#5aa4ce;--gold:#c8ad7a;--line:#d9e1e8}
body{font-family:'DM Sans',Arial,sans-serif;color:#14243a;background:#fff;font-size:16px}
h1,h2,h3,.section-head h2,.builders h2,.contact h2,.control h2,.legacy h2,.detail h2,.request-layout h2,.explain h2,.service-card h3,.booking-choices h3,.c4-options h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;letter-spacing:-.025em;line-height:1.05}
h1{font-size:clamp(58px,7.5vw,108px);letter-spacing:-.045em;line-height:.95}
.section-head h2,.builders h2,.contact h2,.control h2,.legacy h2,.detail h2,.request-layout h2,.explain h2{font-size:clamp(42px,5vw,66px);letter-spacing:-.03em}
.service-card h3,.booking-choices h3,.c4-options h3{font-size:31px}
.eyebrow{font-size:12px;letter-spacing:.22em;color:var(--gold)}.eyebrow.blue{color:#3477a5}
.top{background:rgba(255,255,255,.98);min-height:120px;box-shadow:0 1px 0 #dce3e9;padding-inline:4vw}
.brand{width:252px}.brand img{width:236px;height:94px}.brand span{font-size:10px;letter-spacing:.035em;color:#3f5266}
.top nav{font-size:14px;font-weight:600;gap:21px}.top nav a:hover{color:#176ba9}
.button{background:#176ba9;border-radius:2px;box-shadow:none;padding:16px 25px;font-weight:600;letter-spacing:.02em}.button:hover{background:#105683}.button.ghost:hover{background:#ffffff22}
.hero{min-height:720px}.hero-copy{max-width:760px}.hero p{font-size:19px}.trust{font-size:11px;letter-spacing:.16em}
.hero-card{border-radius:2px;background:#07182ddd}.hero-card img{width:180px;background:transparent}
.section{padding-top:105px;padding-bottom:105px}.section-head{max-width:850px}.section-head p,.builders p,.contact p,.legacy p{font-size:17px}
.cards{gap:20px}.cards article{border-radius:2px}.cards h3{font-size:31px}.cards p{font-size:14px}.cards a{font-size:14px}
.control-feature{background:#0a2038}.control-copy>img,.control-feature .control-copy>img{width:310px;background:transparent}.control-feature h2{font-size:clamp(49px,5.4vw,78px)}.control-feature .control-image{background-position:center center}
.service-card{border-radius:2px}.service-card[style]{min-height:340px;justify-content:flex-end}.service-card[style] span{color:#b7d5e9}.service-card[style] h3{margin-top:70px}
.page-hero h1{max-width:1000px}.c4-logo{width:300px;background:transparent}.c4-hero h1{font-size:clamp(58px,7vw,94px)}
.work-social{display:grid;grid-template-columns:1fr 1.5fr;gap:5vw;align-items:center;background:#0a2038;color:#fff;padding:85px 6vw}.work-social h2{font:600 clamp(44px,5vw,68px)/1.02 'Cormorant Garamond',Georgia,serif;margin:12px 0}.work-social p{color:#c2d1df;line-height:1.7;font-size:17px}.work-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.work-links a{display:flex;flex-direction:column;justify-content:space-between;min-height:190px;padding:25px;border:1px solid #67809777;color:white;transition:background .2s,border-color .2s}.work-links a:hover{background:#176ba9;border-color:#7ab5d7}.work-links svg{width:35px;height:35px}.work-links span{font-size:18px;font-weight:600}
.social a{font-size:14px}.social svg{width:20px;height:20px}.social{gap:20px!important}
footer img{width:110px;height:90px;object-fit:contain;background:#fff;padding:7px;border-radius:2px}
.video-section{background:#f2f6f9;padding:95px 6vw}.video-frame{width:min(100%,1000px);margin:auto;aspect-ratio:16/9;box-shadow:0 24px 65px #07182d22;background:#07182d}.video-frame iframe{width:100%;height:100%;border:0}.video-source{text-align:center;font-size:14px;color:#56687a}.video-source a{color:#176ba9;text-decoration:underline}
@media(max-width:1050px){.top{min-height:106px}.brand{width:206px}.brand img{width:190px;height:76px}.top nav{gap:12px}.top nav a{font-size:13px}}
@media(max-width:980px){.top.mobile-open nav{top:106px}.work-social{grid-template-columns:1fr}.top{min-height:104px}.brand{width:200px}}
@media(max-width:650px){.brand{width:170px}.brand img{width:164px;height:64px}.brand span{font-size:8px}.top{min-height:91px}.top.mobile-open nav{top:91px}h1{font-size:clamp(52px,14vw,76px)}.service-card[style]{min-height:310px}.work-social{padding:65px 24px}.work-links{grid-template-columns:1fr}.work-links a{min-height:90px;flex-direction:row;align-items:center}.video-section{padding:65px 24px}.hero{min-height:690px}.hero-card{display:none}}

@media(min-width:981px){.top{min-height:146px}.brand{width:174px}.brand img{width:150px;height:122px}.brand span{font-size:10px;max-width:165px}}
@media(max-width:980px){.brand img{width:114px;height:90px}.brand{width:140px}.brand span{font-size:8px}.top{min-height:110px}.top.mobile-open nav{top:110px}}

/* White footer to integrate the transparent logo */
footer{background:#fff;color:#172b42;border-top:1px solid #dbe4eb;padding-top:48px;padding-bottom:35px}
footer img{width:145px;height:140px;object-fit:contain;background:transparent;padding:0;border-radius:0}
footer div{font-size:14px}footer div b{font-size:18px;color:#102840}footer div span{color:#52677b}
footer .social a{color:#243d54}footer .social a:hover{color:#176ba9}footer small{border-top-color:#dbe4eb;color:#617588}
@media(max-width:650px){footer{align-items:flex-start}footer img{width:150px;height:145px}footer .social{gap:20px!important;flex-wrap:wrap}}
/* Clearer division line beneath the header logo */
.brand span{font-size:12px;line-height:1.35;max-width:200px;letter-spacing:.01em}
@media(min-width:981px){.brand{width:205px}.brand span{font-size:12px;max-width:205px}}
@media(max-width:980px){.brand span{font-size:10.5px;max-width:170px}}
@media(max-width:650px){.brand span{font-size:10px;max-width:165px}}

.direct-contact{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:24px 0}.button.secondary{background:#e7f1f7;color:#0a426a}.button.secondary:hover{background:#d5e9f4}.direct-contact .button{max-width:100%;overflow-wrap:anywhere}

/* Phone navigation and comfortable tap targets across every page. */
.mobile-nav-book{display:none}
@media(max-width:980px){
  .top{position:sticky}
  .top.mobile-open nav,.nav-open .top nav{display:flex;position:absolute;top:100%;left:0;right:0;margin:0;padding:18px 24px 25px;flex-direction:column;gap:0;background:#fff;box-shadow:0 20px 30px #00152a22;max-height:calc(100vh - 90px);overflow-y:auto}
  .top.mobile-open nav a,.nav-open .top nav a{display:block;padding:13px 0;font-size:16px;border-bottom:1px solid #e4ebf1}
  .top.mobile-open nav .mobile-nav-book,.nav-open .top nav .mobile-nav-book{display:block;color:#176ba9;font-weight:700}
  .menu{min-width:48px;min-height:48px;cursor:pointer;color:#102840}
}
@media(max-width:650px){
  .hero{min-height:0;padding:58px 24px 65px}
  .hero h1{font-size:clamp(42px,11.8vw,58px);line-height:.99;letter-spacing:-.035em;overflow-wrap:anywhere}
  .hero p{font-size:16px;line-height:1.55}
  .hero-actions{align-items:stretch;width:100%}
  .hero-actions .button{text-align:center;width:100%;padding:16px 14px}
  .trust{flex-direction:row;flex-wrap:wrap;gap:10px 17px;margin-top:30px;line-height:1.5}
  .service-strip{gap:0;padding:12px 18px}
  .service-strip div{min-height:74px;padding:12px 8px;border-bottom:1px solid #ffffff1c}
  .service-strip span{font-size:11px}
  .stats{gap:10px}.stats div{padding:20px 14px}.stats b{font-size:25px}.stats span{font-size:12px}
  .booking-choices article{padding:24px}
  .page-hero h1,.c4-hero h1{font-size:clamp(42px,11.8vw,64px);overflow-wrap:anywhere}
  .request-layout form{padding:22px 18px}
}

.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.request-layout button:disabled{opacity:.65;cursor:wait}.form-status{margin:0!important;min-height:1.5em;font-size:15px;line-height:1.5!important}.form-status[data-state="success"]{color:#12643b!important}.form-status[data-state="error"]{color:#a52b25!important}

.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1280px;margin:0 auto}.video-card{min-width:0}.video-card h3{font-size:clamp(19px,2vw,24px);line-height:1.25;margin:0 0 16px;color:#102b49}.video-grid .video-frame{width:100%;margin:0}.video-grid .video-source{text-align:left;margin:14px 0 0}@media(max-width:760px){.video-grid{grid-template-columns:1fr;gap:38px}}

.c4-commercial{background:#edf5fb}.c4-commercial .commercial-link{margin:30px 0 0}.c4-commercial .service-grid article{background:#fff}

.c4-local{background:#fff}.c4-local .section-head{max-width:850px}.c4-local .service-grid article{background:#f4f9fd;padding:28px;border:1px solid #d8e7f6;border-radius:10px}.c4-local .service-grid p,.c4-faq p{line-height:1.7;color:#4c5f75}.c4-area{margin:30px 0 0;line-height:1.7}.c4-area a{color:#087ee6;font-weight:700}.c4-faq{background:#f7fbff}.faq-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.faq-list article{background:white;border:1px solid #d8e7f6;border-radius:10px;padding:28px}.faq-list h3{font-size:27px;margin-top:0}@media(max-width:650px){.faq-list{grid-template-columns:1fr}}

/* Supplied Control4 media */
.control-feature .control-image{background:linear-gradient(90deg,#020b1770 0%,#020b1708 25%),url('assets/control4-touchscreen.jpg') center/cover}
.c4-hero{background:linear-gradient(90deg,#03142efa 0%,#03142ec9 48%,#03142e18 100%),url('assets/control4-penthouse.jpg') center/cover}
.hero-video{position:absolute;z-index:3;right:5vw;bottom:48px;width:min(34vw,450px);background:#06172ae8;padding:8px 8px 13px;box-shadow:0 24px 70px #0008;border:1px solid #ffffff30}
.hero-video video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#07182d}
.hero-video span{display:block;padding:10px 8px 0;font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.video-frame video{display:block;width:100%;height:100%;object-fit:cover}
.c4-showcase{padding:85px 5vw;background:#f4f8fc}.c4-showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1300px;margin:auto}.c4-showcase figure{margin:0;background:white}.c4-showcase img{display:block;width:100%;height:280px;object-fit:cover}.c4-showcase figcaption{font-size:17px;font-weight:700;padding:19px;color:#132c49}.c4-showcase-note{text-align:center;color:#61758b;font-size:13px;margin:24px 0 0}
@media(max-width:1100px){.hero-video{width:34vw;bottom:25px}.hero-copy{max-width:58%}}
@media(max-width:760px){.hero{display:block;padding:70px 24px 36px;min-height:0}.hero-copy{max-width:none}.hero-video{position:relative;right:auto;bottom:auto;width:100%;max-width:540px;margin:35px auto 0}.c4-showcase-grid{grid-template-columns:1fr}.c4-showcase img{height:260px}.c4-hero{background:linear-gradient(90deg,#03142eee,#03142eaa),url('assets/control4-penthouse.jpg') center/cover}}

/* Full-width homepage video feature */
.hero{display:flex;min-height:560px;padding:70px 6vw}
.hero-copy{max-width:690px}
.hero h1{font-size:clamp(44px,6vw,82px)}
.feature-video{background:#061a32;color:#fff;padding:72px 5vw 85px;text-align:center}
.feature-video-heading{max-width:790px;margin:0 auto 32px}
.feature-video h2{font-size:clamp(42px,5vw,70px);margin:12px 0 15px}
.feature-video p{font-size:18px;line-height:1.55;color:#c9d9e9;margin:0}
.feature-video-player{width:min(100%,1360px);margin:auto;box-shadow:0 24px 70px #0007}
.feature-video video{display:block;width:100%;aspect-ratio:16/9;background:#020a15;object-fit:contain}
@media(max-width:760px){.hero{display:flex;min-height:560px;padding:70px 24px}.hero-copy{max-width:100%}.hero h1{font-size:clamp(28px,10vw,64px);line-height:1.05;overflow-wrap:normal;word-break:normal}.hero-title-word{white-space:nowrap}.feature-video{padding:50px 16px 60px}.feature-video-heading{margin-bottom:25px}.feature-video p{font-size:16px}}

/* Service discovery and local project details. */
.seo-service-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.seo-service-links a{padding:20px;border:1px solid #d8e7f6;border-radius:8px;background:#f4f9fd;color:#0a426a;font-weight:600;line-height:1.5}.seo-details .section-head{max-width:900px}.seo-details p{line-height:1.7}.seo-details .faq-list article{min-width:0}.seo-details a{color:#0a426a}.top nav{flex-wrap:wrap}@media(max-width:760px){.seo-service-links{grid-template-columns:1fr}.seo-details .faq-list{grid-template-columns:1fr}}

/* Shared responsive layout: keep content within the viewport without clipping. */
img, video, iframe { max-width: 100%; }
main, section, article, aside, form, .hero-copy, .control-copy, .section-head,
.detail > *, .request-layout > *, .contact > *, .builders > *, footer > * { min-width: 0; }
input, select, textarea { min-width: 0; }
.contact-links a, footer, .form-note { overflow-wrap: anywhere; }
[id] { scroll-margin-top: 155px; }
@media (max-width: 980px) {
  [id] { scroll-margin-top: 130px; }
  .top.mobile-open nav { max-height: calc(100dvh - 125px); overscroll-behavior: contain; }
  .control-copy > img, .control-feature .control-copy > img { width: min(270px, 100%); }
  .contact .booking-choices { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .top { gap: 16px; padding: 8px 20px; }
  .hero { min-height: 0; padding: 48px 24px 52px; }
  .hero h1 { font-size: clamp(26px, 8.7vw, 60px); line-height: 1.08; letter-spacing: -.035em; }
  .hero-title-word { white-space: nowrap; }
  .hero p, .page-hero p, .c4-hero p { font-size: 17px; line-height: 1.65; }
  .eyebrow { font-size: 11px; line-height: 1.65; letter-spacing: .13em; }
  .page-hero, .page-hero.compact, .c4-hero { min-height: 0; padding: 48px 24px; }
  .page-hero h1, .page-hero.compact h1, .c4-hero h1 { font-size: clamp(34px, 8.5vw, 58px); line-height: 1.08; letter-spacing: -.025em; overflow-wrap: break-word; }
  .section-head h2, .builders h2, .contact h2, .control h2, .control-feature h2,
  .legacy h2, .detail h2, .request-layout h2, .explain h2, .work-social h2, .feature-video h2,
  .bottom-cta h2 { font-size: clamp(30px, 7.6vw, 44px); line-height: 1.13; letter-spacing: -.025em; }
  .section, .control-copy, .control-feature .control-copy, .builders, .contact, .legacy,
  .detail, .request-layout, .explain, .work-social, .video-section, .c4-showcase { padding: 48px 24px; }
  .builders, .contact, .detail, .request-layout, .explain, .work-social { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .contact .booking-choices, .booking-choices, .service-grid, .faq-list, .row { grid-template-columns: minmax(0, 1fr); }
  .hero-actions { flex-direction: column; align-items: stretch; gap: 12px; margin-top: 24px; }
  .hero-actions .button, .booking-choices .button, .bottom-cta .button { width: 100%; text-align: center; }
  .button { min-height: 48px; padding: 15px 18px; font-size: 16px; line-height: 1.4; white-space: normal; }
  .request-layout form, .booking-choices article, .detail aside, .example, .service-card, .faq-list article { padding: 22px; }
  input, select, textarea { font-size: 16px; }
  .booking-choices p { min-height: 0; }
  .cards { grid-template-columns: minmax(0, 1fr); }
  .cards article { height: auto; min-height: 340px; display: flex; align-items: flex-end; }
  .cards article div { position: static; padding: 24px; width: 100%; }
  .cards h3, .service-card h3, .booking-choices h3, .c4-options h3 { font-size: 29px; line-height: 1.15; }
  .cards a { display: inline-flex; align-items: center; min-height: 44px; }
  .section-head { margin-bottom: 28px; }
  .work-links { grid-template-columns: minmax(0, 1fr); }
  .work-links a { min-height: 80px; flex-direction: row; align-items: center; }
  .control-feature .control-image { min-height: 280px; }
  .back { margin-bottom: 24px; }
  footer { padding: 32px 24px; gap: 20px; }
  footer .social { margin-left: 0; width: 100%; flex-wrap: wrap; gap: 12px 20px !important; }
  footer .social a { min-height: 44px; }
}
@media (max-width: 360px) {
  .stats { grid-template-columns: minmax(0, 1fr); }
  .request-layout form, .booking-choices article { padding: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Compact shared header and balanced, non-repeating homepage gallery. */
.top { min-height: 92px; padding-block: 3px; }
.brand img { width: 132px; height: 58px; }
.brand span { font-size: 12px; line-height: 1.2; }
.top nav { font-size: 15px; }
.top nav a { font-size: inherit; }
.c4-showcase-pair { grid-template-columns: repeat(2, minmax(0, 1fr)); }
[id] { scroll-margin-top: 120px; }
@media (max-width: 980px) {
  .top { min-height: 76px; }
  .brand { width: 170px; }
  .brand img { width: 94px; height: 40px; }
  .brand span { font-size: 11px; max-width: 170px; }
  .top.mobile-open nav { max-height: calc(100dvh - 78px); }
  [id] { scroll-margin-top: 100px; }
}
@media (max-width: 760px) {
  .c4-showcase-pair { grid-template-columns: minmax(0, 1fr); }
}

/* Clara Shades quote builder: full-width, scrollable third-party form. */
.shades-quote { padding: 56px 5vw; background: #f5f9fd; }
.shades-quote-frame { display: block; width: 100%; height: 1000px; height: max(850px, 85dvh); border: 1px solid #d9e1e8; background: white; }
.shades-quote-help { text-align: center; line-height: 1.6; }
.shades-quote-help a { color: #176ba9; text-decoration: underline; display: inline-block; padding-block: 10px; }
@media (max-width: 760px) {
  .shades-quote { padding: 40px 12px; }
  .shades-quote .section-head { padding-inline: 12px; }
  .shades-quote-frame { height: 1100px; }
}

.shades-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.shades-gallery figure { margin: 0; background: #f5f9fd; }
.shades-gallery img { display: block; width: 100%; height: 260px; object-fit: cover; }
.shades-gallery .shade-remote { object-fit: contain; padding: 24px; background: white; }
.shades-gallery figcaption { padding: 22px; }
.shades-gallery h3 { font-size: 30px; margin: 0 0 12px; }
.shades-gallery p { line-height: 1.6; color: #4e6176; }
.shades-credit { font-size: 13px; color: #52677b; text-align: center; margin-top: 24px; }
.shades-credit a { text-decoration: underline; }
@media (max-width: 760px) { .shades-gallery { grid-template-columns: minmax(0, 1fr); } }

.shades-inspiration { background: #f5f9fd; }
.shades-inspiration-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.shades-inspiration-grid figure { margin: 0; background: white; }
.shades-inspiration-grid img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; object-position: center; }
.shades-inspiration-grid figcaption { padding: 20px; font-size: 18px; font-weight: 600; }
@media (max-width: 760px) { .shades-inspiration-grid { grid-template-columns: minmax(0, 1fr); } }
