/* ROTONDA Karnevalssitzung — Design-System der Kundenseiten.
   GENERIERT von wordpress/design.py (python wordpress/build_karneval.py --css) — nicht von Hand ändern. */
@font-face{font-family:"Carlito";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/carlito-latin-400-normal.woff2) format("woff2")}@font-face{font-family:"Carlito";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/carlito-latin-700-normal.woff2) format("woff2")}@font-face{font-family:"Carlito";font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/carlito-latin-400-italic.woff2) format("woff2")}@font-face{font-family:"Carlito";font-style:italic;font-weight:700;font-display:swap;src:url(../fonts/carlito-latin-700-italic.woff2) format("woff2")}
:root,.rkv{--ink:#14302F;--body:#3b4b4a;--muted:#5f6b69;--teal:#1F4A4A;--teal-2:#3F7C7C;--teal-dk:#163838;--teal-tint:#E6EFEE;--gold:#C9A24D;--gold-dk:#7d5d14;--gold-line:#E6DCC3;--gold-tint:#F6EDD8;--cream:#F8F4EC;--cream-2:#F2ECDF;--white:#ffffff;--line:#E6DCC3;--ok:#2e7d32;--warn:#9a4b00;--danger:#b3261e;--font-sans:Calibri, "Carlito", "Segoe UI", system-ui, -apple-system, Roboto, "Noto Sans", Arial, sans-serif;--font-display:Calibri, "Carlito", "Segoe UI", system-ui, -apple-system, Roboto, "Noto Sans", Arial, sans-serif;--r-pill:999px;--r:14px;--r-lg:20px;--shadow-1:0 1px 0 rgba(20,48,47,.04);--shadow-2:0 14px 36px rgba(20,48,47,.08);--shadow-btn:0 10px 26px rgba(31,74,74,.26)}

html{-webkit-text-size-adjust:100%}
body.rkv-page{margin:0;overflow-x:hidden;font-family:var(--font-sans);color:var(--ink);background:var(--cream);line-height:1.55;-webkit-font-smoothing:antialiased}
.rkv-page *,.rkv-page *::before,.rkv-page *::after{box-sizing:border-box}
.rkv-page a{color:var(--teal)}
.rkv-page .rkv-display,.rkv-page h1.rkv-display{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;line-height:1.08}
.rkv-skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;z-index:999;border-radius:0 0 10px 0}
.rkv-skip:focus{left:12px}
/* Kopfleiste */
.rkv-top{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:18px;padding:10px 28px;
  background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}
