/* Angelas Ferienland – Design „Gezeiten“ (Entwurf B) für YOOtheme.
   Wirkt nur auf Abschnitte und Elemente mit den Klassen afl-gz… (im YOOtheme Builder unter „Erweitert › Klasse“)
   und auf die Lodgify-Bausteine. Kopf- und Fußzeile des Themes bleiben unverändert.
   Schriften: Bricolage Grotesque und Geist, SIL Open Font License, liegen im Plugin. */
@font-face{font-family:"Bricolage Grotesque";src:url("fonts/bricolage.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:"Geist";src:url("fonts/geist.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

.afl-gz,.afl.afl-design-gezeiten{
  --gz-sand:#F5F2EC; --gz-papier:#FFFFFF; --gz-tinte:#17201D; --gz-grau:#5A635F; --gz-linie:#E2DCD2;
  --gz-gruen:#1D6A61; --gz-gruen-hell:#DCEDE9; --gz-gold:#7A6238; --gz-watt:#10302B; --gz-watt-text:#E7E2D8;
  --gz-titel:"Bricolage Grotesque","Avenir Next","Segoe UI",system-ui,sans-serif;
  --gz-text:"Geist","Segoe UI",system-ui,-apple-system,sans-serif;
  --gz-rund:22px; --gz-rund-klein:12px;
  --gz-schatten:0 1px 2px rgb(23 32 29 / .05), 0 12px 32px rgb(23 32 29 / .08);
}

/* ---------- Grundlage für jeden Gezeiten-Abschnitt ---------- */
.uk-section.afl-gz,.afl-gz.uk-section-default,.afl-gz.uk-section-muted{background:var(--gz-sand);color:var(--gz-tinte)}
.afl-gz{font-family:var(--gz-text);font-size:16.5px;line-height:1.6;-webkit-font-smoothing:antialiased}
.afl-gz h1,.afl-gz h2,.afl-gz h3,.afl-gz h4,.afl-gz .uk-h1,.afl-gz .uk-h2,.afl-gz .uk-h3{font-family:var(--gz-titel);color:var(--gz-tinte);font-weight:650;letter-spacing:-.025em;line-height:1.05;text-wrap:balance;text-transform:none}
.afl-gz .uk-panel p,.afl-gz .el-content{color:var(--gz-grau)}
.afl-gz a:not(.uk-button):not(.afl-knopf):not(.afl-karte){color:var(--gz-gruen)}
.afl-gz .uk-button{font-family:var(--gz-text);text-transform:none;letter-spacing:0;font-weight:600;font-size:.95rem;border-radius:999px;padding:0 1.5em;line-height:48px;transition:transform .18s,background-color .18s}
.afl-gz .uk-button:hover{transform:translateY(-2px)}
.afl-gz .uk-button-primary{background:var(--gz-gruen);color:#fff;border:0}
.afl-gz .uk-button-primary:hover{background:#17574F;color:#fff}
.afl-gz .uk-button-default,.afl-gz .uk-button-secondary{background:var(--gz-papier);color:var(--gz-tinte);border:1px solid var(--gz-linie)}
.afl-gz .uk-button-text{color:var(--gz-gruen);font-weight:600}

/* Kleine Überschrift über dem Titel („— UNSERE UNTERKÜNFTE“) */
.afl-gz-augenbraue p,.afl-gz-augenbraue{font-size:.78rem!important;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gz-gold)!important;margin:0}
.afl-gz-augenbraue p{display:flex;align-items:center;gap:10px}
.afl-gz-augenbraue p::before{content:"";width:22px;height:1.5px;background:currentColor;flex-shrink:0}
.afl-gz-augenbraue + *{margin-top:12px!important}

/* Titel */
.afl-gz .afl-gz-titel{font-size:clamp(3.2rem,8.6vw,8.4rem);letter-spacing:-.045em;line-height:.88;font-weight:700;margin:0}
.afl-gz .afl-gz-titel em{display:block;font-style:normal;color:var(--gz-gruen)}
.afl-gz .afl-gz-seitentitel{font-size:clamp(2.6rem,7vw,5.2rem);letter-spacing:-.04em;line-height:.95;font-weight:700;margin:0}
.afl-gz .afl-gz-h2{font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.02}
.afl-gz-lead p{font-size:1.1rem;color:var(--gz-grau);max-width:46ch}
.afl-gz-kopfzeile{align-items:flex-end}

/* Großes Küstenfoto mit schwebender Suche */
.afl-gz-foto{margin-top:0!important}
.afl-gz-foto img{width:100%;aspect-ratio:21/9;object-fit:cover;border-radius:clamp(20px,3vw,36px);background:var(--gz-linie)}
@media (max-width:760px){ .afl-gz-foto img{aspect-ratio:4/3} }
.afl-gz-schwebend{position:relative;z-index:2;margin:-46px auto 0!important;width:min(1000px,calc(100% - 24px))}
.afl-gz-schwebend .afl .afl-suchbox{background:rgb(255 255 255 / .74);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border-color:rgb(226 220 210 / .7)}
@media (max-width:980px){ .afl-gz-schwebend{margin-top:-30px!important} }

/* ---------- Kacheln (Bento) ---------- */
.afl-gz-kacheln > div{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-areas:"a b c c" "d b e e";grid-auto-rows:minmax(180px,auto);gap:16px;margin:0!important}
.afl-gz-kacheln > div > *{padding:0!important;margin:0!important;width:auto!important;max-width:none!important}
.afl-gz-kacheln > div > :nth-child(1){grid-area:a} .afl-gz-kacheln > div > :nth-child(2){grid-area:b}
.afl-gz-kacheln > div > :nth-child(3){grid-area:c} .afl-gz-kacheln > div > :nth-child(4){grid-area:d}
.afl-gz-kacheln > div > :nth-child(5){grid-area:e} .afl-gz-kacheln > div > :nth-child(n+6){grid-column:span 2}
.afl-gz-kacheln .el-item,.afl-gz-kontakt .el-item{position:relative;height:100%;box-sizing:border-box;border-radius:var(--gz-rund);background:var(--gz-papier);border:1px solid var(--gz-linie);padding:24px;display:flex;flex-direction:column;justify-content:space-between;gap:10px;overflow:hidden}
.afl-gz-kacheln .el-item > *,.afl-gz-kontakt .el-item > *{margin:0!important}
.afl-gz-kacheln .el-meta,.afl-gz-kontakt .el-meta{order:-1;font-family:var(--gz-text);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gz-gold)}
.afl-gz-kacheln .el-title{font-size:1.35rem;line-height:1.15}
.afl-gz-kacheln .el-content{font-size:.94rem}
.afl-gz-kacheln > div > :nth-child(1) .el-title,.afl-gz-kacheln > div > :nth-child(5) .el-title{font-size:clamp(3.4rem,7vw,5.6rem);font-weight:700;letter-spacing:-.05em;line-height:.9;margin-top:auto!important}
.afl-gz-kacheln > div > :nth-child(3) .el-item{background:var(--gz-gruen);border:0;justify-content:flex-end}
.afl-gz-kacheln > div > :nth-child(3) .el-title{color:#fff;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:650}
.afl-gz-kacheln > div > :nth-child(3) .el-meta{color:rgb(255 255 255 / .8)}
.afl-gz-kacheln > div > :nth-child(3) .el-content p{color:rgb(255 255 255 / .85)}
/* Kachel mit Foto: Bild als Hintergrund, Text unten */
.afl-gz-kacheln .el-item:has(.el-image),.afl-gz-region .el-item{justify-content:flex-end;border:0;padding:22px;color:#fff;min-height:300px}
.afl-gz-kacheln .el-item .el-image,.afl-gz-region .el-item .el-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;margin:0!important;max-width:none;transition:transform .6s}
.afl-gz-kacheln .el-item:has(.el-image)::after,.afl-gz-region .el-item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgb(8 16 14 / .8))}
.afl-gz-kacheln .el-item:has(.el-image) > :not(.el-image),.afl-gz-region .el-item > :not(.el-image){position:relative;z-index:1}
.afl-gz-kacheln .el-item:has(.el-image) .el-title,.afl-gz-region .el-title{color:#fff;font-size:1.3rem}
.afl-gz-kacheln .el-item:has(.el-image) .el-content p,.afl-gz-region .el-content p{color:rgb(255 255 255 / .86);font-size:.92rem}
.afl-gz-kacheln .el-item:has(.el-image) .el-meta,.afl-gz-region .el-meta{color:rgb(255 255 255 / .8)}
@media (max-width:980px){ .afl-gz-kacheln > div{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"a b" "d b" "c c" "e e"} }
@media (max-width:560px){ .afl-gz-kacheln > div{grid-template-columns:1fr;grid-template-areas:"a" "b" "c" "d" "e"} .afl-gz-kacheln > div > :nth-child(n+6){grid-column:auto} }

/* ---------- Ablauf 1-2-3 ---------- */
.afl-gz-ablauf > div{position:relative;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:28px 0 0!important;counter-reset:gzschritt}
.afl-gz-ablauf > div::before{content:"";position:absolute;top:21px;left:6%;right:6%;height:2px;background:repeating-linear-gradient(90deg,var(--gz-linie) 0 10px,transparent 10px 18px)}
.afl-gz-ablauf > div > *{padding:0!important;margin:0!important;width:auto!important;max-width:none!important}
.afl-gz-ablauf .el-item{position:relative;display:grid;gap:10px;align-content:start}
.afl-gz-ablauf .el-item > *{margin:0!important}
.afl-gz-ablauf .el-item::before{counter-increment:gzschritt;content:counter(gzschritt);width:44px;height:44px;border-radius:50%;background:var(--gz-gruen);color:#fff;display:grid;place-items:center;font-family:var(--gz-titel);font-weight:700;font-size:1.1rem;box-shadow:0 0 0 8px var(--gz-sand)}
.afl-gz-ablauf .el-title{font-size:1.3rem}
@media (max-width:820px){ .afl-gz-ablauf > div{grid-template-columns:1fr} .afl-gz-ablauf > div::before{display:none} }

/* ---------- Region als Wischstreifen ---------- */
.afl-gz-region > div{display:grid!important;grid-auto-flow:column;grid-auto-columns:min(78%,380px);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:14px;margin:0!important;scrollbar-width:thin}
.afl-gz-region > div > *{padding:0!important;margin:0!important;width:auto!important;max-width:none!important;scroll-snap-align:start}
.afl-gz-region .el-item{position:relative;height:100%;box-sizing:border-box;min-height:420px;border-radius:var(--gz-rund);overflow:hidden;display:flex;flex-direction:column;gap:6px;background:var(--gz-linie)}
.afl-gz-region .el-item > *{margin:0!important}
.afl-gz-region .el-item:hover .el-image{transform:scale(1.03)}
.afl-gz-streifen-knoepfe{display:flex;gap:8px;margin-top:18px}
.afl-gz-streifen-knoepfe button{width:46px;height:46px;border-radius:50%;border:1px solid var(--gz-linie);background:var(--gz-papier);cursor:pointer;font-size:1.2rem;color:var(--gz-tinte);display:grid;place-items:center;padding:0}

/* ---------- Dunkle Bande „Für Eigentümer“ ---------- */
.afl-gz-bande > .uk-container{background:var(--gz-watt);color:var(--gz-watt-text);border-radius:clamp(24px,4vw,44px);padding:clamp(36px,6vw,80px) clamp(24px,5vw,72px)}
.afl-gz-bande h1,.afl-gz-bande h2,.afl-gz-bande h3{color:#fff}
.afl-gz-bande .uk-panel p,.afl-gz-bande .el-content{color:rgb(231 226 216 / .85)}
.afl-gz-bande .afl-gz-augenbraue p{color:#D9C08F!important}
.afl-gz-haken{list-style:none;padding:0;margin:0}
.afl-gz-haken > li{position:relative;padding:14px 0 14px 34px!important;margin:0!important;border-bottom:1px solid var(--gz-linie)}
.afl-gz-bande .afl-gz-haken > li{border-bottom-color:rgb(255 255 255 / .12)}
.afl-gz-haken > li::before{content:"";position:absolute;left:0;top:17px;width:20px;height:20px;background:var(--gz-gruen);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat}
.afl-gz-bande .afl-gz-haken > li::before{background:#7FD3C4}
.afl-gz-bande .afl-gz-haken .el-content{color:var(--gz-watt-text)}

/* ---------- Partner ---------- */
.afl-gz-partner{display:flex;flex-wrap:wrap;align-items:center;gap:12px 40px}
.afl-gz-partner p{margin:0!important;font-family:var(--gz-titel);font-size:1.15rem;font-weight:500;color:var(--gz-grau)}
.afl-gz-partner p:first-child{font-family:var(--gz-text);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gz-gold);display:flex;align-items:center;gap:10px}
.afl-gz-partner p:first-child::before{content:"";width:22px;height:1.5px;background:currentColor}

/* ---------- Fragen zum Aufklappen ---------- */
.afl-gz-faq{border-top:1px solid var(--gz-linie)}
.afl-gz-faq > .el-item{border-bottom:1px solid var(--gz-linie);padding:20px 4px;margin:0!important}
.afl-gz-faq .el-title{font-family:var(--gz-titel);font-size:1.2rem;font-weight:600;color:var(--gz-tinte)!important;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0;text-decoration:none}
.afl-gz-faq .el-title::before{display:none!important}
.afl-gz-faq .el-title::after{content:"+";font-family:var(--gz-text);font-weight:400;font-size:1.6rem;line-height:1;color:var(--gz-gruen);transition:transform .2s;flex-shrink:0}
.afl-gz-faq .uk-open > .el-title::after{transform:rotate(45deg)}
.afl-gz-faq .uk-accordion-content{margin-top:12px}
.afl-gz-faq .el-content p{max-width:70ch}

/* ---------- Kontakt ---------- */
.afl-gz-kontakt-haupt > div > *{width:100%!important}
.afl-gz-kontakt-haupt .el-item{padding:clamp(24px,4vw,44px);justify-content:flex-start;gap:16px}
.afl-gz-kontakt-haupt .el-title{font-size:clamp(2rem,4.4vw,3.2rem);font-weight:650;letter-spacing:-.03em;line-height:1.02}
.afl-gz-kontakt-haupt .el-content a[href^="tel"]{display:inline-block;font-family:var(--gz-titel);font-size:clamp(2.2rem,5.5vw,4rem);font-weight:700;letter-spacing:-.035em;line-height:1;color:var(--gz-tinte)!important;text-decoration:none;margin-bottom:10px}
.afl-gz-kontakt-haupt .el-link{align-self:flex-start}
.afl-gz-kontaktkarten > div{gap:12px;margin:0!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.afl-gz-kontaktkarten > div > *{padding:0!important;margin:0!important;width:auto!important;max-width:none!important}
.afl-gz-kontaktkarten .el-item{padding:18px;border-radius:var(--gz-rund-klein);justify-content:flex-start;gap:6px}
.afl-gz-kontaktkarten .el-content p,.afl-gz-kontaktkarten .el-content a{color:var(--gz-tinte)!important;font-weight:600;text-decoration:none;overflow-wrap:anywhere}
.afl-gz-kontaktkarten .el-title{font-size:1rem;font-family:var(--gz-text);font-weight:600;letter-spacing:0}

/* ---------- Lodgify-Bausteine im Gezeiten-Design ---------- */
.afl.afl-design-gezeiten{--afl-flaeche:var(--gz-sand);--afl-papier:#fff;--afl-tinte:var(--gz-tinte);--afl-grau:var(--gz-grau);--afl-linie:var(--gz-linie);--afl-rund:22px;font-family:var(--gz-text)}
.afl.afl-design-gezeiten .afl-name,.afl.afl-design-gezeiten .afl-karte-name,.afl.afl-design-gezeiten .afl-inhalt h2,.afl.afl-design-gezeiten .afl-aehnlich-titel,.afl.afl-design-gezeiten .afl-preis b,.afl.afl-design-gezeiten .afl-preis-pille b{font-family:var(--gz-titel)}
.afl.afl-design-gezeiten .afl-name{font-size:clamp(2.6rem,7vw,5.4rem);letter-spacing:-.04em;font-weight:700;line-height:.95}
.afl.afl-design-gezeiten .afl-karte-name{font-size:1.32rem;font-weight:650;letter-spacing:-.02em}
.afl.afl-design-gezeiten .afl-inhalt h2,.afl.afl-design-gezeiten .afl-aehnlich-titel{font-weight:650;letter-spacing:-.025em}
.afl.afl-design-gezeiten .afl-augenbraue{color:var(--gz-gold)}
.afl.afl-design-gezeiten .afl-fotos img{transition:transform .5s}
.afl.afl-design-gezeiten .afl-karte:hover .afl-fotos img{transform:scale(1.03)}

/* ---------- Kopf- und Fußzeile im Gezeiten-Design (ersetzt die YOOtheme-Kopf- und Fußzeile) ---------- */
body.afl-gezeiten-seite{background:#F5F2EC}
body.afl-gezeiten-seite .tm-header,body.afl-gezeiten-seite .tm-header-mobile,body.afl-gezeiten-seite .tm-toolbar,body.afl-gezeiten-seite .tm-page > footer,body.afl-gezeiten-seite #afl-fuss-start ~ *{display:none!important}
.afl-gz-rahmen{--gz-sand:#F5F2EC;--gz-papier:#fff;--gz-tinte:#17201D;--gz-grau:#5A635F;--gz-linie:#E2DCD2;--gz-gruen:#1D6A61;--gz-titel:"Bricolage Grotesque","Avenir Next","Segoe UI",system-ui,sans-serif;--gz-text:"Geist","Segoe UI",system-ui,-apple-system,sans-serif;font-family:var(--gz-text);color:var(--gz-tinte);-webkit-font-smoothing:antialiased;box-sizing:border-box}
.afl-gz-rahmen *{box-sizing:border-box}
.afl-gz-rahmen .afl-huelle{max-width:1240px;margin-inline:auto;padding-inline:max(20px,env(safe-area-inset-left,0px))}
.afl-gz-rahmen a{color:inherit;text-decoration:none}
.afl-gz-rahmen svg{width:20px;height:20px}
.afl-kopf{position:sticky;top:0;z-index:980;background:color-mix(in srgb,#F5F2EC 86%,transparent);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);border-bottom:1px solid var(--gz-linie)}
.admin-bar .afl-kopf{top:32px}
@media (max-width:782px){ .admin-bar .afl-kopf{top:0} }
.afl-kopf-innen{position:relative;display:flex;align-items:center;gap:18px;min-height:76px}
.afl-marke{display:flex;align-items:center;flex-shrink:0}
.afl-marke img{height:54px;width:auto;display:block}
.afl-marke b{font-family:var(--gz-titel);font-size:1.1rem}
.afl-navi{display:flex;gap:4px;margin-inline:auto;flex-wrap:wrap;justify-content:center}
.afl-navi a{padding:.5em .9em;border-radius:999px;font-size:.93rem;font-weight:500;color:var(--gz-grau);transition:background .15s,color .15s}
.afl-navi a:hover{color:var(--gz-tinte);background:var(--gz-papier)}
.afl-navi a[aria-current="page"]{color:var(--gz-tinte);background:var(--gz-papier);box-shadow:inset 0 0 0 1px var(--gz-linie)}
.afl-kopf-rechts{display:flex;gap:8px;align-items:center}
.afl-rund{width:44px;height:44px;border-radius:50%;border:1px solid var(--gz-linie);background:var(--gz-papier);display:grid;place-items:center}
.afl-rund svg{width:18px;height:18px}
.afl-kopf-knopf{background:var(--gz-gruen);color:#fff!important;border-radius:999px;padding:.75em 1.3em;font-weight:600;font-size:.95rem;white-space:nowrap;transition:transform .18s}
.afl-kopf-knopf:hover{transform:translateY(-2px)}
.afl-menue-knopf{display:none;background:var(--gz-papier);border:1px solid var(--gz-linie);border-radius:50%;width:44px;height:44px;cursor:pointer;place-items:center;padding:0;color:var(--gz-tinte)}
@media (max-width:1060px){
  .afl-navi{display:none;position:absolute;left:12px;right:12px;top:calc(100% + 6px);flex-direction:column;background:var(--gz-papier);border:1px solid var(--gz-linie);border-radius:22px;padding:10px;box-shadow:0 12px 32px rgb(23 32 29 / .12)}
  .afl-navi.offen{display:flex}
  .afl-navi a{padding:.85em 1em;font-size:1.05rem}
  .afl-menue-knopf{display:grid}
  .afl-kopf-rechts{margin-left:auto}
  .afl-kopf-knopf{display:none}
}
@media (max-width:520px){ .afl-marke img{height:44px} .afl-rund{display:none} }
.afl-fuss{background:var(--gz-papier);border-top:1px solid var(--gz-linie);padding-block:64px 30px;margin-top:clamp(40px,6vw,80px)}
.afl-fuss-raster{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
.afl-fuss h4{font-family:var(--gz-text);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;color:var(--gz-grau);font-weight:600}
.afl-fuss a{display:block;padding:4px 0;font-size:.95rem}
.afl-fuss a:hover{color:var(--gz-gruen)}
.afl-fuss p{margin:12px 0 0;font-size:.9rem;color:var(--gz-grau);line-height:1.6}
.afl-fuss .afl-klein{font-size:.84rem}
.afl-logo-fuss{height:110px;width:auto;display:block}
.afl-wortmarke{font-family:var(--gz-titel);font-weight:700;letter-spacing:-.055em;font-size:clamp(3rem,13vw,11.5rem);line-height:.85;color:var(--gz-linie);margin-top:46px;white-space:nowrap;overflow:hidden}
.afl-fuss-unten{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:22px;font-size:.84rem;color:var(--gz-grau)}
.afl-fuss-unten a{display:inline;margin-left:18px;padding:0;font-size:inherit}
@media (max-width:860px){ .afl-fuss-raster{grid-template-columns:1fr 1fr} }
@media (max-width:480px){ .afl-fuss-raster{grid-template-columns:1fr} }
.afl-whatsapp{position:fixed;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:990;background:#1F9D55;color:#fff!important;border-radius:999px;width:56px;height:56px;display:grid;place-items:center;box-shadow:0 8px 24px rgb(0 0 0 / .2)}
.afl-whatsapp svg{width:26px;height:26px}
@media (max-width:1020px){ body:has(.afl-buchleiste) .afl-whatsapp{bottom:calc(88px + env(safe-area-inset-bottom,0px))} }

/* ---------- Normale Textseiten im Gezeiten-Rahmen (Impressum, Datenschutz) ---------- */
body.afl-gz-textseite .tm-main{background:#F5F2EC;color:#17201D;font-family:"Geist","Segoe UI",system-ui,sans-serif;font-size:16.5px;line-height:1.65;padding-block:clamp(40px,6vw,80px)}
body.afl-gz-textseite .tm-main .uk-container{max-width:820px}
body.afl-gz-textseite .tm-main h1,body.afl-gz-textseite .tm-main h2,body.afl-gz-textseite .tm-main h3,body.afl-gz-textseite .tm-main h4{font-family:"Bricolage Grotesque","Segoe UI",sans-serif;color:#17201D;font-weight:650;letter-spacing:-.02em;line-height:1.15;text-transform:none}
body.afl-gz-textseite .tm-main h1{font-size:clamp(2.4rem,6vw,4.2rem);letter-spacing:-.04em;font-weight:700;line-height:1;margin-bottom:.6em}
body.afl-gz-textseite .tm-main h2{font-size:clamp(1.4rem,2.6vw,1.9rem);margin-top:1.6em}
body.afl-gz-textseite .tm-main h3{font-size:1.25rem;margin-top:1.4em}
body.afl-gz-textseite .tm-main p,body.afl-gz-textseite .tm-main li{color:#3F4743}
body.afl-gz-textseite .tm-main a{color:#1D6A61}
body.afl-gz-textseite .tm-main hr{border-color:#E2DCD2}
/* Seitentitel mit grüner zweiter Zeile */
.afl-gz .afl-gz-seitentitel em{font-style:normal;color:var(--gz-gruen)}
/* Einfache Karten */
.afl-gz-karten > div{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:0!important}
.afl-gz-karten > div > *{padding:0!important;margin:0!important;width:auto!important;max-width:none!important}
.afl-gz-karten .el-item{height:100%;box-sizing:border-box;background:var(--gz-papier);border:1px solid var(--gz-linie);border-radius:var(--gz-rund);padding:24px;display:flex;flex-direction:column;gap:10px}
.afl-gz-karten .el-item > *{margin:0!important}
.afl-gz-karten .el-meta{order:-1;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gz-gold)}
.afl-gz-karten .el-title{font-size:1.3rem}
/* Karten mit Logo (Partner) */
.afl-gz-karten .el-item{position:relative}
.afl-gz-karten .el-image{order:-2;width:100%;height:132px;object-fit:contain;box-sizing:border-box;padding:20px 28px;background:#fff;border:1px solid var(--gz-linie);border-radius:16px}
.afl-gz-karten .el-content ul{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.afl-gz-karten .el-content li{margin:0;padding:.35em .8em;border-radius:999px;background:var(--gz-gruen-hell);color:var(--gz-gruen);font-size:.85rem;font-weight:600}
.afl-gz-karten .el-content p + p{margin-top:8px}
.afl-gz-karten .el-item > :last-child:not(.el-image){margin-top:auto!important}
.afl-gz-karten .el-link{margin-top:6px}
@media (min-width:760px){ .afl-gz-karten-2 > div{grid-template-columns:repeat(2,minmax(0,1fr))!important} }
.afl-gz-karten .el-meta,.afl-gz-karten .el-title{font-family:var(--gz-text)} .afl-gz-karten .el-title{font-family:var(--gz-titel)}

/* Flaches Seitenfoto unter dem Seitentitel */
.afl-gz-foto.afl-gz-foto-flach{margin-top:clamp(20px,3vw,40px)!important}
.afl-gz-foto-flach img{aspect-ratio:16/5}
@media (max-width:760px){ .afl-gz-foto-flach img{aspect-ratio:16/10} }

/* YOOtheme legt Bilder in <picture>: Rahmen für das Foto ist die Karte */
.afl-gz-region .el-item > picture,.afl-gz-kacheln .el-item > picture{position:static!important;display:contents}

/* ---------- Ergänzungen 2.4.0 ---------- */
/* Helle Knöpfe auf dunklen Bändern: weiße Schrift auf durchsichtigem Grund (vorher weiß auf weiß) */
.afl-gz-bande .uk-button-default,.afl-gz-bande .uk-button-secondary{background:transparent!important;color:#fff!important;border:1px solid rgb(255 255 255 / .55)!important}
.afl-gz-bande .uk-button-default:hover,.afl-gz-bande .uk-button-secondary:hover{background:rgb(255 255 255 / .12)!important;color:#fff!important}
.afl-gz-bande .uk-button-primary,.afl-gz-bande .uk-button-primary:hover{color:#fff!important}

/* Info-Zeile unter der Suche: vier Punkte auf einen Blick */
.afl-gz-fakten > div{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px 28px;margin:0!important}
.afl-gz-fakten > div > *{padding:0!important;margin:0!important;width:auto!important;max-width:none!important}
.afl-gz-fakten .el-item{position:relative;padding-left:46px}
.afl-gz-fakten .el-item::before{content:"";position:absolute;left:0;top:2px;width:32px;height:32px;border-radius:50%;background:var(--gz-gruen-hell) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231D6A61' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18 8'/%3E%3C/svg%3E") center/18px no-repeat}
.afl-gz-fakten .el-item > *{margin:0!important}
.afl-gz-fakten .el-title{font-family:var(--gz-text);font-size:1rem;font-weight:650;letter-spacing:0;color:var(--gz-tinte)}
.afl-gz-fakten .el-content,.afl-gz-fakten .el-content p{font-size:.92rem;margin:2px 0 0!important}

/* Team: Karten mit Name und Aufgabe; ohne Foto erscheint ein ruhiger Platzhalter */
.afl-gz-team > div{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin:0!important}
.afl-gz-team > div > *{padding:0!important;margin:0!important;width:auto!important;max-width:none!important}
.afl-gz-team .el-item{height:100%;box-sizing:border-box;background:var(--gz-papier);border:1px solid var(--gz-linie);border-radius:var(--gz-rund);overflow:hidden;display:flex;flex-direction:column}
.afl-gz-team .el-item > *{margin:0!important}
.afl-gz-team .el-image{order:-1;width:100%;aspect-ratio:4/5;object-fit:cover}
.afl-gz-team .el-item:not(:has(.el-image))::before{content:"";order:-1;display:block;aspect-ratio:4/5;background:#ECE7DE url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A39B8E' stroke-width='1.3'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4 4-6 8-6s8 2 8 6'/%3E%3C/svg%3E") center/34% no-repeat}
.afl-gz-team .el-title{padding:16px 18px 0;font-size:1.15rem}
.afl-gz-team .el-content{padding:4px 18px 18px;font-size:.9rem;color:var(--gz-grau)}
.afl-gz-team .el-content p{margin:0}

/* Partner-Logos auf der Startseite */
.afl-gz-logos > div{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0!important}
@media (min-width:640px){.afl-gz-logos > div{grid-template-columns:repeat(4,minmax(0,1fr))}}
.afl-gz-logos > div > *{padding:0!important;margin:0!important;width:auto!important;max-width:none!important}
.afl-gz-logos .el-item{height:100%;box-sizing:border-box;background:var(--gz-papier);border:1px solid var(--gz-linie);border-radius:16px;display:grid;place-items:center;padding:18px 22px;min-height:104px;transition:transform .18s,box-shadow .18s}
.afl-gz-logos .el-item:hover{transform:translateY(-2px);box-shadow:var(--gz-schatten)}
.afl-gz-logos .el-image{max-height:64px;width:auto;max-width:100%;object-fit:contain;margin:0!important}
.afl-gz-logos .el-title{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Fragen zum Aufklappen: Schrift des Themes überschreiben, doppeltes Plus des Themes ausblenden */
.afl-gz-faq .el-title.uk-accordion-title{font-family:var(--gz-titel)!important;font-size:1.2rem!important;font-weight:600!important;text-transform:none!important;letter-spacing:-.01em!important}
.afl-gz-faq .uk-accordion-icon{display:none!important}

/* Kurzfristig frei */
.afl-gz-kurz .afl .afl-raster{margin-top:0}

/* Handy: Leiste „Freie Termine finden“ unten */
.afl-mobilleiste{display:none}
@media (max-width:760px){
  body.afl-gezeiten-seite .afl-mobilleiste{display:flex;position:fixed;left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:985;gap:10px}
  .afl-mobilleiste a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border-radius:999px;font-weight:600;font-size:1rem;box-shadow:0 10px 28px rgb(0 0 0 / .18)}
  .afl-mobilleiste .afl-mobil-termine{flex:1;background:var(--gz-gruen);color:#fff}
  .afl-mobilleiste .afl-mobil-tel{width:52px;flex:none;background:#fff;color:var(--gz-tinte);border:1px solid var(--gz-linie)}
  body.afl-gezeiten-seite{padding-bottom:84px}
  body.afl-gezeiten-seite .afl-whatsapp{bottom:calc(78px + env(safe-area-inset-bottom,0px))}
  body:has(.afl-buchleiste) .afl-mobilleiste{display:none!important}
  body:has(.afl-buchleiste){padding-bottom:0}
}

/* ---------- Ergänzungen 2.5.0: Handy – größere Tippflächen und Schrift ---------- */
@media (max-width:760px){
  .afl .afl-feld input[type=date],.afl .afl-sortierung select{min-height:44px}
  .afl .afl-feld label,.afl .afl-titel{font-size:.8rem}
  .afl .afl-zaehler{min-height:44px}
  .afl .afl-zaehler button{width:44px;height:44px}
  .afl .afl-haken{min-height:44px;display:inline-flex;align-items:center;gap:10px}
  .afl .afl-haken input{width:22px;height:22px}
  .afl .afl-segment button{min-height:44px;padding:.5em 1.1em}
  .afl .afl-marken span{font-size:.8rem}
  .afl .afl-kal .wt{font-size:.8rem}
  .afl .afl-kal button{min-height:44px}
  .afl .afl-kal-kopf button{width:44px;height:44px}
  .afl .afl-mehr-lesen{min-height:44px}
  .afl-gz-faq > .el-item{padding:8px 4px}
  .afl-gz-faq .el-title.uk-accordion-title{min-height:48px}
  .afl-gz-augenbraue p,.afl-gz-augenbraue,.afl-gz-karten .el-meta,.afl-gz-kacheln .el-meta,.afl-gz-kontakt .el-meta{font-size:.84rem!important}
  .afl-fuss a{padding:11px 0}
  .afl-fuss-unten a{display:inline-block;padding:12px 0;margin-left:16px}
}

/* Link zu Google Maps in den Kontaktkarten (24.10.2026) */
a[href*="google.com/maps"]{color:#1D6A61!important;text-decoration:underline!important;text-underline-offset:3px;font-weight:600}

/* Titelblock der Unterkunftsseite nicht mitlaufen lassen (gleicher Klassenname wie die Kopfzeile) – 25.10.2026 */
.afl .afl-kopf{position:static;z-index:auto;background:none;-webkit-backdrop-filter:none;backdrop-filter:none}
