/* ==========================================================================
   Invicta Capital Group — Master Theme File

   This file controls the global color system and color rhythm for the site.

   To change the brand colors later, update the :root values below.
   Do not make color changes page-by-page unless a section is truly unique.

   Loaded after styles.css so these theme rules are the final color authority.
   ========================================================================== */

/* Batch 39 — Color rhythm cleanup
       Purpose: lock the brand palette and make section color changes intentional.
       This is a color-system pass only. No structural redesign. */

    :root{
      --navy:#061629;
      --deep-navy:#03101f;
      --card-navy:#0b1e33;
      --gold:#c99a36;
      --gold2:#e4c46a;
      --soft:#f4efe4;
      --ivory:#f7f2e8;
      --card-white:#fffdf8;
      --ink:#111827;
      --muted:#4f5866;
      --darkLine:rgba(6,22,41,.10);
    }

    body{
      background:var(--deep-navy);
      color:var(--ink);
    }

    main{
      background:var(--soft);
    }

    /* Premium dark sections */
    .hero,
    .subhero,
    .simple-subhero,
    .dark-section,
    .property-ops-section,
    .contracts-req-section,
    .final-cta{
      background:
        radial-gradient(circle at 12% 16%,rgba(228,196,106,.10),transparent 26rem),
        linear-gradient(135deg,var(--deep-navy),var(--navy))!important;
      color:#fff;
    }

    footer{
      background:var(--deep-navy)!important;
      border-top:1px solid rgba(228,196,106,.18)!important;
    }

    /* Warm ivory sections */
    section,
    .content-section,
    .contact-section,
    .faq-section,
    .legal-page-section,
    .coverage-page,
    .coverage-page .coverage-intro-section,
    .coverage-page .coverage-details-section,
    .coverage-page .faq-section,
    .coverage-page .related-section,
    .about-page .content-section,
    .about-page .agency-section,
    .process-section,
    .agency-section{
      background:var(--soft)!important;
      color:var(--ink);
    }

    /* Keep intentional dark sections dark after broad ivory rule */
    .dark-section,
    .property-ops-section,
    .contracts-req-section,
    .coverage-page .coverage-hero,
    .coverage-page .mistake-section,
    .coverage-page .final-cta,
    .final-cta{
      background:
        radial-gradient(circle at 12% 16%,rgba(228,196,106,.10),transparent 26rem),
        linear-gradient(135deg,var(--deep-navy),var(--navy))!important;
      color:#fff!important;
    }

    /* Gold should be accent, not pale body copy */
    .eyebrow{
      color:var(--gold2);
    }

    .content-section .eyebrow,
    .contact-section .eyebrow,
    .legal-page-section .eyebrow,
    .faq-section .eyebrow,
    .process-section .eyebrow,
    .agency-section .eyebrow,
    .coverage-page .faq-section .eyebrow,
    .coverage-page .related-section .eyebrow,
    .about-page .agency-panel .eyebrow{
      color:#6b7280!important;
    }

    .dark-section .eyebrow,
    .property-ops-section .eyebrow,
    .contracts-req-section .eyebrow,
    .final-cta .eyebrow,
    .coverage-page .coverage-hero .eyebrow,
    .coverage-page .mistake-section .eyebrow{
      color:var(--gold2)!important;
    }

    .gold-copy{
      color:#8b6318!important;
    }

    /* Text consistency */
    p,
    .prose p,
    .process-card p,
    .selector-card p,
    .info-card p,
    .contact-card p,
    .nap-card,
    .note{
      color:var(--muted);
    }

    .dark-section p,
    .property-ops-section p,
    .contracts-req-section p,
    .final-cta p,
    .coverage-page .coverage-hero p,
    .coverage-page .mistake-section p,
    footer,
    footer a,
    footer span{
      color:rgba(255,255,255,.74);
    }

    h1,h2,h3{
      color:var(--ink);
    }

    .dark-section h1,
    .dark-section h2,
    .dark-section h3,
    .property-ops-section h2,
    .contracts-req-section h2,
    .final-cta h2,
    .coverage-page .coverage-hero h1,
    .coverage-page .mistake-section h2,
    footer h3{
      color:#fff!important;
    }

    /* Cards should use one warm white, not random pure white blocks */
    .selector-card,
    .info-card,
    .process-card,
    .contact-card,
    .legal-document,
    .coverage-page .detail-panel,
    .coverage-page .faq-grid > div,
    .coverage-page .related-card,
    .coverage-page .landing-link-panel{
      background:var(--card-white)!important;
      border-color:rgba(6,22,41,.10)!important;
      color:var(--ink);
    }

    .coverage-page .dark-detail{
      background:
        radial-gradient(circle at 90% 0%,rgba(228,196,106,.12),transparent 18rem),
        var(--card-navy)!important;
      border-color:rgba(228,196,106,.22)!important;
      color:#fff!important;
    }

    .coverage-page .dark-detail p,
    .coverage-page .dark-detail li{
      color:rgba(255,255,255,.76)!important;
    }

    /* Product strip stays gold, but a little richer and less yellow */
    .product-band{
      background:linear-gradient(90deg,#9a6d1e,var(--gold),var(--gold2),#9a6d1e)!important;
      color:var(--deep-navy)!important;
    }

    /* Buttons keep gold as the primary action */
    .btn-gold{
      background:linear-gradient(135deg,var(--gold),var(--gold2))!important;
      color:var(--deep-navy)!important;
      box-shadow:0 18px 45px rgba(201,154,54,.22)!important;
    }

    .btn-light{
      background:var(--card-white)!important;
      color:var(--navy)!important;
      border-color:rgba(6,22,41,.12)!important;
    }

    .btn-outline{
      border-color:rgba(228,196,106,.34)!important;
      color:#fff!important;
      background:transparent!important;
    }

    /* Line-item components share the same subtle gold divider */
    .area-grid a:after,
    .contracts-area-grid a:after,
    .coverage-page .mistake-list div:after,
    .about-page .mini-list span{
      border-color:rgba(201,154,54,.22)!important;
      background:rgba(201,154,54,.20);
    }

    /* The About page and landing page line items should sit on warm ivory cleanly */
    .about-page .mini-list span{
      color:var(--ink)!important;
      background:transparent!important;
    }

    /* Keep legal/address/footer readable */
    footer .legal,
    footer address,
    footer p{
      color:rgba(255,255,255,.68)!important;
    }

    footer a:hover{
      color:var(--gold2)!important;
    }


/* ==========================================================================
   Batch 41 — Programmed Color Rhythm

   This section is the master color program.

   HOW TO READ THIS:
   1. Palette variables define the brand colors.
   2. Semantic variables define what each color is used for.
   3. Page rhythm maps define how colors change from section to section.
   4. Component rules define cards, buttons, line items, and footer behavior.

   Future color changes should happen here first.
   ========================================================================== */


/* 1) BRAND PALETTE --------------------------------------------------------- */
:root{
  --icg-navy: #061629;
  --icg-deep-navy: #03101f;
  --icg-card-navy: #0b1e33;

  --icg-gold: #c99a36;
  --icg-soft-gold: #e4c46a;
  --icg-bronze: #8b6318;

  --icg-ivory: #f4efe4;
  --icg-ivory-2: #f7f2e8;
  --icg-card-white: #fffdf8;

  --icg-ink: #111827;
  --icg-muted: #4f5866;
  --icg-muted-2: #6b7280;

  --icg-dark-line: rgba(6,22,41,.10);
  --icg-gold-line: rgba(201,154,54,.22);
  --icg-dark-gold-line: rgba(228,196,106,.18);
}


/* 2) SEMANTIC THEME TOKENS ------------------------------------------------ */
:root{
  --theme-page-bg: var(--icg-ivory);
  --theme-light-bg: var(--icg-ivory);
  --theme-light-bg-alt: var(--icg-ivory-2);
  --theme-card-bg: var(--icg-card-white);

  --theme-dark-bg:
    radial-gradient(circle at 12% 16%, rgba(228,196,106,.10), transparent 26rem),
    linear-gradient(135deg, var(--icg-deep-navy), var(--icg-navy));

  --theme-dark-bg-right:
    radial-gradient(circle at 84% 16%, rgba(228,196,106,.10), transparent 24rem),
    linear-gradient(135deg, var(--icg-deep-navy), var(--icg-navy));

  --theme-gold-strip:
    linear-gradient(90deg, #9a6d1e, var(--icg-gold), var(--icg-soft-gold), #9a6d1e);

  --theme-text: var(--icg-ink);
  --theme-muted: var(--icg-muted);
  --theme-label-light: var(--icg-muted-2);
  --theme-label-dark: var(--icg-soft-gold);

  --theme-card-border: var(--icg-dark-line);
  --theme-dark-border: var(--icg-dark-gold-line);
  --theme-divider: var(--icg-gold-line);
}


/* 3) GLOBAL COLOR DEFAULTS ------------------------------------------------ */
html,
body{
  background: var(--icg-deep-navy);
}

main{
  background: var(--theme-page-bg);
  color: var(--theme-text);
}

section{
  background: var(--theme-light-bg);
  color: var(--theme-text);
}

p,
.prose p,
.selector-card p,
.info-card p,
.process-card p,
.contact-card p,
.nap-card,
.note{
  color: var(--theme-muted);
}

h1,h2,h3{
  color: var(--theme-text);
}


/* 4) DARK SECTION PROGRAM ------------------------------------------------- */
.hero,
.subhero,
.simple-subhero,
.dark-section,
.property-ops-section,
.contracts-req-section,
.final-cta,
.coverage-page .coverage-hero,
.coverage-page .mistake-section,
.coverage-page .final-cta{
  background: var(--theme-dark-bg) !important;
  color: #fff !important;
  border-color: var(--theme-dark-border);
}

.contracts-req-section{
  background: var(--theme-dark-bg-right) !important;
}

.dark-section h1,
.dark-section h2,
.dark-section h3,
.property-ops-section h2,
.contracts-req-section h2,
.final-cta h2,
.coverage-page .coverage-hero h1,
.coverage-page .mistake-section h2{
  color:#fff !important;
}

.dark-section p,
.property-ops-section p,
.contracts-req-section p,
.final-cta p,
.coverage-page .coverage-hero p,
.coverage-page .mistake-section p{
  color: rgba(255,255,255,.74) !important;
}


/* 5) LIGHT SECTION PROGRAM ------------------------------------------------ */
.content-section,
.contact-section,
.faq-section,
.legal-page-section,
.process-section,
.agency-section,
.about-page .content-section,
.about-page .agency-section,
.coverage-page,
.coverage-page .coverage-intro-section,
.coverage-page .coverage-details-section,
.coverage-page .faq-section,
.coverage-page .related-section{
  background: var(--theme-light-bg) !important;
  color: var(--theme-text) !important;
}


/* 6) HOMEPAGE COLOR RHYTHM MAP --------------------------------------------
   Homepage sequence:
   Hero             = dark navy
   Product strip    = gold
   Selector/content = warm ivory
   Business risk    = warm ivory
   Property         = dark navy
   People           = warm ivory
   Contracts        = dark navy
   Process          = warm ivory
   Final CTA        = dark navy
   Footer           = deep navy
----------------------------------------------------------------------------- */

body.home main,
main.homepage{
  background: var(--theme-light-bg);
}

.product-band{
  background: var(--theme-gold-strip) !important;
  color: var(--icg-deep-navy) !important;
}

#business-risk,
#people,
.process-section{
  background: var(--theme-light-bg) !important;
  color: var(--theme-text) !important;
}

#property,
#contracts,
#advisor.final-cta{
  background: var(--theme-dark-bg) !important;
  color:#fff !important;
}


/* 7) COVERAGE PAGE COLOR RHYTHM MAP ---------------------------------------
   Coverage page sequence:
   Hero             = dark navy
   Overview/details = warm ivory
   Common mistakes  = dark navy
   FAQ/related      = warm ivory
   CTA              = dark navy
----------------------------------------------------------------------------- */

.coverage-page .coverage-intro-section,
.coverage-page .coverage-details-section,
.coverage-page .faq-section,
.coverage-page .related-section{
  background: var(--theme-light-bg) !important;
}

.coverage-page .mistake-section,
.coverage-page .final-cta{
  background: var(--theme-dark-bg) !important;
}


/* 8) ABOUT / CONTACT / LEGAL RHYTHM MAP -----------------------------------
   Simple pages:
   Hero      = dark navy
   Body      = warm ivory
   CTA       = dark navy
   Footer    = deep navy
----------------------------------------------------------------------------- */

.about-page .content-section,
.about-page .agency-section,
.contact-section,
.legal-page-section{
  background: var(--theme-light-bg) !important;
}


/* 9) CARDS AND PANELS ------------------------------------------------------ */
.selector-card,
.info-card,
.process-card,
.contact-card,
.legal-document,
.coverage-page .detail-panel,
.coverage-page .faq-grid > div,
.coverage-page .related-card,
.coverage-page .landing-link-panel{
  background: var(--theme-card-bg) !important;
  border-color: var(--theme-card-border) !important;
  color: var(--theme-text) !important;
}

.agency-panel{
  background: var(--theme-card-bg);
  border-color: var(--theme-card-border);
}

.coverage-page .dark-detail{
  background:
    radial-gradient(circle at 90% 0%, rgba(228,196,106,.12), transparent 18rem),
    var(--icg-card-navy) !important;
  border-color: var(--theme-dark-border) !important;
  color:#fff !important;
}

.coverage-page .dark-detail p,
.coverage-page .dark-detail li{
  color:rgba(255,255,255,.76) !important;
}


/* 10) LABELS / GOLD USAGE --------------------------------------------------
   Gold is used for accents, buttons, numbers, small labels, and divider lines.
   Body copy should not use pale gold.
----------------------------------------------------------------------------- */

.eyebrow{
  color: var(--theme-label-light) !important;
}

.dark-section .eyebrow,
.property-ops-section .eyebrow,
.contracts-req-section .eyebrow,
.final-cta .eyebrow,
.coverage-page .coverage-hero .eyebrow,
.coverage-page .mistake-section .eyebrow,
.area-grid span,
.contracts-area-grid span,
.coverage-page .mistake-list span{
  color: var(--theme-label-dark) !important;
}

.gold-copy{
  color: var(--icg-bronze) !important;
}


/* 11) LINE-ITEM COMPONENTS ------------------------------------------------ */
.area-grid a:after,
.contracts-area-grid a:after,
.coverage-page .mistake-list div:after,
.about-page .mini-list span{
  border-color: var(--theme-divider) !important;
  background: rgba(201,154,54,.20) !important;
}

.about-page .mini-list span{
  color: var(--theme-text) !important;
  background: transparent !important;
}


/* 12) BUTTON PROGRAM ------------------------------------------------------- */
.btn-gold{
  background: linear-gradient(135deg, var(--icg-gold), var(--icg-soft-gold)) !important;
  color: var(--icg-deep-navy) !important;
  box-shadow: 0 18px 45px rgba(201,154,54,.22) !important;
}

.btn-light{
  background: var(--theme-card-bg) !important;
  color: var(--icg-navy) !important;
  border-color: rgba(6,22,41,.12) !important;
}

.btn-outline{
  border-color: rgba(228,196,106,.34) !important;
  color:#fff !important;
  background: transparent !important;
}


/* 13) FOOTER PROGRAM ------------------------------------------------------ */
footer{
  background: var(--icg-deep-navy) !important;
  color: rgba(255,255,255,.70) !important;
  border-top: 1px solid var(--theme-dark-border) !important;
}

footer h3{
  color:#fff !important;
}

footer a,
footer span,
footer p,
footer address,
footer .legal{
  color: rgba(255,255,255,.68) !important;
}

footer a:hover{
  color: var(--icg-soft-gold) !important;
}


/* ==========================================================================
   Batch 42 — Master Text Contrast Rules

   This is a text contrast pass only.

   Rule:
   - No page-by-page color changes.
   - No layout edits.
   - No content edits.
   - All text color behavior is controlled here in the master theme file.

   Goal:
   Stop lettering from getting eaten when sections switch between dark navy,
   warm ivory, card white, and gold.
   ========================================================================== */


/* 1) MASTER READABILITY TOKENS -------------------------------------------- */
:root{
  --text-on-light-heading:#081827;
  --text-on-light-body:#374151;
  --text-on-light-muted:#4f5866;
  --text-on-light-label:#5f6673;
  --text-on-light-strong:#111827;

  --text-on-dark-heading:#ffffff;
  --text-on-dark-body:rgba(255,255,255,.80);
  --text-on-dark-muted:rgba(255,255,255,.68);
  --text-on-dark-label:#e4c46a;
  --text-on-dark-strong:#ffffff;

  --text-on-gold:#03101f;
  --text-link-light:#061629;
  --text-link-dark:#e4c46a;
}


/* 2) LIGHT BACKGROUND TEXT PROGRAM ---------------------------------------- */
section:not(.hero):not(.subhero):not(.simple-subhero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.final-cta),
.content-section,
.contact-section,
.faq-section,
.legal-page-section,
.process-section,
.agency-section,
.about-page .content-section,
.about-page .agency-section,
.coverage-page .coverage-intro-section,
.coverage-page .coverage-details-section,
.coverage-page .faq-section,
.coverage-page .related-section{
  color:var(--text-on-light-body)!important;
}

section:not(.hero):not(.subhero):not(.simple-subhero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.final-cta) h1,
section:not(.hero):not(.subhero):not(.simple-subhero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.final-cta) h2,
section:not(.hero):not(.subhero):not(.simple-subhero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.final-cta) h3,
section:not(.hero):not(.subhero):not(.simple-subhero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.final-cta) h4,
.content-section h1,
.content-section h2,
.content-section h3,
.contact-section h1,
.contact-section h2,
.contact-section h3,
.faq-section h1,
.faq-section h2,
.faq-section h3,
.legal-page-section h1,
.legal-page-section h2,
.legal-page-section h3,
.process-section h1,
.process-section h2,
.process-section h3,
.agency-section h1,
.agency-section h2,
.agency-section h3,
.coverage-page .coverage-intro-section h1,
.coverage-page .coverage-intro-section h2,
.coverage-page .coverage-intro-section h3,
.coverage-page .coverage-details-section h1,
.coverage-page .coverage-details-section h2,
.coverage-page .coverage-details-section h3,
.coverage-page .faq-section h1,
.coverage-page .faq-section h2,
.coverage-page .faq-section h3,
.coverage-page .related-section h1,
.coverage-page .related-section h2,
.coverage-page .related-section h3{
  color:var(--text-on-light-heading)!important;
}

.content-section p,
.content-section li,
.contact-section p,
.contact-section li,
.faq-section p,
.faq-section li,
.legal-page-section p,
.legal-page-section li,
.process-section p,
.process-section li,
.agency-section p,
.agency-section li,
.coverage-page .coverage-intro-section p,
.coverage-page .coverage-intro-section li,
.coverage-page .coverage-details-section p,
.coverage-page .coverage-details-section li,
.coverage-page .faq-section p,
.coverage-page .faq-section li,
.coverage-page .related-section p,
.coverage-page .related-section li{
  color:var(--text-on-light-body)!important;
}

.content-section .eyebrow,
.contact-section .eyebrow,
.faq-section .eyebrow,
.legal-page-section .eyebrow,
.process-section .eyebrow,
.agency-section .eyebrow,
.coverage-page .coverage-intro-section .eyebrow,
.coverage-page .coverage-details-section .eyebrow,
.coverage-page .faq-section .eyebrow,
.coverage-page .related-section .eyebrow{
  color:var(--text-on-light-label)!important;
}


/* 3) DARK BACKGROUND TEXT PROGRAM ----------------------------------------- */
.hero,
.subhero,
.simple-subhero,
.dark-section,
.property-ops-section,
.contracts-req-section,
.final-cta,
.coverage-page .coverage-hero,
.coverage-page .mistake-section,
.coverage-page .final-cta{
  color:var(--text-on-dark-body)!important;
}

.hero h1,
.hero h2,
.hero h3,
.hero h4,
.subhero h1,
.subhero h2,
.subhero h3,
.subhero h4,
.simple-subhero h1,
.simple-subhero h2,
.simple-subhero h3,
.simple-subhero h4,
.dark-section h1,
.dark-section h2,
.dark-section h3,
.dark-section h4,
.property-ops-section h1,
.property-ops-section h2,
.property-ops-section h3,
.property-ops-section h4,
.contracts-req-section h1,
.contracts-req-section h2,
.contracts-req-section h3,
.contracts-req-section h4,
.final-cta h1,
.final-cta h2,
.final-cta h3,
.final-cta h4,
.coverage-page .coverage-hero h1,
.coverage-page .coverage-hero h2,
.coverage-page .coverage-hero h3,
.coverage-page .coverage-hero h4,
.coverage-page .mistake-section h1,
.coverage-page .mistake-section h2,
.coverage-page .mistake-section h3,
.coverage-page .mistake-section h4{
  color:var(--text-on-dark-heading)!important;
}

.hero p,
.hero li,
.subhero p,
.subhero li,
.simple-subhero p,
.simple-subhero li,
.dark-section p,
.dark-section li,
.property-ops-section p,
.property-ops-section li,
.contracts-req-section p,
.contracts-req-section li,
.final-cta p,
.final-cta li,
.coverage-page .coverage-hero p,
.coverage-page .coverage-hero li,
.coverage-page .mistake-section p,
.coverage-page .mistake-section li{
  color:var(--text-on-dark-body)!important;
}

.hero .eyebrow,
.subhero .eyebrow,
.simple-subhero .eyebrow,
.dark-section .eyebrow,
.property-ops-section .eyebrow,
.contracts-req-section .eyebrow,
.final-cta .eyebrow,
.coverage-page .coverage-hero .eyebrow,
.coverage-page .mistake-section .eyebrow{
  color:var(--text-on-dark-label)!important;
}


/* 4) DARK SECTION LINE ITEMS ----------------------------------------------
   Prevent white/gold line item sections from inheriting weak gray.
----------------------------------------------------------------------------- */
.property-ops-section .area-grid a,
.contracts-req-section .contracts-area-grid a,
.coverage-page .mistake-section .mistake-list div{
  color:var(--text-on-dark-heading)!important;
}

.property-ops-section .area-grid span,
.contracts-req-section .contracts-area-grid span,
.coverage-page .mistake-section .mistake-list span{
  color:var(--text-on-dark-label)!important;
}

.property-ops-section .area-grid strong,
.contracts-req-section .contracts-area-grid strong,
.coverage-page .mistake-section .mistake-list p{
  color:var(--text-on-dark-heading)!important;
}


/* 5) LIGHT SECTION LINE ITEMS --------------------------------------------- */
.about-page .mini-list span,
.coverage-page .related-card,
.coverage-page .landing-link-panel,
.coverage-page .detail-panel,
.process-card,
.selector-card,
.info-card,
.contact-card{
  color:var(--text-on-light-body)!important;
}

.about-page .mini-list span,
.coverage-page .related-card h3,
.coverage-page .landing-link-panel h3,
.coverage-page .detail-panel h3,
.process-card h3,
.selector-card h3,
.info-card h3,
.contact-card h3{
  color:var(--text-on-light-heading)!important;
}


/* 6) GOLD STRIP / GOLD SURFACE TEXT --------------------------------------- */
.product-band,
.product-band *,
.btn-gold,
.btn-gold *{
  color:var(--text-on-gold)!important;
}


/* 7) LINKS ---------------------------------------------------------------- */
.content-section a,
.contact-section a,
.faq-section a,
.legal-page-section a,
.process-section a,
.agency-section a,
.coverage-page .coverage-intro-section a,
.coverage-page .coverage-details-section a,
.coverage-page .faq-section a,
.coverage-page .related-section a{
  color:var(--text-link-light);
}

.hero a:not(.btn),
.subhero a:not(.btn),
.simple-subhero a:not(.btn),
.dark-section a:not(.btn),
.property-ops-section a:not(.btn),
.contracts-req-section a:not(.btn),
.final-cta a:not(.btn),
.coverage-page .coverage-hero a:not(.btn),
.coverage-page .mistake-section a:not(.btn){
  color:var(--text-link-dark);
}


/* 8) BUTTON CONTRAST RESET ------------------------------------------------ */
.btn-light{
  color:var(--icg-navy)!important;
}

.btn-outline{
  color:#fff!important;
}

.final-cta .btn-light{
  color:var(--icg-navy)!important;
}


/* 9) FOOTER TEXT CONTRAST ------------------------------------------------- */
footer,
footer p,
footer li,
footer address,
footer .legal{
  color:rgba(255,255,255,.72)!important;
}

footer h1,
footer h2,
footer h3,
footer h4{
  color:#fff!important;
}

footer a{
  color:rgba(255,255,255,.78)!important;
}

footer a:hover{
  color:var(--icg-soft-gold)!important;
}


/* ==========================================================================
   Batch 43 — Master Page Listener Rules

   Header.php now assigns every visual page a body class:
   - page-family-home
   - page-family-business-hub
   - page-family-coverage
   - page-family-about
   - page-family-contact
   - page-family-legal
   - page-family-standard

   Theme.css listens to those body classes and controls color rhythm globally.
   No individual page should control colors.
   ========================================================================== */


/* 1) MASTER PAGE FAMILY BACKGROUNDS --------------------------------------- */
body.site-body main{
  background:var(--theme-light-bg)!important;
  color:var(--text-on-light-body)!important;
}

body.page-family-home main,
body.page-family-business-hub main,
body.page-family-coverage main,
body.page-family-about main,
body.page-family-contact main,
body.page-family-legal main,
body.page-family-standard main{
  background:var(--theme-light-bg)!important;
}


/* 2) MASTER HERO LISTENERS ------------------------------------------------ */
body.page-family-home .hero,
body.page-family-business-hub .subhero,
body.page-family-coverage .coverage-hero,
body.page-family-about .subhero,
body.page-family-contact .subhero,
body.page-family-legal .subhero,
body.page-family-standard .subhero{
  background:var(--theme-dark-bg)!important;
  color:var(--text-on-dark-body)!important;
}

body.page-family-home .hero h1,
body.page-family-home .hero h2,
body.page-family-business-hub .subhero h1,
body.page-family-business-hub .subhero h2,
body.page-family-coverage .coverage-hero h1,
body.page-family-coverage .coverage-hero h2,
body.page-family-about .subhero h1,
body.page-family-about .subhero h2,
body.page-family-contact .subhero h1,
body.page-family-contact .subhero h2,
body.page-family-legal .subhero h1,
body.page-family-legal .subhero h2,
body.page-family-standard .subhero h1,
body.page-family-standard .subhero h2{
  color:var(--text-on-dark-heading)!important;
}

body.page-family-home .hero p,
body.page-family-business-hub .subhero p,
body.page-family-coverage .coverage-hero p,
body.page-family-about .subhero p,
body.page-family-contact .subhero p,
body.page-family-legal .subhero p,
body.page-family-standard .subhero p{
  color:var(--text-on-dark-body)!important;
}

body.page-family-home .hero .eyebrow,
body.page-family-business-hub .subhero .eyebrow,
body.page-family-coverage .coverage-hero .eyebrow,
body.page-family-about .subhero .eyebrow,
body.page-family-contact .subhero .eyebrow,
body.page-family-legal .subhero .eyebrow,
body.page-family-standard .subhero .eyebrow{
  color:var(--text-on-dark-label)!important;
}


/* 3) MASTER COVERAGE PAGE RHYTHM ----------------------------------------- */
body.page-family-coverage .coverage-intro-section,
body.page-family-coverage .coverage-details-section,
body.page-family-coverage .faq-section,
body.page-family-coverage .related-section{
  background:var(--theme-light-bg)!important;
  color:var(--text-on-light-body)!important;
}

body.page-family-coverage .mistake-section,
body.page-family-coverage .final-cta{
  background:var(--theme-dark-bg)!important;
  color:var(--text-on-dark-body)!important;
}


/* 4) MASTER BUSINESS HUB RHYTHM ------------------------------------------ */
body.page-family-business-hub .risk-map-section,
body.page-family-business-hub .pillar-section,
body.page-family-business-hub .coverage-links-section{
  background:var(--theme-light-bg)!important;
  color:var(--text-on-light-body)!important;
}

body.page-family-business-hub .final-cta{
  background:var(--theme-dark-bg)!important;
  color:var(--text-on-dark-body)!important;
}


/* 5) MASTER SIMPLE PAGE RHYTHM ------------------------------------------- */
body.page-family-about .content-section,
body.page-family-about .agency-section,
body.page-family-contact .contact-section,
body.page-family-legal .legal-page-section{
  background:var(--theme-light-bg)!important;
  color:var(--text-on-light-body)!important;
}

body.page-family-about .final-cta,
body.page-family-contact .final-cta,
body.page-family-legal .final-cta{
  background:var(--theme-dark-bg)!important;
  color:var(--text-on-dark-body)!important;
}


/* 6) MASTER HOMEPAGE RHYTHM ---------------------------------------------- */
body.page-family-home .product-band{
  background:var(--theme-gold-strip)!important;
  color:var(--text-on-gold)!important;
}

body.page-family-home #coverage,
body.page-family-home #business-risk,
body.page-family-home #people,
body.page-family-home .process-section{
  background:var(--theme-light-bg)!important;
  color:var(--text-on-light-body)!important;
}

body.page-family-home #property,
body.page-family-home #contracts,
body.page-family-home #advisor.final-cta{
  background:var(--theme-dark-bg)!important;
  color:var(--text-on-dark-body)!important;
}


