@font-face{font-family:FestivalPanta;src:url('/front/static/festival/jahresangebot/assets/PantaRay_Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:FestivalPanta;src:url('/front/static/festival/jahresangebot/assets/PantaRay_Bold.woff2') format('woff2');font-weight:700;font-display:swap}
/* Only this landing page uses its own centered logo instead of CMS navigation. */
body:has(#cc-festival) #header,body:has(#cc-festival) .navHolderMobilSection{display:none!important}
#cc-festival{--fa-text:var(--cc-ui-text);--fa-soft:var(--cc-ui-muted);--fa-cyan:var(--cc-ui-accent);--fa-border:var(--cc-ui-line);color:var(--fa-text);background:radial-gradient(ellipse 70% 20% at 80% 9%,#173b3a70,transparent),#070d0e;font:18px/1.6 FestivalPanta,Arial,sans-serif;color-scheme:dark;overflow-wrap:break-word}
#cc-festival *,#cc-festival *:before,#cc-festival *:after{box-sizing:border-box}
#cc-festival [hidden]{display:none!important}
#cc-festival h1,#cc-festival h2:not(.cc-register-title),#cc-festival h3,#cc-festival p:not(.cc-register-hint),#cc-festival figure,#cc-festival blockquote{margin:0}
#cc-festival h1,#cc-festival h2:not(.cc-register-title),#cc-festival h3{font-weight:700;line-height:1.15;text-wrap:balance}
#cc-festival .fa-hero-copy{container-type:inline-size}
#cc-festival h1{font-size:clamp(22px,8cqw,48px);letter-spacing:-.025em;margin:22px 0;text-wrap:initial}
#cc-festival h2:not(.cc-register-title){font-size:clamp(30px,3.2vw,44px);letter-spacing:-1px;margin:12px 0 24px}
#cc-festival h3{font-size:24px;margin:12px 0}
#cc-festival em{font-style:normal;color:var(--fa-cyan)}
#cc-festival a:not(.cc-ui-button){color:var(--fa-cyan);text-underline-offset:5px}
#cc-festival button:not(.cc-ui-button):not([data-mode]){font:inherit}
#cc-festival button{cursor:pointer}
#cc-festival button:disabled{cursor:wait;opacity:.65}
#cc-festival :is(a,button,input,select,summary):focus-visible{outline:3px solid #e9d6aa;outline-offset:5px}
#cc-festival img{display:block;max-width:100%;height:auto}
#cc-festival .fa-wrap{width:min(1180px,calc(100% - 80px));margin-inline:auto}
#cc-festival .fa-eyebrow{color:#aac5be;font-size:13px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase}
#cc-festival .fa-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--fa-cyan);margin-right:8px;vertical-align:middle}
#cc-festival .fa-masthead{display:flex;align-items:center;justify-content:center;padding:26px 0}
#cc-festival .fa-masthead img{width:192px}
#cc-festival .fa-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:70px;align-items:center;padding-block:72px 88px}
#cc-festival .fa-lead{font-size:21px;color:#e1e8e5;line-height:1.5}

#cc-festival .fa-offer{max-width:485px;scroll-margin-top:30px}
#cc-festival .fa-price-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
#cc-festival .fa-offer-label{font-size:14px;color:#dbe4df}
#cc-festival .fa-price{font-size:66px;line-height:1.12;font-weight:700;letter-spacing:-2px;margin-top:4px;white-space:nowrap}
#cc-festival .fa-price>span{font-size:34px;letter-spacing:0}
#cc-festival .fa-price del{color:#a7b8b5;font-size:22px;font-weight:400;letter-spacing:0;margin-left:8px;text-decoration-thickness:1px}
#cc-festival .fa-saving{color:#d2e8da;border:1px solid #d2e8da50;border-radius:100px;padding:5px 11px;font-size:13px;white-space:nowrap}
#cc-festival .fa-offer .fa-button{margin:18px 0 13px}
#cc-festival .fa-small{color:#bdcdca;font-size:13px;line-height:1.6}
#cc-festival .fa-reassurance{font-size:14px;color:#c2d2cb;margin:14px 0 0 3px}
#cc-festival .fa-reassurance span{color:var(--fa-cyan);margin-right:7px}


















#cc-festival .fa-section{padding-block:96px}













#cc-festival .fa-catalog-note{font-size:13px;color:#a9bcb6;max-width:760px;margin-top:30px}
#cc-festival .fa-start-section{border-top:1px solid var(--fa-border);padding-top:80px}
#cc-festival .fa-steps{list-style:none;padding:0;margin:32px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
#cc-festival .fa-steps li{display:flex;gap:18px}
#cc-festival .fa-steps li>span{font-size:29px;color:#78c3b6;line-height:1.4}
#cc-festival .fa-steps h3{margin:4px 0 10px;font-size:21px}
#cc-festival .fa-steps p{font-size:15px;color:var(--fa-soft)}
#cc-festival .fa-story{padding-block:80px;background:#102323;border-block:1px solid var(--fa-border)}
#cc-festival .fa-story-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:70px}
#cc-festival .fa-story-grid p:not(.fa-eyebrow){font-size:17px;color:#c4d3cc;margin-bottom:16px;max-width:44ch}
#cc-festival .fa-story-grid img{width:100%}
#cc-festival .fa-story-grid figcaption{font-size:13px;color:#b8c4bb;text-align:center;margin-top:10px}
#cc-festival .fa-text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;font-size:16px}
#cc-festival .fa-faq{display:grid;grid-template-columns:1fr 1.8fr;gap:70px;border-top:1px solid var(--fa-border);padding-top:58px}
#cc-festival .fa-faq>div>p:not(.fa-eyebrow){font-size:16px;color:var(--fa-soft)}
#cc-festival details{border-bottom:1px solid var(--fa-border)}
#cc-festival summary{font-size:18px;font-weight:700;cursor:pointer;list-style:none;padding:20px 32px 20px 0;position:relative}
#cc-festival summary::-webkit-details-marker{display:none}
#cc-festival summary:after{content:'+';position:absolute;right:3px;color:var(--fa-cyan);font-weight:400;font-size:24px;top:16px}
#cc-festival details[open] summary:after{content:'−'}
#cc-festival details p{color:var(--fa-soft);font-size:16px;padding:0 20px 18px 0}
#cc-festival .fa-closing{text-align:center;padding:48px 25px}
#cc-festival .fa-closing .fa-button{max-width:410px;margin:25px auto 15px}





#cc-festival .fa-skip{position:fixed;top:-100px;left:20px;padding:10px;z-index:50;background:#153232}
#cc-festival .fa-skip:focus{top:10px}
#cc-festival .fa-dialog>.fa-eyebrow{padding-right:42px;font-size:11px}
#cc-festival .fa-dialog h3{font-size:23px;margin:18px 0 12px}
#cc-festival .fa-close{position:absolute;right:14px;top:12px;width:44px;height:44px;border:1px solid var(--fa-border);border-radius:50%;background:#ffffff08;color:#fff;font-size:28px;line-height:1}
#cc-festival .fa-checkout-price{border-bottom:1px solid var(--fa-border);padding:0 0 18px;margin-bottom:24px;color:#dbe5df;font-size:16px}
#cc-festival .fa-checkout-price small{display:block;color:var(--fa-soft);font-size:13px;margin-top:4px}
#cc-festival .fa-link-button{padding:10px 0;background:transparent;border:0;color:var(--fa-cyan);text-decoration:underline;text-underline-offset:4px;font-size:14px;min-height:44px;margin-right:15px}
#cc-festival .fa-dialog [data-code-form] input{letter-spacing:8px;font-size:25px}
#cc-festival .fa-dialog [data-message]{font-size:15px;color:#f1d9b3;margin:15px 0 0}
#cc-festival .fa-dialog [data-payment] p{font-size:16px;color:#cedbd6;margin:15px 0}
#cc-festival .fa-dialog [data-payment] .fa-button{margin-top:24px}
#cc-festival .fa-video-dialog{width:min(1000px,calc(100% - 24px));padding:22px}
#cc-festival .fa-video-dialog h2{font-size:24px}
html:has(#fa-checkout[open]),html.fa-trailer-open{overflow:hidden}
@media(max-width:1000px){#cc-festival .fa-wrap{width:calc(100% - 48px)}#cc-festival .fa-hero{gap:15px}#cc-festival .fa-hero .fa-eyebrow{font-size:11px;letter-spacing:1px}#cc-festival .fa-story-grid,#cc-festival .fa-faq{gap:35px}}
@media(max-width:720px){#cc-festival .fa-wrap{width:calc(100% - 36px)}#cc-festival .fa-masthead{padding-block:17px}#cc-festival .fa-masthead img{width:150px}#cc-festival .fa-hero{grid-template-columns:1fr;padding-block:32px 24px;gap:6px}#cc-festival .fa-lead{font-size:18px}#cc-festival .fa-offer{max-width:none}#cc-festival .fa-price{font-size:58px}#cc-festival .fa-button{font-size:16px;padding-inline:12px}#cc-festival .fa-small{font-size:12px}#cc-festival .fa-section{padding-block:64px}#cc-festival .fa-steps{grid-template-columns:1fr;gap:26px}#cc-festival .fa-steps p{max-width:42ch}#cc-festival .fa-story{padding-block:56px}#cc-festival .fa-story-grid{grid-template-columns:1fr;gap:25px}#cc-festival .fa-story-grid img{max-width:440px;margin:auto}#cc-festival .fa-faq{grid-template-columns:1fr;gap:20px}#cc-festival summary{font-size:16px}#cc-festival .fa-closing{padding:32px 17px}#cc-festival .fa-closing h2{font-size:31px}#cc-festival .fa-closing>p:not(.fa-small):not(.fa-eyebrow){font-size:16px}}
@media(max-width:360px){#cc-festival .fa-wrap{width:calc(100% - 28px)}#cc-festival .fa-saving{font-size:11px;padding:5px 8px}#cc-festival .fa-button{font-size:14px;gap:8px}}
@media(prefers-reduced-motion:reduce){#cc-festival *{scroll-behavior:auto!important;transition:none!important}}

/* Testimonial cards copied from Beginnen; isolated selectors, same appearance. */
  #cc-festival .fa-t-quotes{display:grid;grid-template-columns:minmax(0,1fr);gap:72px;margin-top:24px;padding-top:48px}
  #cc-festival .fa-t-quote{position:relative;height:100%;min-width:0;margin:0;padding:70px 30px 32px;border:1px solid rgba(255,255,255,.13);border-radius:0;background:linear-gradient(145deg,rgba(49,199,207,.1),transparent 48%),#181b20;box-shadow:none;text-align:center}
  #cc-festival .fa-t-quote-head{display:block;position:static;width:auto;height:auto;margin:0 0 24px;padding:0;background:none;border:0;box-shadow:none;text-align:center}
  #cc-festival .fa-t-portrait{display:block;position:absolute;top:-48px;left:50%;width:96px;height:96px;max-width:none;margin:0;border-radius:50%;object-fit:cover;transform:translateX(-50%);box-shadow:0 12px 30px rgba(0,0,0,.42)}
  #cc-festival .fa-t-quote-head strong{display:block;color:#fff6e8;font-size:18px;line-height:1.55}
  #cc-festival .fa-t-quote-head small{display:block;color:#c2c5ca;font-size:15px;line-height:1.55}
  #cc-festival .fa-t-quote blockquote{margin:0;padding:0;border:0;font-style:normal;text-align:center;background:none;quotes:none}
  #cc-festival .fa-t-quote blockquote::before,#cc-festival .fa-t-quote blockquote::after{content:none}
  #cc-festival .fa-t-quote blockquote p{margin:0;color:#fff6e8;font-size:18px;line-height:1.55;text-align:center}
  @media(min-width:900px){#cc-festival .fa-t-quotes{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}}

/* Quiet introduction: copy on the left, annual offer on the right, one film-world image below. */
#cc-festival .fa-hero-offer{width:100%;max-width:485px;justify-self:end;min-width:0}
#cc-festival .fa-offer h2{font-size:24px;line-height:1.3;letter-spacing:-.3px;margin:0 0 24px}
#cc-festival .fa-filmworld{margin:0 auto 80px;text-align:center}
#cc-festival .fa-filmworld picture{display:block;overflow:hidden;border-radius:10px}
#cc-festival .fa-filmworld img{width:100%;height:auto}
#cc-festival .fa-filmworld figcaption{font-size:25px;line-height:1.5;margin:32px auto 16px;text-wrap:balance}
#cc-festival .fa-filmworld figcaption em{font-size:19px;color:var(--fa-soft)}
#cc-festival .fa-filmworld .fa-catalog-note{margin:0 auto;max-width:760px}
@media(max-width:720px){#cc-festival .fa-hero-offer{max-width:none;margin-top:28px}#cc-festival .fa-hero{padding-bottom:56px}#cc-festival .fa-offer h2{font-size:22px;margin-bottom:20px}#cc-festival .fa-filmworld{margin-bottom:56px}#cc-festival .fa-filmworld figcaption{font-size:21px;margin-top:24px}#cc-festival .fa-filmworld figcaption em{font-size:16px}#cc-festival .fa-filmworld .fa-catalog-note{font-size:12px}}

/* Same benefit row as Beginnen, scoped to this page. */
#cc-festival .fa-benefits{display:flex;flex-wrap:wrap;gap:6px 18px;padding:0;margin:18px 0 22px;list-style:none}
#cc-festival .fa-benefits li{display:block;margin:0;padding:0;font-size:16px;line-height:1.5}
#cc-festival .fa-benefits li::before{content:'✓';color:#71dce0;margin-right:7px}
@media(min-width:1120px){#cc-festival .fa-benefits{column-gap:8px}#cc-festival .fa-benefits li{font-size:15px}#cc-festival .fa-benefits li::before{margin-right:4px}}

#cc-festival .fa-perks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;padding-block:8px 80px}
#cc-festival .fa-perks h2{font-size:28px;letter-spacing:-.5px;margin:0 0 22px}
#cc-festival .fa-perks ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}
#cc-festival .fa-perks li{position:relative;margin:0;padding-left:27px;font-size:18px;line-height:1.6}
#cc-festival .fa-perks li::before{content:"✓";position:absolute;left:0;top:0;color:var(--fa-cyan)}
@media(max-width:720px){#cc-festival .fa-perks{grid-template-columns:1fr;gap:40px;padding-block:4px 56px}#cc-festival .fa-perks h2{font-size:25px;margin-bottom:18px}#cc-festival .fa-perks li{font-size:17px}}

/* Festival-only Creme adaptation. Shared box/button/dialog styles remain in the
 * central theme files; these rules adapt the remaining editorial/form colors.
 * Both theme files are loaded; data-cc-theme selects the active palette.
 */
/* Keep breathing room below the final offer in Creme; compact the CMS footer gap only here. */
#cc-festival[data-cc-theme="creme"] { padding-bottom:88px; }
body:has(#cc-festival[data-cc-theme="creme"]) .footerLogoBar { margin-top:32px; }
@media(max-width:720px) {
  #cc-festival[data-cc-theme="creme"] { padding-bottom:56px; }
  body:has(#cc-festival[data-cc-theme="creme"]) .footerLogoBar { margin-top:24px; }
}
#cc-festival[data-cc-theme="creme"] {
  color-scheme: var(--cc-ui-color-scheme);
  background:
    radial-gradient(ellipse 80% 16% at 8% 0%,#fffefa,transparent 75%),
    radial-gradient(ellipse 65% 16% at 95% 5%,color-mix(in srgb,var(--cc-creme-copper) 18%,transparent),transparent 72%),
    var(--cc-ui-bg);
}
#cc-festival[data-cc-theme="creme"] :is(h1,h2,h3),
#cc-festival[data-cc-theme="creme"] .fa-offer-label,
#cc-festival[data-cc-theme="creme"] .fa-checkout-price,
#cc-festival[data-cc-theme="creme"] .fa-t-quote-head strong,
#cc-festival[data-cc-theme="creme"] .fa-t-quote blockquote p { color:var(--cc-ui-text); }
#cc-festival[data-cc-theme="creme"] .fa-eyebrow { color:var(--cc-creme-warm-text); }
#cc-festival[data-cc-theme="creme"] .fa-lead,
#cc-festival[data-cc-theme="creme"] .fa-small,
#cc-festival[data-cc-theme="creme"] .fa-price del,
#cc-festival[data-cc-theme="creme"] .fa-reassurance,
#cc-festival[data-cc-theme="creme"] .fa-catalog-note,
#cc-festival[data-cc-theme="creme"] .fa-story-grid p:not(.fa-eyebrow),
#cc-festival[data-cc-theme="creme"] .fa-story-grid figcaption,
#cc-festival[data-cc-theme="creme"] .fa-t-quote-head small,
#cc-festival[data-cc-theme="creme"] .fa-dialog .fa-check,
#cc-festival[data-cc-theme="creme"] .fa-dialog [data-payment] p { color:var(--cc-ui-muted); }
#cc-festival[data-cc-theme="creme"] .fa-saving { color:var(--cc-ui-accent);border-color:var(--cc-ui-line); }
#cc-festival[data-cc-theme="creme"] .fa-steps li>span,
#cc-festival[data-cc-theme="creme"] .fa-benefits li::before { color:var(--cc-ui-accent); }
#cc-festival[data-cc-theme="creme"] .fa-story { background:color-mix(in srgb,var(--cc-creme-paper) 55%,var(--cc-ui-bg)); }
#cc-festival[data-cc-theme="creme"] .fa-t-quote { background:var(--cc-ui-glass-background);border-color:var(--cc-ui-line); }
#cc-festival[data-cc-theme="creme"] .fa-t-portrait { box-shadow:0 12px 30px #65482726; }
#cc-festival[data-cc-theme="creme"] .fa-skip { background:var(--cc-creme-paper); }
#cc-festival[data-cc-theme="creme"] .fa-close { background:var(--cc-ui-bg);color:var(--cc-ui-text); }
#cc-festival[data-cc-theme="creme"] .fa-dialog [data-message] { color:var(--cc-creme-warm-text); }
#cc-festival[data-cc-theme="creme"] :is(a,button,input,select,summary):focus-visible { outline-color:var(--cc-ui-focus); }

/* Festival atmosphere: page-local art direction on top of the shared components. */
#cc-festival .fa-hero-scene{position:relative;isolation:isolate;overflow:hidden}
/* Fade only the decorative layers into the page background, including its theme gradients. */
#cc-festival .fa-hero-art,#cc-festival .fa-hero-veil{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,#000 60%,#000c 72%,#0006 86%,transparent 100%);mask-image:linear-gradient(to bottom,#000 60%,#000c 72%,#0006 86%,transparent 100%)}
#cc-festival .fa-hero-art{object-fit:cover;object-position:60% 38%;opacity:.85}
#cc-festival .fa-hero-veil{background:linear-gradient(90deg,#070d0ef5 0%,#070d0ec9 37%,#070d0e45 70%,#070d0e70),linear-gradient(0deg,#070d0e,transparent 34%,#070d0e30 90%)}
#cc-festival .fa-hero{min-height:620px;padding-block:100px 112px;position:relative}
#cc-festival .fa-hero h1{text-transform:none;font-weight:400;line-height:1.17}
#cc-festival .fa-hero .fa-eyebrow{color:#efca91}
#cc-festival .fa-hero .fa-dot{background:currentColor}
#cc-festival .fa-hero .fa-lead{max-width:42ch;line-height:1.65}
#cc-festival .fa-filmworld{margin-top:36px}
#cc-festival .fa-filmworld picture{box-shadow:0 20px 60px #0003}
#cc-festival[data-cc-theme="creme"] .fa-hero-art{opacity:.48}
#cc-festival[data-cc-theme="creme"] .fa-hero-veil{background:linear-gradient(90deg,#f6efe4fa 0%,#f6efe4e8 34%,#f6efe447 72%,#f6efe48c),linear-gradient(0deg,var(--cc-ui-bg),transparent 44%,#f6efe438)}
#cc-festival[data-cc-theme="creme"] .fa-hero .fa-eyebrow{color:var(--cc-creme-warm-text)}
#cc-festival[data-cc-theme="creme"] .cc-ui-offer .fa-eyebrow{color:#efca91}
#cc-festival[data-cc-theme="creme"] .cc-ui-offer :is(h2,.fa-offer-label,.fa-small,.fa-price del,.fa-saving){color:var(--cc-ui-text)}
#cc-festival[data-cc-theme="creme"] .cc-ui-offer .fa-small,#cc-festival[data-cc-theme="creme"] .cc-ui-offer .fa-price del{color:var(--cc-ui-muted)}
#cc-festival[data-cc-theme="creme"] .cc-ui-offer :is(a,button):focus-visible{outline-color:var(--cc-ui-focus)}
#cc-festival[data-cc-theme="creme"] .cc-ui-offer em{color:var(--cc-ui-accent)}
#cc-festival[data-cc-theme="creme"] .fa-filmworld picture{box-shadow:0 18px 48px #65482721}
@media(max-width:1000px) and (min-width:721px){#cc-festival .fa-hero{min-height:560px;padding-block:80px}}
@media(max-width:720px){
 #cc-festival .fa-hero{min-height:0;padding-block:52px 64px;gap:12px}
 #cc-festival .fa-hero-art{object-position:60% top;opacity:.55}
 #cc-festival .fa-hero-veil{background:linear-gradient(90deg,#070d0ed9,#070d0e75),linear-gradient(0deg,#070d0e,transparent 62%)}
 #cc-festival .fa-hero-offer{margin-top:18px}
 #cc-festival .fa-filmworld{margin-top:12px}
 #cc-festival[data-cc-theme="creme"] .fa-hero-art{opacity:.35}
 #cc-festival[data-cc-theme="creme"] .fa-hero-veil{background:linear-gradient(90deg,#f6efe4eb,#f6efe48c),linear-gradient(0deg,var(--cc-ui-bg),transparent 80%)}
}
