/* HTS — a quiet, content-led design system. System fonts require no font downloads. */
:root{--ink:#1d1d1f;--muted:#606064;--blue:#0066cc;--sky:#0071e3;--navy:#1d1d1f;--deep:#101012;--pale:#f5f5f7;--line:#d2d2d7;--white:#fff;--radius:24px;--max:1200px;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink);background:#fff;font-synthesis:none;font-size:16px;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:140px}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto;display:block}svg{flex-shrink:0}p{line-height:1.6;margin:0 0 1.2em}h1,h2,h3,h4{letter-spacing:-.035em;margin:0;line-height:1.08;font-weight:650;text-wrap:balance}h1{font-size:clamp(2.75rem,5.4vw,5rem)}h2{font-size:clamp(2.25rem,3.6vw,3.5rem)}h3{font-size:1.5rem;line-height:1.2;letter-spacing:-.022em}ul{line-height:1.65}a,button,input,summary,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #0071e3;outline-offset:5px}a,button,summary{touch-action:manipulation}.wrap{width:min(var(--max),calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;top:-100px;left:16px;z-index:1000;background:white;padding:16px;border-radius:10px}.skip-link:focus{top:10px}.button-row{display:flex;justify-content:flex-start;align-items:center;gap:18px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border-radius:999px;background:var(--sky);color:#fff;border:1px solid transparent;font-size:1rem;font-weight:400;line-height:1.35;transition:background .18s}.btn:hover{background:#0077ed}.btn svg{display:none}.btn-outline{border-color:var(--sky);background:transparent;color:var(--blue)}.btn-outline:hover{background:var(--sky);color:#fff}.btn-white{background:white;color:#1d1d1f}.btn-white:hover{background:#ededf0}.btn-light-outline{color:#fff;border-color:#fff;background:transparent}.btn-light-outline:hover{background:#fff;color:#1d1d1f}.text-link{display:inline-flex;align-items:center;gap:5px;font-size:1rem;line-height:1.5;color:var(--blue);white-space:normal}.text-link svg{width:16px;height:16px}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.eyebrow{font-size:1.125rem;letter-spacing:-.01em;font-weight:600;color:var(--muted);margin-bottom:18px;line-height:1.4}.icon-box{color:var(--blue);display:grid;place-items:center;width:48px;height:48px;flex-shrink:0}.icon-box svg{height:32px;width:32px}
/* A compact global navigation that expands into clear service categories. */
.header{position:sticky;top:0;z-index:90;background:rgba(250,250,252,.92);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid #00000008}.header-inner{min-height:64px;display:flex;align-items:center;gap:30px}.brand{display:inline-flex;align-items:center;gap:7px;flex-shrink:0}.brand-symbol{height:29px;width:29px;object-fit:contain}.brand-wordmark{height:auto;width:134px;mix-blend-mode:multiply}.global-nav{display:flex;align-items:center;justify-content:space-between;gap:25px;flex:1;font-size:.875rem}.global-nav>a,.nav-disclosure>summary{min-height:64px;display:flex;align-items:center;white-space:nowrap}.global-nav>a:hover,.global-nav>a[aria-current=page],.nav-disclosure>summary:hover{color:var(--blue)}.nav-disclosure>summary{cursor:pointer;list-style:none;gap:5px}.nav-disclosure>summary::-webkit-details-marker{display:none}.nav-disclosure>summary>svg{width:11px;height:11px;transform:rotate(90deg);transition:transform .2s}.nav-disclosure[open]>summary>svg{transform:rotate(-90deg)}.mega-panel{position:absolute;top:100%;left:0;right:0;background:#fafafc;border-bottom:1px solid #d2d2d7;box-shadow:0 28px 35px #00000012;padding:44px 0 50px}.mega-grid{display:grid;grid-template-columns:1.2fr 1.2fr 1fr;gap:50px}.nav-column p{font-size:.875rem;color:var(--muted);margin-bottom:20px}.nav-column a{display:block;font-size:1.35rem;font-weight:600;letter-spacing:-.025em;padding:9px 0;white-space:normal;line-height:1.25}.nav-column:last-child a{font-size:1rem;font-weight:500}.nav-column a:hover{color:var(--blue)}.header-actions{display:flex;align-items:center;gap:12px}.icon-button{border:0;background:none;display:grid;place-items:center;color:inherit;padding:10px;width:44px;height:44px;border-radius:8px}.icon-button:hover{background:#e8e8ed}.icon-button svg{width:19px;height:19px}.nav-book{border-radius:999px;background:var(--sky);color:#fff;white-space:nowrap;font-size:.875rem;line-height:1.4;padding:9px 16px}.nav-book:hover{background:#0077ed}.menu-toggle,.global-nav .mobile-nav-contact{display:none}.search-dialog{border:0;border-radius:0 0 24px 24px;position:fixed;top:0;margin:0 auto;padding:0;width:min(100%,900px);max-width:100%;max-height:90dvh;overflow:auto;box-shadow:0 30px 80px #00000022;color:var(--ink);background:#fafafc}.search-dialog::backdrop{background:#0007;backdrop-filter:blur(8px)}.search-shell{padding:60px 70px 50px}.search-close{position:absolute;right:20px;top:16px}.search-shell h2{font-size:2.5rem;margin-bottom:25px}.search-label{display:block;font-size:.875rem;color:var(--muted);margin-bottom:12px}.search-field{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:10px 0 16px}.search-field input{border:0;border-radius:0;outline-offset:8px;background:transparent;width:100%;min-width:0;font-size:1.6rem;color:var(--ink)}.search-field svg{width:24px;color:var(--muted)}.search-status{margin:30px 0 10px;font-size:.875rem;color:var(--muted)}.search-results{list-style:none;margin:0;padding:0}.search-results a{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid #e5e5e9;font-weight:600;line-height:1.4}.search-results a:hover{color:var(--blue)}.search-results svg{width:14px;height:14px}.search-empty{padding:16px 0}.search-empty a{display:inline;color:var(--blue);border:0}body.search-open{overflow:hidden}
/* Large headlines and original HTS imagery, with a clear path to service. */
.service-ribbon{text-align:center;background:#fff;padding:16px 24px;font-size:.875rem;line-height:1.6}.service-ribbon a{color:var(--blue);white-space:nowrap;margin-left:5px}.service-ribbon svg{display:inline;vertical-align:middle;width:13px;height:13px}.service-ribbon a:hover{text-decoration:underline}.hero{background:var(--pale);text-align:center;overflow:hidden}.hero-inner{padding-top:64px;padding-bottom:35px}.hero-copy{max-width:850px;margin:auto}.hero .eyebrow{font-size:1.25rem;margin-bottom:16px;color:var(--ink)}.hero h1{font-size:clamp(3.4rem,6.2vw,5.65rem);line-height:1.02;letter-spacing:-.052em;font-weight:650}.hero h1 span{color:#77777c}.hero-copy>p{font-size:1.45rem;line-height:1.45;margin:24px 0 26px;color:#424245;letter-spacing:-.015em}.hero .button-row{justify-content:center}.hero-product{width:min(860px,88%);height:auto;margin:55px auto 10px;filter:drop-shadow(0 24px 16px #00000010)}.hero-caption{font-size:.875rem;color:var(--muted);margin:0}.intro-statement{padding:76px 0 40px;text-align:center}.intro-statement h2{font-size:2.25rem}.intro-statement p{max-width:700px;margin:18px auto 0;font-size:1.3rem;color:var(--muted);letter-spacing:-.018em}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.quick-paths{padding:0 0 50px}.quick-link{display:flex;align-items:center;gap:18px;padding:28px;background:var(--pale);border-radius:20px}.quick-link:hover{background:#ebebee}.quick-link h2{font-size:1.2rem;letter-spacing:-.025em;line-height:1.3;margin-bottom:6px}.quick-link p{font-size:1rem;margin:0;color:var(--muted);line-height:1.45}.quick-link .arrow{margin-left:auto;color:var(--blue);display:flex}.quick-link .arrow svg{height:20px;width:20px}.clients{padding:10px 0 64px}.clients .wrap{display:flex;flex-direction:column;gap:30px}.clients-label{font-size:.875rem;color:var(--muted);text-align:center;line-height:1.5}.clients-label br{display:none}.client-logos{display:flex;align-items:center;justify-content:center;gap:55px;width:100%}.client-logos img{width:130px;height:45px;object-fit:contain;filter:grayscale(1);opacity:.8}.brand-feature{position:relative;background:#14171a;color:white;overflow:hidden;margin:0 12px 12px;min-height:560px;display:flex;align-items:center;isolation:isolate}.brand-feature>img{position:absolute;right:0;top:0;bottom:0;width:70%;height:100%;object-fit:cover;object-position:center 58%;z-index:-2}.brand-feature:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#14171a 8%,#14171af5 27%,#14171a80 58%,#14171a05);z-index:-1}.brand-feature-copy{width:min(1200px,calc(100% - 96px));margin:70px auto}.brand-feature h2{font-size:clamp(3rem,5vw,4.8rem);max-width:570px}.brand-feature p{font-size:1.25rem;max-width:360px;margin:24px 0}.brand-feature .eyebrow{color:#e0e0e4;font-size:1rem}.brand-feature .text-link{color:#72bdff}
/* Consistent full-width sections and restrained card surfaces. */
.section{padding:100px 0}.section-soft{background:var(--pale)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:55px;margin-bottom:48px}.section-heading h2{max-width:720px}.section-heading p{font-size:1.125rem;max-width:355px;color:var(--muted);margin:0}.section-heading>.text-link{flex-shrink:0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{background:var(--pale);border:0;padding:32px;border-radius:var(--radius);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s;position:relative;min-width:0}.section-soft .service-card{background:#fff}.service-card:hover{transform:translateY(-4px);box-shadow:0 12px 35px #00000009}.service-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.service-card-top .num{font-size:.8125rem;color:var(--muted)}.service-card h3{font-size:1.5rem;margin-bottom:15px}.service-card p{color:var(--muted);font-size:1rem;margin-bottom:26px;line-height:1.55}.service-card .text-link{margin-top:auto}.section-bottom{display:flex;justify-content:center;margin-top:38px}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:75px;align-items:center}.photo-panel{position:relative;min-width:0}.photo-panel>img{width:100%;height:560px;object-fit:cover;border-radius:28px}.photo-tag{position:absolute;left:24px;bottom:24px;right:24px;background:#fffffff0;backdrop-filter:blur(16px);border-radius:18px;display:flex;align-items:center;gap:10px;padding:22px;color:var(--ink)}.photo-tag strong{display:block;font-size:1rem;line-height:1.4;margin-bottom:6px}.photo-tag span{font-size:.875rem;color:var(--muted)}.copy h2{margin-bottom:30px}.copy>p{font-size:1.125rem;color:var(--muted)}.check-list{padding:0;list-style:none;margin:28px 0 32px}.check-list li{display:flex;align-items:flex-start;gap:12px;font-size:1rem;line-height:1.5;margin:16px 0}.check-list svg{width:19px;height:19px;margin-top:3px;color:var(--blue)}.dark{background:#101012;color:#f5f5f7}.dark p{color:#b5b5bc}.dark .eyebrow{color:#b5b5bc}.management .split{gap:70px}.management .photo-panel>img{height:610px}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:34px 0}.mini-grid svg{color:#72bdff;width:26px;height:26px;margin-bottom:15px}.mini-grid h3{font-size:1.05rem;line-height:1.3;margin-bottom:9px}.mini-grid p{font-size:1rem;line-height:1.5;margin:0}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.review-card{padding:32px;background:var(--pale);border-radius:var(--radius);display:flex;flex-direction:column}.review-card blockquote{font-size:1.55rem;line-height:1.3;letter-spacing:-.025em;font-weight:600;margin:12px 0 35px}.review-person{display:flex;gap:12px;align-items:center;font-size:.875rem;margin-top:auto}.avatar{height:38px;width:38px;border-radius:50%;background:#e5e5ea;display:grid;place-items:center;color:#515154;font-size:.8125rem}.review-person small{display:block;font-size:.8125rem;color:var(--muted);margin-top:4px}.article-label{font-size:.875rem;font-weight:500;color:var(--muted);margin-bottom:13px;letter-spacing:0}.articles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.article-card{min-width:0}.article-card img{height:235px;width:100%;object-fit:cover;border-radius:22px;margin-bottom:24px}.article-card h3{font-size:1.55rem;line-height:1.22;margin-bottom:15px}.article-card a:hover h3{color:var(--blue)}.article-card p{font-size:1rem;line-height:1.6;color:var(--muted)}.article-card .text-link{margin-top:5px}.areas{display:grid;grid-template-columns:1fr 1.15fr;gap:100px;align-items:start}.areas p{margin-top:25px;font-size:1.125rem;color:var(--muted)}.area-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px}.area-links a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px 0;border-bottom:1px solid var(--line);font-size:1rem}.area-links a svg{width:16px;height:16px;color:var(--blue)}.area-links a:hover{color:var(--blue)}.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.faq-layout>div>p{margin-top:26px;color:var(--muted)}.faq-table{width:100%;border-collapse:collapse}.faq-table caption{text-align:left;color:var(--muted);font-size:.875rem;padding-bottom:14px}.faq-table th,.faq-table td{padding:22px 0;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.55;vertical-align:top;text-align:left}.faq-table th{font-weight:600;width:36%;padding-right:25px}.faq-table td{color:var(--muted)}
/* Page hierarchy, service shortcuts and long-form reading. */
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;text-align:left;font-size:.875rem;color:var(--muted);padding:26px 0 34px}.breadcrumb a:hover{color:var(--blue)}.breadcrumb>span:last-child{overflow-wrap:anywhere}.page-hero{padding-bottom:66px;text-align:center;background:var(--pale)}.page-hero h1{max-width:940px;margin:auto;font-size:clamp(2.6rem,5vw,4.5rem)}.page-hero .eyebrow{margin-top:23px}.page-hero p{max-width:770px;font-size:1.25rem;letter-spacing:-.012em;line-height:1.5;color:var(--muted);margin:28px auto}.page-hero .button-row{justify-content:center}.section-nav,.category-nav{position:sticky;top:64px;z-index:40;background:#ffffffeb;backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}.section-nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:62px}.section-nav strong{font-size:1.05rem;letter-spacing:-.02em}.section-nav .wrap>div{display:flex;gap:24px}.section-nav a,.category-nav a{font-size:.875rem;display:block;padding:18px 0;white-space:nowrap}.section-nav a:hover,.category-nav a:hover{color:var(--blue)}.category-nav .wrap{display:flex;align-items:center;justify-content:center;gap:40px}.category-heading{margin-bottom:35px}.category-heading:not(:first-child){margin-top:85px}.page-body{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:85px;align-items:start}.prose{min-width:0}.prose h2{font-size:2.25rem;margin:55px 0 23px;line-height:1.16}.prose h2:first-child{margin-top:0}.prose h3{font-size:1.3rem;margin:25px 0 14px}.prose p,.prose li{font-size:1.125rem;line-height:1.75;color:var(--muted)}.prose a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.sidebar{position:sticky;top:155px}.aside-card{background:var(--pale);padding:28px;border-radius:22px;margin-bottom:22px}.aside-card h2{font-size:1.55rem;line-height:1.2;margin:0 0 18px}.aside-card p{font-size:1rem;line-height:1.55;color:var(--muted)}.aside-card .eyebrow{font-size:.875rem}.aside-card .btn{width:100%}.aside-card>a:not(.btn){display:block;color:var(--blue);font-size:1rem;line-height:1.45;padding:14px 0;border-bottom:1px solid var(--line)}.aside-card>a:not(.btn):last-child{border:0;padding-bottom:0}.aside-card>a:hover{text-decoration:underline}.aside-card.dark{background:#1d1d1f;color:white}.aside-card.dark p{color:#c4c4cc}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0}.feature-item{padding:27px;background:var(--pale);border-radius:20px}.feature-item h3{font-size:1.25rem;margin:0 0 13px}.feature-item p{font-size:1rem;margin:0;line-height:1.6}.prose .article-byline{font-size:.875rem;margin-top:0;margin-bottom:25px;color:var(--muted)}.article-contents{background:var(--pale);border-radius:22px;padding:28px 32px;margin-bottom:45px}.article-contents p{font-size:1rem;font-weight:600;color:var(--ink);margin:0 0 10px}.article-contents a{display:block;font-size:1rem;padding:8px 0;text-decoration:none;line-height:1.4}.article-contents a:hover{text-decoration:underline}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.step{border-top:1px solid var(--line);padding:30px 0 0}.step-number{display:block;font-size:2.5rem;color:#86868b;letter-spacing:-.04em;margin-bottom:25px}.step h3{margin-bottom:18px}.step p{font-size:1.05rem;color:var(--muted)}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:start}.contact-method{padding:25px 0;border-bottom:1px solid var(--line)}.contact-method span{display:block;font-size:.875rem;color:var(--muted);margin-bottom:12px}.contact-method>a{font-size:1.3rem;color:var(--blue);overflow-wrap:anywhere}.contact-method p{font-size:1rem;color:var(--muted);margin:12px 0 0}.contact-method .text-link{font-size:1rem}.booking-panel{background:var(--pale);border-radius:24px;padding:34px;min-width:0}.booking-panel h2{font-size:1.8rem;line-height:1.2;margin-bottom:18px}.booking-panel>p{font-size:1rem;color:var(--muted)}.booking-panel iframe{max-width:100%;border:0}.booking-note{font-size:.875rem!important;margin-top:22px!important}.booking-note .text-link{font-size:inherit;display:inline}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.project-card{border-radius:26px;overflow:hidden;background:var(--pale)}.project-card img{height:340px;width:100%;object-fit:cover}.project-copy{padding:32px}.project-copy h2{font-size:1.8rem;margin-bottom:17px}.project-copy p{color:var(--muted);font-size:1.05rem}.notice{background:var(--pale);padding:24px 28px;border-radius:18px;margin:28px 0;font-size:1rem;line-height:1.6;color:var(--muted)}.sitemap-list{columns:3;column-gap:40px;list-style:none;padding:0}.sitemap-list li{break-inside:avoid;margin-bottom:17px;font-size:1rem;line-height:1.5}.sitemap-list a{color:var(--blue)}.sitemap-list a:hover{text-decoration:underline}
/* A quiet, useful footer with the complete directory. */
.closing{background:#fff;padding:95px 0 105px;text-align:center}.closing h2{font-size:clamp(2.6rem,4.3vw,4.3rem);line-height:1.04}.closing .eyebrow{font-size:1.125rem}.closing p{font-size:1.2rem;color:var(--muted);margin:25px auto;max-width:650px}.closing .button-row{justify-content:center}.footer{background:var(--pale);color:#515154;padding:0 0 25px}.footer .wrap{max-width:1100px}.footer-intro{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:32px 0;border-bottom:1px solid var(--line)}.footer-intro p{font-size:.875rem;line-height:1.5;margin:0;text-align:right}.footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;padding:35px 0}.footer h3{font-size:.875rem;letter-spacing:0;line-height:1.4;color:var(--ink);margin:0 0 14px;font-weight:600}.footer ul{list-style:none;margin:0;padding:0}.footer li{font-size:.875rem;line-height:1.45;margin-bottom:13px}.footer a:hover{text-decoration:underline;text-underline-offset:3px}.footer-links{display:flex;flex-direction:column;gap:14px;font-size:1rem}.footer-links a:hover{color:var(--blue)}.footer-contact{font-size:.875rem;display:flex;justify-content:space-between;align-items:end;gap:30px;padding:15px 0 25px}.footer-contact p{margin:0;line-height:1.65;overflow-wrap:anywhere}.footer-contact a{color:var(--blue)}.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px 25px;border-top:1px solid var(--line);padding-top:20px;font-size:.8125rem;line-height:1.4}.footer-bottom-links{display:flex;flex-wrap:wrap;gap:18px}.mobile-call{display:none}
@media(min-width:1600px){.hero-inner{padding-top:80px}.hero-product{margin-top:65px;width:900px}}
@media(max-width:1200px){.header-inner{gap:20px}.global-nav{gap:15px}.nav-book{display:none}.wrap{width:calc(100% - 64px)}.split{gap:45px}.page-body{gap:50px}.brand-feature-copy{width:calc(100% - 64px)}.faq-layout{gap:45px}.areas{gap:60px}.client-logos{gap:35px}.service-card{padding:28px}}
@media(max-width:1100px){.header-inner{min-height:60px;justify-content:space-between}.header-actions{margin-left:auto;gap:5px}.header .brand-symbol{width:27px;height:27px}.header .brand-wordmark{width:127px}.nav-book{display:block}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px}.menu-toggle span{width:18px;height:1.5px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}.global-nav{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100dvh - 60px);overflow:auto;background:#fafafc;box-shadow:0 20px 35px #00000014;padding:24px 40px 45px}.global-nav.open{display:block}.global-nav>a,.nav-disclosure>summary{min-height:58px;font-size:1.75rem;font-weight:600;letter-spacing:-.025em;justify-content:space-between}.nav-disclosure>summary>svg{width:16px;height:16px}.mega-panel{position:static;box-shadow:none;border:0;padding:20px 0}.mega-grid{width:100%;grid-template-columns:1fr 1fr;gap:28px}.nav-column a{font-size:1rem;padding:10px 0}.nav-column p{font-size:.875rem;margin-bottom:8px}.nav-column:last-child{grid-column:1 / -1}.global-nav .mobile-nav-contact{display:flex;font-size:1rem;color:var(--blue);font-weight:400;margin-top:20px}.section{padding:80px 0}.section-heading{gap:30px}.section-heading p{max-width:280px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.articles-grid{gap:22px}.article-card img{height:190px}.article-card h3{font-size:1.35rem}.reviews-grid{gap:16px}.review-card{padding:26px}.review-card blockquote{font-size:1.3rem}.photo-panel>img{height:510px}.photo-tag{padding:18px;left:16px;right:16px;bottom:16px}.photo-tag .icon-box{display:none}.management .split{gap:40px}.management .photo-panel>img{height:650px}.quick-link{padding:24px;gap:12px}.quick-link .icon-box{display:none}.client-logos{gap:26px}.client-logos img{width:105px;height:40px}.faq-layout{grid-template-columns:1fr;gap:40px}.faq-layout>div>p{max-width:600px}.page-body{grid-template-columns:1fr}.sidebar{position:static;display:grid;grid-template-columns:1fr 1fr;gap:25px}.section-nav,.category-nav{top:60px}.section-nav .wrap{min-height:58px}.section-nav strong{max-width:220px;line-height:1.3;font-size:1rem}.section-nav .wrap>div{gap:18px}.footer-grid{gap:24px}.contact-layout{gap:40px}.booking-panel{padding:24px}.contact-layout h2{font-size:2rem}.areas{gap:35px}.sitemap-list{columns:2}body.nav-open{overflow:hidden}}
@media(max-width:680px){:root{--radius:22px}.wrap{width:calc(100% - 40px)}h1{font-size:2.8rem}h2{font-size:2.3rem}h3{font-size:1.4rem}.header-inner{width:calc(100% - 28px);gap:10px}.header .brand-wordmark{width:108px}.header .brand-symbol{width:25px;height:25px}.header-actions{gap:0}.nav-book{font-size:.875rem;padding:8px 11px}.header-actions .icon-button{width:40px}.global-nav{padding:18px 26px 45px}.global-nav>a,.nav-disclosure>summary{font-size:1.75rem}.mega-grid{grid-template-columns:1fr;gap:28px}.nav-column:last-child{grid-column:auto}.search-dialog{border-radius:0 0 20px 20px;max-height:100dvh}.search-shell{padding:70px 25px 35px}.search-shell h2{font-size:2rem}.search-field input{font-size:1.2rem}.search-status{margin-top:25px}.service-ribbon{padding:14px 24px;font-size:.875rem}.service-ribbon a{display:block;white-space:normal}.hero-inner{padding-top:43px;padding-bottom:28px}.hero .eyebrow{font-size:1rem;margin-bottom:18px}.hero h1{font-size:clamp(2.5rem,10vw,3.9rem);letter-spacing:-.045em;line-height:1.06}.hero-copy>p{font-size:1.15rem;line-height:1.45;margin:22px 0 25px}.button-row{gap:12px}.btn{min-height:46px;padding:12px 21px;font-size:1rem}.hero .btn{font-size:1rem;padding:12px 18px}.hero-product{width:100%;margin:42px auto 16px}.hero-caption{font-size:.875rem}.intro-statement{padding:55px 0 28px}.intro-statement h2{font-size:2rem}.intro-statement p{font-size:1.15rem;margin-top:16px}.quick-grid{grid-template-columns:1fr;gap:12px}.quick-paths{padding-bottom:36px}.quick-link{padding:24px}.quick-link h2{font-size:1.2rem}.quick-link p{font-size:1rem}.clients{padding:5px 0 40px}.clients .wrap{gap:23px}.client-logos{flex-wrap:wrap;gap:22px 30px}.client-logos img{width:88px;height:32px}.brand-feature{margin:0 8px 8px;min-height:620px;align-items:flex-start}.brand-feature-copy{width:calc(100% - 44px);margin:42px auto}.brand-feature h2{font-size:3rem}.brand-feature .eyebrow{font-size:1rem}.brand-feature p{font-size:1.1rem;max-width:290px;margin:20px 0}.brand-feature>img{width:100%;height:75%;top:auto;bottom:0;object-position:center 65%}.brand-feature:after{background:linear-gradient(180deg,#14171a 15%,#14171aef 31%,#14171a3b 66%,#14171a00)}.section{padding:64px 0}.eyebrow{font-size:1rem;margin-bottom:16px}.section-heading{display:block;margin-bottom:33px}.section-heading p,.section-heading>.text-link{max-width:none;margin-top:24px}.section-heading h2{font-size:2.3rem}.service-grid{grid-template-columns:1fr;gap:18px}.service-card{padding:28px}.service-card-top{margin-bottom:25px}.service-card h3{font-size:1.55rem}.service-card p{font-size:1rem}.split{grid-template-columns:1fr;gap:38px}.photo-panel>img{height:390px;border-radius:22px}.copy h2{margin-bottom:23px}.copy>p{font-size:1.05rem}.photo-tag{padding:17px;left:16px;right:16px;bottom:16px}.check-list{margin:25px 0}.management .split{gap:36px}.management .photo-panel>img{height:340px}.mini-grid{gap:22px 18px}.mini-grid h3{font-size:1rem}.mini-grid p{font-size:1rem}.reviews-grid,.articles-grid{grid-template-columns:1fr;gap:23px}.review-card{padding:30px}.review-card blockquote{font-size:1.55rem;margin:10px 0 28px}.article-card img{height:245px;margin-bottom:22px}.article-card h3{font-size:1.6rem}.articles-grid{gap:44px}.areas{grid-template-columns:1fr;gap:25px}.areas p{font-size:1.05rem}.area-links{gap:0 20px}.area-links a{font-size:1rem}.faq-layout{gap:28px}.faq-table th,.faq-table td{display:block;width:100%;border:0;padding:18px 0 0;font-size:1rem;line-height:1.6}.faq-table th{padding-right:0}.faq-table td{padding:9px 0 22px;border-bottom:1px solid var(--line)}.faq-table caption{padding-bottom:3px}.breadcrumb{font-size:.875rem;gap:7px;padding:20px 0 25px;line-height:1.5}.breadcrumb>span:last-child{display:none}.breadcrumb>span:nth-last-child(2){display:none}.page-hero{padding-bottom:42px}.page-hero .eyebrow{margin-top:20px}.page-hero h1{font-size:2.75rem;line-height:1.07}.page-hero p{font-size:1.125rem;line-height:1.55;margin:23px auto}.page-hero .button-row{gap:12px}.page-hero .btn{font-size:.9375rem;padding:12px 18px}.section-nav .wrap{width:calc(100% - 40px);display:block;padding:0}.section-nav strong{display:none}.section-nav .wrap>div{justify-content:space-between;gap:15px;overflow:auto}.section-nav a{font-size:.875rem;padding:17px 0}.category-nav .wrap{width:100%;padding:0 20px;gap:25px;justify-content:flex-start;overflow:auto}.category-nav a{font-size:.875rem;padding:17px 0}.category-heading{font-size:2rem;margin-bottom:28px}.category-heading:not(:first-child){margin-top:60px}.page-body{gap:36px}.prose h2{font-size:1.9rem;margin:43px 0 20px}.prose p,.prose li{font-size:1.05rem;line-height:1.75}.feature-list{grid-template-columns:1fr;gap:15px}.feature-item{padding:26px}.feature-item h3{font-size:1.25rem}.feature-item p{font-size:1rem}.sidebar{grid-template-columns:1fr;gap:0}.aside-card{padding:28px}.article-contents{padding:25px;margin-bottom:35px}.article-contents a{font-size:1rem;padding:9px 0}.steps{grid-template-columns:1fr;gap:25px}.step{padding-top:25px}.step-number{margin-bottom:16px;font-size:2rem}.contact-layout{grid-template-columns:1fr;gap:36px}.contact-layout h2{font-size:2rem}.booking-panel{padding:22px 17px;border-radius:20px}.booking-panel h2{font-size:1.55rem}.contact-method>a{font-size:1.2rem}.project-grid{grid-template-columns:1fr;gap:24px}.project-card img{height:285px}.project-copy{padding:28px}.project-copy h2{font-size:1.65rem}.notice{padding:24px}.sitemap-list{columns:1}.closing{padding:64px 0 70px}.closing h2{font-size:2.75rem}.closing p{font-size:1.1rem}.closing .eyebrow{font-size:1rem}.footer{padding-bottom:105px}.footer-intro{display:block;padding:28px 0}.footer-intro p{text-align:left;margin-top:18px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px;padding:30px 0}.footer li{font-size:.875rem;margin-bottom:14px;line-height:1.5}.footer h3{font-size:.875rem}.footer-contact{display:block;padding-bottom:25px}.footer-contact p+p{margin-top:18px}.footer-bottom{font-size:.8125rem;gap:16px}.footer-bottom-links{gap:14px}.mobile-call{position:fixed;bottom:0;left:0;right:0;z-index:60;background:#ffffffed;backdrop-filter:blur(20px);border-top:1px solid #e0e0e4;padding:10px 20px max(10px,env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr 1fr;gap:12px}.mobile-call .btn{min-height:44px;padding:10px 14px;font-size:.9375rem}body.nav-open .mobile-call,body.search-open .mobile-call{display:none}}
@media(max-width:360px){.header .brand-wordmark{width:90px}.nav-book{display:none}.header .brand-symbol{width:23px;height:23px}.hero .button-row{gap:10px}.hero .btn{font-size:.9375rem;padding:11px 16px}.hero h1{font-size:2.5rem}.mini-grid{grid-template-columns:1fr}.page-hero h1{font-size:2.3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.service-card:hover{transform:none}}
@media print{.header,.service-ribbon,.mobile-call,.closing,.search-dialog,.category-nav,.section-nav{display:none}.section{padding:25px 0}.wrap{width:100%}.sidebar{position:static}.page-body{display:block}.footer{padding:20px 0}.hero,.section-soft,.page-hero{background:white}.hero h1{font-size:38pt}a{color:inherit}.article-contents{break-inside:avoid}img{max-height:400px;object-fit:contain}}

.noscript-nav{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;padding:16px 20px;font-size:1rem;background:#f5f5f7;color:#0066cc}

/* Photo-led living spaces and equipment presented with room to breathe. */
[hidden]{display:none!important}.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}
.hero-photo{width:100%;height:560px;object-fit:cover;object-position:center 56%;border-radius:28px;margin:48px auto 24px}.wide-editorial{width:100%;height:auto;aspect-ratio:16/7.5;object-fit:cover;border-radius:28px}.owner-photo{background:linear-gradient(var(--pale) 50%,white 50%);padding:0 0 30px}.section-intro{font-size:1.2rem;color:var(--muted);margin:24px 0;max-width:520px}.need-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.need-card{background:var(--pale);border-radius:24px;padding:34px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}.need-card .icon-box{margin-bottom:24px}.need-card h3{margin-bottom:17px}.need-card p{color:var(--muted);font-size:1.05rem;line-height:1.6;flex:1}.need-card .text-link{margin-top:14px}.need-card:is(a):hover{background:#ededf0}.building-programs .need-card{background:white}.identify-list>div{padding:26px 0;border-bottom:1px solid var(--line)}.identify-list>div:first-child{padding-top:0}.identify-list h3{font-size:1.4rem;margin-bottom:12px}.identify-list p{color:var(--muted);margin-bottom:12px}.article-lead-photo{width:100%;height:300px;object-fit:cover;border-radius:24px;margin-bottom:32px}.comparison-scroll{overflow:auto;margin:40px 0}.decision-table{width:100%;min-width:620px;border-collapse:collapse;font-size:1rem;line-height:1.55}.decision-table caption{text-align:left;font-weight:600;margin-bottom:18px}.decision-table td,.decision-table th{padding:18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.decision-table thead{background:var(--pale)}.decision-table tbody td{color:var(--muted)}
.catalogue-hero{padding:0 0 55px;background:var(--pale)}.catalogue-hero .eyebrow{margin:30px 0 22px}.catalogue-hero h1{font-size:clamp(3rem,6vw,5.25rem);letter-spacing:-.045em;line-height:1.04}.catalogue-hero h1 span{color:#77777c}.catalogue-hero .wrap>p{font-size:1.3rem;max-width:650px;color:var(--muted);margin:25px 0 28px;line-height:1.5}.product-categories{padding:30px 0 36px;border-bottom:1px solid #ebebef}.category-track{display:flex;gap:23px;overflow-x:auto;overscroll-behavior-x:contain;padding:6px 0 14px;scroll-snap-type:x proximity}.category-track>a{flex:0 0 105px;text-align:center;font-size:.8125rem;line-height:1.4;scroll-snap-align:start}.category-track>a span{display:block;margin-top:13px}.category-track>a:hover,.category-track>a[aria-current=page]{color:var(--blue)}.category-track>a[aria-current=page] span{font-weight:650}.category-photo{width:100px;height:90px;object-fit:contain;margin:auto}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}.product-card{background:white;border-radius:24px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:box-shadow .2s,transform .2s;border:1px solid #00000006}.product-card:hover{box-shadow:0 15px 35px #00000007;transform:translateY(-3px)}.product-visual{display:block;height:285px;padding:24px 28px 10px;background:#fff}.product-photo{width:100%;height:100%;object-fit:contain}.product-card-copy{padding:22px 28px 30px;display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}.product-brand{color:var(--muted);font-size:.8125rem;font-weight:500;line-height:1.4;margin:0 0 12px}.product-card h3{font-size:1.6rem;line-height:1.15;margin-bottom:14px;overflow-wrap:anywhere}.product-card h3 a:hover{color:var(--blue)}.product-model{font-size:.9rem;line-height:1.5;color:var(--muted);margin:0 0 13px}.product-application{font-size:1rem;line-height:1.5;margin:0 0 25px;color:var(--muted)}.product-card-actions{margin-top:auto;width:100%;display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}.product-card-actions .text-link{font-size:.9375rem}.compare-choice{font-size:.8125rem;display:flex;align-items:center;gap:7px;cursor:pointer;min-height:36px}.compare-choice input{width:17px;height:17px;margin:0;accent-color:var(--blue)}.catalogue-note{font-size:.875rem;color:var(--muted);line-height:1.6;margin:30px 0 0;max-width:850px}.catalogue-section{background:var(--pale)}.catalogue-controls{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:0 0 24px}.catalogue-controls label{display:block;font-size:.8125rem;color:var(--muted);flex:1;min-width:140px}.catalogue-controls .catalogue-search{flex:2;min-width:230px}.catalogue-controls input,.catalogue-controls select{width:100%;display:block;margin-top:8px;border:1px solid #aaaab1;border-radius:12px;background:white;color:var(--ink);min-height:48px;font-size:1rem;padding:10px 14px}.catalogue-controls select{padding-right:32px;max-width:100%}.filter-reset{border:0;background:none;color:var(--blue);font-size:.875rem;padding:14px 8px;min-height:44px}.filter-reset:hover{text-decoration:underline;text-underline-offset:4px}.catalogue-status{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0 25px;font-size:.875rem;color:var(--muted)}.catalogue-status p{margin:0}.catalogue-status a{display:flex;align-items:center;gap:4px;color:var(--blue)}.catalogue-status svg{width:14px;height:14px}.catalogue-empty{text-align:center;background:white;border-radius:24px;padding:55px 24px}.catalogue-empty h3{margin-bottom:20px}.catalogue-empty p{color:var(--muted)}.catalogue-empty .text-link{margin-left:20px}.compare-tray{position:fixed;z-index:80;bottom:22px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:25px;padding:14px 24px;background:#fffffff2;border:1px solid var(--line);backdrop-filter:blur(20px);border-radius:22px;box-shadow:0 10px 40px #0002;width:max-content;max-width:calc(100% - 32px)}.compare-tray>span{font-size:.875rem;line-height:1.4}.compare-tray .btn{font-size:.9375rem;white-space:nowrap}.compare-tray .btn:disabled{background:#e8e8ed;color:#626268;cursor:default}.compare-dialog{border:0;border-radius:28px;max-width:calc(100vw - 40px);width:1120px;max-height:90dvh;padding:55px;margin:auto;color:var(--ink);background:white;overflow:auto}.compare-dialog::backdrop{background:#0006;backdrop-filter:blur(6px)}.compare-close{position:absolute;right:15px;top:15px}.compare-dialog>p{max-width:760px;color:var(--muted);margin:22px 0}.compare-dialog h2{font-size:2.7rem}.compare-table-wrap{overflow:auto;margin:28px 0}.compare-table-wrap table{width:100%;min-width:580px;border-collapse:collapse;table-layout:fixed;font-size:.9375rem;line-height:1.5}.compare-table-wrap th,.compare-table-wrap td{text-align:left;border-bottom:1px solid var(--line);padding:22px 18px;vertical-align:top;overflow-wrap:anywhere}.compare-table-wrap thead th{width:28%}.compare-table-wrap thead th:first-child{width:16%}.compare-table-wrap tbody td{color:var(--muted)}.compare-table-wrap img{height:110px;width:100%;object-fit:contain;margin-bottom:20px}.compare-table-wrap a{color:var(--blue)}.compare-table-wrap a:hover{text-decoration:underline}.compare-table-wrap caption{text-align:left;font-size:.875rem;color:var(--muted);padding-bottom:15px}body.compare-open{overflow:hidden}body.compare-open .mobile-call,body.has-comparison .mobile-call{display:none}
.product-breadcrumb{padding-bottom:28px}.product-detail{padding:10px 0 75px}.product-detail-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:80px;align-items:start}.product-stage{background:#fafafa;border-radius:28px;padding:28px;min-height:530px;display:grid;place-items:center}.product-detail-photo{width:100%;height:480px;object-fit:contain;mix-blend-mode:multiply}.product-detail-copy{padding-top:18px}.product-detail h1{font-size:clamp(2.5rem,3.7vw,3.7rem);line-height:1.06}.product-detail .eyebrow{font-size:1rem;margin-bottom:20px}.product-subtitle{font-size:1.125rem;color:var(--muted);line-height:1.65;margin:28px 0}.product-facts{margin:28px 0}.product-facts>div{padding:16px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:120px 1fr;gap:20px;font-size:.9375rem;line-height:1.55}.product-facts dt{color:var(--muted)}.product-facts dd{margin:0}.quote-label{font-size:1rem;font-weight:600;margin:25px 0 20px}.product-detail .button-row{gap:18px}.product-support{font-size:.875rem;color:var(--muted);margin:23px 0 0}.product-support a{color:var(--blue)}.image-caption{font-size:.8125rem;line-height:1.5;color:var(--muted);margin:18px 10px 0}.product-extra-images{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.product-extra-images figure{margin:0;background:var(--pale);padding:20px;border-radius:20px}.product-extra-images img{height:190px}.product-information{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:start}.product-information h2{font-size:clamp(2.2rem,3.3vw,3rem)}.product-information .check-list{margin:0}.product-information .check-list li{padding:16px 0;border-bottom:1px solid var(--line);font-size:1.1rem}.selection-list{margin:23px 0 28px;padding-left:24px;line-height:1.7;color:var(--muted)}.selection-list li{margin-bottom:12px;padding-left:5px}.document-list{padding:0;list-style:none;margin:0}.document-list li>a{display:flex;align-items:center;gap:16px;color:var(--blue);padding:22px 0;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.5}.document-list small{display:block;color:var(--muted);margin-top:7px;font-size:.8125rem}.document-list svg{width:22px}.document-list svg:last-child{margin-left:auto;width:16px}.document-list+.catalogue-note{margin-bottom:22px}.quote-context{border-bottom:1px solid var(--line);padding-bottom:28px;margin-bottom:28px}.quote-context p{font-size:1rem;color:var(--muted)}.quote-context .eyebrow{font-size:.875rem}.footer-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:28px}
@media(max-width:1100px){.product-detail-grid{gap:40px}.product-stage{min-height:420px;padding:20px}.product-detail-photo{height:400px}.product-visual{height:245px;padding:20px}.product-card-copy{padding:22px}.product-information{gap:45px}.need-card{padding:26px}.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-facts>div{grid-template-columns:100px 1fr;gap:12px}.hero-photo{height:470px}}
@media(max-width:900px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-products>.product-card:last-child{grid-column:auto}.featured-products{gap:20px}.product-detail-grid{grid-template-columns:1fr;gap:35px}.product-gallery{max-width:660px;width:100%;margin:auto}.product-detail-copy{max-width:700px}.product-detail h1{font-size:3rem}.product-stage{min-height:400px}.product-detail-photo{height:390px}.need-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.building-programs{grid-template-columns:1fr}.compare-dialog{padding:45px 30px}.hero-photo{height:430px}}
@media(max-width:680px){.hero-photo{margin:35px 0 20px;height:330px;border-radius:20px;object-position:54% center}.wide-editorial{height:320px;aspect-ratio:auto;border-radius:20px;object-position:58% center}.owner-photo{padding-bottom:0}.need-grid{grid-template-columns:1fr;gap:18px}.need-card{padding:28px}.need-card .icon-box{margin-bottom:18px}.section-intro{font-size:1.1rem}.article-lead-photo{height:225px;border-radius:20px;margin-bottom:25px}.catalogue-hero{padding-bottom:40px}.catalogue-hero .eyebrow{margin-top:18px;font-size:1rem}.catalogue-hero h1{font-size:3rem;letter-spacing:-.04em}.catalogue-hero .wrap>p{font-size:1.125rem;margin:24px 0}.product-categories{padding:18px 0 22px}.category-track{width:100%;padding:6px 20px 14px;gap:17px}.category-track>a{flex-basis:88px;font-size:.8125rem}.category-photo{width:82px;height:74px}.product-grid{grid-template-columns:1fr;gap:20px}.product-visual{height:290px;padding:25px 30px 8px}.product-card-copy{padding:24px 28px 28px}.product-card h3{font-size:1.65rem}.catalogue-controls{gap:16px 12px}.catalogue-controls .catalogue-search{flex-basis:100%}.catalogue-controls label{flex-basis:calc(50% - 12px);min-width:0}.catalogue-controls .filter-reset{align-self:flex-end}.catalogue-controls input,.catalogue-controls select{font-size:1rem}.catalogue-status{align-items:flex-start;margin-bottom:20px}.catalogue-status a{max-width:185px;text-align:right;line-height:1.45}.catalogue-note{font-size:.875rem;margin-top:25px}.compare-tray{bottom:10px;gap:10px;padding:12px 14px;width:calc(100% - 24px);max-width:none;border-radius:18px}.compare-tray>span{font-size:.8125rem;flex:1}.compare-tray .btn{font-size:.8125rem;padding:10px 14px;min-height:42px}.compare-tray .filter-reset{font-size:.8125rem;padding:10px 4px}.compare-dialog{border-radius:20px;max-width:calc(100vw - 20px);max-height:94dvh;padding:55px 22px 28px}.compare-dialog h2{font-size:2rem}.compare-table-wrap th,.compare-table-wrap td{padding:18px 12px}.compare-table-wrap thead th:first-child{width:110px}.product-detail{padding-bottom:45px}.product-breadcrumb{padding-bottom:18px}.product-breadcrumb>a:last-child{display:block}.product-detail-grid{gap:22px}.product-stage{min-height:320px;padding:20px;border-radius:22px}.product-detail-photo{height:320px}.product-detail h1{font-size:2.7rem}.product-subtitle{font-size:1.1rem;margin:24px 0}.product-information{grid-template-columns:1fr;gap:30px}.product-information h2{font-size:2.3rem}.product-detail .button-row{align-items:flex-start;gap:20px}.product-extra-images img{height:160px}.image-caption{margin-top:14px}.product-information .check-list li{font-size:1rem}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.document-list li>a{font-size:.9375rem}.comparison-scroll{margin-inline:-5px}.catalogue-empty .text-link{display:block;margin:20px auto 0}}
@media(prefers-reduced-motion:reduce){.product-card{transition:none}.product-card:hover{transform:none}}
@media print{.compare-tray,.compare-dialog,.catalogue-controls,.compare-choice{display:none!important}.product-card{break-inside:avoid}.product-grid{grid-template-columns:repeat(2,1fr)}.product-detail-grid{display:block}.product-detail-photo{max-height:280px}.hero-photo{max-height:320px}.product-stage{min-height:0}.product-information{gap:30px}}

/* Calm, optional motion. No information depends on animation. */
.living-scene{position:relative;overflow:hidden;border-radius:28px;margin:48px auto 24px;background:#e8e7e4}.living-scene .hero-photo{margin:0;border-radius:0;transform:scale(1.015)}.scene-caption{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:50px 28px 23px;background:linear-gradient(transparent,#0008);color:white;font-size:1rem;font-weight:500}.motion-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid #ffffff9c;border-radius:999px;background:#1d1d1f60;color:white;font-size:.8125rem;backdrop-filter:blur(12px);white-space:nowrap}.motion-toggle:hover{background:#1d1d1fa6}.motion-symbol{font-size:.875rem;line-height:1;width:12px;text-align:center}.motion-toggle-dark{border-color:var(--line);background:white;color:var(--ink);backdrop-filter:none}.motion-toggle-dark:hover{background:#ebebee}html[data-motion=running] .living-scene.motion-visible .hero-photo{animation:room-breathe 22s ease-in-out infinite alternate}html[data-motion=paused] .living-scene .hero-photo{animation-play-state:paused}.comfort-story .section-heading h2{max-width:1000px;font-size:clamp(2.35rem,4vw,3.7rem)}.comfort-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}.comfort-room{position:relative;isolation:isolate;min-height:655px;border-radius:28px;overflow:hidden;background:#e8e3db}.comfort-bedroom{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center;z-index:-2}.comfort-room:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#f9f7f3 0%,#f9f7f3e8 8%,#f9f7f3a6 35%,transparent 65%);z-index:-1}.comfort-room-copy{padding:40px}.comfort-room h3,.comfort-air h3{font-size:clamp(2.5rem,4vw,3.6rem);line-height:1.04;letter-spacing:-.04em}.comfort-room p{font-size:1.125rem;max-width:350px;margin:20px 0 16px;color:#454549}.comfort-room .eyebrow{font-size:1rem}.comfort-air{background:var(--pale);border-radius:28px;text-align:center;padding:42px 30px 30px;display:flex;flex-direction:column;align-items:center}.comfort-air>.eyebrow{font-size:1rem}.comfort-air>p{font-size:1.1rem;max-width:350px;color:var(--muted);margin:23px 0 0}.comfort-air>img{width:100%;height:auto;margin:8px 0 0}.airflow-labels{display:flex;justify-content:space-around;gap:20px;width:80%;color:var(--muted);font-size:.75rem;margin:0 0 30px}.comfort-air>.text-link{margin-top:auto}.comfort-air .motion-toggle{margin-top:24px}.comfort-air .motion-toggle[hidden]{display:none}.motion-toggle:focus-visible{outline:3px solid #0071e3;outline-offset:5px}.scene-caption .motion-toggle:focus-visible{outline-color:white}
@keyframes room-breathe{from{transform:scale(1.015) translateX(0)}to{transform:scale(1.065) translateX(-.5%)}}
@media(max-width:1000px){.comfort-grid{grid-template-columns:1fr 1fr}.comfort-room{min-height:620px}.comfort-room-copy{padding:32px}.comfort-air{padding:36px 24px 28px}.comfort-room h3,.comfort-air h3{font-size:2.7rem}.comfort-air>p{font-size:1rem}.comfort-air>img{margin-top:30px}}
@media(max-width:680px){.living-scene{margin:35px 0 20px;border-radius:20px}.living-scene .hero-photo{height:370px}.scene-caption{padding:50px 17px 18px;align-items:end}.scene-caption>span{max-width:140px;text-align:left;font-size:.9rem;line-height:1.4}.motion-toggle{padding:10px 12px;font-size:.75rem}.comfort-grid{grid-template-columns:1fr;gap:20px}.comfort-room{min-height:540px;border-radius:22px}.comfort-room-copy{padding:30px}.comfort-air{min-height:520px;border-radius:22px;padding:34px 24px 26px}.comfort-room h3,.comfort-air h3{font-size:3rem}.comfort-room p{font-size:1rem;max-width:260px}.comfort-air>p{font-size:1.05rem}.comfort-air>img{max-width:420px;margin:12px 0 0}.comfort-story .section-heading h2{font-size:2.3rem}.airflow-labels{margin-bottom:25px}}
@media(prefers-reduced-motion:reduce){.living-scene .hero-photo{animation:none!important;transform:none!important}}
@media print{.motion-toggle,.scene-caption{display:none!important}.comfort-grid{display:block}.comfort-room{min-height:350px}.comfort-air{break-inside:avoid}}
.sitemap-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px}.sitemap-group{min-width:0}.sitemap-group h3{font-size:1.35rem;margin-bottom:20px}.sitemap-group ul,.sitemap-product-group ul{list-style:none;padding:0;margin:0}.sitemap-group li,.sitemap-product-group li{margin-bottom:15px;line-height:1.5;font-size:1rem}.sitemap-group a,.sitemap-product-group li a{color:var(--blue)}.sitemap-group a:hover,.sitemap-product-group li a:hover{text-decoration:underline;text-underline-offset:4px}.sitemap-products{display:grid;grid-template-columns:1fr 1fr;gap:0 35px;align-items:start}.sitemap-product-group{border-bottom:1px solid var(--line)}.sitemap-product-group summary{padding:25px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;font-size:1.2rem;font-weight:600;line-height:1.4}.sitemap-product-group summary::-webkit-details-marker{display:none}.sitemap-count{display:flex;gap:10px;align-items:center;font-size:.8125rem;font-weight:400;color:var(--muted);white-space:nowrap}.sitemap-count svg{height:14px;width:14px;transform:rotate(90deg)}.sitemap-product-group[open] .sitemap-count svg{transform:rotate(-90deg)}.sitemap-product-group>div{padding:0 0 25px}.sitemap-product-group>div>.text-link{margin-bottom:23px;font-weight:600}.sitemap-product-group li{font-size:.9375rem}.noscript-nav{padding:18px 24px;display:flex;flex-wrap:wrap;justify-content:center;gap:18px;color:var(--blue);background:var(--pale);font-size:.9rem}
@media(max-width:900px){.sitemap-groups{grid-template-columns:1fr 1fr;gap:35px}.sitemap-products{gap:0 28px}.sitemap-product-group summary{font-size:1rem}.sitemap-count{font-size:.75rem}}
@media(max-width:680px){.sitemap-groups,.sitemap-products{grid-template-columns:1fr;gap:30px}.sitemap-products{gap:0}.sitemap-product-group summary{font-size:1.125rem}.sitemap-group h3{font-size:1.3rem}.sitemap-product-group li{font-size:1rem}}

/* Complete content, clearer reading paths, and one placement per content image. */
.header-inner{gap:20px}.global-nav{gap:18px;font-size:.8125rem}
.category-symbol{display:grid;place-items:center;width:90px;height:70px;margin:0 auto 10px;color:var(--blue)}.category-symbol svg{height:38px;width:38px;stroke-width:1.35}
.product-detail-grid{grid-template-columns:minmax(0,880px);justify-content:center}.product-detail-copy{max-width:880px}.product-detail h1{max-width:880px}.product-facts{max-width:760px}.product-detail .eyebrow{margin-top:12px}.catalogue-image-link{margin:25px 0 0}.product-card:not(:has(.product-visual)){border-top:3px solid #dce9f8}.product-visual{background:#fff}.product-photo{object-fit:contain;mix-blend-mode:normal}.product-card{background:#fff;border:1px solid #e7e7eb}.product-visual img{width:100%;height:100%;object-fit:contain}.product-grid.featured-products .product-card-copy{padding-top:32px}
.article-card{padding:30px;border:1px solid #e4e4e8;border-radius:22px;background:#fff;display:flex;flex-direction:column}.article-card h3{font-size:1.5rem;line-height:1.25}.article-card>.text-link{margin-top:auto}.article-card>p{font-size:1rem;margin-top:17px}.article-card .article-label{margin-top:0}.article-card a:hover h3{color:var(--blue)}.article-card>p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.prose{min-width:0}.prose h2{font-size:clamp(1.7rem,2.7vw,2.3rem);line-height:1.2;margin:2em 0 .85em}.prose h3{font-size:1.35rem;line-height:1.3;margin:1.7em 0 .75em}.prose h4,.prose h5,.prose h6{font-size:1.125rem;line-height:1.4;margin:1.5em 0 .7em}.prose p,.prose li{line-height:1.8}.prose ul,.prose ol{padding-left:1.5em}.prose li{margin:.45em 0}.prose ul+ul{margin-top:-.5em}.prose table:not(.faq-table){border-collapse:collapse;min-width:520px;width:100%;font-size:.9375rem}.prose th,.prose td{border:1px solid #d2d2d7;padding:14px 16px;text-align:left;vertical-align:top}.prose th{background:#f5f5f7;font-weight:600}.prose figure{margin:30px 0}.prose figcaption{font-size:.875rem;color:var(--muted);line-height:1.5}.prose .article-lead-photo{height:auto;max-height:650px;object-fit:contain;background:#f5f5f7}.prose a{overflow-wrap:anywhere}.prose .article-byline{font-size:.9375rem}.article-context{font-size:.875rem!important;color:var(--muted);border-left:3px solid var(--line);padding-left:18px}.article-outline{border-block:1px solid var(--line);padding:0;margin:28px 0 38px}.article-outline>summary{cursor:pointer;min-height:64px;padding:20px 0;font-size:1rem;font-weight:600;line-height:1.5}.article-outline>summary>span{float:right;font-size:.8125rem;color:var(--muted);font-weight:400}.article-outline .article-contents{padding:0 0 25px;margin:0;border:0}.article-outline .article-contents a{font-size:.9375rem;padding:8px 0;line-height:1.5}.source-service{border-top:1px solid var(--line)}.source-service>.wrap>.prose>h2:first-of-type{margin-top:0}.review-summary{background:var(--pale);padding:50px;border-radius:28px}.review-summary h2{margin:22px 0}.project-symbol{height:250px;display:grid;place-items:center;background:var(--pale);color:var(--blue)}.project-symbol svg{width:85px;height:85px;stroke-width:.8}.photo-panel>img[src*="hts-truck"]{object-fit:contain;height:auto;padding:38px 0;background:var(--pale)}
@media(min-width:1101px) and (max-width:1280px){.header-inner{gap:12px}.brand-wordmark{width:110px}.global-nav{gap:12px;font-size:.75rem}.header-actions{gap:3px}.nav-book{padding:9px 12px;font-size:.75rem}}
@media(max-width:1100px){.global-nav{font-size:1.1rem}.header-inner{gap:14px}}
@media(max-width:680px){.article-card{padding:26px}.article-card h3{font-size:1.4rem}.article-outline>summary>span{float:none;margin-left:14px}.category-symbol{width:82px;height:65px}.prose .article-lead-photo{max-height:420px}.prose table{font-size:.875rem}.review-summary{padding:30px}.product-detail h1{font-size:2.5rem}.product-detail .button-row{gap:20px}.source-service{padding-top:55px}}
.nav-book{display:inline-flex;align-items:center;justify-content:center;min-height:44px}.source-service .prose>p:empty{display:none}
.catalogue-photo-note{font-size:.875rem;color:var(--muted);max-width:790px;margin:0 0 30px}.product-image-view{font-size:.75rem;color:var(--muted);margin:-6px 0 14px}.catalogue-source-link{margin-top:18px}

/* Put the visual catalogue directly on the browsing path. */
.catalogue-hero{padding-bottom:28px}.catalogue-hero .breadcrumb{padding-bottom:22px}.catalogue-intro{display:flex;justify-content:space-between;align-items:center;gap:35px}.catalogue-hero h1{font-size:clamp(2.4rem,4.2vw,3.75rem);line-height:1.1}.catalogue-intro p{max-width:760px;font-size:1.125rem;line-height:1.5;color:var(--muted);margin:18px 0 0}.catalogue-intro>.text-link{flex-shrink:0}.catalogue-section{padding-top:30px}.catalogue-hero+.catalogue-section .section-heading{display:none}.catalogue-controls{margin-bottom:10px}.catalogue-status{margin:14px 0 20px}.catalogue-category-links{padding:50px 0 0}.catalogue-category-links h2{font-size:2rem}.category-photo-link{padding-top:24px;padding-bottom:12px}
@media(max-width:680px){.catalogue-hero{padding-bottom:20px}.catalogue-hero .breadcrumb{padding-block:18px}.catalogue-intro{display:block}.catalogue-intro p{font-size:1rem;margin-top:14px}.catalogue-intro>.text-link{margin-top:12px}.catalogue-section{padding-top:20px}.catalogue-hero+.catalogue-section .catalogue-status>a{display:none}.catalogue-controls{gap:8px}.catalogue-controls input,.catalogue-controls select{margin-top:5px;min-height:44px}.catalogue-status{margin:12px 0 16px}}

.catalogue-grid~.catalogue-photo-note{margin-top:28px}

/* HTS field photography: quiet layouts, live captions and intact evidence. */
.field-story-section{padding-top:65px;padding-bottom:35px}
.photo-story{position:relative;isolation:isolate;overflow:hidden;border-radius:28px;margin:0;background:#11151a;color:#fff;min-width:0}
.photo-story>.story-photo{display:block;width:100%;height:720px;object-fit:cover;margin:0}
.photo-story>figcaption{position:absolute;inset:0;display:flex;align-items:flex-start;flex-direction:column;justify-content:flex-start;padding:60px;background:linear-gradient(90deg,rgba(4,9,15,.87),rgba(4,9,15,.58) 42%,rgba(4,9,15,0) 78%)}
.photo-story .eyebrow{color:#fff;max-width:380px;font-size:.75rem;line-height:1.6;letter-spacing:.11em}
.photo-story h2{color:#fff;font-size:clamp(2.4rem,4.8vw,4.8rem);line-height:1.03;letter-spacing:-.045em;max-width:480px;margin:15px 0 20px;text-wrap:balance}
.photo-story p{color:#f5f5f7;font-size:1.15rem;line-height:1.6;max-width:345px;margin:0 0 22px}
.photo-story .btn-white{background:#fff;color:#11151a;border-color:#fff;min-height:48px;font-size:.9375rem}
.photo-story .btn-white:hover{background:#e9edf2;border-color:#e9edf2}
.photo-story a:focus-visible,.field-evidence a:focus-visible{outline:3px solid #fff;outline-offset:5px}
.photo-story small{display:block;margin-top:22px;color:#f2f2f5;font-size:.7rem;line-height:1.5;max-width:300px}
.photo-story-portrait>.story-photo{height:auto;aspect-ratio:1087/1446;object-fit:contain}
.photo-story-portrait>figcaption,.photo-story-about>figcaption{justify-content:flex-end;padding:32px;background:linear-gradient(0deg,rgba(3,7,12,.98),rgba(3,7,12,.9) 24%,rgba(3,7,12,0) 62%)}
.photo-story-portrait h2,.photo-story-about h2{font-size:2.7rem;max-width:380px;margin:12px 0 16px}
.photo-story-portrait p,.photo-story-about p{font-size:1rem;max-width:310px;margin-bottom:20px}
.photo-story-about>.story-photo{height:640px;object-position:center}
.photo-story-portrait small,.photo-story-about small{margin-top:17px}
.prose .field-evidence{border-radius:20px;overflow:hidden;background:#141a22;margin:36px 0;box-shadow:0 12px 32px #1020330b}
.prose .field-evidence>.article-lead-photo{display:block;width:100%;height:auto;max-height:none;margin:0;border-radius:0;object-fit:contain;background:#f3f3f5}
.prose .field-evidence>figcaption{display:grid;gap:12px;padding:27px 30px 30px;color:#e8ecf1;font-size:.9375rem;line-height:1.6}
.field-kicker{font-size:.6875rem;letter-spacing:.09em;color:#c7d2df}
.field-evidence figcaption>strong{font-size:1.4rem;line-height:1.3;font-weight:600;color:#fff}
.field-evidence-links{display:flex;flex-wrap:wrap;column-gap:25px;row-gap:6px;margin-top:2px}
.prose .field-evidence-links>a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#fff;text-decoration:underline;text-underline-offset:5px;font-size:.8125rem}
@media(min-width:681px) and (max-width:1000px){.photo-story-portrait>figcaption,.photo-story-about>figcaption{position:relative;background:#11151a;padding:30px}.photo-story-about>.story-photo{height:auto}.photo-story-portrait h2,.photo-story-about h2{font-size:2.3rem}}
@media(max-width:680px){.field-story-section{padding-top:35px;padding-bottom:15px}.photo-story{border-radius:22px}.photo-story>.story-photo{height:auto;aspect-ratio:auto;object-fit:contain}.photo-story>figcaption{position:relative;padding:30px;background:linear-gradient(#121a23,#0b1017)}.photo-story h2{font-size:2.55rem;max-width:330px;margin:13px 0 18px}.photo-story p{font-size:1rem}.photo-story small{font-size:.6875rem}.photo-story .eyebrow{font-size:.6875rem}.prose .field-evidence>figcaption{padding:22px}.field-evidence figcaption>strong{font-size:1.25rem}.field-evidence-links{column-gap:20px}}
@media print{.photo-story>figcaption{position:static;background:#fff;color:#111}.photo-story h2,.photo-story p,.photo-story .eyebrow,.photo-story small{color:#111}.photo-story>.story-photo{height:auto;max-height:500px;object-fit:contain}.photo-story .btn{display:none}.prose .field-evidence>figcaption{background:#fff;color:#111}.field-evidence figcaption>strong,.field-kicker,.prose .field-evidence-links>a{color:#111}}

/* White product stages and charcoal service moments. */
.home-product-stage{background:#f5f5f7;padding-block:70px}.home-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.home-product-panel{border-radius:28px;background:#fff;padding:48px 34px 0;text-align:center;display:flex;flex-direction:column;min-width:0;overflow:hidden}.home-product-panel .eyebrow{font-size:.875rem;letter-spacing:0;text-transform:none;color:#1d1d1f}.home-product-panel h2{font-size:clamp(2.1rem,3.5vw,3.25rem);line-height:1.08;letter-spacing:-.045em;margin:20px 0 24px}.home-product-panel p{max-width:400px;margin:0 auto 24px;color:#626267;font-size:1.0625rem;line-height:1.65}.home-product-links{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:20px}.home-product-links .text-link{font-size:1rem;line-height:1.5;min-height:44px;justify-content:center}.home-product-visual{position:relative;display:block;margin:auto -34px 0;padding:20px 35px 60px;background:#fff;min-height:370px}.home-product-photo{display:block;width:100%;height:290px;object-fit:contain;mix-blend-mode:multiply}.home-product-stage .catalogue-note{text-align:center;max-width:900px;margin:26px auto 0;font-size:.875rem}.product-visual{position:relative;padding-bottom:38px}.product-hts-mark{position:absolute;bottom:15px;left:20px;display:inline-flex;align-items:center;gap:7px;padding:6px 9px;background:#fff;color:#3d434c;border-radius:6px;text-align:left;line-height:1.2;pointer-events:none}.product-hts-mark>span{font-size:.65rem;font-weight:700;letter-spacing:.065em;white-space:nowrap}.product-hts-mark small{font-size:.57rem;font-weight:500;letter-spacing:.18em}.product-visual .product-hts-mark .product-brand-symbol,.product-hts-mark .product-brand-symbol{display:block;width:27px;height:27px;object-fit:contain;margin:0;padding:0;mix-blend-mode:normal}.home-product-visual .product-hts-mark{bottom:18px;left:24px}.contrast-cta{padding:90px 0;background:#101114;color:#fff}.contrast-cta-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:65px;align-items:center}.contrast-cta .eyebrow{color:#bfc6d1;font-size:.8125rem;line-height:1.6}.contrast-cta h2{font-size:clamp(2.3rem,4.6vw,4rem);line-height:1.08;letter-spacing:-.045em;max-width:720px;margin:18px 0 22px;color:#fff;text-wrap:balance}.contrast-cta p{color:#c5c5cb;max-width:650px;font-size:1.0625rem;line-height:1.7;margin:0}.contrast-cta-actions{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.contrast-cta .btn-white{background:#fff;color:#15171b;border-color:#fff;min-height:50px}.contrast-cta .btn-white:hover{background:#e9edf4;border-color:#e9edf4}.contrast-cta .text-link{color:#a6caff;font-size:.9375rem;min-height:44px}.contrast-cta a:focus-visible{outline:3px solid #fff;outline-offset:5px}.visual-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.visual-blog-section .section-heading h2>span{color:#737378}.visual-blog-card{background:#fff;border-radius:25px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.visual-blog-image{display:block;overflow:hidden;background:#e8ebed}.visual-blog-image .blog-card-photo{display:block;width:100%;height:235px;object-fit:cover;margin:0}.visual-blog-copy{padding:28px 28px 25px;display:flex;flex-direction:column;flex:1}.visual-blog-copy .article-label{margin:0 0 15px;font-size:.875rem;line-height:1.45}.visual-blog-copy h3{font-size:1.45rem;line-height:1.25;letter-spacing:-.025em;margin:0 0 18px}.visual-blog-copy h3>a:hover{color:var(--blue)}.visual-blog-copy p{font-size:1rem;color:#626267;line-height:1.65;margin:0 0 25px}.visual-blog-copy>.text-link{margin-top:auto;font-size:.9375rem;min-height:44px}.visual-blog-image:has(img[src*="blog-modern-living"]){background:#e6e6e6}.visual-blog-image img[src*="blog-modern-living"]{object-position:50% 65%}.visual-blog-image img[src*="editorial-"]{object-fit:contain;background:#f0f1f3;height:260px}.photo-story-portrait>.story-photo{aspect-ratio:3/4}.photo-story small{font-size:.75rem}
@media(max-width:1000px){.contrast-cta-inner{grid-template-columns:1fr;gap:32px}.contrast-cta-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:25px}.home-product-panel{padding:38px 24px 0}.home-product-visual{margin-inline:-24px}.visual-blog-grid{gap:18px}.visual-blog-copy{padding:23px}.visual-blog-image .blog-card-photo{height:210px}.visual-blog-copy h3{font-size:1.3rem}}
@media(max-width:760px){.home-product-grid{grid-template-columns:1fr;gap:22px}.home-product-panel{padding:38px 25px 0}.home-product-panel h2{font-size:2.5rem}.home-product-panel p{font-size:1rem}.home-product-visual{margin-inline:-25px;min-height:335px}.home-product-photo{height:260px}.home-product-stage{padding-block:42px}.visual-blog-grid{grid-template-columns:1fr}.visual-blog-image .blog-card-photo{height:260px}.visual-blog-copy{padding:27px}.visual-blog-copy h3{font-size:1.6rem}.contrast-cta{padding:60px 0}.contrast-cta h2{font-size:2.6rem}.contrast-cta p{font-size:1rem}.contrast-cta .eyebrow{font-size:.75rem}}
@media print{.contrast-cta{background:#fff;color:#111;border-block:1px solid #777}.contrast-cta h2,.contrast-cta p,.contrast-cta .eyebrow,.contrast-cta .text-link{color:#111}.contrast-cta-actions{display:none}.home-product-grid,.visual-blog-grid{grid-template-columns:1fr 1fr}.home-product-panel,.visual-blog-card{break-inside:avoid}}

/* Authentic company imagery, readable credentials and user-controlled video. */
.home-product-photo{background:#fff;mix-blend-mode:normal}
.clients .client-logos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:25px;align-items:center}
.client-logos img{width:100%;height:70px;max-width:150px;object-fit:contain;justify-self:center;filter:none}
.credentials-section{background:#f5f5f7}
.credentials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.credential-card{background:#fff;border-radius:20px;min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;gap:20px}
.credential-card .credential-logo{width:190px;height:70px;max-width:100%;object-fit:contain}
.credential-card strong{display:block;font-size:.9375rem;font-weight:600;line-height:1.4}
.credential-card span{display:block;color:#626267;font-size:.75rem;line-height:1.5;margin-top:5px;max-width:280px}
.credential-monochrome .credential-logo{filter:brightness(0)}
.credentials-copy{color:var(--muted);margin:22px 0}
.media-appearance{display:flex;align-items:center;gap:40px;background:#101114;color:#fff;border-radius:24px;padding:30px 42px;margin-top:24px}
.media-appearance .cp24-logo{width:200px;height:110px;object-fit:cover;flex-shrink:0}
.media-appearance .eyebrow{color:#bfc6d1;font-size:.7rem;margin-bottom:10px}.media-appearance h3{font-size:1.65rem;letter-spacing:-.025em;color:#fff;margin:0 0 12px}.media-appearance p{font-size:.9375rem;color:#c9cbd2;line-height:1.5;margin:0}
.photo-story-fleet>.story-photo{height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center}
.photo-story-fleet>figcaption{padding:42px;background:linear-gradient(90deg,rgba(4,9,15,.84),rgba(4,9,15,.6) 30%,rgba(4,9,15,0) 68%)}
.photo-story-fleet h2{max-width:360px;font-size:clamp(2.4rem,4.2vw,4rem)}
.photo-story-fleet p{max-width:300px}
.photo-story-portrait>.story-photo{aspect-ratio:auto;height:auto;object-fit:contain}
.photo-story-portrait>figcaption{justify-content:flex-start;background:linear-gradient(180deg,rgba(3,7,12,.92),rgba(3,7,12,.74) 27%,rgba(3,7,12,0) 65%)}
.photo-story-about>.story-photo{height:720px;object-position:50% 45%}
.photo-story-equipment>.story-photo{height:auto;aspect-ratio:16/9;object-fit:cover}
.photo-story-equipment>figcaption{justify-content:flex-end;padding:40px;background:linear-gradient(90deg,rgba(4,9,15,.93),rgba(4,9,15,.7) 45%,rgba(4,9,15,.08))}
.photo-story-equipment h2{font-size:clamp(2rem,3.7vw,3.3rem);max-width:480px}.photo-story-equipment p{max-width:430px;font-size:1rem}
.visual-blog-image img[src*="hts-van-high-rise"]{object-position:50% 62%}
.service-field-section{background:#101114;color:#fff}
.service-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.service-field-copy .eyebrow{color:#bfc6d1;font-size:.75rem}.service-field-copy h2{font-size:clamp(2.3rem,4.2vw,3.7rem);line-height:1.08;letter-spacing:-.04em;margin:20px 0 25px;color:#fff}.service-field-copy p{color:#d0d0d5;font-size:1.1rem;line-height:1.7;margin:0 0 30px}
.service-field-grid figure{margin:0;overflow:hidden;border-radius:24px;background:#1e2025}.service-field-photo{display:block;width:100%;height:auto;max-height:680px;object-fit:contain}.service-field-grid figcaption{padding:20px 24px;color:#c9cbd2;font-size:.75rem;line-height:1.5}
.service-film-section{background:#f5f5f7}.service-film-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}.service-film{margin:0;border-radius:24px;overflow:hidden;background:#11151a;color:#fff}.service-film video{display:block;width:100%;height:auto;background:#11151a;aspect-ratio:832/464}.service-film video:focus-visible{outline:3px solid #78b9ff;outline-offset:-4px}.service-film figcaption{padding:24px;display:grid;gap:9px}.service-film figcaption strong{font-size:1.15rem}.service-film figcaption span{color:#c9cbd2;font-size:.875rem;line-height:1.65}
.city-photo{margin:0;border-radius:26px;overflow:hidden}.city-photo-image{display:block;width:100%;height:auto}
@media(max-width:1000px){.clients .client-logos{grid-template-columns:repeat(3,minmax(0,1fr))}.service-field-grid,.service-film-grid{gap:35px}.photo-story-fleet>.story-photo{aspect-ratio:4/3}.photo-story-portrait>figcaption{position:relative;background:#11151a}.photo-story-equipment h2{font-size:2.4rem}.photo-story-equipment>.story-photo{aspect-ratio:4/3}.photo-story-about>.story-photo{height:auto}}
@media(max-width:760px){.credentials-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.credential-card{min-height:185px;padding:18px 12px;gap:18px}.credential-card .credential-logo{height:62px}.credential-card span{font-size:.7rem}.credential-card strong{font-size:.85rem}.media-appearance{gap:20px;padding:25px;align-items:center}.media-appearance .cp24-logo{width:115px;height:85px}.media-appearance h3{font-size:1.35rem}.media-appearance p{font-size:.8rem}.service-field-grid,.service-film-grid{grid-template-columns:1fr;gap:32px}.service-field-photo{max-height:none}.service-field-copy h2{font-size:2.6rem}.service-field-copy p{font-size:1rem}.client-logos img{height:60px}.photo-story-fleet>.story-photo,.photo-story-equipment>.story-photo{aspect-ratio:auto}.photo-story-fleet>figcaption,.photo-story-equipment>figcaption{position:relative;padding:30px;background:#11151a}.photo-story-fleet h2{font-size:2.6rem}}
@media(max-width:400px){.media-appearance{flex-direction:column;align-items:flex-start;gap:12px}.media-appearance .cp24-logo{align-self:center}.credentials-grid{gap:10px}}
@media print{.media-appearance,.service-field-section{background:white;color:#111}.service-field-copy h2,.service-field-copy p{color:#111}.service-film video{display:none}.credential-card{break-inside:avoid}}

/* Editorial promotions and image-led equipment detail */
a[href^="tel:"],a[href^="mailto:"],.contact-method>a,a[href="/property-manager-contact/#request"]{font-weight:700}
.contact-method .text-link{font-size:1.125rem;line-height:1.5}.contact-method a[href^="mailto:"]{font-size:1.125rem!important}
.editorial-callout{position:relative;overflow:hidden;background:linear-gradient(135deg,#20232a,#08090b);color:#fff;border-radius:26px;padding:clamp(28px,4vw,46px);margin:38px 0;isolation:isolate}.editorial-callout .eyebrow{color:#c5ccd7;font-size:.875rem}.prose .editorial-callout h3,.editorial-callout h3{color:#fff;font-size:clamp(1.75rem,2.5vw,2.6rem);letter-spacing:-.035em;line-height:1.15;margin:14px 0 20px;text-wrap:balance}.prose .editorial-callout p,.editorial-callout p{color:#d6d7dc;font-size:1rem;line-height:1.65;margin:0 0 24px}.prose .editorial-callout .btn,.editorial-callout .btn{background:#fff;color:#121316;text-decoration:none;font-weight:700;white-space:normal;text-align:left;min-height:48px}.editorial-callout a:focus-visible{outline:3px solid #b9d7ff;outline-offset:5px}.service-promise{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;background:#14161b;color:white;padding:32px;border-radius:24px;margin:32px 0}.service-promise strong{font-size:1.2rem;line-height:1.3;letter-spacing:-.025em}.service-trust{background:#f5f5f7}.service-trust>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.service-trust h2{font-size:clamp(2rem,3vw,3rem);line-height:1.1}.service-trust p{color:#626267;max-width:540px}.service-trust .text-link{font-weight:650}.product-detail-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center}.product-detail-visual{position:relative;border-radius:28px;background:#fff;border:1px solid #e6e6ea;min-width:0;padding:44px 32px 70px}.product-detail-photo{width:100%;height:420px;object-fit:contain;display:block}.product-detail-visual .product-hts-mark{left:24px;bottom:22px}.product-detail-copy{max-width:680px}.product-detail h1{font-size:clamp(2.1rem,3.7vw,3.5rem)}.product-visual{height:310px}.product-visual>.product-photo{height:250px}.editorial-photo-callout{position:relative;isolation:isolate;overflow:hidden;border-radius:28px;min-height:480px;display:flex;align-items:flex-end;background:#15171b;color:white}.callout-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.editorial-photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.87),rgba(0,0,0,.4) 65%,rgba(0,0,0,.18));z-index:1}.editorial-photo-copy{position:relative;z-index:2;padding:clamp(30px,6vw,70px);max-width:740px}.editorial-photo-copy h2{font-size:clamp(2.4rem,4.5vw,4.4rem);line-height:1.03}.editorial-photo-copy p{color:#e4e5e9;font-size:1.125rem}.editorial-photo-copy .text-link{color:#fff}.editorial-photo-copy .btn-white{background:#fff;color:#15171b;font-weight:700}
@media(max-width:900px){.product-detail-grid{grid-template-columns:1fr;gap:32px}.product-detail-visual{max-width:650px;width:100%;margin:auto}.product-detail-photo{height:320px}.service-trust>.wrap{grid-template-columns:1fr;gap:22px}}
@media(max-width:600px){.editorial-callout{padding:28px 24px;border-radius:22px}.service-promise{grid-template-columns:1fr;gap:18px}.editorial-photo-callout{min-height:440px}.editorial-photo-copy .button-row{align-items:flex-start;flex-direction:column}.product-detail-visual{padding:28px 20px 70px}.product-detail-photo{height:270px}}

.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.support-panel{border-radius:28px;padding:42px;background:#f5f5f7;display:flex;flex-direction:column;align-items:flex-start}.support-panel:nth-child(2){background:#17191d;color:white}.support-panel h2{font-size:2.4rem;margin:15px 0 24px}.support-panel p{color:#63636a;flex:1}.support-panel:nth-child(2) p{color:#d2d3d8}.support-panel .btn{font-weight:700;margin-top:20px;white-space:normal}.support-panel:nth-child(2) .btn{background:#fff;color:#15171b}.support-panel:nth-child(2) .eyebrow{color:#cbd1d9}@media(max-width:760px){.support-grid{grid-template-columns:1fr}.support-panel{padding:30px}.support-panel h2{font-size:2rem}}

.work-section{background:#f5f5f7}.work-section .section-heading>p{max-width:430px;color:#64646a;font-size:1.0625rem}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.work-card{background:white;border-radius:28px;overflow:hidden;min-width:0;align-self:start}.work-card-image{position:relative;isolation:isolate;aspect-ratio:1.82;overflow:hidden;background:#dee4e9}.work-photo{width:100%;height:100%;object-fit:cover;object-position:50% 0;display:block}.work-card-image:after{content:"";position:absolute;inset:50% 0 0;z-index:0;background:linear-gradient(transparent,rgba(0,0,0,.6));pointer-events:none}.work-photo-brand{position:absolute;left:26px;bottom:20px;z-index:1;color:white;font-size:.875rem;letter-spacing:.08em;font-weight:750;line-height:1.25}.work-photo-brand small{display:block;font-size:.75rem;letter-spacing:.25em;font-weight:500}.work-card-copy{padding:32px}.work-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:.875rem;font-weight:650;color:#696970;line-height:1.5}.work-card h2{font-size:clamp(1.8rem,2.65vw,2.55rem);letter-spacing:-.035em;line-height:1.12;margin:19px 0}.work-card p{color:#67676e;font-size:1rem;line-height:1.65}.work-details{border-top:1px solid #e8e8ec;margin-top:26px}.work-details>summary{padding:20px 0 0;display:flex;justify-content:space-between;gap:15px;font-weight:700;color:#1765bf;cursor:pointer;list-style:none;min-height:48px}.work-details>summary::-webkit-details-marker{display:none}.work-details[open]>summary svg{transform:rotate(90deg)}.work-details>div{padding-top:24px}.work-details h3{font-size:1.125rem;margin-bottom:16px}.work-details .checklist li{font-size:1rem}.work-photo-credit{font-size:.875rem!important;margin-top:22px!important;line-height:1.5!important}.work-photo-credit a{color:#1765bf;text-decoration:underline}.work-method-note{font-size:.875rem;color:#64646a;max-width:860px;line-height:1.6;margin:32px auto 0;text-align:center}.work-card:nth-child(5n){background:#17191d;color:white}.work-card:nth-child(5n) p,.work-card:nth-child(5n) .work-meta{color:#cccdd2}.work-card:nth-child(5n) a,.work-card:nth-child(5n) summary{color:#a6caff}.work-card:nth-child(5n) .work-details{border-color:#47494e}.trust-mark-row{display:flex;gap:14px;margin-bottom:22px}.trust-mark-row>div{border:1px solid #e4e4e9;border-radius:14px;background:white;padding:16px;flex:1;max-width:145px}.trust-mark{width:100%;height:42px;object-fit:contain}.prose .editorial-inline-button{display:inline-flex;background:#16181d;color:#fff;font-weight:700;text-decoration:none;border-radius:18px;padding:20px 26px;margin:16px 0;white-space:normal}.inline-promo-origin{font-weight:600}
@media(max-width:760px){.work-grid{grid-template-columns:1fr;gap:24px}.work-card-copy{padding:27px}.work-card h2{font-size:2rem}.work-meta{font-size:.875rem}.work-photo-brand{left:22px;bottom:16px}.work-section .section-heading>p{max-width:none}.trust-mark-row{gap:8px}.trust-mark-row>div{padding:10px}.trust-mark{height:34px}}

.work-card-image.preserve-frame{aspect-ratio:1.5}.preserve-frame .work-photo{object-fit:contain}.preserve-frame:after{background:linear-gradient(90deg,rgba(0,0,0,.45),transparent 70%)}.callout-photo{object-position:50% 15%}.callout-photo[src*="story-05"]{object-position:right center;width:140%;max-width:none;left:-40%}.editorial-photo-callout:has(.callout-photo[src*="story-05"]){min-height:550px}

/* HTS identity, consistently centred actions and genuine loading feedback. */
:root{--hts-red:#c91623;--hts-red-hover:#a60f1b}
a.btn,button.btn,.nav-book,.prose .editorial-callout .btn,.editorial-callout .btn,.photo-story .btn-white,.contrast-cta .btn-white,.editorial-photo-copy .btn,.support-panel:nth-child(2) .btn{background:var(--hts-red);color:#fff;border-color:transparent;display:inline-flex;align-items:center;justify-content:center;text-align:center;font-weight:600;text-decoration:none;line-height:1.4;white-space:normal;gap:8px}
a.btn:hover,button.btn:hover,.nav-book:hover,.prose .editorial-callout .btn:hover,.editorial-callout .btn:hover,.photo-story .btn-white:hover,.contrast-cta .btn-white:hover,.editorial-photo-copy .btn:hover,.support-panel:nth-child(2) .btn:hover{background:var(--hts-red-hover);color:#fff;text-decoration:none}
a.btn-outline,button.btn-outline{background:transparent;color:var(--hts-red);border-color:var(--hts-red)}
a.btn-outline:hover,button.btn-outline:hover{background:var(--hts-red);color:#fff}
a.btn-light-outline{color:#fff;border-color:#fff;background:transparent}
a.btn-light-outline:hover{background:#fff;color:#1d1d1f}
.aside-card>a.btn:last-child{padding:12px 24px;border:1px solid transparent;min-height:48px;margin-top:8px}
.btn:focus-visible,.nav-book:focus-visible{outline:3px solid #2188db;outline-offset:4px}
.btn:disabled{background:#e8e8ed;color:#626268;cursor:default}
.brand-wordmark-dark{filter:brightness(0)}.brand-wordmark{object-fit:contain;height:auto;background:transparent}.brand-symbol{background:transparent;border-radius:50%}
@keyframes hts-fan-spin{to{transform:rotate(360deg)}}
html[data-motion=running] .brand-symbol{animation:hts-fan-spin 1.23076923s linear infinite}
.page-loading{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:1000;display:flex;align-items:center;gap:12px;padding:13px 22px;background:#fff;border:1px solid #e8e8ed;border-radius:999px;box-shadow:0 8px 40px #0002;font-size:.9rem;color:#1d1d1f;max-width:calc(100% - 32px);pointer-events:none}
.page-loading[hidden],.form-loading[hidden]{display:none}.page-loading img,.form-loading img{animation:hts-fan-spin 0.215384616s linear infinite;flex:none;width:28px;height:28px;object-fit:contain}
.form-loading{display:flex;align-items:center;gap:12px;padding:14px 0;color:#53535a;font-size:.95rem}.form-loading p{margin:0!important;font-size:inherit!important}
.site-motion-control{background:#f5f5f7;padding:0 24px 24px;display:flex;justify-content:center}.site-motion-control .motion-toggle{border-color:#c6c6ce}
/* Photo layers stay above the panel background, with readable copy above both. */
.editorial-photo-callout>.callout-photo{display:block;opacity:1;z-index:0;margin:0;border-radius:0;max-height:none;height:100%}.editorial-photo-shade{z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.64) 48%,rgba(0,0,0,.18))}.editorial-photo-copy{z-index:2;position:relative}.editorial-photo-copy .eyebrow{color:#e2e3e6}.editorial-photo-copy .button-row{gap:20px}.photo-callout-section{padding-top:24px;padding-bottom:64px}.service-trust{padding-bottom:48px}.service-promise{margin:28px 0;padding:28px;align-items:center}.service-promise strong+strong{border-left:1px solid #ffffff38;padding-left:24px}.service-promise+section,.service-promise+aside{margin-top:28px}
/* A browsable catalogue shelf, using the actual equipment photography. */
.equipment-browse{background:#f5f5f7;padding:64px 0 40px}.equipment-browse-heading{display:flex;justify-content:space-between;align-items:center;gap:36px;margin-bottom:34px}.equipment-browse-heading h2{font-size:clamp(2rem,3.4vw,3.35rem);line-height:1.07;letter-spacing:-.045em}.equipment-browse-heading h2 span{color:#6b6b72}.equipment-help{display:grid;gap:12px;max-width:270px;flex:none}.equipment-help .text-link{font-size:.95rem;font-weight:600;line-height:1.5}.equipment-strip{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:8px 2px 22px;scrollbar-width:thin;scrollbar-color:#aaaab2 transparent}.equipment-tile{flex:0 0 144px;text-align:center;scroll-snap-align:start;color:#1d1d1f;text-decoration:none;border-radius:14px}.equipment-tile-visual{height:126px;position:relative;display:block;background:#fff;border-radius:16px;padding:14px 18px 27px;transition:transform .2s}.equipment-strip-photo{display:block;width:100%;height:86px;object-fit:contain}.equipment-tile .product-hts-mark{left:9px;bottom:7px;transform:scale(.52);transform-origin:bottom left}.equipment-tile-label{display:block;font-size:.875rem;font-weight:600;line-height:1.35;padding:15px 0 3px}.equipment-tile:hover .equipment-tile-visual{transform:translateY(-4px)}.equipment-tile:hover .equipment-tile-label{text-decoration:underline}.equipment-strip-controls{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.equipment-strip-controls[hidden]{display:none}.equipment-scroll{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;width:40px;height:40px;font-size:1.4rem;background:#e5e5e9;color:#1d1d1f;cursor:pointer}.equipment-scroll:disabled{opacity:.38;cursor:default}.equipment-scroll:focus-visible,.equipment-tile:focus-visible{outline:3px solid #0066cc;outline-offset:3px}
.hts-hero-scene{background:#ddd}.hts-hero-scene .hero-photo{height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center}.hts-hero-scene .scene-caption{background:linear-gradient(transparent,#0009);padding:44px 24px 20px}.hts-hero-scene .scene-caption>span{color:white}
/* A click-to-play facade keeps third-party video requests off the initial load. */
.video-card{background:#15171b;color:#fff;border-radius:24px;overflow:hidden;margin:32px 0}.video-stage{position:relative;aspect-ratio:16/9;background:#222630;overflow:hidden}.video-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;margin:0!important;border-radius:0!important}.video-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(#0001,#0008);color:#fff!important;text-decoration:none!important;font-size:1rem;font-weight:600;text-align:center}.video-play-disc{display:grid;place-items:center;width:74px;height:74px;border-radius:50%;background:#fff;color:#15171b;padding-left:4px;box-shadow:0 6px 35px #0004;transition:transform .2s}.video-play:hover .video-play-disc{transform:scale(1.08);background:var(--hts-red);color:#fff}.video-play:focus-visible{outline:4px solid #fff;outline-offset:-7px}.video-stage iframe{position:absolute;inset:0;border:0;width:100%;height:100%;min-height:0}.video-card-copy{padding:28px 32px}.video-card-copy .eyebrow{color:#c5c7cd;font-size:.8rem}.prose .video-card h3,.video-card h3{color:white;font-size:1.55rem;line-height:1.25;margin:10px 0 14px}.prose .video-card p,.video-card p{color:#d8d8df;font-size:1rem;line-height:1.6}.prose .video-card .text-link,.video-card .text-link{color:#a6caff;font-size:.9rem}.video-card-copy .text-link:focus-visible{outline:3px solid #fff;outline-offset:4px}
@media(max-width:760px){.equipment-browse{padding:42px 0 30px}.equipment-browse-heading{align-items:flex-start;flex-direction:column;gap:24px}.equipment-help{max-width:none}.equipment-strip{gap:16px}.equipment-tile{flex-basis:132px}.hts-hero-scene .hero-photo{height:auto;min-height:0;max-height:none}.hts-hero-scene .scene-caption{position:relative;background:#17191d;padding:16px;gap:16px}.hts-hero-scene .scene-caption>span{font-size:.8rem}.page-loading{bottom:92px}.editorial-photo-shade{background:linear-gradient(90deg,#000d,#0009)}.video-card-copy{padding:24px}.service-promise strong+strong{border-left:0;padding-left:0}.photo-callout-section{padding-bottom:44px}}
@media(prefers-reduced-motion:reduce){.brand-symbol,.page-loading img,.form-loading img{animation:none!important}.equipment-tile-visual,.video-play-disc{transition:none}.equipment-strip{scroll-behavior:auto}}
@media print{.page-loading,.form-loading,.site-motion-control,.equipment-strip-controls{display:none!important}.brand-symbol{animation:none!important}.editorial-photo-callout{min-height:0;background:white;color:black}.editorial-photo-callout>.callout-photo,.editorial-photo-shade{display:none}.editorial-photo-copy h2,.editorial-photo-copy p,.editorial-photo-copy .eyebrow{color:black}.equipment-strip{flex-wrap:wrap;overflow:visible}}

.fan-glyph{display:inline-block;flex-shrink:0;aspect-ratio:1;background-image:url('/assets/hts-brand-original.png');background-size:303.597% 174.101%;background-position:49.117% 0;background-repeat:no-repeat;border-radius:50%}.loading-fan{width:28px;height:28px;animation:hts-fan-spin 0.215384616s linear infinite}.product-brand-symbol.fan-glyph{width:28px;height:28px}.contextual-cta-image.crop-lower{height:300%;top:-200%;object-position:center bottom}.contextual-cta-image{object-position:center}
@media(prefers-reduced-motion:reduce){.loading-fan{animation:none!important}}

.editorial-photo-callout>.equipment-cta-image{width:48%;left:52%;object-fit:contain;background:#fff;padding:34px}.editorial-photo-callout:has(.equipment-cta-image) .editorial-photo-shade{background:linear-gradient(90deg,#15171b 30%,#15171bee 45%,#15171b38 70%)}.editorial-photo-callout:has(.equipment-cta-image) .editorial-photo-copy{max-width:720px}
@media(max-width:760px){.editorial-photo-callout>.equipment-cta-image{width:100%;left:0}.editorial-photo-callout:has(.equipment-cta-image) .editorial-photo-shade{background:#000c}}

/* Action colours express the next step, with clear contrast in paired actions. */
:root{--hts-blue:#0069ba;--hts-blue-hover:#005397}
a.btn.btn-blue,button.btn.btn-blue,.prose a.btn.btn-blue,.contrast-cta a.btn.btn-blue,.editorial-photo-copy a.btn.btn-blue,.photo-story a.btn.btn-blue,.button-row>a.btn+a.btn,.contrast-cta-actions>a.btn+a.btn{background:var(--hts-blue);border-color:transparent;color:#fff}
a.btn.btn-blue:hover,button.btn.btn-blue:hover,.prose a.btn.btn-blue:hover,.contrast-cta a.btn.btn-blue:hover,.editorial-photo-copy a.btn.btn-blue:hover,.photo-story a.btn.btn-blue:hover,.button-row>a.btn+a.btn:hover,.contrast-cta-actions>a.btn+a.btn:hover{background:var(--hts-blue-hover);color:#fff}
.footer-contact a[href="/contact/"]{font-weight:700}.contrast-cta-actions .btn{min-width:205px}.work-card-copy h2{font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.24;letter-spacing:-.025em;font-weight:600}

/* Topic navigation uses useful editorial collections, not keyword clouds. */
.topic-links{border-bottom:1px solid var(--line);background:#fff;padding:20px 0}.topic-links>.wrap,.topic-directory>.wrap{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.topic-links span,.topic-directory span{font-size:.875rem;font-weight:650;margin-right:12px;color:#626268}.topic-links a,.topic-directory a{display:inline-flex;align-items:center;min-height:44px;padding:10px 17px;border-radius:100px;background:#f5f5f7;color:#174b7c;font-size:.9375rem;font-weight:550;text-decoration:none}.topic-links a:hover,.topic-directory a:hover{background:#e8eef5;color:#003e76}.topic-directory{padding:28px 0}.topic-directory span{flex-basis:100%;margin-bottom:4px}.topic-overview{padding-block:64px}.topic-overview h2{font-size:clamp(1.9rem,3vw,2.6rem);margin-bottom:24px}.topic-overview p{max-width:850px;font-size:1.125rem;color:var(--muted);line-height:1.7}.topic-service-links{display:flex;flex-wrap:wrap;gap:20px 32px;margin-top:28px}.topic-directory a:focus-visible,.topic-links a:focus-visible{outline:3px solid #0069ba;outline-offset:3px}

/* Mid-article invitations stay within complete editorial section breaks. */
.in-content-cta{position:relative;isolation:isolate;overflow:hidden;border-radius:26px;background:#14161a;color:white;margin:44px 0;min-height:350px;display:flex;align-items:end}.in-content-cta>.inline-cta-photo{position:absolute;inset:0;z-index:-3;width:100%;height:100%;max-width:none;object-fit:cover;margin:0;border-radius:0}.in-content-cta>.inline-cta-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(8,12,17,.91) 0%,rgba(8,12,17,.72) 62%,rgba(8,12,17,.2) 100%)}.in-content-cta>.inline-cta-copy{padding:40px;width:100%;max-width:740px}.in-content-cta .eyebrow{color:#e0e4e9;font-size:.875rem;margin-bottom:18px}.prose .in-content-cta h3,.in-content-cta h3{color:white;font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.08;letter-spacing:-.035em;margin:0 0 22px;font-weight:650}.prose .in-content-cta p,.in-content-cta p{color:#eeeef0;font-size:1rem;line-height:1.65;max-width:530px;margin:0 0 26px}.in-content-cta .button-row{justify-content:flex-start;gap:12px;margin-top:0}.prose .in-content-cta a.btn,.in-content-cta a.btn{color:white;text-decoration:none;font-size:.9375rem;font-weight:650;min-height:48px;line-height:1.3;padding:13px 20px}.in-content-cta>.inline-cta-photo.crop-lower{height:300%;top:-200%;object-position:center bottom}.in-content-cta.equipment-context{align-items:center;min-height:420px}.in-content-cta.equipment-context>.equipment-context-photo{object-fit:contain;object-position:center;width:49%;height:100%;left:auto;right:0;background:#f5f5f7;padding:30px 20px;z-index:-1}.in-content-cta.equipment-context>.inline-cta-shade{background:linear-gradient(90deg,#14161a 48%,transparent 48%)}.equipment-context .inline-cta-copy{max-width:51%;padding:38px}.equipment-context .product-hts-mark{position:absolute;right:24px;left:auto;bottom:22px;color:#343438;background:transparent}.equipment-context .button-row{align-items:start;flex-direction:column}

/* MUA: symptoms, service scope and access planning. */
.mua-nav .wrap>div{flex-wrap:wrap;gap:18px}.mua-scope-card{background:#f5f5f7;border-radius:26px;padding:36px;align-self:start}.mua-scope-card h3{font-size:1.5rem;line-height:1.2;letter-spacing:-.025em;margin-bottom:22px}.mua-scope-card p{font-size:1rem;line-height:1.65;color:#65656b;margin-bottom:24px}.mua-intro .button-row{margin-top:28px}.mua-symptoms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.mua-symptoms article{background:white;padding:30px;border-radius:24px}.mua-symptoms h3,.mua-repair-grid h3{font-size:1.35rem;line-height:1.25;letter-spacing:-.025em;margin:22px 0 16px}.mua-symptoms p,.mua-repair-grid p{color:#64646b;font-size:1rem;line-height:1.7}.mua-midpoint{padding-top:0;padding-bottom:60px}.mua-midpoint .in-content-cta{margin:0}.mua-midpoint .inline-cta-copy{padding:44px}.mua-image-credit{font-size:.875rem;color:#68686d;line-height:1.6;margin:18px 8px 0}.mua-image-credit a{color:#0069ba;text-decoration:underline}.mua-repair-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.mua-repair-grid h3{margin-top:0}.mua-steps{border-top:1px solid var(--line);margin-top:48px;padding-top:40px}.mua-steps h3{font-size:1.6rem;margin-bottom:22px}.mua-steps ol{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;gap:20px 40px;color:#65656b}.mua-steps li{line-height:1.65}.mua-steps strong{color:#242429}.mua-brand-note{font-size:.9375rem;color:#66666d;line-height:1.7;margin-top:36px}.mechanical-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.mechanical-scope-grid article{padding:36px;background:#f5f5f7;border-radius:26px}.mechanical-scope-grid h3{font-size:1.6rem;letter-spacing:-.025em;margin:24px 0 20px}.mechanical-scope-grid p{color:#626269;line-height:1.7;margin-bottom:25px}.mechanical-capabilities .section-heading>p{max-width:420px;color:#626269;line-height:1.6}.work-card-copy h2{font-size:clamp(1.3rem,2vw,1.7rem);font-weight:600;line-height:1.24}

/* The hero is an animated photographic stage using the authentic HTS logo. */
.skyline-scene{margin:44px auto 20px;border-radius:28px;overflow:hidden;background:#f4f7fa;text-align:left}.skyline-stage{position:relative;aspect-ratio:1672/941;overflow:hidden;isolation:isolate;perspective:1400px}.skyline-camera{position:absolute;inset:-1.6%;transform:scale(1.055) translateX(-.8%);transform-origin:65% 52%;animation:skyline-camera-reveal 22s ease-in-out infinite alternate;animation-play-state:paused;will-change:transform}.skyline-backdrop{display:block;width:100%;height:100%;object-fit:cover}.skyline-logo{position:absolute;left:34%;top:18%;width:19%;aspect-ratio:1;transform:perspective(900px) rotateY(-16deg) rotateX(3deg);filter:drop-shadow(1px 2px 1px #0003);animation:skyline-logo-perspective 22s ease-in-out infinite alternate;animation-play-state:paused;will-change:transform}.skyline-fan{width:100%;height:100%;display:block;animation:hts-fan-spin 3.076923076s linear infinite;animation-play-state:paused}.skyline-shadow{position:absolute;left:48%;top:68%;width:23%;aspect-ratio:1;transform:scaleY(.34) skewX(-23deg) rotate(-11deg);filter:brightness(0) blur(6px);opacity:.29;animation:skyline-shadow-drift 22s ease-in-out infinite alternate;animation-play-state:paused;will-change:transform}.skyline-caption{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:23px 28px;color:#5b6069;background:#f5f5f7;font-size:.875rem;line-height:1.5}.skyline-caption strong{font-size:1.05rem;color:#1d1d1f;font-weight:600}.skyline-caption .motion-toggle{font-size:.875rem}.skyline-caption .motion-toggle[hidden]{display:none}html[data-motion=running] .skyline-scene.motion-visible .skyline-camera,html[data-motion=running] .skyline-scene.motion-visible .skyline-logo,html[data-motion=running] .skyline-scene.motion-visible .skyline-shadow,html[data-motion=running] .skyline-scene.motion-visible .skyline-fan{animation-play-state:running}
@keyframes skyline-camera-reveal{from{transform:scale(1.12) translateX(-2.8%) rotateY(-.9deg)}to{transform:scale(1.015) translateX(.15%) rotateY(.6deg)}}
@keyframes skyline-logo-perspective{from{transform:translate3d(-6%,2%,0) perspective(900px) rotateY(-18deg) rotateX(3deg)}to{transform:translate3d(8%,-3%,0) perspective(900px) rotateY(16deg) rotateX(-3deg)}}
@keyframes skyline-shadow-drift{from{transform:translate(-5%,2%) scaleY(.34) skewX(-23deg) rotate(-11deg);opacity:.29}to{transform:translate(7%,-1%) scaleY(.31) skewX(-18deg) rotate(-5deg);opacity:.25}}
@media(max-width:960px){.mua-symptoms{grid-template-columns:repeat(2,minmax(0,1fr))}.mua-repair-grid{gap:25px}.mua-midpoint .inline-cta-copy{padding:32px}.equipment-context .inline-cta-copy{max-width:55%}.in-content-cta.equipment-context>.equipment-context-photo{width:45%;padding:18px}.mua-prose{min-width:0}.mua-nav .wrap>div{gap:12px}.mua-nav .wrap{align-items:flex-start}}
@media(max-width:680px){.topic-links>.wrap{gap:8px}.topic-links span{flex-basis:100%;margin:0 0 3px}.topic-links a,.topic-directory a{font-size:.875rem;padding:9px 14px}.topic-directory{padding:18px 0}.in-content-cta{border-radius:20px;min-height:390px;margin:32px 0}.in-content-cta>.inline-cta-copy,.mua-midpoint .inline-cta-copy{padding:28px}.prose .in-content-cta h3,.in-content-cta h3{font-size:1.8rem}.in-content-cta .button-row{align-items:stretch;flex-direction:column}.in-content-cta a.btn{width:100%;min-width:0}.in-content-cta.equipment-context{padding-top:235px}.in-content-cta.equipment-context>.equipment-context-photo{height:235px;width:100%;top:0;bottom:auto;padding:20px 32px}.equipment-context .inline-cta-copy{max-width:100%}.equipment-context .product-hts-mark{top:191px;bottom:auto;right:18px;font-size:9px}.equipment-context .product-brand-symbol{width:22px;height:22px}.mua-scope-card{padding:28px}.mua-symptoms,.mua-repair-grid,.mechanical-scope-grid,.mua-steps ol{grid-template-columns:1fr}.mua-symptoms article,.mechanical-scope-grid article{padding:28px}.mua-repair-grid{gap:32px}.mua-steps ol{gap:16px}.mua-nav .wrap>strong{display:none}.mua-nav .wrap>div{gap:10px 20px}.mua-nav a{font-size:.875rem}.skyline-scene{border-radius:20px;margin-top:32px}.skyline-stage{aspect-ratio:1.18}.skyline-camera{inset:-1.5% -24%}.skyline-logo{width:20%;left:37%;top:22%}.skyline-shadow{width:24%;left:51%;top:70%}.skyline-caption{padding:18px;gap:15px}.skyline-caption strong{font-size:.9375rem}.skyline-caption .motion-toggle{font-size:.8125rem;padding:10px 12px}.skyline-caption>span{font-size:.8125rem}}
@media(prefers-reduced-motion:reduce){.skyline-camera,.skyline-logo,.skyline-shadow,.skyline-fan{animation:none!important;will-change:auto}.skyline-camera{transform:scale(1.015)}}
@media print{.skyline-scene{display:none}.in-content-cta{break-inside:avoid}.topic-links{padding-block:10px}.mua-symptoms,.mechanical-scope-grid{grid-template-columns:repeat(2,1fr)}}

/* Clear editorial hierarchy, genuine imagery and finite, optional motion. */
@media(min-width:1101px){.global-nav{gap:14px;font-size:.78rem}.header-inner{gap:16px}.mega-panel{animation:menu-reveal .2s ease-out}.nav-book{white-space:nowrap}}
@keyframes menu-reveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.skyline-camera,.skyline-logo,.skyline-shadow,.skyline-fan{animation-duration:4.8s;animation-iteration-count:1;animation-direction:normal;animation-fill-mode:forwards;will-change:auto}
html[data-motion=running] .brand-symbol{animation:hts-fan-spin 0.738461538s ease-out 1}
.skyline-message-shade{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.35) 40%,transparent 74%);pointer-events:none}
.skyline-message{position:absolute;left:6%;top:50%;transform:translateY(-40%);z-index:3;color:white;text-align:left;max-width:48%;pointer-events:none}
.skyline-message>span{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:650}.skyline-message h2{font-size:clamp(2.5rem,5.2vw,5rem);line-height:1.01;letter-spacing:-.055em;color:#fff;margin:20px 0}.skyline-message p{font-size:clamp(.875rem,1.5vw,1.15rem);line-height:1.5;color:#fff;margin:0;max-width:320px}.skyline-logo{left:58%;top:14%;width:16%}.skyline-shadow{left:68%;width:20%}
.organic-comfort-room{position:relative;min-height:900px;overflow:hidden;border-radius:28px;background:#1b1c1d}.organic-comfort-room .comfort-bedroom{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:40% center;transform:none}.organic-comfort-room:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.62),transparent 50%,rgba(0,0,0,.12))}.organic-comfort-room .comfort-room-copy{position:relative;z-index:1;color:#fff;padding:44px;text-align:left}.organic-comfort-room h3{color:#fff;font-size:clamp(2.5rem,4vw,3.8rem);line-height:1.04;letter-spacing:-.045em}.organic-comfort-room p{color:#fff;max-width:320px}.organic-comfort-room .eyebrow{color:#fff}
.home-system-operation{background:#f5f5f7;border-radius:28px;text-align:center;padding:40px 24px 32px;min-width:0}.home-system-copy h3{font-size:clamp(2.25rem,3.5vw,3.3rem);line-height:1.05;letter-spacing:-.045em;margin:16px 0}.home-system-copy p{color:#64646c;font-size:1rem}.home-system-switch,.equipment-modes{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:20px auto}.home-system-switch button,.equipment-modes button{border:1px solid #d6d6dc;background:#fff;border-radius:99px;padding:11px 18px;min-height:44px;font-size:.875rem;font-weight:600;cursor:pointer;color:#26272b}.home-system-switch button[aria-pressed=true],.equipment-modes button[aria-pressed=true]{background:#1d1d1f;color:#fff;border-color:#1d1d1f}.equipment-modes button.flow-replay{background:transparent;border-color:transparent;color:#0066cc}.home-system-view .equipment-cabinet-stage{min-height:430px;padding:12px 40px 32px;background:#fff;border-radius:22px;margin-top:24px}.home-system-view .equipment-image-plane{height:420px}.home-flow-note{font-size:.75rem;color:#60636b;margin:10px 0 18px}.home-system-view>.text-link{font-size:.9375rem}
.equipment-explorer-section{background:#f5f5f7}.equipment-explorer-section .section-heading>p{max-width:470px;color:#63636b;font-size:1.0625rem;line-height:1.65}.equipment-explorer{display:grid;grid-template-columns:minmax(300px,1fr) minmax(0,1.15fr);gap:50px}.equipment-visual-column{min-width:0}.equipment-cabinet-stage{position:relative;background:#fff;border:1px solid #e5e5ea;border-radius:28px;padding:35px 48px 55px;display:flex;justify-content:center;align-items:center;min-height:700px}.equipment-image-plane{position:relative;height:620px;max-width:100%;flex:none}.equipment-image-plane>.equipment-technical-image{width:100%;height:100%;object-fit:contain;display:block}.equipment-cabinet-stage .product-hts-mark{position:absolute;left:24px;bottom:18px;right:auto}.equipment-airflow{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.equipment-airflow path{fill:none;stroke-width:1.1;stroke-linecap:round;stroke-dasharray:2 2;vector-effect:non-scaling-stroke;stroke-width:3px;opacity:.85}.equipment-airflow .flow-return{stroke:#737a84}.equipment-airflow .flow-conditioned{stroke:#087fcc}[data-mode=heating] .flow-conditioned{stroke:#d04432}@keyframes equipment-flow{to{stroke-dashoffset:-24}}.equipment-hotspot{position:absolute;width:44px;height:44px;transform:translate(-50%,-50%);border:0;background:transparent;padding:5px;display:grid;place-items:center;cursor:pointer;z-index:3}.equipment-hotspot span{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#fff;color:#1d1d1f;border:1px solid #5e6872;box-shadow:0 2px 8px #0002;font-size:.8rem;font-weight:750}.equipment-hotspot[aria-pressed=true] span{background:#0066cc;border-color:#0066cc;color:white;box-shadow:0 0 0 5px #0066cc20}.part-highlight{position:absolute;width:64px;height:64px;border-radius:50%;border:2px solid #087fcc;background:#087fcc16;box-shadow:0 0 20px #087fcc25;transform:translate(-50%,-50%);pointer-events:none;z-index:2;transition:left .18s,top .18s}.equipment-flow-caption{text-align:center;color:#666a72;font-size:.875rem;line-height:1.7;margin:18px 0}.equipment-flow-caption small{font-size:.75rem}.equipment-instruction{font-size:.9375rem;color:#666a72;margin:5px 0 20px}.equipment-part-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.equipment-part-list button{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid #d8dbe0;border-radius:13px;background:#fff;padding:12px;font-size:.875rem;line-height:1.4;min-height:52px;color:#33363c;cursor:pointer}.equipment-part-list button>span{font-size:.75rem;font-weight:700;color:#767c84}.equipment-part-list button[aria-pressed=true]{border-color:#0066cc;color:#005fbf;background:#eef6ff}.equipment-part-panel{display:flex;gap:20px;align-items:center;padding:28px;background:white;border-radius:20px;margin-top:20px;min-height:245px}.equipment-part-panel h3{font-size:1.65rem;letter-spacing:-.035em;line-height:1.15;margin:12px 0 16px}.equipment-part-panel p{font-size:1rem;color:#60636b;line-height:1.65}.equipment-part-panel .eyebrow{font-size:.7rem}.equipment-part-focus{width:105px;height:195px;object-fit:contain;flex:none}.equipment-operating-note{border-top:1px solid #d8dbe1;padding-top:22px;margin:25px 0}.equipment-operating-note strong{font-size:1rem}.equipment-operating-note p{font-size:.9375rem;line-height:1.65;color:#62666e;margin:12px 0}.equipment-source-note{border-top:1px solid #d8dbe1;padding-top:25px;margin-top:38px;font-size:.8125rem;color:#696d75;line-height:1.6}.equipment-source-note>div{display:flex;gap:14px 25px;flex-wrap:wrap;margin-top:16px}.equipment-source-note a{color:#0066cc;text-decoration:underline;text-underline-offset:3px}
.stakeholder-section{background:#101317;color:white}.stakeholder-heading{max-width:720px;padding-bottom:40px}.stakeholder-heading h2{color:white;font-size:clamp(2.5rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.045em}.stakeholder-heading p{color:#c7ccd3;font-size:1.125rem;max-width:570px;line-height:1.65}.stakeholder-heading .eyebrow{color:#aeb9c9}.stakeholder-scene{position:relative;overflow:hidden;border-radius:28px;aspect-ratio:2.2}.stakeholder-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 70%}.stakeholder-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.8),transparent 80%)}.stakeholder-photo-copy{position:absolute;left:5%;top:50%;transform:translateY(-50%);z-index:1}.stakeholder-photo-copy>span{font-size:.75rem;letter-spacing:.04em;color:#dfe8f3}.stakeholder-photo-copy h3{font-size:clamp(2rem,4.5vw,4rem);line-height:1.05;letter-spacing:-.04em;color:#fff;margin:18px 0}.stakeholder-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding:40px 0 30px}.stakeholder-grid article{border-top:1px solid #4b5059;padding-top:22px}.stakeholder-grid article>span{font-size:.8rem;color:#87b5f5}.stakeholder-grid h3{font-size:1.25rem;line-height:1.35;color:white;letter-spacing:-.015em;margin:20px 0 14px}.stakeholder-grid p{font-size:.9375rem;line-height:1.65;color:#bdc4ce}
.credentials-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.credential-card{background:white}.credential-cci .credential-logo{width:190px;max-width:100%;height:70px;object-fit:cover;object-position:center}.industry-resources{margin-top:28px;border-top:1px solid #d9dce2;padding-top:30px}.industry-resources h3{font-size:1.25rem;margin:0 0 10px}.industry-resources p{font-size:.875rem;color:#666b74}.resource-logo-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;margin-top:20px}.resource-logo-row a{background:white;border:1px solid #e5e7ec;border-radius:15px;min-height:120px;padding:18px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:#565c66;text-align:center;font-size:.7rem;font-weight:650}.resource-logo{width:125px;max-width:100%;height:47px;object-fit:contain}.client-logo[src*="goldview"]{max-width:100px;object-fit:contain}.monthly-mechanical{background:#f5f5f7}.monthly-mechanical .section-heading>p{max-width:420px;font-size:1.0625rem;line-height:1.6;color:#656970}.monthly-mechanical h3{font-size:2rem;line-height:1.1;letter-spacing:-.035em;margin:20px 0}.mechanical-project-systems{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:22px 0}.mechanical-project-systems li{font-size:.8rem;background:#f0f2f5;border-radius:99px;padding:9px 12px}.work-scope-note{font-size:.875rem!important}
.mechanical-nav{background:#f5f5f7;border-block:1px solid #e5e5eb}.mechanical-nav .wrap{display:flex;flex-wrap:wrap;gap:14px 28px;padding-block:22px}.mechanical-nav a{color:#0066cc;font-size:.875rem;font-weight:600}.system-cycle{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;counter-reset:cycle}.system-cycle li{border-top:1px solid #ccd3dc;padding-top:22px;counter-increment:cycle;font-size:.9375rem;line-height:1.6}.system-cycle li:before{content:counter(cycle,decimal-leading-zero);display:block;color:#0066cc;font-size:.8rem;margin-bottom:14px}.system-cycle strong{display:block;font-size:1.125rem;margin-bottom:12px;line-height:1.3}.mechanical-symptoms,.mechanical-repair-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.mechanical-symptoms article,.mechanical-repair-grid article{background:#fff;border-radius:23px;padding:32px}.mechanical-symptoms h3,.mechanical-repair-grid h3{font-size:1.5rem;line-height:1.2;margin-bottom:16px}.mechanical-symptoms p,.mechanical-repair-grid p{font-size:1rem;line-height:1.65;color:#626770}.mechanical-repair-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mechanical-repair-grid article{background:#f5f5f7}.mechanical-related{display:flex;gap:24px;flex-wrap:wrap;margin-top:32px}.mechanical-midpoint{padding-top:0}
[hidden]{display:none!important}
@media(max-width:1000px){.stakeholder-grid{grid-template-columns:1fr 1fr}.equipment-explorer{gap:25px;grid-template-columns:minmax(250px,.9fr) minmax(0,1fr)}.equipment-cabinet-stage{padding-inline:20px}.equipment-image-plane{height:570px}.equipment-part-list{grid-template-columns:1fr}.equipment-part-panel{padding:23px}.equipment-part-focus{width:75px;height:160px}.system-cycle{grid-template-columns:repeat(3,minmax(0,1fr))}.mechanical-repair-grid{grid-template-columns:1fr}.organic-comfort-room{min-height:860px}.resource-logo-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.equipment-explorer{grid-template-columns:1fr}.equipment-image-plane{height:570px}.equipment-cabinet-stage{min-height:650px}.equipment-detail-column{padding-top:5px}.equipment-part-list{grid-template-columns:1fr 1fr}.equipment-part-focus{width:95px;height:185px}.comfort-grid{grid-template-columns:1fr}.organic-comfort-room{min-height:640px}.organic-comfort-room .comfort-room-copy{padding:32px}.organic-comfort-room .comfort-bedroom{object-position:center}.home-system-operation{padding:32px 20px}.stakeholder-scene{aspect-ratio:1.4}.credentials-grid{grid-template-columns:1fr 1fr}.resource-logo-row{grid-template-columns:1fr 1fr}.mechanical-symptoms{grid-template-columns:1fr}.system-cycle{grid-template-columns:1fr}.stakeholder-grid{gap:28px}.stakeholder-photo-copy h3{font-size:2.5rem}.skyline-message{max-width:67%;left:7%;top:66%}.skyline-message h2{font-size:clamp(2.2rem,9vw,3.2rem);margin:12px 0}.skyline-message>span{font-size:.6rem}.skyline-message p{font-size:.8rem;max-width:230px}.skyline-message-shade{background:linear-gradient(0deg,rgba(0,0,0,.85),rgba(0,0,0,.25) 65%,transparent)}.skyline-logo{left:54%;top:14%;width:17%}.skyline-shadow{left:68%;top:64%;width:21%}}
@media(max-width:430px){.equipment-part-list{grid-template-columns:1fr}.equipment-image-plane{height:510px}.equipment-cabinet-stage{min-height:590px;padding-inline:16px}.credentials-grid{grid-template-columns:1fr}.stakeholder-grid{grid-template-columns:1fr}.stakeholder-photo-copy h3{font-size:2rem}.equipment-part-panel{gap:10px}.equipment-part-focus{width:75px;height:150px}.equipment-part-panel h3{font-size:1.4rem}}
@media(prefers-reduced-motion:reduce){.equipment-airflow path,.mega-panel{animation:none!important}.part-highlight{transition:none}}
/* Original evidence photos stay sharp at a realistic display size. */
.cta-full-photo>.callout-photo,.cta-full-photo>.inline-cta-photo{width:100%;height:100%;left:0;top:0;object-fit:cover;object-position:center;filter:none;transform:none}.cta-framed{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;background:#11151b}.cta-media-frame{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;background:#f0f2f5;padding:28px;min-width:0;overflow:hidden}.cta-source-crop{position:relative;overflow:hidden;border-radius:12px;flex:none;max-width:100%}.cta-source-crop>.contextual-cta-image{position:absolute;max-width:none;object-fit:fill;object-position:center;z-index:0;transform:none;filter:none}.cta-framed>.editorial-photo-shade,.cta-framed>.inline-cta-shade{display:none}.cta-framed>.editorial-photo-copy,.cta-framed>.inline-cta-copy{padding:clamp(28px,4vw,50px);max-width:none;align-self:center}.cta-framed h2{font-size:clamp(2rem,3.5vw,3.4rem)}.in-content-cta.cta-framed{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.in-content-cta.cta-framed .cta-media-frame{padding:18px}.in-content-cta.cta-framed .inline-cta-copy{padding:28px}.in-content-cta.cta-framed .inline-cta-copy h3{font-size:clamp(1.6rem,2.7vw,2.3rem)}.in-content-cta.cta-framed .button-row{gap:10px}.in-content-cta.cta-framed .btn{font-size:.85rem;padding:13px 18px}.mechanical-nav .wrap>div{display:flex;flex-wrap:wrap;gap:14px 24px}.mechanical-nav .wrap>strong{margin-right:auto}
@media(max-width:760px){.cta-framed,.in-content-cta.cta-framed{grid-template-columns:1fr}.cta-framed .cta-media-frame{max-height:370px;padding:24px}.cta-source-crop{max-height:320px}.cta-framed>.editorial-photo-copy,.cta-framed>.inline-cta-copy{padding:32px 26px}.in-content-cta.cta-framed .inline-cta-copy{padding:28px}.mechanical-nav .wrap>strong{display:none}}

@media(prefers-reduced-motion:reduce){[data-equipment-explorer] .equipment-airflow path{animation:none!important}}
.manufacturer-resources .section-heading>p{max-width:450px;color:#686d75;font-size:1rem;line-height:1.65}.manufacturer-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.manufacturer-document{padding:32px;border:1px solid #e0e4eb;border-radius:24px;background:#f9fafc;display:flex;flex-direction:column;align-items:flex-start;min-width:0}.document-symbol{color:#0066cc;margin-bottom:24px}.document-symbol svg{width:30px;height:30px}.manufacturer-document h3{font-size:1.4rem;line-height:1.25;letter-spacing:-.025em;margin:14px 0 18px}.manufacturer-document>p{color:#656b74;font-size:.9375rem;line-height:1.65;flex:1}.document-meta{color:#707781;font-size:.8rem;margin:10px 0 20px}.document-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px}.document-actions>a:not(.btn){color:#0066cc;font-size:.875rem;font-weight:650}.manufacturer-original{color:#636c79;font-size:.75rem;margin-top:22px;text-decoration:underline;text-underline-offset:3px;line-height:1.6}.manufacturer-page-link{margin:30px 0}.document-availability{padding:36px;background:#f5f5f7;border-radius:24px;max-width:800px}.document-availability h3{font-size:1.6rem;line-height:1.2;margin:0 0 20px}.document-availability p{color:#626974;line-height:1.65}.document-dialog{position:fixed;inset:0;margin:auto;width:min(1200px,96vw);max-width:96vw;height:92dvh;max-height:92dvh;border:0;border-radius:20px;padding:0;background:#f5f5f7;color:#1d1d1f;overflow:hidden}.document-dialog::backdrop{background:#000a;backdrop-filter:blur(5px)}.document-toolbar{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:16px 22px;border-bottom:1px solid #d8dce3}.document-toolbar h2{font-size:1rem;line-height:1.4;letter-spacing:0;margin:0}.document-close{flex:none}.document-fallback{font-size:.8rem;padding:12px 22px;margin:0}.document-fallback a{color:#0066cc;text-decoration:underline}.document-frame-slot{height:calc(100% - 120px)}.manufacturer-pdf-frame{width:100%;height:100%;border:0}.document-open{overflow:hidden}@media(max-width:760px){.manufacturer-document-grid{grid-template-columns:1fr}.manufacturer-document{padding:28px}.document-toolbar{padding:12px 16px}.document-toolbar h2{font-size:.875rem}.document-dialog{width:100vw;max-width:100vw;height:96dvh;max-height:96dvh;border-radius:15px 15px 0 0;top:auto}.document-frame-slot{height:calc(100% - 150px)}}
.system-cycle{display:block;margin-top:44px}.system-cycle>h3{font-size:1.7rem;line-height:1.2;letter-spacing:-.025em;margin:0 0 28px}.system-cycle>ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;padding:0;list-style:none}.system-cycle li{display:block}.system-cycle li:before{content:none}.system-cycle li>span{display:block;font-size:.8rem;color:#0066cc;font-weight:650;margin-bottom:16px}.system-cycle li p{font-size:.9375rem;line-height:1.65;color:#646a74;margin:0}.system-cycle strong{margin-bottom:12px}@media(max-width:1000px){.system-cycle>ol{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.system-cycle>ol{grid-template-columns:1fr}}
/* Preserve crop geometry on phones, including face-free source windows. */
@media(max-width:760px){.cta-framed .cta-media-frame{max-height:none}.cta-source-crop{max-height:none}}
.client-logos img[src*="client-goldview"]{width:94px;height:82px;object-fit:contain}
.document-external-note{font-size:.75rem;color:#656d78;line-height:1.5}

/* Refined shared presentation: one continuous client row, complete location details. */
.clients-editorial{padding:76px 0 62px;background:#f5f5f7;overflow:hidden}
.clients-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:44px;margin-bottom:48px}
.clients-heading h2{font-size:clamp(2rem,4.4vw,3.9rem);line-height:1.04;letter-spacing:-.045em;margin:14px 0 0}
.clients-heading h2 span{color:#707075}.clients-heading p{max-width:360px;color:#62626a;line-height:1.6;margin:0}
.client-marquee{overflow-x:auto;scrollbar-width:none;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);outline-offset:8px}
.client-marquee-track{display:flex;width:max-content;animation:client-pan 38s linear infinite;animation-play-state:paused}
.client-logo-run{display:flex;align-items:center;gap:42px;padding-right:42px;flex:none}
.client-logo-cell{width:168px;height:104px;display:grid;place-items:center;flex:none}
.client-logo-cell img.client-logo{width:100%;max-width:160px;height:80px;object-fit:contain;filter:none}
.client-logo-cell img[src*="goldview"]{width:98px;height:86px}.client-logo-cell img[src*="ace"]{max-width:128px}
html[data-motion=running] .clients-editorial.motion-visible .client-marquee-track{animation-play-state:running}

@keyframes client-pan{to{transform:translateX(-50%)}}
.office-locations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding:32px 0 38px;border-top:1px solid #d2d2d7}
.office-locations address{font-style:normal;display:flex;flex-direction:column;gap:9px;font-size:.88rem;line-height:1.65;color:#606067}
.office-locations address strong{font-size:1.05rem;color:#1d1d1f}.office-locations address a{font-weight:700;color:var(--blue)}
.mechanical-scope-icon{margin-bottom:22px;color:#0876c9;background:#eaf4fc}
.mechanical-scope-grid article{background:white;border:1px solid #e8e8ed;border-radius:22px;padding:30px}

/* Air and water paths are functional overlays on the original OEM figures. */
.equipment-cabinet-stage{padding-right:66px;overflow:visible;background:radial-gradient(ellipse at 50% 44%,#fff 40%,#f1f5f9 100%)}
.equipment-image-plane{overflow:visible}
.equipment-airflow,.equipment-waterflow{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:2}
.equipment-airflow path.flow-ribbon{fill:none;stroke-width:1.2;stroke-linecap:round;stroke-dasharray:3 4;opacity:.7;filter:drop-shadow(0 0 2px #ffffff)}
.equipment-airflow .flow-return{stroke:#e2584e}.equipment-airflow .flow-conditioned{stroke:#087ff0}
[data-mode=heating] .equipment-airflow .flow-return{stroke:#087ff0}[data-mode=heating] .equipment-airflow .flow-conditioned{stroke:#e2584e}
.equipment-waterflow path{fill:none;stroke-linejoin:round;stroke-linecap:round}
.equipment-waterflow .water-pipe-glass{stroke:#a9c3d5;stroke-width:4;opacity:.4}
.equipment-waterflow .water-pipe{stroke-width:2.5;opacity:.25}.equipment-waterflow .water-particles{stroke-width:1.25;stroke-dasharray:2 4;opacity:.85}
.water-supply{stroke:#1285df}.water-return{stroke:#df584e}
[data-mode=heating] .water-supply{stroke:#df584e}[data-mode=heating] .water-return{stroke:#1285df}
.riser-key{position:absolute;top:-2%;font-weight:700;font-size:11px;width:18px;text-align:center;transform:translateX(-50%);color:#326b91}
.riser-supply{left:103%}.riser-return{left:113%;color:#a74c49}
.blower-rotation{position:absolute;width:21%;aspect-ratio:1;transform:translate(-50%,-50%) scaleX(.83) rotate(-12deg);z-index:3;pointer-events:none}
.blower-rotation svg{width:100%;height:100%;fill:none;stroke:#1375b8;stroke-width:1.5;background:#eff9ffad;border-radius:50%}
.blower-rotor{transform-origin:20px 20px;stroke-width:2.5}
[data-equipment-explorer] .equipment-airflow path.flow-ribbon{animation:equipment-flow 1.8s linear infinite;animation-play-state:paused}
[data-equipment-explorer] .water-particles{animation:water-flow 2.4s linear infinite;animation-play-state:paused}
[data-equipment-explorer] .blower-rotor{animation:blower-turn 1.5s linear infinite;animation-play-state:paused}
html[data-motion=running] [data-equipment-explorer].motion-visible .equipment-airflow path.flow-ribbon,html[data-motion=running] [data-equipment-explorer].motion-visible .water-particles,html[data-motion=running] [data-equipment-explorer].motion-visible .blower-rotor{animation-play-state:running}
@keyframes water-flow{to{stroke-dashoffset:-24}}@keyframes blower-turn{to{transform:rotate(360deg)}}
.equipment-flow-caption small{display:block;margin-top:9px;line-height:1.7;color:#66717f}.home-flow-note{font-size:.73rem}

/* The opening plays once. Ambient logo, shadow and lateral camera movement continue. */
.skyline-cinematic .skyline-world{position:absolute;inset:0;animation:terrace-lateral 42s 13s ease-in-out infinite alternate;animation-play-state:paused;transform:scale(1.035)}
.skyline-cinematic .skyline-camera{position:absolute;inset:0;transform:none;animation:terrace-arrival 13s cubic-bezier(.2,.55,.3,1) 1 both;animation-play-state:paused}
.skyline-cinematic .skyline-backdrop{object-position:64% center}
.skyline-overhead{position:absolute;inset:0;animation:terrace-overhead 13s cubic-bezier(.3,.2,.2,1) 1 both;animation-play-state:paused;pointer-events:none}
.skyline-overhead-photo{width:100%;height:100%;object-fit:cover;object-position:center}
.skyline-cinematic .skyline-logo{left:14%;top:13%;width:16%;animation:terrace-logo-enter 13s cubic-bezier(.2,.65,.2,1) 1 both;animation-play-state:paused;transform:none}
.skyline-cinematic .skyline-shadow{left:41%;top:79%;width:22%;filter:brightness(0) blur(5px);opacity:.34;animation:terrace-shadow-settle 13s cubic-bezier(.2,.65,.2,1) 1 both;animation-play-state:paused;transform:rotate(-14deg) scaleY(.3)}
.skyline-cinematic .skyline-fan{display:block;width:100%;height:auto;animation:terrace-fan-turn 4.923076924s linear infinite;animation-play-state:paused}
.skyline-cinematic .skyline-message{left:6%;top:53%;transform:translateY(-30%);animation:terrace-type-reveal 2s 6s cubic-bezier(.2,.5,.3,1) both;animation-play-state:paused}
.skyline-cinematic .skyline-message-shade{animation:terrace-shade 13s ease 1 both;animation-play-state:paused;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.28) 43%,transparent 75%)}
html[data-motion=running] .skyline-cinematic.motion-visible :is(.skyline-world,.skyline-camera,.skyline-overhead,.skyline-logo,.skyline-shadow,.skyline-fan,.skyline-message,.skyline-message-shade){animation-play-state:running}
@keyframes terrace-arrival{0%,12%{transform:scale(1.24) translateY(-9%);filter:blur(3px)}60%{filter:blur(.3px)}100%{transform:scale(1);filter:blur(0)}}
@keyframes terrace-overhead{0%,15%{opacity:1;transform:scale(1.12) translateY(-3%)}60%,100%{opacity:0;transform:scale(1.38) translateY(19%)}}
@keyframes terrace-logo-enter{0%,24%{opacity:0;transform:translate(-170%,190%) scale(.75)}35%{opacity:1}76%,100%{opacity:1;transform:translate(0,0) scale(1)}}
@keyframes terrace-shadow-settle{0%,16%{transform:translate(-4%,-135%) rotate(-18deg) scaleY(.85);opacity:.39}78%,100%{transform:translate(0,0) rotate(-14deg) scaleY(.3);opacity:.34}}
@keyframes terrace-fan-turn{to{transform:rotate(360deg)}}
@keyframes terrace-type-reveal{from{clip-path:inset(0 100% 0 0);opacity:0;translate:-28px 0}to{clip-path:inset(0);opacity:1;translate:0 0}}
@keyframes terrace-shade{0%,22%{opacity:0}65%,100%{opacity:1}}
@keyframes terrace-lateral{from{transform:scale(1.035) translateX(-.6%)}to{transform:scale(1.055) translateX(1.2%)}}
@media(max-width:700px){
 .clients-editorial{padding:48px 0}.clients-heading{display:block;margin-bottom:26px}.clients-heading p{margin-top:22px;max-width:100%}.client-logo-run{gap:24px;padding-right:24px}.client-logo-cell{width:136px;height:96px}
 .office-locations{grid-template-columns:1fr;gap:25px}.office-locations address{padding-bottom:20px;border-bottom:1px solid #ddd}.office-locations address:last-child{border:0}
 .skyline-cinematic .skyline-stage{aspect-ratio:.88}.skyline-cinematic .skyline-camera{inset:0}.skyline-cinematic .skyline-backdrop{object-position:65% center}
 .skyline-cinematic .skyline-logo{left:12%;top:13%;width:25%}.skyline-cinematic .skyline-shadow{left:38%;top:81%;width:34%}.skyline-cinematic .skyline-message{left:7%;top:60%;width:86%}.skyline-cinematic .skyline-message h2{font-size:clamp(2.4rem,9.5vw,4rem)}.skyline-cinematic .skyline-message-shade{background:linear-gradient(0deg,#0009,transparent 90%),linear-gradient(90deg,#0007,transparent 90%)}
 .equipment-cabinet-stage{padding-right:56px}.home-system-operation .equipment-cabinet-stage{padding-right:66px}
}
@media(prefers-reduced-motion:reduce){
 .client-marquee-track{animation:none;width:max-content}.client-marquee{overflow:auto;mask-image:none}.client-logo-run[aria-hidden]{display:none}
 [data-equipment-explorer] .equipment-airflow path.flow-ribbon,[data-equipment-explorer] .water-particles,[data-equipment-explorer] .blower-rotor{animation:none!important}
 .skyline-cinematic :is(.skyline-world,.skyline-camera,.skyline-overhead,.skyline-logo,.skyline-shadow,.skyline-fan,.skyline-message,.skyline-message-shade){animation:none!important}
 .skyline-cinematic .skyline-overhead{display:none}.skyline-cinematic .skyline-logo{opacity:1;transform:none}.skyline-cinematic .skyline-message{opacity:1;clip-path:none}.skyline-cinematic .skyline-shadow{transform:rotate(-14deg) scaleY(.3)}
}
.retrofit-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.retrofit-comparison-intro{padding-bottom:0}.retrofit-reading-card{padding:36px;border-radius:24px;background:#f5f5f7;margin:32px 0}
.retrofit-reading-card h3{font-size:clamp(1.5rem,3vw,2.3rem);letter-spacing:-.035em;line-height:1.1;margin:12px 0 18px}.prose .article-sources{font-size:.85rem;line-height:1.7;color:#606067}
@media(max-width:760px){.retrofit-product-grid{grid-template-columns:1fr}.retrofit-reading-card{padding:26px}}
.cta-equipment-brand{position:absolute;left:30px;bottom:24px;z-index:2}.cta-equipment-brand .product-hts-mark{position:static}
@media(max-width:760px){.cta-equipment-brand{left:24px;top:22px;bottom:auto}}

/* FAQ answers fit the content column at every viewport, including enlarged text. */
.faq-layout{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}
.faq-layout>*{min-width:0}
.faq-table,.prose .faq-table{width:100%;max-width:100%;min-width:0;table-layout:fixed}
.faq-table :is(caption,th,td){overflow-wrap:anywhere;word-break:normal;hyphens:auto;white-space:normal;box-sizing:border-box;max-width:100%}
@media(max-width:980px){.faq-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:680px){
 .faq-table,.prose .faq-table{display:block;table-layout:auto;min-width:0;width:100%;max-width:100%;font-size:1rem}
 .faq-table caption,.faq-table tbody,.faq-table tr{display:block;width:100%;max-width:100%;min-width:0}
 .faq-table th,.faq-table td{display:block;width:100%;min-width:0;max-width:100%;padding-left:0;padding-right:0;font-size:1rem;line-height:1.6}
 .faq-table th{padding-top:20px}.faq-table td{padding-top:9px;padding-bottom:22px}
 .faq-table p,.faq-table a{max-width:100%;overflow-wrap:anywhere}
}

/* Official 2026 fan: exact vector paths from the owner's Illustrator PDF. */
.fan-glyph{background-image:url('/assets/hts-fan-vector.svg');background-size:contain;background-position:center;background-repeat:no-repeat;border-radius:0}
/* One panorama and one continuous camera: no image-to-image transition. */
.skyline-flight .skyline-stage{aspect-ratio:1672/941;background:#e7e9ec;perspective:none}
.skyline-flight-poster,.skyline-flight-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.skyline-flight-poster{object-fit:cover;object-position:64% 40%}
.skyline-flight-canvas{opacity:0;pointer-events:none;transition:opacity .9s ease}
.skyline-flight.flight-ready .skyline-flight-canvas{opacity:1}
.skyline-flight.flight-ready .skyline-flight-poster{visibility:hidden}
.skyline-flight .skyline-logo{left:8%;top:10%;width:15%;animation:none;transform:none;filter:drop-shadow(0 3px 7px #172b4015);opacity:1;z-index:3;transition:opacity 2.8s ease,translate 3.2s cubic-bezier(.2,.7,.2,1)}
.skyline-flight .skyline-shadow{left:var(--shadow-left,40%);top:var(--shadow-top,79%);width:var(--shadow-width,18%);animation:none;transform:translate(-50%,-50%) rotate(var(--shadow-angle,-8deg)) scaleY(var(--shadow-squash,.29));opacity:.25;filter:brightness(0) blur(var(--shadow-blur,2px));z-index:1}
.skyline-flight .skyline-fan{display:block;width:100%;height:auto;animation:terrace-fan-turn 4.923076924s linear infinite;animation-play-state:paused}
html[data-motion=running] .skyline-flight.motion-visible .skyline-fan{animation-play-state:running}
.skyline-flight .skyline-message-shade{opacity:1;animation:none;z-index:2;background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(246,247,249,.87) 30%,rgba(231,234,239,.30) 56%,transparent 82%);transition:opacity 2.6s ease}
.skyline-flight .skyline-message{left:6.8%;top:47%;max-width:48%;transform:none;color:#191b20;animation:none;opacity:1;clip-path:inset(0);transition:opacity 2.2s .45s ease,clip-path 2.4s .45s cubic-bezier(.2,.65,.2,1),translate 2.4s .45s ease}
.skyline-flight .skyline-message>span{font-size:.875rem;color:#525762;letter-spacing:.08em}
.skyline-flight .skyline-message h2{color:#191b20;font-size:clamp(2.4rem,5.2vw,5rem);margin:15px 0 18px}
.skyline-flight .skyline-message p{color:#424751;font-size:clamp(1rem,1.5vw,1.15rem);max-width:310px}
.skyline-flight:is([data-flight=moving],[data-flight=loading]) .skyline-logo{opacity:0;translate:-32px 0;transition:none}
.skyline-flight:is([data-flight=moving],[data-flight=loading]) .skyline-message{opacity:0;clip-path:inset(0 100% 0 0);translate:-18px 0;transition:none}
.skyline-flight:is([data-flight=moving],[data-flight=loading]) .skyline-message-shade{opacity:0;transition:none}
@media(max-width:700px){
 .skyline-flight .skyline-stage{aspect-ratio:.88}
 .skyline-flight .skyline-logo{left:9%;top:9%;width:26%}
 .skyline-flight .skyline-shadow{width:var(--shadow-width,30%)}
 .skyline-flight .skyline-message{left:7%;top:52%;width:86%;max-width:86%}
 .skyline-flight .skyline-message h2{font-size:clamp(2.1rem,9.2vw,3.6rem);line-height:1.02;margin:14px 0 17px}
 .skyline-flight .skyline-message>span{font-size:.75rem;letter-spacing:.06em}
 .skyline-flight .skyline-message p{font-size:1rem;max-width:270px;line-height:1.5}
 .skyline-flight .skyline-message-shade{background:linear-gradient(0deg,#f8f9fbfa 0%,#f5f6f8ed 29%,#eff1f57d 52%,#f2f4f814 85%),linear-gradient(90deg,#f3f5f785,transparent 80%)}
}
@media(prefers-reduced-motion:reduce){
 .skyline-flight :is(.skyline-fan,.skyline-logo,.skyline-shadow,.skyline-message,.skyline-message-shade){animation:none!important;transition:none!important}
}

/* Keep the supplied lockup intact; only its original fan blades turn. */
.brand-official{position:relative;display:block;width:150px;aspect-ratio:578/242;gap:0;flex:none}
.brand-official>.brand-lockup{display:block;width:100%;height:auto;max-width:none;object-fit:contain;mix-blend-mode:normal;filter:none}
.brand-rotor{position:absolute;display:block;left:12.5637%;top:34.2975%;width:19.7232%;aspect-ratio:1;background:url('/assets/hts-fan-rotor.svg') center/contain no-repeat;transform-origin:50% 50%;animation:hts-fan-spin 2.461538462s linear infinite;animation-play-state:paused;pointer-events:none}
html[data-motion=running] .brand-official>.brand-rotor{animation-play-state:running}
.header-inner{min-height:76px}
.footer .brand-official{width:215px;margin-bottom:20px}
.product-hts-mark{padding:0;background:transparent;line-height:0;gap:0}
.product-hts-mark>.product-brand-logo{display:block;width:102px;height:auto;max-width:none;max-height:none;object-fit:contain;padding:0;margin:0;border-radius:0;background:transparent}
.hero-brand-emblem{position:relative;display:block;width:100%;aspect-ratio:222/242;background:url('/assets/hts-emblem-shell.svg') center/contain no-repeat}
.skyline-flight .hero-brand-emblem>.brand-rotor{left:32.7108%;top:34.2975%;width:51.3514%;height:auto;aspect-ratio:1;animation:terrace-fan-turn 4.923076924s linear infinite;animation-play-state:paused}
html[data-motion=running] .skyline-flight.motion-visible .hero-brand-emblem>.brand-rotor{animation-play-state:running}
.skyline-flight .skyline-logo{width:18%;top:7.5%}
@media(max-width:1100px){.header-inner{min-height:72px}.global-nav{max-height:calc(100dvh - 72px)}.section-nav,.category-nav{top:72px}}
@media(max-width:700px){.header .brand-official{width:126px}.header-inner{min-height:66px}.global-nav{max-height:calc(100dvh - 66px)}.section-nav,.category-nav{top:66px}.skyline-flight .skyline-logo{width:29%;top:8%}}
@media(min-width:1101px){.section-nav,.category-nav{top:76px}}
@media(prefers-reduced-motion:reduce){.brand-rotor,.loading-fan{animation:none!important}}
@media print{.brand-rotor{animation:none!important}}

/* The cast shadow contains only the ring and blades, never the building emblem. */
.shadow-fan-ring{position:relative;display:block;width:100%;aspect-ratio:1;background:url('/assets/hts-fan-ring.svg') center/contain no-repeat}
.skyline-flight .shadow-fan-ring>.brand-rotor{inset:0;width:100%;height:100%;animation:terrace-fan-turn 0.30578117s linear infinite;animation-play-state:paused}
html[data-motion=running] .skyline-flight.motion-visible .shadow-fan-ring>.brand-rotor{animation-play-state:running}

.skyline-flight[data-flight=loading] .skyline-flight-poster{opacity:0}
.skyline-flight[data-flight=loading] .skyline-shadow{visibility:hidden}
.hero-brand-lockup{position:relative;display:block;width:100%;aspect-ratio:578/242;background:url('/assets/hts-logo-shell.svg') center/contain no-repeat}
.skyline-flight .hero-brand-lockup>.brand-rotor{left:12.5637%;top:34.2975%;width:19.7232%;height:auto;aspect-ratio:1;animation:terrace-fan-turn 4.923076924s linear infinite;animation-play-state:paused}
html[data-motion=running] .skyline-flight.motion-visible .hero-brand-lockup>.brand-rotor{animation-play-state:running}
.skyline-flight .skyline-logo{width:34%;top:12%;left:6.8%}
@media(max-width:700px){.skyline-flight .skyline-logo{width:57%;top:12%;left:7%}}

/* Shared air, drain and auxiliary-heat behaviour on home and service diagrams. */
[data-equipment-explorer]{--equipment-height:620px;--air-in:#de5649;--air-out:#126ce4;--condensate:#007f91}
[data-equipment-explorer][data-mode=heating],[data-equipment-explorer][data-mode=auxiliary]{--air-in:#126ce4;--air-out:#de5649}
[data-equipment-explorer] .equipment-cabinet-stage{padding:38px 76px 56px 46px;min-height:0}
[data-equipment-explorer] .equipment-image-plane{height:auto;width:min(100%,calc(var(--equipment-height) * var(--cabinet-ratio)));max-width:100%}
[data-equipment-explorer] .equipment-airflow .flow-return{stroke:var(--air-in)}
[data-equipment-explorer] .equipment-airflow .flow-conditioned{stroke:var(--air-out)}
[data-equipment-explorer] .equipment-airflow path{vector-effect:non-scaling-stroke;fill:none;stroke-linecap:round;filter:none}
[data-equipment-explorer] .equipment-airflow path.flow-trail{stroke-width:6px;stroke-dasharray:none;opacity:.12;animation:none}
[data-equipment-explorer] .equipment-airflow path.flow-ribbon{stroke-width:2.8px;stroke-dasharray:12 12;opacity:.95;animation:equipment-breeze 1.8s linear infinite;animation-delay:var(--flow-delay,0s);animation-play-state:paused}
@keyframes equipment-breeze{to{stroke-dashoffset:-48}}
.equipment-waterflow .water-supply{stroke:#126ce4}.equipment-waterflow .water-return{stroke:#de5649}
[data-mode=heating] .equipment-waterflow .water-supply{stroke:#de5649}[data-mode=heating] .equipment-waterflow .water-return{stroke:#126ce4}
.equipment-waterflow .drain-pipe-glass{stroke:var(--condensate);stroke-width:2.3;opacity:.2}
.equipment-waterflow .condensate-trickle{stroke:var(--condensate);stroke-width:1;stroke-dasharray:.6 16;opacity:0;animation:condensate-drip 7s linear infinite;animation-play-state:paused}
[data-mode=cooling] .condensate-trickle{opacity:.9}
@keyframes condensate-drip{to{stroke-dashoffset:-16.6}}
.riser-drain{left:111%;color:#007f91}.riser-return{left:119%}
.equipment-auxiliary{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:3}
.auxiliary-element{fill:none;stroke:#626a72;stroke-width:3px;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round;opacity:.65;transition:stroke .3s,opacity .3s}
[data-mode=auxiliary] .auxiliary-element{stroke:#e34c33;opacity:1;filter:drop-shadow(0 0 4px #ff5a3b)}
[data-mode=auxiliary] .water-particles{opacity:0;animation-play-state:paused!important}
[data-mode=auxiliary] .water-pipe{stroke:#788893;opacity:.2}
.air-port-label{position:absolute;font-size:11px;font-weight:750;line-height:1.2;letter-spacing:.03em;text-transform:uppercase;background:#fffffff0;border:1px solid #e4e9ef;border-radius:5px;padding:4px 6px;white-space:nowrap;z-index:3;pointer-events:none}
[data-equipment-kind=two-pipe-fan-coil] .air-port-in{left:-12%;top:94%}
[data-equipment-kind=two-pipe-fan-coil] .air-port-out{left:-12%;top:12%}
[data-equipment-kind=water-source-heat-pump] .air-port-in{right:0;top:64%}
[data-equipment-kind=water-source-heat-pump] .air-port-out{right:0;top:3%}
.flow-legend{display:flex;justify-content:center;gap:12px 18px;flex-wrap:wrap}
.flow-legend>span{display:inline-flex;align-items:center;gap:6px}
.flow-legend i{width:9px;height:9px;border-radius:50%;display:inline-block}
.legend-cool{background:#126ce4}.legend-warm{background:#de5649}.legend-drain{background:#007f91}
html[data-motion=running] [data-equipment-explorer].motion-visible .equipment-airflow path.flow-ribbon{animation-play-state:running}
html[data-motion=running] [data-equipment-explorer][data-mode=cooling].motion-visible .condensate-trickle{animation-play-state:running}
.home-system-view[data-equipment-explorer]{--equipment-height:420px}
.home-system-view .equipment-operating-note{text-align:left;margin:18px 0;padding-top:18px}
.home-system-view .equipment-operating-note p{font-size:.875rem}
@media(max-width:1000px){[data-equipment-explorer]{--equipment-height:570px}}
@media(max-width:420px){[data-equipment-explorer] .equipment-cabinet-stage{padding:34px 53px 48px 32px}.air-port-label{font-size:10px;padding:3px 4px}.riser-key{font-size:10px}}
@media(prefers-reduced-motion:reduce){[data-equipment-explorer] .equipment-airflow path.flow-ribbon,[data-equipment-explorer] .condensate-trickle{animation:none!important}.auxiliary-element{transition:none}}

/* The blog index pairs each article's real headline with its profile image. */
.blog-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.blog-story-card{min-width:0;display:flex;flex-direction:column;border-radius:24px;overflow:hidden;background:#fff;border:1px solid #e6e8ec;box-shadow:0 6px 24px #10182806;transition:transform .25s,box-shadow .25s}
.blog-story-cover{position:relative;isolation:isolate;display:grid;align-items:start;min-height:320px;padding:26px 24px 110px;background:#252b30;color:#fff;overflow:hidden}
.blog-story-cover .blog-thumbnail-photo{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;z-index:0;transition:transform .45s}
.blog-story-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.8),rgba(0,0,0,.6) 48%,rgba(0,0,0,.08) 100%);z-index:1;pointer-events:none}
.blog-story-cover h3{position:relative;z-index:2;font-size:clamp(1.22rem,1.65vw,1.55rem);line-height:1.25;letter-spacing:-.025em;margin:0;color:#fff;overflow-wrap:anywhere;text-wrap:pretty}
.blog-story-copy{padding:25px 24px 27px;display:flex;flex-direction:column;flex:1}
.blog-story-copy .article-label{font-size:.8rem;color:#5d6671;line-height:1.4;margin:0 0 12px;font-weight:700;letter-spacing:.02em}
.blog-story-copy p{font-size:1rem;line-height:1.6;color:#5f636b;margin:0 0 22px}
.blog-story-copy .text-link{margin-top:auto;font-weight:600}
.blog-story-cover:focus-visible{outline:3px solid #0095ff;outline-offset:-5px}
@media(hover:hover){.blog-story-card:hover{transform:translateY(-3px);box-shadow:0 14px 35px #10182812}.blog-story-cover:hover .blog-thumbnail-photo{transform:scale(1.035)}}
.blog-mid-cta .inline-cta-copy h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.08;letter-spacing:-.035em;margin:0 0 20px;color:white}
.prose>.blog-mid-cta{margin:44px 0}
.blog-mid-cta .inline-cta-copy p{color:#e6e9ee}
.article-hero-actions{margin:26px 0 24px}
.blog-service-promotion{background:linear-gradient(130deg,#24272d,#080a0d);border:1px solid #30343b;border-radius:24px;padding:clamp(26px,4vw,42px);margin:38px 0}
.blog-service-promotion h3{font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.12;letter-spacing:-.035em;color:white;margin:12px 0 18px}
.blog-service-promotion p{color:#e0e3e8;max-width:580px;line-height:1.65}
.blog-service-promotion .eyebrow{color:#c6cbd3}
.blog-service-promotion .button-row{margin:24px 0 0;gap:12px}
.related-blog-section .section-heading{margin-bottom:30px}
@media(max-width:680px){.article-hero-actions{align-items:stretch}.article-hero-actions .btn{justify-content:center}.blog-service-promotion .button-row{flex-direction:column;align-items:stretch}.blog-service-promotion .btn{justify-content:center}.related-blog-section .section-heading{align-items:flex-start;gap:20px;flex-direction:column}}
@media(max-width:1000px){.blog-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-story-cover h3{font-size:1.45rem}}
@media(max-width:680px){.blog-story-grid{grid-template-columns:1fr;gap:24px}.blog-story-cover{min-height:300px;padding:26px 24px 110px}.blog-story-cover h3{font-size:1.5rem}.blog-story-copy{padding:23px 24px}.prose>.blog-mid-cta{margin:32px 0}}
@media(prefers-reduced-motion:reduce){.blog-story-card,.blog-story-cover .blog-thumbnail-photo{transition:none}.blog-story-card:hover,.blog-story-cover:hover .blog-thumbnail-photo{transform:none}}
@media print{.blog-story-card{break-inside:avoid;box-shadow:none}.blog-story-cover{background:white;color:#111;min-height:0;padding:20px}.blog-story-cover h3{color:#111}.blog-story-cover img,.blog-story-shade{display:none}}

/* Manufacturer names stay crisp at every screen size without raster wordmarks. */
.manufacturer-banner{background:#f5f5f7;padding:54px 0 48px;overflow:hidden}
.manufacturer-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:32px}
.manufacturer-heading h2{font-size:clamp(1.85rem,3.2vw,2.75rem);line-height:1.09;letter-spacing:-.04em;margin:12px 0 0}
.manufacturer-heading h2 span{color:#6e6e73}
.manufacturer-heading>.text-link{flex-shrink:0;font-size:1rem;margin-bottom:4px}
.manufacturer-marquee{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;padding:4px 0 8px;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);outline-offset:6px;-webkit-overflow-scrolling:touch}
.manufacturer-marquee:focus-visible{outline:2px solid var(--blue);border-radius:10px}
.manufacturer-track{display:flex;width:max-content;animation:manufacturer-pan var(--manufacturer-duration,240s) linear infinite;animation-play-state:paused}
.manufacturer-run{list-style:none;display:flex;align-items:stretch;gap:16px;padding:0 16px 0 0;margin:0;flex:none}
.manufacturer-card{width:212px;min-height:132px;flex:none;background:white;border:1px solid #e8e8ed;border-radius:20px;padding:24px 18px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:13px}
.manufacturer-card strong{font-size:1.5rem;font-weight:700;line-height:1.18;letter-spacing:-.035em;color:#26262a;overflow-wrap:anywhere}
.manufacturer-card span{font-size:.875rem;line-height:1.4;color:#68686e;max-width:100%;text-wrap:balance}
html[data-motion=running] .manufacturer-banner.motion-visible .manufacturer-track{animation-play-state:running}

@keyframes manufacturer-pan{to{transform:translateX(-50%)}}
@media(max-width:680px){.manufacturer-banner{padding:38px 0 32px}.manufacturer-heading{display:block;margin-bottom:25px}.manufacturer-heading>.text-link{margin-top:20px}.manufacturer-card{width:186px;min-height:128px;padding:22px 16px}.manufacturer-card strong{font-size:1.35rem}}
@media(prefers-reduced-motion:reduce){.manufacturer-track{animation:none}.manufacturer-run[aria-hidden]{display:none}.manufacturer-marquee{mask-image:none;scrollbar-width:thin}}
@media print{.manufacturer-track{animation:none;width:100%}.manufacturer-run{flex-wrap:wrap}.manufacturer-run[aria-hidden]{display:none}.manufacturer-marquee{overflow:visible;mask-image:none}.manufacturer-card{break-inside:avoid}}

/* Owner and building-team journeys share the same restrained photo-and-type system. */
.owner-help-hero{padding:30px 0 0;background:#fff}
.owner-help-scene{position:relative;isolation:isolate;min-height:510px;display:flex;align-items:center;overflow:hidden;border-radius:30px;background:#303030}
.owner-help-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%;z-index:0}
.owner-help-shade{position:absolute;inset:0;background:linear-gradient(90deg,#000b 0%,#0008 35%,#0002 78%);z-index:1}
.owner-help-copy{position:relative;z-index:2;padding:64px;max-width:740px;color:white}
.owner-help-copy .eyebrow{color:#f3f3f5;font-size:1.125rem;margin-bottom:24px}
.owner-help-copy h1{font-size:clamp(3rem,5.7vw,5.4rem);line-height:1.03;letter-spacing:-.05em;color:#fff}
.owner-needs-section{padding-top:42px}
.management-hero h1{max-width:990px;margin-inline:auto}
.management-hero .button-row{justify-content:center;margin:28px 0}
.management-hero> .wrap>p{max-width:760px}
.management-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.management-type-grid article{background:#f5f5f7;border-radius:24px;padding:34px}
.management-type-grid .icon-box{margin-bottom:24px}
.management-type-grid h3{font-size:1.55rem;line-height:1.2;margin:0 0 18px}
.management-type-grid p{color:#64646b;font-size:1rem;line-height:1.65;margin:0}
.engineering-projects{background:#101216;color:#fff}
.engineering-intro{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start;margin-bottom:48px}
.engineering-intro .eyebrow{color:#b3cce6}
.engineering-intro p{color:#d1d3d9;font-size:1.1rem;line-height:1.65}
.engineering-stage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-bottom:38px}
.engineering-stage-grid article{border-top:1px solid #40434b;padding-top:28px}
.engineering-stage-number{display:block;font-size:.875rem;letter-spacing:.08em;color:#76baff;margin-bottom:20px}
.engineering-stage-grid h3{font-size:1.4rem;margin:0 0 18px}
.engineering-stage-grid p{color:#c5c8d0;font-size:1rem;line-height:1.65;margin:0}
.terrace-replay{position:absolute;z-index:6;right:24px;bottom:22px;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:11px 17px;border:1px solid #ffffff70;border-radius:999px;background:#ffffffed;color:#25272d;font-size:.875rem;font-weight:600;box-shadow:0 2px 12px #0001;backdrop-filter:blur(12px)}
.terrace-replay[hidden]{display:none}.terrace-replay:hover{background:white}.terrace-replay:disabled{opacity:.75;cursor:default}
.manufacturer-card .manufacturer-logo{width:160px;height:56px;object-fit:contain;object-position:center;max-width:100%}
@media(max-width:760px){.owner-help-hero{padding-top:20px}.owner-help-scene{min-height:430px;border-radius:24px}.owner-help-copy{padding:36px 26px}.owner-help-copy h1{font-size:clamp(2.6rem,10vw,4rem)}.owner-help-copy .eyebrow{font-size:1rem;max-width:200px;line-height:1.5}.owner-help-shade{background:linear-gradient(90deg,#000b,#0006 65%,#0003)}.owner-needs-section{padding-top:26px}.management-type-grid{grid-template-columns:1fr;gap:18px}.management-type-grid article{padding:28px}.engineering-intro{grid-template-columns:1fr;gap:28px;margin-bottom:32px}.engineering-stage-grid{grid-template-columns:1fr;gap:30px}.engineering-projects .button-row{align-items:stretch;flex-direction:column}.terrace-replay{right:16px;bottom:16px;font-size:.8125rem;padding:10px 14px}.manufacturer-card .manufacturer-logo{width:150px;height:54px}}

/* Verified HTS social profiles: clear labels, compact icons and generous tap targets. */
.footer-social{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:26px 0;border-bottom:1px solid var(--line)}
.footer-social h3{font-size:1rem;line-height:1.4;letter-spacing:-.015em;margin:0}
.footer-social nav{display:flex;flex-wrap:wrap;gap:10px}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 14px;border:1px solid #d8d8de;border-radius:999px;font-size:.875rem;font-weight:600;line-height:1.4;color:#303036;background:#fff;transition:background .18s,border-color .18s}
.footer-social a:hover{background:#eeeef2;border-color:#a6a6b0}
.footer-social img{width:20px;height:20px;object-fit:contain;flex:none}
@media(max-width:760px){.footer-social{align-items:flex-start;flex-direction:column;gap:16px;padding:24px 0}.footer-social nav{gap:10px 8px}.footer-social a{padding:10px 13px}}

/* Social destinations share the desktop hover menu and mobile disclosure controls. */
.social-panel .eyebrow{margin:0 0 22px;font-size:1rem;color:var(--muted)}
.menu-social-links{display:flex;flex-wrap:wrap;gap:14px}
.menu-social-links a{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:14px 22px;border:1px solid #d8d8de;border-radius:16px;background:#fff;font-size:1rem;font-weight:600;line-height:1.4;color:var(--ink);transition:background .18s,border-color .18s}
.menu-social-links a:hover{background:#eeeef2;border-color:#a6a6b0}
.menu-social-links img{width:22px;height:22px;object-fit:contain;flex:none}
@media(max-width:1100px){.social-panel>.wrap{width:100%}.social-panel .eyebrow{margin-bottom:16px}.menu-social-links{gap:10px}.menu-social-links a{min-height:48px;padding:12px 16px;font-size:.9375rem}}

/* Team portrait: retain all three people and reserve the lower image for the copy. */
.hero-copy>p{max-width:760px;margin-inline:auto}
.team-comfort-room{display:flex;align-items:flex-end;background:#101216}
.team-comfort-room .team-comfort-photo{inset:0 0 auto;width:100%;height:auto;object-fit:contain;object-position:center top;z-index:0;mask-image:linear-gradient(#000 48%,transparent 100%)}
.team-comfort-room:after{z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 30%,#10121622 47%,#101216aa 68%,#101216 94%)}
.team-comfort-room .comfort-room-copy{z-index:2;padding:44px;max-width:100%;margin-top:380px}
.team-comfort-room p{max-width:390px;line-height:1.6}
@media(max-width:960px){.team-comfort-room .comfort-room-copy{padding:32px;margin-top:330px}}
@media(max-width:480px){.team-comfort-room{min-height:620px}.team-comfort-room .comfort-room-copy{padding:28px 24px;margin-top:260px}.team-comfort-room h3{font-size:clamp(2.2rem,9vw,2.7rem)}.team-comfort-room p{font-size:1rem}}

/* Real field imagery: preserve the complete portrait instead of enlarging a narrow crop. */
.riser-field-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);overflow:hidden;border-radius:28px;background:#171719;color:#fff}
.riser-field-card figure{margin:0;position:relative;background:#272729;min-width:0}
.riser-field-photo{display:block;width:100%;height:100%;max-height:680px;object-fit:contain}
.riser-field-card figcaption{position:absolute;bottom:0;left:0;right:0;padding:28px 24px 16px;background:linear-gradient(transparent,rgba(0,0,0,.78));font-size:.8rem;color:#fff}
.riser-field-copy{align-self:center;padding:clamp(28px,5vw,68px);min-width:0}
.riser-field-copy h2{font-size:clamp(1.9rem,3.3vw,3.15rem);line-height:1.08;letter-spacing:-.035em}
.riser-field-copy p{color:#d2d2d7;margin:24px 0 30px;line-height:1.7}
.riser-field-copy .eyebrow{color:#b9dfff}
@media(max-width:760px){.riser-field-card{grid-template-columns:1fr}.riser-field-card figure{height:400px}.riser-field-photo{height:400px}.riser-field-copy{padding:30px 24px}.riser-field-copy .btn{max-width:100%;white-space:normal}}

.heat-pump-chapter{padding:38px 0;border-top:1px solid #d2d2d7;scroll-margin-top:150px}.heat-pump-chapter:first-child{border:0;padding-top:0}.structured-heat-pump .prose{min-width:0}.heat-pump-faq-table{width:100%;table-layout:fixed}.heat-pump-faq-table th{width:32%}.heat-pump-faq-table th h3{font-size:1.05rem;line-height:1.45;margin:0}.heat-pump-faq-table td{min-width:0;overflow-wrap:anywhere}.heat-pump-faq-table td p:first-child{margin-top:0}.heat-pump-faq-table td h3{font-size:1.08rem}.technical-reference{background:#f5f5f7;border-radius:20px;padding:25px;margin-top:30px}.technical-reference a{font-weight:600;text-decoration:underline}
@media(max-width:680px){.heat-pump-faq-table,.heat-pump-faq-table tbody,.heat-pump-faq-table tr,.heat-pump-faq-table th,.heat-pump-faq-table td{display:block;width:100%}.heat-pump-faq-table th{padding-bottom:10px}.heat-pump-faq-table td{padding-top:10px}.heat-pump-faq-table tr{border-bottom:1px solid #d2d2d7}.heat-pump-chapter{padding:28px 0}}

.local-priority-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:40px}.local-priority-grid article{padding:28px;background:#f5f5f7;border-radius:24px;min-width:0}.local-priority-grid h3{font-size:1.35rem;margin:22px 0 14px}.local-priority-grid p{font-size:1rem;line-height:1.65;color:var(--muted)}.local-area-grid{margin-top:30px}.local-area-grid h3{margin-top:22px}.local-detail-disclosure{border-top:1px solid #d2d2d7;border-bottom:1px solid #d2d2d7;padding:24px 0}.local-detail-disclosure summary{font-size:1.3rem;font-weight:600;cursor:pointer}.local-detail-disclosure .prose{max-width:860px;padding-top:28px}.local-service-details .article-context{font-size:1rem}.local-service-details img{display:none}@media(max-width:800px){.local-priority-grid{grid-template-columns:1fr;gap:18px}.local-detail-disclosure summary{font-size:1.15rem}.local-priority-grid article{padding:24px}}

/* Request pages prioritize the original forms, including on small screens. */
.request-section{padding:32px 0 64px;background:#f5f5f7}
.request-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:40px;align-items:start}
.request-panel{background:#fff;border:1px solid #e5e5e9;padding:28px;scroll-margin-top:0;min-width:0}
.request-heading .eyebrow{font-size:.875rem;margin:0 0 10px}
.request-heading h1{font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.12;text-wrap:balance;margin:0 0 12px}
.request-heading>p:last-child{font-size:1rem;line-height:1.5;color:var(--muted);margin:0 0 16px;max-width:620px}
.request-panel .form-direct-link{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:.875rem;margin:0 0 16px;padding:10px 0;border-block:1px solid #eeeef1}
.form-direct-link a{font-weight:650;color:var(--blue);text-decoration:underline;text-underline-offset:3px;min-height:32px;display:inline-flex;align-items:center}
.form-direct-link span{color:var(--muted);font-size:.8125rem}
.request-panel iframe{display:block;width:100%;max-width:100%;min-width:0}
.request-panel .booking-note{margin:18px 0 0!important;line-height:1.5}
.request-help{padding:26px 0;min-width:0}
.request-help .eyebrow{font-size:.875rem;margin-bottom:10px}
.request-help h2{font-size:1.7rem;line-height:1.2;margin-bottom:18px}
.request-help>p{font-size:1rem;color:var(--muted)}
.request-help .btn{width:100%;font-weight:650}
.request-help .contact-method{padding:24px 0}
.request-prepare,.request-audience{padding-top:26px}
.request-help h3{font-size:1.05rem;letter-spacing:-.015em;margin-bottom:12px}
.request-prepare p{font-size:1rem;color:var(--muted);margin:0}
.request-audience .text-link{font-size:1rem;font-weight:650}
.management-overview h2{max-width:880px}
.management-overview p{max-width:740px;font-size:1.15rem;color:var(--muted);margin:24px 0}
@media(max-width:900px){.request-layout{grid-template-columns:minmax(0,1fr);gap:24px;max-width:740px}.request-help{padding:18px 8px}.request-help .btn{width:auto}}
@media(max-width:680px){.request-section{padding:16px 0 38px}.request-layout{width:calc(100% - 32px)}.request-panel{border-radius:18px;padding:16px 10px}.request-heading{padding:0 6px}.request-heading h1{font-size:1.85rem}.request-heading>p:last-child{font-size:.9375rem}.request-panel .form-direct-link{margin-inline:6px;gap:0 10px}.request-panel .booking-note{padding-inline:6px}.request-help{padding-inline:4px}.request-help h2{font-size:1.65rem}.request-help .btn{width:100%}}

/* Shared logo cards keep property managers aligned with equipment brands. */
.clients-editorial{background:#f5f5f7}
.client-marquee{padding:4px 0 10px}
.client-logo-run{gap:16px;padding-right:16px;align-items:stretch}
.client-logo-cell.manufacturer-card{width:212px;height:132px;min-height:132px;padding:20px 24px;box-shadow:0 2px 6px #1d1d1f04}
.client-logo-cell.manufacturer-card img.client-logo{width:160px;max-width:100%;height:76px;object-fit:contain;mix-blend-mode:normal}
.client-logo-cell.manufacturer-card img[src*="goldview"]{width:100px;height:88px}
.client-logo-cell.manufacturer-card img[src*="ace"]{width:136px}
.service-topic-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;color:#0066cc;margin:0 0 12px;vertical-align:top}
.service-topic-icon svg{width:32px;height:32px;stroke-width:1.65}
.feature-item .service-topic-icon+h3{margin-top:0}
.aside-card.dark .manager-request-link{display:block;border:0;color:#fff;padding:18px 0 0;font-size:.9rem;line-height:1.5;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.request-role-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;gap:4px;border-radius:13px;background:#f0f0f3;margin:0 0 22px;max-width:470px}
.request-role-picker a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;border-radius:10px;font-size:.9375rem;font-weight:650;line-height:1.35;text-align:center;color:#55555e}
.request-role-picker a[aria-current=page]{background:white;color:#0066cc;box-shadow:0 1px 5px #00000010}
.request-role-picker a:hover{color:#0066cc;background:#ffffffa6}
.request-call-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;margin:0 0 18px}
.request-call-row .btn{font-size:.9375rem;min-height:44px;font-weight:650}
.request-call-row>span{max-width:230px;font-size:.875rem;line-height:1.45;color:var(--muted)}
@media(max-width:680px){.client-logo-cell.manufacturer-card{width:186px;height:128px;min-height:128px;padding:20px}.client-logo-cell.manufacturer-card img.client-logo{width:146px;height:72px}.client-logo-cell.manufacturer-card img[src*="goldview"]{width:95px;height:84px}.client-logo-cell.manufacturer-card img[src*="ace"]{width:128px}.request-role-picker{margin-bottom:18px}.request-role-picker a{font-size:.875rem;padding:10px 7px}.request-call-row{padding-inline:6px}.request-call-row>span{max-width:none}}
@media(max-width:680px){.header-actions .nav-book{max-width:92px;white-space:normal;padding:8px 10px;text-align:center;font-size:.8125rem}}
@media(max-width:360px){.header-actions .nav-book{display:none}}

/* One native, keyboard-operable FAQ list. All answer content is in the HTML. */
.service-faq-hub{background:#f5f5f7;padding:78px 0;scroll-margin-top:16px}
.service-faq-inner{max-width:1100px;min-width:0}
.service-faq-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:end;margin-bottom:36px}
.service-faq-intro .eyebrow{font-size:.9375rem;color:#0066cc;margin-bottom:12px}
.service-faq-intro h2{font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.08;letter-spacing:-.045em}
.service-faq-intro h2 span{color:#6e6e73}
.service-faq-intro>p{font-size:1.0625rem;color:#62626b;line-height:1.6;max-width:420px;margin:0 0 3px}
.service-faq-controls{padding:26px 28px;background:white;border-radius:22px;margin-bottom:32px;border:1px solid #e5e5e9}
.service-faq-controls>label{display:block;font-size:1rem;font-weight:650;margin-bottom:12px}
.service-faq-search-field{display:flex;align-items:center;gap:12px;border:1px solid #c5c5cc;border-radius:12px;background:#fafafc;padding:0 15px;max-width:650px}
.service-faq-search-field:focus-within{outline:2px solid #0066cc;outline-offset:2px}
.service-faq-search-field input{width:100%;min-width:0;height:50px;border:0;background:transparent;font-size:1rem;color:#1d1d1f;outline:none}
.service-faq-search-field button{border:0;background:none;min-height:44px;color:#0066cc;font-size:.9375rem;font-weight:600;flex:none}
.service-faq-topics{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.service-faq-topics button{padding:10px 16px;min-height:44px;border:1px solid #d8d8de;border-radius:999px;background:white;color:#53535b;font-size:.875rem;font-weight:600;line-height:1.35}
.service-faq-topics button[aria-pressed=true]{background:#0066cc;border-color:#0066cc;color:white}
.service-faq-count{margin:16px 0 0;font-size:.875rem;color:#64646d;line-height:1.4}

.service-faq-list{display:grid;gap:12px;min-width:0}
.service-faq-item{min-width:0;border:1px solid #dedee4;border-radius:20px;background:#fff;overflow:clip;box-shadow:0 2px 8px #1d1d1f03}
.service-faq-item>summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px;padding:24px 28px;cursor:pointer;list-style:none;position:relative}
.service-faq-item>summary::-webkit-details-marker{display:none}
.service-faq-item>summary::marker{content:''}
.service-faq-item>summary:is(:hover,:focus-visible){background:#f8faff}
.service-faq-item>summary:focus-visible{outline:3px solid #0066cc;outline-offset:-4px;border-radius:18px}
.service-faq-item>summary :is(h2,h3,h4){margin:0;min-width:0;max-width:860px;font-size:1.15rem;line-height:1.45;font-weight:650;letter-spacing:-.02em;overflow-wrap:anywhere;white-space:normal;text-wrap:pretty;color:#1d1d1f;scroll-margin-top:150px}
.faq-toggle{position:relative;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:#f0f4fa;color:#0066cc}
.faq-toggle::before,.faq-toggle::after{content:'';position:absolute;left:9px;top:15px;width:14px;height:2px;border-radius:2px;background:currentColor}
.faq-toggle::after{transform:rotate(90deg);transition:transform .18s ease}
.service-faq-item[open] .faq-toggle{background:#0066cc;color:#fff}
.service-faq-item[open] .faq-toggle::after{transform:rotate(0)}
.service-faq-answer{padding:0 84px 28px 28px;min-width:0;max-width:100%;overflow-wrap:anywhere;color:#51515a;font-size:1rem;line-height:1.75}
.service-faq-answer :is(p,li){font-size:1rem;line-height:1.75;color:#51515a;overflow-wrap:anywhere}
.service-faq-answer p{margin:0 0 18px}
.service-faq-answer>:last-child{margin-bottom:0}
.service-faq-answer :is(ul,ol){padding-left:24px;margin:18px 0}
.service-faq-answer li+li{margin-top:8px}
.service-faq-answer :is(h2,h3,h4){font-size:1.15rem;line-height:1.4;margin:28px 0 14px;color:#1d1d1f}
.service-faq-answer a:not(.btn){color:#0066cc;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.service-faq-answer img{max-width:100%;height:auto}
.service-faq-answer iframe{max-width:100%}
.faq-anchor{display:block;scroll-margin-top:150px}
summary>.faq-anchor{position:absolute;width:0;height:0}

.service-faq-controls[hidden],.service-faq-empty[hidden],.service-faq-item[hidden],.service-faq-search-field button[hidden]{display:none!important}
@media(max-width:900px){.service-faq-intro{gap:30px}.service-faq-support{align-items:flex-start;flex-direction:column}}
@media(max-width:680px){.service-faq-hub{padding:48px 0}.service-faq-inner{width:calc(100% - 32px)}.service-faq-intro{display:block;margin-bottom:25px}.service-faq-intro h2{font-size:2.35rem}.service-faq-intro>p{font-size:1rem;margin-top:18px}.service-faq-controls{padding:20px 16px;border-radius:18px;margin-bottom:26px}.service-faq-topics{gap:8px}.service-faq-topics button{font-size:.875rem;padding:9px 12px}.service-faq-item{border-radius:16px}.service-faq-item>summary{padding:20px 18px;min-height:76px;gap:16px}.service-faq-item>summary :is(h2,h3,h4){font-size:1.0625rem;line-height:1.5}.service-faq-answer{padding:0 18px 24px}.service-faq-support{margin-top:28px;padding-top:28px}.service-faq-support .button-row{width:100%;display:grid;grid-template-columns:1fr;gap:12px}.faq-technical-table table{min-width:360px}}
@media(prefers-reduced-motion:reduce){.faq-toggle::after{transition:none}}
@media print{.service-faq-controls,.service-faq-empty,.service-faq-support{display:none!important}.service-faq-hub{background:white;padding:25px 0}.service-faq-item[hidden]{display:block!important}.service-faq-answer{display:block!important}.service-faq-item{break-inside:avoid}.faq-toggle{display:none}}

.faq-technical-table{overflow-x:auto;max-width:100%;margin:22px 0;scrollbar-width:thin;outline-offset:4px}
.faq-technical-table table{width:100%;border-collapse:collapse;min-width:380px;font-size:.9375rem}
.faq-technical-table th,.faq-technical-table td{padding:14px 12px;border-bottom:1px solid #dcdce2;text-align:left;vertical-align:top;line-height:1.5}
.service-faq-empty{background:white;border-radius:20px;border:1px solid #e0e0e6;padding:30px;margin-bottom:28px}
.service-faq-empty>p:first-child{font-size:1.25rem;font-weight:650;margin-bottom:8px;color:#1d1d1f}
.service-faq-empty p{color:#64646d}
.service-faq-empty button{border:0;background:#0066cc;color:white;padding:12px 20px;border-radius:999px;font-weight:600;min-height:44px}
.service-faq-support{border-top:1px solid #d9d9e0;margin-top:38px;padding-top:32px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.service-faq-support h3{font-size:1.35rem;margin-bottom:10px}
.service-faq-support p{font-size:1rem;color:#64646d;margin:0;max-width:420px}
.service-faq-support .button-row{gap:12px;flex:none}

.service-faq-support .manager-request-link{display:inline-flex;color:#0066cc;font-size:.9375rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;margin-top:14px;line-height:1.5}.service-faq-jump{margin-top:22px;font-weight:600}

/* Homepage service directory: visible, direct routes for both audiences. */
.home-service-directory{padding:50px 0 72px;background:#f5f5f7;scroll-margin-top:140px}
.home-services-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px}
.home-services-heading .eyebrow{font-size:.875rem;color:#0066cc;margin:0 0 10px}
.home-services-heading h2{font-size:clamp(2rem,3.6vw,3.2rem);line-height:1.1;letter-spacing:-.04em;margin:0}
.home-services-heading>.text-link{font-size:1rem;font-weight:600;min-height:44px;display:inline-flex;align-items:center;gap:6px;flex:none}
.home-services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.home-service-panel{display:flex;flex-direction:column;min-width:0;background:#fff;border-radius:24px;overflow:clip;border:1px solid #e6e6eb;box-shadow:0 3px 14px #1d1d1f04;scroll-margin-top:140px}
.home-service-cover{display:block;position:relative;height:220px;isolation:isolate;background:#20232a;color:#fff;overflow:hidden}
.home-service-cover:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#00000008 0%,#00000018 28%,#000000aa 50%,#000000e6 78%,#000000f5 100%)}
.home-service-cover .home-service-photo{width:100%;height:100%;object-fit:cover;object-position:center 55%;transition:transform .3s ease}
.home-service-cover:hover .home-service-photo{transform:scale(1.025)}
.home-service-cover-copy{position:absolute;bottom:26px;left:28px;right:28px;z-index:2}
.home-service-cover-copy p{font-size:.875rem;font-weight:500;line-height:1.5;color:#fff;margin:0 0 7px}
.home-service-cover-copy h3{font-size:clamp(1.8rem,2.5vw,2.4rem);font-weight:650;line-height:1.12;letter-spacing:-.03em;margin:0;color:#fff}
.home-service-content{display:flex;flex-direction:column;flex:1;padding:24px 28px 26px;min-width:0}
.home-service-description{font-size:1rem;line-height:1.6;color:#62626b;max-width:480px;margin:0 0 20px}
.home-service-links{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}
.home-service-links li{min-width:0;list-style:none;margin:0;padding:0;border-top:1px solid #e8e8ed}
.home-service-links a{display:grid;grid-template-columns:28px minmax(0,1fr) 14px;align-items:center;gap:10px;min-height:84px;padding:15px 0;color:#1d1d1f;font-size:.9375rem;font-weight:600;line-height:1.4;overflow-wrap:anywhere;text-decoration:none}
.home-service-links a svg{width:14px;height:14px;flex:0 0 14px;color:#0066cc;transition:transform .18s ease}
.home-service-links a:hover{color:#0066cc}
.home-service-links a:hover>svg{transform:translateX(3px)}
.home-service-symbol{display:grid;place-items:center;width:28px;height:28px;color:#0066cc}
.home-service-links .home-service-symbol svg{width:28px;height:28px;stroke-width:1.65;transform:none}
.home-service-links a>span:not(.home-service-symbol){min-width:0}
.home-service-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 16px;margin-top:auto;padding-top:24px;border-top:1px solid #e8e8ed}
.home-service-actions .btn{font-size:.9375rem;font-weight:600;min-height:46px;max-width:100%;white-space:normal;line-height:1.4;text-align:center;justify-content:center}
.home-service-all{display:inline-flex;align-items:center;gap:4px;min-height:44px;font-size:.9375rem;font-weight:600;line-height:1.4;color:#0066cc}
.home-service-all svg{width:14px;height:14px;flex:none}
.home-service-directory a:focus-visible{outline:3px solid #0066cc;outline-offset:4px;border-radius:5px}
.home-service-directory .home-service-cover:focus-visible{outline-color:#fff;outline-offset:-6px;border-radius:20px 20px 0 0}
.home-service-shortcuts{display:none}
@media(max-width:1000px){.home-services-grid{gap:20px}.home-service-content{padding:22px}.home-service-cover-copy{left:22px;right:22px}.home-service-links{column-gap:18px}.home-service-actions{align-items:flex-start;flex-direction:column}.home-service-cover{height:210px}}
@media(max-width:760px){.home-service-directory{padding:32px 0 48px}.home-service-directory>.wrap{width:calc(100% - 32px)}.home-services-heading{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:12px}.home-services-heading h2{font-size:2rem}.home-services-heading>.text-link{font-size:.9375rem}.home-services-grid{grid-template-columns:minmax(0,1fr);gap:24px}.home-service-shortcuts{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 22px}.home-service-shortcuts a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 17px;border:1px solid #d3d3dc;background:#fff;border-radius:999px;color:#0066cc;font-size:.9375rem;font-weight:600;line-height:1.4}.home-service-cover{height:185px}.home-service-cover-copy{bottom:22px}.home-service-cover-copy h3{font-size:2rem}.home-service-content{padding:22px}.home-service-panel{border-radius:20px}.home-service-actions{flex-direction:row;align-items:center}.home-service-links a{min-height:78px}.home-service-description{margin-bottom:18px}}
@media(max-width:380px){.home-service-content{padding:20px 18px}.home-service-links{column-gap:14px}.home-service-links a{gap:5px}.home-service-actions{flex-direction:column;align-items:stretch}.home-service-all{justify-content:center}}
@media(prefers-reduced-motion:reduce){.home-service-cover .home-service-photo,.home-service-links a svg{transition:none}.home-service-cover:hover .home-service-photo{transform:none}}

@media(max-width:520px){.home-service-links{grid-template-columns:minmax(0,1fr)}.home-service-links a{min-height:64px;padding:14px 0;gap:14px;font-size:1rem}.home-service-links .home-service-symbol svg{width:26px;height:26px}}
@media(min-width:761px) and (max-width:1000px){.home-service-links{grid-template-columns:minmax(0,1fr)}.home-service-links a{min-height:64px}}

/* Shared industry rows: sharp white cards, gentle motion, accessible static fallbacks. */
.network-marquee{overflow-x:auto;max-width:100%;scrollbar-width:thin;outline-offset:6px;padding:4px 0 14px;margin-top:20px}
.network-track{display:flex;width:max-content;animation:client-pan 62s linear infinite;animation-play-state:paused}
.network-run{display:flex;align-items:stretch;gap:16px;padding-right:16px;flex:none}
.network-run>.credential-card,.network-logo-card{width:224px;min-height:162px;flex:none;background:#fff;border:1px solid #e5e7ec;border-radius:18px;padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;color:#1d1d1f}
.network-run .credential-card>div{display:grid;gap:5px}.network-run .credential-card strong{font-size:.9rem}.network-run .credential-card span{font-size:.75rem;line-height:1.4;color:#666b74}
.network-run .credential-logo{max-width:166px;height:60px;object-fit:contain}.network-run .credential-cci .credential-logo{width:110px;height:66px;object-fit:contain}
.network-logo-card .resource-logo{width:158px;height:64px;object-fit:contain}.network-logo-card .resource-logo[src*="rental-housing"]{width:64px}
.network-logo-card span{font-size:.875rem;font-weight:650;line-height:1.25}.network-logo-card small{font-size:.73rem;color:#68686c;margin-top:-8px}
html[data-motion=running] .credentials-section.motion-visible .network-loop-ready .network-track{animation-play-state:running}

.home-service-brand{position:absolute;z-index:2;top:16px;right:18px;width:124px;background:rgba(255,255,255,.94);padding:7px 10px;border-radius:10px;box-shadow:0 3px 16px #00000014}
.home-service-brand img{display:block;width:100%;height:auto}
#suite-services .home-service-photo{object-position:center 38%}
@media(max-width:760px){.network-run>.credential-card,.network-logo-card{width:200px;min-height:154px}.home-service-brand{width:108px;top:12px;right:12px}.home-service-cover{height:225px}}
@media(prefers-reduced-motion:reduce){.network-track{animation:none!important}.network-run[aria-hidden=true]{display:none}}
@media print{.network-track{animation:none!important;width:auto}.network-run{flex-wrap:wrap}.network-run[aria-hidden=true]{display:none}.network-marquee{overflow:visible}}

.home-service-cover{height:280px}#suite-services .home-service-photo{object-position:center 24%}.article-reference-note{border-top:1px solid #dedee4;margin-top:36px;padding-top:24px}.article-reference-note h2{font-size:1.2rem}.article-reference-note a{font-weight:600}.article-archive-note p{margin:8px 0 0}.article-byline{line-height:1.65}
@media(max-width:760px){.home-service-cover{height:235px}}



.topic-archive{margin-top:42px;border:1px solid #dedee4;background:#fff;border-radius:18px;padding:0 24px}.topic-archive>summary{cursor:pointer;min-height:64px;padding:20px 0;font-size:1rem;font-weight:650;line-height:1.45}.topic-archive>summary span{font-size:.875rem;font-weight:400;color:#68686c;margin-left:12px}.topic-archive>p{color:#68686c;font-size:.95rem;line-height:1.6}.topic-archive ul{padding:0 0 10px;list-style:none}.topic-archive li{padding:18px 0;border-top:1px solid #e9e9ef}.topic-archive li>a{color:var(--blue);font-weight:650;line-height:1.45}.topic-archive li>p{margin:8px 0 0;font-size:1rem;line-height:1.6;color:#68686c}.topic-archive a:focus-visible,.topic-archive>summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
@media(max-width:760px){.topic-archive{padding:0 18px}.topic-archive>summary span{display:block;margin:5px 0 0}}
/* Local office and policy pages share the existing HTS visual language. */
.office-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.office-card{background:#fff;border-radius:24px;overflow:hidden;min-width:0}.office-card-copy{padding:28px}.office-card h3{font-size:1.5rem;margin:0 0 16px}.office-card address{font-style:normal;line-height:1.6;margin-bottom:18px}.office-card .text-link{display:flex;font-weight:600;margin-top:14px;font-size:1rem}.office-card iframe{width:100%;height:245px;border:0;display:block}.office-service-link{margin-top:28px}.office-locations .office-map-link{text-decoration:underline;text-underline-offset:4px;font-weight:500}.legal-page{max-width:900px}.legal-page .prose{max-width:none}.legal-page p,.legal-page li{overflow-wrap:anywhere}.legal-layout{display:grid;grid-template-columns:240px minmax(0,850px);gap:54px}.legal-nav{align-self:start;position:sticky;top:100px}.legal-nav a{display:block;padding:9px 0;font-size:14px;line-height:1.45;color:var(--blue)}.legal-nav details>summary{font-weight:700;cursor:pointer}.legal-page-meta{color:var(--muted);font-size:14px}.legal-heading{padding-bottom:40px}.legal-page h2{font-size:clamp(24px,3vw,34px);margin-top:48px}.legal-page ul{padding-left:24px}@media(max-width:900px){.office-card-grid{grid-template-columns:1fr}.office-card{display:grid;grid-template-columns:1fr 1fr}.office-card iframe{height:100%;min-height:240px}.legal-layout{grid-template-columns:1fr;gap:24px}.legal-nav{position:static}}@media(max-width:580px){.office-card{display:block}.office-card iframe{height:220px}.office-card-copy{padding:24px}}
/* City landing pages: the same HTS typography, quiet surfaces and decisive CTAs. */
.city-hero{padding:32px 0 0}.city-breadcrumb{display:inline-block;color:var(--muted);font-size:14px;margin-bottom:20px}.city-hero-scene{position:relative;min-height:660px;border-radius:30px;isolation:isolate;overflow:hidden;background:#181c22}.city-hero-scene .city-landmark{margin:0;position:absolute;inset:0}.city-hero-scene .city-landmark-photo{width:100%;height:100%;object-fit:cover}.city-hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,10,17,.88),rgba(4,10,17,.5) 62%,rgba(4,10,17,.15)),linear-gradient(0deg,rgba(4,10,17,.55),transparent 65%)}.city-hero-copy{position:relative;z-index:2;padding:74px 62px 94px;max-width:875px;color:white}.city-hero-copy h1{font-size:clamp(38px,4.5vw,68px);line-height:1.04;letter-spacing:-.045em;margin:20px 0 24px;color:white}.city-hero-copy>p:not(.eyebrow){font-size:21px;line-height:1.5;color:#f0f2f6;max-width:640px}.city-hero-copy .eyebrow{color:#fff;font-size:14px}.city-manager-link{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:15px;font-weight:650;margin-top:26px;text-decoration:underline;text-underline-offset:5px}.city-hero-scene .city-photo-credit{position:absolute;bottom:0;left:0;right:0;background:rgba(4,10,17,.78);color:white;padding:12px 22px;font-size:12px;z-index:3}.city-photo-credit a{color:inherit;text-decoration:underline}.city-landmark{margin:0}.city-landmark-photo{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover;border-radius:24px}.city-photo-credit{font-size:12px;line-height:1.5;color:#626267;padding:12px 0}.city-hero-scene .city-landmark-photo{border-radius:0;aspect-ratio:auto}.city-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.city-service-grid .service-card{padding:32px;display:flex;flex-direction:column;align-items:flex-start}.city-service-grid h3{font-size:24px;line-height:1.2;margin:22px 0 12px}.city-service-grid p{flex:1}.city-service-grid .text-link{font-size:15px;margin-top:14px}.city-other-services{margin-top:32px;padding:30px 32px;border:1px solid #dedee3;border-radius:22px}.city-other-services h3{font-size:23px}.city-other-services p{max-width:1000px}.city-other-services a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.city-building{background:#13161d;color:white}.city-building h2,.city-building h3{color:white}.city-building p{color:#c7cbd4}.city-building .eyebrow{color:#bbcaff}.city-building-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.city-building-grid article{border-top:1px solid #505562;padding-top:28px}.city-building-grid h3{font-size:23px;line-height:1.25}.city-building-grid .text-link{color:#91bdff;font-size:15px}.city-building-note{max-width:850px;margin-top:52px}.city-building-note h3{font-size:28px}.city-related{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}.city-request-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.city-request-grid article{background:#f5f5f7;border-radius:24px;padding:36px;display:flex;flex-direction:column;align-items:flex-start}.city-request-grid h3{font-size:28px;margin:22px 0 10px}.city-request-grid p{flex:1}.city-request-call{text-align:center;margin:30px 0 0}.city-request-call a{color:var(--blue)}.city-map iframe{width:100%;border:0;display:block;border-radius:24px;min-height:440px}.city-map p{font-size:14px;line-height:1.5;margin-top:12px;color:var(--muted)}.city-mid-cta{background:linear-gradient(120deg,#0c1626,#1b2432)}.city-photo-section{padding-top:0}.city-photo-section .city-landmark-photo{max-height:540px}.city-building .button-row{margin-top:26px}
@media(max-width:1000px){.city-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.city-building-grid{grid-template-columns:1fr 1fr}.city-hero-copy{padding:60px 40px 96px}.city-hero-scene{min-height:590px}}@media(max-width:650px){.city-hero{padding-top:20px}.city-hero-scene{min-height:680px;border-radius:24px}.city-hero-copy{padding:44px 24px 90px}.city-hero-copy h1{font-size:clamp(34px,9vw,48px)}.city-hero-copy>p:not(.eyebrow){font-size:18px}.city-hero-shade{background:linear-gradient(90deg,rgba(4,10,17,.83),rgba(4,10,17,.45)),linear-gradient(0deg,rgba(4,10,17,.6),transparent)}.city-hero .button-row{align-items:stretch}.city-hero .btn{width:100%;justify-content:center}.city-hero-scene .city-photo-credit{font-size:11px}.city-photo-credit span{display:none}.city-service-grid,.city-building-grid,.city-request-grid,.city-related{grid-template-columns:1fr}.city-service-grid .service-card{padding:26px}.city-request-grid article{padding:28px}.city-other-services{padding:26px}.city-manager-link{line-height:1.6}.city-map iframe{min-height:350px;height:350px}.city-breadcrumb{margin-bottom:14px}.city-service-grid h3{font-size:23px}}

/* Shared page identity: visible, wrapping trails with matching BreadcrumbList data. */
.page-identity{background:#f5f5f7;border-bottom:1px solid #e5e5ea;padding:17px 0}.page-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px 0;list-style:none;margin:0;padding:0;font-size:13px;line-height:1.65;color:#65656b}.page-breadcrumbs li{display:flex;align-items:baseline;min-width:0;max-width:100%}.page-breadcrumbs li+li::before{content:'›';padding:0 12px;color:#86868b}.page-breadcrumbs a{color:#515159;text-decoration:none;font-weight:500;overflow-wrap:anywhere}.page-breadcrumbs a:hover{color:var(--blue)}.page-breadcrumbs [aria-current]{color:#1d1d1f;overflow-wrap:anywhere}.page-breadcrumbs a:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:3px}.page-identity+.page-hero{padding-top:48px}.page-identity+.city-hero{padding-top:28px}
footer .office-locations a.office-map-link{color:#56565e;text-decoration:none;font-size:14px;line-height:1.65;font-weight:400;border-radius:5px}footer .office-locations a.office-map-link:hover{color:#1d1d1f;text-decoration:none}footer .office-locations a.office-map-link::after{content:' ↗';white-space:nowrap;color:#86868b;font-size:13px}footer .office-locations a.office-map-link:focus-visible{outline:2px solid var(--blue);outline-offset:5px}footer .office-locations a[href^="tel:"]{color:#33333a;font-weight:600;text-decoration:none}
.city-building-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.city-building-card .city-service-icon{background:#202d41;color:#87b9ff;margin-bottom:20px}.city-service-grid .city-service-icon{color:var(--blue)}.city-building-grid article{min-width:0}.city-building-grid .text-link{line-height:1.55;align-items:center}.city-service-grid h3{line-height:1.25}.city-faq-list{width:100%;min-width:0}.city-faq-list details{border-bottom:1px solid #d9d9de}.city-faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:24px;list-style:none;padding:24px 0;cursor:pointer;font-weight:600;font-size:19px;line-height:1.4;overflow-wrap:anywhere}.city-faq-list summary::-webkit-details-marker{display:none}.city-faq-plus{position:relative;flex:0 0 22px;height:22px;border-radius:50%;background:#e7e7ed}.city-faq-plus::before,.city-faq-plus::after{content:'';position:absolute;left:6px;right:6px;top:10px;height:2px;background:#35353d}.city-faq-plus::after{transform:rotate(90deg)}.city-faq-list details[open] .city-faq-plus::after{transform:rotate(0)}.city-faq-answer{padding:0 34px 22px 0;max-width:900px}.city-faq-answer p{margin:0;line-height:1.75}.city-faq-list summary:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:8px}.industry-network-section{background:#f5f5f7}.industry-network-section .industry-resources{margin-top:0}.industry-network-section h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.035em}.city-building h2,.city-intro h2{max-width:750px}.city-additional-services p{max-width:850px}
.heat-pump-costs{margin:28px 0 38px}.heat-pump-costs .cost-intro{font-size:14px;font-weight:600;color:#676771}.heat-pump-cost-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.heat-pump-cost-grid article{padding:24px 20px;background:#f5f5f7;border-radius:20px;min-width:0}.heat-pump-cost-grid h3{font-size:17px;line-height:1.4;margin:0 0 24px;min-height:48px}.heat-pump-cost-grid .cost-range{font-size:clamp(21px,2.1vw,28px);line-height:1.2;color:#1d1d1f;font-weight:650;letter-spacing:-.035em;white-space:nowrap}.heat-pump-cost-grid .cost-range span{display:block;font-size:12px;font-weight:500;letter-spacing:0;margin-top:10px;color:#676771}.heat-pump-cost-grid article>p:last-child{font-size:14px;line-height:1.55;margin-bottom:0}.heat-pump-costs>.button-row{margin-top:22px}
@media(max-width:900px){.city-building-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.heat-pump-cost-grid{grid-template-columns:1fr}.heat-pump-cost-grid h3{min-height:0;margin-bottom:14px}.heat-pump-cost-grid .cost-range{font-size:29px}}
@media(max-width:650px){.page-identity{padding:12px 0}.page-breadcrumbs ol{font-size:12px}.page-breadcrumbs li+li::before{padding:0 8px}.page-identity+.page-hero{padding-top:34px}.city-building-grid{grid-template-columns:1fr}.city-faq-list summary{font-size:17px;gap:16px}.city-faq-answer{padding-right:0}.city-building-card .city-service-icon{margin-bottom:16px}}

/* One visible set of network logos, moving to the far edge and back. */
.network-track{animation:none}.network-run{padding-right:0}.network-motion-ready .network-track{animation:network-single-pan var(--network-duration,24s) ease-in-out infinite alternate;animation-play-state:paused}
@keyframes network-single-pan{0%,8%{transform:translateX(0)}92%,100%{transform:translateX(calc(-1 * var(--network-travel,0px)))}}
html[data-motion=running] [data-motion-scene].motion-visible .network-motion-ready .network-track{animation-play-state:running}
.network-marquee:not(.network-motion-ready) .network-track{transform:none}
.services-mega-panel{max-height:calc(100dvh - 80px);overflow-y:auto}.nav-service-areas{border-top:1px solid #dddde3;padding-top:25px;padding-bottom:30px}.nav-area-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px}.nav-area-intro h2{font-size:23px;letter-spacing:-.025em;line-height:1.3;margin:5px 0 7px}.nav-area-intro p:not(.eyebrow){font-size:14px;color:#65656c;margin:0}.nav-area-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.nav-area-group h3{font-size:13px;color:#68686f;margin:0 0 10px;font-weight:500}.nav-area-group a{display:block!important;font-size:15px!important;padding:5px 0!important;font-weight:550;line-height:1.45}.nav-area-intro .text-link{font-size:14px;flex:none}.nav-service-areas a:hover{color:var(--blue)}
@media(max-width:1100px){.services-mega-panel{max-height:none;overflow:visible}.nav-service-areas{width:100%;padding:22px 0}.nav-area-intro{display:block}.nav-area-intro>.text-link{margin-top:14px}.nav-area-grid{grid-template-columns:1fr 1fr;gap:22px}.nav-area-group a{font-size:15px!important}.nav-area-intro h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){.network-motion-ready .network-track{animation:none!important;transform:none}}
@media print{.network-motion-ready .network-track{animation:none!important;transform:none}}
.city-faq-wrap{max-width:1080px}.city-faq-heading{max-width:780px;margin-bottom:24px}.city-faq-heading h2{font-size:clamp(30px,4vw,48px);line-height:1.12}.city-faq-heading>p:last-child{font-size:17px;line-height:1.65;color:#65656d;margin-top:18px}.city-faq-wrap .city-faq-list{margin-top:24px}.city-faq-wrap .city-faq-list details{margin:0}.city-faq-answer p{font-size:17px}.city-faq-wrap .city-faq-list summary{min-height:74px}
@media(max-width:650px){.city-faq-wrap{width:calc(100% - 40px)}.city-faq-heading>p:last-child,.city-faq-answer p{font-size:16px}.city-faq-wrap .city-faq-list summary{min-height:68px}}

/* Photographic contact panels keep headings and actions as accessible HTML. */
[data-photo-cta]{isolation:isolate;overflow:hidden;border-radius:28px}.faq-photo-cta{margin-top:38px;width:100%}.faq-photo-cta .editorial-photo-copy{padding:48px;max-width:790px}.faq-photo-cta .editorial-photo-copy h2{font-size:clamp(30px,3.8vw,46px);line-height:1.08}.faq-photo-cta .editorial-photo-copy p{font-size:17px;line-height:1.7;max-width:620px}.faq-photo-cta .editorial-photo-shade{background:linear-gradient(90deg,rgba(4,9,16,.93),rgba(4,9,16,.77) 48%,rgba(4,9,16,.24))}.in-content-cta[data-photo-cta] .inline-cta-copy{max-width:780px}.in-content-cta[data-photo-cta] .inline-cta-copy>p{font-size:17px;line-height:1.65;max-width:620px}.in-content-cta[data-photo-cta] .inline-cta-copy :is(h2,h3){line-height:1.15}.in-content-cta[data-photo-cta] .inline-cta-shade{background:linear-gradient(90deg,rgba(3,9,16,.92),rgba(3,9,16,.72) 57%,rgba(3,9,16,.35))}.btn.btn-glass{display:inline-flex;align-items:center;justify-content:center;color:#fff!important;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.7);text-decoration:none;font-weight:600}.btn.btn-glass:hover{background:rgba(255,255,255,.2)}.photo-cta-resources{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;margin-top:30px;padding-top:24px;border-top:1px solid rgba(255,255,255,.3)}.photo-cta-resources h3{grid-column:1/-1;font-size:16px!important;font-weight:650;letter-spacing:0!important;margin:0 0 4px!important}.photo-cta-resources a{font-size:14px;color:#fff!important;font-weight:550;line-height:1.5;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.45);padding:0 0 6px}.photo-cta-resources a:hover{border-color:white}.photo-cta-resources a:focus-visible{outline:2px solid white;outline-offset:4px}.sidebar:empty{display:none}
@media(max-width:700px){.faq-photo-cta .editorial-photo-copy{padding:32px 24px}.faq-photo-cta .editorial-photo-copy p,.in-content-cta[data-photo-cta] .inline-cta-copy>p{font-size:16px}.faq-photo-cta .button-row,.in-content-cta[data-photo-cta] .button-row{display:grid;grid-template-columns:1fr;gap:12px;width:100%}.photo-cta-resources{grid-template-columns:1fr}.faq-photo-cta{border-radius:22px}.in-content-cta[data-photo-cta] .inline-cta-copy{padding:30px 24px}.faq-photo-cta .editorial-photo-shade{background:linear-gradient(0deg,rgba(4,9,16,.95),rgba(4,9,16,.62))}}
/* The help panel is a photograph, shade, and live text — never baked-in type. */
.photo-contact-panel{position:relative;display:block;background:#121821;min-height:440px;color:white;isolation:isolate;overflow:hidden}.photo-contact-panel>.callout-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% 55%;z-index:0}.photo-contact-panel>.cta-media-frame{position:absolute;inset:0;z-index:0;display:block;background:transparent;padding:0;border:0}.photo-contact-panel .cta-source-crop{width:100%!important;height:100%;border-radius:0}.photo-contact-panel>.editorial-photo-shade{display:block;position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,9,16,.94),rgba(4,9,16,.8) 52%,rgba(4,9,16,.3))}.photo-contact-panel>.editorial-photo-copy{position:relative;z-index:2;padding:48px;max-width:790px}.photo-contact-panel .editorial-photo-copy :is(h2,h3,p,.eyebrow){color:#fff}.photo-contact-panel .button-row{align-items:center;gap:12px;flex-wrap:wrap}.photo-contact-panel .btn{min-height:48px;white-space:normal;text-align:center}.photo-contact-panel .photo-cta-resources{max-width:630px}
@media(max-width:700px){.photo-contact-panel{min-height:0}.photo-contact-panel>.editorial-photo-copy{padding:34px 24px}.photo-contact-panel>.editorial-photo-shade{background:linear-gradient(90deg,rgba(4,9,16,.89),rgba(4,9,16,.72))}.photo-contact-panel>.callout-photo{object-position:62% 50%}.photo-contact-panel .button-row{display:grid;grid-template-columns:1fr}.photo-contact-panel .btn{width:100%}}
.photo-contact-panel>.inline-cta-photo{position:absolute;inset:0;width:100%;height:100%;max-height:none;margin:0;object-fit:cover;object-position:65% 55%;z-index:0;border-radius:0}.photo-contact-panel>.inline-cta-shade{display:block;position:absolute;inset:0;z-index:1}.photo-contact-panel>.inline-cta-copy{position:relative;z-index:2;padding:42px;max-width:790px}.photo-contact-panel .inline-cta-copy :is(h2,h3,p,.eyebrow){color:white}.photo-contact-panel.in-content-cta{display:block;min-height:420px}.photo-contact-panel .cta-source-crop>.contextual-cta-image{position:absolute;max-width:none;object-fit:fill}
@media(max-width:700px){.photo-contact-panel>.inline-cta-copy{padding:32px 24px}.photo-contact-panel.in-content-cta{min-height:0}}
.photo-contact-panel .cta-source-crop>.contextual-cta-image{object-fit:cover}
@media print{.photo-contact-panel{background:white!important;min-height:0!important;color:black!important}.photo-contact-panel>:is(img,.cta-media-frame,.editorial-photo-shade,.inline-cta-shade){display:none!important}.photo-contact-panel :is(.editorial-photo-copy,.inline-cta-copy) :is(h2,h3,p,.eyebrow,a){color:black!important}.photo-contact-panel :is(.editorial-photo-copy,.inline-cta-copy){padding:20px 0}}
/* Logo motion must not depend on a page-section observer or sticky touch hover. */
html .client-marquee .client-marquee-track,html .manufacturer-marquee .manufacturer-track,html .network-marquee.network-motion-ready .network-track{animation-play-state:running!important;animation-duration:var(--logo-duration,40s)!important;animation-timing-function:linear!important;will-change:transform}
html .network-marquee.network-motion-ready .network-track{animation-name:network-single-pan!important;animation-duration:var(--logo-duration,24s)!important;animation-timing-function:linear!important;animation-iteration-count:infinite!important;animation-direction:alternate!important}
@keyframes network-single-pan{from{transform:translateX(0)}to{transform:translateX(calc(-1 * var(--network-travel,0px)))}}
@media(prefers-reduced-motion:reduce){html .client-marquee .client-marquee-track,html .manufacturer-marquee .manufacturer-track,html .network-marquee.network-motion-ready .network-track{animation:none!important;transform:none!important;will-change:auto}}
@media print{html .client-marquee .client-marquee-track,html .manufacturer-marquee .manufacturer-track,html .network-marquee.network-motion-ready .network-track{animation:none!important;transform:none!important;will-change:auto}}

/* Islandaire catalogue shares the HTS equipment system. */
.catalogue-brand-entry{padding-block:12px 20px}.manufacturer-design-files{margin-top:28px;padding:24px 28px;border:1px solid var(--line);border-radius:20px;background:#f5f5f7}.manufacturer-design-files summary{font-size:1.1rem;font-weight:650;cursor:pointer;min-height:30px}.manufacturer-design-files p,.manufacturer-design-files li{font-size:.9375rem;line-height:1.7}.manufacturer-design-files a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}.manufacturer-design-files li+li{margin-top:12px}@media(max-width:680px){.manufacturer-design-files{padding:22px}.catalogue-brand-entry .text-link{font-size:.9375rem}}

/* Keep the CP24 feature close to the following homepage blog section. */
.industry-network-section:has(+ .visual-blog-section){padding-bottom:0}
.industry-network-section + .visual-blog-section{padding-top:clamp(40px,5vw,64px)}

/* A brighter, action-focused finish to the homepage. */
.home-closing{padding:24px 0 56px;background:var(--pale)}
.home-closing .contrast-cta-inner{display:block;padding:clamp(32px,5vw,72px);border-radius:32px;background:radial-gradient(ellipse at 100% 0%,#0069ba3d,transparent 62%),radial-gradient(ellipse at 0% 100%,#c9162329,transparent 58%),#101114;border:1px solid #ffffff0f}
.home-closing .eyebrow{color:#c9d8e8;letter-spacing:.035em}
.home-closing h2{font-size:clamp(2.6rem,5.5vw,4.5rem);margin:22px 0;max-width:850px}
.home-closing p{max-width:650px;font-size:1.125rem;color:#e0e2e7}
.home-closing .contrast-cta-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:16px;margin-top:30px}
.home-closing .contrast-cta-actions .btn{min-height:54px;padding:16px 28px;font-size:1rem;transition:background .2s,box-shadow .2s}
.home-closing a.btn.cta-request{background:var(--hts-red);color:#fff;border-color:transparent;box-shadow:0 8px 24px #c9162326}
.home-closing a.btn.cta-request:hover{background:var(--hts-red-hover);box-shadow:0 10px 28px #c9162340}
.home-closing a.btn.btn-blue{background:var(--hts-blue);color:#fff;box-shadow:0 8px 24px #0069ba26}
.home-closing a.btn.btn-blue:hover{background:var(--hts-blue-hover);box-shadow:0 10px 28px #0069ba40}
.home-closing-details{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px 28px;border-top:1px solid #ffffff26;margin-top:38px;padding-top:24px;color:#c9cbd2;font-size:.9375rem;line-height:1.5}
.home-closing-details strong{color:#fff;font-weight:600}
@media(max-width:600px){.home-closing{padding:16px 0 36px}.home-closing .contrast-cta-inner{padding:34px 24px;border-radius:24px}.home-closing p{font-size:1rem}.home-closing .contrast-cta-actions{align-items:stretch;flex-direction:column;gap:12px}.home-closing .contrast-cta-actions .btn{width:100%;min-width:0}.home-closing-details{flex-direction:column;margin-top:30px;font-size:.875rem}}
@media(prefers-reduced-motion:reduce){.home-closing .contrast-cta-actions .btn{transition:none}}
@media print{.home-closing .contrast-cta-inner{background:white;color:black;border:1px solid #777}.home-closing-details,.home-closing-details strong{color:black}}

/* Approved Toronto fleet photograph, with readable text over the image. */
.home-closing .contrast-cta-inner{position:relative;isolation:isolate;overflow:hidden;background:#101114}
.home-closing-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 50%;z-index:0}
.home-closing-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,12,19,.93) 0%,rgba(7,12,19,.82) 42%,rgba(7,12,19,.3) 100%);z-index:1;pointer-events:none}
.home-closing-content{position:relative;z-index:2}
.home-closing-details{background:none}
@media(max-width:600px){.home-closing-photo{object-position:58% center}.home-closing-shade{background:linear-gradient(180deg,rgba(7,12,19,.86),rgba(7,12,19,.68) 55%,rgba(7,12,19,.9))}}
@media print{.home-closing-photo,.home-closing-shade{display:none}.home-closing .contrast-cta-inner{background:white}.home-closing-details{background:none}}

/* Local coverage: clear city destinations with quiet blue location markers. */
.home-coverage .areas{gap:clamp(32px,5vw,72px)}
.home-coverage .areas p{font-size:1.0625rem;line-height:1.7;margin:24px 0;color:var(--muted)}
.home-coverage .areas p+p{margin-top:0}
.home-coverage .area-links{gap:12px;align-items:stretch}
.home-coverage .area-links a{display:grid;grid-template-columns:36px minmax(0,1fr) 16px;gap:12px;padding:16px;background:#f5f5f7;border:1px solid #e8e8ed;border-radius:16px;min-height:70px;transition:background .2s,border-color .2s,box-shadow .2s}
.home-coverage .area-pin{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#e6f1fb;border-radius:11px;color:var(--hts-blue)}
.home-coverage .area-pin svg{width:20px;height:20px;color:inherit}
.home-coverage .area-name{font-weight:550;font-size:.9375rem;line-height:1.4;overflow-wrap:anywhere}
.home-coverage .area-links a:hover{background:#fff;border-color:#b4d3ee;box-shadow:0 6px 20px #0069ba0d}
.home-coverage .area-links a:focus-visible{outline:3px solid var(--hts-blue);outline-offset:3px}
@media(max-width:600px){.home-coverage .area-links{gap:9px}.home-coverage .area-links a{grid-template-columns:28px minmax(0,1fr);gap:9px;padding:12px;min-height:64px;border-radius:13px}.home-coverage .area-pin{width:28px;height:32px;border-radius:9px}.home-coverage .area-pin svg{width:18px;height:18px}.home-coverage .area-links a>svg{display:none}.home-coverage .areas p{font-size:1rem}}
@media(max-width:360px){.home-coverage .area-links{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.home-coverage .area-links a{transition:none}}

/* Render the original outlined logo as native vector geometry at a legible size. */
.header .brand-official{width:164px}
.brand-official>.brand-lockup{aspect-ratio:578/242;shape-rendering:geometricPrecision;overflow:visible}
@media(max-width:700px){.header .brand-official{width:144px}}

/* Quiet, layered navigation with a crisp foreground and softened page. */
:root{font-optical-sizing:auto;text-rendering:optimizeLegibility}
button,input,select,textarea{font-family:inherit}
.global-nav{letter-spacing:-.01em}
.nav-column a{font-weight:600;letter-spacing:-.022em}
.nav-backdrop{position:fixed;inset:0;z-index:80;background:rgba(20,24,32,.16);backdrop-filter:blur(12px) saturate(.85);-webkit-backdrop-filter:blur(12px) saturate(.85);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .32s ease,visibility .32s}
body:has(.header .nav-disclosure[open]) .nav-backdrop,body.nav-open .nav-backdrop{opacity:1;visibility:visible;pointer-events:auto}
body:has(.header .nav-disclosure[open]) .header,body.nav-open .header{background:#fafafc}
.nav-disclosure[open]>.mega-panel{animation:hts-menu-unfold .36s cubic-bezier(.22,1,.36,1) both;transform-origin:top}
.nav-disclosure[open] .nav-column,.nav-disclosure[open] .nav-service-areas,.nav-disclosure[open] .menu-social-links{animation:hts-menu-content .42s cubic-bezier(.22,1,.36,1) both}
.nav-disclosure[open] .nav-column:nth-child(2){animation-delay:35ms}
.nav-disclosure[open] .nav-column:nth-child(3),.nav-disclosure[open] .nav-service-areas{animation-delay:70ms}
.nav-disclosure>summary>svg{transition:transform .3s cubic-bezier(.22,1,.36,1)}
@keyframes hts-menu-unfold{from{opacity:0;clip-path:inset(0 0 100% 0)}to{opacity:1;clip-path:inset(0)}}
@keyframes hts-menu-content{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.global-nav.open{animation:hts-menu-content .32s cubic-bezier(.22,1,.36,1) both}.nav-disclosure[open]>.mega-panel{animation-name:hts-menu-content}}
@media(prefers-reduced-motion:reduce){.nav-backdrop,.nav-disclosure>summary>svg{transition:none}.global-nav.open,.nav-disclosure[open]>.mega-panel,.nav-disclosure[open] .nav-column,.nav-disclosure[open] .nav-service-areas,.nav-disclosure[open] .menu-social-links{animation:none!important}}

/* About HTS: connected photo stories and compact section rhythm. */
.about-page .section{padding:48px 0}.about-page .page-hero{padding-bottom:24px}.about-jump-links{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;padding:12px 0 24px}.about-jump-links a{border:1px solid #dedee3;border-radius:24px;padding:10px 18px;font-size:14px;font-weight:600;background:#fff}.about-jump-links a:hover{color:var(--blue);border-color:var(--blue)}.about-page [id]{scroll-margin-top:110px}.about-page .about-team{padding-top:10px;padding-bottom:36px}.about-team-card{display:grid;grid-template-columns:.9fr 1.1fr;background:#111820;border-radius:28px;overflow:hidden;color:white}.about-team-card figure{position:relative;margin:0;min-width:0}.about-office-photo{display:block;width:100%;height:100%;min-height:620px;object-fit:cover;object-position:50% 65%}.about-team-card figure:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 60%,#111820)}.about-team-card figcaption{position:absolute;bottom:22px;left:24px;right:20px;font-size:12px;color:white;text-shadow:0 1px 6px #000;z-index:1}.about-team-copy{padding:46px 42px 46px 28px;align-self:center;min-width:0}.about-team-copy .eyebrow{color:#b9cce0;font-size:14px}.about-team-copy h2{font-size:clamp(2rem,3.6vw,3.3rem);line-height:1.08;margin-bottom:24px}.about-team-copy>p:not(.eyebrow){font-size:16px;line-height:1.7;color:#d1d6dd}.about-team-copy .check-list{margin:24px 0}.about-team-copy .check-list li{font-size:15px;margin:10px 0}.about-team-copy .check-list svg{color:#66b9ff;flex-shrink:0}.about-team-copy .button-row{gap:12px}.about-page .section-heading{margin-bottom:26px}.about-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.about-steps article{padding:28px;background:#f5f5f7;border-radius:22px}.about-step-icon{display:flex;width:46px;height:46px;align-items:center;justify-content:center;background:#e5f1fc;color:#006db5;border-radius:14px;margin-bottom:22px}.about-steps h3{font-size:21px;margin-bottom:12px}.about-steps p{font-size:16px;line-height:1.65;color:#626267;margin:0}.about-expertise-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start;margin-bottom:30px}.about-expertise-intro h2{max-width:480px}.about-expertise-intro .copy>p{font-size:17px;margin-bottom:18px}.about-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.about-photo-card{position:relative;isolation:isolate;overflow:hidden;border-radius:24px;background:#111820;min-height:540px;display:flex;align-items:flex-end}.about-work-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%;z-index:-2;transition:transform .6s ease}.about-photo-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#07111bf7 0%,#07111be8 20%,#07111b80 55%,#07111b00 85%);z-index:-1}.about-photo-copy{padding:32px;color:white}.about-photo-copy .eyebrow{color:#d9e9fa;font-size:13px}.about-photo-copy h3{font-size:clamp(1.7rem,2.5vw,2.5rem);line-height:1.1;margin-bottom:16px}.about-photo-copy>p:not(.eyebrow){font-size:16px;line-height:1.65;color:#edf1f6;margin-bottom:24px}.about-portfolio-note{display:flex;gap:18px;padding:26px 28px;margin-top:22px;background:white;border-radius:22px}.about-portfolio-note>span{color:var(--blue);padding-top:3px}.about-portfolio-note h3{font-size:20px;margin-bottom:12px}.about-portfolio-note p{font-size:16px;color:#626267;line-height:1.65;max-width:920px}.about-page .credentials-section .section-heading{display:block}.about-page .about-qualification-intro{font-size:17px;color:#626267;max-width:none;margin:18px 0 0}.about-media{padding-bottom:40px}.about-media .media-appearance{margin:0;padding:28px 38px}.about-page #locations{padding-top:44px}.about-page #locations .section-heading p{font-size:16px}.about-page a:focus-visible{outline:3px solid #0071e3;outline-offset:5px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.about-photo-card:hover .about-work-photo{transform:scale(1.025)}}
@media(max-width:1000px){.about-team-card{grid-template-columns:1fr 1.15fr}.about-team-copy{padding:30px 24px}.about-team-copy h2{font-size:2.3rem}.about-office-photo{min-height:740px}.about-expertise-intro{gap:30px}.about-photo-copy{padding:24px}.about-steps article{padding:22px}}
@media(max-width:760px){.about-page .section{padding:32px 0}.about-page .about-team{padding-top:0}.about-jump-links{gap:8px;padding-bottom:22px}.about-jump-links a{font-size:13px;padding:10px 14px}.about-team-card{display:block}.about-office-photo{height:390px;min-height:0;object-position:50% 66%}.about-team-card figure:after{background:linear-gradient(0deg,#111820,transparent 40%)}.about-team-card figcaption{bottom:22px;font-size:12px}.about-team-copy{padding:18px 26px 32px}.about-team-copy h2{font-size:2.3rem}.about-team-copy .button-row{align-items:stretch}.about-team-copy .btn{flex:1}.about-steps{grid-template-columns:1fr;gap:12px}.about-steps article{display:grid;grid-template-columns:46px 1fr;gap:0 18px;padding:24px}.about-step-icon{grid-row:1/3;margin:0}.about-steps p{grid-column:2}.about-steps h3{font-size:20px}.about-expertise-intro{grid-template-columns:1fr;gap:18px;margin-bottom:24px}.about-expertise-intro h2{font-size:2.3rem}.about-photo-grid{grid-template-columns:1fr;gap:18px}.about-photo-card{min-height:530px}.about-photo-copy{padding:28px}.about-portfolio-note{padding:24px 20px}.about-media{padding-bottom:30px}.about-media .media-appearance{padding:24px;gap:22px}.about-media .cp24-logo{width:90px}.about-page #locations{padding-top:32px}.about-page .credentials-section h2{font-size:2.2rem}}

/* Duct cleaning: distinguish suite systems and building shaft requests. */
.duct-top-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:16px 28px;padding:8px 0 32px}.duct-top-actions>.text-link{font-size:15px}.duct-scope-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.duct-scope-grid .icon-box{margin-bottom:22px}.duct-scope-grid .service-card{padding:28px 24px}.duct-scope-grid h3{font-size:22px}.duct-midpoint{padding:18px 0 40px}@media(max-width:1100px){.duct-scope-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.duct-scope-grid{grid-template-columns:1fr}.duct-top-actions{align-items:stretch}.duct-top-actions .button-row{width:100%}.duct-top-actions .button-row .btn{flex:1}.duct-scope-grid .service-card{padding:26px}.duct-top-actions>.text-link{justify-content:center;text-align:center}}

/* Preserve the full local aerial composition on the Woodbridge page. */
.city-photo-section .city-landmark-panorama{aspect-ratio:3/1;height:auto;max-height:none}

/* Join the privacy document and its closing contact section without a grey gap. */
.privacy-policy-content{background:#fff;padding-bottom:0;margin-bottom:0}
.privacy-policy-content .legal-page>:last-child{margin-bottom:0}
main:has(>.privacy-policy-content)+.closing{margin-top:0;padding:40px 0 48px}
@media(max-width:680px){main:has(>.privacy-policy-content)+.closing{padding:32px 0 36px}}
