/* Andercursos - visual global (cabeçalho, rodapé, botões, loja e cursos). Paleta da logo. */
:root {
	--acx-ink: #0b1f44;
	--acx-blue: #2050a0;
	--acx-blue-2: #17408a;
	--acx-cyan: #00a0e0;
	--acx-orange: #f0a020;
	--acx-orange-d: #d07010;
	--acx-bg: #f4f7fc;
	--acx-text: #26324d;
	--acx-line: #e3e9f3;
}

body { font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: var(--acx-text); }
h1, h2, h3, h4, h5, h6, .entry-title { font-family: "Montserrat", "Inter", sans-serif; color: var(--acx-ink); letter-spacing: -.01em; }
a { color: var(--acx-blue); }
a:hover { color: var(--acx-orange-d); }

/* ---------- Cabeçalho ---------- */
.ast-above-header, .ast-above-header-wrap, .ast-above-header-bar {
	background: var(--acx-ink) !important; border: 0 !important;
}
.site-above-header-wrap { background: transparent !important; border: 0 !important; }
.ast-above-header-bar a, .site-above-header-wrap a, .ast-above-header-bar .ast-social-color-type-custom svg { color: #c9d6f1 !important; fill: #c9d6f1 !important; font-size: 13px; }
.ast-above-header-bar a:hover, .site-above-header-wrap a:hover { color: var(--acx-orange) !important; fill: var(--acx-orange) !important; }

.ast-primary-header-bar, .main-header-bar, .ast-main-header-wrap {
	background: #fff !important; border-bottom: 0 !important;
	box-shadow: 0 6px 24px rgba(11, 31, 68, .08);
}
.site-primary-header-wrap { background: transparent !important; }
.main-header-menu > .menu-item > a, .ast-builder-menu-1 .menu-item > .menu-link {
	font-family: "Montserrat", sans-serif; font-weight: 600; font-size: 15px; color: var(--acx-ink) !important;
	padding-left: 16px; padding-right: 16px; transition: color .15s ease;
}
.main-header-menu > .menu-item:hover > a, .main-header-menu > .current-menu-item > a, .ast-builder-menu-1 .menu-item:hover > .menu-link { color: var(--acx-blue) !important; }
.main-header-menu > .current-menu-item > a { box-shadow: inset 0 -3px 0 var(--acx-orange); }
.main-header-menu .sub-menu { border-radius: 12px; border: 1px solid var(--acx-line); box-shadow: 0 14px 34px rgba(11, 31, 68, .14); overflow: hidden; }
.ast-site-header-cart .count, .ast-cart-menu-wrap .count { color: var(--acx-ink) !important; border-color: var(--acx-ink) !important; }

/* Faixa de aviso logo abaixo do cabeçalho (parcelamento) */
.ast-below-header, .ast-below-header-bar, .ast-below-header-wrap {
	background: linear-gradient(90deg, var(--acx-blue) 0%, var(--acx-ink) 100%) !important; border: 0 !important;
}
.site-below-header-wrap { background: transparent !important; border: 0 !important; }
.site-below-header-wrap, .site-below-header-wrap p, .site-below-header-wrap a, .ast-below-header-bar * {
	color: #fff !important; font-family: "Montserrat", sans-serif; font-weight: 600; font-size: 13px; letter-spacing: .04em;
}

/* ---------- Rodapé ---------- */
.site-footer, .site-footer .ast-builder-footer-grid-columns, .ast-small-footer, .footer-adv, .ast-footer-overlay,
.site-primary-footer-wrap, .site-above-footer-wrap, .site-below-footer-wrap, .ast-primary-footer, .ast-above-footer, .ast-below-footer {
	background: var(--acx-ink) !important; border: 0 !important; color: #c3d1ee;
}
.site-primary-footer-wrap { padding-top: 64px; padding-bottom: 40px; }
.site-footer h1, .site-footer h2, .site-footer h3, .site-footer h4, .site-footer .widget-title {
	color: #fff !important; font-family: "Montserrat", sans-serif; font-size: 15px; font-weight: 800;
	text-transform: uppercase; letter-spacing: .12em; margin-bottom: 20px; position: relative; padding-bottom: 14px;
}
.site-footer .widget-title::after, .site-footer h2::after {
	content: ""; position: absolute; left: 0; bottom: 0; width: 44px; height: 3px; border-radius: 2px; background: var(--acx-orange);
}
.site-footer, .site-footer p, .site-footer li, .site-footer span { color: #c3d1ee; }
.site-footer a { color: #fff; }
.site-footer a:hover { color: var(--acx-orange); }
.site-footer .site-below-footer-wrap { border-top: 1px solid rgba(255, 255, 255, .12) !important; background: #08183a !important; }
.site-footer img.avatar, .site-footer .wp-block-image img { border-radius: 50%; }

/* ---------- Botões ---------- */
.ast-button, button, input[type="button"], input[type="submit"], .button,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit {
	font-family: "Montserrat", sans-serif; font-weight: 700; border-radius: 999px;
	transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.single_add_to_cart_button, #place_order, .woocommerce a.checkout-button {
	background: var(--acx-orange) !important; color: var(--acx-ink) !important;
	box-shadow: 0 8px 20px rgba(240, 160, 32, .30); padding: 15px 30px;
}
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .single_add_to_cart_button:hover,
#place_order:hover, .woocommerce a.checkout-button:hover { background: #ffb43d !important; color: var(--acx-ink) !important; transform: translateY(-2px); }
.woocommerce a.button:not(.alt), .woocommerce button.button:not(.alt) { background: var(--acx-blue); color: #fff; }
.woocommerce a.button:not(.alt):hover, .woocommerce button.button:not(.alt):hover { background: var(--acx-blue-2); color: #fff; }

/* ---------- Loja ---------- */
.woocommerce ul.products li.product { background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 10px 30px rgba(11, 31, 68, .10); padding-bottom: 18px; transition: transform .22s ease, box-shadow .22s ease; }
.woocommerce ul.products li.product:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(11, 31, 68, .16); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: "Montserrat", sans-serif; font-weight: 700; color: var(--acx-ink); padding: 8px 16px 0; }
.woocommerce ul.products li.product .price { color: var(--acx-ink); font-family: "Montserrat", sans-serif; font-weight: 800; padding: 0 16px; }
.woocommerce ul.products li.product .button { margin-left: 16px; }
.woocommerce span.onsale { background: var(--acx-orange); color: var(--acx-ink); font-weight: 800; border-radius: 999px; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--acx-ink); font-family: "Montserrat", sans-serif; font-weight: 800; }

/* ---------- Tutor LMS (catálogo e página do curso) ---------- */
.tutor-course-card, .tutor-card { border-radius: 16px !important; overflow: hidden; box-shadow: 0 10px 30px rgba(11, 31, 68, .10) !important; border: 0 !important; transition: transform .22s ease, box-shadow .22s ease; }
.tutor-course-card:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(11, 31, 68, .16) !important; }
.tutor-btn.tutor-btn-primary, .tutor-btn-primary { background: var(--acx-blue) !important; border-color: var(--acx-blue) !important; color: #fff !important; border-radius: 999px !important; font-family: "Montserrat", sans-serif; font-weight: 700; }
.tutor-btn.tutor-btn-primary:hover { background: var(--acx-blue-2) !important; }
.tutor-color-primary, .tutor-color-design-dark { color: var(--acx-ink); }

/* ---------- Acessibilidade ---------- */
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid var(--acx-cyan); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }
