/* =====================================================================
 * AEGNET — Professional design layer
 * Loaded AFTER main.css and responsive.css. Acts as a modernization
 * overlay: preserves existing class names so live pages can opt in
 * by adding `<body class="aegnet-pro">` or just including this file.
 * No JS dependency. No markup changes required for the base look —
 * but the new homepage layout uses new wrapper classes prefixed `ag-`.
 * ===================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Manrope:wght@600;700;800&display=swap');

/* ---------- Design tokens ------------------------------------------- */
:root {
    --ag-red: #c52d2f;
    --ag-red-dark: #9a1d1f;
    --ag-red-soft: rgba(197, 45, 47, 0.08);
    --ag-navy: #0a1f3d;
    --ag-navy-soft: rgba(10, 31, 61, 0.06);
    --ag-ink: #0f172a;
    --ag-text: #334155;
    --ag-mute: #64748b;
    --ag-line: #e2e8f0;
    --ag-surface: #ffffff;
    --ag-bg: #f8fafc;
    --ag-accent: #0ea5e9;
    --ag-radius-lg: 18px;
    --ag-radius-md: 12px;
    --ag-radius-sm: 8px;
    --ag-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.06), 0 1px 3px rgba(15, 23, 42, 0.04);
    --ag-shadow-md: 0 6px 16px rgba(15, 23, 42, 0.08), 0 2px 6px rgba(15, 23, 42, 0.04);
    --ag-shadow-lg: 0 24px 48px rgba(10, 31, 61, 0.14), 0 8px 16px rgba(10, 31, 61, 0.06);
}

