/* ==========================================================================
 * SWIVON Tagesausflug — Tagesplan-Module (Timeline, illustrierte Karte, Kosten vor Ort, Wetter, Fahrzeug)
 * Quelle: tagesausfluege/pilot/izlet-modul.css — im Theme als assets/css/izlet.css (per make-page.py --theme kopiert).
 * Baut auf den Theme-Tokens auf (main.css :root) — keine eigenen Farben/Fonts.
 * Präfix .iz-  ·  Animationen nur transform/opacity (Ausnahme: einmaliges Route-Zeichnen)
 * ========================================================================== */
.iz-sec{margin:0 0 clamp(40px,5vw,60px)}
.iz-sub{font-family:var(--nav);font-size:14px;color:#6b6660;margin:-6px 0 22px;max-width:60ch}
.iz-note{border:1px dashed var(--gold);border-radius:var(--r-sm);padding:12px 14px;font-family:var(--nav);font-size:12.5px;line-height:1.5;color:#6b6660;background:#fffdf6}
.iz-note b{color:var(--gold-d);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;display:block;margin-bottom:3px}

/* ---------- Trust-Zeile unter H1 ---------- */
.iz-trust{display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;margin:14px 0 22px;padding:0;font-family:var(--nav);font-size:13.5px;color:#3a362f}
.iz-trust li{display:flex;align-items:center;gap:8px}
.iz-trust li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold);flex:none}

/* ---------- Quick-Facts ---------- */
.iz-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;list-style:none;padding:0}
.iz-facts li{background:#fff;padding:16px 16px 15px;min-width:0}
.iz-fk{display:block;font-family:var(--nav);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-d);margin-bottom:5px}
.iz-fv{display:block;font-family:var(--serif);font-size:19px;font-weight:600;line-height:1.2;color:var(--black)}
.iz-fsub{display:block;font-family:var(--nav);font-size:12px;color:#6b6660;margin-top:3px;line-height:1.4}
@media(max-width:760px){.iz-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){
  .iz-facts{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;background:none;border:0;border-radius:0;margin-inline:calc(-1*var(--gutter));padding:2px var(--gutter) 10px;scrollbar-width:none}
  .iz-facts::-webkit-scrollbar{display:none}
  .iz-facts li{flex:0 0 62%;scroll-snap-align:start;border:1px solid var(--line);border-radius:var(--r-card)}
}

/* ---------- Seitenraster (ersetzt das Theme-Raster «Inhalt + Buchungskarte») ---------- */
.iz-wrap{width:min(var(--wrap),calc(100% - 2*var(--gutter)));margin-inline:auto}
.iz-wrap:first-of-type{padding-top:clamp(34px,4.5vw,54px)}
.iz-rest>.iz-sec,.iz-rest>section{margin-bottom:clamp(44px,5.5vw,68px)}
.iz-prose,.iz-rest .offer-faq-sec{max-width:820px}
.iz-rest .offer-trust-light{margin-bottom:clamp(44px,5.5vw,68px)}

/* ---------- Tagesablauf: Stations-Karten in der breiten Spalte, illustrierte Karte rechts (sticky) ---------- */
/* DOM-Reihenfolge = mobil: Titel → Karte → Stationen. Ab 981px legt das Grid die Karte nach rechts. */
.iz-day{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;margin:0 0 clamp(48px,6vw,76px)}
.iz-day-head,.iz-day-list,.iz-mapcol{min-width:0}
.iz-day-head .iz-sub{margin-bottom:0}
.iz-side-ey{font-family:var(--nav);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-d);margin:0 0 12px}
.iz-map{position:relative;aspect-ratio:880/1100;border-radius:var(--r-img);overflow:hidden;background:#bcd475;border:1px solid var(--line);box-shadow:0 34px 70px -48px rgba(20,16,8,.55)}
.iz-map-base,.iz-map-base img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.iz-svg{position:absolute;inset:0;width:100%;height:100%;user-select:none;-webkit-user-select:none}
.iz-svg--wide{display:none}
.iz-map-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin-top:12px;font-family:var(--nav);font-size:11.5px;color:#6b6660}
.iz-map-legend span{display:inline-flex;align-items:center;gap:7px}
.iz-map-legend i{display:inline-block;width:22px;height:0;border-top:3px solid var(--gold)}
.iz-map-legend i.rail{border-top:3px dashed var(--black)}
.iz-map-legend i.walk{border-top:3px dotted #7a4f1d}
.iz-map-legend i.chf{border-top:3px dotted rgba(12,12,12,.4)}
.iz-map-attr{font-family:var(--nav);font-size:10px;line-height:1.4;color:#6b6660;margin:6px 0 0}
@media(min-width:701px) and (max-width:980px){
  .iz-map{aspect-ratio:1320/880}
  .iz-svg--wide{display:block}
  .iz-svg--tall{display:none}
}
@media(min-width:981px){
  .iz-day{grid-template-columns:minmax(0,1fr) clamp(360px,36%,450px);gap:0 clamp(30px,3.6vw,56px);align-items:start}
  .iz-day-head{grid-column:1;grid-row:1;margin-bottom:22px}
  .iz-day-list{grid-column:1;grid-row:2}
  .iz-mapcol{grid-column:2;grid-row:2;position:sticky;top:calc(var(--header-h,82px) + 66px)}   /* starts level with the first stop, not the heading */
  /* breite Spalte: Foto links, Text daneben — der Foto-Tipp läuft darunter über die ganze Breite (kein Leerraum unter dem Bild) */
  .iz-card-in{display:grid;grid-template-columns:minmax(0,38%) minmax(0,1fr);gap:0 20px;align-items:center}
  .iz-card-in>.iz-card-img{grid-column:1;margin:0}
  .iz-card-in>.iz-card-txt{grid-column:2}
  .iz-card-in>.iz-card-txt:first-child{grid-column:1 / -1}
  .iz-card-in>.iz-tip,.iz-card-in>.iz-tkbox,.iz-card-in>.iz-opts,.iz-card-in>.iz-xs{grid-column:1 / -1;margin-top:14px}
}

/* Routen */
.iz-r{fill:none;stroke-linecap:round;stroke-linejoin:round}
.iz-r--halo{stroke:rgba(255,252,240,.62);stroke-width:21}
.iz-r--case{stroke:#2b2216;stroke-width:13}
.iz-r--gold{stroke:var(--gold);stroke-width:7}
.iz-r--rail,.iz-r--cable{stroke:#2b2216;stroke-width:5;stroke-dasharray:4 13}
.iz-r--chf{stroke:rgba(12,12,12,.38);stroke-width:4;stroke-dasharray:1 12}
.iz-r--walk{stroke:#7a4f1d;stroke-width:6;stroke-dasharray:1 11}
.iz-r--ret{stroke:rgba(43,34,22,.5);stroke-width:5;stroke-dasharray:14 10}
.iz-lead path{stroke:#2b2216;stroke-width:3;stroke-dasharray:2 6;stroke-linecap:round}
.iz-lead circle{fill:var(--gold);stroke:#fff;stroke-width:3}
.iz-lbl{font-family:var(--serif);font-style:italic;font-weight:600;font-size:33px;letter-spacing:.05em;paint-order:stroke;stroke-linejoin:round}
.iz-lbl--lake{fill:#0f3d57;stroke:rgba(222,244,250,.8);stroke-width:5px}
.iz-lbl--peak{fill:#3a2c1a;stroke:rgba(250,246,230,.8);stroke-width:6px;font-size:29px}
.iz-cloud{animation:izDrift 60s ease-in-out infinite alternate;pointer-events:none}
@keyframes izDrift{from{transform:translateX(-46px)}to{transform:translateX(64px)}}

/* Stationen */
.iz-node{cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent}
.iz-hit{fill:transparent}
.iz-med{transition:transform .45s var(--ease);transform-box:fill-box;transform-origin:center}
.iz-ring{fill:none;stroke:#fff;stroke-width:6;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35))}
.iz-ph{transition:transform 6s linear;transform-box:fill-box;transform-origin:center}
.iz-badge{fill:var(--gold);stroke:#fff;stroke-width:4}
.iz-badge-t{font-family:var(--nav);font-weight:700;font-size:19px;fill:#fff}
.iz-pulse{fill:none;stroke:var(--gold);stroke-width:4;opacity:0;transform-box:fill-box;transform-origin:center}
.iz-nlbl{font-family:var(--nav);font-weight:700;font-size:25px;fill:var(--black);paint-order:stroke;stroke:rgba(255,255,255,.92);stroke-width:7px;stroke-linejoin:round;transition:opacity .3s}
.iz-node:hover .iz-med,.iz-node:focus-visible .iz-med{transform:scale(1.12)}
.iz-node:focus-visible .iz-ring{stroke:var(--gold)}
.iz-node.is-active .iz-med{transform:scale(1.42)}
.iz-node.is-active .iz-ring{stroke:var(--gold)}
.iz-node.is-active .iz-ph{transform:scale(1.22)}
.iz-node.is-active .iz-pulse{animation:izPulse 1.8s var(--ease) infinite}
.iz-node.is-active .iz-nlbl{opacity:0}
.iz-node:focus-visible .iz-ring{stroke:#0c0c0c;stroke-dasharray:9 5}
@keyframes izPulse{from{transform:scale(.95);opacity:.9}to{transform:scale(1.55);opacity:0}}
.iz-way .iz-dot{fill:#fff;stroke:#2b2216;stroke-width:4}
.iz-way--opt .iz-dot{stroke-dasharray:6 5}
.iz-way .iz-nlbl{font-size:21px;font-weight:600;fill:#3a362f}
.iz-chip rect{fill:var(--black);stroke:#fff;stroke-width:4}
.iz-chip text{font-family:var(--nav);font-weight:700;font-size:22px;fill:#fff;letter-spacing:.04em}
.iz-trav{transition:opacity .35s}
.iz-amb{opacity:.95}

/* Tagesplan im Fahrplan-Stil: Zeit · Linie · Ort. Zugeklappt nur WANN und WO — alles Weitere erst beim Öffnen. */
.iz-daysum{display:flex;flex-wrap:wrap;gap:8px 26px;list-style:none;margin:16px 0 0;padding:0;font-family:var(--nav);font-size:13px;color:#6b6660}
.iz-daysum b{font-family:var(--serif);font-size:19px;font-weight:600;color:var(--black);margin-right:5px}
.iz-tl{list-style:none;margin:0;padding:0}
.iz-tl-row{display:grid;grid-template-columns:52px 40px minmax(0,1fr);align-items:stretch;position:relative}
.iz-tl-time{font-family:var(--nav);font-size:14px;font-weight:600;color:var(--black);font-variant-numeric:tabular-nums;padding-top:17px;letter-spacing:.01em}
.iz-tl-end .iz-tl-time{padding-top:3px}
/* die durchgehende Linie */
.iz-tl-mark{position:relative;display:flex;justify-content:center}
.iz-tl-mark::before{content:"";position:absolute;top:0;bottom:0;left:50%;margin-left:-1px;border-left:2px solid var(--gold)}
.iz-tl-first .iz-tl-mark::before{top:12px}
.iz-tl-last .iz-tl-mark::before{bottom:auto;height:12px}
.iz-tl-leg--rail .iz-tl-mark::before,.iz-tl-leg--cable .iz-tl-mark::before{border-left:2px dashed #2b2216}
.iz-tl-leg--walk .iz-tl-mark::before{border-left:2px dotted #7a4f1d}
.iz-tl-mark b,.iz-tl-mark i{position:relative;z-index:1;flex:none;border-radius:50%;display:flex;align-items:center;justify-content:center}
.iz-tl-mark b{width:30px;height:30px;margin-top:11px;background:var(--gold);color:#0c0c0c;font-family:var(--nav);font-size:13px;font-weight:700;box-shadow:0 0 0 4px #fdfcfa;transition:transform .3s var(--ease)}
.iz-tl-mark i{width:12px;height:12px;margin-top:6px;background:var(--black);box-shadow:0 0 0 4px #fdfcfa}
.iz-card.is-open .iz-tl-mark b{transform:scale(1.15)}
/* Start / Ende: schlichte Zeilen */
.iz-tl-txt{padding:0 0 4px 6px}
.iz-tl-txt strong{display:block;font-family:var(--serif);font-size:19px;font-weight:600;line-height:1.25;color:var(--black)}
.iz-tl-txt small{display:block;font-family:var(--nav);font-size:12.5px;color:#6b6660;margin-top:1px}
/* Etappen: nur eine leise Beschriftung an der Linie */
.iz-tl-cap{display:flex;flex-direction:column;gap:5px;padding:12px 0 12px 8px;font-family:var(--nav);font-size:12.5px;color:#6b6660}
.iz-tl-cap span{display:inline-flex;align-items:center;gap:8px}
.iz-tl-cap em{font-style:normal}
.iz-tl-cap svg{width:15px;height:15px;flex:none;color:#6b6660}
/* Stationen: die einzigen Karten */
.iz-card-box{margin-left:6px;border:1px solid var(--line);border-radius:var(--r-card);background:#fff;transition:border-color .3s,box-shadow .3s}
.iz-card-box:hover{border-color:#d9d2c0}
.iz-card.is-open .iz-card-box{border-color:var(--gold);box-shadow:0 22px 44px -32px rgba(20,16,8,.5)}
.iz-card-h{margin:0;font:inherit}
.iz-card-head{all:unset;box-sizing:border-box;width:100%;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:14px 18px}
.iz-card-head:focus-visible{outline:2px solid #7a5a12;outline-offset:-2px;border-radius:var(--r-card)}
.iz-card-t{display:none;margin-right:8px;font-family:var(--nav);font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--gold-d);font-variant-numeric:tabular-nums}
.iz-card-head strong{font-family:var(--serif);font-weight:600;font-size:22px;line-height:1.2;color:var(--black)}
.iz-tl-dur{font-family:var(--nav);font-size:12.5px;font-weight:600;color:#6b6660;white-space:nowrap}
.iz-card-chev{width:9px;height:9px;border-right:2px solid #8a857c;border-bottom:2px solid #8a857c;transform:rotate(45deg) translate(-2px,-2px);transition:transform .35s var(--ease)}
.iz-card.is-open .iz-card-chev{transform:rotate(-135deg) translate(-2px,-2px)}
/* «Details»: zeigt, dass jede Station aufklappt — beim Öffnen wird daraus «Weniger» */
.iz-card-more{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid #e3cf95;border-radius:999px;background:#fffaf0;font-family:var(--nav);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#7a5a12;transition:background .25s,border-color .25s,color .25s}
.iz-card-more .iz-card-chev{width:7px;height:7px;border-color:currentColor}
.iz-card-more .m-c,.iz-card.is-open .iz-card-more .m-o{display:none}
.iz-card.is-open .iz-card-more .m-c{display:inline}
.iz-card-head:hover .iz-card-more,.iz-card-head:focus-visible .iz-card-more{background:var(--gold);border-color:var(--gold);color:#fff}
.iz-hint{display:flex;align-items:center;gap:8px;margin:10px 0 0;font-family:var(--nav);font-size:13px;font-weight:600;color:#7a5a12}
.iz-hint svg{flex:none;width:18px;height:18px}
.iz-card-in{padding:2px 18px 18px;animation:izIn .45s var(--ease) both}
@keyframes izIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.iz-card-img{margin:0 0 14px;border-radius:var(--r-sm);overflow:hidden;aspect-ratio:3/2;background:#eee;position:relative}
.iz-card-img img{width:100%;height:100%;object-fit:cover;animation:izKen 9s linear both}
@keyframes izKen{from{transform:scale(1.001)}to{transform:scale(1.1)}}
.iz-card-img figcaption,.iz-xs-img figcaption{position:absolute;right:6px;bottom:6px;max-width:calc(100% - 12px);padding:2px 7px;border-radius:3px;background:rgba(12,12,12,.62);font-family:var(--nav);font-size:9.5px;line-height:1.35;color:#fff;text-align:right}
.iz-card-img figcaption a,.iz-xs-img figcaption a{color:inherit;text-decoration:underline;text-decoration-color:rgba(255,255,255,.5);text-underline-offset:2px}
.iz-card-img figcaption a::after,.iz-xs-img figcaption a::after{content:none!important}
.iz-card-lead{font-family:var(--nav);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-d);margin:0 0 6px}
.iz-card-p{font-size:15px;line-height:1.6;color:#4a463f;margin:0}
.iz-card-tk{display:inline-block;justify-self:start;margin:12px 0 0;font-family:var(--nav);font-size:12px;font-weight:600;padding:5px 11px;border-radius:var(--r-pill);background:var(--cream);color:#3a362f;border:1px solid var(--line)}
.iz-card-tk.tk-free{background:#f1f6ee;border-color:#d5e3cc;color:#2f5a1e}
.iz-card-tk.tk-not_included{background:#fff8e8;border-color:#ecd9a6;color:#7a5a12}
.iz-tkbox{margin:14px 0 0;border:1px solid #ecd9a6;background:#fffaf0;border-radius:var(--r-sm);padding:14px 16px;font-size:13.5px;line-height:1.5;color:#4a463f}
.iz-tkbox p{margin:0 0 8px}
.iz-tkbox-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin-bottom:6px}
.iz-tkbox-h strong{font-family:var(--serif);font-size:19px;font-weight:600;color:var(--black)}
.iz-tkbox-h span{font-family:var(--nav);font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#7a5a12}
.iz-tkbox-pr{list-style:none;margin:2px 0 10px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.iz-tkbox-pr li{display:flex;align-items:baseline;gap:10px;background:#fff;border:1px solid #ecd9a6;border-radius:var(--r-sm);padding:7px 12px;font-family:var(--nav);font-size:12.5px;color:#6b6660}
.iz-tkbox-pr b{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--black);white-space:nowrap}
.iz-tkbox-n{font-size:12.5px;color:#6b6660}
.iz-tkbox-src{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 14px;margin:0!important;font-family:var(--nav);font-size:11.5px;color:#6b6660}
.iz-tkbox-src a{color:var(--gold-d);font-weight:600}
.iz-cost-list{list-style:none;margin:12px 0;padding:0;display:grid;gap:9px;max-width:340px}
.iz-cost-list li{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid rgba(255,255,255,.14);padding-bottom:9px;font-family:var(--nav);font-size:14px;letter-spacing:.03em;color:#fff}
.iz-cost-list b{color:#fff;font-weight:600;white-space:nowrap}
.iz-cost-list--multi{max-width:460px}
.iz-cost-list--multi a{color:#fff}
.iz-cost-list--multi small{display:block;margin-top:4px;font-size:13px;font-weight:500;line-height:1.45;letter-spacing:.03em;color:#f7f5f1}
.iz-cost-list--multi li.opt b{color:#f7f5f1;font-weight:500}
/* Wahlstation: eine Karte, zwei (oder mehr) Stationen — Umschalter oben, Rest des Tages folgt der Wahl */
.iz-choice-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:4px 18px 12px}
@media(max-width:700px){.iz-choice-head{margin:4px 14px 10px}.iz-seg{display:flex;width:100%}.iz-seg button{flex:1 1 auto;text-align:center;padding:7px 8px;font-size:12px}}
.iz-choice-head>span{font-family:var(--nav);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#7a5a12}
.iz-seg{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:999px;background:#f7f5f0}
.iz-seg button{all:unset;cursor:pointer;padding:7px 16px;border-radius:999px;font-family:var(--nav);font-size:13px;font-weight:600;color:#4a463f;transition:background .25s var(--ease),color .25s}
.iz-seg button[aria-selected="true"]{background:var(--black);color:#fff}
.iz-seg button:focus-visible{outline:2px solid #7a5a12;outline-offset:2px}
.iz-choice-pane{animation:izFade .35s var(--ease)}
@keyframes izFade{from{opacity:0}to{opacity:1}}
/* Weiche im Tagesplan: ab hier wählen die Gäste eine Route (nur die gewählte ist sichtbar) */
.iz-branch-box{margin:8px 0 12px 6px;padding:14px 16px;border:1px dashed #d8c48a;border-radius:var(--r-card);background:#fffaf0}
.iz-branch-k{display:block;margin-bottom:9px;font-family:var(--nav);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#7a5a12}
.iz-branch-d{margin:10px 0 0;font-size:13.5px;line-height:1.5;color:#4a463f}
.iz-tl-mark .iz-branch-dot{width:12px;height:12px;margin-top:30px;border-radius:2px;background:var(--gold);transform:rotate(45deg)}
.iz-alt-row{animation:izFade .35s var(--ease)}
.iz-tl-row[hidden],.iz-choice-pane[hidden]{display:none}
/* nicht gewählt: auf der Karte und in den Kosten zurückgenommen, bleibt aber klickbar */
.iz-svg .is-off{opacity:.22;transition:opacity .35s}
.iz-svg .iz-node.is-off{opacity:.55}
.iz-svg .iz-node.is-off .iz-pulse{animation:none}
.iz-cost-list li.is-off{opacity:.45}
.iz-cost-list li.is-off b{text-decoration:line-through;text-decoration-thickness:1px}
/* Auswahl in einer Karte (z. B. Restaurants): kurz, verlinkt */
.iz-opts{margin:14px 0 0;border-top:1px solid var(--line);padding-top:12px}
.iz-opts-h{margin:0 0 8px!important;font-family:var(--nav);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#7a5a12}
.iz-opts ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.iz-opts li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;align-items:baseline}
.iz-opts a{font-family:var(--serif);font-size:18px;color:var(--black)}
.iz-opts li>span{font-family:var(--nav);font-size:11px;font-weight:600;color:#7a5a12;white-space:nowrap}
.iz-opts li p{grid-column:1 / -1;margin:0!important;font-size:13.5px;line-height:1.5;color:#4a463f}
.iz-xs{margin:14px 0 0;border-top:1px solid var(--line);padding-top:12px}
.iz-xs ol{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.iz-xs li{display:grid;grid-template-columns:3.4em minmax(0,1fr);gap:0 10px;align-items:start}
.iz-xs-t{font-family:var(--nav);font-size:12.5px;font-weight:700;color:#7a5a12;padding-top:3px;font-variant-numeric:tabular-nums}
.iz-xs b{font-family:var(--serif);font-size:17px;font-weight:600;color:var(--black)}
.iz-xs li p{margin:2px 0 0!important;font-size:13.5px;line-height:1.5;color:#4a463f}
.iz-xs-img{position:relative;margin:8px 0 0;max-width:260px;border-radius:var(--r-sm);overflow:hidden;aspect-ratio:3/2;background:#eee}
.iz-xs-img img{width:100%;height:100%;object-fit:cover;display:block}
.iz-tip{margin:12px 0 0;padding:10px 12px;border-left:2px solid var(--gold);background:var(--cream);font-size:13px;line-height:1.5;color:#4a463f;border-radius:0}
.iz-tip b{font-family:var(--nav);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-d);display:block;margin-bottom:2px}
@media(max-width:560px){
  .iz-tl-row{grid-template-columns:32px minmax(0,1fr)}.iz-tl-row>:first-child{display:none}   /* phones: time moves into the card title */
  .iz-card-t{display:inline}.iz-card-head{grid-template-columns:auto minmax(0,1fr) auto auto}
  .iz-tl-time{font-size:13px}
  .iz-card-head{padding:13px 14px;gap:10px}
  .iz-card-head strong{font-size:20px}
  .iz-card-more{padding:5px 10px;font-size:10px;gap:6px}
  .iz-card-in{padding:2px 14px 16px}
}
.iz-adapt{margin:18px 0 0 98px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;padding:13px 16px;border-radius:var(--r-card);background:var(--cream);font-size:14px;color:#3a362f}
.iz-adapt a{font-family:var(--nav);font-weight:600;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-d);text-decoration:none;border-bottom:1px solid currentColor}
@media(max-width:560px){.iz-adapt{margin-left:0}}

/* ---------- Inklusive / Nicht inklusive ---------- */
.iz-inclwrap{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:18px;align-items:start}
.iz-incl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.iz-incl-img{grid-column:1/-1;margin:0;border-radius:var(--r-card);overflow:hidden;aspect-ratio:3/2;background:var(--cream)}.iz-incl-img img{display:block;width:100%;height:100%;object-fit:cover}
.iz-incl-col{border:1px solid var(--line);border-radius:var(--r-card);background:#fff;padding:20px 20px 18px}
.iz-incl-col h3{font-family:var(--nav);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-d);margin:0 0 12px}
.iz-incl-col ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:14.5px;color:#3a362f}
.iz-incl-col li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start;line-height:1.45}
.iz-incl-col li::before{content:"";width:18px;height:18px;margin-top:2px;background:no-repeat center/contain}
.iz-yes li::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a07d22' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")}
.iz-no li::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a857c' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M6 12h12'/%3E%3C/svg%3E")}
.iz-cost{border-radius:var(--r-card);background:var(--black);color:#fff;padding:22px 22px;display:flex;flex-direction:column;justify-content:space-between;gap:18px}
.iz-cost h3{font-family:var(--nav);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 6px}
.iz-cost p{margin:0;font-size:15px;line-height:1.65;letter-spacing:.02em;color:#fff}
.iz-cost small{display:block;margin-top:10px;font-family:var(--nav);font-size:13px;font-weight:500;line-height:1.55;letter-spacing:.03em;color:#f7f5f1}
.iz-cost small a{color:inherit}
.iz-cost-num{text-align:left;font-family:var(--serif);font-size:30px;font-weight:600;line-height:1;white-space:nowrap}
.iz-cost-num strong{display:block;font-weight:600}
.iz-cost-num span{display:block;font-family:var(--nav);font-size:13px;font-weight:600;color:#f7f5f1;margin-top:8px;letter-spacing:.06em}
.iz-cost-num .kids{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14);font-size:22px}
@media(max-width:980px){.iz-inclwrap{grid-template-columns:1fr}}
@media(max-width:700px){.iz-incl{grid-template-columns:1fr}}

/* ---------- Wetter & Plan B ---------- */
.iz-wxwrap>*{min-width:0}
.iz-wxwrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,3vw,44px);align-items:start}
@media(max-width:980px){.iz-wxwrap{grid-template-columns:minmax(0,1fr)}}
.iz-wx{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 16px;list-style:none;padding:0}
.iz-wx li{border:1px solid var(--line);border-radius:var(--r-sm);background:#fff;padding:12px 8px;text-align:center;font-family:var(--nav)}
.iz-wx .d{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#6b6660}
.iz-wx .i{display:block;width:30px;height:30px;margin:8px auto 6px;color:var(--gold-d)}
.iz-wx .t{font-family:var(--serif);font-size:19px;font-weight:600;color:var(--black)}
.iz-wx .t small{font-family:var(--nav);font-size:11.5px;color:#6b6660;font-weight:500}
.iz-wx .l{font-size:11px;color:#6b6660;margin-top:2px;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere}
.iz-wx li.is-good{border-color:#d5e3cc;background:#f7faf4}
.iz-wx-meta{font-family:var(--nav);font-size:11.5px;color:#6b6660;margin:-6px 0 20px}
.iz-planb{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.iz-planb>:only-child{grid-column:1/-1}
@media(min-width:981px){.iz-wxwrap .iz-planb{grid-template-columns:minmax(0,1fr);gap:10px}}  /* in the half-width column three cards side by side were ~145–185 px narrow */
.iz-planb a,.iz-planb>div{display:block;text-decoration:none;border:1px solid var(--line);border-radius:var(--r-card);padding:16px;background:#fff;transition:transform .3s var(--ease),border-color .3s}
.iz-planb a:hover{transform:translateY(-3px);border-color:var(--gold)}
.iz-planb b{display:block;font-family:var(--serif);font-size:20px;font-weight:600;color:var(--black);margin-bottom:4px;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere}
.iz-planb span{font-size:13.5px;line-height:1.45;color:#4a463f;overflow-wrap:break-word}
.iz-h3{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--black);margin:0 0 6px}
@media(max-width:700px){.iz-planb{grid-template-columns:minmax(0,1fr)}.iz-wx{grid-template-columns:repeat(5,minmax(62px,1fr));overflow-x:auto}}

/* ---------- Fahrzeug & Chauffeur ---------- */
.iz-veh{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px;max-width:820px}
#fahrzeug .iz-note{max-width:820px}
.iz-veh button{all:unset;box-sizing:border-box;cursor:pointer;display:block;border:1px solid var(--line);border-radius:var(--r-card);background:#fff;padding:18px 18px 16px;transition:border-color .3s,transform .3s var(--ease)}
.iz-veh button:hover{transform:translateY(-2px)}
.iz-veh button:focus-visible{outline:2px solid #7a5a12;outline-offset:2px}
.iz-veh button.on{border:2px solid var(--gold);padding:17px 17px 15px}
.iz-veh .k{font-family:var(--nav);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-d)}
.iz-veh .n{display:block;font-family:var(--serif);font-size:23px;font-weight:600;color:var(--black);margin:4px 0 2px}
.iz-veh .s{display:block;font-family:var(--nav);font-size:13px;color:#6b6660}
.iz-veh .p{display:block;margin-top:12px;font-family:var(--serif);font-size:21px;font-weight:600;color:var(--black)}
.iz-veh .p small{font-family:var(--nav);font-size:11.5px;font-weight:500;color:#6b6660}
@media(max-width:560px){.iz-veh{grid-template-columns:1fr}}

/* ---------- Buchungs-Sektion am Seitenende ---------- */
.iz-booksec{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(48px,6vw,84px) 0;scroll-margin-top:calc(var(--header-h,82px) + 40px)}
.iz-booksec-in{width:min(var(--wrap),calc(100% - 2*var(--gutter)));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:clamp(30px,5vw,80px);align-items:start}
.iz-booksec-txt p{font-size:16px;line-height:1.65;color:#4a463f;max-width:52ch;margin:0 0 20px}
.iz-booksec-list{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:11px;font-size:15px;color:#3a362f}
.iz-booksec-list li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:11px;align-items:start;line-height:1.45}
.iz-booksec-list li::before{content:"";width:18px;height:18px;margin-top:2px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a07d22' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")}
.iz-booksec-mail{font-family:var(--nav);font-size:13.5px!important;color:#6b6660!important}
.iz-booksec-mail a{color:var(--gold-d)}
.iz-booksec .rt-book{position:static;max-width:none}
@media(max-width:900px){.iz-booksec-in{grid-template-columns:1fr}}

/* Buchen-Leiste: bleibt sichtbar, solange die Buchungs-Sektion nicht im Bild ist — jetzt auch auf Desktop */
@media(min-width:821px){
  .reise-mbar.iz-bar{display:flex;left:50%;right:auto;bottom:18px;width:min(640px,calc(100% - 40px));margin-left:calc(min(640px,100% - 40px)/-2);border:1px solid var(--line);border-radius:var(--r-pill);padding:10px 12px 10px 26px;transform:translateY(160%)}
  .reise-mbar.iz-bar.is-shown{transform:translateY(0)}
  .reise-mbar.iz-bar>div{display:flex;align-items:baseline;gap:14px}
  .reise-mbar.iz-bar .reise-mbar-kick{margin:0;font-size:10.5px}
}

/* ---------- Buchungskarte (3 Schritte) ---------- */
.iz-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:14px 0 16px;padding:0;list-style:none;font-family:var(--nav);font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#a8a399}
.iz-steps li{padding-top:8px;border-top:2px solid var(--line)}
.iz-steps li.on{color:var(--black);border-color:var(--gold)}
.iz-steps li.done{color:var(--gold-d);border-color:var(--gold)}
.iz-pane{display:none}
.iz-pane.on{display:block}
.iz-price-sub{font-family:var(--nav);font-size:12px;color:#6b6660;margin:2px 0 0}
.iz-price-tk{font-family:var(--nav);font-size:12px;color:#7a5a12;margin:6px 0 0}
.iz-price-tk a{color:inherit}
.iz-sum-note{font-family:var(--nav);font-size:12px;line-height:1.5;color:#6b6660;margin:0 0 14px;padding:10px 12px;background:#fffaf0;border:1px solid #ecd9a6;border-radius:var(--r-sm)}
.iz-cost-link{color:var(--gold);font-family:var(--nav);font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.iz-avail{margin:12px 0 0;padding:9px 12px;border-radius:var(--r-sm);font-family:var(--nav);font-size:12.5px;line-height:1.45;background:#f1f6ee;color:#2f5a1e}
.iz-avail.req{background:#fff8e8;color:#7a5a12}
.iz-avail[hidden]{display:none}
.iz-err{font-family:var(--nav);font-size:12px;color:#a3342a;margin:6px 0 0}
.iz-err[hidden]{display:none}
.iz-field{margin-top:10px}
.iz-field label,.iz-check{font-family:var(--nav);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#6b6660;display:block;margin-bottom:5px}
.iz-field input,.iz-field textarea{width:100%;border:1px solid var(--line);border-radius:var(--r-sm);padding:11px 12px;font:inherit;font-size:14.5px;background:#fff;color:var(--black)}
.iz-field input:focus,.iz-field textarea:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
.iz-field input.bad{border-color:#a3342a}
.iz-check{display:flex;align-items:center;gap:9px;text-transform:none;letter-spacing:0;font-weight:500;font-size:13.5px;color:#3a362f;margin-top:12px;cursor:pointer}
.iz-check input{accent-color:var(--gold);width:16px;height:16px}
.iz-sum{list-style:none;margin:0 0 14px;padding:0;font-family:var(--nav);font-size:13px;color:#3a362f}
.iz-sum li{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid var(--line)}
.iz-sum li span:first-child{color:#6b6660}
.iz-sum li span:last-child{text-align:right;font-weight:600}
.iz-sum li.tot{border-bottom:0;padding-top:12px;font-family:var(--serif);font-size:21px;color:var(--black)}
.iz-sum li.tot span:first-child{font-family:var(--nav);font-size:13px;align-self:center}
.iz-pay{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0;list-style:none}
.iz-pay li{font-family:var(--nav);font-size:11px;font-weight:700;letter-spacing:.04em;border:1px solid var(--line);border-radius:var(--r-xs);padding:5px 9px;color:#3a362f;background:#fff}
.iz-back{all:unset;cursor:pointer;display:block;margin:10px auto 0;font-family:var(--nav);font-size:12px;color:#6b6660;border-bottom:1px solid currentColor}
.iz-next{width:100%;margin-top:14px;border:0;cursor:pointer}
.iz-done{text-align:center;padding:8px 0 4px}
.iz-done h3{font-family:var(--serif);font-size:24px;font-weight:600;color:var(--black);margin:0 0 8px}
.iz-done p{font-size:14px;color:#4a463f;line-height:1.55;margin:0 0 12px}

@media(prefers-reduced-motion:reduce){
  .iz-node.is-active .iz-pulse,.iz-card-img img,.iz-card-in,.iz-choice-pane,.iz-alt-row{animation:none}
  .iz-med,.iz-ph{transition:none}
  .iz-amb{display:none}
  .iz-cloud{animation:none}
}

/* Hero in zwei Spalten: links Titel, Wert, Preis und Knopf — rechts das Bild im normalen Format 3:2, ohne Rahmen um den Text */
.iz-hero,.offer-wrap.swv-bc-wrap{width:min(var(--wrap),calc(100% - 2*var(--gutter)))}   /* same edges as the sections below */
.iz-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,3.5vw,56px);align-items:center;padding:clamp(20px,3vw,44px) 0 clamp(28px,4vw,56px);margin-bottom:0}
.iz-hero .offer-head{margin:0;max-width:none}
.iz-hero .offer-h1{font-size:clamp(32px,3.3vw,50px)}
.iz-hero .offer-value{max-width:none;font-size:clamp(17px,1.4vw,20px);line-height:1.5}
.iz-hero-media .reise-gallery{padding:0}
.iz-hero-media .reise-gallery .offer-wrap{max-width:none;width:auto;padding:0;margin:0}
.iz-hero-media .reise-gallery-lead{aspect-ratio:3/2}
@media(max-width:980px){.iz-hero{grid-template-columns:1fr}}

/* Der Tag in Kürze: eine ruhige Zeile unter dem Hero — keine Kästen, nur feine Linien */
.iz-dayinfo-sec{margin-top:clamp(4px,1vw,12px)}
.iz-dayinfo{list-style:none;margin:0;padding:18px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.iz-dayinfo li{display:grid;grid-template-columns:22px minmax(0,1fr);column-gap:12px;align-content:start;padding:2px 18px;border-left:1px solid var(--line)}
.iz-dayinfo li:first-child{border-left:0;padding-left:0}
.iz-dayinfo li>*:not(svg){grid-column:2}
.iz-dayinfo svg{grid-row:1 / span 3;width:22px;height:22px;margin-top:1px;color:var(--gold)}
.iz-dayinfo .k{font-family:var(--nav);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#7a5a12}
.iz-dayinfo b{margin-top:3px;font-family:var(--serif);font-size:21px;font-weight:600;line-height:1.2;color:var(--black)}
.iz-dayinfo small{margin-top:2px;font-family:var(--nav);font-size:12px;line-height:1.4;color:#6b6660}
.iz-dayinfo small a{color:var(--gold-d);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.iz-season{margin:10px 0 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 20px;font-family:var(--nav);font-size:13px;line-height:1.45;color:#6b6660}
.iz-season b{margin-right:8px;font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#7a5a12}
.iz-season a{color:var(--gold-d);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.izb-season{display:block;margin-top:5px;font-family:var(--nav);font-size:12px;line-height:1.4;color:#6b6660}
@media(max-width:700px){
  .iz-dayinfo{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px;padding:16px 0}
  .iz-dayinfo li{border-left:0;padding:0}
  .iz-dayinfo b{font-size:19px}
}

@media(max-width:430px){.iz-card-more .m-o,.iz-card-more .m-c{display:none!important}.iz-card-more{padding:7px 9px}.iz-card-head strong{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere}}

/* Links, die die Website verlassen (Anbieter, Tickets, Webcams, Restaurants): immer Unterstrich + «↗».
   Im Tagesplan öffnen sie ein neues Fenster (target=_blank); Links im WordPress-Text markiert izlet.js mit .is-ext. */
:is(.iz-wrap,.iz-booksec) a:is([target="_blank"],.is-ext){text-decoration:underline;text-decoration-color:currentColor;text-decoration-thickness:1.5px;text-underline-offset:3px;border-bottom:0}
:is(.iz-wrap,.iz-booksec) a:is([target="_blank"],.is-ext)::after{content:"↗";content:"↗" / "";display:inline-block;margin-left:5px;font-family:var(--nav);font-weight:700;font-size:.85em;text-decoration:none;color:var(--gold-d)}
:is(.iz-wrap,.iz-booksec) a:is([target="_blank"],.is-ext):hover{color:var(--gold-d)}
.iz-opts a:is([target="_blank"],.is-ext){text-decoration-color:var(--gold-d);text-underline-offset:4px}
.iz-cost a:is([target="_blank"],.is-ext)::after{color:var(--gold)}
.iz-cost a:is([target="_blank"],.is-ext):hover{color:var(--gold)}
/* Plan-B-Karten sind ganze Kacheln: kein Unterstrich, der Pfeil steht beim Titel */
.iz-planb a:is([target="_blank"],.is-ext){text-decoration:none}
.iz-planb a:is([target="_blank"],.is-ext)::after{content:none}
.iz-planb a:is([target="_blank"],.is-ext) b::after{content:"↗";content:"↗" / "";margin-left:6px;font-family:var(--nav);font-size:.75em;font-weight:700;color:var(--gold-d)}

/* ---------- Fahrzeug & Buchung (Theme: inc/trip-booking.php) — eine Sektion: Wahl links, «Ihre Buchung» rechts ---------- */
.izb{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(48px,6vw,88px) 0;scroll-margin-top:calc(var(--header-h,82px) + 40px)}
.izb-in{width:min(var(--wrap),calc(100% - 2*var(--gutter)));margin-inline:auto}
.izb-head{max-width:62ch;margin:0 0 clamp(26px,3vw,40px)}
.izb-lead{font-family:var(--nav);font-size:15.5px;line-height:1.6;color:#4a463f;margin:4px 0 0}
.izb-form{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,4vw,60px);align-items:start}
.izb-form[hidden],.izb-done[hidden],.izb [hidden]{display:none!important}
.izb .cf-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden;opacity:0}
.izb-sr{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.izb-fs{border:0;margin:0 0 22px;padding:0;min-width:0}
.izb-fs:last-child{margin-bottom:0}
.izb-lg{display:flex;align-items:center;gap:10px;padding:0;margin:0 0 10px;font-family:var(--nav);font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--black)}
.izb-lg span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid var(--gold);color:var(--gold-d);font-size:11.5px;letter-spacing:0}
.izb em{font-style:normal;font-weight:500;letter-spacing:0;text-transform:none;color:#6b6660}
/* Fahrzeug-Karten (Radio) */
/* the vehicle follows from the guest count (V-Klasse up to 7, groups on request); the add-on card turns dark when chosen */
.izb-add{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;background:#fff;border:1px solid var(--line);border-radius:var(--r-card);padding:14px 18px 14px 54px;transition:background-color .25s,border-color .25s}
.izb-add.on{background:var(--black);border-color:var(--black)}
.izb-add:has(input:focus-visible){outline:2px solid #7a5a12;outline-offset:3px}
.izb-add .n{font-family:var(--serif);font-size:21px;font-weight:600;line-height:1.2;color:var(--black)}
.izb-add .p{font-family:var(--serif);font-size:21px;font-weight:600;color:var(--black);white-space:nowrap}
.izb-add.on .n,.izb-add.on .p{color:#fff}
.izb-box{position:absolute;left:18px;top:calc(50% - 11px);display:grid;place-items:center;width:22px;height:22px;border-radius:6px;border:1.5px solid #cfc8b8;background:#fff;color:var(--black)}
.izb-box svg{width:13px;height:13px;opacity:0;transform:scale(.6);transition:opacity .2s,transform .25s var(--ease)}
.izb-add.on .izb-box{background:var(--gold);border-color:var(--gold)}.izb-add.on .izb-box svg{opacity:1;transform:none}
.izb-vnote{margin:10px 0 0;font-family:var(--nav);font-size:13px;line-height:1.45;color:#6b6660}
.izb-vnote.is-grp{padding:9px 12px;border-radius:var(--r-sm);background:#fff8e8;color:#7a5a12}
.izb-chips.izb-chips--n li{border:0;background:none;font-weight:600;letter-spacing:0;color:#6b6660}
/* Felder */
.izb-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:12px}
.izb-f{margin-top:14px;min-width:0}
.izb-row .izb-f{margin-top:0}
.izb-f label{display:block;margin-bottom:6px;font-family:var(--nav);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#6b6660}
.izb-f input,.izb-f select,.izb-f textarea{box-sizing:border-box;width:100%;height:48px;margin:0;padding:0 13px;border:1px solid #ddd7ca;border-radius:var(--r-sm);background:#fff;color:var(--black);font-family:var(--nav);font-size:15px;line-height:1.3;transition:border-color .2s}
.izb-f textarea{height:48px;min-height:48px;padding:13px;resize:vertical}
.izb-f select{appearance:none;-webkit-appearance:none;padding-right:36px;background:#fff no-repeat right 13px center/12px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23a07d22' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E")}
.izb-f input::placeholder,.izb-f textarea::placeholder{color:#a8a399}
.izb-f input:focus,.izb-f select:focus,.izb-f textarea:focus{outline:2px solid #7a5a12;outline-offset:1px;border-color:var(--gold)}
.izb-f [aria-invalid=true]{border-color:#a3342a;background:#fffafa}
.izb-err{margin:6px 0 0;font-family:var(--nav);font-size:12.5px;line-height:1.4;color:#a3342a}
.izb-step{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;height:48px;border:1px solid #ddd7ca;border-radius:var(--r-sm);background:#fff;overflow:hidden}
.izb-step:focus-within{border-color:var(--gold)}.izb-step:has(input:focus){outline:2px solid #7a5a12;outline-offset:1px}
.izb-step button{all:unset;display:grid;place-items:center;cursor:pointer;font-family:var(--nav);font-size:20px;color:var(--gold-d)}
.izb-step button:hover{background:var(--cream)}
.izb-step button:focus-visible{outline:2px solid #7a5a12;outline-offset:-2px}
.izb-f .izb-step input{height:46px;border:0;border-radius:0;padding:0;text-align:center;font-weight:600;-moz-appearance:textfield}
.izb-f .izb-step input:focus{outline:0}
.izb-step input::-webkit-inner-spin-button,.izb-step input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
/* «Ihre Buchung» */
.izb-side{min-width:0}
.izb-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);padding:24px 24px 20px;box-shadow:0 30px 60px -46px rgba(20,16,8,.45)}
.izb-card-h{display:flex;align-items:center;justify-content:space-between;gap:12px}
.izb-card-h h3{margin:0;font-family:var(--serif);font-size:27px;font-weight:600;color:var(--black)}
.izb-badge{display:inline-block;padding:4px 10px;border-radius:var(--r-pill);background:#fff3d6;border:1px solid #ecd9a6;color:#7a5a12;font-family:var(--nav);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.izb-cancel{max-width:62ch;outline:0;margin:0 0 clamp(20px,2.5vw,30px);padding:10px 12px;border-radius:var(--r-sm);background:#fff8e8;border:1px solid #ecd9a6;color:#7a5a12;font-family:var(--nav);font-size:13px;line-height:1.45}
.izb-lines{list-style:none;margin:14px 0 0;padding:0;font-family:var(--nav);font-size:14px;color:#3a362f}
.izb-lines li{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}
.izb-lines b{font-weight:600;color:var(--black);white-space:nowrap}
.izb-lines .izb-meta{font-size:13px;color:#6b6660}
.izb-lines .izb-meta span{min-width:0}
.izb-lines .izb-meta span+span{white-space:nowrap}   /* only the guest count keeps one line; the programme line wraps (long languages) */
.izb-total{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:14px 0 2px}
.izb-total span{font-family:var(--nav);font-size:14px;font-weight:700;color:var(--black)}
.izb-total small{display:block;font-size:11.5px;font-weight:500;color:#6b6660}
.izb-total strong{font-family:var(--serif);font-size:34px;font-weight:600;line-height:1;color:var(--black);white-space:nowrap}
.izb-onsite{margin:12px 0 0;padding:8px 12px;border-radius:var(--r-sm);background:#fffaf0;border:1px solid #f0e3bf;font-family:var(--nav);font-size:12.5px;line-height:1.45;color:#7a5a12}
.izb-contact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px}
.izb-contact .izb-f:nth-child(-n+3){margin-top:0}
.izb-contact .izb-f:first-child{margin-top:0}
.izb-add .p,.izb-total strong{font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1}
.izb-contact .izb-f:last-child{grid-column:1/-1}
/* 3 columns: label · field · error as shared rows (subgrid), so a two-line label never pushes its field below the others */
@media(min-width:561px){@supports(grid-template-rows:subgrid){
  .izb-contact{grid-template-rows:auto auto auto}
  .izb-contact .izb-f:nth-child(-n+3){display:grid;grid-row:1/span 3;grid-template-rows:subgrid;align-content:start}
  .izb-contact .izb-f:nth-child(-n+3) label{align-self:end}
  .izb-contact .izb-f:nth-child(-n+3) .izb-err{grid-row:3}
}}
.izb-mode{margin:16px 0 0;padding:10px 12px;border-radius:var(--r-sm);background:#f1f6ee;color:#2f5a1e;font-family:var(--nav);font-size:13px;line-height:1.5}
.izb-mode.req{background:#fff8e8;color:#7a5a12}
.izb-mode:empty{display:none}
.izb-btns{display:grid;gap:10px;margin-top:14px}
.izb-btn{display:block;width:100%;border:1px solid transparent;cursor:pointer;font-family:inherit;white-space:normal;line-height:1.35}
.izb-btn.is-alt{background:transparent;border-color:var(--black);color:var(--black)}
.izb-btn.is-alt:hover{background:var(--black);color:#fff;box-shadow:none}
.izb-amt{white-space:nowrap}
.izb-btn[aria-busy=true]{opacity:.6;cursor:progress}
.izb-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:12px 0 0;padding:0;list-style:none}
.izb-chips li{padding:4px 9px;border:1px solid var(--line);border-radius:var(--r-xs);background:#fff;font-family:var(--nav);font-size:11px;font-weight:700;letter-spacing:.04em;color:#3a362f}
.izb-status{margin:12px 0 0;font-family:var(--nav);font-size:13px;line-height:1.45;color:#a3342a}
.izb-preview{margin-top:14px;padding:16px;border:1px dashed var(--gold);border-radius:var(--r-card);background:#fffdf6;outline:0;animation:izb-in .45s var(--ease)}
.izb-preview h4{margin:10px 0 4px;font-family:var(--serif);font-size:23px;font-weight:600;color:var(--black)}
.izb-preview p{margin:0;font-family:var(--nav);font-size:13px;line-height:1.5;color:#4a463f}
.izb-preview .izb-lines{margin-top:8px}
.izb-preview-ref{margin-top:10px!important;font-size:12px!important;color:#6b6660!important}
.izb-link{all:unset;cursor:pointer;margin-top:10px;display:inline-block;font-family:var(--nav);font-size:13px;font-weight:600;color:#7a5a12;border-bottom:1px solid currentColor}
.izb-link:focus-visible{outline:2px solid #7a5a12;outline-offset:3px}
.izb-trust{display:grid;justify-content:center;gap:3px;list-style:none;margin:16px 0 0;padding:0;font-family:var(--nav);font-size:12px;line-height:1.5;color:#6b6660}
.izb-trust li{display:flex;align-items:center;gap:6px;white-space:nowrap}
.izb-trust li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold)}
.izb-legal{margin:4px 0 0;font-family:var(--nav);font-size:12px;line-height:1.5;color:#6b6660;text-align:center}
.izb-legal a,.izb-done a{color:#7a5a12}
/* Bestätigung */
.izb-done{max-width:640px;margin:0 auto;padding:clamp(28px,4vw,48px);background:#fff;border:1px solid var(--line);border-radius:var(--r-card);text-align:center;outline:0;animation:izb-in .5s var(--ease)}
.izb-done-ico{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--gold);color:#fff}
.izb-done-ico svg{width:24px;height:24px}
.izb-done h3{margin:14px 0 8px;font-family:var(--serif);font-size:clamp(26px,3vw,34px);font-weight:600;color:var(--black)}
.izb-done p{margin:0 auto 8px;max-width:48ch;font-family:var(--nav);font-size:15px;line-height:1.6;color:#4a463f}
.izb-done .izb-done-ref{font-size:13px;color:#6b6660}
.izb-done .izb-done-mail{font-size:13.5px}
@keyframes izb-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:981px){.izb-side{position:sticky;top:calc(var(--header-h,82px) + 80px)}}   /* + sticky .reise-subnav */
@media(max-width:980px){.izb-form{grid-template-columns:minmax(0,1fr)}}
@media(max-width:820px){.izb-f input,.izb-f select,.izb-f textarea{font-size:16px}}
@media(max-width:560px){
  .izb-add{flex-wrap:wrap;gap:2px 16px;padding-left:50px}.izb-add .n{flex:1 1 100%;font-size:19px}.izb-add .p{font-size:18px}
  .izb-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .izb-f-date{grid-column:1/-1}
  .izb-card{padding:20px 16px 18px}
  .izb-contact{grid-template-columns:minmax(0,1fr)}
  .izb-contact .izb-f+.izb-f{margin-top:14px}
  .izb-total strong{font-size:30px}
  .izb-btn{padding-inline:18px}
  .izb-chips{gap:5px}.izb-chips li{padding:4px 6px;font-size:10px}
}
/* Kalender: Grund der Sperrtage im gezeigten Monat (izlet.js calWhy) */
.izb-cal.flatpickr-calendar{padding-top:0;padding-bottom:0}.izb-cal .flatpickr-months{padding-top:12px}.izb-cal .flatpickr-innerContainer{padding-bottom:10px}.izb-cal:has(.izb-calw:not([hidden])) .flatpickr-innerContainer{padding-bottom:6px}
/* flatpickr positions the calendar above the field by the SUM of its children (container padding/border and child margins are not counted) → vertical spacing lives inside the children */
.izb-calw{margin:0 4px;padding:8px 2px 10px;border-top:1px solid rgba(31,28,23,.1);font-size:12px;line-height:1.45;color:#5f594b;text-align:start;overflow-wrap:anywhere}.izb-calw p{margin:0}.izb-calw p+p{margin-top:3px}
@media(max-width:480px){.izb-cal .flatpickr-days,.izb-cal .dayContainer{width:100%;min-width:0;max-width:none}.izb-cal .flatpickr-day{max-width:none;flex-basis:14.2857%}}
@media(prefers-reduced-motion:reduce){.izb-add,.izb-box svg{transition:none}.izb-preview,.izb-done{animation:none}}

/* ---- Saison auf einer Seite (Schilthorn Sommer | Winter): beide Programme stehen im HTML, sichtbar nur html[data-izs] ---- */
html[data-izs="sommer"] [data-izs-p="winter"],html[data-izs="winter"] [data-izs-p="sommer"]{display:none!important}
.izs-wrap{padding-top:0}
.izs{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:0 0 clamp(16px,2vw,22px)}
.izs-k{margin:0;font-family:var(--nav);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#7a5a12}
.izs-seg{display:inline-flex;gap:3px;padding:4px;border:1px solid var(--line);border-radius:999px;background:#f7f5f0}
.izs-b{all:unset;box-sizing:border-box;cursor:pointer;display:inline-grid;grid-template-columns:20px auto;column-gap:10px;align-items:center;padding:8px 20px 8px 14px;border-radius:999px;font-family:var(--nav);color:#4a463f;transition:background .25s var(--ease),color .25s var(--ease)}
.izs-b svg{grid-row:1 / span 2;width:20px;height:20px;color:var(--gold-d);transition:color .25s var(--ease)}
.izs-b b{font-size:14px;font-weight:700;line-height:1.2}
.izs-b small{font-size:12px;line-height:1.3;color:#6b6660;transition:color .25s var(--ease)}
.izs-b:hover{background:#efebe3}
.izs-b:focus-visible{outline:2px solid #7a5a12;outline-offset:2px}
html[data-izs="sommer"] .izs-b[data-izs-b="sommer"],html[data-izs="winter"] .izs-b[data-izs-b="winter"]{background:var(--black);color:#fff}
html[data-izs="sommer"] .izs-b[data-izs-b="sommer"] small,html[data-izs="winter"] .izs-b[data-izs-b="winter"] small{color:rgba(255,255,255,.74)}
html[data-izs="sommer"] .izs-b[data-izs-b="sommer"] svg,html[data-izs="winter"] .izs-b[data-izs-b="winter"] svg{color:var(--gold)}
.izs-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.izs-p>.iz-wrap:first-of-type{padding-top:0}
.izs-hp{margin:2px 0 0;font-family:var(--nav);font-size:.8rem;font-weight:600;color:#6b6660}
.izs-hp a{color:var(--gold-d);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.izs-hp a:hover{color:var(--black)}
.izs-hp a:focus-visible{outline:2px solid #7a5a12;outline-offset:2px;border-radius:2px}
.izb-snote{margin:6px 0 0;padding:8px 11px;border-radius:var(--r-sm);background:#fff8e8;font-family:var(--nav);font-size:12.5px;line-height:1.45;color:#7a5a12}
@media(max-width:600px){
  .izs{gap:8px}
  .izs-seg{display:flex;width:100%}
  .izs-b{flex:1 1 0;grid-template-columns:18px minmax(0,1fr);column-gap:8px;padding:8px 10px 8px 12px}
  .izs-b svg{width:18px;height:18px}
  .izs-b b{font-size:13.5px}
  .izs-b small{font-size:11.5px}
}
/* contrast (QA 30.09.2026): small gold text ≥ 4.5:1 inside the trip module */
.iz-wrap,.izs-di,.izs-wrap,.izb,.iz-booksec{--gold-d:#86671a}
/* contrast (QA 05.10.2026, axe): 11 px gold eyebrows on cream 2.1–2.2:1 → dark gold 5.2:1; grey price note 3.4:1 → 5:1; legal links not only by colour */
.iz-hero .offer-eyebrow,.izb-head>.rt-eyebrow{color:#86671a}
.iz-hero .offer-price-incl,.dt-card-price .offer-price-incl{color:#6b6458}
.izb-legal a{text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.offer-trip .reise-gallery-cap{background:rgba(12,12,12,.86)}
/* Korean (i18n QA 01.10.2026): keep words whole and use lining figures where the site rule (h1–h4, p, li) does not reach */
html[lang^="ko"] .offer-faq-sec summary,html[lang^="ko"] .iz-dayinfo b,html[lang^="ko"] .iz-dayinfo small,html[lang^="ko"] .iz-cost small{word-break:keep-all;line-break:strict}
html[lang^="ko"] .offer-faq-sec summary,html[lang^="ko"] .iz-dayinfo b{font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1}
/* Hindi: tracking for small Latin capitals breaks the Devanagari headline (shirorekha) — never letter-spacing on Devanagari */
html[lang^="hi"] :is(.offer-trip .reise-gallery-cap,.iz-note b,.iz-fk,.iz-side-ey,.iz-lbl,.iz-chip text,.iz-card-more,.iz-card-lead,.iz-tkbox-h span,.iz-choice-head>span,.iz-branch-k,.iz-opts-h,.iz-tip b,.iz-adapt a,.iz-incl-col h3,.iz-cost h3,.iz-cost-num span,.iz-cost small,.iz-wx .d,.iz-veh .k,.iz-steps,.iz-cost-link,.iz-field label,.iz-check,.iz-dayinfo .k,.iz-season b,.izb-lg,.izb-f label,.izb-badge,.izb-btn,.izs-k,.izs-b,.iz-nlbl){letter-spacing:0}
/* Forecast day label (i18n QA 05.10.2026): RU «СЕГОДНЯ» ran ~6 px past the card at 390 px — less tracking on phones */
@media(max-width:420px){.iz-wx li{padding-left:4px;padding-right:4px}.iz-wx .d{font-size:10.5px;letter-spacing:.02em}}
/* Chinese timeline titles (i18n QA 05.10.2026): 7–8 character names wrapped with one lone character at 390 px */
@media(max-width:430px){html[lang^="zh"] .iz-card-head strong{font-size:17px;text-wrap:balance}}
/* QA Jungfraujoch i18n (06.10.2026) */
/* message field on phones: the placeholder needs two lines (DE 399 px, IT 497 px in a 322 px field) — one row cut the second line in half */
@media(max-width:700px){.izb-f textarea{height:72px;min-height:72px}}
/* Korean Plan B cards: keep words whole (the site rule reaches p/li, not these spans) */
html[lang^="ko"] .iz-planb :is(span,b){word-break:keep-all;line-break:strict}
/* map lake/peak names: Cormorant has no italic for CJK/Arabic — no slanted fake italic */
:is(html[lang^="zh"],html[lang^="ar"],html[lang^="ko"],html[lang^="ja"]) .iz-lbl{font-style:normal}
/* a stop that keeps its name while open (data-keep, e.g. Jungfraujoch next to the «Jungfrau» peak label): moved clear of the enlarged ring */
.iz-node[data-keep].is-active .iz-nlbl{opacity:1}
.iz-node[data-keep] .iz-nlbl{transition:opacity .3s,transform .45s var(--ease)}
/*rtl:begin:ignore*/
.iz-node[data-keep="left"].is-active .iz-nlbl{transform:translateX(-26px)}
.iz-node[data-keep="right"].is-active .iz-nlbl{transform:translateX(26px)}
/*rtl:end:ignore*/
/* «CHF 281.20» never split between currency and amount (booking card, cost box; also after izlet.js updates) */
:is([data-iz-cost],[data-iz-cost-child],[data-izb="onsite"]){white-space:nowrap}
