/* Heat pump campaign: scoped, additive, no changes to the shared design system. */
.page-heat-pumps{background:var(--cloud)}
.hp-page{--hp-gutter:clamp(22px,5.5vw,108px);color:var(--ink)}
.hp-page [hidden]{display:none!important}
.hp-page h2{font-size:clamp(38px,5.9vw,84px);font-weight:900;line-height:.98;letter-spacing:-.055em}
.hp-page h3{font-size:clamp(25px,3.4vw,46px);line-height:1.05;letter-spacing:-.035em}
.hp-page p{max-width:65ch}
.hp-page a,.hp-page select,.hp-page summary{touch-action:manipulation}
.hp-page select{min-height:48px;max-width:100%;padding:11px 38px 11px 14px;font:500 15px var(--mono);color:var(--ink);background:var(--cloud);border:1px solid var(--steel);border-radius:0}
.hp-kicker{display:block;font:500 11px/1.5 var(--mono);letter-spacing:.14em;text-transform:uppercase}
.hp-section{padding:clamp(76px,10vw,152px) var(--hp-gutter)}
.hp-editorial-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(30px,8vw,150px);align-items:end;margin-top:30px}
.hp-body{font-size:17px;line-height:1.7;color:#41454b}
.hp-lead{font-size:clamp(20px,2.2vw,30px);line-height:1.45;letter-spacing:-.02em}
.hp-hero{min-height:760px;position:relative;background:var(--paper);overflow:hidden;padding:66px var(--hp-gutter) 42px;display:grid;grid-template-columns:1fr;isolation:isolate}
.hp-hero-copy{position:relative;z-index:2;pointer-events:none}
.hp-hero-copy a{pointer-events:auto}
.hp-hero .hp-kicker{margin-bottom:32px;font-size:13px}
.hp-hero h1{font-size:clamp(46px,6.7vw,100px);font-weight:900;letter-spacing:-.055em;line-height:.96;max-width:11.6em}
.hp-hero h1 span{display:block;max-width:8.2em}
.hp-hero h1 span+span{color:var(--ember);margin-top:12px}
.hp-hero-copy>p:not(.hp-kicker){margin-top:32px;max-width:310px;font-size:18px;line-height:1.5}
.hp-hero-image{position:absolute;z-index:1;right:-4%;top:70px;width:66%;height:calc(100% - 85px);display:flex;align-items:center;justify-content:center}
.hp-hero-image img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.hp-image-caption{position:absolute;bottom:12px;right:14%;font-size:10px!important}
.hp-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:30px}
.hp-button{min-height:50px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 21px;font-size:13px;font-weight:600}
.hp-button-dark{background:var(--ink);color:var(--paper)}
.hp-button-dark:hover{background:var(--ember)}
.hp-text-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:6px}
.hp-facts{padding:42px var(--hp-gutter);display:grid;grid-template-columns:repeat(6,1fr);gap:24px;background:var(--ink);color:var(--paper)}
.hp-facts>div{border-top:1px solid #565654;padding-top:18px}
.hp-facts strong{display:block;font-size:clamp(32px,3.1vw,48px);font-weight:600;line-height:1.1;letter-spacing:-.055em;min-height:60px}
.hp-facts small{font-size:18px;letter-spacing:-.02em;margin-left:3px;font-weight:400}
.hp-facts span{font:11px/1.65 var(--mono);display:block;margin-top:12px;color:#c8c7c2}
.hp-facts .hp-word-fact{font-size:clamp(22px,2.5vw,34px);letter-spacing:-.035em}
.hp-intro{padding-bottom:clamp(64px,8vw,112px)}
.hp-intro .hp-kicker,.hp-range>.hp-kicker,.hp-technical>.hp-kicker,.hp-comparison>.hp-kicker{color:var(--ember)}
.hp-stories{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:10vw}
.hp-story{border-top:1px solid var(--line);padding-top:28px}
.hp-story h2{font-size:clamp(29px,3.4vw,48px);margin:30px 0 24px;line-height:1.08}
.hp-range{background:var(--paper)}
.hp-family-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:30px;margin-top:52px}
.hp-family{display:flex;flex-direction:column;min-width:0}
.hp-family-image{height:clamp(235px,30vw,440px);display:flex;align-items:center;justify-content:center}
.hp-family img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.hp-family[data-family="compact"] img{width:84%}
.hp-family h3{font-size:clamp(19px,2vw,28px);margin-top:26px}
.hp-family p{font-size:13px;line-height:1.6;color:var(--steel);margin:12px 0 20px;min-height:42px}
.hp-family-models{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid #c7c4bd;padding-top:10px}
.hp-family-choice{min-height:46px;display:inline-flex;align-items:center;gap:24px;padding:8px 10px;font:500 14px var(--mono)}
.hp-family-choice[aria-current="true"]{background:var(--ink);color:var(--paper)}
.hp-model-toolbar{margin-top:54px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding:24px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
#hp-selected-model{display:block;margin-top:7px;font-size:22px;letter-spacing:-.03em}
.hp-models{display:flex;gap:8px;flex-wrap:wrap}
.hp-model-button{display:inline-flex;align-items:baseline;justify-content:center;padding:13px 17px;min-width:68px;min-height:50px;border:1px solid #a7a7a2;font:500 20px var(--mono)}
.hp-model-button span{font-size:11px;margin-left:4px}
.hp-model-button[aria-current="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.hp-model-button:hover,.hp-family-choice:hover{border-color:var(--ember);color:var(--ember)}
.hp-status{font-size:13px;color:#923f22;min-height:0}
.hp-status:not(:empty){margin-top:15px}
.hp-section-nav{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-top:20px;gap:5px 18px;padding-bottom:12px}
.hp-section-nav a{display:flex;align-items:center;min-height:44px;font:500 12px var(--mono)}
.hp-section-nav a:hover{color:var(--ember)}
.hp-mobile-section{margin-top:20px;font:12px var(--mono)}
.hp-mobile-section select{margin-top:8px;width:100%}
.hp-tech-section{padding-top:68px;scroll-margin-top:100px}
.hp-tech-section+.hp-tech-section{margin-top:56px;border-top:1px solid var(--line)}
.hp-tech-heading{display:flex;gap:28px;align-items:start;justify-content:space-between;margin-bottom:32px}
.hp-tech-heading h3{width:66%;font-size:clamp(28px,3.6vw,50px)}
.hp-tech-heading>.hp-kicker{padding-top:7px;color:var(--ember)}
.hp-model-panel{margin-top:28px}
.hp-model-title{font:500 12px var(--mono);text-transform:uppercase;letter-spacing:.12em;margin-bottom:18px}
.hp-spec-list{margin:20px 0;max-width:900px}
.hp-spec-list>div{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);font-size:15px}
.hp-spec-list dt{color:var(--steel)}
.hp-spec-list dd{font-weight:600;font-family:var(--mono);font-size:14px}
.hp-source,.hp-note{font:12px/1.8 var(--mono);color:var(--steel);margin-top:22px;max-width:90ch!important}
.hp-pending{font-size:17px;line-height:1.6;margin-top:24px}
.hp-important{border-left:2px solid var(--ember);padding-left:15px;color:#5c3425}
.hp-explorer{margin:34px 0}
.hp-performance-controls{display:flex;gap:20px;flex-wrap:wrap}
.hp-performance-controls label{font:12px var(--mono);display:flex;flex-direction:column;gap:9px;min-width:180px}
.hp-performance-grid{display:grid;grid-template-columns:.72fr 1.5fr;gap:36px;align-items:center;padding-top:34px}
.hp-readout{padding:26px 0;border-top:2px solid var(--ink);min-width:0}
.hp-capacity{font-size:clamp(62px,7vw,102px);font-weight:600;line-height:1;letter-spacing:-.07em;overflow-wrap:anywhere}
.hp-capacity-unit{font-size:25px;margin-left:8px}
.hp-readout>.hp-kicker{margin-top:20px;color:var(--steel);font-size:10px}
#hp-caption{display:block;font:500 14px/1.8 var(--mono);margin-top:14px}
#hp-readout-model{display:block;font-size:13px;color:var(--steel);margin-top:7px}
.hp-chart-wrap{min-width:0}
.hp-chart-wrap svg{width:100%;height:auto;overflow:visible}
.hp-chart-wrap svg text{font:13px var(--mono);fill:var(--steel)}
.hp-chart-grid{stroke:var(--line);stroke-width:1}
.hp-chart-line{fill:none;stroke:var(--ember);stroke-width:2}
.hp-chart-point{fill:var(--cloud);stroke:var(--ember);stroke-width:2;pointer-events:none}
.hp-chart-target{fill:transparent;stroke:none;cursor:pointer}
.hp-chart-target:focus{outline:none}
.hp-chart-point-wrap:focus-within .hp-chart-point,.hp-chart-point-wrap:hover .hp-chart-point,.hp-chart-point-wrap.is-selected .hp-chart-point{fill:var(--ink);stroke:var(--ink);stroke-width:3}
.hp-point-tooltip{font:12px/1.7 var(--mono);min-height:42px;margin-top:12px;color:var(--ink)}
.hp-point-table{margin-top:26px;border-top:1px solid var(--line)}
.hp-point-table summary{min-height:48px;padding:15px 0;font:12px/1.6 var(--mono);cursor:pointer}
.hp-point-table table{border-collapse:collapse;width:100%;max-width:680px;font:12px/1.6 var(--mono)}
.hp-point-table caption{text-align:left;padding:14px 0;color:var(--steel)}
.hp-point-table th,.hp-point-table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line)}
.hp-point-table th{font-weight:500;background:var(--paper)}
.hp-dimension-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.hp-dimension-layout>img{width:100%;max-height:490px;object-fit:contain;mix-blend-mode:multiply}
.hp-download-list{list-style:none}
.hp-download-list li{border-bottom:1px solid var(--line)}
.hp-download-list a{display:flex;justify-content:space-between;gap:20px;padding:23px 0;min-height:56px;font-size:17px}
.hp-download-list a:hover{color:var(--ember)}
.hp-download-list .hp-kicker{flex-shrink:0}
.hp-comparison{background:var(--paper)}
.hp-comparison-list{margin-top:48px}
.hp-comparison-list details{border-top:1px solid #b6b4ae;padding-bottom:16px}
.hp-comparison-list summary{display:flex;justify-content:space-between;gap:20px;min-height:76px;align-items:center;cursor:pointer;font-size:24px;font-weight:600;list-style:none;letter-spacing:-.03em}
.hp-comparison-list summary::-webkit-details-marker{display:none}
.hp-comparison-list details[open] summary>span:last-child{transform:rotate(45deg)}
.hp-comparison-list .hp-spec-list{max-width:none}
.hp-plus{background:var(--ink);color:var(--paper)}
.hp-plus>.hp-kicker{font-size:28px;letter-spacing:-.04em}
.hp-plus-items{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:72px}
.hp-plus-items>div{border-top:1px solid #565654;padding-top:20px}
.hp-plus-items .hp-kicker{color:#c99177}
.hp-plus-items h3{font-size:24px;font-weight:600;letter-spacing:-.025em;margin:30px 0 16px}
.hp-plus-items p{font-size:15px;line-height:1.65;color:#c7c7c2}
.hp-final{background:var(--paper)}
.hp-final h2{font-size:clamp(56px,10.8vw,158px);margin:32px 0}
.hp-final>.hp-lead{max-width:36ch}
.hp-contact{border-top:1px solid var(--line);margin-top:70px;padding-top:28px;scroll-margin-top:100px}
.hp-contact h3{font-size:24px;margin-bottom:16px}
.hp-contact p{font-size:16px;line-height:1.7;margin-bottom:20px}
.hp-contact>a{display:block;min-height:44px;width:fit-content;font:500 15px/1.8 var(--mono);text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
@media(min-width:1600px){.hp-hero{min-height:900px}.hp-hero h1{font-size:110px}.hp-hero-image{width:64%}}
@media(max-width:1050px){.hp-facts{grid-template-columns:repeat(3,1fr)}.hp-hero{min-height:700px}.hp-hero-image{right:-12%;width:76%;top:100px}.hp-editorial-grid{gap:40px}.hp-family-grid{gap:20px}.hp-performance-grid{grid-template-columns:.8fr 1.4fr;gap:20px}.hp-plus-items{grid-template-columns:repeat(2,1fr);row-gap:42px}}
@media(max-width:800px){.hp-hero{padding-top:44px;min-height:0;display:block}.hp-hero h1{font-size:clamp(47px,8.6vw,72px);max-width:100%}.hp-hero h1 span{max-width:11em}.hp-hero-copy>p:not(.hp-kicker){max-width:36ch}.hp-hero-image{position:relative;width:calc(100% + 40px);right:auto;top:auto;height:480px;margin:0 -20px -20px}.hp-image-caption{right:12%;bottom:18px}.hp-editorial-grid{grid-template-columns:1fr;gap:28px}.hp-editorial-grid .hp-body,.hp-editorial-grid .hp-lead{max-width:50ch}.hp-family-grid{grid-template-columns:1fr}.hp-family{border-top:1px solid #c7c4bd;padding-top:22px;margin-top:22px}.hp-family-image{height:420px}.hp-family[data-family="compact"] img{width:70%}.hp-family h3{font-size:28px}.hp-family p{min-height:0;max-width:45ch}.hp-family-models{justify-content:flex-start}.hp-family-choice{min-width:88px}.hp-tech-heading{display:block}.hp-tech-heading h3{width:100%;margin-top:20px}.hp-stories{gap:40px}.hp-story h2{font-size:30px}.hp-performance-grid{grid-template-columns:1fr}.hp-readout{padding-bottom:4px}.hp-capacity{font-size:86px}.hp-chart-wrap{max-width:620px}.hp-dimension-layout{grid-template-columns:1fr;gap:20px}.hp-dimension-layout>img{max-height:360px}.hp-model-toolbar{align-items:start}.hp-models{width:100%;gap:6px}.hp-model-button{flex:1;padding:12px 8px;min-width:52px}.hp-enhanced .hp-section-nav{display:none}.hp-enhanced .hp-mobile-section:not([hidden]){display:block}.hp-mobile-section{display:none}.hp-tech-section{padding-top:52px}.hp-tech-section+.hp-tech-section{margin-top:44px}}
@media(min-width:801px){.hp-mobile-section{display:none!important}}
@media(max-width:520px){.hp-hero-image{height:350px}.hp-hero{padding-bottom:25px}.hp-hero h1{font-size:clamp(43px,10.7vw,55px)}.hp-hero .hp-kicker{margin-bottom:23px}.hp-hero-copy>p:not(.hp-kicker){font-size:16px;margin-top:24px}.hp-actions{gap:12px 24px}.hp-button{padding:14px 18px}.hp-facts{grid-template-columns:repeat(2,1fr);gap:24px 20px;padding-block:32px}.hp-facts strong{font-size:42px;min-height:52px}.hp-facts .hp-word-fact{font-size:27px}.hp-facts span{font-size:10px}.hp-stories{grid-template-columns:1fr;gap:40px}.hp-family-image{height:330px}.hp-spec-list>div{grid-template-columns:1fr;gap:7px}.hp-performance-controls{gap:12px;display:grid;grid-template-columns:1fr 1fr}.hp-performance-controls label{min-width:0;font-size:11px}.hp-performance-controls select{width:100%;padding-left:10px}.hp-capacity{font-size:74px}.hp-chart-wrap svg text{font-size:14px}.hp-point-table th,.hp-point-table td{padding:9px 4px;font-size:11px}.hp-plus-items{grid-template-columns:1fr;gap:30px;margin-top:46px}.hp-plus-items h3{margin-top:20px}.hp-download-list a{font-size:15px}.hp-comparison-list summary{font-size:21px}.hp-note,.hp-source{font-size:11px}.hp-model-button{font-size:18px}}
@media(prefers-reduced-motion:no-preference){.hp-family img{transition:transform .45s ease}.hp-family:hover img{transform:translateY(-7px)}.hp-model-button,.hp-button{transition:background .2s,color .2s}}

/* Technical disclosure is activated only after JS initializes; static HTML remains crawlable. */
.page-heat-pumps .hp-hero{padding-top:140px}
.hp-hero-image{mix-blend-mode:multiply}
.hp-tech-controls{background:var(--cloud)}
.hp-enhanced .hp-tech-controls{position:sticky;top:96px;z-index:40;padding-block:8px 12px;border-bottom:1px solid var(--line)}
.hp-enhanced .hp-model-toolbar{margin-top:24px}
.hp-section-nav a[aria-current="location"]{color:var(--ink);box-shadow:inset 0 -2px var(--ember)}
.hp-section-nav{margin-top:8px;padding-bottom:0;border:0}
.hp-enhanced .hp-tech-section{scroll-margin-top:280px;min-height:500px}
.hp-button-light{color:var(--ink);background:var(--paper);margin-top:40px}
.hp-page .hp-kicker{color:inherit}
.hp-intro>.hp-kicker,.hp-range>.hp-kicker,.hp-technical>.hp-kicker,.hp-comparison>.hp-kicker,.hp-tech-heading>.hp-kicker{color:#944326}
@media(max-width:800px){.page-heat-pumps .hp-hero{padding-top:126px}.hp-enhanced .hp-tech-controls{top:76px}.hp-enhanced .hp-tech-section{scroll-margin-top:300px}.hp-model-toolbar{gap:12px;padding:12px 0}.hp-mobile-section{margin-top:10px}.hp-mobile-section select{margin-top:5px}.hp-model-button{min-width:46px}}
@media(max-width:520px){.hp-enhanced .hp-model-toolbar{margin-top:4px}.hp-section{padding-block:64px}.hp-hero-image{height:320px}.hp-enhanced .hp-tech-section{min-height:450px}}

/* Page-scoped accessibility repairs. Shared homepage stylesheet is unchanged. */
.page-heat-pumps .footer__grid h2{color:#d68a68}
.page-heat-pumps .footer__bottom{color:#aaa9a4}
.page-heat-pumps .footer__bottom a{color:inherit}
.hp-hero h1 span+span{color:#a94b27}
