/* Kosinez – Designsprache "Editorial-Eleganz mit Tiefe" (lokal, DSGVO) */
:root{
  --ink:#15302b;        /* tiefes Teal-Schwarz, Text */
  --teal:#0d3b38;       /* dunkles Petrol, Bänder */
  --teal-2:#12514b;     /* helleres Petrol */
  --cream:#faf6ee;      /* warmes Creme */
  --sand:#f1e8d8;       /* Sand */
  --terra:#bf5e39;      /* Terrakotta (Brücke) */
  --terra-2:#a44e2d;
  --gold:#bd9a4e;       /* gedämpftes Gold */
  --muted:#6c7a73;
}

/* Fließtext: Hanken Grotesk */
body, p, li, a, button, input, select, textarea,
.entry-content, .widget, .main-navigation, .citadela-menu, .site-footer {
  font-family: 'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
}

/* Überschriften: Fraunces (charaktervolle Serife) */
h1, h2, h3, h4, h5, h6, .entry-title, .page-title, .widget-title {
  font-family: 'Fraunces', Georgia, 'Times New Roman', serif;
  font-weight: 600;
  color: var(--ink);
  letter-spacing: -.012em;
  line-height: 1.18;
}

a { color: var(--terra); text-underline-offset: 3px; }
a:hover { color: var(--terra-2); }

html, body { overflow-x: hidden; }
body { background: var(--cream); color: #33403b; }

.entry-content { font-size: 18px; line-height: 1.75; color: #33403b; }
.entry-content h2 { font-size: clamp(26px,2.6vw,34px); margin: 1.6em 0 .5em; }
.entry-content h3 { font-size: 23px; }
.entry-content a { text-decoration: underline; }
.entry-content ul li, .entry-content ol li { margin: .4em 0; }

/* ===== Header in Petrol (sticky), Menü cremeweiß, Gold-Akzent ===== */
#masthead.site-header{
  background: var(--teal) !important;
  position: sticky; top: 0; z-index: 200;
  box-shadow: 0 1px 0 rgba(255,255,255,.07), 0 6px 22px rgba(8,32,30,.18);
}
#masthead .grid-main, #masthead .site-header-inner, #masthead .header-inner{ background: transparent !important; }
#masthead .text-logo, #masthead .text-logo a,
#masthead .site-title, #masthead .site-title a{ color:#ffffff !important; }
#masthead .text-logo p, #masthead .site-description,
#masthead .text-logo .tagline{ color:#b9cfc8 !important; }
#masthead .citadela-menu > li > a{ color:#e9f1ee !important; font-weight:500; letter-spacing:.01em; }
#masthead .citadela-menu > li > a:hover,
#masthead .citadela-menu > li.current-menu-item > a,
#masthead .citadela-menu > li.current-menu-ancestor > a{ color: var(--gold) !important; }
#masthead .citadela-menu .sub-menu{ background: var(--teal-2); border:none; box-shadow:0 14px 30px rgba(8,32,30,.28); }
#masthead .citadela-menu .sub-menu a{ color:#e9f1ee !important; }
#masthead .citadela-menu .sub-menu a:hover{ color: var(--gold) !important; }
#masthead .search-toggle, #masthead .header-search a, #masthead svg{ color:#e9f1ee !important; fill:#e9f1ee !important; }

/* ===== Footer in Petrol ===== */
#colophon.site-footer{ background: var(--teal) !important; color:#c3d6d0; }
#colophon.site-footer a{ color:#dfeae6; }
#colophon.site-footer a:hover{ color: var(--gold); }
#colophon .citadela-menu a{ color:#dfeae6 !important; }
#colophon .citadela-menu a:hover{ color: var(--gold) !important; }
#colophon .site-info{ color:#8fa9a2; }
#colophon .site-info a{ color:#a9c0b9; }

/* ===== Sichtbarer Tastatur-Fokus (Barrierefreiheit) ===== */
a:focus-visible, button:focus-visible,
.kx a.btn:focus-visible, .kxs a.btn:focus-visible, #masthead a:focus-visible, #colophon a:focus-visible{
  outline: 3px solid var(--gold); outline-offset: 3px; border-radius: 4px;
}

