:root{--ink:#16212b;--muted:#5b6873;--bg:#f6f4ef;--card:#fff;--accent:#d9541e;--line:#e3dfd6;--night:#0f1a23}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.65;font-size:17px}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:Archivo,Inter,sans-serif;line-height:1.15;margin:0 0 .6em;letter-spacing:-.01em}
h1{font-size:clamp(2.2rem,5vw,3.8rem);font-weight:800}
h2{font-size:clamp(1.7rem,3.2vw,2.5rem);font-weight:800}
h3{font-size:1.35rem;font-weight:600}
p{margin:0 0 1em}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;font-weight:600;color:var(--accent);margin-bottom:.8em;display:block}
.btn{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;font-weight:600;padding:14px 26px;border-radius:999px;transition:transform .15s,background .15s}
.btn:hover{background:#bf4614;transform:translateY(-1px)}
.btn-ghost{background:transparent;border:2px solid currentColor}
.btn-ghost:hover{background:rgba(255,255,255,.12)}
.btn-small{padding:9px 18px;font-size:.95rem}
/* header */
.site-header{position:sticky;top:0;z-index:20;background:rgba(246,244,239,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:Archivo;font-weight:800;font-size:1.1rem}
.brand img{height:44px;width:auto}
nav{display:flex;align-items:center;gap:28px}
nav a{text-decoration:none;font-weight:500}
nav a[aria-current]:not(.btn){color:var(--accent)}
nav a.btn{color:#fff}
.nav-btn{display:none;font-size:1.6rem;cursor:pointer}
@media(max-width:760px){
  .nav-btn{display:block}
  nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--bg);flex-direction:column;align-items:flex-start;padding:20px 24px;gap:16px;border-bottom:1px solid var(--line)}
  #nav-toggle:checked ~ nav{display:flex}
  .brand span{display:none}
}
/* hero */
.hero{position:relative;min-height:82vh;display:flex;align-items:flex-end;color:#fff;background:var(--night) center/cover no-repeat}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,18,26,.15) 0%,rgba(10,18,26,.25) 45%,rgba(10,18,26,.82) 100%)}
.hero .wrap{position:relative;padding-bottom:72px;padding-top:120px}
.hero p.lead{font-size:1.2rem;max-width:640px;opacity:.95}
.hero .actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-sub{min-height:56vh}
.tags{font-style:italic;opacity:.9;margin-bottom:.4em}
section{padding:88px 0}
.intro{max-width:760px}
/* cards */
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:960px){.grid4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.grid4{grid-template-columns:1fr}}
.tile{position:relative;display:block;border-radius:14px;overflow:hidden;aspect-ratio:3/4;text-decoration:none;color:#fff}
.tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.tile:hover img{transform:scale(1.05)}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(10,18,26,.8))}
.tile span{position:absolute;left:20px;bottom:18px;z-index:1;font-family:Archivo;font-weight:800;font-size:1.35rem}
.tile span small{display:block;font-family:Inter;font-weight:500;font-size:.85rem;opacity:.85}
/* split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.split.rev > :first-child{order:2}
@media(max-width:860px){.split{grid-template-columns:1fr;gap:32px}.split.rev > :first-child{order:0}}
.split img{border-radius:16px;width:100%;aspect-ratio:4/3;object-fit:cover}
.split img.tall{aspect-ratio:4/5}
.checks{list-style:none;padding:0;margin:0 0 1.5em}
.checks li{padding:10px 0 10px 34px;position:relative;border-bottom:1px solid var(--line)}
.checks li::before{content:"✔";position:absolute;left:0;color:var(--accent);font-weight:700}
.dark{background:var(--night);color:#e9eef2}
.dark .eyebrow{color:#f08a5d}
/* reviews */
.reviews{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}
@media(max-width:760px){.reviews{grid-template-columns:1fr}}
.review{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:30px}
.review .stars{color:#f5b942;letter-spacing:3px;margin-bottom:10px}
.review blockquote{margin:0 0 14px;font-size:1.1rem}
.review cite{font-style:normal;opacity:.75}
.textlink{font-weight:600;color:var(--accent);text-decoration:none}
.dark .textlink{color:#f08a5d}
/* touren */
.subnav{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.subnav a{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.35);color:#fff;text-decoration:none;padding:8px 16px;border-radius:999px;font-weight:500}
.cat{border-top:1px solid var(--line);scroll-margin-top:80px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 1.5em}
.chips span{background:var(--card);border:1px solid var(--line);padding:6px 14px;border-radius:999px;font-size:.92rem}
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
@media(max-width:860px){.features{grid-template-columns:1fr}}
.feature{background:var(--card);border-radius:14px;padding:26px;border:1px solid var(--line)}
.feature p{margin:0;color:var(--muted)}
.highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
@media(max-width:760px){.highlights{grid-template-columns:1fr}}
.highlights figure{margin:0;background:var(--card);border-radius:14px;overflow:hidden;border:1px solid var(--line)}
.highlights img{aspect-ratio:1/1;object-fit:cover;width:100%}
.highlights figcaption{padding:16px 20px;font-family:Archivo;font-weight:600}
/* contact */
.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:36px 0}
@media(max-width:760px){.contact-cards{grid-template-columns:1fr}}
.contact-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:28px;text-decoration:none;display:block;transition:border-color .15s,transform .15s}
.contact-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.contact-card .icon{font-size:1.8rem}
.contact-card strong{display:block;font-family:Archivo;font-size:1.15rem;margin:8px 0 4px}
.contact-card span{color:var(--muted)}
.dl{list-style:none;padding:0;margin:0}
.dl li{border-bottom:1px solid var(--line)}
.dl a{display:flex;justify-content:space-between;padding:14px 0;text-decoration:none;font-weight:500}
.dl a::after{content:"PDF ↓";color:var(--accent);font-size:.9rem}
/* cta + footer */
.cta{background:var(--accent);color:#fff;text-align:center}
.cta p{max-width:640px;margin:0 auto 28px;font-size:1.1rem}
.cta .btn{background:#fff;color:var(--accent)}
.cta .btn:hover{background:#fff3ec}
.site-footer{background:var(--night);color:#c4ced6;padding:64px 0 28px;font-size:.95rem}
.site-footer h4{color:#fff;font-size:1rem}
.site-footer a{text-decoration:none}
.site-footer a:hover{color:#fff}
.site-footer .cols{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:36px}
@media(max-width:1000px) and (min-width:761px){.site-footer .cols{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.site-footer .cols{grid-template-columns:1fr}}
.site-footer .copy{border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding-top:22px;font-size:.85rem;opacity:.7}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:32px}
.gallery img{aspect-ratio:1/1;object-fit:cover;border-radius:10px;width:100%}
@media(max-width:760px){.gallery{grid-template-columns:repeat(2,1fr)}}

/* IVBV-Siegel */
.site-footer .ivbv-badge{display:block;width:88px;height:88px;margin-bottom:16px}
.ivbv-note{display:flex;align-items:center;gap:16px;margin:8px 0 22px;padding:14px 18px;background:#fff;border:1px solid rgba(15,26,35,.1);border-radius:14px}
.ivbv-note img{width:72px;height:72px;flex:none}
.ivbv-note p{margin:0;font-size:.95rem;line-height:1.45}
.hero-seal{display:block;width:112px;height:112px;margin-bottom:22px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45))}
@media(max-width:760px){.hero-seal{width:76px;height:76px;margin-bottom:18px}}
/* Tourenkarten + Galerie */
.tours{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:32px}
.tour-card{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
.tour-card > img{width:100%;aspect-ratio:3/2;object-fit:cover}
.tour-card .body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.tour-card h3{margin:0 0 .5em;font-size:1.2rem}
.tour-card p{margin:0 0 1em;font-size:.97rem}
.facts{margin:auto 0 18px;display:grid;gap:8px;font-size:.9rem}
.facts div{display:grid;grid-template-columns:112px 1fr;gap:10px}
.facts dt{font-weight:600;color:var(--accent);overflow-wrap:anywhere;hyphens:auto}
.facts dd{margin:0}
.tour-card .foot{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:16px}
.price{font-family:Archivo;font-weight:800;font-size:1.15rem}
.price small{display:block;font-family:Inter;font-weight:500;font-size:.78rem;opacity:.7}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}
.checks.two{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;margin-top:28px}
@media(max-width:760px){.gallery{grid-template-columns:1fr 1fr}.checks.two{grid-template-columns:1fr}.tours{grid-template-columns:1fr}}

/* --- Erweiterung: Navigation, Tourseiten, Formular --- */
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 14px;border-radius:8px;z-index:50}
.skip:focus{left:12px}
.dd{position:relative}
.dd-menu{display:none;position:absolute;top:100%;left:-16px;min-width:250px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px rgba(15,26,35,.12);padding:8px}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{display:block}
.dd-menu a{display:block;padding:9px 12px;border-radius:8px}
.dd-menu a:hover{background:var(--bg);color:var(--accent)}
.dd-top::after{content:" ▾";font-size:.75em}
@media(max-width:760px){.dd-menu{display:block;position:static;box-shadow:none;border:0;padding:0 0 0 14px;min-width:0;background:transparent}.dd-menu a{padding:6px 0}.dd-top::after{content:""}}
.crumbs{font-size:.88rem;color:var(--muted);padding:18px 0 0}
.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--accent)}
.crumbs span{margin:0 4px}
.hero-tour{min-height:62vh}
.hero h1{max-width:900px;hyphens:manual;overflow-wrap:break-word;text-wrap:balance}
@media(max-width:520px){.hero h1{font-size:clamp(1.7rem,8.2vw,2.2rem)}}
.tour-main{padding-top:32px}
.tour-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
@media(max-width:960px){.tour-layout{grid-template-columns:1fr;gap:32px}.tour-aside{order:-1}}
.prose{max-width:760px}
.prose-wide{max-width:860px}
.prose h2{margin-top:1.6em}.prose h3{margin-top:1.3em}
.prose > :first-child{margin-top:0}
.tour-aside{position:sticky;top:96px}
@media(max-width:960px){.tour-aside{position:static}}
.aside-box{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px}
.aside-box .facts{margin:0 0 20px}
.aside-box .facts div{grid-template-columns:120px 1fr}
.aside-price{border-top:1px solid var(--line);padding:16px 0 18px}
.aside-price span{display:block;font-size:.85rem;color:var(--muted)}
.aside-price strong{font-family:Archivo;font-size:1.5rem}
.aside-price small{display:block;font-size:.78rem;color:var(--muted);margin-top:4px}
.aside-box .btn{display:block;text-align:center}
.aside-contact{font-size:.9rem;text-align:center;margin:14px 0 0}
.tour-card > a > img{width:100%;aspect-ratio:3/2;object-fit:cover}
.tour-card h3 a{text-decoration:none}.tour-card h3 a:hover{color:var(--accent)}
.faq{border-bottom:1px solid var(--line);padding:4px 0}
.faq summary{cursor:pointer;font-family:Archivo;font-weight:600;font-size:1.08rem;padding:12px 28px 12px 0;list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:10px;color:var(--accent);font-size:1.3rem}
.faq[open] summary::after{content:"–"}
.related{border-top:1px solid var(--line)}
.anfrage{background:#fff;border-top:1px solid var(--line);scroll-margin-top:72px}
.anfrage-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:56px;align-items:start}
@media(max-width:860px){.anfrage-grid{grid-template-columns:1fr;gap:28px}}
.form{display:grid;gap:16px;background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:28px}
.form label{display:grid;gap:6px;font-weight:500;font-size:.95rem}
.form .opt{font-weight:400;color:var(--muted)}
.form input,.form select,.form textarea{font:inherit;font-size:16px;padding:12px 14px;border:1px solid #cfc9bd;border-radius:10px;background:#fff;color:var(--ink);width:100%;box-sizing:border-box}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.form.tried :invalid{border-color:#c0392b;background:#fff6f4}
.form .row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:560px){.form .row2{grid-template-columns:1fr}.form{padding:20px}}
.form .consent{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.9rem}
.form .consent input{width:auto;margin-top:4px}
.form .btn{border:0;cursor:pointer;font-size:1rem;justify-self:start}
.form .btn:disabled{opacity:.6}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-msg{margin:0;font-size:.95rem}.form-msg.ok{color:#1e7b3a}.form-msg.err{color:#c0392b}
.form-done h3{margin-top:0}
.mobile-cta{display:none}
@media(max-width:760px){.mobile-cta{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:30;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(246,244,239,.97);border-top:1px solid var(--line)}.mobile-cta .btn{flex:1;text-align:center;padding:12px}.mobile-cta .btn-ghost{color:var(--ink)}body:has(.mobile-cta) .site-footer{padding-bottom:96px}}
.legal-note{background:#fff3ec;border:1px solid #f3c7b1;border-radius:12px;padding:14px 18px;font-size:.92rem;margin-bottom:28px}
.site-footer .copy{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.site-footer .legal a{margin:0 2px}
.price-table{width:100%;border-collapse:collapse;margin:0 0 1.5em}
.price-table td{padding:10px 0;border-bottom:1px solid var(--line)}
@media(max-width:760px){nav{max-height:calc(100vh - 72px);overflow:auto}}

/* slideshow */
.hero.has-slides{overflow:hidden}
.hero .slides{position:absolute;inset:0;z-index:0}
.hero .slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.2s ease}
.hero .slides img.on{opacity:1}
.hero.has-slides::before{z-index:1}
.hero.has-slides .wrap{z-index:2}
.slide-ctrl{position:absolute;right:20px;bottom:20px;z-index:3;display:flex;gap:8px}
.slide-btn{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.6);background:rgba(10,18,26,.45);color:#fff;font-size:1.1rem;line-height:1;cursor:pointer}
.slide-btn:hover,.slide-btn:focus-visible{background:rgba(10,18,26,.75);outline:2px solid #fff;outline-offset:2px}
.price-table{width:100%;max-width:440px;border-collapse:collapse;margin:8px 0 16px}
.price-table caption{text-align:left;font-size:.9rem;opacity:.75;padding-bottom:6px}
.price-table th,.price-table td{padding:9px 12px;border-bottom:1px solid rgba(0,0,0,.1);text-align:left}
.price-table td:last-child,.price-table th:last-child{text-align:right;font-weight:600}
.note{margin-top:22px;font-size:.95rem;opacity:.85}
@media(max-width:760px){.slide-ctrl{right:12px;bottom:12px}.slide-btn{width:36px;height:36px}.hero.has-slides .wrap{padding-bottom:76px}}
@media(prefers-reduced-motion:reduce){.hero .slides img{transition:none}}

.dd-menu a.dd-sub{padding:5px 12px 5px 26px;font-size:.9em;color:var(--muted)}
.dd-menu a.dd-sub:hover{color:var(--accent)}
@media(min-width:761px){.dd-menu{max-height:calc(100vh - 90px);overflow-y:auto}}
@media(max-width:760px){.dd-menu a.dd-sub{padding:4px 0 4px 14px}}
.hero.has-slides{touch-action:pan-y}
.faq-a{padding:0 28px 14px 0}
.faq-a > :first-child{margin-top:0}.faq-a > :last-child{margin-bottom:0}
.faq-a ul{margin:.4em 0 .8em;padding-left:1.2em}
.faq summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.faq-list{margin-top:8px}.faq-more{margin-top:18px}
.req-link{margin:6px 0 22px;font-size:.95rem}.req-link a{color:var(--accent,#d9541e);font-weight:600}
.extra-costs{margin:1.5rem 0;padding:1rem 1.25rem;border-left:3px solid currentColor;background:rgba(0,0,0,.035);border-radius:4px}
.extra-costs p{margin:.4rem 0}
.extra-costs-title{margin-top:0}

/* Kopfbereich: größeres Logo */
.bar{height:96px}
.brand img{height:84px;width:auto;margin-left:-6px}
.brand span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(max-width:760px){
  .bar{height:72px}
  .brand img{height:62px;margin-left:-4px}
}
/* Startseite: IVBV-Abzeichen transparent oben rechts im Titelbild */
.hero-badge{position:absolute;z-index:3;top:32px;right:max(24px,calc((100vw - 1160px)/2 + 24px));display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:#fff;opacity:.92}
.hero-badge img{width:96px;height:96px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45))}
.hero-badge span{font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;line-height:1.4;text-shadow:0 1px 4px rgba(0,0,0,.6)}
@media(max-width:760px){.hero-badge{top:18px;right:16px;gap:6px}.hero-badge img{width:62px;height:62px}.hero-badge span{font-size:.56rem;letter-spacing:.06em}}
@media(min-width:761px){.cat{scroll-margin-top:104px}.anfrage{scroll-margin-top:96px}}
/* Startseite: Titelbild auf Desktop bis zum Bildschirmrand, Gipfel oben sichtbar */
.hero-home{background-position:50% 0%}
@media(min-width:900px){.hero-home{min-height:calc(100vh - 110px)}}
.hero .slides img{object-position:50% 0%}
@media(min-width:900px){.hero.has-slides{min-height:calc(100vh - 110px)}}

.dd-cat summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;border-radius:8px;font-weight:500;cursor:pointer;list-style:none}
.dd-cat summary::-webkit-details-marker{display:none}
.dd-cat summary::after{content:"▸";font-size:.8em;color:var(--muted);transition:transform .15s}
.dd-cat[open] summary::after{transform:rotate(90deg)}
.dd-cat summary:hover{background:var(--bg);color:var(--accent)}
.dd-cat[open]{padding-bottom:4px}
@media(max-width:760px){.dd-cat summary{padding:6px 0}}

.gallery-lb a{display:block}
.gallery img{cursor:zoom-in}
.gallery img:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.lb{position:fixed;inset:0;z-index:100;background:rgba(10,18,26,.94);display:flex;align-items:center;justify-content:center}
.lb img{max-width:92vw;max-height:88vh;border-radius:8px}
.lb button{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;border-radius:50%;width:48px;height:48px;font-size:1.5rem;cursor:pointer}
.lb button:hover,.lb button:focus-visible{background:rgba(255,255,255,.28)}
.lb .lb-x{top:16px;right:16px}.lb .lb-p{left:16px;top:50%;transform:translateY(-50%)}.lb .lb-n{right:16px;top:50%;transform:translateY(-50%)}

/* Tourenkarten Lienzer Dolomiten */
.tours-routes .tour-card{position:relative}
.tours-routes .tour-card img{object-position:center 40%}
.grade-badge{position:absolute;top:14px;left:14px;background:var(--accent);color:#fff;font-family:Archivo;font-weight:800;font-size:.95rem;padding:5px 11px;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.tour-card .tour-area{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:var(--accent);margin:0 0 .3em}
.tour-card .card-links{display:flex;align-items:center;gap:14px}
.tour-card .card-more{font-weight:600;font-size:.92rem}
.lead-sm{max-width:760px;margin:.4em 0 0;opacity:.85}

/* IVBV-Abzeichen in der Kopfzeile */
.header-ivbv{display:flex;align-items:center;gap:10px;margin-right:auto;margin-left:14px}
.header-ivbv img{height:64px;width:auto}
.header-ivbv span{font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;line-height:1.35;color:var(--ink,#1d1d1b)}
@media (max-width:760px){.header-ivbv{margin-left:8px;gap:6px}.header-ivbv img{height:44px}.header-ivbv span{font-size:.56rem;letter-spacing:.04em}}
.hero-top{background-position:50% 0%}

.reviews-3{grid-template-columns:repeat(3,1fr)}
@media(max-width:1000px){.reviews-3{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.reviews-3{grid-template-columns:1fr}}
.review{display:flex;flex-direction:column}
.review blockquote{flex:1}
.review-score{margin:14px 0 0;font-size:1.05rem;opacity:.9}
.review-score .stars{color:#f5b942;letter-spacing:2px}
.review cite .review-tour{display:block;font-size:.88rem;opacity:.8;margin-top:2px}
.tour-reviews{padding:64px 0}
.tour-reviews .review{background:#fff;border:1px solid rgba(15,26,35,.1)}
.tour-reviews .review blockquote{font-size:1.02rem}
.tour-reviews .review-more{margin-top:24px}

.prose figure.topo{margin:1.5rem 0}.prose figure.topo img{width:100%;height:auto;border-radius:12px;display:block}.prose figure.topo figcaption{font-size:.85rem;color:#666;margin-top:.4rem}
.prose .table-wrap{overflow-x:auto;margin:1rem 0}.prose table.routes{width:100%;border-collapse:collapse;font-size:.95rem}.prose table.routes th,.prose table.routes td{text-align:left;vertical-align:top;padding:.6rem .7rem;border-bottom:1px solid var(--line,#ddd)}.prose table.routes th{font-weight:600;background:rgba(0,0,0,.03)}.prose table.routes td:nth-child(2),.prose table.routes td:nth-child(3){white-space:nowrap}.prose p.source{font-size:.85rem;color:#666}
.cat .lead{max-width:760px;margin:0 0 1.5rem}.cat p.source{font-size:.85rem;color:#666;margin-top:1rem}

.cookie-box{position:fixed;left:16px;right:16px;bottom:16px;z-index:1000;max-width:560px;margin:0 auto;background:#fff;color:#0f1a23;border-radius:12px;box-shadow:0 10px 40px rgba(15,26,35,.25);padding:18px 20px;font-size:.95rem;line-height:1.5}
.cookie-box p{margin:0 0 14px}
.cookie-box a{color:#d9541e}
.cookie-btns{display:flex;gap:10px;flex-wrap:wrap}
.cookie-btns .btn{flex:1;min-width:130px;justify-content:center}
.cookie-btns .cookie-no{background:#fff;color:#0f1a23;border:2px solid #0f1a23}
.cookie-btns .cookie-no:hover{background:#f6f4ef}

.extra-costs ul{margin:.3rem 0 .8rem;padding-left:1.2rem}.extra-costs li{margin:.2rem 0}.extra-costs .extra-costs-title{margin-top:.6rem}.extra-costs .extra-costs-title:first-child{margin-top:0}
@media(max-width:760px){.price-table{max-width:none}}
/* Titelbild: Textblock nie breiter als der Bildschirm; lange Wörter auf dem Handy trennen */
.hero .wrap{min-width:0;width:100%}
@media(max-width:520px){.hero h1{-webkit-hyphens:auto;hyphens:auto}}
/* Handy: Kopfzeile beim Runterscrollen ausblenden, beim Hochscrollen zeigen */
@media (max-width:760px){.site-header{transition:transform .25s ease}.site-header.is-hidden{transform:translateY(-100%)}}
.brand img{object-fit:contain;flex-shrink:0}
