:root{
  --h44-green:#79b800;
  --h44-green-dark:#4f7d00;
  --h44-green-soft:#f1f7e7;
  --h44-ink:#17211b;
  --h44-muted:#657168;
  --h44-line:#dce5de;
  --h44-surface:#ffffff;
  --h44-off:#f6f8f6;
  --h44-dark:#0f1712;
  --h44-dark-2:#16221a;
  --h44-radius:24px;
  --h44-shadow:0 22px 60px rgba(24,52,33,.08);
}
.h44-page{background:#f6f8f6;color:var(--h44-ink)}
.h44-page *{box-sizing:border-box}
.h44-page fieldset{min-width:0}
.h44-page button,.h44-page input{font:inherit}
.h44-eyebrow{color:var(--h44-green-dark);font-size:.74rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}

/* Hero */
.h44-hero{padding:72px 0 44px;background:
  radial-gradient(circle at 85% 15%,rgba(121,184,0,.11),transparent 28%),
  linear-gradient(180deg,#fff 0%,#f7faf7 100%)}
.h44-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:44px;align-items:end}
.h44-hero h1{max-width:900px;margin:12px 0 18px;font-size:clamp(2.65rem,5.2vw,5.5rem);line-height:.98;letter-spacing:-.055em;color:#111916}
.h44-hero h1 span{color:#5e6a62;font-weight:650}
.h44-hero p{max-width:760px;margin:0;color:#66736a;font-size:1.06rem;line-height:1.65}
.h44-trust-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.h44-trust-row span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid #dce7dc;border-radius:999px;background:#fff;color:#435047;font-size:.75rem;font-weight:800;box-shadow:0 5px 18px rgba(21,44,29,.035)}
.h44-trust-row span:before{content:'✓';margin-right:7px;color:var(--h44-green);font-weight:950}
.h44-hero-price{align-self:end;padding:22px 24px;border:1px solid #d7e0d8;border-radius:22px;background:rgba(255,255,255,.88);box-shadow:0 18px 45px rgba(26,49,33,.06);backdrop-filter:blur(12px)}
.h44-hero-price>span{display:block;color:#6a756e;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.h44-hero-price strong{display:block;margin:7px 0 8px;font-size:2.05rem;line-height:1;color:#151d18;letter-spacing:-.035em}
.h44-hero-price strong small{font-size:.8rem;letter-spacing:0;color:#6a756e}
.h44-hero-price p{font-size:.76rem;line-height:1.45}

/* Main layout */
.h44-section{padding:24px 0 80px}
.h44-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(400px,.75fr);gap:28px;align-items:start}
.h44-panel{border:1px solid #dce4de;border-radius:var(--h44-radius);background:var(--h44-surface);box-shadow:var(--h44-shadow)}
.h44-input{padding:30px}
.h44-progress{display:flex;align-items:center;gap:10px;margin-bottom:26px;padding-bottom:22px;border-bottom:1px solid #edf1ed;color:#9aa59e;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.h44-progress span{display:flex;align-items:center;gap:7px;white-space:nowrap}
.h44-progress b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#eef2ef;color:#718078;font-size:.7rem}
.h44-progress .is-active{color:#28342d}.h44-progress .is-active b{background:var(--h44-green);color:#fff}
.h44-progress i{height:1px;flex:1;background:#e6ece7}
.h44-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}
.h44-panel-head h2{margin:5px 0 0;font-size:2.05rem;letter-spacing:-.035em;line-height:1.08}
.h44-panel-head>span{padding:7px 10px;border-radius:999px;background:#f3f6f3;color:#657168;font-size:.68rem;font-weight:850}

/* Groups */
.h44-block{margin:0 0 24px;padding:0;border:0}
.h44-block legend{display:flex;align-items:center;gap:9px;margin:0 0 10px;padding:0;color:#26322b;font-size:.86rem;font-weight:900}
.h44-block legend b{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#eef4e7;color:#5e8b10;font-size:.71rem}
.h44-block legend span{padding-top:1px}
.h44-block--compact{margin-bottom:0}
.h44-cut-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.h44-cut-card{position:relative;display:grid;align-content:center;gap:3px;min-height:78px;padding:13px 13px 12px 38px;border:1px solid var(--h44-line);border-radius:15px;background:#fbfcfb;cursor:pointer;transition:.18s ease}
.h44-cut-card:hover{border-color:#b6c7b8;background:#fff;transform:translateY(-1px)}
.h44-cut-card input{position:absolute;opacity:0;pointer-events:none}
.h44-cut-card .h44-check{position:absolute;left:12px;top:13px;display:grid;place-items:center;width:18px;height:18px;border:1.5px solid #cbd7cd;border-radius:50%;color:transparent;font-size:.65rem;font-weight:950}
.h44-cut-card strong{font-size:.82rem;line-height:1.15}.h44-cut-card small{color:#7a857e;font-size:.69rem;line-height:1.3}
.h44-cut-card.is-selected,.h44-cut-card:has(input:checked){border-color:#92bc45;background:#f4f9ec;box-shadow:inset 0 0 0 1px rgba(121,184,0,.12)}
.h44-cut-card.is-selected .h44-check,.h44-cut-card:has(input:checked) .h44-check{border-color:var(--h44-green);background:var(--h44-green);color:#fff}
.h44-row{display:grid;gap:18px;margin-bottom:24px}.h44-row--measure{grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr)}.h44-row--options{grid-template-columns:1fr 1fr}

/* Length and pills */
.h44-length{display:grid;grid-template-columns:42px minmax(70px,1fr) auto 42px;gap:6px;align-items:center;padding:5px;border:1px solid var(--h44-line);border-radius:14px;background:#fbfcfb}
.h44-length button{width:42px;height:42px;border:0;border-radius:10px;background:#eef2ee;color:#3b493f;font-size:1.3rem;font-weight:900;cursor:pointer}
.h44-length button:hover{background:#e3eadf;color:var(--h44-green-dark)}
.h44-length input{width:100%;min-width:0;border:0!important;box-shadow:none!important;background:transparent!important;text-align:right;font-size:1.35rem;font-weight:950;color:#18211b}
.h44-length>span{padding-right:2px;color:#69756d;font-weight:850}
.h44-quick{display:flex;gap:5px;margin-top:7px}.h44-quick button{min-height:30px;padding:0 10px;border:1px solid #dce4dd;border-radius:999px;background:#fff;color:#647168;font-size:.69rem;font-weight:850;cursor:pointer}.h44-quick button:hover{border-color:#a7c56f;color:#4d7410}
.h44-pills{display:flex;flex-wrap:wrap;gap:6px}.h44-pills label{position:relative;cursor:pointer}.h44-pills input{position:absolute;opacity:0;pointer-events:none}.h44-pills span{display:inline-flex;align-items:center;justify-content:center;min-height:37px;padding:0 11px;border:1px solid var(--h44-line);border-radius:11px;background:#fbfcfb;color:#4f5d54;font-size:.74rem;font-weight:850;transition:.16s}
.h44-pills label:hover span{border-color:#b7c9ba;background:#fff}.h44-pills label.is-selected span,.h44-pills label:has(input:checked) span{border-color:#8eb93c;background:#edf6dd;color:#416503;box-shadow:inset 0 0 0 1px rgba(121,184,0,.09)}
.h44-pills--height span{min-width:105px}.h44-pills--types span{min-width:92px}

/* Compact option stacks */
.h44-option-stack{display:grid;gap:7px}.h44-option-stack label{position:relative;display:flex;gap:9px;align-items:flex-start;min-height:54px;padding:10px 11px;border:1px solid var(--h44-line);border-radius:13px;background:#fbfcfb;cursor:pointer;transition:.16s}
.h44-option-stack input{margin:3px 0 0;accent-color:var(--h44-green)}.h44-option-stack span{display:grid;gap:2px}.h44-option-stack strong{font-size:.79rem}.h44-option-stack small{color:#7d8981;font-size:.68rem;line-height:1.28}
.h44-option-stack label.is-selected,.h44-option-stack label:has(input:checked){border-color:#9fc45a;background:#f3f8ea}

/* Disposal service level */
.h44-disposal-block{margin-top:2px}.h44-disposal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.h44-service-card{position:relative;display:grid;grid-template-columns:31px 1fr;gap:10px;align-items:start;min-height:84px;padding:12px;border:1px solid var(--h44-line);border-radius:15px;background:#fbfcfb;cursor:pointer;transition:.18s}
.h44-service-card:hover{border-color:#b9c9bb;background:#fff;transform:translateY(-1px)}.h44-service-card input{position:absolute;opacity:0;pointer-events:none}
.h44-service-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:#eef2ee;color:#738078;font-size:.65rem;font-weight:950;letter-spacing:.03em}
.h44-service-card>span:nth-of-type(2){display:grid;gap:4px;padding-top:1px}.h44-service-card strong{font-size:.82rem}.h44-service-card small{color:#77837b;font-size:.68rem;line-height:1.35}.h44-service-card em{position:absolute;right:9px;top:9px;padding:4px 6px;border-radius:999px;background:#eaf4d6;color:#547d08;font-size:.57rem;font-style:normal;font-weight:950;text-transform:uppercase;letter-spacing:.05em}
.h44-service-card.is-selected,.h44-service-card:has(input:checked){border-color:#8fbb3d;background:#f2f8e8;box-shadow:inset 0 0 0 1px rgba(121,184,0,.11)}.h44-service-card.is-selected .h44-service-icon,.h44-service-card:has(input:checked) .h44-service-icon{background:var(--h44-green);color:#fff}
.h44-waste-estimate{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:9px;padding:11px 13px;border:1px dashed #cdd9ce;border-radius:13px;background:#f7faf7}.h44-waste-estimate>div{display:flex;align-items:center;gap:9px}.h44-waste-estimate span{color:#6c786f;font-size:.7rem;font-weight:800}.h44-waste-estimate strong{color:#1e2b23;font-size:.83rem}.h44-waste-estimate p{margin:0;color:#7b867f;font-size:.67rem;text-align:right}

/* Location */
.h44-location{margin-top:1px;border:1px solid var(--h44-line);border-radius:16px;background:#f8faf8;overflow:hidden}.h44-location summary{display:grid;grid-template-columns:1fr auto 34px;align-items:center;gap:14px;padding:13px 15px;cursor:pointer;list-style:none}.h44-location summary::-webkit-details-marker{display:none}.h44-location summary>span:first-child{display:grid;gap:2px}.h44-location summary strong{font-size:.82rem}.h44-location summary small{color:#7b877f;font-size:.68rem}.h44-travel-rule{padding:6px 9px;border-radius:999px;background:#edf5df;color:#527809;font-size:.65rem;font-weight:900;white-space:nowrap}.h44-location summary>b{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#e7ece8;font-size:1.1rem;transition:.16s}.h44-location[open] summary>b{transform:rotate(45deg)}
.h44-location-body{padding:0 15px 15px}.h44-location .field{margin-bottom:9px}.h44-location .field label{font-size:.73rem}.h44-location input{min-height:44px!important;border-radius:11px!important}.h44-distance-panel{margin-top:10px!important;padding:12px!important;border-radius:13px!important}.h44-distance-panel strong{font-size:.84rem!important}.h44-distance-panel small{font-size:.68rem!important}.h44-distance-panel .btn{min-height:40px!important;padding:0 13px!important;font-size:.73rem!important;border-radius:10px!important}
.h44-footnote{margin-top:14px;padding:11px 13px;border-left:3px solid var(--h44-green);border-radius:0 11px 11px 0;background:#f4f7f1;color:#667269;font-size:.72rem;line-height:1.45}.h44-footnote strong{color:#3b473f}

/* Result */
.h44-result{position:sticky;top:92px;padding:26px;background:linear-gradient(155deg,#122119 0%,#0d1712 78%);border-color:#23352a;color:#fff;box-shadow:0 30px 80px rgba(6,18,11,.20);overflow:hidden}.h44-result:before{content:'';position:absolute;right:-80px;top:-90px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(121,184,0,.18),rgba(121,184,0,0) 68%);pointer-events:none}.h44-result>*{position:relative;z-index:1}
.h44-result-top{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.h44-result-top .h44-eyebrow{color:#9fcd3a}.h44-result-top h2{margin:5px 0 0;color:#fff;font-size:1.75rem;letter-spacing:-.035em}.h44-vat-badge{padding:6px 8px;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#b9c6be;font-size:.62rem;font-weight:850;white-space:nowrap}
.h44-price{margin:20px 0 8px;color:#fff;font-size:clamp(2.25rem,4.3vw,3.7rem);font-weight:950;line-height:.98;letter-spacing:-.055em}.h44-price-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.h44-price-meta span{color:#d6e2da;font-size:.82rem;font-weight:750}.h44-price-meta strong{padding:5px 8px;border-radius:999px;background:rgba(121,184,0,.13);color:#b9de62;font-size:.65rem;font-weight:900}.h44-travel-hint{margin:9px 0 15px;color:#9ca9a1;font-size:.69rem;line-height:1.42}
.h44-travel-discount{display:grid;gap:2px;margin:-2px 0 14px;padding:10px 12px;border:1px solid #516b25;border-radius:12px;background:#202a16}.h44-travel-discount strong{color:#c9e683;font-size:.75rem}.h44-travel-discount span{color:#94a573;font-size:.65rem}
.h44-included{display:grid;margin:0 0 14px;padding:6px 12px;border:1px solid #2e4336;border-radius:15px;background:rgba(255,255,255,.028)}.h44-included>div{display:grid;grid-template-columns:22px 1fr;gap:9px;padding:9px 0;border-top:1px solid rgba(255,255,255,.065)}.h44-included>div:first-child{border-top:0}.h44-tick{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#22371f;color:#9fd13c;font-size:.66rem;font-weight:950}.h44-included>div>span:last-child{display:grid;gap:2px}.h44-included strong{color:#eef5f0;font-size:.75rem}.h44-included small{color:#93a197;font-size:.65rem;line-height:1.3}
.h44-saving{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;padding:10px 11px;border:1px solid #42532f;border-radius:12px;background:#172119}.h44-saving>span{display:grid;gap:2px}.h44-saving small{color:#95ba4d;font-size:.59rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.h44-saving strong{font-size:.7rem}.h44-saving button{padding:6px 8px;border:1px solid #536a35;border-radius:8px;background:transparent;color:#cfdda9;font-size:.63rem;font-weight:850;cursor:pointer}
.h44-breakdown{margin-bottom:15px;border:1px solid #2e4336;border-radius:13px;overflow:hidden}.h44-breakdown summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;cursor:pointer;list-style:none;color:#c1cec6;font-size:.7rem;font-weight:850}.h44-breakdown summary::-webkit-details-marker{display:none}.h44-breakdown summary b{font-size:1rem;transition:.16s}.h44-breakdown[open] summary b{transform:rotate(45deg)}.h44-breakdown>div{padding:0 12px 9px}.h44-breakdown p{display:flex;justify-content:space-between;gap:10px;margin:0;padding:7px 0;border-top:1px solid rgba(255,255,255,.065);color:#92a097;font-size:.67rem}.h44-breakdown b{color:#eef4f0}.h44-vat-row{margin-top:2px!important;color:#aab8af!important}
.h44-main-cta,.h44-submit{width:100%;min-height:51px!important;border-radius:13px!important;font-size:.86rem!important;font-weight:900!important;box-shadow:0 12px 30px rgba(121,184,0,.18)}.h44-main-cta{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important}.h44-main-cta span{font-size:1.05rem}.h44-cta-note{margin:8px 8px 0;text-align:center;color:#7f8e85;font-size:.61rem;line-height:1.4}.h44-result-links{display:flex;justify-content:center;gap:7px;margin-top:14px;color:#697970;font-size:.67rem}.h44-result-links a,.h44-result-links button{padding:0;border:0;background:none;color:#b9c7be;text-decoration:none;font:inherit;cursor:pointer}

/* Request */
.h44-request{margin-top:16px;padding-top:16px;border-top:1px solid #2d4135}.h44-request[hidden]{display:none!important}.h44-request>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.h44-request h3{margin:3px 0 2px;color:#fff;font-size:1.1rem}.h44-request header p{margin:0;color:#91a096;font-size:.66rem;line-height:1.35}.h44-request>header>button{width:32px;height:32px;border:1px solid #3d5046;border-radius:9px;background:#16251c;color:#fff;font-size:1rem;cursor:pointer}.h44-request form{display:grid;gap:9px}.h44-request .field{margin:0}.h44-request .field label{color:#dce5df;font-size:.68rem}.h44-request input[type=text],.h44-request input[type=email],.h44-request input[type=tel]{width:100%;min-height:42px;padding:0 10px;border:1px solid #354b3f;border-radius:10px;background:#0d1913;color:#fff}.h44-request input::placeholder{color:#68786f}.h44-request-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.h44-address-warning{padding:9px;border:1px solid #58652d;border-radius:10px;background:#222915;color:#d4dfb2;font-size:.67rem;line-height:1.4}.h44-address-warning.is-complete{display:none}.h44-address-warning.is-attention{outline:2px solid #badf5c}.h44-address-warning button{padding:0;border:0;background:none;color:#bfe16e;font-weight:850;text-decoration:underline;cursor:pointer}.h44-photo{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px dashed #465e50;border-radius:10px;background:#111e17;cursor:pointer}.h44-photo>span{display:grid;gap:2px}.h44-photo strong{font-size:.71rem}.h44-photo small{color:#8f9e94;font-size:.62rem}.h44-photo input{max-width:135px;color:#becbc3;font-size:.62rem}.h44-privacy{color:#a8b5ad!important;font-size:.62rem!important;line-height:1.42}.h44-privacy a{color:#cfe68a}

/* Responsive */
@media(max-width:1120px){
  .h44-layout{grid-template-columns:minmax(0,1.2fr) minmax(380px,.8fr);gap:22px}
  .h44-cut-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .h44-hero-grid{grid-template-columns:1.3fr .7fr}
}
@media(max-width:920px){
  .h44-hero{padding:54px 0 32px}.h44-hero-grid,.h44-layout{grid-template-columns:1fr}.h44-hero-price{max-width:520px}.h44-result{position:static}.h44-section{padding-top:12px}
  .h44-input{padding:24px}.h44-result{padding:24px}
}
@media(max-width:720px){
  .h44-hero{padding:38px 0 22px}.h44-hero-grid{gap:20px}.h44-hero h1{font-size:clamp(2.25rem,11vw,3.7rem)}.h44-hero p{font-size:.91rem;line-height:1.55}.h44-trust-row{margin-top:17px;gap:6px}.h44-trust-row span{min-height:31px;padding:0 9px;font-size:.65rem}.h44-hero-price{padding:16px 17px;border-radius:17px}.h44-hero-price strong{font-size:1.65rem}.h44-section{padding:10px 0 48px}.h44-panel{border-radius:19px}.h44-input{padding:16px}.h44-progress{gap:6px;margin-bottom:19px;padding-bottom:15px;font-size:.6rem}.h44-progress b{width:22px;height:22px}.h44-progress i{min-width:8px}.h44-panel-head{margin-bottom:19px}.h44-panel-head h2{font-size:1.55rem}.h44-panel-head>span{display:none}
  .h44-block{margin-bottom:19px}.h44-block legend{margin-bottom:8px}.h44-cut-grid{grid-template-columns:1fr 1fr;gap:6px}.h44-cut-card{min-height:70px;padding:10px 9px 9px 34px;border-radius:13px}.h44-cut-card .h44-check{left:9px;top:10px}.h44-cut-card strong{font-size:.75rem}.h44-cut-card small{font-size:.62rem}
  .h44-row--measure,.h44-row--options{grid-template-columns:1fr;gap:18px;margin-bottom:19px}.h44-pills span{min-height:36px;padding:0 9px;font-size:.69rem}.h44-pills--height span,.h44-pills--types span{min-width:auto}.h44-option-stack label{min-height:50px;padding:9px 10px}
  .h44-disposal-grid{grid-template-columns:1fr;gap:6px}.h44-service-card{min-height:68px;grid-template-columns:28px 1fr;padding:10px;border-radius:13px}.h44-service-icon{width:28px;height:28px;border-radius:8px}.h44-service-card strong{font-size:.77rem}.h44-service-card small{font-size:.63rem}.h44-waste-estimate{display:grid;gap:3px;padding:9px 10px}.h44-waste-estimate>div{justify-content:space-between}.h44-waste-estimate p{text-align:left;font-size:.62rem}
  .h44-location summary{grid-template-columns:1fr 30px;gap:8px;padding:11px 12px}.h44-travel-rule{grid-column:1/-1;grid-row:2;padding:5px 7px;justify-self:start}.h44-location summary>b{grid-column:2;grid-row:1}.h44-location-body{padding:0 12px 12px}.h44-footnote{font-size:.66rem}
  .h44-result{padding:20px}.h44-result-top h2{font-size:1.5rem}.h44-price{margin-top:16px;font-size:clamp(2.2rem,12vw,3.2rem)}.h44-price-meta{align-items:flex-start;flex-direction:column;gap:6px}.h44-price-meta strong{align-self:flex-start}.h44-main-cta,.h44-submit{min-height:50px!important}.h44-request-grid{grid-template-columns:1fr}.h44-photo{align-items:flex-start;flex-direction:column}.h44-photo input{max-width:100%}
}
@media(max-width:390px){
  .h44-cut-grid{grid-template-columns:1fr}.h44-progress span{font-size:.56rem}.h44-trust-row span{font-size:.61rem}.h44-price{font-size:2.15rem}
}

/* =========================================================
   V45 – premium compact choice controls
   Sections 5–7 intentionally behave like a configurator,
   not like large form cards.
   ========================================================= */
.h45-options{display:grid;gap:14px;margin-bottom:22px}
.h45-choice-block{margin:0!important}
.h45-choice-grid{display:grid;gap:7px}
.h45-choice-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.h45-choice-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.h45-choice{position:relative;display:flex;align-items:center;justify-content:center;min-height:43px;padding:8px 38px 8px 13px;border:1px solid #d8e1da;border-radius:12px;background:#fbfcfb;color:#324038;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}
.h45-choice:hover{border-color:#b5c7b6;background:#fff;transform:translateY(-1px)}
.h45-choice input{position:absolute;opacity:0;pointer-events:none}
.h45-choice span{display:block;width:100%;font-size:.75rem;font-weight:880;line-height:1.15;text-align:left}
.h45-choice:after{content:'✓';position:absolute;right:11px;top:50%;display:grid;place-items:center;width:20px;height:20px;border:1px solid #cbd7cd;border-radius:50%;color:transparent;font-size:.66rem;font-weight:950;transform:translateY(-50%);transition:.16s}
.h45-choice.is-selected,.h45-choice:has(input:checked){border-color:#8eb93c;background:#f1f7e7;box-shadow:inset 0 0 0 1px rgba(121,184,0,.08),0 5px 15px rgba(64,91,31,.05)}
.h45-choice.is-selected:after,.h45-choice:has(input:checked):after{border-color:#79b800;background:#79b800;color:#fff}
.h45-choice:focus-within{outline:3px solid rgba(121,184,0,.16);outline-offset:2px}
.h45-choice-help{margin:7px 2px 0;color:#7b877f;font-size:.66rem;line-height:1.38}

.h45-service-block{margin-top:0!important}
.h45-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.h45-service-choice{position:relative;display:flex;align-items:center;min-height:58px;padding:10px 37px 10px 12px;border:1px solid #d8e1da;border-radius:13px;background:#fbfcfb;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}
.h45-service-choice:hover{border-color:#b5c7b6;background:#fff;transform:translateY(-1px)}
.h45-service-choice input{position:absolute;opacity:0;pointer-events:none}
.h45-service-choice>span{display:grid;gap:2px;min-width:0}
.h45-service-choice strong{color:#26332b;font-size:.77rem;line-height:1.18}
.h45-service-choice small{color:#7c8880;font-size:.64rem;line-height:1.25}
.h45-service-choice:after{content:'✓';position:absolute;right:10px;top:50%;display:grid;place-items:center;width:21px;height:21px;border:1px solid #cbd7cd;border-radius:50%;color:transparent;font-size:.68rem;font-weight:950;transform:translateY(-50%);transition:.16s}
.h45-service-choice.is-selected,.h45-service-choice:has(input:checked){border-color:#8eb93c;background:#f1f7e7;box-shadow:inset 0 0 0 1px rgba(121,184,0,.08),0 6px 17px rgba(64,91,31,.05)}
.h45-service-choice.is-selected:after,.h45-service-choice:has(input:checked):after{border-color:#79b800;background:#79b800;color:#fff}
.h45-service-choice:focus-within{outline:3px solid rgba(121,184,0,.16);outline-offset:2px}
.h45-service-choice em{position:absolute;right:7px;top:-9px;padding:3px 7px;border:1px solid #d7e7bd;border-radius:999px;background:#f5faec;color:#577d14;font-size:.54rem;font-style:normal;font-weight:950;line-height:1;text-transform:uppercase;letter-spacing:.055em}
.h45-choice-help--service{margin-top:8px}

/* Hide the superseded V44 card/radio presentation if old markup is cached briefly. */
.h45-options .h44-option-stack input,.h45-service-grid input{accent-color:#79b800}

@media(max-width:720px){
  .h45-options{gap:13px;margin-bottom:19px}
  .h45-choice-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
  .h45-choice-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
  .h45-choice{min-height:44px;padding:8px 31px 8px 10px;border-radius:11px}
  .h45-choice span{font-size:.69rem}
  .h45-choice:after{right:8px;width:18px;height:18px;font-size:.6rem}
  .h45-choice-help{font-size:.62rem}
  .h45-service-grid{grid-template-columns:1fr;gap:6px}
  .h45-service-choice{min-height:53px;padding:9px 36px 9px 11px;border-radius:11px}
  .h45-service-choice>span{display:flex;align-items:baseline;justify-content:space-between;gap:10px;width:100%}
  .h45-service-choice strong{font-size:.73rem}
  .h45-service-choice small{font-size:.61rem;text-align:right}
}
@media(max-width:430px){
  .h45-choice-grid--three{grid-template-columns:1fr 1fr}
  .h45-choice-grid--three .h45-choice:last-child{grid-column:1/-1}
  .h45-choice{padding-right:30px}
}


/* NordWerk Heckenrechner V47 – kundenklare Service- und Anfrageführung */
.h47-service-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:-1px 0 10px;padding:10px 12px;border:1px solid #dfe7df;border-radius:12px;background:#f8faf7;color:#66736a;font-size:.68rem;line-height:1.42}
.h47-service-intro strong{display:block;margin-bottom:2px;color:#243229;font-size:.73rem}.h47-included-badge{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:#edf6dc;color:#5a7f16;font-size:.58rem;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.h45-service-grid.h47-service-grid{grid-template-columns:1fr 1fr;gap:8px}.h47-service-grid .h45-service-choice{min-height:66px}.h47-service-grid .h45-service-choice strong{font-size:.8rem}.h47-service-grid .h45-service-choice small{font-size:.65rem;line-height:1.3}.h47-service-grid .h45-service-choice--premium{border-color:#c9d9b5;background:#fbfdf8}.h47-service-grid .h45-service-choice--premium.is-selected,.h47-service-grid .h45-service-choice--premium:has(input:checked){background:#eff7e2;border-color:#7fb226}
.h47-lie-note{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;border-radius:10px;background:#f6f8f5;color:#68746c;font-size:.64rem;line-height:1.35}.h47-lie-note input{width:16px;height:16px;margin:0;accent-color:#79b800}.h47-lie-note strong{color:#344139}
.h44-hero-price>span:after{content:none!important}.h44-hero-price p{max-width:340px}
.h44-price-meta strong{background:rgba(121,184,0,.18);color:#d4ed94}
.h44-included>div[data-cleanup-benefit] strong{color:#f3f8f5}.h44-included>div[data-cleanup-benefit] small{color:#a9b8ae}
.h47-price-explainer{margin:0 0 12px;padding:10px 11px;border:1px solid #2d4537;border-radius:12px;background:rgba(255,255,255,.025);color:#b7c5bc;font-size:.66rem;line-height:1.42}.h47-price-explainer strong{color:#f0f6f2}.h47-price-explainer span{color:#b8da6a;font-weight:850}
.h44-main-cta{background:linear-gradient(135deg,#78b600,#6ca300)!important;box-shadow:0 14px 32px rgba(121,184,0,.24)!important}.h44-main-cta:hover{filter:brightness(1.04)}
.h47-cta-trust{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin:9px 0 0}.h47-cta-trust span{padding:4px 7px;border-radius:999px;background:#15241b;color:#aebdb3;font-size:.57rem;font-weight:750}.h47-cta-trust span:before{content:'✓ ';color:#9ccc3a;font-weight:950}
.h44-request>header p{max-width:320px}.h47-contact-note{margin:-2px 0 2px;color:#8fa096;font-size:.62rem;line-height:1.35}.h47-contact-note strong{color:#dbe6df}.h44-address-warning.h47-optional-address{border-color:#334b3d;background:#112018;color:#aebdb3}.h44-address-warning.h47-optional-address.is-complete{display:none}
.h44-breakdown p[data-cleanup-row]{display:none!important}
@media(max-width:760px){.h47-service-intro{display:grid;gap:7px}.h47-included-badge{justify-self:start}.h45-service-grid.h47-service-grid{grid-template-columns:1fr}.h47-service-grid .h45-service-choice{min-height:56px}.h47-service-grid .h45-service-choice>span{display:grid;justify-content:start;gap:2px}.h47-service-grid .h45-service-choice small{text-align:left}.h47-lie-note{align-items:flex-start}.h47-cta-trust{gap:5px}.h47-cta-trust span{font-size:.55rem}}


/* V48 – transparente Preis-Kommunikation statt Lockpreis-Eindruck */
.h48-standard-price strong small{font-size:.72rem;font-weight:800;color:#6d786f}
.h48-standard-price p{margin:8px 0 7px;color:#647067}.h48-standard-price p b{color:#27342c}.h48-standard-price p strong{display:inline;margin:0;font-size:inherit;line-height:inherit;letter-spacing:0;color:#496b12}
.h48-standard-note{display:block;padding-top:7px;border-top:1px solid #e3e9e4;color:#7a857e;font-size:.65rem;line-height:1.4}
.h48-selection-label{margin-top:16px;color:#a9c96b;font-size:.66rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase}
.h48-selection-label+.h44-price{margin-top:7px}
.h48-selection-summary{margin:9px 0 12px;padding:9px 10px;border:1px solid #2d4537;border-radius:11px;background:rgba(255,255,255,.025);color:#9eaea4;font-size:.62rem;line-height:1.42}
.h48-selection-summary::before{content:'Ausgewählt: ';color:#dbe7df;font-weight:850}
.h44-price-meta #price-per-meter{color:#eef4f0;font-weight:850}
@media(max-width:720px){.h48-standard-price p{font-size:.72rem}.h48-standard-note{font-size:.61rem}.h48-selection-label{font-size:.61rem}.h48-selection-summary{font-size:.59rem}}

/* =========================================================
   V49 – customer-first premium calculator
   Internal pricing details are intentionally not rendered.
   ========================================================= */
:root{
  --h49-lime:#82b900;
  --h49-lime-soft:#eef6df;
  --h49-forest:#0d1d15;
  --h49-forest-2:#13271c;
  --h49-line:#d9e3db;
  --h49-muted:#758079;
}

/* Softer premium canvas */
.h44-page{background:linear-gradient(180deg,#fafcf9 0%,#f3f7f3 100%)}
.h44-section{padding-top:28px}
.h44-panel{border-color:var(--h49-line);box-shadow:0 20px 58px rgba(21,48,30,.065)}
.h44-input{padding:31px 33px}
.h44-panel-head h2{font-size:1.88rem;letter-spacing:-.035em}
.h44-block{margin-bottom:20px}
.h44-cut-card,.h45-choice,.h45-service-choice,.h44-pills span,.h44-length,.h44-location{box-shadow:0 1px 0 rgba(22,47,30,.018)}
.h44-cut-card:hover,.h45-choice:hover,.h45-service-choice:hover{transform:none;box-shadow:0 8px 22px rgba(32,67,43,.055)}
.h44-cut-card:has(input:checked),.h45-choice:has(input:checked),.h45-service-choice:has(input:checked),.h44-pills label:has(input:checked) span{box-shadow:0 0 0 1px rgba(121,184,0,.07),0 7px 18px rgba(76,118,16,.06)}

/* Customer-facing orientation card */
.h49-standard-card{position:relative;padding:19px 20px 17px!important;border-radius:21px!important;overflow:hidden;background:linear-gradient(150deg,#fff 0%,#fbfdf9 100%)!important}
.h49-standard-card:before{content:'';position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,#78b600,#a9d25c)}
.h49-standard-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.h49-standard-head>span{color:#536159;font-size:.64rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.h49-standard-head em{padding:5px 8px;border:1px solid #e0e7e1;border-radius:999px;background:#f8faf8;color:#77847c;font-size:.57rem;font-style:normal;font-weight:850}
.h49-standard-main{display:flex;align-items:flex-end;justify-content:space-between;gap:13px}
.h49-standard-main>span{padding-bottom:5px;color:#66736b;font-size:.72rem;font-weight:850}
.h49-standard-main strong{margin:0!important;white-space:nowrap;font-size:2.12rem!important;letter-spacing:-.045em!important}
.h49-standard-main strong small{font-size:.68rem!important;color:#6c786f!important}
.h49-standard-facts{display:flex;flex-wrap:wrap;gap:5px;margin:11px 0 9px}
.h49-standard-facts span{padding:5px 8px;border-radius:999px;background:#eef5e5;color:#526d2c;font-size:.59rem;font-weight:850}
.h49-standard-card p{margin:0 0 9px!important;color:#647068!important;font-size:.68rem!important;line-height:1.45!important}
.h49-standard-card .h48-standard-note{padding-top:8px;border-top-color:#e5ebe6;font-size:.59rem;line-height:1.38}

/* Result / price preview */
.h49-result{padding:25px!important;border:1px solid #203a2b!important;border-radius:27px!important;background:
  radial-gradient(circle at 88% 0%,rgba(132,190,0,.16),transparent 28%),
  linear-gradient(155deg,#13271c 0%,#0b1912 72%)!important;
  box-shadow:0 30px 82px rgba(7,25,14,.24)!important}
.h49-result:before{right:-130px;top:-145px;width:340px;height:340px;background:radial-gradient(circle,rgba(160,207,61,.12),rgba(121,184,0,0) 68%)}
.h49-result-top{align-items:center;margin-bottom:12px}
.h49-result-top .h44-eyebrow{color:#a9d451;font-size:.62rem;letter-spacing:.12em}
.h49-result-top h2{margin-top:3px;font-size:1.42rem!important;letter-spacing:-.035em}
.h49-result-top .h44-vat-badge{border-color:#365240;background:rgba(255,255,255,.025);color:#b9c8be}

.h49-price-stage{position:relative;margin:0 0 15px;padding:17px 17px 15px;border:1px solid #34513f;border-radius:18px;background:linear-gradient(150deg,rgba(255,255,255,.052),rgba(255,255,255,.018));box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.h49-price-stage:before{content:'';position:absolute;left:17px;right:17px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(174,217,84,.48),transparent)}
.h49-price-stage .h48-selection-label{margin:0;color:#a4cf51;font-size:.57rem;letter-spacing:.13em}
.h49-price-stage .h44-price{margin:7px 0 8px;font-size:clamp(2.35rem,4vw,3.3rem);line-height:.97;letter-spacing:-.055em;text-wrap:balance}
.h49-price-meta{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;padding-bottom:11px;border-bottom:1px solid rgba(255,255,255,.075)}
.h49-price-meta #price-per-meter{color:#e5eee8;font-size:.73rem;font-weight:900}
.h49-price-meta strong{padding:5px 9px!important;border-radius:999px!important;background:#233b19!important;color:#cce984!important;font-size:.57rem!important;white-space:nowrap}
.h49-selection-summary{display:flex!important;flex-wrap:wrap;gap:5px;margin:10px 0 0!important;padding:0!important;border:0!important;background:none!important;line-height:1!important}
.h49-selection-summary:before{display:none!important}
.h49-selection-summary>span{display:inline-flex;align-items:center;min-height:24px;padding:4px 7px;border:1px solid #2d4938;border-radius:999px;background:#122219;color:#afbeb5;font-size:.56rem;line-height:1.15}
.h49-selection-summary>span:first-child{border-color:#4c6530;background:#17251a;color:#cbe197;font-weight:900}

/* Included services as one calm professional block */
.h49-included-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 7px}
.h49-included-head>span{color:#eef5f0;font-size:.71rem;font-weight:900}
.h49-included-head small{color:#83958a;font-size:.55rem}
.h49-included{display:block!important;margin:0 0 11px!important;padding:4px 12px!important;border:1px solid #294535!important;border-radius:15px!important;background:rgba(255,255,255,.024)!important}
.h49-included>div{display:grid!important;grid-template-columns:21px 1fr!important;gap:9px!important;align-items:start!important;min-height:0!important;padding:9px 0!important;border:0!important;border-top:1px solid rgba(255,255,255,.07)!important;background:none!important}
.h49-included>div:first-child{border-top:0!important}
.h49-included .h44-tick{width:19px;height:19px;background:#203a1b}
.h49-included strong{font-size:.68rem}
.h49-included small{font-size:.58rem;line-height:1.3}

.h49-travel-row{display:grid;grid-template-columns:21px 1fr;gap:7px;align-items:start;margin:0 2px 10px;padding:8px 9px;border-radius:11px;background:rgba(255,255,255,.024)}
.h49-info-icon{display:grid;place-items:center;width:18px;height:18px;border:1px solid #395343;border-radius:50%;color:#97aa9f;font-size:.56rem;font-weight:900}
.h49-travel-row .h44-travel-hint{margin:1px 0 0!important;color:#93a49a;font-size:.6rem;line-height:1.38}
.h44-travel-discount{margin:0 0 10px;border-color:#49622f;background:#18261b}
.h44-saving{margin-bottom:11px;border-color:#435a2f;background:#152219}
.h44-saving small{color:#acd652}

/* Never show internal calculation detail on the customer website. */
.h44-breakdown,.h44-waste-estimate,[data-internal-calculation]{display:none!important}

/* Conversion CTA */
.h49-cta-wrap{margin-top:2px;padding-top:2px}
.h49-cta-wrap .h44-main-cta{min-height:60px!important;padding:7px 10px 7px 15px!important;border:1px solid #abd84b!important;border-radius:15px!important;background:linear-gradient(135deg,#86bf00 0%,#6ea500 100%)!important;box-shadow:0 15px 36px rgba(117,174,0,.24)!important}
.h49-cta-wrap .h44-main-cta:hover{filter:brightness(1.035);transform:translateY(-1px)}
.h49-cta-copy{display:grid;gap:2px;text-align:left;line-height:1.15}
.h49-cta-copy strong{font-size:.79rem}
.h49-cta-copy small{color:#eff8dc;font-size:.54rem;font-weight:650;opacity:.9}
.h49-cta-arrow{display:grid;place-items:center;width:35px;height:35px;margin-left:auto;border-radius:11px;background:rgba(255,255,255,.14);font-size:1rem!important}
.h49-cta-wrap .h47-cta-trust{margin-top:8px}
.h49-cta-wrap .h47-cta-trust span{background:#122219;color:#94a49a}
.h44-result-links{margin-top:12px}

/* Request form harmonized with result */
.h44-request{margin-top:18px;padding-top:18px;border-top-color:#294334}
.h44-request input[type=text],.h44-request input[type=email],.h44-request input[type=tel]{border-color:#34503e;background:#0c1711}
.h44-photo{border-color:#3d5747;background:#101e16}

/* Responsive polish */
@media(max-width:920px){
  .h49-result{position:static!important;max-width:680px;margin-inline:auto}
}
@media(max-width:720px){
  .h44-input{padding:17px}
  .h49-standard-card{padding:15px 16px!important}
  .h49-standard-main{display:block}
  .h49-standard-main>span{display:block;padding:0 0 5px}
  .h49-standard-main strong{font-size:1.86rem!important}
  .h49-result{padding:17px!important;border-radius:21px!important}
  .h49-result-top{margin-bottom:11px}
  .h49-result-top h2{font-size:1.24rem!important}
  .h49-price-stage{padding:14px 13px 13px;border-radius:16px}
  .h49-price-stage .h44-price{font-size:clamp(2.15rem,11vw,2.95rem)}
  .h49-price-meta{align-items:flex-start!important;flex-direction:column!important}
  .h49-price-meta strong{align-self:flex-start!important}
  .h49-included-head{display:block}
  .h49-included-head small{display:block;margin-top:2px}
  .h49-cta-wrap .h44-main-cta{min-height:58px!important}
  .h49-standard-facts{gap:4px}
}
@media(max-width:390px){
  .h49-standard-facts span{font-size:.55rem}
  .h49-price-stage .h44-price{font-size:2.15rem}
}

/* Subtle feedback while the server recalculates without exposing internal formulas. */
.h49-result.is-calculating .h49-price-stage{opacity:.82}
.h49-result.is-calculating .h44-price{animation:h49Pulse .8s ease-in-out infinite alternate}
@keyframes h49Pulse{from{opacity:.58}to{opacity:.92}}

/* V50 — clear three-step service choice after cutting */
.h50-service-block{padding-top:2px}
.h50-service-intro{margin:0 0 10px;color:#69766e;font-size:.68rem;line-height:1.45}
.h50-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.h50-service-choice{min-height:76px;padding:12px 35px 12px 12px;align-items:flex-start}
.h50-service-choice>span{gap:4px}
.h50-service-choice strong{font-size:.76rem;line-height:1.2}
.h50-service-choice small{font-size:.61rem;line-height:1.35}
.h50-service-choice em{top:-8px;right:8px;background:#f7faf4;color:#66786d;border-color:#dce6dd}
.h50-service-choice:has(input:checked) em,.h50-service-choice.is-selected em{background:#eef7de;color:#5d8614;border-color:#cde1aa}
.h50-service-choice--premium{border-color:#d3dfd5;background:#fcfdfb}
.h50-service-choice--premium:has(input:checked),.h50-service-choice--premium.is-selected{border-color:#82b12b;background:#f0f7e5}

@media(max-width:900px){
  .h50-service-grid{grid-template-columns:1fr}
  .h50-service-choice{min-height:60px;padding:10px 38px 10px 11px}
  .h50-service-choice>span{display:grid;gap:2px}
  .h50-service-choice small{text-align:left}
}

/* V52 — wider, calmer desktop price preview. Mobile/tablet stacking stays unchanged. */
@media(min-width:921px){
  .h49-result{min-width:400px}
  .h49-price-stage{padding:19px 19px 17px}
  .h49-price-stage .h44-price{font-size:clamp(2.45rem,3.7vw,3.45rem)}
  .h49-selection-summary{max-width:100%}
}


/* =========================================================
   V53 – legally clear dynamic service scope in quote preview
   ========================================================= */
.h53-per-meter{display:inline-flex;align-items:baseline;gap:5px;flex-wrap:wrap}
.h53-per-meter>small{color:#8fa097;font-size:.55rem;font-weight:750;white-space:nowrap}
.h53-benefits .h53-benefit{transition:background-color .16s ease,opacity .16s ease}
.h53-benefit.is-included .h53-benefit-icon{
  background:#203a1b!important;
  color:#a8d84a!important;
  border:1px solid rgba(157,207,62,.14)
}
.h53-benefit.is-excluded{
  opacity:.78;
  background:rgba(255,255,255,.008)!important
}
.h53-benefit.is-excluded .h53-benefit-icon{
  background:rgba(145,70,70,.13)!important;
  color:#e39a9a!important;
  border:1px solid rgba(214,126,126,.16);
  font-size:.72rem
}
.h53-benefit.is-excluded strong{color:#c7d0ca!important}
.h53-benefit.is-excluded small{color:#7f8c84!important}
.h53-travel-title{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.h53-travel-info{position:relative;display:inline-flex;align-items:center}
.h53-info-button{
  display:grid;place-items:center;width:18px;height:18px;padding:0;
  border:1px solid #486052;border-radius:50%;
  background:rgba(255,255,255,.025);color:#9eb0a5;
  font:800 .58rem/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  cursor:pointer
}
.h53-info-button:hover,.h53-info-button:focus-visible{
  border-color:#77935d;color:#c6d7cc;outline:none
}
.h53-tooltip{
  position:absolute;z-index:30;left:50%;bottom:calc(100% + 9px);
  width:min(280px,72vw);padding:10px 11px;
  border:1px solid #40584a;border-radius:10px;
  background:#102018;color:#d9e4dc;
  box-shadow:0 16px 38px rgba(0,0,0,.28);
  font-size:.61rem;font-weight:600;line-height:1.42;
  opacity:0;visibility:hidden;transform:translate(-50%,4px);
  transition:opacity .14s ease,transform .14s ease,visibility .14s ease;
  pointer-events:none
}
.h53-tooltip:after{
  content:"";position:absolute;left:50%;top:100%;width:8px;height:8px;
  border-right:1px solid #40584a;border-bottom:1px solid #40584a;
  background:#102018;transform:translate(-50%,-4px) rotate(45deg)
}
.h53-travel-info:hover .h53-tooltip,
.h53-travel-info:focus-within .h53-tooltip,
.h53-travel-info.is-open .h53-tooltip{
  opacity:1;visibility:visible;transform:translate(-50%,0)
}
@media(max-width:720px){
  .h53-per-meter{gap:4px}
  .h53-per-meter>small{font-size:.52rem}
  .h53-tooltip{left:auto;right:-6px;transform:translateY(4px);width:min(270px,78vw)}
  .h53-tooltip:after{left:auto;right:10px}
  .h53-travel-info:hover .h53-tooltip,
  .h53-travel-info:focus-within .h53-tooltip,
  .h53-travel-info.is-open .h53-tooltip{transform:translateY(0)}
}

/* =========================================================
   V54 – explicit selected cutting scope + reliable service state
   ========================================================= */
.h54-cut-scope{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:11px 0 0;padding:9px 11px;border:1px solid #2d4938;border-radius:12px;
  background:#122219
}
.h54-cut-scope>span{color:#8fa097;font-size:.58rem;font-weight:800;letter-spacing:.02em}
.h54-cut-scope>strong{color:#eef6f0;font-size:.68rem;font-weight:900;text-align:right}
.h53-benefit.is-excluded .h53-benefit-icon{font-weight:950}
.h53-benefit.is-excluded strong{color:#d7caca!important}
.h53-benefit.is-excluded small{color:#958886!important}
@media(max-width:720px){
  .h54-cut-scope{align-items:flex-start;flex-direction:column;gap:3px;padding:9px 10px}
  .h54-cut-scope>strong{text-align:left}
}

/* =========================================================
   V255 – altes, bewährtes Rechner-Layout 1:1 als Basis
   + neue Preislogik/Heckenarten/Service-Auswahl
   ========================================================= */
.h59-cut-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.h59-cut-grid .h44-cut-card{min-height:82px;padding-right:14px}
.h59-radical-card{padding-right:14px!important}
.h59-request-badge{position:absolute;right:8px;top:8px;padding:3px 7px;border:1px solid #d7e7bd;border-radius:999px;background:#f5faec;color:#577d14;font-size:.52rem;font-style:normal;font-weight:950;line-height:1;text-transform:uppercase;letter-spacing:.055em}
.h59-radical-card strong{padding-right:0;max-width:100%;overflow-wrap:normal;word-break:normal}
.h59-radical-card:has(.h59-request-badge) strong{padding-right:62px}
.h59-nature-note,.h59-nature-result{margin-top:9px;padding:10px 11px;border-left:3px solid #79b800;border-radius:0 10px 10px 0;background:#f4f7f1;color:#657168;font-size:.66rem;line-height:1.42}
.h59-nature-result{margin:0 0 10px;border-color:#a7d24a;background:#17251a;color:#b7c6bd}

.h59-height-pills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.h59-height-pills label,.h59-height-pills span{width:100%;min-width:0}

.h59-hedge-block{margin-top:24px!important;margin-bottom:24px!important}
.h59-hedge-pills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.h59-hedge-pills label,.h59-hedge-pills span{width:100%;min-width:0}
.h59-hedge-pills span{min-height:42px;padding:7px 10px;white-space:normal;text-align:left;justify-content:flex-start;line-height:1.15;overflow-wrap:normal;word-break:normal}
.h59-hedge-help{margin-top:7px}

.h59-scope-block{margin-bottom:24px!important}
.h59-scope-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.h59-scope-grid .h45-choice{min-height:45px}

.h59-access-block{margin-bottom:24px!important}
.h59-access-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.h59-access-grid .h45-choice{min-height:45px;white-space:normal}
.h59-access-grid .h45-choice span{overflow-wrap:normal;word-break:normal;hyphens:none}

.h59-service-block{margin-bottom:24px!important}
.h59-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.h59-service-note{margin:9px 2px 0;color:#78847c;font-size:.64rem;line-height:1.4}
.h59-service-note strong{color:#59665d}

.h59-result{position:sticky;top:92px}
.h59-price-stage{margin-bottom:14px}
.h59-minimum,.h59-manual{display:grid;gap:3px;margin:0 0 10px;padding:10px 11px;border:1px solid #435a2f;border-radius:12px;background:#152219;color:#cbd8cf}
.h59-minimum strong,.h59-manual strong{color:#d9efad;font-size:.66rem}
.h59-minimum span,.h59-manual span{color:#93a49a;font-size:.58rem;line-height:1.35}
.h59-disclaimer{margin:0 2px 11px;color:#83958a;font-size:.59rem;line-height:1.42}

/* Anfahrt bleibt optisch exakt im alten kompakten Zusatzblock. */
.h44-location-body .calc-row{display:grid;grid-template-columns:140px minmax(0,1fr);gap:9px}
.h44-distance-panel{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;background:#101713!important;color:#fff!important}
.h44-distance-panel>div{display:grid;gap:2px;min-width:0}
.h44-distance-panel .distance-label{color:#80a091;font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.h44-distance-panel strong{color:#dce7df!important}
.h44-distance-panel small{color:#9aa9a0!important}
.h44-distance-panel .btn{flex:0 0 auto;background:#fff!important;color:#18211b!important;border-color:#cfd7d1!important}
.h44-distance-panel[data-state="success"]{box-shadow:inset 0 0 0 1px rgba(121,184,0,.45)}

/* Die Preisbox soll wie im alten Rechner ruhig und kompakt bleiben. */
.h44-saving[data-saving-box]{display:flex;align-items:center;justify-content:space-between;gap:10px}
.h44-saving[data-saving-box][hidden]{display:none!important}
.h44-saving [data-saving-action]{border:1px solid #607d39;border-radius:8px;background:#18261b;color:#d5e7c2;padding:7px 9px;font-size:.58rem;font-weight:850;cursor:pointer}

@media(max-width:1120px){
  .h59-cut-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .h59-hedge-pills{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:920px){
  .h59-result{position:static}
}
@media(max-width:720px){
  .h59-cut-grid{grid-template-columns:1fr}
  .h59-cut-grid .h44-cut-card{min-height:68px}
  .h59-radical-card:has(.h59-request-badge) strong{padding-right:58px}
  .h59-height-pills{grid-template-columns:repeat(2,minmax(0,1fr))}
  .h59-hedge-pills{grid-template-columns:repeat(2,minmax(0,1fr))}
  .h59-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .h59-scope-grid .h45-choice:last-child{grid-column:1/-1}
  .h59-access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .h59-access-grid .h45-choice:last-child{grid-column:1/-1}
  .h59-service-grid{grid-template-columns:1fr}
  .h44-location summary{grid-template-columns:1fr 34px;gap:10px}
  .h44-location summary .h44-travel-rule{grid-column:1/-1;grid-row:2;justify-self:start}
  .h44-location summary>b{grid-column:2;grid-row:1}
  .h44-location-body .calc-row{grid-template-columns:110px minmax(0,1fr)}
  .h44-distance-panel{align-items:flex-start!important;flex-direction:column!important}
  .h44-distance-panel .btn{width:100%}
}
@media(max-width:430px){
  .h59-height-pills,.h59-hedge-pills,.h59-scope-grid,.h59-access-grid{grid-template-columns:1fr}
  .h59-scope-grid .h45-choice:last-child,.h59-access-grid .h45-choice:last-child{grid-column:auto}
  .h44-location-body .calc-row{grid-template-columns:1fr}
}

/* =========================================================
   V256 – Anfrage-Badge Radikalschnitt: keine Textüberlagerung
   ========================================================= */
.h59-radical-card:has(.h59-request-badge) strong{
  padding-right:0!important;
}
.h59-radical-card .h59-request-badge{
  top:-8px!important;
  right:10px!important;
  z-index:3;
  padding:4px 8px;
  background:#f5faec;
  box-shadow:0 1px 4px rgba(63,92,29,.08);
}
@media(max-width:720px){
  .h59-radical-card:has(.h59-request-badge) strong{
    padding-right:0!important;
  }
  .h59-radical-card .h59-request-badge{
    top:-7px!important;
    right:9px!important;
  }
}

/* =========================================================
   V257 – Radikalschnitt-Badge wirklich kollisionsfrei
   Badge und Titel liegen in getrennten Grid-Spalten.
   ========================================================= */
.h59-radical-card{
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  column-gap:7px!important;
  row-gap:3px!important;
  align-content:center!important;
}
.h59-radical-card strong{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  width:auto!important;
  max-width:none!important;
  padding-right:0!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.h59-radical-card small{
  grid-column:1 / -1!important;
  grid-row:2!important;
  min-width:0!important;
}
.h59-radical-card .h59-request-badge{
  position:static!important;
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
  justify-self:end!important;
  margin:0!important;
  transform:none!important;
  z-index:auto!important;
  white-space:nowrap!important;
  padding:4px 7px!important;
  line-height:1!important;
}
@media(max-width:720px){
  .h59-radical-card{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
}

/* =========================================================
   V258 – Radikalschnitt-Titel und Anfrage-Badge endgültig trennen
   ========================================================= */
.h59-cut-grid .h59-radical-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;
  align-content:center!important;
  row-gap:2px!important;
  min-width:0!important;
  overflow:hidden!important;
  padding-top:9px!important;
  padding-right:13px!important;
}
.h59-cut-grid .h59-radical-card .h59-request-badge{
  position:static!important;
  grid-column:1!important;
  grid-row:1!important;
  justify-self:end!important;
  align-self:start!important;
  margin:0 0 1px 0!important;
  max-width:100%!important;
  white-space:nowrap!important;
  transform:none!important;
}
.h59-cut-grid .h59-radical-card strong{
  display:block!important;
  grid-column:1!important;
  grid-row:2!important;
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  white-space:normal!important;
  overflow:hidden!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  line-height:1.14!important;
}
.h59-cut-grid .h59-radical-card strong .h58-radical-secondline{
  display:inline!important;
  white-space:nowrap!important;
}
.h59-cut-grid .h59-radical-card small{
  display:block!important;
  grid-column:1!important;
  grid-row:3!important;
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
@media(max-width:720px){
  .h59-cut-grid .h59-radical-card{
    min-height:72px!important;
    padding-top:8px!important;
  }
}

/* =========================================================
   V259 – responsive containment + klare Richtpreis-Kommunikation
   Preislogik unverändert; nur Layout/Anzeige.
   ========================================================= */

/* Grundursache für horizontales Überlaufen: Grid-/Flex-Kinder und
   Formelemente dürfen ihre Spalte niemals durch intrinsische Breiten
   vergrößern. Diese Regeln verändern das Desktop-Raster nicht. */
.h44-page{
  width:100%;
  max-width:100%;
  overflow-x:clip;
}
.h44-page .container,
.h44-page .h44-hero-grid,
.h44-page .h44-layout,
.h44-page .h44-panel,
.h44-page .h44-input,
.h44-page .h44-result,
.h44-page .h44-row,
.h44-page .h44-block,
.h44-page fieldset,
.h44-page .h44-cut-grid,
.h44-page .h45-choice-grid,
.h44-page .h50-service-grid,
.h44-page .h44-location,
.h44-page .h44-location-body,
.h44-page .h44-request,
.h44-page .h49-price-stage,
.h44-page .h49-included,
.h44-page .h49-selection-summary{
  min-width:0;
  max-width:100%;
}
.h44-page :where(input,select,textarea,button,label){
  min-width:0;
  max-width:100%;
}
.h44-page :where(.h44-cut-card,.h45-choice,.h45-service-choice,.h44-service-card,.h44-pills label,.h44-pills span){
  min-width:0;
  max-width:100%;
}
.h44-page :where(
  .h44-cut-card strong,.h44-cut-card small,
  .h45-choice span,.h45-service-choice span,.h45-service-choice strong,.h45-service-choice small,
  .h44-service-card strong,.h44-service-card small,
  .h44-pills span,.h44-panel-head h2,.h44-result h2,
  .h49-included strong,.h49-included small,.h54-cut-scope strong,
  .h49-cta-copy strong,.h49-cta-copy small,.h44-request h3,.h44-request p
){
  min-width:0;
  max-width:100%;
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
}
.h44-page .h44-cut-card,
.h44-page .h45-choice,
.h44-page .h45-service-choice,
.h44-page .h44-service-card{
  overflow:hidden;
}
.h44-page .h44-length,
.h44-page .h44-length input{
  min-width:0;
  max-width:100%;
}
.h44-page .h44-quick{
  flex-wrap:wrap;
}
.h44-page .h44-travel-rule{
  max-width:100%;
  white-space:normal;
  line-height:1.25;
  text-align:center;
}
.h44-page .h44-distance-panel,
.h44-page .h44-distance-panel>div{
  min-width:0;
  max-width:100%;
}
.h44-page .h44-distance-panel :where(strong,small,.distance-label){
  max-width:100%;
  overflow-wrap:break-word;
}
.h44-page .h44-request input[type="file"],
.h44-page .h44-photo input{
  width:100%;
  min-width:0;
  max-width:100%;
}
.h44-page .h44-photo>span,
.h44-page .h49-cta-copy{
  min-width:0;
}

/* Ergebnis: kein missverständlicher €/lfm-Wert mehr. */
.h60-price-meta{
  flex-wrap:wrap!important;
}
.h60-price-context{
  flex:1 1 220px;
  min-width:0;
  max-width:100%;
  color:#d6e2da!important;
  font-size:.68rem!important;
  font-weight:700!important;
  line-height:1.4;
  white-space:normal!important;
  overflow-wrap:break-word;
}
.h60-price-meta #service-level{
  flex:0 1 auto;
  max-width:100%;
  white-space:normal!important;
  text-align:center;
  line-height:1.2;
}
.h49-price-stage .h44-price{
  max-width:100%;
  overflow-wrap:break-word;
  word-break:normal;
}
.h49-selection-summary>span{
  max-width:100%;
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
}
.h44-main-cta,
.h44-submit{
  max-width:100%;
  min-width:0;
}
.h49-cta-arrow{
  flex:0 0 auto;
}

/* Tablet quer / kleine Desktopfenster: statt zwei zu enger Spalten
   wird der Rechner untereinander gesetzt. Normales Desktop bleibt gleich. */
@media(max-width:1080px){
  .h44-layout{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .h44-result,.h49-result,.h59-result{
    position:static!important;
    width:100%!important;
    min-width:0!important;
    max-width:760px!important;
    margin-inline:auto!important;
  }
}

/* Tablet Hochformat und kleinere Breiten. */
@media(max-width:920px){
  .h44-page .container{
    max-width:100%;
  }
  .h44-hero-grid,
  .h44-layout{
    width:100%;
    min-width:0;
  }
  .h44-row--measure,
  .h44-row--options{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .h44-progress{
    max-width:100%;
  }
  .h44-progress span{
    min-width:0;
  }
}

/* Smartphone / kleine Tablets. */
@media(max-width:720px){
  .h44-page .container{
    width:calc(100% - 20px);
    max-width:100%;
  }
  .h44-hero-grid,
  .h44-layout,
  .h44-input,
  .h44-result{
    width:100%;
    max-width:100%;
  }
  .h44-input{
    padding:15px!important;
  }
  .h44-progress{
    gap:4px;
    font-size:.55rem;
  }
  .h44-progress span{
    gap:4px;
    white-space:nowrap;
  }
  .h44-progress b{
    flex:0 0 auto;
    width:21px;
    height:21px;
  }
  .h44-progress i{
    min-width:4px;
  }
  .h44-panel-head h2{
    font-size:clamp(1.38rem,7vw,1.62rem)!important;
    overflow-wrap:break-word;
  }
  .h59-cut-grid,
  .h59-height-pills,
  .h59-hedge-pills,
  .h59-scope-grid,
  .h59-access-grid,
  .h59-service-grid{
    width:100%;
    max-width:100%;
  }
  .h59-cut-grid .h44-cut-card{
    width:100%;
  }
  .h59-radical-card strong,
  .h59-radical-card strong .h58-radical-secondline{
    max-width:100%!important;
  }
  .h44-pills span,
  .h45-choice,
  .h45-service-choice{
    width:100%;
  }
  .h45-choice{
    padding-right:34px;
  }
  .h44-location summary{
    width:100%;
    min-width:0;
  }
  .h44-location summary>span:first-child{
    min-width:0;
  }
  .h44-location summary .h44-travel-rule{
    width:auto;
    max-width:100%;
    justify-self:start;
  }
  .h44-location-body .calc-row{
    width:100%;
    min-width:0;
  }
  .h44-distance-panel{
    width:100%;
    max-width:100%;
  }
  .h44-distance-panel .btn{
    max-width:100%;
    white-space:normal;
  }
  .h49-result-top{
    min-width:0;
    flex-wrap:wrap;
  }
  .h49-result-top>div{
    min-width:0;
    flex:1 1 190px;
  }
  .h49-price-stage .h44-price{
    font-size:clamp(2rem,11vw,2.95rem)!important;
  }
  .h60-price-meta{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
  .h60-price-context{
    flex:0 1 auto;
    width:100%;
    font-size:.66rem!important;
  }
  .h44-photo{
    width:100%;
    min-width:0;
  }
  .h44-request-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .h44-result-links{
    flex-wrap:wrap;
  }
}

/* Sehr schmale Smartphones: keine Karte darf eine Mindestbreite erzwingen. */
@media(max-width:430px){
  .h44-page .container{
    width:calc(100% - 14px);
  }
  .h44-input,
  .h49-result{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .h44-progress{
    font-size:.5rem;
  }
  .h44-progress span{
    gap:3px;
  }
  .h44-progress b{
    width:20px;
    height:20px;
  }
  .h59-height-pills,
  .h59-hedge-pills,
  .h59-scope-grid,
  .h59-access-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .h44-length{
    grid-template-columns:40px minmax(52px,1fr) auto 40px;
  }
  .h44-length button{
    width:40px;
  }
  .h44-length input{
    font-size:1.2rem;
  }
  .h44-location summary{
    padding-left:10px;
    padding-right:10px;
  }
  .h44-location-body{
    padding-left:10px;
    padding-right:10px;
  }
  .h44-location-body .calc-row{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .h49-price-stage{
    padding-left:11px!important;
    padding-right:11px!important;
  }
  .h49-price-stage .h44-price{
    font-size:clamp(1.9rem,12vw,2.5rem)!important;
  }
}

/* Nur als letzte Schutzschicht. Die eigentlichen Breiten werden oben korrigiert. */
html,body{
  max-width:100%;
  overflow-x:hidden;
}

/* V61 – finaler Feinschliff Service-Badges
   Die responsive Grundsicherung aus V60 setzt Auswahlkarten auf overflow:hidden.
   Nur bei den drei Nach-dem-Schnitt-Karten müssen die kleinen Status-Badges
   bewusst über dem Kartenrand sichtbar bleiben. */
.h44-page .h50-service-choice{
  overflow:visible;
}
.h44-page .h50-service-grid{
  padding-top:8px;
}
