/* =========================================================================
   Appleton Investment Group — Homepage Redesign
   Everything in this file is scoped under .kb-home so it can only ever
   affect index.php. No other page includes this class, so nothing else
   on the site is touched by these rules.
   Signature motif: the "arch" from the Appleton logo, reused as a
   recurring frame shape across the hero image, plan cards and step badges.
   ========================================================================= */

.kb-home {
    --kbr-navy: #1B1B36;
    --kbr-navy-2: #29294E;
    --kbr-orange: #FF5100;
    --kbr-orange-2: #FF7A3D;
    --kbr-cream: #FBF8F3;
    --kbr-line: #E7E2D8;
    --kbr-paper: #FFFFFF;
    --kbr-ink: #29294E;
    --kbr-ink-soft: rgba(41, 41, 78, 0.68);
    --kbr-serif: "Antic Didone", serif;
    --kbr-sans: "Readex Pro", sans-serif;
    overflow-x: hidden;
}

.kb-home * {
    box-sizing: border-box;
}

.kb-home .kbr-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--kbr-sans);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--kbr-orange);
    padding: 7px 16px;
    border: 1px solid rgba(255, 81, 0, 0.28);
    border-radius: 999px;
    background: rgba(255, 81, 0, 0.06);
    margin-bottom: 18px;
}

.kb-home .kbr-eyebrow::before {
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--kbr-orange);
    display: inline-block;
}

.kb-home .kbr-eyebrow--light {
    color: #ffd9c2;
    border-color: rgba(255, 217, 194, 0.35);
    background: rgba(255, 255, 255, 0.06);
}

.kb-home .kbr-eyebrow--light::before {
    background: #ffd9c2;
}

.kb-home .kbr-heading {
    font-family: var(--kbr-serif);
    font-weight: 400;
    color: var(--kbr-navy-2);
    line-height: 1.15;
    font-size: clamp(28px, 3.6vw, 42px);
    margin-bottom: 18px;
}

.kb-home .kbr-heading--light {
    color: #fff;
}

.kb-home .kbr-lede {
    font-family: var(--kbr-sans);
    color: var(--kbr-ink-soft);
    font-size: 16px;
    line-height: 1.7;
    max-width: 640px;
}

.kb-home .kbr-lede--light {
    color: rgba(255, 255, 255, 0.72);
}

.kb-home .kbr-section-head {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 48px;
}

.kb-home .kbr-section-head .kbr-lede {
    margin-left: auto;
    margin-right: auto;
}

.kb-home .kbr-section {
    padding: 88px 0;
    position: relative;
}

.kb-home .kbr-section--cream {
    background: var(--kbr-cream);
}

.kb-home .kbr-section--navy {
    background: linear-gradient(180deg, var(--kbr-navy) 0%, #22224a 100%);
}

@media (max-width: 767.98px) {
    .kb-home .kbr-section {
        padding: 56px 0;
    }
}

/* ---------------------------------------------------------------------
   HERO
   --------------------------------------------------------------------- */
.kb-home .kbr-hero {
    position: relative;
    background: var(--kbr-navy);
    padding: 76px 0 96px;
    overflow: hidden;
}

.kb-home .kbr-hero-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    opacity: 0.4;
}

.kb-home .kbr-hero-veil {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(60% 55% at 18% 20%, rgba(255, 81, 0, 0.18), transparent 60%),
        linear-gradient(115deg, rgba(27, 27, 54, 0.97) 30%, rgba(27, 27, 54, 0.78) 62%, rgba(27, 27, 54, 0.94) 100%);
}

.kb-home .kbr-hero .container {
    position: relative;
    z-index: 2;
}

.kb-home .kbr-hero-grid {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 56px;
    align-items: center;
}

@media (max-width: 991.98px) {
    .kb-home .kbr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}

.kb-home .kbr-hero-title {
    font-family: var(--kbr-serif);
    font-weight: 400;
    color: #fff;
    font-size: clamp(34px, 5vw, 58px);
    line-height: 1.12;
    margin-bottom: 22px;
}

.kb-home .kbr-hero-title span {
    color: var(--kbr-orange);
    font-style: italic;
}

.kb-home .kbr-hero-text {
    font-family: var(--kbr-sans);
    color: rgba(255, 255, 255, 0.7);
    font-size: 16px;
    line-height: 1.75;
    max-width: 520px;
    margin-bottom: 32px;
}

.kb-home .kbr-hero-actions {
    display: flex;
    align-items: center;
    gap: 28px;
    flex-wrap: wrap;
    margin-bottom: 44px;
}

.kb-home .kbr-hero-link {
    font-family: var(--kbr-sans);
    font-weight: 500;
    font-size: 15px;
    color: #fff;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.35);
    padding-bottom: 3px;
    transition: border-color .2s ease, color .2s ease;
}

.kb-home .kbr-hero-link:hover {
    color: var(--kbr-orange-2);
    border-color: var(--kbr-orange-2);
}

.kb-home .kbr-hero-stats {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.kb-home .kbr-stat-chip {
    display: flex;
    flex-direction: column;
    padding: 14px 20px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    min-width: 132px;
}

.kb-home .kbr-stat-chip strong {
    font-family: var(--kbr-serif);
    font-size: 22px;
    color: #fff;
    font-weight: 400;
}

.kb-home .kbr-stat-chip span {
    font-family: var(--kbr-sans);
    font-size: 12px;
    color: rgba(255, 255, 255, 0.55);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-top: 4px;
}

/* Arch-shaped image frame — the recurring signature motif */
.kb-home .kbr-hero-visual,
.kb-home .kbr-split-visual {
    display: flex;
    justify-content: center;
    width: 100%;
}

.kb-home .kbr-hero-frame {
    position: relative;
    width: 100%;
    max-width: 420px;
    height: 460px;
    border-radius: 220px 220px 20px 20px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow: 0 40px 80px -20px rgba(0, 0, 0, 0.55);
    background: #0f0f22;
    flex-shrink: 0;
}

.kb-home .kbr-hero-frame::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 55%, rgba(27, 27, 54, 0.55) 100%);
    z-index: 1;
}

.kb-home .kbr-hero-frame img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block;
}

