@import url('logo.css?v=4b1e649031');
@import url('image-lightbox.css');

/* Die Landingpages verwenden dieselben Maße, Farben und Bausteine wie die Hauptseite. */
.seo-page .page-hero{padding:78px 0 70px}
.seo-page .page-hero .container{max-width:760px;margin-left:max(20px,calc((100% - 1160px)/2));margin-right:20px}
.seo-intro{max-width:100%;margin:0 auto}
.seo-feature-image{width:100%;height:auto;max-height:520px;object-fit:contain;background:#edf1e9;display:block;border-radius:3px;margin:0 0 2.35rem;box-shadow:var(--shadow);cursor:zoom-in}
.seo-feature-image--banner{height:clamp(280px,34vw,440px);max-height:none;object-fit:contain;object-position:center}
.seo-page .button{max-width:100%;white-space:normal;text-align:center}
.seo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.seo-card{background:#fff;padding:30px;box-shadow:0 4px 16px rgba(18,45,34,.07);border-top:3px solid var(--sage)}
.seo-card h2{margin-top:0}
.seo-card ul{padding-left:1.15rem}
.seo-callout{border-left:4px solid var(--gold);padding:20px 24px;background:#fffdf9;margin-top:26px}
.seo-link-list{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0}
.seo-link-list a{border:1px solid var(--line);background:#fff;padding:9px 13px;font-weight:bold;color:var(--forest)}
.seo-link-list a:hover{background:var(--green);border-color:var(--green);color:#fff}
.seo-page .footer{margin-top:0}
.seo-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}
.seo-price-grid h3{margin:0}.seo-price-grid p{margin:10px 0}.smaragd-price{font-size:1.5rem;font-weight:700;color:var(--forest)}
#smaragd-preise{scroll-margin-top:140px;margin-bottom:24px}
@media(max-width:480px){.seo-price-grid{grid-template-columns:1fr}.seo-price-grid .seo-card{padding:18px}}
.page-hero--individual{background-color:#214a35;background-image:linear-gradient(90deg,rgba(20,48,35,.86),rgba(20,48,35,.42)),var(--page-hero-image)!important;background-position:center,center;background-repeat:no-repeat;background-size:cover,contain;min-height:clamp(310px,36vw,480px);display:flex;align-items:center}
.about-visit-image{min-height:340px!important;background-position:center!important;background-repeat:no-repeat!important;background-size:contain!important;background-color:#edf1e9!important}
.feature-icon{display:flex!important;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:var(--green);color:#fff}
.feature-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.map-placeholder--enhanced{min-height:360px!important;background:linear-gradient(90deg,rgba(29,71,49,.88),rgba(29,71,49,.45)),url('../images/start-hero.webp') center/cover no-repeat!important;display:flex;align-items:center;padding:42px;box-shadow:var(--shadow)}
.map-placeholder--enhanced h2,.map-placeholder--enhanced p{color:#fff}
.map-placeholder--enhanced .eyebrow{color:#e6c776}
.seo-local-section{margin:clamp(2.5rem,6vw,5rem) 0 0;padding:clamp(1.4rem,3vw,2.4rem);border:1px solid rgba(35,76,53,.16);border-radius:1.25rem;background:linear-gradient(135deg,#f7f8f4,#edf3ea)}
.seo-local-section h2{margin-top:0}.seo-local-section p{max-width:75ch}.seo-local-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}.seo-local-section .button{margin:0}.seo-local-more{margin:1.5rem 0 0;font-size:.96rem}.seo-faq{display:grid;gap:.65rem;margin-top:1.4rem}.seo-faq details{padding:.85rem 1rem;border-radius:.75rem;background:#fff}.seo-faq summary{font-weight:700;cursor:pointer}.seo-faq p{margin:.65rem 0 0}
@media (max-width:760px){
  .seo-local-actions{display:grid}
  .seo-local-actions .button{width:100%}
  .seo-page .page-hero{padding:38px 0 34px}
  .seo-page .page-hero .container{margin-left:auto;margin-right:auto}
  .page-hero h1{font-size:clamp(1.8rem,8vw,2.7rem);hyphens:auto;overflow-wrap:anywhere}
  .seo-feature-image{max-height:420px;margin-bottom:1.5rem}
  .seo-feature-image--banner{height:clamp(210px,58vw,290px);max-height:none;object-fit:contain}
  .page-hero--individual{min-height:230px;background-position:center,center;background-size:cover,contain}
  .about-visit-image{min-height:220px!important}
  .map-placeholder--enhanced{min-height:300px!important;padding:28px}
  .seo-grid{grid-template-columns:1fr;gap:16px}
  .seo-card{padding:22px}
}

/* Sichtbare Tastaturfokusse und reduzierte Bewegung ohne Einfluss auf das Markenbild. */
:where(a,button,input,textarea,select):focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{animation:none!important;transition:none!important}}
