/* ============================================================
   tauchbasis.de 2026 — Design „Karte zuerst" (Map-First)
   Child-Theme von dot-info_master. Tiefblau / Türkis / Koralle.
   Echte Leaflet+OSM-Karte (#tb-map) statt Platzhalter.
   ============================================================ */

:root{
  --abyss:#0a1f33; --deep:#0e2f4d; --sea:#14507a;
  --teal:#16b8c4; --teal-bright:#38e0d4;
  --coral:#ff7a59; --coral-dark:#e85f3e;
  --sand:#f3ede2; --ink:#0c1a26; --muted:#5a6b78; --line:#dce5ec;
  --glass:rgba(8,26,44,.62); --glass-light:rgba(255,255,255,.94);
  --radius:16px; --radius-sm:10px;
  --shadow:0 18px 48px rgba(6,22,38,.28); --shadow-soft:0 8px 24px rgba(6,22,38,.16);
  --font:"Source Sans 3","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --display:"Montserrat","Segoe UI",system-ui,sans-serif;
}

/* Parent (dot-info_master) setzt html{font-size:62.5%} -> rem würde ~38% zu klein.
   Wir setzen die Basis zurück, damit unser rem-basiertes Design korrekt skaliert. */
html{font-size:100%!important;scroll-behavior:smooth}
body.tauchbasis2026{
  font-family:var(--font);color:var(--ink);background:var(--abyss);
  line-height:1.55;-webkit-font-smoothing:antialiased;margin:0;
}
/* Parent-Bootstrap-Reste neutralisieren */
body.tauchbasis2026 .container{width:auto;max-width:none;margin:0;padding:0}
body.tauchbasis2026 #ad_leaderboard,
body.tauchbasis2026 #wrap > header,
body.tauchbasis2026 #navigation{display:none}
.tauchbasis2026 *{box-sizing:border-box}
.tauchbasis2026 a{color:inherit;text-decoration:none}
.tauchbasis2026 img{max-width:100%;height:auto}
.tb-icon{width:1.25em;height:1.25em;display:inline-block;vertical-align:-.18em;fill:currentColor;flex:none}

/* ===================== HEADER (schwebend über Karte) ===================== */
.tb-header{
  position:sticky;top:0;left:0;right:0;z-index:1000;
  display:flex;align-items:center;gap:24px;padding:18px clamp(16px,4vw,40px);
  transition:background .25s ease, box-shadow .25s ease;
}
/* Startseite: über der Vollbild-Karte schwebend (fixed), bleibt beim Scrollen oben. */
body.home .tb-header{position:fixed}
/* Scrim: dunkler Verlauf hinter dem schwebenden Header, damit die helle Navigation
   über der Karte (auch über hellen Kartenstellen) immer klar lesbar bleibt. */
.tb-header::before{content:"";position:absolute;left:0;right:0;top:0;height:230%;
  pointer-events:none;z-index:-1;
  background:linear-gradient(180deg,rgba(5,18,33,.92) 0%,rgba(5,18,33,.6) 45%,rgba(5,18,33,0) 100%)}
.tb-header.tb-solid{background:#0a1f33;box-shadow:0 4px 18px rgba(5,18,33,.35)}
.tb-header.tb-solid::before{display:none}
.tb-brand{display:flex;align-items:center;gap:10px;font-family:var(--display);
  font-weight:800;font-size:1.35rem;letter-spacing:-.5px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.45)}
.tb-brand .logo-mark{width:38px;height:38px;border-radius:11px;flex:none;
  background:linear-gradient(150deg,#16b8c4,#14507a);display:grid;place-items:center;color:#fff;
  box-shadow:0 6px 18px rgba(22,184,196,.45)}
.tb-brand .logo-mark .tb-icon{width:23px;height:23px}
.tb-brand b{color:#38e0d4}

.tb-nav{display:flex;gap:6px;margin-left:auto;align-items:center}
.tb-nav > a, .tb-nav .tb-has > a{color:#eaf4fb;font-size:.95rem;font-weight:600;
  padding:9px 13px;border-radius:9px;transition:background .15s,color .15s;
  text-shadow:0 1px 6px rgba(0,0,0,.4);display:inline-flex;align-items:center;gap:4px}
.tb-nav > a:hover, .tb-has:hover > a{background:rgba(255,255,255,.14)}
.tb-nav .caret{width:14px;height:14px;opacity:.7}
.tb-has{position:relative}
.tb-drop{position:absolute;top:100%;left:0;min-width:230px;background:#fff;color:var(--ink);
  border-radius:12px;box-shadow:var(--shadow);padding:8px;display:none;z-index:1100}
.tb-has:hover .tb-drop,.tb-has:focus-within .tb-drop{display:block}
.tb-drop a{display:block;padding:8px 12px;border-radius:8px;font-size:.92rem;color:var(--ink);font-weight:600}
.tb-drop a:hover{background:#eef5f9;color:var(--sea)}

.tb-btn{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.95rem;
  padding:11px 18px;border-radius:11px;border:none;cursor:pointer;
  transition:transform .12s,box-shadow .15s,background .15s;white-space:nowrap;font-family:var(--font)}
.tb-btn-cta{background:linear-gradient(135deg,var(--coral),var(--coral-dark));color:#fff;
  box-shadow:0 8px 20px rgba(255,122,89,.42)}
.tb-btn-cta:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(255,122,89,.55);color:#fff}
.tb-btn-teal{background:var(--teal);color:#04222a;box-shadow:0 6px 16px rgba(22,184,196,.4)}
.tb-btn-teal:hover{transform:translateY(-2px);background:var(--teal-bright);color:#04222a}
.tb-btn-ghost{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.25)}
.tb-btn-ghost:hover{background:rgba(255,255,255,.22);color:#fff}

.tb-burger{display:none;margin-left:auto;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);
  color:#fff;width:46px;height:46px;border-radius:11px;font-size:1.4rem;cursor:pointer}

/* ===================== MAP HERO ===================== */
.tb-map-hero{position:relative;height:100vh;min-height:640px;overflow:hidden;background:var(--abyss)}
#tb-map{position:absolute;inset:0;z-index:1;background:#0a2742}
/* Leaflet-Overrides für dunkles, edles Erscheinungsbild */
.tb-map-hero .leaflet-container{background:#0a2742;font-family:var(--font)}
/* Dezenter Tiefsee-Tint auf die OSM-Tiles (rein clientseitig, Karte bleibt lesbar) */
.tb-map-hero .leaflet-tile{filter:saturate(.82) brightness(.94) contrast(1.03)}
.tb-map-hero .leaflet-control-zoom{display:none}      /* eigene Controls */
.tb-map-hero .leaflet-control-attribution{
  background:rgba(8,26,44,.6);color:#cfe2ee;font-size:.7rem;backdrop-filter:blur(4px)}
.tb-map-hero .leaflet-control-attribution a{color:#bfe6ea}

/* eigener Pin (Leaflet DivIcon) */
.tb-pin{transform:translate(-50%,-100%)}
.tb-pin .dot{width:30px;height:30px;border-radius:50% 50% 50% 2px;
  background:linear-gradient(150deg,var(--coral),var(--coral-dark));transform:rotate(45deg);
  box-shadow:0 6px 14px rgba(0,0,0,.45);display:grid;place-items:center;border:2px solid rgba(255,255,255,.85)}
.tb-pin .dot svg{transform:rotate(-45deg);width:14px;height:14px;fill:#fff}
.tb-pin.is-premium .dot{background:linear-gradient(150deg,var(--teal-bright),var(--teal))}
/* Popup */
.tb-map-hero .leaflet-popup-content-wrapper{border-radius:12px;box-shadow:var(--shadow)}
.tb-map-hero .leaflet-popup-content{margin:12px 14px;font-family:var(--font)}
.tb-pop-name{font-family:var(--display);font-weight:800;font-size:1rem;color:var(--ink)}
.tb-pop-region{font-size:.84rem;color:var(--muted);margin:3px 0 8px}
.tb-pop-link{font-size:.84rem;font-weight:700;color:var(--sea)}

/* Cluster-Bubbles (markenfarben, ersetzen das markercluster-Default) */
.tb-cluster-wrap{background:transparent!important}
.tb-cluster{display:grid;place-items:center;color:#04222a;font-weight:800;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,var(--teal-bright),var(--teal));
  border:3px solid rgba(255,255,255,.85);box-shadow:0 8px 20px rgba(0,0,0,.35)}
.tb-cluster.c-sm{width:40px;height:40px;font-size:.85rem}
.tb-cluster.c-md{width:50px;height:50px;font-size:.95rem}
.tb-cluster.c-lg{width:64px;height:64px;font-size:1.15rem}
.leaflet-cluster-anim .leaflet-marker-icon{transition:transform .2s ease-out}

/* eigene Karten-Steuerung */
.tb-map-controls{position:absolute;right:clamp(16px,4vw,40px);bottom:118px;z-index:600;
  display:flex;flex-direction:column;gap:8px}
.tb-map-controls button{width:44px;height:44px;border-radius:11px;border:1px solid rgba(255,255,255,.18);
  background:var(--glass);backdrop-filter:blur(8px);color:#fff;cursor:pointer;display:grid;place-items:center;
  box-shadow:var(--shadow-soft)}
.tb-map-controls button:hover{background:rgba(22,184,196,.55)}
.tb-map-controls .tb-icon{width:20px;height:20px}

/* ===================== Hero-Overlay-Layout ===================== */
.tb-hero-overlay{position:absolute;inset:0;z-index:500;display:grid;
  grid-template-columns:minmax(340px,420px) 1fr minmax(320px,380px);
  align-items:start;padding:96px clamp(16px,4vw,40px) 40px;gap:22px;pointer-events:none}
.tb-hero-overlay > *{pointer-events:auto}

.tb-search-panel{background:var(--glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);box-shadow:var(--shadow);
  color:#eaf4fb;padding:20px;max-height:calc(100vh - 140px);overflow:auto}
.tb-search-panel h1{font-family:var(--display);font-size:1.5rem;line-height:1.25;font-weight:800;color:#fff;
  letter-spacing:-.4px;margin:0 0 6px}
.tb-search-panel .tb-lede{font-size:.92rem;color:#bcd4e4;margin:0 0 16px}
.tb-field{position:relative;margin-bottom:16px}
.tb-field .tb-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:19px;height:19px;color:var(--muted)}
.tb-field input{width:100%;padding:14px 14px 14px 42px;border-radius:12px;border:none;font-size:1rem;
  font-family:inherit;background:#fff;color:var(--ink);box-shadow:inset 0 0 0 2px transparent}
.tb-field input:focus{outline:none;box-shadow:inset 0 0 0 2px var(--teal)}
.tb-facet{margin-bottom:14px}
.tb-facet-label{display:flex;align-items:center;gap:7px;font-size:.74rem;text-transform:uppercase;
  letter-spacing:.09em;color:#8fb4cc;font-weight:700;margin-bottom:8px}
.tb-facet-label .tb-icon{width:15px;height:15px;color:var(--teal)}
.tb-chips{display:flex;flex-wrap:wrap;gap:7px}
.tb-chip{font-size:.83rem;font-weight:600;padding:6px 12px;border-radius:999px;cursor:pointer;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#dceaf4;transition:all .14s;
  display:inline-flex;align-items:center;gap:5px}
.tb-chip:hover{background:rgba(255,255,255,.16)}
.tb-chip.on{background:var(--teal);border-color:var(--teal);color:#04222a;box-shadow:0 4px 12px rgba(22,184,196,.4)}
.tb-panel-actions{display:flex;gap:10px;margin-top:18px}
.tb-panel-actions .tb-btn{flex:1;justify-content:center}
.tb-result-count{margin-top:14px;font-size:.82rem;color:#9fc0d6;text-align:center}
.tb-result-count b{color:var(--teal-bright)}

.tb-hero-center{align-self:end;justify-self:center;display:flex;flex-direction:column;align-items:center;gap:6px}
.tb-scroll-hint{color:#cfe2ee;font-size:.8rem;font-weight:600;letter-spacing:.04em;background:var(--glass);
  backdrop-filter:blur(8px);padding:8px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.16);
  display:inline-flex;align-items:center;gap:8px;animation:tb-bob 2.4s ease-in-out infinite}
@keyframes tb-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

/* Ergebnis-Liste (rechts) */
.tb-results{background:var(--glass-light);border-radius:var(--radius);box-shadow:var(--shadow);
  max-height:calc(100vh - 140px);display:flex;flex-direction:column;overflow:hidden}
.tb-results-head{padding:14px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;
  justify-content:space-between;gap:8px;background:#fff}
.tb-results-head h2{font-family:var(--display);font-size:1rem;font-weight:800;color:var(--ink);margin:0}
.tb-results-head .tb-sort{font-size:.8rem;color:var(--sea);font-weight:700;display:inline-flex;align-items:center;gap:5px;cursor:pointer}
.tb-results-head .tb-sort .tb-icon{width:15px;height:15px}
.tb-results-list{overflow:auto;padding:10px}
.tb-entry{display:flex;gap:12px;padding:12px;border-radius:var(--radius-sm);transition:background .14s,box-shadow .14s;
  cursor:pointer;border:1px solid transparent}
.tb-entry + .tb-entry{margin-top:6px}
.tb-entry:hover{background:#f4f9fc;border-color:var(--line);box-shadow:var(--shadow-soft)}
.tb-entry .thumb{width:74px;height:74px;border-radius:11px;flex:none;overflow:hidden;
  background:linear-gradient(150deg,var(--sea),var(--abyss));display:grid;place-items:center;
  color:rgba(255,255,255,.55);position:relative}
.tb-entry .thumb .tb-icon{width:30px;height:30px}
.tb-entry .thumb .pidx{position:absolute;top:5px;left:5px;width:20px;height:20px;border-radius:6px;
  background:var(--coral);color:#fff;font-size:.72rem;font-weight:800;display:grid;place-items:center}
.tb-entry .body{min-width:0;flex:1}
.tb-entry .name{font-family:var(--display);font-size:.98rem;font-weight:800;color:var(--ink);display:flex;align-items:center;gap:6px}
.tb-badge-premium{font-size:.62rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
  background:linear-gradient(135deg,var(--coral),var(--coral-dark));color:#fff;padding:2px 7px;border-radius:6px}
.tb-entry .region{font-size:.82rem;color:var(--muted);display:flex;align-items:center;gap:5px;margin:2px 0 7px}
.tb-entry .region .tb-icon{width:13px;height:13px;color:var(--sea)}
.tb-chips-mini{display:flex;flex-wrap:wrap;gap:5px}
.tb-chip-mini{font-size:.72rem;font-weight:600;color:var(--sea);background:rgba(20,80,122,.09);padding:3px 8px;border-radius:999px}
.tb-chip-mini.org{background:rgba(22,184,196,.14);color:#0c6470}
.tb-results-foot{padding:11px 16px;border-top:1px solid var(--line);background:#fff;text-align:center}
.tb-results-foot a{font-size:.86rem;font-weight:700;color:var(--sea);display:inline-flex;align-items:center;gap:6px;justify-content:center}
.tb-results-foot a .tb-icon{width:15px;height:15px}

/* ===================== SCROLL-SEKTIONEN ===================== */
.tb-below{background:var(--sand);color:var(--ink);position:relative;z-index:1}
.tb-section{max-width:1180px;margin:0 auto;padding:clamp(48px,7vw,84px) clamp(16px,4vw,40px)}
.tb-section-head{text-align:center;max-width:720px;margin:0 auto 40px}
.tb-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.1em;color:var(--teal);background:rgba(22,184,196,.12);padding:6px 14px;border-radius:999px;margin-bottom:14px}
.tb-eyebrow .tb-icon{width:15px;height:15px}
.tb-section-head h2{font-family:var(--display);font-size:clamp(1.7rem,3.4vw,2.3rem);font-weight:800;letter-spacing:-.5px;color:var(--abyss);margin:0}
.tb-section-head p{color:var(--muted);margin-top:10px;font-size:1.02rem}

.tb-dest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tb-dest{position:relative;border-radius:var(--radius);overflow:hidden;min-height:208px;display:flex;flex-direction:column;
  justify-content:flex-end;padding:18px;color:#fff;box-shadow:var(--shadow-soft);transition:transform .18s,box-shadow .18s}
.tb-dest:hover{transform:translateY(-4px);box-shadow:var(--shadow);color:#fff}
.tb-dest::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,22,38,0) 30%,rgba(6,22,38,.82) 100%);z-index:1}
.tb-dest > *{position:relative;z-index:2}
.tb-dest .d-tag{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--teal-bright);margin-bottom:4px}
.tb-dest h3{font-family:var(--display);font-size:1.3rem;font-weight:800;margin:0}
.tb-dest .d-meta{font-size:.86rem;color:#d6e6f0;display:flex;align-items:center;gap:6px;margin-top:5px}
.tb-dest .d-meta .tb-icon{width:15px;height:15px}
.tb-dest .arrow{position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:10px;
  background:rgba(255,255,255,.18);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:2}
.tb-dest .arrow .tb-icon{width:18px;height:18px}
.d-red{background:linear-gradient(150deg,#2c5f86,#0b2d49)}
.d-mal{background:linear-gradient(150deg,#0f7c8c,#06303a)}
.d-tha{background:linear-gradient(150deg,#1d6e7a,#0a2f3a)}
.d-ind{background:linear-gradient(150deg,#27607e,#0c2a40)}
.d-cro{background:linear-gradient(150deg,#225f8a,#0a2740)}
.d-ger{background:linear-gradient(150deg,#33586f,#13313f)}

.tb-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
.tb-guide{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft);
  transition:transform .18s,box-shadow .18s;display:flex;flex-direction:column}
.tb-guide:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.tb-guide .g-top{height:118px;display:grid;place-items:center;color:#fff}
.g-1{background:linear-gradient(135deg,var(--teal),var(--sea))}
.g-2{background:linear-gradient(135deg,var(--sea),var(--abyss))}
.g-3{background:linear-gradient(135deg,var(--coral),var(--coral-dark))}
.tb-guide .g-top .tb-icon{width:44px;height:44px}
.tb-guide .g-body{padding:18px 20px 22px}
.tb-guide .g-tag{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--teal);margin-bottom:7px}
.tb-guide h3{font-family:var(--display);font-size:1.18rem;font-weight:800;color:var(--abyss);line-height:1.3;margin:0}
.tb-guide p{color:var(--muted);font-size:.93rem;margin:9px 0 14px}
.tb-guide .g-link{font-weight:700;color:var(--sea);font-size:.92rem;display:inline-flex;align-items:center;gap:6px}
.tb-guide .g-link .tb-icon{width:15px;height:15px;transition:transform .15s}
.tb-guide:hover .g-link .tb-icon{transform:translateX(3px)}

.tb-trust{background:var(--abyss);color:#cfe2ee}
.tb-trust-inner{max-width:1180px;margin:0 auto;padding:46px clamp(16px,4vw,40px);
  display:grid;grid-template-columns:repeat(4,1fr);gap:22px;text-align:center}
.tb-trust .t-item .tb-icon{width:30px;height:30px;color:var(--teal-bright);margin-bottom:10px}
.tb-trust .t-item .num{font-family:var(--display);font-size:1.7rem;font-weight:800;color:#fff;line-height:1}
.tb-trust .t-item .lbl{font-size:.88rem;color:#9fc0d6;margin-top:6px}

/* ===================== FOOTER ===================== */
.tb-footer{background:#061626;color:#9fc0d6;padding:54px clamp(16px,4vw,40px) 0}
.tb-footer-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px;padding-bottom:38px}
.tb-footer-brand .tb-brand{font-size:1.2rem;margin-bottom:12px}
.tb-footer-brand p{font-size:.92rem;max-width:34ch;color:#86a6bd}
.tb-footer-col h4{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.09em;margin-bottom:14px}
.tb-footer-col a{display:block;font-size:.92rem;padding:5px 0;color:#9fc0d6;transition:color .14s}
.tb-footer-col a:hover{color:var(--teal-bright)}
.tb-footer-bottom{max-width:1180px;margin:0 auto;border-top:1px solid rgba(255,255,255,.1);
  padding:20px 0 30px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;font-size:.84rem;color:#7793a8}
.tb-attribution{display:inline-flex;align-items:center;gap:8px;background:rgba(22,184,196,.1);
  border:1px solid rgba(22,184,196,.25);color:#bfe6ea;padding:8px 14px;border-radius:10px;font-size:.84rem}
.tb-attribution .tb-icon{width:16px;height:16px;color:var(--teal-bright)}
.tb-attribution a{text-decoration:underline;color:#dff5f6}
.tb-footer-bottom .legal a{margin-left:16px;color:#7793a8}
.tb-footer-bottom .legal a:hover{color:#bfe6ea}

/* ===================== INHALTS-SEITEN (page/single/archive) ===================== */
.tb-page{background:var(--sand);color:var(--ink);min-height:60vh}
.tb-page-hero{background:linear-gradient(135deg,var(--abyss),var(--deep) 60%,var(--sea));color:#fff;
  padding:64px clamp(16px,4vw,40px) 48px}
.tb-page-hero .in{max-width:860px;margin:0 auto}
.tb-breadcrumb{font-size:.82rem;color:#9fc0d6;margin-bottom:12px}
.tb-breadcrumb a{color:#bfe6ea}
.tb-page-hero h1{font-family:var(--display);font-size:clamp(1.8rem,4vw,2.6rem);font-weight:800;letter-spacing:-.5px;margin:0}
.tb-content{max-width:860px;margin:0 auto;padding:clamp(36px,6vw,64px) clamp(16px,4vw,40px)}
.tb-content h2{font-family:var(--display);font-size:1.6rem;color:var(--abyss);margin:1.8em 0 .5em}
.tb-content h3{font-family:var(--display);font-size:1.25rem;color:var(--sea);margin:1.4em 0 .4em}
.tb-content p{font-size:1.05rem;line-height:1.7;margin:0 0 1.1em}
.tb-content a{color:var(--sea);text-decoration:underline;text-underline-offset:2px}
.tb-content a:hover{color:var(--teal)}
.tb-content ul,.tb-content ol{font-size:1.05rem;line-height:1.7;margin:0 0 1.1em;padding-left:1.4em}
.tb-content img{border-radius:var(--radius);box-shadow:var(--shadow-soft);margin:1em 0}
.tb-content table{width:100%;border-collapse:collapse;margin:1.2em 0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-soft)}
.tb-content th,.tb-content td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--line);font-size:.98rem}
.tb-content th{background:var(--abyss);color:#fff;font-weight:700}

/* ===================== RESPONSIVE ===================== */
@media (max-width:1100px){
  .tb-hero-overlay{grid-template-columns:minmax(300px,1fr) minmax(300px,1fr);
    grid-template-areas:"search results";align-items:start}
  .tb-search-panel{grid-area:search}
  .tb-results{grid-area:results}
  .tb-hero-center{display:none}
  .tb-dest-grid{grid-template-columns:repeat(2,1fr)}
  .tb-guide-grid{grid-template-columns:1fr;max-width:520px;margin-left:auto;margin-right:auto}
  .tb-trust-inner{grid-template-columns:repeat(2,1fr)}
  .tb-footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .tb-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;
    background:var(--abyss);padding:12px;gap:4px;margin-top:6px}
  .tb-nav.open{display:flex}
  .tb-nav .tb-drop{position:static;display:block;box-shadow:none;background:transparent;padding:0 0 0 14px}
  .tb-nav .tb-drop a{color:#cfe2ee}
  .tb-burger{display:block}
  .tb-header{flex-wrap:wrap}
  .tb-map-hero{height:auto;min-height:0}
  #tb-map{position:absolute;height:62vh;min-height:380px}
  .tb-map-controls{display:none}
  .tb-hero-overlay{position:relative;inset:auto;display:block;padding:80px 16px 32px}
  .tb-search-panel{max-height:none;margin-bottom:18px}
  .tb-results{max-height:none;margin-top:calc(62vh - 360px + 16px)}
}
@media (max-width:560px){
  .tb-results{margin-top:20px}
  #tb-map{height:46vh;min-height:300px}
  .tb-hero-overlay{padding-top:78px}
  .tb-dest-grid{grid-template-columns:1fr}
  .tb-trust-inner{grid-template-columns:1fr 1fr;gap:28px 16px}
  .tb-footer-grid{grid-template-columns:1fr}
  .tb-footer-bottom{flex-direction:column;align-items:flex-start}
}

/* Responsive Content-Tabellen: horizontal scrollbar statt gequetscht (Mobile) */
.tb-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.2em 0;border-radius:12px;box-shadow:var(--shadow-soft)}
.tb-table-wrap>table{margin:0;box-shadow:none;border-radius:0}
@media (max-width:640px){.tb-table-wrap>table{min-width:560px}}

/* Dunkle-Sektion-Linkfarben: diese Link-Elemente verlieren sonst gegen
   `.tauchbasis2026 a{color:inherit}` (Spez. 0,1,1) -> hier per Spezifitaet im Stylesheet
   geloest. Ersetzt die fruehere kritische Inline-!important-Sicherung im <head> (2026-06-23). */
.tb-header .tb-brand{color:#fff}
.tb-header .tb-btn-cta, a.tb-btn-cta{color:#fff}
.tb-dest-grid .tb-dest, .tb-dest-grid .tb-dest h3{color:#fff}
