BLICKPULS Custom CSS (Divi-Bridge)

/* ============================================================
BLICKPULS Divi-Bridge
Verbindet Divis Sektionen/Reihen/Spalten mit dem Original-
Design von blickpuls.de. Wird vom Snippet "BLICKPULS:
Custom-CSS-Seite ausgeben" nach dem Divi-Reset ausgegeben.

Wichtig: Divis eigenes CSS (et-critical-inline-css,
divi-dynamic-css) wird NACH diesem Block geladen und nutzt
teils selbst den #page-container-Praefix. Wo es kollidiert,
braucht es !important - sonst gewinnt Divi bei gleicher
Spezifitaet.
============================================================ */

/* ============================================================
1. Grundraster: Divi-Einstellungen wieder wirksam machen
============================================================ */
#page-container .et_pb_row{width:100%;max-width:none;margin-left:auto;margin-right:auto}
#page-container .et_pb_column{margin-bottom:0}

/* ============================================================
2. Seiteninhalt - Reihen als Original-Raster
============================================================ */

/* Divis Clearfix-Pseudoelemente abschalten: in einem Grid-Container
zaehlen :before/:after als vollwertige Zellen und verschieben dadurch
die echten Spalten (sichtbar z. B. bei .split.flip). */
#page-container .et_pb_row.split:before,
#page-container .et_pb_row.split:after,
#page-container .et_pb_row.cgrid:before,
#page-container .et_pb_row.cgrid:after,
#page-container .et_pb_row.tabpanel:before,
#page-container .et_pb_row.tabpanel:after,
#page-container .et_pb_row.stats:before,
#page-container .et_pb_row.stats:after,
#page-container .et_pb_row.journal-head:before,
#page-container .et_pb_row.journal-head:after,
#page-container .et_pb_row.contact-inner:before,
#page-container .et_pb_row.contact-inner:after,
#page-container .et_pb_row.bp-inline-row:before,
#page-container .et_pb_row.bp-inline-row:after,
.bp-header-wrap .et_pb_row.nav:before,
.bp-header-wrap .et_pb_row.nav:after,
.bp-header-wrap .et_pb_row.nav>.et_pb_column:before,
.bp-header-wrap .et_pb_row.nav>.et_pb_column:after,
.bp-footer-wrap .et_pb_row.footer-top:before,
.bp-footer-wrap .et_pb_row.footer-top:after{display:none!important;content:none!important}

/* Seitenkopf der Unterseiten */
#page-container .et_pb_section.page-header{position:relative;z-index:30;text-align:center;background:linear-gradient(179deg,#767676 -43.55%,#000 90.05%)}
#page-container .page-header .eyebrow{display:block;margin-bottom:16px}

/* Hero */
#page-container .et_pb_section.hero{position:relative;overflow:hidden;padding-top:130px;background:linear-gradient(179deg,#767676 -43.55%,#000 90.05%)}
#page-container .et_pb_row.bp-hero-deco{position:static}
#page-container .bp-hero-deco .et_pb_column,
#page-container .bp-hero-deco .et_pb_module,
#page-container .bp-hero-deco .et_pb_code_inner{position:static}
#page-container .et_pb_row.hero-inner{position:relative;z-index:10;text-align:center}
#page-container .et_pb_row.bp-shot-row{position:relative;z-index:10}
#page-container .et_pb_row.bp-inline-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
#page-container .et_pb_row.bp-inline-row>.et_pb_column{width:auto;margin:0;float:none}
#page-container .et_pb_row.bp-center-row .et_pb_column{width:100%;float:none;text-align:center}

/* Split-Reihen (Leistungen, Studio) */
#page-container .et_pb_row.split{display:grid;grid-template-columns:1fr 1.05fr;gap:72px;align-items:center;max-width:1280px}
#page-container .et_pb_row.split>.et_pb_column{width:100%;margin:0;float:none}
#page-container .et_pb_row.split.flip>.et_pb_column.split-text{order:2}

/* Cases-Raster */
#page-container .et_pb_row.cgrid{display:grid;gap:24px;max-width:1280px}
#page-container .et_pb_row.cgrid.r1{grid-template-columns:1fr 1.42fr}
#page-container .et_pb_row.cgrid.r2{grid-template-columns:1.42fr 1fr;margin-top:24px}
#page-container .et_pb_row.cgrid>.et_pb_column{width:100%;margin:0;float:none}

