/* Farbstüberl – Logo v2 (assets/logo_neu_v2.jpeg) und Farbwelt. Ein Stylesheet,
   bewusst NACH den vorhandenen Seitenstyles geladen. Statusfarben
   für freie/volle Termine und Fehler bleiben semantisch unverändert. */
:root{
 --bg:#FBF8F3;--paper:#FFFDF9;--ink:#38312E;--muted:#665B54;
 --accent:#8E5364;--accent2:#5D6546;--accent3:#E8A166;
 --line:#D8C8BF;--terracotta:#8E5364;--blue:#5D6546;
 --brand-rose:#D0A2A6;--brand-olive:#99966F;--brand-lilac:#F3EDF2;
 --brand-apricot:#E8A166;--brand-blush-soft:#F7E7EA;
}
.theme-5 body{background-color:var(--bg);color:var(--ink)}
.theme-5 header{background:color-mix(in srgb,var(--bg) 93%,transparent);border-bottom-color:var(--line)}
.theme-5 .demo-bar,.theme-5 .demo{background:#5D6546;color:#FFF8F2}
.theme-5 .brand img,.theme-5 #v10-nav>.brand img{
 border-radius:50%;object-fit:contain;background:#fff;
 border:1px solid #DFCAD1;box-shadow:0 2px 8px #51423915
}
.theme-5 .logo-card{background:#FFFDF9;border:1px solid #E4CDD0;box-shadow:0 20px 55px #705A5719}
.theme-5 .logo-card img{max-width:100%;height:auto;object-fit:contain;border-radius:50%}
.theme-5 #v10-links .menu-dropdown{border-color:#D4BEC1;background:var(--paper);box-shadow:6px 7px 0 #6A51501B}
.theme-5 #v10-links .menu-dropdown a:hover,
.theme-5 #v10-links .menu-dropdown a:focus-visible{background:#F7E7E9}
.theme-5 #v10-links .menu-trigger,
.theme-5 #v10-quick-reserve{background:var(--accent);color:#fff}
.theme-5 #v10-links .menu-trigger:hover,
.theme-5 #v10-links .menu-trigger[aria-expanded="true"],
.theme-5 #v10-quick-reserve:hover,
.theme-5 #v10-quick-reserve[aria-expanded="true"]{background:#764253;color:#fff}
.theme-5 :is(a,button,input,select,textarea,summary):focus-visible{
 outline:3px solid #5D6546;outline-offset:3px
}
.theme-5 .btn:not(.alt):hover{background:#764253;color:#fff}
.theme-5 .btn.alt{background:#F7E6E9;color:#743B50;border-color:#CDAEB7}
.theme-5 .btn.alt:hover{background:#F1D9DF}
.theme-5 .hero .eyebrow,.theme-5 .eyebrow,.theme-5 .kicker,
.theme-5 .offer-number,.theme-5 .offer-eyebrow,.theme-5 .offer-aside-tag,
.theme-5 .idea-tech{color:var(--accent)}
.theme-5 .hero h1 span,.theme-5 .gift-hero h1 em{color:var(--accent)}
.theme-5 .offer-option[aria-selected="true"]{
 background:#F7E7EA;border-color:#A86279;box-shadow:5px 6px 0 #8E53642C
}
.theme-5 .offer-option[aria-selected="true"]:after{background:#FFFDF9;border-color:#D4BEC1}
.theme-5 .offer-panel,.theme-5 .offer-hint,.theme-5 .group-package,
.theme-5 .rohling-card,.theme-5 .individual-contact{border-color:#D8C8BF;box-shadow:6px 7px 0 #7761531B}
.theme-5 .offer-panel-aside{background:#F5EBE6;border-color:#DFC8C4}
.theme-5 .group-package--standard{background:#F8E9EB;border-color:#C99DAB}
.theme-5 .group-package--premium{background:#F0F1E8;border-color:#A5AD90}
.theme-5 .individual-section{background:linear-gradient(155deg,#FFF8F5,#F2E4E2)}
.theme-5 .individual-choice[aria-pressed="true"]{background:#F8E5E9;border-color:var(--accent)}
.theme-5 .individual-note,.theme-5 .individual-preview,
.theme-5 .individual-demo-notice{background:#F7E9E9;color:#754357}
.theme-5 .individual-form input,.theme-5 .individual-form textarea,
.theme-5 .individual-form select{border-color:#CDBCB4}
.theme-5 .booking-turnstile-security{background:#FFF9F7;border-color:#DFC7CC}
.theme-5 .modal-panel{border-color:#D8C8BF;background:var(--paper)}
.theme-5 #demo-form .modal-calendar{background:#F8EEF0;border-color:#D8C2CA}
.theme-5 .demo-calendar-day[data-state="selected"],
.theme-5 .demo-calendar-slot[aria-pressed="true"]{
 background:#F9E3E9;border-color:#8E5364;box-shadow:inset 0 0 0 2px #8E5364
}
.theme-5 .demo-calendar-label{background:#F5DFE4;color:#713E52}
.theme-5 .demo-calendar-nav{border-color:#D0B7BE;background:#FFFDF9}
.theme-5 .demo-calendar-status{color:#754458}
.theme-5 .gift-hero{
 background:radial-gradient(circle at 88% 23%,#F1D9DE,transparent 34%),
 radial-gradient(circle at 5% 90%,#EEE8D9,transparent 36%),
 linear-gradient(142deg,#FCF8F5,#F8ECEC);border-bottom-color:#DCC5C9
}
.theme-5 .gift-card{border-color:#CFA1AD;
 background:radial-gradient(circle at 92% 0%,#F8E5E9,transparent 45%),
 radial-gradient(circle at 4% 100%,#EDECD9,transparent 43%),#FFFDF9}
.theme-5 .gift-card:after{border-color:#CCA7AF}
.theme-5 .gift-card-title{color:#87495E}
.theme-5 .gift-card-amount{color:#764253}
.theme-5 .gift-card-preview-label{background:#EED8DD;color:#6F3F50}
.theme-5 .gift-art:before,.theme-5 .gift-art:after{color:#B87C8E}
.theme-5 .step-num{border-color:#C79AAA;color:#87495E}
.theme-5 .amount-choice[aria-pressed="true"]{
 background:#F4DCE2;border-color:#A65E74;color:#773E52;
 box-shadow:inset 0 0 0 1px #A65E74
}
.theme-5 .amount-choice:hover{background:#F8E6EA}
.theme-5 .test-voucher-card{border-color:#CCA3AD}
.theme-5 .test-voucher-card:after{background:#B77F90}
.theme-5 .test-voucher-card .tv-value{color:#764253}
.theme-5 .gift-card-brand img,.theme-5 .tv-brand img,
.theme-5 .footer-brand img{object-fit:contain;border-radius:50%;background:#fff}
.theme-5 .filter[aria-pressed="true"]{background:#5D6546;border-color:#5D6546;color:#fff}
.theme-5 .idea-card{border-color:#D8C8BF;box-shadow:6px 7px 0 #6A515020}
.theme-5 .accent-note,.theme-5 .dialog-tip{background:#F6E7E9;border-color:#D2AAB6}
.theme-5 .cta{background:#F5E5E8;border-color:#D8BBC3}
.theme-5 #seitenfuss,.theme-5 footer{background:#F0E7E3;border-color:#D6C4BF}
.theme-5 #seitenfuss .footer-v10-brand img{
 width:75px;height:75px;object-fit:contain;border-radius:50%;
 background:#fff;border:1px solid #D8BBC3
}
.theme-5 #seitenfuss .footer-v10-bottom{border-color:#D6C4BF}
.theme-5 .footer-v10-demo{background:#FAEDEF;color:#713E52}
@media(max-width:540px){
 .theme-5 #seitenfuss .footer-v10-brand img{width:62px;height:62px}
 .theme-5 .gift-card-brand img{width:42px;height:42px}
}

/* Markendetails v2: dezentes Altrosa, Oliv und Creme, auch mobil. */
.theme-5 .brand img,.theme-5 #seitenfuss .footer-v10-brand img,
.theme-5 .gift-card-brand img,.theme-5 .tv-brand img{
 border-radius:50%;object-fit:contain;background:#fff;
}
.theme-5 .hero .stamp,.theme-5 .filter[aria-pressed="true"]{
 background:var(--accent2);color:#fff;border-color:var(--accent2);
}
.theme-5 .group-package--premium{background:#F0F1E8;border-color:#B8BBA1}
.theme-5 .gift-hero .hero-note i{background:#F3E5E6;color:var(--accent)}
.theme-5 .idea-open:hover,.theme-5 .amount-choice:hover{border-color:var(--accent)}

/* Logo-Korrektur: überall nur die runde Bildmarke, ohne eckige
   Karte, Rand, Schatten oder weißen Kasten. Auch auf Mobilgeräten. */
.theme-5 .logo-card{
 padding:0;border:0;border-radius:50%;background:transparent;
 box-shadow:none;transform:none;overflow:hidden;
}
.theme-5 .logo-card img{
 display:block;width:100%;height:100%;max-width:100%;
 aspect-ratio:1;object-fit:cover;border-radius:50%;
 background:transparent;border:0;box-shadow:none;
}
.theme-5 .brand img,.theme-5 #v10-nav>.brand img,
.theme-5 #seitenfuss .footer-v10-brand img,
.theme-5 .gift-card-brand img,.theme-5 .tv-brand img,
.theme-5 .footer-brand img{
 border-radius:50%;border:0;box-shadow:none;background:transparent;
}
/* Ohne Theme-5-Klasse: Rechtstexte und geschützte Gutscheinprüfung. */
header img[src$="logo_neu_v2.jpeg"],
.brand img[src$="logo_neu_v2.jpeg"]{
 border-radius:50%;border:0;box-shadow:none;
}

/* Homepage-Logo: ausschließlich die vorhandene lilafarbene Kreislinie.
   Die weiße Außenfläche gehört zur JPEG-Datei und wird beim Rendern
   beschnitten – kein zusätzlicher Rahmen, keine neue Form oder Retusche. */
.theme-5 .hero-art > .blob,
.theme-5 .hero-art > .stamp{display:none!important}
.theme-5 .hero-art .logo-card{
  border:0;outline:0;box-shadow:none;background:transparent;
  padding:0;transform:none;
}
img[src$="logo_neu_v2.jpeg"]{
  clip-path:circle(42.5% at 50% 49.6%);
}

/* Eigene Schreibschrift für die Startseiten-Headline.
   Font wird im Build mit geprüft und ausschließlich von unserer
   Cloudflare-Pages-Domain ausgeliefert; kein Google-Fonts-Browserrequest. */
@font-face{
 font-family:"Farbstueberl-Dancing";
 src:url("/assets/fonts/DancingScript-variable.ttf") format("truetype");
 font-style:italic;
 font-weight:400 700;
 font-display:swap;
}
.theme-5 .hero h1{
 font-family:"Farbstueberl-Dancing","Brush Script MT","Segoe Script",cursive;
 font-style:italic;
 font-weight:700;
 font-size:clamp(3rem,4.3vw,4.6rem);
 line-height:1.12;
 letter-spacing:-.015em;
 max-width:100%;
 text-wrap:balance;
}
@media(max-width:640px){
 .theme-5 .hero h1{
  font-size:clamp(2rem,9vw,2.6rem);
  line-height:1.18;
  letter-spacing:-.008em;
 }
}

/* Startseite: die beiden Hero-CTAs und drei Kurzhinweise sind bewusst
   ausgeblendet, statt aus dem DOM entfernt (CMS node_key-Schutz). */
.theme-5 .hero .actions,.theme-5 .hero .micro{display:none!important}
/* Dropdown chevron remains visible, matching the former menu. */
/* Tablet & Smartphone: Schrift/Logo nebeneinander im oberen Hero.
   display:contents bewahrt die bestehende DOM- und CMS-Struktur. */
@media(max-width:700px){
 .theme-5 .hero{padding-top:clamp(24px,5vw,40px);padding-bottom:35px}
 .theme-5 .hero .hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(92px,calc(34% - 10px));
  align-items:center;
  gap:8px clamp(9px,3vw,16px);
 }
 .theme-5 .hero .hero-grid>div:first-child{display:contents}
 .theme-5 .hero .eyebrow{grid-column:1/-1;grid-row:1;margin:0 0 8px}
 .theme-5 .hero h1{
  grid-column:1;grid-row:2;
  font-size:clamp(2.05rem,9.2vw,3.4rem);
  line-height:1.17;
  margin:0;
  min-width:0;
  white-space:nowrap;word-break:normal;overflow-wrap:normal;
  text-wrap:nowrap;
 }
 .theme-5 .hero .hero-art{
  grid-column:2;grid-row:2;
  min-height:0;height:auto;width:100%;max-width:100%;
  display:grid;place-items:center;
 }
 .theme-5 .hero .logo-card{width:100%;max-width:100%;min-width:0;aspect-ratio:1}
 .theme-5 .hero .lead{
  grid-column:1/-1;grid-row:3;
  margin:16px 0 0;max-width:100%;
  font-size:1rem;line-height:1.65;
 }
}

/* Fixe zweizeilige Headline: Zeile 1 vor dem vorhandenen <br>, Zeile 2
   danach. Die Schriftgröße wird nur verkleinert, wenn eine Zeile
   tatsächlich zu breit ist (siehe Skript in version-10/index.html).
   Keine neuen DOM-Knoten => CMS-Textschlüssel bleiben erhalten. */
.theme-5 .hero h1{
 white-space:nowrap;word-break:normal;overflow-wrap:normal;text-wrap:nowrap;
 font-size:var(--farb-hero-fit,clamp(3rem,4.3vw,4.6rem));
}
.theme-5 .hero h1 > span{white-space:nowrap}
@media(max-width:640px){
 .theme-5 .hero h1{
  font-size:var(--farb-hero-fit,clamp(2.05rem,9.2vw,3.4rem));
 }
}
@media(min-width:641px) and (max-width:700px){
 .theme-5 .hero h1{
  font-size:var(--farb-hero-fit,clamp(2.05rem,9.2vw,3.4rem));
 }
}

/* Nur die Startseite: konsequent zwischen Logo-Rosa und Creme
   wechseln. Kein Karo, keine Farbverläufe, nur main-Kinder. */
html.theme-5 body.farb-home{
 background-color:#F9E7EB;
 background-image:none;
}
html.theme-5 body.farb-home main > section:nth-of-type(odd){
 background:#F9E7EB;
 background-image:none;
 --muted:#4F3D42;
 --accent:#633346;
}
html.theme-5 body.farb-home main > section:nth-of-type(even){
 background:#F7F5E8;
 background-image:none;
}
html.theme-5 body.farb-home main > section{
 border-top:0;
 border-bottom:0;
}

/* Drei Erlebnisse: Gruppenfeier-Kachel und Link nur noch als
   unsichtbare Platzhalter, damit CMS-node_key-Zuordnungen stabil bleiben. */
.theme-5 #offer-tab-gruppenfeier[hidden],
.theme-5 #v10-group-options a[hidden]{display:none!important}
.theme-5 #offer-options{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:950px){
 .theme-5 #offer-options{grid-template-columns:repeat(2,minmax(0,1fr))}
 .theme-5 #offer-tab-event-workshop{grid-column:1/-1}
}
@media(max-width:360px){
 .theme-5 #offer-options{grid-template-columns:1fr}
}

/* Einheitliche, handgeschriebene H2 auf allen öffentlichen Farbstüberl-Seiten:
   wie die Hero-H1, jedoch bewusst kleiner und gut lesbar. Das !important
   ist nötig, weil ältere Seitenstyles font:-Kurzschreibweisen verwenden
   (z.B. Standort, Gutschein, Dialog); H1, H3 und Admin bleiben unverändert. */
.theme-5 h2{
 font-family:"Farbstueberl-Dancing","Brush Script MT","Segoe Script",cursive!important;
 font-style:italic!important;
 font-weight:700!important;
 font-size:clamp(1.85rem,3.3vw,2.8rem)!important;
 line-height:1.24!important;
 letter-spacing:-.015em!important;
 overflow-wrap:break-word;
 text-wrap:balance;
}
@media(max-width:700px){
 .theme-5 h2{
  font-size:clamp(1.65rem,7.5vw,2.3rem)!important;
  line-height:1.25!important;
 }
}

/* Die sechs bestehenden Rohling-Karten verwenden austauschbare Bilder statt Emoji und Dummy-Nummern. */
.theme-5 .rohling-price-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.theme-5 .rohling-card{display:grid;grid-template-columns:minmax(92px,42%) minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:14px;row-gap:6px;align-items:start;padding:16px;min-height:168px}
.theme-5 .rohling-card .rohling-symbol{grid-column:1;grid-row:1/4;align-self:stretch;width:100%;height:100%;min-height:136px;margin:0;border:1px solid #e8d4c9;border-radius:12px;font-size:0!important;color:transparent!important;background-color:#F7EEE7;background-repeat:no-repeat;background-position:center;background-size:cover}
.theme-5 .rohling-card:nth-child(1) .rohling-symbol{background-image:url("/assets/rohlinge/mini-figur.svg")}
.theme-5 .rohling-card:nth-child(2) .rohling-symbol{background-image:url("/assets/rohlinge/kleine-schale.svg")}
.theme-5 .rohling-card:nth-child(3) .rohling-symbol{background-image:url("/assets/rohlinge/tasse.svg")}
.theme-5 .rohling-card:nth-child(4) .rohling-symbol{background-image:url("/assets/rohlinge/teller.svg")}
.theme-5 .rohling-card:nth-child(5) .rohling-symbol{background-image:url("/assets/rohlinge/vase.svg")}
.theme-5 .rohling-card:nth-child(6) .rohling-symbol{background-image:url("/assets/rohlinge/grosse-schuessel.svg")}
.theme-5 .rohling-card .rohling-index{display:none!important}
.theme-5 .rohling-card h3{grid-column:2;grid-row:1;margin:4px 0 2px;font-size:clamp(1.1rem,1.55vw,1.4rem);overflow-wrap:anywhere}
.theme-5 .rohling-card p{grid-column:2;grid-row:2;margin:0;font-size:.85rem}
.theme-5 .rohling-card .rohling-price{grid-column:2;grid-row:3;align-self:end;width:100%;margin:5px 0 0;padding-top:9px;font-size:clamp(1.15rem,2vw,1.5rem);white-space:nowrap}
@media(max-width:1050px){.theme-5 .rohling-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.theme-5 .rohling-price-grid{grid-template-columns:minmax(0,1fr);gap:12px}.theme-5 .rohling-card{grid-template-columns:minmax(100px,36%) minmax(0,1fr);min-height:144px;padding:12px}.theme-5 .rohling-card .rohling-symbol{min-height:118px}}
.theme-5 #demo-form .booking-wishes-field{grid-column:1/-1}
.theme-5 #demo-form .booking-wishes-field textarea{display:block;width:100%;min-width:0;min-height:100px;box-sizing:border-box;resize:vertical;padding:12px 14px;border:1px solid #cbb5ad;border-radius:10px;background:#fffdf9;color:var(--ink);font:inherit;font-weight:400;line-height:1.55}
.theme-5 #demo-form .booking-wishes-field textarea::placeholder{color:#786b67;opacity:1}
.theme-5 #demo-form .booking-wishes-field textarea:focus-visible{outline:3px solid var(--accent2);outline-offset:2px}
