/* Nahtlose, schräge Übergänge zwischen Line-up, Ticket-CTA, FAQ und Location. */
.fg-wpb-lineup-heading{position:relative;z-index:1;margin:0!important;padding-bottom:20px!important;background:#03080d;color:#fff}
.fg-wpb-lineup-heading>.wpb_column>.vc_column-inner{padding-bottom:0!important}
.fg-wpb-lineup{position:relative;z-index:1;margin-bottom:0!important;padding-bottom:0!important}
.fg-wpb-lineup>.wpb_column>.vc_column-inner{padding-bottom:0!important}
.fg-wpb-timetable{width:100%!important;margin:0!important}
.fg-wpb-timetable>.wpb_column>.vc_column-inner{padding:0!important}
.fg-wpb-timetable .wpb_wrapper{margin:0!important}
.fg-wpb-legends{width:100%!important;margin:0!important}
.fg-wpb-legends>.wpb_column>.vc_column-inner{padding:0!important}
.fg-wpb-legends .wpb_wrapper{margin:0!important}
.fg-wpb-lineup .fq-lineup{margin-bottom:0!important}
.ticket-band{position:relative!important;z-index:3!important;isolation:isolate;margin:0!important;padding:135px max(20px,calc((100vw - 1180px)/2)) 145px!important;overflow:visible!important;clip-path:none!important}
.ticket-band:before,.ticket-band:after{content:""!important;position:absolute!important;left:0!important;width:100%!important;background:var(--fq-blue,#35c7f2)!important;pointer-events:none!important}
.ticket-band:before{z-index:0!important;top:-72px!important;height:74px!important;clip-path:polygon(0 42%,100% 0,100% 100%,0 100%)!important}
.ticket-band:after{z-index:0!important;bottom:-54px!important;height:56px!important;clip-path:polygon(0 0,100% 0,100% 35%,0 100%)!important}
.ticket-band.fg-edge-top-rtl:before{clip-path:polygon(0 0,100% 42%,100% 100%,0 100%)!important}
.ticket-band.fg-edge-bottom-rtl:after{clip-path:polygon(0 0,100% 0,100% 100%,0 35%)!important}
.ticket-band.fg-edge-top-none:before,.ticket-band.fg-edge-bottom-none:after{display:none!important}
.ticket-band>.container{position:relative;z-index:2}
.ticket-band .display-title{max-width:820px!important;margin:.18em auto .42em!important;font-size:clamp(3.4rem,7vw,7rem)!important;line-height:.96!important}
.ticket-band .section-label{text-align:center}
.fg-cta-row .ticket-band .section-label,.fg-cta-row .ticket-band .display-title{position:relative;text-shadow:none!important;-webkit-text-stroke:0 transparent!important;filter:none!important;mix-blend-mode:normal!important;backface-visibility:hidden}

/* FAQ kompakter, mittig und wie eine eigenständige Festival-Sektion. */
.fg-wpb-faq-preview{position:relative;z-index:1;display:flex!important;align-items:center!important;flex-wrap:wrap!important;min-height:600px!important;width:100%!important;margin:0!important;padding:150px max(40px,calc((100vw - 1180px)/2)) 110px!important;background:#f4f7f8}
.fg-wpb-faq-preview>.wpb_column{float:none!important;display:flex;align-items:flex-start}
.fg-wpb-faq-preview>.wpb_column>.vc_column-inner{width:100%;padding:0 28px!important}
.fg-wpb-faq-preview .display-title{font-size:clamp(4.2rem,8vw,8rem)!important;margin:.12em 0!important}
.fg-wpb-faq-preview .vc_toggle{margin:0 0 12px!important;padding:0!important;border:1px solid #d8e0e4;border-radius:10px;background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(3,8,13,.05)}
.fg-wpb-faq-preview .vc_toggle_title{padding:20px 54px 20px 22px!important}
.fg-wpb-faq-preview .vc_toggle_title h4{font-size:1rem!important;font-weight:900!important}
.fg-wpb-faq-preview .vc_toggle_content{padding:0 22px 22px!important;margin:0!important;color:#45515a}
.fg-wpb-faq-preview .vc_btn3-container{margin:24px 0 0!important}
.fg-wpb-faq-preview .vc_btn3{background:#03080d!important;color:#fff!important;border-radius:0!important;padding:14px 22px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.06em}
.fg-wpb-faq-preview .fg-faq-extra{display:none!important}
.fg-wpb-faq-preview.is-faq-expanded .fg-faq-extra{display:block!important;animation:fgFaqReveal .28s ease both}
@keyframes fgFaqReveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* Location in einer zentrierten, ausgeglichenen Zweispalten-Komposition. */
.fg-wpb-location{position:relative;z-index:2;display:flex!important;align-items:center!important;flex-wrap:wrap!important;min-height:560px!important;width:100%!important;margin:0!important;padding:125px max(40px,calc((100vw - 1180px)/2)) 110px!important;background-color:#d8d0bd}
.fg-wpb-location:not(.fg-row-edges-configured):before{content:"";position:absolute;left:0;right:0;top:-44px;height:46px;background:inherit;clip-path:polygon(0 96%,100% 0,100% 100%,0 100%);pointer-events:none}
.fg-wpb-location>.wpb_column{float:none!important;display:flex;align-items:center}
.fg-wpb-location>.wpb_column>.vc_column-inner{width:100%;padding:0 28px!important}
.fg-wpb-location .display-title{max-width:100%!important;font-size:clamp(3.2rem,5.4vw,6rem)!important;line-height:.84!important;margin:.12em 0!important;white-space:normal!important}
.fg-wpb-location>.wpb_column:first-child{position:relative;z-index:3;overflow:hidden}
.fg-wpb-location>.wpb_column:last-child{position:relative;z-index:2}
.fg-location-box{width:100%;max-width:580px;margin-left:auto;padding:48px!important;border-radius:20px!important;box-shadow:0 24px 65px rgba(3,8,13,.1)}
.fg-location-box h3{font-size:1.65rem;margin-top:0}
.fg-location-box .button{width:auto!important;min-width:180px}
.fg-location-map-box{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,240px);grid-template-areas:"title map" "address map" "route map";column-gap:28px;align-items:start}
.fg-location-map-box h3{grid-area:title;margin-bottom:8px}
.fg-location-address{grid-area:address;margin:0 0 18px;line-height:1.45}
.fg-location-map{grid-area:map;width:100%;height:var(--fg-map-height,210px);min-height:140px;overflow:hidden;border-radius:12px;background:#dfe5e8}
.fg-location-map iframe{display:block;width:100%;height:100%;border:0}
.fg-location-route{grid-area:route;margin:0}
.fg-location-route .button{min-height:48px;padding:10px 18px!important;font-size:.78rem}
.fg-location-map-box-card,.fg-location-map-box-info{background:var(--fg-location-card-bg,#f4f7f8)!important;color:var(--fg-location-card-text,#071018)!important;border-radius:var(--fg-location-card-radius,20px)!important}
.fg-location-map-box-info{display:block}
.fg-wpb-location:has(.fg-location-map-box-background):not(.fg-row-design){isolation:isolate;background:#b8c1c0!important;color:#071018}
.fg-wpb-location:has(.fg-location-map-box-background)>.wpb_column{position:relative;z-index:3}
.fg-wpb-location:has(.fg-location-map-box-background)>.wpb_column:last-child{position:static!important}
.fg-location-map-box-background{display:block;position:static;max-width:520px;padding:34px 38px!important;background:var(--fg-location-card-bg,#f4f7f8)!important;color:var(--fg-location-card-text,#071018)!important;border:1px solid rgba(255,255,255,.72);border-radius:var(--fg-location-card-radius,8px)!important;backdrop-filter:blur(8px)}
.fg-location-map-box-background .fg-location-map{position:absolute;z-index:0;inset:0;width:100%;height:100%;min-height:100%;border-radius:0;background:#aeb8b8}
.fg-location-map-box-background .fg-location-map:after{content:"";position:absolute;z-index:2;inset:0;background:var(--fg-location-overlay,#dfe8eb);opacity:var(--fg-location-overlay-opacity,.72);pointer-events:none}
.fg-location-map-box-background .fg-location-map iframe{position:relative;z-index:1;filter:var(--fg-location-map-filter,grayscale(1) contrast(.86));opacity:var(--fg-location-map-opacity,.88)}
.fg-location-map-box-background .fg-location-map .fg-external-placeholder{z-index:3;background:linear-gradient(115deg,#aeb9b9,#d6dddd);color:#071018}
.fg-location-map-box-background .fg-location-map .fg-external-placeholder:after{content:"Karte nach Zustimmung verfügbar";padding:8px 12px;background:rgba(255,255,255,.78);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.fg-location-map-box-background .fg-location-map .fg-external-placeholder>strong,.fg-location-map-box-background .fg-location-map .fg-external-placeholder>span{display:none}
.fg-location-map-box-background .fg-location-map .fg-external-placeholder button{position:relative;z-index:3}

/* Ausgewählte Unterseiten erscheinen als einheitlicher Onepage-Bereich nach dem Startseiteninhalt. */
.fg-onepage-panel{position:relative;z-index:2;padding:120px max(24px,calc((100vw - 1180px)/2));background:#eef3f5;color:#071018;scroll-margin-top:30px}
.fg-onepage-panel-head{text-align:center;max-width:1100px;margin:0 auto 58px}
.fg-onepage-panel-head .display-title{font-size:clamp(3.4rem,7vw,7.6rem)!important;line-height:.9!important;margin:.14em auto 0!important;overflow-wrap:anywhere}
.fg-onepage-panel-content{width:min(100%,1000px);margin:0 auto;padding:54px clamp(24px,5vw,70px);background:#fff;border-radius:22px;box-shadow:0 24px 70px rgba(3,8,13,.1)}
.fg-onepage-panel-content>.fg-page-hero,.fg-onepage-panel-content .fg-ambassador-hero{display:none!important}
.fg-onepage-panel-content .fg-ambassador-page{padding:0!important;background:transparent!important}
.fg-onepage-panel-content .fg-ambassador-page>.wpb_column>.vc_column-inner{padding:0!important}
.fg-onepage-panel-content .fg-legal-page{max-width:none!important;padding:0!important}
.fg-onepage-panel-content .fg-legal-page h1:first-of-type{display:none}
.fg-cookie-policy>p:first-child{margin-top:0}.fg-cookie-summary{margin:28px 0 38px;padding:22px 24px;border-left:4px solid #35c7f2;background:#eef5f7}.fg-cookie-summary strong{display:block;margin-bottom:6px;text-transform:uppercase;font-size:.76rem;letter-spacing:.08em}.fg-cookie-summary p{margin:0}.fg-cookie-policy h2{margin:46px 0 14px;font-size:1.55rem;line-height:1.2}.fg-cookie-policy code{padding:2px 5px;background:#eef3f5;font-size:.88em;overflow-wrap:anywhere}.fg-cookie-table-wrap{width:100%;margin:20px 0 14px;overflow-x:auto;-webkit-overflow-scrolling:touch}.fg-cookie-table{width:100%;min-width:720px;border-collapse:collapse;font-size:.92rem;line-height:1.5}.fg-cookie-table th,.fg-cookie-table td{padding:15px 16px;border:1px solid #cfd9dd;text-align:left;vertical-align:top}.fg-cookie-table th{background:#071018;color:#fff;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.fg-cookie-table tbody tr:nth-child(even){background:#f5f8f9}.fg-cookie-table a{text-underline-offset:3px}
.fg-onepage-panel-content>.vc_row,.fg-onepage-panel-content .vc_row{margin-left:0!important;margin-right:0!important}
.fg-onepage-panel-content>.vc_row>.wpb_column>.vc_column-inner{padding-left:0!important;padding-right:0!important}
.fg-onepage-panel-content .fg-wpb-section{width:100%!important;padding:0!important}
.fg-panel-kontakt .fg-onepage-panel-content{width:min(100%,1180px);padding:0;background:transparent;border-radius:0;box-shadow:none}
.fg-panel-kontakt .fg-onepage-panel-content .fg-wpb-section{display:block!important;width:100%!important}
.fg-panel-kontakt .fg-onepage-panel-content .fg-wpb-section>.wpb_column{float:none!important;width:100%!important}
.fg-panel-kontakt .fg-onepage-panel-content .fg-wpb-section>.wpb_column>.vc_column-inner{height:auto;padding:0!important;background:transparent;border-radius:0}
.fg-panel-kontakt .fg-onepage-panel-content h2{font-size:1.7rem;margin-top:0}
.fg-contact-form{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);align-items:start;gap:clamp(38px,6vw,86px);margin:0;padding:clamp(36px,5vw,70px);scroll-margin-top:110px;background:var(--fg-contact-bg,#071018);color:var(--fg-contact-text,#fff);border-top:1px solid color-mix(in srgb,var(--fg-contact-text,#fff) 24%,transparent);border-bottom:1px solid color-mix(in srgb,var(--fg-contact-text,#fff) 24%,transparent);border-radius:4px}
.fg-contact-form-head{max-width:430px;margin:0}.fg-contact-form-head>span{display:block;margin-bottom:16px;color:var(--fg-contact-accent,#35c7f2);font-size:.72rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.fg-contact-form-head h3{margin:0 0 20px;font-size:clamp(2.25rem,4.2vw,4rem);line-height:.96;text-transform:uppercase;overflow-wrap:anywhere}.fg-contact-form-head p{margin:0;color:color-mix(in srgb,var(--fg-contact-text,#fff) 72%,transparent);font-size:1rem;line-height:1.65}
.fg-contact-form-body{min-width:0}.fg-contact-form form{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}.fg-contact-form label{display:grid;gap:8px;min-width:0;color:var(--fg-contact-text,#fff);font-size:.73rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.fg-contact-form input,.fg-contact-form select,.fg-contact-form textarea{width:100%;min-width:0;padding:14px 15px;border:1px solid var(--fg-contact-border,#3b4a52);border-radius:3px;background:var(--fg-contact-field,#101c23);color:var(--fg-contact-text,#fff);font:inherit;font-size:1rem;line-height:1.4;transition:border-color .18s ease,box-shadow .18s ease}.fg-contact-form input,.fg-contact-form select{min-height:52px}.fg-contact-form textarea{min-height:170px;resize:vertical}.fg-contact-form select option{background:var(--fg-contact-field,#101c23);color:var(--fg-contact-text,#fff)}.fg-contact-form input:focus,.fg-contact-form select:focus,.fg-contact-form textarea:focus{outline:0;border-color:var(--fg-contact-accent,#35c7f2);box-shadow:0 0 0 3px color-mix(in srgb,var(--fg-contact-accent,#35c7f2) 22%,transparent)}.fg-contact-wide{grid-column:1/-1}.fg-contact-form .fg-contact-consent{display:flex;grid-template-columns:none;align-items:flex-start;gap:10px;text-transform:none;letter-spacing:0;font-size:.79rem;font-weight:500;line-height:1.5}.fg-contact-consent input{flex:0 0 auto;width:16px;min-height:16px;margin-top:2px;padding:0;accent-color:var(--fg-contact-accent,#35c7f2)}.fg-contact-consent a{color:var(--fg-contact-accent,#35c7f2);text-underline-offset:3px}.fg-contact-form button{min-height:52px;padding:14px 24px;border:1px solid var(--fg-contact-accent,#35c7f2);border-radius:2px;background:var(--fg-contact-accent,#35c7f2);color:var(--fg-contact-button-text,#071018);font:inherit;font-size:.82rem;font-weight:950;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:filter .18s ease,box-shadow .18s ease}.fg-contact-form button:hover{filter:brightness(1.08)}.fg-contact-form button:focus-visible{outline:3px solid var(--fg-contact-text,#fff);outline-offset:3px}.fg-contact-trap{position:absolute!important;left:-9999px!important}.fg-contact-success,.fg-contact-error{padding:18px 20px;border-left:3px solid var(--fg-contact-accent,#35c7f2);background:color-mix(in srgb,var(--fg-contact-field,#101c23) 86%,transparent);line-height:1.55}.fg-contact-error{margin-bottom:20px;border-color:#ff6868}
.fg-faq-page{width:min(calc(100% - 40px),900px)!important;max-width:900px!important;margin-inline:auto!important;padding:80px 0 100px!important}.fg-faq-page>.wpb_column{float:none!important;width:100%!important}
.fg-panel-ambassador-werden{background:linear-gradient(145deg,#03080d,#0c2833);color:#fff}
.fg-panel-ambassador-werden .fg-onepage-panel-content{width:min(100%,1180px);padding:0;color:#071018;background:transparent;border-radius:0;box-shadow:none}
.fg-panel-ambassador-werden .fg-onepage-panel-content .fg-ambassador-page{background:transparent!important}

/* Frei konfigurierbare Übergänge an jeder normalen WPBakery-Zeile. */
.fg-row-edges-configured{position:relative!important;z-index:2!important;isolation:isolate;overflow:visible!important}
.fg-row-edges-configured:before,.fg-row-edges-configured:after{content:""!important;position:absolute!important;left:-1px!important;width:calc(100% + 2px)!important;height:calc(var(--fg-row-edge-height,48px) + 4px)!important;pointer-events:none!important;z-index:0!important}
.fg-row-edges-configured:before{background:var(--fg-row-edge-top-color,var(--fg-row-edge-color,inherit))!important}
.fg-row-edges-configured:after{background:var(--fg-row-edge-bottom-color,var(--fg-row-edge-color,inherit))!important}
.fg-row-edges-configured:before{top:calc((var(--fg-row-edge-height,48px) * -1) - 2px)!important}
.fg-row-edges-configured:after{bottom:calc((var(--fg-row-edge-height,48px) * -1) - 2px)!important}
.fg-row-edges-configured>.wpb_column{position:relative;z-index:1}
.fg-row-edge-top-ltr:before{display:block!important;clip-path:polygon(0 100%,100% 0,100% 100%,0 100%)!important}
.fg-row-edge-top-rtl:before{display:block!important;clip-path:polygon(0 0,100% 100%,100% 100%,0 100%)!important}
.fg-row-edge-bottom-ltr:after{display:block!important;clip-path:polygon(0 0,100% 0,100% 100%,0 0)!important}
.fg-row-edge-bottom-rtl:after{display:block!important;clip-path:polygon(0 0,100% 0,100% 0,0 100%)!important}
.fg-row-edge-top-none:before,.fg-row-edge-bottom-none:after{display:none!important}

@media(max-width:767px){
 .fg-contact-form{grid-template-columns:1fr;gap:30px;padding:30px 22px}.fg-contact-form-head{max-width:620px}.fg-contact-form form{grid-template-columns:1fr}.fg-contact-wide{grid-column:auto}
 .fg-wpb-lineup-heading{padding-top:70px!important;padding-bottom:16px!important}
 .fg-wpb-lineup{padding-bottom:0!important}
 .ticket-band{padding:var(--cta-mobile-top,88px) 20px var(--cta-mobile-bottom,96px)!important}
 .ticket-band:before{top:-45px!important;height:47px!important}
 .ticket-band:after{bottom:-28px!important;height:30px!important}
 .ticket-band .display-title{max-width:360px!important;font-size:min(var(--cta-mobile-title,44px),12vw)!important;line-height:1!important}
 .ticket-band .container{width:100%!important}
 .ticket-band .button{display:flex!important;width:min(var(--cta-mobile-button,310px),calc(100vw - 40px))!important;margin:22px auto 0!important}
 .fg-wpb-faq-preview,.fg-wpb-location{display:block!important;min-height:0!important;padding-left:20px!important;padding-right:20px!important}
 .fg-wpb-faq-preview{padding-top:105px!important;padding-bottom:90px!important}
 .fg-wpb-location{padding-top:95px!important;padding-bottom:85px!important}
 .fg-wpb-faq-preview>.wpb_column,.fg-wpb-location>.wpb_column{display:block;width:100%!important}
 .fg-wpb-faq-preview>.wpb_column>.vc_column-inner,.fg-wpb-location>.wpb_column>.vc_column-inner{padding:0 10px!important}
 .fg-wpb-faq-preview .display-title,.fg-wpb-location .display-title{font-size:clamp(3.6rem,18vw,6rem)!important;margin-bottom:38px!important}
 .fg-location-box{margin:20px 0 0;padding:30px!important}
 .fg-location-map-box{display:grid;grid-template-columns:1fr;grid-template-areas:"title" "address" "map" "route";gap:0}
 .fg-location-map{margin:8px 0 20px;height:min(var(--fg-map-height,210px),220px)}
 .fg-onepage-panel{padding:78px 18px}
 .fg-onepage-panel-head{margin-bottom:34px}
 .fg-onepage-panel-head .display-title{font-size:clamp(2.6rem,14vw,4.8rem)!important}
 .fg-onepage-panel-content{padding:28px 20px;border-radius:16px}
 .fg-panel-kontakt .fg-onepage-panel-content .fg-wpb-section{display:block!important}
 .fg-panel-kontakt .fg-onepage-panel-content .fg-wpb-section>.wpb_column{width:100%!important;margin-bottom:0}
 .fg-panel-ambassador-werden .fg-onepage-panel-content{padding:0}
 .fg-row-edges-configured{--fg-row-edge-height:min(var(--fg-row-edge-height,48px),55px)}
}
