@font-face{font-family:"Playfair";src:url(fonts/playfair.woff2) format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"Instrument";src:url(fonts/instrument.woff2) format("woff2");font-weight:400 700;font-display:swap}
:root{
  --papier:#FCFBF8;--tinte:#1C1B19;--rot:#A6342A;--rot-d:#8A2920;--gruen:#3E8A47;--gruen-h:#7CC584;
  --tuff:#B9824A;--linie:#E2DCD2;--grau:#5E5A53;--flaeche:#F3F0EA;
  --rand:clamp(16px,4vw,56px);--max:1320px;
  --serif:"Playfair",Georgia,"Times New Roman",serif;--sans:"Instrument",system-ui,-apple-system,"Segoe UI",sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--papier);color:var(--tinte);font:400 1.0625rem/1.6 var(--sans);overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.06;margin:0;letter-spacing:-.01em;text-wrap:balance}
p{margin:0 0 1em;text-wrap:pretty}
:focus-visible{outline:2px solid var(--rot);outline-offset:3px}
.skip{position:absolute;left:-999px;top:0;background:var(--tinte);color:#fff;padding:10px 14px;z-index:99}
.skip:focus{left:8px;top:8px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--rand)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Band */
.band{background:var(--tinte);color:#D8D3CA;font-size:.75rem;letter-spacing:.04em;text-align:center;padding:5px 12px;line-height:1.4}

/* Kopf */
.kopf{position:sticky;top:0;z-index:40;background:rgba(252,251,248,.97);border-bottom:1px solid var(--linie)}
.kopf .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:68px}
.wortmarke{font-family:var(--serif);font-weight:900;font-size:1.32rem;letter-spacing:-.01em;text-decoration:none;white-space:nowrap;line-height:1}
.wm-r{color:var(--rot)}.wm-g{color:#4FA458}.wm-s{color:var(--tinte)}
.nav{display:flex;align-items:center;gap:28px}
.nav .btn{padding:12px 18px}
.nav a{text-decoration:none;font-size:.95rem;position:relative;padding:6px 0}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.nav a[aria-current="page"]{color:var(--rot)}
.kopf-tel{font-size:.9rem;color:var(--grau);text-decoration:none;white-space:nowrap}
.menue-knopf{display:none;background:none;border:0;padding:10px;margin-right:-10px;cursor:pointer;color:var(--tinte)}
.menue-knopf span{display:block;width:24px;height:2px;background:currentColor;margin:5px 0;transition:transform .3s var(--ease),opacity .2s}
.menue-offen .menue-knopf span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menue-offen .menue-knopf span:nth-child(2){opacity:0}
.menue-offen .menue-knopf span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Knöpfe */
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--rot);color:#fff;text-decoration:none;font:600 .98rem/1 var(--sans);padding:15px 22px;border-radius:2px;border:0;cursor:pointer;transition:background .2s}
.btn:hover{background:var(--rot-d)}
.btn .pf{transition:transform .25s var(--ease)}
.btn:hover .pf{transform:translateX(4px)}
.btn-hell{background:transparent;color:var(--tinte);box-shadow:inset 0 0 0 1px var(--tinte)}
.btn-hell:hover{background:var(--tinte);color:#fff}
.textlink{font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;text-decoration-color:var(--rot);transition:text-underline-offset .2s}
.textlink:hover{text-underline-offset:8px;color:var(--rot)}
.marke{font:600 .78rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--rot)}
.marke.g{color:var(--gruen)}

/* Hero mit Bohrkern */
.hero{padding:clamp(28px,5vh,56px) 0 clamp(40px,6vh,72px)}
.hero-raster{display:grid;grid-template-columns:minmax(0,1.02fr) 212px minmax(0,1fr);gap:clamp(24px,3vw,48px);align-items:stretch;min-height:min(calc(100svh - 160px),760px)}
.hero-text{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:4px}
.hero h1{font-size:clamp(2.3rem,3.9vw,3.7rem);font-weight:800;line-height:1.02;letter-spacing:-.02em}
.hero h1 .rot{color:var(--rot)}
.hero-satz{font-family:var(--serif);font-size:clamp(1.15rem,1.55vw,1.4rem);line-height:1.4;margin:28px 0 18px;max-width:30ch}
.hero-lauf{color:var(--grau);max-width:46ch;margin-bottom:28px}
.hero-aktion{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}
.hero-aktion .tel{font-size:.95rem;text-decoration:none;border-bottom:1px solid var(--linie);padding-bottom:2px}
.hero-aktion .tel:hover{border-color:var(--rot)}

.kern{position:relative;display:flex;flex-direction:column}
.kern-titel{font:600 .72rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--grau);margin:0 0 12px;padding-left:2px}
.kern-feld{position:relative;flex:1;display:grid;grid-template-columns:1fr 92px;min-height:520px}
.kern-svg{grid-column:2;width:92px;height:100%;overflow:hidden}
.kern-svg .schicht{cursor:pointer;transition:opacity .45s var(--ease)}
.kern-feld.hat-aktiv .schicht{filter:saturate(.15) brightness(1.08) contrast(.85)}
.kern-svg .schicht{transition:filter .5s var(--ease)}
.kern-feld.hat-aktiv .schicht.aktiv{filter:none}
.kern-labels{grid-column:1;position:relative;list-style:none;margin:0;padding:0}
.kern-labels li{position:absolute;right:14px;left:0;transform:translateY(-50%)}
.kern-labels button{all:unset;cursor:pointer;display:block;text-align:right;width:100%;padding:6px 0}
.kern-labels .ep{display:block;font:700 1.02rem/1.1 var(--serif);transition:color .25s}
.kern-labels .to{display:block;font-size:.74rem;line-height:1.25;color:var(--grau);margin-top:3px}
.kern-labels button:hover .ep,.kern-labels button[aria-pressed="true"] .ep{color:var(--rot)}
.kern-labels button:focus-visible{outline:2px solid var(--rot);outline-offset:2px}
.kern-faden{position:absolute;right:-40px;width:52px;height:1px;background:var(--rot);top:0;transition:top .5s var(--ease);pointer-events:none}
.kern-faden::after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-radius:50%;background:var(--rot)}
.kern-quer{display:none}