/* ---------- Base resets (scoped to .aegnet-pro and .ag- elements) ---- */
body.aegnet-pro {
    font-family: 'Inter', 'Open Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: var(--ag-text);
    background: var(--ag-bg);
    font-size: 16px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body.aegnet-pro h1,
body.aegnet-pro h2,
body.aegnet-pro h3,
body.aegnet-pro h4 {
    font-family: 'Manrope', 'Inter', sans-serif;
    color: var(--ag-ink);
    letter-spacing: -0.02em;
}

body.aegnet-pro h1 { font-size: clamp(2rem, 4vw, 3.25rem); line-height: 1.1; font-weight: 800; }
body.aegnet-pro h2 { font-size: clamp(1.5rem, 2.5vw, 2.25rem); line-height: 1.2; font-weight: 700; }
body.aegnet-pro h3 { font-size: 1.25rem; font-weight: 700; color: var(--ag-ink); }

body.aegnet-pro a { color: var(--ag-red); text-decoration: none; transition: color .15s; }
body.aegnet-pro a:hover { color: var(--ag-red-dark); }

body.aegnet-pro p { color: var(--ag-text); }

/* =====================================================================
 *  TOP NAVIGATION (sticky, transparent over hero, white on scroll)
 * ===================================================================== */
.ag-nav {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    background: transparent;
    transition: background .25s ease, box-shadow .25s ease, padding .25s ease;
    padding: 18px 0;
}
.ag-nav.is-scrolled {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: saturate(140%) blur(8px);
    box-shadow: var(--ag-shadow-sm);
    padding: 10px 0;
}
.ag-nav__inner {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.ag-logo {
    font-family: 'Manrope', sans-serif;
    font-weight: 800;
    font-size: 1.5rem;
    color: #fff;
    letter-spacing: -0.02em;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.ag-logo__mark {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--ag-red) 0%, #e53935 100%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    box-shadow: 0 4px 10px rgba(197, 45, 47, 0.4);
}
.ag-nav.is-scrolled .ag-logo { color: var(--ag-ink); }

.ag-nav__menu {
    display: flex;
    align-items: center;
    gap: 4px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.ag-nav__menu a {
    color: rgba(255, 255, 255, 0.92);
    font-weight: 500;
    padding: 8px 14px;
    border-radius: var(--ag-radius-sm);
    transition: background .15s, color .15s;
}
.ag-nav__menu a:hover {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
}
.ag-nav.is-scrolled .ag-nav__menu a { color: var(--ag-ink); }
.ag-nav.is-scrolled .ag-nav__menu a:hover { background: var(--ag-navy-soft); color: var(--ag-red); }

.ag-nav__cta {
    background: var(--ag-red);
    color: #fff !important;
    padding: 10px 20px !important;
    border-radius: 999px !important;
    font-weight: 600;
    box-shadow: 0 6px 16px rgba(197, 45, 47, 0.35);
}
.ag-nav__cta:hover { background: var(--ag-red-dark) !important; color: #fff !important; }

/* =====================================================================
 *  HERO
 * ===================================================================== */
.ag-hero {
    position: relative;
    min-height: 100vh;
    background:
        radial-gradient(ellipse at 80% -10%, rgba(14, 165, 233, 0.25) 0%, transparent 50%),
        radial-gradient(ellipse at 0% 80%, rgba(197, 45, 47, 0.35) 0%, transparent 50%),
        linear-gradient(135deg, #0a1f3d 0%, #1e293b 60%, #0f172a 100%);
    color: #fff;
    overflow: hidden;
    padding: 120px 0 60px;
}
.ag-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 20% 30%, rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        radial-gradient(circle at 70% 70%, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 60px 60px, 80px 80px;
    pointer-events: none;
}
.ag-container {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
}
.ag-hero__grid {
    position: relative;
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 60px;
    align-items: center;
}
@media (max-width: 880px) {
    .ag-hero__grid { grid-template-columns: 1fr; gap: 32px; }
}
.ag-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: #fff;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 0.85rem;
    font-weight: 500;
    margin-bottom: 20px;
    backdrop-filter: blur(6px);
}
.ag-hero__eyebrow .dot {
    width: 8px; height: 8px; border-radius: 50%;
    background: #22c55e; box-shadow: 0 0 12px #22c55e;
}
.ag-hero h1 {
    color: #fff;
    margin: 0 0 18px;
}
.ag-hero h1 .accent {
    background: linear-gradient(120deg, #ff7e7e 0%, #ffd166 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.ag-hero__sub {
    font-size: 1.15rem;
    color: rgba(255, 255, 255, 0.78);
    margin: 0 0 32px;
    max-width: 520px;
}
.ag-hero__cta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 36px;
}

/* ---------- Buttons -------------------------------------------------- */
.ag-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 26px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none !important;
    border: 2px solid transparent;
    cursor: pointer;
    transition: transform .15s, box-shadow .2s, background .2s;
    line-height: 1;
}
.ag-btn--primary {
    background: var(--ag-red);
    color: #fff;
    box-shadow: 0 10px 24px rgba(197, 45, 47, 0.4);
}
.ag-btn--primary:hover {
    background: var(--ag-red-dark);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(197, 45, 47, 0.5);
}
.ag-btn--ghost {
    background: transparent;
    color: #fff;
    border-color: rgba(255, 255, 255, 0.3);
}
.ag-btn--ghost:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: #fff;
    color: #fff;
}
.ag-btn--dark {
    background: var(--ag-ink);
    color: #fff;
}
.ag-btn--dark:hover { background: #1e293b; color: #fff; transform: translateY(-2px); }

.ag-hero__stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-top: 12px;
    padding-top: 28px;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}
@media (max-width: 600px) { .ag-hero__stats { grid-template-columns: repeat(2, 1fr); } }
.ag-hero__stat {
    font-size: 0.95rem;
    color: rgba(255, 255, 255, 0.7);
}
.ag-hero__stat strong {
    display: block;
    font-family: 'Manrope', sans-serif;
    font-size: 1.6rem;
    color: #fff;
    font-weight: 800;
    margin-bottom: 2px;
}

/* ---------- Hero illustration --------------------------------------- */
.ag-hero__art {
    position: relative;
    aspect-ratio: 1 / 1;
    max-width: 480px;
    margin: 0 auto;
}
.ag-hero__art svg { width: 100%; height: 100%; }
.ag-hero__art .pulse {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(14, 165, 233, 0.18) 0%, transparent 65%);
    animation: ag-pulse 3.5s ease-in-out infinite;
}
@keyframes ag-pulse {
    0%, 100% { transform: scale(1); opacity: .6; }
    50% { transform: scale(1.08); opacity: 1; }
}

/* =====================================================================
 *  GENERIC SECTION
 * ===================================================================== */
.ag-section {
    padding: 96px 0;
    background: var(--ag-surface);
}
.ag-section--muted { background: var(--ag-bg); }
.ag-section--dark { background: var(--ag-ink); color: #fff; }
.ag-section--dark h2 { color: #fff; }

.ag-section__head {
    text-align: center;
    max-width: 720px;
    margin: 0 auto 56px;
}
.ag-section__eyebrow {
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--ag-red);
    margin-bottom: 12px;
}
.ag-section__title { margin: 0 0 14px; }
.ag-section__sub { color: var(--ag-mute); font-size: 1.1rem; }

/* =====================================================================
 *  SERVICE CARDS
 * ===================================================================== */
.ag-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
@media (max-width: 880px) { .ag-cards { grid-template-columns: 1fr; } }

.ag-card {
    background: #fff;
    border: 1px solid var(--ag-line);
    border-radius: var(--ag-radius-lg);
    padding: 32px;
    transition: transform .2s, box-shadow .2s, border-color .2s;
    position: relative;
}
.ag-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--ag-shadow-lg);
    border-color: transparent;
}
.ag-card__icon {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: var(--ag-red-soft);
    color: var(--ag-red);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-bottom: 20px;
}
.ag-card__icon--blue { background: rgba(14, 165, 233, 0.1); color: var(--ag-accent); }
.ag-card__icon--navy { background: var(--ag-navy-soft); color: var(--ag-navy); }
.ag-card h3 { margin: 0 0 8px; }
.ag-card p { color: var(--ag-mute); margin: 0 0 18px; }
.ag-card__link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    color: var(--ag-red);
}
.ag-card__link:hover { gap: 10px; }

