/* liparische-inseln.com — «Fahrplan-Magazin»: Majolika, Terrakotta, Zitrone, Tyrrhenisches Blau, Basalt.
   Regel: keine border-left/border-top (auch nicht logisch); nur vollständige, gerundete Rahmen, Flächen, Schatten. */
@font-face{font-family:"Young Serif";src:url(/fonts/young-serif-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Schibsted Grotesk";src:url(/fonts/schibsted-grotesk-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Schibsted Grotesk";src:url(/fonts/schibsted-grotesk-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Schibsted Grotesk";src:url(/fonts/schibsted-grotesk-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Schibsted Grotesk";src:url(/fonts/schibsted-grotesk-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"DM Mono";src:url(/fonts/dm-mono-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}

:root{
  --basalto:#1D1B1A; --pomice:#F7F2E8; --ceramica:#FFFDF8; --tirreno:#0F3B5F; --tirreno-medio:#1F5F8B;
  --terracotta:#B4492D; --terracotta-oscuro:#8F3520; --limone:#F3C93B; --cappero:#5E6B2E; --sabbia:#E9DFCB;
  --mare-chiaro:#D8E6EE; --linie:#D9CDB4; --zolfo:#E7C33A; --grau:#5A5550;
  --ampel-gruen:#3E8E41; --ampel-orange:#E07B24; --ampel-rot:#C0392B;
  --serif:"Young Serif",Georgia,"Times New Roman",serif;
  --sans:"Schibsted Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"DM Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;
  --r:18px; --r-s:10px; --max:1180px; --text:44rem;
  --schatten:0 1px 0 rgba(29,27,26,.05),0 10px 30px -12px rgba(15,59,95,.28);
  --kachel:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Crect width='48' height='48' fill='%23F7F2E8'/%3E%3Cpath d='M24 4 L44 24 L24 44 L4 24Z' fill='none' stroke='%230F3B5F' stroke-width='2'/%3E%3Ccircle cx='24' cy='24' r='6' fill='%23B4492D'/%3E%3Cpath d='M0 0h8v8H0zM40 0h8v8h-8zM0 40h8v8H0zM40 40h8v8h-8z' fill='%23F3C93B'/%3E%3Ccircle cx='24' cy='24' r='2' fill='%23F3C93B'/%3E%3C/svg%3E");
  --rauschen:url(/estilos/rauschen.png);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--pomice) var(--rauschen);color:var(--basalto);font:400 18px/1.6 var(--sans);hyphens:auto;-webkit-hyphens:auto;overflow-x:hidden}
.preis,.flap{font-variant-numeric:tabular-nums}
@media (min-width:900px){body{font-size:19px}}
img,svg{max-width:100%;height:auto}
img{display:block}
a{color:var(--terracotta-oscuro);text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--terracotta);text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--tirreno-medio);outline-offset:3px;border-radius:4px}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.005em;hyphens:manual;color:var(--basalto)}
h1{font-size:clamp(1.7rem,7vw,3.5rem);margin:.2em 0 .35em;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
h2{font-size:clamp(1.6rem,3.4vw,2.35rem);margin:2.2em 0 .55em;display:flex;gap:.55em;align-items:baseline}
h2::before{content:"";flex:0 0 .55em;height:.55em;background:var(--terracotta);transform:rotate(45deg) translateY(-.08em);border-radius:2px;box-shadow:.12em .12em 0 var(--limone)}
h3{font-size:clamp(1.25rem,2.4vw,1.55rem);margin:1.7em 0 .4em}
p{margin:0 0 1.05em}
ul,ol{padding-inline-start:1.25em;margin:0 0 1.2em}
li{margin:.3em 0}
li::marker{color:var(--terracotta)}
strong{font-weight:700}
small{font-size:.82em}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:var(--limone);color:var(--basalto);padding:.6em 1em;border-radius:8px;z-index:99}
.skip:focus{left:8px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}
@media (min-width:700px){.wrap{padding:0 28px}}