.kb-home .kbr-hero-frame--sm {
    max-width: 480px;
    height: 380px;
    border-radius: 160px 160px 16px 16px;
}

@media (max-width: 991.98px) {
    .kb-home .kbr-hero-frame {
        height: 420px;
    }

    .kb-home .kbr-hero-frame--sm {
        height: 340px;
    }
}

@media (max-width: 575.98px) {
    .kb-home .kbr-hero-frame {
        height: 360px;
    }

    .kb-home .kbr-hero-frame--sm {
        height: 300px;
    }
}

/* ---------------------------------------------------------------------
   WAYS TO INVEST cards
   --------------------------------------------------------------------- */
.kb-home .kbr-ways-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 56px;
}

@media (max-width: 991.98px) {
    .kb-home .kbr-ways-grid {
        grid-template-columns: 1fr;
    }
}

.kb-home .kbr-way-card {
    background: var(--kbr-paper);
    border: 1px solid var(--kbr-line);
    border-radius: 18px;
    padding: 32px 28px;
    position: relative;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.kb-home .kbr-way-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 24px;
    bottom: 24px;
    width: 3px;
    background: var(--kbr-orange);
    border-radius: 0 3px 3px 0;
    opacity: 0;
    transition: opacity .25s ease;
}

.kb-home .kbr-way-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 48px -18px rgba(41, 41, 78, 0.22);
    border-color: transparent;
}

.kb-home .kbr-way-card:hover::before {
    opacity: 1;
}

