/* Anfrageformular „Feier im Haus" + Paketkarten (03.09.2026) — CI: Bordeaux #7D1626, Gold #C8963E, Creme */
.fa { display:flex; flex-direction:column; gap:14px; max-width:860px; margin:0 auto; text-align:left; }
.fa__grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(min(240px,100%),1fr)); gap:12px 16px; }
.fa__feld { display:flex; flex-direction:column; font-family:Arial, sans-serif; font-size:0.82rem; color:var(--cream,#f3ead9); }
.fa__feld span { margin-bottom:4px; }
.fa__feld input, .fa__feld select, .fa__feld textarea { width:100%; min-height:48px; padding:11px 14px; background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.35); border-radius:4px; color:#fff; font-family:Arial, sans-serif; font-size:1rem; }
.fa__feld select option { color:#222; }
.fa__feld textarea { min-height:96px; resize:vertical; }
.fa__feld input:focus, .fa__feld select:focus, .fa__feld textarea:focus { outline:2px solid #C8963E; outline-offset:2px; }
.fa__finder { font-family:Arial, sans-serif; font-size:0.9rem; line-height:1.55; color:#fff; background:rgba(200,150,62,0.18); border-left:4px solid #C8963E; padding:12px 16px; border-radius:4px; }
.fa__finder a { color:#C8963E; }
.fa__extras { border:1px solid rgba(255,255,255,0.25); border-radius:4px; padding:12px 16px; display:flex; flex-wrap:wrap; gap:10px 22px; font-family:Arial, sans-serif; font-size:0.88rem; color:#fff; }
.fa__extras legend { padding:0 6px; color:var(--cream,#f3ead9); font-size:0.82rem; }
.fa__extras label, .fa__kart label { display:inline-flex; align-items:center; gap:6px; cursor:pointer; }
.fa__kart { font-family:Arial, sans-serif; font-size:0.88rem; color:#fff; display:flex; flex-wrap:wrap; gap:8px 18px; align-items:center; }
.fa__kart > span { color:var(--cream,#f3ead9); font-size:0.82rem; }
.fa__ds { font-family:Arial, sans-serif; font-size:0.78rem; color:rgba(255,255,255,0.65); line-height:1.5; margin:0; }
.fa__ds a { color:#C8963E; }
.fa__btn { align-self:flex-start; min-height:52px; }
.fa__alt { font-family:Arial, sans-serif; font-size:0.85rem; color:rgba(255,255,255,0.7); margin:0; }
.fa__alt a { color:#C8963E; }
.fa__hinweis .warnung { background:#fff3f3; color:#7D1626; border-left:4px solid #7D1626; padding:10px 14px; border-radius:4px; font-family:Arial, sans-serif; font-size:0.9rem; }
.fa__hinweis .info { background:rgba(255,255,255,0.12); color:#fff; border-left:4px solid #C8963E; padding:10px 14px; border-radius:4px; font-family:Arial, sans-serif; font-size:0.9rem; }
.fa__erfolg { background:#e9f5e9; color:#1f5e2b; border-left:4px solid #2f7d3a; padding:18px 20px; border-radius:4px; font-family:Arial, sans-serif; font-size:1rem; line-height:1.6; }
.fa__feld[hidden] { display:none; }
/* Paketkarten */
.pk-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(min(280px,100%),1fr)); gap:22px; }
.pk { background:#fff; border:1px solid #e8e0d4; border-top:4px solid #7D1626; border-radius:6px; padding:26px 26px 22px; display:flex; flex-direction:column; }
.pk--gold { border-top-color:#C8963E; }
.pk__label { font-family:Arial, sans-serif; font-size:0.72rem; letter-spacing:0.14em; text-transform:uppercase; color:#886722; margin-bottom:8px; }
.pk__title { font-family:Georgia, serif; font-size:1.35rem; color:#7D1626; margin:0 0 6px; }
.pk__preis { font-family:Georgia, serif; font-size:2rem; color:#1a1a1a; line-height:1; margin:8px 0 2px; }
.pk__preis small { font-family:Arial, sans-serif; font-size:0.78rem; color:#666; }
.pk__sub { font-family:Arial, sans-serif; font-size:0.82rem; color:#666; margin:0 0 14px; }
.pk__list { list-style:none; padding:0; margin:0 0 16px; font-family:Arial, sans-serif; font-size:0.9rem; color:#333; line-height:1.55; }
.pk__list li { padding-left:20px; position:relative; margin-bottom:5px; }
.pk__list li::before { content:"✓"; position:absolute; left:0; color:#886722; font-weight:700; }
.pk__foot { margin-top:auto; font-family:Arial, sans-serif; font-size:0.8rem; color:#666; line-height:1.5; border-top:1px solid #eee; padding-top:12px; }
.pk__cta { display:inline-block; margin-top:14px; font-family:Arial, sans-serif; font-size:0.85rem; color:#7D1626; font-weight:700; border-bottom:1px solid #C8963E; padding-bottom:3px; text-decoration:none; }
/* Schritte / Regeln */
.regeln { display:grid; grid-template-columns:repeat(auto-fit, minmax(min(220px,100%),1fr)); gap:16px; }
.regeln div { background:#f9f5f0; border-left:4px solid #C8963E; padding:16px 18px; font-family:Arial, sans-serif; font-size:0.88rem; color:#444; line-height:1.6; }
.regeln strong { display:block; color:#7D1626; font-family:Georgia, serif; font-size:1rem; margin-bottom:4px; }
.faq details { border-bottom:1px solid #e8e0d4; padding:14px 0; }
.faq summary { cursor:pointer; font-family:Georgia, serif; font-size:1.05rem; color:#7D1626; }
.faq p { font-family:Arial, sans-serif; font-size:0.92rem; color:#444; line-height:1.65; margin:10px 0 0; }
@media (max-width:600px){ .fa__btn { align-self:stretch; } }
.fa .sr-only { position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* ── 04.09.2026: Optionale Details einklappbar, Preisorientierung ── */
.fa__opt { margin:14px 0 16px; border:1px solid rgba(255,255,255,0.22); border-radius:6px; padding:0 16px; }
.fa__opt > summary { cursor:pointer; padding:14px 0; font-family:Arial, sans-serif; font-weight:700; font-size:0.95rem; color:#fff; list-style:none; min-height:48px; display:flex; align-items:center; }
.fa__opt > summary::-webkit-details-marker { display:none; }
.fa__opt > summary::before { content:"+"; display:inline-block; width:22px; color:#C8963E; font-size:1.2rem; }
.fa__opt[open] > summary::before { content:"–"; }
.fa__opt[open] > summary { border-bottom:1px solid rgba(255,255,255,0.18); margin-bottom:14px; }
.fa__summe { background:#fff; color:#1a1a1a; border-left:4px solid #C8963E; border-radius:4px; padding:16px 18px; margin:14px 0 4px; font-family:Arial, sans-serif; font-size:0.9rem; line-height:1.55; }
.fa__summe-t { font-family:Georgia, serif; font-size:1.1rem; color:#7D1626; margin-bottom:6px; }
.fa__summe-l { margin:0 0 8px; padding-left:18px; }
.fa__summe-g { font-size:1rem; margin:6px 0; }
.fa__summe-g strong { font-family:Georgia, serif; font-size:1.25rem; color:#7D1626; }
.fa__summe-n { font-size:0.78rem; color:#666; margin-top:6px; }
.fa input, .fa select, .fa textarea, .fa .fa__btn { min-height:48px; }
.fa__extras label, .fa__kart label { min-height:44px; display:inline-flex; align-items:center; padding:4px 0; }
@media (max-width: 480px) { .fa__grid { grid-template-columns:1fr; } }
