:root{--aser-orange:#C8501A;--aser-orange-light:#E0622A;--aser-orange-dim:rgba(200,80,26,0.15);--aser-dark:#070C14;--aser-dark-2:#0E1117;--aser-dark-3:#141820;--aser-dark-4:#1C2230;--aser-gray:#8A95A8;--aser-light:#E8ECF2;}
/* reveal on scroll (igual ao tema original; só ativa com JS presente) */
html.aser-js .a-rev{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);will-change:opacity,transform;}
html.aser-js .a-rev-left{transform:translateX(-46px);}
html.aser-js .a-rev-right{transform:translateX(46px);}
html.aser-js .a-rev.is-in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){html.aser-js .a-rev{opacity:1 !important;transform:none !important;transition:none !important;}}
/* no editor do Elementor tudo fica visível (o reveal só roda no site publicado) */
.elementor-editor-active .a-rev{opacity:1 !important;transform:none !important;}
html{overflow-x:hidden;overflow-x:clip;}
body{background:var(--aser-dark);font-family:'Inter',sans-serif;overflow-x:hidden;overflow-x:clip;}
body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");pointer-events:none;z-index:1000;opacity:0.4;}
@keyframes aserGridPulse{from{opacity:.5}to{opacity:1}}
@keyframes aserScan{0%{top:0;opacity:0}10%{opacity:1}90%{opacity:1}100%{top:100%;opacity:0}}
@keyframes aserBlink{0%,100%{opacity:1}50%{opacity:.2}}
@keyframes aserFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes aserPulseRing{0%,100%{transform:scale(1);opacity:.5}50%{transform:scale(1.05);opacity:1}}
@keyframes aserGlowPulse{0%,100%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}
@keyframes aserSpinSlow{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes aserMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* ═══ barra de progresso (o div é criado pelo aser.js) ═══ */
.aser-progress{position:fixed;top:0;left:0;height:3px;width:0%;background:linear-gradient(90deg,var(--aser-orange),var(--aser-orange-light));z-index:1100;transition:width .1s linear;box-shadow:0 0 12px rgba(200,80,26,.6);}

/* ═══ header fixo + estado scrolled ═══ */
.aser-header{position:fixed !important;top:0;left:0;right:0;z-index:900;transition:background .3s ease,backdrop-filter .3s ease;}
.aser-header.scrolled{background:rgba(7,12,20,.82) !important;backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px);}
.aser-header.scrolled .aser-topbar{max-height:0 !important;opacity:0 !important;padding-top:0 !important;padding-bottom:0 !important;border-bottom:none !important;overflow:hidden !important;}
.aser-header.scrolled .aser-navbar{padding-top:8px !important;padding-bottom:8px !important;}
.aser-topbar{max-height:44px;overflow:hidden;transition:max-height .3s ease,opacity .3s ease,padding .3s ease;}
.aser-topbar .elementor-icon-list-item a:hover .elementor-icon-list-text{color:var(--aser-light);}
.aser-navbar{transition:padding .3s ease;}
.aser-logo img{height:50px;width:auto;max-width:none;object-fit:contain;transition:height .3s ease;}
.aser-header.scrolled .aser-logo img{height:40px;}

