/* reha-psych.de, statische Fassung. Gestaltungswerte 1:1 aus theme/style.css. */
@font-face{font-family:'EB Garamond';font-weight:400;font-style:normal;font-display:swap;src:url(assets/fonts/eb-garamond-400.woff2) format('woff2');}
@font-face{font-family:'EB Garamond';font-weight:500;font-style:normal;font-display:swap;src:url(assets/fonts/eb-garamond-500.woff2) format('woff2');}
@font-face{font-family:'Inter';font-weight:400;font-style:normal;font-display:swap;src:url(assets/fonts/inter-400.woff2) format('woff2');}
@font-face{font-family:'Inter';font-weight:500;font-style:normal;font-display:swap;src:url(assets/fonts/inter-500.woff2) format('woff2');}
@font-face{font-family:'Inter';font-weight:600;font-style:normal;font-display:swap;src:url(assets/fonts/inter-600.woff2) format('woff2');}

:root{
  --navy:#324D65; --slate:#243B4E; --ink:#2B2B2B; --muted:#6B6B6B;
  --paper:#F9F7F3; --paper-alt:#F2EEE6; --line:#E6DFD3;
  --serif:'EB Garamond', Georgia, serif;
  --sans:'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.7;font-size:1.03rem;overflow-x:hidden;}
h1,h2,h3{font-family:var(--serif);font-weight:500;color:var(--navy);line-height:1.25;margin:0 0 .5em;}
p{margin:0 0 1.2em;}
a{color:var(--navy);}
img{max-width:100%;height:auto;}
ul,ol{padding-left:1.4em;}

header.site{border-bottom:1px solid var(--line);padding:1.4rem 2rem;}
.site-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;}
.logo a{display:block;}
.logo img{display:block;height:88px;width:auto;}
nav.main ul{list-style:none;display:flex;gap:1.15rem;margin:0;padding:0;flex-wrap:wrap;}
nav.main a{text-decoration:none;color:var(--ink);font-size:.92rem;letter-spacing:.005em;}
nav.main a:hover{color:var(--navy);}
nav.main a.current{color:var(--navy);border-bottom:1px solid var(--navy);padding-bottom:2px;}
.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:34px;height:30px;padding:0;border:0;background:none;cursor:pointer;}
.nav-toggle span{display:block;width:100%;height:2px;background:var(--navy);}

main{max-width:720px;margin:0 auto;padding:0 1.5rem 5rem;}
main.text-first{padding-top:3.5rem;}

.fp-reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease, transform .7s ease;}
.fp-reveal.in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){.fp-reveal{opacity:1;transform:none;transition:none;}}

.fp-hero-band{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);aspect-ratio:21/8;overflow:hidden;margin-top:-1px;margin-bottom:clamp(40px,5vw,64px);}
.fp-hero-band img{width:100%;height:100%;object-fit:cover;object-position:center 50%;display:block;margin:0;}
@media (max-width:700px){.fp-hero-band{aspect-ratio:4/3;}}
.fp-hero-band.schmal{aspect-ratio:16/5;}
@media (max-width:700px){.fp-hero-band.schmal{aspect-ratio:2/1;}}

.fp-list{margin:1.4rem 0;padding-left:1.2rem;}
.fp-list li{margin-bottom:.6rem;color:var(--ink);}

