@font-face{font-family:Anton;src:url(fonts/anton.woff2) format("woff2");font-display:swap}
@font-face{font-family:Barlow;font-weight:400;src:url(fonts/barlow4.woff2) format("woff2");font-display:swap}
@font-face{font-family:Barlow;font-weight:600;src:url(fonts/barlow6.woff2) format("woff2");font-display:swap}
:root{--asphalt:#121316;--papier:#f1f2f3;--rot:#ce0000;--alu:#dfe2e6;--alu2:#9aa1a9;--mute:#4e4e4e;--s1:4px;--s2:8px;--s3:16px;--s4:24px;--s5:40px;--s6:64px;--s7:104px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:72px}
body{background:var(--papier);color:var(--asphalt);font:400 18px/1.6 Barlow,Helvetica,Arial,sans-serif;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
:focus-visible{outline:3px solid var(--rot);outline-offset:3px}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 16px;z-index:100}.skip:focus{left:8px}
.wrap{width:min(1240px,100% - 32px);margin-inline:auto}
.anton,h1,h2,h3{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.01em;line-height:1.02}
h2{font-size:clamp(34px,5vw,64px)}
h3{font-size:clamp(22px,2.6vw,30px);line-height:1.1}
p+p{margin-top:1em}
/* Kopf */
.top{position:sticky;top:0;z-index:50;background:var(--asphalt);color:#fff;border-bottom:3px solid var(--rot)}
.top .wrap{display:flex;align-items:center;gap:var(--s4);min-height:64px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;margin-right:auto}
.brand img{width:48px;height:48px;border-radius:50%}
.brand span{font:400 19px/1 Anton,sans-serif;text-transform:uppercase;letter-spacing:.02em}
.nav{display:flex;gap:var(--s4)}
.nav a{font-weight:600;text-decoration:none;font-size:16px;text-transform:uppercase;letter-spacing:.06em;padding:8px 0;border-bottom:3px solid transparent}
.nav a:hover,.nav a[aria-current]{border-color:var(--rot)}
.burger{display:none;background:none;border:2px solid #fff;color:#fff;font:600 15px Barlow,sans-serif;padding:8px 14px;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}
@media(max-width:900px){.burger{display:block}.brand span{font-size:16px}.nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--asphalt);padding:8px 16px 16px;border-bottom:3px solid var(--rot)}.nav.open{display:flex}.nav a{padding:14px 0;border-bottom:1px solid #2c2f35}}
/* Knöpfe */
.btn{display:inline-block;background:var(--rot);color:#fff;font:600 17px/1 Barlow,sans-serif;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;padding:17px 26px;border:0;border-radius:2px;cursor:pointer}
.btn:hover{background:#a80000}
.btn.dunkel{background:var(--asphalt)}.btn.dunkel:hover{background:#2c2f35}
.btn.rand{background:transparent;border:2px solid currentColor;color:inherit;padding:15px 24px}
.btn.rand:hover{background:rgba(255,255,255,.12)}
.link{font-weight:600;text-decoration:underline;text-decoration-color:var(--rot);text-decoration-thickness:3px;text-underline-offset:4px}
/* Hero */
.hero{position:relative;color:#fff;background:var(--asphalt);isolation:isolate;overflow:hidden}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 65%;z-index:-2}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,12,.62) 0,rgba(10,10,12,.22) 55%,rgba(10,10,12,0) 100%),linear-gradient(0deg,rgba(10,10,12,.55),rgba(10,10,12,0) 45%);z-index:-1}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1fr) 470px;gap:var(--s5);align-items:end;min-height:min(86svh,820px);padding:var(--s6) 0 var(--s5)}
.hero h1{font-size:clamp(38px,6.4vw,100px);line-height:.95;text-shadow:0 2px 24px rgba(0,0,0,.4)}
.hero .satz{font-size:clamp(18px,1.6vw,22px);max-width:34ch;margin:var(--s3) 0 var(--s4);color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.6)}
.hero .acts{display:flex;gap:var(--s3);flex-wrap:wrap;align-items:center}
@media(max-width:900px){.hero .wrap{grid-template-columns:1fr;min-height:0;padding:150px 0 var(--s4);gap:var(--s4)}.hero:before{background:linear-gradient(0deg,rgba(10,10,12,.82) 0,rgba(10,10,12,.2) 60%,rgba(10,10,12,0) 100%)}.hero>img{object-position:40% 50%;height:70%}.hero{background:var(--asphalt)}}
/* Koffer */
.koffer{position:relative;border-radius:14px;padding:var(--s4) var(--s4) 52px;background:
 linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,0) 18%,rgba(0,0,0,.08) 100%),
 repeating-linear-gradient(0deg,#e9ecef 0 7px,#c7ccd2 7px 9px,#e4e7ea 9px 14px);
 border:2px solid #8a9199;box-shadow:0 22px 50px rgba(0,0,0,.45),inset 0 0 0 5px rgba(255,255,255,.35),inset 0 0 0 6px rgba(0,0,0,.18);color:var(--asphalt)}
.koffer:before,.koffer:after{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#9aa1a9 60%,#5e656d);box-shadow:0 1px 1px rgba(0,0,0,.5)}
.koffer:before{left:12px;top:12px}
.koffer:after{right:12px;top:12px}
.koffer .nieten i{position:absolute;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#9aa1a9 60%,#5e656d);box-shadow:0 1px 1px rgba(0,0,0,.5)}
.koffer .nieten i:nth-child(1){left:12px;bottom:12px}.koffer .nieten i:nth-child(2){right:12px;bottom:12px}
.koffer .schloss{position:absolute;left:50%;bottom:-2px;width:92px;height:30px;transform:translateX(-50%);background:linear-gradient(#3a3f46,#1b1d21);border-radius:4px 4px 0 0;border:2px solid #0c0d0f;border-bottom:0}
.koffer .schloss:after{content:"";position:absolute;left:50%;top:8px;width:16px;height:10px;transform:translateX(-50%);border-radius:50%;background:#0c0d0f}
.schild{display:flex;align-items:baseline;justify-content:space-between;gap:12px;background:linear-gradient(#f9fafb,#cfd3d8);border:1px solid #8a9199;padding:8px 14px;margin:0 var(--s3) var(--s3);font:400 20px/1 Anton,sans-serif;text-transform:uppercase;letter-spacing:.08em;box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(0,0,0,.3)}
.schild small{font:600 13px/1.2 Barlow,sans-serif;letter-spacing:.04em;color:var(--mute);text-transform:none;text-align:right}
.aufkleber{display:grid;grid-template-columns:repeat(3,1fr);gap:4px 0;justify-items:center;padding:0 0 var(--s2)}
.aufkleber .st:nth-child(3n+2){margin-top:22px}
.st{display:block;width:min(124px,100%);aspect-ratio:1;text-decoration:none;position:relative;transition:transform .25s cubic-bezier(.2,.8,.2,1),filter .25s;filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))}
.st svg{display:block;width:100%;height:100%;overflow:visible}
.st:hover,.st:focus-visible{transform:translateY(-6px) scale(1.07) rotate(0deg)!important;filter:drop-shadow(0 10px 8px rgba(0,0,0,.35));z-index:3}
.st .rt{font:600 10.5px Barlow,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.st .mt{font-family:Anton,Impact,sans-serif;text-transform:uppercase}
.st.leer{filter:none}
.st.leer span{display:grid;place-items:center;width:100%;height:100%;border:3px dashed #5e656d;border-radius:50%;font:400 15px/1.15 Anton,sans-serif;text-transform:uppercase;text-align:center;color:#3a3f46;padding:18px}
.st.leer{display:none}
body.is-edit .st.leer{display:block}
.koffer .alle{display:block;margin:var(--s2) auto 0;text-align:center}
.koffer .alle a{font:600 15px Barlow,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--asphalt);background:rgba(255,255,255,.7);padding:6px 12px;border-radius:2px;text-decoration:none}
.koffer .alle a:hover{background:#fff}
@media(max-width:900px){.koffer{max-width:560px;margin:0 auto}}
@media(max-width:420px){.koffer{padding:var(--s3) var(--s2) 52px}.schild{margin:0 var(--s2) var(--s3);font-size:17px}.schild small{font-size:12px}.aufkleber .st:nth-child(3n+2){margin-top:14px}}
/* Abschnitte */
section{padding:var(--s7) 0}
@media(max-width:700px){section{padding:var(--s6) 0}}
.dunkel{background:var(--asphalt);color:#fff}
.sec-kopf{display:flex;justify-content:space-between;align-items:end;gap:var(--s4);flex-wrap:wrap;margin-bottom:var(--s5)}
.sec-kopf p{max-width:46ch;color:var(--mute)}
.dunkel .sec-kopf p{color:#c9ccd1}
/* Termine */
.monat{display:grid;grid-template-columns:150px 1fr;gap:var(--s4);padding:var(--s4) 0;border-top:2px solid var(--asphalt)}
.dunkel .monat{border-color:#3a3d44}
.monat>h3{color:var(--rot)}
.eintrag{display:grid;grid-template-columns:minmax(190px,260px) 1fr;gap:var(--s3) var(--s4);padding:var(--s3) 0;border-bottom:1px solid rgba(0,0,0,.18)}
.eintrag:last-child{border-bottom:0}
.eintrag .dat{font:600 18px/1.3 Barlow,sans-serif;text-transform:uppercase;letter-spacing:.03em}
.eintrag h4{font:400 clamp(22px,2.4vw,28px)/1.1 Anton,sans-serif;text-transform:uppercase;margin-bottom:6px}
.eintrag ul{list-style:none}.eintrag li{padding:1px 0}
.eintrag .acts{margin-top:var(--s2);display:flex;gap:var(--s3);flex-wrap:wrap}
.hinweis-rot{display:inline-block;background:var(--rot);color:#fff;font:600 14px Barlow,sans-serif;text-transform:uppercase;letter-spacing:.06em;padding:3px 10px;margin-bottom:8px}
@media(max-width:760px){.monat,.eintrag{grid-template-columns:1fr;gap:var(--s2)}}
/* Zeilen für Leistungen */
.zeile{display:grid;grid-template-columns:70px 1fr minmax(160px,auto);gap:var(--s4);align-items:start;padding:var(--s4) 0;border-top:2px solid var(--asphalt)}
.dunkel .zeile{border-color:#3a3d44}
.zeile .nr{font:400 48px/1 Anton,sans-serif;color:var(--rot)}
.zeile .preis{font:400 28px/1.1 Anton,sans-serif;text-transform:uppercase;text-align:right}
.zeile .preis small{display:block;font:600 14px Barlow,sans-serif;letter-spacing:.04em;color:var(--mute);text-transform:none;margin-top:4px}
.dunkel .zeile .preis small{color:#c9ccd1}
@media(max-width:700px){.zeile{grid-template-columns:48px 1fr;gap:var(--s3)}.zeile .nr{font-size:36px}.zeile .preis{grid-column:2;text-align:left}}
/* Zweispalter */
.zwei{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--s6);align-items:center}
.zwei.umgekehrt{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
@media(max-width:860px){.zwei,.zwei.umgekehrt{grid-template-columns:1fr;gap:var(--s4)}}
.text{max-width:68ch}
.text h2{margin-bottom:var(--s4)}
/* Fotos */
.foto-gross{width:100%}
.foto-gross img{width:100%;height:auto;background:#d6d9dd}
figcaption{font-size:15px;color:var(--mute);padding-top:6px}
.dunkel figcaption{color:#c9ccd1}
.gal{columns:3 340px;column-gap:var(--s2);margin:var(--s4) 0}
.gal a{display:block;margin-bottom:var(--s2);break-inside:avoid;position:relative;cursor:zoom-in}
.gal img{width:100%;height:auto;background:#d6d9dd}
.gal.zwei-sp{columns:2 300px}
.mosaik{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--s2)}
.mosaik figure:nth-child(1){grid-column:span 4}.mosaik figure:nth-child(2){grid-column:span 2}
.mosaik figure:nth-child(n+3){grid-column:span 2}.mosaik{margin-bottom:var(--s5)}
.mosaik img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/2}
.mosaik figure:nth-child(1) img{aspect-ratio:16/9}
.mosaik figure:nth-child(2) img{aspect-ratio:auto;height:100%}
@media(max-width:700px){.mosaik{grid-template-columns:1fr 1fr}.mosaik figure:nth-child(n){grid-column:span 2}.mosaik figure:nth-child(n+4){grid-column:span 1}.mosaik img,.mosaik figure:nth-child(1) img,.mosaik figure:nth-child(2) img{aspect-ratio:3/2;height:auto}}
/* Tour-Seite */
.tourkopf{position:relative;background:var(--asphalt)}
.tourkopf>img{width:100%;height:clamp(220px,46vh,520px);object-fit:cover}
.tourtitel{display:flex;gap:var(--s4);align-items:flex-end;margin-top:-72px;position:relative;padding-bottom:var(--s5)}
.tourtitel .st{flex:0 0 150px;width:150px;filter:drop-shadow(0 6px 8px rgba(0,0,0,.4))}
.tourtitel>div{padding-top:78px}.tourtitel h1{font-size:clamp(34px,5.6vw,76px);color:var(--asphalt);padding-bottom:6px}
.tourtitel .zurueck{display:block;font:600 15px Barlow,sans-serif;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;margin-bottom:8px;color:var(--mute)}
@media(max-width:600px){.tourtitel>div{padding-top:58px}.tourtitel{margin-top:-52px;gap:var(--s3)}.tourtitel .st{flex-basis:104px;width:104px}}
.bericht{padding:0 0 var(--s7)}
.bericht .col{max-width:68ch}
.bericht h2{font-size:clamp(26px,3.4vw,40px);margin:var(--s4) 0 var(--s3)}
.bericht h3{margin:var(--s5) 0 var(--s3);color:var(--rot);font-size:clamp(28px,3.4vw,44px)}
.bericht .col p{margin-bottom:1em}
.bericht .col p+p{margin-top:0}
.bericht ul.pkt{margin:0 0 1em 1.1em}
.tage{display:flex;flex-wrap:wrap;gap:var(--s2);margin:var(--s4) 0}
.tage a{font:600 15px Barlow,sans-serif;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;border:2px solid var(--asphalt);padding:6px 12px}
.tage a:hover{background:var(--asphalt);color:#fff}
.plan{display:grid;grid-template-columns:110px 1fr;margin:var(--s3) 0 var(--s4);border-top:2px solid var(--asphalt)}
.plan dt,.plan dd{padding:10px 0;border-bottom:1px solid rgba(0,0,0,.2)}
.plan dt{font:400 20px/1.3 Anton,sans-serif;text-transform:uppercase;color:var(--rot)}
.mehr{background:var(--asphalt);color:#fff;padding:var(--s6) 0}
.mehr h2{margin-bottom:var(--s4);font-size:clamp(28px,3.4vw,44px)}
.mehr .reihe{display:flex;flex-wrap:wrap;gap:var(--s3) var(--s4)}
.mehr .st{width:116px}
/* Kontakt/Formulare */
form{display:grid;gap:var(--s3)}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3)}.f3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s3)}
@media(max-width:700px){.f2,.f3{grid-template-columns:1fr}}
label,legend{font:600 15px/1.3 Barlow,sans-serif;text-transform:uppercase;letter-spacing:.05em}
input[type=text],input[type=email],input[type=date],input[type=number],select,textarea{width:100%;font:400 18px Barlow,sans-serif;padding:13px 14px;border:2px solid var(--asphalt);background:#fff;border-radius:2px;margin-top:6px;color:var(--asphalt)}
textarea{min-height:130px}
fieldset{border:0;display:flex;gap:var(--s2) var(--s4);flex-wrap:wrap;align-items:center}
fieldset legend{width:100%;margin-bottom:2px}
fieldset label{font:400 17px Barlow,sans-serif;text-transform:none;letter-spacing:0;display:flex;gap:8px;align-items:center}
input[type=radio],input[type=checkbox]{width:20px;height:20px;accent-color:var(--rot)}
.danke{display:none;background:var(--asphalt);color:#fff;padding:var(--s4);border-left:6px solid var(--rot)}
.danke.an{display:block}
.fakten{list-style:none;border-top:2px solid var(--asphalt);margin:var(--s3) 0}
.fakten li{padding:12px 0;border-bottom:1px solid rgba(0,0,0,.2)}
.fakten b{font-weight:600}
.steck{display:grid;grid-template-columns:minmax(150px,230px) 1fr;border-top:2px solid var(--asphalt)}
.steck dt,.steck dd{padding:12px 0;border-bottom:1px solid rgba(0,0,0,.2)}
.steck dt{font:600 15px/1.5 Barlow,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:var(--mute);padding-right:var(--s3)}
@media(max-width:600px){.steck{grid-template-columns:1fr}.steck dt{border-bottom:0;padding-bottom:0}}
/* Fuß */
.fuss{background:var(--asphalt);color:#d3d6db;padding:var(--s6) 0 var(--s4);border-top:3px solid var(--rot)}
.fuss .spalten{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:var(--s5)}
@media(max-width:800px){.fuss .spalten{grid-template-columns:1fr;gap:var(--s4)}}
.fuss h2{font-size:28px;color:#fff;margin-bottom:var(--s3)}
.fuss a{color:#fff}
.fuss .verwaltung p{max-width:42ch}
.fuss .bandzeile{margin-top:var(--s5);padding-top:var(--s3);border-top:1px solid #34373d;font-size:14px;color:#9da1a8;display:flex;justify-content:space-between;gap:var(--s3);flex-wrap:wrap}
.btn-edit-fuss{background:none;border:2px solid #fff;color:#fff;font:600 15px Barlow,sans-serif;text-transform:uppercase;letter-spacing:.06em;padding:11px 16px;cursor:pointer;margin-top:var(--s3)}
.btn-edit-fuss:hover{background:#fff;color:var(--asphalt)}
/* Bearbeiten */
.fab{position:fixed;left:12px;bottom:12px;z-index:60;background:var(--asphalt);color:#fff;border:2px solid #fff;font:600 14px Barlow,sans-serif;text-transform:uppercase;letter-spacing:.06em;padding:9px 14px;border-radius:2px;cursor:pointer;opacity:.82}
.fab:hover{opacity:1}
body.is-edit .fab{display:none}
.editbar{display:none;position:sticky;top:0;z-index:70;background:var(--rot);color:#fff;padding:10px 0}
body.is-edit .editbar{display:block}
.editbar .wrap{display:flex;gap:var(--s2) var(--s3);flex-wrap:wrap;align-items:center}
.editbar p{margin-right:auto;font-weight:600;font-size:15px;line-height:1.3}
.editbar button{background:#fff;color:var(--asphalt);border:0;font:600 14px Barlow,sans-serif;text-transform:uppercase;letter-spacing:.05em;padding:9px 14px;cursor:pointer;border-radius:2px}
.editbar button.fertig{background:var(--asphalt);color:#fff}
body.is-edit .top{top:var(--edit-h,0)}
body.is-edit [data-edit]{outline:2px dashed rgba(206,0,0,.6);outline-offset:4px;cursor:text;min-height:1em}
body.is-edit [data-edit]:focus{outline:2px solid var(--rot);background:rgba(206,0,0,.05)}
.gal .ed,.foto-gross .ed{display:none}
body.is-edit .gal a .ed,body.is-edit .foto-gross .ed{display:flex;position:absolute;left:6px;right:6px;top:6px;gap:6px;justify-content:space-between}
.ed button{background:rgba(18,19,22,.88);color:#fff;border:0;font:600 12px Barlow,sans-serif;text-transform:uppercase;letter-spacing:.04em;padding:6px 9px;cursor:pointer;border-radius:2px}
.ed button:hover{background:var(--rot)}
.foto-gross{position:relative}
.neubild{display:none;margin:var(--s3) 0;border:3px dashed var(--alu2);padding:var(--s4);text-align:center;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:rgba(255,255,255,.5);width:100%;font-family:Barlow,sans-serif;font-size:16px}
body.is-edit .neubild{display:block}
.modal{position:fixed;inset:0;z-index:90;background:rgba(10,10,12,.7);display:none;align-items:flex-start;justify-content:center;padding:var(--s4) 16px;overflow:auto}
.modal.an{display:flex}
.modal .box{background:var(--papier);width:min(640px,100%);padding:var(--s4);border-top:6px solid var(--rot)}
.modal h2{font-size:34px;margin-bottom:var(--s3)}
.modal .row{display:flex;gap:var(--s2);flex-wrap:wrap;margin-top:var(--s3)}
.modal .vorschau{display:flex;gap:6px;flex-wrap:wrap}
.modal .vorschau img{width:72px;height:72px;object-fit:cover}
.drop{border:3px dashed var(--alu2);padding:var(--s4);text-align:center;background:#fff;margin-top:6px;font-weight:600;cursor:pointer}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--asphalt);color:#fff;padding:12px 20px;z-index:99;border-left:6px solid var(--rot);display:none;max-width:92vw}
.toast.an{display:block}
/* Lightbox */
.lb{position:fixed;inset:0;background:rgba(8,8,10,.95);z-index:95;display:none;align-items:center;justify-content:center}
.lb.an{display:flex}
.lb img{max-width:96vw;max-height:88vh;width:auto;height:auto}
.lb button{position:absolute;background:rgba(255,255,255,.14);color:#fff;border:0;font:400 28px/1 Barlow,sans-serif;width:52px;height:52px;cursor:pointer}
.lb .x{top:12px;right:12px}.lb .v{left:8px;top:50%;margin-top:-26px}.lb .n{right:8px;top:50%;margin-top:-26px}
.lb .z{position:absolute;left:0;right:0;bottom:12px;text-align:center;color:#c9ccd1;font-size:15px}
/* Band */
.entwurfband{background:#000;color:#9da1a8;font-size:13px;text-align:center;padding:8px 16px}
.partner{background:var(--alu);padding:var(--s5) 0}
.logo-teil{width:110px;height:auto}
.zitat-rot{border-left:6px solid var(--rot);padding:var(--s2) 0 var(--s2) var(--s3);margin:var(--s4) 0;font-size:20px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
