    .theme-toggle {
      position: relative;
      display: inline-flex; align-items: center;
      width: 62px; height: 32px; flex-shrink: 0;
      padding: 0;
      border-radius: 999px;
      background: linear-gradient(145deg, #1a1d22, #0e1014);
      border: 1px solid var(--border);
      cursor: pointer;
      color: #e8d18a;
      transition: background 0.4s ease, border-color 0.3s ease;
      -webkit-tap-highlight-color: transparent;
    }
    body.light .theme-toggle {
      background: linear-gradient(145deg, #ffffff, #f0ece2);
      border-color: #ddd8cc;
      color: #6b6459;
    }
    .theme-toggle:hover { border-color: var(--red); }
    .theme-toggle:active .tt-knob { width: 30px; }
    /* the sliding knob */
    .theme-toggle .tt-knob {
      position: absolute; top: 50%; left: 3px;
      width: 24px; height: 24px; border-radius: 50%;
      transform: translateY(-50%);
      display: flex; align-items: center; justify-content: center;
      background: linear-gradient(145deg, #2a2d33, #16181c);
      box-shadow: 0 1px 3px rgba(0,0,0,0.5);
      transition: left 0.35s cubic-bezier(0.34,1.56,0.64,1), background 0.4s ease, width 0.2s ease;
    }
    body.light .theme-toggle .tt-knob {
      left: calc(100% - 27px);
      background: linear-gradient(145deg, #ffffff, #ece7db);
      box-shadow: 0 1px 3px rgba(0,0,0,0.18);
    }
    /* icons ride inside the knob; sun in dark, moon in light */
    .theme-toggle .tt-ico {
      position: absolute; display: flex; align-items: center; justify-content: center;
      transition: opacity 0.3s ease, transform 0.4s cubic-bezier(0.34,1.56,0.64,1);
    }
    .theme-toggle .tt-ico svg { width: 15px; height: 15px; }
    .theme-toggle .tt-ico-sun  { opacity: 1; transform: rotate(0) scale(1); }
    .theme-toggle .tt-ico-moon { opacity: 0; transform: rotate(-90deg) scale(0.6); }
    body.light .theme-toggle .tt-ico-sun  { opacity: 0; transform: rotate(90deg) scale(0.6); }
    body.light .theme-toggle .tt-ico-moon { opacity: 1; transform: rotate(0) scale(1); }
@font-face{font-family:BarlowCondensed;src:url('/fonts/BarlowCondensed-SemiBold.woff2')}body{--border:#ffffff25;--white:#fff;--mid:#b5b5bf;--dark:#121317;--font-condensed:BarlowCondensed,Arial;--radius:4px}#navbar{display:block;position:sticky;top:0;z-index:900;background:#101114f5;border-bottom:1px solid var(--border);backdrop-filter:blur(18px)}.nav-inner{height:90px;max-width:1600px;padding:0 3%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.nav-logo{color:var(--white);flex-shrink:0}.brand-logo{width:165px;height:49px;display:block}.nav-links,.nav-cta,.nav-phones{display:flex;align-items:center;gap:18px}.nav-links a,.nav-phone{font:600 15px BarlowCondensed;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;color:var(--mid);white-space:nowrap}.nav-links a:hover,.nav-links a[href='/angebote']{color:#e80a22}.nav-phone{color:var(--white);display:flex;align-items:center;gap:7px;font-size:18px}.nav-phone svg{color:#e80a22}.nav-phones{flex-direction:column;gap:2px}.nav-phone-sep{display:none}.nav-phone-mobile{font-size:13px}.btn{font-family:BarlowCondensed;font-size:15px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;border-radius:4px;padding:14px 26px;white-space:normal}.btn-outline{background:transparent;color:var(--white);border:1.5px solid var(--border)}.btn-outline:hover{background:#ffffff15;border-color:var(--white)}.nav-cta .btn{white-space:nowrap;font-size:13px;padding:13px 18px}.hamburger{display:none;border:0;background:transparent;width:44px;height:44px;padding:10px;z-index:910;cursor:pointer}.hamburger span{display:block;height:2px;background:var(--white);margin:5px 0;width:24px}.mobile-menu{position:fixed;right:0;top:80px;bottom:0;width:min(360px,95vw);background:var(--dark);color:var(--white);z-index:905;padding:25px;overflow:auto;display:none;flex-direction:column;gap:4px}.mobile-menu.open{display:flex}.mobile-menu a{padding:10px 0;text-decoration:none;font:20px BarlowCondensed}.mobile-menu-footer{display:grid;gap:10px;margin-top:20px}.mobile-menu-footer .btn{padding:15px}.overlay{display:none;position:fixed;inset:80px 0 0;background:#0008;z-index:904}.overlay.show{display:block}.menu-open{overflow:hidden}.campaign-hero{min-height:calc(100svh - 90px);background:#101114;isolation:isolate;display:flex;align-items:center}.cinema-photo{position:absolute;inset:0;z-index:-2;background:url('/images/wheel-768.webp') 85% 40%/auto 140% no-repeat;animation:cinema-enter 1.7s ease-out both}.cinema-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#090a0df5 5%,#090a0de8 34%,#090a0d30 78%),linear-gradient(0deg,#090a0d,transparent 35%)}.hero{width:min(1440px,90%);grid-template-columns:1.2fr 1fr;padding:65px 0 100px;gap:40px}.hero-copy h1{font-size:clamp(70px,7.4vw,114px)}.hero-visual{align-self:end;animation:none;padding:0 0 30px;min-width:0}.hero-bonus-capsule{display:flex;align-items:center;text-align:left;gap:20px;padding:25px 28px;width:100%;background:#f2f0e9;color:#15161a;border:0;border-left:5px solid #e80a22;box-shadow:0 25px 70px #0008;cursor:pointer;transform:rotate(-3deg);transition:transform .3s;border-radius:5px}.hero-bonus-capsule:hover{transform:rotate(0deg) translateY(-5px)}.capsule-mark{font-size:66px;line-height:1;color:#e80a22}.hero-bonus-capsule small{display:block;font-size:10px;letter-spacing:.12em}.hero-bonus-capsule strong{display:block;font-family:Bebas;font-size:clamp(26px,3vw,42px);font-weight:400;line-height:1.2;margin:8px 0}.hero-bonus-capsule em{font-size:13px;font-style:normal;color:#a40619}.season-orbit{height:190px;position:relative;display:grid;place-items:center}.season-orbit span{font-family:Bebas;font-size:clamp(60px,8vw,120px);color:#fff1;-webkit-text-stroke:1px #ffffff50;transform:rotate(-8deg);white-space:nowrap}.hero-bottom{flex-wrap:wrap}.hero-bottom .entry-price{width:100%}.hero-sub,.trust-line,.hero-copy .terms{color:#d0d0d4}.hero-copy{color:white}#seasonIntro:not([open]){display:none}#seasonIntro[open]{position:fixed;inset:0;margin:auto;width:min(1000px,94vw);max-height:94dvh;overflow:auto;padding:50px;background:radial-gradient(ellipse at 50% 0,#521321,#111216 65%);color:white;border:1px solid #ffffff35;border-radius:12px;text-align:center;box-shadow:0 30px 150px #000;animation:intro-in .55s cubic-bezier(.16,1,.3,1);isolation:isolate}#seasonIntro::backdrop{background:#060609db;backdrop-filter:blur(13px)}.intro-close{position:absolute;right:14px;top:14px;background:#ffffff13;border:1px solid #ffffff25;border-radius:50%;color:#fff;width:44px;height:44px;font-size:28px;cursor:pointer;z-index:5}.intro-welcome{max-width:780px;margin:auto;padding:15px 0}.intro-gift{font-size:115px;line-height:1;color:#ff203d;filter:drop-shadow(0 0 40px #e80a2277);animation:gift-enter .8s both}.intro-welcome h2{font-size:clamp(42px,6vw,76px);margin:22px 0}.intro-welcome h2 span,.intro-show h2 span{color:#ff2d48}.intro-welcome p{font-size:19px;color:#ccc;line-height:1.6}.intro-welcome p strong{color:white}.intro-welcome .btn{margin:10px auto}.intro-welcome small{display:block;color:#94949d;font-size:11px;margin-top:20px}.intro-skip{display:block;margin:16px auto 0;padding:8px;background:none;border:0;color:#c4c4ce;text-decoration:underline;cursor:pointer;font:13px Barlow}.intro-wheel{display:flex;align-items:center;justify-content:center;gap:22px;margin:15px auto;animation:wheel-arrive .65s both}.intro-wheel img{width:100px;height:100px;object-fit:cover;object-position:center 25%;border-radius:50%;border:3px solid #e80a22}.intro-wheel div{text-align:left}.intro-wheel span,.intro-wheel small{display:block;font-size:11px;letter-spacing:.07em}.intro-wheel strong{font:52px Bebas}.intro-wheel b{font-size:50px;color:#e80a22}.intro-show h2{font-size:48px;margin:18px 0}.intro-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.intro-check{position:relative;padding:18px 10px;background:#ffffff08;border:1px solid #ffffff22;border-radius:6px;animation:check-arrive .6s calc(.3s + var(--i)*.18s) cubic-bezier(.16,1,.3,1) both;transform-origin:center;min-width:0}.intro-check svg{width:35px;height:35px;color:#ff2d48}.intro-check h3{font:600 14px Barlow;margin:10px 0;min-height:34px;line-height:1.2}.intro-check .check-number{font-size:18px;top:5px;right:8px}.intro-progress{font-size:13px;color:#c5c5ce;margin-bottom:0}.hero-bonus-capsule.landed{animation:landed .6s ease-out}.light{background:#f2f1ec;color:#1b1c20;--white:#191a1e;--mid:#4b4c55;--dark:#f4f3ee;--border:#15161a30}.light #navbar{background:#f4f3eef5}.light .winter-checks{background:#f5f4ef;color:#191a1e}.light .check-heading>p,.light .terms{color:#575861}.light .check-heading strong{color:#16171c}.light .check-card{background:#fff;border-color:#d9d9d5;color:#191a1e}.light .check-number{color:#bbb}.light .included{color:#62636b}.light footer{border-color:#ccc}.light .sticky{background:#f4f3ee;color:#16171b}.light .cookie-banner{background:#f4f3ee;color:#16171b}.light .campaign-hero .btn-outline{color:white;border-color:#ffffff70}.light .hero-copy .terms{color:#d0d0d4}.light #seasonIntro .btn{color:white}.light .block:not(.white):not(.winter-checks){background:#e9e8e2}.light .white{background:#f5f4ef}@keyframes cinema-enter{from{opacity:0;transform:scale(1.07)}to{opacity:1;transform:scale(1)}}@keyframes intro-in{from{opacity:0;transform:scale(.82) translateY(40px)}to{opacity:1;transform:none}}@keyframes check-arrive{from{opacity:0;transform:translate3d(calc((3.5 - var(--i))*45px),100px,0) scale(.5) rotate(-8deg)}to{opacity:1;transform:none}}@keyframes wheel-arrive{from{opacity:0;transform:translateX(-140px) rotate(-10deg)}to{opacity:1;transform:none}}@keyframes landed{50%{transform:rotate(0deg) scale(1.06)}}
@media(max-width:1250px){.nav-links{gap:13px}.nav-links a{font-size:13px}.nav-cta{gap:10px}.nav-phones .nav-phone-mobile{display:none}.nav-inner{gap:18px}.brand-logo{width:140px}}@media(max-width:1050px){.nav-links{display:none}.hamburger{display:block}.nav-inner{height:80px}.nav-cta{margin-left:auto}.campaign-hero{min-height:calc(100svh - 80px)}}@media(max-width:760px){.nav-inner{padding:0 5%;gap:10px;height:72px}.brand-logo{width:120px;height:40px}.nav-cta{gap:8px}.nav-cta>.btn,.nav-phone-mobile{display:none}.nav-phone{font-size:14px}.nav-phones{gap:0}.nav-phone svg{width:12px}.theme-toggle{width:48px;height:28px}.theme-toggle .tt-knob{width:21px;height:21px}.light .theme-toggle .tt-knob{left:calc(100% - 24px)}.hamburger{width:35px;padding:5px}.mobile-menu{top:72px}.overlay{top:72px}.campaign-hero{min-height:calc(100svh - 72px)}.cinema-photo{background-size:auto 100%;background-position:60% center}.cinema-photo:after{background:linear-gradient(90deg,#090a0de8,#090a0d60),linear-gradient(0deg,#090a0d,transparent 60%)}.hero{grid-template-columns:1fr;padding:35px 0 65px;gap:25px}.hero-copy h1{font-size:clamp(58px,14vw,95px)}.hero-sub{font-size:16px}.hero-bottom{gap:10px}.hero-bottom .btn{padding:13px 16px;font-size:12px}.hero-bottom .entry-price{width:auto;margin-left:0}.hero-visual{padding:0}.season-orbit{display:none}.hero-bonus-capsule{padding:18px 20px;gap:16px;transform:rotate(-2deg)}.hero-bonus-capsule strong{font-size:29px}.capsule-mark{font-size:48px}.hero-bonus-capsule small{font-size:8px}.hero-bonus-capsule em{font-size:11px}#seasonIntro[open]{padding:45px 18px 22px;width:94vw;border-radius:9px}.intro-welcome{padding:10px 0}.intro-gift{font-size:85px}.intro-welcome h2{font-size:42px}.intro-welcome p{font-size:15px}.intro-welcome .btn{font-size:13px;padding:15px 18px}.intro-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.intro-check{padding:10px 8px;display:grid;grid-template-columns:30px 1fr;text-align:left;column-gap:9px;align-items:center}.intro-check svg{width:29px;height:29px;grid-row:1/3}.intro-check h3{font-size:11px;min-height:0;margin:3px 0}.intro-check .included{font-size:8px}.intro-check .check-number{display:none}.intro-wheel img{width:65px;height:65px}.intro-wheel strong{font-size:38px}.intro-wheel{margin:8px auto;gap:15px}.intro-show h2{font-size:36px;margin:15px 0}.intro-show .eyebrow{font-size:9px}.intro-progress{font-size:11px}.intro-show .intro-skip{margin-top:5px}}@media(max-width:380px){.nav-phones{display:none}.nav-inner{gap:6px}.intro-welcome h2{font-size:35px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Selected campaign photograph: full-bleed, with responsive focal positioning. */
.campaign-hero{width:100%;min-height:calc(100svh - 90px);overflow:hidden}.cinema-photo{inset:0;background-image:url('/images/denko-winter-hero-1200.webp');background-size:cover;background-position:center center;background-repeat:no-repeat}.cinema-photo:after{background:linear-gradient(90deg,rgba(8,9,12,.91) 0%,rgba(8,9,12,.77) 27%,rgba(8,9,12,.26) 52%,rgba(8,9,12,.02) 78%),linear-gradient(0deg,rgba(8,9,12,.65),transparent 30%)}.campaign-hero .hero-lines,.campaign-hero .season-orbit{display:none}.campaign-hero .hero{min-height:calc(100svh - 90px);align-items:center;grid-template-columns:1.05fr 1fr;padding-top:50px;padding-bottom:70px}.campaign-hero .hero-visual{align-self:end;padding:0}.campaign-hero .hero-bonus-capsule{max-width:410px;margin-left:auto;padding:18px 24px;transform:rotate(-2deg)}.campaign-hero .hero-bonus-capsule strong{font-size:32px}.campaign-hero .hero-bonus-capsule:hover{transform:rotate(0) translateY(-4px)}.campaign-hero .hero-copy h1{font-size:clamp(68px,6.9vw,108px)}
@media(min-width:1700px){.campaign-hero .hero{min-height:850px}.campaign-hero{min-height:850px}}
@media(max-width:1050px){.campaign-hero,.campaign-hero .hero{min-height:calc(100svh - 80px)}}
@media(max-width:760px){.campaign-hero,.campaign-hero .hero{min-height:calc(100svh - 72px)}.campaign-hero .hero{grid-template-columns:1fr;gap:160px;padding:34px 0 55px}.campaign-hero .hero-copy h1{font-size:clamp(54px,13vw,88px)}.cinema-photo{background-position:67% center;background-size:cover}.cinema-photo:after{background:linear-gradient(180deg,rgba(8,9,12,.88) 0%,rgba(8,9,12,.7) 34%,rgba(8,9,12,.12) 65%,rgba(8,9,12,.6) 100%),linear-gradient(90deg,rgba(8,9,12,.35),transparent 75%)}.campaign-hero .hero-bonus-capsule{max-width:100%;padding:17px 20px}.campaign-hero .hero-bonus-capsule strong{font-size:28px}.campaign-hero .hero-bottom{margin-bottom:12px}.campaign-hero .trust-line{margin-bottom:0}.campaign-hero .hero-sub{margin:14px 0}}
/* Shared navigation spacing and an inline seasonal inquiry. */
#navbar .nav-links{list-style:none;margin:0 auto;padding:0;gap:clamp(18px,2vw,34px)}#navbar .nav-links li{list-style:none;margin:0;padding:0}#navbar .nav-links li::marker{content:''}#navbar .nav-inner{gap:clamp(24px,2.5vw,48px);padding-left:3.5%;padding-right:3.5%}#navbar .nav-cta{gap:20px}#navbar .nav-links a{letter-spacing:.04em}#offerInquiry{margin-top:32px;border-top:1px solid #d1d1cd;padding-top:30px;scroll-margin-top:120px}#offerInquiry>p{font-size:14px}.inquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}#offerInquiry input:not([type=hidden]),#offerInquiry textarea{width:100%;display:block;padding:13px 14px;border:1px solid #b7b7b2;border-radius:4px;background:#fff;color:#191a20;font:16px Barlow;min-width:0}#offerInquiry input:focus,#offerInquiry textarea:focus{outline:2px solid #e80a22;outline-offset:2px}#offerInquiry label{font-size:14px}#offerInquiry textarea{resize:vertical}#offerInquiry .inquiry-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#offerSubmit{width:100%;margin-top:12px}#offerSubmit:disabled{opacity:.65;cursor:wait}#offerFormStatus{font-size:14px;margin:15px 0 0}#offerFormStatus.error{color:#ab0019}#offerFormStatus.success{color:#206036}.preview-form-note{padding:12px;background:#fff0ce;color:#624800;font-size:12px!important;border-left:3px solid #c18b17}#servicewahl .grid{grid-template-columns:1.2fr 1fr;align-items:start}.booking img{object-position:center;filter:none;max-height:430px}#offerInquiry .note{font-size:12px}.panel:has(#offerInquiry){min-width:0}@media(max-width:1300px){#navbar .nav-links{display:none}#navbar .hamburger{display:block}#navbar .nav-cta{margin-left:auto}}@media(max-width:760px){#navbar .nav-inner{gap:10px;padding:0 5%}#navbar .nav-cta{gap:8px}#servicewahl .grid{grid-template-columns:1fr}.inquiry-fields{grid-template-columns:1fr}#offerInquiry{scroll-margin-top:90px}#offerInquiry label{margin-top:14px}}

/* Persistent, high-contrast enquiry result, visible in both themes. */
.offers-page #offerFormStatus:empty{display:none}
.offers-page #offerFormStatus.success,.offers-page #offerFormStatus.error{display:block;padding:18px 20px;margin-top:20px;border:1px solid;border-radius:6px;font-size:16px;font-weight:600;line-height:1.6;scroll-margin:150px 0 110px}
.offers-page #offerFormStatus.success{background:#e8f5ec;color:#14532d;border-color:#58a974}
.offers-page #offerFormStatus.error{background:#fff0f1;color:#8f1230;border-color:#ce7187}
@media(max-width:760px){.offers-page #offerFormStatus.success,.offers-page #offerFormStatus.error{padding:16px;font-size:16px;scroll-margin-top:110px}}