.cta{display:inline-block;margin-top:.5rem;background:var(--navy);color:#fff;text-decoration:none;padding:.75em 1.6em;border-radius:2px;font-size:.95rem;letter-spacing:.02em;}
.cta:hover{background:var(--slate);color:#fff;}

footer.site{background:var(--paper-alt);border-top:1px solid var(--line);padding:3rem 2rem;margin-top:3rem;}
.footer-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:2rem;font-size:.88rem;color:var(--muted);}
.footer-inner nav ul{list-style:none;display:flex;gap:1.1rem;padding:0;margin:0;flex-wrap:wrap;}
.footer-inner a{color:var(--muted);}
.badge-seal{flex:none;display:block;}

@media (max-width:860px){
  .nav-toggle{display:flex;}
  nav.main{display:flex;flex-direction:column;width:100%;}
  nav.main .nav-toggle{align-self:flex-end;}
  nav.main ul{display:none;flex-direction:column;gap:0;width:100%;background:var(--paper);border:1px solid var(--line);border-radius:6px;margin-top:.8rem;padding:.4rem 0;}
  nav.main.is-open ul{display:flex;}
  nav.main ul a{display:block;padding:.65rem 1.2rem;}
}
@media (max-width:640px){
  main{padding:0 1.25rem 3.5rem;}
  main.text-first{padding-top:2.5rem;}
  .logo img{height:auto;width:100%;max-width:270px;}
}

/* Startseite und Hauptseiten */
main.breit{max-width:920px;}
.hero{text-align:center;padding:1rem 0 3rem;border-bottom:1px solid var(--line);margin-bottom:2.5rem;}
.hero h1{font-size:2.5rem;}
.hero .subtitle{color:var(--muted);font-size:1.08rem;letter-spacing:.02em;}
.lead{font-family:var(--serif);font-size:1.5rem;font-weight:500;color:var(--navy);border-left:3px solid var(--navy);padding-left:1.3rem;margin:2rem 0 2.5rem;}
.hinweis-box{background:var(--paper-alt);border-left:3px solid var(--navy);border-radius:6px;padding:1rem 1.25rem;margin-bottom:2.5rem;font-size:.95rem;}
.fp-services{display:grid;grid-template-columns:repeat(2,1fr);gap:1.8rem;margin:2.5rem 0;}
.fp-service{border-top:1px solid var(--line);padding-top:1rem;position:relative;}
.fp-service h3{font-size:1.15rem;margin-bottom:.3rem;padding-left:1.1rem;position:relative;}
.fp-service h3::before{content:"";position:absolute;left:0;top:.35em;width:6px;height:6px;border-radius:50%;background:var(--navy);}
.fp-service h3 a{color:inherit;text-decoration:none;}
.fp-service h3 a:hover{text-decoration:underline;text-underline-offset:3px;}
.fp-service p{color:var(--muted);font-size:.95rem;margin:0;padding-left:1.1rem;}
.badge-row{display:flex;align-items:center;gap:1.1rem;padding:1.5rem 0;border-top:1px solid var(--line);margin-top:2.5rem;}
.badge-row p{margin:0;color:var(--muted);font-size:.9rem;}
.cta-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-top:1rem;}
.next-link{color:var(--muted);text-decoration:none;font-size:.95rem;}
.next-link:hover{color:var(--navy);}
.next-link .arrow{margin-left:.3em;}
@media (max-width:640px){
  .hero h1{font-size:1.9rem;}
  .fp-services{grid-template-columns:1fr;}
  .badge-row{flex-direction:column;align-items:flex-start;}
  .cta-row{flex-direction:column;align-items:flex-start;}
}