.probe{display:flex;flex-direction:column;margin:0}
.probe-bild{position:relative;flex:1;min-height:360px;overflow:hidden;background:var(--flaeche)}
.probe-bild img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s var(--ease),transform 1.4s var(--ease);transform:scale(1.025)}
.probe-bild img.zeigen{opacity:1;transform:none}
.probe-text{padding-top:18px;display:grid;grid-template-columns:1fr auto;gap:6px 24px;align-items:end;min-height:132px}
.probe-text h2{font-size:clamp(1.35rem,1.9vw,1.75rem);grid-column:1}
.probe-text .marke{grid-column:1/-1}
.probe-text .fakten{grid-column:1;color:var(--grau);font-size:.92rem;margin:4px 0 0}
.probe-text .textlink{grid-column:2;grid-row:2/4;align-self:end;white-space:nowrap}

/* Abschnitte */
.abschnitt{padding:clamp(72px,10vw,150px) 0}
.abschnitt.eng{padding:clamp(56px,7vw,104px) 0}
.kopfzeile{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px 56px;align-items:end;margin-bottom:clamp(36px,5vw,64px)}
.kopfzeile h2{font-size:clamp(1.95rem,3.3vw,3.1rem)}
.kopfzeile p{color:var(--grau);margin:0;max-width:48ch}

