/*
Theme Name: Assistência GYNJET (Astra Child)
Theme URI: https://assistenciatecnicaemimpressora.gynjet.com.br
Description: Tema filho do Astra para o site de assistência técnica da GYNJET — identidade visual compartilhada com reset.gynjet.com.br.
Author: Gynjet
Template: astra
Version: 1.0.0
Text Domain: assistencia-astra-child
*/

:root {
  --rg-primary: #0F3D6E;
  --rg-primary-dark: #0A2A52;
  --rg-secondary: #1e6fd9;
  --rg-accent: #d4450b;          /* laranja AA: 4.5:1 com branco e sobre branco */
  --rg-accent-dark: #b83a08;
  --rg-accent-soft: #F97316;     /* só decorativo (ícones/fundos), nunca texto */
  --rg-success: #15803d;         /* verde AA com texto branco (5:1) */
  --rg-success-soft: #16A34A;    /* decorativo */
  --rg-bg: #F5F7FA;
  --rg-card: #ffffff;
  --rg-text: #1F2937;
  --rg-muted: #374151;           /* cinza mínimo AA (10:1) */
  --rg-border: #e5e7eb;
  --rg-radius: 12px;
  --rg-radius-sm: 8px;
  --rg-shadow: 0 4px 18px rgba(15, 23, 42, .08);
  --rg-shadow-hover: 0 10px 28px rgba(15, 23, 42, .14);
}