/* 7) MASTER CARD LISTENER ------------------------------------------------- */
body.site-body .selector-card,
body.site-body .info-card,
body.site-body .process-card,
body.site-body .contact-card,
body.site-body .legal-document,
body.site-body .agency-panel,
body.site-body .detail-panel,
body.site-body .related-card,
body.site-body .landing-link-panel{
  background:var(--theme-card-bg)!important;
  border-color:var(--theme-card-border)!important;
  color:var(--text-on-light-body)!important;
}


/* 8) MASTER FOOTER LISTENER ---------------------------------------------- */
body.site-body footer{
  background:var(--icg-deep-navy)!important;
  color:rgba(255,255,255,.72)!important;
  border-top:1px solid var(--theme-dark-border)!important;
}


/* ==========================================================================
   Batch 44 — Homepage Feel Across Every Page

   Direction:
   Every page should feel like it belongs to the homepage system.

   Important:
   - This does not force every page to use the homepage layout.
   - It applies the homepage's premium feel, spacing, contrast, dark hero
     treatment, gold accents, card language, CTA language, and footer rhythm.
   - Color control remains inside this master theme file only.
   ========================================================================== */


/* 1) SHARED PAGE FEEL TOKENS ---------------------------------------------- */
:root{
  --feel-section-padding: 88px;
  --feel-section-padding-compact: 74px;
  --feel-hero-padding-top: 92px;
  --feel-hero-padding-bottom: 82px;

  --feel-card-radius: 22px;
  --feel-panel-radius: 28px;

  --feel-card-shadow: 0 18px 46px rgba(6,22,41,.075);
  --feel-card-shadow-hover: 0 24px 62px rgba(6,22,41,.12);

  --feel-gold-line:
    linear-gradient(90deg, var(--icg-gold), var(--icg-soft-gold), var(--icg-gold));

  --feel-dark-texture:
    radial-gradient(circle at 16% 14%, rgba(228,196,106,.12), transparent 25rem),
    radial-gradient(circle at 84% 18%, rgba(255,255,255,.055), transparent 18rem),
    linear-gradient(135deg, var(--icg-deep-navy), var(--icg-navy));
}


/* 2) ALL PAGES USE THE HOMEPAGE DARK HERO LANGUAGE ------------------------ */
body.site-body .hero,
body.site-body .subhero,
body.site-body .simple-subhero,
body.site-body .coverage-hero{
  background: var(--feel-dark-texture) !important;
  padding-top: var(--feel-hero-padding-top) !important;
  padding-bottom: var(--feel-hero-padding-bottom) !important;
  border-bottom: 1px solid rgba(228,196,106,.14);
}

body.site-body .hero h1,
body.site-body .subhero h1,
body.site-body .simple-subhero h1,
body.site-body .coverage-hero h1{
  color:#fff !important;
  letter-spacing:-.065em;
  line-height:.98;
}

body.site-body .hero-lede,
body.site-body .hero p,
body.site-body .subhero p,
body.site-body .simple-subhero p,
body.site-body .coverage-hero p{
  color:rgba(255,255,255,.80) !important;
}

body.site-body .gold-line{
  display:block;
  width:120px;
  height:3px;
  margin:24px 0;
  background:var(--feel-gold-line) !important;
}


/* 3) EVERY PAGE GETS THE SAME SECTION RHYTHM ------------------------------ */
body.site-body section{
  padding-top:var(--feel-section-padding);
  padding-bottom:var(--feel-section-padding);
}

body.site-body .content-section,
body.site-body .contact-section,
body.site-body .legal-page-section,
body.site-body .faq-section,
body.site-body .process-section,
body.site-body .agency-section,
body.site-body .coverage-intro-section,
body.site-body .coverage-details-section,
body.site-body .related-section,
body.site-body .risk-map-section,
body.site-body .pillar-section,
body.site-body .coverage-links-section{
  background:var(--theme-light-bg)!important;
}

body.site-body .final-cta,
body.site-body .mistake-section,
body.site-body .property-ops-section,
body.site-body .contracts-req-section{
  background:var(--feel-dark-texture)!important;
}


/* 4) PAGE HEADERS SHOULD FEEL LIKE HOMEPAGE SECTION HEADERS --------------- */
body.site-body .section-head{
  max-width:820px;
  margin-bottom:34px;
}

body.site-body .section-head h2,
body.site-body .content-grid h2,
body.site-body .contact-card h2,
body.site-body .agency-panel h2{
  letter-spacing:-.055em;
  line-height:1;
}

