/*
Theme Name: Anke Weismantel
Theme URI: https://www.reha-psych.de
Author: Anke Weismantel
Description: Individuelles Theme fuer reha-psych.de - warmer Hintergrund, Navy-Blau-Akzent, haltungsbasierte Seitenstruktur.
Version: 2.1
Text Domain: anke-weismantel
*/

:root{
  --navy:#16325C;
  --slate:#2C4A5E;
  --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 */
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 img{display:block;height:70px;width:auto;}
.logo a{text-decoration:none;font-family:var(--serif);font-size:1.5rem;color:var(--navy);}
nav.main ul{list-style:none;display:flex;gap:1.7rem;margin:0;padding:0;flex-wrap:wrap;}
nav.main a{text-decoration:none;color:var(--ink);font-size:.95rem;letter-spacing:.01em;}
nav.main a:hover{color:var(--navy);}
nav.main a.current,nav.main .current-menu-item>a{color:var(--navy);border-bottom:1px solid var(--navy);padding-bottom:2px;}

/* Layout */
main{max-width:720px;margin:0 auto;padding:3.5rem 1.5rem 5rem;}
body.home main{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;
}

/* Service-Kacheln: von Anke selbst im Editor per "Gruppe"-Block mit
   Zusatz-CSS-Klasse service-list / service gebaut, siehe ANLEITUNG.md */
.service-list,
.service-list > .wp-block-group__inner-container{
  display:grid !important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr)) !important;gap:1.8rem;
}
.service-list{margin:2.5rem 0;}
.service-list > *{margin:0;}
.service{border-top:1px solid var(--line);padding-top:1rem;position:relative;}
.service h3{font-size:1.15rem;margin-bottom:.3rem;padding-left:1.1rem;position:relative;}
.service h3::before{
  content:"";position:absolute;left:0;top:.35em;width:6px;height:6px;
  border-radius:50%;background:var(--navy);
}
.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-seal{flex:none;display:block;}
.badge-row p{margin:0;color:var(--muted);font-size:.9rem;}

.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;}

/* Bild-Layouts pro Seite */
.mood-hero-wrap{
  width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
  margin-top:-3.5rem;margin-bottom:2.5rem;
  position:relative;
  clip-path:url(#arcClip);
}
.mood-hero{width:100%;height:min(56vh,460px);object-fit:cover;display:block;margin:0;}

.mood-top-bleed-wrap{
  width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
  margin-top:-1rem;margin-bottom:2.5rem;
}
.mood-top-bleed{width:100%;height:280px;object-fit:cover;display:block;margin:0;}

.mood-banner{width:100%;height:190px;object-fit:cover;display:block;margin:0 0 2.5rem;border-radius:2px;}

.mood-solo-img{text-align:center;margin:0 0 2.5rem;}
.mood-solo-img img{max-width:560px;width:100%;height:auto;border-radius:2px;display:inline-block;margin:0;}

.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;}
.mood-contained-row .contact-text{flex:1 1 260px;min-width:0;}
.mood-contained-row .contact-text p{margin:0 0 .6em;}

.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;}
}

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;}

/* Footer */
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;}
.footer-inner a{color:var(--muted);}

@media (max-width:640px){
  .hero h1{font-size:1.9rem;}
  main{padding:2.5rem 1.25rem 3.5rem;}
  .mood-contained-row{flex-direction:column;}
}
