/* Warm, calm palette ("Farben: wärmer und ruhiger").
   Loaded last; overrides the colour variables and a few hard-coded colours. */
:root{
  --color-primary:#4f6a5e;      /* deep calm sage: links, buttons */
  --color-secondary:#ebe1d2;    /* warm linen */
  --color-bg:#f7f1e8;           /* soft cream page background */
  --color-text:#4a3f36;         /* warm brown-grey body text */
  --color-text-light:#6b5d50;   /* warm taupe secondary text */
  --color-white:#fbf7f1;        /* warm off-white */
  --warm-heading:#3e342c;
  --warm-sand:#efe6d8;
  --warm-line:#e2d6c5;
  --warm-clay:#8e5a43;          /* muted clay accent, used sparingly */
  --warm-clay-soft:#d2ad97;
  --warm-sage-soft:#8da399;
  --warm-sage-hover:#445c51;
  --warm-deep:#3e352e;          /* footer */
  --warm-on-deep:#f3ebe0;
  --warm-on-deep-muted:#c4b6a6;
  --warm-shadow:rgba(62,52,44,.08);
}

body{background-color:var(--color-bg);color:var(--color-text)}
h1,h2,h3{color:var(--warm-heading)}
::selection{background:#e6d3c3;color:var(--warm-heading)}

/* Links in running text: calm sage, hover in muted clay */
.intro a,.bio-text a,.offer-card a,.booking a:not(.btn){color:var(--color-primary)}
.intro a:hover,.bio-text a:hover,.offer-card a:hover,.booking a:not(.btn):hover{color:var(--warm-clay);opacity:1}

/* Header / navigation */
header{background:rgba(247,241,232,.94);box-shadow:0 1px 0 var(--warm-line),0 4px 18px rgba(62,52,44,.05)}
.logo{color:var(--warm-heading)}
#nav-menu ul li a{color:var(--color-text)}
#nav-menu ul li a:hover{color:var(--color-primary);opacity:1}
#nav-menu .btn-sm{border-color:var(--warm-sage-soft);color:var(--color-primary);background:transparent;transition:background-color .3s,border-color .3s}
#nav-menu .btn-sm:hover{background:var(--warm-sand);border-color:var(--color-primary)}
#nav-menu .lang-switch{color:var(--color-text);border-color:#b8a998}
#nav-toggle span{background:var(--color-primary)}
@media (max-width:1100px){
  nav#nav-menu{background:var(--color-bg);box-shadow:-4px 0 24px rgba(62,52,44,.10)}
  nav#nav-menu ul li{border-bottom-color:var(--warm-line)}
  nav#nav-menu .btn-sm{color:var(--color-primary);background:none;border:0}
  nav#nav-menu .btn-sm:hover{background:none}
}

/* Buttons: gentle muted sage, rounded, no jumping */
.btn{background-color:var(--color-primary);color:var(--color-white);letter-spacing:.03em;font-weight:400;padding:.95rem 1.9rem;transition:background-color .3s,color .3s}
.btn:hover{background-color:var(--warm-sage-hover);transform:none;opacity:1}
.booking a.btn{color:var(--color-white);text-decoration:none}
.booking a.btn:hover{color:var(--color-white)}

/* Intro + indications box */
.intro p{color:var(--color-text-light)}
.intro .indications{background:var(--color-white);border:1px solid var(--warm-line);border-radius:14px;padding:1.6rem 1.8rem}
.intro .indications p,.intro .indications li{color:var(--color-text)}
.intro .indications .bio-training-title{color:var(--warm-heading)}

/* Über mich */
.bio-image,video.bio-image{box-shadow:20px 20px 0 #e6d9c6}
@media (max-width:768px){.bio-image,video.bio-image{box-shadow:10px 10px 0 #e6d9c6}}
#bio .bio-training{border-top-color:var(--warm-line)}
#bio .bio-training-item dt.year{color:var(--warm-clay)}

/* Angebot: linen band with soft cream cards */
.offerings{background-color:var(--color-secondary)}
.offer-card{background:var(--color-white);border:1px solid #e4d8c7;border-top:3px solid var(--warm-clay-soft);box-shadow:0 4px 16px var(--warm-shadow);border-radius:12px}
.offer-card:hover{transform:translateY(-3px)}
.offer-card p{color:var(--color-text-light)}

/* Ablauf: step titles in calm sage (inline colour uses the same variable) */
#ablauf ol li::marker{color:var(--warm-clay)}
.ablauf-form-links,.ablauf-form-links a{color:var(--color-primary)}
.ablauf-form-links a:hover{color:var(--warm-clay);opacity:1}

/* Preise */
#prices p{color:var(--color-text)}

/* Termin: full-width warm sand band for rhythm */
.booking{background:var(--warm-sand);box-shadow:0 0 0 100vmax var(--warm-sand);clip-path:inset(0 -100vmax)}
.booking p{color:var(--color-text)}

/* So findest du mich */
.find-me-note{color:var(--color-text-light)}
#map-iframe{box-shadow:0 10px 30px var(--warm-shadow) !important}
.location{padding-top:var(--spacing-section)}

/* Footer: deep warm brown instead of near-black */
footer{background-color:var(--warm-deep);color:var(--warm-on-deep)}
.footer-content h3{color:var(--warm-on-deep)}
.contact-link{color:var(--warm-on-deep)}
.contact-icon{stroke:var(--warm-clay-soft)}
.copyright{color:var(--warm-on-deep-muted)}