/* ---------- Kopf ---------- */
.kopf{background:var(--tirreno);color:var(--pomice);position:sticky;top:0;z-index:40;box-shadow:0 6px 20px -14px #000}
.kopf .wrap{display:flex;align-items:center;gap:14px;min-height:64px;flex-wrap:wrap}
.marke{display:flex;align-items:center;gap:10px;color:var(--pomice);text-decoration:none;padding:6px 0;min-height:44px}
.marke:hover{color:var(--pomice)}
.marke svg{width:46px;height:34px;flex:none}
.marke b{font:400 1.18rem/1 var(--serif);display:block;letter-spacing:.005em}
.marke i{font:500 .62rem/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;font-style:normal;color:var(--limone);display:block;margin-top:4px}
.nav{margin-left:auto;display:flex;gap:2px;align-items:center}
.nav a{color:var(--pomice);text-decoration:none;font-weight:500;font-size:.92rem;padding:10px 12px;border-radius:999px;min-height:44px;display:inline-flex;align-items:center}
.nav a:hover,.nav a[aria-current=page]{background:rgba(247,242,232,.12);color:#fff}
.pille{font:500 .7rem/1 var(--mono);letter-spacing:.06em;color:var(--limone);border:1px solid rgba(243,201,59,.55);border-radius:999px;padding:7px 11px;white-space:nowrap}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid rgba(247,242,232,.4);color:var(--pomice);border-radius:12px;min-height:44px;min-width:44px;font:500 .85rem var(--sans);padding:0 12px;cursor:pointer}
@media (max-width:980px){
  .pille{display:none}
}
@media (max-width:860px){
  .menu-btn{display:inline-flex;align-items:center}
  .nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding:0 0 12px}
  .nav.offen{display:flex}
  .nav a{border-radius:12px;font-size:1rem}
}

/* ---------- Brotkrümel ---------- */
.migas{font-size:.84rem;color:var(--grau);padding:14px 0 0}
.migas ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.2em .5em}
.migas li{margin:0;display:flex;align-items:center;gap:.5em}
.migas li+li::before{content:"";width:6px;height:6px;background:var(--terracotta);transform:rotate(45deg);border-radius:1px}
.migas a{color:var(--grau);padding:6px 0;display:inline-block}

/* ---------- Seitenkopf ---------- */
.held{padding:10px 0 0}
.held-grid{display:grid;gap:0;grid-template-columns:minmax(0,1fr);align-items:end}
.held-bild{position:relative;margin:14px 0 0;border-radius:var(--r) 64px var(--r) var(--r);overflow:hidden;box-shadow:var(--schatten);background:var(--sabbia)}
.held-bild img{width:100%;aspect-ratio:16/9;object-fit:cover}
.held-bild figcaption{overflow-wrap:anywhere;position:absolute;right:10px;bottom:10px;max-width:80%;background:rgba(29,27,26,.72);color:#f2ede4;font-size:.7rem;line-height:1.35;padding:5px 9px;border-radius:8px}
.held-bild figcaption a{color:#fff}
.held-text{position:relative;background:var(--ceramica);border-radius:var(--r);padding:22px 20px 20px;margin:-48px 12px 0;box-shadow:var(--schatten);z-index:2}
@media (min-width:900px){
  .held-grid{grid-template-columns:repeat(12,minmax(0,1fr))}
  .held-bild{grid-column:4/13;grid-row:1;margin-top:18px}
  .held-bild img{aspect-ratio:21/10}
  .held-text{grid-column:1/8;grid-row:1;margin:0 0 -40px;padding:30px 34px 28px;align-self:end}
}
.kicker{font:500 .74rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--terracotta-oscuro);margin:0 0 .5em;display:flex;flex-wrap:wrap;gap:.4em .9em}
.kicker span+span::before{content:"·";margin-right:.9em;color:var(--grau)}
.lead{font-size:1.12em;line-height:1.55;color:#33302d;margin:0}
.stand{display:inline-flex;gap:.5em;align-items:center;margin-top:14px;font:500 .74rem/1 var(--mono);color:var(--tirreno);background:var(--mare-chiaro);border-radius:999px;padding:7px 11px}
.stand::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ampel-gruen);box-shadow:0 0 0 3px rgba(62,142,65,.2)}

