/* Beautyline Global Styles v3 */

/* ===== Hero: Video als Cover + Overlay ===== */
#bl-hero{position:relative;overflow:hidden;}
#bl-hero .et-pb-background-video{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;overflow:hidden;}
#bl-hero .et-pb-background-video video,#bl-hero .et-pb-background-video .mejs-container{position:absolute !important;top:50% !important;left:50% !important;transform:translate(-50%,-50%) !important;min-width:100% !important;min-height:100% !important;width:auto !important;height:auto !important;margin:0 !important;object-fit:cover;}
#bl-hero:before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.5);z-index:1;pointer-events:none;}
#bl-hero .et_pb_row{position:relative;z-index:2;}

/* ===== Header Desktop (nur >=981px): eine Zeile, Menue rechts, CTA ganz rechts ===== */
@media(min-width:981px){
.et-l--header .et_pb_menu_inner_container{display:flex !important;align-items:center;justify-content:space-between;flex-wrap:nowrap;width:100%;}
.et-l--header .et_pb_menu__logo-wrap{max-width:170px;flex:0 0 auto;}
.et-l--header .et_pb_menu__logo img{max-height:58px;width:auto;}
.et-l--header .et_pb_menu__menu{flex:1 1 auto;display:flex;justify-content:flex-end;}
.et-l--header .et_pb_menu nav > ul{display:flex;flex-wrap:nowrap;justify-content:flex-end;align-items:center;}
.et-l--header .et_pb_menu nav > ul > li > a{white-space:nowrap;letter-spacing:1px;}
.et-l--header .menu-cta{margin-left:22px;}
.et-l--header .menu-cta > a{background:linear-gradient(135deg,#eab0af 20%,#dc8b92 100%);color:#1c1c1e !important;font-weight:500;font-size:15px !important;padding:13px 30px !important;border-radius:4px;border:1px solid #e6e2e1;box-shadow:0 6px 14px -4px rgba(0,0,0,0.25);transition:transform .3s;}
.et-l--header .menu-cta > a:hover{transform:scale(1.05);opacity:1;}
}

/* ===== Header Mobile (<=980px): Divi-Hamburger, Logo begrenzen ===== */
@media(max-width:980px){
.et-l--header .et_pb_menu__logo img{max-height:48px;width:auto;}
.et-l--header .mobile_menu_bar:before{color:#1c1c1e;}
.et-l--header .et_mobile_menu{border-top:2px solid #dc8b92;}
.et-l--header .et_mobile_menu li a{color:#1c1c1e !important;}
.et-l--header .et_mobile_menu li.menu-cta > a{background:linear-gradient(135deg,#eab0af 20%,#dc8b92 100%);border-radius:4px;margin:8px 10px;text-align:center;font-weight:500;}
}

/* ===== Mega-Menu: 4 Spalten, Unterpunkte UNTEREINANDER (nur Desktop) ===== */
@media(min-width:981px){
/* Dropdown NUR bei Hover auf den Menuepunkt sichtbar (Fix: erschien vorher immer) */
.et-l--header li.mega-menu > ul{display:none !important;flex-wrap:nowrap;padding:26px 30px !important;width:max-content;max-width:min(1060px,92vw);left:auto !important;right:0;}
.et-l--header li.mega-menu:hover > ul{display:flex !important;}
.et-l--header li.mega-menu > ul > li{width:240px;min-width:0;padding-right:24px;box-sizing:border-box;float:none;}
.et-l--header li.mega-menu > ul > li:last-child{padding-right:0;}
.et-l--header li.mega-menu > ul > li > a{font-weight:600;color:#1c1c1e !important;text-transform:uppercase;font-size:13px;letter-spacing:1px;white-space:normal;transition:color .25s;}
.et-l--header li.mega-menu > ul > li > a:hover{color:#dc8b92 !important;}
.et-l--header li.mega-menu > ul > li > ul{display:block !important;position:static !important;box-shadow:none !important;padding:6px 0 0 0 !important;min-width:0 !important;}
.et-l--header li.mega-menu > ul > li > ul > li{display:block;width:100%;float:none;}
.et-l--header li.mega-menu ul li a{white-space:normal !important;word-break:keep-all;hyphens:none;width:100% !important;line-height:1.5;padding:6px 0;}
/* normale Dropdowns (Schulungen) */
.et-l--header .et_pb_menu li:not(.mega-menu) li{display:block;width:100%;float:none;}
.et-l--header .et_pb_menu li:not(.mega-menu) ul{min-width:290px;}
.et-l--header .et_pb_menu li:not(.mega-menu) ul a{white-space:normal !important;word-break:keep-all;hyphens:none;width:100%;box-sizing:border-box;line-height:1.5;}
}

/* ===== Buttons site-weit im Coming-Soon-Stil (ausser Coming Soon selbst) ===== */
body:not(.page-id-14) .et_pb_button{background:radial-gradient(circle,#eab0af 28%,#dc8b92 100%);color:#1c1c1e !important;border:1px solid #e6e2e1;border-radius:3px;font-family:'Marcellus',serif;letter-spacing:1px;padding:12px 50px !important;box-shadow:0 10px 18px -6px rgba(0,0,0,0.3);transition:transform .3s ease;}
body:not(.page-id-14) .et_pb_button:hover{transform:scale(1.05);background:radial-gradient(circle,#eab0af 28%,#dc8b92 100%);padding:12px 50px !important;}
/* Pfeil-Icon aus allen Buttons entfernen */
.et_pb_button:after,.et_pb_button:before{content:none !important;display:none !important;}
.et_pb_button{padding-left:50px !important;padding-right:50px !important;}

/* ===== Kacheln: Bild + ueberlappende weisse Karte (Divi-Pixel-Muster im BL-CI) ===== */
.bl-tile{position:relative;min-height:430px;display:flex;align-items:flex-end;justify-content:center;transition:transform .4s ease;background-position:center !important;}
.bl-tile:before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(28,28,30,0.10);transition:background .4s ease;z-index:1;}
.bl-tile:hover{transform:translateY(-6px);}
.bl-tile:hover:before{background:rgba(220,139,146,0.16);}
.bl-tile .bl-tile-label{position:relative;z-index:2;background:#ffffff;padding:26px 28px 24px !important;width:calc(100% - 44px);margin:0 22px -26px 22px;box-shadow:0 14px 34px rgba(28,28,30,0.14);transition:box-shadow .4s ease,transform .4s ease;}
.bl-tile:hover .bl-tile-label{box-shadow:0 22px 46px rgba(28,28,30,0.22);}
.bl-tile .bl-tile-label h3,.bl-tile .bl-tile-label h3 a{color:#1c1c1e !important;font-size:22px;letter-spacing:0.5px;text-decoration:none;line-height:1.3;transition:color .3s ease;}
.bl-tile:hover .bl-tile-label h3 a{color:#dc8b92 !important;}
.bl-tile .bl-tile-label h3{padding-bottom:8px;}
.bl-tile .bl-tile-label h3 a:after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;}
.bl-tile .bl-tile-label p{color:#7a7776 !important;font-size:14.5px;line-height:1.6;padding-bottom:0;margin-bottom:0;}
.bl-tile .bl-tile-label p:after{content:'Mehr erfahren';display:block;margin-top:14px;color:#dc8b92;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;}
.bl-tile-wrap{margin-bottom:46px;}

/* ===== Marken-Ticker ===== */
.bl-marquee{overflow:hidden;position:relative;width:100%;}
.bl-marquee-track{display:flex;gap:16px;width:max-content;animation:bl-scroll 80s linear infinite;will-change:transform;backface-visibility:hidden;}
.bl-tile{will-change:transform;}
.bl-marquee:hover .bl-marquee-track{animation-play-state:paused;}
.bl-marquee-track span{background:#e6e2e1;color:#8a8785;padding:20px 30px;letter-spacing:2px;font-size:13px;min-width:170px;text-align:center;white-space:nowrap;transition:background .3s,color .3s;}
.bl-marquee-track span:hover{background:#dc8b92;color:#ffffff;}
@keyframes bl-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ===== Preistabellen im Demo-Stil ===== */
#main-content .et_pb_text table{border-collapse:collapse;}
#main-content .et_pb_text table tr{border-bottom:1px dotted #d9cfcc !important;transition:background .25s;}
#main-content .et_pb_text table tr:hover{background:#faf5f4;}
#main-content .et_pb_text table td{border:none;}
#main-content .et_pb_text table td:last-child{white-space:nowrap;text-align:right;}

/* ===== Kontaktformulare ===== */
.et_pb_contact_form .et_pb_contact_field input,.et_pb_contact_form .et_pb_contact_field textarea,.et_pb_contact_form .et_pb_contact_field select{background:#ffffff;border:1px solid #e6e2e1;color:#1c1c1e;padding:14px 16px;}
.et_pb_contact_form .et_pb_contact_field input:focus,.et_pb_contact_form .et_pb_contact_field textarea:focus{border-color:#dc8b92;outline:none;}

/* ===== Coming Soon: Fallback-Navigation ausblenden ===== */
body.page-id-14 #main-header,body.page-id-14 #top-header,body.page-id-501 #main-header,body.page-id-501 #top-header{display:none !important;}
body.page-id-14 #page-container,body.page-id-501 #page-container{padding-top:0 !important;}

/* ===== Kurs-Karten ===== */
.bl-course-card{min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;}

/* ===== Editorial-Typo-Skala (Demo-Muster) ===== */
#main-content h1,.et-l--body h1{font-size:54px !important;line-height:1.15 !important;}
#main-content h2,.et-l--body h2{font-size:40px !important;line-height:1.2 !important;letter-spacing:1px !important;}
#main-content h3,.et-l--body h3{line-height:1.3;}
#main-content .et_pb_text p,.et-l--body .et_pb_text p{font-size:16.5px;line-height:1.85;color:#4a4846;}
#main-content .et_pb_text h1,#main-content .et_pb_text h2,#main-content .et_pb_text h3,#main-content .et_pb_text h4,.et-l--body .et_pb_text h1,.et-l--body .et_pb_text h2,.et-l--body .et_pb_text h3,.et-l--body .et_pb_text h4{color:#1c1c1e;}
.bl-tile .bl-tile-label h3{font-size:22px !important;}

/* ===== Mobile / Tablet ===== */
@media(max-width:980px){
 .bl-tile{min-height:280px;margin-bottom:20px;}
 /* Hero straffen (war 85vh + 180px) */
 #bl-hero,#bl-hero.et_pb_section{min-height:0 !important;padding-top:90px !important;padding-bottom:90px !important;}
 /* Mobiles Menue scrollbar machen */
 .et_mobile_menu,.et-l--header .et_mobile_menu,#mobile_menu,.et_pb_menu .et_mobile_menu{max-height:76vh !important;overflow-y:auto !important;-webkit-overflow-scrolling:touch;}
 /* Buttons: kein Zeilenumbruch */
 .et_pb_button{white-space:nowrap !important;padding-left:32px !important;padding-right:32px !important;}
 /* Mobiles Akkordeon-Menue: Umschalter */
 .et_mobile_menu li.menu-item-has-children{position:relative;}
 .et_mobile_menu .bl-mm-toggle{position:absolute;top:0;right:0;width:52px;height:44px;display:flex;align-items:center;justify-content:center;font-size:22px;color:#dc8b92;cursor:pointer;z-index:5;font-family:Marcellus,serif;}
 .et_mobile_menu li.menu-item-has-children > ul{padding-left:16px;}
 .et_mobile_menu li.bl-collapsed > ul{display:none !important;}
}
@media(max-width:767px){
 #main-content h1,.et-l--body h1{font-size:32px !important;letter-spacing:2px !important;}
 #main-content h2,.et-l--body h2{font-size:26px !important;}
 #bl-hero h1{font-size:34px !important;}
 #bl-hero,#bl-hero.et_pb_section{padding-top:70px !important;padding-bottom:70px !important;}
 .et-l--header .menu-cta{margin-left:0;}
 .bl-marquee-track{animation-duration:45s;}
 .et_pb_section{padding-left:5px;padding-right:5px;}
 .et_pb_button{font-size:14px !important;padding-left:24px !important;padding-right:24px !important;}
}

/* Testimonial quote mark */
#main-content .et_pb_text p.bl-quotemark{font-family:Marcellus,Georgia,serif !important;font-size:74px !important;color:#eab0af !important;line-height:0.55 !important;margin-bottom:2px !important;padding-bottom:0;}

/* Script-Kicker (Alex Brush) global vereinheitlichen: groesser + kleiner, gleichmaessiger Abstand zur Ueberschrift. Hero ausgenommen. */
#main-content .et_pb_text p.bl-kicker-script{font-family:'Alex Brush',cursive !important;font-size:44px !important;color:#eab0af !important;line-height:1 !important;margin-bottom:6px !important;}
#main-content .et_pb_text p[style*="Alex Brush"]{font-size:44px !important;line-height:1 !important;margin-top:0 !important;margin-bottom:6px !important;}
#bl-hero .et_pb_text p[style*="Alex Brush"]{font-size:38px !important;line-height:1.15 !important;margin-bottom:6px !important;}
#main-content .et_pb_text p[style*="Alex Brush"] + h1,
#main-content .et_pb_text p[style*="Alex Brush"] + h2,
#main-content .et_pb_text p[style*="Alex Brush"] + h3{margin-top:0 !important;}
