/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
 * Only what cannot live in Elementor (variables, global classes, defaults or local styles):
 * markup from plugins / V3 widgets, the header wrapper, and keyframe animations driven by JS.
 */

/* ===== Header wrapper: lets the white bar (local sticky style) stick across the whole page ===== */
.elementor-location-header{display:contents}
body.admin-bar .elementor-location-header .s-mainbar{top:var(--wp-admin--admin-bar--height,32px)}

/* ===== Contact Form 7: newsletter (.catex-form) ===== */
.catex-form{font-family:var(--font-primary),sans-serif;color:var(--color-navy)}
.catex-form label{display:block;font-size:14px;font-weight:600;margin-bottom:16px}
.catex-form .wpcf7-form-control-wrap{display:block}
.catex-form input[type=email],.catex-form input[type=text],.catex-form input[type=tel],.catex-form textarea{box-sizing:border-box;width:100%;max-width:none;margin-top:6px;padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:16px}
.catex-form input:focus,.catex-form textarea:focus{outline:2px solid var(--color-pink);outline-offset:1px}
.catex-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.catex-form .wpcf7-list-item{margin:0}
.catex-form .wpcf7-acceptance,.catex-form .wpcf7-acceptance label,.catex-form .wpcf7-list-item-label{font-size:13px;font-weight:400;color:var(--color-text-muted)}
.catex-form textarea{min-height:140px;font-family:inherit}
.catex-form .wpcf7-acceptance a{color:var(--color-navy)}
.catex-form-note{font-size:13px;color:var(--color-text-muted)}
.catex-form .catex-submit,.catex-form .wpcf7-submit{background:var(--color-pink);color:#fff;border:0;border-radius:var(--radius-sm);padding:14px 28px;font-weight:700;font-size:15px;cursor:pointer}
.catex-form .catex-submit:hover,.catex-form .wpcf7-submit:hover{background:var(--color-navy)}
@media (max-width:767px){.catex-form-row{grid-template-columns:1fr;gap:0}}

/* ===== Nav Menu widget (V3): header ===== */
.catex-nav .elementor-nav-menu a{font-family:var(--font-primary),sans-serif;font-size:15px;font-weight:600;color:var(--color-navy)!important}
.catex-nav .elementor-nav-menu a:hover{color:var(--color-pink)!important}
.catex-nav .sub-arrow,.catex-nav .sub-arrow i,.catex-nav .sub-arrow svg{color:var(--color-navy)!important;fill:var(--color-navy)!important}
.catex-nav .elementor-item:hover .sub-arrow svg,.catex-nav .elementor-item.highlighted .sub-arrow svg,.catex-nav .elementor-item:focus .sub-arrow svg{color:var(--color-pink)!important;fill:var(--color-pink)!important}
.catex-nav .elementor-nav-menu--main .elementor-nav-menu .sub-menu{margin-top:18px!important;background:#fff;border:1px solid var(--color-border-light);border-radius:4px;box-shadow:0 8px 24px rgba(6,40,65,.12);padding:8px 0;min-width:220px}
.catex-nav .elementor-nav-menu--main .sub-menu::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px}
.catex-nav .sub-menu a.elementor-sub-item{color:var(--color-navy)!important;background:transparent!important;font-size:14px;padding:10px 18px!important}
.catex-nav .sub-menu a.elementor-sub-item:hover,.catex-nav .sub-menu a.elementor-sub-item:focus{color:var(--color-pink)!important;background:var(--color-surface)!important}
.catex-nav .elementor-nav-menu--dropdown a{color:var(--color-navy)!important;background:#fff!important}
.catex-nav .elementor-nav-menu--dropdown a:hover,.catex-nav .elementor-nav-menu--dropdown a.highlighted{color:var(--color-pink)!important;background:var(--color-surface)!important}
.catex-nav .elementor-menu-toggle{background:transparent;color:var(--color-navy);border:0!important;padding:10px;width:auto;height:auto}
.catex-nav .elementor-menu-toggle svg{fill:var(--color-navy)!important;width:22px;height:22px}

/* ===== Nav Menu widget (V3): footer ===== */
.catex-footer-nav .elementor-nav-menu a,.catex-legal-nav .elementor-nav-menu a,.catex-copy{font-family:var(--font-primary),sans-serif;font-size:14px;font-weight:500;color:#fff!important;padding:4px 0!important}
.catex-legal-nav .elementor-nav-menu a{padding:0 10px!important;text-decoration:underline}
.catex-footer-nav .elementor-nav-menu a:hover{color:var(--color-pink-light)!important}

/* ===== Loop Carousel widget (V3, speakers + exhibitors): arrows and dots in one row below ===== */
.catex-carousel{position:relative;width:100%}
.catex-carousel .e-loop-item,.catex-carousel .e-loop-item>.e-con,.catex-carousel .logo-tile{height:100%}
.catex-carousel-nav{display:flex!important;align-items:center;justify-content:center;gap:24px;margin-top:32px;width:100%;font-family:var(--font-primary),sans-serif}
.catex-carousel .catex-carousel-nav .elementor-swiper-button{position:static!important;inset:auto!important;transform:none!important;margin:0!important;width:44px!important;height:44px!important;border-radius:50%;border:2px solid var(--color-navy)!important;background:transparent!important;color:var(--color-navy)!important;display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer;padding:0;font-size:15px!important;transition:all .2s}
.catex-carousel .elementor-swiper-button:hover{background:var(--color-navy)!important;color:#fff!important}
.catex-carousel .swiper-button-disabled{opacity:.35;cursor:default}
.catex-carousel .elementor-swiper-button i{font-size:15px;line-height:1;color:inherit}
.elementor .catex-carousel .elementor-swiper-button svg{width:15px!important;height:15px!important;fill:currentColor!important}
.catex-carousel .catex-carousel-nav .swiper-pagination{position:static!important;inset:auto!important;transform:none!important;width:auto!important;margin:0!important;display:flex;gap:8px}
.catex-carousel .swiper-pagination-bullet{width:8px;height:8px;margin:0!important;border-radius:99px;background:var(--color-border);opacity:1;transition:all .2s}
.catex-carousel .swiper-pagination-bullet-active{width:28px;background:var(--color-pink)}


/* ===== Text Editor widget (V3): cookie policy text generated by the cookie plugin ===== */
.c-legal-text,.c-legal-text .elementor-widget-container{font-family:var(--font-primary),sans-serif;font-size:var(--fs-body);line-height:1.6;color:var(--color-text-muted)}
.c-legal-text h2,.c-legal-text h3,.c-legal-text h4{font-family:var(--font-primary),sans-serif;color:var(--color-navy);font-weight:700;line-height:1.25;margin:32px 0 12px}
.c-legal-text h3{font-size:var(--fs-h3)}
.c-legal-text h4{font-size:var(--fs-h4)}
.c-legal-text p{margin:0 0 16px}
.c-legal-text a{color:var(--color-pink);font-weight:700}
.c-legal-text details{border-color:var(--color-border-light)!important;border-radius:0!important}
.c-legal-text summary{font-weight:700;color:var(--color-navy)}

/* ===== Motion: scroll reveal (classes added by JS) ===== */
.catex-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.catex-reveal.is-in{opacity:1;transform:none}

/* ===== Motion: hero entrance ===== */
@keyframes catexUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes catexFade{from{opacity:0}to{opacity:1}}
@keyframes catexPulse{0%{box-shadow:0 0 0 0 rgba(255,102,179,.55)}70%{box-shadow:0 0 0 14px rgba(255,102,179,0)}100%{box-shadow:0 0 0 0 rgba(255,102,179,0)}}
.c-hero>.c-container>*{opacity:0;animation:catexUp .9s cubic-bezier(.2,.7,.2,1) forwards}
.c-hero>.c-container>*:nth-child(1){animation-delay:.15s}
.c-hero>.c-container>*:nth-child(2){animation-delay:.3s}
.c-hero>.c-container>*:nth-child(3){animation-delay:.5s}
.c-hero>.c-container>*:nth-child(4){animation-delay:.65s}
.c-hero>.c-container>*:nth-child(5){animation-delay:.8s}
.c-hero .btn--accent{animation:catexPulse 2.4s ease-out 1.8s 2}
@media (min-width:1025px){.c-hero{animation:catexFade .8s ease-out both}}

@media (prefers-reduced-motion:reduce){
.catex-reveal{opacity:1;transform:none;transition:none}
.c-hero>.c-container>*{opacity:1;animation:none}
.c-hero .btn--accent{animation:none}
}