/*
 * AgoraHost: estilos do tema.
 * Índice: 1 fontes · 2 tokens · 3 base · 4 utilitários · 5 botões · 6 cabeçalho/megamenu
 * 7 títulos de página · 8 conteúdo · 9 estilos de bloco · 10 seções (padrões) · 11 cartões/blog
 * 12 documentação · 13 busca · 14 rodapé · 15 diversos · 16 animações · 17 responsivo
 */

/* ---------- 1. Fontes (SUSE, SIL OFL 1.1) ---------- */
@font-face {
    font-family: "SUSE";
    font-style: normal;
    font-display: swap;
    font-weight: 100 800;
    src: url("../fonts/suse-latin-ext-wght-normal.woff2") format("woff2-variations");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: "SUSE";
    font-style: normal;
    font-display: swap;
    font-weight: 100 800;
    src: url("../fonts/suse-latin-wght-normal.woff2") format("woff2-variations");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- 2. Tokens ---------- */
:root {
    --ah-font: "SUSE", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    --ah-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;

    --ah-primary: #0066FF;
    --ah-primary-600: #0052D6;
    --ah-primary-50: #E5EEFF;
    --ah-primary-100: #D5E1FF;
    --ah-accent: #FF6B2C;
    --ah-accent-600: #F0561A;
    --ah-accent-50: #FFF2EB;
    --ah-cyan: #1FE6E6;
    --ah-green: #12B76A;
    --ah-green-50: #E8FAF1;
    --ah-yellow: #F5A524;
    --ah-yellow-50: #FFF7E6;
    --ah-red: #E5484D;
    --ah-red-50: #FFEEEE;

    --ah-ink: #0A1535;
    --ah-logo-ink: #03307F;
    --ah-logo-accent: #0066FF;
    --ah-text: #3B4256;
    --ah-muted: #4A5878;
    --ah-line: #DCE4F2;
    --ah-line-strong: #D5D9E5;
    --ah-bg: #FFFFFF;
    --ah-soft: #F3F7FF;
    --ah-surface: #FFFFFF;
    --ah-surface-2: #F9FAFD;
    --ah-code-bg: #0A1230;
    --ah-code-text: #E3E6F5;

    --ah-mesh:
        radial-gradient(55% 70% at 8% 0%, #E5EEFF 0%, rgba(238, 235, 255, 0) 62%),
        radial-gradient(45% 60% at 92% 8%, #E3F6FF 0%, rgba(227, 246, 255, 0) 62%),
        radial-gradient(55% 55% at 62% 100%, #FFF1E8 0%, rgba(255, 241, 232, 0) 62%),
        var(--ah-bg);
    --ah-brand-grad: linear-gradient(135deg, var(--ah-primary) 0%, #5B8FFF 52%, var(--ah-cyan) 100%);
    --ah-accent-grad: linear-gradient(135deg, var(--ah-accent) 0%, #FF9A4D 100%);

    --ah-radius-sm: 8px;
    --ah-radius: 14px;
    --ah-radius-lg: 22px;
    --ah-shadow-sm: 0 1px 2px rgba(10, 21, 53, .06), 0 1px 3px rgba(10, 21, 53, .04);
    --ah-shadow: 0 6px 24px -8px rgba(10, 21, 53, .14), 0 2px 6px rgba(10, 21, 53, .04);
    --ah-shadow-lg: 0 30px 70px -24px rgba(16, 40, 140, .30), 0 10px 24px -12px rgba(10, 21, 53, .12);
    --ah-ring: 0 0 0 3px rgba(0, 102, 255, .28);

    --ah-container: 1200px;
    --ah-content: 760px;
    --ah-gutter: clamp(16px, 4vw, 32px);
    --ah-header-h: 72px;
    --ah-ease: cubic-bezier(.2, .7, .2, 1);
    color-scheme: light;
}

@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
        --ah-primary: #5B8FFF;
        --ah-primary-600: #5B8FFF;
        --ah-primary-50: #14204A;
        --ah-primary-100: #1B2C66;
        --ah-accent-50: #33180F;
        --ah-green-50: #0D2A1E;
        --ah-yellow-50: #2E2410;
        --ah-red-50: #331417;
        --ah-ink: #F1F2FA;
        --ah-logo-ink: #F3F7FF; --ah-logo-accent: #5B8FFF;
        --ah-text: #C5C9DA;
        --ah-muted: #8C92AB;
        --ah-line: #1B2F63;
        --ah-line-strong: #2A3863;
        --ah-bg: #08112B;
        --ah-soft: #0C1328;
        --ah-surface: #0C1A3E;
        --ah-surface-2: #10224D;
        --ah-code-bg: #070914;
        --ah-mesh:
            radial-gradient(55% 70% at 8% 0%, rgba(0, 102, 255, .22) 0%, rgba(0, 102, 255, 0) 62%),
            radial-gradient(45% 60% at 92% 8%, rgba(31, 230, 230, .14) 0%, rgba(31, 230, 230, 0) 62%),
            radial-gradient(55% 55% at 62% 100%, rgba(255, 107, 44, .10) 0%, rgba(255, 107, 44, 0) 62%),
            var(--ah-bg);
        --ah-shadow: 0 8px 28px -10px rgba(0, 0, 0, .6), 0 2px 6px rgba(0, 0, 0, .3);
        --ah-shadow-lg: 0 30px 70px -24px rgba(0, 0, 0, .7), 0 10px 24px -12px rgba(0, 0, 0, .5);
        color-scheme: dark;
    }
}
:root[data-theme="dark"] {
    --ah-primary: #5B8FFF;
    --ah-primary-600: #5B8FFF;
    --ah-primary-50: #14204A;
    --ah-primary-100: #1B2C66;
    --ah-accent-50: #33180F;
    --ah-green-50: #0D2A1E;
    --ah-yellow-50: #2E2410;
    --ah-red-50: #331417;
    --ah-ink: #F1F2FA;
    --ah-logo-ink: #F3F7FF; --ah-logo-accent: #5B8FFF;
    --ah-text: #C5C9DA;
    --ah-muted: #8C92AB;
    --ah-line: #1B2F63;
    --ah-line-strong: #2A3863;
    --ah-bg: #08112B;
    --ah-soft: #0C1328;
    --ah-surface: #0C1A3E;
    --ah-surface-2: #10224D;
    --ah-code-bg: #070914;
    --ah-mesh:
        radial-gradient(55% 70% at 8% 0%, rgba(0, 102, 255, .22) 0%, rgba(0, 102, 255, 0) 62%),
        radial-gradient(45% 60% at 92% 8%, rgba(31, 230, 230, .14) 0%, rgba(31, 230, 230, 0) 62%),
        radial-gradient(55% 55% at 62% 100%, rgba(255, 107, 44, .10) 0%, rgba(255, 107, 44, 0) 62%),
        var(--ah-bg);
    --ah-shadow: 0 8px 28px -10px rgba(0, 0, 0, .6), 0 2px 6px rgba(0, 0, 0, .3);
    --ah-shadow-lg: 0 30px 70px -24px rgba(0, 0, 0, .7), 0 10px 24px -12px rgba(0, 0, 0, .5);
    color-scheme: dark;
}

/* ---------- 3. Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-padding-top: calc(var(--ah-header-h) + 24px); }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
body {
    margin: 0;
    background: var(--ah-bg);
    color: var(--ah-text);
    font-family: var(--ah-font);
    font-size: 1.0625rem;
    line-height: 1.65;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}
body.ah-lock { overflow: hidden; }
img, svg, video { max-width: 100%; height: auto; }
img { border-style: none; }
a { color: var(--ah-primary); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: var(--ah-primary-600); }
:focus-visible { outline: 2px solid var(--ah-primary); outline-offset: 2px; border-radius: 4px; }
h1, h2, h3, h4, h5, h6 {
    color: var(--ah-ink);
    font-family: var(--ah-font);
    font-weight: 650;
    line-height: 1.15;
    letter-spacing: -.022em;
    margin: 0 0 .6em;
    text-wrap: balance;
}
h1 { font-size: clamp(2.2rem, 4.6vw, 3.4rem); font-weight: 700; letter-spacing: -.03em; }
h2 { font-size: clamp(1.75rem, 3.2vw, 2.5rem); }
h3 { font-size: clamp(1.25rem, 2vw, 1.5rem); }
h4 { font-size: 1.15rem; }
p { margin: 0 0 1.1em; text-wrap: pretty; }
strong, b { color: var(--ah-ink); font-weight: 650; }
hr { border: 0; border-top: 1px solid var(--ah-line); margin: 2.5rem 0; }
::selection { background: var(--ah-primary); color: #fff; }
.screen-reader-text {
    border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px;
    overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;
}
.ah-skip {
    position: absolute; left: 12px; top: -60px; z-index: 1000; background: var(--ah-ink); color: var(--ah-bg);
    padding: 10px 16px; border-radius: var(--ah-radius-sm); text-decoration: none; transition: top .2s;
}
.ah-skip:focus { top: 12px; color: var(--ah-bg); }
.ah-icon { display: inline-block; flex: none; vertical-align: middle; }

/* ---------- 4. Utilitários ---------- */
.ah-container { width: 100%; max-width: calc(var(--ah-container) + var(--ah-gutter) * 2); margin-inline: auto; padding-inline: var(--ah-gutter); }
.ah-section { padding-block: clamp(64px, 9vw, 120px); }
.ah-section-sm { padding-block: clamp(40px, 6vw, 72px); }
.ah-grid { display: grid; gap: 24px; }
.ah-grid--2 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 420px), 1fr)); }
.ah-grid--3 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); }
.ah-eyebrow {
    display: inline-flex; align-items: center; gap: 8px; margin: 0 0 16px;
    color: var(--ah-primary); font-size: .8125rem; font-weight: 650; letter-spacing: .08em; text-transform: uppercase;
}
.ah-eyebrow a { color: inherit; text-decoration: none; }
.ah-kbd {
    display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 22px; padding: 0 6px;
    border: 1px solid var(--ah-line-strong); border-bottom-width: 2px; border-radius: 6px;
    background: var(--ah-surface); color: var(--ah-muted); font: 600 .6875rem/1 var(--ah-font); letter-spacing: .02em;
}
.ah-tile {
    display: inline-grid; place-items: center; width: 48px; height: 48px; flex: none; border-radius: 14px;
    background: var(--ah-primary-50); color: var(--ah-primary);
    box-shadow: inset 0 0 0 1px rgba(0, 102, 255, .12);
}
.ah-tile--sm { width: 32px; height: 32px; border-radius: 9px; }
.ah-tile--accent { background: var(--ah-accent-50); color: var(--ah-accent); box-shadow: inset 0 0 0 1px rgba(255, 107, 44, .14); }
.ah-tile--grad { background: var(--ah-brand-grad); color: #fff; box-shadow: 0 10px 24px -10px rgba(0, 102, 255, .7); }
.ah-grad, mark.ah-grad {
    background: var(--ah-brand-grad); -webkit-background-clip: text; background-clip: text; color: transparent;
    -webkit-text-fill-color: transparent;
}
.ah-badge {
    display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px;
    background: var(--ah-primary-50); color: var(--ah-primary); font-size: .75rem; font-weight: 650; line-height: 1.4;
}
.ah-badge--accent { background: var(--ah-accent-50); color: var(--ah-accent); }
.ah-badge--green { background: var(--ah-green-50); color: var(--ah-green); }

/* ---------- 5. Botões e controles ---------- */
.ah-btn,
.wp-block-button__link,
.wp-element-button,
input[type="submit"],
button[type="submit"]:not(.ah-iconbtn) {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    min-height: 46px; padding: 11px 22px; border: 1px solid transparent; border-radius: 12px;
    background: var(--ah-primary); color: #fff; cursor: pointer;
    font: 600 .975rem/1.2 var(--ah-font); letter-spacing: -.005em; text-decoration: none; white-space: nowrap;
    box-shadow: 0 1px 0 rgba(255, 255, 255, .18) inset, 0 8px 20px -10px rgba(0, 102, 255, .8);
    transition: transform .2s var(--ah-ease), box-shadow .2s var(--ah-ease), background-color .2s, color .2s, border-color .2s;
}
.ah-btn:hover,
.wp-block-button__link:hover,
.wp-element-button:hover,
input[type="submit"]:hover,
button[type="submit"]:not(.ah-iconbtn):hover {
    background: var(--ah-primary-600); color: #fff; transform: translateY(-1px);
    box-shadow: 0 1px 0 rgba(255, 255, 255, .18) inset, 0 14px 28px -12px rgba(0, 102, 255, .9);
}
.ah-btn:active, .wp-block-button__link:active { transform: translateY(0); }
.ah-btn--accent,
.wp-block-button.is-style-accent .wp-block-button__link {
    background: var(--ah-accent); color: #0A1535 !important; box-shadow: 0 1px 0 rgba(255, 255, 255, .22) inset, 0 8px 20px -10px rgba(255, 107, 44, .9);
}
.ah-btn--accent:hover,
.wp-block-button.is-style-accent .wp-block-button__link:hover {
    background: var(--ah-accent-600); color: #0A1535 !important; box-shadow: 0 1px 0 rgba(255, 255, 255, .22) inset, 0 14px 28px -12px rgba(255, 107, 44, .95);
}
.ah-btn--ghost,
.wp-block-button.is-style-ghost .wp-block-button__link,
.wp-block-button.is-style-outline .wp-block-button__link {
    background: var(--ah-surface); color: var(--ah-ink); border-color: var(--ah-line-strong); box-shadow: var(--ah-shadow-sm);
}
.ah-btn--ghost:hover,
.wp-block-button.is-style-ghost .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover {
    background: var(--ah-surface); color: var(--ah-primary); border-color: var(--ah-primary); box-shadow: var(--ah-shadow);
}
.wp-block-button.is-style-arrow .wp-block-button__link { background: transparent; color: var(--ah-primary); box-shadow: none; padding-inline: 0; min-height: 0; }
.wp-block-button.is-style-arrow .wp-block-button__link:hover { background: transparent; color: var(--ah-primary-600); transform: none; box-shadow: none; }
.ah-btn-arrow { transition: transform .2s var(--ah-ease); }
.wp-block-button__link:hover .ah-btn-arrow { transform: translateX(3px); }
.ah-btn .ah-icon { margin-inline: -2px; }

.ah-iconbtn {
    display: inline-flex; align-items: center; gap: 8px; height: 40px; min-width: 40px; padding: 0 10px;
    border: 1px solid transparent; border-radius: 10px; background: transparent; color: var(--ah-text); cursor: pointer;
    font: 500 .875rem var(--ah-font); transition: background-color .2s, color .2s, border-color .2s;
}
.ah-iconbtn:hover { background: var(--ah-soft); color: var(--ah-ink); }
.ah-chip {
    display: inline-flex; align-items: center; gap: 7px; height: 34px; padding: 0 12px;
    border: 1px solid var(--ah-line); border-radius: 999px; background: var(--ah-surface); color: var(--ah-text);
    font: 500 .8125rem var(--ah-font); cursor: pointer; transition: border-color .2s, color .2s, background-color .2s;
}
.ah-chip:hover { border-color: var(--ah-primary); color: var(--ah-primary); }
.ah-chip.is-done { border-color: var(--ah-green); color: var(--ah-green); }

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"],
input[type="tel"], input[type="number"], textarea, select {
    width: 100%; min-height: 46px; padding: 10px 14px; border: 1px solid var(--ah-line-strong); border-radius: 12px;
    background: var(--ah-surface); color: var(--ah-ink); font: 400 1rem var(--ah-font);
    transition: border-color .2s, box-shadow .2s;
}
input:focus, textarea:focus, select:focus { outline: none; border-color: var(--ah-primary); box-shadow: var(--ah-ring); }
textarea { min-height: 140px; resize: vertical; }
label { color: var(--ah-ink); font-weight: 500; }

/* ---------- 6. Cabeçalho e megamenu ---------- */
/* Barra de cima: anúncio à esquerda, ferramentas em ícones (com dica no hover e no foco) à direita. */
.ah-topbar { position: relative; z-index: 60; background: var(--ah-ink); color: #E8E9F5; font-size: .875rem; }
:root[data-theme="dark"] .ah-topbar { background: var(--ah-primary-100); }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .ah-topbar { background: var(--ah-primary-100); } }
.ah-topbar__inner { display: flex; align-items: center; gap: 16px; min-height: 42px; }
.ah-announce { display: flex; align-items: center; gap: 10px; flex: 1; min-width: 0; padding-block: 7px; line-height: 1.45; }
.ah-announce--center { justify-content: center; text-align: center; }
.ah-announce--left { justify-content: flex-start; text-align: left; }
.ah-announce--right { justify-content: flex-end; text-align: right; }
.ah-announce__badge { flex: none; }
.ah-announce__body { min-width: 0; }
.ah-announce__link { margin-left: 8px; white-space: nowrap; vertical-align: middle; }
.ah-topbar__tools { display: flex; align-items: center; gap: 2px; flex: none; margin-left: auto; }
.ah-topbar__btn {
    position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 7px; height: 32px; min-width: 32px; padding: 0 8px;
    border: 0; border-radius: 8px; background: transparent; color: inherit; cursor: pointer;
    font: 500 .8125rem/1 var(--ah-font); text-decoration: none; transition: background-color .2s, color .2s;
}
/* Ícones em destaque: branco puro, maiores e com fundo sutil para não sumirem na barra escura. */
.ah-topbar__tools > .ah-topbar__btn:not(.ah-topbar__login) { height: 36px; min-width: 36px; color: #fff; background: rgba(255, 255, 255, .10); margin-left: 4px; }
:root[data-theme="dark"] .ah-topbar__tools > .ah-topbar__btn:not(.ah-topbar__login) { color: var(--ah-ink); background: rgba(10, 21, 53, .10); }
:root[data-theme="dark"] .ah-topbar__tools > .ah-topbar__btn:not(.ah-topbar__login):hover { background: rgba(10, 21, 53, .20); color: var(--ah-ink); }
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .ah-topbar__tools > .ah-topbar__btn:not(.ah-topbar__login) { color: var(--ah-ink); background: rgba(10, 21, 53, .10); }
}
.ah-topbar__btn:hover, .ah-topbar__btn:focus-visible { background: rgba(255, 255, 255, .22); color: #fff; }
.ah-topbar__btn:focus-visible { outline: 2px solid #fff; outline-offset: 1px; }
/* Área do cliente em destaque: azul da marca com texto branco (contraste 5,7:1). Cores fixas porque as variáveis mudam no escuro. */
.ah-topbar__login {
    margin-left: 8px; padding: 0 14px; background: #0066FF; color: #fff; font-weight: 600;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .25), 0 4px 14px -6px rgba(0, 102, 255, .7);
}
.ah-topbar__login:hover, .ah-topbar__login:focus-visible { background: #0052D6; color: #fff; }
/* no escuro a barra já é azulada: contorno claro para o botão não se fundir ao fundo */
:root[data-theme="dark"] .ah-topbar__login { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .32), 0 4px 14px -6px rgba(0, 0, 0, .6); }
:root[data-theme="dark"] .ah-topbar__login:hover, :root[data-theme="dark"] .ah-topbar__login:focus-visible { background: #3A64FF; }
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .ah-topbar__login { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .32), 0 4px 14px -6px rgba(0, 0, 0, .6); }
    :root:not([data-theme="light"]) .ah-topbar__login:hover { background: #3A64FF; }
}
.ah-topbar__btn[data-tip]::after {
    content: attr(data-tip); position: absolute; top: calc(100% + 8px); left: 50%; z-index: 80;
    padding: 6px 10px; border: 1px solid var(--ah-line); border-radius: 8px; background: var(--ah-surface); color: var(--ah-ink);
    box-shadow: var(--ah-shadow-lg); font: 500 .75rem/1.3 var(--ah-font); white-space: nowrap; pointer-events: none;
    opacity: 0; visibility: hidden; transform: translate(-50%, -4px); transition: opacity .15s, transform .15s, visibility 0s linear .15s;
}
.ah-topbar__btn[data-tip]:hover::after, .ah-topbar__btn[data-tip]:focus-visible::after {
    opacity: 1; visibility: visible; transform: translate(-50%, 0); transition: opacity .15s .12s, transform .15s .12s, visibility 0s .12s;
}
/* o último item encosta na borda: a dica alinha pela direita para não sair da tela */
.ah-topbar__tools > :last-child[data-tip]::after { left: auto; right: 0; transform: translateY(-4px); }
.ah-topbar__tools > :last-child[data-tip]:hover::after, .ah-topbar__tools > :last-child[data-tip]:focus-visible::after { transform: none; }
/* Dica do telefone em duas linhas: número e horário de atendimento. */
.ah-topbar__btn--phone[data-tip]::after { white-space: pre; text-align: center; }
@media (hover: none) { .ah-topbar__btn[data-tip]::after { display: none; } }
.ah-announce__badge { display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 6px; background: var(--ah-brand-grad); color: #fff; }
.ah-announce__link { display: inline-flex; align-items: center; gap: 4px; color: #fff; font-weight: 600; text-decoration: none; }
.ah-announce__link:hover { color: #fff; text-decoration: underline; }

.ah-header {
    position: sticky; top: 0; z-index: 50;
    background: color-mix(in srgb, var(--ah-bg) 82%, transparent);
    -webkit-backdrop-filter: saturate(180%) blur(14px); backdrop-filter: saturate(180%) blur(14px);
    border-bottom: 1px solid transparent; transition: border-color .25s, box-shadow .25s, background-color .25s;
}
.admin-bar .ah-header { top: 32px; }
.ah-header.is-scrolled { border-bottom-color: var(--ah-line); box-shadow: 0 8px 30px -18px rgba(10, 21, 53, .25); }
.ah-header__inner { position: relative; display: flex; align-items: center; gap: 24px; height: var(--ah-header-h); }

.ah-brand { margin: 0; flex: none; font-size: 1.25rem; line-height: 1; }
.ah-brand a { display: inline-flex; align-items: center; gap: 10px; color: var(--ah-ink); font-weight: 700; letter-spacing: -.03em; text-decoration: none; }
.ah-brand__mark { width: 34px; height: 34px; }
.ah-brand__logo { display: block; width: auto; height: 46px; overflow: visible; shape-rendering: geometricPrecision; }
.ah-brand__logo .ah-logo__ink { fill: var(--ah-logo-ink); }
.ah-brand__logo .ah-logo__accent { fill: var(--ah-logo-accent); }
.ah-footer .ah-brand__logo { height: 42px; }
.ah-brand--img .ah-brand__logo { height: 46px; width: auto; max-width: none; image-rendering: auto; }
.ah-footer .ah-brand--img .ah-brand__logo { height: 42px; }
.ah-brand__logo--escuro { display: none !important; }
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .ah-brand__logo--claro { display: none !important; }
    :root:not([data-theme="light"]) .ah-brand__logo--escuro { display: block !important; }
}
:root[data-theme="dark"] .ah-brand__logo--claro { display: none !important; }
:root[data-theme="dark"] .ah-brand__logo--escuro { display: block !important; }
.ah-brand--custom img { display: block; width: auto; max-height: 40px; }

.ah-nav { flex: 1; min-width: 0; }
.ah-nav__panel { display: flex; align-items: center; }
.ah-nav__list { display: flex; align-items: center; gap: 2px; margin: 0; padding: 0; list-style: none; }
.ah-nav__list ul { list-style: none; margin: 0; padding: 0; }
.ah-nav__item--top { position: relative; display: flex; align-items: center; }
.ah-nav__item--top.has-mega { position: static; }
.ah-nav__link {
    display: inline-flex; align-items: center; gap: 4px; height: 40px; padding: 0 12px; border: 0; border-radius: 10px;
    background: transparent; color: var(--ah-text); cursor: pointer;
    font: 500 .9625rem/1 var(--ah-font); text-decoration: none; white-space: nowrap; transition: color .2s, background-color .2s;
}
.ah-nav__link:hover, .ah-nav__item--top.is-open > .ah-nav__link, .ah-nav__item--top.is-current > .ah-nav__link { color: var(--ah-ink); background: var(--ah-soft); }
.ah-nav__item--top.is-current > .ah-nav__link { color: var(--ah-primary); }
.ah-nav__chev { transition: transform .25s var(--ah-ease); opacity: .7; }
.ah-nav__item--top.is-open .ah-nav__chev { transform: rotate(180deg); }
.ah-nav__toggle {
    display: inline-grid; place-items: center; width: 26px; height: 26px; margin-left: -8px; padding: 0;
    border: 0; border-radius: 6px; background: transparent; color: var(--ah-muted); cursor: pointer;
}
.ah-nav__toggle .ah-icon { transition: transform .25s var(--ah-ease); }
.ah-nav__item--top.is-open > .ah-nav__toggle .ah-icon { transform: rotate(180deg); }
.ah-nav__mobile-actions { display: none; }

/* painel do megamenu e do menu suspenso */
.ah-mega, .ah-dropdown {
    position: absolute; top: calc(100% - 6px); z-index: 70;
    opacity: 0; visibility: hidden; transform: translateY(8px) scale(.985); transform-origin: top center;
    transition: opacity .2s var(--ah-ease), transform .25s var(--ah-ease), visibility 0s linear .25s;
}
.ah-mega::before, .ah-dropdown::before { content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 14px; }
.ah-mega { left: 50%; width: min(1080px, calc(100vw - 32px)); margin-left: calc(min(1080px, calc(100vw - 32px)) / -2); }
.ah-dropdown { left: 0; min-width: 300px; }
.ah-nav__item--top.is-open > .ah-mega,
.ah-nav__item--top.is-open > .ah-dropdown {
    opacity: 1; visibility: visible; transform: none; transition: opacity .2s var(--ah-ease), transform .25s var(--ah-ease), visibility 0s;
}
.ah-mega__inner, .ah-dropdown__list {
    padding: 14px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius-lg);
    background: var(--ah-surface); box-shadow: var(--ah-shadow-lg);
}
.ah-dropdown__list { padding: 8px; }
.ah-mega__cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 6px; }
.ah-mega__col { padding: 8px; min-width: 0; }
.ah-mega__heading {
    display: block; margin: 4px 10px 8px; color: var(--ah-muted); font-size: .75rem; font-weight: 650;
    letter-spacing: .08em; text-transform: uppercase; text-decoration: none;
}
a.ah-mega__heading:hover { color: var(--ah-primary); }
.ah-mega__links { display: grid; gap: 2px; }
/* 1.5.8: coluna única com muitos links ("cols-2") ocupa duas trilhas e divide os links em 2 colunas, como os outros menus. */
.ah-mega__col.cols-2 { grid-column: span 2; }
.ah-mega__col.cols-2 .ah-mega__links { grid-template-columns: 1fr 1fr; column-gap: 6px; }
.ah-mega__link {
    display: flex; align-items: flex-start; gap: 12px; padding: 10px; border-radius: 12px; color: var(--ah-ink);
    text-decoration: none; transition: background-color .18s;
}
.ah-mega__link:hover, .ah-mega__link:focus-visible { background: var(--ah-soft); color: var(--ah-ink); }
.ah-mega__icon {
    display: inline-grid; place-items: center; width: 38px; height: 38px; flex: none; border-radius: 10px;
    background: var(--ah-primary-50); color: var(--ah-primary); transition: background-color .18s, color .18s, transform .18s;
}
.ah-mega__link:hover .ah-mega__icon { background: var(--ah-primary); color: #fff; transform: scale(1.04); }
.ah-mega__text { display: grid; gap: 2px; min-width: 0; }
.ah-mega__title { font-size: .9375rem; font-weight: 600; line-height: 1.3; }
.ah-mega__desc { color: var(--ah-muted); font-size: .8125rem; line-height: 1.45; }
.ah-mega__col--promo { padding: 6px; }
.ah-mega__promo {
    position: relative; display: flex; flex-direction: column; gap: 8px; height: 100%; padding: 22px; overflow: hidden;
    border-radius: 16px; background: var(--ah-brand-grad); color: #fff;
}
.ah-mega__promo::after {
    content: ""; position: absolute; right: -40px; bottom: -40px; width: 160px; height: 160px; border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .35), rgba(255, 255, 255, 0) 70%);
}
.ah-mega__promo-icon { display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: rgba(255, 255, 255, .18); }
.ah-mega__promo-title { margin: 6px 0 0; color: #fff; font-size: 1.125rem; font-weight: 650; line-height: 1.25; }
.ah-mega__promo-desc { margin: 0; color: rgba(255, 255, 255, .86); font-size: .875rem; line-height: 1.5; }
.ah-mega__promo-link { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 10px; color: #fff; font-weight: 600; font-size: .9rem; text-decoration: none; }
.ah-mega__promo-link:hover { color: #fff; gap: 10px; }
/* 1.5.7: destaques extras dentro do cartão promo, separados por uma linha clara */
.ah-mega__promo:has(.ah-mega__promo-more) .ah-mega__promo-link { margin-top: 0; }
.ah-mega__promo-more {
    position: relative; z-index: 1; display: grid; gap: 6px; margin: auto 0 0; padding: 14px 0 0; list-style: none;
    border-top: 1px solid rgba(255, 255, 255, .3);
}
.ah-mega__promo-more > li { margin: 0; padding: 0; }
.ah-mega__promo-sub {
    display: flex; align-items: flex-start; gap: 10px; padding: 8px; margin: 0 -8px; border-radius: 12px;
    color: #fff; text-decoration: none; transition: background .15s ease;
}
.ah-mega__promo-sub:hover, .ah-mega__promo-sub:focus-visible { background: rgba(255, 255, 255, .14); color: #fff; }
.ah-mega__promo-sub-icon { display: inline-grid; flex: none; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: rgba(255, 255, 255, .18); }
.ah-mega__promo-sub-title { color: #fff; font-size: .9375rem; font-weight: 600; line-height: 1.3; }
.ah-mega__promo-sub-desc { color: rgba(255, 255, 255, .86); font-size: .8125rem; line-height: 1.45; }

.ah-header__actions { display: flex; align-items: center; gap: 6px; margin-left: auto; }
/* lupa da linha principal: só quando a barra de cima saiu da tela (is-stuck, ligado pelo theme.js) */
.ah-header__search { display: none; }
.ah-header.is-stuck .ah-header__search { display: inline-flex; animation: ah-fade .2s var(--ah-ease); }
@keyframes ah-fade { from { opacity: 0; } to { opacity: 1; } }
.ah-nav__mobile-tools { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ah-header__cta { min-height: 42px; padding: 9px 18px; margin-left: 4px; }
.ah-theme-toggle__sun { display: none; }
:root[data-theme="dark"] .ah-theme-toggle__sun { display: inline-block; }
:root[data-theme="dark"] .ah-theme-toggle__moon { display: none; }
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .ah-theme-toggle__sun { display: inline-block; }
    :root:not([data-theme="light"]) .ah-theme-toggle__moon { display: none; }
}
.ah-burger { display: none; }
.ah-burger__lines { position: relative; display: block; width: 20px; height: 14px; }
.ah-burger__lines span { position: absolute; left: 0; width: 100%; height: 2px; border-radius: 2px; background: currentColor; transition: transform .25s var(--ah-ease), opacity .2s, top .25s var(--ah-ease); }
.ah-burger__lines span:nth-child(1) { top: 0; }
.ah-burger__lines span:nth-child(2) { top: 6px; }
.ah-burger__lines span:nth-child(3) { top: 12px; }
.ah-nav-open .ah-burger__lines span:nth-child(1) { top: 6px; transform: rotate(45deg); }
.ah-nav-open .ah-burger__lines span:nth-child(2) { opacity: 0; }
.ah-nav-open .ah-burger__lines span:nth-child(3) { top: 6px; transform: rotate(-45deg); }

/* ---------- 7. Títulos de página e trilha ---------- */
.ah-page-hero { position: relative; padding: clamp(48px, 8vw, 96px) 0 clamp(32px, 5vw, 56px); background: var(--ah-mesh); border-bottom: 1px solid var(--ah-line); }
.ah-page-hero__title { max-width: 900px; margin-bottom: .35em; }
.ah-page-hero__lead { max-width: 720px; color: var(--ah-muted); font-size: 1.1875rem; }
.ah-page-hero__lead p:last-child { margin: 0; }
.ah-page-hero--post .ah-page-hero__title { max-width: 860px; }
.ah-crumbs { margin-bottom: 18px; font-size: .875rem; }
.ah-crumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 0; padding: 0; list-style: none; }
.ah-crumbs li { display: inline-flex; align-items: center; gap: 6px; color: var(--ah-muted); }
.ah-crumbs a { color: var(--ah-muted); text-decoration: none; }
.ah-crumbs a:hover { color: var(--ah-primary); }
.ah-crumbs [aria-current] { color: var(--ah-ink); font-weight: 500; }
.ah-meta { display: flex; flex-wrap: wrap; gap: 8px; color: var(--ah-muted); font-size: .875rem; }

/* ---------- 8. Conteúdo ---------- */
.ah-content { padding-inline: var(--ah-gutter); }
.ah-content > * { max-width: var(--ah-content); margin-left: auto; margin-right: auto; }
.ah-content > .alignwide { max-width: var(--ah-container); }
.ah-content > .alignfull { max-width: none; margin-left: calc(var(--ah-gutter) * -1); margin-right: calc(var(--ah-gutter) * -1); }
.ah-landing-content > * { margin-top: 0 !important; margin-bottom: 0 !important; }
.ah-landing-content > :not(.alignfull):not(.alignwide) { max-width: var(--ah-content); margin-inline: auto; padding-inline: var(--ah-gutter); }
.ah-landing-content > .alignwide { max-width: calc(var(--ah-container) + var(--ah-gutter) * 2); margin-inline: auto; padding-inline: var(--ah-gutter); }
.ah-landing-content > .alignfull { padding-left: var(--ah-gutter); padding-right: var(--ah-gutter); }
.entry-content { font-size: 1.0625rem; }
.entry-content > * + * { margin-top: 1.25em; }
.entry-content h2 { margin-top: 2em; font-size: clamp(1.5rem, 2.6vw, 2rem); }
.entry-content h3 { margin-top: 1.7em; font-size: clamp(1.2rem, 2vw, 1.375rem); }
.entry-content h4 { margin-top: 1.5em; }
.entry-content :where(h2, h3, h4):first-child { margin-top: 0; }
.entry-content ul, .entry-content ol { padding-left: 1.3em; }
.entry-content li { margin: .35em 0; }
.entry-content li::marker { color: var(--ah-primary); }
.entry-content img { border-radius: var(--ah-radius); }
.entry-content figcaption, .wp-element-caption { margin-top: 10px; color: var(--ah-muted); font-size: .875rem; text-align: center; }
.entry-content blockquote, .wp-block-quote {
    margin-inline: 0; padding: 4px 0 4px 22px; border-left: 3px solid var(--ah-primary); color: var(--ah-ink); font-size: 1.15rem;
}
.wp-block-quote cite { display: block; margin-top: 8px; color: var(--ah-muted); font-size: .875rem; font-style: normal; }
.wp-block-pullquote { border-color: var(--ah-line); }
:not(pre) > code, kbd:not(.ah-kbd) {
    padding: .15em .4em; border: 1px solid var(--ah-line); border-radius: 6px; background: var(--ah-soft); color: var(--ah-ink);
    font-family: var(--ah-mono); font-size: .875em;
}
pre, .wp-block-code, .wp-block-preformatted {
    position: relative; margin: 0; padding: 20px 22px; overflow: auto; border-radius: var(--ah-radius);
    background: var(--ah-code-bg); color: var(--ah-code-text); font: 400 .875rem/1.7 var(--ah-mono); tab-size: 4;
    border: 1px solid rgba(255, 255, 255, .06);
}
pre code, .wp-block-code code { padding: 0; border: 0; background: none; color: inherit; font: inherit; }
.ah-code { position: relative; }
.ah-code__copy {
    position: absolute; top: 10px; right: 10px; display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 10px;
    border: 1px solid rgba(255, 255, 255, .14); border-radius: 8px; background: rgba(255, 255, 255, .06); color: #C9CDE3;
    font: 500 .75rem var(--ah-font); cursor: pointer; opacity: 0; transition: opacity .2s, background-color .2s;
}
.ah-code:hover .ah-code__copy, .ah-code__copy:focus-visible, .ah-code__copy.is-done { opacity: 1; }
.ah-code__copy:hover { background: rgba(255, 255, 255, .14); color: #fff; }
.ah-code__copy.is-done { color: #7CE3B0; border-color: rgba(124, 227, 176, .4); }
.wp-block-table { overflow-x: auto; }
.entry-content table, .wp-block-table table { width: 100%; border-collapse: collapse; font-size: .9375rem; }
.entry-content th, .entry-content td { padding: 12px 14px; border: 0; border-bottom: 1px solid var(--ah-line); text-align: left; vertical-align: top; }
.entry-content thead th { border-bottom: 2px solid var(--ah-line-strong); color: var(--ah-ink); font-weight: 650; background: var(--ah-soft); }
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) { background: var(--ah-soft); }
.wp-block-table.is-style-stripes { border-bottom: 0; }
.wp-block-separator { border: 0; border-top: 1px solid var(--ah-line); }
.wp-block-image.is-style-shadow img { box-shadow: var(--ah-shadow-lg); }
.wp-block-image.is-style-browser img, .wp-block-image.is-style-browser > a > img {
    padding-top: 30px; border: 1px solid var(--ah-line); border-radius: 14px; box-shadow: var(--ah-shadow-lg);
    background:
        radial-gradient(circle at 16px 15px, #FF6159 5px, transparent 5.5px),
        radial-gradient(circle at 34px 15px, #FFBD2E 5px, transparent 5.5px),
        radial-gradient(circle at 52px 15px, #28C941 5px, transparent 5.5px),
        linear-gradient(var(--ah-surface-2), var(--ah-surface-2)) top / 100% 30px no-repeat,
        var(--ah-surface);
}
.ah-page-links { display: flex; gap: 8px; margin-top: 2rem; }

/* ---------- 9. Estilos de bloco ---------- */
.wp-block-group.is-style-card, .wp-block-group.is-style-card-hover, .wp-block-column.is-style-card {
    padding: clamp(22px, 3vw, 30px); border: 1px solid var(--ah-line); border-radius: var(--ah-radius-lg);
    background: var(--ah-surface); box-shadow: var(--ah-shadow-sm);
}
.wp-block-group.is-style-card-hover { transition: transform .3s var(--ah-ease), box-shadow .3s var(--ah-ease), border-color .3s; }
.wp-block-group.is-style-card-hover:hover { transform: translateY(-4px); border-color: var(--ah-primary-100); box-shadow: var(--ah-shadow-lg); }
.wp-block-group.is-style-mesh { background: var(--ah-mesh); }
.wp-block-group.is-style-dark-band {
    --ah-ink: #F1F2FA; --ah-logo-ink: #F3F7FF; --ah-logo-accent: #5B8FFF; --ah-text: #C5C9DA; --ah-muted: #8C92AB; --ah-line: #1B2F63; --ah-surface: #0C1A3E; --ah-soft: #10224D;
    background: radial-gradient(60% 90% at 15% 0%, rgba(0, 102, 255, .35), rgba(0, 102, 255, 0) 60%), radial-gradient(50% 80% at 100% 100%, rgba(31, 230, 230, .18), rgba(31, 230, 230, 0) 60%), #08112B;
    color: var(--ah-text);
}
/* avisos (callouts) */
.wp-block-group[class*="is-style-callout-"] {
    --ah-c: var(--ah-primary); --ah-cbg: var(--ah-primary-50);
    position: relative; padding: 16px 18px 16px 52px; border: 1px solid color-mix(in srgb, var(--ah-c) 28%, transparent);
    border-radius: var(--ah-radius); background: var(--ah-cbg); color: var(--ah-ink); font-size: .975rem;
}
.wp-block-group[class*="is-style-callout-"]::before {
    content: ""; position: absolute; left: 17px; top: 17px; width: 22px; height: 22px; background: var(--ah-c);
    -webkit-mask: var(--ah-cicon) center / contain no-repeat; mask: var(--ah-cicon) center / contain no-repeat;
}
.wp-block-group[class*="is-style-callout-"] > * { margin-top: 0; margin-bottom: 0; }
.wp-block-group[class*="is-style-callout-"] > * + * { margin-top: .6em; }
.wp-block-group[class*="is-style-callout-"] a { color: inherit; font-weight: 600; }
.wp-block-group.is-style-callout-info { --ah-cicon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v6M12 7.5v.01'/%3E%3C/svg%3E"); }
.wp-block-group.is-style-callout-tip { --ah-c: var(--ah-green); --ah-cbg: var(--ah-green-50); --ah-cicon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.5 10.9c.6.5 1 1.2 1 2.1h5c0-.9.4-1.6 1-2.1A6 6 0 0 0 12 3z'/%3E%3C/svg%3E"); }
.wp-block-group.is-style-callout-warning { --ah-c: var(--ah-yellow); --ah-cbg: var(--ah-yellow-50); --ah-cicon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l10 18H2L12 3z'/%3E%3Cpath d='M12 10v5M12 18v.01'/%3E%3C/svg%3E"); }
.wp-block-group.is-style-callout-danger { --ah-c: var(--ah-red); --ah-cbg: var(--ah-red-50); --ah-cicon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 4.5-3 8.3-7 10-4-1.7-7-5.5-7-10V6l7-3z'/%3E%3Cpath d='M12 8v5M12 16v.01'/%3E%3C/svg%3E"); }
/* listas */
.wp-block-list.is-style-checks, ul.is-style-checks { padding-left: 0; list-style: none; }
.is-style-checks li { position: relative; padding-left: 32px; }
.is-style-checks li::before {
    content: ""; position: absolute; left: 0; top: .2em; width: 22px; height: 22px; border-radius: 50%;
    background: var(--ah-green-50) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2312B76A' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18 8'/%3E%3C/svg%3E") center / 14px no-repeat;
}
ol.is-style-steps { counter-reset: ah-step; padding-left: 0; list-style: none; }
.is-style-steps > li { position: relative; counter-increment: ah-step; margin: 0; padding: 0 0 24px 52px; }
.is-style-steps > li::before {
    content: counter(ah-step); position: absolute; left: 0; top: -2px; display: grid; place-items: center; width: 34px; height: 34px;
    border-radius: 50%; background: var(--ah-primary-50); color: var(--ah-primary); font-weight: 700; font-size: .9375rem;
    box-shadow: inset 0 0 0 1px rgba(0, 102, 255, .2);
}
.is-style-steps > li:not(:last-child)::after { content: ""; position: absolute; left: 16.5px; top: 38px; bottom: 4px; width: 1px; background: var(--ah-line-strong); }
/* textos */
p.is-style-eyebrow {
    display: inline-flex; align-items: center; gap: 8px; color: var(--ah-primary); font-size: .8125rem; font-weight: 650;
    letter-spacing: .08em; text-transform: uppercase;
}
p.is-style-lead { color: var(--ah-muted); font-size: clamp(1.1rem, 1.6vw, 1.25rem); line-height: 1.6; }
.wp-block-heading.is-style-gradient { background: var(--ah-brand-grad); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }
/* blocos core */
.wp-block-details {
    padding: 0; border: 1px solid var(--ah-line); border-radius: var(--ah-radius); background: var(--ah-surface);
    transition: border-color .2s, box-shadow .2s;
}
.wp-block-details + .wp-block-details { margin-top: 12px; }
.wp-block-details[open] { border-color: var(--ah-primary-100); box-shadow: var(--ah-shadow); }
.wp-block-details summary {
    position: relative; padding: 18px 56px 18px 22px; color: var(--ah-ink); font-weight: 600; cursor: pointer; list-style: none;
}
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after {
    content: ""; position: absolute; right: 20px; top: 50%; width: 22px; height: 22px; margin-top: -11px; border-radius: 50%;
    background: var(--ah-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232251FF' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center / 14px no-repeat;
    transition: transform .25s var(--ah-ease);
}
.wp-block-details[open] summary::after { transform: rotate(45deg); }
.wp-block-details > :not(summary) { margin: 0; padding: 0 22px 18px; color: var(--ah-text); }

/* bloco de ícone do tema */
.wp-block-agorahost-icon { display: block; margin: 0; line-height: 0; }
.ah-ic { margin: 0 0 4px !important; line-height: 0; }
.ah-iconblock { display: inline-grid; place-items: center; color: var(--ah-primary); }
.ah-iconblock--tile { width: 52px; height: 52px; border-radius: 14px; background: var(--ah-primary-50); box-shadow: inset 0 0 0 1px rgba(0, 102, 255, .12); }
.ah-iconblock--accent { width: 52px; height: 52px; border-radius: 14px; background: var(--ah-accent-50); color: var(--ah-accent); }
.ah-iconblock--grad { width: 52px; height: 52px; border-radius: 14px; background: var(--ah-brand-grad); color: #fff; box-shadow: 0 12px 26px -12px rgba(0, 102, 255, .8); }
.ah-iconblock--circle { width: 44px; height: 44px; border-radius: 50%; background: var(--ah-soft); }

/* ---------- 10. Seções dos padrões ---------- */
.ah-sec { padding-top: clamp(44px, 6vw, 80px) !important; padding-bottom: clamp(44px, 6vw, 80px) !important; }
.ah-sec--sm { padding-top: clamp(32px, 4.5vw, 48px) !important; padding-bottom: clamp(32px, 4.5vw, 48px) !important; }
.ah-sec--soft { background: var(--ah-soft); }
.ah-sec-head { max-width: 760px; margin-inline: auto !important; margin-bottom: clamp(24px, 4vw, 40px) !important; text-align: center; }
.ah-sec-head > * { margin-inline: auto; }
.ah-sec-head h2 { margin-bottom: 14px; }
.ah-sec-head p:last-child { margin-bottom: 0; }

/* hero */
.ah-hero { position: relative; overflow: hidden; padding-top: clamp(56px, 8vw, 104px) !important; padding-bottom: clamp(56px, 8vw, 104px) !important; background: var(--ah-mesh); }
.ah-hero::before {
    content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .5;
    background-image: linear-gradient(var(--ah-line) 1px, transparent 1px), linear-gradient(90deg, var(--ah-line) 1px, transparent 1px);
    background-size: 56px 56px; -webkit-mask-image: radial-gradient(70% 60% at 50% 30%, #000 0%, transparent 75%); mask-image: radial-gradient(70% 60% at 50% 30%, #000 0%, transparent 75%);
}
.ah-hero > * { position: relative; }
.ah-hero__cols { align-items: center !important; gap: clamp(32px, 5vw, 64px) !important; }
.ah-hero__title { font-size: clamp(2.4rem, 5.4vw, 4rem) !important; line-height: 1.05 !important; letter-spacing: -.035em; margin-bottom: 20px; }
.ah-hero__lead { max-width: 560px; color: var(--ah-muted); font-size: clamp(1.1rem, 1.7vw, 1.3rem); line-height: 1.55; }
.ah-pill {
    display: inline-flex !important; align-items: center; gap: 10px; padding: 6px 14px 6px 6px; border: 1px solid var(--ah-line);
    border-radius: 999px; background: color-mix(in srgb, var(--ah-surface) 80%, transparent); box-shadow: var(--ah-shadow-sm);
    color: var(--ah-text); font-size: .875rem !important; font-weight: 500;
}
.ah-pill mark, .ah-pill strong { flex: none; white-space: nowrap; padding: 3px 10px; border-radius: 999px; background: var(--ah-brand-grad); color: #fff; font-size: .75rem; font-weight: 650; }
.ah-pill a { color: inherit; text-decoration: none; }
.ah-trust { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 14px; margin-top: 28px; color: var(--ah-muted); font-size: .9rem; }
.ah-trust > span { white-space: nowrap; }
.ah-trust__stars { color: #FFB020; letter-spacing: 2px; font-size: 1rem; }
.ah-hero__art { position: relative; margin: 0; }
.ah-hero__art img { display: block; width: 100%; filter: drop-shadow(0 40px 60px rgba(40, 30, 140, .18)); }
.ah-hero .wp-block-buttons { gap: 12px; margin-top: 32px; }

/* faixa de logos/tecnologias */
.ah-logos { padding-block: 36px !important; border-block: 1px solid var(--ah-line); background: var(--ah-surface); }
.ah-logos__label { margin: 0 0 18px !important; color: var(--ah-muted); font-size: .8125rem; font-weight: 600; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.ah-logos__row { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 36px; margin: 0 !important; padding: 0; list-style: none; }
.ah-logos__row li { display: inline-flex; align-items: center; gap: 8px; margin: 0; color: var(--ah-muted); font-size: 1.15rem; font-weight: 650; letter-spacing: -.02em; opacity: .85; transition: color .2s, opacity .2s; }
.ah-logos__row li::marker { content: ""; }
.ah-logos__row li:hover { color: var(--ah-ink); opacity: 1; }

/* cartões de recurso */
.ah-features { gap: 20px !important; grid-template-columns: repeat(auto-fit, minmax(min(19rem, 100%), 1fr)) !important; }
.ah-products-grid { grid-template-columns: repeat(auto-fit, minmax(min(15rem, 100%), 1fr)) !important; }
.ah-feature h3 { margin: 18px 0 8px; font-size: 1.1875rem; }
.ah-feature p { margin: 0; color: var(--ah-muted); font-size: .975rem; }
.ah-feature .wp-block-button.is-style-arrow { margin-top: 14px; }

/* produtos */
.ah-product { position: relative; display: flex !important; flex-direction: column; height: 100%; }
.ah-product h3 { margin: 18px 0 8px; font-size: 1.25rem; }
.ah-product p { color: var(--ah-muted); font-size: .975rem; }
.ah-product .ah-product__tag { position: absolute; top: 22px; right: 22px; margin: 0; }
.ah-product .wp-block-buttons { margin-top: auto; padding-top: 6px; }

/* bloco dividido */
.ah-split { align-items: center !important; gap: clamp(32px, 6vw, 80px) !important; }
.ah-split h2 { margin-bottom: 16px; }
.ah-split .is-style-checks { margin: 22px 0 28px; }
.ah-split img { display: block; width: 100%; }

/* números */
.ah-stats { gap: 16px !important; grid-template-columns: repeat(auto-fit, minmax(min(13rem, 100%), 1fr)) !important; }
.ah-stat { text-align: center; }
.ah-stat__n { margin: 0 !important; font-size: clamp(2.4rem, 5vw, 3.4rem) !important; font-weight: 700; letter-spacing: -.04em; line-height: 1; background: linear-gradient(135deg, #fff 0%, #B9B2FF 60%, #7FE7F5 100%); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }
.ah-stat__l { margin: 10px 0 0 !important; color: var(--ah-muted); font-size: .9375rem; }

/* preços */
.ah-pricing { gap: 20px !important; align-items: stretch !important; grid-template-columns: repeat(auto-fit, minmax(min(17rem, 100%), 1fr)) !important; }
.ah-plan { position: relative; display: flex !important; flex-direction: column; height: 100%; }
.ah-plan h3 { margin: 0 0 6px; font-size: 1.25rem; }
.ah-plan__desc { color: var(--ah-muted); font-size: .9375rem; min-height: 3em; }
.ah-plan__price { margin: 18px 0 4px !important; color: var(--ah-ink); font-size: 2.75rem !important; font-weight: 700; letter-spacing: -.04em; line-height: 1; }
.ah-plan__price sub, .ah-plan__price small { margin-left: 4px; color: var(--ah-muted); font-size: .9375rem; font-weight: 500; letter-spacing: 0; vertical-align: baseline; bottom: 0; }
.ah-plan__note { color: var(--ah-muted); font-size: .8125rem; }
.ah-plan .is-style-checks { margin: 18px 0 26px; font-size: .9375rem; }
.ah-plan .wp-block-buttons { margin-top: auto; }
.ah-plan .wp-block-button, .ah-plan .wp-block-button__link { width: 100%; }
.ah-plan.is-featured { border: 2px solid var(--ah-primary) !important; box-shadow: var(--ah-shadow-lg) !important; }
.ah-plan.is-featured::before {
    content: attr(data-badge); position: absolute; top: -13px; left: 50%; transform: translateX(-50%);
    padding: 4px 14px; border-radius: 999px; background: var(--ah-brand-grad); color: #fff; font-size: .75rem; font-weight: 650; white-space: nowrap;
}
.ah-plan__badge { position: absolute; top: -13px; left: 50%; transform: translateX(-50%); margin: 0 !important; padding: 4px 14px; border-radius: 999px; background: var(--ah-brand-grad); color: #fff; font-size: .75rem !important; font-weight: 650; white-space: nowrap; }

/* depoimentos */
.ah-quotes { gap: 20px !important; }
.ah-quote { display: flex !important; flex-direction: column; height: 100%; }
.ah-quote__stars { margin: 0 0 14px !important; color: #FFB020; letter-spacing: 3px; }
.ah-quote__text { color: var(--ah-ink); font-size: 1.0625rem; line-height: 1.6; }
.ah-quote__who { display: flex; align-items: center; gap: 12px; margin-top: auto !important; padding-top: 18px; font-size: .9rem; }
.ah-quote__who strong { display: block; }
.ah-quote__who > span:last-child { color: var(--ah-muted); }
.ah-avatar { display: inline-grid; place-items: center; width: 42px; height: 42px; flex: none; border-radius: 50%; background: var(--ah-brand-grad); color: #fff; font-weight: 700; font-size: .875rem; }

/* faixa de chamada */
.ah-cta {
    position: relative; overflow: hidden; padding: clamp(40px, 6vw, 72px) clamp(24px, 5vw, 64px) !important; border-radius: 28px;
    background: radial-gradient(80% 120% at 0% 0%, #5B8FFF 0%, rgba(91, 143, 255, 0) 55%), radial-gradient(70% 120% at 100% 100%, #1FE6E6 0%, rgba(31, 230, 230, 0) 55%), #03307F;
    color: rgba(255, 255, 255, .86); text-align: center;
}
.ah-cta::after {
    content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .18;
    background-image: radial-gradient(rgba(255, 255, 255, .7) 1px, transparent 1px); background-size: 22px 22px;
    -webkit-mask-image: linear-gradient(180deg, #000, transparent); mask-image: linear-gradient(180deg, #000, transparent);
}
.ah-cta > * { position: relative; z-index: 1; }
.ah-cta h2 { color: #fff; }
.ah-cta p { color: rgba(255, 255, 255, .86); font-size: 1.125rem; }
.ah-cta .wp-block-buttons { justify-content: center; gap: 12px; margin-top: 26px; }
.ah-cta .is-style-ghost .wp-block-button__link { background: rgba(255, 255, 255, .1); color: #fff; border-color: rgba(255, 255, 255, .35); box-shadow: none; }
.ah-cta .is-style-ghost .wp-block-button__link:hover { background: rgba(255, 255, 255, .18); color: #fff; border-color: #fff; }

/* busca de domínio */
.ah-domain {
    position: relative; display: flex; align-items: center; gap: 10px; max-width: 720px; margin: 0 auto; padding: 8px 8px 8px 18px;
    border: 1px solid var(--ah-line-strong); border-radius: 18px; background: var(--ah-surface); box-shadow: var(--ah-shadow-lg);
}
.ah-domain__icon { color: var(--ah-muted); display: inline-flex; }
.ah-domain .ah-domain__input { flex: 1; min-width: 0; border: 0; box-shadow: none; background: transparent; padding: 10px 4px; font-size: 1.0625rem; }
.ah-domain .ah-domain__input:focus { box-shadow: none; }
.ah-domain:focus-within { border-color: var(--ah-primary); box-shadow: var(--ah-shadow-lg), var(--ah-ring); }
.ah-domain__tlds { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 18px 0 0; padding: 0; list-style: none; }
.ah-domain__tlds li { padding: 4px 12px; border: 1px solid var(--ah-line); border-radius: 999px; background: var(--ah-surface); color: var(--ah-muted); font-size: .8125rem; font-weight: 600; }

/* ---------- 11. Cartões, blog e listas ---------- */
.ah-card {
    display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--ah-line); border-radius: var(--ah-radius-lg);
    background: var(--ah-surface); transition: transform .3s var(--ah-ease), box-shadow .3s var(--ah-ease), border-color .3s;
}
.ah-card:hover { transform: translateY(-4px); box-shadow: var(--ah-shadow-lg); border-color: var(--ah-primary-100); }
.ah-card__media { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--ah-mesh); }
.ah-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--ah-ease); }
.ah-card:hover .ah-card__media img { transform: scale(1.04); }
.ah-card__placeholder { display: grid; place-items: center; height: 100%; color: var(--ah-primary); opacity: .6; }
.ah-card__body { display: flex; flex-direction: column; gap: 8px; flex: 1; padding: 22px 24px 24px; }
.ah-card__kicker { margin: 0; color: var(--ah-primary); font-size: .75rem; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.ah-card__title { margin: 0; font-size: 1.25rem; line-height: 1.3; }
.ah-card__title a { color: var(--ah-ink); text-decoration: none; }
.ah-card__title a::after { content: ""; position: absolute; inset: 0; }
.ah-card { position: relative; }
.ah-card__excerpt { margin: 0; color: var(--ah-muted); font-size: .9375rem; }
.ah-card .ah-meta { margin-top: auto; padding-top: 8px; }
.ah-pagination { margin-top: 48px; }
.ah-pagination .nav-links { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px; }
.ah-pagination .page-numbers {
    display: inline-grid; place-items: center; min-width: 42px; height: 42px; padding: 0 10px; border: 1px solid var(--ah-line);
    border-radius: 12px; background: var(--ah-surface); color: var(--ah-text); font-weight: 600; text-decoration: none;
}
.ah-pagination .page-numbers.current, .ah-pagination a.page-numbers:hover { border-color: var(--ah-primary); background: var(--ah-primary); color: #fff; }
.ah-post__cover { margin-top: -24px; margin-bottom: 0; }
.ah-post__cover img { display: block; width: 100%; max-height: 560px; object-fit: cover; border-radius: var(--ah-radius-lg); box-shadow: var(--ah-shadow-lg); }
.ah-post__layout { padding-block: clamp(40px, 6vw, 72px); }
.ah-post__layout.has-sidebar { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 48px; max-width: calc(var(--ah-container) + var(--ah-gutter) * 2); margin-inline: auto; padding-inline: var(--ah-gutter); }
.ah-post__layout.has-sidebar .ah-content { padding-inline: 0; }
.ah-post__layout.has-sidebar .ah-content > * { margin-left: 0; }
.ah-post__footer { margin-top: 48px !important; padding-top: 28px; border-top: 1px solid var(--ah-line); }
.ah-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.ah-tags a { padding: 5px 12px; border: 1px solid var(--ah-line); border-radius: 999px; color: var(--ah-text); font-size: .8125rem; text-decoration: none; }
.ah-tags a:hover { border-color: var(--ah-primary); color: var(--ah-primary); }
.ah-postnav .nav-links { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.ah-postnav a { display: grid; gap: 4px; height: 100%; padding: 18px 20px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius); text-decoration: none; transition: border-color .2s; }
.ah-postnav a:hover { border-color: var(--ah-primary); }
.ah-postnav .nav-next { text-align: right; }
.ah-postnav__label { color: var(--ah-muted); font-size: .8125rem; }
.ah-postnav__title { color: var(--ah-ink); font-weight: 600; }
.ah-sidebar { display: grid; gap: 24px; align-content: start; }
.ah-widget { padding: 22px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius); background: var(--ah-surface); }
.ah-widget__title { font-size: 1rem; margin-bottom: 12px; }
.ah-widget ul { margin: 0; padding-left: 1.1em; }
.ah-empty { padding: 64px 0; color: var(--ah-muted); text-align: center; }
.ah-empty h2 { margin-top: 16px; }
.ah-empty .ah-searchform { max-width: 520px; margin: 24px auto 0; }
.ah-search-again { max-width: 640px; margin: 0 0 40px; }
.ah-searchform { position: relative; display: flex; gap: 8px; align-items: center; }
.ah-searchform > .ah-icon { position: absolute; left: 14px; color: var(--ah-muted); pointer-events: none; }
.ah-searchform input[type="search"] { padding-left: 44px; }
.ah-section-head { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.ah-section-head h2 { margin: 0; font-size: clamp(1.4rem, 2.4vw, 1.75rem); }

/* comentários */
.ah-comments { max-width: var(--ah-content); margin: 56px auto 0; }
.ah-comments__list { margin: 0 0 32px; padding: 0; list-style: none; }
.ah-comments__list .comment { margin: 0 0 16px; padding: 18px 20px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius); }
.ah-comments__list .children { margin-top: 16px; padding-left: 20px; list-style: none; }
.ah-comments .comment-author { display: flex; align-items: center; gap: 10px; }
.ah-comments .avatar { border-radius: 50%; }
.ah-comments .comment-metadata { font-size: .8125rem; }
.ah-comments .comment-metadata a { color: var(--ah-muted); text-decoration: none; }
.comment-form p { margin-bottom: 16px; }

/* ---------- 12. Documentação ---------- */
.ah-docs-hero { position: relative; overflow: hidden; padding: clamp(56px, 9vw, 112px) 0 clamp(48px, 7vw, 88px); text-align: center; border-bottom: 1px solid var(--ah-line); }
.ah-docs-hero__bg { position: absolute; inset: 0; background: var(--ah-mesh); }
.ah-docs-hero__bg::after {
    content: ""; position: absolute; inset: 0; opacity: .55;
    background-image: radial-gradient(var(--ah-line-strong) 1px, transparent 1px); background-size: 24px 24px;
    -webkit-mask-image: radial-gradient(60% 70% at 50% 40%, #000, transparent 75%); mask-image: radial-gradient(60% 70% at 50% 40%, #000, transparent 75%);
}
.ah-docs-hero__inner { position: relative; }
.ah-docs-hero__title { font-size: clamp(2.3rem, 5vw, 3.6rem); margin-bottom: 14px; }
.ah-docs-hero__lead { max-width: 620px; margin: 0 auto 32px; color: var(--ah-muted); font-size: 1.15rem; }
.ah-docs-hero__search {
    position: relative; display: flex; align-items: center; gap: 12px; max-width: 640px; margin: 0 auto; padding: 0 16px 0 20px;
    border: 1px solid var(--ah-line-strong); border-radius: 18px; background: var(--ah-surface); box-shadow: var(--ah-shadow-lg);
    color: var(--ah-muted); transition: border-color .2s, box-shadow .2s;
}
.ah-docs-hero__search:focus-within { border-color: var(--ah-primary); box-shadow: var(--ah-shadow-lg), var(--ah-ring); }
.ah-docs-hero__search input[type="search"] { flex: 1; height: 62px; border: 0; padding: 0; background: transparent; box-shadow: none; font-size: 1.0625rem; }
.ah-docs-hero__search input:focus { box-shadow: none; }

.ah-product-card {
    position: relative; display: flex; flex-direction: column; gap: 14px; padding: 26px; border: 1px solid var(--ah-line);
    border-radius: var(--ah-radius-lg); background: var(--ah-surface); transition: transform .3s var(--ah-ease), box-shadow .3s var(--ah-ease), border-color .3s;
}
.ah-product-card:hover { transform: translateY(-4px); border-color: var(--ah-primary-100); box-shadow: var(--ah-shadow-lg); }
.ah-product-card__head { display: flex; align-items: center; gap: 14px; }
.ah-product-card__title { margin: 0; font-size: 1.25rem; }
.ah-product-card__title a { color: var(--ah-ink); text-decoration: none; }
.ah-product-card__count { margin: 2px 0 0; color: var(--ah-muted); font-size: .8125rem; }
.ah-product-card__excerpt { margin: 0; color: var(--ah-muted); font-size: .9375rem; }
.ah-product-card__links { display: grid; gap: 2px; margin: 0; padding: 12px 0 0; border-top: 1px solid var(--ah-line); list-style: none; }
.ah-product-card__links a { display: flex; align-items: center; gap: 6px; padding: 5px 0; color: var(--ah-text); font-size: .9375rem; text-decoration: none; }
.ah-product-card__links a:hover { color: var(--ah-primary); }
.ah-product-card__links .ah-icon { color: var(--ah-muted); }
.ah-product-card__more { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; color: var(--ah-primary); font-weight: 600; text-decoration: none; }
.ah-product-card__more:hover { gap: 10px; }

.ah-linkcards { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); gap: 12px; }
.ah-linkcards--2 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)); }
.ah-linkcard {
    display: flex; align-items: center; gap: 14px; padding: 16px 18px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius);
    background: var(--ah-surface); color: var(--ah-ink); text-decoration: none; transition: border-color .2s, box-shadow .2s, transform .2s var(--ah-ease);
}
.ah-linkcard:hover { border-color: var(--ah-primary); color: var(--ah-ink); box-shadow: var(--ah-shadow); transform: translateY(-2px); }
.ah-linkcard__icon { display: inline-grid; place-items: center; width: 40px; height: 40px; flex: none; border-radius: 11px; background: var(--ah-primary-50); color: var(--ah-primary); }
.ah-linkcard__text { display: grid; gap: 2px; flex: 1; min-width: 0; }
.ah-linkcard__title { font-weight: 600; line-height: 1.3; }
.ah-linkcard__meta { color: var(--ah-muted); font-size: .8125rem; line-height: 1.4; }
.ah-linkcard__arrow { color: var(--ah-muted); transition: transform .2s var(--ah-ease), color .2s; }
.ah-linkcard:hover .ah-linkcard__arrow { color: var(--ah-primary); transform: translateX(3px); }

.ah-help-cta {
    display: flex; align-items: center; gap: 20px; flex-wrap: wrap; padding: 28px 32px; border: 1px solid var(--ah-line);
    border-radius: var(--ah-radius-lg); background: var(--ah-mesh);
}
.ah-help-cta > div { flex: 1; min-width: 240px; }
.ah-help-cta h2 { margin: 0 0 4px; font-size: 1.375rem; }
.ah-help-cta p { margin: 0; color: var(--ah-muted); }

/* layout de 3 colunas */
.ah-docs {
    display: grid; grid-template-columns: 290px minmax(0, 1fr) 240px; gap: 0;
    max-width: 1480px; margin: 0 auto; align-items: start;
}
.ah-docs__side {
    position: sticky; top: var(--ah-header-h); height: calc(100vh - var(--ah-header-h)); border-right: 1px solid var(--ah-line);
    background: var(--ah-bg);
}
.admin-bar .ah-docs__side { top: calc(var(--ah-header-h) + 32px); height: calc(100vh - var(--ah-header-h) - 32px); }
.ah-docs__side-inner { height: 100%; overflow-y: auto; padding: 24px 18px 48px 24px; scrollbar-width: thin; scrollbar-color: var(--ah-line-strong) transparent; }
.ah-docs__side-head { display: grid; gap: 12px; margin-bottom: 18px; }
.ah-docs__product { position: relative; }
.ah-docs__product summary, .ah-docs__product--single {
    display: flex; align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid var(--ah-line); border-radius: 12px;
    background: var(--ah-surface); color: var(--ah-ink); font-weight: 650; cursor: pointer; list-style: none; text-decoration: none;
}
.ah-docs__product summary::-webkit-details-marker { display: none; }
.ah-docs__product summary > .ah-icon { margin-left: auto; color: var(--ah-muted); transition: transform .2s; }
.ah-docs__product[open] summary > .ah-icon { transform: rotate(180deg); }
.ah-docs__product-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ah-docs__product ul { position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 5; margin: 0; padding: 6px; border: 1px solid var(--ah-line); border-radius: 12px; background: var(--ah-surface); box-shadow: var(--ah-shadow-lg); list-style: none; }
.ah-docs__product ul a { display: block; padding: 8px 10px; border-radius: 8px; color: var(--ah-text); text-decoration: none; }
.ah-docs__product ul a:hover, .ah-docs__product ul a[aria-current] { background: var(--ah-soft); color: var(--ah-primary); }
.ah-docs__search {
    display: flex; align-items: center; gap: 10px; width: 100%; height: 42px; padding: 0 10px 0 12px; border: 1px solid var(--ah-line);
    border-radius: 12px; background: var(--ah-soft); color: var(--ah-muted); font: 400 .9375rem var(--ah-font); cursor: pointer; text-align: left;
    transition: border-color .2s;
}
.ah-docs__search:hover { border-color: var(--ah-primary); }
.ah-docs__search span { flex: 1; }

.ah-docnav { font-size: .9375rem; }
.ah-docnav__group { margin-top: 18px; }
.ah-docnav__label { margin: 0 0 6px; padding: 0 10px; color: var(--ah-ink); font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ah-docnav__list, .ah-docnav__sub { margin: 0; padding: 0; list-style: none; }
.ah-docnav__item { position: relative; }
.ah-docnav__link {
    display: flex; align-items: center; gap: 10px; padding: 7px 10px; border-radius: 9px; color: var(--ah-text); line-height: 1.35;
    text-decoration: none; transition: background-color .15s, color .15s;
}
.ah-docnav__link .ah-icon { color: var(--ah-muted); transition: color .15s; }
.ah-docnav__link:hover { background: var(--ah-soft); color: var(--ah-ink); }
.ah-docnav__link.is-active { background: var(--ah-primary-50); color: var(--ah-primary); font-weight: 600; }
.ah-docnav__link.is-active .ah-icon { color: var(--ah-primary); }
.ah-docnav__dot { width: 18px; height: 18px; flex: none; display: grid; place-items: center; }
.ah-docnav__dot::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: var(--ah-line-strong); }
.ah-docnav__overview { font-weight: 500; }
.ah-docnav__item.has-children > .ah-docnav__link { padding-right: 36px; }
.ah-docnav__toggle {
    position: absolute; right: 4px; top: 4px; display: grid; place-items: center; width: 28px; height: 28px; padding: 0;
    border: 0; border-radius: 7px; background: transparent; color: var(--ah-muted); cursor: pointer;
}
.ah-docnav__toggle:hover { background: var(--ah-soft); color: var(--ah-ink); }
.ah-docnav__toggle .ah-icon { transition: transform .2s var(--ah-ease); }
.ah-docnav__item.is-open > .ah-docnav__toggle .ah-icon { transform: rotate(90deg); }
.ah-docnav__sub { display: none; margin: 2px 0 4px 19px; padding-left: 10px; border-left: 1px solid var(--ah-line); }
.ah-docnav__item.is-open > .ah-docnav__sub { display: block; }
.ah-docnav__sub .ah-docnav__link { padding-block: 6px; font-size: .9rem; }
.ah-docnav__item--d3 { margin-left: 14px; }

.ah-docs__main { min-width: 0; padding: 32px clamp(20px, 4vw, 56px) 80px; }
.ah-docs__menu-btn, .ah-docs__backdrop { display: none; }
.ah-doc { max-width: 820px; margin: 0 auto; }
.ah-doc__head { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 12px 24px; }
.ah-doc__title { flex: 1 1 420px; margin: 0; font-size: clamp(2rem, 3.6vw, 2.75rem); }
.ah-doc__actions { display: flex; gap: 8px; padding-top: 8px; }
.ah-doc__lead { margin: 14px 0 0; color: var(--ah-muted); font-size: 1.1875rem; line-height: 1.6; }
.ah-doc__content { margin-top: 32px; }
.ah-doc__content > :first-child { margin-top: 0; }
.ah-doc__content h2 { padding-top: 8px; }
.ah-doc__content :is(h2, h3) { position: relative; }
.ah-anchor { display: inline-grid; place-items: center; width: 26px; height: 26px; margin-left: 8px; vertical-align: middle; border-radius: 7px; color: var(--ah-muted); opacity: 0; text-decoration: none; transition: opacity .15s, background-color .15s; }
:is(h2, h3):hover > .ah-anchor, .ah-anchor:focus-visible { opacity: 1; }
.ah-anchor:hover { background: var(--ah-soft); color: var(--ah-primary); }
.ah-doc__content img { border: 1px solid var(--ah-line); }
.ah-doc__group { margin-top: 40px; }
.ah-doc__group-title { margin-bottom: 14px; font-size: 1.125rem; letter-spacing: -.01em; }
.ah-doc__footer { margin-top: 56px; padding-top: 28px; border-top: 1px solid var(--ah-line); }
.ah-feedback { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; padding: 18px 20px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius); background: var(--ah-surface-2); }
.ah-feedback__q { margin: 0; color: var(--ah-ink); font-weight: 600; }
.ah-feedback__btns { display: flex; gap: 8px; }
.ah-feedback__thanks { margin: 0; color: var(--ah-green); font-weight: 600; }
.ah-feedback.is-sent .ah-feedback__btns { display: none; }
.ah-doc__updated { display: flex; align-items: center; gap: 8px; margin: 18px 0 0; color: var(--ah-muted); font-size: .875rem; }
.ah-docpager { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 28px; }
.ah-docpager__link {
    display: grid; gap: 4px; padding: 18px 20px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius);
    text-decoration: none; transition: border-color .2s, box-shadow .2s, transform .2s var(--ah-ease);
}
.ah-docpager__link:hover { border-color: var(--ah-primary); box-shadow: var(--ah-shadow); transform: translateY(-2px); }
.ah-docpager__link--next { grid-column: 2; text-align: right; }
.ah-docpager__label { display: inline-flex; align-items: center; gap: 6px; color: var(--ah-muted); font-size: .8125rem; }
.ah-docpager__link--next .ah-docpager__label { justify-content: flex-end; }
.ah-docpager__title { color: var(--ah-ink); font-weight: 600; }

.ah-docs__toc { position: sticky; top: var(--ah-header-h); max-height: calc(100vh - var(--ah-header-h)); overflow-y: auto; padding: 40px 20px 40px 8px; }
.admin-bar .ah-docs__toc { top: calc(var(--ah-header-h) + 32px); }
.ah-docs__toc-title { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; color: var(--ah-ink); font-size: .8125rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.ah-toc { margin: 0; padding: 0; list-style: none; border-left: 1px solid var(--ah-line); }
.ah-toc__item a { display: block; margin-left: -1px; padding: 5px 0 5px 14px; border-left: 2px solid transparent; color: var(--ah-muted); font-size: .875rem; line-height: 1.4; text-decoration: none; transition: color .15s, border-color .15s; }
.ah-toc__item--h3 a { padding-left: 26px; font-size: .8125rem; }
.ah-toc__item a:hover { color: var(--ah-ink); }
.ah-toc__item a.is-active { border-left-color: var(--ah-primary); color: var(--ah-primary); font-weight: 600; }
.ah-docs__toc-extra { display: grid; gap: 8px; margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--ah-line); }
.ah-docs__toc-extra a { display: inline-flex; align-items: center; gap: 8px; color: var(--ah-muted); font-size: .8125rem; text-decoration: none; }
.ah-docs__toc-extra a:hover { color: var(--ah-primary); }
.ah-docs-page .ah-footer { margin-top: 0; }

/* ---------- 13. Busca (Ctrl+K) ---------- */
.ah-search { position: fixed; inset: 0; z-index: 200; display: flex; align-items: flex-start; justify-content: center; padding: 12vh 16px 16px; }
.ah-search[hidden] { display: none; }
.ah-search__backdrop { position: absolute; inset: 0; background: rgba(9, 11, 28, .55); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); animation: ah-fade .2s var(--ah-ease); }
.ah-search__dialog {
    position: relative; display: flex; flex-direction: column; width: min(680px, 100%); max-height: 76vh; overflow: hidden;
    border: 1px solid var(--ah-line); border-radius: 20px; background: var(--ah-surface); box-shadow: 0 40px 100px -20px rgba(0, 0, 0, .45);
    animation: ah-pop .25s var(--ah-ease);
}
.ah-search__form { display: flex; align-items: center; gap: 12px; padding: 0 16px 0 20px; border-bottom: 1px solid var(--ah-line); color: var(--ah-muted); }
.ah-search__form input[type="search"] { flex: 1; height: 62px; padding: 0; border: 0; background: transparent; box-shadow: none; font-size: 1.125rem; }
.ah-search__form input[type="search"]::-webkit-search-cancel-button { display: none; }
.ah-search__esc { cursor: pointer; }
.ah-search__results { flex: 1; overflow-y: auto; padding: 8px; }
.ah-search__group { margin: 10px 12px 6px; color: var(--ah-muted); font-size: .75rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.ah-search__item {
    display: flex; align-items: center; gap: 14px; padding: 12px 14px; border-radius: 12px; color: var(--ah-ink); text-decoration: none;
}
.ah-search__item[aria-selected="true"], .ah-search__item:hover { background: var(--ah-primary-50); color: var(--ah-ink); }
.ah-search__item[aria-selected="true"] .ah-search__ico { background: var(--ah-primary); color: #fff; }
.ah-search__ico { display: inline-grid; place-items: center; width: 36px; height: 36px; flex: none; border-radius: 10px; background: var(--ah-soft); color: var(--ah-primary); }
.ah-search__txt { display: grid; gap: 2px; min-width: 0; flex: 1; }
.ah-search__t { font-weight: 600; line-height: 1.3; }
.ah-search__e { overflow: hidden; color: var(--ah-muted); font-size: .8125rem; line-height: 1.45; text-overflow: ellipsis; white-space: nowrap; }
.ah-search__e mark, .ah-search__t mark { padding: 0 1px; border-radius: 3px; background: rgba(255, 176, 32, .3); color: inherit; }
.ah-search__path { color: var(--ah-muted); font-size: .75rem; }
.ah-search__empty { padding: 32px 16px; color: var(--ah-muted); text-align: center; }
.ah-search__all { display: flex; align-items: center; gap: 10px; margin: 6px 6px 4px; padding: 12px 14px; border: 1px dashed var(--ah-line-strong); border-radius: 12px; color: var(--ah-text); text-decoration: none; font-size: .9375rem; }
.ah-search__all:hover, .ah-search__all[aria-selected="true"] { border-color: var(--ah-primary); color: var(--ah-primary); }
.ah-search__foot { display: flex; gap: 18px; padding: 10px 18px; border-top: 1px solid var(--ah-line); background: var(--ah-surface-2); color: var(--ah-muted); font-size: .75rem; }
.ah-search__foot span { display: inline-flex; align-items: center; gap: 4px; }

/* ---------- 14. Rodapé ---------- */
.ah-footer { position: relative; overflow: hidden; margin-top: 0; padding-top: clamp(56px, 8vw, 88px); border-top: 1px solid var(--ah-line); background: var(--ah-soft); font-size: .9375rem; }
.ah-footer__glow { position: absolute; left: 50%; top: -260px; width: 900px; height: 420px; margin-left: -450px; border-radius: 50%; background: radial-gradient(closest-side, rgba(0, 102, 255, .14), rgba(0, 102, 255, 0)); pointer-events: none; }
.ah-footer__top { position: relative; display: grid; grid-template-columns: minmax(240px, 340px) 1fr; gap: clamp(32px, 6vw, 80px); padding-bottom: 48px; }
.ah-footer__about { max-width: 320px; margin: 18px 0 20px; color: var(--ah-muted); }
.ah-footer__contact { display: grid; gap: 8px; margin: 0 0 20px; padding: 0; list-style: none; }
.ah-footer__contact li { display: flex; align-items: center; gap: 10px; color: var(--ah-muted); }
.ah-footer__contact a { color: var(--ah-text); text-decoration: none; }
.ah-footer__contact a:hover { color: var(--ah-primary); }
.ah-social { display: flex; gap: 8px; }
.ah-social__link { display: inline-grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--ah-line); border-radius: 12px; background: var(--ah-surface); color: var(--ah-text); transition: color .2s, border-color .2s, transform .2s var(--ah-ease); }
.ah-social__link:hover { border-color: var(--ah-primary); color: var(--ah-primary); transform: translateY(-2px); }
.ah-footer__cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 32px; margin: 0; padding: 0; list-style: none; }
.ah-footer__cols > li > a { display: block; margin-bottom: 14px; color: var(--ah-ink); font-size: .8125rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; pointer-events: none; }
.ah-footer__cols .sub-menu { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.ah-footer__cols .sub-menu a { color: var(--ah-muted); text-decoration: none; transition: color .2s; }
.ah-footer__cols .sub-menu a:hover { color: var(--ah-primary); }
.ah-footer__bottom { position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; padding: 24px 0 32px; border-top: 1px solid var(--ah-line); color: var(--ah-muted); font-size: .875rem; }
.ah-footer__copy { margin: 0; }
.ah-footer__legal { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 0; padding: 0; list-style: none; }
.ah-footer__legal a { color: var(--ah-muted); text-decoration: none; }
.ah-footer__legal a:hover { color: var(--ah-primary); }
.ah-totop { display: inline-grid; place-items: center; width: 38px; height: 38px; margin-left: auto; border: 1px solid var(--ah-line); border-radius: 11px; background: var(--ah-surface); color: var(--ah-text); }
.ah-totop:hover { border-color: var(--ah-primary); color: var(--ah-primary); }

/* ---------- 15. Diversos ---------- */
.ah-404 { padding: clamp(72px, 12vw, 140px) 0; background: var(--ah-mesh); text-align: center; }
.ah-404__inner { max-width: 640px; }
.ah-404__code { margin: 0; font-size: clamp(6rem, 18vw, 10rem); font-weight: 800; letter-spacing: -.06em; line-height: 1; background: var(--ah-brand-grad); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }
.ah-404__lead { color: var(--ah-muted); font-size: 1.125rem; }
.ah-404 .ah-searchform { margin: 28px auto; max-width: 520px; }
.ah-404__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.alignleft { float: left; margin: .3em 1.5em 1em 0; }
.alignright { float: right; margin: .3em 0 1em 1.5em; }
.aligncenter { margin-inline: auto; }
.sticky .ah-card__kicker::after { content: " ★"; }
.bypostauthor { display: block; }
.wp-caption { max-width: 100%; }
.gallery-caption { color: var(--ah-muted); }

/* ---------- 16. Animações ---------- */
@keyframes ah-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes ah-pop { from { opacity: 0; transform: translateY(10px) scale(.98); } to { opacity: 1; transform: none; } }
@keyframes ah-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
/* Revelação discreta: só o que está abaixo da dobra, deslocamento curto e rápido. */
.ah-js .ah-reveal { opacity: 0; transform: translateY(10px); transition: opacity .45s var(--ah-ease), transform .45s var(--ah-ease); }
.ah-js .ah-reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    .ah-js .ah-reveal { opacity: 1; transform: none; }
}

/* ---------- WhatsApp flutuante ---------- */
.ah-wa-float { position: fixed; right: 18px; bottom: 18px; z-index: 90; display: inline-flex; align-items: center; gap: 10px; padding: 10px 16px 10px 12px; border-radius: 999px; background: #1FAF55; color: #fff; text-decoration: none; box-shadow: 0 10px 28px rgba(16, 24, 40, .22); transition: transform .2s var(--ah-ease), box-shadow .2s var(--ah-ease); }
.ah-wa-float:hover, .ah-wa-float:focus-visible { color: #fff; transform: translateY(-2px); box-shadow: 0 14px 34px rgba(16, 24, 40, .28); }
.ah-wa-float svg { flex: none; }
.ah-wa-float__text { display: grid; line-height: 1.15; }
.ah-wa-float__text strong { font-size: .95rem; }
.ah-wa-float__text small { font-size: .74rem; opacity: .92; }
@media (max-width: 640px) {
    .ah-wa-float { right: 14px; bottom: 14px; padding: 13px; }
    .ah-wa-float__text { display: none; }
}
@media print { .ah-wa-float { display: none; } }

/* Herói no celular (1.5.10): topo mais curto para os dois botões aparecerem antes da dobra. */
@media (max-width: 640px) {
    .ah-hero { padding-top: 20px !important; padding-bottom: 36px !important; }
    .ah-hero .ah-pill { font-size: .78rem !important; padding: 4px 12px 4px 4px; gap: 8px; line-height: 1.25; }
    .ah-hero__title { font-size: clamp(2rem, 9vw, 2.4rem) !important; margin-bottom: 12px; }
    .ah-hero__lead { font-size: 1rem; line-height: 1.5; margin-bottom: 0; }
    .ah-hero .wp-block-buttons { margin-top: 20px; gap: 10px; }
    .ah-hero .wp-block-buttons .wp-block-button { flex: 1 1 100%; }
    .ah-hero .wp-block-buttons .wp-block-button__link { width: 100%; justify-content: center; text-align: center; }
    .ah-trust { margin-top: 18px; }
}

/* ---------- Barra fixa do celular (1.5.10) ---------- */
.ah-mbar { display: none; }
@media (max-width: 767px) {
    .ah-mbar { position: fixed; inset: auto 0 0 0; z-index: 95; display: flex; gap: 6px; padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); background: var(--ah-bg, #fff); border-top: 1px solid var(--ah-line); box-shadow: 0 -6px 20px rgba(16, 24, 40, .08); }
    .ah-mbar__item { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 6px 4px; border-radius: 10px; color: var(--ah-text, #101828); font-size: .72rem; font-weight: 600; line-height: 1.1; text-decoration: none; }
    .ah-mbar__item--cta { background: var(--ah-accent); color: #0A1535; }
    .ah-mbar__item--wa { color: #1FAF55; }
    .ah-wa-float { display: none; }
    body { padding-bottom: 68px; }
}
@media print { .ah-mbar { display: none; } }

/* ---------- 17. Responsivo ---------- */
/* Entre o menu móvel e 1200px o menu fica um pouco mais justo. */
@media (min-width: 1081px) and (max-width: 1199px) {
    .ah-header__inner { gap: 16px; }
    .ah-nav__link { padding: 0 10px; }
}
/* Em telas médias a área do cliente vira só ícone (com dica); em telas largas mostra o texto e dispensa a dica. */
@media (min-width: 768px) { .ah-topbar__login[data-tip]::after { display: none; } }
@media (max-width: 767px) { .ah-topbar__label { display: none; } .ah-topbar__login { padding: 0 8px; } }
@media (max-width: 1279px) {
    .ah-docs { grid-template-columns: 270px minmax(0, 1fr); }
    .ah-docs__toc { display: none; }
}
@media (max-width: 1080px) {
    :root { --ah-header-h: 64px; }
    .ah-burger { display: inline-flex; }
    .ah-header__cta { display: none; }
    .ah-nav {
        position: fixed; top: 100%; left: 0; right: 0; z-index: 45; overflow-y: auto; overscroll-behavior: contain; background: var(--ah-bg);
        height: calc(100vh - var(--ah-nav-top, var(--ah-header-h))); height: calc(100dvh - var(--ah-nav-top, var(--ah-header-h)));
        opacity: 0; visibility: hidden; transform: translateY(-8px); transition: opacity .25s var(--ah-ease), transform .25s var(--ah-ease), visibility 0s linear .25s;
    }
    .ah-nav-open .ah-nav { opacity: 1; visibility: visible; transform: none; transition: opacity .25s var(--ah-ease), transform .25s var(--ah-ease), visibility 0s; }
    .ah-nav__panel { flex-direction: column; align-items: stretch; padding: 12px var(--ah-gutter) 32px; }
    .ah-nav__list { flex-direction: column; align-items: stretch; gap: 0; }
    .ah-nav__item--top { flex-wrap: wrap; border-bottom: 1px solid var(--ah-line); }
    .ah-nav__link { flex: 1; justify-content: space-between; height: 56px; padding: 0 4px; font-size: 1.0625rem; border-radius: 0; }
    .ah-nav__link:hover, .ah-nav__item--top.is-open > .ah-nav__link { background: transparent; }
    .ah-nav__toggle { width: 44px; height: 44px; margin: 0; }
    .ah-mega, .ah-dropdown {
        position: static; display: none; width: 100%; margin: 0; padding: 0 0 14px; opacity: 1; visibility: visible; transform: none; transition: none;
    }
    .ah-mega::before, .ah-dropdown::before { display: none; }
    .ah-nav__item--top.is-open > .ah-mega, .ah-nav__item--top.is-open > .ah-dropdown { display: block; }
    .ah-mega__inner, .ah-dropdown__list { padding: 0; border: 0; box-shadow: none; background: transparent; }
    .ah-mega__cols { grid-template-columns: 1fr; gap: 10px; }
    .ah-mega__col { padding: 0; }
    .ah-mega__col.cols-2 { grid-column: auto; }
    .ah-mega__col.cols-2 .ah-mega__links { grid-template-columns: 1fr; }
    .ah-mega__heading { margin: 8px 0 4px; }
    .ah-mega__link { padding: 8px 4px; }
    .ah-nav__mobile-actions { display: grid; gap: 10px; margin-top: 24px; }
    .ah-nav__mobile-actions .ah-btn { width: 100%; }

    .ah-docs { display: block; }
    .ah-docs__side {
        position: fixed; top: 0; left: 0; bottom: 0; z-index: 120; width: min(320px, 86vw); height: auto; border-right: 1px solid var(--ah-line);
        transform: translateX(-102%); transition: transform .3s var(--ah-ease); box-shadow: var(--ah-shadow-lg);
    }
    .admin-bar .ah-docs__side { top: 0; height: auto; }
    .ah-docside-open .ah-docs__side { transform: none; }
    .ah-docs__backdrop { position: fixed; inset: 0; z-index: 110; background: rgba(9, 11, 28, .5); }
    .ah-docside-open .ah-docs__backdrop { display: block; }
    .ah-docs__menu-btn {
        display: flex; align-items: center; gap: 10px; width: 100%; margin: 0 0 20px; padding: 12px 14px; border: 1px solid var(--ah-line);
        border-radius: 12px; background: var(--ah-surface); color: var(--ah-ink); font: 600 .9375rem var(--ah-font); cursor: pointer;
    }
    .ah-docs__menu-btn span { flex: 1; text-align: left; }
    .ah-docs__main { padding-top: 20px; }
    .ah-post__layout.has-sidebar { grid-template-columns: 1fr; }
}
@media (max-width: 782px) {
    .admin-bar .ah-header { top: 46px; }
}
@media (max-width: 600px) {
    .admin-bar .ah-header { top: 0; }
    .ah-footer__top { grid-template-columns: 1fr; }
    .ah-docpager, .ah-postnav .nav-links { grid-template-columns: 1fr; }
    .ah-docpager__link--next { grid-column: 1; }
    .ah-domain { flex-wrap: wrap; padding: 8px; }
    .ah-domain__icon { display: none; }
    .ah-domain .ah-domain__input { padding-inline: 10px; }
    .ah-domain .ah-btn { width: 100%; }
    .ah-search { padding-top: 16px; }
    .ah-search__foot { display: none; }
    .ah-doc__actions .ah-chip span { display: none; }
    /* No celular os ícones saem da barra de cima (ficam no menu); a lupa fica sempre na linha principal. */
    .ah-topbar__tools { display: none; }
    .ah-topbar:not(.has-announce) { display: none; }
    .ah-announce { justify-content: center; text-align: center; }
    .ah-header__search { display: inline-flex; min-width: 38px; padding: 0 8px; }
    .ah-brand__name { font-size: 1.125rem; }
}

/* ------------------------------------------------------------------ */
/* Páginas de serviço (hospedagem, e-mail, criação de sites)           */
/* ------------------------------------------------------------------ */
.ah-target { display: block; height: 0; scroll-margin-top: 96px; }
.ah-hero--center { text-align: center; }
.ah-hero--center .ah-hero__lead, .ah-center { margin-left: auto !important; margin-right: auto !important; }
.ah-hero--center .wp-block-buttons { justify-content: center; }
.ah-hero--center .ah-domain-search { margin-top: 28px; text-align: left; }
.ah-feature__price { margin-top: 14px !important; padding-top: 14px; border-top: 1px dashed var(--ah-line); color: var(--ah-muted); font-size: .875rem !important; }
.ah-feature__price strong { color: var(--ah-ink); font-size: 1.0625rem; }
.ah-feature__price a { font-weight: 600; }
.ah-feature--link { position: relative; }
.ah-feature--link h3 a { color: inherit; text-decoration: none; }
.ah-feature--link h3 a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.ah-feature--link:hover h3 a { color: var(--ah-primary); }
.ah-services .ah-feature { display: flex; flex-direction: column; }
.ah-services .ah-feature__price { margin-top: auto !important; }
.ah-services .ah-feature > p:not(.ah-ic):not(.ah-feature__price) { margin-bottom: 14px; }
.ah-plan__save { margin: 6px 0 0 !important; color: var(--ah-green); font-size: .875rem; font-weight: 600; }
.ah-offers { gap: 20px !important; }
.ah-offer { position: relative; display: flex !important; flex-direction: column; box-shadow: var(--ah-shadow-lg) !important; }
.ah-offer__kicker { margin: 0 !important; color: var(--ah-primary); font-size: .8125rem !important; font-weight: 650; letter-spacing: .04em; text-transform: uppercase; }
.ah-offer .ah-plan__price { margin-top: 10px !important; }
.ah-offer .is-style-checks { margin: 18px 0 22px; font-size: .9375rem; }
.ah-offer .wp-block-buttons { margin-top: auto !important; }
.ah-offer .wp-block-button, .ah-offer .wp-block-button__link { width: 100%; }
.ah-offer__foot { margin: 12px 0 0 !important; color: var(--ah-muted); font-size: .8125rem; text-align: center; }
.ah-hero .ah-offer { max-width: 420px; margin-left: auto; }
.ah-clients { color: var(--ah-muted); font-size: clamp(1rem, 1.6vw, 1.2rem); font-weight: 600; line-height: 2; word-spacing: .15em; }
/* Tabelas: cartão arredondado com sombra, cabeçalho na cor da marca, coluna em destaque, selo verde no ✓ e botão "Contratar". */
.ah-table { margin: 0 !important; overflow-x: auto; border: 1px solid var(--ah-line); border-radius: 20px; background: var(--ah-surface); box-shadow: var(--ah-shadow-lg); -webkit-overflow-scrolling: touch; }
.ah-table table { width: 100%; min-width: 620px; border: 0 !important; border-collapse: separate; border-spacing: 0; font-size: .9375rem; }
.ah-table th, .ah-table td { padding: 15px 18px; border: 0 !important; border-bottom: 1px solid var(--ah-line) !important; background: transparent; text-align: center; vertical-align: middle; }
.ah-table th:first-child, .ah-table td:first-child { text-align: left; }
.ah-table td:first-child { color: var(--ah-ink); font-weight: 600; }
.ah-table thead th { padding-block: 22px; background: var(--ah-primary-50) !important; color: var(--ah-primary-600); font-size: 1.0625rem; font-weight: 700; letter-spacing: -.01em; border-bottom: 2px solid var(--ah-primary-100) !important; }
.ah-table thead th:first-child { color: var(--ah-muted); font-size: .8125rem; font-weight: 650; letter-spacing: .04em; text-transform: uppercase; }
.ah-table tbody tr:last-child td { border-bottom: 0 !important; }
.ah-table tbody tr { background: transparent !important; transition: background-color .15s; }
.ah-table tbody tr:nth-child(odd) td:not(.is-featured) { background: color-mix(in srgb, var(--ah-primary) 2.5%, transparent); }
.ah-table tbody tr:hover td { background: color-mix(in srgb, var(--ah-primary) 5%, transparent); }
.ah-table td.is-featured { background: color-mix(in srgb, var(--ah-primary) 6%, transparent); }
.ah-table thead th.is-featured { position: relative; background: var(--ah-primary) !important; color: #fff; border-bottom-color: var(--ah-primary) !important; }
.ah-table__badge { display: block; margin: 0 auto 6px; width: max-content; padding: 2px 10px; border-radius: 999px; background: var(--ah-accent); color: #0A1535; font-size: .6875rem; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; }
.ah-table--plans tbody tr:nth-child(-n+2) td:not(:first-child) { color: var(--ah-ink); font-size: 1.0625rem; font-weight: 700; }
.ah-yes { display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--ah-green-50); color: var(--ah-green); font-size: .875rem; font-weight: 800; line-height: 1; }
.ah-table__btn { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 0 20px; border-radius: 999px; background: var(--ah-accent); color: #0A1535 !important; font-weight: 650; text-decoration: none !important; box-shadow: 0 6px 16px -8px rgba(255, 107, 44, .8); transition: transform .15s, background-color .15s; }
.ah-table__btn:hover { background: var(--ah-accent-600); transform: translateY(-1px); }
.ah-table td:has(.ah-table__btn) { padding-block: 18px; }
/* no celular a tabela rola para o lado e a primeira coluna fica fixa */
@media (max-width: 767px) {
    .ah-table th:first-child, .ah-table td:first-child { position: sticky; left: 0; z-index: 1; min-width: 150px; background: var(--ah-surface) !important; box-shadow: 1px 0 0 var(--ah-line); }
    .ah-table thead th:first-child { background: var(--ah-primary-50) !important; }
    .ah-table th, .ah-table td { padding: 13px 14px; }
}
@media (max-width: 781px) {
    .ah-hero .ah-offer { margin: 24px auto 0; }
}
.ah-services { grid-template-columns: repeat(auto-fit, minmax(min(15.5rem, 100%), 1fr)) !important; }
.ah-offers { grid-template-columns: repeat(auto-fit, minmax(min(15rem, 100%), 1fr)) !important; }

/* ------------------------------------------------------------------ */
/* Seletor de ciclo de pagamento (mensal / anual / vitalício)          */
/* ------------------------------------------------------------------ */
.ah-cycle { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px; width: max-content; max-width: 100%; margin: 0 auto 28px; padding: 5px; border: 1px solid var(--ah-line); border-radius: 999px; background: var(--ah-surface); box-shadow: 0 1px 2px rgba(10, 21, 53, .06); }
.ah-cycle button { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 18px; border: 0; border-radius: 999px; background: transparent; color: var(--ah-muted); font: inherit; font-size: .9375rem; font-weight: 600; cursor: pointer; transition: background .2s, color .2s; }
.ah-cycle button:hover { color: var(--ah-ink); }
.ah-cycle button:focus-visible { outline: 2px solid var(--ah-primary); outline-offset: 2px; }
.ah-cycle button[aria-pressed="true"] { background: var(--ah-primary); color: #fff; }
.ah-cycle__tag { padding: 2px 8px; border-radius: 999px; background: var(--ah-accent-50); color: var(--ah-accent-600); font-size: .75rem; font-weight: 700; }
.ah-cycle button[aria-pressed="true"] .ah-cycle__tag { background: rgba(255, 255, 255, .2); color: #fff; }
.ah-cycle--fixed { padding: 8px 18px; color: var(--ah-muted); font-size: .875rem; font-weight: 600; }
.ah-cycles .ah-price { display: none; }
.ah-cycles.is-monthly .ah-price[data-cycle="monthly"],
.ah-cycles.is-annually .ah-price[data-cycle="annually"],
.ah-cycles.is-onetime .ah-price[data-cycle="onetime"] { display: block; }
.ah-price small { margin-left: 4px; color: var(--ah-muted); font-size: .9375rem; font-weight: 500; letter-spacing: 0; }
.ah-price b { font-weight: inherit; }
.ah-price__note { display: block; margin-top: 8px; color: var(--ah-green); font-size: .875rem; font-style: normal; font-weight: 600; letter-spacing: 0; line-height: 1.4; }
.ah-price__note.is-muted { color: var(--ah-muted); font-weight: 500; }
.ah-cycles.is-monthly .ah-feature__price .ah-price[data-cycle="monthly"],
.ah-cycles.is-annually .ah-feature__price .ah-price[data-cycle="annually"],
.ah-cycles.is-onetime .ah-feature__price .ah-price[data-cycle="onetime"] { display: inline; }
.ah-feature__price .ah-price__note { display: inline; margin: 0 0 0 6px; font-size: .8125rem; }
.ah-offer .ah-cycle { width: 100%; margin: 14px 0 0; }
.ah-offer .ah-cycle button { flex: 1 1 auto; justify-content: center; padding: 0 10px; font-size: .875rem; }
/* "Anual" e a etiqueta ("1 mês grátis") nunca quebram no meio; no celular o botão cresce em vez de dividir a palavra. */
.ah-cycle button, .ah-cycle__tag { white-space: nowrap; }
.ah-table .ah-price-row td { color: var(--ah-muted); font-size: .875rem; }
@media (max-width: 480px) {
    .ah-cycle button { padding: 0 12px; font-size: .875rem; }
}

/* ------------------------------------------------------------------ */
/* 1.3: cartão de plano redesenhado, chips, VPS e busca de domínio     */
/* ------------------------------------------------------------------ */
.wp-block-group.ah-plan { padding-top: clamp(26px, 3.2vw, 34px); border-color: var(--ah-line); background-image: linear-gradient(90deg, var(--ah-primary-100), var(--ah-primary-50)); background-size: 100% 4px; background-repeat: no-repeat; background-position: top; transition: transform .3s var(--ah-ease), box-shadow .3s var(--ah-ease), border-color .3s; }
.wp-block-group.ah-plan:hover { transform: translateY(-4px); border-color: var(--ah-primary-100); box-shadow: var(--ah-shadow-lg); }
.wp-block-group.ah-plan.is-featured { background-image: var(--ah-accent-grad); background-size: 100% 5px; border-color: var(--ah-accent) !important; }
.ah-plan.is-featured:not([data-badge])::before { content: none; }
.ah-plan.is-featured .ah-plan__badge { background: var(--ah-accent-grad); box-shadow: 0 8px 18px -8px rgba(255, 107, 44, .7); }
.ah-plan__kicker { margin: 0 0 4px !important; color: var(--ah-primary); font-size: .75rem !important; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ah-plan.is-featured .ah-plan__kicker { color: var(--ah-accent-600); }
.ah-plan .ah-plan__name { margin: 0 0 6px; font-size: 1.375rem; letter-spacing: -.02em; }
.ah-plan__desc { min-height: 0; margin: 0 0 4px !important; }
.ah-specs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin: 16px 0 4px; }
.ah-specs span { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-width: 0; padding: 10px 4px; border: 1px solid var(--ah-line); border-radius: 12px; background: var(--ah-surface-2); text-align: center; }
.ah-specs strong { color: var(--ah-ink); font-size: 1rem; font-weight: 700; letter-spacing: -.03em; line-height: 1.1; white-space: nowrap; }
.ah-plan__price, .ah-plan__price .ah-price { white-space: nowrap; }
/* A nota do anual ("equivale a ... · economize ...") quebra linha dentro do card. */
.ah-plan__price .ah-price__note { max-width: 100%; white-space: normal; overflow-wrap: anywhere; text-wrap: balance; }
.ah-specs small { overflow: hidden; max-width: 100%; color: var(--ah-muted); font-size: .7rem; font-weight: 600; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.ah-plan.is-featured .ah-specs span { border-color: rgba(255, 107, 44, .25); background: var(--ah-accent-50); }
.ah-plan__price .ah-cur { margin-right: 4px; color: var(--ah-muted); font-size: 1.125rem; font-weight: 600; letter-spacing: 0; vertical-align: .9em; }
.ah-plan__price .ah-cents { font-size: .5em; letter-spacing: -.01em; vertical-align: .75em; }
.ah-plan .wp-block-buttons { margin-top: 18px !important; margin-bottom: 0; }
.ah-plan .is-style-checks { margin: 20px 0 0; padding-top: 18px; border-top: 1px dashed var(--ah-line); font-size: .9rem; }
.ah-plan .is-style-checks li { margin: 0; padding-top: 5px; padding-bottom: 5px; }
.ah-plan .is-style-checks li + li { border-top: 1px solid color-mix(in srgb, var(--ah-line) 60%, transparent); }
.ah-pay { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin-top: auto; padding-top: 18px; }
.ah-pay span { padding: 3px 9px; border-radius: 999px; background: var(--ah-soft); color: var(--ah-muted); font-size: .7rem; font-weight: 650; letter-spacing: .02em; }
.ah-pricing--vps { grid-template-columns: repeat(auto-fit, minmax(min(14.5rem, 100%), 1fr)) !important; }
.ah-pricing--vps .ah-plan__desc { color: var(--ah-muted); font-size: .875rem; }

/* faixa de mini-benefícios */
.ah-sec--xs { padding-top: 28px !important; padding-bottom: 28px !important; border-block: 1px solid var(--ah-line); }
.ah-minis { display: grid; grid-template-columns: 1fr; gap: 18px 28px; }
@media (min-width: 520px) { .ah-minis { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .ah-minis { grid-template-columns: repeat(4, 1fr); } }
.ah-mini { display: flex; align-items: center; gap: 14px; }
.ah-mini__ic { display: inline-grid; place-items: center; flex: none; width: 46px; height: 46px; border-radius: 14px; background: var(--ah-primary-50); color: var(--ah-primary); }
.ah-mini:nth-child(even) .ah-mini__ic { background: var(--ah-accent-50); color: var(--ah-accent); }
.ah-mini strong { display: block; font-size: 1rem; }
.ah-mini small { display: block; color: var(--ah-muted); font-size: .8125rem; line-height: 1.4; }

/* mais planos (details) */
.ah-more { margin-top: 28px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius-lg); background: var(--ah-surface); }
.ah-more > summary { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 18px 22px; color: var(--ah-ink); font-weight: 650; cursor: pointer; list-style: none; }
.ah-more > summary::-webkit-details-marker { display: none; }
.ah-more > summary::after { content: ""; width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-3px); transition: transform .25s var(--ah-ease); }
.ah-more[open] > summary::after { transform: rotate(-135deg) translateY(-1px); }
.ah-more > summary:hover { color: var(--ah-primary); }
.ah-more[open] { padding: 0 clamp(14px, 2.4vw, 24px) clamp(18px, 3vw, 28px); background: var(--ah-soft); }

/* mock do painel do VPS */
.ah-vpsmock { overflow: hidden; max-width: 460px; margin-left: auto; border: 1px solid var(--ah-line); border-radius: 18px; background: var(--ah-surface); box-shadow: var(--ah-shadow-lg); font-size: .8125rem; }
.ah-vpsmock__bar { display: flex; align-items: center; gap: 6px; padding: 12px 16px; border-bottom: 1px solid var(--ah-line); background: var(--ah-surface-2); color: var(--ah-muted); font-weight: 600; }
.ah-vpsmock__bar i { width: 10px; height: 10px; border-radius: 50%; background: var(--ah-line-strong); }
.ah-vpsmock__bar i:first-child { background: #FF5F57; }
.ah-vpsmock__bar i:nth-child(2) { background: #FEBC2E; }
.ah-vpsmock__bar i:nth-child(3) { background: #28C840; }
.ah-vpsmock__bar span { margin-left: 8px; }
.ah-vpsmock__bar b { margin-left: auto; color: var(--ah-green); font-weight: 650; }
.ah-vpsmock__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 16px; }
.ah-vpsmock__grid > div { padding: 12px; border: 1px solid var(--ah-line); border-radius: 12px; }
.ah-vpsmock__grid small { display: block; color: var(--ah-muted); font-weight: 600; }
.ah-vpsmock__grid strong { display: block; margin: 2px 0 8px; font-size: 1.125rem; }
.ah-vpsmock__grid em { display: block; height: 6px; overflow: hidden; border-radius: 99px; background: var(--ah-soft); }
.ah-vpsmock__grid em::after { content: ""; display: block; width: calc(var(--v, .5) * 100%); height: 100%; border-radius: inherit; background: var(--ah-brand-grad); }
.ah-vpsmock__grid > div:nth-child(even) em::after { background: var(--ah-accent-grad); }
.ah-vpsmock__term { margin: 0 16px 16px; padding: 14px 16px; border-radius: 12px; background: var(--ah-code-bg); color: var(--ah-code-text); font: 500 .78rem/1.6 var(--ah-mono); white-space: pre; overflow-x: auto; }
.ah-vpsmock__term span { color: #7FE7A8; }
.ah-caret { display: inline-block; width: 8px; height: 1.05em; vertical-align: text-bottom; background: var(--ah-code-text); animation: ah-blink 1s steps(1) infinite; }
@keyframes ah-blink { 50% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
    .ah-caret { animation: none; }
    .wp-block-group.ah-plan:hover { transform: none; }
}
@media (max-width: 781px) {
    .ah-vpsmock { margin: 28px auto 0; }
}

/* busca de domínio: resultados no próprio site */
.ah-domain-sec .ah-domain-search { max-width: 820px; margin-inline: auto; }
.ah-domres { max-width: 720px; margin: 22px auto 0; text-align: left; }
.ah-domres[hidden] { display: none; }
.ah-domres__status { margin: 0 0 12px; color: var(--ah-muted); font-size: .9rem; text-align: center; }
.ah-domres__list { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.ah-domres__item { display: flex; align-items: center; gap: 12px; padding: 12px 12px 12px 18px; border: 1px solid var(--ah-line); border-radius: 14px; background: var(--ah-surface); box-shadow: var(--ah-shadow-sm); }
.ah-domres__item.is-first { border-color: var(--ah-primary); box-shadow: var(--ah-shadow), var(--ah-ring); }
.ah-domres__name { flex: 1; min-width: 0; overflow-wrap: anywhere; color: var(--ah-ink); font-weight: 650; }
.ah-domres__tag { flex: none; padding: 3px 10px; border-radius: 999px; font-size: .75rem; font-weight: 700; }
.ah-domres__item.is-free .ah-domres__tag { background: var(--ah-green-50); color: var(--ah-green); }
.ah-domres__item.is-taken .ah-domres__tag { background: var(--ah-red-50); color: var(--ah-red); }
.ah-domres__item.is-unknown .ah-domres__tag, .ah-domres__item.is-loading .ah-domres__tag { background: var(--ah-soft); color: var(--ah-muted); }
.ah-domres__item.is-taken .ah-domres__name { color: var(--ah-muted); text-decoration: line-through; text-decoration-thickness: 1px; }
.ah-domres__price { flex: none; color: var(--ah-ink); font-size: .9375rem; font-weight: 650; white-space: nowrap; }
.ah-domres__price small { color: var(--ah-muted); font-weight: 500; }
.ah-domres__go { flex: none; display: inline-flex; align-items: center; min-height: 38px; padding: 0 16px; border-radius: 10px; background: var(--ah-primary); color: #fff !important; font-size: .875rem; font-weight: 650; text-decoration: none; white-space: nowrap; }
.ah-domres__go:hover { background: var(--ah-primary-600); }
.ah-domres__go.is-ghost { border: 1px solid var(--ah-line-strong); background: transparent; color: var(--ah-ink) !important; }
.ah-domres__item.is-loading .ah-domres__tag::after { content: ""; display: inline-block; width: 10px; height: 10px; margin-left: 6px; vertical-align: -1px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: ah-spin .7s linear infinite; }
@keyframes ah-spin { to { transform: rotate(360deg); } }
.ah-domres__foot { margin: 12px 0 0; color: var(--ah-muted); font-size: .8125rem; text-align: center; }
@media (max-width: 600px) {
    .ah-domres__item { flex-wrap: wrap; padding: 12px 14px; }
    .ah-domres__name { flex-basis: 100%; }
    .ah-domres__go { margin-left: auto; }
    .ah-specs strong { font-size: 1rem; }
}

/* Aviso de rascunho nos textos legais */
.ah-legal-draft { padding: 12px 16px; border-left: 4px solid #E0A100; background: rgba(224,161,0,.1); border-radius: 6px; }

/* ================================================================== */
/* 1.5: home redesenhada                                               */
/* ================================================================== */

/* Preços centralizados em todos os cartões */
.ah-plan__price, .ah-plan__save, .ah-feature__price, .ah-offer .ah-plan__price { text-align: center; }
.ah-plan__price .ah-price__note { display: block; margin: 8px auto 0; text-align: center; }
.ah-feature__price .ah-price__note { display: block; margin: 4px 0 0; }

/* Chips de números: valores longos ("Ilimitados") em fonte menor para caber */
.ah-specs strong.is-long { font-size: .8125rem; letter-spacing: -.01em; }

/* Grades sem cartões órfãos: o número de colunas segue a quantidade de cartões */
@media (min-width: 1081px) {
    .ah-features:has(> :nth-child(4):last-child), .ah-features:has(> :nth-child(8):last-child) { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
    .ah-features:has(> :nth-child(3):last-child), .ah-features:has(> :nth-child(6):last-child), .ah-features:has(> :nth-child(9):last-child),
    .ah-pricing:has(> :nth-child(3):last-child), .ah-pricing:has(> :nth-child(6):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
    .ah-pricing:has(> :nth-child(4):last-child) { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
@media (min-width: 782px) and (max-width: 1080px) {
    .ah-features:has(> :nth-child(3):last-child), .ah-features:has(> :nth-child(9):last-child),
    .ah-pricing:has(> :nth-child(3):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (min-width: 641px) and (max-width: 1080px) {
    .ah-features:has(> :nth-child(2):last-child), .ah-features:has(> :nth-child(4):last-child), .ah-features:has(> :nth-child(6):last-child), .ah-features:has(> :nth-child(8):last-child),
    .ah-pricing:has(> :nth-child(2):last-child), .ah-pricing:has(> :nth-child(4):last-child), .ah-pricing:has(> :nth-child(6):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (min-width: 641px) and (max-width: 781px) {
    .ah-features:has(> :nth-child(3):last-child), .ah-pricing:has(> :nth-child(3):last-child) { grid-template-columns: minmax(0, 1fr) !important; }
}
@media (max-width: 640px) {
    .ah-features, .ah-pricing { grid-template-columns: minmax(0, 1fr) !important; }
}

/* ---------- Banner da home: janela do site + cartões flutuantes ---------- */
.ah-hart { position: relative; max-width: 560px; margin: 0 0 0 auto; padding: 34px 26px 44px 34px; }
.ah-hart__glow { position: absolute; inset: 8% 4% 10% 10%; border-radius: 40px; background: var(--ah-brand-grad); opacity: .16; filter: blur(48px); }
.ah-hart__win { position: relative; overflow: hidden; border: 1px solid var(--ah-line); border-radius: 18px; background: var(--ah-surface); box-shadow: var(--ah-shadow-lg); }
.ah-hart__bar { display: flex; align-items: center; gap: 6px; padding: 11px 14px; border-bottom: 1px solid var(--ah-line); background: var(--ah-surface-2); }
.ah-hart__bar i { width: 10px; height: 10px; border-radius: 50%; background: var(--ah-line-strong); }
.ah-hart__bar i:nth-child(1) { background: #FF5F57; }
.ah-hart__bar i:nth-child(2) { background: #FEBC2E; }
.ah-hart__bar i:nth-child(3) { background: #28C840; }
.ah-hart__url { display: inline-flex; align-items: center; gap: 6px; flex: 1; max-width: 260px; margin-left: 10px; padding: 5px 12px; border: 1px solid var(--ah-line); border-radius: 999px; background: var(--ah-surface); color: var(--ah-muted); font-size: .75rem; font-weight: 600; }
.ah-hart__url svg { color: var(--ah-green); }
.ah-hart__page { padding: 16px; }
.ah-hart__nav { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.ah-hart__nav b { width: 30px; height: 30px; border-radius: 9px; background: var(--ah-accent-grad); }
.ah-hart__nav span { width: 42px; height: 7px; border-radius: 9px; background: var(--ah-line); }
.ah-hart__nav em { margin-left: auto; padding: 5px 12px; border-radius: 999px; background: var(--ah-primary-50); color: var(--ah-primary); font-size: .6875rem; font-style: normal; font-weight: 700; }
.ah-hart__lead { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 20px; border-radius: 14px; background: var(--ah-brand-grad); color: #fff; }
.ah-hart__lead small { font-size: .6875rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; opacity: .85; }
.ah-hart__lead strong { max-width: 15em; font-size: 1.25rem; line-height: 1.2; letter-spacing: -.02em; }
.ah-hart__line { width: 82%; height: 7px; border-radius: 9px; background: rgba(255, 255, 255, .35); }
.ah-hart__line.is-short { width: 58%; }
.ah-hart__cta { margin-top: 6px; padding: 7px 14px; border-radius: 10px; background: #fff; color: var(--ah-primary); font-size: .75rem; font-weight: 700; }
.ah-hart__tiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 12px; }
.ah-hart__tiles span { display: flex; flex-direction: column; gap: 10px; padding: 12px; border: 1px solid var(--ah-line); border-radius: 12px; background: var(--ah-surface-2); color: var(--ah-primary); }
.ah-hart__tiles span:nth-child(2) { color: var(--ah-accent); }
.ah-hart__tiles i { width: 75%; height: 6px; border-radius: 9px; background: var(--ah-line); }
.ah-hart__chip { position: absolute; z-index: 2; display: flex; align-items: center; gap: 10px; padding: 10px 14px 10px 10px; border: 1px solid var(--ah-line); border-radius: 14px; background: var(--ah-surface); box-shadow: var(--ah-shadow); animation: ah-float 6s var(--ah-ease) infinite; }
.ah-hart__chip b { display: block; color: var(--ah-ink); font-size: .8125rem; line-height: 1.2; white-space: nowrap; }
.ah-hart__chip small { display: flex; align-items: center; gap: 6px; color: var(--ah-muted); font-size: .6875rem; line-height: 1.3; white-space: nowrap; }
.ah-hart__chipic { display: inline-grid; place-items: center; flex: none; width: 34px; height: 34px; border-radius: 10px; background: var(--ah-primary-50); color: var(--ah-primary); }
.ah-hart__chip--ssl { top: 0; left: 0; }
.ah-hart__chip--ssl .ah-hart__chipic { background: var(--ah-green-50); color: var(--ah-green); }
.ah-hart__chip--wa { top: 34%; right: -6px; animation-delay: -1.5s; }
.ah-hart__chip--wa .ah-hart__chipic { background: #E7F8EE; color: #1FAF5A; }
.ah-hart__chip--mail { bottom: 6px; left: -10px; animation-delay: -3s; }
.ah-hart__chip--srv { right: 10px; bottom: -6px; animation-delay: -4.5s; }
.ah-hart__chip--srv .ah-hart__chipic { background: var(--ah-accent-50); color: var(--ah-accent); }
.ah-hart__dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--ah-green); box-shadow: 0 0 0 3px color-mix(in srgb, var(--ah-green) 25%, transparent); }
.ah-hart__seal { position: absolute; z-index: 2; top: -6px; right: 14px; display: grid; place-items: center; align-content: center; width: 84px; height: 84px; border-radius: 50%; background: var(--ah-accent-grad); color: #fff; box-shadow: 0 14px 30px -12px rgba(255, 107, 44, .75); transform: rotate(-8deg); }
.ah-hart__seal small { font-size: .625rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; opacity: .9; }
.ah-hart__seal b { font-size: 1.375rem; line-height: 1; letter-spacing: -.02em; }
@keyframes ah-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@media (prefers-reduced-motion: reduce) { .ah-hart__chip { animation: none; } }
@media (max-width: 781px) {
    .ah-hart { margin: 36px auto 0; padding: 26px 10px 34px; }
    .ah-hart__chip--wa, .ah-hart__chip--srv { display: none; }
    .ah-hart__chip--mail { left: 0; bottom: 0; }
    .ah-hart__seal { width: 70px; height: 70px; right: 4px; }
    .ah-hart__seal b { font-size: 1.125rem; }
}
@media (max-width: 420px) {
    .ah-hart__lead strong { font-size: 1.0625rem; }
    .ah-hart__tiles { gap: 6px; }
}

/* ---------- Loja virtual: vitrine, checkout e faixas de meios (1.5.11) ---------- */
.ah-hart__nav .ah-sart__search { display: inline-flex; align-items: center; gap: 6px; flex: 1; width: auto; height: auto; padding: 7px 12px; border: 1px solid var(--ah-line); border-radius: 999px; background: var(--ah-surface-2); color: var(--ah-muted); font-size: .6875rem; font-weight: 600; }
.ah-hart__nav .ah-sart__cart { display: inline-flex; align-items: center; gap: 5px; margin-left: 0; background: var(--ah-accent-50); color: var(--ah-accent); }
.ah-sart__prods { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
.ah-sart__prod { display: grid; gap: 6px; padding: 8px; border: 1px solid var(--ah-line); border-radius: 12px; background: var(--ah-surface); }
.ah-sart__prod b { color: var(--ah-ink); font-size: .75rem; line-height: 1.2; }
.ah-sart__price { color: var(--ah-primary); font-size: .8125rem; font-weight: 800; }
.ah-sart__img { position: relative; display: grid; place-items: center; aspect-ratio: 1 / .82; border-radius: 9px; color: #fff; }
.ah-sart__img--a { background: linear-gradient(135deg, #0066FF, #5B8CFF); }
.ah-sart__img--b { background: linear-gradient(135deg, #FF6B2C, #FF9A5C); }
.ah-sart__img--c { background: linear-gradient(135deg, #12B981, #5BD9A8); }
.ah-sart__img em { position: absolute; top: 6px; left: 6px; padding: 2px 7px; border-radius: 999px; background: #fff; color: var(--ah-ink); font-size: .625rem; font-style: normal; font-weight: 800; }
.ah-hart--checkout .ah-hart__chip--ssl { top: 6px; left: auto; right: 0; }
.ah-hart--checkout .ah-hart__chip--mail { bottom: 2px; left: -6px; }
.ah-xart__body { display: grid; gap: 12px; padding: 22px; }
.ah-xart__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.ah-xart__head b { color: var(--ah-ink); font-size: 1.0625rem; }
.ah-xart__head span { display: inline-flex; align-items: center; gap: 6px; color: var(--ah-green); font-size: .75rem; font-weight: 700; }
.ah-xart__row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 13px; border: 1px solid var(--ah-line); border-radius: 12px; background: var(--ah-surface-2); color: var(--ah-muted); font-size: .8125rem; }
.ah-xart__row b { color: var(--ah-ink); }
.ah-xart__ok { display: inline-flex; align-items: center; gap: 6px; color: var(--ah-green); font-weight: 600; }
.ah-xart__pay { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.ah-xart__pay span { padding: 10px 6px; border: 1px solid var(--ah-line); border-radius: 12px; color: var(--ah-muted); font-size: .8125rem; font-weight: 700; text-align: center; }
.ah-xart__pay .is-on { border-color: var(--ah-primary); background: var(--ah-primary-50); color: var(--ah-primary); }
.ah-xart__total { display: flex; align-items: baseline; justify-content: space-between; padding: 2px 2px 0; color: var(--ah-muted); }
.ah-xart__total b { color: var(--ah-ink); font-size: 1.5rem; letter-spacing: -.02em; }
.ah-xart__btn { display: block; padding: 14px; border-radius: 12px; background: var(--ah-accent-grad); color: #0A1535; font-weight: 700; text-align: center; }
.ah-pillrow { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px; }
.ah-pillrow + .ah-pillrow { margin-top: 26px; }
.ah-pillrow__lbl { flex-basis: 100%; margin-bottom: 4px; color: var(--ah-muted); font-size: .8125rem; font-weight: 700; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.ah-pillrow span:not(.ah-pillrow__lbl) { padding: 10px 18px; border: 1px solid var(--ah-line); border-radius: 999px; background: var(--ah-surface); color: var(--ah-ink); font-size: .9375rem; font-weight: 600; }
@media (max-width: 781px) {
    .ah-hart--checkout { padding: 20px 6px 34px; }
}

/* ---------- História: texto + cartão "2007" ---------- */
.ah-since-cols { margin-bottom: clamp(32px, 5vw, 56px) !important; }
.ah-since { position: relative; overflow: hidden; padding: clamp(26px, 4vw, 40px); border-radius: var(--ah-radius-lg); background: radial-gradient(120% 90% at 100% 0%, rgba(0, 102, 255, .55) 0%, rgba(0, 102, 255, 0) 60%), radial-gradient(80% 70% at 0% 100%, rgba(255, 107, 44, .35) 0%, rgba(255, 107, 44, 0) 60%), #0A1535; color: #fff; box-shadow: var(--ah-shadow-lg); }
.ah-since__top small { font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; opacity: .75; }
.ah-since__top b { display: block; margin: 4px 0 10px; font-size: clamp(4rem, 9vw, 6.25rem); font-weight: 800; line-height: .9; letter-spacing: -.05em; background: linear-gradient(135deg, #fff 30%, #8FB0FF 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.ah-since__top p { max-width: 26em; margin: 0 0 24px; color: rgba(255, 255, 255, .8); font-size: .9375rem; }
.ah-since__group + .ah-since__group { margin-top: 18px; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, .12); }
.ah-since__lbl { display: block; margin-bottom: 10px; color: rgba(255, 255, 255, .6); font-size: .6875rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ah-since__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ah-since__chips span { padding: 6px 12px; border: 1px solid rgba(255, 255, 255, .18); border-radius: 999px; background: rgba(255, 255, 255, .08); font-size: .8125rem; font-weight: 600; }
.ah-since-sec .ah-minis { padding: 22px clamp(18px, 3vw, 28px); border: 1px solid var(--ah-line); border-radius: var(--ah-radius-lg); background: var(--ah-surface); box-shadow: var(--ah-shadow-sm); }
:root[data-theme="dark"] .ah-since { border: 1px solid var(--ah-line); }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .ah-since { border: 1px solid var(--ah-line); } }

/* ---------- Comparativo em dois cartões ---------- */
.ah-vs { display: grid; grid-template-columns: minmax(0, 1.08fr) auto minmax(0, 1fr); column-gap: 18px; align-items: stretch; margin-top: 8px; }
.ah-vs__col { display: grid; grid-template-rows: subgrid; padding: 6px clamp(18px, 2.6vw, 28px) 14px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius-lg); background: var(--ah-surface); }
.ah-vs__col ul { display: contents; margin: 0; padding: 0; list-style: none; }
.ah-vs__col li { display: flex; align-items: flex-start; gap: 12px; margin: 0; padding: 14px 0; border-top: 1px solid var(--ah-line); }
.ah-vs__col li small { display: block; margin-bottom: 2px; color: var(--ah-muted); font-size: .6875rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.ah-vs__col li strong { display: block; color: var(--ah-ink); font-size: .9688rem; line-height: 1.4; }
.ah-vs__col li > span:last-child > span { display: block; color: var(--ah-muted); font-size: .9375rem; line-height: 1.4; }
.ah-vs__ic { display: inline-grid; place-items: center; flex: none; width: 26px; height: 26px; margin-top: 4px; border-radius: 50%; }
.ah-vs__head { display: flex; align-items: center; gap: 12px; padding: 18px 0 16px; }
.ah-vs__head b { display: block; color: var(--ah-ink); font-size: 1.1875rem; letter-spacing: -.02em; }
.ah-vs__head small { display: block; color: var(--ah-muted); font-size: .8125rem; }
.ah-vs__badge { display: inline-grid; place-items: center; flex: none; width: 44px; height: 44px; border-radius: 14px; }
.ah-vs__col.is-us { position: relative; border: 2px solid var(--ah-primary); background: linear-gradient(180deg, var(--ah-primary-50) 0%, var(--ah-surface) 140px); box-shadow: var(--ah-shadow-lg); }
.ah-vs__col.is-us .ah-vs__badge { background: var(--ah-brand-grad); color: #fff; }
.ah-vs__col.is-us .ah-vs__ic { background: var(--ah-green); color: #fff; }
.ah-vs__col.is-them { background: var(--ah-surface-2); }
.ah-vs__col.is-them .ah-vs__badge { background: var(--ah-soft); color: var(--ah-muted); }
.ah-vs__col.is-them .ah-vs__ic { background: var(--ah-red-50); color: var(--ah-red); }
.ah-vs__col.is-them .ah-vs__head b { color: var(--ah-muted); }
.ah-vs__x { display: grid; align-items: center; }
.ah-vs__x span { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--ah-line); border-radius: 50%; background: var(--ah-surface); color: var(--ah-muted); font-weight: 800; text-transform: uppercase; box-shadow: var(--ah-shadow-sm); }
.ah-vs__foot { margin-top: 22px !important; }
@media (max-width: 781px) {
    .ah-vs { grid-template-columns: minmax(0, 1fr); row-gap: 14px; }
    .ah-vs__col, .ah-vs__x { grid-row: auto !important; }
    .ah-vs__col { display: block; }
    .ah-vs__col ul { display: block; }
    .ah-vs__x { justify-items: center; }
    .ah-vs__x span { width: 36px; height: 36px; }
}

/* ---------- Como funciona: passos em cartões ---------- */
.ah-steps { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 8px 0 32px; padding: 0; list-style: none; counter-reset: none; }
.ah-step { position: relative; margin: 0; padding: 22px 22px 24px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius-lg); background: var(--ah-surface); box-shadow: var(--ah-shadow-sm); transition: transform .3s var(--ah-ease), box-shadow .3s var(--ah-ease); }
.ah-step:hover { transform: translateY(-4px); box-shadow: var(--ah-shadow-lg); }
.ah-step__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.ah-step__n { font-size: 2.5rem; font-weight: 800; line-height: 1; letter-spacing: -.05em; background: var(--ah-brand-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.ah-step:nth-child(even) .ah-step__n { background: var(--ah-accent-grad); -webkit-background-clip: text; background-clip: text; }
.ah-step__ic { display: inline-grid; place-items: center; width: 46px; height: 46px; border-radius: 14px; background: var(--ah-primary-50); color: var(--ah-primary); }
.ah-step:nth-child(even) .ah-step__ic { background: var(--ah-accent-50); color: var(--ah-accent); }
.ah-step h3 { margin: 0 0 8px; font-size: 1.125rem; letter-spacing: -.02em; }
.ah-step p { margin: 0; color: var(--ah-muted); font-size: .9375rem; line-height: 1.55; }
.ah-step:not(:last-child)::after { content: ""; position: absolute; z-index: 1; top: 44px; right: -21px; width: 22px; height: 2px; background: linear-gradient(90deg, var(--ah-primary), var(--ah-accent)); }
@media (min-width: 1081px) {
    .ah-steps--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .ah-steps--3 .ah-step:nth-child(3n)::after { display: none; }
}
@media (max-width: 1080px) {
    .ah-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ah-step:nth-child(2)::after { display: none; }
}
@media (max-width: 600px) {
    .ah-steps { grid-template-columns: minmax(0, 1fr); }
    .ah-step::after { display: none; }
}
@media (prefers-reduced-motion: reduce) { .ah-step:hover { transform: none; } }

/* ---------- Atalhos por segmento ---------- */
.ah-chiplinks { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.ah-chiplink { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border: 1px solid var(--ah-line); border-radius: 14px; background: var(--ah-surface); color: var(--ah-ink) !important; font-size: .9375rem; font-weight: 650; text-decoration: none !important; transition: border-color .2s, transform .2s var(--ah-ease), box-shadow .2s; }
.ah-chiplink > span { display: inline-grid; place-items: center; flex: none; width: 36px; height: 36px; border-radius: 10px; background: var(--ah-primary-50); color: var(--ah-primary); }
.ah-chiplink:nth-child(even) > span { background: var(--ah-accent-50); color: var(--ah-accent); }
.ah-chiplink:hover { border-color: var(--ah-primary); box-shadow: var(--ah-shadow); transform: translateY(-2px); }
@media (max-width: 900px) { .ah-chiplinks { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 420px) { .ah-chiplinks { grid-template-columns: minmax(0, 1fr); } }

/* Faixa de números em destaque (página de sites) */
.ah-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; overflow: hidden; border-radius: var(--ah-radius-lg); background: radial-gradient(90% 140% at 100% 0%, rgba(0, 102, 255, .5) 0%, rgba(0, 102, 255, 0) 60%), radial-gradient(70% 120% at 0% 100%, rgba(255, 107, 44, .32) 0%, rgba(255, 107, 44, 0) 60%), #0A1535; color: #fff; box-shadow: var(--ah-shadow-lg); }
.ah-kpi { display: grid; align-content: center; gap: 6px; padding: clamp(22px, 3vw, 34px) clamp(16px, 2.4vw, 28px); text-align: center; }
.ah-kpi + .ah-kpi { border-left: 1px solid rgba(255, 255, 255, .14); }
.ah-kpi b { font-size: clamp(1.625rem, 3.2vw, 2.5rem); font-weight: 800; line-height: 1.05; letter-spacing: -.03em; background: linear-gradient(135deg, #fff 30%, #8FB0FF 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.ah-kpi span { font-size: .9375rem; line-height: 1.4; color: rgba(255, 255, 255, .78); }
@media (max-width: 781px) {
    .ah-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ah-kpi:nth-child(3) { border-left: 0; }
    .ah-kpi:nth-child(n+3) { border-top: 1px solid rgba(255, 255, 255, .14); }
}
/* Produtos: listas de recursos alinhadas */
.ah-products-sec .ah-plan .is-style-checks { font-size: .875rem; }

/* 5 ou 7 cartões: a última linha fica centralizada (3+2 ou 4+3 no desktop; 2+2+1 no tablet) */
@media (min-width: 1081px) {
    .ah-pricing:has(> :nth-child(5):last-child), .ah-features:has(> :nth-child(5):last-child) { grid-template-columns: repeat(6, minmax(0, 1fr)) !important; }
    .ah-pricing:has(> :nth-child(5):last-child) > *, .ah-features:has(> :nth-child(5):last-child) > * { grid-column: span 2; }
    .ah-pricing:has(> :nth-child(5):last-child) > :nth-child(4), .ah-features:has(> :nth-child(5):last-child) > :nth-child(4) { grid-column: 2 / span 2; }
    .ah-pricing:has(> :nth-child(7):last-child), .ah-features:has(> :nth-child(7):last-child) { grid-template-columns: repeat(8, minmax(0, 1fr)) !important; }
    .ah-pricing:has(> :nth-child(7):last-child) > *, .ah-features:has(> :nth-child(7):last-child) > * { grid-column: span 2; }
    .ah-pricing:has(> :nth-child(7):last-child) > :nth-child(5), .ah-features:has(> :nth-child(7):last-child) > :nth-child(5) { grid-column: 2 / span 2; }
}
@media (min-width: 641px) and (max-width: 1080px) {
    .ah-pricing:has(> :nth-child(5):last-child), .ah-features:has(> :nth-child(5):last-child),
    .ah-pricing:has(> :nth-child(7):last-child), .ah-features:has(> :nth-child(7):last-child) { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
    .ah-pricing:has(> :nth-child(5):last-child) > *, .ah-features:has(> :nth-child(5):last-child) > *,
    .ah-pricing:has(> :nth-child(7):last-child) > *, .ah-features:has(> :nth-child(7):last-child) > * { grid-column: span 2; }
    .ah-pricing:has(> :nth-child(5):last-child) > :last-child, .ah-features:has(> :nth-child(5):last-child) > :last-child,
    .ah-pricing:has(> :nth-child(7):last-child) > :last-child, .ah-features:has(> :nth-child(7):last-child) > :last-child { grid-column: 2 / span 2; }
}

/* 1.5.1: rótulos longos dos chips ("contas de e-mail") quebram linha em vez de cortar */
.ah-specs small { white-space: normal; text-overflow: clip; text-align: center; }

/* 1.5.2: segunda lista dos cartões de plano ("Em todos os planos") */
.ah-plan__more { margin-top: 18px; padding: 14px 16px; border-radius: var(--ah-radius); background: var(--ah-soft); }
.ah-plan__more-label { margin: 0 0 4px; font-size: .75rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--ah-muted); }
.ah-plan .ah-plan__more .is-style-checks { margin: 0; padding-top: 0; border-top: 0; font-size: .8125rem; }
.ah-plan .ah-plan__more .is-style-checks li { padding-top: 3px; padding-bottom: 3px; }
.ah-plan .ah-plan__more .is-style-checks li + li { border-top: 0; }

/* 1.5.2: galeria de telas com zoom */
.ah-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); gap: 18px; margin-top: 28px; }
.ah-cwppro .ah-gallery { grid-template-columns: repeat(auto-fill, minmax(min(100%, 11rem), 1fr)); gap: 12px; margin-top: 0; }
.ah-gallery__item { margin: 0; }
.ah-gallery__link, .ah-gallery__ph { display: block; overflow: hidden; aspect-ratio: 16 / 10; border: 1px solid var(--ah-line); border-radius: var(--ah-radius); background: var(--ah-surface); box-shadow: var(--ah-shadow); cursor: zoom-in; }
.ah-gallery__link img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top left; transition: transform .35s var(--ah-ease); }
.ah-gallery__link:hover img, .ah-gallery__link:focus-visible img { transform: scale(1.04); }
.ah-gallery__link:focus-visible { outline: 2px solid var(--ah-primary); outline-offset: 3px; }
.ah-gallery__ph { display: grid; place-items: center; cursor: default; background: repeating-linear-gradient(135deg, var(--ah-soft) 0 12px, var(--ah-surface) 12px 24px); }
.ah-gallery__ph span { padding: 4px 10px; border-radius: 99px; background: var(--ah-surface); color: var(--ah-muted); font-size: .75rem; font-weight: 600; }
.ah-gallery__item figcaption { margin-top: 8px; color: var(--ah-muted); font-size: .8125rem; text-align: center; }
.ah-lightbox { position: fixed; inset: 0; z-index: 9999; display: grid; grid-template-rows: 1fr auto; place-items: center; padding: 56px 16px 20px; background: rgba(8, 12, 24, .88); }
.ah-lightbox[hidden] { display: none; }
.ah-lightbox img { max-width: min(100%, 1400px); max-height: calc(100vh - 140px); border-radius: 8px; box-shadow: 0 20px 60px rgba(0, 0, 0, .45); background: #fff; }
.ah-lightbox__cap { margin-top: 12px; color: #fff; font-size: .9375rem; text-align: center; }
.ah-lightbox button { position: absolute; display: grid; place-items: center; width: 44px; height: 44px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .14); color: #fff; font-size: 1.5rem; line-height: 1; cursor: pointer; }
.ah-lightbox button:hover, .ah-lightbox button:focus-visible { background: rgba(255, 255, 255, .28); }
.ah-lightbox__close { top: 10px; right: 10px; }
.ah-lightbox__prev { top: 50%; left: 10px; transform: translateY(-50%); }
.ah-lightbox__next { top: 50%; right: 10px; transform: translateY(-50%); }
body.ah-lightbox-open { overflow: hidden; }

/* Nota abaixo de tabelas (asterisco) */
.ah-table__note{margin:.75rem 0 0;color:var(--ah-muted,#5b6b7f);font-size:.85rem;text-align:center}

/* Destaque da última linha da tabela de planos (suporte técnico especializado): a linha antes dos botões */
.ah-table--plans tbody tr:nth-last-child(2) td{background:var(--ah-primary-50,#e5eeff) !important;border-top:2px solid var(--ah-primary,#1f4fff);font-weight:700;color:var(--ah-primary-700,#1737b8)}
.ah-table--plans tbody tr:nth-last-child(2) td:first-child{box-shadow:inset 4px 0 0 var(--ah-accent,#ff6b1a)}
.ah-table--plans tbody tr:nth-last-child(2) .ah-yes{background:var(--ah-primary,#1f4fff);color:#fff;transform:scale(1.15)}

/* VPS: comparativo redesenhado (1.5.10) */
.ah-vpscmp { border: 1px solid var(--ah-line); border-radius: var(--ah-radius-lg); background: var(--ah-surface); box-shadow: var(--ah-shadow); overflow: hidden; }
.ah-vpscmp__head, .ah-vpscmp__row { display: grid; grid-template-columns: 1.55fr .8fr .8fr 1fr .8fr 1.5fr .9fr; align-items: center; gap: 14px; padding: 18px 22px; }
.ah-vpscmp__head { background: var(--ah-code-bg); color: #E3E6F5; font-size: .75rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding-block: 14px; }
.ah-vpscmp__row { position: relative; border-top: 1px solid var(--ah-line); transition: background-color .15s; }
.ah-vpscmp__row:nth-of-type(even) { background: var(--ah-surface-2); }
.ah-vpscmp__row:hover { background: var(--ah-primary-50); }
.ah-vpscmp__row.is-best { background: var(--ah-accent-50); box-shadow: inset 4px 0 0 var(--ah-accent); }
.ah-vpscmp__plan { display: flex; flex-direction: column; gap: 3px; }
.ah-vpscmp__plan strong { font-size: 1.125rem; color: var(--ah-ink); }
.ah-vpscmp__plan small { color: var(--ah-muted); font-size: .8125rem; line-height: 1.35; }
.ah-vpscmp__badge { width: max-content; padding: 2px 10px; border-radius: 999px; background: var(--ah-accent); color: #0A1535; font-size: .6875rem; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; }
.ah-vpscmp__res b { display: block; color: var(--ah-ink); font-size: 1.0625rem; margin-bottom: 6px; }
.ah-vpscmp__res i { display: block; height: 6px; border-radius: 999px; background: var(--ah-line); position: relative; overflow: hidden; }
.ah-vpscmp__res i::after { content: ""; position: absolute; inset: 0 auto 0 0; width: var(--v); border-radius: inherit; background: var(--ah-brand-grad); }
.ah-vpscmp__mo span { color: var(--ah-text); font-weight: 600; }
.ah-vpscmp__mo small, .ah-vpscmp__yr small { color: var(--ah-muted); }
.ah-vpscmp__yr { display: flex; flex-direction: column; gap: 2px; }
.ah-vpscmp__yr strong { font-size: 1.375rem; line-height: 1.1; color: var(--ah-ink); }
.ah-vpscmp__yr small { font-size: .75rem; }
.ah-vpscmp__save { width: max-content; margin-top: 6px; padding: 3px 10px; border-radius: 999px; background: var(--ah-green-50); color: var(--ah-green); font-size: .78125rem; font-weight: 800; }
.ah-vpscmp__go { text-align: right; }
.ah-vpscmp__note { margin: 0; padding: 14px 22px; border-top: 1px solid var(--ah-line); color: var(--ah-muted); font-size: .8125rem; }
@media (max-width: 960px) {
    .ah-vpscmp { border: 0; background: transparent; box-shadow: none; overflow: visible; }
    .ah-vpscmp__head { display: none; }
    .ah-vpscmp__row { grid-template-columns: repeat(3, 1fr); margin-bottom: 14px; padding: 18px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius); background: var(--ah-surface) !important; box-shadow: var(--ah-shadow-sm); }
    .ah-vpscmp__row.is-best { border-color: var(--ah-accent); box-shadow: 0 0 0 1px var(--ah-accent), var(--ah-shadow); }
    .ah-vpscmp__plan, .ah-vpscmp__yr, .ah-vpscmp__go { grid-column: 1 / -1; }
    .ah-vpscmp__mo { display: none; }
    .ah-vpscmp__res::before { content: attr(data-l); display: block; margin-bottom: 2px; color: var(--ah-muted); font-size: .6875rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
    .ah-vpscmp__go { text-align: stretch; }
    .ah-vpscmp__go .ah-table__btn { width: 100%; }
}

/* AntiSpam: comparativo com e sem (1.5.9) */
.ah-spamcmp { border: 1px solid var(--ah-line); border-radius: var(--ah-radius-lg); background: var(--ah-surface); box-shadow: var(--ah-shadow); overflow: hidden; }
.ah-spamcmp__head, .ah-spamcmp__row { display: grid; grid-template-columns: var(--cc, 1.1fr 1fr 1.25fr); align-items: center; gap: 18px; padding: 16px 24px; }
.ah-spamcmp__head { background: var(--ah-code-bg); color: #E3E6F5; font-size: .75rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding-block: 14px; }
.ah-spamcmp__head .ah-spamcmp__hw { display: flex; align-items: center; gap: 10px; color: #fff; }
.ah-spamcmp__head em { padding: 2px 10px; border-radius: 999px; background: var(--ah-accent); color: #fff; font-style: normal; font-size: .6875rem; letter-spacing: .03em; }
.ah-spamcmp__grp { padding: 10px 24px; border-top: 1px solid var(--ah-line); background: var(--ah-primary-50); color: var(--ah-primary-700, #1737b8); font-size: .75rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.ah-spamcmp__row { border-top: 1px solid var(--ah-line); transition: background-color .15s; }
.ah-spamcmp__row:hover { background: var(--ah-surface-2); }
.ah-spamcmp__what { display: flex; align-items: center; gap: 12px; }
.ah-spamcmp__what strong { color: var(--ah-ink); font-size: 1rem; line-height: 1.3; }
.ah-spamcmp__what .ah-ic { margin: 0; flex: none; }
.ah-spamcmp__cell { display: flex; align-items: center; gap: 10px; color: var(--ah-muted); font-size: .9375rem; line-height: 1.4; }
.ah-spamcmp__mk { flex: none; width: 22px; height: 22px; border-radius: 50%; position: relative; background: #FEE4E2; }
.ah-spamcmp__mk::before { position: absolute; inset: 0; display: grid; place-items: center; font-style: normal; font-size: .8125rem; font-weight: 800; line-height: 1; }
.is-no .ah-spamcmp__mk { background: #FEE4E2; color: #B42318; }
.is-no .ah-spamcmp__mk::before { content: "\2715"; }
.is-mid .ah-spamcmp__mk { background: #FEF0C7; color: #B54708; }
.is-mid .ah-spamcmp__mk::before { content: "!"; }
.is-off .ah-spamcmp__mk { background: var(--ah-line); color: var(--ah-muted); }
.is-off .ah-spamcmp__mk::before { content: "\2013"; }
.is-yes .ah-spamcmp__mk { background: var(--ah-green-50); color: var(--ah-green); }
.is-yes .ah-spamcmp__mk::before { content: "\2713"; }
.ah-spamcmp__win { align-self: stretch; margin: -16px -12px; padding: 16px 12px; background: var(--ah-accent-50); color: var(--ah-ink); font-weight: 600; }
.ah-spamcmp__row > .ah-spamcmp__win:last-child { margin-right: -24px; padding-right: 24px; }
.ah-spamcmp__price { background: var(--ah-surface-2); }
.ah-spamcmp__price .ah-spamcmp__cell { align-items: flex-start; }
.ah-spamcmp__price .ah-spamcmp__cell > span { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; color: var(--ah-text); font-weight: 600; }
.ah-spamcmp__price .ah-table__btn { margin-top: 6px; }
.ah-spamcmp__price b { font-size: 1.5rem; line-height: 1.1; color: var(--ah-ink); }
.ah-spamcmp__price small { display: block; margin-top: 2px; color: var(--ah-muted); font-size: .75rem; font-weight: 400; }
.ah-spamcmp__note { margin: 0; padding: 14px 24px; border-top: 1px solid var(--ah-line); color: var(--ah-muted); font-size: .8125rem; }
@media (max-width: 860px) {
    .ah-spamcmp { border: 0; background: transparent; box-shadow: none; overflow: visible; }
    .ah-spamcmp__head { display: none; }
    .ah-spamcmp__grp { margin: 18px 0 10px; border: 0; border-radius: 8px; padding: 8px 14px; }
    .ah-spamcmp__row { grid-template-columns: 1fr; gap: 10px; margin-bottom: 12px; padding: 16px; border: 1px solid var(--ah-line); border-radius: var(--ah-radius); background: var(--ah-surface); box-shadow: var(--ah-shadow-sm); }
    .ah-spamcmp__row:hover { background: var(--ah-surface); }
    .ah-spamcmp__cell > span::before { content: attr(data-l); display: block; margin-bottom: 2px; color: var(--ah-muted); font-size: .6875rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
    .ah-spamcmp__win, .ah-spamcmp__row > .ah-spamcmp__win:last-child { margin: 0; padding: 12px; border-radius: 10px; }
    .ah-spamcmp__cell { align-items: flex-start; }
    .ah-spamcmp__cell { padding: 0; }
    .ah-spamcmp__price .ah-spamcmp__win .ah-table__btn { width: 100%; text-align: center; }
}
.ah-note { max-width: 1100px; margin: 16px auto 0; color: var(--ah-muted); font-size: .8125rem; }

/* Destaque: conectores sob medida (diferencial) */
.ah-sec--spot{position:relative;background:linear-gradient(180deg,#eef3ff 0%,#fff4ec 100%);border-top:4px solid;border-image:linear-gradient(90deg,#3b6cff,#ff6a1f) 1}
.ah-sec--spot .ah-eyebrow{display:inline-block;background:linear-gradient(90deg,#3b6cff,#ff6a1f);color:#fff;padding:.4rem .9rem;border-radius:999px;letter-spacing:.08em}
.ah-sec--spot h2{font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.1}
.ah-sec--spot .ah-card{border:1px solid rgba(59,108,255,.25);box-shadow:0 14px 34px -18px rgba(59,108,255,.45)}
