/* Studio Rossi – estilos próprios (transição de página, header fixo, vídeos de fundo) */
e-page-transition{--preloader-fade-duration:.5s;--preloader-delay:calc(var(--e-page-transition-animation-duration,0s) + var(--e-preloader-delay,0s));--page-transition-delay:var(--preloader-fade-duration);position:fixed;inset:0;display:grid;place-items:center;z-index:10000;background:#fff;animation-fill-mode:both;animation-duration:var(--e-page-transition-animation-duration)}
e-page-transition .e-page-transition--preloader{opacity:0;position:absolute;width:var(--e-preloader-width);max-width:var(--e-preloader-max-width);animation-name:var(--e-preloader-animation);animation-duration:var(--e-preloader-animation-duration,1000ms);animation-iteration-count:infinite;animation-timing-function:linear}
.e-page-transition--entering{animation-name:var(--e-page-transition-entrance-animation);animation-delay:var(--preloader-fade-duration,0s)}
.e-page-transition--entering .e-page-transition--preloader{animation:var(--e-preloader-animation,none) var(--e-preloader-animation-duration,0s) linear infinite,e-page-transition-fade-out var(--preloader-fade-duration) both;transition:none}
.e-page-transition--exiting{animation-name:var(--e-page-transition-exit-animation)}
.e-page-transition--exiting .e-page-transition--preloader{opacity:var(--e-preloader-opacity,1);transition:var(--preloader-fade-duration) all;transition-delay:var(--preloader-delay,0s)}
.e-page-transition--entered{display:none}
@media(prefers-reduced-motion:reduce){e-page-transition{display:none}}
@keyframes e-page-transition-fade-out{from{opacity:1}to{opacity:0}}
@keyframes e-page-transition-fade-out-down{from{opacity:1;transform:none}to{opacity:0;transform:translate3d(0,100%,0)}}
@keyframes e-page-transition-fade-out-up{from{opacity:1;transform:none}to{opacity:0;transform:translate3d(0,-100%,0)}}

/* header fixo (substitui o sticky do Elementor Pro) */
.elementor-sticky.elementor-sticky--active{position:fixed!important;top:0;left:0;width:100%;z-index:99}
.elementor-sticky.elementor-sticky__spacer{position:relative!important;visibility:hidden;pointer-events:none}

/* vídeo de fundo */
.elementor-background-video-container{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.elementor-background-video-hosted{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.elementor-background-video-embed{position:absolute;top:50%;left:50%;max-width:none;border:0;transform:translate(-50%,-50%)}
.e-con>.e-con-inner>.elementor-background-video-container,.e-con>.elementor-background-video-container{display:block}
.e-con{position:relative}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:6px;top:6px;z-index:100000;background:#fff;color:#000;padding:8px 12px}

/* ---- SEO / acessibilidade ---- */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* H1 com a mesma aparência que o H2 original dos títulos */
.elementor-kit-9 h1.elementor-heading-title{color:var(--e-global-color-primary);font-family:var(--e-global-typography-6fd0323-font-family),Sans-serif;font-size:var(--e-global-typography-6fd0323-font-size);font-weight:var(--e-global-typography-6fd0323-font-weight);line-height:var(--e-global-typography-6fd0323-line-height)}

/* ---- Formulário de contato ---- */
.hp-field{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-consent{font-size:13px;line-height:1.5}
.form-consent .elementor-field-option{display:flex;align-items:flex-start;gap:10px}
.form-consent input[type=checkbox]{margin-top:3px;flex:0 0 auto;width:16px;height:16px;accent-color:currentColor}
.form-consent label,.form-consent label a,.recaptcha-note small,.recaptcha-note a{color:#000;cursor:pointer}
.form-consent a,.recaptcha-note a{text-decoration:underline}
.recaptcha-note{font-size:11px;line-height:1.5;opacity:.75}
.form-status{padding:10px 14px;font-size:14px;line-height:1.5;border:1px solid currentColor}
.form-status[hidden]{display:none}
.form-status.is-ok{border-color:#2e7d32;color:#2e7d32}
.form-status.is-err{border-color:#b3261e;color:#b3261e}
.form-consent.is-invalid label{color:#b3261e}
.elementor-button[disabled]{opacity:.6;cursor:wait}
.grecaptcha-badge{visibility:hidden}

/* ---- Google Maps (2 cliques) ---- */
.map-consent{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:300px;height:100%;padding:24px;text-align:center;background:#f1eee8;font-size:14px;line-height:1.5}
.map-consent p{max-width:420px;margin:0}
.map-consent button{cursor:pointer;border:1px solid currentColor;background:transparent;color:inherit;padding:10px 22px;font:inherit;letter-spacing:.08em;text-transform:uppercase}
.map-consent button:hover{background:#111;color:#fff}

/* consentimento: cor do texto (sobrepõe o estilo do plugin) */
.form-consent label,.form-consent label span,.form-consent .elementor-field-option label{color:#000!important;opacity:1!important}
.form-consent label a{color:#000!important}

/* ---- Cookie-Banner ---- */
.cookie-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:100000;max-width:760px;margin:0 auto;background:#fff;color:#000;border:1px solid #000;padding:18px 20px;display:flex;gap:18px;align-items:center;flex-wrap:wrap;box-shadow:0 8px 30px rgba(0,0,0,.18);font-size:13px;line-height:1.55}
.cookie-banner p{margin:0;flex:1 1 360px}
.cookie-banner a{color:#000;text-decoration:underline}
.cookie-actions{display:flex;gap:10px;flex:0 0 auto}
.cookie-actions button{cursor:pointer;font:inherit;letter-spacing:.08em;text-transform:uppercase;padding:10px 18px;border:1px solid #000;background:#fff;color:#000;min-width:120px}
.cookie-actions button:hover,.cookie-actions button:focus-visible{background:#000;color:#fff}
@media (max-width:520px){.cookie-actions{width:100%}.cookie-actions button{flex:1}}