/* Schichtprofil der Touren */
.profil{list-style:none;margin:0;padding:0}
.profil li{position:relative}
.grenze{display:block;width:100%;height:14px;color:var(--tuff)}
.tour-zeile{display:grid;grid-template-columns:150px minmax(0,1.5fr) minmax(0,1.25fr) 220px;gap:28px;align-items:center;padding:30px 0;text-decoration:none;color:inherit}
.tour-zeile .ep{font:700 1.05rem/1.2 var(--serif);color:var(--tuff)}
.tour-zeile .ep small{display:block;font:600 .7rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--grau);margin-top:6px}
.tour-zeile h3{font-size:clamp(1.4rem,2.1vw,1.95rem);transition:color .25s}
.tour-zeile .kurz{color:var(--grau);font-size:.95rem;margin:8px 0 0}
.tour-zeile dl{display:grid;grid-template-columns:repeat(3,auto);gap:4px 22px;margin:0;font-size:.92rem}
.tour-zeile dt{font:600 .7rem/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--grau)}
.tour-zeile dd{margin:0;font-weight:600}
.tour-zeile dd.preis{font-family:var(--serif);font-size:1.25rem;font-weight:700}
.tour-zeile .thumb{aspect-ratio:4/3;overflow:hidden;background:var(--flaeche)}
.tour-zeile .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.tour-zeile:hover h3{color:var(--rot)}
.tour-zeile:hover .thumb img{transform:scale(1.04)}

/* Schritte I bis IV */
.schritte{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--tinte);counter-reset:s}
.schritte li{list-style:none;padding:26px 26px 8px 0;border-right:1px solid var(--linie);padding-left:26px}
.schritte li:first-child{padding-left:0}
.schritte li:last-child{border-right:0}
.schritte .rz{display:block;font:400 3.4rem/1 var(--serif);color:var(--rot);margin-bottom:18px;letter-spacing:.02em}
.schritte h3{font-size:1.2rem;margin-bottom:10px}
.schritte p{color:var(--grau);font-size:.95rem}
.schritte-vers{display:flex;flex-wrap:wrap;gap:10px 40px;margin-top:36px;color:var(--grau);font-size:.95rem}
.schritte-vers b{color:var(--tinte)}

/* Johannes */
.person{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.person figure{margin:0;position:relative}
.person figure img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 30%}
.person figcaption{font-size:.85rem;color:var(--grau);margin-top:10px}
.person h2{font-size:clamp(2rem,3.4vw,3.2rem)}
.person .rolle{color:var(--grau);margin:10px 0 0}
.motto{margin:clamp(36px,5vw,56px) 0;padding:0;font:400 clamp(1.5rem,2.6vw,2.3rem)/1.25 var(--serif);max-width:24ch}
.motto cite{display:block;font:600 .78rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--grau);margin-top:16px;font-style:normal}
.gruende{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin:0}
.gruende div{padding:18px 0;border-top:1px solid var(--linie)}
.gruende dt{font-weight:700;margin-bottom:4px}
.gruende dd{margin:0;color:var(--grau);font-size:.95rem}

/* Treffpunkte */
.treff{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-rows:auto auto;gap:clamp(20px,3vw,40px)}
.treff figure{margin:0}
.treff figure img{width:100%;object-fit:cover}
.treff .t1{grid-row:1/3}
.treff .t1 img{aspect-ratio:4/3.3}
.treff .t2 img,.treff .t3 img{aspect-ratio:16/10}
.treff figcaption{display:grid;grid-template-columns:auto 1fr;gap:2px 14px;margin-top:12px;font-size:.92rem}
.treff figcaption b{font-family:var(--serif);font-size:1.15rem;grid-column:1/-1}
.treff figcaption span{color:var(--grau)}
.treff-meer{margin-top:clamp(28px,4vw,48px);padding-top:22px;border-top:1px solid var(--linie);display:grid;grid-template-columns:auto 1fr;gap:6px 28px;align-items:baseline}
.treff-meer b{font-family:var(--serif);font-size:1.2rem}
.treff-meer span{color:var(--grau)}

