
.kmh-shell {max-width:1180px;margin:0 auto;padding:70px 24px}
.kmh-kicker {font-size:12px;letter-spacing:.17em;text-transform:uppercase;font-weight:800;color:#488e26;margin:0 0 12px}
.kmh-heading {font-family:Montserrat,sans-serif;color:#253129;font-size:clamp(29px,3.4vw,43px);line-height:1.16;margin:0 0 18px;letter-spacing:-.035em}
.kmh-lede {max-width:790px;color:#5b655c;font-size:16px;line-height:1.8;margin:0 0 30px}
.kmh-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.kmh-panel {background:#fff;overflow:hidden;border:1px solid #e0e8dd;border-radius:16px;box-shadow:0 8px 26px rgba(25,46,20,.055);display:flex;flex-direction:column}
.kmh-panel img {width:100%;height:224px;object-fit:cover;display:block;background:#e4e9e5}
.kmh-panel .kmh-card-content {padding:24px;flex:1;display:flex;flex-direction:column}
.kmh-panel h3 {font:800 21px/1.3 Montserrat,sans-serif;color:#253129;margin:0 0 9px}
.kmh-panel p {color:#606b60;font-size:14px;line-height:1.72;margin:0 0 15px}
.kmh-tags {display:flex;gap:7px;flex-wrap:wrap;margin:0 0 16px}
.kmh-tags span {font-size:11px;font-weight:700;color:#3a6f2c;background:#eef7e9;border-radius:20px;padding:6px 11px}
.kmh-link {display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#257c22;font-weight:800;margin-top:auto}
.kmh-soft {background:#f6f9f4}
.kmh-benefits {display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:30px}
.kmh-benefit {background:#fff;border-radius:14px;padding:26px;border:1px solid #e6ece2}
.kmh-benefit b {display:block;color:#254c2c;margin-bottom:8px;font-size:17px}
.kmh-benefit p {margin:0;color:#627066;line-height:1.65;font-size:14px}
.kmh-cta {text-align:center;background:#243c2c;color:#fff;padding:64px 20px}
.kmh-cta h2 {font:800 clamp(25px,3vw,37px)/1.25 Montserrat,sans-serif;color:white;margin:0 0 16px}
.kmh-cta p {color:#e0eadb;margin:0 auto 24px;max-width:620px}
.kmh-button {border:0;background:#70bf45;color:#17331a;border-radius:7px;text-decoration:none;display:inline-block;padding:15px 26px;font:800 14px Montserrat,sans-serif;cursor:pointer}
.kmh-button:hover,.kmh-button:focus-visible {background:#80d04e;color:#112b11}
.kmh-small {font-size:12px;color:#69776a;line-height:1.55}
.kmh-disclaimer {border-left:3px solid #94be7d;padding-left:13px;margin:20px 0 0;font-size:13px;color:#617064;line-height:1.6}
.kmh-compare {width:100%;border-collapse:collapse;margin:25px 0 0}
.kmh-compare th,.kmh-compare td {padding:15px 17px;border-bottom:1px solid #dfe8dc;text-align:left;font-size:14px;vertical-align:top}
.kmh-compare th {background:#eaf4e4;color:#2b5332;font-weight:800}
.kmh-compare td {color:#43534a}
.kmh-wide-image {width:100%;aspect-ratio:16/7;object-fit:cover;border-radius:14px;background:#e5ebe6}
.kmh-config-wrap {background:#f5f8f2;padding:35px 20px 75px}
.kmh-config-head {max-width:1180px;margin:0 auto 24px}
.kmh-config {display:grid;grid-template-columns:minmax(0,1fr) minmax(350px,.9fr);gap:24px;align-items:start;max-width:1180px;margin:0 auto}
.kmh-config-controls,.kmh-config-preview {background:white;border:1px solid #dfe7d9;box-shadow:0 10px 35px rgba(19,51,25,.065);border-radius:18px;overflow:hidden}
.kmh-config-controls {padding:25px 26px}
.kmh-config-controls fieldset {border:0;padding:0;margin:0 0 22px;min-width:0}
.kmh-config-controls legend {font:800 14px Montserrat,sans-serif;color:#2f422f;margin:0 0 12px;padding:0}
.kmh-choices {display:flex;flex-wrap:wrap;gap:8px}
.kmh-choice {border:1px solid #d3dfce;border-radius:10px;background:#fff;color:#334435;cursor:pointer;padding:10px 12px;font:700 12px Montserrat,sans-serif;min-height:42px}
.kmh-choice[aria-pressed="true"] {border:2px solid #529d34;background:#f2faed;padding:9px 11px;color:#28662a}
.kmh-choice:hover {background:#f4f9f0}
.kmh-swatches .kmh-choice {display:inline-flex;align-items:center;gap:7px}
.kmh-swatch {display:inline-block;width:20px;height:20px;border:1px solid #a8b2ac;border-radius:50%;box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)}
.kmh-config-controls .kmh-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kmh-config-controls label.kmh-field {display:block;font-size:12px;color:#3e5642;font-weight:700}
.kmh-config-controls input {margin-top:7px;width:100%;padding:12px;border:1px solid #cad9c6;border-radius:9px;box-sizing:border-box;font:500 14px inherit;background:#fff;color:#253a2b}
.kmh-config-controls input:focus {outline:2px solid #80b66e;outline-offset:2px}
.kmh-step-heading {font:800 20px Montserrat,sans-serif;color:#29392d;margin:0 0 8px}
.kmh-preview-sticky {position:sticky;top:22px}
.kmh-preview-label {padding:18px 22px 0;color:#527052;font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800}
.kmh-stage {background:linear-gradient(180deg,#e2e9e4,#f5f3eb);height:390px;display:flex;align-items:stretch;justify-content:center;position:relative;padding:26px 45px 0;overflow:hidden}
.kmh-stage:before {content:'';position:absolute;bottom:0;left:0;right:0;height:38px;background:#c9c7bb}
.kmh-door-assembly {display:flex;align-self:flex-end;height:100%;filter:drop-shadow(7px 7px 12px rgba(0,0,0,.18));position:relative;z-index:1}
.kmh-door {position:relative;height:100%;width:190px;background:var(--door-colour,#384954);border:11px solid #dfdfda;box-shadow:inset 4px 0 7px rgba(255,255,255,.17),inset -8px 0 18px rgba(0,0,0,.2)}
.kmh-door:after {content:'';position:absolute;inset:11px;box-shadow:inset 0 0 2px rgba(255,255,255,.25);pointer-events:none}
.kmh-pane {display:none;position:absolute;background:linear-gradient(125deg,#87a8b5 8%,#c3dade 28%,#7196a3 39%,#a6c0c9 80%);border:5px solid #b2b7b2;box-shadow:inset 3px 0 8px rgba(0,0,0,.25)}
.kmh-door[data-style="vertical"] .kmh-pane[data-pane="vertical"] {display:block;top:14%;left:18%;width:21%;height:62%}
.kmh-door[data-style="squares"] .kmh-pane[data-pane="squares"] {display:block;top:13%;left:17%;width:33%;height:14%;box-shadow:0 75px 0 -1px #adc8d3,0 150px 0 -1px #adc8d3}
.kmh-door[data-style="band"] .kmh-pane[data-pane="band"] {display:block;top:25%;left:8%;width:83%;height:12%}
.kmh-door[data-style="lines"] .kmh-design-lines {display:block}
.kmh-design-lines {display:none;position:absolute;left:12%;right:12%;top:31%;height:4px;background:rgba(231,239,238,.65);box-shadow:0 24px rgba(231,239,238,.65),0 48px rgba(231,239,238,.65)}
.kmh-door[data-glass="frosted"] .kmh-pane {filter:saturate(.45) brightness(1.15)}
.kmh-door[data-glass="clear"] .kmh-pane {filter:saturate(1.35) contrast(1.07)}
.kmh-handle {position:absolute;right:19px;top:28%;width:5px;height:36%;border-radius:3px;background:linear-gradient(90deg,#667277,#f4fbf9,#869398);box-shadow:1px 2px 3px #152126}
.kmh-door[data-handle="lever"] .kmh-handle {top:52%;height:5px;width:45px;right:10px}
.kmh-door[data-hinge="right"] .kmh-handle {right:auto;left:19px}
.kmh-door[data-hinge="right"][data-handle="lever"] .kmh-handle {right:auto;left:10px}
.kmh-side {display:none;position:relative;width:48px;border:9px solid #dedfdb;background:linear-gradient(130deg,#8caebc,#dfebed,#72929e)}
.kmh-door-assembly[data-side="left"] .kmh-side-left,.kmh-door-assembly[data-side="right"] .kmh-side-right,.kmh-door-assembly[data-side="both"] .kmh-side {display:block}
.kmh-preview-foot {padding:20px 23px}
.kmh-preview-foot h3 {font:800 19px Montserrat,sans-serif;margin:0 0 10px;color:#243c2c}
.kmh-specs {margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kmh-specs li {color:#485948;font-size:12px;line-height:1.5}
.kmh-specs strong {display:block;color:#274a2d;font-weight:800}
.kmh-form-divider {border:0;border-top:1px solid #e4eee0;margin:23px 0}
.kmh-full {grid-column:1/-1}
.kmh-submit {width:100%;margin-top:18px;min-height:49px}
.kmh-form-state {margin-top:12px;font-size:13px;line-height:1.55}
.kmh-form-state[hidden] {display:none}
.kmh-status-error {color:#a32627}
.kmh-status-success {color:#23692a}
.kmh-product-notes {margin-top:22px}
@media(max-width:920px){.kmh-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kmh-config{grid-template-columns:1fr}.kmh-preview-sticky{position:static}.kmh-benefits{grid-template-columns:1fr}}
@media(max-width:610px){.kmh-shell{padding:48px 18px}.kmh-grid{grid-template-columns:1fr}.kmh-stage{height:300px;padding:22px 20px 0}.kmh-door{width:155px}.kmh-side{width:34px}.kmh-config-wrap{padding:35px 14px 55px}.kmh-config-controls{padding:22px 18px}.kmh-config-controls .kmh-fields{grid-template-columns:1fr}.kmh-compare th,.kmh-compare td{font-size:12px;padding:12px 8px}}

/* Actual Hörmann product example alongside the live preference preview. */
.kmh-example-photo {display:flex;align-items:center;gap:13px;margin:16px 20px 0;padding:10px;background:#f4f8f1;border:1px solid #dfebd9;border-radius:12px}
.kmh-example-photo img {display:block;width:115px;height:96px;object-fit:cover;object-position:center;border-radius:8px;background:#e3e8e1;flex:none}
.kmh-example-photo strong {font:800 14px Montserrat,sans-serif;color:#284a2d;display:block;margin-bottom:6px}
.kmh-example-photo span {color:#617466;font-size:12px;line-height:1.4;display:block}
@media(max-width:470px){.kmh-example-photo img{width:96px;height:85px}}

.kmh-photo-unavailable{height:280px;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;background:#f0f3f0;border-bottom:1px solid #e4ece3}
.kmh-photo-unavailable a{color:#275b37;text-decoration:underline;font-weight:700}
