/* Globale Designkorrekturen und neue Angebotsseiten – Version 1.5.2 */
:root{--brown:#715b43}

/* Links bleiben im Normalzustand frei von pauschalen Unterstreichungen. */
a,
main p a,
main li a,
.legal-content a,
.footer-links a,
.footer-copy a,
.contact-direct a,
.training-map>a,
.level-info a,
.offer-card>a,
.service-more,
.privacy-settings-link,
.consent-note a,
.form-consent a,
[aria-current="page"]{
  text-decoration:none!important;
}

/* Links sind durch Farbe, Gewicht und klaren Fokus weiterhin erkennbar. */
main p a,main li a,.legal-content a,.form-consent a{color:var(--forest);font-weight:700}
.contact main p a{color:var(--sand)}
a:hover,.privacy-settings-link:hover,.service-more:hover{color:var(--brown)}
.contact a:hover,footer a:hover{color:#fff}
[aria-current="page"]{font-weight:800;background:transparent;border-radius:0}
.site-header nav a[aria-current="page"]{color:#8b552f}
.site-header:not(.page-header) nav a[aria-current="page"]{color:#f2cf8f}
.footer-links a[aria-current="page"]{color:var(--sand)}
.subnav [aria-current="page"]{background:#e4eadf;box-shadow:inset 0 0 0 2px var(--forest)}

/* Training erhält wie das Team ein kompaktes Untermenü. */
.training-nav{gap:4px}
.training-nav .nav-dropdown-toggle{padding:18px 4px;font-size:.9rem}
.training-nav .nav-dropdown-menu{min-width:230px}

/* Prüfungshinweise auf Level 2 und 3 stehen immer gleich im rechten Infoblock. */
.exam-block{padding-bottom:25px;margin-bottom:25px;border-bottom:1px solid var(--line)}
.exam-block .eyebrow{margin-bottom:8px}
.exam-block h2{margin:0 0 12px!important}
.exam-block p:not(.eyebrow){margin:0}
.exam-block .document-link{margin-top:20px}
.info-card>.requirements-title{font-family:var(--serif);font-size:1.35rem;margin:0 0 12px}

/* Zwei Trainingsplätze in einer stabilen Spalte. */
.contact-details{display:grid;gap:24px;align-content:start}
.contact-details .training-location{border-top:1px solid #65746c;padding:25px 0;display:flex;flex-direction:column}
.contact-details .training-location p{margin:8px 0 15px;color:#d8e0db;font-size:.86rem;line-height:1.55}
.contact-details .training-location a{color:var(--sand);font-size:.85rem;font-weight:700}
.training-location-secondary{padding-bottom:0!important}

/* Footer bleibt auch mit zusätzlichen Links sauber ausgerichtet. */
footer{display:grid!important;grid-template-columns:minmax(170px,220px) minmax(280px,1fr) auto minmax(320px,auto);align-items:center;gap:25px 32px}
footer img{width:200px}
footer p{margin:0!important;width:auto!important;order:initial!important}
footer .footer-social{margin:0!important}
footer .footer-links{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap}
footer .privacy-settings-link{padding:0;min-height:44px}

/* Eigene Detailseiten für Mantrailing und Hundeführerschein. */
.service-detail-intro{max-width:860px}
.service-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:42px}
.service-detail-card{background:var(--cream);border-radius:24px;padding:clamp(26px,3vw,42px);box-shadow:0 14px 38px rgba(38,59,50,.1)}
.service-detail-card h2,.service-detail-card h3{font-family:var(--serif);line-height:1.12;margin-top:0}
.service-detail-card h2{font-size:clamp(1.7rem,2.6vw,2.35rem)}
.service-detail-card h3{font-size:1.35rem;margin-top:28px}
.service-detail-card ul{padding-left:1.2rem}
.service-detail-card li{margin:8px 0}
.service-detail-wide{grid-column:span 2}
.service-contact-box{background:var(--deep);color:#fff}
.service-contact-box h2,.service-contact-box h3{color:#fff}
.service-contact-box a{color:var(--sand)!important}
.page-hero-media.service-modal-logo{background:#f6f0e7;display:grid;place-items:center}
.page-hero-media.service-modal-logo img{width:75%;height:75%;object-fit:contain}

/* Klarer Hoverzustand im Schnelleinstieg. */
.quick>a{transition:background-color .3s ease,color .3s ease}
.quick>a:hover,.quick>a:focus-visible{background:#f2dfbb;color:var(--deep)}
.quick>a:hover span,.quick>a:focus-visible span,.quick>a:hover small,.quick>a:focus-visible small{color:var(--deep)}

/* Kennzahlen, Auszeichnungen und Bewertungsaufruf auf der Startseite. */
.proof{background:var(--paper)}
.proof-heading{max-width:850px;margin-bottom:44px}
.proof-heading h2{font-family:var(--serif);font-size:clamp(2.5rem,4.5vw,5rem);font-weight:500;line-height:1.02;margin:0;color:var(--forest)}
.proof-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--cream);border-radius:28px;overflow:hidden;box-shadow:0 18px 45px rgba(38,59,50,.08)}
.proof-stats article{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:180px;padding:28px;text-align:center;border-right:1px solid var(--line)}
.proof-stats article:last-child{border-right:0}
.proof-stats strong{font-family:var(--serif);font-size:clamp(3rem,5vw,5.2rem);font-weight:500;line-height:1;color:var(--brown)}
.proof-stats span{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:700;color:var(--forest);margin-top:12px}
.award-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end;margin:85px 0 32px}
.award-intro h3,.review-copy h3{font-family:var(--serif);font-size:clamp(2rem,3.2vw,3.5rem);font-weight:500;line-height:1.05;margin:0;color:var(--forest)}
.award-intro>p{max-width:560px;margin:0}
.award-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.award-card{min-height:275px;margin:0;background:#fff;border:1px solid #e2d2b7;border-radius:20px;padding:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 34px rgba(38,59,50,.08);overflow:hidden}
.award-card img{display:block;width:100%;height:100%;max-height:330px;object-fit:contain}
.award-stars{color:#d69320;letter-spacing:.08em;font-size:.85rem}
.award-card strong{font-family:var(--serif);font-size:1.25rem;color:var(--forest);margin-top:8px}
.award-card b{font-family:var(--serif);font-size:2.8rem;line-height:1.15;color:var(--brown)}
.award-card small{max-width:145px;color:#626862;line-height:1.45}
.review-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:center;margin-top:38px;padding:clamp(34px,5vw,68px);background:#dfe5de;border-radius:30px}
.member-badges{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.member-badges span{min-height:150px;background:var(--paper);border-radius:20px;padding:22px;display:flex;flex-direction:column;justify-content:center;font-weight:700;color:var(--forest);box-shadow:0 12px 28px rgba(38,59,50,.08)}
.member-badges b{font-family:var(--serif);font-size:2rem;color:var(--brown);margin-bottom:5px}
.review-copy p:not(.eyebrow){max-width:680px;margin:20px 0 28px}

/* Übersichtliche Preisliste. */
.price-page-content{max-width:1440px;width:100%;margin-left:auto;margin-right:auto;padding-left:clamp(22px,4vw,60px);padding-right:clamp(22px,4vw,60px)}
.price-intro{max-width:820px;margin-bottom:44px}
.price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 40px}
.price-card{display:grid;grid-template-rows:24px 92px 100px minmax(205px,1fr) 92px;min-height:547px;padding:clamp(28px,3vw,42px);border-radius:28px;background:#F4EFE5;box-shadow:0 15px 40px rgba(38,59,50,.09);overflow:hidden}
.price-card.featured{background:#F4EFE5}
.price-card:nth-child(odd){background:#D8DFD7}
.price-card:nth-child(even){background:#F4EFE5}
.price-card .eyebrow{grid-row:1;margin:0;align-self:start}
.price-card h2{grid-row:2;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-family:var(--serif);font-size:clamp(1.55rem,2.05vw,2.1rem);line-height:1.08;margin:0;color:var(--forest);align-self:start;overflow-wrap:normal;word-break:normal;hyphens:none}
.price-amount{grid-row:3;display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:baseline;gap:10px;margin:0;color:var(--brown);align-self:center;min-width:0}
.price-amount strong{font-family:var(--serif);font-size:clamp(2.7rem,4.25vw,4.15rem);font-weight:500;line-height:1;white-space:nowrap}
.price-amount span{font-size:.76rem;font-weight:700;white-space:normal}
.price-card ul{margin:0;padding:0;list-style:none}
.price-card>ul{grid-row:4;align-self:start}
.price-card li{position:relative;display:flex;align-items:center;min-height:58px;padding:8px 0 8px 25px;border-bottom:1px solid rgba(113,91,67,.18);box-sizing:border-box}
.price-card li::before{content:"✓";position:absolute;left:0;color:var(--forest);font-weight:800}
.price-card .price-note{grid-row:5;margin:0;padding-top:18px;font-size:.95rem;line-height:1.45;font-weight:800;color:var(--forest);align-self:start}
.price-hero-media{display:grid;place-items:center;background:#edf1ed}
.price-hero-media img{width:82%!important;height:82%!important;object-fit:contain!important}
.price-footer{display:grid;grid-template-columns:110px 1fr auto;gap:30px;align-items:center;margin-top:28px;padding:clamp(28px,4vw,48px);border-radius:28px;background:var(--deep);color:#fff}
.price-footer>img{display:block;width:100%;max-height:145px;object-fit:contain;border-radius:12px}
.price-footer h2{font-family:var(--serif);font-size:clamp(1.8rem,3vw,3rem);margin:0 0 8px;color:#fff}
.price-footer p{margin:0;color:#dce5df}

/* Bildwechsel auf den Team- und Über-mich-Seiten. */
.team-page-hero img{object-position:center 38%}
.christian-page-hero img{object-position:center 42%}
.christian-portrait img{aspect-ratio:1/1;object-position:center}
.about-photo blockquote{color:#fff!important}
.qualification-section{margin-top:72px}
.qualification-section>.prose{margin-bottom:26px}

/* Abwechselnde vertikale Zeitachsen für Qualifikationen und Fortbildungen. */
.qualification-timeline,.training-timeline{position:relative;display:flex;flex-direction:column;gap:20px;border:0}
.qualification-timeline{margin-top:30px;padding:8px 0}
.training-timeline{padding:8px 0}
.qualification-timeline::before,.training-timeline::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:3px;border-radius:999px;background:linear-gradient(var(--sand),var(--forest));transform:translateX(-50%)}
.qualification-timeline .milestone,.training-timeline .training-year{position:relative;width:calc(50% - 42px);margin:0;border:0;border-radius:18px;background:var(--cream);box-shadow:0 10px 26px rgba(38,59,50,.1)}
.qualification-timeline .milestone{display:grid;grid-template-columns:125px minmax(0,1fr);gap:18px;padding:19px 22px}
.qualification-timeline .milestone:nth-child(odd),.training-timeline .training-year:nth-child(odd){align-self:flex-start}
.qualification-timeline .milestone:nth-child(even),.training-timeline .training-year:nth-child(even){align-self:flex-end}
.qualification-timeline .milestone::before,.training-timeline .training-year::before{content:"";position:absolute;z-index:2;top:24px;width:18px;height:18px;border:4px solid var(--paper);border-radius:50%;background:var(--forest);box-shadow:0 0 0 2px var(--sand)}
.qualification-timeline .milestone:nth-child(odd)::before,.training-timeline .training-year:nth-child(odd)::before{right:-51px}
.qualification-timeline .milestone:nth-child(even)::before,.training-timeline .training-year:nth-child(even)::before{left:-51px}
.qualification-timeline .milestone strong{color:var(--brown)}
.training-history{margin-top:75px;padding:0;border-radius:0;background:transparent}
.training-timeline .training-year{overflow:hidden}
.training-timeline .training-year[open]{background:#d8dfd7}
.training-timeline .training-year[open]::before{background:var(--sand);box-shadow:0 0 0 2px var(--forest)}
.training-timeline .training-year summary{min-height:68px;padding:19px 24px;font-family:var(--serif);font-size:1.25rem;background:transparent;color:var(--brown)}
.training-timeline .training-year[open] summary{background:transparent;color:var(--forest)}
.training-timeline .training-year-content{background:rgba(255,255,255,.52)}

@media(max-width:1250px){
  .site-header{padding-left:25px;padding-right:25px}
  .site-header nav{gap:14px;font-size:.82rem}
  footer{grid-template-columns:200px 1fr auto}
  footer .footer-links{grid-column:1/-1;justify-content:center}
}
@media(max-width:1100px){
  .site-header{height:80px;position:fixed;background:rgba(244,239,229,.97);backdrop-filter:blur(10px)}
  .brand img{width:190px}
  .nav-toggle{display:flex;flex-direction:column;gap:4px;align-items:center}
  .nav-toggle span{width:25px;height:2px;background:var(--deep)}
  .nav-toggle b{font-size:.6rem}
  .site-header nav{display:none;position:absolute;left:0;right:0;top:80px;background:var(--paper);padding:25px;flex-direction:column;align-items:stretch;max-height:calc(100vh - 80px);overflow:auto}
  .site-header nav.open{display:flex}
  .page-main{padding-top:80px}
  .nav-dropdown{display:block}
  .nav-dropdown-toggle{width:100%;padding:13px 0;text-align:left}
  .nav-dropdown-menu{position:static;display:none;width:auto;min-width:0;padding:0 0 4px 14px;border:0;box-shadow:none;opacity:1;visibility:visible;transform:none;background:transparent}
  .nav-dropdown.is-open .nav-dropdown-menu{display:block}
  .nav-dropdown-menu a{padding:8px 0!important}
  .site-header:not(.page-header) nav a[aria-current="page"],.site-header nav a[aria-current="page"]{color:#8b552f}
}
@media(max-width:900px){
  .training-nav{display:grid;grid-template-columns:1fr auto}
  .training-nav .nav-dropdown-main{padding:13px 0!important}
  .training-nav .nav-dropdown-toggle{width:auto;padding:13px 10px}
  .training-nav .nav-dropdown-menu{grid-column:1/-1}
  .service-detail-grid{grid-template-columns:1fr 1fr}
  .proof-stats{grid-template-columns:1fr 1fr}
  .proof-stats article:nth-child(2){border-right:0}
  .proof-stats article:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .award-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .award-card:last-child{grid-column:1/-1}
  .review-panel,.award-intro{grid-template-columns:1fr}
  .price-grid{grid-template-columns:1fr 1fr}
  .award-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .award-card:last-child{grid-column:auto}
  footer{grid-template-columns:1fr;text-align:center;justify-items:center}
  footer .footer-links{grid-column:auto;justify-content:center}
}
@media(max-width:650px){
  .service-detail-grid{grid-template-columns:1fr}
  .service-detail-wide{grid-column:auto}
  footer .footer-links{gap:8px 16px}
  .proof-stats,.award-grid,.member-badges{grid-template-columns:1fr}
  .proof-stats article{border-right:0;border-bottom:1px solid var(--line)}
  .proof-stats article:last-child{border-bottom:0}
  .award-card:last-child{grid-column:auto}
  .price-grid,.price-footer{grid-template-columns:1fr}
  .price-card{grid-template-rows:auto;min-height:0}
  .price-card .eyebrow,.price-card h2,.price-amount,.price-card>ul,.price-card .price-note{grid-row:auto}
  .price-card h2{min-height:0;margin:10px 0 18px}
  .price-amount{margin-bottom:18px}
  .price-footer>img{width:min(180px,100%)}
  .qualification-timeline,.training-timeline{padding-left:38px;gap:16px}
  .qualification-timeline::before,.training-timeline::before{left:10px;transform:none}
  .qualification-timeline .milestone,.training-timeline .training-year{width:100%;align-self:stretch!important}
  .qualification-timeline .milestone{grid-template-columns:1fr;gap:4px;padding:16px}
  .qualification-timeline .milestone::before,.training-timeline .training-year::before{left:-36px!important;right:auto!important}
}