/* Dunkle Fläche */
.dunkel{background:var(--tinte);color:#EDE9E2}
.dunkel .marke{color:var(--gruen-h)}
.dunkel .kopfzeile p{color:#B9B3A9}
.ziele{font:400 clamp(1.5rem,3vw,2.6rem)/1.35 var(--serif);margin:0;max-width:30ch}
.ziele .p{color:var(--gruen-h)}
.dunkel .btn-hell{color:#fff;box-shadow:inset 0 0 0 1px #fff}
.dunkel .btn-hell:hover{background:#fff;color:var(--tinte)}
.zweispalt{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,6vw,96px);align-items:end}
.zweispalt p{color:#B9B3A9}

/* Kontakt-Streifen */
.kontakt-raster{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px)}
.kontakt-raster h2{font-size:clamp(2rem,3.4vw,3.2rem)}
.nummern{list-style:none;margin:0;padding:0}
.nummern li{padding:18px 0;border-top:1px solid var(--linie);display:grid;grid-template-columns:130px 1fr;gap:4px 20px;align-items:baseline}
.nummern li:last-child{border-bottom:1px solid var(--linie)}
.nummern .k{font:600 .72rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--grau)}
.nummern a,.nummern .w{font:700 clamp(1.15rem,1.8vw,1.45rem)/1.3 var(--serif);text-decoration:none}
.nummern a:hover{color:var(--rot)}

/* Formular */
.formular{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
.formular .ganz{grid-column:1/-1}
.formular label{display:block;font:600 .78rem/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--grau);margin-bottom:6px}
.formular input,.formular select,.formular textarea{width:100%;font:400 1rem/1.4 var(--sans);color:var(--tinte);background:#fff;border:1px solid #CFC7BA;border-radius:2px;padding:13px 14px;transition:border-color .2s}
.formular input:focus,.formular select:focus,.formular textarea:focus{outline:none;border-color:var(--rot);box-shadow:0 0 0 1px var(--rot)}
.formular textarea{min-height:130px;resize:vertical}
.formular .hinweis{font-size:.85rem;color:var(--grau);margin:0}
.danke{display:none;padding:28px 0;border-top:2px solid var(--gruen)}
.danke h3{font-size:1.5rem;margin-bottom:8px}
.gesendet .formular{display:none}.gesendet .danke{display:block}

/* Fuß */
.fuss{background:var(--tinte);color:#CFC9BF;padding:72px 0 28px;font-size:.92rem}
.fuss-raster{display:grid;grid-template-columns:minmax(0,4fr) repeat(3,minmax(0,2fr));gap:36px}
.fuss .wortmarke .wm-s{color:#fff}
.fuss .wortmarke .wm-g{color:var(--gruen-h)}
.fuss .wortmarke .wm-r{color:#E0675B}
.fuss h3{font:600 .72rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#9C958A;margin-bottom:14px}
.fuss ul{list-style:none;margin:0;padding:0}
.fuss li{margin:0 0 8px}
.fuss a{text-decoration:none}
.fuss a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.fuss-unten{margin-top:56px;padding-top:20px;border-top:1px solid #34322E;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:#9C958A;font-size:.82rem}

/* Unterseiten */
.brot{font-size:.85rem;color:var(--grau);padding-top:28px}
.brot a{text-decoration:none}.brot a:hover{color:var(--rot)}
.seitenkopf{padding-top:clamp(24px,4vw,48px);padding-bottom:clamp(40px,5vw,64px)}
.seitenkopf h1{font-size:clamp(2.2rem,4.6vw,4.2rem);font-weight:800;letter-spacing:-.02em;max-width:18ch}
.seitenkopf .unter{font-family:var(--serif);font-size:clamp(1.1rem,1.6vw,1.4rem);line-height:1.4;max-width:40ch;margin:20px 0 0}

.tour-kopf{display:grid;grid-template-columns:76px minmax(0,5fr) minmax(0,7fr);gap:clamp(20px,3vw,48px);align-items:stretch;padding-top:clamp(20px,3vw,40px)}
.minikern{display:flex;flex-direction:column;align-items:center;gap:10px}
.minikern svg{width:46px;height:300px}
.minikern a .schicht{transition:opacity .3s}
.minikern .schicht{filter:saturate(.1) brightness(1.1) contrast(.8);transition:filter .3s}
.minikern .schicht.aktiv{filter:none}
.minikern a:hover .schicht{filter:none}
.minikern small{font:600 .66rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--grau);writing-mode:vertical-rl;transform:rotate(180deg)}
.tour-kopf h1{font-size:clamp(2.1rem,3.9vw,3.6rem);font-weight:800;letter-spacing:-.02em;margin:14px 0 18px}
.tour-kopf .unter{font-family:var(--serif);font-size:1.2rem;line-height:1.45;margin:0 0 28px;max-width:34ch}
.tour-kopf figure{margin:0;min-height:420px;position:relative}
.tour-kopf figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.preisblock{display:flex;align-items:baseline;gap:12px;margin:0 0 22px}
.preisblock b{font:800 2.6rem/1 var(--serif)}
.preisblock span{color:var(--grau)}
.kopf-aktion{display:flex;flex-wrap:wrap;gap:12px}

.eckdaten{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid var(--tinte);border-bottom:1px solid var(--linie);margin:clamp(40px,5vw,64px) 0 0}
.eckdaten div{padding:18px 18px 18px 0;border-right:1px solid var(--linie)}
.eckdaten div+div{padding-left:18px}
.eckdaten div:last-child{border-right:0}
.eckdaten dt{font:600 .7rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--grau);margin-bottom:6px}
.eckdaten dd{margin:0;font-weight:600;font-size:.98rem;line-height:1.35}

.lesen{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,6vw,96px);align-items:start}
.lesen .text{max-width:64ch}
.lesen .text h2{font-size:clamp(1.6rem,2.6vw,2.3rem);margin-bottom:24px}
.lesen .text p:first-of-type{font-size:1.15rem}
.lesen aside{position:sticky;top:100px}
.inschrift{font:600 clamp(.82rem,1.1vw,.95rem)/1.9 var(--sans);letter-spacing:.16em;text-transform:uppercase;padding:22px 0;border-top:1px solid var(--tinte);border-bottom:1px solid var(--tinte);margin:40px 0}
.inschrift .p{color:var(--rot)}
.liste{list-style:none;margin:0;padding:0}
.liste li{padding:12px 0 12px 26px;border-top:1px solid var(--linie);position:relative;font-size:.97rem}
.liste li::before{content:"";position:absolute;left:2px;top:22px;width:8px;height:8px;background:var(--tuff);transform:rotate(45deg)}
.liste.gruen li::before{background:var(--gruen)}
.liste.leer li::before{background:transparent;box-shadow:inset 0 0 0 1px var(--grau)}
.aside-block{margin-bottom:40px}
.aside-block h3{font:600 .74rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--grau);margin-bottom:10px}

.galerie{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(10px,1.4vw,20px)}
.galerie figure{margin:0;overflow:hidden;background:var(--flaeche)}
.galerie img{width:100%;height:100%;object-fit:cover}
.galerie figcaption{font-size:.82rem;color:var(--grau);padding-top:8px;background:var(--papier)}
.g-a{grid-column:span 7;aspect-ratio:4/3}
.g-b{grid-column:span 5;aspect-ratio:4/5}
.g-c{grid-column:span 4;aspect-ratio:1/1}
.g-d{grid-column:span 8;aspect-ratio:16/9}
.g-e{grid-column:span 6;aspect-ratio:3/2}

.treffpunkt{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(28px,5vw,80px);align-items:center}
.treffpunkt img{width:100%;aspect-ratio:4/3;object-fit:cover}
.treffpunkt h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:12px 0 18px}
.treffpunkt address{font-style:normal;margin-bottom:20px}

.weiter{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:40px 0;border-top:1px solid var(--tinte);text-decoration:none}
.weiter h3{font-size:clamp(1.4rem,2.4vw,2.2rem);transition:color .25s}
.weiter:hover h3{color:var(--rot)}
.weiter .pf{font-size:2rem;transition:transform .3s var(--ease)}
.weiter:hover .pf{transform:translateX(8px)}

/* Touren-Übersicht: Schichten */
.lagen{list-style:none;margin:0 auto}
.lage{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:0;min-height:380px;position:relative}
.lage+.lage{margin-top:-18px}
.lage .lage-bild{position:relative;overflow:hidden}
.lage .lage-bild img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lage .lage-text{padding:56px clamp(24px,4vw,64px);display:flex;flex-direction:column;justify-content:center;background:var(--papier)}
.lage h2{font-size:clamp(1.7rem,2.8vw,2.6rem);margin:10px 0 14px}
.lage p{color:var(--grau)}
.lage .zeile{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:.92rem;margin:6px 0 22px}
.lage .zeile b{font-family:var(--serif);font-size:1.15rem}
.lage:nth-child(even){grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.lage:nth-child(even) .lage-bild{order:2}

/* Gruppenreisen, Über */
.leistungen{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;list-style:none;margin:0;padding:0}
.leistungen li{display:grid;grid-template-columns:64px 1fr;gap:0 18px;padding:24px 0;border-top:1px solid var(--linie)}
.leistungen .rz{font:400 2rem/1 var(--serif);color:var(--rot)}
.leistungen h3{font-size:1.2rem;margin-bottom:6px}
.leistungen p{color:var(--grau);margin:0;font-size:.96rem}
.auftraggeber{columns:3;column-gap:40px;list-style:none;margin:0;padding:0;font-size:.98rem}
.auftraggeber li{padding:7px 0;border-top:1px solid #34322E;break-inside:avoid}
.textspalte{max-width:64ch}
.textspalte h2{font-size:clamp(1.6rem,2.6vw,2.3rem);margin:0 0 18px}
.textspalte .gross{font-family:var(--serif);font-size:clamp(1.25rem,1.9vw,1.6rem);line-height:1.45}
.rechtlich h2{font-size:1.4rem;margin:36px 0 10px}

/* Bewegung */
.zeile-auf{opacity:0;transform:translateY(14px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--n,0)*90ms)}
.zeile-auf.da{opacity:1;transform:none}
.zeile-auf .grenze path{stroke-dasharray:1400;stroke-dashoffset:1400;transition:stroke-dashoffset 1.4s var(--ease) calc(var(--n,0)*90ms + .1s)}
.zeile-auf.da .grenze path{stroke-dashoffset:0}
::selection{background:var(--rot);color:#fff}
.eckdaten dd,.tour-zeile dd,.preisblock b,.nummern a,.hero-eck dd{font-variant-numeric:lining-nums tabular-nums}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}.zeile-auf{opacity:1;transform:none}.zeile-auf .grenze path{stroke-dashoffset:0}html{scroll-behavior:auto}}

/* Tablet */
@media (max-width:1100px){
  .hero-raster{grid-template-columns:minmax(0,1fr) 190px minmax(0,1fr)}
  .tour-zeile{grid-template-columns:120px minmax(0,1fr) 200px}
  .tour-zeile dl{grid-column:2;grid-row:2}
  .tour-zeile .thumb{grid-row:1/3;grid-column:3}
  .eckdaten{grid-template-columns:repeat(3,minmax(0,1fr))}
  .eckdaten div:nth-child(3){border-right:0}
  .eckdaten div:nth-child(4){padding-left:0}
  .eckdaten div:nth-child(n+4){border-top:1px solid var(--linie)}
}
@media (max-width:1023px){
  .nav,.kopf-tel{display:none}
  .menue-knopf{display:block}
  .menue-offen .nav{display:flex;position:fixed;inset:var(--kopf-unten,97px) 0 0 0;background:var(--papier);flex-direction:column;align-items:flex-start;gap:0;padding:12px var(--rand) 40px;overflow:auto;z-index:50}
  .menue-offen .nav a{font:700 1.7rem/1.2 var(--serif);padding:14px 0;width:100%;border-bottom:1px solid var(--linie)}
  .menue-offen .nav a::after{display:none}
  .menue-offen .nav .btn{margin-top:24px;font:600 1rem/1 var(--sans);width:auto;border:0;padding:16px 22px}
  .menue-offen{overflow:hidden}
  .hero-raster{grid-template-columns:1fr;min-height:0;gap:0}
  .hero-text{display:contents}
  .hero h1{order:1}
  .hero-satz{order:2;max-width:36ch}
  .hero-lauf{order:3}
  .hero-aktion{order:4;margin-bottom:36px}
  .probe{order:5}
  .kern{order:6;margin-top:0}
  .probe-bild{aspect-ratio:4/3;min-height:0;flex:none}
  .kern-feld{display:none}
  .kern-titel{display:none}
  .kern-quer{display:block;margin-top:10px}
  .kern-quer svg{width:100%;height:46px;display:block;overflow:hidden}
  .kern-quer .schicht{transition:opacity .4s;cursor:pointer}
  .kern-quer.hat-aktiv .schicht{filter:saturate(.15) brightness(1.08) contrast(.85)}
  .kern-quer.hat-aktiv .schicht.aktiv{filter:none}
  .kern-quer ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
  .kern-quer button{all:unset;cursor:pointer;display:block;text-align:center;padding:10px 2px 4px;font:700 .82rem/1.15 var(--serif);border-top:2px solid transparent;margin-top:6px}
  .kern-quer button[aria-pressed="true"]{color:var(--rot);border-top-color:var(--rot)}
  .kern-quer button:focus-visible{outline:2px solid var(--rot)}
  .kern-quer p{font-size:.78rem;color:var(--grau);margin:8px 0 0;text-align:center}
  .probe-text{order:2}
  .probe{display:flex;flex-direction:column}
  .kopfzeile{grid-template-columns:1fr}
  .person,.kontakt-raster,.lesen,.treffpunkt,.zweispalt{grid-template-columns:1fr}
  .lesen aside{position:static}
  .person figure{max-width:520px}
  .tour-kopf{grid-template-columns:56px minmax(0,1fr)}
  .tour-kopf figure{grid-column:1/-1;min-height:0;aspect-ratio:4/3}
  .minikern svg{height:240px;width:38px}
  .fuss-raster{grid-template-columns:1fr 1fr}
  .lage,.lage:nth-child(even){grid-template-columns:1fr}
  .lage:nth-child(even) .lage-bild{order:0}
  .lage .lage-bild{aspect-ratio:16/9}
  .lage+.lage{margin-top:0}
  .lage .lage-text{padding:28px 0 56px}
}
@media (max-width:700px){
  body{font-size:1rem}
  .wortmarke{font-size:1.15rem}
  .kopf .wrap{height:60px}
  .tour-zeile{grid-template-columns:1fr;gap:12px;padding:24px 0}
  .tour-zeile .thumb{grid-row:auto;grid-column:auto;order:-1;aspect-ratio:16/9}
  .tour-zeile dl{grid-column:auto;grid-row:auto}
  .tour-zeile .ep small{display:inline;margin-left:8px}
  .schritte{grid-template-columns:1fr 1fr}
  .schritte li{padding:22px 16px 6px 0;border-right:0}
  .schritte li:nth-child(odd){padding-left:0;border-right:1px solid var(--linie)}
  .schritte li:nth-child(even){padding-left:16px}
  .schritte li:nth-child(n+3){border-top:1px solid var(--linie)}
  .schritte .rz{font-size:2.6rem}
  .gruende{grid-template-columns:1fr}
  .treff{grid-template-columns:1fr}
  .treff .t1{grid-row:auto}
  .treff-meer{grid-template-columns:1fr}
  .nummern li{grid-template-columns:1fr}
  .formular{grid-template-columns:1fr}
  .eckdaten{grid-template-columns:1fr 1fr}
  .eckdaten div,.eckdaten div+div{padding:14px 12px 14px 0;border-right:0;border-top:1px solid var(--linie)}
  .eckdaten div:nth-child(odd){border-right:1px solid var(--linie)}
  .eckdaten div:nth-child(even){padding-left:14px}
  .eckdaten div:nth-child(-n+2){border-top:0}
  .eckdaten div:nth-child(4){padding-left:14px}
  .galerie{grid-template-columns:1fr 1fr}
  .g-a,.g-d{grid-column:1/-1;aspect-ratio:4/3}
  .g-b,.g-c,.g-e{grid-column:span 1;aspect-ratio:4/5}
  .leistungen{grid-template-columns:1fr}
  .auftraggeber{columns:2;column-gap:20px;font-size:.92rem}
  .fuss-raster{grid-template-columns:1fr}
  .weiter .pf{font-size:1.5rem}
  .preisblock b{font-size:2.2rem}
}
.nav .btn::after{display:none}
.hero-eck{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:4px 36px;margin:40px 0 0;padding-top:18px;border-top:1px solid var(--linie)}
.hero-eck dt{font:600 .7rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--grau)}
.hero-eck dd{margin:4px 0 0;font-weight:600;font-size:.95rem}
@media (max-width:1023px){.hero-eck{order:7;margin-top:28px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 14px}.hero-eck dd{font-size:.88rem}}
.minikern svg{overflow:hidden}
.schritte,.profil{padding-left:0;margin-top:0}
.person figure img{object-position:50% 80%}
@media (max-width:1023px){
  .probe{display:contents}
  .probe-bild{order:5}
  .kern{order:6}
  .probe-text{order:7;padding-top:14px}
  .hero-eck{order:8}
  .kern-quer button{font-size:.74rem;letter-spacing:-.01em}
}
@media (max-width:700px){.treff figcaption{grid-template-columns:1fr}}
.minikern svg{flex:1;height:auto;min-height:300px}
@media (max-width:1023px){.minikern svg{min-height:0;height:260px;flex:none}}
@media (max-width:700px){
  .galerie{grid-template-columns:1fr}
  .g-a,.g-b,.g-c,.g-d,.g-e{grid-column:1/-1;aspect-ratio:4/3}
  .tour-kopf{grid-template-columns:40px minmax(0,1fr);gap:16px}
  .tour-kopf h1{font-size:1.9rem}
  .minikern svg{width:30px;height:220px}
}
@media (max-width:1023px){
  .hero-text>div:first-child{display:contents}
  .hero h1{order:1}.hero-satz{order:2;margin:18px 0 22px}
  .kern{order:3}
  .kern-quer{margin:0 0 14px}
  .kern-quer ol{margin-bottom:0}
  .kern-quer p{display:none}
  .probe-bild{order:4;aspect-ratio:3/2}
  .probe-text{order:5;margin-bottom:28px}
  .hero-lauf{order:6}
  .hero-aktion{order:7;margin-bottom:0}
  .hero-eck{order:8}
}
.tour-kopf{grid-template-columns:76px minmax(0,6fr) minmax(0,6fr)}
.tour-kopf h1{font-size:clamp(2rem,3.1vw,3.1rem)}
@media (max-width:1023px){.tour-kopf{grid-template-columns:56px minmax(0,1fr)}}
@media (max-width:700px){.tour-kopf{grid-template-columns:40px minmax(0,1fr)}.tour-kopf h1{font-size:1.9rem}}
