/* =====================================================================
   therapie-ddorf.de – NEUES DESIGN (Startseite und Unterseiten) – Farbschema Apricot + Nachtblau (Flaechen Apricot, Akzente Nachtblau)
   Wird nur geladen, wenn in includes/design.inc 'neu' gewaehlt ist.
   Farben zentral hier aendern:
   ===================================================================== */
html,body{margin:0;padding:0;}
body{background:#fbf7f3;}
body.start{background:#fff;}
.start{
  --kopf:#26405c;        /* dunkle Flaechen (Kopfbild, Kontakt)  */
  --kopf-2:#2f5f8c;
  --akzent:#26405c;      /* Schaltflaechen, Linien               */
  --akzent-text:#ffffff;
  --link:#2f5f8c;
  --cream:#fdf0e6;
  --text:#3d433f;
  --muted:#646b67;
  --line:#e2ddd2;
  --font:system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --serif:'Iowan Old Style','Palatino Linotype',Palatino,'Book Antiqua',Georgia,serif;
  color:var(--text);font-family:var(--font);font-size:17px;line-height:1.65;
}
.start *,.start *::before,.start *::after{box-sizing:border-box;}
.start img{max-width:100%;border:0;}
.start a{color:var(--link);}
.start a:hover{color:var(--kopf);}
.start a:focus-visible,.start button:focus-visible{outline:2px solid var(--akzent);outline-offset:3px;}
.start .wrap{max-width:1140px;margin:0 auto;padding:0 28px;}
.start h1,.start h2,.start h3,.start h4{margin:0;line-height:1.2;}
.start .btn{display:inline-block;padding:13px 28px;border-radius:999px;background:var(--akzent);color:var(--akzent-text);font-weight:700;text-decoration:none;}
.start .btn:hover{background:#f5c7a7;color:var(--akzent-text);}
.start .btn.ghost{background:transparent;border:2px solid rgba(255,255,255,.85);color:#fff;}
.start .btn.ghost:hover{background:rgba(255,255,255,.12);}
.start .btn.ghost-dark{background:transparent;border:2px solid var(--kopf);color:var(--kopf);}
.start .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;}

/* ---------- Obere Leiste ---------- */
.topbar{background:var(--kopf);color:#dee2e7;font-size:.85rem;}
.topbar .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px;}
.topbar b{color:var(--akzent);font-weight:600;}
.topbar a{color:#fff;text-decoration:none;}

/* ---------- Navigation ---------- */
.nav{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:14px;padding-bottom:14px;}
.brand{text-decoration:none;white-space:nowrap;flex-shrink:0;}
.brand small{display:block;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--kopf-2);font-weight:600;}
.brand strong{font-family:var(--serif);font-weight:400;font-size:1.75rem;color:var(--kopf);}
.menu-toggle{display:none;}
.menu{display:flex;gap:2px;list-style:none;margin:0;padding:0;align-items:center;flex-wrap:wrap;justify-content:flex-end;}
.menu a{display:block;padding:8px 8px;border-radius:999px;color:var(--text);text-decoration:none;font-weight:500;font-size:.9rem;white-space:nowrap;}
.menu a:hover{background:var(--cream);color:var(--kopf);}
.menu a.on{color:var(--kopf);box-shadow:inset 0 -2px 0 var(--akzent);border-radius:0;}
.menu a.cta{background:var(--kopf);color:#fff;padding:8px 18px;margin-left:6px;}
.menu a.cta:hover{background:var(--kopf-2);}
.menu a.cta.on{border-radius:999px;box-shadow:none;background:var(--kopf-2);}

/* ---------- Einstieg ---------- */
.hero{color:#fff;background:
   radial-gradient(1100px 480px at 85% 15%, rgba(242,180,138,.30), transparent 60%),
   linear-gradient(135deg,#26405c 0%,#2f5f8c 60%,#547ca1 100%);}
.hero .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:center;padding-top:80px;padding-bottom:90px;}
.kicker{color:var(--akzent);letter-spacing:.2em;text-transform:uppercase;font-size:.8rem;font-weight:600;}
.hero h1{font-family:var(--serif);font-weight:400;font-size:3.1rem;line-height:1.15;margin:.35em 0 .15em;}
.hero q{quotes:"\201E" "\201C";}
.hero cite{display:block;font-style:normal;color:#d8dde2;margin-bottom:1.4em;}
.hero p{font-size:1.15rem;color:#e9ecef;max-width:32em;margin:0;}
.hero-photo{justify-self:center;width:100%;max-width:210px;}
.hero-photo img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:112px 112px 16px 16px;box-shadow:0 28px 56px rgba(0,0,0,.28);background:#cdb48a;}

/* ---------- Begruessung ---------- */
.intro{padding:80px 0;}
.intro .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:center;}
.intro p{margin:0 0 1.1em;font-size:1.08rem;}
.intro-photo img{display:block;width:100%;border-radius:20px;box-shadow:0 14px 34px rgba(38,64,92,.14);}

/* ---------- Angebote ---------- */
.offers{background:var(--cream);padding:80px 0;}
.offers h2,.about h2{font-family:var(--serif);font-weight:400;font-size:2.3rem;color:var(--kopf);margin-bottom:.8em;}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;text-decoration:none;color:var(--text);transition:transform .2s, box-shadow .2s;}
.card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(38,64,92,.12);color:var(--text);}
.start .card-img{display:block;width:calc(100% + 48px);max-width:none;margin:-24px -24px 18px;height:150px;object-fit:cover;border-radius:20px 20px 0 0;background:#e9e2d2;}
.card-icon{width:52px;height:52px;border-radius:16px;background:var(--cream);display:grid;place-items:center;margin-bottom:16px;}
.card-icon svg{width:26px;height:26px;stroke:var(--kopf-2);fill:none;stroke-width:1.8;}
.card h3{font-size:1.12rem;color:var(--kopf);margin-bottom:.45em;}
.card p{margin:0 0 1em;font-size:.95rem;color:var(--muted);flex:1;}
.card .more{font-weight:600;color:var(--link);}
.card .more::after{content:" \2192";}
.all{margin:28px 0 0;}
.all a{font-weight:600;}

/* ---------- Zur Person ---------- */
.about{padding:80px 0;}
.checks{list-style:none;padding:0;margin:0 0 28px;max-width:46em;}
.checks li{position:relative;padding-left:32px;margin-bottom:12px;}
.checks li::before{content:"";position:absolute;left:0;top:.38em;width:18px;height:18px;border-radius:50%;background:var(--akzent);}

/* ---------- Kontakt ---------- */
.contact{background:var(--kopf);color:#fff;padding:72px 0;}
.contact .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;}
.contact a{color:var(--akzent);}
.contact .big{font-family:var(--serif);font-size:1.7rem;line-height:1.35;margin:0 0 .8em;}
.contact .sig{color:#dee2e7;margin:0;}
.contact .sig strong{color:#fff;font-weight:600;}
.contact-box{background:#fff;color:var(--text);border-radius:20px;padding:30px;}
.contact-box p{margin:0 0 1em;}
.contact-box a{color:var(--link);}
.contact-box .btn{color:var(--akzent-text);}
.contact-box .btn.ghost-dark{color:var(--kopf);}

/* ---------- Fusszeile ---------- */
.start .seitenfuss{background:#1e3248;color:#d4d9de;padding:52px 0 26px;font-size:.92rem;}
.start .seitenfuss .wrap{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:30px;}
.start .seitenfuss h4{color:#fff;font-size:1rem;margin-bottom:12px;}
.start .seitenfuss a{display:block;color:#d4d9de;text-decoration:none;margin-bottom:6px;}
.start .seitenfuss a:hover{color:#fff;text-decoration:underline;}
.start .seitenfuss .legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:16px;margin-top:8px;font-size:.82rem;}

/* ---------- Tablet / Handy ---------- */
@media (max-width:1240px){
  .nav .wrap{position:relative;}
  .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;cursor:pointer;border:0;border-radius:10px;background:var(--cream);padding:0 11px;}
  .menu-toggle span{display:block;height:2px;background:var(--kopf);border-radius:2px;}
  .menu{display:none;position:absolute;right:28px;top:100%;margin-top:6px;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;min-width:260px;box-shadow:0 18px 40px rgba(0,0,0,.12);}
  .nav.open .menu{display:flex;}
  .menu a.on{box-shadow:none;background:var(--cream);border-radius:999px;}
  .menu a.cta{margin:6px 0 0;text-align:center;}
}
@media (max-width:1000px){
  .cards{grid-template-columns:1fr 1fr;}
}
@media (max-width:820px){
  .start{font-size:16px;}
  .hero .wrap,.intro .wrap,.contact .wrap{grid-template-columns:1fr;}
  .hero .wrap{padding-top:48px;padding-bottom:56px;gap:32px;}
  .hero h1{font-size:2.2rem;}
  .hero-photo{max-width:154px;}
  .intro,.offers,.about{padding:56px 0;}
  .offers h2,.about h2{font-size:1.8rem;}
  .contact .big{font-size:1.35rem;}
  .start .seitenfuss .wrap{grid-template-columns:1fr 1fr;}
  .topbar .wrap span:first-child{display:none;}
}
@media (max-width:560px){
  .start .wrap{padding:0 18px;}
  .cards,.start .seitenfuss .wrap{grid-template-columns:1fr;}
  .brand strong{font-size:1.45rem;}
}

/* ---------- Druck ---------- */
@media print{
  .topbar,.nav .menu,.menu-toggle,.start .seitenfuss,#sidebar,.actions,.hero-photo{display:none !important;}
  .hero,.contact{background:#fff !important;color:#000 !important;}
  .hero p,.hero cite,.contact .sig{color:#000 !important;}
}

/* =====================================================================
   UNTERSEITEN im neuen Design
   (gleiche Seitenstruktur wie bisher: #main, #embeddedcontent, #sidebar)
   ===================================================================== */
.unterseite #main{max-width:1140px;margin:40px auto 0;padding:0 28px 64px;display:grid;
   grid-template-columns:270px minmax(0,1fr);grid-template-areas:"side content";gap:32px;align-items:start;}
.unterseite #embeddedcontent{grid-area:content;min-width:0;background:#fff;border:1px solid var(--line);border-radius:20px;padding:40px 48px;overflow:hidden;}
.unterseite #sidebar{grid-area:side;background:#fff;border:1px solid var(--line);border-radius:20px;padding:14px 10px;position:sticky;top:100px;}
.unterseite .trenner,.unterseite .innertrenner:empty{display:none;}
.unterseite .n{display:none;}

/* Seitenmenue links */
.unterseite #sidebar ul{list-style:none;margin:0;padding:0;}
.unterseite #sidebar li{margin:0;padding:0;background:none;}
.unterseite #sidebar a{display:block;padding:8px 12px;border-radius:10px;color:var(--text);text-decoration:none;font-size:.93rem;line-height:1.35;}
.unterseite #sidebar a:hover{background:var(--cream);color:var(--kopf);}
.unterseite #sidebar li.aktiv > a,.unterseite #sidebar li#aktiv > a{background:var(--akzent);color:var(--akzent-text);font-weight:600;}
.unterseite #sidebar ul ul{padding-left:12px;margin:2px 0 4px;border-left:2px solid var(--line);margin-left:14px;}
.unterseite #sidebar ul ul a{font-size:.88rem;padding:6px 10px;}
.unterseite .subside ul ul{display:none;}
.unterseite #sidebar li.aufklappmenu > a::after{content:" \203A";color:var(--kopf-2);}

/* Inhalt: Text */
.unterseite #embeddedcontent h2{font-family:var(--serif);font-weight:400;font-size:2rem;color:var(--kopf);margin:0 0 .6em;}
.unterseite #embeddedcontent h3{font-size:1.15rem;color:var(--kopf);margin:1.3em 0 .5em;}
.unterseite #embeddedcontent h4{font-size:1.05rem;color:var(--kopf-2);margin:1em 0 .3em;}
.unterseite #embeddedcontent p{margin:0 0 1.05em;}
.unterseite #embeddedcontent q{quotes:"\201E" "\201C";}
.unterseite #embeddedcontent cite{display:block;font-style:normal;color:var(--muted);margin:-.4em 0 1.4em;}
.unterseite #embeddedcontent em{font-style:normal;font-weight:600;}
.unterseite #embeddedcontent address{font-style:normal;}
.unterseite .contentlink a{color:var(--link);font-weight:500;}

/* Aufzaehlungen */
.unterseite #embeddedcontent ul{list-style:none;margin:0 0 1.2em;padding:0;}
.unterseite #embeddedcontent li{position:relative;margin:0;padding:0 0 .5em 1.35em;background:none;list-style:none;}
.unterseite #embeddedcontent li::before{content:"";position:absolute;left:.15em;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--akzent);}
.unterseite #embeddedcontent li.listitemwithoutimage::before,
.unterseite #embeddedcontent li.contentlink::before{display:none;}
.unterseite #embeddedcontent li.listitemwithoutimage,.unterseite #embeddedcontent li.contentlink{padding-left:0;}
.unterseite .sitemap{padding-left:20px;}

/* Bilder (bisherige Klassen) */
.unterseite .imgWide,.unterseite .img,.unterseite .imgSquare,.unterseite .imgNoBorder{float:right;margin:4px 0 18px 26px;border:0;border-radius:16px;object-fit:cover;box-shadow:0 8px 22px rgba(38,64,92,.12);}
.unterseite .imgWide{width:300px;height:126px;}
.unterseite .img{width:260px;height:190px;}
.unterseite .imgSquare{width:180px;height:180px;}
.unterseite .imgNoBorder{width:260px;height:205px;box-shadow:none;}
.unterseite .imgWideNoFloat{display:block;width:267px;height:112px;margin:0 0 14px;border:0;border-radius:12px;object-fit:cover;}
.unterseite .imgSmall{float:right;width:72px;height:72px;margin:0 30px 20px 0;border:0;}
.unterseite #portrait{float:right;width:170px;margin:0 0 18px 26px;}
.unterseite .portrait{display:block;width:170px;height:255px;margin:0;border:0;border-radius:18px;object-fit:cover;box-shadow:0 10px 26px rgba(0,0,0,.12);}
.unterseite .listlogo{width:50px;height:20px;vertical-align:middle;border:0;}
.unterseite .creativelogo{width:80px;height:25px;vertical-align:middle;border:0;}
.unterseite .pfeil{display:none;}
.unterseite #embeddedcontentleft{float:none;width:auto;}
.unterseite iframe{max-width:100%;}


/* Preise, Tabellen und Kosten-Verweise (z. B. Kostenuebernahme-Seiten) */
.unterseite .preise{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:1.4em 0 1.6em;clear:both;}
.unterseite .preis{background:var(--cream);border-left:4px solid var(--akzent);border-radius:14px;padding:16px 20px;}
.unterseite .preis span{display:block;font-size:.92rem;color:var(--muted);line-height:1.4;}
.unterseite .preis strong{display:block;margin-top:6px;font-family:var(--serif);font-weight:400;font-size:2rem;color:var(--kopf);}
.unterseite .tabelle{overflow-x:auto;margin:0 0 1.6em;clear:both;}
.unterseite #embeddedcontent table{width:100%;border-collapse:collapse;font-size:.92rem;line-height:1.45;}
.unterseite #embeddedcontent th{background:var(--cream);color:var(--kopf);text-align:left;font-weight:600;padding:10px 12px;}
.unterseite #embeddedcontent td{border-top:1px solid var(--line);padding:10px 12px;vertical-align:top;}
.unterseite #embeddedcontent td:nth-child(n+2):not(:last-child),.unterseite #embeddedcontent th:nth-child(n+2):not(:last-child){white-space:nowrap;}
.unterseite #embeddedcontent ul.kostenlinks{display:flex;flex-wrap:wrap;gap:10px;margin-top:2em;padding-top:1.4em;border-top:1px solid var(--line);}
.unterseite #embeddedcontent ul.kostenlinks li{padding:0;}
.unterseite #embeddedcontent ul.kostenlinks li::before{display:none;}
.unterseite #embeddedcontent ul.kostenlinks a{display:inline-block;padding:8px 16px;border:1.5px solid var(--kopf-2);border-radius:999px;text-decoration:none;font-size:.92rem;}
.unterseite #embeddedcontent ul.kostenlinks a:hover{background:var(--kopf-2);color:#fff;}
.unterseite #embeddedcontent ul.kostenlinks strong{font-weight:600;}
@media (max-width:820px){
  .unterseite .preise{grid-template-columns:1fr;}
  .unterseite .imgNoBorder{display:none;}
  .unterseite #embeddedcontent td:last-child{min-width:170px;}
  .unterseite .preis strong{font-size:1.7rem;}
  .unterseite #embeddedcontent table{font-size:.85rem;}
  .unterseite #embeddedcontent th,.unterseite #embeddedcontent td{padding:8px 8px;}
}


/* Gebuehrentabelle aus div-Elementen (includes/KostenPrivat.inc) */
.unterseite #embeddedcontent .table{display:table;width:100%;border-collapse:collapse;font-size:.92rem;line-height:1.45;}
.unterseite #embeddedcontent .table .row{display:table-row;}
.unterseite #embeddedcontent .table .cell{display:table-cell;padding:10px 12px;border-top:1px solid var(--line);vertical-align:top;}
.unterseite #embeddedcontent .table .row.header .cell{background:var(--cream);color:var(--kopf);font-weight:600;border-top:0;}
.unterseite #embeddedcontent .table .row.header .cell:first-child{border-radius:10px 0 0 10px;}
.unterseite #embeddedcontent .table .row.header .cell:last-child{border-radius:0 10px 10px 0;}
.unterseite #embeddedcontent .table .cell.right{text-align:right;white-space:nowrap;}
.unterseite #embeddedcontent .table .cell:nth-child(2){white-space:nowrap;}
.unterseite #embeddedcontent .table .cell:last-child{color:var(--muted);}
.unterseite .tabelle > p{font-size:.85rem;color:var(--muted);margin:12px 0 0;}
@media (max-width:820px){
  .unterseite #embeddedcontent .table,.unterseite #embeddedcontent .table .row{display:block;}
  .unterseite #embeddedcontent .table .row.header{display:none;}
  .unterseite #embeddedcontent .table .row{background:var(--cream);border-radius:14px;padding:14px 16px;margin-bottom:10px;}
  .unterseite #embeddedcontent .table .cell{display:block;padding:0;border:0;}
  .unterseite #embeddedcontent .table .cell:first-child{font-weight:600;color:var(--kopf);margin-bottom:6px;}
  .unterseite #embeddedcontent .table .cell:nth-child(2),.unterseite #embeddedcontent .table .cell:nth-child(3),.unterseite #embeddedcontent .table .cell:nth-child(4){display:inline-block;margin-right:16px;text-align:left;}
  .unterseite #embeddedcontent .table .cell:nth-child(2)::before{content:"GOP ";color:var(--muted);}
  .unterseite #embeddedcontent .table .cell:nth-child(3)::before{content:"Betrag ";color:var(--muted);}
  .unterseite #embeddedcontent .table .cell:nth-child(3)::after{content:" \20AC";}
  .unterseite #embeddedcontent .table .cell:nth-child(4)::before{content:"Faktor ";color:var(--muted);}
  .unterseite #embeddedcontent .table .cell:last-child{margin-top:6px;font-size:.88rem;}
}

/* Datenschutzerklaerung (eigene Seite ohne Kopf/Menue) */
.googleAnalyticsTxt{max-width:860px;margin:32px auto;background:#fff;border:1px solid #e2ddd2;border-top:5px solid #26405c;border-radius:20px;padding:40px 50px;
   font-family:system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;color:#3d433f;line-height:1.65;}
.googleAnalyticsTxt h1{font-family:'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;font-weight:400;color:#26405c;font-size:2.1rem;margin:0 0 .4em;}
.googleAnalyticsTxt h2{font-size:1.15rem;color:#26405c;margin:1.6em 0 .5em;}
.googleAnalyticsTxt a{color:#2f5f8c;}

@media (max-width:1000px){
  .unterseite #main{grid-template-columns:1fr;grid-template-areas:"content" "side";margin-top:20px;}
  .unterseite #sidebar{position:static;}
}
@media (max-width:820px){
  .unterseite #main{padding:0 14px 40px;}
  .unterseite #embeddedcontent{padding:24px 20px;border-radius:16px;}
  .unterseite #embeddedcontent h2{font-size:1.6rem;}
  .unterseite .imgWide,.unterseite .img,.unterseite .imgSquare,.unterseite .imgNoBorder{margin:4px 0 12px 14px;}
  .unterseite .imgWide{width:140px;height:59px;}
  .unterseite .img,.unterseite .imgNoBorder{width:150px;height:110px;}
  .unterseite .imgSquare{width:120px;height:120px;}
  .unterseite #portrait{width:120px;margin-left:14px;}
  .unterseite .portrait{width:120px;height:180px;}
  .unterseite #embeddedcontentleft{float:none;width:auto;}
  .googleAnalyticsTxt{margin:0;border-radius:0;padding:24px 18px;}
}

/* =====================================================================
   FARBROLLEN GETAUSCHT: grosse Flaechen Apricot, Akzente Nachtblau
   ===================================================================== */
.start .btn:hover{background:#2f5f8c;color:#fff;}
.start .btn.ghost{border-color:#26405c;color:#26405c;}
.start .btn.ghost:hover{background:rgba(38,64,92,.08);}
.topbar{background:#f2b48a;color:#1d2a38;}
.topbar b{color:#26405c;}
.topbar a{color:#1d2a38;}
.menu a.cta,.menu a.cta.on{background:#26405c;color:#fff;}
.menu a.cta:hover{background:#2f5f8c;color:#fff;}
.hero{color:#1d2a38;background:
   radial-gradient(1100px 480px at 85% 15%, rgba(255,255,255,.35), transparent 60%),
   linear-gradient(135deg,#f7c9a5 0%,#f2b48a 55%,#eda57a 100%);}
.hero .kicker{color:#26405c;}
.hero cite{color:#46505e;}
.hero p{color:#2a3646;}
.contact{background:#f2b48a;color:#1d2a38;}
.contact a{color:#26405c;}
.contact .sig{color:#2a3646;}
.contact .sig strong{color:#1d2a38;}
.start .seitenfuss{background:#fae0cd;color:#2a3646;}
.start .seitenfuss h4{color:#1d2a38;}
.start .seitenfuss a{color:#26405c;}
.start .seitenfuss a:hover{color:#1d2a38;}
.start .seitenfuss .legal{border-top-color:rgba(29,42,56,.15);}
.googleAnalyticsTxt{border-top-color:#f2b48a;}
