/* AEGM Audit landing page. Self-contained styles, namespaced .aegm-* so
   they don't fight the active theme. Wider container, bento body, premium hero. */

.aegm-audit-page { color: #1f2937; line-height: 1.55; }
.aegm-audit-page h1, .aegm-audit-page h2, .aegm-audit-page h3, .aegm-audit-page h4 { color: #0b1220; line-height: 1.2; margin: 0 0 0.5em; }
.aegm-audit-page p { margin: 0 0 1em; }
.aegm-container { max-width: 1240px; margin: 0 auto; padding: 0 28px; }

/* Eyebrow with live pulse */
.aegm-eyebrow { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #2563eb; background: #eff6ff; padding: 6px 12px; border-radius: 999px; margin-bottom: 16px; border: 1px solid #dbeafe; }
.aegm-eyebrow-dark { color: #93c5fd; background: rgba(37,99,235,0.08); border-color: rgba(37,99,235,0.25); }
.aegm-pulse { width: 8px; height: 8px; border-radius: 50%; background: #22c55e; box-shadow: 0 0 0 0 rgba(34,197,94,0.7); animation: aegm-pulse 1.8s infinite; }
@keyframes aegm-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(34,197,94,0.7); }
    70%  { box-shadow: 0 0 0 8px rgba(34,197,94,0); }
    100% { box-shadow: 0 0 0 0 rgba(34,197,94,0); }
}

/* ── HERO ────────────────────────────────────────────────────────────── */
.aegm-hero { padding: 144px 0 88px; background: radial-gradient(1200px 500px at 75% -100px, #dbeafe 0%, transparent 60%), linear-gradient(180deg, #f8fafc 0%, #ffffff 100%); border-bottom: 1px solid #e5e7eb; }
.aegm-hero-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 48px; align-items: center; }
.aegm-hero-text h1 { font-size: clamp(30px, 3.6vw, 50px); font-weight: 700; letter-spacing: -0.02em; line-height: 1.08; margin-bottom: 18px; text-wrap: balance; }
.aegm-hero-text h1.is-long-domain { font-size: clamp(26px, 2.9vw, 40px); }
.aegm-hero-text .aegm-domain { color: #2563eb; word-break: normal; overflow-wrap: anywhere; background: linear-gradient(180deg, transparent 62%, #dbeafe 62%); padding: 0 4px; }
.aegm-hero-text .aegm-lede { font-size: 18px; color: #334155; max-width: 640px; line-height: 1.55; }
.aegm-hero-text .aegm-lede strong { color: #b45309; }

.aegm-cta-row { display: flex; gap: 12px; flex-wrap: wrap; margin: 28px 0 18px; }
.aegm-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 13px 22px; border-radius: 10px; font-weight: 600; text-decoration: none; font-size: 15px; transition: background 0.15s, transform 0.05s, box-shadow 0.15s; line-height: 1; border: 0; cursor: pointer; }
.aegm-btn:active { transform: translateY(1px); }
.aegm-btn-lg { padding: 16px 28px; font-size: 16px; }
.aegm-btn-block { display: flex; width: 100%; }
.aegm-btn-primary { background: #2563eb; color: #fff; box-shadow: 0 4px 14px rgba(37,99,235,0.35); }
.aegm-btn-primary:hover { background: #1d4ed8; color: #fff; box-shadow: 0 8px 22px rgba(37,99,235,0.5); }
.aegm-btn-secondary { background: #f59e0b; color: #fff; box-shadow: 0 4px 14px rgba(245,158,11,0.35); }
.aegm-btn-secondary:hover { background: #d97706; color: #fff; }
.aegm-btn-ghost { background: transparent; color: #2563eb; border: 1px solid #cbd5e1; }
.aegm-btn-ghost:hover { background: #eff6ff; border-color: #93c5fd; }

.aegm-trust-row { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 14px 22px; font-size: 13px; color: #64748b; }
.aegm-trust-row li { display: inline-flex; align-items: center; gap: 6px; }
.aegm-trust-row svg { color: #16a34a; }

/* Hero right column: card + orbiting logos.
   Orbit container extends OUTSIDE the card so logos have room to roam,
   and sits ABOVE the card so they overlap card edges (not get clipped). */
.aegm-hero-right { position: relative; min-height: 380px; }
.aegm-orbit { position: absolute; inset: -28px -64px -56px; pointer-events: none; z-index: 3; }
.aegm-orbit-logo {
    position: absolute;
    width: 56px; height: 56px;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 18px 40px -12px rgba(15,23,42,0.28), 0 6px 14px -8px rgba(15,23,42,0.18), 0 0 0 1px rgba(15,23,42,0.05);
    padding: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    will-change: transform;
}
.aegm-orbit-logo img { width: 100%; height: 100%; object-fit: contain; display: block; }

/* Positions are anchored OUTSIDE the card box on every side. Three keyframe
   variants (a/b/c) staggered with offset delays produce the "GSAP-like" feel. */
.aegm-orbit-1  { top: 10px;     left: -28px;  animation: aegm-float-a 9s  ease-in-out 0s    infinite; }
.aegm-orbit-2  { top: 36%;      left: -52px;  animation: aegm-float-b 11s ease-in-out -2s   infinite; }
.aegm-orbit-3  { top: 70%;      left: -28px;  animation: aegm-float-c 8s  ease-in-out -1s   infinite; }
.aegm-orbit-4  { top: -34px;    left: 28%;    animation: aegm-float-a 10s ease-in-out -3s   infinite; }
.aegm-orbit-5  { top: -28px;    right: 14%;   animation: aegm-float-b 9s  ease-in-out -4s   infinite; }
.aegm-orbit-6  { top: 14%;      right: -50px; animation: aegm-float-c 12s ease-in-out -2.5s infinite; }
.aegm-orbit-7  { top: 52%;      right: -36px; animation: aegm-float-a 11s ease-in-out -1.5s infinite; }
.aegm-orbit-8  { bottom: -32px; right: 22%;   animation: aegm-float-b 13s ease-in-out -3.5s infinite; width: 52px; height: 52px; }
.aegm-orbit-9  { bottom: -38px; left: 26%;    animation: aegm-float-c 10s ease-in-out -2s   infinite; width: 52px; height: 52px; }
.aegm-orbit-10 { bottom: 14%;   right: -54px; animation: aegm-float-a 14s ease-in-out -5s   infinite; width: 48px; height: 48px; opacity: 0.85; }

@keyframes aegm-float-a {
    0%, 100% { transform: translate3d(0,0,0) rotate(0deg); }
    25%      { transform: translate3d(18px, -22px, 0) rotate(8deg); }
    50%      { transform: translate3d(-14px, 16px, 0) rotate(-6deg); }
    75%      { transform: translate3d(22px, 10px, 0) rotate(5deg); }
}
@keyframes aegm-float-b {
    0%, 100% { transform: translate3d(0,0,0) rotate(0deg); }
    33%      { transform: translate3d(-20px, 24px, 0) rotate(-10deg); }
    66%      { transform: translate3d(24px, -18px, 0) rotate(7deg); }
}
@keyframes aegm-float-c {
    0%, 100% { transform: translate3d(0,0,0) rotate(0deg) scale(1); }
    20%      { transform: translate3d(14px, 22px, 0) rotate(6deg) scale(1.06); }
    50%      { transform: translate3d(-22px, -14px, 0) rotate(-8deg) scale(0.92); }
    80%      { transform: translate3d(20px, -18px, 0) rotate(10deg) scale(1.03); }
}

/* Hero card styled as an LLM chat panel */
.aegm-hero-card {
    position: relative;
    z-index: 2;
    background: #ffffff;
    border-radius: 20px;
    padding: 0;
    border: 1px solid #e5e7eb;
    box-shadow: 0 30px 60px -22px rgba(15, 23, 42, 0.20), 0 8px 24px -14px rgba(15, 23, 42, 0.12);
    overflow: hidden;
    isolation: isolate;
}

.aegm-card-glow {
    position: absolute;
    inset: -60px;
    background: radial-gradient(closest-side, rgba(37,99,235,0.16), transparent 70%);
    z-index: -1;
    filter: blur(20px);
    pointer-events: none;
    animation: aegm-breathe 6s ease-in-out infinite;
}
@keyframes aegm-breathe {
    0%, 100% { opacity: 0.4; transform: scale(0.98); }
    50%      { opacity: 0.75; transform: scale(1.06); }
}

/* Chat header bar */
.aegm-chat-head {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    border-bottom: 1px solid #f1f5f9;
    background: linear-gradient(180deg, #fbfbfd 0%, #ffffff 100%);
}
.aegm-chat-avatar {
    width: 34px; height: 34px;
    border-radius: 10px;
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 6px 14px -6px rgba(37,99,235,0.55);
}
.aegm-chat-titlewrap { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.aegm-chat-title { font-weight: 600; font-size: 14px; color: #0b1220; letter-spacing: -0.01em; }
.aegm-chat-status { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; color: #16a34a; font-weight: 500; }

/* User prompt bubble */
.aegm-chat-prompt {
    margin: 18px 18px 12px;
    padding: 12px 14px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 14px 14px 14px 4px;
    position: relative;
}
.aegm-chat-prompt-tag {
    display: inline-block;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #64748b;
    margin-bottom: 4px;
}
.aegm-chat-prompt p {
    margin: 0;
    font-size: 14px;
    color: #0b1220;
    line-height: 1.45;
    word-break: break-word;
}
.aegm-chat-prompt strong {
    color: #2563eb;
    font-weight: 700;
    font-family: ui-monospace, "SFMono-Regular", Menlo, monospace;
    letter-spacing: -0.01em;
}
.aegm-chat-cursor {
    display: inline-block;
    width: 1.5px;
    height: 1.05em;
    background: #2563eb;
    margin-left: 2px;
    vertical-align: -0.15em;
    animation: aegm-blink 1.05s steps(2) infinite;
}
@keyframes aegm-blink { 50% { opacity: 0; } }

/* Assistant response */
.aegm-chat-response {
    margin: 0 18px 18px;
    padding: 14px 14px 12px;
    background: linear-gradient(180deg, #f0f7ff 0%, #ffffff 100%);
    border: 1px solid #dbeafe;
    border-radius: 4px 14px 14px 14px;
}
.aegm-chat-response-head {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
    font-size: 11px;
    color: #1d4ed8;
    font-weight: 600;
}
.aegm-chat-response-head code {
    font-size: 11px;
    background: rgba(37,99,235,0.08);
    padding: 1px 6px;
    border-radius: 4px;
    color: #1d4ed8;
}

/* Stat tiles inside the chat response: clean white pills with a single
   coloured dot. Big black numbers, no Tailwind candy gradients. */
.aegm-hero-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.aegm-hero-stat {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 12px 12px 10px;
    text-align: left;
    position: relative;
    transition: border-color 0.2s, transform 0.2s;
}
.aegm-hero-stat:hover { transform: translateY(-1px); }
.aegm-hero-stat strong {
    display: block;
    font-size: 32px;
    font-weight: 800;
    color: #0b1220;
    line-height: 1;
    letter-spacing: -0.03em;
    font-variant-numeric: tabular-nums;
    margin-bottom: 8px;
}
.aegm-hero-stat span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #475569;
}
.aegm-hero-stat span::before {
    content: "";
    width: 7px; height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
    display: inline-block;
}
.aegm-stat-found   span::before { background: #16a34a; box-shadow: 0 0 0 3px rgba(34,197,94,0.18); }
.aegm-stat-review  span::before { background: #f59e0b; box-shadow: 0 0 0 3px rgba(245,158,11,0.18); }
.aegm-stat-missing span::before { background: #ef4444; box-shadow: 0 0 0 3px rgba(239,68,68,0.18); }
.aegm-stat-found  { border-color: #d1fae5; }
.aegm-stat-review { border-color: #fde68a; }
.aegm-stat-missing { border-color: #fecaca; }

.aegm-chat-foot {
    margin: 12px 0 0;
    font-size: 12px;
    color: #475569;
    line-height: 1.5;
    border-top: 1px dashed #cbd5e1;
    padding-top: 10px;
}

@media (max-width: 980px) {
    .aegm-hero { padding: 56px 0 36px; }
    .aegm-hero-grid { grid-template-columns: 1fr; gap: 28px; }
    .aegm-hero-right { min-height: 0; }
    .aegm-orbit { display: none; }
}

/* ── BENTO ROW (snapshot + issues) ───────────────────────────────────── */
.aegm-bento { padding: 56px 0 32px; background: #f8fafc; border-bottom: 1px solid #e5e7eb; }
.aegm-bento-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 20px; align-items: stretch; }
.aegm-bento-card { background: #ffffff; border: 1px solid #e5e7eb; border-radius: 16px; padding: 26px; box-shadow: 0 4px 16px -10px rgba(15,23,42,0.1); display: flex; flex-direction: column; }
.aegm-bento-head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 18px; padding-bottom: 14px; border-bottom: 1px solid #f1f5f9; }
.aegm-bento-head h2 { font-size: 18px; font-weight: 700; margin: 0; }
.aegm-bento-domain, .aegm-bento-sub { font-size: 12px; color: #64748b; font-weight: 500; }

.aegm-checks { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 24px; }
.aegm-check { padding: 14px 0; border-bottom: 1px solid #f1f5f9; }
.aegm-check:nth-last-child(-n+2) { border-bottom: 0; }
.aegm-check-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.aegm-check-label { font-weight: 500; color: #0f172a; font-size: 14px; }
.aegm-check-note { margin: 6px 0 0; font-size: 12px; color: #64748b; line-height: 1.45; }

.aegm-badge { display: inline-block; font-size: 11px; font-weight: 600; padding: 3px 10px; border-radius: 999px; white-space: nowrap; }
.aegm-badge-found   { background: #dcfce7; color: #166534; }
.aegm-badge-missing { background: #fee2e2; color: #991b1b; }
.aegm-badge-review  { background: #fef3c7; color: #92400e; }
.aegm-badge-unknown { background: #e5e7eb; color: #475569; }

/* Issues / opportunities */
.aegm-issue-list { list-style: none; padding: 0; margin: 0; }
.aegm-issue { display: grid; grid-template-columns: 18px 1fr; gap: 12px; padding: 14px 0; border-bottom: 1px solid #f1f5f9; }
.aegm-issue:last-child { border-bottom: 0; }
.aegm-issue-dot { width: 10px; height: 10px; border-radius: 50%; margin-top: 7px; }
.aegm-issue-alert .aegm-issue-dot       { background: #ef4444; box-shadow: 0 0 0 3px rgba(239,68,68,0.12); }
.aegm-issue-warn .aegm-issue-dot        { background: #f59e0b; box-shadow: 0 0 0 3px rgba(245,158,11,0.12); }
.aegm-issue-opportunity .aegm-issue-dot { background: #2563eb; box-shadow: 0 0 0 3px rgba(37,99,235,0.12); }
.aegm-issue h3 { font-size: 14px; margin: 0 0 4px; line-height: 1.3; }
.aegm-issue p { font-size: 12.5px; color: #475569; margin: 0 0 8px; line-height: 1.5; }
.aegm-issue-foot { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; }
.aegm-issue-jump { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; color: #2563eb; font-weight: 600; text-decoration: none; }
.aegm-issue-jump:hover { color: #1d4ed8; text-decoration: underline; }
.aegm-engine-purpose { color: #94a3b8; }
.aegm-not-wp { padding: 96px 0 80px; text-align: left; background: linear-gradient(180deg, #f8fafc, #fff); }
.aegm-not-wp h1 { font-size: clamp(28px, 3.4vw, 40px); margin-bottom: 16px; line-height: 1.15; }
.aegm-not-wp .aegm-domain { color: #2563eb; }
.aegm-not-wp .aegm-lede { font-size: 18px; color: #334155; max-width: 720px; }
.aegm-not-wp .aegm-sub { font-size: 13px; color: #94a3b8; max-width: 720px; margin-top: 28px; }
.aegm-not-wp .aegm-sub a { color: #64748b; text-decoration: underline; }

/* Inconclusive eyebrow: amber pulse, not green "complete" */
.aegm-eyebrow-warn { color: #b45309; background: #fffbeb; border-color: #fde68a; }
.aegm-pulse-warn { background: #f59e0b; box-shadow: 0 0 0 0 rgba(245,158,11,0.7); animation: aegm-pulse-warn 1.8s infinite; }
@keyframes aegm-pulse-warn {
    0%   { box-shadow: 0 0 0 0 rgba(245,158,11,0.7); }
    70%  { box-shadow: 0 0 0 8px rgba(245,158,11,0); }
    100% { box-shadow: 0 0 0 0 rgba(245,158,11,0); }
}

/* Metronyx fallback CTA: full-width premium card, prominent action */
.aegm-not-wp-alt {
    margin: 36px 0 0;
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) auto;
    gap: 32px;
    align-items: center;
    padding: 32px 36px;
    border-radius: 18px;
    background: linear-gradient(135deg, #0b1220 0%, #1e3a8a 60%, #2563eb 110%);
    color: #fff;
    box-shadow: 0 24px 48px -16px rgba(15,23,42,0.35), 0 0 0 1px rgba(37,99,235,0.25);
    position: relative;
    overflow: hidden;
}
.aegm-not-wp-alt::before {
    content: '';
    position: absolute;
    inset: -40% -10% auto auto;
    width: 360px; height: 360px;
    background: radial-gradient(closest-side, rgba(96,165,250,0.45), transparent 70%);
    pointer-events: none;
}
.aegm-not-wp-alt-text { position: relative; z-index: 1; }
.aegm-not-wp-alt-tag { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: #bae6fd; margin-bottom: 10px; }
.aegm-not-wp-alt-text h2 { color: #fff; font-size: clamp(20px, 2.1vw, 26px); margin: 0 0 8px; line-height: 1.2; }
.aegm-not-wp-alt-text p { color: #cbd5e1; font-size: 15px; margin: 0; max-width: 620px; }
.aegm-not-wp-alt .aegm-btn { position: relative; z-index: 1; white-space: nowrap; background: #fff; color: #1e3a8a; box-shadow: 0 12px 28px -8px rgba(255,255,255,0.5), 0 0 0 1px rgba(255,255,255,0.6); }
.aegm-not-wp-alt .aegm-btn:hover { background: #eff6ff; color: #1d4ed8; }
@media (max-width: 720px) {
    .aegm-not-wp-alt { grid-template-columns: 1fr; padding: 28px; }
    .aegm-not-wp-alt .aegm-btn { width: 100%; }
}
.aegm-issue-feature { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; color: #0b1220; background: #eff6ff; border: 1px solid #dbeafe; padding: 4px 9px; border-radius: 999px; font-weight: 600; }
.aegm-issue-feature svg { color: #2563eb; }
.aegm-issue-opportunity .aegm-issue-feature { background: #fef3c7; border-color: #fde68a; }
.aegm-issue-opportunity .aegm-issue-feature svg { color: #b45309; }

@media (max-width: 980px) {
    .aegm-bento-grid { grid-template-columns: 1fr; }
    .aegm-checks { grid-template-columns: 1fr; gap: 0; }
    .aegm-check:nth-last-child(-n+2) { border-bottom: 1px solid #f1f5f9; }
    .aegm-check:last-child { border-bottom: 0; }
}

/* ── AI ENGINE GRID ──────────────────────────────────────────────────── */
.aegm-engines { padding: 56px 0; }
.aegm-section-head { margin-bottom: 28px; }
.aegm-section-head h2 { font-size: clamp(22px, 2.2vw, 28px); margin-bottom: 6px; letter-spacing: -0.01em; }
.aegm-section-head p { color: #475569; max-width: 720px; margin: 0; font-size: 15px; }
.aegm-section-head code { background: #f1f5f9; padding: 1px 6px; border-radius: 4px; font-size: 0.9em; }
.aegm-section-head-center { text-align: center; }
.aegm-section-head-center p { margin: 0 auto; }
.aegm-domain-inline { color: #2563eb; }

.aegm-engine-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 12px; }
.aegm-engine { display: grid; grid-template-columns: 44px 1fr auto; gap: 14px; align-items: center; padding: 14px 16px; background: #fff; border: 1px solid #e5e7eb; border-radius: 12px; transition: border-color 0.15s, box-shadow 0.15s, transform 0.15s; }
.aegm-engine:hover { border-color: #93c5fd; box-shadow: 0 8px 24px -14px rgba(37,99,235,0.25); transform: translateY(-1px); }
.aegm-engine-logo { width: 44px; height: 44px; border-radius: 10px; background: #f8fafc; display: flex; align-items: center; justify-content: center; }
.aegm-engine-logo img { width: 26px; height: 26px; }
.aegm-engine-body { min-width: 0; display: flex; flex-direction: column; }
.aegm-engine-name { font-weight: 600; color: #0b1220; font-size: 14px; }
.aegm-engine-tech { font-size: 11px; color: #64748b; font-family: ui-monospace, "SFMono-Regular", Menlo, Monaco, Consolas, monospace; }
.aegm-engine-state { font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 999px; letter-spacing: 0.04em; text-transform: uppercase; white-space: nowrap; }
.aegm-engine-allowed       .aegm-engine-state { background: #dcfce7; color: #166534; }
.aegm-engine-blocked       .aegm-engine-state { background: #fee2e2; color: #991b1b; }
.aegm-engine-not_specified .aegm-engine-state { background: #e5e7eb; color: #475569; }
.aegm-engine-blocked { border-color: rgba(239,68,68,0.3); background: rgba(254,226,226,0.25); }

/* ── FEATURES (Free + Pro side-by-side) ──────────────────────────────── */
.aegm-features { padding: 56px 0; background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%); border-top: 1px solid #e5e7eb; border-bottom: 1px solid #e5e7eb; }
.aegm-features-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.aegm-features-col { display: flex; flex-direction: column; }
.aegm-col-banner { display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: wrap; padding: 22px 24px; border: 1px solid #e5e7eb; border-radius: 14px 14px 0 0; border-bottom: 0; background: #ffffff; position: relative; overflow: hidden; }
.aegm-col-banner-text { min-width: 0; flex: 1 1 60%; }
.aegm-col-banner h3 { font-size: 20px; margin: 8px 0 4px; letter-spacing: -0.01em; }
.aegm-col-banner p { margin: 0; color: #64748b; font-size: 13px; }
.aegm-col-banner-free { background: linear-gradient(135deg, #ecfdf5 0%, #ffffff 60%); border-color: #d1fae5; }
.aegm-col-banner-pro { background: linear-gradient(135deg, #fffbeb 0%, #ffffff 60%); border-color: #fde68a; }
.aegm-col-banner-pro::before { content: ""; position: absolute; right: -40px; top: -40px; width: 160px; height: 160px; background: radial-gradient(closest-side, rgba(245,158,11,0.18), transparent); pointer-events: none; }
.aegm-col-banner .aegm-btn { padding: 10px 16px; font-size: 13.5px; flex-shrink: 0; }
.aegm-col-tag { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; padding: 4px 10px; border-radius: 999px; background: #dcfce7; color: #166534; }
.aegm-col-tag-pro { background: #fef3c7; color: #b45309; }

.aegm-feature-cards { list-style: none; padding: 14px; margin: 0; background: #fff; border: 1px solid #e5e7eb; border-top: 0; border-radius: 0 0 14px 14px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.aegm-features-free .aegm-feature-cards { border-color: #d1fae5; }
.aegm-features-pro .aegm-feature-cards { border-color: #fde68a; }
.aegm-feature-card { display: grid; grid-template-columns: 36px 1fr; gap: 12px; align-items: flex-start; padding: 12px; border-radius: 10px; transition: background 0.15s; }
.aegm-feature-card:hover { background: #f8fafc; }
.aegm-features-pro .aegm-feature-card:hover { background: #fffbeb; }
.aegm-feature-icon { width: 36px; height: 36px; border-radius: 9px; background: #eff6ff; color: #2563eb; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.aegm-feature-icon svg { width: 20px; height: 20px; }
.aegm-features-pro .aegm-feature-icon { background: #fef3c7; color: #b45309; }
.aegm-feature-card h4 { font-size: 14.5px; margin: 0 0 3px; color: #0b1220; }
.aegm-feature-card p { margin: 0; font-size: 12.5px; color: #475569; line-height: 1.5; }

@media (max-width: 980px) {
    .aegm-features-cols { grid-template-columns: 1fr; gap: 20px; }
}

/* ── DOWNLOAD MODAL ──────────────────────────────────────────────────── */
.aegm-modal { position: fixed; inset: 0; z-index: 9999; display: none; align-items: center; justify-content: center; padding: 20px; }
.aegm-modal.is-open { display: flex; }
.aegm-modal-backdrop { position: absolute; inset: 0; background: rgba(11,18,32,0.65); backdrop-filter: blur(6px); animation: aegm-fade 0.2s ease-out; }
.aegm-modal-card { position: relative; max-width: 540px; width: 100%; background: #fff; border-radius: 16px; padding: 28px; box-shadow: 0 30px 80px -20px rgba(15,23,42,0.55); animation: aegm-pop 0.22s cubic-bezier(0.2, 0.9, 0.3, 1.2); }
@keyframes aegm-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes aegm-pop { from { opacity: 0; transform: translateY(12px) scale(0.96); } to { opacity: 1; transform: translateY(0) scale(1); } }
.aegm-modal-close { position: absolute; top: 14px; right: 14px; width: 34px; height: 34px; border-radius: 50%; border: 0; background: #f1f5f9; color: #475569; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; transition: background 0.15s, color 0.15s; }
.aegm-modal-close:hover { background: #e5e7eb; color: #0b1220; }
.aegm-modal-head { margin-bottom: 20px; }
.aegm-modal-eyebrow { display: inline-flex; align-items: center; gap: 8px; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #2563eb; margin-bottom: 10px; }
.aegm-modal-head h3 { font-size: 22px; margin: 0 0 6px; letter-spacing: -0.01em; }
.aegm-modal-head p { margin: 0; color: #64748b; font-size: 14px; }
.aegm-modal-options { display: grid; gap: 10px; margin-bottom: 14px; }
.aegm-modal-option { display: grid; grid-template-columns: 48px 1fr auto; gap: 14px; align-items: center; padding: 16px 18px; border-radius: 12px; text-decoration: none; border: 2px solid transparent; transition: border-color 0.15s, background 0.15s, transform 0.1s; outline: none; }
.aegm-modal-option:focus-visible { border-color: #2563eb; }
.aegm-modal-option:hover { transform: translateY(-1px); }
.aegm-modal-option-primary { background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%); color: #fff; box-shadow: 0 8px 22px -10px rgba(37,99,235,0.6); }
.aegm-modal-option-primary:hover { background: linear-gradient(135deg, #1d4ed8 0%, #1e40af 100%); color: #fff; }
.aegm-modal-option-secondary { background: #f8fafc; color: #0b1220; border-color: #e5e7eb; }
.aegm-modal-option-secondary:hover { background: #fff; border-color: #2563eb; color: #0b1220; }
.aegm-modal-icon { width: 48px; height: 48px; border-radius: 12px; background: rgba(255,255,255,0.18); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.aegm-modal-option-secondary .aegm-modal-icon { background: #eff6ff; color: #2563eb; }
.aegm-modal-icon-wp { color: #21759b; background: #f0f6fa; }
.aegm-modal-text { display: flex; flex-direction: column; min-width: 0; }
.aegm-modal-text strong { font-size: 15px; font-weight: 700; margin-bottom: 2px; }
.aegm-modal-text span { font-size: 12.5px; opacity: 0.85; line-height: 1.45; }
.aegm-modal-cta { font-size: 13px; font-weight: 600; opacity: 0.9; white-space: nowrap; }
.aegm-modal-foot { text-align: center; font-size: 12px; color: #64748b; margin: 14px 0 0; }

@media (max-width: 540px) {
    .aegm-modal-card { padding: 22px; }
    .aegm-modal-option { grid-template-columns: 40px 1fr; row-gap: 4px; }
    .aegm-modal-cta { grid-column: 2; justify-self: start; }
    .aegm-modal-icon { width: 40px; height: 40px; }
}

/* ── HOW IT WORKS (animated) ─────────────────────────────────────────── */
.aegm-how { padding: 80px 0; background: #0b1220; color: #cbd5e1; position: relative; overflow: hidden; }
.aegm-how::before { content: ""; position: absolute; inset: -2px -2px auto -2px; height: 1px; background: linear-gradient(90deg, transparent, rgba(37,99,235,0.6), transparent); animation: aegm-glow 6s linear infinite; }
@keyframes aegm-glow { 0% { transform: translateX(-30%); } 100% { transform: translateX(30%); } }
.aegm-how .aegm-section-head h2 { color: #fff; font-size: clamp(26px, 2.5vw, 34px); }
.aegm-how .aegm-section-head p { color: #94a3b8; }

.aegm-flow { list-style: none; padding: 0; margin: 48px 0 32px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; position: relative; }
.aegm-flow::before { content: ""; position: absolute; left: 8%; right: 8%; top: 26px; height: 2px; background: linear-gradient(90deg, rgba(37,99,235,0.15) 0%, rgba(37,99,235,0.6) 50%, rgba(37,99,235,0.15) 100%); background-size: 200% 100%; animation: aegm-flow-line 4s linear infinite; z-index: 0; }
@keyframes aegm-flow-line { 0% { background-position: 0% 0; } 100% { background-position: 200% 0; } }

.aegm-flow-step { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; opacity: 0; transform: translateY(12px); animation: aegm-flow-in 0.5s ease-out forwards; animation-delay: var(--aegm-step-delay, 0s); }
@keyframes aegm-flow-in { to { opacity: 1; transform: translateY(0); } }
.aegm-flow-num { width: 52px; height: 52px; border-radius: 50%; background: linear-gradient(135deg, #2563eb, #1d4ed8); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 20px; box-shadow: 0 12px 30px -12px rgba(37,99,235,0.7), 0 0 0 6px rgba(37,99,235,0.12); margin-bottom: -26px; position: relative; z-index: 2; }
.aegm-flow-num span { display: block; }

.aegm-flow-card { background: rgba(15,23,42,0.7); backdrop-filter: blur(8px); border: 1px solid rgba(148,163,184,0.18); border-radius: 16px; padding: 36px 22px 22px; text-align: center; width: 100%; transition: transform 0.2s, border-color 0.2s, background 0.2s; }
.aegm-flow-card:hover { transform: translateY(-3px); border-color: rgba(37,99,235,0.55); background: rgba(15,23,42,0.85); }
.aegm-flow-icon { width: 48px; height: 48px; margin: 4px auto 12px; border-radius: 12px; background: rgba(37,99,235,0.18); color: #93c5fd; display: flex; align-items: center; justify-content: center; position: relative; }
.aegm-flow-icon svg { width: 24px; height: 24px; }
.aegm-flow-icon-scan .aegm-flow-pulse { position: absolute; inset: -4px; border-radius: 14px; border: 2px solid rgba(37,99,235,0.5); opacity: 0; animation: aegm-scan-pulse 2.2s ease-out infinite; }
@keyframes aegm-scan-pulse {
    0%   { transform: scale(0.85); opacity: 0; }
    50%  { opacity: 0.85; }
    100% { transform: scale(1.4); opacity: 0; }
}
.aegm-flow-card h3 { color: #fff; font-size: 18px; margin: 0 0 8px; }
.aegm-flow-card p { color: #cbd5e1; font-size: 13.5px; line-height: 1.55; margin: 0 0 16px; }
.aegm-flow-proof { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; }
.aegm-flow-proof span { font-size: 11px; font-weight: 600; padding: 4px 10px; border-radius: 999px; background: rgba(37,99,235,0.18); color: #93c5fd; border: 1px solid rgba(37,99,235,0.3); }

.aegm-how-cta { text-align: center; margin-top: 40px; }
.aegm-how-cta-note { font-size: 12.5px; color: #64748b; margin: 12px 0 0; }

@media (max-width: 860px) {
    .aegm-flow { grid-template-columns: 1fr; gap: 30px; }
    .aegm-flow::before { display: none; }
}

/* ── FINAL CTA ───────────────────────────────────────────────────────── */
.aegm-final-cta { padding: 64px 0; background: #0b1220; color: #fff; text-align: center; border-top: 1px solid rgba(148,163,184,0.18); }
.aegm-final-cta h2 { color: #fff; font-size: clamp(24px, 2.4vw, 32px); }
.aegm-final-cta p { color: #cbd5e1; }
.aegm-final-cta .aegm-btn-primary { margin-top: 12px; }

/* Empty / domain-entry states */
.aegm-empty { padding: 80px 0; text-align: center; }
.aegm-empty h1 { font-size: 32px; }
.aegm-domain-form { display: flex; gap: 8px; justify-content: center; max-width: 460px; margin: 24px auto 0; }
.aegm-domain-form input { flex: 1; padding: 12px 14px; border: 1px solid #cbd5e1; border-radius: 10px; font-size: 16px; }
.aegm-domain-form button { padding: 12px 18px; border: 0; background: #2563eb; color: #fff; border-radius: 10px; font-weight: 600; cursor: pointer; }
.aegm-error { color: #991b1b; font-size: 14px; margin-top: 12px; }

/* ── DEEP SCAN (v0.2) ───────────────────────────────────────────────── */
.aegm-deepscan { padding: 64px 0; background: linear-gradient(180deg, #fff 0%, #f8fafc 100%); border-top: 1px solid rgba(148,163,184,0.18); }
.aegm-deepscan .aegm-section-head { max-width: 720px; margin: 0 auto 36px; }
.aegm-deepscan .aegm-section-head h2 { font-size: clamp(22px, 2.4vw, 30px); }

.aegm-deepscan-live { padding: 28px; margin-bottom: 28px; background: #0b1220; color: #fff; border: 1px solid rgba(51,141,255,0.4); border-radius: 18px; box-shadow: 0 24px 56px -28px rgba(8,15,30,0.55); }
.aegm-deepscan-live.is-positive { border-color: rgba(34,197,94,0.55); }
.aegm-deepscan-live.is-negative { border-color: rgba(239,68,68,0.55); }
.aegm-deepscan-live.is-mixed    { border-color: rgba(245,158,11,0.55); }
.aegm-deepscan-live.is-neutral  { border-color: rgba(148,163,184,0.4); }
.aegm-deepscan-live header { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 14px; flex-wrap: wrap; }
.aegm-deepscan-live h3 { color: #fff; margin: 0; font-size: 18px; flex: 1 1 320px; }
.aegm-deepscan-live-desc { color: #fff; font-size: 15.5px; line-height: 1.55; margin: 0 0 16px; font-weight: 500; }

.aegm-deepscan-rep { margin: 0 0 18px; padding: 16px 18px; background: rgba(51,141,255,0.08); border-left: 3px solid rgba(51,141,255,0.6); border-radius: 8px; }
.aegm-deepscan-live.is-positive .aegm-deepscan-rep { border-left-color: rgba(34,197,94,0.7); background: rgba(34,197,94,0.08); }
.aegm-deepscan-live.is-negative .aegm-deepscan-rep { border-left-color: rgba(239,68,68,0.7); background: rgba(239,68,68,0.08); }
.aegm-deepscan-live.is-mixed    .aegm-deepscan-rep { border-left-color: rgba(245,158,11,0.7); background: rgba(245,158,11,0.08); }
.aegm-deepscan-rep-label { display: block; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #94a3b8; margin-bottom: 6px; }
.aegm-deepscan-rep-text { color: #e2e8f0; font-size: 14.5px; line-height: 1.6; margin: 0; }

.aegm-deepscan-themes { margin: 0 0 18px; }
.aegm-deepscan-themes-label { display: block; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #94a3b8; margin-bottom: 8px; }
.aegm-deepscan-themes ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.aegm-deepscan-themes li { font-size: 12.5px; font-weight: 600; padding: 5px 12px; border-radius: 999px; background: rgba(51,141,255,0.15); color: #93c5fd; border: 1px solid rgba(51,141,255,0.3); }

.aegm-deepscan-cites { margin: 0 0 18px; }
.aegm-deepscan-cites-label { display: block; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #94a3b8; margin-bottom: 8px; }
.aegm-deepscan-cites ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.aegm-deepscan-cites li { display: inline-flex; align-items: center; gap: 6px; background: rgba(255,255,255,0.06); padding: 5px 10px; border-radius: 999px; border: 1px solid rgba(148,163,184,0.18); color: #cbd5e1; font-size: 12px; }
.aegm-deepscan-cites li img { border-radius: 3px; }
.aegm-deepscan-cites li.is-self { background: rgba(34,197,94,0.18); border-color: rgba(34,197,94,0.4); color: #86efac; font-weight: 600; }
.aegm-self-tag { font-size: 10px; font-weight: 700; padding: 1px 6px; border-radius: 999px; background: rgba(34,197,94,0.3); color: #fff; margin-left: 4px; text-transform: uppercase; letter-spacing: 0.05em; }
.aegm-deepscan-live-note { color: #94a3b8; font-size: 13px; line-height: 1.55; margin: 0; }

.aegm-deepscan-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
@media (max-width: 980px) { .aegm-deepscan-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .aegm-deepscan-grid { grid-template-columns: 1fr; } }
.aegm-deepscan-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 14px; padding: 20px; transition: transform 0.18s, box-shadow 0.18s, border-color 0.18s; }
.aegm-deepscan-card:hover { transform: translateY(-2px); box-shadow: 0 12px 28px -16px rgba(15,23,42,0.18); border-color: rgba(51,141,255,0.35); }
.aegm-deepscan-card header { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 12px; }
.aegm-deepscan-card h4 { font-size: 14px; font-weight: 700; margin: 0; color: #0f172a; }
.aegm-deepscan-metric { font-size: 28px; font-weight: 800; color: #0f172a; margin: 0 0 4px; }
.aegm-deepscan-metric strong { font-size: inherit; }
.aegm-deepscan-metric span { font-size: 13px; color: #64748b; font-weight: 500; margin-left: 6px; }
.aegm-deepscan-note { font-size: 13px; color: #475569; line-height: 1.55; margin: 0 0 8px; }
.aegm-deepscan-sub { font-size: 12px; color: #64748b; margin: 0; padding-top: 8px; border-top: 1px dashed #e2e8f0; }

.aegm-deepscan-found { border-color: rgba(34,197,94,0.3); }
.aegm-deepscan-missing { border-color: rgba(239,68,68,0.3); }
.aegm-deepscan-needs_review { border-color: rgba(245,158,11,0.3); }

.aegm-sample-disclosure { margin-top: 14px; }
.aegm-sample-disclosure summary { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; font-size: 13px; font-weight: 600; color: #338dff; padding: 6px 12px; border-radius: 8px; background: rgba(51,141,255,0.08); border: 1px solid rgba(51,141,255,0.18); list-style: none; }
.aegm-sample-disclosure summary::before { content: '▸'; transition: transform .15s; font-size: 10px; }
.aegm-sample-disclosure[open] summary::before { transform: rotate(90deg); }
.aegm-sample-disclosure summary::-webkit-details-marker { display: none; }
.aegm-sample-list { padding: 14px 16px; margin-top: 8px; background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; }
.aegm-sample-howto { font-size: 13px; color: #475569; line-height: 1.55; margin: 0 0 12px; }
.aegm-sample-list ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 4px; }
.aegm-sample-list li { font-size: 12.5px; color: #334155; }
.aegm-sample-list code { background: #f1f5f9; padding: 2px 8px; border-radius: 6px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; }

/* ── EMPTY-STATE HERO (ranks for "free AEO audit for WordPress") ─────── */
/* Mirrors the citation-tracker hero pattern: gradient pill, big Barlow H1
   with em-gradient highlight, sub copy, primary CTA form, dark stat card. */
.aegm-empty-hero { padding: 80px 0 56px; text-align: center; position: relative; overflow: hidden; background: linear-gradient(180deg, #fff 0%, #f8faff 100%); }
.aegm-empty-hero::before {
    content: ""; position: absolute; inset: 0;
    background:
        radial-gradient(60% 50% at 50% 0%, rgba(0,98,255,0.08), transparent 60%),
        radial-gradient(40% 40% at 80% 30%, rgba(16,185,129,0.06), transparent 70%);
    pointer-events: none;
}
.aegm-eh-container { position: relative; max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.aegm-eh-inner { max-width: 880px; margin: 0 auto; }
/* Win against any theme h1 styles by being scoped + specific. */
.aegm-empty-hero h1.aegm-eh-tier {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 8px 16px; border-radius: 999px;
    background: linear-gradient(135deg, #0062ff, #0047cc);
    color: #fff !important;
    font-size: 12px; font-weight: 700;
    letter-spacing: 0.06em; text-transform: uppercase;
    box-shadow: 0 6px 20px rgba(0,98,255,0.25);
    margin: 0 0 22px;
    line-height: 1.2;
    font-family: 'Inter', system-ui, sans-serif;
}
.aegm-empty-hero h1.aegm-eh-tier i { color: #fff !important; }
.aegm-eh-h1 {
    font-family: 'Barlow', sans-serif; font-weight: 800;
    font-size: clamp(34px, 5vw, 60px); line-height: 1.05; letter-spacing: -0.02em;
    color: #0f172a; margin: 0 0 18px;
}
.aegm-eh-h1 em {
    font-style: normal;
    background: linear-gradient(135deg, #0062ff 0%, #00c2ff 100%);
    -webkit-background-clip: text; background-clip: text; color: transparent;
}
.aegm-eh-sub { font-size: 18px; color: #475569; max-width: 660px; margin: 0 auto 28px; line-height: 1.6; }

.aegm-eh-form { display: flex; gap: 10px; justify-content: center; max-width: 540px; margin: 0 auto 18px; flex-wrap: wrap; }
.aegm-eh-form input { flex: 1 1 240px; padding: 14px 18px; font-size: 16px; border-radius: 12px; border: 1.5px solid #cbd5e1; background: #fff; outline: none; transition: border-color .15s, box-shadow .15s; }
.aegm-eh-form input:focus { border-color: #338dff; box-shadow: 0 0 0 4px rgba(51,141,255,0.15); }
.aegm-eh-form button {
    display: inline-flex; align-items: center; gap: 8px;
    background: linear-gradient(135deg, #0062ff, #0047cc); color: #fff;
    padding: 14px 24px; border-radius: 12px; border: 0;
    font-weight: 700; font-size: 15px; cursor: pointer;
    box-shadow: 0 10px 30px rgba(0,98,255,0.3);
    transition: transform .15s, box-shadow .15s;
}
.aegm-eh-form button:hover { transform: translateY(-2px); box-shadow: 0 14px 38px rgba(0,98,255,0.38); }
.aegm-eh-error { color: #b91c1c; font-size: 14px; margin: 0 0 14px; }

.aegm-eh-trust { display: flex; gap: 18px; justify-content: center; flex-wrap: wrap; list-style: none; padding: 0; margin: 0; }
.aegm-eh-trust li { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 500; color: #475569; }
.aegm-eh-trust li svg { color: #10b981; }

/* Light sample-audit preview card. Matches the look of the real audit results. */
.aegm-eh-card {
    margin: 48px auto 0; max-width: 760px;
    background: #fff; color: #0f172a;
    border-radius: 20px; padding: 24px 26px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 24px 60px -28px rgba(15,23,42,0.18);
    text-align: left;
    position: relative;
}
.aegm-eh-card-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding-bottom: 14px; margin-bottom: 18px; border-bottom: 1px solid #f1f5f9; }
.aegm-eh-card-label { font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: #338dff; }
.aegm-eh-card-domain { font-size: 13px; color: #94a3b8; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }

.aegm-eh-card-row { display: grid; grid-template-columns: minmax(160px, 1fr) 2fr; gap: 28px; align-items: center; }
@media (max-width: 720px) { .aegm-eh-card-row { grid-template-columns: 1fr; gap: 18px; } }

.aegm-eh-card-stat { text-align: left; }
.aegm-eh-card-num { font-family: 'Barlow', sans-serif; font-size: 64px; font-weight: 800; line-height: 1; color: #0f172a; }
.aegm-eh-card-num-frac { font-size: 32px; font-weight: 700; color: #94a3b8; margin-left: 4px; }
.aegm-eh-card-stat-label { font-size: 13px; font-weight: 600; color: #338dff; margin-top: 6px; }
.aegm-eh-card-meta { color: #64748b; font-size: 12.5px; margin-top: 8px; }

.aegm-eh-card-checks { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.aegm-eh-card-checks li { display: flex; align-items: center; gap: 10px; font-size: 14px; color: #334155; padding: 8px 12px; background: #f8fafc; border: 1px solid #f1f5f9; border-radius: 10px; }
.aegm-eh-pill { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
.aegm-eh-pill-ok   { background: #10b981; box-shadow: 0 0 0 3px rgba(16,185,129,0.18); }
.aegm-eh-pill-warn { background: #f59e0b; box-shadow: 0 0 0 3px rgba(245,158,11,0.18); }
.aegm-eh-pill-bad  { background: #ef4444; box-shadow: 0 0 0 3px rgba(239,68,68,0.18); }

/* SEO content section follows the hero */
.aegm-empty-content { padding: 56px 0 100px; background: #fff; }
.aegm-seo-content { max-width: 880px; margin: 0 auto; padding: 0 24px; text-align: left; }

/* ── ANIMATED PREVIEW MOCKUPS ────────────────────────────────────────── */
.aegm-preview { padding: 80px 0 64px; background: linear-gradient(180deg, #f8faff 0%, #fff 100%); position: relative; }
.aegm-preview .aegm-section-head-center { text-align: center; max-width: 720px; margin: 0 auto 48px; }
.aegm-preview h2 { font-family: 'Barlow', sans-serif; font-weight: 800; font-size: clamp(26px, 3.4vw, 38px); line-height: 1.15; letter-spacing: -0.02em; color: #0f172a; margin: 12px 0 14px; }
.aegm-preview .aegm-section-head p { font-size: 16px; color: #475569; margin: 0; line-height: 1.55; }

/* Mockup card base */
.aegm-mock {
    max-width: 980px; margin: 0 auto 28px;
    background: #fff; border: 1px solid #e2e8f0; border-radius: 18px;
    padding: 24px 28px;
    box-shadow: 0 24px 56px -32px rgba(15,23,42,0.18);
    opacity: 0; transform: translateY(20px);
    transition: opacity .7s ease-out, transform .7s ease-out;
}
.aegm-mock.is-in { opacity: 1; transform: translateY(0); }
.aegm-mock-head { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 8px; flex-wrap: wrap; }
.aegm-mock-head h3 { font-family: 'Barlow', sans-serif; font-size: 19px; font-weight: 700; margin: 0; color: #0f172a; line-height: 1.3; }
.aegm-mock-tag { font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; padding: 4px 10px; border-radius: 999px; background: rgba(16,185,129,0.12); color: #047857; border: 1px solid rgba(16,185,129,0.3); }
.aegm-mock-tag-blue { background: rgba(51,141,255,0.12); color: #1e6fea; border-color: rgba(51,141,255,0.3); }
.aegm-mock-lede { font-size: 14.5px; color: #475569; line-height: 1.55; margin: 0 0 18px; }

/* Mockup 1: AI crawler grid */
.aegm-mock-engines-grid {
    display: grid; gap: 8px;
    grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 640px) { .aegm-mock-engines-grid { grid-template-columns: 1fr; } }
.aegm-mock-engine {
    display: grid; grid-template-columns: 22px 1fr auto; gap: 12px; align-items: center;
    padding: 10px 14px; border: 1px solid #e2e8f0; border-radius: 10px;
    background: #fff;
    opacity: 0; transform: translateX(-12px);
    transition: opacity .5s ease-out, transform .5s ease-out;
    transition-delay: calc(var(--i) * 70ms);
}
.aegm-mock.is-in .aegm-mock-engine { opacity: 1; transform: translateX(0); }
.aegm-mock-engine-blocked { background: #fef2f2; border-color: rgba(239,68,68,0.25); }
.aegm-mock-engine-allowed { border-color: rgba(16,185,129,0.25); }
.aegm-mock-engine img { border-radius: 4px; }
.aegm-mock-engine-body { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.aegm-mock-engine-name { font-size: 13.5px; font-weight: 700; color: #0f172a; }
.aegm-mock-engine-tech { font-size: 11.5px; color: #94a3b8; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.aegm-mock-engine-state {
    font-size: 11px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase;
    padding: 3px 9px; border-radius: 999px; flex-shrink: 0;
}
.aegm-mock-engine-allowed .aegm-mock-engine-state { background: rgba(16,185,129,0.14); color: #047857; }
.aegm-mock-engine-blocked .aegm-mock-engine-state { background: rgba(239,68,68,0.14); color: #b91c1c; }

/* Mockup 2: Brand sentiment (dark, mirrors the real audit's deep-scan card) */
.aegm-mock-sentiment {
    background: #0b1220; color: #fff;
    border-color: rgba(34,197,94,0.5);
}
.aegm-mock-head-dark h3 { color: #fff; }
.aegm-mock-badge {
    font-size: 12px; font-weight: 700; padding: 5px 12px; border-radius: 999px;
}
.aegm-mock-badge-positive { background: rgba(34,197,94,0.15); color: #86efac; border: 1px solid rgba(34,197,94,0.35); }
.aegm-mock-sentiment-desc {
    color: #fff; font-size: 15px; line-height: 1.55; font-weight: 500;
    margin: 14px 0 18px; min-height: 1.55em;
}
.aegm-mock-sentiment-desc.is-typing::after {
    content: '▎'; color: #86efac; margin-left: 2px;
    animation: aegm-blink 0.7s steps(1) infinite;
}
@keyframes aegm-blink { 50% { opacity: 0; } }

.aegm-mock-sentiment-rep {
    margin: 0 0 18px; padding: 14px 16px;
    background: rgba(34,197,94,0.08);
    border-left: 3px solid rgba(34,197,94,0.6);
    border-radius: 8px;
}
.aegm-mock-rep-label, .aegm-mock-themes-label {
    display: block; font-size: 11px; font-weight: 700; letter-spacing: 0.08em;
    text-transform: uppercase; color: #94a3b8; margin-bottom: 6px;
}
.aegm-mock-sentiment-rep p { color: #e2e8f0; font-size: 13.5px; line-height: 1.55; margin: 0; }

.aegm-mock-sentiment-themes ul {
    list-style: none; padding: 0; margin: 0;
    display: flex; flex-wrap: wrap; gap: 6px;
}
.aegm-mock-sentiment-themes li {
    font-size: 12px; font-weight: 600;
    padding: 5px 12px; border-radius: 999px;
    background: rgba(51,141,255,0.15); color: #93c5fd;
    border: 1px solid rgba(51,141,255,0.3);
    opacity: 0; transform: scale(0.9);
    transition: opacity .35s ease-out, transform .35s cubic-bezier(.34,1.56,.64,1);
    transition-delay: var(--d, 0s);
}
.aegm-mock.is-in .aegm-mock-sentiment-themes li {
    opacity: 1; transform: scale(1);
}

/* Mockup 3: Action list */
.aegm-mock-action-list {
    list-style: none; padding: 0; margin: 0;
    display: flex; flex-direction: column; gap: 10px;
}
.aegm-mock-action {
    display: grid; grid-template-columns: 14px 1fr; gap: 14px;
    padding: 14px 16px;
    background: #f8fafc;
    border: 1px solid #f1f5f9;
    border-radius: 12px;
    align-items: start;
    opacity: 0; transform: translateY(8px);
    transition: opacity .5s ease-out, transform .5s ease-out;
    transition-delay: calc(var(--i) * 110ms + 200ms);
}
.aegm-mock.is-in .aegm-mock-action { opacity: 1; transform: translateY(0); }
.aegm-mock-action-dot { width: 10px; height: 10px; border-radius: 50%; margin-top: 6px; flex-shrink: 0; }
.aegm-mock-action-alert { border-color: rgba(239,68,68,0.25); background: #fef9f9; }
.aegm-mock-action-alert .aegm-mock-action-dot { background: #ef4444; box-shadow: 0 0 0 3px rgba(239,68,68,0.16); }
.aegm-mock-action-warn { border-color: rgba(245,158,11,0.25); background: #fffaf0; }
.aegm-mock-action-warn .aegm-mock-action-dot { background: #f59e0b; box-shadow: 0 0 0 3px rgba(245,158,11,0.16); }
.aegm-mock-action h4 { font-size: 14.5px; font-weight: 700; margin: 0 0 4px; color: #0f172a; }
.aegm-mock-action p { font-size: 13.5px; line-height: 1.55; color: #475569; margin: 0 0 8px; }
.aegm-mock-action-feature {
    display: inline-flex; align-items: center; gap: 5px;
    font-size: 12px; font-weight: 700;
    padding: 4px 10px; border-radius: 999px;
    background: rgba(51,141,255,0.1); color: #1e6fea;
}

/* Preview CTA */
.aegm-preview-cta { text-align: center; margin: 36px auto 0; max-width: 540px; }
.aegm-preview-cta p { font-size: 15.5px; color: #334155; margin: 0 0 14px; font-weight: 500; }
.aegm-preview-cta-btn {
    display: inline-flex; align-items: center; gap: 8px;
    background: linear-gradient(135deg, #0062ff, #0047cc); color: #fff !important;
    padding: 14px 28px; border-radius: 12px; border: 0;
    font-weight: 700; font-size: 15px;
    box-shadow: 0 12px 32px rgba(0,98,255,0.32);
    text-decoration: none;
    transition: transform .15s, box-shadow .15s;
}
.aegm-preview-cta-btn:hover { transform: translateY(-2px); box-shadow: 0 16px 40px rgba(0,98,255,0.4); }

@media (prefers-reduced-motion: reduce) {
    .aegm-mock,
    .aegm-mock-engine,
    .aegm-mock-action,
    .aegm-mock-sentiment-themes li {
        opacity: 1 !important; transform: none !important; transition: none !important;
    }
    .aegm-mock-sentiment-desc.is-typing::after { display: none; }
}
.aegm-seo-block { margin-bottom: 48px; }
.aegm-seo-block h2 { font-family: 'Barlow', system-ui, sans-serif; font-size: clamp(22px, 2.4vw, 30px); font-weight: 700; letter-spacing: -0.015em; color: #0f172a; margin: 0 0 16px; }
.aegm-seo-block p { font-size: 15.5px; line-height: 1.65; color: #334155; margin: 0 0 14px; }
.aegm-seo-block code { background: #f1f5f9; padding: 1px 6px; border-radius: 4px; font-size: 13.5px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.aegm-seo-list { list-style: none; padding: 0; margin: 12px 0 0; display: flex; flex-direction: column; gap: 12px; }
.aegm-seo-list li { font-size: 15px; line-height: 1.6; color: #334155; padding: 14px 16px; background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; }
.aegm-seo-list li strong { color: #0f172a; font-weight: 700; }

.aegm-faq { margin-top: 56px; }
.aegm-faq h2 { font-family: 'Barlow', system-ui, sans-serif; font-size: clamp(22px, 2.4vw, 30px); font-weight: 700; letter-spacing: -0.015em; color: #0f172a; margin: 0 0 20px; }
.aegm-faq-item { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; margin-bottom: 10px; transition: border-color .15s, box-shadow .15s; }
.aegm-faq-item[open] { border-color: rgba(51,141,255,0.4); box-shadow: 0 8px 24px -16px rgba(51,141,255,0.25); }
.aegm-faq-item summary { cursor: pointer; padding: 16px 20px; font-size: 15px; font-weight: 600; color: #0f172a; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.aegm-faq-item summary::-webkit-details-marker { display: none; }
.aegm-faq-item summary::after { content: '+'; font-size: 20px; color: #338dff; transition: transform .18s; flex-shrink: 0; }
.aegm-faq-item[open] summary::after { transform: rotate(45deg); }
.aegm-faq-a { padding: 0 20px 18px; font-size: 14.5px; line-height: 1.65; color: #475569; }
