/* ── RESET ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--ff-b);background:#fff;color:var(--ink);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{transition:color .2s}

/* ── DESIGN TOKENS ── */
:root{
  --white:#ffffff;
  --surface:#f7f6f3;
  --surface-2:#eeecea;
  --ink:#111110;
  --ink-soft:#55534f;
  --ink-muted:#9a9895;
  --accent:#c0392b;
  --dark:#111110;
  --border:rgba(17,17,16,.09);
  --border-s:rgba(17,17,16,.16);
  --ff-d:'Playfair Display',Georgia,'Times New Roman',serif;
  --ff-b:'Inter',-apple-system,system-ui,sans-serif;
  --max:1180px;
  --ease:cubic-bezier(.4,0,.2,1);
}

/* ── LANGUAGE VISIBILITY ── */
html[lang="de"] [data-en]{display:none}
html[lang="en"] [data-de]{display:none}

/* ── NAV ── */
nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.25rem,5vw,3rem);gap:1.5rem}
.nav-logo{font-family:var(--ff-d);font-size:1.45rem;font-weight:700;color:var(--ink);text-decoration:none;letter-spacing:-.01em;flex-shrink:0}
.nav-logo em{color:var(--accent);font-style:normal}
.nav-back{font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none;display:flex;align-items:center;gap:.4rem;white-space:nowrap}
.nav-back:hover{color:var(--ink)}
.nav-right{display:flex;align-items:center;gap:.875rem;flex-shrink:0}
.lang-toggle{display:flex;border:1px solid var(--border-s);overflow:hidden}
.lang-btn{padding:.3rem .7rem;font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;background:transparent;color:var(--ink-muted);transition:all .2s;font-family:var(--ff-b)}
.lang-btn.active{background:var(--ink);color:#fff}
.btn-nav{border-radius:3px;background:var(--accent);color:#fff;padding:.5rem 1.25rem;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border:1px solid var(--accent);transition:all .2s;white-space:nowrap}
.btn-nav:hover{background:var(--ink);border-color:var(--ink)}

.sec-tag{font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;display:flex;align-items:center;gap:.65rem}
.sec-tag::before{content:'';display:block;width:20px;height:1px;background:var(--accent);flex-shrink:0}
.sec-title em{font-style:italic;color:var(--accent)}

/* ── FAQ ── */
.faq-item:hover{background:#fcfbf9}
.faq-q{font-family:var(--ff-d);font-size:1rem;font-weight:700;color:var(--ink);margin-bottom:.65rem;line-height:1.35}
.faq-a{font-size:.87rem;color:var(--ink-soft);line-height:1.8}

/* ── ORDER CTA ── */
.order-cta-tag{font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;gap:.65rem}
.order-cta-tag::before,.order-cta-tag::after{content:'';display:block;width:24px;height:1px;background:rgba(255,255,255,.4);flex-shrink:0}
.order-cta-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}
.btn-white{border-radius:3px;display:inline-flex;align-items:center;gap:.5rem;background:#fff;color:var(--accent);padding:.875rem 2rem;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border:1px solid #fff;transition:all .2s var(--ease)}
.btn-white:hover{background:transparent;color:#fff;transform:translateY(-1px)}
.btn-outline-white{border-radius:3px;display:inline-flex;align-items:center;gap:.5rem;background:transparent;color:#fff;padding:.875rem 2rem;font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border:1px solid rgba(255,255,255,.5);transition:all .2s var(--ease)}
.btn-outline-white:hover{border-color:#fff;transform:translateY(-1px)}

/* ── CITATION SUMMARY ── */
#citation-summary{background:var(--dark);border-top:1px solid rgba(255,255,255,.05);padding:2.25rem clamp(1.25rem,5vw,3rem)}
.citation-inner{max-width:var(--max);margin:0 auto}
.citation-text strong{color:rgba(255,255,255,.62);font-weight:500}

/* ── FOOTER ── */
footer{background:var(--dark);border-top:1px solid rgba(255,255,255,.06);padding:2rem clamp(1.25rem,5vw,3rem);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}
.footer-logo{font-family:var(--ff-d);font-size:1.1rem;font-weight:700;color:#fff;text-decoration:none}
.footer-logo em{color:var(--accent);font-style:normal}
.footer-links{display:flex;flex-wrap:wrap;gap:1.5rem}
.footer-links a{font-size:.73rem;color:rgba(255,255,255,.32);text-decoration:none;transition:color .2s}
.footer-links a:hover{color:rgba(255,255,255,.7)}
.footer-copy{font-size:.7rem;color:rgba(255,255,255,.22)}

/* ── MOBILE BAR BUTTONS ── */
.mob-btn{flex:1;text-align:center;padding:.75rem .25rem;font-size:.73rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;transition:all .2s}
.mob-wa{background:#25D366;color:#fff}
.mob-order{background:var(--accent);color:#fff}
.mob-call{background:rgba(255,255,255,.1);color:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.15)}

/* ── SCROLL REVEAL ── */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-d1{transition-delay:.1s}
.reveal-d2{transition-delay:.2s}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  nav{padding:0 1.25rem}
  .nav-back{display:none}
  .faq-grid{grid-template-columns:1fr}
  footer{padding-bottom:5rem;justify-content:center;text-align:center}
  .footer-links{justify-content:center}
}
