    @media (min-width: 992px) {
        .hl-frame-split .col-lg-4 { width: calc(400px + var(--bs-gutter-x)); }
        .hl-frame-split .col-lg-8 { flex: 1; width: auto; }
    }

    @media (max-width: 991.98px) {

        .hl-reasons { grid-template-columns: repeat(3, 1fr); }

        .footer-top { grid-template-columns: repeat(3, 1fr); }
        .footer-brand { grid-column: 1 / -1; }
        .hl-frame, .hl-frame-narrow { padding:40px 16px;  }
        .hl-hero .hl-frame { padding-top:40px; }
        .hl-frame-contact { padding-bottom:40px; }
        .hl-slider {  padding-right: 16px; }
        .hl-cs { margin-top: 56px; row-gap:10px; }
        .hl-section.hl-hero  .hl-cs {row-gap:0px; }
        .hl-challenge { margin-top: 0; min-height: 0; border-radius: 5px; }
        .sol-card { min-height: 440px; }
        .hl-clients-col { padding-top: 0; margin-top:10px; }
        .hl-label-dark { margin-top:10px;margin-bottom:16px; }
        .hl-form { padding: 20px;  }
        .hl-section { padding-inline:10px;}
.hl-challenge{padding:20px;}
.ct-hq { margin-top:40px; padding-bottom:40px;}
  .hl-frame-narrow { padding-inline:10px; }
.rs-news.buildlet {padding:30px 0px;}
    .hl-challenge p {font-size:20px; line-height:30px; }
    .hl-section.hv-tech.hv-tech-split .hl-frame {
    padding-block:50px;}

        .sp-hero .hl-frame { padding-top: 64px; }
        .sp-bp { aspect-ratio: auto; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
        .sp-bp-intro, .sp-bp-item, .sp-bp-core { position: static; }
        .sp-bp-intro { grid-column: 1 / -1; margin-bottom: 28px; }
        .sp-bp-item { width: auto; height: auto; aspect-ratio: 4 / 3; position: relative; inset: auto; }
        .sp-bp-item figcaption { left: 12px !important; right: auto !important; top: auto !important; bottom: 12px; }
        .sp-bp-lines, .sp-bp-dot { display: none; }
        .sp-bp-core { grid-column: 1 / -1; justify-self: center; width: 120px; height: 80px; margin-top: 16px; }

        .sp-hero .hl-frame { padding-inline: 16px; }
        .sp-cap { margin-inline: -16px; padding-block: 40px 50px; }
        .sp-cap-card { flex-basis: 70%; margin-top: 30px; }
        .sp-cap-card.active { flex-basis: 80%; }
        .sp-cap-img { height: 210px; }
        .sp-cap .hl-arrow { top: 175px; }
        .sp-cap::after { top: 330px; height: 260px; }
        .sp-cap-prev { left: 8px; }
        .sp-cap-next { right: 8px; }

        .sp-partners { width: auto !important; margin-inline: 0 !important; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 30%;
            overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
        .sp-partners::-webkit-scrollbar { display: none; }
        .sp-partners .hl-logo { scroll-snap-align: start; }

        .sec-hero .hl-frame { padding-block: 48px 40px; }
        .sec-collage { margin-right: 0; grid-template-rows: 220px 200px; }
        .sec-grid { grid-template-columns: repeat(2, 1fr); }
        .sec-grid .hl-sector { height: 440px; }
        .sec-reasons-col:last-child { margin-top: 60px; }

        .sd-hero { background: linear-gradient(to bottom, var(--green-dark) calc(100% - 160px), var(--white) 0); }
        .sd-hero-img { min-height: 0; margin-top: 36px; }
        .sd-team { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .sd-team-intro { grid-column: 1 / -1; max-width: none; }
        .sd-person:nth-of-type(n) { grid-column: auto; grid-row: auto; }
        .sd-expertise, .sd-expertise-3 { grid-template-columns: repeat(2, 1fr); }
        .tc-problem, .tc-margin { grid-template-columns: 1fr; gap: 32px; }
        .tc-steps { grid-template-columns: repeat(2, 1fr); }
        .tc-step:nth-child(n) { margin-top: 0; }
        .tc-flow .hl-frame { padding-bottom: 90px; }
        .tc-flow-dot { display: none; }
        .tc-costs { grid-template-columns: repeat(2, 1fr); }
        .tc-hero-imgs { grid-template-columns: 1fr; }
        .tc-hero .hl-frame { min-height: 520px; padding-top: 48px; }
        .sd-row-text, .sd-row.flex-row-reverse .sd-row-text { max-width: none; padding: 28px 0 40px; }

        .ct-hq { margin-top: 40px; padding-bottom: 20px; }
        .ct-hero .hl-form { padding: 24px 20px; }
        .ct-map { height: 320px; }

        .ab-photo { height: 340px; }
        .ab-hero .hl-frame { padding-bottom: 420px; }
        .ab-hero-bg { height: 350px; }
        .ab-hero .ct-hero-waves { bottom: 330px; }
        .ab-mission { margin: -100px 24px 0; padding: 30px 20px; }
        .ab-specialists { margin-top: 50px; }
        .ab-team { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .ab-work .sec-reasons { justify-content: start; margin-top: 10px; }
        .ab-showroom-info { margin-top: 10px; }
        .ab-careers { padding: 50px 20px; }

        .rs-hero .hl-frame { padding-bottom: 170px; }
        .rs-featured { margin-top: -120px; grid-template-columns: 1fr; }
        .rs-featured-img { min-height: 280px; }
        .rs-featured-body { padding: 24px 20px 30px; }
        .rs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .rs-heading { margin-top: 40px; }

        .ar-share { position: static; flex-direction: row; justify-content: center; margin-top: 20px; }
        .ar-share { flex-wrap: wrap; }
        .ar-share > span { width: 100%; text-align: center; }
        .ar-hero-media { padding-bottom: 40px; }
        .ar-cols, .ar-split, .ar-risk-box, .ar-pair-grid { grid-template-columns: 1fr; }
        .ar-split-img { aspect-ratio: 16 / 10; }
        .ar-risk-img { min-height: 240px; order: -1; }
        .ar-risk-body { padding: 28px 20px; }
        .ar-pair-card { padding: 24px 20px; }

        .cd-row-3, .cd-row-2 { grid-template-columns: 1fr; }

        .cs-feature { margin-top: 40px; }
        .cs-feature .cs-slide { height: 420px; }
        .cs-stats { grid-template-columns: repeat(2, 1fr); row-gap: 40px; }

        .hv-panel-grid { grid-template-columns: 1fr 1fr; }
        .hv-temp { grid-column: 1 / -1; grid-row: auto; }
        .hv-glance-wrap { grid-template-columns: 1fr; gap: 20px; padding-bottom: 90px; }
        .hv-glance-wrap::before, .hv-glance-wrap::after, .hv-card::after { display: none; }
        .hv-card:nth-child(2) { margin-top: 0; }
        .hv-card { padding: 26px 22px; }

        .hv-steps { grid-template-columns: 1fr; padding-left: 28px; }
        .hv-steps::before { left: 6px; }
        .hv-steps-col { display: contents; }
        .hv-steps-col .hv-step { width: 100%; margin: 0 0 20px !important; order: var(--n); }
        .hv-steps-col:last-child { padding-top: 0; }
        .hv-step::before { left: auto !important; right: 100% !important; width: 22px; }
        .hv-step::after { left: auto !important; right: calc(100% + 16px) !important; }
        .hv-tech-img { margin: 30px auto 0; }

        .hv-standards:not(.hv-one) { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: min(45%, 300px);
            overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
        .hv-standards::-webkit-scrollbar { display: none; }
        .hv-std { scroll-snap-align: start; }

        .bt-hero .hl-frame { padding-top:70px; }
        .bt-hero-box { padding: 40px 20px; }

        .bt-cards, .bt-cards-4 { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: min(80%, 320px);
            overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
        .bt-cards::-webkit-scrollbar { display: none; }
        .bt-card { scroll-snap-align: start; }
        .bt-slide { flex-direction: column; height: auto; padding: 24px 18px 60px; }
        .bt-step-info { flex: none; order: 2; }
        .bt-step-img { flex: none; min-height: 200px; width: 100%; order: 1; }

        .bt-steps { display: block; overflow-x: auto; overflow-y: hidden; scroll-behavior: smooth; scrollbar-width: none; margin-top: -34px; padding: 0; }
        .bt-steps::-webkit-scrollbar { display: none; }
        .bt-steps-track { position: relative; display: flex; justify-content: center; gap: 0 28px; width: max-content; min-width: 100%; padding:50px 20px 34px; overflow: hidden; }
        .bt-step-tab { font-size: 15px; white-space: nowrap; }

        .graphifill { margin-top: calc(-100px - 10vw); min-height: calc(130px + 10vw); }

    .hv-hero-box { display: block; aspect-ratio: auto; padding: 40px 24px 0; }
    .hv-hero-copy { max-width: none; }
    .hv-float { position: static; translate: none; flex-direction: row; flex-wrap: wrap; gap: 12px; padding: 24px 0; }
    .hv-float-card, .hv-float-card:nth-child(even) { width: calc(50% - 6px); margin: 0; }
    }

    @media (max-width: 767.98px) {
        .ab-plogos .hl-logo { flex-basis: calc((100% - 10px) / 2); }
        .hl-reasons { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns:100%;  overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;    }
        .hl-reasons::-webkit-scrollbar { display: none; }
        .hl-reason { scroll-snap-align: start; }
        .hl-case, .hl-cases .hl-case { width:90%; }
        .hl-case-foot { flex-direction: column; align-items: flex-start; }
        .hl-case-foot strong { font-size: 32px; }
        .footer-top { grid-template-columns: 1fr 1fr; }
        .hl-quote {    width: calc(100% + 4px);}

        .hl-about-cards, .hl-sol-cards, .hl-article-cards { flex-wrap: nowrap; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
        .hl-about-cards::-webkit-scrollbar, .hl-sol-cards::-webkit-scrollbar, .hl-article-cards::-webkit-scrollbar { display: none; }
        .hl-article-cards > * { flex: 0 0 85%; max-width: 85%; scroll-snap-align: start; }

        .hl-sol-cards > * { flex: 0 0 85%; max-width: 85%; scroll-snap-align: start; }

        .sol-card { border-color: rgba(45,226,127,.7); }
        .sol-card:not(.sol-managed)::after { opacity:1; border-color: #2DE27F; }
        .hl .sol-card h3 { font-size:20px; font-weight: 500; line-height: 1.18; }
        .hl .sol-card p{ font-size:14px}
        .sol-tags li{font-size: 11px;}
        .hl .hl-sector p{ font-size:14px}
        .hl-stat{align-items: self-start;}
.hl .cs-slide p{ font-size:14px}
.hv-hero-bg{    background: center / 100%;  background-repeat: no-repeat;  background-position: bottom;}
        .sol-card .sol-more { grid-template-rows: 1fr; opacity: 1; }
        .sol-card:not(.sol-managed) .sol-cta { height: 48px; margin-top:20px; padding: 0 28px; color: var(--black); background: var(--green); border: 1px solid #2DE27F; }
        .hl-about-cards > .col-md-4 { flex: 0 0 100%; max-width: 100%; scroll-snap-align: start; }
    .hl-process{margin-top:30px;}
    .hl-head-sub { margin-bottom: 5px;}
    .hl-head-sub .hl-controls button, .hl-controls button{display:none;}
    .hl-section p:last-child {margin-bottom:5px;}
.hl-head {    gap: 10px; margin-bottom: 20px;}

        .hl-sectors .hl-sector[style*="width"] { width: 85% !important; max-width: 85%; height: 460px; padding: 24px 20px; }
  .bt-process h3{margin-bottom:30px;}
  .footer-top{gap:10px }
  .hl-sectors .hl-sector{height: 400px;}
  .hl-reason-img{    aspect-ratio:inherit;}

    .hl-challenge p {font-size:18px; line-height:26px; }

        .ct-quotes {
            grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 85%;
            overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
        }
        .ct-quotes::-webkit-scrollbar { display: none; }
        .ct-quotes .hl-quote { scroll-snap-align: start; }
        .ct-rated { margin-top: 24px; }

        .ab-tabs { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: -16px; padding-inline: 16px; }
        .ab-tabs::-webkit-scrollbar { display: none; }
        .ab-tab { flex: none; }
        .ab-hero .hl-frame { padding-top: 56px; padding-bottom: 330px; }
        .ab-hero-bg { height: 270px; }
        .ab-hero .ct-hero-waves { bottom: 250px; }
        .ab-mission { margin: -70px 0 0; padding: 28px 18px; }
        .hl .ab-hero h1 { font-size: clamp(30px, 8vw, 40px); letter-spacing: -.5px; }
        .ab-hero h4 { font-size: 16px; line-height: 1.6; }
.rs-news .hl-frame {    padding-block: 30px;}
.hl-solutions h3{margin-bottom:30px;}
        .ab-specialists .hl-about-cards > * { flex: 0 0 100%; max-width:100%; scroll-snap-align: start; }

        .rs-filters { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: -16px; padding-inline: 16px; }
        .rs-filters::-webkit-scrollbar { display: none; }
        .rs-filter { flex: none; padding: 0 16px; }
        .rs-pager { justify-content: center; }

        .cs-arrows { display: none; }

        .bt-step-img[style*="--ar"] { aspect-ratio: var(--ar); min-height: 0; position: relative; }
        .bt-slide .bt-step-info { margin-top: 30px; }
        .bt-step-img[style*="--bus-out"]::after,
        .bt-step-img[style*="--bus-in"]::before { content: ""; position: absolute; height: 1.5px; background: rgba(45,226,127,.9); }

        .bt-step-img[style*="--bus-out"] { margin-top: var(--mt, 9.55%); }
        .bt-step-img[style*="--bus-out"]::after { left: 100%; top: calc(var(--bus-out) * 100%); width: 28px; }
        .bt-step-img[style*="--bus-in"]::before { left: -18px; top: calc(var(--bus-in) * 100%); width: var(--bw, 18px); }

        .bt-top .bt-slide { padding-top: 60px; }
        .bt-top #step-install .bt-step-img::after { content: ""; position: absolute; left: calc(var(--rx, .745) * 100%); top: -40px; width: 1.5px; height: calc(var(--rh, 17.4%) + 40px); margin-left: -.75px; background: rgba(45,226,127,.9); }
        .bt-top #step-install::before { content: ""; position: absolute; left: calc(18px + (100% - 36px) * var(--rx, .745)); right: -10px; top: 20px; height: 1.5px; background: rgba(45,226,127,.9); }
        .bt-top #step-commission::before, .bt-top #step-support::before {
            content: ""; position: absolute; left: 0; right: -10px; top: 20px; height: 54px; pointer-events: none;
            background:
                radial-gradient(circle, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px) calc(50% - 5.5px) 37px / 11px 11px no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) calc(50% - 5.75px) 0 / 1.5px 43px no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 0 0 / 100% 1.5px no-repeat;
        }
        .bt-top #step-support::before { background-size: 11px 11px, 1.5px 43px, calc(50% - 5px) 1.5px; }

        .bt-hvac #step-specify .bt-step-img::after {
            content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 102%; pointer-events: none;
            background:
                radial-gradient(circle at 5.7% 63.9%,  #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 32.7% 83.4%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 43.1% 86.1%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 55.7% 91.8%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 5.7%  98.8% / 1.5px 35.3% no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 32.7% 99%   / 1.5px 15.8% no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 43.1% 99.1% / 1.5px 13.1% no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 55.7% 99.1% / 1.5px 7.4%  no-repeat;
        }
        .bt-hvac #step-specify .bt-step-img::before { content: ""; position: absolute; left: 5.7%; top: 101.2%; width: calc(94.3% + 28px); height: 1.5px; background: rgba(45,226,127,.9); }
        .bt-hvac #step-install .bt-step-img::before { content: ""; position: absolute; left: -18px; top: 100.6%; width: calc(74% + 18px); height: 1.5px; background: rgba(45,226,127,.9); }
        .bt-hvac #step-install .bt-step-img::after { left: 74%; top: -40px; height: calc(100.6% + 40px); }
        .bt-hvac #step-install::before { left: calc(18px + (100% - 36px) * .74); }

        .bt-res #step-specify .bt-step-img { margin-top: 3.06%; }
        .bt-res #step-specify .bt-step-img::after {
            content: ""; position: absolute; inset: 0; pointer-events: none;
            background:
                radial-gradient(circle at 7.9% 54.9%,  #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 32.9% 81.7%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 43.3% 84.5%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 85.2% 89%,   #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 7.9%  96.8% / 1.5px 43.3% no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 32.9% 97.8% / 1.5px 16.5% no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 43.3% 97.9% / 1.5px 13.7% no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 85.2% 98%   / 1.5px 9.2%  no-repeat;
        }
        .bt-res #step-specify .bt-step-img::before { content: ""; position: absolute; left: 7.9%; top: 98.2%; width: calc(92.1% + 28px); height: 1.5px; background: rgba(45,226,127,.9); }
        .bt-res #step-install .bt-step-img::before { content: ""; position: absolute; left: -18px; top: 97.9%; width: calc(75.5% + 18px); height: 1.5px; background: rgba(45,226,127,.9); }
        .bt-res #step-install .bt-step-img::after { left: 75.5%; top: -40px; height: calc(97.9% + 40px); }
        .bt-res #step-install::before { left: calc(18px + (100% - 36px) * .755); }

        .bt-av #step-specify .bt-step-img { margin-top: 9.87%; }
        .bt-av #step-specify .bt-step-img::after {
            content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 109%; pointer-events: none;
            background:
                radial-gradient(circle at 5.4% 51.7%,  #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 28.3% 80.3%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 61.4% 72.7%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 71.2% 82.2%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 5.4%  86.7% / 1.5px 40.3% no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 28.3% 91%   / 1.5px 11.8% no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 61.4% 90.2% / 1.5px 19.4% no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 71.2% 91.2% / 1.5px 9.8%  no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 47.9% 99.3% / 1.5px 7.3%  no-repeat,
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 15.7% 92%   / 65.8% 1.5px no-repeat;
        }
        .bt-av #step-specify .bt-step-img::before { content: ""; position: absolute; left: 47.9%; top: 108.3%; width: calc(52.1% + 28px); height: 1.5px; background: rgba(45,226,127,.9); }
        .bt-av #step-install .bt-step-img::before { content: ""; position: absolute; left: -18px; top: 97.6%; width: calc(74.2% + 18px); height: 1.5px; background: rgba(45,226,127,.9); }
        .bt-av #step-install .bt-step-img::after { left: 74.2%; top: -40px; height: calc(97.6% + 40px); }
        .bt-av #step-install::before { left: calc(18px + (100% - 36px) * .742); }
        .bt-av #step-install::after {
            content: ""; position: absolute; left: 18px; top: 60px; width: calc(100% - 36px); aspect-ratio: 480 / 333; pointer-events: none;
            background:
                radial-gradient(circle at 44.8% 49.3%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 51.5% 54.1%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 69.2% 48.9%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 44.8% 71.2%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 51.5% 75.7%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                radial-gradient(circle at 69.2% 71.8%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px);
        }

        .bt-pav #step-install::after {
            content: ""; position: absolute; left: 18px; top: 60px; width: calc(100% - 36px); aspect-ratio: 480 / 320; pointer-events: none;
            background:
                radial-gradient(circle at 56.25% 83.4%, #fff 0 3px, #2DE27F 3px 5.5px, transparent 5.8px),
                linear-gradient(rgba(45,226,127,.9), rgba(45,226,127,.9)) 56.25% 92% / 1.5px 9.4% no-repeat;
        }
    }

    @media (max-width: 575.98px) {
        .hl-tile { padding: 22px; }
        .sol-card { min-height: 400px; padding: 24px 20px; }
        .hl-solution { padding: 32px 20px; }
        .hl-controls .btn-hl { margin-right: 6px; }
        .hl-stat { gap:9px; padding:16px 2px; }
        .hl-stat:nth-child(even) { padding-left: 16px; }
        .hl-stat strong { font-size: 26px; }
        .hl-quote { padding: 24px; }
        .footer-bottom { flex-direction: column; }
        .hl-stat-icon {    flex: 0 0 60px;width: 60px; height: 60px;}
.hl-stats{    margin-top:10px;}

        .sp-bp { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
        .sp-cap-body { padding: 22px 18px; }
        .sp-partners { grid-auto-columns: 40%; }

        .sec-collage { padding: 8px; gap: 6px; grid-template-rows: 150px 120px; }
        .sec-grid { grid-template-columns: 1fr; }
        .sec-grid .sec-wide { grid-column: auto; }
        .sec-grid .hl-sector { height: 400px; }
        .sec-reasons { grid-template-columns: 1fr; }
        .sec-reasons-col:last-child { margin-top: 0; }
        .sec-reason { min-height: 0; }

        .sd-hero { background: linear-gradient(to bottom, var(--green-dark) calc(100% - 110px), var(--white) 0); }
        .sd-hero-img { min-height: 0; }
        .sd-hero-cap { left: 12px; right: 12px; bottom: 12px; max-width: none; }
        .sd-team { gap: 20px 10px; }
        .sd-expertise, .sd-expertise-3 { grid-template-columns: 1fr; }
        .tc-steps, .tc-costs { grid-template-columns: 1fr; }
        .tc-hero-card { padding: 24px 20px; }
        .sd-faq summary { padding: 18px; }
        .hl .sd-faq details p { margin: -6px 18px 18px; }

        .ab-photo { height: 240px; }
        .ab-team { gap: 8px; }
        .ab-member figcaption { padding: 14px; }
        .ab-accred { flex-direction: column; align-items: flex-start; }
        .ab-accred-logo { flex-basis: auto; width: 100%; }
        .ab-modal { padding: 12px; }
        .ab-modal-card { flex-direction: column; align-items: stretch; gap: 24px; padding: 16px 16px 24px; }
        .ab-modal-side { flex: none; }
        .hl .ab-modal-side h3 { margin-top: 20px; }
        .hl .ab-modal-text p { font-size: 16px; line-height: 1.7; margin-bottom: 16px; }
        .ab-modal-close { top: 24px; right: 24px; width: 48px; height: 48px; font-size: 32px; }
        .ab-group { flex-direction: column; align-items: stretch; margin-top: 40px; }
        .ab-group-text { flex: none; }
        .ab-group-logos { grid-template-columns: repeat(2, 1fr); }
        .ab-group-logos img:first-child { width: 180px; }

        .rs-grid, .rs-main .rs-grid { grid-template-columns: 1fr; }
        .rs-featured-img { min-height: 220px; }
        .rs-news-form { flex-direction: column; }
        .rs-news-form .btn-hl { width: 100%; }

        .ar-recent .rs-grid { grid-template-columns: 1fr; }
        .cd-more .cd-slider .rs-card { width: 85%; }

        .hv-room { min-height: 140px; }
        .hv-panel-bar { gap: 14px 22px; padding: 14px 16px; }
        .hv-adjust { margin-left: 0; }
        .hv-standards:not(.hv-one) { grid-auto-columns: 80%; }
    }

    @media (max-width: 1100px) {
        .site-header { padding: 0 24px; }
        .site-header .nav-links, .header-cta { display: none; }
        .menu-toggle { display: block; }
    }

    @media (max-width: 800px) {

        .maireplay { width: calc(100% - 32px); }
        .tabs-inner { max-width: 100%; height: 40px; overflow-x: auto; overflow-y: hidden; scroll-behavior: smooth;
            scrollbar-width: none; -webkit-overflow-scrolling: touch;        }
        .tabs-inner::-webkit-scrollbar { display: none; }
        .tab { flex: none; font-size:12px; padding: 0 14px; }
        .site-header .container {min-height: 70px; }

        .site-header { position: fixed; left: 0; right: 0; }
        .scene { margin-top:0px; }

        .site-header-over { margin-bottom: 0; }
        #connects:has(> .site-header-over) { padding-top: 0; }
        .site-header-over ~ .bt-hero .hl-frame { padding-top: 161px; }
    .hl-frame, .hl-frame-narrow {        padding:30px 16px;}
.scene + .ab-page .site-header{ position: sticky;}
.scene + #connects{padding-top:0px;}
#connects{padding-top:50px;}
.footer-top{    padding:40px 0px;}
section.hl-section.hl-dark#contact .hl-frame{padding-bottom:0px;border-radius: 6px 6px 0px 0px;}
    }

    @media (max-width: 600px) {
        .scene { padding:10px; height: calc(100vh - 50px); max-height: none; }
        .card { border-radius: 24px; }
        .stage-wrap { top:300px; }

        .info {width:50%;padding:10px}

        .card:not(.all) .info[data-key] { text-align:center; top:-130px; left: 50%; right: auto; translate: -50% 0; width:90%; max-width:240px; }
        .seehow { height:40px;font-size:18px; width:calc(100% - 20px); bottom:10px;border-radius: 0px 0px 20px 20px;}
        .info h3 br{display:none;}
        .info h3{margin-bottom:5px;}
        .stage-wrap{padding:0px;}
        .tabs-inner{max-width:initial;}
        .maireplay {    max-width: calc(100% + 0px); width: auto; }
        .site-header .brand img{    max-width: 30px;height: auto;}
.hl-box { padding:16px;}
    }

    @media (min-width: 992px) and (max-width: 1199.98px) {

        .sp-bp-intro { top: 7%; left: 21%; right: 21%; }
        .sp-bp-intro p { margin-top: 14px; font-size: 14px; line-height: 1.55; }
    }

    @media (min-width: 768px) and (max-width: 991.98px) {

        .bt-slide { position: relative; display: block; flex-direction: initial; width: min(520px, 84vw); height: 260px; padding: 0; }
        .bt-slide .bt-step-img { position: absolute; left: calc(var(--il) * .64); top: calc(var(--it) * .64); width: calc(var(--iw) * .64); height: calc(var(--ih) * .64); min-height: 0; }
        .bt-slide .bt-step-info { position: absolute; left: calc(var(--cl) * .64); top: calc(var(--ct) * .64); width: 161px; }
        .bt-circuit { display: block; position: absolute; left: 0; top: 0; z-index: 3; overflow: visible; pointer-events: none; transform: scale(.64); transform-origin: top left; }
        .bt-steps { display: block; overflow: visible; margin-top: -26px; padding: 30px 0 34px; }
        .bt-steps-track { position: static; display: flex; justify-content: center; gap: 0 90px; width: auto; min-width: 0; padding: 0; overflow: visible; }
        .bt-step-tab { font-size: 12px; }
    }

    @media (prefers-reduced-motion: reduce) {
        :root { --headline-ms: 1ms; }
        .card.ready .lines g:has(> circle), .card.ready .lines circle, .all-graphic * { animation: none !important; }
        .card.all .all-graphic svg, .tab-indicator, .lines.show path { transition: none; }
        .card.ready .lines.show .hvac-st2 { animation: none; }
    }

    @media (hover: none), (max-width: 767.98px) {
        .swiper .swiper-slide.swiper-slide-active,
        section.hl-section.hl-dark .swiper .swiper-slide.swiper-slide-active,
        .hl-section.cs-hero .swiper .swiper-slide.swiper-slide-active { border-color: rgba(45, 226, 127, .7); }
        .hl-tile.swiper-slide-active .hl-tile-img { transform: scale(1.08); }
        .hl-sector.swiper-slide-active { border-color: rgba(45,226,127,.7); }
        .hl-sector.swiper-slide-active::after { opacity: 1; }
        .hl-sector.swiper-slide-active .hl-tile-img-h { opacity: 1; }
        .hl .hl-sector.swiper-slide-active h3 { font-size:20px; font-weight: 500; line-height: 1.2; }
        .hl-sector.swiper-slide-active .hl-link { height: 44px; margin-top: 30px; padding: 0 24px; color: var(--black); background: var(--green); }
  .footer-col a{white-space: inherit;}
    .hl-about-cards, .hl-sol-cards, .hl-article-cards, .hl-reasons, .sp-partners, .ct-quotes,
    .hv-standards:not(.hv-one), .bt-cards, .bt-cards-4, .hl-slider {
        -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; scroll-snap-type: x mandatory;
        touch-action: pan-x pan-y; scroll-behavior: smooth;
    }
    .ar-recent .hl-frame { padding-block: 20px;}
    .hl-about-cards > *, .hl-sol-cards > *, .hl-article-cards > *, .hl-reasons > *, .sp-partners > *, .ct-quotes > *,
    .hv-standards:not(.hv-one) > *, .bt-cards > *, .bt-cards-4 > *, .hl-slider > * {
        scroll-snap-align: start; scroll-snap-stop: always;
    }

}
