/* Phone-specific presentation; the canonical desktop table remains unchanged. */
.mobile-comparison{display:none}
@media(max-width:760px){
 .compact-site:not(.enquiry-site){--section-space:36px;--section-gap:72px}
 .compact-site main>.wrap,.compact-site main>section>.wrap,.compact-site footer.wrap{width:calc(100% - 32px)}
 .compact-site .compact-hero-copy h1{font-size:clamp(28px,7.6vw,38px);line-height:1.15;overflow-wrap:normal}
 .compact-site .compact-hero-copy>p{font-size:15px;line-height:1.7}
 .compact-site .compact-hero-copy .compact-mobile-start{min-height:52px;font-size:16px;background:#f46b13;margin-top:18px}
 .compact-site .compact-hero .form-intro{white-space:normal;font-size:14px;line-height:1.5}
 .compact-site .compact-hero #check .simple-options .picture-choice .choice-label{white-space:normal;font-size:13px;line-height:1.35;min-height:48px;height:auto;padding:10px 6px}
 .compact-site .compact-hero #check .simple-options .picture-choice .choice-media{aspect-ratio:4/3}
 .compact-site .compact-hero .hero-adviser-bar>div{min-width:0}
 .compact-site .compact-hero .hero-adviser-bar>div>p{font-size:13px}
 .compact-site .benefit-collage .collage-team{aspect-ratio:1672/941;object-fit:contain;height:auto}
 .compact-site .benefit-collage .photo-comparison{aspect-ratio:4/3}
 .compact-site #prinzip{--procedure-media-ratio:16/9}
 .compact-site:not(.enquiry-site) #prinzip .procedure-video-layout{margin-top:56px}
 .compact-site .customer-path-grid>li>img{aspect-ratio:auto;height:auto;object-fit:contain}
 .compact-site .customer-stories .reference-single .customer-portrait{height:auto;aspect-ratio:2/1}
 .compact-site .customer-stories .reference-single .customer-portrait img{width:100%;height:100%;object-fit:contain}
 .compact-site .planning-team .team-person{min-width:0}
 .compact-site .planning-team .team-person h4{overflow-wrap:anywhere}
 .compact-site #vergleich .compact-section-heading{text-align:left}
 .compact-site #vergleich .compact-section-heading h2{font-size:clamp(25px,6.8vw,30px);line-height:1.25}
 .compact-site #vergleich .comparison-table-scroll{display:none}
 .compact-site #vergleich .branded-comparison{overflow:hidden;border-radius:18px}
 .compact-site #vergleich .mobile-comparison{display:block;padding:20px 16px 24px;background:#f4f8f6;min-width:0}
 .compact-site #vergleich .mobile-comparison-intro h3{font-size:21px;line-height:1.3;margin:0 0 10px}
 .compact-site #vergleich .mobile-comparison-intro p{font-size:14px;line-height:1.6;color:#526b6c;margin:0}
 .compact-site #vergleich .mobile-methods{display:grid;gap:12px;margin-top:20px}
 .compact-site #vergleich .mobile-method{border:1px solid #cbded6;border-radius:13px;background:#fff;overflow:hidden}
 .compact-site #vergleich .mobile-method summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:16px;list-style:none;cursor:pointer;font-size:15px;line-height:1.4;font-weight:650;overflow-wrap:anywhere}
 .compact-site #vergleich .mobile-method summary::-webkit-details-marker{display:none}
 .compact-site #vergleich .mobile-method summary small{display:block;font-size:12px;font-weight:400;margin-top:4px}
 .compact-site #vergleich .mobile-method-own summary{background:#246e64;color:#fff}
 .compact-site #vergleich .mobile-disclosure{font-size:24px;font-weight:400;flex:none;line-height:1}
 .compact-site #vergleich .mobile-method[open] .mobile-disclosure{transform:rotate(45deg)}
 .compact-site #vergleich .mobile-method .comparison-method{padding:14px 14px 18px}
 .compact-site #vergleich .mobile-method .method-sketch{max-width:360px;margin:0 auto;aspect-ratio:1;border-radius:8px}
 .compact-site #vergleich .mobile-method .method-sketch img{width:100%;height:100%;object-fit:contain}
 .compact-site #vergleich .mobile-method figcaption{font-size:14px;line-height:1.6;margin-top:14px}
 .compact-site #vergleich .mobile-comparison>.comparison-legend{margin:20px 0 24px;padding:16px;border:1px solid #d7e5df;border-radius:12px;background:#fff;font-size:12px;line-height:1.5}
 .compact-site #vergleich .mobile-criteria{display:grid;gap:16px}
 .compact-site #vergleich .mobile-criterion{min-width:0;background:#fff;border:1px solid #d1e1da;border-radius:13px;overflow:hidden}
 .compact-site #vergleich .mobile-criterion h3{margin:0;padding:10px 14px;font-family:Inter,Arial,sans-serif;font-size:15px;line-height:1.45;letter-spacing:0;background:#e8f1ec}
 .compact-site #vergleich .mobile-criterion .comparison-term{font-size:15px;min-height:44px;gap:12px}
 .compact-site #vergleich .mobile-criterion dl{margin:0}
 .compact-site #vergleich .mobile-criterion dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(75px,.65fr);align-items:center;gap:12px;padding:12px 14px;border-top:1px solid #e3ece7}
 .compact-site #vergleich .mobile-criterion dt{font-size:13px;line-height:1.45;overflow-wrap:anywhere}
 .compact-site #vergleich .mobile-criterion dd{margin:0;text-align:right;font-size:14px;line-height:1.5}
 .compact-site #vergleich .mobile-value-own{background:#e0f1e8;color:#185e51;font-weight:700}
 .compact-site #vergleich .mobile-criterion .comparison-rating{display:inline-flex;gap:5px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
 .compact-site #vergleich .mobile-criterion .rating-good{color:#146b52}
 .compact-site #vergleich .mobile-criterion .rating-mixed{color:#8a5300}
 .compact-site #vergleich .mobile-criterion .rating-bad{color:#bd2734}
 .compact-site #vergleich .comparison-copy.comparison-summary{padding:24px 16px;gap:24px}
 .compact-site #vergleich .comparison-summary>.comparison-offer{padding:22px 18px;min-width:0}
 .compact-site #vergleich .comparison-offer .button{padding:14px 16px;gap:12px}
 .compact-site #kontakt .contact-panel input,.compact-site #kontakt .contact-panel select,.compact-site #kontakt .contact-panel textarea{font-size:16px;max-width:100%;min-width:0}
 .compact-site .mobile-sticky{padding-bottom:max(12px,env(safe-area-inset-bottom));z-index:40}
 .compact-site .contact-launcher{bottom:calc(96px + env(safe-area-inset-bottom))}
 .compact-site #site-menu{width:calc(100% - 24px);max-width:440px;margin:12px auto;max-height:calc(100dvh - 24px);padding:20px}
 .compact-site.menu-open .contact-launcher{display:none}
}
@media(max-width:360px){
 .compact-site .site-header{gap:8px;padding-inline:14px}
 .compact-site .compact-hero .funnel-question{padding:14px}
 .compact-site .compact-hero .hero-adviser-bar{gap:10px}
 .compact-site .compact-hero .hero-adviser-bar>img{width:54px;height:54px;min-width:54px;min-height:54px}
 .compact-site #vergleich .mobile-comparison{padding-inline:12px}
 .compact-site #vergleich .mobile-criterion dl>div{padding-inline:12px;gap:8px}
 .compact-site main>.direct-contact-section{padding-inline:12px}
 .compact-site #kontakt .direct-contact-copy,.compact-site #kontakt .contact-panel{padding-inline:16px}
}
/* Keep the two phone actions inside one bottom dock, away from page content. */
@media(max-width:760px){
 .compact-site .mobile-sticky.visible{padding-right:82px;padding-left:16px}
 .compact-site .mobile-sticky .button{gap:12px;padding-inline:16px}
 .compact-site .contact-launcher{right:16px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:41}
}
@media(max-width:360px){
 .compact-site .site-header .header-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;width:100%;min-width:0}
 .compact-site .site-header .header-actions .header-phone,.compact-site .site-header .header-actions .nav-cta{width:100%;min-width:0;min-height:44px;margin:0;padding:10px 8px;justify-content:center;gap:5px;font-size:11px;line-height:1.4;white-space:nowrap}
 .compact-site .site-header .header-phone svg{width:16px;height:16px;flex:none}
}
/* One quiet phone header; secondary contact options live in the opened menu. */
.mobile-menu-actions{display:none}
@media(max-width:760px){
 html{scroll-padding-top:80px}
 .compact-site .header-shell>.autumn-offer,.compact-site .site-header .header-actions,.compact-site .site-header .header-seals{display:none}
 .compact-site .site-header{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;width:100%;height:68px;min-height:68px;max-height:68px;padding:10px 16px;gap:16px}
 .compact-site .site-header .regional-logo.logo-nrw{width:144px;max-width:calc(100% - 64px);flex:0 0 auto;margin:0}
 .compact-site .site-header .regional-logo.logo-nrw>img{display:block;width:100%;height:auto;max-height:48px;object-fit:contain}
 .compact-site .site-header .menu-toggle{display:flex;width:44px;height:44px;min-width:44px;min-height:44px;flex:0 0 44px;margin:0}
 .compact-site #site-menu{padding:20px;overscroll-behavior:contain}
 .compact-site #site-menu .menu-top{position:sticky;top:-20px;padding:14px 0;background:#fff;z-index:1}
 .compact-site #site-menu .menu-top h2{font-size:19px;line-height:1.3}
 .compact-site #site-menu nav a{min-height:48px;padding:13px 0;font-size:15px;line-height:1.4}
 .compact-site #site-menu .mobile-menu-actions{display:grid;gap:12px;margin-top:16px;padding-top:18px;border-top:1px solid #dce4de}
 .compact-site #site-menu .menu-phone,.compact-site #site-menu .menu-offer{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;padding:12px 14px;border-radius:10px;font-size:14px;line-height:1.5;font-weight:600}
 .compact-site #site-menu .menu-phone{background:#e8f2ed;color:#185e51}
 .compact-site #site-menu .menu-offer{background:#f46b13;color:#fff}
 .compact-site #site-menu .menu-promotion{padding:4px 0;font-size:12px;line-height:1.6;color:#526b6c;text-align:center}
 .compact-site #site-menu .menu-seal{width:44px;height:40px;object-fit:contain;margin:0 auto}
}
