/*
Theme Name: Goed Klimaat
Theme URI: https://goedklimaat.nl
Author: RFVD Installaties
Description: Lichtgewicht maatwerkthema voor Goed Klimaat.
Version: 0.49.10
Requires at least: 6.7
Requires PHP: 8.1
Text Domain: goedklimaat
*/

html { scroll-behavior: smooth; }
body { text-wrap: pretty; }
a { text-underline-offset: .18em; }
.gk-rfvd-logo { display:inline-block; flex:0 0 auto; line-height:0; }
.gk-rfvd-logo picture { display:block; }
.gk-rfvd-logo img { display:block; height:auto; width:100%; }
.gk-rfvd-logo-header { width:10.5rem; }
.gk-rfvd-logo-footer { margin-bottom:1.1rem; width:11.5rem; }
.gk-document-card { align-items:center; background:#f7fbfc; border:1px solid #dbe7eb; border-radius:12px; display:grid; gap:1.5rem; grid-template-columns:minmax(180px,280px) minmax(0,1fr); margin-top:1.25rem; padding:1.25rem; }
.gk-document-card h3 { margin:.1rem 0 .65rem; }
.gk-document-card p { color:#5f707b; margin:0; }
.gk-document-preview { background:#fff; border:1px solid #dbe7eb; border-radius:8px; display:block; overflow:hidden; }
.gk-document-preview img { display:block; height:auto; width:100%; }
.gk-document-link { color:#ed6b2d; display:inline-block; font-weight:750; margin-top:1rem; text-decoration:none; }
.gk-document-link:hover { text-decoration:underline; }
@media (max-width:640px) { .gk-document-card { grid-template-columns:1fr; } }
.gk-quote-cart-link { align-items:center; border:1px solid #168b85; border-radius:9px; color:#0e2633; display:inline-flex; flex:0 0 auto; font-size:.78rem; font-weight:800; gap:.45rem; padding:.55rem .65rem; text-decoration:none; }
.gk-quote-cart-link:hover { background:#e9f6f4; color:#0e2633; }
.gk-quote-cart-link strong { align-items:center; background:#dcebea; border-radius:999px; color:#0e2633; display:inline-flex; font-size:.72rem; height:1.65rem; justify-content:center; min-width:1.65rem; padding:0 .35rem; }
.gk-quote-cart-link.has-items strong { background:#ef6b2e; color:#fff; }
.gk-boiler-cart-action { align-items:center; display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1rem; }
.gk-boiler-cart-action button { border:0; cursor:pointer; font:inherit; font-weight:800; }
.gk-boiler-cart-action button.is-added { background:#168b85 !important; }
.gk-boiler-cart-view { color:#0f736d; font-size:.82rem; font-weight:800; text-decoration:none; }
.gk-boiler-cart-view:hover { text-decoration:underline; }
.gk-boiler-cart-status { color:#526771; flex-basis:100%; font-size:.76rem; line-height:1.45; }
.wp-site-blocks > header { box-shadow: 0 3px 18px rgba(14,38,51,.08); position: sticky; top: 0; z-index: 1000; }
body.admin-bar .wp-site-blocks > header { top: 32px; }
.gk-card { transition: transform .18s ease, box-shadow .18s ease; }
.gk-card:hover { transform: translateY(-3px); box-shadow: 0 18px 42px rgba(14, 38, 51, .12); }
.gk-kicker { letter-spacing: .08em; text-transform: uppercase; }
.gk-hero { overflow: hidden; position: relative; }
.gk-hero::after { background: radial-gradient(circle, rgba(30,168,161,.20), transparent 68%); content: ""; height: 34rem; position: absolute; right: -11rem; top: -14rem; width: 34rem; pointer-events: none; }
.gk-checklist { list-style: none; padding-left: 0; }
.gk-checklist li { padding-left: 1.8rem; position: relative; }
.gk-checklist li::before { color: #168b85; content: "\2713"; font-weight: 800; left: 0; position: absolute; }
.gk-product-card { height: 100%; overflow: hidden; }
.gk-own-product-code { color:#60737c; font-size:.78rem; margin:.35rem 0 .8rem; }
.gk-own-product-code strong { color:#0f736d; letter-spacing:.02em; }
.gk-product-card .wp-block-image { background: #f7fafb; margin: 0; min-height: 17rem; display: grid; place-items: center; }
.gk-product-card .wp-block-image img { max-height: 16rem; object-fit: contain; width: auto; }
.gk-service-grid { display:grid; gap:1.25rem; grid-template-columns:repeat(3,minmax(0,1fr)); margin:2rem 0; }
.gk-service-card { background:#fff; border:1px solid #dbe7eb; border-radius:14px; padding:1.4rem; }
.gk-service-card h3 { margin:.25rem 0 .55rem; }
.gk-service-card p { color:#526771; font-size:.94rem; line-height:1.55; margin:0; }
.gk-service-icon { align-items:center; background:#e9f6f4; border-radius:50%; color:#126f6a; display:flex; font-size:1.2rem; font-weight:800; height:2.7rem; justify-content:center; margin-bottom:.85rem; width:2.7rem; }
.gk-radiator-route-grid { display:grid; gap:1rem; grid-template-columns:repeat(4,minmax(0,1fr)); margin:2rem 0 3.5rem; }
.gk-radiator-route-card { background:#fff; border:1px solid #dbe7eb; border-radius:14px; color:inherit; display:flex; flex-direction:column; overflow:hidden; text-decoration:none; transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.gk-radiator-route-card:hover { border-color:#9fc9c6; box-shadow:0 16px 38px rgba(14,38,51,.11); color:inherit; transform:translateY(-3px); }
.gk-radiator-route-visual { align-items:center; background:linear-gradient(145deg,#fff,#eef6f6); display:flex; justify-content:center; min-height:12rem; overflow:hidden; padding:1rem; }
.gk-radiator-route-visual img { height:10.5rem; object-fit:contain; width:100%; }
.gk-radiator-route-body { display:flex; flex:1; flex-direction:column; padding:1.15rem; }
.gk-radiator-route-body h3 { margin:0 0 .45rem; }
.gk-radiator-route-body p { color:#526771; font-size:.9rem; line-height:1.5; margin:0 0 1rem; }
.gk-radiator-route-link { color:#d95820; font-weight:800; margin-top:auto; }
.gk-radiator-symbol { align-items:center; color:#168b85; display:flex; font-size:4.5rem; font-weight:300; justify-content:center; line-height:1; min-height:10.5rem; }
.gk-radiator-page-hero { align-items:center; display:grid; gap:3.5rem; grid-template-columns:minmax(16rem,42%) 1fr; margin:auto; max-width:1120px; padding:4rem 1.25rem; }
.gk-radiator-page-image { align-items:center; background:linear-gradient(145deg,#fff,#eef6f6); border-radius:16px; display:flex; justify-content:center; min-height:24rem; overflow:hidden; padding:1.5rem; }
.gk-radiator-page-image img { height:21rem; object-fit:contain; width:100%; }
.gk-radiator-facts { display:grid; gap:.8rem; grid-template-columns:repeat(3,minmax(0,1fr)); margin:1.5rem 0; }
.gk-radiator-fact { border:1px solid #dbe7eb; border-radius:10px; padding:1rem; }
.gk-radiator-fact strong { display:block; font-size:1.02rem; }
.gk-radiator-fact span { color:#60737c; font-size:.82rem; }
.gk-radiator-range { overflow-x:auto; }
.gk-radiator-range table { border-collapse:collapse; min-width:620px; width:100%; }
.gk-radiator-range th,.gk-radiator-range td { border-bottom:1px solid #dbe7eb; padding:.75rem; text-align:left; }
.gk-radiator-range th { color:#0e2633; font-size:.86rem; }
.gk-choice-panel { background:linear-gradient(135deg,#f3fbfa,#edf5f8); border:1px solid #cfe2e3; border-radius:16px; margin:2.5rem 0; padding:2rem; }
.gk-choice-panel h2 { margin-top:0; }
.gk-choice-list { display:grid; gap:.7rem 1.5rem; grid-template-columns:repeat(2,minmax(0,1fr)); list-style:none; margin:1.25rem 0 0; padding:0; }
.gk-choice-list li { color:#263f49; padding-left:1.55rem; position:relative; }
.gk-choice-list li::before { color:#168b85; content:"✓"; font-weight:800; left:0; position:absolute; }
.gk-inline-link { color:#d95820; font-weight:800; text-decoration:none; }
.gk-inline-link:hover { color:#a93e13; text-decoration:underline; }
.gk-family-card-body { display: flex; flex: 1; flex-direction: column; }
.gk-family-card h3 { margin: .45rem 0 .35rem; }
.gk-family-card h3 a { color: inherit; text-decoration: none; }
.gk-family-card h3 a:hover { color: #126f6a; }
.gk-family-label { align-self: flex-start; background: #e9f6f4; border-radius: 999px; color: #0e625e; font-size: .78rem; font-weight: 800; line-height: 1; margin: 0; padding: .48rem .65rem; }
.gk-family-position { color: #0e2633; margin: 0 0 .7rem; }
.gk-family-card .gk-checklist { margin-bottom: .9rem; }
.gk-family-range { border-top: 1px solid #e4ecef; color: #526771; font-size: .82rem; margin: auto 0 0; padding-top: .8rem; }
.gk-family-price { margin-bottom: .8rem; }
.gk-family-grid { display: grid; gap: 1.35rem; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 2rem; }
.gk-family-grid .gk-family-card { background: #fff; border: 1px solid #dbe7eb; border-radius: 12px; display: flex; flex-direction: column; overflow: hidden; }
.gk-family-grid .gk-family-card-body { padding: 1.5rem; }
.gk-family-visual { align-items: center; background: #f7fafb; display: flex; justify-content: center; min-height: 17rem; text-decoration: none; }
.gk-family-card-link { color: inherit; display: flex; flex: 1; flex-direction: column; text-decoration: none; }
.gk-family-card-link:hover { color: inherit; }
.gk-family-card-heading { color:#0e2633; display:block; font-size:1.08rem; font-weight:800; line-height:1.2; padding:1rem 1.2rem .85rem; }
.gk-family-grid-six .gk-family-visual { overflow: hidden; padding: 1.2rem; position: relative; }
.gk-family-grid-six .gk-family-visual img { height: 14.5rem; object-fit: contain; transition: transform .2s ease; width: 100%; }
.gk-family-grid-six .gk-family-card-link:hover .gk-family-visual img { transform: scale(1.025); }
.gk-family-brand { background: rgba(255,255,255,.92); border: 1px solid #dbe7eb; border-radius: 999px; bottom: .8rem; color: #526771; font-size: .7rem; font-weight: 800; letter-spacing: .08em; padding: .35rem .55rem; position: absolute; right: .8rem; text-transform: uppercase; }
.gk-family-title { color: #0e2633; font-size: 1.25rem; font-weight: 800; line-height: 1.2; margin: .55rem 0 .35rem; }
.gk-family-copy { color: #405761; display: block; font-size: .9rem; line-height: 1.48; margin-bottom: .85rem; }
.gk-family-points { display: grid; gap: .45rem; margin: 0 0 1rem; }
.gk-family-points > span { display: block; font-size: .88rem; padding-left: 1.55rem; position: relative; }
.gk-family-points > span::before { color: #168b85; content: "\2713"; font-weight: 800; left: 0; position: absolute; }
.gk-family-grid-six .gk-family-card-body { padding:1.15rem 1.2rem 1.25rem; }
.gk-family-grid-six .gk-family-position { margin:.65rem 0 .55rem; }
.gk-family-grid-six .gk-family-card-button { background:#ef6a2c; border-radius:8px; color:#fff; display:block; font-size:.9rem; font-weight:800; margin-top:auto; padding:.65rem .8rem; text-align:center; }
.gk-family-grid-six .gk-family-card-link:hover .gk-family-card-button { background:#d95820; }
.gk-family-fit { border-top: 1px solid #e4ecef; color: #263f49; display: block; font-size: .86rem; font-weight: 700; line-height: 1.4; margin: auto 0 1rem; padding-top: .85rem; }
.gk-family-fit small { color: #6a7c84; display: block; font-size: .68rem; font-weight: 800; letter-spacing: .07em; margin-bottom: .2rem; text-transform: uppercase; }
@media (min-width: 782px) and (max-width: 1050px) { .gk-family-grid-six,.gk-radiator-route-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.gk-boiler-placeholder { align-items: center; color: #73868e; display: flex; flex-direction: column; gap: .65rem; justify-content: center; min-height: 15rem; padding: 1rem; text-align: center; }
.gk-boiler-placeholder svg { fill: #fff; height: 13rem; max-width: 10rem; stroke: #b8c8ce; stroke-width: 3; width: 100%; }
.gk-boiler-placeholder span { font-size: .78rem; font-weight: 700; }
.gk-series-page,.gk-product-page { display: block; }
.gk-series-intro { align-items: center; display: grid; gap: 3.5rem; grid-template-columns: minmax(16rem,42%) 1fr; margin: 0 auto; max-width: 1120px; padding: 4.5rem 1.25rem; }
.gk-series-intro > div:first-child { background: linear-gradient(145deg,#fff 0%,#eef6f6 100%); border-radius: 16px; }
.gk-hre-model-hero { align-items: center; display: grid; gap: 4rem; grid-template-columns: minmax(17rem,45%) 1fr; margin: 0 auto; max-width: 1120px; padding: 4rem 1.25rem 4.5rem; }
.gk-hre-model-image { background: linear-gradient(145deg,#fff 0%,#eef6f6 100%); border-radius: 16px; min-height: 25rem; position: relative; }
.gk-hre-model-image > img { display: block; height: 24rem; margin: auto; object-fit: contain; width: 100%; }
.gk-hre-information,.gk-hre-variants,.gk-hre-options { margin: 0 auto; max-width: 1120px; padding: 2rem 1.25rem 4rem; }
.gk-product-meta { align-items: center; display: flex; flex-wrap: wrap; gap: .55rem; }
.gk-badge { background: #e9f6f4; border-radius: 999px; color: #0e625e; display: inline-block; font-size: .82rem; font-weight: 750; line-height: 1; padding: .55rem .7rem; }
.gk-cw-grid { display: grid; gap: .85rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gk-cw-item { border: 1px solid #dbe7eb; border-radius: 10px; padding: 1.15rem; }
.gk-cw-icon { align-items: center; background: #e9f6f4; border-radius: 50%; color: #126f6a; display: inline-flex; font-size: 1.35rem; height: 2.8rem; justify-content: center; margin-bottom: .65rem; width: 2.8rem; }
.gk-details { border-bottom: 1px solid #dbe7eb; border-top: 1px solid #dbe7eb; padding: 1rem 0; }
.gk-details summary { cursor: pointer; font-weight: 750; }
.gk-details[open] summary { margin-bottom: 1rem; }
.gk-spec-table { border-collapse: collapse; width: 100%; }
.gk-spec-table th, .gk-spec-table td { border-bottom: 1px solid #dbe7eb; padding: .85rem .7rem; text-align: left; }
.gk-spec-table th { color: #0e2633; font-size: .9rem; }
.gk-spec-table tbody tr:hover { background: #f7fafb; }
.gk-spec-note { color: #526771; font-size: .86rem; margin-top: .7rem; }
.gk-series-products { display: grid; gap: 1rem; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 2rem auto 1.5rem !important; max-width: 1120px !important; width: calc(100vw - 2.5rem); }
.gk-series-products-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.gk-series-products-two { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:760px !important; }
.gk-series-single-image { align-items:center; display:flex; justify-content:center; min-height:380px; padding:2rem; }
.gk-series-single-image img { display:block; height:320px; max-width:100%; object-fit:contain; width:auto; }
.gk-series-card { background: #fff; border: 1px solid #dbe7eb; border-radius: 14px; box-shadow: 0 8px 24px rgba(14,38,51,.06); display: flex; flex-direction: column; overflow: hidden; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.gk-series-card:hover { border-color: #a9cccc; box-shadow: 0 16px 38px rgba(14,38,51,.12); transform: translateY(-3px); }
.gk-series-card-image { align-items: center; background: linear-gradient(145deg,#fff 0%,#eef6f6 100%); display: flex; justify-content: center; min-height: 13rem; padding: 1rem; position: relative; }
.gk-series-card-image img { height: 11.5rem; object-fit: contain; transition: transform .2s ease; width: 100%; }
.gk-series-card-image:hover img { transform: scale(1.025); }
.gk-series-card-cw { background: #168b85; border-radius: 999px; color: #fff; font-size: .82rem; font-weight: 800; padding: .45rem .65rem; position: absolute; right: .85rem; top: .85rem; }
.gk-series-card-body { display: flex; flex: 1; flex-direction: column; padding: 1rem 1.1rem 1.1rem; }
.gk-series-card-title { color: #0e2633; display: block; font-size: 1.1rem; font-weight: 800; line-height: 1.2; padding: 1rem 1.1rem .8rem; text-decoration: none; }
.gk-series-card-title:hover { color: #126f6a; }
.gk-series-card-description { color: #526771; font-size: .86rem; line-height: 1.45; margin: 0 0 .85rem; }
.gk-series-card-specs { border-top: 1px solid #e4ecef; display: grid; font-size: .82rem; gap: .45rem; margin: auto 0 0; padding-top: .9rem; }
.gk-series-card-specs div { display: flex; gap: .5rem; justify-content: space-between; }
.gk-series-card-specs span { color: #60737c; }
.gk-series-card-price { font-size: 1.05rem; font-weight: 800; margin: 1rem 0 .75rem; }
.gk-series-card-button { background: #ef6a2c; border-radius: 8px; color: #fff; display: block; font-size: .9rem; font-weight: 800; line-height: 1.2; padding: .58rem .8rem; text-align: center; text-decoration: none; }
.gk-series-card-button:hover { background: #d95820; color: #fff; }
.gk-series-comparison { margin-top: 1.75rem; }
.gk-series-comparison summary { cursor: pointer; font-weight: 750; }
.gk-bottom-cta { box-shadow: 0 18px 44px rgba(14, 38, 51, .10); }
.gk-contact-line { align-items: center; display: flex; flex-wrap: wrap; gap: .7rem; }
.gk-contact-line a { color: inherit; }
.gk-contact-buttons { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1.5rem 0; }
.gk-contact-button { align-items: center; border: 1px solid #c9d9df; border-radius: 9px; color: #0e2633; display: inline-flex; gap: .75rem; line-height: 1.25; padding: .8rem 1rem; text-decoration: none; transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease; }
.gk-contact-button:hover { border-color: #168b85; box-shadow: 0 8px 22px rgba(14,38,51,.1); transform: translateY(-2px); }
.gk-contact-button svg { fill: currentColor; flex: 0 0 auto; height: 1.45rem; width: 1.45rem; }
.gk-contact-button small { display: block; font-size: .72rem; font-weight: 600; opacity: .72; }
.gk-contact-whatsapp { background: #eaf8ef; border-color: #b9e2c8; color: #176b39; }
.has-ink-background-color .gk-contact-phone,
.has-ink-background-color .gk-contact-email { background: #fff; }
.gk-maintenance-price { box-shadow: 0 18px 46px rgba(14,38,51,.12); }
.gk-steps { counter-reset: gk-step; display: grid; gap: 1rem; grid-template-columns: repeat(3,minmax(0,1fr)); }
.gk-step { border: 1px solid #dbe7eb; border-radius: 11px; padding: 1.3rem; }
.gk-step::before { align-items: center; background: #168b85; border-radius: 50%; color: #fff; content: counter(gk-step); counter-increment: gk-step; display: flex; font-weight: 800; height: 2rem; justify-content: center; margin-bottom: .75rem; width: 2rem; }
.gk-product-hero img { max-height: 26rem; object-fit: contain; width: auto; }
.gk-maintenance-form { background: #fff; border: 1px solid #cfe2e3; border-radius: 16px; box-shadow: 0 20px 52px rgba(14,38,51,.10); margin-inline: auto; max-width: 880px; overflow: hidden; }
.gk-form-intro { padding: 2.2rem 2.2rem 1rem; }
.gk-form-intro h2 { margin: .2rem 0 .6rem; }
.gk-form-intro p:last-child { color: #526771; margin-bottom: 0; }
.gk-form-progress { border-bottom: 1px solid #dbe7eb; padding: 1rem 2.2rem 1.4rem; }
.gk-form-progress-copy { color: #526771; display: flex; font-size: .86rem; font-weight: 700; justify-content: space-between; margin-bottom: .55rem; }
.gk-form-progress-track { background: #e5edef; border-radius: 999px; height: .45rem; overflow: hidden; }
.gk-form-progress-track span { background: #168b85; border-radius: inherit; display: block; height: 100%; transition: width .25s ease; width: 14.285%; }
.gk-maintenance-form form { padding: 2.2rem; }
.gk-form-step { border: 0; margin: 0; min-width: 0; padding: 0; }
.gk-form-step legend { color: #0e2633; font-size: clamp(1.35rem,3vw,1.8rem); font-weight: 800; line-height: 1.2; padding: 0; }
.gk-form-help { color: #526771; margin: .65rem 0 1.4rem; }
.gk-choice-grid { display: grid; gap: .8rem; grid-template-columns: repeat(2,minmax(0,1fr)); }
.gk-choice-grid > br, .gk-form-fields > br { display: none; }
.gk-choice-grid-compact { grid-template-columns: repeat(2,minmax(0,1fr)); }
.gk-choice { cursor: pointer; display: block; position: relative; }
.gk-choice input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.gk-choice span { border: 2px solid #dbe7eb; border-radius: 11px; display: flex; flex-direction: column; height: 100%; justify-content: center; min-height: 4.8rem; padding: .9rem 1rem .9rem 3rem; position: relative; transition: border-color .15s ease, background .15s ease, box-shadow .15s ease; }
.gk-choice span::before { border: 2px solid #9eb2ba; border-radius: 50%; content: ""; height: 1.1rem; left: 1rem; position: absolute; top: 50%; transform: translateY(-50%); width: 1.1rem; }
.gk-choice input[type="checkbox"] + span::before { border-radius: 4px; }
.gk-choice input:checked + span { background: #e9f6f4; border-color: #168b85; box-shadow: inset 0 0 0 1px #168b85; }
.gk-choice input:checked + span::before { background: #168b85; border-color: #168b85; box-shadow: inset 0 0 0 3px #e9f6f4; }
.gk-choice input[type="checkbox"]:checked + span::before { box-shadow: none; content: "\2713"; color: #fff; font-size: .8rem; font-weight: 800; line-height: 1.1rem; text-align: center; }
.gk-choice input:focus-visible + span { outline: 3px solid rgba(22,139,133,.3); outline-offset: 2px; }
.gk-choice small { color: #526771; font-size: .8rem; margin-top: .2rem; }
.gk-choice.is-fixed { cursor: default; opacity: .82; }
.gk-form-notice, .gk-form-prototype { background: #fff5da; border-left: 4px solid #e5a700; border-radius: 6px; margin-top: 1.1rem; padding: .9rem 1rem; }
.gk-form-prototype { background: #edf5f8; border-color: #168b85; color: #3e5964; font-size: .88rem; }
.gk-form-fields { display: grid; gap: 1rem; grid-template-columns: repeat(2,minmax(0,1fr)); }
.gk-form-fields label span { display: block; font-size: .88rem; font-weight: 750; margin-bottom: .35rem; }
.gk-form-fields input { border: 1px solid #aabdc5; border-radius: 8px; box-sizing: border-box; font: inherit; min-height: 3rem; padding: .65rem .75rem; width: 100%; }
.gk-form-fields input:focus { border-color: #168b85; box-shadow: 0 0 0 3px rgba(22,139,133,.16); outline: 0; }
.gk-form-subsection { margin: 1.2rem 0 1.5rem; }
.gk-form-label { display: block; font-size: .9rem; font-weight: 750; margin-bottom: .6rem; }
.gk-choice-grid-salutation { grid-template-columns: repeat(4,minmax(0,1fr)); }
.gk-choice-grid-salutation .gk-choice span { min-height: 3.5rem; padding-right: .65rem; }
.gk-form-fields small { color: #667983; font-size: .72rem; font-weight: 500; }
.gk-address-note { color: #526771; font-size: .82rem; margin: .8rem 0 0; }
.gk-photo-upload { background: #f7fafb; border: 2px dashed #b9cdd3; border-radius: 12px; padding: 1.25rem; text-align: center; }
.gk-photo-upload label { display: block; }
.gk-photo-upload label span { color: #526771; display: block; font-size: .84rem; font-weight: 400; margin: .25rem 0 .85rem; }
.gk-photo-upload input { max-width: 100%; }
.gk-photo-upload p { color: #526771; font-size: .8rem; margin: .65rem 0 0; }
.gk-form-consent { align-items: flex-start; display: flex; gap: .7rem; margin-top: 1.25rem; }
.gk-form-consent input { flex: 0 0 auto; margin-top: .25rem; }
.gk-form-honeypot { height: 1px; left: -10000px; overflow: hidden; position: absolute; width: 1px; }
.gk-form-result { border-radius: 10px; font-weight: 700; margin-top: 1rem; padding: 1rem 1.2rem; }
.gk-form-result.is-success { background: #e6f5ef; color: #155b43; }
.gk-form-result.is-error { background: #fdeceb; color: #8c2f27; }
.gk-form-summary { background: #f7fafb; border-radius: 10px; margin-top: 1.3rem; padding: 1rem 1.2rem; }
.gk-form-summary h3 { font-size: 1rem; margin: 0 0 .6rem; }
.gk-form-summary dl { display: grid; gap: .35rem .8rem; grid-template-columns: minmax(7rem,auto) 1fr; margin: 0; }
.gk-form-summary dt { color: #526771; font-size: .82rem; font-weight: 700; }
.gk-form-summary dd { font-size: .88rem; margin: 0; }
.gk-form-error { color: #9a271d; font-weight: 700; margin: 1rem 0 0; }
.gk-form-actions { border-top: 1px solid #dbe7eb; display: flex; gap: .7rem; justify-content: flex-end; margin-top: 2rem; padding-top: 1.2rem; }
.gk-form-button { border: 0; border-radius: 8px; cursor: pointer; font: inherit; font-weight: 800; min-height: 3rem; padding: .7rem 1.25rem; }
.gk-form-next { background: #168b85; color: #fff; }
.gk-form-back { background: #e9eff1; color: #0e2633; margin-right: auto; }
.gk-form-finish { background: #cbd7da; color: #526771; cursor: not-allowed; }
.gk-footer { border-top: 5px solid #168b85; }
.gk-footer a { color: #fff; }
.gk-footer h3, .gk-footer h4 { margin-bottom: .8rem; }
.gk-footer-links { line-height: 2; }
.gk-footer-contact { font-style: normal; }
.gk-footer-contact > a { align-items: center; display: flex; gap: .55rem; margin-top: .7rem; text-decoration: none; }
.gk-footer-contact svg { fill: currentColor; height: 1.15rem; width: 1.15rem; }
.gk-back-to-top { align-items: center; background: #168b85; border: 0; border-radius: 50%; bottom: 1.25rem; box-shadow: 0 8px 24px rgba(14,38,51,.22); color: #fff; cursor: pointer; display: flex; height: 3rem; justify-content: center; opacity: 0; pointer-events: none; position: fixed; right: 1.25rem; transform: translateY(.75rem); transition: opacity .18s ease, transform .18s ease, background .18s ease; width: 3rem; z-index: 1001; }
.gk-back-to-top:hover { background: #0e625e; }
.gk-back-to-top.is-visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
.gk-back-to-top svg { fill: currentColor; height: 1.7rem; width: 1.7rem; }
.gk-selector { background:#fff; border:1px solid #cfe2e3; border-radius:16px; box-shadow:0 20px 52px rgba(14,38,51,.10); margin:auto; max-width:920px; overflow:hidden; }
.gk-selector-head { background:#0e2633; color:#fff; padding:2.2rem 2.3rem 1.7rem; }
.gk-selector-head h1,
.gk-selector-head h2 { color:#fff; margin:.15rem 0 .55rem; }
.gk-selector-head p:last-child { margin:0; opacity:.86; }
.gk-selector-progress { border-bottom:1px solid #dbe7eb; padding:1.1rem 2.3rem 1.35rem; }
.gk-selector-progress > div:first-child { color:#526771; display:flex; font-size:.86rem; font-weight:700; justify-content:space-between; margin-bottom:.55rem; }
.gk-selector-track { background:#e5edef; border-radius:999px; height:.48rem; overflow:hidden; }
.gk-selector-track span { background:#168b85; display:block; height:100%; transition:width .2s ease; width:14%; }
.gk-selector-body { padding:2.3rem; }
.gk-selector-step { border:0; margin:0; min-width:0; padding:0; }
.gk-selector-step legend { color:#0e2633; font-size:clamp(1.35rem,3vw,1.8rem); font-weight:800; line-height:1.2; padding:0; }
.gk-selector-step > p { color:#526771; margin:.65rem 0 1.4rem; }
.gk-selector-choices { display:grid; gap:.8rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.gk-selector-choice { cursor:pointer; position:relative; }
.gk-selector-choice input { height:1px; opacity:0; position:absolute; width:1px; }
.gk-selector-choice span { border:2px solid #dbe7eb; border-radius:11px; display:flex; flex-direction:column; height:100%; justify-content:center; min-height:4.6rem; padding:.9rem 1rem .9rem 3rem; position:relative; }
.gk-selector-choice span::before { border:2px solid #9eb2ba; border-radius:50%; content:""; height:1.1rem; left:1rem; position:absolute; top:50%; transform:translateY(-50%); width:1.1rem; }
.gk-selector-choice input:checked + span { background:#e9f6f4; border-color:#168b85; box-shadow:inset 0 0 0 1px #168b85; }
.gk-selector-choice input:checked + span::before { background:#168b85; border-color:#168b85; box-shadow:inset 0 0 0 3px #e9f6f4; }
.gk-selector-choice input:focus-visible + span { outline:3px solid rgba(22,139,133,.3); outline-offset:2px; }
.gk-selector-choice small { color:#526771; font-size:.8rem; margin-top:.2rem; }
.gk-selector-actions { border-top:1px solid #dbe7eb; display:flex; gap:.7rem; justify-content:flex-end; margin-top:2rem; padding-top:1.2rem; }
.gk-selector-restart { background:#e9eff1; color:#0e2633; margin-right:auto; }
.gk-selector-result > h3 { font-size:clamp(1.5rem,3vw,2.1rem); margin:.2rem 0 .65rem; }
.gk-selector-products { display:grid; gap:.8rem; grid-template-columns:repeat(3,minmax(0,1fr)); margin:1.6rem 0; }
.gk-selector-product { border:1px solid #cfe2e3; border-radius:11px; color:#0e2633; display:flex; flex-direction:column; min-height:9rem; padding:1.1rem; text-decoration:none; }
.gk-selector-product:hover { border-color:#168b85; box-shadow:0 8px 24px rgba(14,38,51,.08); }
.gk-selector-product span { color:#168b85; font-weight:800; margin:.35rem 0; }
.gk-selector-product small { color:#526771; margin-top:auto; }
.gk-selector-note { background:#edf5f8; border-left:4px solid #168b85; border-radius:6px; padding:1rem; }
.gk-selector-summary { margin-top:1.5rem; }
.gk-selector-summary dl { display:grid; gap:.35rem 1rem; grid-template-columns:minmax(9rem,auto) 1fr; }
.gk-selector-summary dt { color:#526771; font-size:.84rem; font-weight:700; }
.gk-selector-summary dd { margin:0; }
.gk-model-hero { overflow:hidden; }
.gk-model-brand { align-items:center; color:#51656e; display:flex; font-size:.78rem; font-weight:800; gap:.6rem; letter-spacing:.13em; text-transform:uppercase; }
.gk-model-brand::before { background:#ef5b24; border-radius:999px; content:""; height:.35rem; width:2.2rem; }
.gk-model-visual { background:linear-gradient(145deg,#fff 0%,#eef6f6 100%); border-radius:18px; min-height:31rem; padding:2rem; position:relative; }
.gk-model-visual img { height:28rem; object-fit:contain; width:100%; }
.gk-breadcrumb { color:#60737c; font-size:.82rem; padding:1rem 1.25rem 0; }
.gk-breadcrumb a { color:#315966; }
.gk-product-gallery { display:grid; gap:.75rem; grid-template-columns:4.5rem minmax(0,1fr); }
.gk-product-gallery-main { background:linear-gradient(145deg,#fff 0%,#eef6f6 100%); border-radius:18px; min-height:31rem; padding:2rem; position:relative; }
.gk-product-gallery-main img { height:28rem; object-fit:contain; transition:opacity .15s ease; width:100%; }
.gk-product-gallery.is-single { grid-template-columns:minmax(0,1fr); }
.gk-product-gallery-main.is-dark { background:#050505; }
.gk-gallery-thumb.is-dark { background:#050505; }
.gk-remeha-gallery .gk-product-gallery-main img { border-radius:12px; }
.gk-render-image { display:block; margin:0; overflow:hidden; position:relative; }
.gk-render-image::after { background:rgba(14,38,51,.58); border-radius:3px; bottom:.4rem; color:#fff; content:"renderafbeelding"; font-size:.58rem; font-weight:600; letter-spacing:.02em; line-height:1; padding:.24rem .32rem; position:absolute; right:.4rem; }
.gk-render-image img { display:block; height:auto; width:100%; }
.gk-gallery-thumbs { display:flex; flex-direction:column; gap:.65rem; }
.gk-gallery-thumb { background:#fff; border:2px solid #dbe7eb; border-radius:9px; cursor:pointer; padding:.25rem; }
.gk-gallery-thumb[aria-current="true"] { border-color:#168b85; }
.gk-gallery-thumb img { height:3.8rem; object-fit:contain; width:100%; }
.gk-render-label { bottom:.7rem; color:#73838a; font-size:.65rem; letter-spacing:.02em; position:absolute; right:.8rem; }
.gk-trust-row { display:grid; gap:.75rem; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:1.2rem; }
.gk-trust-item { align-items:center; color:#37535e; display:flex; font-size:.78rem; font-weight:700; gap:.45rem; }
.gk-trust-item::before { align-items:center; background:#168b85; border-radius:50%; color:#fff; content:"✓"; display:flex; flex:0 0 auto; font-size:.68rem; height:1.25rem; justify-content:center; width:1.25rem; }
.gk-model-cw { background:#168b85; border-radius:999px; color:#fff; font-size:.9rem; font-weight:800; padding:.55rem .85rem; position:absolute; right:1.25rem; top:1.25rem; }
.gk-model-highlights { display:grid; gap:.7rem; grid-template-columns:repeat(3,minmax(0,1fr)); margin:1.5rem 0; }
.gk-model-highlight { align-items:flex-start; background:#f3f8f8; border-radius:10px; display:flex; flex-direction:column; padding:.9rem; }
.gk-model-highlight strong { display:block; font-size:1.08rem; }
.gk-model-highlight span { color:#526771; font-size:.78rem; }
.gk-stat-svg { display:block; height:2rem; width:2rem; }
.gk-model-highlight>.gk-stat-svg,.gk-model-highlight>.gk-energy-label { flex:0 0 auto; margin-bottom:.55rem; }
.gk-stat-svg.is-water,.gk-stat-svg.is-cw { color:#168b85; fill:#168b85; }
.gk-stat-svg.is-flame { fill:#e84b18; }
.gk-energy-label { align-items:center; background:#168b85; clip-path:polygon(0 0,78% 0,100% 50%,78% 100%,0 100%); color:#fff!important; display:flex; font-size:1.05rem!important; font-weight:850; height:2rem; justify-content:center; padding-right:.25rem; width:2rem; }
.gk-variant-stats { display:grid; gap:.65rem; margin-top:1.25rem; }
.gk-variant-stat { align-items:center; color:#526771; display:grid; font-size:.85rem; gap:.55rem; grid-template-columns:1.9rem minmax(0,1fr); margin:0; }
.gk-variant-stats .gk-stat-svg { height:1.55rem; width:1.55rem; }
.gk-variant-stats b { color:#0b2838; font-weight:750; }
.gk-model-price { font-size:1.35rem; font-weight:800; margin:1.3rem 0 .2rem; }
.gk-model-price-note { color:#526771; font-size:.83rem; margin-top:0; }
.gk-tabs { border:1px solid #dbe7eb; border-radius:14px; overflow:hidden; }
.gk-tab-list { background:#f3f7f8; border-bottom:1px solid #dbe7eb; display:flex; overflow-x:auto; }
.gk-tab-button { background:transparent; border:0; border-bottom:3px solid transparent; color:#3e5661; cursor:pointer; flex:0 0 auto; font:inherit; font-weight:750; padding:1rem 1.25rem; }
.gk-tab-button[aria-selected="true"] { background:#fff; border-bottom-color:#168b85; color:#0e2633; }
.gk-tab-button:focus-visible { outline:3px solid rgba(22,139,133,.28); outline-offset:-3px; }
.gk-tab-panel { padding:2rem; }
.gk-tab-panel > :first-child { margin-top:0; }
.gk-tab-panel > :last-child { margin-bottom:0; }
.gk-model-specs { border-collapse:collapse; width:100%; }
.gk-model-specs th,.gk-model-specs td { border-bottom:1px solid #dbe7eb; padding:.8rem .5rem; text-align:left; }
.gk-model-specs th { color:#526771; font-weight:650; width:48%; }
.gk-option-cards { display:grid; gap:1rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.gk-option-card { border:1px solid #dbe7eb; border-radius:12px; display:grid; grid-template-columns:8rem 1fr; overflow:hidden; }
.gk-option-card img { background:#f7fafb; height:100%; min-height:11rem; object-fit:contain; width:100%; }
.gk-option-card-copy { padding:1.2rem; }
.gk-option-card-copy h3 { margin:.1rem 0 .45rem; }

.gk-remeha-thermostat-grid { display:grid; gap:1.5rem; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:1.5rem; }
.gk-remeha-thermostat-card { background:#fff; border:1px solid #dbe7eb; border-radius:12px; display:grid; grid-template-rows:230px 1fr; overflow:hidden; }
.gk-remeha-universal-card { grid-template-columns:minmax(300px,42%) 1fr; grid-template-rows:1fr; margin-top:1.5rem; }
.gk-remeha-thermostat-image,.gk-remeha-universal-collage { align-items:center; background:#f2f7f9; display:flex; justify-content:center; padding:1.25rem; }
.gk-remeha-thermostat-image img { height:100%; object-fit:contain; width:100%; }
.gk-remeha-universal-collage { display:grid; gap:.65rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
.gk-remeha-universal-collage img { height:135px; object-fit:contain; width:100%; }
.gk-remeha-thermostat-body { display:flex; flex-direction:column; padding:1.6rem; }
.gk-remeha-thermostat-body h3 { margin:.1rem 0 .7rem; }
.gk-remeha-thermostat-body p:not(.gk-kicker) { color:#5f707b; margin-top:0; }
.gk-remeha-thermostat-body a { color:#ed6b2d; font-weight:750; margin-top:auto; padding-top:1.25rem; text-decoration:none; }
.gk-remeha-thermostat-body a:hover { text-decoration:underline; }
.gk-model-lifestyle { border-radius:16px; max-height:34rem; object-fit:cover; width:100%; }
.gk-variant-grid { display:grid; gap:.85rem; grid-template-columns:repeat(4,minmax(0,1fr)); }
.gk-variant-card { border:1px solid #dbe7eb; border-radius:11px; color:#0e2633; display:flex; flex-direction:column; min-height:9rem; padding:1rem; text-decoration:none; }
.gk-variant-card:hover,.gk-variant-card.is-current { background:#e9f6f4; border-color:#168b85; }
.gk-variant-card > strong { font-size:1.02rem; }
.gk-variant-card > .gk-variant-stats { margin-top:1.25rem; }
.gk-variant-card .gk-variant-stat { color:#526771; font-weight:400; }
.gk-intergas-bottom-cta { background:#f3f8f8; border:1px solid #dbe7eb; border-radius:14px; box-sizing:border-box; margin:0 auto 4.5rem; max-width:1078px; padding:1.6rem 1.75rem; width:calc(100% - 2.5rem); }
.gk-intergas-bottom-cta h2 { margin:0 0 .45rem; }
.gk-intergas-bottom-cta > p:not(.gk-intergas-bottom-cta-note) { color:#526771; margin:.25rem 0 0; }
.gk-intergas-bottom-cta .gk-boiler-cart-action { margin-top:1.15rem; }
.gk-intergas-bottom-cta-note { color:#6b7c84; font-size:.72rem; line-height:1.5; margin:.85rem 0 0; }
.gk-variant-card small { color:#526771; margin-top:auto; }
.gk-thermostat-guide { display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); margin-bottom:1.2rem; }
.gk-thermostat-guide article { background:#f3f8f8; border-radius:12px; padding:1.2rem; }
.gk-thermostat-guide strong,.gk-thermostat-guide span { display:block; }
.gk-thermostat-guide strong { color:#0e2633; margin-bottom:.35rem; }
.gk-thermostat-guide span { color:#526771; font-size:.9rem; }
.gk-thermostat-note { background:#fff8e8; border-left:4px solid #ef6a2c; border-radius:7px; margin:0 0 1.8rem; padding:1rem 1.15rem; }
.gk-thermostat-filters { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:2rem; }
.gk-thermostat-filters button { background:#fff; border:1px solid #cbdcdf; border-radius:999px; color:#264550; cursor:pointer; font:inherit; font-size:.86rem; font-weight:750; padding:.58rem .9rem; }
.gk-thermostat-filters button:hover,.gk-thermostat-filters button.is-active { background:#168b85; border-color:#168b85; color:#fff; }
.gk-thermostat-filters button:focus-visible { outline:3px solid rgba(22,139,133,.25); outline-offset:2px; }
.gk-filter-result { color:#60737c; font-size:.82rem; font-weight:700; margin:.8rem 0 1.3rem; }
.gk-thermostat-grid { display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
.gk-thermostat-card { background:#fff; border:1px solid #dbe7eb; border-radius:15px; display:flex; flex-direction:column; min-width:0; overflow:hidden; position:relative; transition:box-shadow .16s ease,transform .16s ease,border-color .16s ease; }
.gk-thermostat-card:hover { border-color:#9cc8c5; box-shadow:0 14px 34px rgba(14,38,51,.1); transform:translateY(-3px); }
.gk-thermostat-card[hidden] { display:none; }
.gk-thermostat-card-link { inset:0; position:absolute; z-index:2; }
.gk-thermostat-card-brand { color:#60737c; font-size:.72rem; font-weight:800; letter-spacing:.09em; padding:1rem 1.2rem 0; text-transform:uppercase; }
.gk-thermostat-card-image { align-items:center; background:linear-gradient(145deg,#fff 0%,#eef6f6 100%); display:flex; height:13.5rem; justify-content:center; margin:.8rem 1.2rem 0; overflow:hidden; padding:.8rem; }
.gk-thermostat-card-image img { height:100%; object-fit:contain; width:100%; }
.gk-thermostat-card-copy { display:flex; flex:1; flex-direction:column; padding:1.25rem; }
.gk-thermostat-card-copy h2 { font-size:1.27rem; line-height:1.18; margin:.65rem 0 .35rem; }
.gk-thermostat-card-copy h3 { font-size:.98rem; line-height:1.35; margin:0 0 .55rem; }
.gk-thermostat-card-copy > p { color:#526771; font-size:.9rem; margin:.1rem 0 1rem; }
.gk-thermostat-card-copy .gk-thermostat-status,.gk-thermostat-status { background:#fff5da; border-radius:6px; color:#73520a; font-size:.76rem; font-weight:750; padding:.55rem .7rem; }
.gk-thermostat-labels { display:flex; flex-wrap:wrap; gap:.35rem; }
.gk-thermostat-labels span { background:#e9f6f4; border-radius:999px; color:#0f6e69; font-size:.68rem; font-weight:800; padding:.35rem .55rem; }
.gk-thermostat-fit { border-top:1px solid #e0e9ec; display:flex; flex-direction:column; margin-top:auto; padding-top:.9rem; }
.gk-thermostat-fit small,.gk-thermostat-product-body aside small { color:#60737c; font-size:.68rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.gk-thermostat-fit strong { font-size:.82rem; line-height:1.35; margin-top:.2rem; }
.gk-thermostat-card-cta { color:#ef5b24; font-size:.84rem; font-weight:800; margin-top:1rem; }
.gk-thermostat-product { background:#fff; }
.gk-thermostat-product-hero { align-items:center; display:grid; gap:4rem; grid-template-columns:minmax(0,1fr) minmax(0,1fr); margin:auto; max-width:1180px; padding:3rem 1.25rem 4rem; }
.gk-thermostat-product-image { align-items:center; background:linear-gradient(145deg,#fff 0%,#eef6f6 100%); border-radius:18px; display:flex; justify-content:center; min-height:31rem; padding:2rem; }
.gk-thermostat-product-image img { height:27rem; object-fit:contain; width:100%; }
.gk-thermostat-product-image .gk-thermostat-gallery { width:100%; }
.gk-thermostat-product-image .gk-product-gallery-main { min-height:27rem; padding:0; }
.gk-thermostat-product-image .gk-product-gallery-main img { height:27rem; }
.gk-thermostat-product-image .gk-gallery-thumb { background:#fff; }
.gk-thermostat-product-copy h1 { font-size:clamp(2rem,4vw,3.1rem); line-height:1.08; margin:.8rem 0; }
.gk-thermostat-lead { color:#234651; font-size:1.25rem; font-weight:700; }
.gk-thermostat-product-copy .gk-thermostat-labels { margin:1.2rem 0; }
.gk-thermostat-product-copy > p:not(.gk-model-brand):not(.gk-thermostat-lead) { color:#526771; max-width:38rem; }
.gk-thermostat-product-body { display:grid; gap:2rem; grid-template-columns:1.3fr .7fr; margin:auto; max-width:1080px; padding:4rem 1.25rem; }
.gk-thermostat-product-body aside { background:#e9f6f4; border-radius:14px; padding:1.6rem; }
.gk-thermostat-product-body aside h2 { font-size:1.2rem; margin:.4rem 0 0; }
.gk-thermostat-compatibility { background:#f3f7f8; margin:0; padding:4rem max(1.25rem,calc((100% - 1055px)/2)); }
.gk-thermostat-compatibility p { max-width:53rem; }
.gk-thermostat-source { margin:auto; max-width:1080px; padding:3.5rem 1.25rem; }
.gk-thermostat-source h2 { font-size:1.35rem; }
.gk-thermostat-product .gk-bottom-cta { align-items:center; background:#0e2633; color:#fff; display:flex; gap:2rem; justify-content:space-between; margin:0; padding:3rem max(1.25rem,calc((100% - 1055px)/2)); }
.gk-thermostat-product .gk-bottom-cta h2 { color:#fff; margin:0 0 .35rem; }
.gk-thermostat-product .gk-bottom-cta p { margin:0; opacity:.82; }
.gk-radiator-calculator { background:#fff; border:1px solid #d9e5e8; border-radius:16px; box-shadow:0 12px 34px rgba(14,38,51,.08); overflow:hidden; }
.gk-calculator-progress { background:#f4f8f9; border-bottom:1px solid #d9e5e8; padding:1.15rem 2rem; }
.gk-calculator-progress ol { counter-reset:gk-calc-step; display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; margin:0; padding:0; }
.gk-calculator-progress li { color:#667982; font-size:.82rem; font-weight:800; position:relative; }
.gk-calculator-progress li::before { align-items:center; background:#dfe8ea; border-radius:50%; color:#526771; content:counter(gk-calc-step); counter-increment:gk-calc-step; display:inline-flex; height:1.75rem; justify-content:center; margin-right:.5rem; width:1.75rem; }
.gk-calculator-progress li.is-current { color:#0e2633; }
.gk-calculator-progress li.is-current::before,.gk-calculator-progress li.is-complete::before { background:#168b85; color:#fff; }
.gk-calculator-progress li.is-complete::before { content:"\2713"; }
.gk-calculator-form { padding:2rem; }
.gk-calculator-form fieldset { border:0; border-top:1px solid #e2eaec; margin:0 0 1.8rem; padding:1.5rem 0 0; }
.gk-calculator-form fieldset:first-child { border-top:0; padding-top:0; }
.gk-calculator-form legend { color:#0e2633; font-size:1.25rem; font-weight:800; padding:0 .5rem 0 0; }
.gk-calculator-grid { display:grid; gap:1rem 1.25rem; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:1rem; }
.gk-calculator-grid label { color:#173744; display:grid; font-size:.87rem; font-weight:750; gap:.35rem; position:relative; }
.gk-calculator-grid input,.gk-calculator-grid select { background:#fff; border:1px solid #bccdd2; border-radius:8px; color:#0e2633; font:inherit; min-height:3rem; padding:.65rem .8rem; width:100%; }
.gk-calculator-grid label > span { color:#60737c; font-size:.75rem; font-weight:600; }
.gk-form-help { color:#526771; font-size:.86rem; margin:.9rem 0 0; max-width:50rem; }
.gk-calculator-nav { align-items:center; display:flex; gap:1rem; justify-content:space-between; margin-top:1.5rem; }
.gk-calculator-next,.gk-calculator-back { border-radius:8px; cursor:pointer; font:inherit; font-weight:800; padding:.82rem 1.15rem; }
.gk-calculator-next { background:#0e2633; border:1px solid #0e2633; color:#fff; }
.gk-calculator-back { background:#fff; border:1px solid #aebfc5; color:#173744; }
.gk-calculator-submit { background:#ef6b2e; border:0; border-radius:8px; color:#fff; cursor:pointer; font-size:1rem; font-weight:800; padding:.9rem 1.35rem; }
.gk-calculator-submit:hover { background:#d95720; }
.gk-calculator-result { background:#eef8f7; border-top:1px solid #cfe3e1; padding:2rem; scroll-margin-top:8rem; }
.gk-calculator-result h2 { margin:.3rem 0 .5rem; }
.gk-calculation-breakdown { background:#fff; border:1px solid #cfe0e3; border-radius:10px; margin:1.3rem 0; padding:1.25rem; }
.gk-calculation-breakdown h3 { font-size:1.05rem; margin:0 0 .9rem; }
.gk-breakdown-help { color:#60737c; font-size:.82rem; margin:-.35rem 0 1rem; }
.gk-calculation-breakdown ol { counter-reset:gk-breakdown; display:grid; gap:.55rem; list-style:none; margin:0; padding:0; }
.gk-calculation-breakdown li { align-items:flex-start; counter-increment:gk-breakdown; display:grid; gap:.65rem; grid-template-columns:1.6rem minmax(0,1fr); }
.gk-calculation-breakdown li::before { align-items:center; background:#e6f5f3; border-radius:50%; color:#0f736d; content:counter(gk-breakdown); display:flex; font-size:.7rem; font-weight:800; height:1.45rem; justify-content:center; margin-top:.1rem; width:1.45rem; }
.gk-calculation-breakdown li span { align-items:baseline; display:flex; gap:.45rem 1rem; justify-content:space-between; }
.gk-calculation-breakdown li strong { font-size:.86rem; }
.gk-calculation-breakdown li small { color:#60737c; font-size:.78rem; text-align:right; }
.gk-breakdown-edit { align-items:end; display:grid; gap:.6rem; grid-template-columns:minmax(0,1fr) auto; width:100%; }
.gk-breakdown-edit-two { grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; }
.gk-breakdown-control { color:#173744; display:grid; font-size:.75rem; font-weight:700; gap:.2rem; }
.gk-breakdown-control select { background:#fff; border:1px solid #bccdd2; border-radius:7px; color:#0e2633; font:inherit; min-height:2.5rem; padding:.45rem .6rem; width:100%; }
.gk-calculation-breakdown > p { align-items:center; border-top:1px solid #e0e9ec; display:flex; justify-content:space-between; margin:.9rem 0 0; padding-top:.75rem; }
.gk-calculation-breakdown > p + p { border-top:0; color:#0f736d; margin-top:0; padding-top:.25rem; }
.gk-calculator-brand { align-items:center; border-bottom:1px solid #cfe0e3; display:flex; justify-content:space-between; margin:-.25rem 0 1.2rem; padding-bottom:.75rem; }
.gk-calculator-brand strong { color:#0e2633; font-size:1.05rem; letter-spacing:-.02em; }
.gk-calculator-brand img { height:auto; width:10rem; }
.gk-calculator-brand span { color:#0f736d; font-size:.72rem; font-weight:800; letter-spacing:.08em; line-height:1.45; text-align:right; text-transform:uppercase; }
.gk-radiator-results { display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); margin:1.5rem 0; }
.gk-radiator-results article { background:#fff; border:1px solid #cfe0e3; border-radius:10px; padding:1.2rem; }
.gk-radiator-results article > span { background:#e6f5f3; border-radius:999px; color:#0f736d; display:inline-block; font-size:.76rem; font-weight:800; padding:.3rem .55rem; }
.gk-radiator-results h3 { font-size:1.05rem; margin:.8rem 0; }
.gk-radiator-results p { margin:.35rem 0; }
.gk-radiator-output-lines { display:grid; gap:.2rem; }
.gk-radiator-output-lines small { color:#526d77; display:block; font-size:.76rem; }
.gk-radiator-output-lines strong { color:#0e2633; display:block; font-size:.88rem; }
.gk-radiator-results small,.gk-calculator-source { color:#60737c; }
.gk-calculator-notice { background:#fff3d9; border-radius:8px; color:#5c470e; margin:1.25rem 0; padding:1rem; }
.gk-calculator-context { background:#fff; border-left:4px solid #168b85; color:#415a64; margin:1rem 0; padding:.75rem 1rem; }
.gk-regime-explanation { background:#fff; border:1px solid #cfe0e3; border-radius:8px; color:#314e59; line-height:1.55; margin:1rem 0; padding:1rem; }
.gk-responsibility-note { border-top:1px solid #cddde1; color:#5b6f78; font-size:.78rem; line-height:1.55; margin:1.15rem 0 0; padding-top:.85rem; }
.gk-bottom-cta .gk-responsibility-note { border-top-color:rgba(14,38,51,.15); margin-top:1.15rem; max-width:62rem; }
.gk-calculator-placement { background:#fff; border:1px solid #cfe0e3; border-radius:8px; color:#314e59; margin:1.25rem 0; padding:1rem; }
.gk-manual-mixer { background:#fff; border:1px solid #cfe0e3; border-radius:10px; margin:1.25rem 0; padding:1.25rem; }
.gk-manual-mixer h3 { margin-top:0; }
.gk-manual-grid { display:grid; gap:.8rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
.gk-manual-grid article { background:#f7fafb; border:1px solid #dbe7eb; border-radius:9px; padding:1rem; }
.gk-manual-grid h4 { margin:0 0 .7rem; }
.gk-manual-fields { display:grid; gap:.55rem; }
.gk-manual-fields label { color:#173744; display:grid; font-size:.75rem; font-weight:700; gap:.2rem; }
.gk-manual-fields select { background:#fff; border:1px solid #bccdd2; border-radius:7px; color:#0e2633; min-height:2.55rem; padding:.45rem .55rem; width:100%; }
.gk-manual-grid article > p { margin:.75rem 0 0; }
.gk-manual-total { align-items:center; border-top:1px solid #dbe7eb; display:flex; justify-content:space-between; margin:1rem 0 0; padding-top:1rem; }
.gk-manual-balance { background:#fff3d9; border-radius:7px; color:#5c470e; margin:.7rem 0 0; padding:.75rem; }
.gk-manual-balance.is-enough { background:#e8f6f1; color:#145b49; }
.gk-calculator-actions { align-items:center; display:flex; flex-wrap:wrap; gap:.7rem; margin-top:1rem; }
.gk-calculator-share,.gk-calculator-restart { border-radius:8px; cursor:pointer; font:inherit; font-weight:800; padding:.9rem 1.1rem; }
.gk-calculator-share { background:#168b85; border:1px solid #168b85; color:#fff; }
.gk-calculator-restart { background:#fff; border:1px solid #aebfc5; color:#173744; }
.gk-share-status { color:#405b65; font-size:.82rem; margin:.65rem 0 0; }
.gk-calculator-source { font-size:.8rem; margin-bottom:0; }
.gk-calculator-copyright { border:1px dashed #a8c4c8; color:#526d77; font-size:.72rem; font-weight:700; margin:1rem 0 0; padding:.55rem .7rem; }
.gk-calculator-actions { margin:1.4rem 0 0; }
.gk-calculator-actions .gk-calculator-submit { display:inline-block; text-decoration:none; }
.gk-calculator-expert { border-left:5px solid #15988f; }
.gk-calculator-method { margin-top:1.25rem; }
.gk-boiler-route { align-items:stretch; background:#fff; border:1px solid #d7e5e8; border-radius:16px; box-shadow:0 12px 34px rgba(14,38,51,.07); display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)) auto; margin:-2rem auto 0; max-width:1120px; padding:1.2rem; position:relative; z-index:2; }
.gk-boiler-route > div { display:grid; gap:.2rem; grid-template-columns:2rem minmax(0,1fr); padding:.35rem; }
.gk-boiler-route > div > span { align-items:center; background:#e6f5f3; border-radius:50%; color:#0f736d; display:flex; font-size:.78rem; font-weight:800; grid-row:1/3; height:1.75rem; justify-content:center; width:1.75rem; }
.gk-boiler-route strong { font-size:.84rem; }
.gk-boiler-route small { color:#60737c; font-size:.7rem; line-height:1.35; }
.gk-boiler-route > a { align-items:center; align-self:center; background:#ef6b2e; border-radius:8px; color:#fff; display:flex; font-size:.82rem; font-weight:800; justify-content:center; padding:.85rem 1rem; text-decoration:none; }
.gk-component-intro { align-items:center; display:grid; gap:2rem; grid-template-columns:minmax(0,1fr) minmax(15rem,.35fr); margin-bottom:2.5rem; }
.gk-component-intro aside { background:#e9f6f4; border-radius:12px; display:grid; gap:.35rem; padding:1.25rem; }
.gk-component-intro aside span { color:#526771; font-size:.82rem; line-height:1.5; }
.gk-component-grid { display:grid; gap:1rem; grid-template-columns:repeat(2,minmax(0,1fr)); margin:1rem 0 2.8rem; }
.gk-component-card { align-items:flex-start; background:#fff; border:1px solid #d5e3e6; border-radius:14px; display:grid; gap:.9rem 1rem; grid-template-columns:3rem minmax(0,1fr); padding:1.25rem; }
.gk-component-card .gk-service-icon { grid-row:1/3; }
.gk-component-card h3 { font-size:1.08rem; margin:.15rem 0 .4rem; }
.gk-component-card p:not(.gk-component-brand) { color:#526771; font-size:.86rem; line-height:1.5; margin:.2rem 0 .55rem; }
.gk-component-brand { color:#0f736d; font-size:.68rem; font-weight:800; letter-spacing:.07em; margin:0; text-transform:uppercase; }
.gk-component-card small { color:#60737c; font-size:.72rem; }
.gk-component-price { color:#0f736d !important; font-size:1rem !important; font-weight:800; }
.gk-component-card > button { background:#0e2633; border:0; border-radius:8px; color:#fff; cursor:pointer; font:inherit; font-size:.78rem; font-weight:800; grid-column:2; justify-self:start; padding:.72rem .85rem; }
.gk-component-feature { background:linear-gradient(135deg,#e9f6f4,#f7fafb); border:1px solid #c8e0df; border-radius:14px; display:grid; gap:.55rem; margin:1rem 0 2rem; padding:1.3rem; }
.gk-component-feature h3,.gk-component-feature p { margin:0; }
.gk-component-included { color:#0f736d; font-size:.78rem; font-weight:800; }
.gk-option-placeholder-page > section { align-items:center; display:grid; gap:2.5rem; grid-template-columns:minmax(240px,.7fr) minmax(0,1fr); margin-top:2rem; }
.gk-option-placeholder-page > section > div:first-child { align-items:center; background:#f2f7f9; border-radius:14px; display:flex; justify-content:center; min-height:320px; padding:2rem; }
.gk-option-placeholder-page > section img { height:auto; max-height:240px; max-width:100%; width:280px; }
.gk-option-placeholder-page .gk-mvp-note { margin:1.25rem 0; }
.gk-radiator-focus { align-items:center; background:linear-gradient(135deg,#eef8f7,#f7fafb); border:1px solid #cfe2e3; border-radius:18px; display:grid; gap:2.5rem; grid-template-columns:minmax(0,1.4fr) minmax(16rem,.6fr); margin-bottom:2.5rem; padding:2.2rem; }
.gk-radiator-focus h2 { margin:.25rem 0 .7rem; }
.gk-radiator-focus-facts { background:#fff; border-radius:12px; display:grid; gap:.2rem; padding:1.25rem; }
.gk-radiator-focus-facts strong { color:#0e2633; margin-top:.55rem; }
.gk-radiator-focus-facts span { color:#60737c; font-size:.82rem; }
.gk-catalog-filters { background:#f4f8f9; border:1px solid #d6e4e7; border-radius:14px; display:grid; gap:1rem; grid-template-columns:repeat(4,minmax(0,1fr)); margin:1.5rem 0 1rem; padding:1.25rem; }
.gk-catalog-price-note { background:#e9f6f4; border-left:4px solid #168b85; border-radius:8px; display:grid; gap:.25rem; margin:1.25rem 0; padding:1rem 1.15rem; }
.gk-catalog-price-note span { color:#526771; font-size:.82rem; }
.gk-catalog-filters label { color:#173744; display:grid; font-size:.8rem; font-weight:800; gap:.35rem; }
.gk-catalog-filters select,.gk-catalog-filters input { background:#fff; border:1px solid #b9ccd1; border-radius:8px; color:#0e2633; font:inherit; min-height:3rem; padding:.65rem .75rem; width:100%; }
.gk-catalog-filters span { color:#60737c; font-size:.7rem; font-weight:600; }
.gk-catalog-toolbar { align-items:center; display:flex; justify-content:space-between; margin:1rem 0; }
.gk-catalog-toolbar button { background:transparent; border:0; color:#0f736d; cursor:pointer; font:inherit; font-size:.82rem; font-weight:800; }
.gk-radiator-list { display:grid; gap:.75rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.gk-radiator-item { align-items:center; background:#fff; border:1px solid #d3e1e4; border-radius:12px; display:flex; gap:1rem; justify-content:space-between; padding:1.05rem; }
.gk-radiator-item h3 { font-size:1.05rem; margin:.55rem 0 .25rem; }
.gk-radiator-item p { margin:.2rem 0; }
.gk-radiator-item .gk-radiator-price { color:#0f736d; font-size:1.05rem; margin:.55rem 0 .35rem; }
.gk-radiator-item small { color:#60737c; display:block; font-size:.72rem; }
.gk-radiator-item button,.gk-show-more,.gk-radiator-results article button,.gk-manual-grid article button { background:#ef6b2e; border:0; border-radius:8px; color:#fff; cursor:pointer; flex:0 0 auto; font:inherit; font-size:.78rem; font-weight:800; padding:.75rem .85rem; }
.gk-show-more { display:block; margin:1.2rem auto 0; }
.gk-catalog-empty { background:#fff3d9; border-radius:8px; color:#5c470e; grid-column:1/-1; padding:1rem; }
.gk-quote-basket-section { background:#eef8f7; border:1px solid #cfe2e3; border-radius:16px; display:grid; gap:2rem; grid-template-columns:minmax(13rem,.45fr) minmax(0,1fr); margin:3rem 0; padding:2rem; scroll-margin-top:8rem; }
.gk-quote-basket-section h2 { margin:.2rem 0 .5rem; }
.gk-quote-basket { background:#fff; border-radius:12px; padding:1rem; }
.gk-basket-empty { color:#526771; display:grid; gap:.3rem; padding:.6rem; }
.gk-basket-empty strong { color:#0e2633; }
.gk-basket-lines { display:grid; gap:.7rem; list-style:none; margin:0; padding:0; }
.gk-basket-lines li { align-items:center; border-bottom:1px solid #dce7e9; display:grid; gap:.75rem; grid-template-columns:minmax(0,1fr) 5rem auto; padding:0 0 .75rem; }
.gk-basket-lines li > div { display:grid; gap:.2rem; }
.gk-basket-lines span { color:#60737c; font-size:.75rem; }
.gk-valve-choice { color:#173744; display:grid; font-size:.75rem; font-weight:800; gap:.3rem; margin-top:.65rem; max-width:30rem; }
.gk-valve-choice select { background:#fff; border:1px solid #9fb9c0; border-radius:8px; color:#0e2633; font:inherit; min-height:2.75rem; padding:.55rem .7rem; width:100%; }
.gk-valve-choice small { color:#60737c; font-size:.68rem; font-weight:500; }
.gk-radiator-rooms { background:#f7fafb; border:1px solid #dbe7eb; border-radius:9px; display:grid; gap:.55rem; margin-top:.8rem; padding:.8rem; }
.gk-radiator-rooms > p { color:#173744; font-size:.76rem; font-weight:800; margin:0; }
.gk-radiator-room { align-items:end; display:grid; gap:.55rem; grid-template-columns:4.5rem minmax(9rem,.75fr) minmax(11rem,1fr); }
.gk-radiator-room > strong { align-self:center; font-size:.72rem; }
.gk-radiator-room label { color:#526771; display:grid; font-size:.68rem; font-weight:700; gap:.2rem; }
.gk-radiator-room select,.gk-radiator-room input { background:#fff; border:1px solid #b9ccd1; border-radius:7px; box-sizing:border-box; color:#0e2633; font:inherit; min-height:2.55rem; padding:.45rem .55rem; width:100%; }
.gk-radiator-room label small { display:inline; font-size:.62rem; font-weight:500; }
.gk-valve-set-summary { background:#f4f8f9; border:1px solid #d6e4e7; border-radius:10px; display:grid; gap:.55rem; margin-bottom:1.1rem; padding:1rem; }
.gk-valve-set-summary h3 { font-size:1rem; margin:0 0 .2rem; }
.gk-valve-set-summary div { display:grid; gap:.1rem; }
.gk-valve-set-summary div span,.gk-valve-set-summary small { color:#60737c; font-size:.74rem; line-height:1.45; }
.gk-basket-lines label { color:#526771; display:grid; font-size:.7rem; font-weight:700; gap:.2rem; }
.gk-basket-lines input { border:1px solid #b9ccd1; border-radius:7px; min-height:2.4rem; padding:.4rem; width:100%; }
.gk-basket-lines button { background:transparent; border:0; color:#a33b18; cursor:pointer; font:inherit; font-size:.72rem; font-weight:800; }
.gk-boiler-basket-line { align-items:center; background:#eef8f7; border:1px solid #cfe2e3; border-radius:10px; display:flex; gap:1rem; justify-content:space-between; margin-bottom:1rem; padding:1rem; }
.gk-boiler-basket-line > div { display:grid; gap:.2rem; }
.gk-boiler-basket-line span,.gk-boiler-basket-line small { color:#60737c; font-size:.75rem; }
.gk-boiler-basket-line button { background:transparent; border:0; color:#a33b18; cursor:pointer; flex:0 0 auto; font:inherit; font-size:.72rem; font-weight:800; }
.gk-boiler-config { border:1px solid #d6e4e7; border-radius:12px; display:grid; gap:1rem; margin:1rem 0 1.25rem; padding:1rem; }
.gk-boiler-config h3,.gk-boiler-config h4 { margin:0; }
.gk-boiler-config-intro { color:#526771; font-size:.82rem; line-height:1.55; margin:0; }
.gk-standard-package { background:#f4f8f9; border-radius:9px; padding:1rem; }
.gk-standard-package ul { columns:2; font-size:.78rem; line-height:1.55; margin:.6rem 0 0; padding-left:1.2rem; }
.gk-option-list { display:grid; gap:.55rem; }
.gk-option-choice { align-items:flex-start; border:1px solid #d6e4e7; border-radius:9px; cursor:pointer; display:flex; gap:.7rem; padding:.75rem; }
.gk-option-choice:has(input:checked) { background:#e9f6f4; border-color:#168b85; }
.gk-option-choice input { margin-top:.22rem; }
.gk-option-choice span { display:grid; flex:1; font-size:.8rem; gap:.1rem; }
.gk-option-choice small { color:#60737c; }
.gk-option-choice em { color:#0f736d; font-style:normal; font-weight:800; white-space:nowrap; }
.gk-option-choice > label { align-items:center; cursor:pointer; display:flex; flex:1; gap:.8rem; min-width:0; }
.gk-option-image { background:#f3f7f8; border-radius:7px; flex:0 0 74px; height:64px; object-fit:contain; padding:.25rem; width:74px; }
.gk-option-link { color:#0f736d; font-size:.74rem; font-weight:800; margin-top:.25rem; width:max-content; }
.gk-universal-thermostat-info { background:#f3f7f8; border-left:4px solid #168b85; border-radius:8px; display:grid; gap:.35rem; margin-top:.8rem; padding:1rem; }
.gk-universal-thermostat-info span { color:#526771; font-size:.8rem; line-height:1.55; }
.gk-universal-thermostat-info a { color:#0f736d; font-size:.76rem; font-weight:800; margin-top:.2rem; width:max-content; }
.gk-extra-work { display:grid; gap:.55rem; grid-template-columns:1fr; }
.gk-option-main { display:grid; flex:1; gap:.18rem; min-width:0; }
.gk-option-main small { color:#60737c; font-size:.8rem; }
.gk-color-choices { display:flex; flex-wrap:wrap; gap:.55rem 1.2rem; margin:.45rem 0 .2rem; }
.gk-color-choices label { align-items:center; cursor:pointer; display:flex; font-size:.8rem; font-weight:750; gap:.3rem; }
.gk-color-choices input { margin:0; }
.gk-two-way-section { border-bottom:1px solid #dce7e9; border-top:1px solid #dce7e9; padding:1rem 0; }
.gk-boiler-note { display:grid; font-size:.78rem; font-weight:700; gap:.3rem; }
.gk-boiler-note > span { color:#526771; font-weight:400; line-height:1.55; }
.gk-boiler-note input,.gk-boiler-note textarea { border:1px solid #9fb9c0; border-radius:8px; font:inherit; min-height:2.75rem; padding:.7rem; resize:vertical; }
.gk-priced-options { background:#fff8ed; border-left:4px solid #ef6b2e; border-radius:8px; color:#526771; display:grid; font-size:.78rem; gap:.2rem; padding:.85rem 1rem; }
.gk-priced-options strong { color:#0e2633; }
.gk-cart-continue { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1rem; }
.gk-cart-continue a { border:1px solid #168b85; border-radius:8px; color:#0f736d; font-size:.8rem; font-weight:800; padding:.65rem .8rem; text-decoration:none; }
.gk-cart-continue a:hover { background:#e9f6f4; }
.gk-installation-choice { border:0; display:flex; flex-wrap:wrap; gap:.5rem 1rem; margin:1rem 0 0; padding:0; }
.gk-installation-choice legend { font-size:.82rem; font-weight:800; margin-bottom:.45rem; width:100%; }
.gk-installation-choice label { font-size:.82rem; }
.gk-basket-note { color:#60737c; font-size:.75rem; }
.gk-basket-total { align-items:center; border-top:2px solid #cfe2e3; display:flex; justify-content:space-between; margin:1rem 0 .5rem; padding-top:.8rem; }
.gk-basket-total strong { color:#0f736d; font-size:1.15rem; }
.gk-basket-actions { display:flex; flex-wrap:wrap; gap:.65rem; }
.gk-basket-actions button { background:#0e2633; border:0; border-radius:8px; color:#fff; cursor:pointer; font:inherit; font-weight:800; padding:.8rem 1rem; }
.gk-basket-actions button.is-whatsapp { background:#168b85; }
.gk-component-cart-link { align-items:center; background:#ef6b2e; border-radius:8px; color:#fff; display:inline-flex; font-weight:800; justify-content:center; padding:.8rem 1rem; text-decoration:none; }
.gk-component-basket { border-top:1px solid #dce7e9; display:grid; gap:.7rem; margin-top:1rem; padding-top:1rem; }
.gk-component-basket h3 { font-size:1rem; margin:0; }
.gk-component-basket-line { align-items:center; display:grid; gap:.7rem; grid-template-columns:minmax(0,1fr) 5rem auto; }
.gk-component-basket-line > div { display:grid; gap:.15rem; }
.gk-component-basket-line span,.gk-component-basket-line small { color:#60737c; font-size:.74rem; }
.gk-component-basket-line label { color:#526771; display:grid; font-size:.7rem; font-weight:700; gap:.2rem; }
.gk-component-basket-line input { border:1px solid #b9ccd1; border-radius:7px; min-height:2.4rem; padding:.4rem; width:100%; }
.gk-component-basket-line button { background:transparent; border:0; color:#a33b18; cursor:pointer; font:inherit; font-size:.72rem; font-weight:800; }
.gk-request-section { grid-template-columns:1fr; }
.gk-request-section > div:first-child { max-width:52rem; }
.gk-radiator-request { border:1px solid #d6e4e7; border-radius:12px; overflow:hidden; }
.gk-radiator-request form { padding:1.5rem; }
.gk-request-step { border:0; margin:0; min-width:0; padding:0; }
.gk-request-step legend { color:#0e2633; font-size:clamp(1.2rem,3vw,1.65rem); font-weight:800; line-height:1.2; padding:0; }
.gk-package-notice,.gk-nonbinding-notice { background:#e9f6f4; border-left:4px solid #168b85; border-radius:8px; display:grid; gap:.25rem; margin:1.25rem 0; padding:1rem 1.1rem; }
.gk-package-notice span,.gk-nonbinding-notice span { color:#405b65; font-size:.84rem; line-height:1.55; }
.gk-nonbinding-notice { background:#eef8f7; }
.gk-radiator-photo-grid { display:grid; gap:.85rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.gk-radiator-photo-slot { background:#f7fafb; border:2px dashed #b9cdd3; border-radius:11px; cursor:pointer; display:flex; flex-direction:column; min-width:0; padding:1rem; }
.gk-radiator-photo-slot > span { color:#526771; font-size:.76rem; line-height:1.4; margin:.2rem 0 .8rem; }
.gk-radiator-photo-slot input { max-width:100%; }
.gk-radiator-photo-slot small { color:#60737c; display:block; font-size:.7rem; margin-top:.55rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.gk-radiator-photo-slot small.is-error { color:#a33b18; font-weight:750; }
.gk-form-field-wide { grid-column:1/-1; }
.gk-form-fields textarea { border:1px solid #aabdc5; border-radius:8px; box-sizing:border-box; font:inherit; padding:.65rem .75rem; resize:vertical; width:100%; }
.gk-form-fields textarea:focus { border-color:#168b85; box-shadow:0 0 0 3px rgba(22,139,133,.16); outline:0; }
.gk-request-summary { background:#f4f8f9; border-radius:9px; color:#526771; margin-top:1rem; padding:1rem; }
.gk-request-summary h3 { color:#0e2633; font-size:1rem; margin:0 0 .35rem; }
.gk-request-summary p { font-size:.8rem; margin:.25rem 0; }
.gk-radiator-request .gk-form-consent { margin-top:1rem; }
.gk-radiator-request .gk-form-result { margin:1rem 0 0; }
.gk-radiator-request .gk-form-finish { background:#ef6b2e; color:#fff; cursor:pointer; }
.gk-radiator-request .gk-form-finish:disabled { background:#cbd7da; color:#526771; cursor:wait; }
.gk-calculator-basket { margin-top:1.5rem; }
.gk-radiator-results article button,.gk-manual-grid article button { margin-top:.8rem; width:100%; }
.wp-block-details { border-bottom:1px solid #d9e5e8; padding:1rem 0; }
.wp-block-details summary { cursor:pointer; font-weight:800; }
.wp-block-details p { color:#526771; }
@media (max-width: 781px) {
  .gk-remeha-thermostat-grid { grid-template-columns:1fr; }
  .gk-remeha-thermostat-card { grid-template-rows:210px 1fr; }
  .gk-remeha-universal-card { grid-template-columns:1fr; grid-template-rows:210px 1fr; }
  .gk-standard-package ul { columns:1; }
  .gk-option-choice { flex-wrap:wrap; }
  .gk-option-choice > em { margin-left:auto; }
  .gk-option-image { flex-basis:62px; height:56px; width:62px; }
  .gk-desktop-cta { display: none !important; }
  .gk-quote-cart-link span { display:none; }
  .gk-quote-cart-link::before { content:"Mandje"; }
  .gk-hero { padding-top: 3.5rem !important; padding-bottom: 3.5rem !important; }
  .gk-cw-grid { grid-template-columns: 1fr; }
  .gk-steps { grid-template-columns: 1fr; }
  .gk-contact-buttons { align-items: stretch; flex-direction: column; }
  .gk-contact-button { justify-content: flex-start; }
  .gk-spec-table { font-size: .88rem; }
  .gk-spec-table th, .gk-spec-table td { padding: .65rem .4rem; }
  .gk-form-intro, .gk-form-progress, .gk-maintenance-form form { padding-left: 1.2rem; padding-right: 1.2rem; }
  .gk-choice-grid, .gk-choice-grid-compact, .gk-form-fields { grid-template-columns: 1fr; }
  .gk-choice span { min-height: 4rem; }
  .gk-form-summary dl { grid-template-columns: 1fr; }
  .gk-form-summary dd { margin-bottom: .35rem; }
  .gk-choice-grid-salutation { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.admin-bar .wp-site-blocks > header { top: 46px; }
  .gk-footer { padding-top: 3.2rem !important; }
  .gk-selector-head, .gk-selector-progress, .gk-selector-body { padding-left:1.2rem; padding-right:1.2rem; }
  .gk-selector-choices, .gk-selector-products { grid-template-columns:1fr; }
  .gk-selector-summary dl { grid-template-columns:1fr; }
  .gk-selector-summary dd { margin-bottom:.4rem; }
  .gk-model-visual { min-height:22rem; }
  .gk-model-visual img { height:20rem; }
  .gk-product-gallery { grid-template-columns:1fr; }
  .gk-product-gallery-main { min-height:22rem; padding:1.25rem; }
  .gk-product-gallery-main img { height:20rem; }
  .gk-gallery-thumbs { flex-direction:row; overflow-x:auto; order:2; }
  .gk-gallery-thumb { flex:0 0 4.5rem; }
  .gk-trust-row { grid-template-columns:1fr; }
  .gk-model-highlights,.gk-option-cards { grid-template-columns:1fr; }
  .gk-tab-panel { padding:1.25rem; }
  .gk-option-card { grid-template-columns:6.5rem 1fr; }
  .gk-variant-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gk-series-products { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gk-family-grid { grid-template-columns:1fr; }
  .gk-series-intro,.gk-hre-model-hero { gap:2rem; grid-template-columns:1fr; padding-top:3rem; }
  .gk-hre-model-image { min-height:21rem; }
  .gk-thermostat-guide,.gk-thermostat-grid,.gk-thermostat-product-hero,.gk-thermostat-product-body { grid-template-columns:1fr; }
  .gk-thermostat-grid { gap:.8rem; }
  .gk-thermostat-card-image { height:12rem; }
  .gk-thermostat-product-hero { gap:2rem; padding-top:2rem; }
  .gk-thermostat-product-image { min-height:22rem; }
  .gk-thermostat-product-image img { height:19rem; }
  .gk-thermostat-product .gk-bottom-cta { align-items:flex-start; flex-direction:column; }
  .gk-service-grid,.gk-choice-list { grid-template-columns:1fr; }
  .gk-radiator-route-grid,.gk-radiator-page-hero,.gk-radiator-facts { grid-template-columns:1fr; }
  .gk-radiator-page-image { min-height:18rem; }
  .gk-radiator-page-image img { height:16rem; }
  .gk-calculator-grid,.gk-radiator-results { grid-template-columns:1fr; }
  .gk-breakdown-edit,.gk-breakdown-edit-two,.gk-manual-grid { grid-template-columns:1fr; }
  .gk-breakdown-edit small { text-align:left; }
  .gk-calculator-form,.gk-calculator-result { padding:1.25rem; }
  .gk-calculator-progress { padding:1rem 1.25rem; }
  .gk-calculator-progress li { font-size:.72rem; text-align:center; }
  .gk-calculator-progress li::before { display:flex; margin:0 auto .35rem; }
  .gk-calculator-nav { align-items:stretch; flex-direction:column-reverse; }
  .gk-calculator-nav > * { text-align:center; width:100%; }
  .gk-calculation-breakdown li span { display:block; }
  .gk-calculation-breakdown li small { display:block; margin-top:.15rem; text-align:left; }
  .gk-boiler-route { grid-template-columns:1fr; margin:1rem 1.25rem 0; }
  .gk-component-intro,.gk-component-grid { grid-template-columns:1fr; }
  .gk-option-placeholder-page > section { grid-template-columns:1fr; }
  .gk-radiator-focus,.gk-quote-basket-section { grid-template-columns:1fr; }
  .gk-catalog-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gk-radiator-list { grid-template-columns:1fr; }
  .gk-radiator-item { align-items:flex-start; flex-direction:column; }
  .gk-radiator-item button { width:100%; }
}

/* v0.48.0: tijdelijke, omkeerbare focus op cv-ketels en onderhoud. */
.wp-block-navigation-item:has(> a[href*="/radiatoren/"]),
.wp-block-navigation-item:has(> a[href*="/radiatorkranen/"]),
.wp-block-navigation-item:has(> a[href*="/korado-radik-klasik/"]),
.wp-block-navigation-item:has(> a[href*="/radiator-wattcalculator/"]),
.wp-block-navigation-item:has(> a[href*="/clv-rookgasafvoer/"]) {
  display: none !important;
}

body.home .wp-block-column:has(> .gk-card a[href*="/radiatoren/"]) {
  display: none !important;
}
body.home .wp-block-columns:has(> .wp-block-column > .gk-card a[href*="/radiatoren/"]) > .wp-block-column:not(:has(> .gk-card a[href*="/radiatoren/"])) {
  flex-basis: calc(50% - .75rem) !important;
}

.gk-footer-links a[href*="/radiatoren/"],
.gk-footer-links a[href*="/radiatorkranen/"],
.gk-footer-links a[href*="/korado-radik-klasik/"],
.gk-footer-links a[href*="/radiator-wattcalculator/"] {
  display: none !important;
}

/* De oude prijs-/rookgassamenvatting blijft verborgen tot de echte prijzen zijn ingevoerd. */
.gk-boiler-config .gk-priced-options {
  display: none !important;
}

/* Een afgeronde aanvraag toont alleen de definitieve bevestiging. */
.gk-radiator-request .gk-request-step[hidden],
.gk-radiator-request .gk-form-progress[hidden],
.gk-radiator-request .gk-form-actions[hidden],
.gk-cart-continue[hidden] {
  display: none !important;
}
.gk-radiator-request.is-submitted .gk-form-result.is-success {
  font-size: 1.05rem;
  line-height: 1.65;
  margin: 0;
  padding: 1.25rem 1.35rem;
}
.gk-radiator-request.is-submitted .gk-form-result.is-success > strong,
.gk-radiator-request.is-submitted .gk-form-result.is-success > .gk-sent-summary {
  display: block;
}
.gk-radiator-request.is-submitted .gk-form-result.is-success > .gk-sent-summary {
  font-size: .92rem;
  font-weight: 600;
  margin-top: .75rem;
}
@media (max-width: 480px) {
  .gk-variant-grid,.gk-series-products { grid-template-columns:1fr; }
  .gk-series-card-image { min-height:13rem; }
  .gk-series-card-image img { height:11.5rem; }
  .gk-catalog-filters { grid-template-columns:1fr; }
  .gk-basket-lines li { grid-template-columns:minmax(0,1fr) 4.5rem; }
  .gk-basket-lines li > button { grid-column:1/-1; justify-self:start; }
  .gk-component-basket-line { grid-template-columns:minmax(0,1fr) 4.5rem; }
  .gk-component-basket-line > button { grid-column:1/-1; justify-self:start; }
  .gk-radiator-room { align-items:stretch; grid-template-columns:1fr; }
  .gk-radiator-photo-grid { grid-template-columns:1fr; }
  .gk-radiator-request form { padding:1.1rem; }
  .gk-component-card { grid-template-columns:2.7rem minmax(0,1fr); padding:1rem; }
  .gk-component-card > button { grid-column:1/-1; justify-self:stretch; }
}