body.site-body .section-head p:not(.eyebrow){
  color:var(--text-on-light-body)!important;
  font-size:18px;
  line-height:1.65;
}

body.site-body .dark-section .section-head p:not(.eyebrow),
body.site-body .property-ops-section .section-head p:not(.eyebrow),
body.site-body .contracts-req-section .section-head p:not(.eyebrow),
body.site-body .mistake-section .section-head p:not(.eyebrow),
body.site-body .final-cta .section-head p:not(.eyebrow){
  color:var(--text-on-dark-body)!important;
}


/* 5) ALL CARDS SHARE THE HOMEPAGE CARD LANGUAGE --------------------------- */
body.site-body .selector-card,
body.site-body .info-card,
body.site-body .process-card,
body.site-body .contact-card,
body.site-body .legal-document,
body.site-body .agency-panel,
body.site-body .detail-panel,
body.site-body .related-card,
body.site-body .landing-link-panel,
body.site-body .risk-card,
body.site-body .pillar-card,
body.site-body .business-visual-card{
  border-radius:var(--feel-card-radius) !important;
  background:var(--theme-card-bg)!important;
  border:1px solid var(--theme-card-border)!important;
  box-shadow:var(--feel-card-shadow)!important;
}

body.site-body .selector-card:hover,
body.site-body .related-card:hover,
body.site-body .landing-link-panel:hover{
  box-shadow:var(--feel-card-shadow-hover)!important;
  transform:translateY(-2px);
}

body.site-body .card-script-icg,
body.site-body .brand-script-icg{
  color:var(--icg-soft-gold);
}


/* 6) BUSINESS HUB PHOTO/RISK VISUAL SHOULD MATCH HOMEPAGE PREMIUM STYLE ---- */
body.page-family-business-hub .business-visual-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.045)) !important;
  border:1px solid rgba(228,196,106,.22)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.28)!important;
}

body.page-family-business-hub .visual-label{
  background:rgba(3,16,31,.82)!important;
  border-color:rgba(228,196,106,.25)!important;
  color:#fff!important;
  box-shadow:0 16px 34px rgba(0,0,0,.28)!important;
}

body.page-family-business-hub .visual-label strong{
  color:#fff!important;
}

body.page-family-business-hub .visual-label span{
  color:rgba(255,255,255,.72)!important;
}


/* 7) ABOUT / CONTACT / LEGAL PAGES SHOULD NOT FEEL LIKE PLAIN DOCUMENTS ---- */
body.page-family-about .agency-panel,
body.page-family-contact .contact-card,
body.page-family-legal .legal-document{
  position:relative;
  overflow:hidden;
}

body.page-family-about .agency-panel:before,
body.page-family-contact .contact-card:before,
body.page-family-legal .legal-document:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:4px;
  background:var(--feel-gold-line);
}

body.page-family-legal .legal-document{
  padding:42px!important;
}


/* 8) COVERAGE PAGES SHOULD FEEL LIKE HOMEPAGE, NOT A DIFFERENT TEMPLATE ---- */
body.page-family-coverage .coverage-details-section,
body.page-family-coverage .related-section,
body.page-family-coverage .faq-section{
  background:var(--theme-light-bg)!important;
}

body.page-family-coverage .detail-panel,
body.page-family-coverage .related-card,
body.page-family-coverage .faq-grid > div{
  background:var(--theme-card-bg)!important;
  border-radius:var(--feel-card-radius)!important;
  box-shadow:var(--feel-card-shadow)!important;
}

body.page-family-coverage .mistake-section{
  border-top:1px solid rgba(228,196,106,.14);
  border-bottom:1px solid rgba(228,196,106,.14);
}


/* 9) FINAL CTA SAME PREMIUM FEEL EVERYWHERE ------------------------------- */
body.site-body .final-cta{
  border-top:1px solid rgba(228,196,106,.14);
  border-bottom:1px solid rgba(228,196,106,.12);
}

body.site-body .final-panel{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.site-body .final-cta h2{
  color:#fff!important;
  letter-spacing:-.055em;
}

body.site-body .final-cta p{
  color:rgba(255,255,255,.78)!important;
}


/* 10) BUTTON LANGUAGE SAME AS HOMEPAGE ------------------------------------ */
body.site-body .btn{
  border-radius:999px;
  font-weight:900;
  letter-spacing:.01em;
}

body.site-body .btn-gold{
  background:linear-gradient(135deg,var(--icg-gold),var(--icg-soft-gold))!important;
  color:var(--icg-deep-navy)!important;
}

body.site-body .btn-outline{
  border:1px solid rgba(228,196,106,.36)!important;
  color:#fff!important;
  background:rgba(255,255,255,.035)!important;
}

body.site-body .btn-light{
  background:var(--theme-card-bg)!important;
  color:var(--icg-navy)!important;
  border:1px solid rgba(6,22,41,.12)!important;
}


/* 11) SMALL SCREEN CONSISTENCY -------------------------------------------- */
@media(max-width:900px){
  body.site-body section{
    padding-top:68px;
    padding-bottom:68px;
  }

  body.site-body .hero,
  body.site-body .subhero,
  body.site-body .simple-subhero,
  body.site-body .coverage-hero{
    padding-top:74px!important;
    padding-bottom:66px!important;
  }
}

@media(max-width:560px){
  body.site-body .legal-document{
    padding:30px!important;
  }
}


/* ==========================================================================
   Batch 45 — Business Insurance Coverage Links Cleanup

   Issue:
   The Business Insurance page coverage-links panel was visually too heavy:
   a large white rounded box, dark block buttons, and too much empty space.

   Fix:
   Keep the section in the master theme, but make it listen to the same
   line-item language used on the homepage/property/contracts sections.

   No page-level color changes.
   ========================================================================== */

body.page-family-business-hub .landing-link-panel{
  width:min(1200px, calc(100% - 48px));
  margin:42px auto 0!important;
  padding:34px 0 0!important;
  background:transparent!important;
  border:0!important;
  border-top:1px solid rgba(6,22,41,.10)!important;
  border-radius:0!important;
  box-shadow:none!important;
}

body.page-family-business-hub .landing-link-panel .eyebrow{
  color:var(--text-on-light-label)!important;
  margin-bottom:18px!important;
}

body.page-family-business-hub .landing-link-panel h3{
  max-width:920px;
  margin:0 0 28px!important;
  color:var(--text-on-light-heading)!important;
  font-size:clamp(2rem,3.5vw,3.35rem)!important;
  line-height:1!important;
  letter-spacing:-.06em!important;
}

body.page-family-business-hub .landing-link-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0 28px!important;
}

body.page-family-business-hub .landing-link-grid a{
  position:relative;
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  min-height:72px;
  padding:18px 34px 18px 0!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid var(--theme-divider)!important;
  color:var(--text-on-light-heading)!important;
  box-shadow:none!important;
  text-decoration:none;
  font-size:18px!important;
  font-weight:950!important;
  letter-spacing:-.02em;
}

body.page-family-business-hub .landing-link-grid a:after{
  content:"→";
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  color:var(--icg-gold);
  font-weight:950;
  opacity:.9;
}

body.page-family-business-hub .landing-link-grid a:hover{
  color:var(--icg-bronze)!important;
  transform:none!important;
}

body.page-family-business-hub .landing-link-grid a:hover:after{
  color:var(--icg-soft-gold);
  transform:translateY(-50%) translateX(4px);
}

body.page-family-business-hub .risk-map-section{
  padding-bottom:72px!important;
}

body.page-family-business-hub .agency-section{
  padding-top:72px!important;
}

@media(max-width:900px){
  body.page-family-business-hub .landing-link-panel{
    width:min(100% - 32px, 720px);
  }

  body.page-family-business-hub .landing-link-grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:560px){
  body.page-family-business-hub .landing-link-panel{
    width:calc(100% - 28px);
    margin-top:32px!important;
  }

  body.page-family-business-hub .landing-link-grid a{
    min-height:64px;
    font-size:16px!important;
  }
}


/* ==========================================================================
   Batch 46 — Master Agency Panel Cleanup

   Issue:
   The "Business Risk" / "Invicta difference" style sections were still using
   the old .agency-panel card component. The page was listening to the master,
   but this component still behaved like a giant white card.

   Fix:
   Make .agency-section .agency-panel a master split-text section instead of
   a boxed card. This keeps the premium homepage feel and prevents the section
   from looking like a random oversized white container.

   No page-level color changes.
   ========================================================================== */

body.site-body .agency-section{
  background:var(--theme-light-bg)!important;
  padding-top:var(--feel-section-padding)!important;
  padding-bottom:var(--feel-section-padding)!important;
}

body.site-body .agency-section .agency-panel{
  display:grid;
  grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);
  gap:clamp(42px,6vw,92px);
  align-items:start;
  padding:42px 0 0!important;
  background:transparent!important;
  border:0!important;
  border-top:1px solid rgba(6,22,41,.12)!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}

body.site-body .agency-section .agency-panel:before{
  display:none!important;
}

body.site-body .agency-section .agency-panel .eyebrow{
  color:var(--text-on-light-label)!important;
  margin-bottom:20px!important;
}

body.site-body .agency-section .agency-panel h2{
  max-width:660px;
  margin:0!important;
  color:var(--text-on-light-heading)!important;
  font-size:clamp(3rem,5.1vw,5.8rem)!important;
  line-height:.98!important;
  letter-spacing:-.07em!important;
}

body.site-body .agency-section .agency-panel p{
  max-width:760px;
  color:var(--text-on-light-body)!important;
  font-size:clamp(18px,1.45vw,23px)!important;
  line-height:1.62!important;
}

body.site-body .agency-section .agency-panel .gold-copy{
  position:relative;
  margin:0 0 28px!important;
  padding-left:24px;
  color:var(--text-on-light-heading)!important;
  font-size:clamp(21px,2vw,30px)!important;
  line-height:1.45!important;
  font-weight:950!important;
  letter-spacing:-.025em;
}

body.site-body .agency-section .agency-panel .gold-copy:before{
  content:"";
  position:absolute;
  left:0;
  top:.25em;
  bottom:.25em;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg,var(--icg-gold),var(--icg-soft-gold));
}

body.site-body .agency-section .agency-panel p:last-child{
  margin-bottom:0!important;
}

/* About page uses the same master agency panel, but with a slightly smaller heading */
body.page-family-about .agency-section .agency-panel h2{
  font-size:clamp(2.5rem,4.4vw,4.8rem)!important;
}

/* Business hub agency panel should not fall back to a boxed card either */
body.page-family-business-hub .agency-section .agency-panel{
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}

/* Do not treat agency-panel as a generic card anymore */
body.site-body .agency-panel{
  box-shadow:none!important;
}

@media(max-width:900px){
  body.site-body .agency-section .agency-panel{
    grid-template-columns:1fr;
    gap:30px;
    padding-top:34px!important;
  }

  body.site-body .agency-section .agency-panel h2{
    font-size:clamp(2.65rem,10vw,4.2rem)!important;
  }

  body.site-body .agency-section .agency-panel p{
    font-size:18px!important;
  }

  body.site-body .agency-section .agency-panel .gold-copy{
    font-size:21px!important;
  }
}

@media(max-width:560px){
  body.site-body .agency-section .agency-panel{
    padding-top:28px!important;
  }

  body.site-body .agency-section .agency-panel .gold-copy{
    padding-left:18px;
  }
}


/* ==========================================================================
   Batch 47 — Homepage Fold + Header Cleanup

   Issue from screenshot:
   The homepage hero had too much dead space above the main headline, and the
   header/logo area felt oversized. The first fold was wasting vertical space.

   Fix:
   Tighten the shared header and move homepage hero content higher in the fold.
   This is controlled from the master theme only.

   No page-level color changes.
   ========================================================================== */


/* 1) Header should feel premium but not eat the page */
body.site-body header{
  min-height:auto!important;
}

body.site-body .header-inner{
  min-height:68px!important;
  gap:16px!important;
  overflow:visible!important;
}

body.site-body .brand-script-icg{
  min-width:70px!important;
  height:44px!important;
  font-size:38px!important;
  line-height:1!important;
}

body.site-body .brand-wordmark strong{
  font-size:18px!important;
  letter-spacing:.14em!important;
}

body.site-body .brand-wordmark small{
  font-size:8.5px!important;
  letter-spacing:.22em!important;
}

body.site-body .nationwide-badge{
  margin-left:34px!important;
  margin-right:12px!important;
}

body.site-body .nationwide-text strong{
  font-size:11.5px!important;
}

body.site-body .nationwide-text small{
  font-size:8.5px!important;
}

body.site-body nav a{
  font-size:13px!important;
  padding:9px 8px!important;
}

body.site-body .phone{
  font-size:14px!important;
}

body.site-body .cta-nowrap{
  min-height:44px!important;
  height:44px!important;
  padding:0 20px!important;
}


/* 2) Homepage hero should start selling sooner */
body.page-family-home .hero{
  min-height:auto!important;
  padding-top:0!important;
  padding-bottom:0!important;
}

body.page-family-home .hero-grid{
  min-height:calc(100vh - 74px)!important;
  align-items:center!important;
  padding:44px 0 58px!important;
  gap:clamp(34px,4vw,56px)!important;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,430px)!important;
}

body.page-family-home .hero-grid > div:first-child{
  transform:translateY(-18px);
}

body.page-family-home .about-card{
  align-self:center!important;
  transform:translateY(-8px);
  padding:28px!important;
}

body.page-family-home .hero .eyebrow{
  margin-bottom:18px!important;
}

body.page-family-home .hero h1{
  font-size:clamp(3.4rem,5.7vw,5.9rem)!important;
  line-height:.92!important;
  letter-spacing:-.078em!important;
  margin-bottom:18px!important;
  max-width:820px!important;
}

body.page-family-home .hero .gold-line{
  margin:22px 0!important;
}

body.page-family-home .hero-lede{
  max-width:760px!important;
  font-size:clamp(1.03rem,1.25vw,1.18rem)!important;
  line-height:1.52!important;
  margin-top:0!important;
}

body.page-family-home .hero-actions{
  margin-top:28px!important;
}

body.page-family-home .hero-proof{
  margin-top:24px!important;
}


/* 3) Keep subpage heroes compact too, without flattening their style */
body.site-body .subhero,
body.site-body .simple-subhero,
body.site-body .coverage-hero{
  padding-top:72px!important;
  padding-bottom:68px!important;
}


/* 4) Responsiveness */
@media(max-width:1180px){
  body.site-body .nationwide-badge{
    display:none!important;
  }

  body.page-family-home .hero-grid{
    grid-template-columns:1fr!important;
    min-height:auto!important;
    padding:64px 0 68px!important;
  }

  body.page-family-home .hero-grid > div:first-child,
  body.page-family-home .about-card{
    transform:none;
  }

  body.page-family-home .about-card{
    max-width:620px;
  }
}

@media(max-width:760px){
  body.site-body .header-inner{
    min-height:64px!important;
  }

  body.site-body .brand-script-icg{
    min-width:60px!important;
    height:40px!important;
    font-size:34px!important;
  }

  body.page-family-home .hero-grid{
    padding:54px 0 58px!important;
  }

  body.page-family-home .hero h1{
    font-size:clamp(2.55rem,12vw,4.2rem)!important;
    line-height:.98!important;
  }
}

@media(max-width:560px){
  body.site-body .brand-wordmark strong{
    font-size:15px!important;
    letter-spacing:.11em!important;
  }

  body.site-body .brand-wordmark small{
    font-size:7px!important;
  }

  body.page-family-home .hero-grid{
    padding:46px 0 52px!important;
  }
}


/* ==========================================================================
   Batch 48 — Homepage Section Gap Cleanup

   Issue from screenshot:
   The gap between the homepage coverage cards and the Business Risk section
   was too large. The master spacing rules were stacking:
   - coverage section bottom padding
   - business risk section top padding
   - agency panel top padding

   Fix:
   Keep the master system, but program a tighter homepage transition between
   the coverage selector and the Business Risk split-text section.

   No page-level color changes.
   ========================================================================== */

body.page-family-home #coverage{
  padding-bottom:42px!important;
}

body.page-family-home #coverage .selector-grid{
  margin-bottom:0!important;
}

body.page-family-home #business-risk.agency-section{
  padding-top:34px!important;
  padding-bottom:78px!important;
}

body.page-family-home #business-risk .agency-panel{
  padding-top:28px!important;
}

body.page-family-home #business-risk .agency-panel .eyebrow{
  margin-bottom:18px!important;
}

/* Keep the same correction on tablet/mobile so the gap does not return */
@media(max-width:900px){
  body.page-family-home #coverage{
    padding-bottom:34px!important;
  }

  body.page-family-home #business-risk.agency-section{
    padding-top:28px!important;
    padding-bottom:64px!important;
  }

  body.page-family-home #business-risk .agency-panel{
    padding-top:24px!important;
  }
}

@media(max-width:560px){
  body.page-family-home #coverage{
    padding-bottom:28px!important;
  }

  body.page-family-home #business-risk.agency-section{
    padding-top:24px!important;
    padding-bottom:58px!important;
  }
}


