:root{--tief:#0F5257;--tief2:#0B3D41;--sand:#E0A93B;--tinte:#1F2937;--grau:#5B6472;--linie:#E2E5E9;--papier:#FBFAF7;--flaeche:#EEF4F4}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--tinte);background:var(--papier)}
img{max-width:100%;height:auto;display:block}a{color:var(--tief)}a:hover{color:var(--tief2)}
:focus-visible{outline:3px solid var(--sand);outline-offset:2px}
.sprung{position:absolute;left:-999px}.sprung:focus{left:16px;top:8px;background:#fff;padding:8px 12px;z-index:9}
.breit{max-width:1120px;margin:0 auto;padding:0 16px}.schmal{max-width:760px}
section{margin:56px auto}
h1{font-size:clamp(30px,5vw,46px);line-height:1.12;color:var(--tief2);margin:0 0 16px;letter-spacing:-.01em}
h2{font-size:clamp(22px,3vw,28px);color:var(--tief2);margin:0 0 14px;line-height:1.2}h3{font-size:20px;margin:0 0 8px;color:var(--tief2)}
.gross{font-size:19px}.klein{font-size:14px;color:var(--grau)}.vorzeile{font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--tief)}
.kopf{background:#fff;border-bottom:1px solid var(--linie);position:sticky;top:0;z-index:5}
.kopf .breit{display:flex;align-items:center;justify-content:space-between;min-height:64px;gap:16px}
.kopf nav a{margin-left:18px;text-decoration:none;font-weight:600;font-size:15px;display:inline-block;padding:10px 0}
.kopfrechts{display:flex;align-items:center;gap:14px}
.sprachwahl{margin:0;display:flex;gap:4px;font-size:14px;font-weight:700}
.sprachwahl a,.sprachwahl .aktiv{display:inline-block;min-width:36px;min-height:36px;line-height:34px;text-align:center;border-radius:6px;text-decoration:none;border:1px solid var(--linie)}
.sprachwahl .aktiv{background:var(--tief);color:#fff;border-color:var(--tief)}
.kunde{border:1px solid var(--linie);border-radius:10px;background:#fff;padding:14px 16px;margin:0 0 16px}
.kunde legend{font-weight:700;padding:0 6px}
.bestellung select{display:block;width:100%;font:inherit;padding:10px 12px;border:1px solid #9AA3AE;border-radius:8px;margin-top:6px;min-height:44px;background:#fff}
.feldtitel{font-weight:600;margin:4px 0 6px}
.wahl{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 8px}
.bestellung .wahl .option{display:flex;gap:8px;align-items:center;font-weight:400;margin:0;min-height:44px}
.wahl input{width:20px;height:20px;accent-color:var(--tief)}
.fehler p{margin:0 0 6px}
.held{background:linear-gradient(180deg,#fff,var(--papier));margin:0;padding:48px 0 24px}
.heldraster{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
.heldbild{border-radius:12px;box-shadow:0 18px 40px rgba(15,82,87,.18)}
.knopf{display:inline-block;background:var(--tief);color:#fff;text-decoration:none;font-weight:700;padding:12px 20px;border-radius:8px;border:0;font-size:16px;cursor:pointer;min-height:44px;margin:4px 8px 4px 0}
.knopf:hover{background:var(--tief2);color:#fff}.knopf.gross{font-size:18px;padding:14px 24px}
.knopf.hell{background:#fff;color:var(--tief);box-shadow:inset 0 0 0 2px var(--tief)}
.knopf[disabled]{opacity:.55;cursor:not-allowed}
[hidden]{display:none!important}.hinweiskasten a[data-zahlart]{display:block;margin:6px 0}
ul.haken{list-style:none;padding:0}ul.haken li{padding-left:28px;position:relative;margin:6px 0}
ul.haken li:before{content:"";position:absolute;left:4px;top:7px;width:12px;height:7px;border-left:3px solid var(--sand);border-bottom:3px solid var(--sand);transform:rotate(-45deg)}
.band{background:var(--tief);color:#E8F1F1;margin:0;padding:36px 0}.band b{color:#fff;font-size:18px}.band p{margin:6px 0 0}
.drei{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.zwei{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.karten{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.karte{background:#fff;border:1px solid var(--linie);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.karte img{aspect-ratio:16/9;object-fit:cover;object-position:top;border-bottom:1px solid var(--linie)}
.kartentext{padding:18px 20px 22px;display:flex;flex-direction:column;flex:1}.kartentext p{margin:0 0 12px}
.kartentext .knopf{margin-top:auto;align-self:flex-start}
.preis{font-size:28px;font-weight:800;color:var(--tief2)}.preis span{display:block;font-size:13px;font-weight:400;color:var(--grau)}
.schritte{padding-left:22px}.schritte li{margin:0 0 14px}.schritte b{display:block}
.ehrlich{background:#fff;border:1px solid var(--linie);border-left:5px solid var(--sand);border-radius:10px;padding:24px}
details{background:#fff;border:1px solid var(--linie);border-radius:10px;margin:0 0 10px;padding:0 18px}
summary{cursor:pointer;font-weight:700;padding:14px 0;min-height:44px}details p{margin:0 0 16px}
.produktkopf{display:grid;grid-template-columns:1fr 320px;gap:32px;align-items:start}.produktkopf .vorzeile,.produktkopf h1,.produktkopf .gross{grid-column:1}
.kaufkasten{grid-column:2;grid-row:1/span 3;background:#fff;border:1px solid var(--linie);border-radius:12px;padding:22px;position:sticky;top:84px}
.galerie{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.galerie figure{margin:0;background:#fff;border:1px solid var(--linie);border-radius:10px;overflow:hidden}
.galerie img{aspect-ratio:16/10;object-fit:cover;object-position:top}.galerie figcaption{font-size:14px;color:var(--grau);padding:10px 14px}
.dateien{columns:2;font-size:14px;font-family:ui-monospace,Menlo,Consolas,monospace;padding-left:18px}.dateien li{break-inside:avoid;margin:0 0 4px}
.uebersicht{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--linie);border-radius:10px;margin:0 0 18px}
.uebersicht th{text-align:left;width:34%;padding:12px 14px;border-bottom:1px solid var(--linie);color:var(--grau);font-weight:600;vertical-align:top}
.uebersicht td{padding:12px 14px;border-bottom:1px solid var(--linie)}.uebersicht .summe th,.uebersicht .summe td{background:var(--flaeche);font-size:18px}
.haken-pflicht{display:flex;gap:12px;align-items:flex-start;background:#fff;border:2px solid var(--sand);border-radius:10px;padding:14px;margin:16px 0}
.bestellung .haken-pflicht{display:flex;font-weight:400}.haken-pflicht input{width:24px;height:24px;flex:0 0 24px;margin-top:2px;accent-color:var(--tief)}
.bestellung label{display:block;font-weight:600;margin:0 0 14px}.bestellung input[type=text],.bestellung input[type=email]{display:block;width:100%;font:inherit;padding:10px 12px;border:1px solid #9AA3AE;border-radius:8px;margin-top:6px;min-height:44px}
.fehler{color:#9B1C1C;font-weight:700}.hinweiskasten{background:#FBF6EA;border-left:4px solid var(--sand);padding:12px 16px}
.buendel{background:var(--flaeche);border-left:4px solid var(--tief);padding:12px 16px;margin:16px 0 0;font-size:15px;overflow-wrap:break-word}.buendel a{font-weight:700;color:var(--tief2)}.buendel-zeile{font-weight:700;color:var(--tief2)}
.schritt2{background:#fff;border:2px solid var(--tief);border-radius:12px;padding:22px;margin-top:24px}
.mailtext{white-space:pre-wrap;background:var(--flaeche);padding:14px;border-radius:8px;font-size:13px}
.text h2{font-size:20px;margin-top:28px}.entwurf{background:#FFF4C2;padding:6px 10px;border-radius:6px;display:inline-block;font-size:14px}
.versteckt{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.formular{background:#fff;border:1px solid var(--linie);padding:18px;border-radius:10px}
.fuss{background:var(--tief2);color:#D5E3E3;padding:40px 0 24px;margin-top:72px}.fuss a{color:#fff;display:block;margin:4px 0}
.fuss b{color:#fff}.fuss .klein{color:#A9C2C2;margin-top:24px}.fuss p a{display:inline}
.fussspalten{display:grid;grid-template-columns:1.3fr 1fr 1.2fr;gap:28px}.fuss img{margin-bottom:10px}
@media (max-width:860px){.heldraster,.zwei,.drei,.karten,.produktkopf,.fussspalten{grid-template-columns:1fr}
.kaufkasten{grid-column:1;grid-row:auto;position:static}.produktkopf{gap:0}.kaufkasten .preis{margin-top:0}.galerie{grid-template-columns:1fr}.dateien{columns:1}.kopf nav a{margin-left:12px}}
@media (max-width:480px){.kopf .breit{flex-wrap:wrap;padding-top:8px;padding-bottom:8px}.logo img{width:150px}.kopfrechts{gap:8px}.kopf nav a{margin-left:8px}}

.pakete-oben{margin-top:28px;margin-bottom:28px}.paketkarte{border:2px solid var(--tief)}.paket-spar{font-weight:700;color:var(--tief2)}.paketliste{margin:0 0 14px;padding-left:20px;font-size:15px}.paketliste li{margin:2px 0}.paketknoepfe{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto!important}.paketknoepfe .knopf{margin-top:0}
.kopfsuche{display:flex;gap:6px;margin:0}.kopfsuche input{font:inherit;font-size:15px;padding:7px 10px;border:1px solid #9AA3AE;border-radius:8px;min-height:40px;width:170px;background:#fff}
.kopfsuche button{font:inherit;font-size:14px;font-weight:700;background:var(--tief);color:#fff;border:0;border-radius:8px;padding:0 12px;min-height:40px;cursor:pointer}
.kopfsuche button:hover{background:var(--tief2)}
.nur-lesen{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.suchform{background:#fff;border:1px solid var(--linie);border-radius:12px;padding:18px;margin:0 0 18px}
.suchform label{display:block;font-weight:700;margin:0 0 8px}.suchzeile{display:flex;gap:10px;flex-wrap:wrap}
.suchzeile input{flex:1 1 240px;font:inherit;padding:10px 12px;border:2px solid #9AA3AE;border-radius:8px;min-height:48px;background:#fff}
.suchzeile .knopf{margin:0}
.kategorien{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.kategorie{background:#fff;border:1px solid var(--linie);border-top:5px solid var(--sand);border-radius:12px;padding:18px 20px;display:flex;flex-direction:column}
.kategorie h3{margin:0 0 6px}.kategorie p{margin:0 0 10px}.kategorie .zahl{font-size:14px;color:var(--grau);margin-top:auto}
.kategorie a.ganz{color:var(--tief2);font-weight:700;text-decoration:none}.kategorie a.ganz:hover{text-decoration:underline}
.kategorie a.ganz:focus-visible{outline:3px solid var(--sand)}
.seiten{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:28px 0 0}
.seiten a,.seiten span{display:inline-block;min-width:44px;min-height:44px;line-height:42px;text-align:center;border:1px solid var(--linie);border-radius:8px;text-decoration:none;font-weight:700;padding:0 12px;background:#fff}
.seiten [aria-current]{background:var(--tief);color:#fff;border-color:var(--tief)}.seiten .aus{color:var(--grau);font-weight:400}
.schnell{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}.schnell a{border:1px solid var(--linie);background:#fff;border-radius:999px;padding:8px 14px;text-decoration:none;font-weight:600;font-size:15px}
.schnell a[aria-current]{background:var(--tief);color:#fff;border-color:var(--tief)}
.kartentext .zeile{font-size:13px;color:var(--grau)}
.karten.vier{grid-template-columns:repeat(4,1fr)}
@media (max-width:860px){.kategorien,.karten.vier{grid-template-columns:1fr}.kopfsuche{width:100%}.kopfsuche input{flex:1;width:auto}.kopf .breit{flex-wrap:wrap;padding-top:8px;padding-bottom:8px}}
@media (min-width:861px) and (max-width:1100px){.kopfsuche input{width:120px}}