/* menu principal */
.aser-navbar .elementor-nav-menu--main .elementor-item{padding:9.6px 15.2px;}
.aser-navbar .elementor-nav-menu--main .elementor-item:after{background:var(--aser-orange) !important;height:2px;}
.aser-navbar .elementor-nav-menu--dropdown{background:var(--aser-dark-2);border:1px solid rgba(200,80,26,.18);border-radius:6px;padding:8px;box-shadow:0 20px 50px rgba(0,0,0,.5);}
.aser-navbar .elementor-nav-menu--dropdown a{font-family:'Barlow',sans-serif;font-size:13px;font-weight:500;letter-spacing:.3px;color:var(--aser-gray);border-radius:4px;padding:9px 14px;}
.aser-navbar .elementor-nav-menu--dropdown a:hover,.aser-navbar .elementor-nav-menu--dropdown a.highlighted{background:var(--aser-orange-dim);color:#fff;}
.aser-navbar .elementor-nav-menu--main .e-focus-highlight{display:none;}
.aser-navbar .elementor-menu-toggle{border:1px solid rgba(200,80,26,.4);border-radius:6px;padding:4px 8px;width:auto;height:auto;margin:0;}
.aser-navbar .elementor-menu-toggle svg{width:28px;height:28px;}
@media(max-width:1024px){
.aser-navbar{flex-wrap:nowrap !important;position:relative;padding-top:15px !important;padding-bottom:15px !important;}
.aser-navbar > .e-con{width:auto !important;flex:0 0 auto !important;position:static !important;}
.aser-navbar .elementor-widget-nav-menu{width:auto !important;height:46px;display:flex;align-items:center;position:static !important;}
.aser-navbar .elementor-nav-menu--dropdown{margin-top:12px;border-color:rgba(200,80,26,.15);border-radius:8px;padding:16px;}
.aser-navbar .elementor-nav-menu--dropdown a{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;}
/* âncora do painel = .aser-navbar; só o NAV filho direto do widget, não os sub-menus */
.aser-navbar .elementor-widget-nav-menu > nav.elementor-nav-menu--dropdown{position:absolute !important;top:calc(100% + 6px);left:5% !important;right:5% !important;width:90% !important;margin-top:0 !important;z-index:999;max-height:calc(100vh - 120px);overflow:auto;box-shadow:0 30px 60px rgba(0,0,0,.6);}
.aser-navbar .elementor-widget-nav-menu > nav.elementor-nav-menu--dropdown .sub-menu{position:static !important;width:100% !important;box-shadow:none;border:none;padding-left:14px;}
}

/* ═══ utilitários globais (widgets nativos, sem CSS por widget) ═══ */
/* palavra destacada dos títulos */
.elementor-heading-title span{color:var(--aser-orange);}
/* parágrafo único sem margem (não afeta .aser-entry, que é theme-post-content) */
.elementor-widget-text-editor p{margin:0 0 14px;}
.elementor-widget-text-editor p:last-child{margin-bottom:0;}
.aser-prose p{margin-bottom:18px;}
.aser-prose strong{color:var(--aser-light);}
/* logo do footer */
.aser-logo-f img{height:56px;width:auto;object-fit:contain;}
/* rótulo de seção: tracinho antes do texto */
.aser-sec-label .elementor-heading-title{display:inline-flex;align-items:center;gap:10px;}
.aser-sec-label .elementor-heading-title::before{content:'';width:24px;height:1px;background:var(--aser-orange);}
/* breadcrumb */
.breadcrumb-aser{font-family:'Barlow',sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--aser-gray);}
.breadcrumb-aser a,.lp-bc a{color:var(--aser-orange);text-decoration:none;}
/* botões sólidos: brilho no hover (1 lugar só) */
.btn-aser .elementor-button{position:relative;overflow:hidden;transition:background .2s,transform .15s;}
.btn-aser .elementor-button::after{content:'';position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .6s;}
.btn-aser .elementor-button:hover::after{left:140%;}
.btn-aser .elementor-button:hover{transform:translateY(-1px);}
/* redes sociais (topbar + footer) */
.aser-social .elementor-social-icon{border:1px solid rgba(255,255,255,.1);border-radius:6px;transition:all .2s;}
.aser-social .elementor-social-icon:hover{border-color:var(--aser-orange);background:var(--aser-orange-dim);}
.aser-social .elementor-social-icon:hover i{color:var(--aser-orange);}
/* CTA compartilhado (linha + glow + marca d'água nativa) */
.cta-marca .elementor-heading-title{pointer-events:none;user-select:none;}
.cta-marca{pointer-events:none;}
.aser-cta{position:relative;isolation:isolate;overflow:hidden;text-align:center;}
.aser-cta::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:60%;height:1px;background:linear-gradient(90deg,transparent,var(--aser-orange),transparent);}
.aser-cta::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(200,80,26,.12) 0%,transparent 60%);pointer-events:none;z-index:0;}
.aser-cta > .e-con-inner > *,.aser-cta > *{position:relative;z-index:2;}
/* footer */
.aser-footer .f-links .elementor-icon-list-item a{transition:color .2s;}
.aser-footer .f-contact .elementor-icon-list-item{align-items:flex-start;}
.aser-footer .f-contact .elementor-icon-list-icon{margin-top:3px;}
.aser-footer .aser-copy a{color:rgba(138,149,168,0.6);}
@media(min-width:601px) and (max-width:767px){.aser-footer .f-col{width:47% !important;}}
@media(max-width:600px){.aser-footer .f-col{width:100% !important;}}
/* telas muito estreitas: navbar mais compacta */
@media(max-width:400px){
.aser-navbar{padding-left:4% !important;padding-right:4% !important;}
.aser-logo img{height:42px;}
.aser-navbar .btn-aser .elementor-button{padding:8px 10px;font-size:9px;}
}