.fp-hero-band.inline{margin-top:clamp(24px,4vw,40px);}
.fp-hero-band.flach{aspect-ratio:21/4;}
@media (max-width:700px){.fp-hero-band.flach{aspect-ratio:2/1;}}
.mood-banner{display:block;width:100%;height:190px;object-fit:cover;border-radius:2px;margin:0 0 2.5rem;}
.fp-service strong a{color:var(--navy);}
.fp-hero-band.bogen{clip-path:url(#arcClip);}

/* Über mich */
.portrait-photo{float:left;width:320px;aspect-ratio:1132/1390;object-fit:cover;border-radius:4px;margin:0 1.8rem 1rem 0;display:block;}
@media (max-width:640px){.portrait-photo{float:none;width:100%;margin:0 0 1.5rem;}}
/* Kontakt */
.mood-contained-row{display:flex;gap:2.2rem;align-items:center;justify-content:center;margin:0 0 2.5rem;flex-wrap:wrap;}
.mood-contained-row img{flex:1 1 260px;max-width:320px;width:100%;height:auto;border-radius:2px;display:block;margin:0;}
@media (max-width:640px){.mood-contained-row{flex-direction:column;}}
dl.contact{display:grid;grid-template-columns:auto 1fr;gap:.4rem 1.2rem;font-size:1rem;margin:0;}
dl.contact dt{color:var(--muted);}
dl.contact dd{margin:0;}
.kontaktformular{margin-top:1rem;}
.kontaktformular label{display:block;margin:0 0 1.1rem;font-size:.95rem;color:var(--ink);}
.kontaktformular input[type=text],.kontaktformular input[type=email],.kontaktformular input[type=number],.kontaktformular select,.kontaktformular textarea{
  display:block;width:100%;margin-top:.35rem;padding:.65rem .8rem;font:inherit;font-size:1rem;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;}
.kontaktformular input.rechnen{max-width:8rem;}
.kontaktformular input:focus,.kontaktformular select:focus,.kontaktformular textarea:focus{outline:2px solid var(--navy);outline-offset:1px;}
.kontaktformular .kaestchen{display:flex;gap:.6rem;align-items:flex-start;}
.kontaktformular .kaestchen input{margin-top:.35rem;}
.kontaktformular button.cta{border:0;cursor:pointer;font:inherit;font-size:.95rem;}
.honigtopf{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.hinweis-klein{font-size:.88rem;color:var(--muted);}
.danke{background:var(--paper-alt);border-left:3px solid var(--navy);border-radius:6px;padding:1rem 1.25rem;margin:1rem 0 2rem;}
.danke h3{margin:0 0 .3rem;}.danke p{margin:0;}

/* Essays */
.essay-list{list-style:none;margin:0 auto;padding:0;display:flex;flex-direction:column;gap:2rem;max-width:680px;}
.essay-list li{border-top:1px solid var(--line);padding-top:1.5rem;}
.essay-list h2{font-size:1.4rem;margin-bottom:.5rem;}
.essay-list h2 a{text-decoration:none;}
.essay-list h2 a:hover{color:var(--slate);}
.essay-list p{color:var(--muted);margin:0;}
.hero + .essay-list li:first-child{border-top:0;padding-top:0;}

/* Variante H: weiß, luftig, Sand-Rosé, runde Überschriftenschrift */
@font-face{font-family:'Source Sans 3';font-weight:300;font-style:normal;font-display:swap;src:url(assets/fonts/source-sans-3-300.woff2) format('woff2');}
@font-face{font-family:'Source Sans 3';font-weight:400;font-style:normal;font-display:swap;src:url(assets/fonts/source-sans-3-400.woff2) format('woff2');}
:root{--navy:#9A6152;--slate:#7C4C40;--ink:#4A4A4A;--muted:#7A7A7A;--paper:#FFFFFF;--paper-alt:#FBF5F2;--line:#F0E6E1;--rose:#C9A596;--rose-deep:#9A6152;--serif:'Source Sans 3','Inter',-apple-system,sans-serif;}
body{line-height:1.9;font-size:1.04rem;color:var(--ink);}
h1,h2,h3{font-weight:300;letter-spacing:0;line-height:1.25;}
h1{font-size:2.8rem;}h2{font-size:1.9rem;}h3{font-size:1.3rem;}.hero h1{font-size:3rem;}
p{margin:0 0 1.5em;}
header.site{padding:1.9rem 2rem;border-bottom:1px solid var(--line);}
nav.main a{color:#666;}
nav.main a:hover{color:var(--rose-deep);}
nav.main a.current{color:var(--rose-deep);border-bottom:1px solid var(--rose);}
main.text-first{padding-top:4.5rem;}
main{padding-bottom:6.5rem;}
.fp-hero-band{margin-bottom:clamp(56px,7vw,88px);}
.hero{padding:1.5rem 0 4rem;margin-bottom:3.5rem;}
.lead{font-weight:300;font-size:1.4rem;line-height:1.6;border-left:2px solid var(--rose);margin:2.5rem 0 3rem;}
.hinweis-box,.danke{background:var(--paper-alt);border-left:2px solid var(--rose);border-radius:10px;}
.fp-service{padding-top:1.4rem;}
.fp-service h3::before{background:var(--rose);}
.cta{background:#A66A5B;border-radius:999px;padding:.8em 2em;font-weight:500;color:#fff;}
.cta:hover{background:#8C5547;color:#fff;}
.kontaktformular input,.kontaktformular select,.kontaktformular textarea{border-radius:8px;}
.kontaktformular input:focus,.kontaktformular select:focus,.kontaktformular textarea:focus{outline-color:var(--rose);}
.next-link:hover,.essay-list h2 a:hover{color:var(--rose-deep);}
footer.site{background:#FFFFFF;border-top:1px solid var(--line);padding:3.5rem 2rem;margin-top:4rem;}
.nav-toggle span{background:var(--rose-deep);}

/* Startseite: Farbbänder im Wechsel (weiß / zartes Rosé / weiß / Rosé) */
.band{width:100vw;margin-left:calc(50% - 50vw);}
.band-inner{max-width:920px;margin:0 auto;padding:0 1.5rem;}
.band-intro{padding:0 0 2rem;}
.band-kacheln{background:#F0EDEB;padding:5rem 0;}
.band-kacheln .fp-services{margin:0;gap:1.4rem;}
.band-kacheln .fp-service{background:#fff;border:0;border-radius:14px;padding:1.5rem 1.6rem 1.6rem;box-shadow:0 1px 2px rgba(90,70,65,.07);}
.band-siegel{padding:4.5rem 0;}
.band-siegel .badge-row{border-top:0;margin:0;padding:0;}
.band-kontakt{background:#E8DEDB;padding:5rem 0 5.5rem;}
.band-kontakt .next-link{color:#6F4E46;}
main:has(.band-kontakt){padding-bottom:0;}
main:has(.band-kontakt) + footer.site{margin-top:0;}
@media (max-width:640px){.band-kacheln,.band-kontakt{padding:3.5rem 0;}.band-siegel{padding:3rem 0;}}

/* Kontaktband im Stil des Screenshots: leichte weiße Überschrift, weiß umrandeter Button */
.band-kontakt{padding:6rem 0 6.5rem;}
.band-kontakt .fp-reveal p{font-family:var(--serif);font-weight:400;font-size:1.2rem;line-height:1.65;color:#fff;max-width:640px;margin:0 0 2.2rem;}
.band-kontakt .cta{background:transparent;color:#fff;border:2px solid #fff;border-radius:6px;padding:.75em 1.9em;font-size:1.02rem;}
.band-kontakt .cta:hover{background:#fff;}
.band-kontakt .next-link{color:#fff;opacity:.92;}
.band-kontakt .next-link:hover{color:#fff;opacity:1;text-decoration:underline;}

.band-kontakt{background:#8F6F63;}
.band-kontakt .cta:hover{color:#6F5348;}
.band-kontakt .cta{font-weight:600;font-size:1.08rem;}

/* Zwischenton: grau-rosé, Kontrast weiß ca. 3,6:1; Button-Text groß und kräftig (gilt als großer Text) */
.band-kontakt{background:#9C8177;}
.band-kontakt .cta{font-size:1.2rem;font-weight:600;}
.band-kontakt .cta:hover{color:#7C6359;}

/* Textfarbe: tiefes Blaugrau, passend zum Logo */
:root{--ink:#3E4C5A;--muted:#68757F;}
nav.main a{color:#4F5D6A;}
nav.main a:hover,nav.main a.current{color:var(--rose-deep);}

/* Unterseiten: Kontaktband am Schluss, Inhaltsbreite wie der Text */
main:not(.breit) .band-inner{max-width:720px;}
main:not(.breit) .band-kontakt{padding:5rem 0 5.5rem;}
main:not(.breit) .band-kontakt .cta-row{margin-top:0;}
main:not(.breit) .band-kontakt .fp-reveal > .cta{margin-top:0;}

/* Kontaktband: dezenter, etwas dunkler (Kontrast weiß ca. 4,5:1), dünner, kleinerer Button */
.band-kontakt{background:#8C7166;padding:3.2rem 0 3.4rem;}
main:not(.breit) .band-kontakt{padding:3.2rem 0 3.4rem;}
.band-kontakt .fp-reveal p{margin-bottom:1.6rem;}
.band-kontakt .cta{font-size:1rem;font-weight:500;padding:.65em 1.6em;}
.band-kontakt .cta:hover{color:#8C7166;}
@media (max-width:640px){.band-kontakt,main:not(.breit) .band-kontakt{padding:2.6rem 0;}}

/* Kontaktband: zartes Pfirsich, dunkle Schrift in Textgröße (passt zu den warmen Bildern) */
.band-kontakt{background:#EFE6E0;}
.band-kontakt .fp-reveal p{font:inherit;color:var(--ink);max-width:640px;margin:0 0 1.6rem;}
.band-kontakt .cta{background:transparent;color:#7C4C40;border:2px solid #9A6152;font-size:1rem;font-weight:500;}
.band-kontakt .cta:hover{background:#9A6152;color:#fff;}
.band-kontakt .next-link{color:#7C4C40;opacity:1;}
.band-kontakt .next-link:hover{color:#5C362B;text-decoration:underline;}

/* Unterseite Begleiten: Kacheln im Band */
main:not(.breit) .band-kacheln{margin-top:2.5rem;}

/* Fuß: Links an gleicher Stelle, auch wenn das Siegel fehlt (Startseite) */
@media (min-width:700px){.footer-inner{min-height:110px;}.footer-inner nav{margin-left:auto;}}

/* Essay-Übersicht: Überschriften größer, damit sie sich vom Teasersatz abheben */
.essay-list h2{font-size:2.15rem;line-height:1.2;margin-bottom:.7rem;}
.essay-list p{font-size:1rem;}
@media (max-width:640px){.essay-list h2{font-size:1.8rem;}}

/* Ankersprung auf den Angebotsbereich der Startseite */
#angebote{scroll-margin-top:0;}

/* Kurse & Fortbildungen: zwei Spalten mit Überschrift, darunter je Zeile zwei Kacheln auf gleicher Höhe */
.fp-spalten{display:grid;grid-template-columns:repeat(2,1fr);gap:1.8rem 2rem;margin:2.5rem 0;align-items:stretch;}
.fp-spaltentitel{font-size:1.45rem;margin:0;}
@media (max-width:760px){
  .fp-spalten{grid-template-columns:1fr;}
  .fp-spalten > :nth-child(1){order:1;} .fp-spalten > :nth-child(3){order:2;} .fp-spalten > :nth-child(5){order:3;}
  .fp-spalten > :nth-child(2){order:4;} .fp-spalten > :nth-child(4){order:5;} .fp-spalten > :nth-child(6){order:6;}
}