.kb-home .kbr-way-icon {
    width: 56px;
    height: 56px;
    border-radius: 16px 16px 4px 4px;
    background: linear-gradient(145deg, #fff2ea, #ffe0cf);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.kb-home .kbr-way-icon img {
    width: 26px;
    height: 26px;
}

.kb-home .kbr-way-card h3 {
    font-family: var(--kbr-serif);
    font-weight: 400;
    font-size: 21px;
    color: var(--kbr-navy-2);
    margin-bottom: 10px;
}

.kb-home .kbr-way-card p {
    font-family: var(--kbr-sans);
    font-size: 14.5px;
    line-height: 1.65;
    color: var(--kbr-ink-soft);
    margin: 0;
}

/* Video */
.kb-home .kbr-video-block {
    display: flex;
    justify-content: center;
}

.kb-home .kbr-video-frame {
    width: 100%;
    max-width: 920px;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid var(--kbr-line);
    box-shadow: 0 30px 70px -30px rgba(41, 41, 78, 0.35);
}

.kb-home .kbr-video-frame video {
    width: 100%;
    display: block;
}

/* Split (Zero Hassle) */
.kb-home .kbr-split {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 56px;
    align-items: center;
}

@media (max-width: 991.98px) {
    .kb-home .kbr-split {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .kb-home .kbr-split .kbr-split-visual {
        order: -1;
    }
}

.kb-home .kbr-split-copy .btn {
    margin-top: 8px;
}

/* ---------------------------------------------------------------------
   STEPS
   --------------------------------------------------------------------- */
.kb-home .kbr-steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 36px;
    position: relative;
}

@media (max-width: 991.98px) {
    .kb-home .kbr-steps {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}

.kb-home .kbr-step {
    text-align: center;
    position: relative;
    padding: 0 12px;
}

.kb-home .kbr-step::after {
    content: "";
    position: absolute;
    top: 38px;
    left: calc(50% + 60px);
    width: calc(100% - 120px);
    height: 1px;
    background: repeating-linear-gradient(90deg, var(--kbr-line) 0 8px, transparent 8px 16px);
}

.kb-home .kbr-step:last-child::after {
    display: none;
}

@media (max-width: 991.98px) {
    .kb-home .kbr-step::after {
        display: none;
    }
}

.kb-home .kbr-step-badge {
    width: 76px;
    height: 76px;
    margin: 0 auto 22px;
    border-radius: 999px 999px 14px 14px;
    background: linear-gradient(160deg, var(--kbr-navy-2), var(--kbr-navy));
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 16px 30px -12px rgba(41, 41, 78, 0.45);
    position: relative;
    z-index: 1;
}

.kb-home .kbr-step-badge img {
    width: 30px;
    height: 30px;
    filter: brightness(0) invert(1);
}

.kb-home .kbr-step h3 {
    font-family: var(--kbr-serif);
    font-weight: 400;
    font-size: 19px;
    color: var(--kbr-navy-2);
    margin-bottom: 10px;
}

.kb-home .kbr-step p {
    font-family: var(--kbr-sans);
    font-size: 14.5px;
    color: var(--kbr-ink-soft);
    line-height: 1.65;
    max-width: 260px;
    margin: 0 auto;
}

/* ---------------------------------------------------------------------
   PLANS / FUND COMPARE
   --------------------------------------------------------------------- */
.kb-home .kbr-plans-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    align-items: stretch;
}

@media (max-width: 991.98px) {
    .kb-home .kbr-plans-grid {
        grid-template-columns: 1fr;
    }
}

.kb-home .kbr-plan {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 20px;
    padding: 34px 28px;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: transform .25s ease, border-color .25s ease;
}

.kb-home .kbr-plan:hover {
    transform: translateY(-6px);
    border-color: rgba(255, 255, 255, 0.28);
}

.kb-home .kbr-plan--featured {
    background: linear-gradient(160deg, var(--kbr-orange), #d84300);
    border-color: transparent;
}

.kb-home .kbr-plan-badge {
    position: absolute;
    top: -13px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--kbr-navy);
    color: #fff;
    font-family: var(--kbr-sans);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 6px 16px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.kb-home .kbr-plan-name {
    font-family: var(--kbr-serif);
    font-weight: 400;
    font-size: 22px;
    color: #fff;
    margin-bottom: 6px;
}

.kb-home .kbr-plan-rate {
    font-family: var(--kbr-serif);
    font-size: 34px;
    color: #fff;
    margin-bottom: 22px;
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
}

.kb-home .kbr-plan-rate span {
    font-family: var(--kbr-sans);
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
    display: block;
    margin-top: 4px;
}

.kb-home .kbr-plan-list {
    list-style: none;
    padding: 0;
    margin: 0 0 28px;
    flex: 1;
}

.kb-home .kbr-plan-list li {
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: var(--kbr-sans);
    font-size: 14px;
    color: rgba(255, 255, 255, 0.82);
    padding: 8px 0;
}

.kb-home .kbr-plan-list img {
    flex-shrink: 0;
}

.kb-home .kbr-plan-cta {
    display: inline-block;
    text-align: center;
    font-family: var(--kbr-sans);
    font-weight: 500;
    font-size: 14px;
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 10px;
    padding: 12px 20px;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease;
}

.kb-home .kbr-plan-cta:hover {
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
}

.kb-home .kbr-plan-cta--light {
    background: #fff;
    color: var(--kbr-orange) !important;
    border-color: #fff;
}

.kb-home .kbr-plan-cta--light:hover {
    background: rgba(255, 255, 255, 0.9);
}

/* ---------------------------------------------------------------------
   FAQ — light restyle of the existing Bootstrap accordion
   --------------------------------------------------------------------- */
.kb-home .kbr-faq .accordion {
    text-align: left;
}

.kb-home .kbr-faq .accordion-item {
    border: 1px solid var(--kbr-line);
    border-radius: 14px !important;
    overflow: hidden;
    margin-bottom: 14px;
    background: var(--kbr-paper);
}

.kb-home .kbr-faq .accordion-button {
    font-family: var(--kbr-sans);
    font-weight: 500;
    font-size: 15.5px;
    color: var(--kbr-navy-2);
    padding: 20px 24px;
    box-shadow: none !important;
}

.kb-home .kbr-faq .accordion-button:not(.collapsed) {
    background: var(--kbr-cream);
    color: var(--kbr-orange);
}

.kb-home .kbr-faq .accordion-body {
    font-family: var(--kbr-sans);
    font-size: 14.5px;
    color: var(--kbr-ink-soft);
    line-height: 1.7;
    padding: 4px 24px 24px;
}

/* ---------------------------------------------------------------------
   Light-touch upgrades for existing tz-/kb- sections (structure unchanged)
   --------------------------------------------------------------------- */
.kb-home .kbr-trust .tz-card,
.kb-home .kbr-app,
.kb-home .kbr-featured .kb-featured-card {
    transition: transform .25s ease, box-shadow .25s ease;
}

.kb-home .kbr-trust .tz-card:hover {
    transform: translateY(-4px);
}

.kb-home .kbr-trust .tz-ico {
    background: linear-gradient(145deg, var(--kbr-navy-2), var(--kbr-navy));
}

.kb-home .kbr-stats {
    background: var(--kbr-navy);
}

.kb-home .kbr-stats .tz-stat-num {
    font-family: var(--kbr-serif);
}

.kb-home .kbr-cta {
    position: relative;
    overflow: hidden;
}

.kb-home .kbr-cta::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(60% 120% at 90% 10%, rgba(255, 81, 0, 0.12), transparent 60%);
    pointer-events: none;
}

.kb-home .kbr-newsletter .newsletter-card {
    border-radius: 24px;
}

/* ---------------------------------------------------------------------
   Utility
   --------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {

    .kb-home .kbr-way-card,
    .kb-home .kbr-plan,
    .kb-home .kbr-trust .tz-card {
        transition: none !important;
    }
}

/* =========================================================================
   WHY SAVE WITH US — timeline
   ========================================================================= */
.kb-home .kbr-why {
    padding: 88px 0;
    background: var(--kbr-paper);
}

@media (max-width: 767.98px) {
    .kb-home .kbr-why {
        padding: 56px 0;
    }
}

.kb-home .kbr-why-line {
    position: relative;
    max-width: 900px;
    margin: 0 auto;
}

.kb-home .kbr-why-line::before {
    content: "";
    position: absolute;
    top: 6px;
    bottom: 6px;
    left: 50%;
    width: 1px;
    background: repeating-linear-gradient(180deg, var(--kbr-line) 0 8px, transparent 8px 16px);
    transform: translateX(-50%);
}

@media (max-width: 767.98px) {
    .kb-home .kbr-why-line::before {
        left: 27px;
    }
}

.kb-home .kbr-why-row {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 64px 1fr;
    align-items: center;
    gap: 0 32px;
    margin-bottom: 56px;
}

.kb-home .kbr-why-row:last-child {
    margin-bottom: 0;
}

.kb-home .kbr-why-num {
    grid-column: 2;
    width: 56px;
    height: 56px;
    border-radius: 999px 999px 10px 10px;
    background: linear-gradient(160deg, var(--kbr-navy-2), var(--kbr-navy));
    color: #fff;
    font-family: var(--kbr-serif);
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
    box-shadow: 0 14px 28px -12px rgba(41, 41, 78, 0.5);
}

.kb-home .kbr-why-copy {
    grid-column: 3;
    background: var(--kbr-cream);
    border: 1px solid var(--kbr-line);
    border-radius: 16px;
    padding: 26px 28px;
}

.kb-home .kbr-why-row--alt .kbr-why-copy {
    grid-column: 1;
    text-align: right;
}

.kb-home .kbr-why-row--alt .kbr-why-num {
    background: linear-gradient(160deg, var(--kbr-orange), #d84300);
}

.kb-home .kbr-why-copy h3 {
    font-family: var(--kbr-serif);
    font-weight: 400;
    font-size: 20px;
    color: var(--kbr-navy-2);
    margin-bottom: 8px;
}

.kb-home .kbr-why-copy p {
    font-family: var(--kbr-sans);
    font-size: 14.5px;
    line-height: 1.65;
    color: var(--kbr-ink-soft);
    margin: 0;
}

@media (max-width: 767.98px) {

    .kb-home .kbr-why-row,
    .kb-home .kbr-why-row--alt {
        grid-template-columns: 56px 1fr;
        gap: 0 18px;
        margin-bottom: 32px;
    }

    .kb-home .kbr-why-num {
        grid-column: 1;
        grid-row: 1;
        width: 48px;
        height: 48px;
        font-size: 18px;
    }

    .kb-home .kbr-why-copy,
    .kb-home .kbr-why-row--alt .kbr-why-copy {
        grid-column: 2;
        grid-row: 1;
        text-align: left;
        padding: 18px 20px;
    }
}

/* =========================================================================
   Deeper polish — Trust / App / Stats / Featured / CTA / Newsletter
   (structure unchanged, visual system extended)
   ========================================================================= */
.kb-home .kbr-trust {
    background: var(--kbr-paper);
    padding: 88px 0;
}

.kb-home .kbr-trust .tz-kicker,
.kb-home .kbr-app .tz-kicker,
.kb-home .kbr-stats .tz-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--kbr-sans);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--kbr-orange);
    padding: 7px 16px;
    border: 1px solid rgba(255, 81, 0, 0.28);
    border-radius: 999px;
    background: rgba(255, 81, 0, 0.06);
    margin-bottom: 14px;
}