.rkv-top img{height:34px;display:block}
.rkv-top .brand{display:inline-flex;align-items:center;min-height:44px}
.rkv-top .links{margin-left:auto;display:flex;gap:6px;align-items:center}
.rkv-top a{color:var(--ink);font-weight:600;text-decoration:none;font-size:.92rem;display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:var(--r-pill)}
.rkv-top a:hover{background:rgba(31,74,74,.07)}
.rkv-top a.cta{background:var(--teal);color:#fff;padding:0 20px;box-shadow:0 8px 20px rgba(31,74,74,.22)}
.rkv-top a.cta:hover{background:var(--teal-dk)}
@media(max-width:600px){.rkv-top{padding:8px 16px}.rkv-top .links a:not(.cta){display:none}}
/* Mobile Leiste unten: „Tisch anfragen" immer erreichbar */
.rkv-mcta{display:none;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px 16px calc(10px + env(safe-area-inset-bottom));
  background:rgba(255,255,255,.96);border-top:1px solid var(--line);box-shadow:0 -6px 20px rgba(20,48,47,.08)}
.rkv-mcta a{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:var(--r-pill);background:var(--teal);color:#fff;font-weight:700;text-decoration:none;font-size:1rem}
.rkv-mcta.hide{display:none !important}
@media(max-width:899px){.rkv-mcta{display:block}body.rkv-has-mcta{padding-bottom:76px}}
/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 30px;border-radius:var(--r-pill);font-size:1rem;font-weight:700;
  text-decoration:none;cursor:pointer;border:1.5px solid transparent;font-family:inherit;line-height:1.2;transition:transform .2s,box-shadow .2s,background .2s;min-height:48px}
.btn-primary{background:var(--teal);color:#fff;box-shadow:var(--shadow-btn)}
.btn-primary:hover{background:var(--teal-dk);transform:translateY(-2px);box-shadow:0 14px 30px rgba(31,74,74,.32)}
.btn-outline{background:transparent;color:var(--teal);border-color:var(--teal)}
.btn-outline:hover{background:rgba(31,74,74,.07)}
.btn-gold{background:var(--gold);color:var(--ink);box-shadow:0 8px 22px rgba(201,162,77,.3)}
.btn-gold:hover{background:#b98f3b;transform:translateY(-2px)}
.btn-white{background:#fff;color:var(--teal);border-color:var(--line)}
.btn-white:hover{border-color:var(--teal)}
.btn:disabled{opacity:.7;cursor:wait;transform:none}
/* Seitenkopf der Unterseiten (Bestellschein, Sponsoring, Danke, Datenschutz) */
.rkv-pagehero{position:relative;overflow:hidden;text-align:center;padding:56px 24px 48px;background:var(--cream)}
.rkv-pagehero .ph-tag{display:inline-flex;align-items:center;gap:14px;color:var(--gold-dk);font-size:.72rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;margin-bottom:18px}
.rkv-pagehero .ph-tag::before,.rkv-pagehero .ph-tag::after{content:"";width:30px;height:1px;background:var(--gold)}
.rkv-pagehero h1{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;line-height:1.08;
  font-size:clamp(2rem,4.6vw,3.3rem);margin:0 auto 12px;max-width:820px;color:var(--ink)}
.rkv-pagehero h1 em{font-style:italic;color:var(--teal)}
.rkv-pagehero .ph-meta{color:var(--body);font-size:1.05rem;max-width:640px;margin:0 auto;line-height:1.6}
.rkv-pagehero .ph-meta .dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--gold);margin:0 10px;vertical-align:middle}
.rkv-pagehero .ph-rule{width:120px;height:1px;background:var(--gold);margin:22px auto 0}
@media(max-width:600px){.rkv-pagehero{padding:34px 16px 32px}.rkv-pagehero h1{font-size:2rem}}
/* Karte, Pille, Hinweis */
.rkv-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}
.rkv-pill{display:inline-block;padding:4px 12px;border-radius:var(--r-pill);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--gold-tint);color:var(--gold-dk);border:1px solid var(--line)}
.rkv-note{background:var(--teal-tint);border:1px solid #CFE0DF;border-radius:var(--r);padding:16px 18px;color:var(--body);font-size:.95rem}
.rkv-note b{color:var(--ink)}
/* Formularfelder */
.rkv-field{margin-bottom:16px}
.rkv-field label,.rkv-form label{display:block;font-size:.86rem;font-weight:600;color:var(--body);margin-bottom:6px}
.rkv-form input[type=text],.rkv-form input[type=email],.rkv-form input[type=tel],.rkv-form input[type=number],.rkv-form select,.rkv-form textarea{
  width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;font-size:1rem;color:var(--ink);background:#fff;font-family:inherit;transition:border-color .15s,box-shadow .15s}
.rkv-form input:focus,.rkv-form select:focus,.rkv-form textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(31,74,74,.16)}
.rkv-form textarea{resize:vertical;min-height:88px}
.rkv-form .req{color:var(--danger)}
@media(max-width:600px){.rkv-form input[type=text],.rkv-form input[type=email],.rkv-form input[type=tel],.rkv-form input[type=number],.rkv-form select,.rkv-form textarea{font-size:16px;padding:13px 14px}}
/* Icons */
.rkv-ico{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;line-height:0}
.rkv-ico svg{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
/* Fußleiste */
.rkv-foot{background:var(--ink);color:#DCEAEA;padding:30px 24px 32px;font-size:.84rem;text-align:center;line-height:1.9}
.rkv-foot b{color:#fff;font-weight:600}
.rkv-foot a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.3)}
.rkv-foot a:hover{border-bottom-color:#fff}
.rkv-foot .sep{opacity:.5;margin:0 6px}
.rkv-foot .rkv-foot-rule{width:64px;height:1px;background:var(--gold);margin:0 auto 18px;opacity:.9}
/* Ruhige Animationen */
@media(prefers-reduced-motion:reduce){.rkv-page *,.rkv-page *::before,.rkv-page *::after{animation:none !important;transition:none !important}}