/* ==========================================================================
   Batch 49 — Master Gap System

   Issue:
   Section spacing was being corrected one screenshot at a time.

   Fix:
   Add a master vertical rhythm system so repeated page patterns do not stack
   too much blank space between sections.

   Rule:
   - All spacing rules live in theme.css.
   - No page-level color changes.
   - No page markup changes.
   ========================================================================== */


/* 1) MASTER SPACING TOKENS ------------------------------------------------ */
:root{
  --gap-hero-section-top:72px;
  --gap-section-top:74px;
  --gap-section-bottom:74px;
  --gap-same-bg-top:42px;
  --gap-tight-top:30px;
  --gap-dark-transition-top:72px;
  --gap-final-cta-top:76px;
}


/* 2) DEFAULT PAGE SECTION RHYTHM ----------------------------------------- */
body.site-body main > section{
  padding-top:var(--gap-section-top)!important;
  padding-bottom:var(--gap-section-bottom)!important;
}

/* Heroes use their own rhythm and do not create an oversized handoff. */
body.site-body main > .hero,
body.site-body main > .subhero,
body.site-body main > .simple-subhero,
body.site-body main > .coverage-hero{
  padding-top:72px!important;
  padding-bottom:68px!important;
}

body.page-family-home main > .hero{
  padding-top:0!important;
  padding-bottom:0!important;
}

/* First section after a hero needs breathing room, but not a giant blank zone. */
body.site-body main > .hero + section,
body.site-body main > .subhero + section,
body.site-body main > .simple-subhero + section,
body.site-body main > .coverage-hero + section{
  padding-top:var(--gap-hero-section-top)!important;
}


/* 3) SAME-BACKGROUND TRANSITIONS ------------------------------------------
   When two warm-ivory sections follow each other, reduce the top padding on
   the second section so the page reads as one connected story.
----------------------------------------------------------------------------- */

body.site-body main > .content-section + .agency-section,
body.site-body main > .agency-section + .process-section,
body.site-body main > .contact-section + .faq-section,
body.site-body main > .legal-page-section + .faq-section,
body.site-body main > .coverage-intro-section + .coverage-details-section,
body.site-body main > .faq-section + .related-section,
body.site-body main > .risk-map-section + .agency-section,
body.site-body main > .agency-section + .business-pillars-section,
body.site-body main > .business-pillars-section + .dark-section{
  padding-top:var(--gap-same-bg-top)!important;
}


/* 4) HOMEPAGE SPECIFIC MASTER GAP MAP -------------------------------------
   Homepage:
   Hero → Product strip → Coverage selector → Business Risk → Property
   → People → Contracts → Process → Final CTA
----------------------------------------------------------------------------- */

body.page-family-home .product-band + #coverage{
  padding-top:64px!important;
}

body.page-family-home #coverage{
  padding-bottom:38px!important;
}

body.page-family-home #coverage + #business-risk{
  padding-top:26px!important;
  padding-bottom:70px!important;
}

body.page-family-home #business-risk + #property,
body.page-family-home #property + #people,
body.page-family-home #people + #contracts,
body.page-family-home #contracts + .process-section,
body.page-family-home .process-section + .final-cta{
  padding-top:var(--gap-dark-transition-top)!important;
}

body.page-family-home #property,
body.page-family-home #contracts{
  padding-bottom:76px!important;
}

body.page-family-home #people,
body.page-family-home .process-section{
  padding-bottom:72px!important;
}


/* 5) COVERAGE PAGE MASTER GAP MAP -----------------------------------------
   Coverage pages:
   Hero → Intro → Details → Mistakes → FAQ → Related → CTA
----------------------------------------------------------------------------- */

body.page-family-coverage .coverage-intro-section{
  padding-top:64px!important;
  padding-bottom:42px!important;
}

body.page-family-coverage .coverage-intro-section + .coverage-details-section{
  padding-top:30px!important;
  padding-bottom:70px!important;
}

body.page-family-coverage .coverage-details-section + .mistake-section{
  padding-top:72px!important;
  padding-bottom:72px!important;
}

body.page-family-coverage .mistake-section + .faq-section{
  padding-top:70px!important;
  padding-bottom:40px!important;
}

body.page-family-coverage .faq-section + .related-section{
  padding-top:30px!important;
  padding-bottom:64px!important;
}

body.page-family-coverage .related-section + .final-cta{
  padding-top:var(--gap-final-cta-top)!important;
  padding-bottom:var(--gap-final-cta-top)!important;
}


/* 6) BUSINESS HUB MASTER GAP MAP ----------------------------------------- */

body.page-family-business-hub .subhero + .risk-map-section{
  padding-top:68px!important;
  padding-bottom:42px!important;
}

body.page-family-business-hub .risk-map-section + .agency-section{
  padding-top:32px!important;
  padding-bottom:68px!important;
}

body.page-family-business-hub .agency-section + .business-pillars-section{
  padding-top:40px!important;
  padding-bottom:70px!important;
}

body.page-family-business-hub .business-pillars-section + .dark-section{
  padding-top:76px!important;
  padding-bottom:76px!important;
}

body.page-family-business-hub .dark-section + .final-cta{
  padding-top:66px!important;
  padding-bottom:76px!important;
}


/* 7) ABOUT / CONTACT / LEGAL MASTER GAP MAP ------------------------------- */

body.page-family-about .subhero + .content-section{
  padding-top:66px!important;
  padding-bottom:36px!important;
}

body.page-family-about .content-section + .agency-section{
  padding-top:30px!important;
  padding-bottom:62px!important;
}

body.page-family-about .agency-section + .process-section{
  padding-top:42px!important;
  padding-bottom:70px!important;
}

body.page-family-about .process-section + .final-cta{
  padding-top:var(--gap-final-cta-top)!important;
  padding-bottom:var(--gap-final-cta-top)!important;
}

body.page-family-contact .subhero + .contact-section{
  padding-top:66px!important;
  padding-bottom:40px!important;
}

body.page-family-contact .contact-section + .faq-section{
  padding-top:30px!important;
  padding-bottom:70px!important;
}

body.page-family-legal .subhero + .legal-page-section{
  padding-top:66px!important;
  padding-bottom:72px!important;
}


/* 8) COMPONENT INTERNAL SPACING GUARDRAILS -------------------------------- */

body.site-body .section-head{
  margin-bottom:30px!important;
}

body.site-body .selector-grid,
body.site-body .risk-grid,
body.site-body .pillar-grid,
body.site-body .process-grid,
body.site-body .faq-grid,
body.site-body .related-grid{
  margin-top:0!important;
}

body.site-body .agency-section .agency-panel{
  padding-top:26px!important;
}


/* 9) MOBILE RHYTHM -------------------------------------------------------- */
@media(max-width:900px){
  :root{
    --gap-hero-section-top:54px;
    --gap-section-top:58px;
    --gap-section-bottom:58px;
    --gap-same-bg-top:28px;
    --gap-dark-transition-top:58px;
    --gap-final-cta-top:62px;
  }

  body.site-body main > .hero,
  body.site-body main > .subhero,
  body.site-body main > .simple-subhero,
  body.site-body main > .coverage-hero{
    padding-top:58px!important;
    padding-bottom:54px!important;
  }

  body.page-family-home #coverage + #business-risk{
    padding-top:22px!important;
  }

  body.site-body .agency-section .agency-panel{
    padding-top:22px!important;
  }
}

@media(max-width:560px){
  :root{
    --gap-hero-section-top:46px;
    --gap-section-top:50px;
    --gap-section-bottom:50px;
    --gap-same-bg-top:24px;
    --gap-dark-transition-top:52px;
    --gap-final-cta-top:56px;
  }

  body.page-family-home #coverage{
    padding-bottom:26px!important;
  }

  body.page-family-home #coverage + #business-risk{
    padding-top:18px!important;
  }
}


/* ==========================================================================
   Batch 50 — Remove Homepage Gold Product Strip

   Issue from screenshot:
   The gold product strip between the hero and the coverage selector is strong,
   but it interrupts the premium flow and creates an unnecessary color break.

   Fix:
   Remove the strip visually from the homepage through the master theme only.
   Adjust the next section spacing so the page does not leave a gap behind.

   No page-level color changes.
   No page markup changes.
   ========================================================================== */

body.page-family-home .product-band{
  display:none!important;
}

body.page-family-home .product-band + #coverage,
body.page-family-home #coverage{
  padding-top:68px!important;
}

@media(max-width:900px){
  body.page-family-home .product-band + #coverage,
  body.page-family-home #coverage{
    padding-top:54px!important;
  }
}

@media(max-width:560px){
  body.page-family-home .product-band + #coverage,
  body.page-family-home #coverage{
    padding-top:46px!important;
  }
}


/* ==========================================================================
   Batch 51 — Master Homepage Hero Component

   Issue:
   The first homepage section was still coded like an older custom hero:
   .hero, .hero-grid, and .about-card. That made it behave differently from
   the master section system.

   Fix:
   The homepage hero now also uses the master hero component:
   .site-hero
   .site-hero-grid
   .site-hero-copy
   .site-hero-card

   The old classes remain for compatibility, but the master component is now
   the final authority.

   No page-level color changes.
   ========================================================================== */


/* 1) Master hero component shell */
body.site-body .site-hero{
  position:relative;
  overflow:hidden;
  background:var(--feel-dark-texture)!important;
  color:var(--text-on-dark-body)!important;
  border-bottom:1px solid rgba(228,196,106,.14);
}

body.site-body .site-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(118deg, transparent 0 54%, rgba(201,154,54,.13) 54% 55%, transparent 55% 100%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 14px);
  opacity:.72;
  pointer-events:none;
}

body.site-body .site-hero .container{
  position:relative;
  z-index:2;
}


/* 2) Master homepage hero layout */
body.page-family-home .site-hero-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,430px)!important;
  gap:clamp(34px,4vw,56px)!important;
  align-items:center!important;
  min-height:calc(100vh - 68px)!important;
  padding:44px 0 56px!important;
}

body.page-family-home .site-hero-copy{
  max-width:860px;
}

body.page-family-home .site-hero-copy .eyebrow{
  margin-bottom:18px!important;
  color:var(--text-on-dark-label)!important;
}

body.page-family-home .site-hero-copy h1{
  max-width:820px!important;
  margin:0 0 18px!important;
  color:var(--text-on-dark-heading)!important;
  font-size:clamp(3.4rem,5.7vw,5.9rem)!important;
  line-height:.92!important;
  letter-spacing:-.078em!important;
}

body.page-family-home .site-hero-copy .gold-line{
  margin:22px 0!important;
}

body.page-family-home .site-hero-copy .hero-lede{
  max-width:760px!important;
  margin-top:0!important;
  color:var(--text-on-dark-body)!important;
  font-size:clamp(1.03rem,1.25vw,1.18rem)!important;
  line-height:1.52!important;
}

body.page-family-home .site-hero-copy .hero-actions{
  margin-top:28px!important;
}

body.page-family-home .site-hero-copy .hero-proof{
  margin-top:24px!important;
}


/* 3) Master homepage hero card */
body.page-family-home .site-hero-card{
  align-self:center!important;
  position:relative!important;
  padding:28px!important;
  border-radius:var(--feel-panel-radius)!important;
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.045))!important;
  border:1px solid rgba(228,196,106,.24)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.28)!important;
  overflow:hidden!important;
}

body.page-family-home .site-hero-card:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:5px;
  background:var(--feel-gold-line);
}

body.page-family-home .site-hero-card h2{
  color:#fff!important;
}

body.page-family-home .site-hero-card p,
body.page-family-home .site-hero-card .trust-list div{
  color:rgba(255,255,255,.78)!important;
}

body.page-family-home .site-hero-card strong{
  color:#fff!important;
}


/* 4) Override old hero-specific behavior only when the new master class is present */
body.page-family-home .site-hero.hero{
  padding-top:0!important;
  padding-bottom:0!important;
  min-height:auto!important;
}

body.page-family-home .site-hero .hero-grid{
  padding:44px 0 56px!important;
}

body.page-family-home .site-hero .about-card{
  transform:none!important;
}


/* 5) Responsive master hero behavior */
@media(max-width:1180px){
  body.page-family-home .site-hero-grid{
    grid-template-columns:1fr!important;
    min-height:auto!important;
    padding:64px 0 68px!important;
  }

  body.page-family-home .site-hero-card{
    max-width:620px;
  }
}

@media(max-width:760px){
  body.page-family-home .site-hero-grid{
    padding:54px 0 58px!important;
  }

  body.page-family-home .site-hero-copy h1{
    font-size:clamp(2.55rem,12vw,4.2rem)!important;
    line-height:.98!important;
  }
}

@media(max-width:560px){
  body.page-family-home .site-hero-grid{
    padding:46px 0 52px!important;
  }
}


/* ==========================================================================
   Batch 52 — Master Hero Authority

   Direction:
   The classy first-section look should be controlled by the master theme,
   not by adding special component classes to the homepage markup.

   Decision:
   Keep the classy hero look. It works. It makes the brand feel premium,
   serious, commercial, and different from a generic insurance site.

   Guardrail:
   Use the same hero language across the site, but do not force every page to
   have the homepage's two-column sales-card layout.

   No page-level color changes.
   ========================================================================== */


/* 1) Master hero look applies by page role, not special page markup */
body.site-body main > section:first-child,
body.site-body .hero,
body.site-body .subhero,
body.site-body .simple-subhero,
body.site-body .coverage-hero{
  position:relative;
  overflow:hidden;
  background:var(--feel-dark-texture)!important;
  color:var(--text-on-dark-body)!important;
  border-bottom:1px solid rgba(228,196,106,.14)!important;
}

body.site-body main > section:first-child:before,
body.site-body .hero:before,
body.site-body .subhero:before,
body.site-body .simple-subhero:before,
body.site-body .coverage-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(118deg, transparent 0 54%, rgba(201,154,54,.13) 54% 55%, transparent 55% 100%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 14px);
  opacity:.72;
  pointer-events:none;
}

body.site-body main > section:first-child > .container,
body.site-body .hero > .container,
body.site-body .subhero > .container,
body.site-body .simple-subhero > .container,
body.site-body .coverage-hero > .container{
  position:relative;
  z-index:2;
}


/* 2) Master hero typography */
body.site-body .hero h1,
body.site-body .subhero h1,
body.site-body .simple-subhero h1,
body.site-body .coverage-hero h1,
body.site-body main > section:first-child h1{
  color:#fff!important;
  letter-spacing:-.075em!important;
  line-height:.94!important;
}

body.site-body .hero p,
body.site-body .subhero p,
body.site-body .simple-subhero p,
body.site-body .coverage-hero p,
body.site-body main > section:first-child p{
  color:rgba(255,255,255,.80)!important;
}

body.site-body .hero .eyebrow,
body.site-body .subhero .eyebrow,
body.site-body .simple-subhero .eyebrow,
body.site-body .coverage-hero .eyebrow,
body.site-body main > section:first-child .eyebrow{
  color:var(--text-on-dark-label)!important;
}


/* 3) Homepage keeps the classy two-column hero layout, controlled by master */
body.page-family-home .hero{
  min-height:auto!important;
  padding-top:0!important;
  padding-bottom:0!important;
}

body.page-family-home .hero-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,430px)!important;
  gap:clamp(34px,4vw,56px)!important;
  align-items:center!important;
  min-height:calc(100vh - 68px)!important;
  padding:44px 0 56px!important;
}

body.page-family-home .hero-grid > div:first-child{
  max-width:860px;
}

body.page-family-home .hero h1{
  max-width:820px!important;
  margin:0 0 18px!important;
  font-size:clamp(3.4rem,5.7vw,5.9rem)!important;
  line-height:.92!important;
  letter-spacing:-.078em!important;
}

body.page-family-home .hero .gold-line{
  margin:22px 0!important;
}

body.page-family-home .hero-lede{
  max-width:760px!important;
  margin-top:0!important;
  font-size:clamp(1.03rem,1.25vw,1.18rem)!important;
  line-height:1.52!important;
}

body.page-family-home .hero-actions{
  margin-top:28px!important;
}

body.page-family-home .hero-proof{
  margin-top:24px!important;
}


/* 4) Homepage card remains classy, but master controls it */
body.page-family-home .about-card{
  align-self:center!important;
  position:relative!important;
  padding:28px!important;
  border-radius:var(--feel-panel-radius)!important;
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.045))!important;
  border:1px solid rgba(228,196,106,.24)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.28)!important;
  overflow:hidden!important;
  transform:none!important;
}

body.page-family-home .about-card:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:5px;
  background:var(--feel-gold-line);
}

body.page-family-home .about-card h2{
  color:#fff!important;
}

body.page-family-home .about-card p,
body.page-family-home .about-card .trust-list div{
  color:rgba(255,255,255,.78)!important;
}

body.page-family-home .about-card strong{
  color:#fff!important;
}


/* 5) Subpages share the hero feel without copying the homepage card layout */
body.site-body .subhero,
body.site-body .simple-subhero,
body.site-body .coverage-hero{
  padding-top:72px!important;
  padding-bottom:68px!important;
}