.kb-home .kbr-trust h2,
.kb-home .kbr-app h2,
.kb-home .kbr-stats h2 {
    font-family: var(--kbr-serif);
    font-weight: 400;
    color: var(--kbr-navy-2);
    font-size: clamp(26px, 3.2vw, 36px);
}

.kb-home .kbr-trust p,
.kb-home .kbr-app>.container>.row p {
    font-family: var(--kbr-sans);
    color: var(--kbr-ink-soft);
}

.kb-home .kbr-trust .tz-card {
    background: var(--kbr-cream);
    border: 1px solid var(--kbr-line);
    border-radius: 18px;
    padding: 30px 24px;
    height: 100%;
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.kb-home .kbr-trust .tz-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 48px -18px rgba(41, 41, 78, 0.2);
    background: var(--kbr-paper);
}

.kb-home .kbr-trust .tz-ico {
    width: 52px;
    height: 52px;
    border-radius: 14px 14px 4px 4px;
    background: linear-gradient(160deg, var(--kbr-navy-2), var(--kbr-navy));
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    margin-bottom: 18px;
}

.kb-home .kbr-trust .tz-card-title {
    font-family: var(--kbr-serif);
    font-weight: 400;
    font-size: 18px;
    color: var(--kbr-navy-2);
}

.kb-home .kbr-trust .tz-card-text {
    font-family: var(--kbr-sans);
    font-size: 14px;
    color: var(--kbr-ink-soft);
}

.kb-home .kbr-app {
    background: var(--kbr-cream);
    padding: 96px 0;
}

.kb-home .kbr-app .tz-list-item {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    background: var(--kbr-paper);
    border: 1px solid var(--kbr-line);
    border-radius: 14px;
    padding: 16px 18px;
    margin-bottom: 12px;
}

.kb-home .kbr-app .tz-list-item i {
    color: var(--kbr-orange);
    font-size: 20px;
    margin-top: 2px;
}

.kb-home .kbr-app .tz-list-item strong {
    font-family: var(--kbr-sans);
    color: var(--kbr-navy-2);
    font-size: 15px;
}

.kb-home .kbr-app .tz-list-item .small {
    font-family: var(--kbr-sans);
    color: var(--kbr-ink-soft);
}

.kb-home .kbr-app .tz-flame-wrap {
    position: relative;
    border-radius: 220px 220px 20px 20px;
    overflow: hidden;
    box-shadow: 0 30px 60px -24px rgba(41, 41, 78, 0.28);
    max-width: 420px;
    width: 100%;
    height: 460px;
    margin: 0 auto;
}

.kb-home .kbr-app .tz-flame-img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block;
}

@media (max-width: 991.98px) {
    .kb-home .kbr-app .tz-flame-wrap {
        height: 420px;
    }
}

@media (max-width: 575.98px) {
    .kb-home .kbr-app .tz-flame-wrap {
        height: 340px;
    }
}

.kb-home .kbr-stats {
    background: linear-gradient(180deg, var(--kbr-navy) 0%, #22224a 100%) !important;
    padding: 88px 0;
}

.kb-home .kbr-stats .tz-kicker {
    color: #ffd9c2;
    border-color: rgba(255, 217, 194, 0.35);
    background: rgba(255, 255, 255, 0.06);
}

.kb-home .kbr-stats h2 {
    color: #fff;
}

.kb-home .kbr-stats p {
    color: rgba(255, 255, 255, 0.65);
    font-family: var(--kbr-sans);
}

.kb-home .kbr-stats .tz-stat {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 16px;
    padding: 28px 20px;
    text-align: center;
    transition: transform .25s ease, border-color .25s ease;
}

.kb-home .kbr-stats .tz-stat:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 255, 255, 0.3);
}

.kb-home .kbr-stats .tz-stat-num {
    font-family: var(--kbr-serif);
    font-size: clamp(30px, 3.4vw, 42px);
    color: #fff;
    font-weight: 400;
}

.kb-home .kbr-stats .tz-stat-label {
    font-family: var(--kbr-sans);
    font-size: 12px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.55);
    margin-top: 6px;
}

.kb-home .kbr-featured {
    background: var(--kbr-cream);
    padding: 72px 0;
    text-align: center;
}

.kb-home .kbr-featured .kb-featured-title {
    font-family: var(--kbr-serif);
    font-weight: 400;
    color: var(--kbr-navy-2);
    font-size: clamp(22px, 2.6vw, 30px);
    margin-bottom: 32px;
}

.kb-home .kbr-featured .kb-featured-card {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--kbr-paper);
    border: 1px solid var(--kbr-line);
    border-radius: 18px;
    padding: 20px 36px;
    box-shadow: 0 20px 40px -22px rgba(41, 41, 78, 0.2);
}

.kb-home .kbr-featured .kb-featured-logo {
    max-height: 64px;
    width: auto;
    filter: grayscale(1);
    opacity: 0.75;
    transition: filter .25s ease, opacity .25s ease;
}

.kb-home .kbr-featured .kb-featured-card:hover .kb-featured-logo {
    filter: grayscale(0);
    opacity: 1;
}

