/* Markisen identity, preserving the live Elektro reference layout. */
.brand.markisen-brand { display:flex; flex-direction:column; align-items:flex-start; gap:2px; width:178px; flex-shrink:0; }
.brand.markisen-brand img { width:178px; height:auto; }
.brand.markisen-brand > span { display:block; font-size:9px; font-weight:800; line-height:1.2; letter-spacing:2.5px; color:#555; padding-left:39px; }
.footer .brand.markisen-brand { background:#fff; padding:10px 12px; border-radius:5px; width:210px; margin-bottom:18px; }
.footer .brand.markisen-brand img { filter:none; mix-blend-mode:normal; width:180px; }
.footer .brand.markisen-brand > span { color:#555; }
.footer-top { grid-template-columns:1.3fr 1.1fr .8fr 1fr; }
.footer-original-column a,.footer-original-column span { display:block; }
.footer-original-column a { font-size:12px; margin:7px 0; }
.footer-original-column h3,.footer-original-column h4 { font-size:15px; color:#fff; letter-spacing:0; margin-bottom:20px; }
.footer-original-column p { font-size:12px; }
.footer-top > div > strong { display:block; color:#fff; font-size:14px; margin-bottom:10px; }
.markisen-cost-row { grid-template-columns:minmax(0,1fr) 22px; }
.ez-emergency-prices > p { color:#d2d8d8; font-size:13px; line-height:1.8; }
.ez-emergency-prices > h3 { font-size:29px; color:#fff; margin:16px 0; }
.hero-kicker > .icon { width:46px; height:46px; color:#ff9512; }
.markisen-hero .hero-copy .seo-original-h1 { font-size:clamp(31px,3.1vw,46px); text-transform:none; max-width:620px; line-height:1.12; }
.markisen-hero .hero-copy .hero-lead { font-size:18px; line-height:1.5; margin-top:17px; }
.markisen-hero .hero-copy .hero-service-line { font-size:18px; }
.markisen-hero .hero-team-signature { max-width:350px; }
.markisen-inner-hero { background:#192326; color:#fff; padding:65px 0 72px; }
.markisen-inner-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:65px; align-items:center; }
.markisen-inner-hero h1 { font-size:clamp(31px,3.5vw,50px); line-height:1.14; overflow-wrap:anywhere; }
.markisen-inner-hero .eyebrow { color:#ff9633; margin:26px 0 18px; }
.markisen-back { font-size:11px; color:#c8d3d3; }
.markisen-inner-hero p { color:#e1e5e5; font-size:16px; }
.markisen-inner-hero figure { margin:0; }
.markisen-inner-hero figure img { width:100%; height:350px; object-fit:cover; border-radius:7px; }
.markisen-inner-hero figcaption { font-size:12px; color:#b8c5c5; margin-top:12px; }
.sauna-service-track { grid-template-columns:repeat(6,minmax(0,1fr)); }
.sauna-service-track > div { line-height:1.35; }
.section-intro > p { max-width:430px; }
.source-section { overflow-wrap:anywhere; }
.source-section > div { margin:0; }
.source-section h2 { font-size:29px; margin-bottom:22px; }
.source-section h3 { font-size:20px; margin:24px 0 12px; }
.source-section h4 { font-size:18px; }
.source-section p,.source-section li { font-size:15px; line-height:1.85; }
.source-section ul,.source-section ol { padding-left:22px; }
.source-section a { text-decoration:underline; text-decoration-color:#ecb195; text-underline-offset:3px; }
.source-section a:has(h3) { display:block; margin:25px 0; text-decoration:none; }
.source-section details { margin:10px 0; border:1px solid #e2e2db; padding:16px; border-radius:7px; }
.source-section summary { cursor:pointer; font-weight:750; }
.source-section details p:first-of-type { margin-top:12px; }
.contact-copy .provider-note { font-size:11px; margin-top:25px; opacity:.8; }
.contact-person { display:flex; gap:14px; align-items:center; margin:28px 0; font-size:12px; }
.contact-person img { border-radius:50%; width:64px; height:64px; object-fit:cover; }
.contact-phone { display:flex; gap:15px; align-items:center; margin-top:26px; font-weight:850; font-size:28px; }
.contact-phone small { display:block; font-size:11px; font-weight:500; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.inquiry-form label small { font-weight:400; color:#69716d; }
.inquiry-form .consent { display:flex; align-items:flex-start; gap:10px; font-size:11px; line-height:1.65; font-weight:400; margin:16px 0; }
.inquiry-form .consent input { width:18px; min-width:18px; height:18px; margin:3px 0 0; padding:0; }
.form-status:empty { display:none; }
.form-status { margin:15px 0; padding:13px; font-size:13px; background:#f2f1ec; }
.form-status[data-state=error] { background:#fff0ed; color:#a12119; }
.form-status[data-state=success] { background:#e4f5e8; color:#185c34; }
.form-submit { width:100%; }
.project-lightbox figure { margin:0; }
.project-lightbox img { max-height:78vh; object-fit:contain; width:auto; margin:auto; }
.project-lightbox figcaption strong,.project-lightbox figcaption span { display:block; }
.project-lightbox figcaption { padding:15px; }
.district-grid a { min-width:0; }
.district-grid a span { white-space:normal; }
.ez-reader-index-body a { overflow-wrap:anywhere; }
@media(max-width:1100px) { .brand.markisen-brand,.brand.markisen-brand img { width:156px; }.brand.markisen-brand > span { font-size:8px; padding-left:34px; letter-spacing:2px; }.desktop-nav { gap:12px; }.footer-top { grid-template-columns:1fr 1fr; gap:36px; }.markisen-inner-grid { gap:30px; } }
@media(max-width:800px) {
 .markisen-hero .hero-team-photo img { object-position:center top; }
 .markisen-hero .hero-copy { padding-top:clamp(280px,70vw,460px); }
 .markisen-hero .hero-copy .seo-original-h1 { font-size:clamp(28px,7.1vw,38px); line-height:1.12; letter-spacing:-1px; }
 .markisen-hero .hero-copy .hero-service-line { font-size:15px; margin-top:14px; }
 .markisen-hero .hero-copy .hero-lead { font-size:16px; }
 .markisen-hero .hero-copy .hero-buttons { display:flex; margin-top:20px; }
 .markisen-hero .hero-kicker .eyebrow { font-size:9px; letter-spacing:1.1px; }
 .markisen-hero .hero-kicker > .icon { width:32px; height:32px; }
 .markisen-inner-grid { grid-template-columns:1fr; }
 .markisen-inner-hero { padding:40px 0; }
 .markisen-inner-hero h1 { font-size:32px; }
 .markisen-inner-hero figure img { height:230px; }
 .sauna-service-track { display:flex; overflow:auto; }
 .sauna-service-track > div { flex:0 0 150px; }
 .utility-inner > span:nth-child(2) { display:none; }
 .brand.markisen-brand,.brand.markisen-brand img { width:145px; }
 .brand.markisen-brand > span { padding-left:31px; font-size:7px; }
 .header-call { font-size:11px; padding:10px 8px; }
 .header-inner { gap:7px; }
 .menu-button { width:36px; }
 .source-section h2 { font-size:25px; }
 .form-row { grid-template-columns:1fr; gap:0; }
 .footer-top { grid-template-columns:1fr 1fr; }
 .contact-phone { font-size:25px; }
}
@media(max-width:380px) { .brand.markisen-brand,.brand.markisen-brand img { width:130px; }.brand.markisen-brand > span { padding-left:29px; letter-spacing:1.6px; }.header-call { font-size:10px; }.header-call .icon { width:15px; }.footer-top { grid-template-columns:1fr; } }

/* Dedicated Markisen Service badge, matched to the Sauna family. */
.brand.markisen-brand { width:220px; }
.brand.markisen-brand img { width:100%; height:auto; }
.header { background:#fff; }
.footer .brand.markisen-brand { width:234px; }
.footer .brand.markisen-brand img { width:100%; }
@media(max-width:1100px) { .brand.markisen-brand { width:184px; } }
@media(max-width:800px) { .brand.markisen-brand { width:164px; } }
@media(max-width:380px) { .brand.markisen-brand { width:164px; } }

/* Notdienst tariffs and the new terrace image series. */
.markisen-price-scope {padding:18px 23px;color:#5b615f;font-size:13px;line-height:1.7;margin:0;}
.markisen-price-terms {margin-top:20px;color:#59615c;font-size:12px;line-height:1.7;max-width:1050px;}
.markisen-price-terms p {font-size:12px;margin:7px 0;}
.markisen-price-terms a {text-decoration:underline;text-underline-offset:3px;}
.markisen-hero .hero-team-photo img {object-position:center center;}
@media(max-width:800px){.markisen-hero .hero-team-photo img{object-position:center top}.markisen-hero .hero-team-photo{height:460px}.ez-rate-pair{gap:16px}.ez-rate-pair strong{font-size:38px}.ez-price-available{font-size:9px}.ez-travel-line{gap:15px;align-items:center}.ez-travel-line strong{white-space:nowrap}.markisen-price-scope{padding:17px}}

@media(max-width:800px){.ez-price-overview-grid .ez-emergency-prices{order:-1}}
