/*
 * Scale Law LP no Elementor (Free): acabamento das seções que os controles do Elementor Free não fazem sozinhos.
 * Textos, cores e fontes ficam nos widgets (editáveis); aqui só degradês, brilho, flutuação, faixa rolante e fixos.
 * Classes usadas no Elementor em "Avançado > Classes CSS".
 */
html { scroll-behavior: smooth; scroll-padding-top: 120px; }
body { background-color: #051123; overflow-x: hidden; }
.gold-text-gradient, .sl-ouro-texto { background: linear-gradient(135deg, #FFF0C2 0%, #F5C74C 40%, #E4A705 75%, #B88500 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }

/* Topo fixo (barra + menu) */
.sl-fixo { position: sticky; top: 0; z-index: 60; }
.sl-header { backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); box-shadow: 0 20px 40px -20px rgba(2, 7, 15, .8); }
.sl-header .elementor-image img { border-radius: 999px; box-shadow: 0 0 35px -5px rgba(228, 167, 5, .3); }

/* Botões */
.sl-btn-ouro .elementor-button { background-image: linear-gradient(135deg, #ECC145 0%, #E4A705 50%, #C48E00 100%) !important; box-shadow: 0 0 35px -5px rgba(228, 167, 5, .3); transition: filter .2s, transform .2s, box-shadow .2s; }
.sl-btn-ouro .elementor-button:hover { filter: brightness(1.1); box-shadow: 0 0 50px 0 rgba(228, 167, 5, .4); }
.sl-btn-pulsa .elementor-button { animation: sl-pulsa 3s infinite ease-in-out; }
@keyframes sl-pulsa { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.02); } }

/* Fundo do topo da página */
.sl-hero { background: radial-gradient(circle at 80% 10%, rgba(228, 167, 5, .12), transparent 45%), radial-gradient(circle at 50% 20%, #102442 0%, #051123 70%); }

/* Cartões */
.sl-card { border: 1px solid #1E3354; border-radius: 16px; box-shadow: 0 25px 60px -15px rgba(2, 7, 15, .85); transition: border-color .3s, transform .3s; }
.sl-card:hover { border-color: rgba(228, 167, 5, .5); }
.sl-card-ouro { border: 2px solid rgba(228, 167, 5, .5) !important; box-shadow: 0 0 35px -5px rgba(228, 167, 5, .3); }
.sl-card-vermelho { border-color: rgba(239, 68, 68, .3) !important; }
.sl-moldura { border: 2px solid rgba(228, 167, 5, .4); border-radius: 24px; background: linear-gradient(180deg, #102442, #0A1A33 50%, #030B17); box-shadow: 0 25px 60px -15px rgba(2, 7, 15, .85); position: relative; }
.sl-moldura .elementor-image img { border-radius: 16px; width: 100%; background: linear-gradient(180deg, #d9d9de, #a9abb3); }
.sl-etiqueta { position: absolute !important; top: -14px; left: 32px; width: auto !important; }

/* Cards flutuantes da foto (sobem e descem) */
.sl-flutua, .sl-flutua-2 { position: absolute !important; z-index: 3; width: auto !important; border: 1px solid rgba(228, 167, 5, .6); border-radius: 12px; backdrop-filter: blur(8px); box-shadow: 0 20px 40px -10px rgba(0, 0, 0, .6); }
.sl-flutua { top: 32px; left: -24px; animation: sl-flutua 4s ease-in-out infinite; }
.sl-flutua-2 { bottom: 80px; right: -24px; animation: sl-flutua 4.6s ease-in-out 1.3s infinite; }
@keyframes sl-flutua { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-14px); } }
.sl-flutua .elementor-icon-box-icon, .sl-flutua-2 .elementor-icon-box-icon { margin-right: 12px !important; }

/* Citação da carta */
.sl-citacao { border-left: 4px solid #E4A705; border-radius: 0 16px 16px 0; }

/* Faixa rolante */
.sl-faixa { overflow: hidden; }
.sl-faixa-trilho { display: flex; width: max-content; animation: sl-rola 35s linear infinite; }
.sl-faixa-trilho:hover { animation-play-state: paused; }
.sl-faixa-grupo { display: flex; align-items: center; gap: 40px; padding-right: 40px; white-space: nowrap; font-family: 'Plus Jakarta Sans', sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: #E4E9F2; }
.sl-faixa-grupo .ouro { color: #E4A705; }
.sl-faixa-grupo .sep { color: rgba(228, 167, 5, .5); }
@keyframes sl-rola { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* FAQ (Acordeão do Elementor) */
.sl-faq .elementor-accordion-item { border: 1px solid #1E3354 !important; border-radius: 12px; margin-bottom: 14px; overflow: hidden; background: #0A1A33; }
.sl-faq .elementor-tab-content { border-top: 0 !important; }

/* Ícones dos cards */
.sl-cards-icone .elementor-icon { background: rgba(228, 167, 5, .1); border: 1px solid rgba(228, 167, 5, .3) !important; border-radius: 12px !important; }

@media (max-width: 1024px) {
	.sl-flutua { left: -8px; }
	.sl-flutua-2 { right: -8px; }
}
@media (max-width: 767px) {
	.sl-esconde-celular { display: none !important; }
	.sl-flutua .elementor-icon-box-title, .sl-flutua-2 .elementor-icon-box-title { font-size: 13px !important; }
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.sl-flutua, .sl-flutua-2, .sl-faixa-trilho, .sl-btn-pulsa .elementor-button { animation: none; }
}

/* Menu: botão sem quebra de linha */
.sl-header .elementor-button { white-space: nowrap; }
.sl-header .elementor-widget-text-editor a:hover { color: #E4A705 !important; }