body.site-body .narrow-hero h1,
body.site-body .coverage-hero h1{
  max-width:960px!important;
}


/* 6) Responsive master behavior */
@media(max-width:1180px){
  body.page-family-home .hero-grid{
    grid-template-columns:1fr!important;
    min-height:auto!important;
    padding:64px 0 68px!important;
  }

  body.page-family-home .about-card{
    max-width:620px;
  }
}

@media(max-width:760px){
  body.page-family-home .hero-grid{
    padding:54px 0 58px!important;
  }

  body.page-family-home .hero h1{
    font-size:clamp(2.55rem,12vw,4.2rem)!important;
    line-height:.98!important;
  }

  body.site-body .subhero,
  body.site-body .simple-subhero,
  body.site-body .coverage-hero{
    padding-top:58px!important;
    padding-bottom:54px!important;
  }
}

@media(max-width:560px){
  body.page-family-home .hero-grid{
    padding:46px 0 52px!important;
  }
}


/* ==========================================================================
   Batch 53 — Master Section Feel System

   Direction:
   Every section should feel like Invicta, whether it is dark navy, warm ivory,
   card-based, editorial, or line-item.

   This is not a color change.
   This is a master section/component feel system.

   Rule:
   - Pages do not control colors.
   - Pages do not need one-off spacing patches.
   - Existing section classes are mapped into consistent design families here.
   ========================================================================== */


/* 1) MASTER FEEL TOKENS --------------------------------------------------- */
:root{
  --feel-max-readable: 860px;
  --feel-max-wide-copy: 980px;

  --feel-section-rule: 1px solid rgba(6,22,41,.10);
  --feel-section-rule-dark: 1px solid rgba(228,196,106,.14);

  --feel-card-radius-master: 24px;
  --feel-panel-radius-master: 30px;

  --feel-card-pad: clamp(24px,2.8vw,34px);
  --feel-panel-pad: clamp(30px,4vw,48px);

  --feel-card-shadow-master: 0 18px 48px rgba(6,22,41,.075);
  --feel-soft-shadow-master: 0 12px 32px rgba(6,22,41,.055);

  --feel-heading-tight: -.065em;
  --feel-heading-normal: -.045em;

  --feel-line-item-height: 74px;
  --feel-line-item-gap: 28px;
}


/* 2) GLOBAL SECTION DNA ---------------------------------------------------
   Every section should have one of these behaviors:
   - premium dark
   - warm editorial
   - card grid
   - line-item grid
   - final CTA
----------------------------------------------------------------------------- */

body.site-body main > section{
  position:relative;
}

body.site-body main > section:not(.hero):not(.subhero):not(.simple-subhero):not(.coverage-hero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.mistake-section):not(.final-cta){
  background:var(--theme-light-bg)!important;
}

body.site-body main > section:not(.hero):not(.subhero):not(.simple-subhero):not(.coverage-hero):not(.final-cta) + section:not(.final-cta){
  border-top:0;
}


/* 3) MASTER SECTION HEADER SYSTEM ---------------------------------------- */

body.site-body .section-head,
body.site-body .areas-header,
body.site-body .contracts-areas-header{
  max-width:var(--feel-max-wide-copy);
  margin-bottom:clamp(28px,3vw,38px)!important;
}

body.site-body .section-head .eyebrow,
body.site-body .areas-header .eyebrow,
body.site-body .contracts-areas-header .eyebrow{
  margin-bottom:14px!important;
}

body.site-body .section-head h2,
body.site-body .areas-header h3,
body.site-body .contracts-areas-header h3{
  max-width:920px;
  letter-spacing:var(--feel-heading-tight)!important;
  line-height:.98!important;
}

body.site-body .section-head p:not(.eyebrow){
  max-width:840px;
  margin-top:18px!important;
  font-size:clamp(17px,1.25vw,20px)!important;
  line-height:1.65!important;
}


/* 4) MASTER EDITORIAL SPLIT SYSTEM ---------------------------------------
   Used by Business Risk, About review, Invicta Difference, etc.
----------------------------------------------------------------------------- */

body.site-body .agency-section .agency-panel,
body.site-body .content-grid{
  display:grid!important;
  grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr)!important;
  gap:clamp(42px,6vw,92px)!important;
  align-items:start!important;
}

body.site-body .agency-section .agency-panel{
  padding:30px 0 0!important;
  border:0!important;
  border-top:var(--feel-section-rule)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body.site-body .agency-section .agency-panel h2,
body.site-body .content-grid h2{
  max-width:720px;
  color:var(--text-on-light-heading)!important;
  font-size:clamp(2.9rem,5vw,5.55rem)!important;
  line-height:.98!important;
  letter-spacing:-.072em!important;
}

body.site-body .agency-section .agency-panel p,
body.site-body .content-grid .prose p{
  max-width:760px;
  font-size:clamp(18px,1.35vw,22px)!important;
  line-height:1.65!important;
}

body.site-body .gold-copy{
  position:relative;
  padding-left:24px;
  color:var(--text-on-light-heading)!important;
  font-size:clamp(21px,1.9vw,29px)!important;
  line-height:1.45!important;
  font-weight:950!important;
  letter-spacing:-.025em;
}

body.site-body .gold-copy:before{
  content:"";
  position:absolute;
  left:0;
  top:.22em;
  bottom:.22em;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg,var(--icg-gold),var(--icg-soft-gold));
}


/* 5) MASTER CARD GRID SYSTEM ---------------------------------------------
   Used by coverage cards, process cards, risk cards, pillar cards, FAQ cards,
   related cards, and detail panels.
----------------------------------------------------------------------------- */

body.site-body .selector-grid,
body.site-body .risk-grid,
body.site-body .pillar-grid,
body.site-body .process-grid,
body.site-body .faq-grid,
body.site-body .related-grid{
  gap:clamp(16px,1.7vw,24px)!important;
}

body.site-body .selector-card,
body.site-body .risk-card,
body.site-body .pillar-card,
body.site-body .process-card,
body.site-body .info-card,
body.site-body .contact-card,
body.site-body .legal-document,
body.site-body .coverage-page .detail-panel,
body.site-body .coverage-page .faq-grid > div,
body.site-body .coverage-page .related-card{
  border-radius:var(--feel-card-radius-master)!important;
  padding:var(--feel-card-pad)!important;
  background:var(--theme-card-bg)!important;
  border:1px solid var(--theme-card-border)!important;
  box-shadow:var(--feel-card-shadow-master)!important;
  color:var(--text-on-light-body)!important;
}

body.site-body .selector-card h3,
body.site-body .risk-card h3,
body.site-body .pillar-card h3,
body.site-body .process-card h3,
body.site-body .info-card h3,
body.site-body .contact-card h3,
body.site-body .coverage-page .detail-panel h3,
body.site-body .coverage-page .faq-grid h3,
body.site-body .coverage-page .related-card h3{
  color:var(--text-on-light-heading)!important;
  letter-spacing:-.04em!important;
  line-height:1.05!important;
}

body.site-body .selector-card p,
body.site-body .risk-card p,
body.site-body .pillar-card p,
body.site-body .process-card p,
body.site-body .info-card p,
body.site-body .contact-card p,
body.site-body .coverage-page .detail-panel p,
body.site-body .coverage-page .faq-grid p,
body.site-body .coverage-page .related-card p{
  color:var(--text-on-light-body)!important;
  line-height:1.62!important;
}

body.site-body .selector-card:hover,
body.site-body .related-card:hover,
body.site-body .landing-link-panel:hover{
  box-shadow:var(--feel-card-shadow-hover)!important;
  transform:translateY(-2px);
}


/* 6) MASTER DARK FEATURE SECTION SYSTEM ---------------------------------- */

body.site-body .dark-section,
body.site-body .property-ops-section,
body.site-body .contracts-req-section,
body.site-body .mistake-section,
body.site-body .final-cta{
  background:var(--feel-dark-texture)!important;
  border-top:var(--feel-section-rule-dark)!important;
  border-bottom:var(--feel-section-rule-dark)!important;
}

body.site-body .dark-section h2,
body.site-body .dark-section h3,
body.site-body .property-ops-section h2,
body.site-body .property-ops-section h3,
body.site-body .contracts-req-section h2,
body.site-body .contracts-req-section h3,
body.site-body .mistake-section h2,
body.site-body .final-cta h2{
  color:#fff!important;
  letter-spacing:var(--feel-heading-tight)!important;
}

body.site-body .dark-section p,
body.site-body .property-ops-section p,
body.site-body .contracts-req-section p,
body.site-body .mistake-section p,
body.site-body .final-cta p{
  color:var(--text-on-dark-body)!important;
}


/* 7) MASTER LINE-ITEM SYSTEM ---------------------------------------------
   Used by property review, contracts review, coverage links, common mistakes,
   and mini lists.
----------------------------------------------------------------------------- */

body.site-body .area-grid,
body.site-body .contracts-area-grid,
body.site-body .landing-link-grid,
body.site-body .mini-list{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0 var(--feel-line-item-gap)!important;
}

body.site-body .area-grid a,
body.site-body .contracts-area-grid a,
body.site-body .landing-link-grid a,
body.site-body .mini-list span{
  position:relative;
  display:flex!important;
  align-items:center!important;
  min-height:var(--feel-line-item-height)!important;
  padding:18px 34px 18px 0!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid var(--theme-divider)!important;
  box-shadow:none!important;
  text-decoration:none!important;
  font-weight:950!important;
  letter-spacing:-.02em;
}

body.site-body .area-grid a,
body.site-body .contracts-area-grid a{
  color:#fff!important;
}

body.site-body .landing-link-grid a,
body.site-body .mini-list span{
  color:var(--text-on-light-heading)!important;
}

body.site-body .area-grid span,
body.site-body .contracts-area-grid span{
  color:var(--text-on-dark-label)!important;
}

body.site-body .area-grid strong,
body.site-body .contracts-area-grid strong{
  color:#fff!important;
}

body.site-body .landing-link-grid a:after{
  content:"→";
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  color:var(--icg-gold);
  font-weight:950;
  opacity:.9;
}


/* Common mistakes are line items too, but with numbered text layout */
body.site-body .mistake-list{
  display:grid!important;
  gap:0!important;
}

body.site-body .mistake-list div{
  position:relative;
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
  padding:18px 0!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid rgba(228,196,106,.18)!important;
  box-shadow:none!important;
}

body.site-body .mistake-list span{
  color:var(--text-on-dark-label)!important;
  font-size:12px!important;
  font-weight:950!important;
  letter-spacing:.12em;
}

body.site-body .mistake-list p{
  color:#fff!important;
  font-size:17px!important;
  line-height:1.58!important;
}


/* 8) MASTER CTA SYSTEM ---------------------------------------------------- */

body.site-body .final-panel{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:clamp(28px,4vw,56px)!important;
  align-items:center!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.site-body .final-cta h2{
  max-width:820px;
  font-size:clamp(2.7rem,5vw,5.25rem)!important;
  line-height:.98!important;
  letter-spacing:-.07em!important;
}

body.site-body .final-cta p{
  max-width:760px;
  font-size:clamp(17px,1.3vw,21px)!important;
  line-height:1.65!important;
}

body.site-body .cta-card{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}


/* 9) DARK DETAIL CARDS SHOULD NOT BREAK THE FEEL -------------------------- */

body.site-body .coverage-page .dark-detail{
  background:
    radial-gradient(circle at 90% 0%,rgba(228,196,106,.12),transparent 18rem),
    var(--icg-card-navy)!important;
  border:1px solid rgba(228,196,106,.22)!important;
  box-shadow:0 22px 58px rgba(3,16,31,.16)!important;
}

body.site-body .coverage-page .dark-detail h3{
  color:#fff!important;
}

body.site-body .coverage-page .dark-detail p,
body.site-body .coverage-page .dark-detail li{
  color:rgba(255,255,255,.78)!important;
}


/* 10) RESPONSIVE FEEL SYSTEM --------------------------------------------- */

@media(max-width:1050px){
  body.site-body .agency-section .agency-panel,
  body.site-body .content-grid,
  body.site-body .final-panel{
    grid-template-columns:1fr!important;
    gap:30px!important;
  }

  body.site-body .area-grid,
  body.site-body .contracts-area-grid,
  body.site-body .landing-link-grid,
  body.site-body .mini-list{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:760px){
  body.site-body .selector-grid,
  body.site-body .risk-grid,
  body.site-body .pillar-grid,
  body.site-body .process-grid,
  body.site-body .faq-grid,
  body.site-body .related-grid,
  body.site-body .area-grid,
  body.site-body .contracts-area-grid,
  body.site-body .landing-link-grid,
  body.site-body .mini-list{
    grid-template-columns:1fr!important;
  }

  body.site-body .agency-section .agency-panel h2,
  body.site-body .content-grid h2,
  body.site-body .final-cta h2{
    font-size:clamp(2.45rem,10vw,4.1rem)!important;
  }

  body.site-body .mistake-list div{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
}


/* ==========================================================================
   Batch 54 — Visible Homepage Section Feel

   Issue:
   Batch 53 created architecture, but the homepage did not visibly change
   enough because many homepage sections already matched the old selectors.

   Fix:
   Make the homepage section system visually obvious while still controlled
   only from the master theme.

   No page-level color changes.
   No page content changes.
   No page markup changes.
   ========================================================================== */


/* 1) Homepage light sections now have the same premium atmosphere */
body.page-family-home main > section:not(.hero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.final-cta){
  background:
    radial-gradient(circle at 88% 10%, rgba(201,154,54,.075), transparent 24rem),
    radial-gradient(circle at 4% 88%, rgba(6,22,41,.045), transparent 22rem),
    var(--theme-light-bg)!important;
}

body.page-family-home main > section:not(.hero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.final-cta)::before{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  width:min(1200px, calc(100% - 48px));
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg, transparent, rgba(201,154,54,.28), transparent);
}


/* 2) Homepage section heads get one consistent premium signature */
body.page-family-home .section-head{
  position:relative;
  max-width:980px!important;
  padding-top:0;
}

body.page-family-home .section-head .eyebrow{
  color:var(--text-on-light-label)!important;
  margin-bottom:16px!important;
}

body.page-family-home .section-head h2{
  max-width:960px!important;
  font-size:clamp(2.75rem,4.8vw,5.2rem)!important;
  line-height:.98!important;
  letter-spacing:-.072em!important;
}

body.page-family-home .section-head p:not(.eyebrow){
  max-width:880px!important;
  font-size:clamp(18px,1.35vw,22px)!important;
  line-height:1.62!important;
}


/* 3) Coverage selector cards now look intentionally premium, not generic cards */
body.page-family-home #coverage .selector-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
}

body.page-family-home #coverage .selector-card{
  position:relative!important;
  min-height:260px!important;
  padding:28px!important;
  overflow:hidden!important;
  border-radius:28px!important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,252,246,.94))!important;
  border:1px solid rgba(6,22,41,.10)!important;
  box-shadow:0 22px 58px rgba(6,22,41,.085)!important;
}

body.page-family-home #coverage .selector-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  right:0;
  height:5px;
  background:linear-gradient(90deg,var(--icg-gold),var(--icg-soft-gold),var(--icg-gold));
}

body.page-family-home #coverage .selector-card:after{
  content:"";
  position:absolute;
  right:-36px;
  bottom:-46px;
  width:140px;
  height:140px;
  border-radius:50%;
  background:rgba(201,154,54,.075);
  pointer-events:none;
}

body.page-family-home #coverage .selector-card .icon{
  background:var(--icg-navy)!important;
  color:var(--icg-soft-gold)!important;
  box-shadow:0 14px 30px rgba(6,22,41,.12);
}

body.page-family-home #coverage .selector-card h3{
  font-size:clamp(1.25rem,1.5vw,1.65rem)!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
}

body.page-family-home #coverage .selector-card p{
  font-size:16px!important;
  line-height:1.58!important;
}

body.page-family-home #coverage .selector-card span{
  color:var(--icg-bronze)!important;
  font-weight:950!important;
}


/* 4) Business Risk reads like a classy editorial section */
body.page-family-home #business-risk.agency-section{
  background:
    radial-gradient(circle at 92% 8%, rgba(201,154,54,.08), transparent 24rem),
    var(--theme-light-bg)!important;
}

body.page-family-home #business-risk .agency-panel{
  border-top:1px solid rgba(201,154,54,.24)!important;
  padding-top:34px!important;
}

body.page-family-home #business-risk .agency-panel h2{
  font-size:clamp(3.15rem,5.2vw,5.85rem)!important;
}

body.page-family-home #business-risk .gold-copy{
  color:var(--text-on-light-heading)!important;
}


/* 5) Dark feature sections share the same first-section classiness */
body.page-family-home #property,
body.page-family-home #contracts{
  background:
    radial-gradient(circle at 15% 12%, rgba(228,196,106,.12), transparent 26rem),
    radial-gradient(circle at 86% 18%, rgba(255,255,255,.045), transparent 20rem),
    linear-gradient(135deg,var(--icg-deep-navy),var(--icg-navy))!important;
}

