/* Favorent Gäste-Journey – Designsystem der Objektseiten (Karte + Kopfleiste), mobil-first */
.favorent-guest{--fav-primary:#44909C;--fav-secondary:#A0C45C;--fav-accent:#F5A623;--fav-ink:#333;--fav-muted:#7A7A7A;--fav-line:#e6e6e6;--fav-soft:#f5f7f8;
  font-family:'Lato',-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--fav-ink);width:100%;box-sizing:border-box}
.favorent-guest *,.favorent-guest *::before,.favorent-guest *::after{box-sizing:border-box}
.favg-config{padding:14px 16px;border:1px dashed var(--fav-line);border-radius:12px;color:var(--fav-muted)}

.favg-card{background:#fff;border:1px solid var(--fav-line);border-radius:14px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.favg-head{background:linear-gradient(120deg,#44909C,#37757f);color:#fff;padding:18px 24px;display:flex;align-items:center;gap:12px}
.favg-h-ico{font-size:30px;line-height:1}
.favg-h-t{font-size:26px;font-weight:700;line-height:1.2}
.favg-h-s{font-size:18px;opacity:.9}
.favg-body{padding:16px 20px}
@media(max-width:520px){.favg-head{padding:14px 16px;gap:9px}.favg-h-ico{font-size:24px}.favg-h-t{font-size:21px}.favg-h-s{font-size:15px}.favg-body{padding:14px}}

/* Mein Urlaub */
.favg-hero .favg-head{background:linear-gradient(120deg,#44909C,#2f6b75)}
.favg-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:14px}
.favg-fact{background:var(--fav-soft);border:1px solid var(--fav-line);border-radius:12px;padding:11px 13px;display:flex;flex-direction:column;gap:2px}
.favg-fact span{font-size:12px;color:var(--fav-muted);font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.favg-fact b{font-size:15px;color:var(--fav-primary)}
.favg-mile{display:flex;gap:12px;align-items:flex-start;background:#f2f8f9;border:1px solid #d6e8eb;border-radius:12px;padding:14px 16px}
.favg-mile-ico{font-size:28px;line-height:1;flex:0 0 auto}
.favg-mile b{font-size:16px;display:block;margin-bottom:3px}
.favg-mile p{margin:0;font-size:14.5px;line-height:1.55;color:#4a4a4a}
.favg-steps{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.favg-step{font-size:12.5px;font-weight:700;padding:5px 12px;border-radius:999px;background:var(--fav-soft);border:1px solid var(--fav-line);color:var(--fav-muted)}
.favg-step.is-on{background:var(--fav-primary);border-color:var(--fav-primary);color:#fff}
.favg-expired .favg-body h2{margin:0 0 8px;font-size:20px;color:var(--fav-primary)}

/* Packliste */
.favg-pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px 26px}
.favg-pack-col h3{margin:0 0 10px;font-size:16px;font-weight:800}
.favg-pack-col.is-home h3{color:#4d6b1e}
.favg-pack-col.is-bag h3{color:var(--fav-primary)}
.favg-pack-col ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.favg-pack-col li{font-size:14.5px;line-height:1.5}
.favg-pack-col.is-home li{display:flex;gap:9px;align-items:flex-start;opacity:.95}
.favg-pack-ico{font-size:17px;width:24px;text-align:center;flex:0 0 24px}
.favg-pack-col b{font-weight:700}
.favg-pack-col small{display:block;font-size:12.5px;color:var(--fav-muted);line-height:1.45;font-weight:400}
.favg-check{display:flex;gap:9px;align-items:flex-start;cursor:pointer}
.favg-check.is-done{opacity:.5;text-decoration:line-through}
.favg-check.is-done small{text-decoration:none}
.favg-check input{margin-top:3px;flex:0 0 auto}
.favg-note{margin:14px 0 0;font-size:12.5px;color:var(--fav-muted)}

/* Gästemappe */
.favg-wifi{display:flex;gap:12px;align-items:center;background:#f2f8f9;border:1px solid #d6e8eb;border-radius:12px;padding:13px 15px;margin-bottom:14px}
.favg-wifi-ico{font-size:26px;flex:0 0 auto}
.favg-wifi-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:14.5px}
.favg-wifi-row span{font-size:12.5px;color:var(--fav-muted);font-weight:700;min-width:64px}
.favg-wifi-row b{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:15px;color:var(--fav-primary)}
.favg-copy{appearance:none;cursor:pointer;font-family:inherit;font-size:12px;font-weight:800;color:var(--fav-primary);background:#fff;border:1.5px solid var(--fav-primary);border-radius:999px;padding:4px 11px}
.favg-copy:hover,.favg-copy.is-done{background:var(--fav-primary);color:#fff}
.favg-block{margin:14px 0 0;padding-top:14px;border-top:1px solid var(--fav-line)}
.favg-block:first-child{margin-top:0;padding-top:0;border-top:0}
.favg-block h3{margin:0 0 6px;font-size:15.5px;font-weight:800;color:var(--fav-primary)}
.favg-block p{margin:0 0 6px;font-size:14.5px;line-height:1.6;color:#4a4a4a}
.favg-dev{border-bottom:1px solid var(--fav-line)}
.favg-dev:last-child{border-bottom:0}
.favg-dev summary{cursor:pointer;font-weight:700;font-size:14.5px;padding:9px 0}
.favg-dev p{padding-bottom:8px}
.favg-wa{display:inline-flex;align-items:center;gap:8px;margin-top:16px;background:#25d366;color:#fff;font-weight:800;font-size:14.5px;text-decoration:none;padding:11px 18px;border-radius:999px}
.favg-wa:hover{background:#1da851;color:#fff}
.favg-lock{background:#fdf6ea;border:1px solid #f0d9a8;border-radius:12px;padding:14px 16px;margin-bottom:14px}
.favg-lock b{font-size:15px}
.favg-lock p{margin:6px 0 10px;font-size:13.5px;line-height:1.55;color:#7a6a45}
.favg-lock-row{display:flex;flex-wrap:wrap;gap:8px}
.favg-lock-row input{flex:1 1 180px;font-family:inherit;font-size:15px;padding:10px 12px;border:1px solid var(--fav-line);border-radius:10px}

/* Abreise */
.favg-dep-list{margin:0 0 16px;padding-left:22px;display:grid;gap:8px}
.favg-dep-list li{font-size:16px;line-height:1.5;font-weight:700}
.favg-dep-not{background:#eef6e5;border:1px solid #cfe3b4;border-radius:12px;padding:13px 16px}
.favg-dep-not h3{margin:0 0 8px;font-size:15px;font-weight:800;color:#3c5a17}
.favg-dep-not ul{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.favg-dep-not li{position:relative;padding-left:24px;font-size:14.5px}
.favg-dep-not li::before{content:"\2715";position:absolute;left:4px;color:#7fa83e;font-weight:900}
.favg-dep-not p{margin:9px 0 0;font-size:12.5px;color:#5b6b45}
.favg-dep-dank{margin:16px 0 0;font-size:15px;line-height:1.6;color:#3a3a3a;font-style:italic}

/* Rückmeldung */
.favg-rep-choice{display:flex;flex-wrap:wrap;gap:10px}
.favg-btn{appearance:none;cursor:pointer;font-family:inherit;font-size:15px;font-weight:800;border-radius:12px;padding:13px 20px;border:2px solid var(--fav-primary);background:#fff;color:var(--fav-primary);transition:background .12s,color .12s}
.favg-btn:hover{background:var(--fav-primary);color:#fff}
.favg-btn.is-ok{border-color:var(--fav-secondary);color:#4d6b1e}
.favg-btn.is-ok:hover{background:var(--fav-secondary);color:#2c3a1e}
.favg-btn.is-send{background:var(--fav-accent);border-color:var(--fav-accent);color:#fff;width:100%;margin-top:4px}
.favg-btn.is-send:hover{background:#dd9312;border-color:#dd9312}
.favg-btn[disabled]{opacity:.6;cursor:default}
.favg-rep-form{margin-top:14px}
.favg-rep-form label{display:block;font-size:12.5px;font-weight:700;color:var(--fav-muted);margin-bottom:10px}
.favg-rep-form input,.favg-rep-form textarea,.favg-rep-form select{display:block;width:100%;margin-top:4px;font-family:inherit;font-size:15px;font-weight:400;color:var(--fav-ink);padding:10px 12px;border:1px solid var(--fav-line);border-radius:10px;background:#fff}
.favg-rep-form input:focus,.favg-rep-form textarea:focus,.favg-rep-form select:focus{outline:none;border-color:var(--fav-primary);box-shadow:0 0 0 3px rgba(68,144,156,.12)}
.favg-form-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:520px){.favg-form-row2{grid-template-columns:1fr}}
.favg-ok{background:#eef6e5;border:1px solid #cfe3b4;border-radius:10px;padding:12px 15px;font-size:14.5px;line-height:1.55;color:#3c5a17}
.favg-err{margin-top:8px;border:1px solid #f0b4b4;background:#fdecec;color:#c9302c;font-size:13px;padding:9px 12px;border-radius:10px}
.favg-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;opacity:0}

/* ---- Welle 3, Bauabschnitt 2 ---- */
.favg-plus{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:8px}
.favg-plus li{position:relative;padding-left:26px;font-size:14.5px;line-height:1.55}
.favg-plus li::before{content:"\2713";position:absolute;left:2px;top:0;color:var(--fav-secondary);font-weight:900}

/* Letzte Meile */
.favg-adr{display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:space-between;background:var(--fav-soft);border:1px solid var(--fav-line);border-radius:12px;padding:11px 14px;margin-bottom:14px;font-size:14.5px}
.favg-arr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.favg-arr-item{border:1px solid var(--fav-line);border-radius:12px;overflow:hidden;background:#fff}
.favg-arr-item img{display:block;width:100%;height:150px;object-fit:cover}
.favg-arr-leer{height:150px;display:flex;align-items:center;justify-content:center;font-size:40px;background:var(--fav-soft);color:var(--fav-muted)}
.favg-arr-m{padding:11px 13px}
.favg-arr-m b{font-size:14.5px;display:block;margin-bottom:3px}
.favg-arr-m p{margin:0;font-size:13.5px;line-height:1.5;color:#4a4a4a}

/* Badeampel */
.favg-beach-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.favg-beach-day{border:1px solid var(--fav-line);border-radius:12px;padding:12px 14px;background:var(--fav-soft);border-left-width:5px}
.favg-beach-day.is-gruen{border-left-color:#7fa83e;background:#f2f8e9}
.favg-beach-day.is-gelb{border-left-color:#e8991c;background:#fdf6ea}
.favg-beach-day.is-blau{border-left-color:#44909C;background:#f0f6f7}
.favg-beach-tag{font-size:12.5px;font-weight:800;color:var(--fav-muted);text-transform:uppercase;letter-spacing:.03em}
.favg-beach-amp{font-size:14.5px;font-weight:700;margin:4px 0 7px;line-height:1.4}
.favg-beach-werte{display:flex;flex-wrap:wrap;gap:9px;font-size:12.5px;color:#4a4a4a}

/* Rückblick */
.favg-fb{background:var(--fav-soft);border:1px solid var(--fav-line);border-radius:12px;padding:14px 16px;margin-bottom:14px}
.favg-fb-frage b{font-size:15.5px}
.favg-fb-frage p{margin:5px 0 11px;font-size:13.5px;line-height:1.55;color:var(--fav-muted)}
.favg-portale{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.favg-portale .favg-btn{text-decoration:none;display:inline-block}

/* Stammgäste / Newsletter */
.favg-nl{margin-top:6px;background:var(--fav-soft);border:1px solid var(--fav-line);border-radius:12px;padding:14px 16px}
.favg-nl-text{margin:0 0 10px;font-size:14px;line-height:1.55;color:#4a4a4a}
.favg-watch-row{display:flex;flex-wrap:wrap;gap:8px}
.favg-watch-row input[type=email]{flex:1 1 220px;font-family:inherit;font-size:15px;padding:10px 12px;border:1px solid var(--fav-line);border-radius:10px}
.favg-watch-row input[type=email]:focus{outline:none;border-color:var(--fav-primary)}
.favg-consent{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:#4a4a4a;line-height:1.5;margin-top:10px}
.favg-consent input{margin-top:2px;flex:0 0 auto;width:auto}

/* ---- Tagesplaner ---- */
.favg-dp-lade{font-size:14px;color:var(--fav-muted);padding:6px 0}
.favg-dp-tag{border:1px solid var(--fav-line);border-left-width:5px;border-radius:12px;padding:13px 16px;margin-bottom:12px;background:#fff}
.favg-dp-tag.is-schoen{border-left-color:#f5a623;background:#fffaf0}
.favg-dp-tag.is-mittel{border-left-color:#44909C;background:#f4f9fa}
.favg-dp-tag.is-schlecht{border-left-color:#6c8ea4;background:#f3f6f8}
.favg-dp-kopf{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}
.favg-dp-kopf b{font-size:16px}
.favg-dp-kopf span{font-size:13px;color:var(--fav-muted);font-weight:700}
.favg-dp-liste{list-style:none;margin:0;padding:0;display:grid;gap:9px;counter-reset:dp}
.favg-dp-liste li{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;line-height:1.5}
.favg-dp-ico{font-size:19px;width:26px;text-align:center;flex:0 0 26px}
.favg-dp-liste b{font-weight:700;display:block}
.favg-dp-liste small{display:block;font-size:12.5px;color:var(--fav-muted);line-height:1.45;margin-top:1px}

/* ---- Wiederkommen ---- */
.favg-cb-box{background:#f2f8f9;border:1px solid #d6e8eb;border-radius:12px;padding:16px 18px;text-align:center}
.favg-cb-zeit{font-size:20px;font-weight:800;color:var(--fav-primary)}
.favg-cb-status{font-size:14.5px;margin:6px 0 14px;color:#4a4a4a}

/* ---- Postkarte ---- */
.favg-pc-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.favg-pc-form label{display:block;font-size:12.5px;font-weight:700;color:var(--fav-muted)}
.favg-pc-form input{display:block;width:100%;margin-top:4px;font-family:inherit;font-size:15px;font-weight:400;color:var(--fav-ink);padding:9px 11px;border:1px solid var(--fav-line);border-radius:10px;background:#fff}
.favg-pc-canvas{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--fav-line);background:#e8f0f1}
.favg-pc-aktionen{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
@media(max-width:520px){.favg-pc-form{grid-template-columns:1fr}}

/* ---- Audiospaziergang ---- */
.favg-aw-meta{margin:0 0 10px;font-size:13.5px;color:var(--fav-muted);font-weight:700}
.favg-aw-player{width:100%;margin-bottom:12px}
.favg-aw-kapitel{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.favg-aw-kapitel button{width:100%;display:flex;align-items:center;gap:12px;text-align:left;appearance:none;cursor:pointer;background:var(--fav-soft);border:1px solid var(--fav-line);border-radius:10px;padding:10px 13px;font-family:inherit;font-size:14.5px;color:var(--fav-ink)}
.favg-aw-kapitel button:hover,.favg-aw-kapitel button.is-on{border-color:var(--fav-primary);background:#f2f8f9}
.favg-aw-zeit{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12.5px;font-weight:800;color:var(--fav-primary);min-width:46px}

/* ---- Freunde werben ---- */
.favg-rf-text{margin:0 0 12px;font-size:14.5px;line-height:1.6;color:#3a3a3a}
.favg-rf-code{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:var(--fav-soft);border:1px solid var(--fav-line);border-radius:12px;padding:12px 15px;margin-bottom:12px}
.favg-rf-code span{font-size:12.5px;font-weight:700;color:var(--fav-muted)}
.favg-rf-code b{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:18px;color:var(--fav-primary);letter-spacing:.04em}