/* Tabs */
#page-container .et_pb_row.tabpanel{display:none;max-width:1280px}
#page-container .et_pb_row.tabpanel.on{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center}
#page-container .et_pb_row.tabpanel>.et_pb_column{width:100%;margin:0;float:none}

/* Kennzahlen und Journal-Kopf */
#page-container .et_pb_row.stats{display:flex;align-items:flex-start;justify-content:space-between;gap:40px;max-width:1280px;flex-wrap:wrap}
#page-container .et_pb_row.stats>.et_pb_column{width:auto;margin:0;float:none}
#page-container .et_pb_row.journal-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;max-width:1280px;flex-wrap:wrap;margin-bottom:48px}
#page-container .et_pb_row.journal-head>.et_pb_column{width:auto;margin:0;float:none}

/* Kontakt */
#page-container .et_pb_row.contact-inner{display:grid;grid-template-columns:1fr 1.05fr;gap:64px;align-items:start;max-width:1180px}
#page-container .et_pb_row.contact-inner>.et_pb_column{width:100%;margin:0;float:none}
#page-container .contact-left .et_pb_text_inner>p{font-family:var(--body);font-size:16px;color:var(--muted);line-height:1.65;max-width:420px;margin:0 0 36px}

/* Reihen mit eigener Maximalbreite */
#page-container .et_pb_row.podcast-card{max-width:1180px}
#page-container .et_pb_row.faq-list-row{max-width:920px}

/* Sektionskoepfe */
#page-container .et_pb_text.section-head{text-align:center;max-width:820px;margin:0 auto 64px;padding:0 24px}
#page-container .et_pb_text.bp-head-48{margin-bottom:48px}
#page-container .et_pb_text.bp-head-36{margin-bottom:36px}

/* ============================================================
3. Harte Ueberschreibungen gegen Divis eigenes CSS
============================================================ */

/* Bilder: Divis img{height:auto} killt sonst die Hero-Steine */
#page-container img.hero-stone{height:70vh;width:auto;max-width:none}
#page-container img.hero-stone.d{height:auto;width:100%;max-width:1460px}

