/* Zusätzliche Inhaltsseiten und Startseitenabschnitte im Exposé-Design. */
.content-main{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;min-width:0}
.guide-intro h1{margin:0 0 20px;color:var(--editorial-green);font:400 clamp(36px,4vw,54px)/1.06 Georgia,"Times New Roman",serif;letter-spacing:-.035em}
.guide-intro>p:not(.editorial-kicker),.service-card p,.content-cta p{font-size:14px;line-height:1.75;color:#5d5a53;margin:0 0 16px;max-width:900px}
.guide-intro .guide-note{font-size:12px!important;color:#746c60!important}
.guide-topic h2,.service-card h2,.content-cta h2,.benefit-panel h2{font:400 clamp(27px,3vw,36px)/1.15 Georgia,"Times New Roman",serif;margin:0 0 20px;letter-spacing:-.025em}
.guide-topics{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.guide-topics a{padding:10px 14px;border:1px solid var(--editorial-line);color:var(--editorial-green);font-size:12px;text-decoration:none}
.guide-topics a:hover{border-color:var(--editorial-red);background:#faf7f1}
.guide-search{margin:22px 0 0;max-width:650px}
.guide-search label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
.guide-search input{box-sizing:border-box;width:100%;padding:13px 14px;border:1px solid #b7ad9b;background:#fff;color:#173f31;font:inherit;border-radius:0}
.guide-search input:focus-visible{outline:3px solid #c09a53;outline-offset:3px}
.guide-search p{font-size:12px;margin:10px 0 0;color:#5d5a53}
.guide-question{border-top:1px solid var(--editorial-line)}
.guide-question:last-child{border-bottom:1px solid var(--editorial-line)}
.guide-question summary{cursor:pointer;position:relative;list-style:none;padding:18px 34px 18px 0;font-weight:600;font-size:14px;line-height:1.6}
.guide-question summary::-webkit-details-marker{display:none}
.guide-question summary::after{content:"+";position:absolute;right:4px;top:17px;color:var(--editorial-red);font-size:23px;font-weight:400}
.guide-question[open] summary::after{content:"−"}
.guide-question summary:focus-visible{outline:3px solid #c09a53;outline-offset:3px}
.guide-answer p{margin:0;padding:0 20px 20px 0;color:#5d5a53;font-size:14px;line-height:1.8;max-width:880px}
.guide-topic{scroll-margin-top:calc(var(--editorial-header-height) + 24px)}
.guide-question{scroll-margin-top:calc(var(--editorial-header-height) + 24px)}
.guide-no-results a,.guide-sources a,.service-links a{color:var(--editorial-green);text-underline-offset:4px}
.guide-sources p{font-size:12px;line-height:1.7;color:#6c655a;margin:0 0 12px}
.guide-sources p:last-child{margin-bottom:0}
[hidden]{display:none!important}
.service-grid{width:min(1120px,100%);min-width:0;margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.service-grid .service-card{height:100%;box-sizing:border-box;min-width:0;max-width:100%}
.service-card ul{padding-left:20px;font-size:13px;line-height:1.8;color:#5d5a53;margin:16px 0 24px}
.service-links{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:12px}
.content-cta .actions{margin-top:22px}
.google-review-link{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;max-width:100%;margin:0 0 23px;color:#4c514d;font-size:12px;text-decoration:none;line-height:1.5}
.google-review-link svg{display:block;flex-shrink:0}
.google-review-link .review-stars{color:#d9a722;letter-spacing:1px;font-size:16px;line-height:1}
.google-review-link .review-count{text-decoration:underline;text-underline-offset:3px}
.google-review-link .review-invite{flex-basis:100%;font-size:11px;color:#5d5a53}
.google-review-link:hover .review-invite{text-decoration:underline}
.benefit-panel{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(240px,.85fr);gap:40px;align-items:center}
.benefit-list{list-style:none;counter-reset:benefit;padding:0;margin:24px 0 0;display:grid;gap:22px}
.benefit-list li{position:relative;padding-left:72px;min-height:56px}
.benefit-icon{position:absolute;left:0;top:1px;width:54px;height:54px;display:grid;place-items:center;background:var(--editorial-green);color:#fff;border-radius:9px}
.benefit-icon svg{width:36px;height:36px}
.benefit-list h3{font-size:16px;font-weight:600;margin:0 0 7px}
.benefit-list p{font-size:13px;line-height:1.75;color:#5d5a53;margin:0}
.benefit-brand{background:#faf7f1;border:1px solid var(--editorial-line);padding:35px 24px;text-align:center;min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.benefit-brand img{width:min(220px,100%);height:auto}
.benefit-brand p{font:400 24px/1.3 Georgia,"Times New Roman",serif;margin:24px 0 16px}
.benefit-brand a{color:var(--editorial-green);font-size:12px;text-underline-offset:4px}
.area-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.area-project-photo,.area-map{width:100%;aspect-ratio:2/1;display:block;background:#e8e3d8}
.area-project-photo{height:auto;object-fit:cover}
.area-map{position:relative;overflow:hidden}
.area-map svg{display:block;width:100%;height:100%}
.area-map-note{position:absolute;bottom:7px;left:10px;right:10px;font-size:10px;color:#52614e}
.area-column{min-width:0}
.area-column h3{font:400 25px/1.2 Georgia,"Times New Roman",serif;margin:22px 0 14px;letter-spacing:-.015em}
.area-column p{font-size:13px;line-height:1.75;color:#5d5a53}
.area-column .actions{margin-top:22px}
.home-benefits{padding-bottom:18px}
@media(max-width:900px){.benefit-panel{grid-template-columns:minmax(0,1.4fr) minmax(200px,.8fr);gap:24px}.benefit-brand{padding:25px 16px}.area-grid{gap:20px}.service-grid{gap:20px}}
@media(max-width:720px){.service-grid,.area-grid,.benefit-panel{grid-template-columns:1fr}.benefit-brand{min-height:0;padding:28px 20px}.benefit-brand img{width:155px}.benefit-brand p{font-size:22px;margin:18px 0 12px}.content-main{gap:22px}.area-column h3{font-size:25px}.area-map-note{font-size:9px}}
@media(max-width:620px){.editorial-page .main-nav{gap:14px}.editorial-page .nav-link{font-size:13px}.google-review-link{gap:7px 8px;font-size:11px}.google-review-link .review-stars{font-size:15px}.guide-topics{gap:8px}.guide-topics a{padding:9px 10px;font-size:11px}.guide-question summary{font-size:14px}.guide-answer p{padding-right:0}.service-card h2{font-size:29px}.benefit-list li{padding-left:39px}}
/* Instagram-Projektreihe und persönlicher Kontakt auf der Startseite. */
.instagram-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.instagram-heading h2,.home-contact-section h2{margin:0 0 12px;font:400 clamp(28px,3vw,38px)/1.12 Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.instagram-heading p,.home-contact-intro{font-size:14px;line-height:1.7;color:#5d5a53;margin:0}
.instagram-controls{display:flex;gap:8px;flex-shrink:0}
.instagram-controls button{width:42px;height:42px;border:1px solid #b7ad9b;background:transparent;color:var(--editorial-green);cursor:pointer;font-size:22px}
.instagram-controls button:disabled{opacity:.35;cursor:default}
.instagram-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding-bottom:12px;scrollbar-width:thin;scrollbar-color:#9d153f #e8e2d6}
.instagram-track:focus-visible{outline:3px solid #c09a53;outline-offset:4px}
.instagram-card{flex:0 0 calc((100% - 18px)/2);min-width:0;scroll-snap-align:start}
.instagram-card>a{display:block;height:100%;border:1px solid var(--editorial-line);background:#faf7f1;color:inherit;text-decoration:none}
.instagram-card>a:hover{border-color:var(--editorial-red)}
.instagram-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center}
.instagram-card-copy{padding:20px}
.instagram-card-copy>span:first-child{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#746c60}
.instagram-card h3{font:400 24px/1.2 Georgia,"Times New Roman",serif;margin:10px 0}
.instagram-card p{font-size:13px;line-height:1.6;color:#5d5a53;margin:0 0 20px}
.instagram-card-link,.instagram-profile-link{font-size:12px;text-decoration:underline;text-underline-offset:4px}
.instagram-profile-link{display:inline-block;margin-top:20px;color:var(--editorial-green)}
.home-contact-section{padding-top:32px}
.home-contact-grid{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:40px;align-items:center;margin-top:28px}
.home-contact-person{margin:0;width:min(280px,100%);justify-self:center}
.home-contact-person img{display:block;width:100%;height:auto;max-height:320px;object-fit:contain;object-position:bottom}
.home-contact-person figcaption{padding:14px 12px;background:var(--editorial-green);color:#fff;display:grid;gap:5px;text-align:center}
.home-contact-person strong{font-size:14px}
.home-contact-person figcaption span{font-size:11px}
.home-contact-options h3{font:400 28px/1.2 Georgia,"Times New Roman",serif;margin:0 0 16px}
.home-contact-options p{font-size:14px;line-height:1.75;color:#5d5a53;margin:0 0 20px}
.contact-action-row{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}
.contact-action-row .btn{min-width:100px}
.contact-phone-link{display:block;width:fit-content;color:var(--editorial-green);font-size:24px;font-weight:600;text-decoration:none;margin-bottom:12px}
.contact-email-link{display:inline-block;color:var(--editorial-green);font-size:14px;text-underline-offset:4px;margin-bottom:22px}
.home-contact-options .contact-visit-note{font-size:12px;margin:0}
@media(max-width:720px){.instagram-card{flex-basis:86%}.instagram-heading{align-items:flex-start}.instagram-controls button{width:36px;height:36px}.home-contact-grid{grid-template-columns:1fr;gap:28px}.home-contact-person{width:220px}.home-contact-person img{max-height:275px}.home-contact-options h3{font-size:27px}}
@media(max-width:540px){.instagram-heading{flex-wrap:wrap}.instagram-card-copy{padding:16px}.instagram-card h3{font-size:23px}.contact-action-row .btn{flex:1 1 120px;min-width:0}.home-contact-grid{gap:24px}.home-contact-options h3{font-size:25px}}
/* Punkte und Beratungsleiste entsprechend dem Reno&In-Flyer. */
.benefit-list h3{text-transform:uppercase;font-size:16px;line-height:1.35}
.benefit-promises{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:var(--editorial-red);color:#fff;padding:22px 12px}
.benefit-promise{display:flex;align-items:center;justify-content:center;gap:14px;min-width:0;padding:0 15px}
.benefit-promise + .benefit-promise{border-left:1px solid rgba(255,255,255,.65)}
.benefit-promise svg{flex:0 0 38px;width:38px;height:38px}
.benefit-promise p{margin:0;font-size:13px;font-weight:600;line-height:1.5;text-transform:uppercase}
@media(max-width:900px){.benefit-promise{gap:9px;padding-inline:10px}.benefit-promise p{font-size:11px}.benefit-promise svg{flex-basis:32px;width:32px;height:32px}}
@media(max-width:620px){.benefit-list li{padding-left:65px}.benefit-list h3{font-size:15px}.benefit-icon{width:49px;height:49px}.benefit-icon svg{width:33px;height:33px}.benefit-promises{grid-template-columns:1fr;padding:6px 20px}.benefit-promise{justify-content:flex-start;padding:16px 0;gap:15px}.benefit-promise + .benefit-promise{border-left:0;border-top:1px solid rgba(255,255,255,.5)}.benefit-promise p{font-size:12px}}

/* Anschrift im Kontaktbereich. */
.contact-business-address{display:flex;align-items:flex-start;gap:16px;margin:4px 0 20px;padding:22px 24px;background:#faf7f1;border:1px solid var(--editorial-line);border-left:3px solid var(--editorial-red);font-style:normal;box-sizing:border-box;max-width:100%;color:var(--editorial-green)}
.contact-address-icon{width:25px;height:29px;flex:0 0 25px;margin-top:3px}
.contact-address-copy{display:grid;gap:9px;min-width:0;font-size:16px;line-height:1.65}
.contact-address-copy .contact-address-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#746c60}
.contact-address-copy strong{font-size:19px;line-height:1.3;font-weight:600}
.contact-address-copy a{font-size:12px;color:var(--editorial-green);text-underline-offset:4px;margin-top:3px}

/* Ausführliche Leistungen mit eigenen Referenzbildern. */
.service-grid .service-detail{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:26px 36px;height:auto;scroll-margin-top:calc(var(--editorial-header-height) + 24px)}
.service-detail-heading{grid-column:1/-1}
.service-detail-heading>p:last-child{margin-bottom:0}
.service-detail-photo{min-width:0;margin:0;align-self:start}
.service-detail-photo>a{display:block}
.service-detail-photo img{display:block;width:100%;max-width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}
.service-detail-photo figcaption{font-size:11px;line-height:1.7;color:#746c60;margin-top:12px}
.service-detail-photo figcaption a{color:var(--editorial-green);text-underline-offset:3px}
.service-detail-copy{min-width:0}
.service-detail-copy h3{font-size:16px;line-height:1.45;color:var(--editorial-green);margin:26px 0 10px}
.service-detail-copy h3:first-child{margin-top:0}
.service-detail-copy ol{padding-left:21px;margin:0;color:#5d5a53;font-size:14px;line-height:1.75}
.service-detail-copy li+li{margin-top:12px}
.service-detail .service-inquiry{margin-top:22px;white-space:normal;max-width:100%}
.service-card[id]{scroll-margin-top:calc(var(--editorial-header-height) + 24px)}
@media(max-width:760px){.service-grid .service-detail{grid-template-columns:1fr;gap:24px}.service-detail-heading{grid-column:auto}.service-detail-photo{width:100%;max-width:500px;justify-self:center}.service-detail-photo img{height:auto;max-height:none;aspect-ratio:auto}}

.service-detail-gallery{display:grid;gap:24px;min-width:0;align-self:start}
@media(max-width:760px){.service-detail-gallery{width:100%;max-width:500px;justify-self:center}}

.service-detail--text .service-detail-copy{grid-column:1/-1;max-width:900px}

/* Vollständige Sprungübersicht der Leistungsbereiche. */
.service-overview{margin-top:30px;border-top:1px solid var(--editorial-line);padding-top:24px}
.service-overview h2{font:400 26px/1.2 Georgia,"Times New Roman",serif;color:var(--editorial-green);margin:0 0 18px}
.service-overview ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;list-style:none;padding:0;margin:0}
.service-overview li{min-width:0;border-bottom:1px solid var(--editorial-line)}
.service-overview a{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:54px;padding:13px 0;box-sizing:border-box;font-size:13px;line-height:1.6;color:var(--editorial-green);text-decoration:none}
.service-overview a>span:last-child{color:var(--editorial-red);flex-shrink:0}
.service-overview a:hover>span:first-child{text-decoration:underline;text-underline-offset:4px}
.service-overview a:focus-visible{outline:2px solid var(--editorial-red);outline-offset:3px}
@media(max-width:620px){.service-overview ul{grid-template-columns:1fr}.service-overview h2{font-size:24px}.contact-business-address{padding:20px 16px;gap:12px}.contact-address-copy{font-size:15px}}

.service-overview--intro{margin-top:0;padding-top:0;border-top:0}

/* Lesbare Inhalte auch bei schmalen Ansichten und vergrößerter Schrift. */
.editorial-services .content-main>.reference-panel,
.service-detail-heading,.service-detail-gallery,.service-detail-photo>a{min-width:0;max-width:100%}
.editorial-services .content-main :is(h1,h2,h3,p,li,figcaption,a,button){overflow-wrap:anywhere;hyphens:auto}
.service-overview a>span:first-child{min-width:0}
@media(max-width:760px){
  .editorial-services .service-grid,
  .editorial-services .service-grid .service-detail{grid-template-columns:minmax(0,1fr)}
  .editorial-services .service-grid .service-card{padding:24px 20px}
  .editorial-services .service-detail-heading{grid-column:1/-1}
  .editorial-services .service-detail-photo,
  .editorial-services .service-detail-gallery{width:100%;max-width:100%}
  .editorial-services .service-card h2{font-size:clamp(25px,6.5vw,30px);line-height:1.2}
  .editorial-services .service-inquiry{padding:12px 16px;line-height:1.6;min-height:44px}
}

/* Anschrift und Kontaktspalte bleiben innerhalb der mobilen Inhaltsbreite. */
.home-contact-section .reference-panel,.home-contact-grid,.home-contact-options{min-width:0;max-width:100%}
.home-contact-grid>*{min-width:0}
.home-contact-section :is(h2,h3,p,a){overflow-wrap:anywhere}
@media(max-width:720px){
 .home-contact-grid{grid-template-columns:minmax(0,1fr)}
 .home-contact-options .contact-business-address{display:block;width:100%;padding:20px 0;margin:6px 0 18px;border-left:0;border-right:0;border-top:1px solid var(--editorial-line);border-bottom:1px solid var(--editorial-line);background:transparent}
 .contact-business-address .contact-address-icon{display:none}
 .contact-business-address .contact-address-copy{gap:8px;font-size:16px;line-height:1.6;overflow-wrap:anywhere}
 .contact-business-address .contact-address-copy strong{font-size:18px}
 .contact-business-address .contact-address-copy a{display:inline-block;justify-self:start;min-height:44px;padding:10px 0;margin:0;font-size:13px}
}