/* ---------- Inhalt ---------- */
.inhalt{padding:64px 0 40px}
.inhalt .prosa{max-width:none}
.prosa > :where(p,ul,ol,h2,h3,h4,.hinweis,.tipp,.regeln,.fakten,.cta,.foto,.faq,.karten.n1,.orte-liste){max-width:var(--text)}
.prosa > .tabelle-scroll{max-width:60rem}
.prosa > .foto.profil{max-width:var(--text)}
.prosa > p:first-of-type{font-size:1.05em}
.breit{max-width:none}
.prosa table{border-collapse:separate;border-spacing:0;width:100%;margin:1.2em 0 1.6em;font-size:.92em;background:var(--ceramica);border:1px solid var(--linie);border-radius:var(--r-s);overflow:hidden}
.prosa th,.prosa td{padding:10px 12px;text-align:left;vertical-align:top}
.prosa thead th{background:var(--sabbia);font-weight:700;font-size:.9em}
.prosa tbody tr:nth-child(even){background:#faf6ee}
.tabelle-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.2em 0 1.6em}
.tabelle-scroll table{margin:0;min-width:520px}

/* Fotos */
.foto{margin:1.8em 0;background:var(--ceramica);border-radius:var(--r);padding:8px;box-shadow:var(--schatten)}
.foto img{width:100%;max-height:560px;object-fit:cover;border-radius:12px;background:var(--sabbia)}
.foto figcaption{overflow-wrap:anywhere;font-size:.84rem;line-height:1.45;color:#4a4642;padding:9px 6px 3px}
.foto .credit,.held-bild .credit,.karte-credit{font-size:.74rem;color:var(--grau)}
.foto .credit a{color:var(--grau)}
@media (min-width:1100px){.foto.rechts{float:right;width:46%;margin:.3em -12% 1em 2em}}
.galerie{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:1.8em 0}
.galerie .foto{margin:0}
.galerie img{aspect-ratio:4/3;object-fit:cover}
.clear{clear:both}

/* Hinweise & Boxen */
.hinweis,.regeln,.fakten,.tipp{border-radius:var(--r);padding:18px 20px;margin:1.6em 0}
.hinweis{background:var(--mare-chiaro);color:#0c2f4c}
.tipp{background:#fbf0c9}
.regeln{background:var(--sabbia)}
.hinweis > :last-child,.regeln > :last-child,.tipp > :last-child,.fakten > :last-child{margin-bottom:0}
.box-titel{font:500 .74rem/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .6em;color:var(--terracotta-oscuro)}
.fakten{background:var(--tirreno);color:var(--pomice);position:relative;overflow:hidden}
.fakten .box-titel{color:var(--limone)}
.fakten dl{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;margin:0}
.fakten dt{font:500 .78rem/1.5 var(--mono);color:#bcd0de;text-transform:uppercase;letter-spacing:.06em}
.fakten dd{margin:0;font-weight:500}
.fakten a{color:var(--limone)}
.fakten::after{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;background:var(--kachel);background-size:40px;opacity:.16;border-radius:24px;transform:rotate(12deg)}

/* CTA im Text */
.cta{display:grid;grid-template-columns:1fr;gap:12px;align-items:center;background:var(--ceramica);border:2px solid var(--basalto);border-radius:var(--r);padding:16px 18px;margin:1.6em 0;box-shadow:6px 6px 0 var(--limone)}
.cta p{margin:0;font-weight:500}
.cta small{display:block;color:var(--grau);font-weight:400;margin-top:4px}
@media (min-width:640px){.cta{grid-template-columns:1fr auto}.cta .btn-gyg{width:auto}}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;padding:12px 20px;border-radius:14px;background:var(--limone);color:var(--basalto);font:700 .98rem/1.2 var(--sans);text-decoration:none;border:2px solid var(--basalto);box-shadow:3px 3px 0 var(--basalto);transition:transform .12s,box-shadow .12s;white-space:nowrap}
.btn:hover{color:var(--basalto);transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--basalto)}
.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--basalto)}
.btn::after{content:"→";font-weight:400}
.btn.leise{background:var(--ceramica)}
.textlink{font-weight:700}