body.page-family-home .property-ops-hero,
body.page-family-home .contracts-req-hero{
  align-items:start!important;
}

body.page-family-home .property-ops-heading h2,
body.page-family-home .contracts-req-heading h2{
  font-size:clamp(3rem,5.1vw,5.65rem)!important;
  line-height:.98!important;
  letter-spacing:-.072em!important;
}

body.page-family-home .property-ops-copy p,
body.page-family-home .contracts-req-copy p{
  font-size:clamp(18px,1.35vw,22px)!important;
  line-height:1.62!important;
}


/* 6) People section gets the same premium light-section treatment */
body.page-family-home #people{
  background:
    radial-gradient(circle at 8% 14%, rgba(201,154,54,.07), transparent 22rem),
    radial-gradient(circle at 88% 82%, rgba(6,22,41,.04), transparent 22rem),
    var(--theme-light-bg)!important;
}

body.page-family-home #people .split h2{
  font-size:clamp(2.9rem,4.7vw,5.25rem)!important;
  line-height:.98!important;
  letter-spacing:-.07em!important;
}

body.page-family-home #people .split p{
  color:var(--text-on-light-body)!important;
  font-size:clamp(18px,1.35vw,22px)!important;
  line-height:1.64!important;
}

body.page-family-home #people .chips div{
  background:var(--theme-card-bg)!important;
  color:var(--text-on-light-heading)!important;
  border:1px solid rgba(201,154,54,.18)!important;
  box-shadow:0 14px 34px rgba(6,22,41,.055)!important;
}


/* 7) Process cards now share the same card DNA as the coverage cards */
body.page-family-home .process-section{
  background:
    radial-gradient(circle at 88% 8%, rgba(201,154,54,.07), transparent 22rem),
    var(--theme-light-bg)!important;
}

body.page-family-home .process-card{
  position:relative!important;
  overflow:hidden!important;
  border-radius:26px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,252,246,.94))!important;
  box-shadow:0 20px 54px rgba(6,22,41,.075)!important;
}

body.page-family-home .process-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  right:0;
  height:4px;
  background:linear-gradient(90deg,var(--icg-gold),var(--icg-soft-gold));
}

body.page-family-home .process-card span{
  background:var(--icg-navy)!important;
  color:var(--icg-soft-gold)!important;
}


/* 8) Responsive homepage feel */
@media(max-width:1050px){
  body.page-family-home #coverage .selector-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:760px){
  body.page-family-home #coverage .selector-grid{
    grid-template-columns:1fr!important;
  }

  body.page-family-home .section-head h2,
  body.page-family-home #business-risk .agency-panel h2,
  body.page-family-home #people .split h2{
    font-size:clamp(2.45rem,10vw,4.2rem)!important;
  }
}


/* ==========================================================================
   Batch 55 — Unified Dark / Light Section System

   Direction:
   The homepage hero is the design model, but not every section should copy
   the exact hero layout.

   Goal:
   - Every dark section should feel like the same premium Invicta family.
   - Every light section should feel like the same premium Invicta family.
   - Dark = authority / impact.
   - Light = clarity / explanation.
   - Gold = accent / structure, not random decoration.

   No page-level color changes.
   No page content changes.
   No page markup changes.
   ========================================================================== */


/* 1) MASTER DARK SECTION DNA --------------------------------------------- */

body.site-body .hero,
body.site-body .subhero,
body.site-body .simple-subhero,
body.site-body .coverage-hero,
body.site-body .dark-section,
body.site-body .property-ops-section,
body.site-body .contracts-req-section,
body.site-body .mistake-section,
body.site-body .final-cta{
  position:relative!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 16% 12%, rgba(228,196,106,.12), transparent 28rem),
    radial-gradient(circle at 86% 18%, rgba(255,255,255,.045), transparent 22rem),
    linear-gradient(135deg, var(--icg-deep-navy), var(--icg-navy))!important;
  color:var(--text-on-dark-body)!important;
  border-top:1px solid rgba(228,196,106,.14)!important;
  border-bottom:1px solid rgba(228,196,106,.14)!important;
}

body.site-body .hero:before,
body.site-body .subhero:before,
body.site-body .simple-subhero:before,
body.site-body .coverage-hero:before,
body.site-body .dark-section:before,
body.site-body .property-ops-section:before,
body.site-body .contracts-req-section:before,
body.site-body .mistake-section:before,
body.site-body .final-cta:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(118deg, transparent 0 54%, rgba(201,154,54,.11) 54% 55%, transparent 55% 100%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 14px);
  opacity:.68;
  pointer-events:none;
}

body.site-body .hero > .container,
body.site-body .subhero > .container,
body.site-body .simple-subhero > .container,
body.site-body .coverage-hero > .container,
body.site-body .dark-section > .container,
body.site-body .property-ops-section > .container,
body.site-body .contracts-req-section > .container,
body.site-body .mistake-section > .container,
body.site-body .final-cta > .container{
  position:relative;
  z-index:2;
}


/* 2) MASTER DARK TYPOGRAPHY ---------------------------------------------- */

body.site-body .hero .eyebrow,
body.site-body .subhero .eyebrow,
body.site-body .simple-subhero .eyebrow,
body.site-body .coverage-hero .eyebrow,
body.site-body .dark-section .eyebrow,
body.site-body .property-ops-section .eyebrow,
body.site-body .contracts-req-section .eyebrow,
body.site-body .mistake-section .eyebrow,
body.site-body .final-cta .eyebrow{
  color:var(--text-on-dark-label)!important;
  letter-spacing:.28em!important;
}

body.site-body .hero h1,
body.site-body .subhero h1,
body.site-body .simple-subhero h1,
body.site-body .coverage-hero h1,
body.site-body .dark-section h2,
body.site-body .dark-section h3,
body.site-body .property-ops-section h2,
body.site-body .property-ops-section h3,
body.site-body .contracts-req-section h2,
body.site-body .contracts-req-section h3,
body.site-body .mistake-section h2,
body.site-body .final-cta h2{
  color:#fff!important;
  letter-spacing:-.074em!important;
  line-height:.96!important;
}

body.site-body .hero p,
body.site-body .subhero p,
body.site-body .simple-subhero p,
body.site-body .coverage-hero p,
body.site-body .dark-section p,
body.site-body .property-ops-section p,
body.site-body .contracts-req-section p,
body.site-body .mistake-section p,
body.site-body .final-cta p{
  color:rgba(255,255,255,.78)!important;
}


/* 3) HOMEPAGE DARK SECTIONS SHOULD FEEL LIKE SIBLINGS ---------------------
   Homepage hero = flagship.
   Property / Contracts = dark editorial siblings.
   Final CTA = closing sibling.
----------------------------------------------------------------------------- */

body.page-family-home .property-ops-hero,
body.page-family-home .contracts-req-hero,
body.page-family-home .final-panel{
  display:grid!important;
  grid-template-columns:minmax(0,.95fr) minmax(360px,.92fr)!important;
  gap:clamp(42px,6vw,88px)!important;
  align-items:start!important;
}

body.page-family-home .property-ops-heading h2,
body.page-family-home .contracts-req-heading h2,
body.page-family-home .final-cta h2{
  max-width:780px!important;
  font-size:clamp(3.2rem,5.65vw,6.05rem)!important;
  line-height:.94!important;
  letter-spacing:-.082em!important;
}

body.page-family-home .property-ops-copy,
body.page-family-home .contracts-req-copy,
body.page-family-home .final-actions{
  position:relative!important;
  padding:clamp(28px,3.2vw,40px)!important;
  border-radius:30px!important;
  background:linear-gradient(180deg, rgba(255,255,255,.092), rgba(255,255,255,.045))!important;
  border:1px solid rgba(228,196,106,.22)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.25)!important;
  overflow:hidden!important;
}

body.page-family-home .property-ops-copy:before,
body.page-family-home .contracts-req-copy:before,
body.page-family-home .final-actions:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:5px;
  background:linear-gradient(90deg,var(--icg-gold),var(--icg-soft-gold),var(--icg-gold));
}

body.page-family-home .property-ops-copy p,
body.page-family-home .contracts-req-copy p{
  max-width:740px!important;
  font-size:clamp(18px,1.35vw,22px)!important;
  line-height:1.62!important;
}

body.page-family-home .property-ops-copy .btn,
body.page-family-home .contracts-req-copy .btn{
  margin-top:20px!important;
}


/* 4) DARK LINE ITEMS SHOULD BE CONSISTENT -------------------------------- */

body.site-body .area-grid,
body.site-body .contracts-area-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0 30px!important;
  margin-top:22px!important;
}

body.site-body .area-grid a,
body.site-body .contracts-area-grid a{
  position:relative!important;
  min-height:78px!important;
  padding:18px 34px 18px 0!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid rgba(228,196,106,.20)!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#fff!important;
}

body.site-body .area-grid a:after,
body.site-body .contracts-area-grid a:after{
  content:"→";
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  color:var(--icg-soft-gold);
  font-weight:950;
}

body.site-body .area-grid span,
body.site-body .contracts-area-grid span{
  color:var(--icg-soft-gold)!important;
  opacity:.95;
}

body.site-body .area-grid strong,
body.site-body .contracts-area-grid strong{
  color:#fff!important;
  letter-spacing:-.025em!important;
}


/* 5) MASTER LIGHT SECTION DNA -------------------------------------------- */

body.site-body main > section:not(.hero):not(.subhero):not(.simple-subhero):not(.coverage-hero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.mistake-section):not(.final-cta){
  position:relative!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 88% 10%, rgba(201,154,54,.07), transparent 24rem),
    radial-gradient(circle at 5% 88%, rgba(6,22,41,.045), transparent 24rem),
    var(--theme-light-bg)!important;
  color:var(--text-on-light-body)!important;
}

body.site-body main > section:not(.hero):not(.subhero):not(.simple-subhero):not(.coverage-hero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.mistake-section):not(.final-cta):before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  width:min(1200px, calc(100% - 48px));
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg, transparent, rgba(201,154,54,.26), transparent);
}

body.site-body main > section:not(.hero):not(.subhero):not(.simple-subhero):not(.coverage-hero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.mistake-section):not(.final-cta) > .container{
  position:relative;
  z-index:2;
}


/* 6) MASTER LIGHT TYPOGRAPHY --------------------------------------------- */

body.site-body main > section:not(.hero):not(.subhero):not(.simple-subhero):not(.coverage-hero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.mistake-section):not(.final-cta) .eyebrow{
  color:var(--text-on-light-label)!important;
  letter-spacing:.28em!important;
}

body.site-body main > section:not(.hero):not(.subhero):not(.simple-subhero):not(.coverage-hero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.mistake-section):not(.final-cta) h2,
body.site-body main > section:not(.hero):not(.subhero):not(.simple-subhero):not(.coverage-hero):not(.dark-section):not(.property-ops-section):not(.contracts-req-section):not(.mistake-section):not(.final-cta) h3{
  color:var(--text-on-light-heading)!important;
}

body.site-body .section-head h2,
body.site-body .content-grid h2,
body.site-body .agency-panel h2,
body.site-body .split h2{
  font-size:clamp(2.85rem,4.9vw,5.35rem)!important;
  line-height:.98!important;
  letter-spacing:-.074em!important;
}


/* 7) LIGHT SECTION CARDS ARE PREMIUM, NOT RANDOM WHITE BOXES -------------- */

body.site-body .selector-card,
body.site-body .risk-card,
body.site-body .pillar-card,
body.site-body .process-card,
body.site-body .info-card,
body.site-body .contact-card,
body.site-body .legal-document,
body.site-body .coverage-page .detail-panel,
body.site-body .coverage-page .faq-grid > div,
body.site-body .coverage-page .related-card{
  position:relative!important;
  overflow:hidden!important;
  border-radius:28px!important;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,252,246,.94))!important;
  border:1px solid rgba(6,22,41,.10)!important;
  box-shadow:0 22px 58px rgba(6,22,41,.08)!important;
}

body.site-body .selector-card:before,
body.site-body .risk-card:before,
body.site-body .pillar-card:before,
body.site-body .process-card:before,
body.site-body .info-card:before,
body.site-body .contact-card:before,
body.site-body .legal-document:before,
body.site-body .coverage-page .detail-panel:before,
body.site-body .coverage-page .faq-grid > div:before,
body.site-body .coverage-page .related-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  right:0;
  height:4px;
  background:linear-gradient(90deg,var(--icg-gold),var(--icg-soft-gold));
}

body.site-body .selector-card h3,
body.site-body .risk-card h3,
body.site-body .pillar-card h3,
body.site-body .process-card h3,
body.site-body .info-card h3,
body.site-body .contact-card h3,
body.site-body .coverage-page .detail-panel h3,
body.site-body .coverage-page .faq-grid h3,
body.site-body .coverage-page .related-card h3{
  color:var(--text-on-light-heading)!important;
  letter-spacing:-.04em!important;
}

body.site-body .selector-card p,
body.site-body .risk-card p,
body.site-body .pillar-card p,
body.site-body .process-card p,
body.site-body .info-card p,
body.site-body .contact-card p,
body.site-body .coverage-page .detail-panel p,
body.site-body .coverage-page .faq-grid p,
body.site-body .coverage-page .related-card p{
  color:var(--text-on-light-body)!important;
}


/* 8) HOMEPAGE LIGHT SECTIONS GET THE SAME SIBLING STRUCTURE --------------- */

body.page-family-home #coverage .selector-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
}

body.page-family-home #business-risk .agency-panel{
  border-top:1px solid rgba(201,154,54,.24)!important;
  padding-top:34px!important;
}

body.page-family-home #people .split{
  display:grid!important;
  grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr)!important;
  gap:clamp(42px,6vw,88px)!important;
  align-items:start!important;
}

body.page-family-home #people .split > div:last-child{
  position:relative!important;
  padding:clamp(28px,3.2vw,40px)!important;
  border-radius:30px!important;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,252,246,.94))!important;
  border:1px solid rgba(6,22,41,.10)!important;
  box-shadow:0 22px 58px rgba(6,22,41,.08)!important;
}

body.page-family-home #people .split > div:last-child:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:5px;
  background:linear-gradient(90deg,var(--icg-gold),var(--icg-soft-gold),var(--icg-gold));
}


/* 9) FINAL CTA SHOULD BE A DARK SIBLING, NOT A RANDOM BUTTON AREA --------- */

body.site-body .final-panel{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(320px,420px)!important;
  gap:clamp(40px,6vw,84px)!important;
  align-items:start!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}

body.site-body .final-actions,
body.site-body .cta-card{
  position:relative!important;
  padding:clamp(28px,3.2vw,40px)!important;
  border-radius:30px!important;
  background:linear-gradient(180deg, rgba(255,255,255,.092), rgba(255,255,255,.045))!important;
  border:1px solid rgba(228,196,106,.22)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.25)!important;
}


/* 10) RESPONSIVE UNIFIED SYSTEM ------------------------------------------ */

@media(max-width:1050px){
  body.page-family-home .property-ops-hero,
  body.page-family-home .contracts-req-hero,
  body.page-family-home .final-panel,
  body.page-family-home #people .split,
  body.site-body .final-panel{
    grid-template-columns:1fr!important;
    gap:32px!important;
  }

  body.page-family-home #coverage .selector-grid,
  body.site-body .area-grid,
  body.site-body .contracts-area-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:760px){
  body.page-family-home #coverage .selector-grid,
  body.site-body .area-grid,
  body.site-body .contracts-area-grid{
    grid-template-columns:1fr!important;
  }

  body.page-family-home .property-ops-heading h2,
  body.page-family-home .contracts-req-heading h2,
  body.page-family-home .final-cta h2,
  body.site-body .section-head h2,
  body.site-body .content-grid h2,
  body.site-body .agency-panel h2,
  body.site-body .split h2{
    font-size:clamp(2.45rem,10vw,4.2rem)!important;
    line-height:.98!important;
  }

  body.page-family-home .property-ops-copy,
  body.page-family-home .contracts-req-copy,
  body.page-family-home #people .split > div:last-child,
  body.site-body .final-actions,
  body.site-body .cta-card{
    padding:26px!important;
    border-radius:24px!important;
  }
}


/* ==========================================================================
   Batch 64 — Personal Page Copy + Contrast Repair

   Fixes two issues on the personal insurance page:
   1) The page was stuck between business-owner-only and broad personal coverage.
   2) Some light panels inherited dark-section white text, making the list copy unreadable.

   Scope:
   - Personal coverage copy in /personal-insurance.php.
   - Coverage-page detail panel/list contrast.
   - Coverage-page mistake-section panel contrast.
   ========================================================================== */

/* Detail panels are visually light in the current system, so list text must be dark. */
body.site-body .coverage-page .detail-panel,
body.site-body .coverage-page .detail-panel.dark-detail{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,252,246,.94))!important;
  color:var(--text-on-light-body)!important;
}