/* =====================================================================
 *  PRICING CARDS
 * ===================================================================== */
.ag-pricing {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
@media (max-width: 1100px) { .ag-pricing { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .ag-pricing { grid-template-columns: 1fr; } }

.ag-plan {
    background: #fff;
    border: 1px solid var(--ag-line);
    border-radius: var(--ag-radius-lg);
    padding: 32px 26px;
    text-align: center;
    position: relative;
    transition: transform .2s, box-shadow .2s, border-color .2s;
}
.ag-plan:hover {
    transform: translateY(-4px);
    box-shadow: var(--ag-shadow-md);
}
.ag-plan--featured {
    border: 2px solid var(--ag-red);
    box-shadow: var(--ag-shadow-md);
    transform: translateY(-8px);
}
.ag-plan--featured::before {
    content: "Më e zgjedhura";
    position: absolute;
    top: -14px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--ag-red);
    color: #fff;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    box-shadow: 0 6px 14px rgba(197, 45, 47, 0.35);
}
.ag-plan__speed {
    display: inline-block;
    background: var(--ag-navy-soft);
    color: var(--ag-navy);
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 0.85rem;
    margin-bottom: 16px;
}
.ag-plan__name {
    font-family: 'Manrope', sans-serif;
    font-weight: 700;
    font-size: 1.2rem;
    color: var(--ag-ink);
    margin: 0 0 12px;
}
.ag-plan__price {
    font-family: 'Manrope', sans-serif;
    font-size: 2.6rem;
    font-weight: 800;
    color: var(--ag-ink);
    line-height: 1;
    margin: 0;
}
.ag-plan__price .currency {
    font-size: 1rem;
    font-weight: 600;
    color: var(--ag-mute);
    display: inline-block;
    margin-left: 4px;
}
.ag-plan__period {
    color: var(--ag-mute);
    font-size: 0.95rem;
    margin: 4px 0 22px;
}
.ag-plan__features {
    list-style: none;
    padding: 0;
    margin: 0 0 26px;
    text-align: left;
}
.ag-plan__features li {
    padding: 10px 0;
    border-top: 1px dashed var(--ag-line);
    color: var(--ag-text);
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.95rem;
}
.ag-plan__features li:first-child { border-top: none; }
.ag-plan__features li::before {
    content: "";
    width: 18px; height: 18px;
    border-radius: 50%;
    background: var(--ag-red-soft);
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23c52d2f'><path d='M6.173 12.414L2.343 8.586l1.414-1.414 2.416 2.415 5.657-5.657 1.414 1.415z'/></svg>");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 12px;
    flex-shrink: 0;
}
.ag-plan .ag-btn { width: 100%; justify-content: center; }
.ag-plan--featured .ag-btn--primary { box-shadow: 0 14px 28px rgba(197, 45, 47, 0.45); }

/* =====================================================================
 *  "WHY US" SECTION (icon + headline + copy on dark background)
 * ===================================================================== */
.ag-why {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}
@media (max-width: 880px) { .ag-why { grid-template-columns: 1fr; } }
.ag-why__item {
    text-align: center;
    padding: 24px;
}
.ag-why__icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 18px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.1);
    display: flex; align-items: center; justify-content: center;
    color: #ff7e7e;
    font-size: 26px;
}
.ag-why__item h3 { color: #fff; margin: 0 0 8px; }
.ag-why__item p { color: rgba(255, 255, 255, 0.7); margin: 0; }

/* =====================================================================
 *  CTA BAND
 * ===================================================================== */
.ag-cta {
    background: linear-gradient(135deg, var(--ag-red) 0%, var(--ag-red-dark) 100%);
    border-radius: 24px;
    padding: 56px;
    color: #fff;
    text-align: center;
    box-shadow: var(--ag-shadow-lg);
    position: relative;
    overflow: hidden;
}
.ag-cta::before {
    content: "";
    position: absolute;
    top: -40%;
    right: -10%;
    width: 60%;
    height: 180%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.18) 0%, transparent 60%);
    pointer-events: none;
}
.ag-cta h2 { color: #fff; margin: 0 0 12px; }
.ag-cta p { color: rgba(255, 255, 255, 0.85); margin: 0 0 28px; font-size: 1.1rem; }
.ag-cta .ag-btn--primary { background: #fff; color: var(--ag-red); box-shadow: 0 10px 24px rgba(0,0,0,0.2); }
.ag-cta .ag-btn--primary:hover { background: #f4f4f4; color: var(--ag-red-dark); }

/* =====================================================================
 *  FOOTER
 * ===================================================================== */
.ag-footer {
    background: var(--ag-ink);
    color: rgba(255, 255, 255, 0.7);
    padding: 64px 0 32px;
}
.ag-footer__grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1fr;
    gap: 40px;
    margin-bottom: 48px;
}
@media (max-width: 880px) { .ag-footer__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .ag-footer__grid { grid-template-columns: 1fr; } }

.ag-footer h4 {
    color: #fff;
    font-family: 'Manrope', sans-serif;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 0 0 18px;
}
.ag-footer ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.ag-footer ul li {
    margin-bottom: 10px;
}
.ag-footer ul a {
    color: rgba(255, 255, 255, 0.7);
    transition: color .15s;
}
.ag-footer ul a:hover { color: #fff; }

.ag-footer__brand p {
    color: rgba(255, 255, 255, 0.6);
    margin: 16px 0;
    max-width: 320px;
    line-height: 1.6;
}
.ag-footer__social {
    display: flex;
    gap: 10px;
}
.ag-footer__social a {
    width: 38px; height: 38px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.08);
    display: flex; align-items: center; justify-content: center;
    color: #fff;
    transition: background .15s, transform .15s;
}
.ag-footer__social a:hover {
    background: var(--ag-red);
    transform: translateY(-2px);
}

.ag-footer__bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    padding-top: 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    color: rgba(255, 255, 255, 0.5);
    font-size: 0.9rem;
}
.ag-footer__bottom a { color: rgba(255, 255, 255, 0.7); }

/* =====================================================================
 *  REVEAL ON SCROLL (used by mockup JS)
 * ===================================================================== */
.ag-reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .6s ease, transform .6s ease;
}
.ag-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* =====================================================================
 *  INTERIOR PAGE HERO (for about/contact/services/pricing when applied)
 * ===================================================================== */
