/* Aus der laufenden Seite übernommen (Stand 16.10.2026): Terminliste und Buchungsformulare */
  /* TERMINE */
  .termine{list-style:none; margin:14px 0 0; padding:0}
  .termine li{display:flex; align-items:center; gap:12px; flex-wrap:wrap;
        padding:9px 0; border-top:1px dotted rgba(203,179,140,.75)}
  .termine li:first-child{border-top:none}
  .t-datum{font-weight:500; font-size:15.5px; min-width:88px; white-space:nowrap}
  .t-zeit{font-size:15.5px; color:var(--soft); white-space:nowrap}
  .t-dauer{font-size:13.5px; color:var(--muted)}
  .t-anmelden{margin-left:auto; display:inline-flex; align-items:center; gap:7px;
        background:var(--weiss); border:1px solid rgba(203,179,140,.85); border-radius:999px;
        padding:6px 14px 6px 11px; font:inherit; font-size:14px; color:var(--text);
        cursor:pointer; transition:background .15s,border-color .15s}
  .t-anmelden:hover{background:#FFF; border-color:var(--altrosa); color:var(--altrosa-text)}
  .t-anmelden svg{width:17px; height:17px; flex:none}
  .t-voll{margin-left:auto; display:inline-flex; align-items:center;
        border:1px dashed rgba(203,179,140,.85); border-radius:999px;
        padding:6px 14px; font-size:14px; color:var(--muted); letter-spacing:.02em}
  .termine li.ist-voll .t-datum,
  .termine li.ist-voll .t-zeit{color:var(--muted)}
  .t-leer{font-size:15.5px; color:var(--muted); padding:9px 0}
  .anmeldung{width:100%; margin:4px 0 6px; padding:14px 16px; border-radius:12px;
        background:var(--weiss); border:1px solid rgba(203,179,140,.85)}
  .anmeldung label{display:block; font-size:13px; letter-spacing:.14em; text-transform:uppercase;
        color:var(--altrosa-text); margin-bottom:7px}
  .anmeldung .zeile{display:flex; gap:10px; flex-wrap:wrap}
  .anmeldung .zeile.zwei > div, .anmeldung .plz-ort .ort{flex:1 1 140px; min-width:0}
  .anmeldung .plz-ort .plz{flex:0 0 96px}
  .anmeldung .zeile.zwei input, .anmeldung .plz-ort input{width:100%}
  .anmeldung .zeile.zwei label, .anmeldung .plz-ort label{display:block}
  .anmeldung input{flex:1 1 200px; font:inherit; font-size:16px; color:var(--text);
        padding:10px 12px; border:1px solid rgba(203,179,140,.9); border-radius:8px;
        background:#FFFDF9}
  .anmeldung input:focus{outline:2px solid var(--altrosa); outline-offset:1px}
  .anmeldung button{font:inherit; font-size:15px; padding:10px 18px; border:none; border-radius:8px;
        background:var(--knopf); color:#FFF; cursor:pointer}
  .anmeldung button:hover{background:var(--knopf-hover)}
  .anmeldung .hint{margin-top:8px; font-size:13.5px; color:var(--muted); line-height:1.6}
  .anmeldung .hint a{color:var(--muted)}
  .anmeldung textarea{width:100%; font:inherit; font-size:16px; color:var(--text); padding:10px 12px;
        border:1px solid rgba(203,179,140,.9); border-radius:8px; background:#FFFDF9; resize:vertical}
  .anmeldung textarea:focus{outline:2px solid var(--altrosa); outline-offset:1px}
  .anmeldung label{margin-top:10px}
  .anmeldung label:first-child{margin-top:0}
  .anmeldung .optional{text-transform:none; letter-spacing:0; color:var(--muted)}
  .anmeldung select{flex:1 1 200px; font:inherit; font-size:16px; color:var(--text); padding:10px 12px;
        border:1px solid rgba(203,179,140,.9); border-radius:8px; background:#FFFDF9}
  .anmeldung select:focus{outline:2px solid var(--altrosa); outline-offset:1px}
  .anmeldung label.check{display:flex; gap:10px; align-items:flex-start; text-transform:none;
        letter-spacing:0; font-size:14px; color:var(--soft); line-height:1.5; margin:14px 0 12px}
  .anmeldung label.check input{flex:none; width:18px; height:18px; margin-top:2px; accent-color:var(--altrosa)}
  .anmeldung label.check a{color:var(--soft)}
  .anmeldung .f-senden{width:100%; font-size:16px; padding:13px 18px; font-weight:500}
  .anmeldung .f-senden:disabled{opacity:.6; cursor:wait}
  .anmeldung .fehler{color:#A0463C; font-size:14px; margin-top:8px}
  .anmeldung .fehler:empty{display:none}
  .anmeldung .danke{font-size:15.5px; line-height:1.6; color:var(--text)}
  .anmeldung .danke strong{color:var(--altrosa-text)}
  .anmeldung .fang{position:absolute; left:-5000px; width:1px; height:1px; overflow:hidden}
  .t-plaetze{color:var(--altrosa-text); font-weight:500}
  .t-aktionen{margin-left:auto; display:flex; flex-direction:column; align-items:flex-end; gap:6px}
  .t-aktionen .t-voll{margin-left:0}
  .t-aktionen .t-anfrage{margin-left:0; font-size:13px; padding:6px 12px}
  .t-aktionen > .t-anmelden{margin-left:0; justify-content:center; min-width:112px}
  a.t-extern{text-decoration:none}
  .anmeldung .zahl-hinweis{font-size:16px; color:var(--text); margin:0 0 12px}
  .anmeldung .abhol-hinweis{font-size:14.5px; line-height:1.45; color:var(--text); background:#F6EFE4; border-radius:8px; padding:8px 11px; margin:2px 0 12px}
  .gn-text .wf-preise{display:inline-block; margin-top:6px; font-weight:500}
  @media (max-width:640px){ .t-aktionen{margin-left:0; width:100%; align-items:stretch} .t-aktionen .t-voll{justify-content:center} }
  .gutscheine{max-width:640px; margin:50px auto 0; text-align:left;
        border:1.3px solid rgba(203,179,140,.7); border-radius:12px;
        background:var(--weiss); padding:24px 26px 26px}
  .gutscheine h2{font-weight:300; font-size:clamp(24px,4.5vw,32px); text-align:center; margin-bottom:26px}
  .gutscheine .gs-intro p{color:var(--soft); font-size:16px; line-height:1.7; margin-top:0}
  .gutscheine .gs-intro p + p{margin-top:10px}
  .gutscheine .gs-grid{display:grid; grid-template-columns:1fr 190px; column-gap:20px; row-gap:14px;
        align-items:center; margin-top:20px}
  .gutscheine .gs-label{color:var(--soft); font-size:15.5px; line-height:1.6; align-self:center}
  .gutscheine .gs-btn{align-self:center}
  .gutscheine .gs-open{margin-left:0}
  @media(max-width:560px){
    .gutscheine .gs-grid{grid-template-columns:1fr; justify-items:start}
    .gutscheine .gs-label{margin-top:6px}
  }
  @media(max-width:520px){
    .termine li{gap:8px}
    .t-anmelden,.t-voll{margin-left:0; width:100%; justify-content:center}
  }
  @media(max-width:520px){
    .content{padding-top:92px}
    .badge{width:128px;height:128px;bottom:-62px} .badge img{width:112px;height:112px}
  }
  /* TERMINLISTE (chronologisch) */
  .block-titel{font-weight:400; font-size:13px; letter-spacing:.24em; text-transform:uppercase;
        color:var(--altrosa-text); text-align:center; margin:0 0 8px}
  .termine-alle{margin-top:10px; border-top:1px solid rgba(203,179,140,.65);
        border-bottom:1px solid rgba(203,179,140,.65); padding:2px 0 6px}
  .termine-alle li{align-items:flex-start; padding:11px 0}
  .termine-alle li:first-child{border-top:none}
  .t-monat{display:block; width:100%; border-top:none !important; padding:14px 0 2px;
        font-size:12.5px; letter-spacing:.22em; text-transform:uppercase; color:var(--muted)}
  .t-monat + li{border-top:none}
  .t-info{display:flex; flex-direction:column; gap:3px; flex:1 1 220px; min-width:0}
  .t-titel{font-size:16px; font-weight:500; color:var(--text); line-height:1.45}
  .t-titel em{font-style:normal; font-weight:400; color:var(--muted); font-size:15px}
  .t-detail{font-size:14.5px; color:var(--soft); line-height:1.5}
  .termine-alle .t-datum{padding-top:1px}
  .termine-alle li.ist-voll .t-titel,
  .termine-alle li.ist-voll .t-detail{color:var(--muted)}
  .stern{color:var(--altrosa-text); font-weight:600}
  .termine-alle li.ist-special{background:linear-gradient(180deg,rgba(239,226,198,.85),rgba(231,216,182,.62));
        border-radius:10px; padding:14px 16px 14px 18px; margin:8px 0;
        border:1px solid rgba(199,169,111,.75); border-left:4px solid rgba(186,150,88,.95);
        box-shadow:0 2px 6px rgba(154,124,74,.14)}
  .termine-alle li.ist-special .t-titel{font-weight:600}
  .termine-alle li.ist-special + li{border-top:none}
  .t-badge{display:inline-block; font-size:10.5px; font-weight:600; letter-spacing:.18em;
        text-transform:uppercase; color:var(--weiss); background:rgba(160,126,74,.95);
        border:1px solid rgba(160,126,74,.95); border-radius:999px;
        padding:2px 9px 1px; margin-right:9px; vertical-align:2px}
  .special-notiz{margin-top:14px; display:flex; gap:10px; align-items:baseline;
        border:1px solid rgba(199,169,111,.7); border-left:4px solid rgba(186,150,88,.95);
        border-radius:10px; background:rgba(239,226,198,.5); padding:11px 16px;
        font-size:14.5px; color:var(--soft); line-height:1.6}
  .special-notiz strong{color:var(--text); font-weight:600}
  .gruppen-notiz{margin-top:12px; display:flex; gap:16px; align-items:center; flex-wrap:wrap;
        border:1px solid rgba(190,140,130,.6); border-left:4px solid var(--altrosa);
        border-radius:10px; background:rgba(190,140,130,.12); padding:13px 16px;
        font-size:14.5px; color:var(--soft); line-height:1.6}
  .gruppen-notiz .gn-text{flex:1 1 300px; min-width:0}
  .gruppen-notiz strong{color:var(--text); font-weight:600}
  .gruppen-notiz .t-anmelden{flex:0 0 auto; border-color:rgba(190,140,130,.85)}
  .weihnachts-notiz{margin:8px 0 34px}
  .weihnachts-notiz{margin-bottom:12px}
  .gs-notiz{margin:0 0 34px; border-color:rgba(203,179,140,.75); border-left-color:#C9AA82;
        background:rgba(203,179,140,.16); gap:10px 12px}
  .gs-notiz .gn-text{flex:1 1 100%}
  .gs-notiz .t-anmelden{margin-left:0; border-color:rgba(201,170,130,.9)}
  .gs-link{color:var(--altrosa-text); text-decoration:none;
        border-bottom:1px solid rgba(190,140,130,.55)}
  .gs-link:hover{border-bottom-color:var(--altrosa)}
  .termine-alle li.ist-special .t-anmelden{border-color:rgba(199,169,111,.95)}
  .t-voll.t-ohne{color:var(--text); font-weight:500}
  .kurs h4{font-weight:500; font-size:19px; letter-spacing:.02em; margin-bottom:4px}
  .kurs.kurs-gruppen{border-top:none; border-left:4px solid var(--altrosa); border-radius:10px;
        background:rgba(190,140,130,.09); padding:20px 20px 18px; margin-bottom:4px}
  .kurs.kurs-gruppen .termine li{border-top:1px solid rgba(190,140,130,.4)}