body.site-body .coverage-page .detail-panel h2,
body.site-body .coverage-page .detail-panel h3,
body.site-body .coverage-page .detail-panel.dark-detail h2,
body.site-body .coverage-page .detail-panel.dark-detail h3{
  color:var(--text-on-light-heading)!important;
}

body.site-body .coverage-page .detail-panel p,
body.site-body .coverage-page .detail-panel li,
body.site-body .coverage-page .detail-panel.dark-detail p,
body.site-body .coverage-page .detail-panel.dark-detail li{
  color:var(--text-on-light-body)!important;
}

body.site-body .coverage-page .detail-panel .eyebrow,
body.site-body .coverage-page .detail-panel.dark-detail .eyebrow{
  color:var(--text-on-light-label)!important;
}

/* Common mistakes should not become a giant light card inside the dark section. */
body.site-body .coverage-page .mistake-section .agency-panel{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
}

body.site-body .coverage-page .mistake-section .agency-panel:before{
  display:none!important;
}

body.site-body .coverage-page .mistake-section .agency-panel h2{
  color:#fff!important;
}

body.site-body .coverage-page .mistake-section .agency-panel .eyebrow,
body.site-body .coverage-page .mistake-section .mistake-list span{
  color:var(--text-on-dark-label)!important;
}

body.site-body .coverage-page .mistake-section .mistake-list p{
  color:rgba(255,255,255,.82)!important;
}


/* ==========================================================================
   Batch 65 — Dropdown Hover Bridge

   Issue:
   The Commercial / Personal dropdowns could disappear while moving the mouse
   from the top nav link down into the dropdown.

   Fix:
   Add an invisible hover bridge under each dropdown trigger, reduce the menu
   gap, and keep the dropdown open while hovering or keyboard focusing.

   No color changes.
   ========================================================================== */

body.site-body .nav-dropdown{
  position:relative!important;
}

body.site-body .nav-dropdown:after{
  content:"";
  position:absolute;
  left:-18px;
  right:-18px;
  top:100%;
  height:24px;
  background:transparent;
  pointer-events:auto;
  z-index:9998;
}

body.site-body .nav-dropdown-menu{
  top:calc(100% + 2px)!important;
  z-index:10000!important;
  transition:opacity .12s ease, transform .12s ease, visibility .12s ease!important;
}

body.site-body .nav-dropdown:hover .nav-dropdown-menu,
body.site-body .nav-dropdown:focus-within .nav-dropdown-menu{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateX(-50%) translateY(0)!important;
}

body.site-body .nav-dropdown-menu:hover{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

body.site-body .nav-dropdown-menu a{
  position:relative;
  z-index:10001;
}

@media(max-width:1040px){
  body.site-body .nav-dropdown:after{
    display:none!important;
  }
}


/* ==========================================================================
   Batch 66 — Dropdown Arrow Spacing

   Issue:
   The small dropdown arrows beside Commercial and Personal were sitting too
   close to the wording and could appear covered by the text.

   Fix:
   Give dropdown trigger links more right-side room and move the arrow outside
   the word area.

   No color changes.
   ========================================================================== */

body.site-body .nav-main-link{
  padding-right:28px!important;
}

body.site-body .nav-main-link:after{
  right:9px!important;
}

body.site-body nav{
  column-gap:22px;
}


/* ==========================================================================
   Batch 67 — Advisor Intake Landing

   Adds the short advisor intake page used before Calendly scheduling.
   Uses the existing Invicta visual system and routes form styling through
   the master theme file instead of page-level inline styles.
   ========================================================================== */

body.site-body.page-family-advisor .advisor-intake-section{
  padding-top:72px!important;
}

body.site-body .advisor-intake-grid,
body.site-body .advisor-confirm-grid{
  display:grid;
  grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);
  gap:28px;
  align-items:start;
}

body.site-body .advisor-context-card{
  padding:34px;
  border-radius:28px;
  border:1px solid rgba(12,31,51,.1);
  background:var(--card-white);
  box-shadow:0 18px 44px rgba(12,31,51,.08);
}

body.site-body .advisor-context-card h2,
body.site-body .advisor-form h2,
body.site-body .advisor-summary-card h2{
  margin:0 0 18px;
}

body.site-body .advisor-steps{
  display:grid;
  gap:12px;
  margin:24px 0;
}

body.site-body .advisor-steps div{
  display:flex;
  gap:12px;
  align-items:center;
  padding:14px 16px;
  border:1px solid rgba(12,31,51,.1);
  border-radius:18px;
  background:rgba(255,255,255,.68);
}

body.site-body .advisor-steps strong{
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:linear-gradient(135deg,var(--gold),var(--gold2));
  color:var(--deep-navy);
  font-weight:950;
}

body.site-body .advisor-steps span{
  font-weight:850;
  color:var(--ink);
}

body.site-body .advisor-form{
  display:grid;
  gap:18px;
}

body.site-body .advisor-form label{
  display:grid;
  gap:8px;
}

body.site-body .advisor-form label span{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:950;
  color:var(--ink);
}

body.site-body .advisor-form input,
body.site-body .advisor-form select,
body.site-body .advisor-form textarea{
  width:100%;
  border:1px solid rgba(12,31,51,.16);
  border-radius:16px;
  min-height:48px;
  padding:12px 14px;
  font:inherit;
  color:var(--ink);
  background:var(--card-white);
  outline:none;
}

body.site-body .advisor-form textarea{
  resize:vertical;
  line-height:1.55;
}

body.site-body .advisor-form input:focus,
body.site-body .advisor-form select:focus,
body.site-body .advisor-form textarea:focus{
  border-color:rgba(201,154,54,.78);
  box-shadow:0 0 0 4px rgba(201,154,54,.14);
}

body.site-body .form-grid{
  display:grid;
  gap:14px;
}

body.site-body .form-grid.two{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

body.site-body .form-disclaimer{
  margin:0;
  font-size:14px!important;
  line-height:1.55!important;
}

body.site-body .advisor-summary-card dl{
  display:grid;
  gap:0;
  margin:20px 0 0;
}

body.site-body .advisor-summary-card dl div{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:16px;
  padding:13px 0;
  border-bottom:1px solid rgba(12,31,51,.1);
}

body.site-body .advisor-summary-card dt{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-weight:950;
  color:var(--muted);
}

body.site-body .advisor-summary-card dd{
  margin:0;
  color:var(--ink);
  font-weight:850;
  overflow-wrap:anywhere;
}

body.site-body .advisor-error-list{
  margin:18px 0 24px;
  padding-left:20px;
  color:var(--ink);
  font-weight:800;
  line-height:1.7;
}

@media(max-width:900px){
  body.site-body .advisor-intake-grid,
  body.site-body .advisor-confirm-grid,
  body.site-body .form-grid.two{
    grid-template-columns:1fr;
  }
}

/* ========================================================================== 
   Batch 72 — Homepage V2 alternating section rhythm
   Purpose: restore clear section-to-section color alternation on the rebuilt
   lead-first homepage without changing individual page markup.
   ========================================================================== */

body.page-family-home .homepage-v2 .homepage-coverage-section{
  background:
    radial-gradient(circle at 88% 10%, rgba(201,154,54,.07), transparent 24rem),
    radial-gradient(circle at 5% 88%, rgba(6,22,41,.045), transparent 24rem),
    var(--icg-ivory)!important;
}

body.page-family-home .homepage-v2 .homepage-trust-section,
body.page-family-home .homepage-v2 .owner-protection-section{
  position:relative!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 16% 12%, rgba(228,196,106,.12), transparent 28rem),
    radial-gradient(circle at 86% 18%, rgba(255,255,255,.045), transparent 22rem),
    linear-gradient(135deg,var(--icg-deep-navy),var(--icg-navy))!important;
  color:var(--text-on-dark-body)!important;
  border-top:1px solid rgba(228,196,106,.14)!important;
  border-bottom:1px solid rgba(228,196,106,.14)!important;
}

body.page-family-home .homepage-v2 .homepage-trust-section:before,
body.page-family-home .homepage-v2 .owner-protection-section:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(118deg, transparent 0 54%, rgba(201,154,54,.11) 54% 55%, transparent 55% 100%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 14px);
  opacity:.68;
  pointer-events:none;
}

body.page-family-home .homepage-v2 .homepage-trust-section > .container,
body.page-family-home .homepage-v2 .owner-protection-section > .container{
  position:relative;
  z-index:2;
}

body.page-family-home .homepage-v2 .homepage-trust-panel{
  background:linear-gradient(180deg,rgba(255,255,255,.092),rgba(255,255,255,.045))!important;
  border:1px solid rgba(228,196,106,.22)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.25)!important;
}

body.page-family-home .homepage-v2 .homepage-trust-panel h2,
body.page-family-home .homepage-v2 .owner-protection-section h2,
body.page-family-home .homepage-v2 .owner-protection-section h3{
  color:#fff!important;
}

body.page-family-home .homepage-v2 .homepage-trust-panel p,
body.page-family-home .homepage-v2 .owner-protection-section p{
  color:rgba(255,255,255,.78)!important;
}

body.page-family-home .homepage-v2 .homepage-trust-panel .eyebrow,
body.page-family-home .homepage-v2 .owner-protection-section .eyebrow{
  color:var(--icg-soft-gold)!important;
}

body.page-family-home .homepage-v2 .homepage-trust-panel .gold-copy{
  color:var(--icg-soft-gold)!important;
}

body.page-family-home .homepage-v2 .mini-proof-grid div,
body.page-family-home .homepage-v2 .owner-risk-list a{
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(228,196,106,.20)!important;
  box-shadow:none!important;
}

body.page-family-home .homepage-v2 .mini-proof-grid strong,
body.page-family-home .homepage-v2 .owner-risk-list a{
  color:#fff!important;
}

body.page-family-home .homepage-v2 .mini-proof-grid span{
  color:rgba(255,255,255,.72)!important;
}

body.page-family-home .homepage-v2 .homepage-industries-section{
  background:
    radial-gradient(circle at 12% 10%, rgba(201,154,54,.075), transparent 22rem),
    linear-gradient(180deg,var(--icg-card-white),var(--icg-ivory-2))!important;
}

body.page-family-home .homepage-v2 .homepage-process-section{
  background:
    radial-gradient(circle at 88% 8%, rgba(201,154,54,.07), transparent 22rem),
    radial-gradient(circle at 8% 88%, rgba(6,22,41,.045), transparent 24rem),
    var(--icg-ivory)!important;
}

body.page-family-home .homepage-v2 .seo-faq-section{
  background:
    radial-gradient(circle at 86% 14%, rgba(201,154,54,.08), transparent 24rem),
    linear-gradient(180deg,var(--icg-card-white),var(--icg-ivory-2))!important;
  color:var(--text-on-light-body)!important;
  border-top:1px solid rgba(201,154,54,.18)!important;
  border-bottom:1px solid rgba(201,154,54,.18)!important;
}

body.page-family-home .homepage-v2 .seo-faq-section:before{
  display:none!important;
}

body.page-family-home .homepage-v2 .seo-faq-section h2,
body.page-family-home .homepage-v2 .seo-faq-section h3{
  color:var(--text-on-light-heading)!important;
}

body.page-family-home .homepage-v2 .seo-faq-section p,
body.page-family-home .homepage-v2 .seo-faq-section .section-head p:not(.eyebrow){
  color:var(--text-on-light-body)!important;
}

body.page-family-home .homepage-v2 .seo-faq-section .eyebrow{
  color:var(--text-on-light-label)!important;
}

body.page-family-home .homepage-v2 .faq-card-grid > div{
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,252,246,.94))!important;
  border:1px solid rgba(6,22,41,.10)!important;
  box-shadow:0 22px 58px rgba(6,22,41,.08)!important;
}

body.page-family-home .homepage-v2 .faq-card-grid > div:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:4px;
  background:linear-gradient(90deg,var(--icg-gold),var(--icg-soft-gold));
}

/* ========================================================================== 
   Batch 73 — Homepage V2 live contrast correction
   Purpose: screenshots showed section colors alternating but dark-section text
   was landing on light panels. These rules intentionally sit at the very end
   of the master theme file and target the rebuilt homepage directly.
   ========================================================================== */

.homepage-v2 .homepage-trust-section,
.homepage-v2 .owner-protection-section,
.homepage-v2 .final-cta{
  position:relative!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 16% 12%, rgba(228,196,106,.14), transparent 28rem),
    radial-gradient(circle at 86% 18%, rgba(255,255,255,.055), transparent 22rem),
    linear-gradient(135deg,#03101f 0%, #061629 46%, #0d2742 100%)!important;
  color:rgba(255,255,255,.82)!important;
  border-top:1px solid rgba(228,196,106,.18)!important;
  border-bottom:1px solid rgba(228,196,106,.18)!important;
}

.homepage-v2 .homepage-trust-section:before,
.homepage-v2 .owner-protection-section:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(118deg, transparent 0 54%, rgba(201,154,54,.13) 54% 55%, transparent 55% 100%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 14px)!important;
  opacity:.75!important;
  pointer-events:none!important;
}

.homepage-v2 .homepage-trust-section > .container,
.homepage-v2 .owner-protection-section > .container,
.homepage-v2 .final-cta > .container{
  position:relative!important;
  z-index:2!important;
}

.homepage-v2 .homepage-trust-section h1,
.homepage-v2 .homepage-trust-section h2,
.homepage-v2 .homepage-trust-section h3,
.homepage-v2 .owner-protection-section h1,
.homepage-v2 .owner-protection-section h2,
.homepage-v2 .owner-protection-section h3,
.homepage-v2 .final-cta h1,
.homepage-v2 .final-cta h2,
.homepage-v2 .final-cta h3{
  color:#ffffff!important;
}

.homepage-v2 .homepage-trust-section p,
.homepage-v2 .homepage-trust-section li,
.homepage-v2 .owner-protection-section p,
.homepage-v2 .owner-protection-section li,
.homepage-v2 .final-cta p,
.homepage-v2 .final-cta li{
  color:rgba(255,255,255,.80)!important;
}

.homepage-v2 .homepage-trust-section .eyebrow,
.homepage-v2 .owner-protection-section .eyebrow,
.homepage-v2 .final-cta .eyebrow{
  color:#e4c46a!important;
}

.homepage-v2 .homepage-trust-panel{
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.045))!important;
  border:1px solid rgba(228,196,106,.24)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.28)!important;
}

.homepage-v2 .homepage-trust-panel .gold-copy{
  color:#e4c46a!important;
}

.homepage-v2 .mini-proof-grid div,
.homepage-v2 .owner-risk-list a{
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(228,196,106,.24)!important;
  box-shadow:none!important;
}

.homepage-v2 .mini-proof-grid strong,
.homepage-v2 .owner-risk-list a{
  color:#ffffff!important;
}

.homepage-v2 .mini-proof-grid span{
  color:rgba(255,255,255,.76)!important;
}

.homepage-v2 .owner-risk-list a:hover{
  background:rgba(228,196,106,.16)!important;
  border-color:rgba(228,196,106,.55)!important;
}

.homepage-v2 .homepage-coverage-section,
.homepage-v2 .homepage-process-section{
  background:
    radial-gradient(circle at 88% 10%, rgba(201,154,54,.075), transparent 24rem),
    radial-gradient(circle at 5% 88%, rgba(6,22,41,.04), transparent 24rem),
    #f6f0e3!important;
  color:#374151!important;
}

.homepage-v2 .homepage-industries-section,
.homepage-v2 .seo-faq-section{
  background:
    radial-gradient(circle at 12% 10%, rgba(201,154,54,.075), transparent 22rem),
    linear-gradient(180deg,#fffdf8,#f8f1e3)!important;
  color:#374151!important;
}

.homepage-v2 .seo-faq-section h1,
.homepage-v2 .seo-faq-section h2,
.homepage-v2 .seo-faq-section h3,
.homepage-v2 .homepage-coverage-section h1,
.homepage-v2 .homepage-coverage-section h2,
.homepage-v2 .homepage-coverage-section h3,
.homepage-v2 .homepage-industries-section h1,
.homepage-v2 .homepage-industries-section h2,
.homepage-v2 .homepage-industries-section h3,
.homepage-v2 .homepage-process-section h1,
.homepage-v2 .homepage-process-section h2,
.homepage-v2 .homepage-process-section h3{
  color:#081827!important;
}

.homepage-v2 .seo-faq-section p,
.homepage-v2 .homepage-coverage-section p,
.homepage-v2 .homepage-industries-section p,
.homepage-v2 .homepage-process-section p{
  color:#374151!important;
}

.homepage-v2 .seo-faq-section .eyebrow,
.homepage-v2 .homepage-coverage-section .eyebrow,
.homepage-v2 .homepage-industries-section .eyebrow,
.homepage-v2 .homepage-process-section .eyebrow{
  color:#5f6673!important;
}

.homepage-v2 .faq-card-grid > div{
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,252,246,.94))!important;
  border:1px solid rgba(6,22,41,.10)!important;
  box-shadow:0 22px 58px rgba(6,22,41,.08)!important;
}

.homepage-v2 .faq-card-grid > div:before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  height:4px!important;
  background:linear-gradient(90deg,#c99a36,#e4c46a)!important;
}

