/* Topic colours are shared by the entry cards and the corresponding calculator. */
:root{--heat:#ae442b;--solar:#175b78;--cost:#346344;--accent:var(--heat);--tone:#f8ece3;--topic-line:#e7c8b7;--orange:var(--heat)}
[data-theme="waermepumpe"],[data-check="waermepumpe"]{--accent:var(--heat);--tone:#f8ece3;--topic-line:#e7c8b7;--orange:var(--heat)}
[data-theme="ac-speicher"],[data-check="ac-speicher"]{--accent:var(--solar);--tone:#eaf2f6;--topic-line:#c2d9e3;--orange:var(--solar)}
[data-theme="strom-gas"],[data-check="strom-gas"]{--accent:var(--cost);--tone:#edf2e8;--topic-line:#cadbc5;--orange:var(--cost)}
.header{min-height:100px;position:relative;z-index:40;gap:28px}.header .brand{font-size:24px}.header .brand small{font-size:10px;letter-spacing:.025em}.header nav{font-size:13px;gap:28px}.header nav a{position:relative}.header nav a:hover{color:var(--heat);text-decoration:none}.header nav a:after{content:'';position:absolute;bottom:6px;left:0;right:0;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .18s}.header nav a:hover:after,.header nav a:focus-visible:after{transform:scaleX(1)}
.menu-toggle{display:none}.energy-symbol{display:block;width:28px;height:28px;flex:none}.home-page h1,.home-page h2,.check-heading h1{font-family:Arial,Helvetica,sans-serif;font-weight:600;letter-spacing:-.05em}.home-page .home-hero{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:15px;padding-top:55px;padding-bottom:45px}.hero-copy{position:relative;z-index:1;min-width:0}.home-hero .eyebrow{font-size:11px;letter-spacing:.12em;margin-bottom:25px}.home-hero h1{font-size:clamp(3.2rem,5.2vw,4.9rem);line-height:1.04;max-width:none;margin-bottom:24px}.home-hero h1 em{color:var(--heat);white-space:nowrap}.hero-benefit{font-size:18px;line-height:1.65;color:var(--muted);max-width:480px;margin-bottom:27px}.home-actions{display:flex;flex-direction:row;align-items:center;gap:22px;flex-wrap:wrap}.home-actions .button{background:var(--heat);border-color:var(--heat);border-radius:6px;min-height:52px;padding:15px 22px;font-size:13px}.home-actions .button:hover{background:#8d3520}.home-actions .quiet-link{font-size:12px;gap:9px}.hero-access{font-size:11px;line-height:1.5;color:#73776b;margin:18px 0 0}.hero-visual{min-width:0;align-self:center;margin:0 -28px 0 -22px}.hero-visual img{display:block;width:100%;height:auto;filter:drop-shadow(0 24px 25px #6d59480d)}
.home-page .home-checks{padding-top:28px;padding-bottom:74px}.section-heading{border-top:0;padding-top:0;align-items:baseline;gap:20px;margin-bottom:23px}.section-heading h2{font-size:25px;line-height:1.3;margin:0}.section-heading p{font-size:12px;margin:0}.check-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:0}.check-card,.check-card:first-child,.check-card:last-child,.check-card:nth-child(2),.check-card:nth-child(3){display:flex;flex-direction:column;padding:0;background:var(--tone);border:1px solid var(--topic-line);border-radius:13px;overflow:hidden;color:var(--ink);transition:transform .2s,box-shadow .2s,border-color .2s;isolation:isolate}.check-card+.check-card{border-left:1px solid var(--topic-line)}.check-card:hover{color:var(--ink);background:var(--tone);transform:translateY(-5px);box-shadow:0 16px 35px #33352b0c;border-color:var(--accent)}.check-card .topic-art{position:relative;display:flex;align-items:center;justify-content:flex-end;min-height:118px;padding:17px 28px;overflow:hidden;color:var(--accent);border-bottom:1px solid var(--topic-line)}.topic-art:after{content:'';position:absolute;inset:0;background:linear-gradient(130deg,#ffffff63,transparent);z-index:-1}.topic-art>.energy-symbol{height:82px;width:82px;stroke-width:1.35;position:relative;z-index:1}.topic-orbit{position:absolute;border:1px solid var(--topic-line);border-radius:50%;width:155px;height:155px;right:-1px;top:-14px;z-index:-1}.topic-orbit:after{content:'';position:absolute;inset:16px;border:1px solid var(--topic-line);border-radius:50%}.check-card .card-number{position:absolute;left:27px;top:26px;font:13px Arial,sans-serif;color:var(--accent);margin:0}.topic-copy{padding:25px 27px 23px;display:flex;flex-direction:column;flex:1;min-width:0}.check-card p.check-category{font-size:11px;letter-spacing:.06em;color:var(--accent);font-weight:700;margin:0 0 13px;text-transform:uppercase}.check-card h2{font-size:27px;line-height:1.13;letter-spacing:-.035em;font-weight:600;max-width:none;min-height:62px;margin:0 0 15px}.check-card .topic-copy>p:not(.check-category){font-size:13px;line-height:1.65;max-width:none;margin:0 0 25px;color:#535b51}.check-card .card-action{color:var(--accent);font-size:12px;border-top:1px solid var(--topic-line);padding-top:17px;min-height:44px;gap:10px;justify-content:space-between;margin-top:auto}.check-card .card-action span{font-size:21px}.check-card:hover .card-action{text-decoration:none}
.home-page .home-about{padding-top:75px;padding-bottom:75px;grid-template-columns:.75fr 1.25fr;gap:85px}.home-about h2{font-size:clamp(2.1rem,3.3vw,2.8rem)}.home-about figure{max-width:330px}.home-about figure img{border-radius:12px}.home-about p:not(.eyebrow){font-size:15px}.home-page .home-books,.home-page .home-faq{padding-top:65px;padding-bottom:65px}.reading-copy h2{font-size:40px}.home-faq h2{font-size:30px}.home-page .text-link{font-size:13px}
.app-shell{max-width:1240px;width:100%;padding:26px 40px 75px;--focus-color:var(--accent)}.check-heading{max-width:900px}.check-heading .eyebrow{display:flex;align-items:center;gap:11px;color:var(--accent);font-size:11px;letter-spacing:.08em;margin:0 0 15px}.check-heading .energy-symbol{width:31px;height:31px;stroke-width:1.6}.check-heading h1{font-size:clamp(2.3rem,4vw,3.3rem);line-height:1.1;max-width:880px;margin-bottom:17px}.check-heading .app-intro{font-size:16px;line-height:1.65;margin-bottom:0;max-width:720px}.back-link{margin-bottom:23px;color:var(--muted)}.check-contact{padding:15px 0;margin-top:25px;gap:20px}.check-contact p{font-size:13px;line-height:1.5}.check-contact p span{font-size:12px}.check-contact button{font-size:12px;border-color:var(--topic-line);color:var(--accent);background:var(--tone);min-height:44px;padding:11px 18px}.check-contact button:hover{background:var(--tone);border-color:var(--accent)}
.app-shell button:not(.secondary),.app-shell .button:not(.secondary){background:var(--accent);border-color:var(--accent);color:#fff}.app-shell button:not(.secondary):hover{background:color-mix(in srgb,var(--accent),#000 14%)}.app-shell .secondary:hover{background:var(--tone)}.app-shell :focus-visible{outline-color:var(--accent)}.app-shell input[type=checkbox]{accent-color:var(--accent)}.wizard{padding:32px;border-radius:13px;border:1px solid #dfe1d7;border-top:3px solid var(--accent);margin-top:22px;min-width:0;width:100%}.progress-row{font-size:12px;color:var(--muted);align-items:flex-start;line-height:1.5;gap:25px;margin-bottom:12px}.progress-row span:first-child{white-space:nowrap;color:var(--accent);font-weight:700}.progress-row span:last-child{text-align:right}.progress{accent-color:var(--accent);height:4px;margin-bottom:29px}.progress::-webkit-progress-value{background:var(--accent)}.wizard>fieldset{min-width:0;width:100%;padding:0;margin:0}.wizard>fieldset>legend{font:600 27px/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.035em;padding:0;max-width:100%;margin-bottom:13px;float:none}.wizard .step-hint{font-size:14px;line-height:1.65;margin-bottom:28px;max-width:780px}.fields{gap:25px 28px;min-width:0}.field{min-width:0;margin:0;padding:0}.field>label,.field>legend{font-size:14px;line-height:1.5;padding:0}.field input:not([type=checkbox]),.field select,.field textarea{min-height:50px;font-size:16px;max-width:100%;padding:12px;border-color:#b9bfb2}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent)}.field small{font-size:12px;line-height:1.55}.field .check-label{min-height:44px}.wizard-actions{margin-top:30px;padding-top:24px}.wizard-actions button{min-height:48px}.result-lead{background:var(--tone);border-color:var(--topic-line)}.result-lead button{background:var(--accent);border-color:var(--accent)}.request-panel{border-color:var(--topic-line)}.request-panel form>fieldset .check-label{background:var(--tone)}.request-panel .request-close{background:transparent!important;color:var(--accent)!important}.result-grid .metric{background:var(--tone);border-color:var(--topic-line)}.size-preview{background:var(--tone);border-color:var(--topic-line)}
@media(min-width:761px) and (max-width:1050px){.header .brand{font-size:21px}.header nav{gap:18px;font-size:12px}.home-page .home-hero{grid-template-columns:1.2fr .85fr;gap:0}.home-hero h1{font-size:clamp(3rem,5.7vw,3.8rem)}.hero-benefit{font-size:16px}.hero-visual{margin:0 -15px 0 -30px}.home-actions{gap:8px 18px}.topic-copy{padding:22px 20px}.check-card h2{font-size:24px}.check-card .topic-art{padding-right:20px;min-height:103px}.topic-art>.energy-symbol{width:72px;height:72px}.check-cards{gap:15px}.section-heading h2{font-size:23px}.home-page .home-about{gap:45px}}
@media(max-width:760px){
 .header{padding:16px 20px;min-height:80px;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}.header .brand{font-size:19px;gap:9px;min-width:0;white-space:normal;line-height:1.2}.header .brand small{font-size:9px;letter-spacing:0;margin-top:6px}.header .brand-mark{font-size:34px;line-height:1;padding:4px 10px 6px;border-radius:10px}.header .brand-mark span{font-size:16px;right:4px;top:0}.header.nav-ready{flex-wrap:nowrap}.header.nav-ready .menu-toggle{display:inline-flex;flex:none;width:44px;height:44px;min-height:44px;padding:0;align-items:center;justify-content:center;background:transparent;border:1px solid #cdcec1;border-radius:50%;color:var(--ink)}.menu-icon{display:block;position:relative;width:19px;height:12px;border-top:1.6px solid currentColor;border-bottom:1.6px solid currentColor}.menu-icon:after{content:'';position:absolute;left:0;right:0;top:4px;border-top:1.6px solid currentColor;transition:transform .15s}.menu-toggle[aria-expanded=true] .menu-icon{border-bottom:0;border-top:0;height:20px}.menu-toggle[aria-expanded=true] .menu-icon:before,.menu-toggle[aria-expanded=true] .menu-icon:after{content:'';position:absolute;left:0;right:0;top:9px;border-top:1.6px solid currentColor;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-icon:after{transform:rotate(-45deg)}.header nav{display:flex;flex-wrap:wrap;width:100%;gap:4px 20px;font-size:13px}.header.nav-ready nav{position:absolute;top:calc(100% - 2px);left:20px;right:20px;width:auto;display:grid;grid-template-columns:1fr;padding:12px 20px;background:#fffdf9;border:1px solid var(--line);box-shadow:0 18px 38px #2c31231c;border-radius:12px;gap:0}.header.nav-ready nav a{font-size:16px;min-height:52px;border-bottom:1px solid #ecece3}.header.nav-ready nav a:last-child{border-bottom:0}.header nav a:after{display:none}
 .home-page .section{padding-left:20px;padding-right:20px}.home-page .home-hero{display:block;padding-top:31px;padding-bottom:22px;position:relative}.home-hero .eyebrow{font-size:10px;margin-bottom:21px;letter-spacing:.1em}.home-hero h1{font-size:clamp(2.65rem,9.7vw,4rem);line-height:1.05;margin-bottom:21px}.hero-benefit{font-size:16px;line-height:1.65;max-width:480px;margin-bottom:22px}.home-actions{flex-direction:row;align-items:center;gap:3px 18px;margin:0}.home-actions .button{font-size:13px;min-height:49px;padding:14px 19px}.home-actions .quiet-link{font-size:12px;min-height:44px}.hero-access{font-size:10px;margin-top:11px}.hero-visual{margin:5px auto -13px;max-width:340px}.hero-visual img{width:100%;height:auto}.home-page .home-checks{padding-top:15px;padding-bottom:42px}.section-heading{display:block;margin-bottom:23px}.section-heading h2{font-size:25px;line-height:1.22;max-width:310px}.section-heading p{font-size:12px;margin-top:11px}.check-cards{grid-template-columns:1fr;gap:17px;margin:0}.check-card,.check-card:first-child,.check-card:last-child{display:grid;grid-template-columns:78px minmax(0,1fr);padding:0;border-radius:11px;column-gap:0}.check-card .topic-art{height:100%;min-height:0;padding:18px 7px 0;display:flex;align-items:flex-start;justify-content:center;border:0;border-right:1px solid var(--topic-line)}.topic-art>.energy-symbol{margin-top:31px;width:61px;height:61px;stroke-width:1.5}.topic-orbit{width:108px;height:108px;right:-22px;top:39px}.topic-orbit:after{inset:12px}.check-card .card-number{left:20px;top:19px;font-size:11px}.topic-copy{padding:22px 20px 18px;min-width:0}.check-card p.check-category{font-size:10px;letter-spacing:.045em;margin-bottom:12px;line-height:1.5}.check-card h2{grid-column:auto;font-size:25px;min-height:0;line-height:1.12;margin-bottom:14px;letter-spacing:-.035em}.check-card .topic-copy>p:not(.check-category){font-size:13px;line-height:1.6;margin-bottom:19px}.check-card .card-action{grid-column:auto;font-size:12px;padding-top:13px;gap:7px;min-height:38px}.check-card:hover{transform:none;box-shadow:none}
 .home-page .home-about{grid-template-columns:1fr;gap:30px;padding-top:48px;padding-bottom:48px}.home-about figure{max-width:280px}.home-about h2{font-size:34px;line-height:1.12}.home-page .home-books,.home-page .home-faq{padding-top:45px;padding-bottom:45px}.reading-copy h2{font-size:34px}.home-faq h2{font-size:29px}.home-page~.footer{padding-bottom:32px}
 .app-shell{padding:15px 20px 105px;max-width:100%;margin:0 auto;min-width:0}.back-link{font-size:12px;margin:0 0 22px;min-height:30px;align-items:center;display:inline-flex}.check-heading .eyebrow{font-size:10px;gap:8px;margin-bottom:12px;letter-spacing:.06em}.check-heading .energy-symbol{width:26px;height:26px}.check-heading h1{font-size:clamp(1.95rem,6.8vw,2.5rem);line-height:1.1;margin-bottom:16px;overflow-wrap:anywhere}.check-heading .app-intro{font-size:14px;line-height:1.65;margin-bottom:0}.check-contact{display:flex;align-items:center;gap:13px;margin-top:20px;padding:13px 0}.check-contact p{font-size:12px;min-width:0}.check-contact p span{font-size:11px;line-height:1.5;max-width:180px}.check-contact button{font-size:12px;min-height:44px;padding:10px 12px;margin:0;flex-shrink:0}.check-hero{margin-bottom:20px}.wizard{margin:0;padding:22px 18px;border-radius:11px;border-top-width:3px;max-width:100%}.wizard .progress-row{font-size:10px;gap:12px;margin-bottom:10px}.wizard .progress-row span:last-child{max-width:65%}.wizard .progress{margin-bottom:24px}.wizard>fieldset>legend{font-size:25px;line-height:1.18;letter-spacing:-.035em;overflow-wrap:anywhere;padding:0;width:100%;margin:0 0 12px}.wizard .step-hint{font-size:13px;line-height:1.65;margin:0 0 25px}.wizard .fields{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;margin:0;padding:0;width:100%}.wizard .field>label,.wizard .field>legend{font-size:14px;line-height:1.45;margin:0 0 8px;width:100%;float:none;max-width:100%;overflow-wrap:anywhere}.wizard .field>legend{font-family:Arial,Helvetica,sans-serif;letter-spacing:normal}.wizard input:not([type=checkbox]),.wizard select,.wizard textarea{font-size:16px;min-height:50px;padding:12px 10px;width:100%;min-width:0;max-width:100%}.wizard .field small{font-size:11px;line-height:1.55;margin-top:7px}.wizard .field fieldset{padding:0;margin:0;min-width:0}.wizard .check-label{font-size:13px;line-height:1.6;margin-left:0;padding-left:0}.wizard .wizard-actions{margin-top:28px;padding-top:22px;gap:10px;align-items:stretch}.wizard-actions button{font-size:12px;padding:12px 13px;min-height:48px;line-height:1.4;max-width:70%}.wizard .advanced-inputs{margin-top:23px}.wizard .advanced-inputs .fields{margin-top:20px}.result-head h2{font-size:26px;line-height:1.15}.result-lead{padding:16px}.result-lead p{font-size:12px}.result-lead button{font-size:12px;min-height:46px}.request-panel{margin-top:0;border-radius:11px;padding:20px 18px}.request-panel .fields{grid-template-columns:minmax(0,1fr);gap:24px}.request-panel h3{font-size:25px}.request-panel input:not([type=checkbox]),.request-panel select,.request-panel textarea{font-size:16px}.mobile-lead{padding:10px 20px max(10px,env(safe-area-inset-bottom));gap:12px;border-color:var(--topic-line)}.mobile-lead span{color:var(--accent);font-size:10px;max-width:110px}.mobile-lead button{font-size:12px;min-height:44px}.app-shell:has(#result) .check-heading h1{font-size:23px}.result-copy .metric{padding:18px}.table-wrap{max-width:100%;min-width:0}
}
@media(max-width:360px){.header .brand{font-size:17px;gap:8px}.header .brand small{font-size:8px}.header .brand-mark{font-size:31px;padding:4px 9px 6px}.header{gap:9px}.home-hero h1{font-size:clamp(2.3rem,10.3vw,2.65rem)}.hero-benefit{font-size:15px}.hero-visual{max-width:280px}.check-card,.check-card:first-child,.check-card:last-child{grid-template-columns:57px minmax(0,1fr)}.check-card .card-number{left:17px}.topic-art>.energy-symbol{width:48px;height:48px;margin-top:35px}.topic-copy{padding:20px 16px 16px}.check-card h2{font-size:23px}.check-card .card-action{font-size:11px}.check-card p.check-category{font-size:9px}.wizard{padding:20px 15px}.wizard>fieldset>legend{font-size:23px}.wizard-actions button{font-size:11px;padding:11px}.mobile-lead{padding-left:16px;padding-right:16px}.mobile-lead button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.check-card,.header nav a:after,.menu-icon:after{transition:none}.check-card:hover{transform:none}}
@media print{.menu-toggle,.hero-visual{display:none!important}.header.nav-ready nav{display:none!important}.app-shell{padding:0}.wizard{border:0;padding:0}.app-shell button{display:none!important}}
.header{flex-direction:row}.home-page .home-hero{padding-top:38px;padding-bottom:30px}.check-card .topic-art{background:var(--accent);color:#fff}.check-card .card-number{color:#ffffffc9}.topic-art:after{background:linear-gradient(135deg,#ffffff17,transparent)}.topic-orbit,.topic-orbit:after{border-color:#ffffff26}
@media(max-width:760px){.header{flex-direction:row}.home-page .home-hero{padding-top:30px;padding-bottom:31px}.hero-visual{display:none}.hero-access{display:none}.home-actions{gap:2px 18px}.home-page .home-checks{padding-top:8px}.check-card .topic-art{border-right:0}.header.nav-ready .brand{flex:1}.header.nav-ready .menu-toggle{margin:0}}
.app-shell h2,.app-shell h3{font-family:Arial,Helvetica,sans-serif;font-weight:600;letter-spacing:-.035em}.app-shell .metric strong{font-family:Arial,Helvetica,sans-serif;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.045em}
@media(max-width:360px){.result-head h2{font-size:23px}}
@media(max-width:360px){.home-hero h1{font-size:clamp(2.1rem,10.8vw,2.3rem)}}
@media(max-width:760px){.section,.book-section,.footer{padding-left:20px;padding-right:20px}.footer{padding-bottom:32px}body:has(.app-shell) .footer{padding-bottom:105px}}