.kb-home .kbr-cta {
    padding: 96px 0;
    background: linear-gradient(135deg, var(--kbr-navy) 0%, #2d2d5c 60%, var(--kbr-navy) 100%) !important;
}

.kb-home .kbr-cta h2 {
    font-family: var(--kbr-serif);
    font-weight: 400;
    color: #fff;
    font-size: clamp(28px, 3.4vw, 40px);
}

.kb-home .kbr-cta p {
    font-family: var(--kbr-sans);
    color: rgba(255, 255, 255, 0.68);
}

.kb-home .kbr-newsletter {
    padding: 20px 0 96px;
}

.kb-home .kbr-newsletter .newsletter-card {
    border-radius: 28px;
    box-shadow: 0 30px 60px -26px rgba(255, 81, 0, 0.45);
}

/* ---------------------------------------------------------------------
   Navbar polish (scoped to the homepage body class only)
   --------------------------------------------------------------------- */
body.kb-home-page .navbar.header {
    background: rgba(27, 27, 54, 0.72);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    transition: background .3s ease;
}

body.kb-home-page .navbar .nav-link {
    font-family: "Readex Pro", sans-serif;
    font-size: 14.5px;
    position: relative;
    margin: 0 4px;
    color: rgba(255, 255, 255, 0.82) !important;
}

body.kb-home-page .navbar .nav-link:hover,
body.kb-home-page .navbar .nav-link.active {
    color: #ffffff !important;
}

body.kb-home-page .navbar-toggler .hamburger,
body.kb-home-page .navbar-toggler .hamburger::before,
body.kb-home-page .navbar-toggler .hamburger::after {
    background-color: #ffffff;
}

body.kb-home-page #dark-toggle {
    color: #ffffff;
}

@media (max-width: 991.98px) {
    body.kb-home-page .navbar .navbar-collapse {
        background: rgba(27, 27, 54, 0.97);
        border-radius: 14px;
        padding: 12px 18px;
        margin-top: 10px;
    }
}

body.kb-home-page .navbar .nav-link::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 2px;
    height: 1px;
    background: #FF5100;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .25s ease;
}

body.kb-home-page .navbar .nav-link:hover::after,
body.kb-home-page .navbar .nav-link.active::after {
    transform: scaleX(1);
}

body.kb-home-page .navbar .btn-primary-red {
    border-radius: 999px;
    padding-left: 20px;
    padding-right: 20px;
}

/* ---------------------------------------------------------------------
   Footer polish (scoped to the homepage body class only)
   --------------------------------------------------------------------- */