.homepage-v2 .faq-card-grid h3{
  color:#081827!important;
}

.homepage-v2 .faq-card-grid p{
  color:#374151!important;
}


/* ==========================================================================
   Batch 75 — SEO, accessibility, consent, and compliant intake support
   ========================================================================== */
.skip-link{
  position:fixed;
  left:16px;
  top:10px;
  z-index:9999;
  transform:translateY(-160%);
  background:#fff;
  color:#061629;
  padding:12px 16px;
  border-radius:10px;
  font-weight:900;
  box-shadow:0 12px 30px rgba(0,0,0,.24);
}
.skip-link:focus{transform:translateY(0)}

.form-honeypot{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
}

.consent-checkbox{
  display:grid!important;
  grid-template-columns:22px 1fr!important;
  gap:12px!important;
  align-items:start!important;
  padding:16px!important;
  border:1px solid rgba(6,22,41,.15)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.72)!important;
}
.consent-checkbox input{
  width:20px!important;
  height:20px!important;
  margin:2px 0 0!important;
}
.consent-checkbox span{
  font-size:14px!important;
  line-height:1.55!important;
  color:#374151!important;
}
.consent-checkbox a{
  text-decoration:underline!important;
  font-weight:800!important;
}

.consent-banner{
  position:fixed;
  inset:auto 18px 18px 18px;
  z-index:9998;
  max-width:1180px;
  margin:0 auto;
  background:#07182d;
  color:#fff;
  border:1px solid rgba(228,196,106,.45);
  border-radius:20px;
  box-shadow:0 28px 80px rgba(0,0,0,.36);
  padding:20px;
}
.consent-banner[hidden]{display:none!important}
.consent-banner__content{
  display:grid;
  grid-template-columns:1fr auto;
  gap:24px;
  align-items:center;
}
.consent-banner strong{font-size:18px;color:#fff}
.consent-banner p{margin:6px 0 0;color:rgba(255,255,255,.78);font-size:14px}
.consent-banner a{text-decoration:underline;color:#e4c46a}
.consent-banner__actions{display:flex;gap:10px;flex-wrap:wrap}
.consent-banner .btn{min-height:44px;padding:0 17px;font-size:13px}

.footer-link-button{
  display:block;
  appearance:none;
  border:0;
  padding:0;
  margin:8px 0;
  background:transparent;
  color:rgba(255,255,255,.72);
  font:inherit;
  cursor:pointer;
}
.footer-link-button:hover{color:#e4c46a}

.medicare-compliance-notice{
  background:#fff8e6;
  color:#3f2d08;
  border-bottom:1px solid rgba(201,154,54,.35);
  padding:14px 0;
  font-size:14px;
}
.medicare-compliance-notice strong{color:#061629}

.legal-document a{
  color:#7a5412!important;
  text-decoration:underline!important;
  text-underline-offset:3px;
}

@media(max-width:760px){
  .consent-banner{inset:auto 10px 10px 10px;padding:16px}
  .consent-banner__content{grid-template-columns:1fr}
  .consent-banner__actions{display:grid}
  .consent-banner .btn{width:100%}
}

/* INVICTA CONSULTATION PAGE V4 */
html body main.consultation-page {
    --consultation-navy: #0a2134;
    --consultation-navy-soft: #40515f;
    --consultation-gold: #d5a72f;
    --consultation-gold-dark: #6b4a08;
    --consultation-cream: #f4efe3;
    --consultation-white: #ffffff;
    --consultation-border: #d9d8d2;
    --consultation-error: #9d2b22;
    --consultation-success: #1f6b43;
    margin: 0;
    background: var(--consultation-cream);
    color: var(--consultation-navy) !important;
    color-scheme: light;
}

html body main.consultation-page,
html body main.consultation-page * {
    box-sizing: border-box;
}

html body main.consultation-page * {
    color: inherit !important;
}

/* Lock the consultation page to a readable light palette, including WebKit text fill. */
html body main.consultation-page .consultation-copy,
html body main.consultation-page .consultation-card,
html body main.consultation-page .consultation-card-header,
html body main.consultation-page .consultation-form,
html body main.consultation-page .consultation-field,
html body main.consultation-page .consultation-coverage,
html body main.consultation-page .consultation-choice,
html body main.consultation-page h1,
html body main.consultation-page h2,
html body main.consultation-page h3,
html body main.consultation-page label,
html body main.consultation-page legend,
html body main.consultation-page summary,
html body main.consultation-page li,
html body main.consultation-page a,
html body main.consultation-page button,
html body main.consultation-page input,
html body main.consultation-page select,
html body main.consultation-page option,
html body main.consultation-page textarea {
    color: var(--consultation-navy) !important;
    -webkit-text-fill-color: var(--consultation-navy) !important;
}

html body main.consultation-page p,
html body main.consultation-page .consultation-contact span,
html body main.consultation-page .consultation-consent,
html body main.consultation-page .consultation-consent label,
html body main.consultation-page .consultation-consent span,
html body main.consultation-page .consultation-optional,
html body main.consultation-page .consultation-response-time {
    color: var(--consultation-navy-soft) !important;
    -webkit-text-fill-color: var(--consultation-navy-soft) !important;
}

html body main.consultation-page .consultation-eyebrow,
html body main.consultation-page .consultation-card-kicker {
    color: var(--consultation-gold-dark) !important;
    -webkit-text-fill-color: var(--consultation-gold-dark) !important;
    opacity: 1 !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    text-shadow: none !important;
}

html body main.consultation-page .consultation-intro,
html body main.consultation-page .consultation-card-header > p:last-child {
    color: var(--consultation-navy-soft) !important;
    -webkit-text-fill-color: var(--consultation-navy-soft) !important;
    opacity: 1 !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    text-shadow: none !important;
}

html body main.consultation-page .consultation-field-error,
html body main.consultation-page .consultation-error-summary,
html body main.consultation-page .consultation-error-summary h3,
html body main.consultation-page .consultation-error-summary li,
html body main.consultation-page .consultation-error-summary a {
    color: var(--consultation-error) !important;
    -webkit-text-fill-color: var(--consultation-error) !important;
}

html body main.consultation-page .consultation-success-icon {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.consultation-hero {
    min-height: calc(100vh - 96px);
    padding: clamp(48px, 6vw, 96px) clamp(20px, 4vw, 72px) clamp(64px, 7vw, 112px);
    background:
        radial-gradient(circle at 88% 8%, rgba(213, 167, 47, 0.13), transparent 30%),
        linear-gradient(135deg, #f7f3e9 0%, var(--consultation-cream) 62%, #eee6d6 100%);
}

.consultation-shell {
    width: min(1500px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(560px, 1.08fr);
    gap: clamp(56px, 6vw, 112px);
    align-items: start;
}

.consultation-copy {
    padding-top: 2px;
    opacity: 1 !important;
}

.consultation-eyebrow,
.consultation-card-kicker {
    margin: 0;
    font-size: 0.86rem;
    font-weight: 850;
    letter-spacing: 0.16em;
    line-height: 1.2;
    text-transform: uppercase;
}

.consultation-eyebrow {
    margin-bottom: 32px;
}

.consultation-copy h1,
.consultation-card h2,
.consultation-card h3 {
    font-family: inherit;
    font-weight: 850;
    letter-spacing: -0.045em;
}

.consultation-copy h1 {
    max-width: 780px;
    margin: 0;
    font-size: clamp(3.35rem, 5.7vw, 6.5rem);
    line-height: 0.98;
}

.consultation-intro {
    max-width: 760px;
    margin: clamp(28px, 3vw, 44px) 0 0;
    font-size: clamp(1.12rem, 1.45vw, 1.38rem);
    line-height: 1.65;
}

.consultation-benefits {
    display: grid;
    gap: 18px;
    margin: clamp(32px, 4vw, 52px) 0 0;
    padding: 0;
    list-style: none;
}

.consultation-benefits li {
    position: relative;
    min-height: 40px;
    padding: 6px 0 4px 54px;
    font-size: clamp(1rem, 1.3vw, 1.22rem);
    font-weight: 700;
    line-height: 1.45;
}

.consultation-benefits li::before {
    content: '✓';
    position: absolute;
    inset: 0 auto auto 0;
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid rgba(107, 74, 8, 0.2);
    border-radius: 50%;
    background: rgba(213, 167, 47, 0.16);
    color: var(--consultation-gold-dark);
    -webkit-text-fill-color: var(--consultation-gold-dark);
    font-size: 1.1rem;
    font-weight: 900;
}

.consultation-contact {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin-top: 38px;
    font-size: 1rem;
}

.consultation-contact a,
.consultation-success a {
    font-weight: 800;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
}

.consultation-card {
    min-width: 0;
    padding: 44px clamp(28px, 4vw, 64px) clamp(36px, 4vw, 60px);
    border: 1px solid rgba(10, 33, 52, 0.08);
    border-radius: 34px;
    background: var(--consultation-white);
    box-shadow: 0 26px 70px rgba(10, 33, 52, 0.12);
}

.consultation-card-header {
    margin-bottom: 30px;
}

.consultation-card-kicker {
    margin-bottom: 14px;
}

.consultation-card h2 {
    margin: 0;
    font-size: clamp(2.55rem, 4vw, 4.15rem);
    line-height: 1.02;
}

.consultation-card-header > p:last-child {
    margin: 16px 0 0;
    font-size: 1.05rem;
    line-height: 1.55;
}

.consultation-error-summary,
.consultation-success {
    border-radius: 20px;
}

.consultation-error-summary {
    margin: 0 0 28px;
    padding: 20px 22px;
    border: 1px solid rgba(157, 43, 34, 0.3);
    background: #fff5f3;
}

.consultation-error-summary h3 {
    margin: 0 0 10px;
    font-size: 1.12rem;
    letter-spacing: 0;
}

.consultation-error-summary ul {
    margin: 0;
    padding-left: 20px;
}

.consultation-error-summary a {
    font-weight: 700;
}

.consultation-form {
    display: grid;
    gap: 24px;
}

.consultation-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.consultation-field,
.consultation-coverage {
    min-width: 0;
}

.consultation-field label,
.consultation-coverage legend {
    display: block;
    margin: 0 0 9px;
    font-size: 0.98rem;
    font-weight: 800;
    line-height: 1.35;
}

.consultation-field label > span[aria-hidden="true"],
.consultation-coverage legend > span[aria-hidden="true"] {
    color: var(--consultation-error) !important;
    -webkit-text-fill-color: var(--consultation-error) !important;
}

.consultation-optional {
    margin-left: 6px;
    font-size: 0.82rem;
    font-weight: 650;
}

.consultation-field input,
.consultation-field select,
.consultation-field textarea {
    width: 100%;
    border: 1px solid var(--consultation-border);
    border-radius: 14px;
    background: #ffffff !important;
    color: var(--consultation-navy) !important;
    -webkit-text-fill-color: var(--consultation-navy) !important;
    font: inherit;
    font-size: 1rem;
    opacity: 1 !important;
    transition: border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
}

.consultation-field input,
.consultation-field select {
    min-height: 58px;
    padding: 0 16px;
}

.consultation-field textarea {
    min-height: 126px;
    padding: 15px 16px;
    resize: vertical;
}

.consultation-field select option {
    background: #ffffff !important;
    color: var(--consultation-navy) !important;
    -webkit-text-fill-color: var(--consultation-navy) !important;
}

.consultation-field input::placeholder,
.consultation-field textarea::placeholder {
    color: #687680 !important;
    -webkit-text-fill-color: #687680 !important;
    opacity: 1 !important;
}

.consultation-field input:focus,
.consultation-field select:focus,
.consultation-field textarea:focus,
.consultation-choice:focus-within,
.consultation-consent:focus-within,
.consultation-privacy summary:focus-visible,
.consultation-submit:focus-visible,
.consultation-error-summary:focus,
.consultation-success:focus {
    outline: 3px solid rgba(213, 167, 47, 0.48);
    outline-offset: 2px;
}

.consultation-field input:focus,
.consultation-field select:focus,
.consultation-field textarea:focus {
    border-color: var(--consultation-gold-dark);
    box-shadow: 0 0 0 4px rgba(213, 167, 47, 0.13);
}

.consultation-field [aria-invalid="true"],
.consultation-consent-error {
    border-color: var(--consultation-error);
}

.consultation-field-error {
    margin: 8px 0 0;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.4;
}

.consultation-coverage {
    margin: 0;
    padding: 0;
    border: 0;
}

.consultation-coverage-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.consultation-choice {
    display: flex;
    min-height: 58px;
    align-items: center;
    gap: 12px;
    padding: 13px 15px;
    border: 1px solid var(--consultation-border);
    border-radius: 14px;
    background: #ffffff;
    cursor: pointer;
    font-size: 0.96rem;
    font-weight: 700;
    line-height: 1.35;
}

.consultation-choice:hover {
    border-color: rgba(107, 74, 8, 0.6);
    background: #fffcf4;
}

.consultation-choice input,
.consultation-consent input {
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
    accent-color: var(--consultation-gold-dark);
}

.consultation-consent {
    padding: 18px;
    border: 1px solid #e0ddd4;
    border-radius: 16px;
    background: #f7f4ec;
}

.consultation-consent label {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    cursor: pointer;
    font-size: 0.93rem;
    line-height: 1.55;
}

.consultation-consent input {
    margin-top: 2px;
}

.consultation-privacy {
    margin-top: -8px;
    font-size: 0.9rem;
    line-height: 1.5;
}

.consultation-privacy summary {
    width: fit-content;
    cursor: pointer;
    font-weight: 750;
    text-decoration: underline;
    text-decoration-thickness: 1.5px;
    text-underline-offset: 3px;
}

.consultation-privacy p {
    margin: 10px 0 0;
    padding: 12px 14px;
    border-left: 3px solid var(--consultation-gold);
    background: #fbfaf6;
}

.consultation-submit {
    display: inline-flex;
    min-height: 62px;
    width: 100%;
    align-items: center;
    justify-content: center;
    border: 1px solid #bd8d17;
    border-radius: 15px;
    background: linear-gradient(135deg, #dfb442 0%, #d0a02b 100%);
    color: var(--consultation-navy) !important;
    -webkit-text-fill-color: var(--consultation-navy) !important;
    cursor: pointer;
    font: inherit;
    font-size: 1.05rem;
    font-weight: 850;
    letter-spacing: 0.005em;
    box-shadow: 0 12px 26px rgba(107, 74, 8, 0.18);
    transition: transform 160ms ease, box-shadow 160ms ease, filter 160ms ease;
}

.consultation-submit:hover:not(:disabled) {
    transform: translateY(-1px);
    box-shadow: 0 15px 32px rgba(107, 74, 8, 0.24);
    filter: brightness(1.02);
}

.consultation-submit:disabled {
    cursor: wait;
    opacity: 0.72;
}

.consultation-response-time {
    margin: -10px 0 0;
    font-size: 0.9rem;
    line-height: 1.45;
    text-align: center;
}

.consultation-success {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 18px;
    padding: 26px;
    border: 1px solid rgba(31, 107, 67, 0.28);
    background: #f1faf5;
}

.consultation-success-icon {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 50%;
    background: var(--consultation-success);
    font-size: 1.4rem;
    font-weight: 900;
}

.consultation-success h2 {
    margin: 0 0 12px;
    font-size: clamp(2rem, 3vw, 3rem);
}

.consultation-success p {
    margin: 8px 0 0;
    line-height: 1.6;
}

.consultation-honeypot {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.consultation-page .sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

@media (max-width: 1100px) {
    .consultation-shell {
        grid-template-columns: 1fr;
        gap: 46px;
    }

    .consultation-copy h1,
    .consultation-intro {
        max-width: 900px;
    }

    .consultation-card {
        width: min(860px, 100%);
    }
}

@media (max-width: 720px) {
    .consultation-hero {
        padding: 38px 16px 60px;
    }

    .consultation-eyebrow {
        margin-bottom: 20px;
        font-size: 0.76rem;
    }

    .consultation-copy h1 {
        font-size: clamp(2.75rem, 13vw, 4.2rem);
        line-height: 1;
    }

    .consultation-intro {
        margin-top: 24px;
        font-size: 1.05rem;
    }

    .consultation-benefits {
        margin-top: 30px;
        gap: 14px;
    }

    .consultation-benefits li {
        padding-left: 48px;
        font-size: 1rem;
    }

    .consultation-card {
        padding: 32px 20px 34px;
        border-radius: 24px;
    }

    .consultation-card-header {
        margin-bottom: 26px;
    }

    .consultation-card h2 {
        font-size: clamp(2.35rem, 11vw, 3.35rem);
    }

    .consultation-form-grid,
    .consultation-coverage-grid {
        grid-template-columns: 1fr;
    }

    .consultation-form {
        gap: 22px;
    }

    .consultation-success {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .consultation-field input,
    .consultation-field select,
    .consultation-field textarea,
    .consultation-submit {
        transition: none;
    }
}
/* END INVICTA CONSULTATION PAGE V4 */