.ag-page-hero {
    background: linear-gradient(135deg, var(--ag-navy) 0%, #1e293b 100%);
    color: #fff;
    padding: 140px 0 60px;
    position: relative;
    overflow: hidden;
}
.ag-page-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 80% 30%, rgba(197, 45, 47, 0.25) 0%, transparent 50%),
        radial-gradient(circle at 10% 90%, rgba(14, 165, 233, 0.2) 0%, transparent 50%);
    pointer-events: none;
}
.ag-page-hero__inner { position: relative; }
.ag-page-hero h1 { color: #fff; margin: 0 0 12px; }
.ag-page-hero .crumbs { color: rgba(255, 255, 255, 0.6); font-size: 0.95rem; }
.ag-page-hero .crumbs a { color: rgba(255, 255, 255, 0.8); }

/* Spacer so first section after fixed nav clears it on interior pages */
.ag-nav-spacer { height: 72px; }

/* =====================================================================
 *  SPECIFICITY OVERRIDES
 *  These rules sit at the end so they win against the base
 *  `body.aegnet-pro h1/h2/p/a` rules that would otherwise repaint
 *  dark-section content with light-section colors.
 *  Every selector below is intentionally prefixed with `body.aegnet-pro`
 *  to bump specificity above the base rules.
 * ===================================================================== */

/* ---------- HERO text ---------- */
body.aegnet-pro .ag-hero h1 { color: #fff; }
body.aegnet-pro .ag-hero h1 .accent {
    background: linear-gradient(120deg, #ffb86b 0%, #ffd166 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}
body.aegnet-pro .ag-hero .ag-hero__sub { color: rgba(255, 255, 255, 0.88); }
body.aegnet-pro .ag-hero .ag-hero__eyebrow { color: #fff; }
body.aegnet-pro .ag-hero .ag-hero__stat { color: rgba(255, 255, 255, 0.8); }
body.aegnet-pro .ag-hero .ag-hero__stat strong { color: #fff; }

/* ---------- Buttons (links styled as buttons) ---------- */
body.aegnet-pro a.ag-btn,
body.aegnet-pro .ag-btn { text-decoration: none; }

body.aegnet-pro a.ag-btn--primary,
body.aegnet-pro .ag-btn--primary { color: #fff; background: var(--ag-red); }
body.aegnet-pro a.ag-btn--primary:hover,
body.aegnet-pro .ag-btn--primary:hover { color: #fff; background: var(--ag-red-dark); }

body.aegnet-pro a.ag-btn--ghost,
body.aegnet-pro .ag-btn--ghost {
    color: #fff;
    background: transparent;
    border-color: rgba(255, 255, 255, 0.45);
}
body.aegnet-pro a.ag-btn--ghost:hover,
body.aegnet-pro .ag-btn--ghost:hover { color: #fff; background: rgba(255, 255, 255, 0.12); border-color: #fff; }

body.aegnet-pro a.ag-btn--dark,
body.aegnet-pro .ag-btn--dark { color: #fff; background: var(--ag-ink); }
body.aegnet-pro a.ag-btn--dark:hover,
body.aegnet-pro .ag-btn--dark:hover { color: #fff; background: #1e293b; }

/* CTA pill on red gradient band uses inverted primary */
body.aegnet-pro .ag-cta a.ag-btn--primary,
body.aegnet-pro .ag-cta .ag-btn--primary { background: #fff; color: var(--ag-red); }
body.aegnet-pro .ag-cta a.ag-btn--primary:hover,
body.aegnet-pro .ag-cta .ag-btn--primary:hover { background: #f4f4f4; color: var(--ag-red-dark); }

/* ---------- Section heads ---------- */
body.aegnet-pro .ag-section__eyebrow { color: var(--ag-red); }
body.aegnet-pro .ag-section__title { color: var(--ag-ink); }
body.aegnet-pro .ag-section__sub { color: var(--ag-mute); }

/* ---------- Dark section ---------- */
body.aegnet-pro .ag-section--dark { background: var(--ag-ink); }
body.aegnet-pro .ag-section--dark h2,
body.aegnet-pro .ag-section--dark h3,
body.aegnet-pro .ag-section--dark .ag-section__title { color: #fff; }
body.aegnet-pro .ag-section--dark p,
body.aegnet-pro .ag-section--dark .ag-section__sub { color: rgba(255, 255, 255, 0.78); }
body.aegnet-pro .ag-section--dark .ag-why__item h3 { color: #fff; }
body.aegnet-pro .ag-section--dark .ag-why__item p { color: rgba(255, 255, 255, 0.78); }

/* ---------- CTA band ---------- */
body.aegnet-pro .ag-cta h2 { color: #fff; }
body.aegnet-pro .ag-cta p { color: rgba(255, 255, 255, 0.92); }

/* ---------- Footer ---------- */
body.aegnet-pro .ag-footer { color: rgba(255, 255, 255, 0.78); }
body.aegnet-pro .ag-footer h4 { color: #fff; }
body.aegnet-pro .ag-footer a { color: rgba(255, 255, 255, 0.78); }
body.aegnet-pro .ag-footer a:hover { color: #fff; }
body.aegnet-pro .ag-footer__brand p { color: rgba(255, 255, 255, 0.72); }
body.aegnet-pro .ag-footer__bottom { color: rgba(255, 255, 255, 0.6); }
body.aegnet-pro .ag-footer__bottom a { color: rgba(255, 255, 255, 0.85); }
body.aegnet-pro .ag-footer .ag-logo { color: #fff; }

/* ---------- Interior page hero ---------- */
body.aegnet-pro .ag-page-hero h1 { color: #fff; }
body.aegnet-pro .ag-page-hero .crumbs { color: rgba(255, 255, 255, 0.78); }
body.aegnet-pro .ag-page-hero .crumbs a { color: #fff; text-decoration: underline; }

/* ---------- Nav ---------- */
body.aegnet-pro .ag-nav__menu a { color: rgba(255, 255, 255, 0.92); }
body.aegnet-pro .ag-nav__menu a:hover { background: rgba(255, 255, 255, 0.12); color: #fff; }
body.aegnet-pro .ag-nav.is-scrolled .ag-nav__menu a { color: var(--ag-ink); }
body.aegnet-pro .ag-nav.is-scrolled .ag-nav__menu a:hover { background: var(--ag-red-soft); color: var(--ag-red); }
body.aegnet-pro .ag-nav__cta,
body.aegnet-pro a.ag-nav__cta { color: #fff; background: var(--ag-red); }
body.aegnet-pro .ag-nav.is-scrolled .ag-nav__cta,
body.aegnet-pro .ag-nav.is-scrolled a.ag-nav__cta { color: #fff; background: var(--ag-red); }
body.aegnet-pro .ag-logo { color: #fff; }
body.aegnet-pro .ag-nav.is-scrolled .ag-logo { color: var(--ag-ink); }

/* ---------- Card text on light bg (force readable colors) ---------- */
body.aegnet-pro .ag-card h3 { color: var(--ag-ink); }
body.aegnet-pro .ag-card p { color: var(--ag-mute); }
body.aegnet-pro .ag-card__link { color: var(--ag-red); }

/* ---------- Plan cards ---------- */
body.aegnet-pro .ag-plan .ag-plan__name { color: var(--ag-ink); }
body.aegnet-pro .ag-plan .ag-plan__price { color: var(--ag-ink); }
body.aegnet-pro .ag-plan .ag-plan__period { color: var(--ag-mute); }
body.aegnet-pro .ag-plan .ag-plan__features li { color: var(--ag-text); }

/* ---------- Contact page card text ---------- */
body.aegnet-pro .ag-contact-card h3 { color: var(--ag-ink); }
body.aegnet-pro .ag-contact-card p { color: var(--ag-mute); }
body.aegnet-pro .ag-contact-card a { color: var(--ag-text); }
body.aegnet-pro .ag-contact-card a:hover { color: var(--ag-red); }

/* ---------- Accessibility statement card text ---------- */
body.aegnet-pro .a11y-statement h2 { color: var(--ag-ink); }
body.aegnet-pro .a11y-statement p,
body.aegnet-pro .a11y-statement li { color: var(--ag-text); }
body.aegnet-pro .a11y-statement a { color: var(--ag-red); }
body.aegnet-pro .a11y-statement strong { color: var(--ag-ink); }