/* ===== Subpage-Baukasten (.kxs) – wiederverwendbar für alle Unterseiten ===== */
.kxs{position:relative;left:50%;width:100vw;margin-left:-50vw;overflow:hidden;color:#33403b;}
.kxs *{box-sizing:border-box;}
.kxs-wrap{max-width:1060px;margin:0 auto;padding:0 26px;}
.kxs-band{padding:clamp(56px,8vw,104px) 0;}
.kxs-band.cream{background:var(--cream);}
.kxs-band.sand{background:var(--sand);}
.kxs-band.teal{background:var(--teal);color:#dfeae6;}
.kxs .eyebrow{font-family:'Hanken Grotesk',sans-serif;font-weight:700;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--terra);margin:0 0 10px;}
.kxs-band.teal .eyebrow{color:var(--gold);}
.kxs .title{font-family:'Fraunces',serif;font-weight:600;color:var(--ink);font-size:clamp(34px,5vw,58px);line-height:1.1;margin:0 0 .3em;}
.kxs-band.teal .title{color:#fff;}
.kxs h2{font-family:'Fraunces',serif;color:var(--ink);font-size:clamp(26px,3vw,38px);line-height:1.18;margin:0 0 .5em;}
.kxs-band.teal h2{color:#fff;}
.kxs p{font-size:18px;line-height:1.75;margin:0 0 1em;color:#44514b;}
.kxs-band.teal p{color:#bcccc6;}
.kxs .lead{font-size:clamp(18px,2vw,22px);color:#52605a;max-width:680px;}
.kxs-band.teal .lead{color:#cdded8;}
.kxs-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:54px;align-items:center;}
.kxs-portrait{position:relative;}
.kxs-portrait .frame{position:absolute;inset:16px -16px -16px 16px;background:linear-gradient(135deg,#0d3b38,#16544d);border-radius:14px;z-index:0;}
.kxs-portrait img{position:relative;z-index:1;width:100%;border-radius:14px;display:block;box-shadow:0 24px 60px rgba(21,48,43,.22);}
.kxs-portrait:after{content:"";position:absolute;right:-16px;top:-10px;width:60px;height:60px;border-top:2px solid var(--gold);border-right:2px solid var(--gold);border-radius:0 14px 0 0;z-index:2;opacity:.85;}
.kxs-quali{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;}
.kxs-quali .q{background:#fff;border:1px solid #efe7d8;border-left:3px solid var(--terra);border-radius:10px;padding:15px 18px;}
.kxs-quali .q b{font-family:'Fraunces',serif;color:var(--ink);display:block;margin-bottom:2px;font-size:16px;}
.kxs-quali .q span{font-size:14.5px;color:#6b756f;}
.kxs-time{position:relative;margin-top:34px;padding-left:34px;}
.kxs-time:before{content:"";position:absolute;left:7px;top:6px;bottom:10px;width:2px;background:rgba(189,154,78,.45);}
.kxs-time .it{position:relative;padding:0 0 28px;}
.kxs-time .it:last-child{padding-bottom:0;}
.kxs-time .it:before{content:"";position:absolute;left:-34px;top:4px;width:16px;height:16px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(189,154,78,.18);}
.kxs-time .it h3{font-family:'Fraunces',serif;color:#fff;font-size:20px;margin:0 0 2px;}
.kxs-time .it .org{color:var(--gold);font-size:14.5px;font-weight:600;margin-bottom:4px;}
.kxs-time .it p{color:#bcccc6;font-size:16px;margin:0;}
.kxs-cta{text-align:center;}
.kxs a.btn{display:inline-flex;align-items:center;gap:.5em;font-weight:600;text-decoration:none;border-radius:999px;padding:15px 28px;transition:transform .25s,box-shadow .25s,background .25s;}
.kxs a.btn-terra{background:var(--terra);color:#fff;box-shadow:0 10px 26px rgba(191,94,57,.3);}
.kxs a.btn-terra:hover{transform:translateY(-3px);background:var(--terra-2);}
.kxs .tel{font-family:'Fraunces',serif;font-size:clamp(24px,3vw,36px);text-decoration:none;}
@media(max-width:820px){.kxs-grid{grid-template-columns:1fr;gap:36px;}.kxs-quali{grid-template-columns:1fr;}}

/* Link-Karten (Hub-/Übersichtsseiten) */
.kxs-linkcards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:42px;}
.kxs-lc{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #efe7d8;border-radius:16px;padding:28px 28px 24px;text-decoration:none;transition:transform .3s,box-shadow .3s,border-color .3s;}
.kxs-lc:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(21,48,43,.13);border-color:rgba(189,154,78,.55);}
.kxs-lc .ix{font-family:'Fraunces',serif;font-size:15px;color:var(--gold);letter-spacing:.1em;margin-bottom:12px;}
.kxs-lc h3{font-family:'Fraunces',serif;color:var(--ink);font-size:22px;margin:0 0 .35em;}
.kxs-lc p{font-size:16px;color:#5b665f;line-height:1.6;margin:0 0 18px;}
.kxs-lc .go{margin-top:auto;color:var(--terra);font-weight:700;font-size:15px;}
.kxs-lc:hover .go{color:var(--terra-2);}
@media(max-width:820px){.kxs-linkcards{grid-template-columns:1fr;}}

/* ===== Artikel-Stil (Impulse-/Wissenswert-Unterseiten) ===== */
.kosinez-article .entry-header{ display:none; }
.kosinez-article .post-thumbnail{ display:none !important; }
.kosinez-arthead{ max-width:760px; margin:0 auto; text-align:center; padding-top:10px; }
.kosinez-arthead .eyebrow{ font-family:'Hanken Grotesk',sans-serif; font-weight:700; font-size:13px; letter-spacing:.22em; text-transform:uppercase; color:var(--terra); margin:0 0 10px; }
.kosinez-arthead .title{ font-family:'Fraunces',serif; font-weight:600; color:var(--ink); font-size:clamp(30px,4vw,46px); line-height:1.14; margin:0; }
.kosinez-arthead:after{ content:""; display:block; width:54px; height:3px; background:var(--gold); border-radius:2px; margin:22px auto 4px; }
.kosinez-artimg{ max-width:920px; margin:34px auto 6px; border-radius:16px; overflow:hidden; box-shadow:0 18px 44px rgba(21,48,43,.16); line-height:0; }
.kosinez-artimg img{ width:100%; height:auto; display:block; aspect-ratio:16/8; object-fit:cover; }
.kosinez-article .entry-content{ max-width:920px; margin:30px auto 0; font-size:18.5px; line-height:1.8; }
.kosinez-article .entry-content > p,
.kosinez-article .entry-content > h2,
.kosinez-article .entry-content > h3,
.kosinez-article .entry-content > ul,
.kosinez-article .entry-content > ol,
.kosinez-article .entry-content > blockquote,
.kosinez-article .kosinez-arthead,
.kosinez-article .kosinez-artfoot{ max-width:760px; margin-left:auto; margin-right:auto; }
.kosinez-article .entry-content > p:first-of-type{ font-size:20px; color:#3a4640; }
.kosinez-article .entry-content h2{ font-size:clamp(23px,2.4vw,29px); margin-top:1.5em; }
.kosinez-article .entry-content h3{ font-size:21px; margin-top:1.3em; }
.kosinez-article .entry-content strong{ color:var(--ink); }
.kosinez-artfoot{ max-width:760px; margin:46px auto 0; }
.kosinez-artfoot .back{ display:inline-block; color:var(--terra); font-weight:700; text-decoration:none; margin-bottom:20px; }
.kosinez-artfoot .back:hover{ color:var(--terra-2); }
.kosinez-artfoot .cta{ background:var(--sand); border-radius:14px; padding:22px 26px; display:flex; justify-content:space-between; align-items:center; gap:18px; flex-wrap:wrap; }
.kosinez-artfoot .cta span{ font-family:'Fraunces',serif; font-size:20px; color:var(--ink); }
.kosinez-artfoot .cta .btn{ background:var(--terra); color:#fff; padding:13px 24px; border-radius:999px; text-decoration:none; font-weight:600; white-space:nowrap; transition:background .25s,transform .25s; }
.kosinez-artfoot .cta .btn:hover{ background:var(--terra-2); transform:translateY(-2px); }

/* Nummerierter Ablauf (Phasen) */
.kxs-steps{display:grid;gap:18px;margin-top:44px;}
.kxs-step{display:grid;grid-template-columns:74px 1fr;gap:22px;align-items:start;background:#fff;border:1px solid #efe7d8;border-radius:16px;padding:26px 30px;transition:transform .3s,box-shadow .3s;}
.kxs-step:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(21,48,43,.10);}
.kxs-step .n{font-family:'Fraunces',serif;font-size:46px;line-height:.85;color:var(--gold);}
.kxs-step h3{font-family:'Fraunces',serif;color:var(--ink);font-size:22px;margin:.05em 0 .45em;}
.kxs-step p{font-size:17px;line-height:1.7;color:#4a554f;margin:0;}
.kxs-step .pq{margin-top:14px;border-left:3px solid var(--gold);padding:4px 0 4px 16px;font-family:'Fraunces',serif;font-style:italic;color:var(--teal);font-size:16.5px;}
@media(max-width:600px){.kxs-step{grid-template-columns:1fr;gap:8px;}.kxs-step .n{font-size:38px;}}

/* Kontakt */
.kxs-contact{display:grid;grid-template-columns:.92fr 1.08fr;gap:50px;align-items:start;}
.kxs-cinfo .row{margin:0 0 22px;}
.kxs-cinfo .lbl{font-family:'Hanken Grotesk',sans-serif;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--terra);margin-bottom:3px;}
.kxs-cinfo .val{font-size:18px;color:var(--ink);line-height:1.5;}
.kxs-cinfo a{color:var(--ink);text-decoration:none;}
.kxs-cinfo a:hover{color:var(--terra);}
.kxs-form{background:#fff;border:1px solid #efe7d8;border-radius:16px;padding:28px 30px;box-shadow:0 14px 36px rgba(21,48,43,.08);}
.kxs-form label{display:block;font-size:14px;font-weight:600;color:var(--ink);margin:14px 0 5px;}
.kxs-form input[type=text],.kxs-form input[type=email],.kxs-form textarea{width:100%;border:1px solid #ddd3c4;border-radius:10px;padding:12px 14px;font-family:'Hanken Grotesk',sans-serif;font-size:16px;background:#fcfaf6;color:#2f2a26;}
.kxs-form input:focus,.kxs-form textarea:focus{outline:none;border-color:var(--terra);box-shadow:0 0 0 3px rgba(191,94,57,.15);background:#fff;}
.kxs-form .consent{display:flex;gap:10px;margin:18px 0 6px;font-size:14px;color:#5b665f;line-height:1.5;}
.kxs-form .consent input{margin-top:3px;}
.kxs-form button{margin-top:14px;background:var(--terra);color:#fff;border:none;border-radius:999px;padding:14px 32px;font-weight:600;font-size:16px;cursor:pointer;transition:background .25s,transform .25s;}
.kxs-form button:hover{background:var(--terra-2);transform:translateY(-2px);}
.kxs-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden;}
.kxs-banner{border-radius:12px;padding:16px 20px;margin:0 auto 28px;max-width:1060px;font-weight:500;}
.kxs-banner.ok{background:#e7f0e9;border:1px solid #b9d4bf;color:#2c5a3a;}
.kxs-banner.err{background:#f6e3dd;border:1px solid #e2b8a8;color:#8a3b22;}
@media(max-width:820px){.kxs-contact{grid-template-columns:1fr;gap:32px;}}

/* Kontakt – anrufen / E-Mail (kein Formular) */
.kxs-reach{background:#fff;border:1px solid #efe7d8;border-radius:16px;padding:32px 34px;box-shadow:0 14px 36px rgba(21,48,43,.08);}
.kxs-reach .lbl2{font-family:'Hanken Grotesk',sans-serif;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--terra);margin-bottom:4px;}
.kxs-reach .bigtel{display:block;font-family:'Fraunces',serif;font-size:clamp(28px,3vw,40px);color:var(--ink);text-decoration:none;line-height:1.1;}
.kxs-reach .bigtel:hover{color:var(--terra);}
.kxs-reach .bigmail{display:block;font-size:18px;color:var(--ink);text-decoration:none;word-break:break-word;}
.kxs-reach .bigmail:hover{color:var(--terra);}
.kxs-reach .reach-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px;}
.kxs a.btn-ghost-d{border:1.5px solid var(--terra);color:var(--terra);background:transparent;}
.kxs a.btn-ghost-d:hover{background:var(--terra);color:#fff;transform:translateY(-3px);}

/* Song-Seite */
.kxs-songhero{display:grid;grid-template-columns:.82fr 1.18fr;gap:50px;align-items:center;}
.kxs-songhero .cover img{width:100%;border-radius:16px;box-shadow:0 30px 70px rgba(0,0,0,.45);transform:rotate(-2deg);}
.kxs-songhero .eyebrow{color:var(--gold);}
.kxs-songhero h1{color:#fff;font-family:'Fraunces',serif;font-weight:600;font-size:clamp(34px,4.5vw,54px);margin:.1em 0 .4em;line-height:1.1;}
.kxs-songhero p{color:#cdded8;font-size:18px;line-height:1.7;}
.kxs-player{margin-top:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:14px 16px;}
.kxs-player audio{width:100%;display:block;}
.kxs-lyrics{max-width:680px;margin:0 auto;}
.kxs-lyrics .sec{font-family:'Hanken Grotesk',sans-serif;font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--terra);margin:30px 0 10px;}
.kxs-lyrics .sec:first-child{margin-top:0;}
.kxs-lyrics .ln{font-family:'Fraunces',serif;font-size:19px;line-height:1.75;color:var(--ink);margin:0;}
@media(max-width:760px){.kxs-songhero{grid-template-columns:1fr;gap:30px;}}

/* Prosa (lesbare Textseiten) + Listen + Hinweise */
.kxs-prose{max-width:820px;}
.kxs-prose p{font-size:18px;line-height:1.8;color:#3d4843;margin:0 0 1.1em;}
.kxs-prose h2{font-family:'Fraunces',serif;color:var(--ink);font-size:clamp(23px,2.5vw,31px);margin:1.6em 0 .45em;}
.kxs-prose h2:first-of-type{margin-top:.2em;}
.kxs-prose a{color:var(--terra);text-decoration:underline;text-underline-offset:3px;}
.kxs-list{list-style:none;padding:0;margin:16px 0;display:grid;grid-template-columns:1fr 1fr;gap:4px 28px;}
.kxs-list li{position:relative;padding-left:24px;font-size:17px;color:#3d4843;line-height:1.5;margin:.35em 0;}
.kxs-list li:before{content:"";position:absolute;left:0;top:.62em;width:14px;height:2px;background:var(--gold);}
.kxs-list li b{font-family:'Fraunces',serif;color:var(--ink);font-weight:600;}
.kxs-note{background:#fff;border:1px solid #efe7d8;border-left:3px solid var(--gold);border-radius:10px;padding:16px 20px;font-size:15.5px;color:#5b665f;margin:24px 0;}
.kxs-fact{display:inline-block;background:var(--teal);color:#fff;font-family:'Fraunces',serif;border-radius:10px;padding:5px 16px;font-size:18px;margin:6px 0;}
.kxs-quote-c{margin:8px 0 0;font-family:'Fraunces',serif;font-style:italic;color:var(--teal);font-size:18px;line-height:1.5;border-left:3px solid var(--gold);padding-left:18px;}
.kxs-quote-c cite{display:block;font-style:normal;font-size:14px;color:var(--muted);margin-top:6px;}
@media(max-width:600px){.kxs-list{grid-template-columns:1fr;}}

/* Galerie (CSS-Grid, gleichmäßige Kacheln) */
.kxs-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:44px;}
.kxs-gallery figure{margin:0;overflow:hidden;border-radius:14px;box-shadow:0 12px 30px rgba(21,48,43,.12);aspect-ratio:4/3;}
.kxs-gallery figure img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.7,.2,1);}
.kxs-gallery figure:hover img{transform:scale(1.06);}
.kxs-gallery figure.feature{grid-column:span 2;grid-row:span 2;}
@media(max-width:900px){.kxs-gallery{grid-template-columns:repeat(2,1fr);} .kxs-gallery figure.feature{grid-column:span 2;grid-row:auto;}}
@media(max-width:560px){.kxs-gallery{grid-template-columns:1fr;} .kxs-gallery figure.feature{grid-column:auto;}}