body.kb-home-page section.footer {
    background: var(--kbr-cream, #FBF8F3);
}

body.kb-home-page section.footer .footer-top ul li a,
body.kb-home-page section.footer .footer-bottom,
body.kb-home-page section.footer .footer-bottom ul li a,
body.kb-home-page section.footer .footer-bottom a,
body.kb-home-page section.footer .footer-center p {
    font-family: "Readex Pro", sans-serif;
}

body.kb-home-page section.footer a {
    transition: opacity .2s ease, color .2s ease;
}

body.kb-home-page section.footer a:hover {
    opacity: 0.85;
}

body.kb-home-page section.footer .footer-center {
    border-top: 1px solid var(--kbr-line, #E7E2D8);
    border-bottom: 1px solid var(--kbr-line, #E7E2D8);
}

body.kb-home-page section.footer .footer-bottom {
    border-top: 1px solid var(--kbr-line, #E7E2D8);
}

/* ---------------------------------------------------------------------
   Cursor glow — soft light that follows the pointer (homepage only)
   --------------------------------------------------------------------- */
.kb-home .kbr-cursor-glow {
    position: fixed;
    top: 0;
    left: 0;
    width: 480px;
    height: 480px;
    border-radius: 50%;
    pointer-events: none;
    z-index: 3;
    transform: translate(calc(var(--kbr-mx, 50vw) - 50%), calc(var(--kbr-my, 50vh) - 50%));
    background: radial-gradient(circle, rgba(255, 129, 66, 0.16) 0%, rgba(255, 129, 66, 0.07) 35%, transparent 70%);
    mix-blend-mode: screen;
    opacity: 0;
    transition: opacity .4s ease;
    will-change: transform;
}

.kb-home.kbr-cursor-active .kbr-cursor-glow {
    opacity: 1;
}

@media (max-width: 991.98px),
(hover: none) {
    .kb-home .kbr-cursor-glow {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kb-home .kbr-cursor-glow {
        display: none;
    }
}

/* ---------------------------------------------------------------------
   Extra small-screen refinements
   --------------------------------------------------------------------- */
@media (max-width: 575.98px) {
    .kb-home .kbr-hero {
        padding: 56px 0 64px;
    }

    .kb-home .kbr-hero-actions {
        gap: 16px;
    }

    .kb-home .kbr-hero-stats {
        gap: 10px;
    }

    .kb-home .kbr-stat-chip {
        min-width: 100px;
        padding: 12px 14px;
    }

    .kb-home .kbr-way-card {
        padding: 26px 22px;
    }

    .kb-home .kbr-plan {
        padding: 28px 22px;
    }

    .kb-home .kbr-plan-rate {
        font-size: 28px;
    }

    .kb-home .kbr-section,
    .kb-home .kbr-why,
    .kb-home .kbr-trust,
    .kb-home .kbr-cta {
        padding: 48px 0;
    }

    .kb-home .kbr-app {
        padding: 56px 0;
    }
}
/* =========================================================================
   APPLETON INVESTMENT GROUP — HOMEPAGE REFRESH
   Scoped to .aig-home so existing inner-page layouts remain untouched.
   ========================================================================= */
@font-face {
    font-family: 'Cactus Classical Serif';
    src: url('Cactus-Classical-Serif.ttf') format('truetype');
    font-display: swap;
    font-weight: 400;
    font-style: normal;
}

.aig-home {
    --aig-ink: #172125;
    --aig-deep: #10252a;
    --aig-teal: #4c6971;
    --aig-teal-dark: #36535b;
    --aig-cream: #f5f1e8;
    --aig-paper: #fffdf9;
    --aig-sand: #e7ded0;
    --aig-gold: #b18a55;
    --aig-muted: #6b7476;
    --aig-line: rgba(23, 33, 37, .12);
    --aig-serif: 'Cactus Classical Serif', Georgia, serif;
    --aig-sans: 'Readex Pro', Arial, sans-serif;
    background: var(--aig-paper);
    color: var(--aig-ink);
}

.aig-home,
.aig-home * { box-sizing: border-box; }

.aig-home .container { max-width: 1240px; }

.aig-home .kbr-section {
    padding: 112px 0;
    background: var(--aig-paper);
}

.aig-home .kbr-section--cream { background: var(--aig-cream); }

.aig-home .kbr-section--navy {
    background: var(--aig-deep);
    color: #fff;
}

.aig-home .kbr-eyebrow,
.aig-home .tz-kicker {
    font-family: var(--aig-sans);
    color: var(--aig-teal);
    border: 0;
    padding: 0;
    background: transparent;
    border-radius: 0;
    font-size: 11px;
    line-height: 1;
    letter-spacing: .2em;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 18px;
}

.aig-home .kbr-eyebrow::before { display: none; }
.aig-home .kbr-eyebrow--light { color: #d9c6a5; }

.aig-home .kbr-heading,
.aig-home .tz-trust h2,
.aig-home .kbr-app h2,
.aig-home .faqs h2,
.aig-home .join-us h2,
.aig-home .kbr-featured-title,
.aig-home .kbr-newsletter h2 {
    font-family: var(--aig-serif);
    color: var(--aig-ink);
    font-weight: 400;
    letter-spacing: -.025em;
    line-height: 1.06;
}

.aig-home .kbr-heading { font-size: clamp(38px, 4.4vw, 64px); }
.aig-home .kbr-heading--light { color: #fff; }

.aig-home .kbr-lede,
.aig-home .tz-trust p,
.aig-home .kbr-app p,
.aig-home .faqs > .container p,
.aig-home .join-us p,
.aig-home .kbr-newsletter p {
    color: var(--aig-muted);
    font-family: var(--aig-sans);
    font-size: 15px;
    line-height: 1.85;
}

.aig-home .kbr-lede--light { color: rgba(255,255,255,.68); }

/* Buttons */
.aig-home .btn-primary-red,
.aig-home .btn-secondary-navy,
.aig-home .kbr-plan-cta {
    background: var(--aig-deep) !important;
    color: #fff !important;
    border: 1px solid var(--aig-deep) !important;
    border-radius: 2px !important;
    box-shadow: none !important;
    font-family: var(--aig-sans);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 14px 22px;
    transition: transform .25s ease, background .25s ease, border-color .25s ease;
}

.aig-home .btn-primary-red:hover,
.aig-home .btn-secondary-navy:hover,
.aig-home .kbr-plan-cta:hover {
    background: var(--aig-teal) !important;
    border-color: var(--aig-teal) !important;
    transform: translateY(-2px);
}

/* HERO */
.aig-home .kbr-hero {
    min-height: 720px;
    padding: 72px 0 96px;
    background: var(--aig-deep);
    overflow: hidden;
}

.aig-home .kbr-hero-bg {
    opacity: .26;
    background-position: center;
    transform: scale(1.04);
}

.aig-home .kbr-hero-veil {
    background:
        radial-gradient(circle at 78% 40%, rgba(76,105,113,.34), transparent 32%),
        linear-gradient(90deg, rgba(16,37,42,.97) 0%, rgba(16,37,42,.90) 48%, rgba(16,37,42,.58) 100%);
}

.aig-home .kbr-hero-grid {
    grid-template-columns: minmax(0, 1.02fr) minmax(380px, .78fr);
    gap: 80px;
    min-height: 560px;
}

.aig-home .kbr-hero-copy { max-width: 650px; }

.aig-home .kbr-hero-title {
    font-family: var(--aig-serif);
    font-size: clamp(48px, 6.1vw, 86px);
    line-height: .98;
    font-weight: 400;
    letter-spacing: -.035em;
    margin-bottom: 28px;
}

.aig-home .kbr-hero-title span {
    color: #d2b37d;
    font-style: normal;
}

.aig-home .kbr-hero-text {
    max-width: 590px;
    font-family: var(--aig-sans);
    color: rgba(255,255,255,.72);
    font-size: 16px;
    line-height: 1.85;
    margin-bottom: 34px;
}

.aig-home .kbr-hero-actions { margin-bottom: 40px; gap: 24px; }

.aig-home .kbr-hero-actions .btn-primary-red {
    background: #d2b37d !important;
    border-color: #d2b37d !important;
    color: var(--aig-deep) !important;
}

.aig-home .kbr-hero-actions .btn-primary-red:hover {
    background: #e2ca9e !important;
    border-color: #e2ca9e !important;
}

.aig-home .kbr-hero-link {
    color: rgba(255,255,255,.86);
    border-bottom: 1px solid rgba(255,255,255,.25);
    font-family: var(--aig-sans);
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.aig-home .kbr-hero-link:hover { color: #d2b37d; border-color: #d2b37d; }

.aig-home .kbr-hero-stats { gap: 0; }
.aig-home .kbr-stat-chip {
    min-width: 145px;
    padding: 15px 20px;
    border: 0;
    border-left: 1px solid rgba(255,255,255,.2);
    border-radius: 0;
    background: transparent;
}
.aig-home .kbr-stat-chip:first-child { padding-left: 0; border-left: 0; }
.aig-home .kbr-stat-chip strong { font-family: var(--aig-serif); font-size: 27px; }
.aig-home .kbr-stat-chip span { color: rgba(255,255,255,.55); font-family: var(--aig-sans); font-size: 11px; letter-spacing: .05em; text-transform: uppercase; }

.aig-home .kbr-hero-visual { position: relative; }
.aig-home .kbr-hero-frame {
    border-radius: 180px 180px 4px 4px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.2);
    box-shadow: 0 40px 90px rgba(0,0,0,.3);
    background: #1b3035;
    position: relative;
}
.aig-home .kbr-hero-frame::after {
    content: '';
    position: absolute;
    inset: 14px;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 166px 166px 0 0;
    pointer-events: none;
}
.aig-home .kbr-hero-frame img { width: 100%; height: 590px; object-fit: cover; display:block; }

/* Section headers */
.aig-home .kbr-section-head { margin-bottom: 58px; }
.aig-home .kbr-section-head .kbr-lede { max-width: 700px; }

/* Investment cards */
.aig-home .kbr-ways-grid { gap: 18px; }
.aig-home .kbr-way-card {
    background: #fff;
    border: 1px solid var(--aig-line);
    border-radius: 3px;
    padding: 36px 32px 34px;
    box-shadow: 0 18px 50px rgba(16,37,42,.05);
    position: relative;
    overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.aig-home .kbr-way-card::before {
    content:'';
    position:absolute;
    left:0; top:0; width:100%; height:3px;
    background: var(--aig-gold);
    transform: scaleX(0);
    transform-origin:left;
    transition: transform .3s ease;
}
.aig-home .kbr-way-card:hover { transform: translateY(-7px); box-shadow: 0 28px 60px rgba(16,37,42,.1); border-color: rgba(76,105,113,.25); }
.aig-home .kbr-way-card:hover::before { transform:scaleX(1); }
.aig-home .kbr-way-icon { width: 56px; height:56px; margin-bottom:28px; background: var(--aig-cream); display:grid; place-items:center; border-radius:50%; }
.aig-home .kbr-way-icon img { width:28px; height:28px; }
.aig-home .kbr-way-card h3 { font-family: var(--aig-serif); font-size: 27px; font-weight:400; color:var(--aig-ink); margin-bottom:12px; }
.aig-home .kbr-way-card p { font-family:var(--aig-sans); color:var(--aig-muted); line-height:1.75; font-size:14px; }

/* Market widget */
.aig-home .kbr-video-block { margin-top: 56px; }
.aig-home .kbr-video-frame { border-radius: 4px; overflow:hidden; box-shadow: 0 25px 70px rgba(16,37,42,.10); }
.aig-home .kbr-video-frame video { width:100%; display:block; max-height:600px; object-fit:cover; }

/* Split feature */
.aig-home .kbr-split { align-items:center; gap:80px; }
.aig-home .kbr-split-visual .kbr-hero-frame { border-radius: 4px 120px 4px 4px; box-shadow:none; border:0; }
.aig-home .kbr-split-visual .kbr-hero-frame::after { border-radius: 4px 105px 0 0; border-color:rgba(255,255,255,.5); }
.aig-home .kbr-split-visual .kbr-hero-frame img { height: 520px; }
.aig-home .kbr-split-copy { max-width: 580px; }
.aig-home .kbr-split-copy .kbr-heading { font-size:clamp(38px,4vw,58px); }

/* Steps */
.aig-home .kbr-steps { gap: 18px; }
.aig-home .kbr-step { background:var(--aig-cream); border:1px solid transparent; border-radius:3px; padding:38px 30px; }
.aig-home .kbr-step img { width:48px; height:48px; margin-bottom:28px; }
.aig-home .kbr-step h3 { font-family:var(--aig-serif); font-weight:400; font-size:26px; color:var(--aig-ink); }
.aig-home .kbr-step p { font-family:var(--aig-sans); color:var(--aig-muted); line-height:1.75; font-size:14px; }

/* Why save */
.aig-home .kbr-why { padding:112px 0; background:var(--aig-paper); }
.aig-home .kbr-why-line { max-width:900px; margin:0 auto; border-top:1px solid var(--aig-line); }
.aig-home .kbr-why-row { display:grid; grid-template-columns:80px 1fr; gap:28px; padding:36px 0; border-bottom:1px solid var(--aig-line); }
.aig-home .kbr-why-row--alt { background:var(--aig-cream); padding-left:28px; padding-right:28px; }
.aig-home .kbr-why-num { font-family:var(--aig-serif); font-size:38px; color:var(--aig-gold); }
.aig-home .kbr-why-copy h3 { font-family:var(--aig-serif); font-size:28px; font-weight:400; color:var(--aig-ink); margin-bottom:8px; }
.aig-home .kbr-why-copy p { font-family:var(--aig-sans); font-size:14px; line-height:1.75; color:var(--aig-muted); max-width:700px; }

/* Plans */
.aig-home .kbr-section--navy .kbr-section-head { margin-bottom:64px; }
.aig-home .kbr-plans-grid { gap:18px; align-items:stretch; }
.aig-home .kbr-plan { background:#f8f5ee; border:1px solid rgba(255,255,255,.12); border-radius:3px; padding:38px 32px; color:var(--aig-ink); position:relative; }
.aig-home .kbr-plan--featured { background:#d8c29c; transform:translateY(-14px); color:var(--aig-deep); }
.aig-home .kbr-plan-badge { background:var(--aig-deep); color:#fff; border-radius:0; padding:7px 12px; font-family:var(--aig-sans); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.aig-home .kbr-plan-name { font-family:var(--aig-serif); font-size:29px; font-weight:400; margin-bottom:22px; }
.aig-home .kbr-plan-rate { font-family:var(--aig-serif); font-size:42px; color:var(--aig-teal); }
.aig-home .kbr-plan--featured .kbr-plan-rate { color:var(--aig-deep); }
.aig-home .kbr-plan-rate span { font-family:var(--aig-sans); font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.aig-home .kbr-plan-list { border-top:1px solid rgba(23,33,37,.12); margin-top:25px; padding-top:18px; }
.aig-home .kbr-plan-list li { font-family:var(--aig-sans); font-size:13px; color:#5e6668; padding:8px 0; }
.aig-home .kbr-plan-list li img { filter:sepia(.2); }
.aig-home .kbr-plan-cta { display:inline-block; margin-top:18px; }
.aig-home .kbr-plan--featured .kbr-plan-cta { background:var(--aig-deep) !important; color:#fff !important; }

/* FAQ */
.aig-home .kbr-faq { background:var(--aig-cream); }
.aig-home .kbr-faq .accordion-item { background:transparent; border:0; border-bottom:1px solid var(--aig-line); border-radius:0; }
.aig-home .kbr-faq .accordion-button { background:transparent; box-shadow:none; padding:24px 0; color:var(--aig-ink); font-family:var(--aig-serif); font-size:22px; }
.aig-home .kbr-faq .accordion-button:not(.collapsed) { color:var(--aig-teal); }
.aig-home .kbr-faq .accordion-body { padding:0 0 24px; color:var(--aig-muted); font-family:var(--aig-sans); font-size:14px; line-height:1.8; }

/* Trust / app / stats */
.aig-home .kbr-trust { background:#fff; padding:104px 0; }
.aig-home .tz-card { background:var(--aig-paper); border:1px solid var(--aig-line); border-radius:3px; padding:30px; box-shadow:none; }
.aig-home .tz-ico { color:var(--aig-teal); font-size:24px; margin-bottom:18px; }
.aig-home .tz-card-title { font-family:var(--aig-serif); font-size:23px; font-weight:400; }
.aig-home .tz-card-text { font-family:var(--aig-sans); color:var(--aig-muted); font-size:13px; line-height:1.7; }
.aig-home .kbr-app { background:var(--aig-deep); color:#fff; padding:110px 0; }
.aig-home .kbr-app h2 { color:#fff; font-size:clamp(38px,4vw,58px); }
.aig-home .kbr-app p { color:rgba(255,255,255,.66); }
.aig-home .tz-list-item { border-color:rgba(255,255,255,.12); }
.aig-home .tz-list-item i { color:#d2b37d; }
.aig-home .tz-flame-img { border-radius:4px 120px 4px 4px; filter:drop-shadow(0 30px 50px rgba(0,0,0,.28)); }
.aig-home .kbr-stats { background:var(--aig-cream); }
.aig-home .tz-stat { border:1px solid var(--aig-line); border-radius:3px; box-shadow:none; background:#fff; padding:28px; }
.aig-home .tz-stat-num { font-family:var(--aig-serif); color:var(--aig-teal); font-size:43px; font-weight:400; }
.aig-home .tz-stat-label { font-family:var(--aig-sans); color:var(--aig-muted); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }

/* Featured + CTA + newsletter */
.aig-home .kbr-featured { background:#fff; padding:80px 0; text-align:center; }
.aig-home .kbr-featured-title { font-size:38px; margin-bottom:30px; }
.aig-home .kb-featured-card { display:inline-flex; align-items:center; justify-content:center; min-height:110px; padding:22px 40px; border:1px solid var(--aig-line); background:var(--aig-paper); }
.aig-home .kb-featured-logo { max-height:58px; width:auto; }
.aig-home .kbr-cta { background:var(--aig-cream); padding:110px 0; }
.aig-home .kbr-cta h2 { font-size:clamp(44px,5vw,66px); }
.aig-home .kbr-newsletter { padding:70px 0 110px; background:var(--aig-cream); }
.aig-home .newsletter-card { max-width:980px; margin:0 auto; background:var(--aig-deep); color:#fff; padding:60px; border-radius:4px; text-align:center; box-shadow:0 25px 70px rgba(16,37,42,.14); }
.aig-home .newsletter-card .icon-wrap { color:#d2b37d; font-size:22px; margin-bottom:14px; }
.aig-home .newsletter-card h2 { color:#fff; font-size:clamp(32px,4vw,50px); max-width:700px; margin:0 auto 12px; }
.aig-home .newsletter-card p { color:rgba(255,255,255,.62); }
.aig-home #newsletterForm { max-width:600px; margin:28px auto 0; display:flex; gap:8px; }
.aig-home #newsletterForm input { flex:1; min-width:0; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18); color:#fff; padding:14px 16px; border-radius:2px; outline:none; font-family:var(--aig-sans); }
.aig-home #newsletterForm input::placeholder { color:rgba(255,255,255,.48); }
.aig-home #newsletterForm button { border:1px solid #d2b37d; background:#d2b37d; color:var(--aig-deep); padding:14px 22px; font-family:var(--aig-sans); font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.aig-home #newsletterMsg { font-family:var(--aig-sans); font-size:13px; margin-top:12px; }

/* Header / navigation — homepage only */
body:has(.aig-home) .header {
    background:rgba(255,253,249,.96) !important;
    border-bottom:1px solid rgba(23,33,37,.08);
    box-shadow:0 8px 30px rgba(16,37,42,.05) !important;
    min-height:86px;
    backdrop-filter:blur(12px);
}
body:has(.aig-home) .header .container { max-width:1240px; }
body:has(.aig-home) .header .navbar-brand img { width:190px !important; max-height:68px; object-fit:contain; }
body:has(.aig-home) .header ul.navbar-nav li a { color:var(--aig-ink); font-family:var(--aig-sans); font-size:11px; letter-spacing:.07em; text-transform:uppercase; }
body:has(.aig-home) .header ul.navbar-nav li a:hover,
body:has(.aig-home) .header ul.navbar-nav li a.active { color:var(--aig-teal); }
body:has(.aig-home) .header .btn-primary-red { background:var(--aig-deep) !important; border-color:var(--aig-deep) !important; border-radius:2px !important; }
body:has(.aig-home) .header .btn-primary-red:hover { background:var(--aig-teal) !important; border-color:var(--aig-teal) !important; color:#fff !important; }

@media (max-width: 991.98px) {
    .aig-home .kbr-hero { padding-top:55px; }
    .aig-home .kbr-hero-grid { grid-template-columns:1fr; gap:52px; }
    .aig-home .kbr-hero-copy { max-width:760px; }
    .aig-home .kbr-hero-visual { max-width:520px; width:100%; margin:0 auto; }
    .aig-home .kbr-hero-frame img { height:520px; }
    body:has(.aig-home) .header .navbar-brand img { width:160px !important; }
}

@media (max-width: 767.98px) {
    .aig-home .kbr-section,
    .aig-home .kbr-why,
    .aig-home .kbr-trust,
    .aig-home .kbr-cta { padding:72px 0; }
    .aig-home .kbr-hero { min-height:auto; padding:48px 0 70px; }
    .aig-home .kbr-hero-title { font-size:clamp(44px,13vw,66px); }
    .aig-home .kbr-hero-frame { border-radius:100px 100px 3px 3px; }
    .aig-home .kbr-hero-frame img { height:440px; }
    .aig-home .kbr-stat-chip { min-width:50%; padding-left:12px; }
    .aig-home .kbr-stat-chip:first-child { padding-left:0; }
    .aig-home .kbr-split { gap:42px; }
    .aig-home .kbr-split-visual .kbr-hero-frame { border-radius:3px 80px 3px 3px; }
    .aig-home .kbr-split-visual .kbr-hero-frame img { height:390px; }
    .aig-home .kbr-plan--featured { transform:none; }
    .aig-home .kbr-why-row { grid-template-columns:50px 1fr; gap:18px; }
    .aig-home .kbr-why-row--alt { padding-left:16px; padding-right:16px; }
    .aig-home .newsletter-card { padding:40px 22px; }
    .aig-home #newsletterForm { flex-direction:column; }
    .aig-home #newsletterForm button { width:100%; }
    body:has(.aig-home) .header .navbar-brand img { width:145px !important; }
}
