:root{--ink:#243447;--muted:#657280;--accent:#b8d8ed;--paper:#f6f8fa;--line:#dce3e9;--dark:#142536;--sans:'DM Sans',sans-serif;--display:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #427ca5;outline-offset:5px}button{color:inherit}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-library{position:absolute;width:0;height:0;overflow:hidden}.wrap{max-width:1320px;margin:0 auto;padding-inline:64px}.section{padding-block:108px}.eyebrow{font-size:0.875rem;font-weight:650;letter-spacing:2px;display:flex;align-items:center;gap:10px;margin:0 0 27px}.status-dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #b8d8ed12;flex-shrink:0}.header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 4.7%;gap:30px;background:var(--dark);color:#f0f2f4;position:relative;z-index:10;border-bottom:1px solid #ffffff14}.brand{display:inline-flex;align-items:center;gap:11px;font-family:var(--display);font-weight:750;font-size:1.4375rem;line-height:1;letter-spacing:-.8px}.brand-second{display:block;font-size:1rem;letter-spacing:2.1px;font-weight:500;margin-top:7px}.brand-mark{width:38px;height:40px;position:relative;display:flex;align-items:center;justify-content:center}.brand-mark svg{width:38px;height:38px;stroke-width:1.3}.brand-mark i{position:absolute;width:5px;height:5px;right:4px;top:0;background:var(--accent);border-radius:50%}.brand-dot{font-family:var(--sans);font-size:0.875rem;align-self:flex-start;margin-left:-6px;margin-top:1px}.navigation{display:flex;gap:30px;font-size:1rem;color:#c1c8cf}.navigation a{transition:color .2s;position:relative}.navigation a:hover{color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--accent);color:var(--dark);border:none;border-radius:5px;padding:16px 23px;font-size:1rem;font-weight:650;line-height:1.5;transition:background .2s,transform .2s,box-shadow .2s}.button:hover{background:#d1e7f5;transform:translateY(-2px);box-shadow:0 5px 24px #00000012}.button svg{width:19px;height:19px}.button-small{padding:12px 17px;font-size:1rem;gap:24px}.menu-button{display:none}.hero{min-height:780px;height:calc(100svh - 90px);max-height:950px;position:relative;isolation:isolate;overflow:hidden;background:#25394a;color:#f3f5f8}.hero-image,.hero-shade,.hero-tint{position:absolute;inset:0;width:100%;height:100%;z-index:-3}.hero-image{object-fit:cover;object-position:center 58%;transition:filter 1.2s,transform 7s;filter:brightness(.83)}.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(12,25,39,.86),rgba(12,25,39,.53) 35%,rgba(12,25,39,.04) 72%),linear-gradient(0deg,rgba(10,21,33,.78),transparent 33%)}.hero-tint{z-index:-1;pointer-events:none;transition:background 1.2s;background:#b2832610}.hero-content{position:relative;padding:75px 5.5% 160px;max-width:850px}.hero .eyebrow{font-size:0.875rem;color:#dfe2e6;margin-bottom:25px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display)}h1{font-size:clamp(76px,7.8vw,120px);font-weight:500;letter-spacing:-7px;line-height:1.08;margin-bottom:25px}h1 span{color:var(--accent)}.hero-description{font-size:1rem;font-weight:400;color:#d4d8dd;line-height:1.8;margin-bottom:29px}.hero-text-link{display:flex;align-items:center;gap:10px;margin-top:23px;font-size:1rem;color:#dbdfe3;width:fit-content}.play-circle{display:flex;align-items:center;justify-content:center;border:1px solid #dce2e84d;border-radius:50%;width:26px;height:26px}.play-circle svg{width:11px;height:11px;fill:currentColor}.hero-bottom{position:absolute;left:5.5%;right:5.5%;bottom:35px;display:flex;align-items:flex-end;justify-content:space-between;border-top:1px solid #ffffff28;padding-top:22px;gap:20px}.scene-caption{font-size:0.875rem;letter-spacing:1.7px;color:#bbc2c9;display:block;margin-bottom:12px}.scene-buttons{display:flex;gap:7px}.scene-button{border:1px solid #ffffff35;background:#ffffff07;color:#e1e4e8;padding:9px 15px;display:flex;align-items:center;gap:8px;border-radius:5px;font-size:1rem;transition:background .3s,color .3s,border .3s}.scene-button svg{width:15px;height:15px}.scene-button.active{background:var(--accent);color:var(--dark);border-color:var(--accent)}.scene-button:hover:not(.active){background:#ffffff20}.scroll-cue{font-size:0.875rem;letter-spacing:1.7px;display:flex;align-items:center;gap:22px;padding-bottom:7px}.scroll-cue span{display:flex;align-items:center;justify-content:center;font-size:1.125rem;border:1px solid #ffffff50;border-radius:50%;width:31px;height:31px}.hero[data-scene="cinema"] .hero-image{filter:brightness(.37) saturate(.65)}.hero[data-scene="cinema"] .hero-tint{background:#343e7650}.hero[data-scene="away"] .hero-image{filter:brightness(.72) saturate(.8)}.hero[data-scene="away"] .hero-tint{background:#58636f25}.hero[data-scene="night"] .hero-image{filter:brightness(.25) saturate(.5)}.hero[data-scene="night"] .hero-tint{background:#26374f55}.ecosystems{min-height:136px;display:flex;align-items:center;gap:50px;border-bottom:1px solid var(--line)}.ecosystems>p{font-size:1rem;color:var(--muted);line-height:1.7;margin:0;flex-shrink:0}.ecosystems strong{font-weight:500;color:var(--ink)}.ecosystem-logos{display:flex;align-items:center;justify-content:space-around;flex:1;gap:38px;color:#5c6875}.ecosystem-logos>span{white-space:nowrap}.alexa-logo{font-size:1.8125rem;letter-spacing:-2px;position:relative;line-height:1}.alexa-logo>span{position:absolute;left:3px;top:13px;font-size:2.3125rem;transform:rotate(-7deg)}.google-logo{display:flex;align-items:center;gap:8px;font-size:1.125rem;letter-spacing:-.6px}.google-logo i{width:21px;height:20px;border:4px solid currentColor;clip-path:polygon(50% 0,100% 40%,100% 100%,0 100%,0 40%)}.apple-logo{font-size:1.8125rem;display:flex;align-items:center;gap:6px}.apple-logo>span{font-size:1.125rem;letter-spacing:-.5px;font-weight:550}.knx-logo{font-size:1.5625rem;font-weight:800;font-style:italic;letter-spacing:-2px}.ecosystems-note{font-size:0.875rem;max-width:85px;line-height:1.6;color:#798795}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:48px}.section-heading h2,.experience h2,.faq h2{font-size:clamp(32px,3.25vw,46px);line-height:1.25;font-weight:500;letter-spacing:-1.9px;margin-bottom:0}h2 span{color:#56626e}.section-heading>.text-link{margin-bottom:8px}.section-heading>p{color:var(--muted);font-size:1rem;margin-bottom:5px}.solution-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);margin-bottom:29px}.solution-tabs button{display:flex;align-items:center;gap:11px;border:0;border-bottom:2px solid transparent;background:transparent;padding:19px 17px;font-size:1rem;color:#6f7e8d;text-align:left;transition:color .2s,background .2s}.solution-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink);background:#e7ebee}.solution-tabs button:hover{background:#e7ebee}.solution-tabs svg{width:20px;height:20px}.solution-tabs button span{margin-left:auto;font-size:0.875rem;color:#8b98a4}.solution-panel{display:grid;grid-template-columns:1.12fr 1fr;gap:60px;align-items:center}.solution-visual{position:relative;height:384px;border-radius:7px;overflow:hidden;background:#cdd2d8}.solution-visual img{width:100%;height:100%;object-fit:cover;transition:filter .5s}.solution-visual:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#121c268c);pointer-events:none}.image-label{position:absolute;bottom:26px;left:25px;display:flex;gap:10px;align-items:center;color:#fff;font-size:0.875rem;z-index:1;letter-spacing:.2px}.visual-orbit{position:absolute;top:40%;left:47%;width:55px;height:55px;background:#ffffff20;backdrop-filter:blur(8px);border:1px solid #ffffff90;border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;box-shadow:0 0 0 14px #ffffff10,0 0 0 28px #ffffff08}.small-label{font-size:0.875rem;color:#6c7b8a;letter-spacing:1.8px;font-weight:600}.solution-copy h3{font-size:2rem;line-height:1.3;font-weight:500;letter-spacing:-1.1px;margin:17px 0}.solution-copy>p{font-size:1rem;color:var(--muted);line-height:1.9;max-width:390px}.solution-copy ul{padding:0;list-style:none;margin:23px 0 27px;font-size:1rem;display:grid;gap:9px}.solution-copy li:before{content:'✓';margin-right:11px;color:#6a7b8c}.text-link{display:inline-flex;align-items:center;gap:22px;font-size:1rem;font-weight:600;background:none;border:0;padding:0 0 5px;border-bottom:1px solid #a0aab4}.text-link svg{width:18px;height:18px;transition:transform .2s}.text-link:hover svg{transform:translateX(4px)}.experience{background:#eaf0f5;position:relative;overflow:hidden}.experience-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.experience h2 span{color:#525d68}.experience-intro{max-width:440px;font-size:1rem;color:#626f7d;margin:25px 0 28px;line-height:1.9}.experience .button{background:var(--dark);color:#e7ebee}.experience-points article{display:flex;align-items:flex-start;gap:19px;padding:27px 0;border-bottom:1px solid #c4cbd1}.experience-points article:first-child{padding-top:0}.experience-points article>span{font-size:0.875rem;padding-top:3px;color:#7a8896}.experience-points h3{font-size:1.125rem;letter-spacing:-.4px;font-weight:600;margin-bottom:8px}.experience-points p{font-size:1rem;color:#667482;margin:0;max-width:300px}.experience-points article>svg{margin-left:auto;width:22px;height:22px;color:#758493}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;padding-top:14px}.step-number{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #c3c9cf;padding-top:20px;font-size:1rem;color:#7a8897}.step-number i{font-size:1.1875rem;font-style:normal;color:#748291}.process-grid h3{font-size:1.125rem;font-weight:600;letter-spacing:-.5px;margin:32px 0 12px}.process-grid p{font-size:1rem;color:var(--muted);line-height:1.9;margin:0}.coverage{background:#eaf0f5;border-radius:9px;display:flex;align-items:center;justify-content:space-between;gap:50px;padding-block:48px;max-width:1192px;margin-inline:auto;padding-inline:45px}.coverage-heading{display:flex;gap:20px;align-items:flex-start}.coverage-heading>svg{width:28px;height:28px;color:#6a7988;margin-top:5px}.coverage .eyebrow{font-size:0.875rem;letter-spacing:1.5px;margin-bottom:13px;color:#6a7988}.coverage h2{font-size:1.625rem;line-height:1.4;font-weight:500;letter-spacing:-1px;margin:0}.city-list{display:grid;grid-template-columns:1fr 1fr;gap:19px 45px;min-width:42%}.city-list>span{font-size:1rem;border-bottom:1px solid #c3cad1;padding-bottom:11px;display:flex;justify-content:space-between;gap:35px}.city-list i{font-style:normal;color:#7e8c9a}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:75px}.faq>div>p:last-child{color:var(--muted);font-size:1rem;margin-top:23px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:center;cursor:pointer;font-size:1rem;font-weight:550;padding:23px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:1.375rem;font-weight:400;color:#6d7c8a;line-height:1;transition:transform .25s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{font-size:1rem;line-height:1.9;color:var(--muted);padding:0 30px 21px 0;margin:0}.contact{background:var(--dark);color:#ebeef1}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:85px;align-items:start}.contact-copy{padding-top:15px}.contact .eyebrow{font-size:0.875rem;color:#b7bfc7}.contact h2{font-size:clamp(35px,3.7vw,53px);line-height:1.3;letter-spacing:-2px;font-weight:500;margin:0 0 22px}.contact h2 span{color:var(--accent)}.contact-copy>p:not(.eyebrow){color:#a5aeb8;font-size:1rem;line-height:1.9}.contact-benefits{display:grid;gap:12px;margin-top:43px;color:#afb8c0;font-size:0.875rem}.contact-benefits>span{display:flex;gap:10px;align-items:center}.contact-benefits svg{width:14px;height:14px;color:var(--accent)}.form-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff20;padding-bottom:19px;margin-bottom:24px;font-size:1rem}.form-heading>span:last-child{font-size:0.875rem;letter-spacing:1.2px;color:#98a3ae}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}form>label,.form-row>label{display:block;font-size:0.875rem;color:#bac1c8;margin-bottom:18px}input:not([type=checkbox]),select,textarea{display:block;width:100%;border:1px solid #ffffff1c;background:#ffffff04;color:#dee3e8;border-radius:4px;padding:12px 13px;margin-top:8px;font-size:1rem;outline-offset:2px;min-height:43px}select{color-scheme:dark;padding-right:10px}textarea{resize:vertical;min-height:77px}input::placeholder,textarea::placeholder{color:#748392}fieldset{border:none;padding:0;margin:0 0 19px}legend{font-size:0.875rem;margin-bottom:11px;color:#bac1c8}.interest-options{display:flex;flex-wrap:wrap;gap:7px}.interest-options label{position:relative;cursor:pointer}.interest-options input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.interest-options span{display:block;border:1px solid #ffffff25;border-radius:4px;font-size:0.875rem;padding:7px 11px;color:#a9b2bb;transition:all .2s}.interest-options input:checked+span{background:var(--accent);border-color:var(--accent);color:var(--dark)}.interest-options input:focus-visible+span{outline:3px solid var(--accent);outline-offset:3px}.optional{color:#71808f}.form-submit{width:100%;justify-content:space-between;padding:14px 17px;font-size:1rem}.form-note{font-size:0.875rem;color:#8d9aa6;line-height:1.7;margin:12px 0 0}.form-result{border:1px solid #b8d8ed55;border-radius:5px;padding:17px;margin-top:20px;color:#ced8e2}.form-result strong{font-size:1rem}.form-result p{font-size:1rem;color:#b2bac2;margin-top:8px}.form-result .text-link{color:var(--accent);font-size:1rem}.footer{padding-block:45px 23px}.footer-main{display:flex;align-items:center;gap:65px;padding-bottom:36px}.footer .brand{font-size:1.3125rem}.footer .brand-second{font-size:0.875rem}.footer .brand-mark{color:var(--ink)}.footer .brand-mark i{background:#798896}.footer-main>p{font-size:1rem;color:var(--muted);margin:0;line-height:1.8}.back-top{margin-left:auto;font-size:0.875rem;letter-spacing:1.2px;display:flex;align-items:center;gap:20px}.back-top span{font-size:1.1875rem;border:1px solid var(--line);border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;font-size:0.875rem;color:#56626e}.skip-link{position:fixed;top:-100px;left:20px;background:var(--accent);padding:12px 20px;z-index:100}.skip-link:focus{top:10px}.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}
@media(min-width:1600px){.hero-content{padding-top:110px}.header{padding-inline:5.5%}}@media(max-width:1100px){.wrap{padding-inline:40px}.navigation{gap:20px}.header{gap:20px}.header-cta{gap:12px;font-size:0.875rem}.hero-content{padding-top:72px}.hero{min-height:780px}h1{font-size:5.9375rem}.ecosystems{gap:25px}.ecosystem-logos{gap:20px}.ecosystems-note{display:none}.solution-panel{gap:38px}.experience-grid{gap:55px}.contact-grid{gap:50px}.coverage{margin-inline:40px}.section-heading h2,.experience h2,.faq h2{font-size:2.3125rem}.faq{gap:45px}.section{padding-block:85px}.google-logo,.apple-logo>span{font-size:1rem}}
@media(max-width:800px){.header{height:78px;padding-inline:25px}.header-cta{margin-left:auto}.navigation{display:none;position:absolute;left:0;right:0;top:78px;background:var(--dark);padding:23px 25px;border-top:1px solid #ffffff20;box-shadow:0 15px 20px #0002}.navigation.is-open{display:grid;gap:20px}.navigation a{font-size:1rem}.menu-button{width:30px;height:35px;display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:0;padding:3px}.menu-button span{height:1px;width:23px;background:#dee3e8;transition:transform .2s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero{height:800px;min-height:0;max-height:none}.hero-content{padding:65px 35px}.hero h1{font-size:5.3125rem;letter-spacing:-5px}.hero-shade{background:linear-gradient(90deg,#0c1218df,#0c121869 65%,#0c121820),linear-gradient(0deg,#0b1015e6,transparent 40%)}.hero-description{font-size:1rem}.hero-bottom{left:35px;right:35px;bottom:28px}.scroll-cue{display:none}.ecosystems{padding-block:28px;flex-direction:column;gap:25px;align-items:center;text-align:center}.ecosystems>p br{display:none}.ecosystems>p strong{margin-left:4px}.ecosystem-logos{width:100%;gap:20px}.section-heading>p{display:none}.solution-panel{grid-template-columns:1fr 1fr;gap:25px}.solution-visual{height:360px}.solution-copy h3{font-size:1.6875rem}.solution-copy>p{font-size:1rem}.solution-copy ul{font-size:0.875rem}.solution-tabs button{font-size:1rem;padding:16px 10px;gap:7px}.solution-tabs button span{display:none}.experience-grid{grid-template-columns:1fr;gap:45px}.experience-intro{max-width:520px}.experience-points article>div{flex:1}.experience-points p{max-width:100%}.process-grid{grid-template-columns:1fr 1fr;gap:35px}.process-grid h3{margin-top:22px}.coverage{padding:35px;gap:30px;flex-direction:column;align-items:stretch}.city-list{gap:16px 30px}.faq{grid-template-columns:1fr;gap:30px}.faq>div>p:last-child{display:none}.contact-grid{grid-template-columns:1fr;gap:45px}.contact-benefits{margin-top:25px;display:flex;gap:20px}.contact h2{font-size:2.8125rem}.footer-main{gap:25px}.footer-main>p{font-size:0.875rem}.footer-bottom{font-size:0.875rem}.section-heading h2,.experience h2,.faq h2{font-size:2.25rem}.section{padding-block:70px}.eyebrow{margin-bottom:22px;font-size:0.875rem}.solution-copy .small-label{font-size:0.875rem}}
@media(max-width:540px){.wrap{padding-inline:23px}.header{padding-inline:22px;height:73px;gap:20px}.brand{font-size:1.25rem;gap:8px}.brand-second{font-size:0.875rem;letter-spacing:1.8px}.brand-mark,.brand-mark svg{width:32px;height:34px}.header-cta{font-size:0;padding:9px;background:transparent;border:1px solid #ffffff35;color:var(--accent);gap:0}.header-cta svg{width:18px;height:18px}.navigation{top:73px}.hero{height:920px}.hero-content{padding:44px 24px 0}.hero .eyebrow{font-size:0.875rem;letter-spacing:1.6px;margin-bottom:25px}h1,.hero h1{font-size:clamp(56px,17.5vw,76px);letter-spacing:-5px;line-height:1.1}.hero-description{font-size:1rem;line-height:1.8;margin-top:23px;margin-bottom:23px}.hero .button{font-size:1rem;padding:14px 18px;gap:32px}.hero-text-link{font-size:0.875rem;margin-top:18px}.hero-image{object-position:59% center}.hero-bottom{left:24px;right:24px;bottom:26px;padding-top:20px}.scene-buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px}.scene-selector{width:100%}.scene-button{padding:8px 10px;font-size:0.875rem;justify-content:center}.scene-caption{font-size:0.875rem;letter-spacing:1.6px}.hero-shade{background:linear-gradient(90deg,#0c1218d9,#0c12184d),linear-gradient(0deg,#0b1015e6,transparent 58%)}.ecosystem-logos{flex-wrap:wrap;gap:25px 35px}.ecosystems>p{font-size:0.875rem}.alexa-logo{font-size:1.5625rem}.google-logo,.apple-logo>span{font-size:1rem}.apple-logo{font-size:1.5rem}.knx-logo{font-size:1.4375rem}.ecosystems{padding-block:30px}.section{padding-block:57px}.section-heading{margin-bottom:30px;align-items:start}.section-heading h2,.experience h2,.faq h2{font-size:1.9375rem;letter-spacing:-1.4px}.section-heading>.text-link{display:none}.eyebrow{font-size:0.875rem;letter-spacing:1.6px}.solution-tabs{gap:0;margin-bottom:23px}.solution-tabs button{font-size:0.875rem;flex-direction:column;gap:7px;padding:13px 4px}.solution-tabs svg{width:19px;height:19px}.solution-panel{grid-template-columns:1fr;gap:28px}.solution-visual{height:285px}.solution-copy h3{font-size:1.8125rem}.solution-copy>p{font-size:1rem;max-width:100%}.solution-copy ul{font-size:1rem}.small-label{font-size:0.875rem}.solution-copy .text-link{font-size:1rem}.experience-grid{gap:33px}.experience-intro{font-size:1rem}.experience-points article{padding-block:22px}.experience-points h3{font-size:1.125rem}.experience-points p{font-size:1rem}.process-grid{gap:28px 23px}.process-grid h3{font-size:1rem;margin-top:17px}.process-grid p{font-size:1rem}.step-number{font-size:0.875rem;padding-top:13px}.coverage{margin-inline:23px;padding:28px 24px;gap:27px}.coverage-heading{gap:12px}.coverage h2{font-size:1.5rem}.coverage .eyebrow{font-size:0.875rem}.city-list{gap:16px 20px}.city-list>span{font-size:0.875rem;gap:12px}.faq{gap:25px}.faq-list summary{font-size:1rem;padding-block:20px}.faq-list details>p{font-size:1rem}.contact h2{font-size:2.4375rem}.contact .eyebrow{font-size:0.875rem}.contact-copy>p:not(.eyebrow){font-size:1rem}.contact-benefits{display:grid;gap:10px;font-size:0.875rem}.form-heading{font-size:1rem}.form-heading>span:last-child{font-size:0.875rem}.form-row{gap:12px}.form-row>label{font-size:0.875rem}input:not([type=checkbox]),select,textarea{font-size:1rem;padding:12px 9px}.form-note{font-size:0.875rem}.footer-main{flex-wrap:wrap;gap:25px}.footer-main>p{margin-left:auto}.back-top{margin:0;font-size:0.875rem;gap:12px}.footer-bottom{flex-wrap:wrap;gap:12px;font-size:0.875rem}.footer-bottom>span:nth-child(2){margin-left:auto}.footer-bottom>span:last-child{display:none}.footer{padding-top:34px}.form-result p{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Service content is present in the HTML, including inactive tab panels. */
.solution-panel[hidden]{display:none}.hero h1{font-size:clamp(60px,6.6vw,101px);letter-spacing:-5px}.hero-description strong{font-weight:550}.project-types{padding-bottom:82px}.project-types h2{font-size:1.75rem;letter-spacing:-1px;font-weight:500;line-height:1.4}.project-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;border-top:1px solid var(--line);padding-top:25px}.project-type-grid h3{font-size:1.125rem;letter-spacing:-.4px;font-weight:600}.project-type-grid p{font-size:1rem;color:var(--muted);line-height:1.9;margin:0}.coverage-heading p:not(.eyebrow){font-size:1rem;color:var(--muted);margin:14px 0 0}.city-list>a{font-size:1rem;border-bottom:1px solid #c3cad1;padding-bottom:11px;display:flex;justify-content:space-between;gap:20px}.city-list>a:hover{color:#445566}.whatsapp-contact{display:flex;align-items:center;justify-content:space-between;gap:50px}.whatsapp-contact .contact-copy{padding:0}.whatsapp-contact .button{flex-shrink:0}.whatsapp-contact h2{font-size:clamp(30px,3.1vw,45px)}.whatsapp-float{position:fixed;right:25px;bottom:calc(25px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;align-items:center;justify-content:center;width:59px;height:59px;background:#1b783e;color:#fff;border:1px solid #ffffff6b;border-radius:50%;box-shadow:0 5px 25px #0003;transition:transform .2s,background .2s}.whatsapp-float>svg{width:31px;height:31px;stroke-width:1.45}.whatsapp-float:hover{background:#135d2e;transform:translateY(-3px)}.whatsapp-float-label{position:absolute;right:70px;white-space:nowrap;background:var(--dark);color:#eff2f5;border:1px solid #ffffff25;box-shadow:0 3px 15px #0001;border-radius:5px;padding:8px 13px;font-size:1rem;opacity:0;transform:translateX(7px);transition:opacity .2s,transform .2s;pointer-events:none}.whatsapp-float:hover .whatsapp-float-label,.whatsapp-float:focus-visible .whatsapp-float-label{opacity:1;transform:none}.footer{padding-bottom:95px}.local-page .header{height:90px}.breadcrumbs{font-size:1rem;color:#6e7d8c;display:flex;flex-wrap:wrap;gap:10px;padding-top:27px}.breadcrumbs a:hover{text-decoration:underline}.local-hero{padding-block:56px 65px;display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}.local-hero h1{font-size:clamp(43px,4.7vw,66px);line-height:1.15;letter-spacing:-2.7px;margin-bottom:23px}.local-hero h1 span{color:#53606d}.local-hero .eyebrow{color:#6c7a89}.local-hero-copy>p:not(.eyebrow){font-size:1rem;color:var(--muted);line-height:1.9}.local-hero img{width:100%;height:390px;object-fit:cover;border-radius:8px}.local-caption{font-size:0.875rem;color:#7a8896;margin:8px 0 0}.local-summary{padding:32px;border:1px solid var(--line);background:#e7ebee;border-radius:8px;margin-bottom:65px}.local-summary h2{font-size:1.25rem;letter-spacing:-.7px;font-weight:600;margin-bottom:12px}.local-summary p{font-size:1rem;line-height:1.9;margin-bottom:0;color:#596672}.local-content{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;padding-bottom:60px}.local-content h2{font-size:1.75rem;letter-spacing:-1px;line-height:1.35;font-weight:500;margin-bottom:20px}.local-content h3{font-size:1.125rem;font-weight:600;letter-spacing:-.3px;margin:28px 0 10px}.local-content p,.local-content li{font-size:1rem;color:var(--muted);line-height:1.95}.local-content ul,.local-content ol{padding-left:20px}.local-content li{padding-left:5px;margin-bottom:10px}.local-aside{align-self:start;background:#eaf0f5;border-radius:7px;padding:27px;position:sticky;top:25px}.local-aside h2{font-size:1.375rem;letter-spacing:-.5px}.local-aside p,.local-aside li{font-size:1rem}.local-aside .button{font-size:1rem;gap:14px;width:100%;margin-top:10px}.local-services{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:48px;margin-bottom:65px}.local-services>h2{font-size:1.8125rem;letter-spacing:-1px;font-weight:500;margin-bottom:28px}.local-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.local-service-grid h3{font-size:1.125rem;font-weight:600;line-height:1.5}.local-service-grid p{font-size:1rem;color:var(--muted);line-height:1.9}.local-related{display:flex;gap:15px 30px;flex-wrap:wrap;padding-bottom:60px}.local-related a{font-size:1rem;border-bottom:1px solid #a8b2bb}.local-related a:hover{color:#445566}.local-page .faq{padding-top:0}.local-page .footer-bottom{flex-wrap:wrap}.local-page .footer-bottom a{font-size:0.875rem}
@media(max-width:800px){.hero h1{font-size:4.75rem;letter-spacing:-4px}.whatsapp-contact{flex-direction:column;align-items:flex-start;gap:23px}.project-type-grid{gap:25px}.local-hero{gap:30px;grid-template-columns:1fr 1fr}.local-hero h1{font-size:2.875rem}.local-hero img{height:350px}.local-content{gap:30px}.local-service-grid{grid-template-columns:1fr;gap:10px}.local-service-grid h3{margin-bottom:10px}.local-page .header{height:78px}}
@media(max-width:540px){.hero h1{font-size:clamp(43px,13.3vw,65px);letter-spacing:-2.7px}.hero .hero-description{font-size:1rem}.project-types{padding-bottom:55px}.project-types h2{font-size:1.5625rem}.project-type-grid{grid-template-columns:1fr;gap:25px}.city-list>a{font-size:0.875rem;gap:10px}.whatsapp-contact h2{font-size:1.9375rem;letter-spacing:-1.2px}.whatsapp-float{width:55px;height:55px;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px))}.whatsapp-float-label{display:none}.whatsapp-contact .contact-copy>p:not(.eyebrow){font-size:1rem}.local-page .header{height:73px}.local-hero{grid-template-columns:1fr;padding-block:32px 35px;gap:25px}.local-hero h1{font-size:2.75rem;letter-spacing:-2px}.local-hero-copy>p:not(.eyebrow){font-size:1rem}.local-hero img{height:245px}.local-summary{padding:24px;margin-bottom:40px}.local-content{grid-template-columns:1fr;gap:20px;padding-bottom:40px}.local-content h2{font-size:1.625rem}.local-content p,.local-content li{font-size:1rem}.local-aside{position:static}.local-services{padding-block:35px;margin-bottom:45px}.local-services>h2{font-size:1.5625rem}.local-related{gap:14px 20px;padding-bottom:40px}.local-related a{font-size:1rem}.local-page .breadcrumbs{font-size:0.875rem}.footer-bottom>span:nth-child(2){margin-left:0}.footer-bottom a{font-size:0.875rem}}
.contact-float{position:fixed;right:25px;bottom:calc(25px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;align-items:center;justify-content:center;width:59px;height:59px;background:var(--accent);color:var(--dark);border:1px solid #909eac;border-radius:50%;box-shadow:0 5px 25px #0003;transition:transform .2s,background .2s}.contact-float>svg{width:27px;height:27px}.contact-float:hover{background:#d1e7f5;transform:translateY(-3px)}.contact-float-label{position:absolute;right:70px;white-space:nowrap;background:var(--dark);color:#eff2f5;border-radius:5px;padding:8px 13px;font-size:1rem;opacity:0;transform:translateX(7px);transition:opacity .2s,transform .2s;pointer-events:none}.contact-float:hover .contact-float-label,.contact-float:focus-visible .contact-float-label{opacity:1;transform:none}.navigation a[aria-current=page]{color:var(--accent)}
@media(max-width:1100px) and (min-width:801px){.navigation{gap:15px;font-size:1rem}}@media(max-width:540px){.contact-float{width:55px;height:55px;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px))}.contact-float-label{display:none}}
/* Interactive home controls: a single glass surface over the architecture. */
.home-control{position:absolute;right:7%;top:24%;width:365px;padding:25px 25px 17px;color:#ebeef2;background:linear-gradient(145deg,#1f2f40e8,#141e28e8);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border:1px solid #ffffff2c;border-radius:22px;box-shadow:0 28px 70px #090d1140,inset 0 1px 0 #ffffff12;isolation:isolate;transform:none;overflow:hidden}.home-control:before{content:'';position:absolute;width:220px;height:220px;top:-120px;right:-90px;background:radial-gradient(circle,#b5c7d91c,transparent 70%);pointer-events:none;z-index:-1}.control-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.control-room{display:flex;align-items:center;gap:9px;color:#b2bbc3;font-size:0.875rem;font-weight:500;letter-spacing:1.8px}.control-room svg{width:15px;height:15px;color:#bcc6cf}.control-demo{display:flex;align-items:center;gap:6px;font-size:0.875rem;letter-spacing:1.2px;color:#b1bbc5;background:#a7b9ca0c;border:1px solid #acc0d429;padding:4px 8px;border-radius:20px}.control-demo .status-dot{width:4px;height:4px;box-shadow:none}.control-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 0 22px}.control-label{display:block;color:#85929f;font-size:0.875rem;font-weight:500;letter-spacing:1.5px;margin-bottom:7px}.control-title h2{font-size:1.5625rem;line-height:1.3;letter-spacing:-1px;font-weight:500;margin:0;color:#ebeff3}.control-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:50%;border:1px solid #acc0d444;background:#a2b8cf0a;color:#b3c5d8}.control-icon svg{width:20px;height:20px}.control-metrics{display:grid;grid-template-columns:1fr 1fr;gap:23px;border-top:1px solid #dbe4ed1b;padding-top:20px}.metric-heading{display:flex;align-items:center;gap:7px;font-size:0.875rem;color:#b5bdc5;line-height:1.5;font-weight:400}.metric-heading svg{width:13px;height:13px;color:#9aa8b6}.climate-control{text-align:center;border-right:1px solid #dbe4ed15;padding-right:19px}.climate-control .metric-heading{justify-content:center}.climate-dial{width:126px;height:126px;border-radius:50%;display:grid;place-items:center;margin:16px auto 13px;position:relative;background:conic-gradient(from 225deg,#b6c8da 0 var(--temperature-progress),#59667235 var(--temperature-progress),#59667235 75%,transparent 75%);padding:3px;transform:rotate(0deg)}.climate-dial:before{content:'';position:absolute;inset:11px;border-radius:50%;border:1px dashed #c6d2df20}.climate-dial-inner{width:100%;height:100%;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#1c2b3a;box-shadow:inset 0 0 25px #1a283640}.climate-dial-inner strong{font-family:var(--display);font-size:2.4375rem;font-weight:400;letter-spacing:-2px;line-height:1.2;display:flex;align-items:flex-start;gap:4px;font-variant-numeric:tabular-nums}.climate-dial-inner small{font-size:1rem;font-weight:400;line-height:1.5;letter-spacing:0;margin-top:7px;color:#a2acb6}.climate-dial-inner>span{font-size:0.875rem;color:#929eaa;margin-top:5px;max-width:95px;line-height:1.5}.temperature-actions{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:-11px;position:relative}.temperature-actions button{width:28px;height:28px;border-radius:50%;background:#25384c;border:1px solid #b5c4d335;color:#d0dae4;display:grid;place-items:center;padding:0;font-size:1.125rem;line-height:1;transition:background .2s,border-color .2s}.temperature-actions button:hover:not(:disabled){background:#434d57;border-color:#a2b6ca88}.temperature-actions button:disabled{opacity:.3;cursor:default}.temperature-actions>span{font-size:0.875rem;letter-spacing:1.4px;color:#7c8a98}.light-reading{display:flex;flex-direction:column;margin-top:22px}.light-reading strong{font-family:var(--display);font-size:2.4375rem;line-height:1.2;font-weight:400;letter-spacing:-2px;font-variant-numeric:tabular-nums}.light-reading small{font-size:1.125rem;margin-left:3px;color:#a2acb6;letter-spacing:0}.light-reading>span{font-size:0.875rem;color:#939eaa;margin-top:5px}.home-control .control-range{display:block;width:100%;height:18px;min-height:0;padding:0;border:0;box-shadow:none;margin:17px 0 0;background:transparent;appearance:none;-webkit-appearance:none;cursor:pointer;color:var(--accent)}.control-range::-webkit-slider-runnable-track{height:3px;border-radius:6px;background:linear-gradient(to right,#b8c9da var(--light-progress),#68768550 var(--light-progress))}.control-range::-moz-range-track{height:3px;border-radius:6px;background:linear-gradient(to right,#b8c9da var(--light-progress),#68768550 var(--light-progress))}.control-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:13px;height:13px;margin-top:-5px;border-radius:50%;background:#cedae6;border:3px solid #67798c;box-shadow:0 0 0 4px #a1b8cf0c}.control-range::-moz-range-thumb{width:8px;height:8px;border-radius:50%;background:#cedae6;border:3px solid #67798c;box-shadow:0 0 0 4px #a1b8cf0c}.light-scale{display:flex;align-items:center;justify-content:space-between;margin-top:2px;color:#8f9ca8}.light-scale svg{width:10px;height:10px}.ambience-detail{display:flex;gap:7px;align-items:flex-start;border-top:1px solid #dbe4ed15;margin-top:17px;padding-top:12px}.ambience-swatch{width:6px;height:6px;margin-top:4px;flex-shrink:0;border-radius:50%;background:#f2dc9d;box-shadow:0 0 9px #f2dc9d35}.ambience-detail>div>span{font-size:0.875rem;display:block;color:#c5cdd5;line-height:1.5}.ambience-detail small{display:block;font-size:0.875rem;line-height:1.6;color:#7f8d9b;margin-top:3px}.control-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #dbe4ed1b;margin-top:22px;padding-top:14px}.control-footer>span:first-child{font-size:0.875rem;color:#a0aab4}.scene-pagination{display:flex;align-items:center;gap:5px}.scene-pagination i{height:3px;width:3px;background:#606d7a;border-radius:5px;transition:width .3s,background .3s}.scene-pagination i.is-active{width:15px;background:#b4c6d8}.simulation-note{font-size:0.875rem;color:#71808f;text-align:center;margin:11px 0 0;letter-spacing:.3px}.hero[data-scene=custom] .hero-image{filter:brightness(var(--demo-brightness,.5))}.hero[data-scene=cinema] .ambience-swatch{background:#bbc3f4}.hero[data-scene=away] .ambience-swatch{background:#add9b2}.hero[data-scene=night] .ambience-swatch{background:#a5b9dc}
@media(min-width:1600px){.home-control{right:10%;width:385px;padding:28px 29px 18px;top:25%}.control-title h2{font-size:1.6875rem}.control-metrics{gap:27px}.climate-dial{width:132px;height:132px}.climate-dial-inner strong,.light-reading strong{font-size:2.625rem}.ambience-detail>div>span{font-size:0.875rem}.ambience-detail small{font-size:0.875rem}}
@media(min-width:801px) and (max-width:1100px){.home-control{right:4%;width:322px;top:28%;padding:23px 21px 16px}.control-title h2{font-size:1.375rem}.control-metrics{gap:18px}.climate-control{padding-right:15px}.climate-dial{width:116px;height:116px}.climate-dial-inner strong,.light-reading strong{font-size:2.1875rem}.hero-content{max-width:660px}.hero h1{font-size:clamp(60px,6.6vw,74px)}}
@media(max-width:800px){.hero{height:990px}.home-control{top:auto;bottom:155px;right:35px;width:322px;padding:23px 21px 15px}.control-title{margin:21px 0 20px}.control-title h2{font-size:1.4375rem}.control-metrics{gap:18px;padding-top:18px}.climate-control{padding-right:15px}.climate-dial{width:116px;height:116px}.climate-dial-inner strong,.light-reading strong{font-size:2.1875rem}.control-footer{margin-top:19px;padding-top:12px}}
@media(max-width:540px){.hero{height:1040px}.home-control{left:24px;right:24px;bottom:169px;width:auto;max-width:365px;padding:22px 22px 14px;margin-inline:auto;border-radius:18px}.control-title{margin:20px 0}.control-title h2{font-size:1.5rem}.control-label{font-size:0.875rem}.control-metrics{gap:22px}.climate-control{padding-right:18px}.climate-dial{width:116px;height:116px;margin-top:15px}.control-footer{margin-top:18px}.light-reading{margin-top:20px}.simulation-note{font-size:0.875rem;margin-top:10px}}
@media(max-width:360px){.home-control{padding:20px 18px 13px}.control-title h2{font-size:1.375rem}.control-metrics{gap:17px}.climate-control{padding-right:13px}.climate-dial{width:105px;height:105px}.control-room{font-size:0.875rem}.ambience-detail small{font-size:0.875rem}}

/* Reading scale shared by the home, coverage pages and contact form. */
:root {
  --muted: #586879;
  --text-body: 1.0625rem;
  --text-ui: 1rem;
  --text-small: .875rem;
  --sans: 'DM Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --display: 'Manrope', system-ui, -apple-system, 'Segoe UI', sans-serif;
}
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { font-size: var(--text-body); line-height: 1.7; }
h1, h2, h3 { overflow-wrap: break-word; }
:where(p, li, label, summary, a, button) { overflow-wrap: break-word; }
:where(.section-heading, .solution-panel, .experience-grid, .process-grid, .contact-grid, .local-hero, .local-content, .local-service-grid) > * { min-width: 0; }
.eyebrow, .small-label, .scene-caption, .scroll-cue, .back-top { letter-spacing: .08em; line-height: 1.6; }
.eyebrow, .small-label, .coverage .eyebrow, .local-hero .eyebrow { color: #545f6a; }
.hero .eyebrow { color: #dfe2e6; }
.contact .eyebrow { color: #b7bfc7; }
.button { min-height: 48px; line-height: 1.5; }
.navigation { gap: 24px; font-size: var(--text-ui); }
.navigation a { padding-block: 10px; }
.header-cta { font-size: var(--text-small); gap: 12px; }
.brand-second, .footer .brand-second { font-size: var(--text-small); letter-spacing: .08em; }
.hero {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  align-items: center;
  gap: 48px;
  height: auto;
  min-height: 820px;
  max-height: none;
  padding: 64px 5.5% 32px;
}
.hero-content { max-width: none; padding: 0; }
.hero h1 { font-size: clamp(3rem, 6vw, 6.3125rem); letter-spacing: -.055em; }
.hero .hero-description { font-size: 1.125rem; line-height: 1.75; max-width: 48ch; }
.hero-text-link { font-size: var(--text-ui); }
.home-control {
  position: relative;
  inset: auto;
  justify-self: end;
  width: 100%;
  max-width: 430px;
  margin: 0;
  padding: 28px;
}
.control-room, .control-demo, .control-label { font-size: var(--text-small); letter-spacing: .04em; }
.control-room { color: #cbd2d9; }
.control-label, .simulation-note { color: #bac1c8; }
.control-top { flex-wrap: wrap; }
.control-title h2 { font-size: 1.625rem; letter-spacing: -.03em; }
.control-metrics { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; }
.metric-heading { font-size: var(--text-small); color: #d0d6db; }
.climate-control { padding-right: 16px; }
.climate-dial { width: 142px; height: 142px; max-width: 100%; }
.climate-dial-inner strong, .light-reading strong { font-size: 2.4375rem; }
.climate-dial-inner > span { font-size: var(--text-small); color: #cad1d8; max-width: 112px; }
.climate-dial-inner small { font-size: var(--text-small); }
.temperature-actions { gap: 10px; margin-top: 4px; flex-wrap: wrap; }
.temperature-actions button { width: 44px; height: 44px; font-size: 1.375rem; }
.temperature-actions > span { flex-basis: 100%; order: 1; font-size: var(--text-small); letter-spacing: .04em; color: #bac1c8; }
.light-reading > span, .ambience-detail > div > span, .ambience-detail small, .control-footer > span:first-child, .simulation-note { font-size: var(--text-small); line-height: 1.6; }
.light-reading > span, .ambience-detail small, .control-footer > span:first-child { color: #c0c8d0; }
.home-control .control-range { height: 44px; margin-top: 10px; }
.control-range::-webkit-slider-thumb { width: 22px; height: 22px; margin-top: -9.5px; }
.control-range::-moz-range-thumb { width: 16px; height: 16px; }
.hero-bottom { position: static; grid-column: 1 / -1; padding-top: 24px; align-items: center; }
.scene-button { min-height: 44px; font-size: var(--text-small); padding: 10px 14px; }
.scene-caption, .scroll-cue { font-size: var(--text-small); }
.ecosystems { flex-wrap: wrap; gap: 24px; padding-block: 32px; }
.ecosystems > p { font-size: var(--text-ui); }
.ecosystems-note { color: var(--muted); max-width: 130px; font-size: var(--text-small); }
.solution-tabs button { font-size: var(--text-ui); color: #545f6b; }
.solution-tabs button span { color: #57626e; }
.solution-copy > p, .experience-intro, .experience-points p, .process-grid p,
.project-type-grid p, .faq-list details > p, .faq > div > p:last-child,
.local-hero-copy > p:not(.eyebrow), .local-summary p, .local-content p, .local-content li,
.local-aside p, .local-aside li, .local-service-grid p,
.contact-copy > p:not(.eyebrow), .whatsapp-contact .contact-copy > p:not(.eyebrow) {
  font-size: var(--text-body); line-height: 1.8;
}
.solution-copy > p { max-width: 55ch; }
.solution-copy ul { font-size: var(--text-ui); gap: 12px; }
.experience-intro, .experience-points p { color: #4f5a65; }
.project-type-grid h3, .experience-points h3, .process-grid h3, .local-service-grid h3 { font-size: 1.25rem; line-height: 1.45; }
.text-link, .solution-copy .text-link, .city-list > a, .local-related a, .local-aside .button { font-size: var(--text-ui); }
.coverage-heading p:not(.eyebrow) { font-size: var(--text-ui); }
.city-list { min-width: 0; gap: 20px 28px; }
.city-list > a { align-items: start; }
.faq-list summary { font-size: var(--text-body); line-height: 1.6; }
.local-caption, .breadcrumbs, .local-page .breadcrumbs { font-size: var(--text-small); color: #545f6a; }
.local-content { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 48px; }
.local-content article p { max-width: 65ch; }
.local-related a { padding-block: 5px; }
.footer-main > p { font-size: var(--text-ui); }
.footer-bottom, .footer-bottom a, .local-page .footer-bottom a { font-size: var(--text-small); color: var(--muted); }
.footer-bottom { flex-wrap: wrap; }
.back-top { font-size: var(--text-small); }
.footer-bottom > span:last-child { display: block; }
.contact-float-label, .whatsapp-float-label { font-size: var(--text-small); }
@media (max-width: 1200px) {
  .header { gap: 18px; padding-inline: 32px; }
  .navigation { gap: 16px; }
  .hero { gap: 32px; padding-inline: 40px; }
  .hero h1 { font-size: clamp(3rem, 5.8vw, 4.625rem); }
  .hero .desktop-break { display: none; }
  .home-control { padding: 24px; }
  .coverage { flex-direction: column; align-items: stretch; }
}
@media (max-width: 1000px) {
  .header-cta { display: none; }
  .hero { grid-template-columns: minmax(0, 1fr); padding: 48px 35px 32px; min-height: 0; gap: 36px; }
  .hero-content { max-width: 650px; }
  .hero h1 { font-size: clamp(3rem, 9vw, 5rem); }
  .home-control { justify-self: start; max-width: 460px; }
  .scroll-cue { display: none; }
  .local-hero { grid-template-columns: minmax(0, 1fr); }
  .local-hero img { height: 320px; }
  .local-content { grid-template-columns: minmax(0, 1fr); }
  .local-aside { position: static; }
  .process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 800px) {
  .header-cta { display: inline-flex; }
  .navigation { font-size: var(--text-ui); }
  .navigation.is-open { gap: 8px; }
  .navigation a { font-size: var(--text-ui); }
  .solution-panel { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .solution-copy > p { max-width: 65ch; }
  .solution-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .solution-tabs button { flex-direction: row; padding: 16px 12px; gap: 8px; }
  .solution-tabs button span { display: none; }
  .section-heading { flex-wrap: wrap; }
  .section-heading > p { font-size: var(--text-ui); }
  .footer-main { flex-wrap: wrap; }
}
@media (max-width: 540px) {
  .hero { padding: 36px 23px 28px; gap: 32px; }
  .hero h1 { font-size: clamp(2.75rem, 12vw, 4rem); }
  .hero .hero-description { font-size: var(--text-body); }
  .hero .button { font-size: var(--text-ui); gap: 16px; }
  .hero .eyebrow { font-size: var(--text-small); letter-spacing: .06em; }
  .home-control { padding: 20px; border-radius: 18px; }
  .control-title h2 { font-size: 1.5rem; }
  .control-metrics { gap: 14px; }
  .climate-control { padding-right: 12px; }
  .climate-dial { width: 124px; height: 124px; }
  .climate-dial-inner strong, .light-reading strong { font-size: 2.1875rem; }
  .hero-bottom { width: 100%; }
  .scene-buttons { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .scene-button { padding-inline: 8px; }
  .ecosystem-logos { flex-basis: 100%; }
  .process-grid, .city-list { grid-template-columns: minmax(0, 1fr); }
  .process-grid { gap: 28px; }
  .project-type-grid { grid-template-columns: minmax(0, 1fr); }
  .footer-main > p { margin-left: 0; }
  .footer-bottom { flex-direction: column; gap: 12px; }
  .footer-bottom > span:nth-child(2) { margin-left: 0; }
  .local-hero h1 { font-size: clamp(2.25rem, 10vw, 2.75rem); }
}
@media (max-width: 360px) {
  .home-control { padding: 18px; }
  .control-metrics { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .climate-control { padding-right: 0; border-right: 0; }
  .climate-dial { width: 142px; height: 142px; }
  .light-reading { margin-top: 12px; }
}
.experience-points article > span, .step-number, .solution-tabs button span, .local-summary p { color: #515b66; }
@media (max-width: 800px) {
  .menu-button { width: 44px; height: 44px; flex-shrink: 0; padding: 10px; }
}
@media (max-width: 540px) {
  .header { gap: 12px; }
}
@media (max-width: 380px) {
  .header-cta { display: none; }
  .menu-button { margin-left: auto; }
}
/* Intrinsic wrapping also respects a larger default browser text size. */
.header, .local-page .header, .contact-page .header {
  height: auto;
  min-height: 90px;
  flex-wrap: wrap;
  padding-block: 18px;
}
.navigation { flex-wrap: wrap; }
/* Keep the control in its own desktop column as the headline wraps. */
.hero {
  grid-template-columns: minmax(0, 1fr) minmax(0, 26.875rem);
  align-items: start;
  container-type: inline-size;
}
.home-control { max-width: 26.875rem; }
.control-metrics { grid-template-columns: repeat(auto-fit, minmax(min(100%, 8rem), 1fr)); }
.climate-dial { width: 8.875rem; height: 8.875rem; }
.climate-dial-inner > span { max-width: 7rem; }
.control-room, .control-demo { min-width: 0; }
@media (max-width: 1000px) {
  .hero { grid-template-columns: minmax(0, 1fr); }
  .home-control { max-width: 28.75rem; }
}
@media (max-width: 800px) {
  .header, .local-page .header, .contact-page .header { min-height: 78px; padding-block: 12px; }
  .navigation { top: 100%; }
}
@media (max-width: 540px) {
  .header, .local-page .header, .contact-page .header { min-height: 73px; }
  .climate-dial { width: 7.75rem; height: 7.75rem; }
}
@media (max-width: 360px) {
  .climate-dial { width: 8.875rem; height: 8.875rem; }
}
@media (max-width: 540px) {
  .header-cta { display: none; }
  .menu-button { margin-left: auto; }
}
.ecosystems-note { max-width: 12ch; overflow-wrap: anywhere; }
.faq-list summary { overflow-wrap: anywhere; }
.faq-list summary > span, .back-top span, .scroll-cue span { flex-shrink: 0; min-width: 1.5em; min-height: 1.5em; }

/* Larger browser text sizes stack both blocks without narrowing the copy. */
@container (width < 55rem) {
  .hero-content, .home-control { grid-column: 1 / -1; }
  .home-control { justify-self: start; }
}

/* Share intrinsic rows across tabs so content length never shifts the section. */
.solution-panels {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr);
  grid-template-rows: repeat(5, auto);
  gap: 16px 60px;
}
.solution-panels > .solution-panel {
  grid-area: 1 / 1 / span 5 / -1;
  grid-template-columns: subgrid;
  grid-template-rows: subgrid;
  gap: inherit;
  align-items: start;
}
.solution-panels > .solution-panel[hidden] {
  display: grid;
  visibility: hidden;
  pointer-events: none;
}
.solution-panels .solution-visual { grid-area: 1 / 1 / span 5 / 2; }
.solution-panels .solution-copy {
  display: grid;
  grid-area: 1 / 2 / span 5 / 3;
  grid-template-rows: subgrid;
  row-gap: inherit;
  align-items: start;
}
.solution-panels .solution-copy > * { margin-block: 0; }
.solution-panels .solution-copy > .text-link { justify-self: start; }
@media (max-width: 1100px) {
  .solution-panels { column-gap: 38px; }
}
@media (max-width: 800px) {
  .solution-panels {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: repeat(6, auto);
    column-gap: 0;
  }
  .solution-panels > .solution-panel { grid-row: 1 / span 6; }
  .solution-panels .solution-visual { grid-area: 1 / 1 / 2 / 2; margin-bottom: 12px; }
  .solution-panels .solution-copy { grid-area: 2 / 1 / span 5 / 2; }
}

/* Linker keeps the existing house symbol and lime accent as its brand mark. */
.brand, .footer .brand {
  gap: 11px;
  font-size: 2rem;
  letter-spacing: -.04em;
  line-height: 1;
  flex-shrink: 0;
}
.brand-wordmark { display: block; font-weight: 750; }
@media (max-width: 540px) {
  .brand, .footer .brand { gap: 9px; font-size: 1.875rem; }
}

/* The original home identity leads; Linker signs the header as its company. */
.header .brand { gap: 11px; font-size: 1.4375rem; letter-spacing: -.035em; }
.brand-name { display: block; font-weight: 750; line-height: 1; }
.brand-baseline { display: flex; align-items: baseline; gap: 12px; margin-top: 6px; }
.header .brand-second { margin: 0; font-size: .875rem; font-weight: 500; letter-spacing: .08em; }
.brand-signature { font-size: .875rem; font-weight: 400; line-height: 1.3; letter-spacing: 0; color: #c1c8cf; white-space: nowrap; }
.brand-signature strong { color: var(--accent); font-weight: 700; letter-spacing: -.02em; }
@media (max-width: 540px) {
  .header .brand { gap: 9px; font-size: 1.25rem; }
  .brand-baseline { gap: 10px; }
}

/* Shared navigation: four destinations and a single primary action. */
.header,.local-page .header,.contact-page .header{
  position:sticky;top:0;z-index:50;min-height:86px;height:auto;
  flex-wrap:nowrap;gap:32px;padding:18px clamp(24px,4.7vw,80px);
  background:var(--dark);border-bottom:1px solid #ffffff1c;
}
.navigation{display:block;position:static;margin-left:auto;padding:0;background:transparent;border:0;box-shadow:none;flex-shrink:1;min-width:0}
.nav-links{display:flex;align-items:center;gap:clamp(18px,2vw,30px)}
.navigation .nav-links>a{display:flex;align-items:center;gap:12px;padding:10px 0;color:#c8d3dd;font-size:.9375rem;line-height:1.5;white-space:nowrap;border-bottom:1px solid transparent}
.nav-links strong{font-weight:500}
.navigation .nav-links>a:hover,.navigation .nav-links>a[aria-current]{color:#e8f4fc;border-bottom-color:#b8d8ed}
.nav-heading,.nav-links small,.nav-arrow,.nav-mobile-footer{display:none}
.header .header-cta{display:inline-flex;flex-shrink:0;font-size:.875rem;gap:20px;padding:12px 18px;min-height:46px;margin:0}
.header .menu-button{display:none}
@media(max-width:1100px){
  .header,.local-page .header,.contact-page .header{gap:20px;padding:16px 28px;min-height:82px}
  .header .header-cta{margin-left:auto}
  .header .menu-button{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:12px;width:auto;min-width:88px;height:46px;padding:10px 12px;margin:0;border:1px solid #ffffff38;border-radius:4px;color:#edf4f9;background:transparent;flex-shrink:0}
  .menu-button>span,.menu-button[aria-expanded=true]>span:first-child,.menu-button[aria-expanded=true]>span:last-child{background:transparent;width:auto;height:auto;transform:none}
  .menu-button .menu-label{font-size:.8125rem;font-weight:500;line-height:1.5}
  .menu-button .menu-lines{display:flex;flex-direction:column;justify-content:center;gap:6px;width:19px;height:20px}
  .menu-lines i{display:block;width:19px;height:1px;background:currentColor;transition:transform .2s}
  .menu-button[aria-expanded=true] .menu-lines i:first-child{transform:translateY(3.5px) rotate(45deg)}
  .menu-button[aria-expanded=true] .menu-lines i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .header .navigation{display:none;position:absolute;top:calc(100% + 10px);left:auto;right:28px;width:min(440px,calc(100vw - 56px));padding:26px 28px;margin:0;background:#fafbfc;color:#243447;border:1px solid #dce3e9;border-radius:8px;box-shadow:0 20px 60px #0c19272b;max-height:calc(100dvh - 116px);overflow-y:auto;overscroll-behavior:contain}
  .header .navigation.is-open{display:block}
  .nav-heading{display:block;font-size:.6875rem;letter-spacing:.12em;font-weight:650;color:#586879;margin:0 0 14px}
  .nav-links{display:grid;gap:0}
  .navigation .nav-links>a{white-space:normal;justify-content:space-between;gap:20px;padding:16px 0;color:#243447;font-size:1.0625rem;border-bottom:1px solid #dce3e9}
  .nav-links strong{font-weight:600}
  .nav-links small{display:block;color:#586879;font-size:.8125rem;font-weight:400;line-height:1.7;margin-top:4px}
  .nav-arrow{display:block;color:#52718a;font-size:1.125rem;flex-shrink:0}
  .navigation .nav-links>a:hover,.navigation .nav-links>a[aria-current]{color:#365e7a;border-bottom-color:#749ab8}
  .nav-mobile-footer{display:block;padding-top:24px}
  .navigation .nav-mobile-footer>.button{display:flex;justify-content:space-between;gap:16px;color:#edf4f9;background:#142536;font-size:.9375rem;padding:13px 16px;border:0}
  .navigation .nav-mobile-footer>.button:hover{background:#284661}
  .nav-mobile-footer>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;margin-top:16px}
  .navigation .nav-mobile-footer>div>a{font-size:.8125rem;line-height:1.6;color:#586879;padding:8px 0}
  .navigation .nav-mobile-footer>div>a:hover{text-decoration:underline;text-underline-offset:4px}
}
@media(max-width:600px){
  .header,.local-page .header,.contact-page .header{min-height:78px;padding:14px 23px;gap:14px}
  .header .header-cta{display:none}
  .header .menu-button{margin-left:auto;min-width:82px;padding-inline:10px;gap:10px}
  .header .navigation{left:16px;right:16px;width:auto;padding:22px;max-height:calc(100dvh - 106px)}
}
@media(prefers-reduced-motion:reduce){.menu-lines i{transition:none}}
/* Keep supporting panels below the fixed navigation while reading. */
.local-aside{top:110px}
@media(max-width:380px){
  .header,.local-page .header,.contact-page .header{padding-inline:16px;gap:12px}
  .header .brand{gap:8px;font-size:1.125rem}
  .header .brand-mark,.header .brand-mark svg{width:30px;height:32px}
  .header .brand-second,.header .brand-signature{font-size:.75rem}
  .header .brand-baseline{gap:8px}
  .header .menu-button{min-width:76px;padding-inline:8px;gap:8px}
}