/* Typografie */
#page-container .hero h1{font-family:var(--display)!important;font-size:clamp(38px,6vw,74px)!important;font-weight:300!important;line-height:.98!important;letter-spacing:-3px!important;max-width:880px;margin:0 auto 22px!important;padding:0!important}
#page-container .hero-sub{max-width:500px;margin:0 auto 34px!important;font-size:16px!important;color:var(--muted)!important;line-height:1.6!important;padding:0!important}
#page-container .h2{font-family:var(--display)!important;font-size:clamp(34px,5vw,64px)!important;font-weight:300!important;line-height:1.04!important;letter-spacing:-2.2px!important;color:#fff!important;margin:0!important;padding:0!important}
#page-container .section-sub{font-size:15px!important;line-height:1.65!important;color:var(--muted)!important;padding:0!important}
#page-container .eyebrow{font-size:14px!important;color:var(--muted)!important}
#page-container .split .eyebrow{letter-spacing:2px!important;font-size:12px!important;color:var(--muted-2)!important;margin-bottom:16px;display:block;text-transform:uppercase}
#page-container .split h3{font-family:var(--display)!important;font-size:clamp(30px,4vw,48px)!important;font-weight:300!important;line-height:1.06!important;letter-spacing:-1.5px!important;margin:0 0 20px!important;padding:0!important}
#page-container .split p.lead{font-size:15px!important;color:var(--muted)!important;line-height:1.7!important;margin:0 0 26px!important;padding:0!important;max-width:460px}
#page-container .ccap h3{font-family:var(--display)!important;font-size:30px!important;font-weight:300!important;letter-spacing:-.8px!important;line-height:1.05!important;margin:0 0 10px!important;padding:0!important;color:#fff!important}
#page-container .ccap p{font-size:14px!important;color:var(--muted)!important;line-height:1.5!important;margin:0!important;padding:0!important;max-width:400px}
#page-container .tabpanel .tp-text h3{font-family:var(--display)!important;font-size:clamp(28px,3.4vw,42px)!important;font-weight:300!important;letter-spacing:-1.2px!important;line-height:1.08!important;margin:0 0 18px!important;padding:0!important}
#page-container .tabpanel .tp-text p{font-size:15px!important;color:var(--muted)!important;line-height:1.7!important;margin:0 0 24px!important;padding:0!important;max-width:440px}
#page-container .podcast h2{font-family:var(--display)!important;font-size:clamp(32px,4.4vw,56px)!important;font-weight:300!important;letter-spacing:-1.8px!important;line-height:1.04!important;margin:0 0 18px!important;padding:0!important}
#page-container .podcast p.sub{font-size:16px!important;color:rgba(255,255,255,.65)!important;max-width:520px;margin:0 auto 40px!important;line-height:1.6!important;padding:0!important}
#page-container .journal-head .jh-l h2{font-family:var(--display)!important;font-size:clamp(32px,4.4vw,56px)!important;font-weight:300!important;letter-spacing:-1.8px!important;line-height:1.02!important;margin:0!important;padding:0!important}
#page-container .contact-left h2{font-family:var(--display)!important;font-size:clamp(32px,4.2vw,52px)!important;font-weight:300!important;letter-spacing:-1.8px!important;line-height:1.04!important;margin:0 0 20px!important;padding:0!important}
#page-container .strip p{text-align:center!important;font-size:14px!important;color:var(--muted)!important;margin:0 0 36px!important;padding:0!important}
#page-container .stat-big .n{font-family:var(--display)!important;font-weight:300!important;font-size:clamp(44px,5.5vw,62px)!important;line-height:1!important;letter-spacing:-2px!important}
#page-container .stats-right p{font-size:15px!important;color:rgba(255,255,255,.7)!important;line-height:1.65!important;margin:0 0 18px!important;padding:0!important}
#page-container .podcast-url{font-size:13px!important;color:var(--muted-2)!important}
#page-container .page-header h1{font-family:var(--display)!important;font-size:clamp(38px,6vw,72px)!important;font-weight:300!important;line-height:1.02!important;letter-spacing:-2.5px!important;max-width:900px;margin:0 auto 22px!important;padding:0 24px!important}
#page-container .page-header p{font-size:16px!important;color:var(--muted)!important;line-height:1.65!important;max-width:560px;margin:0 auto!important;padding:0 24px!important}