body { background: var(--rg-bg); color: var(--rg-text); }
body, button, input, select, textarea { font-family: 'Inter', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
h1, h2, h3, h4, h5, h6, .site-title { font-family: 'Poppins', 'Inter', system-ui, sans-serif; letter-spacing: -.01em; }
a { color: var(--rg-secondary); }
a:hover { color: var(--rg-accent-dark); }

/* ---------- Top bar ---------- */
.rg-topbar { background: var(--rg-primary-dark); color: #fff; font-size: 15px; }
.rg-topbar__inner { max-width: 1200px; margin: 0 auto; padding: 6px 20px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.rg-topbar a { color: #fff; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.rg-topbar a:hover { color: #ffd7b8; }
.rg-topbar svg { width: 16px; height: 16px; fill: currentColor; }
@media (max-width: 600px) { .rg-topbar__left { display: none; } .rg-topbar__inner { justify-content: center; } }

/* ---------- Header (sticky) ---------- */
#masthead { position: sticky; top: 0; z-index: 999; background: #fff; box-shadow: 0 1px 0 var(--rg-border), 0 4px 16px rgba(15,23,42,.05); }
.ast-primary-header-bar, .site-header .main-header-bar { background: #fff; }
.main-header-menu > .menu-item > .menu-link { font-weight: 600; color: var(--rg-primary); }
.main-header-menu > .menu-item > .menu-link:hover, .main-header-menu > .current-menu-item > .menu-link { color: var(--rg-accent); }
.ast-site-header-cart .ast-cart-menu-wrap .count, .ast-site-header-cart .ast-woo-header-cart-info-wrap { color: var(--rg-primary); }
.ast-site-header-cart .ast-cart-menu-wrap .count::after { border-color: var(--rg-primary); }
.ast-site-header-cart .ast-woo-header-cart-info-wrap { font-weight: 600; }
.ast-header-woo-cart .ast-cart-menu-wrap { padding-left: 8px; }
.ast-site-header-cart i.astra-icon:after { background: var(--rg-accent); color: #fff; }
.site-logo-img img { max-height: 64px; width: auto; image-rendering: auto; filter: none; opacity: 1; transform: none; }
.ast-mobile-header-wrap .ast-mobile-header-content { background: #fff; }
.ast-mobile-popup-drawer .ast-mobile-popup-inner { background: #fff; }
.ast-mobile-popup-drawer .menu-link { color: var(--rg-primary); font-weight: 600; }

/* ---------- Botões ---------- */
.ast-button, .button, button:not(.components-button):not(.menu-toggle):not(.ast-menu-toggle), input[type=submit], .wp-block-button__link, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce .wc-block-components-button, .wc-block-components-button:not(.is-link) {
  background: var(--rg-accent); color: #fff; border: 0; border-radius: var(--rg-radius-sm); font-weight: 700; padding: 13px 26px; box-shadow: 0 6px 16px rgba(212,69,11,.28); transition: transform .15s, box-shadow .15s, background .15s; text-decoration: none; font-size: 17px;
}
.ast-button:hover, .button:hover, .wp-block-button__link:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .wc-block-components-button:not(.is-link):hover {
  background: var(--rg-accent-dark); color: #fff; transform: translateY(-1px); box-shadow: var(--rg-shadow-hover);
}
.wp-block-button.is-style-outline .wp-block-button__link, .rg-btn--outline { background: transparent; border: 2px solid currentColor; box-shadow: none; color: #fff; }
.wp-block-button.is-style-outline .wp-block-button__link:hover, .rg-btn--outline:hover { background: rgba(255,255,255,.12); color: #fff; }
.rg-btn--wa { background: var(--rg-success) !important; box-shadow: 0 6px 16px rgba(21,128,61,.28) !important; }
.rg-btn--wa:hover { background: #166534 !important; }

/* ---------- Util ---------- */
.rg-section { padding: 64px 0; }
.rg-section--tight { padding: 40px 0; }
.rg-section--white { background: #fff; }
.rg-container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.rg-section h2, .rg-h2 { color: var(--rg-primary); font-size: clamp(30px, 3.7vw, 41px); font-weight: 700; margin: 0 0 12px; line-height: 1.2; }
.rg-sub { color: var(--rg-muted); font-size: 19px; max-width: 760px; margin: 0 0 32px; line-height: 1.6; }
.rg-center { text-align: center; }
.rg-center .rg-sub { margin-left: auto; margin-right: auto; }
.rg-card { background: var(--rg-card); border-radius: var(--rg-radius); box-shadow: var(--rg-shadow); padding: 28px; border: 1px solid rgba(229,231,235,.7); }
.rg-eyebrow { display: inline-block; font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--rg-accent); margin-bottom: 8px; }
.rg-grid { display: grid; gap: 24px; }
.rg-grid--4 { grid-template-columns: repeat(4, 1fr); }
.rg-grid--3 { grid-template-columns: repeat(3, 1fr); }
.rg-grid--2 { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 1024px) { .rg-grid--4 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 782px) { .rg-grid--3, .rg-grid--2, .rg-grid--4 { grid-template-columns: 1fr; } .rg-section { padding: 44px 0; } }

/* ---------- HERO ---------- */
.rg-hero { background: linear-gradient(135deg, #0A2A52 0%, #0F3D6E 58%, #15509a 100%); color: #fff; padding: 72px 0 64px; position: relative; overflow: hidden; }
.rg-hero::after { content: ""; position: absolute; inset: auto -10% -40% auto; width: 520px; height: 520px; border-radius: 50%; background: radial-gradient(circle, rgba(255,255,255,.10), transparent 70%); pointer-events: none; }
.rg-hero__inner { display: grid; grid-template-columns: 1.15fr .85fr; gap: 40px; align-items: center; }
.rg-hero h1 { color: #fff; font-size: clamp(30px, 4.4vw, 50px); line-height: 1.12; margin: 0 0 18px; font-weight: 700; }
.rg-hero p { font-size: 19px; color: #fff; max-width: 560px; margin: 0 0 28px; }
.rg-hero .wp-block-buttons { gap: 14px; }
.rg-hero__art { text-align: center; }
.rg-hero__art svg { width: 100%; max-width: 420px; height: auto; filter: drop-shadow(0 18px 30px rgba(0,0,0,.28)); }
.rg-hero__pill { display: inline-flex; align-items: center; gap: 8px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.25); padding: 6px 14px; border-radius: 999px; font-size: 14px; font-weight: 600; margin-bottom: 18px; }
.rg-hero__pill svg { width: 14px; height: 14px; fill: #4ade80; }
@media (max-width: 900px) { .rg-hero__inner { grid-template-columns: 1fr; } .rg-hero__art { order: -1; } .rg-hero__art svg { max-width: 260px; } .rg-hero { padding: 44px 0 40px; } }

/* ---------- Selos ---------- */
.rg-badges { background: #fff; border-bottom: 1px solid var(--rg-border); }
.rg-badges__row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; padding: 22px 0; }
.rg-badge { display: flex; align-items: center; gap: 14px; padding: 10px 14px; border-radius: var(--rg-radius-sm); }
.rg-badge__icon { width: 46px; height: 46px; border-radius: 12px; background: #eaf1ff; color: var(--rg-secondary); display: grid; place-items: center; flex: 0 0 46px; }
.rg-badge__icon svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.rg-badge--green .rg-badge__icon { background: #e7f8ed; color: var(--rg-success); }
.rg-badge--orange .rg-badge__icon { background: #fff1e6; color: var(--rg-accent); }
.rg-badge__icon { color: var(--rg-primary); }
.rg-badge strong { display: block; color: var(--rg-primary); font-size: 17px; }
.rg-badge span { color: var(--rg-muted); font-size: 15px; }
@media (max-width: 1024px) { .rg-badges__row { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .rg-badges__row { grid-template-columns: 1fr; } }

/* ---------- Como funciona ---------- */
.rg-step { position: relative; padding-top: 34px; }
.rg-step__num { position: absolute; top: -18px; left: 28px; width: 44px; height: 44px; border-radius: 50%; background: var(--rg-accent); color: #fff; font-weight: 800; display: grid; place-items: center; font-size: 19px; box-shadow: 0 6px 14px rgba(212,69,11,.35); }
.rg-step h3 { color: var(--rg-primary); font-size: 22px; margin: 6px 0 8px; }
.rg-step p { margin: 0; color: var(--rg-muted); font-size: 17px; }

/* ---------- Vitrine (Woo) ---------- */
.woocommerce ul.products li.product, .wc-block-grid__product { background: #fff; border-radius: var(--rg-radius); box-shadow: var(--rg-shadow); padding: 16px !important; border: 1px solid rgba(229,231,235,.7); transition: transform .18s, box-shadow .18s; text-align: center; }
@media (hover: hover) { .woocommerce ul.products li.product:hover { transform: translateY(-3px); box-shadow: var(--rg-shadow-hover); } }
.woocommerce ul.products li.product a img { border-radius: var(--rg-radius-sm); }
.woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product .astra-shop-summary-wrap .woocommerce-loop-product__title { color: var(--rg-primary); font-size: 18px; font-weight: 700; line-height: 1.3; }
.woocommerce ul.products li.product .price, .woocommerce div.product p.price { color: var(--rg-accent); font-weight: 800; font-size: 24px; }
.woocommerce ul.products li.product .price del, .woocommerce div.product p.price del { color: var(--rg-muted); font-weight: 500; font-size: .75em; opacity: .9; }
.woocommerce ul.products li.product .price ins, .woocommerce div.product p.price ins { text-decoration: none; }
.woocommerce ul.products li.product .button { width: 100%; margin-top: 10px; }
.woocommerce span.onsale, .ast-onsale-card { background: var(--rg-accent) !important; color: #fff !important; border-radius: 999px; font-weight: 700; padding: 4px 12px; min-height: 0; line-height: 1.6; left: 12px; top: 12px; }
.rg-products .woocommerce ul.products { margin: 0; }

/* ---------- Chips de modelos ---------- */
.rg-chips { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.rg-chips a { display: inline-block; padding: 9px 16px; border-radius: 999px; background: #fff; border: 1.5px solid #cfe0ff; color: var(--rg-primary); font-weight: 600; font-size: 16px; text-decoration: none; transition: all .15s; }
.rg-chips a:hover { background: var(--rg-primary); color: #fff; border-color: var(--rg-primary); transform: translateY(-1px); }
.rg-chips a.rg-chip--other { border-style: dashed; color: var(--rg-secondary); }
.rg-chips-groups { display: flex; flex-direction: column; gap: 18px; }
.rg-chips__label { font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 15px; letter-spacing: .04em; text-transform: uppercase; color: var(--rg-secondary); margin-bottom: 10px; }

/* ---------- Prova social ---------- */
.rg-social { background: #fff; }
.rg-rating { display: grid; grid-template-columns: 260px 1fr; gap: 28px; align-items: stretch; }
.rg-rating__score { background: linear-gradient(160deg, #004299, #0a5bc4); color: #fff; border-radius: var(--rg-radius); padding: 28px 24px; text-align: center; display: flex; flex-direction: column; justify-content: center; gap: 6px; }
.rg-rating__score .rg-big { font-size: 64px; font-weight: 800; line-height: 1; font-family: 'Poppins', sans-serif; }
.rg-rating__score .rg-stars { color: #fbbf24; font-size: 24px; letter-spacing: 2px; }
.rg-rating__score small { color: #E5E7EB; font-size: 15px; }
.rg-rating__score a { color: #fff; text-decoration: underline; font-weight: 600; font-size: 15px; margin-top: 8px; display: inline-block; }
.rg-testimonials { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.rg-quote { position: relative; padding: 28px 24px 22px 24px; }
.rg-quote::before { content: "\201C"; position: absolute; top: 6px; left: 18px; font-size: 64px; line-height: 1; color: #ffd7b8; font-family: Georgia, serif; }
.rg-quote p { margin: 0 0 12px; font-size: 18px; color: var(--rg-text); position: relative; }
.rg-quote cite { font-style: normal; color: var(--rg-muted); font-size: 15px; font-weight: 600; }
.rg-quote .rg-stars { color: #d97706; font-size: 15px; margin-bottom: 8px; }
@media (max-width: 900px) { .rg-rating { grid-template-columns: 1fr; } .rg-testimonials { grid-template-columns: 1fr; } }

/* ---------- Aviso ---------- */
.rg-notice { background: #fffaf3; border-left: 4px solid var(--rg-accent); border-radius: var(--rg-radius-sm); padding: 18px 22px; color: #374151; font-size: 17px; }
.rg-notice strong { color: var(--rg-text); }

/* ---------- CTA final ---------- */
.rg-cta { background: linear-gradient(135deg, #c2410c, #d4450b); color: #fff; padding: 56px 0; text-align: center; }
.rg-cta h2 { color: #fff; margin-bottom: 10px; }
.rg-cta p { color: #fff; font-size: 19px; margin: 0 auto 24px; max-width: 640px; }
.rg-cta .wp-block-button__link, .rg-cta .rg-btn--primary { background: #fff; color: var(--rg-accent-dark); box-shadow: 0 8px 22px rgba(0,0,0,.18); }
.rg-cta .wp-block-button__link:hover, .rg-cta .rg-btn--primary:hover { background: #fff7ed; color: var(--rg-accent-dark); }

/* ---------- Footer ---------- */
.rg-footer { background: var(--rg-primary-dark); color: #E5E7EB; font-size: 16px; }
.rg-footer a { color: #fff; text-decoration: none; }
.rg-footer a:hover { color: #ffd7b8; }
.rg-footer__cols { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 32px; padding: 52px 0 36px; }
.rg-footer h4 { color: #fff; font-size: 17px; margin: 0 0 14px; font-weight: 700; }
.rg-footer ul { list-style: none; margin: 0; padding: 0; }
.rg-footer li { margin: 0 0 9px; }
.rg-footer__logo img { height: 45px; width: auto; margin-bottom: 14px; }
.rg-footer__bottom { border-top: 1px solid rgba(255,255,255,.12); padding: 18px 0; font-size: 15px; color: #E5E7EB; text-align: center; line-height: 1.6; }
.rg-footer svg { width: 16px; height: 16px; vertical-align: -2px; margin-right: 6px; fill: currentColor; }
@media (max-width: 1024px) { .rg-footer__cols { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .rg-footer__cols { grid-template-columns: 1fr; padding: 36px 0 24px; } }

/* ---------- WhatsApp flutuante ---------- */
.rg-wa-float { position: fixed; right: 18px; bottom: 18px; z-index: 9999; width: 58px; height: 58px; border-radius: 50%; background: #25D366; color: #fff; display: grid; place-items: center; box-shadow: 0 8px 22px rgba(37,211,102,.45); transition: transform .15s; }
.rg-wa-float:hover { transform: scale(1.07); color: #fff; }
.rg-wa-float svg { width: 32px; height: 32px; fill: #fff; }
.rg-wa-float span { position: absolute; right: 70px; top: 50%; transform: translateY(-50%); background: #fff; color: var(--rg-text); font-size: 14px; font-weight: 600; padding: 8px 12px; border-radius: 8px; white-space: nowrap; box-shadow: var(--rg-shadow); opacity: 0; pointer-events: none; transition: opacity .15s; }
.rg-wa-float:hover span { opacity: 1; }
@media (max-width: 600px) { .rg-wa-float span { display: none; } }

/* ---------- Páginas internas ---------- */
.ast-separate-container .ast-article-single, .ast-separate-container .ast-article-post, .ast-separate-container .ast-woocommerce-container, .ast-separate-container .comments-area { border-radius: var(--rg-radius); box-shadow: var(--rg-shadow); border: 1px solid rgba(229,231,235,.7); }
.entry-title, .ast-archive-title, .woocommerce-products-header__title { color: var(--rg-primary); }
.rg-page-hero { background: linear-gradient(135deg, #0A2A52, #15509a); color: #fff; padding: 40px 0; margin-bottom: 32px; }
.rg-page-hero h1 { color: #fff; margin: 0; font-size: clamp(26px, 3.4vw, 38px); }
.rg-page-hero p { color: #E5E7EB; margin: 8px 0 0; font-size: 18px; }

/* FAQ accordion */
.rg-faq details { background: #fff; border: 1px solid var(--rg-border); border-radius: var(--rg-radius-sm); margin-bottom: 12px; box-shadow: 0 2px 8px rgba(15,23,42,.04); overflow: hidden; }
.rg-faq summary { cursor: pointer; list-style: none; padding: 18px 52px 18px 20px; font-weight: 700; color: var(--rg-primary); font-size: 19px; position: relative; font-family: 'Poppins', sans-serif; }
.rg-faq summary::-webkit-details-marker { display: none; }
.rg-faq summary::after { content: "+"; position: absolute; right: 18px; top: 50%; transform: translateY(-50%); width: 28px; height: 28px; border-radius: 50%; background: #eaf1ff; color: var(--rg-secondary); display: grid; place-items: center; font-weight: 800; transition: transform .2s, background .2s; }
.rg-faq details[open] summary::after { content: "–"; background: var(--rg-accent); color: #fff; }
.rg-faq details[open] summary { border-bottom: 1px solid var(--rg-border); }
.rg-faq details > div, .rg-faq details > p { padding: 16px 20px 20px; margin: 0; color: #374151; }

/* Página de produto */
.woocommerce div.product .product_title { color: var(--rg-primary); font-size: clamp(24px, 3vw, 34px); }
.woocommerce div.product p.price { font-size: 32px; margin-bottom: 8px; }
.woocommerce div.product p.price del { font-size: 18px; }
.woocommerce div.product form.cart .button, .woocommerce div.product form.cart .single_add_to_cart_button { font-size: 18px; padding: 16px 34px; width: 100%; max-width: 420px; }
.woocommerce div.product form.cart { margin: 18px 0; }
.woocommerce div.product div.images img, .woocommerce div.product div.images .woocommerce-product-gallery__wrapper { border-radius: var(--rg-radius); overflow: hidden; }
.rg-checklist { list-style: none; margin: 16px 0; padding: 0; }
.rg-checklist li { position: relative; padding-left: 30px; margin-bottom: 10px; }
.rg-checklist li::before { content: ""; position: absolute; left: 0; top: 3px; width: 20px; height: 20px; border-radius: 50%; background: var(--rg-success); -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-1.2 14.4-4-4 1.4-1.4 2.6 2.6 5.8-5.8 1.4 1.4z'/></svg>") center/contain no-repeat; mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-1.2 14.4-4-4 1.4-1.4 2.6 2.6 5.8-5.8 1.4 1.4z'/></svg>") center/contain no-repeat; }
.rg-product-badges { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin: 18px 0 8px; max-width: 520px; }
.rg-product-badges .rg-badge { padding: 8px 10px; background: #f8fafc; border: 1px solid var(--rg-border); }
.rg-product-badges .rg-badge__icon { width: 38px; height: 38px; flex-basis: 38px; border-radius: 10px; }
.rg-product-badges .rg-badge__icon svg { width: 20px; height: 20px; }
.rg-product-badges .rg-badge strong { font-size: 15px; }
.rg-product-badges .rg-badge span { display: none; }
.woocommerce-tabs ul.tabs li a, .woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--rg-primary); }
.woocommerce-Tabs-panel h2:first-child { display: none; }
.woocommerce .woocommerce-product-details__short-description { color: #374151; font-size: 18px; }
.ast-product-gallery-layout-vertical .woocommerce-product-gallery .flex-control-thumbs { display: none; }

/* Carrinho / checkout */
.woocommerce table.shop_table { border-radius: var(--rg-radius); overflow: hidden; background: #fff; }
.woocommerce-checkout #payment, .woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .select2-container--default .select2-selection--single { border-radius: var(--rg-radius-sm); }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea { border: 1px solid #d1d5db; padding: 12px 14px; }
.woocommerce-checkout #payment { background: #f8fafc; border: 1px solid var(--rg-border); }
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order { font-size: 18px; padding: 16px; width: 100%; }
.woocommerce-checkout .woocommerce-shipping-fields, .woocommerce-checkout #ship-to-different-address, .woocommerce-additional-fields { display: none !important; }
.woocommerce-checkout h3, .woocommerce-cart h2 { color: var(--rg-primary); }
.woocommerce-checkout .rg-checkout-trust { display: flex; flex-wrap: wrap; gap: 14px 24px; background: #fff; border: 1px solid var(--rg-border); border-radius: var(--rg-radius-sm); padding: 14px 18px; margin: 0 0 24px; font-size: 15px; color: var(--rg-muted); }
.woocommerce-checkout .rg-checkout-trust span { display: inline-flex; align-items: center; gap: 8px; }
.woocommerce-checkout .rg-checkout-trust svg { width: 18px; height: 18px; fill: none; stroke: var(--rg-success); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.woocommerce-message, .woocommerce-info { border-top-color: var(--rg-secondary); border-radius: var(--rg-radius-sm); }
.woocommerce-message::before, .woocommerce-info::before { color: var(--rg-secondary); }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { font-size: 17px; }

/* Blog */
.ast-separate-container .ast-article-post { padding: 28px; }
.ast-article-post .entry-title a { color: var(--rg-primary); }
.ast-article-post .entry-title a:hover { color: var(--rg-accent); }
.single-post .entry-content h2 { color: var(--rg-primary); }
.wp-block-quote { border-left-color: var(--rg-accent); background: #fff; border-radius: 0 var(--rg-radius-sm) var(--rg-radius-sm) 0; }

/* Loja - títulos/arquivo */
.woocommerce-products-header { margin-bottom: 20px; }
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { font-size: 15px; color: var(--rg-muted); }
.ast-woocommerce-container .woocommerce-breadcrumb { font-size: 14px; }

/* ---------- Fixes: blocos em HTML puro ---------- */
.rg-hero .wp-block-buttons, .rg-cta .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; }
.rg-hero .wp-block-button, .rg-cta .wp-block-button { display: inline-block; margin: 0; }
.entry-content a.wp-block-button__link, .entry-content .rg-chips a, .entry-content .rg-btn--primary, .rg-footer a, .rg-topbar a, .entry-content .rg-rating__score a { text-decoration: none !important; }
.entry-content .rg-rating__score a { text-decoration: underline !important; }
.wp-block-button__link { display: inline-block; line-height: 1.2; }
.rg-hero .is-style-outline .wp-block-button__link { color: #fff !important; border-color: rgba(255,255,255,.8) !important; background: transparent !important; }
.rg-hero .is-style-outline .wp-block-button__link:hover { background: rgba(255,255,255,.14) !important; }
.woocommerce div.product div.images.woocommerce-product-gallery, .woocommerce-product-gallery { opacity: 1 !important; }
.woocommerce-product-gallery__trigger { display: none; }

/* Produto em atualização (fora de estoque) */
.rg-oos-notice { background: #fff7ed; border: 1.5px solid #fdba74; border-radius: 12px; padding: 18px 20px; margin: 12px 0 18px; }
.rg-oos-notice p { margin: 0 0 12px; color: #7c2d12; font-size: 17px; line-height: 1.5; }
.rg-oos-notice .rg-wa-btn, .rg-wa-btn { display: inline-flex; align-items: center; gap: 8px; background: #15803d; color: #fff !important; font-weight: 700; padding: 12px 20px; border-radius: 999px; text-decoration: none !important; font-size: 16px; transition: background .15s; }
.rg-wa-btn:hover { background: #166534; color: #fff; }
.rg-wa-btn svg { width: 18px; height: 18px; fill: currentColor; }

/* ---------- Cards de produto: imagem contida, 1:1, sem overflow; 2 colunas no mobile ---------- */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { overflow: hidden; box-sizing: border-box; }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap, .woocommerce ul.products li.product .woocommerce-LoopProduct-link { display: block; width: 100%; }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap { border-radius: var(--rg-radius-sm); overflow: hidden; }
.woocommerce ul.products li.product a img, .woocommerce ul.products li.product img.attachment-woocommerce_thumbnail, .wc-block-grid__product-image img {
	display: block; width: 100%; max-width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; object-position: center;
	border-radius: var(--rg-radius-sm); margin: 0 auto;
}
.woocommerce ul.products li.product .onsale { z-index: 2; }
@media (max-width: 768px) {
	.woocommerce ul.products:not(.elementor-grid), .woocommerce-page ul.products:not(.elementor-grid),
	.woocommerce ul.products:not(.elementor-grid).columns-3, .woocommerce ul.products:not(.elementor-grid).columns-4,
	.woocommerce-page ul.products:not(.elementor-grid).columns-3, .woocommerce-page ul.products:not(.elementor-grid).columns-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important; column-gap: 12px !important; row-gap: 12px;
	}
	.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { padding: 10px !important; margin-bottom: 0 !important; }
	.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 18px; }
	.woocommerce ul.products li.product .price { font-size: 22px; }
	.woocommerce ul.products li.product .button { font-size: 16px; padding: 11px 8px; }
}

/* ---------- Card de produto 100% clicável (home, Loja, relacionados) ----------
   O link do título (.ast-loop-product__link) ganha um ::after esticado sobre o card inteiro
   (li.product é position:relative). Botão "Comprar" e botões flutuantes do Astra ficam acima (z-index)
   e mantêm o comportamento atual. Em telas de toque, o botão flutuante revelado por hover é escondido
   para o 1º toque não virar "hover" (iOS). */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { position: relative; }
.woocommerce ul.products li.product .ast-loop-product__link::after,
.woocommerce-page ul.products li.product .ast-loop-product__link::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: inherit; }
.woocommerce ul.products li.product .astra-shop-summary-wrap .button,
.woocommerce-page ul.products li.product .astra-shop-summary-wrap .button { position: relative; z-index: 2; }
.woocommerce ul.products li.product .ast-on-card-button { z-index: 5; }
.woocommerce ul.products li.product .woocommerce-LoopProduct-link, .woocommerce ul.products li.product .ast-loop-product__link { -webkit-tap-highlight-color: rgba(0,66,153,.12); }
@media (hover: none) {
	.woocommerce ul.products li.product .ast-on-card-button:not(.ast-onsale-card) { display: none !important; }
}

/* ---------- Legibilidade (23/08/2026): escala global 18px/1.6, textos pequenos ≥15px ---------- */
.entry-content p, .entry-content li, .woocommerce-Tabs-panel p, .woocommerce-Tabs-panel li, .woocommerce div.product .woocommerce-tabs .panel { line-height: 1.6; }
.woocommerce ul.products li.product .price del { font-size: .7em; }
.woocommerce-breadcrumb, .woocommerce .woocommerce-breadcrumb a { color: var(--rg-muted); }
.ast-site-header-cart .ast-woo-header-cart-info-wrap { font-size: 16px; }
.main-header-menu > .menu-item > .menu-link { font-size: 17px; }
small, .small, .rg-small { font-size: 15px; }
.woocommerce .star-rating, .woocommerce p.stars a, .rg-quote .rg-stars, .rg-rating__score .rg-stars { color: #b45309; }
.rg-rating__score .rg-stars { color: #fbbf24; } /* sobre azul: 5.6:1 */
.woocommerce .woocommerce-breadcrumb, .woocommerce .woocommerce-breadcrumb a, .ast-woocommerce-container .woocommerce-breadcrumb { color: var(--rg-muted) !important; }

/* ---------- Busca de produtos no cabeçalho ---------- */
.rg-search { position: relative; font-family: 'Inter', system-ui, sans-serif; }
.rg-search__form { display: flex; align-items: center; position: relative; }
.rg-search__icon { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); width: 18px; height: 18px; color: var(--rg-muted); pointer-events: none; }
.rg-search svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.rg-search input[type="search"] { width: 100%; height: 44px; padding: 0 44px 0 40px; border: 1.5px solid #cfe0ff; border-radius: 999px; background: #f5f8fd; font-size: 16px; color: var(--rg-text); box-shadow: none; -webkit-appearance: none; appearance: none; }
.rg-search input[type="search"]::placeholder { color: #4b5563; opacity: 1; }
.rg-search input[type="search"]:focus { outline: none; border-color: var(--rg-secondary); background: #fff; box-shadow: 0 0 0 3px rgba(37,99,235,.18); }
.rg-search input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
.rg-search__submit { position: absolute; right: 4px; top: 4px; width: 36px; height: 36px; border-radius: 50%; background: var(--rg-primary) !important; color: #fff; padding: 6px !important; box-shadow: none !important; display: grid; place-items: center; }
.rg-search__submit:hover { background: var(--rg-primary-dark) !important; transform: none !important; }
.rg-search--inline { width: 300px; margin: 0 12px; }
@media (max-width: 1200px) { .rg-search--inline { width: 230px; } }
.rg-search__results { position: absolute; top: calc(100% + 8px); left: 0; right: 0; background: #fff; border: 1px solid var(--rg-border); border-radius: 12px; box-shadow: 0 14px 40px rgba(15,23,42,.18); z-index: 1001; overflow: hidden; max-height: 70vh; overflow-y: auto; }
.rg-search__item { display: grid; grid-template-columns: 56px 1fr auto; gap: 12px; align-items: center; padding: 10px 14px; color: var(--rg-text); text-decoration: none !important; border-bottom: 1px solid #eef2f7; font-size: 16px; }
.rg-search__item img { width: 56px; height: 56px; border-radius: 8px; object-fit: cover; display: block; }
.rg-search__item:hover, .rg-search__item.is-active { background: #f0f5ff; color: var(--rg-primary); }
.rg-search__name { font-weight: 600; }
.rg-search__price { font-weight: 800; color: var(--rg-accent); white-space: nowrap; font-size: 16px; }
.rg-search__price del { color: var(--rg-muted); font-weight: 500; font-size: 13px; margin-right: 6px; }
.rg-search__price ins { text-decoration: none; }
.rg-search__all, .rg-search__all.is-active { display: block; padding: 12px 14px; text-align: center; font-weight: 700; color: var(--rg-secondary); text-decoration: none !important; font-size: 15px; }
.rg-search__all:hover, .rg-search__all.is-active { background: #f0f5ff; }
.rg-search__empty { padding: 16px; font-size: 15px; color: var(--rg-text); }
.rg-search__empty a { font-weight: 700; }
.rg-search--loading .rg-search__icon { animation: rg-pulse .9s infinite; }
@keyframes rg-pulse { 50% { opacity: .35; } }
@media (prefers-reduced-motion: reduce) { .rg-search--loading .rg-search__icon { animation: none; } }
/* mobile: ícone que expande o campo logo abaixo do cabeçalho */
.rg-search__toggle { width: 44px; height: 44px; border-radius: 50%; background: transparent !important; color: var(--rg-primary) !important; padding: 10px !important; box-shadow: none !important; display: grid; place-items: center; }
.rg-search__toggle:hover, .rg-search__toggle:focus-visible { background: #f0f5ff !important; transform: none !important; }
.rg-search--icon .rg-search__panel { display: none; position: fixed; left: 0; right: 0; top: var(--rg-header-bottom, 60px); padding: 10px 14px 12px; background: #fff; border-bottom: 1px solid var(--rg-border); box-shadow: 0 12px 28px rgba(15,23,42,.16); z-index: 1000; }
.rg-search--icon.rg-search--open .rg-search__panel { display: block; }
.rg-search--icon .rg-search__form { padding-right: 44px; }
.rg-search__close { position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border-radius: 50%; background: transparent !important; color: var(--rg-muted) !important; font-size: 18px; padding: 0 !important; box-shadow: none !important; }
.rg-search__close:hover { color: var(--rg-text) !important; transform: translateY(-50%) !important; }
.rg-search--icon .rg-search__results { left: 14px; right: 14px; }
.ast-header-html-2 .ast-builder-html-element, .ast-header-html-1 .ast-builder-html-element { display: flex; align-items: center; }
.ast-header-html-2 .ast-builder-html-element p, .ast-header-html-1 .ast-builder-html-element p { margin: 0; }
.rg-search--inline .rg-search__results { left: auto; right: 0; width: 440px; max-width: calc(100vw - 40px); }
/* cards com alturas iguais na grade: botão Comprar sempre alinhado embaixo */
.woocommerce ul.products li.product .astra-shop-summary-wrap { display: flex; flex-direction: column; flex: 1 1 auto; width: 100%; }
.woocommerce ul.products li.product .astra-shop-summary-wrap .button { margin-top: auto; }
.woocommerce ul.products li.product .astra-shop-summary-wrap .price { margin-bottom: 12px; }

/* ---------- Blog: grade de cards (3 col desktop / 1 mobile), card inteiro clicável ---------- */
.blog .site-content, .archive .site-content { padding-top: 24px; }
.ast-blog-layout-4-grid .ast-article-post { background: transparent !important; border: 0 !important; box-shadow: none; margin-bottom: 28px !important; display: flex; }
.ast-blog-layout-4-grid .ast-article-inner { width: 100%; display: flex; flex-direction: column; position: relative; background: #fff; border-radius: var(--rg-radius); box-shadow: var(--rg-shadow); border: 1px solid rgba(229,231,235,.7); overflow: hidden; transition: transform .18s, box-shadow .18s; }
@media (hover: hover) { .ast-blog-layout-4-grid .ast-article-inner:hover { transform: translateY(-3px); box-shadow: var(--rg-shadow-hover); } }
.ast-blog-layout-4-grid .ast-article-inner .post-content { display: flex; flex-direction: column; flex: 1; padding: 0 0 18px !important; position: static; }
.ast-blog-layout-4-grid .post-thumb, .ast-blog-layout-4-grid .ast-blog-featured-section { margin: 0 0 16px !important; padding: 0 !important; overflow: hidden; position: static; }
.ast-blog-layout-4-grid .post-thumb img, .ast-blog-layout-4-grid .ast-blog-featured-section img { margin: 0 !important; }
.ast-blog-layout-4-grid .post-thumb img { width: 100%; aspect-ratio: 1200 / 630; object-fit: cover; display: block; border-radius: 0 !important; }
.ast-blog-layout-4-grid .ast-article-post .cat-links, .ast-blog-layout-4-grid .ast-article-post .entry-title, .ast-blog-layout-4-grid .ast-article-post .ast-excerpt-container, .ast-blog-layout-4-grid .ast-article-post .entry-header, .ast-blog-layout-4-grid .ast-article-post .read-more { padding: 0 22px; }
.ast-blog-layout-4-grid .cat-links { margin-bottom: 8px !important; }
.ast-blog-layout-4-grid .cat-links a { display: inline-block; background: #eaf1ff; color: var(--rg-primary) !important; font-weight: 700; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; padding: 4px 10px; border-radius: 999px; text-decoration: none !important; position: relative; z-index: 2; }
.ast-blog-layout-4-grid .entry-title { font-size: 21px !important; line-height: 1.3; margin: 0 0 10px !important; }
.ast-blog-layout-4-grid .entry-title a { color: var(--rg-primary); }
.ast-blog-layout-4-grid .entry-title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.ast-blog-layout-4-grid .ast-excerpt-container p { color: var(--rg-muted); font-size: 16px; line-height: 1.55; margin: 0 0 12px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ast-blog-layout-4-grid .entry-meta, .ast-blog-layout-4-grid .entry-meta * { color: var(--rg-muted) !important; font-size: 15px !important; }
.ast-blog-layout-4-grid .ast-blog-meta-container { margin-top: auto; margin-bottom: 8px !important; }
.ast-blog-layout-4-grid .read-more { margin: 0 !important; }
.ast-blog-layout-4-grid .read-more a { color: var(--rg-secondary); font-weight: 700; font-size: 16px; text-decoration: none !important; position: relative; z-index: 2; }
.ast-blog-layout-4-grid .read-more a:hover { color: var(--rg-accent-dark); }
@media (max-width: 921px) { .ast-blog-layout-4-grid .ast-article-post { margin-bottom: 20px !important; } }
/* Single post */
.single-post .ast-article-single { padding: 32px 36px; }
.single-post .entry-title { font-size: clamp(28px, 3.6vw, 40px); line-height: 1.2; }
.single-post .post-thumb img { border-radius: var(--rg-radius); width: 100%; height: auto; }
.single-post .entry-content h2 { font-size: 28px; margin-top: 36px; }
.single-post .entry-content h3 { font-size: 22px; color: var(--rg-primary); }
.single-post .entry-content p, .single-post .entry-content li { font-size: 18px; line-height: 1.65; }
.single-post .entry-content ol li, .single-post .entry-content ul li { margin-bottom: 8px; }
.rg-answer { background: #eef4ff; border-left: 4px solid var(--rg-primary); border-radius: 0 var(--rg-radius-sm) var(--rg-radius-sm) 0; padding: 18px 22px; margin: 0 0 28px; }
.rg-answer p { margin: 0; font-size: 19px !important; line-height: 1.6; color: var(--rg-text); }
.rg-answer p strong { color: var(--rg-primary); }
.rank-math-block, #rank-math-faq, #rank-math-howto { margin: 28px 0; }
#rank-math-faq .rank-math-list-item, #rank-math-howto .rank-math-step, #rank-math-howto .rank-math-step { background: #fff; border: 1px solid var(--rg-border); border-radius: var(--rg-radius-sm); padding: 16px 20px; margin-bottom: 12px; list-style: none; }
#rank-math-faq .rank-math-question, #rank-math-howto .rank-math-step-title { font-size: 20px; color: var(--rg-primary); margin: 0 0 8px; }
#rank-math-faq .rank-math-answer, #rank-math-howto .rank-math-step-content { color: var(--rg-text); }
#rank-math-faq .rank-math-answer p, #rank-math-howto .rank-math-step-content p { margin: 0; }
#rank-math-howto .rank-math-howto-description { color: var(--rg-muted); margin-bottom: 14px; }
#rank-math-howto .rank-math-howto-duration { color: var(--rg-muted); font-size: 15px; }
#rank-math-howto .rank-math-steps { padding: 0; counter-reset: rgstep; }
#rank-math-howto .rank-math-step { position: relative; padding-left: 64px; }
#rank-math-howto .rank-math-step::before { counter-increment: rgstep; content: counter(rgstep); position: absolute; left: 18px; top: 16px; width: 32px; height: 32px; border-radius: 50%; background: var(--rg-accent); color: #fff; font-weight: 800; display: grid; place-items: center; font-size: 16px; }
.rg-post-products { margin: 44px 0 12px; padding-top: 28px; border-top: 1px solid var(--rg-border); }
.rg-post-products h2 { color: var(--rg-primary); font-size: 26px; margin: 0 0 6px; }
.rg-post-products__sub { color: var(--rg-muted); margin: 0 0 18px; font-size: 16px !important; }
.rg-post-products ul.products { margin: 0 !important; }
.rg-post-products__all { margin: 14px 0 0; text-align: center; }
.rg-post-products__all a { font-weight: 700; }
.single-post .rg-post-products .woocommerce-loop-product__title, .rg-post-products .woocommerce-loop-product__title { font-size: 16px !important; }
.rg-post-products .price { font-size: 20px !important; }
@media (max-width: 768px) { .rg-post-products ul.products.columns-4 { grid-template-columns: repeat(2, minmax(0,1fr)) !important; } .single-post .ast-article-single { padding: 20px 16px; } }
.rg-answer > * { max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
.single-post .ast-single-post-featured-section, .single-post .post-thumb-img-content { margin: 0 0 24px; }
.single-post .ast-single-post-featured-section img, .single-post .post-thumb-img-content img { border-radius: var(--rg-radius); width: 100%; height: auto; display: block; }

/* =====================================================================
   HERO v2 — "Do pisca-pisca ao verde" (23/08/2026)
   ===================================================================== */
:root { --rg-c: #00AEEF; --rg-m: #EC008C; --rg-y: #FFF100; }
.rg-hero--v2 { background: radial-gradient(1200px 600px at 100% 0%, rgba(30,111,217,.45), transparent 60%), linear-gradient(135deg, #0A2A52 0%, #0F3D6E 58%, #15509a 100%); padding: 64px 0 56px; position: relative; overflow: hidden; isolation: isolate; }
.rg-hero--v2::after { display: none; }
.rg-hero__bg { position: absolute; inset: 0; pointer-events: none; z-index: 0; }
.rg-glow { position: absolute; border-radius: 50%; opacity: 1; }
.rg-glow--c { width: 760px; height: 760px; left: -280px; top: -260px; background: radial-gradient(circle, rgba(0,174,239,.22) 0%, rgba(0,174,239,.08) 38%, transparent 68%); }
.rg-glow--m { width: 700px; height: 700px; right: 4%; bottom: -360px; background: radial-gradient(circle, rgba(236,0,140,.20) 0%, rgba(236,0,140,.07) 38%, transparent 68%); }
.rg-glow--y { width: 600px; height: 600px; left: 42%; top: -330px; background: radial-gradient(circle, rgba(255,241,0,.16) 0%, rgba(255,241,0,.05) 38%, transparent 68%); }
.rg-halftone { position: absolute; inset: 0; background-image: radial-gradient(rgba(255,255,255,.9) 1px, transparent 1.4px); background-size: 14px 14px; opacity: .045; mask-image: linear-gradient(180deg, rgba(0,0,0,.9), transparent 85%); -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,.9), transparent 85%); }
.rg-cmy-line { position: absolute; left: -10%; top: 58%; width: 130%; height: 14px; transform: rotate(-14deg); background: linear-gradient(180deg, var(--rg-c) 0 3px, transparent 3px 5.5px, var(--rg-m) 5.5px 8.5px, transparent 8.5px 11px, var(--rg-y) 11px 14px); opacity: .55; mask-image: linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent); -webkit-mask-image: linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent); }
@media (max-width: 900px) { .rg-halftone { display: none; } .rg-cmy-line { top: 32%; transform: rotate(-10deg); opacity: .4; } }
.rg-hero--v2 .rg-hero__inner { position: relative; z-index: 1; grid-template-columns: 1.1fr .9fr; gap: 36px; align-items: center; }
.rg-hero--v2 .rg-hero__pill { background: rgba(2,12,30,.55); border: 1px solid rgba(255,255,255,.18); color: #E5E7EB; font-size: 14px; }
.rg-dot { width: 9px; height: 9px; border-radius: 50%; background: #4ade80; display: inline-block; position: relative; }
.rg-dot::after { content: ""; position: absolute; inset: -1px; border-radius: 50%; border: 2px solid rgba(74,222,128,.8); animation: rgDot 2.8s ease-out infinite; }
@keyframes rgDot { 0% { transform: scale(1); opacity: .9; } 70%,100% { transform: scale(2.4); opacity: 0; } }
.rg-hero--v2 h1 { font-size: clamp(34px, 4.8vw, 64px); line-height: 1.06; letter-spacing: -.02em; font-weight: 800; margin: 0 0 16px; text-wrap: balance; }
.rg-blink { color: #fbbf24; display: inline-block; animation: rgBlink 4.2s ease-in-out infinite; will-change: opacity; }
@keyframes rgBlink { 0%,100% { color: #fbbf24; opacity: 1; } 6% { opacity: .35; } 12% { opacity: 1; } 18% { opacity: .35; } 24% { opacity: 1; } }
.rg-hero--v2 .rg-hero__sub { font-size: 19px; color: #E5E7EB; max-width: 560px; margin: 0 0 22px; line-height: 1.55; }
.rg-hero__search { max-width: 600px; margin-bottom: 12px; }
.rg-hero__label { display: block; color: #fff; font-weight: 700; font-size: 15px; margin-bottom: 8px; letter-spacing: .01em; }
.rg-search--hero input[type="search"] { height: 62px; font-size: 18px; padding: 0 64px 0 52px; border: 2px solid rgba(255,255,255,.35); background: #fff; border-radius: 16px; box-shadow: 0 14px 40px rgba(2,12,30,.35); color: var(--rg-text); }
.rg-search--hero input[type="search"]::placeholder { color: #4b5563; }
.rg-search--hero input[type="search"]:focus { border-color: #fbbf24; box-shadow: 0 0 0 4px rgba(251,191,36,.28), 0 14px 40px rgba(2,12,30,.35); }
.rg-search--hero .rg-search__icon { left: 18px; width: 22px; height: 22px; color: var(--rg-primary); }
.rg-search--hero .rg-search__submit { right: 7px; top: 7px; width: 48px; height: 48px; border-radius: 12px; background: var(--rg-accent) !important; }
.rg-search--hero .rg-search__submit:hover { background: var(--rg-accent-dark) !important; }
.rg-search--hero .rg-search__results { left: 0; right: 0; width: auto; border-radius: 14px; }
.rg-hero__chips { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 18px; font-size: 15px; color: #E5E7EB; }
.rg-hero__chips > span { margin-right: 2px; }
.rg-hero__chips a:not(.rg-hero__all) { display: inline-block; padding: 6px 13px; border-radius: 999px; background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.22); color: #fff !important; font-weight: 700; font-size: 14px; text-decoration: none !important; transition: background .15s, transform .15s; }
.rg-hero__chips a:not(.rg-hero__all):hover { background: #fff; color: var(--rg-primary) !important; transform: translateY(-1px); }
.rg-hero__chips .rg-hero__all { color: #fbbf24 !important; font-weight: 700; text-decoration: none !important; margin-left: 2px; }
.rg-hero__chips .rg-hero__all:hover { text-decoration: underline !important; }
.rg-hero__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; }
.rg-hero__wa { display: inline-flex; align-items: center; gap: 8px; color: #fff !important; font-weight: 700; font-size: 15px; text-decoration: none !important; padding: 8px 14px; border-radius: 999px; border: 1px solid rgba(255,255,255,.28); background: rgba(21,128,61,.35); }
.rg-hero__wa:hover { background: var(--rg-success); border-color: var(--rg-success); }
.rg-hero__wa svg { width: 18px; height: 18px; fill: #4ade80; }
.rg-hero__trust { font-size: 14px; color: #E5E7EB; }
.rg-hero__trust .rg-star { color: #fbbf24; }
/* teatro */
.rg-hero--v2 .rg-hero__art svg { max-width: 520px; overflow: visible; }
.rg-theater { animation: tFloat 6s ease-in-out infinite; will-change: transform; }
@keyframes tFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
.rg-theater .t-amber, .rg-theater .t-green, .rg-theater .t-toast, .rg-theater .t-cursor, .rg-theater .t-pulse, .rg-theater .t-paper, .rg-theater .t-btn { animation-duration: 6s; animation-iteration-count: infinite; animation-timing-function: linear; }
.rg-theater .t-amber--a { animation-name: tAmberA; }
.rg-theater .t-amber--b { animation-name: tAmberB; }
@keyframes tAmberA { 0%,7%,14%,21%,28% { opacity: 1; } 3.5%,10.5%,17.5%,24.5% { opacity: .12; } 31% { opacity: 1; } 36%,100% { opacity: 0; } }
@keyframes tAmberB { 0%,7%,14%,21%,28% { opacity: .12; } 3.5%,10.5%,17.5%,24.5% { opacity: 1; } 31% { opacity: .5; } 36%,100% { opacity: 0; } }
.rg-theater .t-green { animation-name: tGreen; }
@keyframes tGreen { 0%,36% { opacity: 0; } 42%,100% { opacity: 1; } }
.rg-theater .t-toast { transform-box: fill-box; transform-origin: center; }
.rg-theater .t-toast--err { animation-name: tToastErr; }
@keyframes tToastErr { 0% { opacity: 1; transform: translate(0,0); } 2% { transform: translate(-1.5px,0); } 4% { transform: translate(1.5px,0); } 6% { transform: translate(-1px,0); } 8% { transform: translate(0,0); } 16% { transform: translate(-1.5px,0); } 18% { transform: translate(1.5px,0); } 20% { transform: translate(0,0); } 31% { opacity: 1; } 36%,100% { opacity: 0; } }
.rg-theater .t-toast--ok { animation-name: tToastOk; }
@keyframes tToastOk { 0%,42% { opacity: 0; transform: translateY(8px); } 47%,95% { opacity: 1; transform: translateY(0); } 100% { opacity: 0; } }
.rg-theater .t-cursor { transform-box: fill-box; transform-origin: 10% 10%; animation-name: tCursor; }
@keyframes tCursor { 0%,26% { opacity: 0; transform: translate(10px,8px); } 30% { opacity: 1; transform: translate(0,0) scale(1); } 33% { transform: translate(0,0) scale(.82); } 36% { transform: translate(0,0) scale(1); } 44% { opacity: 1; } 50%,100% { opacity: 0; } }
.rg-theater .t-btn .t-btn-ok { animation: tBtn 6s linear infinite; opacity: 0; }
@keyframes tBtn { 0%,32% { opacity: 0; } 33%,100% { opacity: 1; } }
.rg-theater .t-pulse { animation-name: tPulse; stroke-dashoffset: 140; opacity: 0; animation-timing-function: ease-in-out; }
@keyframes tPulse { 0%,33% { stroke-dashoffset: 140; opacity: 0; } 34% { opacity: 1; } 46% { stroke-dashoffset: -120; opacity: 1; } 47%,100% { stroke-dashoffset: -120; opacity: 0; } }
.rg-theater .t-paper { animation-name: tPaper; animation-timing-function: cubic-bezier(.2,.8,.2,1); }
@keyframes tPaper { 0%,44% { transform: translateY(0); } 62%,96% { transform: translateY(-150px); } 100% { transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) {
	.rg-theater, .rg-theater .t-amber, .rg-theater .t-green, .rg-theater .t-toast, .rg-theater .t-cursor, .rg-theater .t-pulse, .rg-theater .t-paper, .rg-theater .t-btn-ok, .rg-blink, .rg-dot::after { animation: none !important; }
	.rg-theater .t-amber, .rg-theater .t-toast--err, .rg-theater .t-cursor, .rg-theater .t-pulse { opacity: 0 !important; }
	.rg-theater .t-green, .rg-theater .t-toast--ok { opacity: 1 !important; transform: none !important; }
	.rg-theater .t-paper { transform: translateY(-150px) !important; }
	.rg-theater .t-btn .t-btn-ok { opacity: 1 !important; }
	.rg-blink { opacity: 1; }
}
@media (max-width: 900px) {
	.rg-hero--v2 { padding: 36px 0 36px; }
	.rg-hero--v2 .rg-hero__inner { grid-template-columns: 1fr; gap: 18px; }
	.rg-hero--v2 .rg-hero__art { order: -1; }
	.rg-hero--v2 .rg-hero__art svg { max-width: 300px; }
	.rg-hero--v2 h1 { font-size: clamp(30px, 8vw, 40px); }
	.rg-hero--v2 .rg-hero__sub { font-size: 17px; }
	.rg-search--hero input[type="search"] { height: 56px; font-size: 16px; padding-left: 48px; }
	.rg-hero__chips { font-size: 14px; }
}
@media (max-width: 600px) { .rg-hero--v2 .rg-hero__art svg { max-width: 240px; } .rg-hero__meta { gap: 8px; } .rg-hero__trust { font-size: 13px; } .rg-hero--v2 .rg-hero__pill { font-size: 13px; padding: 5px 12px; } }

/* ---------- Micro-elevações ---------- */
/* 1) selos em pills coloridas */
.rg-badge__icon { border-radius: 14px; }
.rg-badge--blue .rg-badge__icon { background: #e3efff; color: #004299; }
.rg-badge--green .rg-badge__icon { background: #dcfce7; color: #15803d; }
.rg-badge--orange .rg-badge__icon { background: #ffedd5; color: #c2410c; }
.rg-badge--purple .rg-badge__icon { background: #ede9fe; color: #6d28d9; }
.rg-badge strong { font-size: 18px; }
/* 2) como funciona: fila de impressão */
.rg-steps { position: relative; }
.rg-steps::before { content: ""; position: absolute; left: 12%; right: 12%; top: 4px; height: 0; border-top: 2px dashed rgba(0,66,153,.25); }
.rg-steps::after { content: ""; position: absolute; left: 12%; right: 12%; top: 3px; height: 4px; border-radius: 2px; background: linear-gradient(90deg, var(--rg-c), var(--rg-m), var(--rg-y)); mask: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent); -webkit-mask: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent); opacity: .9; animation: rgQueue 2.4s ease-out 1 both; }
@keyframes rgQueue { 0% { clip-path: inset(0 100% 0 0); } 100% { clip-path: inset(0 0 0 0); } }
.rg-step__num { background: var(--rg-accent); box-shadow: 0 0 0 3px #fff, 0 0 0 6px transparent; }
.rg-step__num::before { content: ""; position: absolute; inset: -6px; border-radius: 50%; background: conic-gradient(var(--rg-c), var(--rg-m), var(--rg-y), var(--rg-c)); z-index: -1; }
.rg-step__num::after { content: ""; position: absolute; inset: -3px; border-radius: 50%; background: #fff; z-index: -1; }
@media (max-width: 782px) { .rg-steps::before, .rg-steps::after { display: none; } }
@media (prefers-reduced-motion: reduce) { .rg-steps::after { animation: none; clip-path: none; } }
/* 3) H2 com assinatura CMY */
.rg-section h2::after, .rg-cta h2::after { content: ""; display: block; width: 56px; height: 6px; margin: 12px auto 0; border-radius: 3px; background: linear-gradient(90deg, var(--rg-c) 0 33.3%, var(--rg-m) 33.3% 66.6%, var(--rg-y) 66.6% 100%); }
.rg-section > .rg-container > .rg-card h2::after, .rg-section .rg-card h2::after { margin-left: 0; }
.rg-center h2::after { margin-left: auto; margin-right: auto; }
/* 4) vitrine: zoom + sombra no botão */
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap img { transition: transform .35s cubic-bezier(.2,.8,.2,1); }
@media (hover: hover) {
	.woocommerce ul.products li.product:hover .astra-shop-thumbnail-wrap img { transform: scale(1.03); }
	.woocommerce ul.products li.product:hover .astra-shop-summary-wrap .button { box-shadow: 0 10px 22px rgba(212,69,11,.35); }
}
/* 5) CTA final: gradiente laranja→âmbar + listras CMY no topo */
.rg-cta { background: linear-gradient(120deg, #c2410c 0%, #b45309 100%); position: relative; }
.rg-cta::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: linear-gradient(90deg, var(--rg-c) 0 33.3%, var(--rg-m) 33.3% 66.6%, var(--rg-y) 66.6% 100%); }
.rg-cta h2::after { background: rgba(255,255,255,.85); }
/* 6) WhatsApp flutuante: anel a cada ~8s */
.rg-wa-float::before { content: ""; position: absolute; inset: -4px; border-radius: 50%; border: 2px solid rgba(37,211,102,.7); opacity: 0; animation: rgRing 8s ease-out infinite; }
@keyframes rgRing { 0%,88% { transform: scale(.9); opacity: 0; } 90% { opacity: .9; } 100% { transform: scale(1.55); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .rg-wa-float::before, .rg-dot { animation: none; } }

.rg-theater.is-paused, .rg-theater.is-paused .t-amber, .rg-theater.is-paused .t-green, .rg-theater.is-paused .t-toast, .rg-theater.is-paused .t-cursor, .rg-theater.is-paused .t-pulse, .rg-theater.is-paused .t-paper, .rg-theater.is-paused .t-btn-ok { animation-play-state: paused !important; }
/* Animações só começam depois do load (body.rg-anim) — estado inicial = "problema" estático; evita custo durante o carregamento */
body:not(.rg-anim) .rg-theater, body:not(.rg-anim) .t-amber, body:not(.rg-anim) .t-green, body:not(.rg-anim) .t-toast, body:not(.rg-anim) .t-cursor, body:not(.rg-anim) .t-pulse, body:not(.rg-anim) .t-paper, body:not(.rg-anim) .t-btn-ok, body:not(.rg-anim) .rg-blink, body:not(.rg-anim) .rg-dot::after, body:not(.rg-anim) .rg-wa-float::before, body:not(.rg-anim) .rg-steps::after { animation-play-state: paused !important; }

/* =====================================================================
   CONTATO em cards + páginas legais (Privacidade/Reembolso) — 23/08/2026
   ===================================================================== */
/* Título da página com assinatura CMY (3 fios) */
.page-id-12 .entry-title::after, .page-id-3 .entry-title::after, .page-id-13 .entry-title::after { content: ""; display: block; width: 64px; height: 6px; margin: 12px 0 0; border-radius: 3px; background: linear-gradient(90deg, var(--rg-c) 0 33.3%, var(--rg-m) 33.3% 66.6%, var(--rg-y) 66.6% 100%); }
.rg-contact__lead { font-size: 18px; color: var(--rg-muted); margin: 0 0 24px; }
.rg-contact { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin: 0 0 24px; }
@media (max-width: 782px) { .rg-contact { grid-template-columns: 1fr; } }
.rg-contact__card { background: #fff; border-radius: var(--rg-radius); box-shadow: var(--rg-shadow); border: 1px solid rgba(229,231,235,.9); padding: 26px 24px 24px; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; position: relative; overflow: hidden; }
.rg-contact__card--wa { border-color: rgba(21,128,61,.25); background: linear-gradient(180deg, #f3fbf5 0%, #fff 60%); }
.rg-contact__icon { width: 52px; height: 52px; border-radius: 14px; background: #eaf1ff; display: grid; place-items: center; font-size: 26px; line-height: 1; margin-bottom: 6px; }
.rg-contact__card--wa .rg-contact__icon { background: #dcfce7; }
.rg-contact__card h2 { color: var(--rg-primary); font-size: 22px; margin: 0 0 2px; }
.rg-contact__card h2::after { display: none; }
.rg-contact__big { font-size: 22px; font-weight: 700; margin: 0; color: var(--rg-text); }
.rg-contact__big a { color: var(--rg-primary); text-decoration: none; }
.rg-contact__big a:hover { color: var(--rg-accent-dark); text-decoration: underline; }
.rg-contact__stars { color: #b45309; letter-spacing: 1px; font-size: 20px; }
.rg-contact__addr { margin: 0; font-weight: 600; color: var(--rg-text); }
.rg-contact__meta { margin: 0; color: var(--rg-muted); font-size: 16px; line-height: 1.5; }
.rg-contact__btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 12px 24px; border-radius: var(--rg-radius-sm); font-weight: 700; font-size: 17px; text-decoration: none; margin-top: auto; border: 2px solid transparent; transition: background .15s, color .15s, box-shadow .15s; }
.rg-contact__card .rg-contact__btn { margin-top: 12px; }
.rg-contact__btn--wa { background: var(--rg-success); color: #fff; box-shadow: 0 6px 16px rgba(21,128,61,.28); font-size: 18px; padding: 14px 28px; }
.rg-contact__btn--wa:hover { background: #166534; color: #fff; }
.rg-contact__btn--outline { background: #fff; color: var(--rg-primary); border-color: var(--rg-primary); }
.rg-contact__btn--outline:hover { background: var(--rg-primary); color: #fff; }
.rg-contact__btn:focus-visible { outline: 3px solid var(--rg-accent-soft); outline-offset: 2px; }
/* Mapa (lazy: só carrega ao entrar na tela ou no clique) */
.rg-map { position: relative; height: 340px; border-radius: var(--rg-radius); overflow: hidden; border: 1px solid var(--rg-border); background: #eef2f7; margin: 0 0 24px; box-shadow: var(--rg-shadow); }
.rg-map iframe { width: 100%; height: 100%; border: 0; display: block; }
.rg-map__ph { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; gap: 10px; background: radial-gradient(circle at 50% 40%, #dbe7fb, #eef2f7 70%); color: var(--rg-muted); }
.rg-map__ph p { margin: 0; font-weight: 600; }
.rg-map__ph .rg-map__pin { font-size: 40px; line-height: 1; }
.rg-map__ph button { cursor: pointer; font-family: inherit; }
.rg-contact__legal { color: var(--rg-muted); font-size: 15px; border-top: 1px dashed var(--rg-border); padding-top: 16px; }
.rg-contact__legal p { margin: 0; }
/* Páginas legais */
.rg-legal { font-size: 17px; line-height: 1.7; }
.rg-legal h2 { color: var(--rg-primary); font-size: 22px; margin: 36px 0 12px; padding-bottom: 10px; position: relative; }
.rg-legal h2::after { content: ""; position: absolute; left: 0; bottom: 0; width: 44px; height: 4px; border-radius: 2px; background: linear-gradient(90deg, var(--rg-c) 0 33.3%, var(--rg-m) 33.3% 66.6%, var(--rg-y) 66.6% 100%); }
.rg-legal p { margin: 0 0 14px; }
.rg-summary { background: #eef4ff; border: 1px solid #c7d7f5; border-left: 5px solid var(--rg-primary); border-radius: var(--rg-radius); padding: 20px 22px 16px; margin: 0 0 26px; }
.rg-summary__title { font-family: 'Poppins', 'Inter', sans-serif; font-weight: 700; color: var(--rg-primary); font-size: 19px; margin: 0 0 10px; }
.rg-summary ul { margin: 0; padding-left: 22px; }
.rg-summary li { margin: 0 0 6px; }
.rg-rights { background: #eaf3ff; border-radius: var(--rg-radius); padding: 24px 26px 26px; margin: 36px 0 12px; border: 1px solid #c7d7f5; }
.rg-rights h2 { margin-top: 0; }
.rg-rights .rg-contact__btn { margin-top: 4px; }
.rg-legal__note { color: var(--rg-muted); font-size: 15px; margin-top: 24px; }
.entry-content .rg-contact__btn, .entry-content .rg-contact__btn:hover, .entry-content .rg-contact__btn:focus, .rg-legal .rg-contact__btn, .rg-legal .rg-contact__btn:hover { text-decoration: none !important; }
.entry-content .rg-contact__big a { text-decoration: none; } .entry-content .rg-contact__big a:hover { text-decoration: underline; }

/* =====================================================================
   FAQ colorida (23/08/2026) — só CSS: ícones via máscara SVG por posição, details/summary intactos
   ===================================================================== */
.page-id-11 .entry-title::after { content: ""; display: block; width: 64px; height: 6px; margin: 12px 0 0; border-radius: 3px; background: linear-gradient(90deg, var(--rg-c) 0 33.3%, var(--rg-m) 33.3% 66.6%, var(--rg-y) 66.6% 100%); }
.rg-faq__sub { font-size: 18px; color: var(--rg-muted); margin: 0 0 24px; }
.rg-faq details { border-radius: var(--rg-radius); box-shadow: var(--rg-shadow); border: 1px solid rgba(229,231,235,.9); margin-bottom: 14px; transition: transform .2s ease, box-shadow .2s ease; }
@media (hover: hover) { .rg-faq details:hover { transform: translateY(-2px); box-shadow: var(--rg-shadow-hover); } }
.rg-faq summary { padding: 18px 60px 18px 78px; min-height: 76px; display: flex; align-items: center; }
.rg-faq summary:focus-visible { outline: 3px solid var(--rg-accent-soft); outline-offset: -3px; border-radius: var(--rg-radius); }
/* pastilha + ícone */
.rg-faq summary::before { content: ""; position: absolute; left: 18px; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; border-radius: 12px; background-color: var(--rg-pill, #eaf1ff); -webkit-mask: none; mask: none; }
.rg-faq details { --rg-pill: #eaf1ff; }
.rg-faq summary::before { background-image: var(--rg-icon, none); background-repeat: no-repeat; background-position: center; background-size: 24px 24px; }
/* +/− laranja com giro */
.rg-faq summary::after { background: #ffedd5; color: var(--rg-accent); width: 30px; height: 30px; font-size: 20px; line-height: 1; transition: transform .3s cubic-bezier(.2,.8,.2,1), background .2s, color .2s; }
.rg-faq details[open] summary::after { content: "–"; background: var(--rg-accent); color: #fff; transform: translateY(-50%) rotate(180deg); }
.rg-faq details[open] summary { border-bottom: 1px solid var(--rg-border); }
/* resposta aberta: filete CMY à esquerda */
.rg-faq details > div { position: relative; padding: 18px 22px 22px 78px; }
.rg-faq details > div::before { content: ""; position: absolute; left: 36px; top: 18px; bottom: 22px; width: 4px; border-radius: 2px; background: linear-gradient(180deg, var(--rg-c) 0 33.3%, var(--rg-m) 33.3% 66.6%, var(--rg-y) 66.6% 100%); }
/* cores por item (azul, verde, laranja + toques CMY) */
.rg-faq details:nth-of-type(1) { --rg-pill: #eaf1ff; --rg-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23004299' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9V3h12v6'/%3E%3Crect x='3' y='9' width='18' height='8' rx='2'/%3E%3Cpath d='M7 14h10v7H7z'/%3E%3C/svg%3E"); }
.rg-faq details:nth-of-type(2) { --rg-pill: #dcfce7; --rg-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2315803d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 22h4'/%3E%3Cpath d='M12 2a7 7 0 0 0-4 12.7c.6.5 1 1.3 1 2.3h6c0-1 .4-1.8 1-2.3A7 7 0 0 0 12 2z'/%3E%3C/svg%3E"); }
.rg-faq details:nth-of-type(3) { --rg-pill: #ffedd5; --rg-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c2410c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 5-3.5 8.5-8 9-4.5-.5-8-4-8-9V6l8-3z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E"); }
.rg-faq details:nth-of-type(4) { --rg-pill: #d9f4fd; --rg-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230284c7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 4 14h7l-1 8 9-12h-7l1-8z'/%3E%3C/svg%3E"); }
.rg-faq details:nth-of-type(5) { --rg-pill: #fde4f1; --rg-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23be185d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18.2 8.5a3.5 3.5 0 0 1 0 7c-3 0-4.5-3.5-6.2-3.5S8.8 15.5 5.8 15.5a3.5 3.5 0 0 1 0-7c3 0 4.5 3.5 6.2 3.5s3.2-3.5 6.2-3.5z'/%3E%3C/svg%3E"); }
.rg-faq details:nth-of-type(6) { --rg-pill: #eaf1ff; --rg-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23004299' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='2'/%3E%3Cpath d='M8 20h8M12 16v4'/%3E%3C/svg%3E"); }
.rg-faq details:nth-of-type(7) { --rg-pill: #fdf9c4; --rg-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a16207' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12a8 8 0 1 1-2.3-5.7'/%3E%3Cpath d='M20 4v5h-5'/%3E%3C/svg%3E"); }
.rg-faq details:nth-of-type(8) { --rg-pill: #dcfce7; --rg-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2315803d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v10M9.5 9.5h3.5a1.75 1.75 0 0 1 0 3.5h-2a1.75 1.75 0 0 0 0 3.5H15'/%3E%3C/svg%3E"); }
@media (max-width: 600px) { .rg-faq summary { padding: 16px 52px 16px 66px; font-size: 17px; min-height: 68px; } .rg-faq summary::before { width: 38px; height: 38px; left: 14px; border-radius: 10px; background-size: 22px 22px; } .rg-faq summary::after { right: 12px; } .rg-faq details > div { padding: 16px 18px 20px 66px; } .rg-faq details > div::before { left: 31px; } }
.rg-faq__cta { position: relative; overflow: hidden; }
.rg-faq__cta::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: linear-gradient(180deg, var(--rg-c) 0 2px, var(--rg-m) 2px 4px, var(--rg-y) 4px 6px); }

/* =====================================================================
   BLOG com assinatura CMY (23/08/2026) — só estilo; conteúdo/headings/schema intocados
   ===================================================================== */
/* Cabeçalho do /blog/ (hook PHP rg_blog_head) e título de categoria */
.rg-blog-head { margin: 0 0 28px; }
.rg-blog-head h1, .archive .ast-archive-title, .archive .page-title { color: var(--rg-primary); font-size: clamp(28px, 3.6vw, 40px); line-height: 1.2; margin: 0; }
.rg-blog-head h1::after, .archive .ast-archive-title::after, .archive .page-title::after { content: ""; display: block; width: 64px; height: 6px; margin: 12px 0 0; border-radius: 3px; background: linear-gradient(90deg, var(--rg-c) 0 33.3%, var(--rg-m) 33.3% 66.6%, var(--rg-y) 66.6% 100%); }
.rg-blog-head p { font-size: 18px; color: var(--rg-muted); margin: 14px 0 0; }
/* Cards da grade: filete CMY no topo (revelado no hover) + zoom leve na imagem */
.ast-blog-layout-4-grid .ast-article-inner::before, .ast-related-post .ast-related-posts-inner-section::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; z-index: 3; background: linear-gradient(180deg, var(--rg-c) 0 2px, var(--rg-m) 2px 4px, var(--rg-y) 4px 6px); opacity: 0; transform: translateY(-6px); transition: opacity .25s ease, transform .25s ease; pointer-events: none; }
.ast-blog-layout-4-grid .post-thumb img, .ast-related-post .post-thumb img { transition: transform .35s cubic-bezier(.2,.8,.2,1); }
@media (hover: hover) {
	.ast-blog-layout-4-grid .ast-article-inner:hover::before, .ast-related-post .ast-related-posts-inner-section:hover::before { opacity: 1; transform: none; }
	.ast-blog-layout-4-grid .ast-article-inner:hover .post-thumb img, .ast-blog-layout-4-grid .ast-article-post:hover .post-thumb img, .ast-related-post .ast-related-posts-inner-section:hover .post-thumb img, .ast-related-post:hover .post-thumb img { transform: scale(1.03) !important; }
}
/* Pills de categoria: Epson azul (padrão), Guias laranja suave, Canon verde */
.ast-article-post.category-guias .cat-links a, .ast-related-post.category-guias .cat-links a { background: #ffedd5; color: #c2410c !important; }
.ast-article-post.category-canon .cat-links a, .ast-related-post.category-canon .cat-links a { background: #dcfce7; color: #15803d !important; }
/* "Ler mais →" laranja no hover */
.ast-blog-layout-4-grid .read-more a:hover, .ast-blog-layout-4-grid .rg-readmore:hover, .ast-the-content-more-link:hover { color: var(--rg-accent) !important; }
/* Post individual: H1 com sublinhado CMY, H2 com fio fino */
.single-post h1.entry-title::after { content: ""; display: block; width: 64px; height: 6px; margin: 14px 0 0; border-radius: 3px; background: linear-gradient(90deg, var(--rg-c) 0 33.3%, var(--rg-m) 33.3% 66.6%, var(--rg-y) 66.6% 100%); }
.single-post .entry-content h2, .rg-post-products h2, .single-post .ast-related-posts-title { position: relative; padding-bottom: 10px; }
.single-post .entry-content h2::after, .rg-post-products h2::after, .single-post .ast-related-posts-title::after { content: ""; position: absolute; left: 0; bottom: 0; width: 44px; height: 4px; border-radius: 2px; background: linear-gradient(90deg, var(--rg-c) 0 33.3%, var(--rg-m) 33.3% 66.6%, var(--rg-y) 66.6% 100%); }
.single-post .entry-content .woocommerce-loop-product__title::after { display: none; }
/* Box "resposta direta": filete lateral CMY em todos os posts (novos = .rg-answer; post 29 = 1º parágrafo) */
.rg-answer, .postid-29 .entry-content > p:first-child { position: relative; background: #eef4ff; border-left: 0; border-radius: 0 var(--rg-radius-sm) var(--rg-radius-sm) 0; padding: 18px 22px 18px 26px; margin: 0 0 28px; }
.rg-answer::before, .postid-29 .entry-content > p:first-child::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 5px; border-radius: 3px 0 0 3px; background: linear-gradient(180deg, var(--rg-c) 0 33.3%, var(--rg-m) 33.3% 66.6%, var(--rg-y) 66.6% 100%); }
.postid-29 .entry-content > p:first-child { font-size: 19px !important; line-height: 1.6; color: var(--rg-text); }
/* "Resets mais procurados": listras CMY no topo + título com fio */
.rg-post-products { position: relative; border-top: 0; padding-top: 30px; overflow: hidden; border-radius: var(--rg-radius) var(--rg-radius) 0 0; }
.rg-post-products::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: linear-gradient(180deg, var(--rg-c) 0 2px, var(--rg-m) 2px 4px, var(--rg-y) 4px 6px); }
.rg-post-products h2 { margin-bottom: 10px; }
/* Posts relacionados: cards no padrão da grade */
.single-post .ast-related-posts-title-section { margin-top: 40px; }
.single-post .ast-related-posts-title { color: var(--rg-primary); font-size: 26px; margin: 0 0 18px; }
.ast-related-post .ast-related-posts-inner-section { position: relative; background: #fff; border-radius: var(--rg-radius); box-shadow: var(--rg-shadow); border: 1px solid rgba(229,231,235,.7); overflow: hidden; transition: transform .18s, box-shadow .18s; padding: 0 0 18px; }
@media (hover: hover) { .ast-related-post .ast-related-posts-inner-section:hover { transform: translateY(-3px); box-shadow: var(--rg-shadow-hover); } }
.ast-related-post .ast-related-post-featured-section { margin: 0 0 14px; overflow: hidden; }
.ast-related-post .post-thumb img { width: 100%; aspect-ratio: 1200 / 630; object-fit: cover; display: block; border-radius: 0; margin: 0; }
.ast-related-post .ast-related-post-title, .ast-related-post .ast-related-post-excerpt, .ast-related-post .ast-related-post-cta, .ast-related-post .entry-meta, .ast-related-post .ast-related-cat-content, .ast-related-post .cat-links { padding: 0 18px; }
.ast-related-post .ast-related-post-title { font-size: 19px; line-height: 1.3; margin: 0 0 8px; }
.ast-related-post .ast-related-post-title a { color: var(--rg-primary); }
.ast-related-post .ast-related-post-title a:hover { color: var(--rg-accent); }
.ast-related-post .ast-related-post-excerpt p { color: var(--rg-muted); font-size: 16px !important; line-height: 1.55; margin: 0 0 10px; }
.ast-related-post .ast-related-post-cta a { color: var(--rg-secondary); font-weight: 700; text-decoration: none; }
.ast-related-post .ast-related-post-cta a:hover { color: var(--rg-accent); }
/* Navegação anterior/próximo */
.single-post .post-navigation { margin-top: 36px; }
.single-post .post-navigation .nav-links { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.single-post .post-navigation .nav-links > div { width: auto; }
.single-post .post-navigation .nav-links a { display: block; background: #fff; border: 1px solid var(--rg-border); border-radius: var(--rg-radius); padding: 14px 16px; color: var(--rg-primary); font-weight: 600; text-decoration: none; box-shadow: 0 2px 8px rgba(15,23,42,.04); transition: transform .18s, box-shadow .18s, color .15s; position: relative; overflow: hidden; }
.single-post .post-navigation .nav-links a::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: linear-gradient(90deg, var(--rg-c) 0 33.3%, var(--rg-m) 33.3% 66.6%, var(--rg-y) 66.6% 100%); opacity: 0; transition: opacity .2s; }
.single-post .post-navigation .nav-next a { text-align: right; }
@media (hover: hover) { .single-post .post-navigation .nav-links a:hover { transform: translateY(-2px); box-shadow: var(--rg-shadow-hover); color: var(--rg-accent-dark); } .single-post .post-navigation .nav-links a:hover::before { opacity: 1; } }
@media (max-width: 600px) { .single-post .post-navigation .nav-links { grid-template-columns: 1fr; } .single-post .post-navigation .nav-next a { text-align: left; } }
.ast-related-post .entry-title::after { display: none; content: none; }


/* ===== Assistência GYNJET — componentes próprios (24/08/2026) ===== */
.rg-section h2.rg-cmy, .rg-page-hero h1::after, .rg-legal h1::after { }
.rg-cmy::after { content: ""; display: block; width: 64px; height: 6px; margin: 12px 0 0; border-radius: 3px; background: linear-gradient(90deg, #00AEEF 0 33.3%, #EC008C 33.3% 66.6%, #FFF100 66.6% 100%); }
.rg-center .rg-cmy::after { margin-left: auto; margin-right: auto; }
.rg-page-hero { padding: 48px 0 40px; margin-bottom: 0; }
.rg-page-hero .rg-eyebrow { color: #FFF100; }
.rg-page-hero p { color: rgba(255,255,255,.9); font-size: 19px; max-width: 820px; margin: 12px 0 0; }
.rg-page-hero .rg-hero__meta { margin-top: 22px; }
.rg-page-hero h1::after { content: ""; display: block; width: 64px; height: 6px; margin: 14px 0 0; border-radius: 3px; background: linear-gradient(90deg, #00AEEF 0 33.3%, #EC008C 33.3% 66.6%, #FFF100 66.6% 100%); }
.rg-hero__wa, .rg-btn--wa { display: inline-flex; align-items: center; gap: 10px; background: #25D366; color: #fff !important; font-weight: 700; padding: 14px 22px; border-radius: 10px; text-decoration: none; box-shadow: 0 8px 22px rgba(37,211,102,.35); }
.rg-hero__wa svg, .rg-btn--wa svg { width: 22px; height: 22px; fill: currentColor; }
.rg-hero__wa:hover, .rg-btn--wa:hover { background: #1fb457; color: #fff !important; }
.rg-services { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; }
.rg-service { display: flex; flex-direction: column; gap: 10px; padding: 26px; text-decoration: none; color: var(--rg-text); position: relative; overflow: hidden; }
.rg-service::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: linear-gradient(180deg, #00AEEF 0 33.3%, #EC008C 33.3% 66.6%, #FFF100 66.6% 100%); opacity: 0; transition: opacity .2s; }
.rg-service:hover::before { opacity: 1; }
.rg-service:hover { box-shadow: var(--rg-shadow-hover); transform: translateY(-2px); }
.rg-service__icon { width: 52px; height: 52px; border-radius: 12px; background: #eaf1fb; color: var(--rg-primary); display: grid; place-items: center; }
.rg-service__icon svg { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.rg-service h3 { margin: 0; color: var(--rg-primary); font-size: 20px; }
.rg-service p { margin: 0; color: var(--rg-muted); font-size: 16px; }
.rg-service__more { margin-top: auto; color: var(--rg-accent); font-weight: 700; }
.rg-service--featured { background: linear-gradient(135deg, #0A2A52, #0F3D6E); color: #fff; }
.rg-service--featured h3, .rg-service--featured p { color: #fff; }
.rg-service--featured .rg-service__icon { background: rgba(255,255,255,.12); color: #FFF100; }
.rg-service--featured .rg-service__more { color: #FFF100; }
.rg-service--ext .rg-service__more::after { content: " ↗"; }
.rg-symptoms { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 12px; }
.rg-symptoms li { background: #fff; border: 1px solid var(--rg-border); border-left: 4px solid var(--rg-accent); border-radius: var(--rg-radius-sm); padding: 14px 16px; font-size: 16px; }
.rg-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; margin: 18px 0 0; }
.rg-gallery img { width: 100%; height: 170px; object-fit: cover; border-radius: var(--rg-radius-sm); box-shadow: var(--rg-shadow); }
.rg-figure { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: center; margin: 22px 0; }
.rg-figure img { width: 100%; height: auto; border-radius: var(--rg-radius); box-shadow: var(--rg-shadow); }
.rg-figure h3 { color: var(--rg-primary); margin: 0 0 8px; font-size: 22px; }
.rg-figure p { margin: 0; color: var(--rg-muted); }
.rg-figure--rev img { order: 2; }
.rg-models { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 0; }
.rg-models span, .rg-models a { display: inline-block; background: #fff; border: 1px solid var(--rg-border); border-radius: 999px; padding: 6px 14px; font-size: 15px; font-weight: 600; color: var(--rg-primary); text-decoration: none; }
.rg-models a:hover { border-color: var(--rg-accent); color: var(--rg-accent); }
.rg-prose { max-width: 820px; }
.rg-prose h2 { font-size: clamp(24px, 3vw, 30px); margin-top: 34px; }
.rg-prose h3 { color: var(--rg-primary); font-size: 21px; margin: 26px 0 8px; }
.rg-prose p, .rg-prose li { font-size: 17px; color: var(--rg-text); line-height: 1.7; }
.rg-video-ph { aspect-ratio: 16/9; border-radius: var(--rg-radius); background: linear-gradient(135deg, #0A2A52, #15509a); color: #fff; display: grid; place-items: center; text-align: center; padding: 24px; box-shadow: var(--rg-shadow); }
.rg-video-ph strong { display: block; font-size: 20px; }
.rg-video-ph span { opacity: .85; font-size: 15px; }
.rg-video-ph i { display: block; width: 68px; height: 68px; border-radius: 50%; background: rgba(255,255,255,.14); margin: 0 auto 12px; position: relative; }
.rg-video-ph i::after { content: ""; position: absolute; left: 27px; top: 20px; border-left: 22px solid #fff; border-top: 14px solid transparent; border-bottom: 14px solid transparent; }
.rg-combo { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; }
.rg-combo a { display: block; padding: 18px; text-decoration: none; color: var(--rg-text); }
.rg-combo strong { display: block; color: var(--rg-primary); font-size: 17px; }
.rg-combo span { color: var(--rg-accent); font-weight: 700; font-size: 15px; }
.rg-disclaimer { background: #f8fafc; border: 1px solid var(--rg-border); border-radius: var(--rg-radius-sm); padding: 18px 22px; font-size: 14px; color: #4b5563; line-height: 1.6; }
.rg-disclaimer strong { color: var(--rg-text); }
.rg-table { width: 100%; border-collapse: collapse; font-size: 16px; background: #fff; border-radius: var(--rg-radius-sm); overflow: hidden; box-shadow: var(--rg-shadow); }
.rg-table th, .rg-table td { padding: 12px 14px; border-bottom: 1px solid var(--rg-border); text-align: left; vertical-align: top; }
.rg-table th { background: #f3f6fb; color: var(--rg-primary); }
.rg-table-wrap { overflow-x: auto; }
.rg-region { columns: 3; column-gap: 24px; font-size: 15px; color: var(--rg-muted); }
.rg-hero--assist .rg-hero__art { display: grid; place-items: center; }
.rg-hero--assist .rg-hero__art svg { width: 100%; max-width: 460px; height: auto; filter: drop-shadow(0 20px 40px rgba(0,0,0,.35)); }
@media (max-width: 782px) { .rg-figure { grid-template-columns: 1fr; } .rg-figure--rev img { order: 0; } .rg-region { columns: 1; } .rg-hero--assist .rg-hero__art { display: none; } }

/* Astra sublinha links no conteúdo: cards-link e chips não */
.entry-content a.rg-service, .entry-content a.rg-service *, .entry-content .rg-combo a, .entry-content .rg-combo a *, .entry-content .rg-models a, .entry-content .rg-series a, .entry-content .rg-hero__wa, .entry-content .rg-btn--wa, .entry-content .rg-hero__all { text-decoration: none; }
.entry-content a.rg-service:hover h3 { text-decoration: underline; text-underline-offset: 3px; }
.entry-content .rg-service p { color: var(--rg-muted); } .entry-content .rg-service--featured p { color: #fff; }
.ast-single-post .entry-content > :first-child, .entry-content > .rg-hero, .entry-content > .rg-page-hero { margin-top: 0; }
.site-content .ast-container { padding-left: 0; padding-right: 0; }
.page .entry-header, .page .post-thumb, .page .ast-single-post-featured-section { display: none; }
/* AA: botão WhatsApp verde escuro (5:1 com branco) */
.rg-hero__wa, .rg-btn--wa, .entry-content .rg-hero__wa, .entry-content .rg-btn--wa { background: var(--rg-success); border-color: var(--rg-success); box-shadow: 0 8px 22px rgba(21,128,61,.3); }
.rg-hero__wa svg, .rg-btn--wa svg { fill: #fff; }
.rg-hero__wa:hover, .rg-btn--wa:hover { background: #126b34; }
.rg-footer h3 { color: #fff; font-size: 17px; margin: 0 0 14px; font-weight: 700; }