/* ---------- Buchungsblock & Produktkarten ---------- */
.buchung{background:var(--tirreno);border-radius:24px;padding:22px 16px;margin:0 0 2.2em;color:var(--pomice);position:relative;box-shadow:var(--schatten)}
@media (min-width:700px){.buchung{padding:28px 26px}}
.buchung-kopf{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;margin:0 0 16px}
.buchung-kopf h2{color:var(--pomice);margin:0;font-size:clamp(1.35rem,2.6vw,1.8rem)}
.buchung-kopf h2::before{background:var(--limone);box-shadow:.12em .12em 0 var(--terracotta)}
.buchung-kopf p{margin:0;font:500 .74rem/1.4 var(--mono);color:#bcd0de;letter-spacing:.04em}
.karten{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.karten.n1{grid-template-columns:minmax(0,1fr)}
.produkt{background:var(--ceramica);color:var(--basalto);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 24px -16px #000}
.produkt .p-bild{position:relative;background:var(--sabbia)}
.produkt .p-bild img{width:100%;aspect-ratio:3/2;object-fit:cover}
.produkt .p-hafen{position:absolute;left:10px;top:10px;background:var(--basalto);color:var(--limone);font:500 .7rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:7px 9px;border-radius:8px}
.produkt .p-rang{position:absolute;right:10px;top:10px;background:var(--limone);color:var(--basalto);font:500 .7rem/1 var(--mono);padding:7px 9px;border-radius:8px}
.produkt .p-credit{font-size:.66rem;color:var(--grau);padding:6px 14px 0;line-height:1.3}
.produkt .p-credit a{color:var(--grau)}
.produkt .p-body{padding:12px 16px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.produkt h3{font-size:1.18rem;margin:0}
.produkt .p-inkl{font-size:.9rem;margin:0;color:#3b3734}
.produkt dl{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;font-size:.84rem;margin:0}
.produkt dt{font:500 .7rem/1.7 var(--mono);text-transform:uppercase;color:var(--grau);letter-spacing:.05em}
.produkt dd{margin:0}
.produkt .p-fuss{margin-top:auto;display:flex;align-items:end;justify-content:space-between;gap:10px;padding-top:8px;flex-wrap:wrap}
.btn-gyg{width:100%;min-height:52px;font-size:1.02rem;justify-content:center;text-align:center;white-space:normal}
.produkt .btn-gyg{margin-top:6px}
.stern{font-size:.55em;vertical-align:super;margin-left:1px;color:var(--grau);font-family:var(--sans)}
.preis{font:400 1.7rem/1 var(--serif);color:var(--terracotta-oscuro)}
.preis small{font:500 .72rem var(--mono);color:var(--grau);display:block;margin-bottom:3px;letter-spacing:.05em}
.bewertung{font:500 .76rem/1.3 var(--mono);color:var(--tirreno)}
.buchung .hinweis-zeile{font-size:.74rem;color:#bcd0de;margin:14px 2px 0}
.buchung .hinweis-zeile a{color:var(--limone)}

/* ---------- Abfahrtstafel / Vergleich ---------- */
.tafel{background:var(--basalto);color:var(--pomice);border-radius:22px;padding:16px;margin:1.8em 0;box-shadow:var(--schatten);position:relative}
@media (min-width:760px){.tafel{padding:22px 24px}}
.tafel-kopf{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;align-items:baseline;margin-bottom:12px}
.tafel-kopf b{font:400 1.35rem/1.1 var(--serif);color:var(--pomice)}
.tafel-kopf span{font:500 .72rem/1 var(--mono);color:var(--limone);letter-spacing:.1em;text-transform:uppercase;border:1px solid rgba(243,201,59,.5);border-radius:999px;padding:6px 10px}
.tafel table{background:none;border:0;margin:0;border-radius:0;overflow:visible;width:100%;border-collapse:separate;border-spacing:0 6px;font-size:.92rem}
.tafel thead th{background:none}
.tafel th{font:500 .66rem/1.2 var(--mono);color:#a9b9c6;text-transform:uppercase;letter-spacing:.1em;text-align:left;padding:4px 10px}
.tafel td{background:#262321;padding:11px 10px;vertical-align:middle}
.tafel tr td:first-child{border-radius:10px 0 0 10px}
.tafel tr td:last-child{border-radius:0 10px 10px 0}
.flap{display:inline-block;font:500 .95rem/1 var(--mono);color:var(--limone);background:#111;border-radius:6px;padding:6px 7px;box-shadow:inset 0 -1px 0 rgba(255,255,255,.06),inset 0 1px 0 rgba(0,0,0,.6);white-space:nowrap;position:relative}
.flap::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(0,0,0,.55)}
.route{font-weight:700;color:#fff}
.route i{font-style:normal;color:var(--limone);padding:0 .3em}
.tafel .klein{font-size:.8rem;color:#c9c1b6}
.tafel .btn{min-height:44px;padding:9px 14px;font-size:.88rem;box-shadow:2px 2px 0 #000;border-color:#000}
.tafel-fuss{font-size:.76rem;color:#bdb5aa;margin:8px 2px 0}
.tafel-fuss a{color:var(--limone)}
@media (prefers-reduced-motion:no-preference){
  .tafel.an .flap{animation:klapp .55s cubic-bezier(.3,1.4,.5,1) both;animation-delay:calc(var(--i,0) * 45ms)}
  @keyframes klapp{from{transform:rotateX(90deg);opacity:0}to{transform:none;opacity:1}}
}
@media (max-width:999px){
  .tafel table,.tafel tbody,.tafel tr,.tafel td{display:block;width:100%}
  .tafel thead{display:none}
  .tafel tr{background:#262321;border-radius:14px;padding:10px 12px;margin:0 0 10px}
  .tafel td{background:none;padding:4px 0;display:flex;justify-content:space-between;gap:12px;align-items:center}
  .tafel td::before{content:attr(data-k);font:500 .64rem/1.2 var(--mono);color:#a9b9c6;text-transform:uppercase;letter-spacing:.08em}
  .tafel td.r-route::before{display:none}
  .tafel td.r-route{padding-bottom:8px}
  .tafel .flap{white-space:normal;text-align:right}
  .tafel td.r-btn::before{display:none}
  .tafel td.r-btn .btn{width:100%}
}

/* Linienplan */
.linienplan{background:var(--ceramica);border-radius:var(--r);padding:14px;margin:1.6em 0;box-shadow:var(--schatten);overflow-x:auto}
.linienplan svg{min-width:640px;display:block}

/* ---------- Vulkan-Status ---------- */
.vulkan{background:var(--ceramica);border:2px solid var(--basalto);border-radius:22px;padding:18px;margin:1.8em 0;display:grid;gap:16px;box-shadow:6px 6px 0 var(--sabbia)}
@media (min-width:820px){.vulkan{grid-template-columns:1fr 1.15fr;padding:22px 24px}}
.ampel{display:flex;align-items:center;gap:12px;font:400 1.4rem/1.1 var(--serif)}
.ampel .punkt{width:22px;height:22px;border-radius:50%;flex:none;box-shadow:0 0 0 5px rgba(0,0,0,.06)}
.ampel.gelb .punkt{background:var(--limone);box-shadow:0 0 0 5px rgba(243,201,59,.3)}
.ampel.gruen .punkt{background:var(--ampel-gruen);box-shadow:0 0 0 5px rgba(62,142,65,.22)}
.vulkan dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:12px 0 0;font-size:.92rem}
.vulkan dt{font:500 .7rem/1.7 var(--mono);text-transform:uppercase;color:var(--grau);letter-spacing:.06em}
.vulkan dd{margin:0}
.vulkan .quelle{font-size:.78rem;color:var(--grau);margin:10px 0 0}
.profil svg{width:100%;height:auto;display:block}

/* ---------- Karte ---------- */
.karte{background:var(--tirreno);border-radius:24px;padding:10px;margin:1.6em 0;box-shadow:var(--schatten);position:relative;overflow:hidden}
.karte svg{display:block;width:100%;height:auto}
.karte .insel{fill:#d9c6a3;stroke:#f7f2e8;stroke-width:1.2;transition:fill .2s}
.karte a:hover .insel,.karte a:focus .insel,.karte .insel.aktiv{fill:var(--limone)}
.karte .klein-insel{fill:#c7b28c}
.karte text{font-family:var(--sans);fill:#f7f2e8;font-weight:700}
.karte .ort{font-family:var(--mono);font-weight:500;fill:#bcd0de}
.karte .linie{stroke:var(--limone);stroke-width:1.6;stroke-dasharray:5 6;fill:none;opacity:.85}
.karte-credit{color:#bcd0de;padding:4px 10px 4px;margin:0}
.karte-credit a{color:#bcd0de}

/* ---------- Inselkacheln ---------- */
.kacheln{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));margin:1.4em 0 2em}
@media (min-width:1000px){.kacheln{grid-template-columns:repeat(7,1fr)}}
.kachel{display:flex;flex-direction:column;text-decoration:none;color:var(--basalto);background:var(--ceramica);border-radius:var(--r);overflow:hidden;box-shadow:var(--schatten);transition:transform .18s}
.kachel:hover{transform:translateY(-3px) rotate(-.4deg);color:var(--basalto)}
.kachel .muster{height:78px;position:relative}
.kachel .muster::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,transparent 0 9px,rgba(255,255,255,.0) 9px),conic-gradient(from 45deg,var(--a) 0 25%,var(--b) 0 50%,var(--a) 0 75%,var(--b) 0);background-size:26px 26px;opacity:.95}
.kachel .muster::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(circle,var(--c) 0 4px,transparent 5px);background-size:26px 26px;background-position:13px 13px}
.kachel b{font:400 1.25rem/1.1 var(--serif);padding:12px 12px 2px}
.kachel span{font-size:.8rem;color:#4b4743;padding:0 12px 4px}
.kachel em{font:500 .66rem/1.4 var(--mono);color:var(--terracotta-oscuro);padding:4px 12px 12px;font-style:normal;text-transform:uppercase;letter-spacing:.06em}
.m-lipari{--a:#B4492D;--b:#F7F2E8;--c:#F3C93B}
.m-vulcano{--a:#E7C33A;--b:#1D1B1A;--c:#F7F2E8}
.m-salina{--a:#5E6B2E;--b:#E9DFCB;--c:#B4492D}
.m-panarea{--a:#FFFFFF;--b:#1F5F8B;--c:#F3C93B}
.m-stromboli{--a:#1D1B1A;--b:#3a3532;--c:#E07B24}
.m-filicudi{--a:#1F5F8B;--b:#D8E6EE;--c:#0F3B5F}
.m-alicudi{--a:#8b857c;--b:#d4cec4;--c:#1D1B1A}

/* ---------- Von hier weiter / Nähe ---------- */
.weiter{margin:2.4em 0 1em}
.weiter-liste{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));list-style:none;padding:0}
.weiter-liste li{margin:0}
.weiter-liste a{display:flex;flex-direction:column;gap:2px;padding:14px 16px;background:var(--ceramica);border:1px solid var(--linie);border-radius:14px;text-decoration:none;color:var(--basalto);min-height:44px;height:100%}
.weiter-liste a:hover{background:#fff;border-color:var(--terracotta)}
.weiter-liste b{font:400 1.12rem/1.2 var(--serif);color:var(--tirreno)}
.weiter-liste span{font:500 .74rem/1.4 var(--mono);color:var(--terracotta-oscuro)}
.weiter-liste small{color:#4b4743}

/* Zeitleiste */
.zeitleiste{list-style:none;padding:0;margin:1.4em 0 2em;position:relative}
.zeitleiste::before{content:"";position:absolute;left:15px;top:6px;bottom:6px;width:3px;background:repeating-linear-gradient(var(--tirreno) 0 8px,transparent 8px 14px);border-radius:3px}
.zeitleiste > li{position:relative;padding:0 0 18px 48px;margin:0}
.zeitleiste > li::before{content:attr(data-tag);position:absolute;left:0;top:0;width:33px;height:33px;border-radius:9px;background:var(--terracotta);color:#fff;font:500 .78rem/33px var(--mono);text-align:center;transform:rotate(0)}
.zeitleiste h3{margin:0 0 .3em;font-size:1.2rem}
.zeitleiste .fahrt{display:inline-flex;gap:.5em;align-items:center;font:500 .78rem/1 var(--mono);background:var(--mare-chiaro);color:var(--tirreno);border-radius:999px;padding:6px 10px;margin:2px 0 8px}
.zeitleiste .slot{display:block;background:#fbf0c9;border-radius:12px;padding:10px 12px;margin:8px 0 0;font-size:.92rem}

/* FAQ */
.faq details{background:var(--ceramica);border:1px solid var(--linie);border-radius:14px;margin:10px 0;padding:0 16px}
.faq summary{cursor:pointer;font-weight:700;padding:14px 0;min-height:44px;list-style-position:outside}
.faq details[open] summary{color:var(--terracotta-oscuro)}
.faq details > div{padding:0 0 14px}

/* Fliesenband als Trenner */
.fliesen{height:28px;background:var(--kachel);background-size:28px 28px;border-radius:8px;margin:3em 0;opacity:.9}

/* ---------- Home ---------- */
.home-held{background:var(--tirreno);color:var(--pomice);padding:22px 0 30px;position:relative;overflow:hidden}
.home-held::after{content:"";position:absolute;right:-60px;bottom:-60px;width:260px;height:260px;background:var(--kachel);background-size:52px;opacity:.08;transform:rotate(18deg);border-radius:40px}
.home-grid{display:grid;gap:18px;align-items:center}
@media (min-width:960px){.home-grid{grid-template-columns:5fr 7fr;gap:30px}}
.home-held h1{color:var(--pomice);font-size:clamp(2.5rem,7vw,5.2rem);margin:.1em 0 .2em}
.home-held h1 em{font-style:normal;color:var(--limone);display:block}
.home-held .lead{color:#dbe5ec}
.home-held .karte{background:transparent;box-shadow:none;padding:0;margin:0}
.home-held .kicker{color:var(--limone)}
.home-held .stand{background:rgba(216,230,238,.14);color:#dbe5ec}
.schnell{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}

/* ---------- Fuß ---------- */
.fuss{background:var(--basalto);color:#d8d0c5;margin-top:0;padding:0 0 110px;font-size:.92rem}
.fuss .wrap{padding-top:34px}
.fuss-grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.fuss h2{font-size:1.05rem;color:#fff;margin:0 0 .6em;display:block}
.fuss h2::before{display:none}
.fuss ul{list-style:none;padding:0;margin:0}
.fuss li{margin:0}
.fuss a{color:#d8d0c5;display:inline-block;padding:6px 0;text-decoration:none}
.fuss a:hover{color:var(--limone)}
.fuss .affiliate{background:#2a2725;border-radius:14px;padding:14px 16px;margin:24px 0 0;font-size:.84rem}
.fuss .klein{font-size:.78rem;color:#a39b90;margin-top:18px}

/* ---------- Sticky-Leiste & Popup ---------- */
.sticky{position:fixed;left:10px;right:10px;bottom:10px;z-index:50;background:var(--basalto);color:var(--pomice);border-radius:18px;padding:10px 10px 10px 16px;display:flex;align-items:center;gap:10px;box-shadow:0 16px 40px -10px rgba(0,0,0,.55);transform:translateY(140%);transition:transform .3s ease}
.sticky.zeigen{transform:none}
.sticky .s-text{flex:1;min-width:0;font-size:.86rem;line-height:1.3}
.sticky .s-text b{display:block;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sticky .s-text span{font:500 .72rem var(--mono);color:var(--limone)}
.sticky .btn{min-height:44px;padding:9px 14px;box-shadow:2px 2px 0 #000;border-color:#000;font-size:.9rem}
.sticky .zu{background:none;border:0;color:#bdb5aa;font-size:1.3rem;min-width:44px;min-height:44px;cursor:pointer;border-radius:10px}
@media (min-width:900px){.sticky{display:none}}
.popup{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;background:rgba(15,20,26,.55);padding:16px}
.popup.offen{display:flex}
.popup .p-box{background:var(--ceramica);border-radius:24px;max-width:460px;width:100%;overflow:hidden;box-shadow:0 30px 80px -20px #000;position:relative}
.popup .p-box img{width:100%;aspect-ratio:16/9;object-fit:cover}
.popup .p-inhalt{padding:18px 22px 22px;text-align:center}
.popup .p-preis{font:500 .8rem/1.4 var(--mono);color:var(--tirreno);margin:0 0 14px}
.popup .btn-gyg{width:100%}
.popup h2{font-size:1.45rem;margin:0 0 .4em;display:block}
.popup h2::before{display:none}
.popup p{margin:0 0 14px;font-size:.95rem}
.popup .zu{position:absolute;right:10px;top:10px;background:var(--ceramica);border:0;border-radius:50%;width:44px;height:44px;font-size:1.4rem;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.3)}
.popup .p-credit{font-size:.66rem;color:var(--grau);margin:10px 0 0}
.popup .p-credit a{color:var(--grau)}
@media (max-width:640px){.popup{align-items:flex-end;padding:0}.popup .p-box{border-radius:24px 24px 0 0;max-width:none}}

/* Credits-Tabelle */
.credits td{font-size:.84rem}
.credits img{width:84px;height:56px;object-fit:cover;border-radius:6px}

.fuss-band{height:30px;background:var(--kachel);background-size:30px;margin:56px 16px 18px;border-radius:10px}
@media print{.kopf,.sticky,.popup,.fuss-band{display:none}}

/* Fotos dieser Seite */
.fotos-seite{max-width:var(--text);margin:3em 0 0;padding:16px 18px;background:#f1ebde;border-radius:14px;font-size:.78rem;color:#4b4743;clear:both}
.fotos-seite ul{margin:0 0 .5em;padding-inline-start:1.1em}
.fotos-seite li{margin:.25em 0}
.fotos-seite a{color:#4b4743}
.fotos-seite p{margin:0}
/* Leaflet */
.leaflet-wrap{margin:1.6em 0 .6em;background:var(--ceramica);border-radius:22px;padding:8px;box-shadow:var(--schatten);position:relative}
.leaflet-box{height:460px;border-radius:16px;overflow:hidden;background:var(--mare-chiaro)}
@media (max-width:640px){.leaflet-box{height:380px}}
.leaflet-wrap::after{content:attr(data-hinweis);position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:500;background:rgba(15,59,95,.88);color:#fff;font:500 .74rem/1 var(--mono);padding:8px 12px;border-radius:999px;pointer-events:none;transition:opacity .2s}
.leaflet-wrap.aktiv::after{opacity:0}
.leaflet-wrap .karte-credit{color:var(--grau);padding:8px 8px 2px;font-size:.78rem}
.leaflet-container a.karte-link{font-weight:700;color:var(--terracotta-oscuro)}
.orte-liste{list-style:none;padding:0;display:grid;gap:6px 18px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin:.6em 0 1.6em}
.orte-liste li{margin:0}
.orte-liste span{display:block;font-size:.8rem;color:var(--grau)}

.sprache{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 10px;margin-left:auto;border:1px solid rgba(247,242,232,.45);border-radius:12px;color:var(--pomice);font:500 .78rem/1 var(--mono);letter-spacing:.08em;text-decoration:none}
.sprachen{display:inline-flex;gap:4px;margin-left:auto}.sprachen .sprache{margin-left:0}
.sprache:hover{background:rgba(247,242,232,.12);color:#fff}
@media (min-width:861px){.sprache{order:3;margin-left:6px}.sprachen{order:3;margin-left:6px}.nav{margin-left:auto}}
@media (max-width:860px){.menu-btn{margin-left:8px}}
@media (max-width:860px){.kopf .wrap{gap:8px}.marke{gap:8px}.marke svg{width:38px;height:28px}.marke b{font-size:1.02rem}.sprache{margin-left:auto}.sprachen{margin-left:auto}.sprachen .sprache{margin-left:0;min-width:40px;padding:0 6px}.menu-btn{margin-left:0}}
@media (min-width:861px){.kopf .wrap{flex-wrap:nowrap}.nav a{padding:10px 10px}}
@media (min-width:861px) and (max-width:1240px){.pille{display:none}}

.nav-sprachen{display:none}
@media (max-width:480px){.kopf .sprachen{display:none}.nav-sprachen{display:flex;gap:8px;padding:8px 0 0}.nav-sprachen a{flex:1;justify-content:center;border:1px solid rgba(247,242,232,.35)}}
@media (min-width:861px) and (max-width:1000px){.nav a{padding:10px 6px;font-size:.84rem}.kopf .wrap{gap:6px}.sprachen .sprache{min-width:38px;padding:0 6px}}
@media (min-width:861px) and (max-width:920px){.marke b{font-size:1.04rem}.marke svg{width:38px;height:28px}.marke{gap:8px}}
@media (min-width:861px){.sprachen{gap:3px}.sprachen .sprache{min-width:36px;min-height:36px;padding:0 5px;font-size:.72rem}}
@media (min-width:861px) and (max-width:1400px){.pille{display:none}}
@media (max-width:480px){.kopf .menu-btn{margin-left:auto}}