/* ============================================================
4. Buttons - Divi-Button im Look von .btn
============================================================ */
.bp-btn .et_pb_button{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;font-family:var(--display)!important;font-weight:500!important;font-size:15px!important;line-height:1!important;letter-spacing:0!important;border-radius:9999px!important;border:1px solid transparent!important;height:48px;padding:0 28px!important;white-space:nowrap;transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
.bp-btn .et_pb_button:before,
.bp-btn .et_pb_button:after{display:none!important;content:none!important}
.bp-btn-light .et_pb_button{background:#fff!important;color:#111!important;font-weight:600!important;border-color:transparent!important}
.bp-btn-light .et_pb_button:hover{box-shadow:0 10px 30px rgba(255,255,255,.18);transform:translateY(-1px)}
.bp-btn-glass .et_pb_button{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.18)!important;color:#fff!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.bp-btn-glass .et_pb_button:hover{background:rgba(255,255,255,.18)!important}
.bp-btn-sm .et_pb_button{height:40px;padding:0 16px!important;font-size:14px!important}

/* ============================================================
5. FAQ-Akkordeon im Look der Originalseite
============================================================ */
#page-container .bp-faq.et_pb_accordion .et_pb_accordion_item{position:relative;border:1px solid rgba(255,255,255,.05);border-radius:20px;background:#1a1a1a;overflow:hidden;margin-bottom:14px;padding:0;box-shadow:rgba(0,0,0,.24) 4px 16px 36px,rgba(255,255,255,.18) .5px .5px .5px inset}
#page-container .bp-faq .et_pb_toggle_title{font-family:var(--display)!important;font-size:18px!important;font-weight:400!important;line-height:1.3!important;color:#fff!important;padding:22px 60px 22px 28px!important;margin:0!important;cursor:pointer}
#page-container .bp-faq .et_pb_toggle_title:before{font-family:inherit!important;content:""!important;position:absolute;right:28px;top:50%;margin-top:-1px;width:16px;height:2px;background:var(--muted);border-radius:2px;transition:background .3s;transform:none}
#page-container .bp-faq .et_pb_toggle_title:after{content:"";position:absolute;right:35px;top:50%;margin-top:-8px;width:2px;height:16px;background:var(--muted);border-radius:2px;transition:transform .35s ease,background .3s}
#page-container .bp-faq .et_pb_toggle_open .et_pb_toggle_title:before{background:var(--accent)}
#page-container .bp-faq .et_pb_toggle_open .et_pb_toggle_title:after{transform:rotate(90deg);background:var(--accent)}
#page-container .bp-faq .et_pb_toggle_content{padding:0 28px 24px!important;font-family:var(--body)!important;font-size:14px!important;font-weight:300!important;line-height:1.65!important;color:rgba(255,255,255,.65)!important;max-width:780px}

/* ============================================================
6. Globale Navbar
Liegt ausserhalb von #page-container (Snippet "Globale
Navbar und Footer ausgeben", Hook wp_body_open), deshalb
greifen weder Divis #page-container-Regeln noch der
Divi-Reset hier hinein - beides muss hier stehen.
============================================================ */
.bp-header-wrap{position:relative;z-index:80}
.bp-header-wrap a{color:inherit;text-decoration:none}
.bp-header-wrap img{max-width:none;display:block}
.bp-header-wrap ul{list-style:none;margin:0;padding:0}
.bp-header-wrap li{list-style:none;margin:0;padding:0}
.bp-header-wrap .et_pb_section{padding:0!important;background:transparent!important}
.bp-header-wrap .et_pb_row{width:auto;max-width:none;margin:0;padding:0}
.bp-header-wrap .et_pb_column{width:auto;margin:0;padding:0;float:none}
.bp-header-wrap .et_pb_module{margin:0}

.bp-header-wrap .et_pb_row.nav{position:fixed;z-index:80;top:24px;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between;padding:12px 14px 12px 20px;border-radius:48px;border:1px solid rgba(153,153,153,.19);background:rgba(255,255,255,.1);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px)}
.bp-header-wrap .et_pb_row.nav>.et_pb_column{display:flex;align-items:center}
.bp-header-wrap .et_pb_row.nav>.et_pb_column.nav-left{gap:20px}
.bp-header-wrap .et_pb_row.nav>.et_pb_column.nav-right{gap:10px}
.bp-header-wrap .brand.et_pb_image{line-height:0}
.bp-header-wrap .brand img{height:22px;width:auto}
.bp-header-wrap .nav-divider{width:1px;height:20px;background:rgba(255,255,255,.15)}

/* Divi-Menuemodul im Look von .nav-links */
.bp-header-wrap .nav-links.et_pb_menu{background-color:transparent!important;padding:0}
.bp-header-wrap .nav-links .et_pb_menu_inner_container,
.bp-header-wrap .nav-links .et_pb_menu__wrap{justify-content:flex-start;min-height:0}
.bp-header-wrap .nav-links .et_pb_menu__logo-wrap,
.bp-header-wrap .nav-links .et_pb_menu__icon,
.bp-header-wrap .nav-links .et_pb_menu__search-button,
.bp-header-wrap .nav-links .et_mobile_nav_menu{display:none!important}
.bp-header-wrap .nav-links .et-menu{display:flex;align-items:center;gap:2px;margin:0;padding:0;border:0}
.bp-header-wrap .nav-links .et-menu>li{margin:0;padding:0;border:0}
.bp-header-wrap .nav-links .et-menu>li>a{font-family:var(--body)!important;font-size:14px!important;font-weight:400!important;color:rgba(255,255,255,.65)!important;padding:8px 13px!important;border-radius:10px;display:block;opacity:1!important;transition:color .2s,background .2s}
.bp-header-wrap .nav-links .et-menu>li>a:hover{color:#fff!important;background:rgba(255,255,255,.06)}
.bp-header-wrap .nav-links .et-menu>li.current-menu-item>a{color:#fff!important}
.bp-header-wrap .nav-links .et-menu>li>a:after{display:none!important}

/* Mobiles Menue */
.bp-header-wrap .nav-burger{display:none}
@media(max-width:1000px){
.bp-header-wrap .nav-links,
.bp-header-wrap .bp-nav-div,
.bp-header-wrap .nav-lang,
.bp-header-wrap .btn-demo{display:none!important}
.bp-header-wrap .nav-burger{display:inline-flex!important}
}
@media(max-width:640px){
.bp-header-wrap .et_pb_row.nav{top:12px;left:12px;right:12px;padding:8px 8px 8px 16px;border-radius:32px}
}

/* ============================================================
7. Globaler Footer (Hook wp_footer)
============================================================ */
.bp-footer-wrap a{color:inherit;text-decoration:none}
.bp-footer-wrap img{max-width:none;display:block}
.bp-footer-wrap ul{list-style:none;margin:0;padding:0}
.bp-footer-wrap li{list-style:none;margin:0;padding:0}
.bp-footer-wrap .et_pb_row{width:100%;max-width:none;margin:0;padding:0}
.bp-footer-wrap .et_pb_column{width:100%;margin:0;padding:0;float:none}
.bp-footer-wrap .et_pb_module{margin:0}
.bp-footer-wrap p{padding:0}

.bp-footer-wrap .et_pb_section.footer{position:relative;overflow:hidden;background:#000!important;padding:90px 0 0!important}
.bp-footer-wrap .et_pb_row.bp-footer-glow-row,
.bp-footer-wrap .et_pb_row.bp-footer-bottom-row{position:static}
.bp-footer-wrap .bp-footer-glow-row .et_pb_column,
.bp-footer-wrap .bp-footer-glow-row .et_pb_module,
.bp-footer-wrap .bp-footer-glow-row .et_pb_code_inner{position:static}
.bp-footer-wrap .et_pb_row.footer-top{position:relative;z-index:2;max-width:1440px;margin:0 auto;padding:0 60px;display:flex;justify-content:space-between;gap:90px;flex-wrap:wrap}
.bp-footer-wrap .et_pb_row.footer-top>.et_pb_column{width:auto}
.bp-footer-wrap .et_pb_row.footer-top>.et_pb_column.footer-brand{max-width:380px;margin-right:auto}
.bp-footer-wrap .footer-brand .brand{margin-bottom:24px}
.bp-footer-wrap .footer-brand .brand img{height:30px;width:auto}
.bp-footer-wrap .footer-brand .et_pb_text_inner>p{font-family:var(--body);font-size:14px;font-weight:300;line-height:1.5;color:var(--muted);margin:0 0 24px}
.bp-footer-wrap .footer-brand .et_pb_text_inner>p.copy{font-size:13px;color:var(--muted-2);margin-bottom:0}
.bp-footer-wrap .footer-col .ct{font-family:var(--body);font-size:14px;color:var(--muted-2);margin-bottom:24px}
.bp-footer-wrap .footer-col ul{display:flex;flex-direction:column;gap:16px}
.bp-footer-wrap .footer-col a{font-family:var(--display);font-size:18px;font-weight:300;color:#fff;transition:opacity .25s}
.bp-footer-wrap .footer-col a:hover{opacity:.6}
.bp-footer-wrap .footer-bottom{position:relative;z-index:2;max-width:1440px;margin:64px auto 0;padding:26px 60px 34px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
@media(max-width:640px){
.bp-footer-wrap .et_pb_row.footer-top{padding:0 24px;gap:48px}
.bp-footer-wrap .footer-bottom{padding:24px 24px 30px;justify-content:center;text-align:center}
}

/* ============================================================
8. Mobil - Seiteninhalt
============================================================ */
@media(max-width:1000px){
#page-container .et_pb_row.split,
#page-container .et_pb_row.tabpanel.on{grid-template-columns:1fr;gap:40px}
#page-container .et_pb_row.split.flip>.et_pb_column.split-text{order:0}
#page-container .et_pb_row.cgrid.r1,
#page-container .et_pb_row.cgrid.r2{grid-template-columns:1fr}
#page-container .et_pb_row.contact-inner{grid-template-columns:1fr;gap:40px}
}