/* ==========================================================
   Sprinkle with Soil theme for homesteadagent.com
   Paper theme first (white page, cream boxes, leaf-green serif
   heads, navy labels and CTAs, thin double green rules).
   Navy theme for the weighty bands (hero, community, testimonial,
   final CTA, footer). Square corners, no gradients, no shadows.
   ========================================================== */

@font-face{font-family:'Source Serif 4';src:url(fonts/source-serif-4-latin-500-normal.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Source Serif 4';src:url(fonts/source-serif-4-latin-600-normal.woff2) format('woff2');font-weight:600 700;font-style:normal;font-display:swap}
@font-face{font-family:'Source Serif 4';src:url(fonts/source-serif-4-latin-400-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Source Serif 4';src:url(fonts/source-serif-4-latin-600-italic.woff2) format('woff2');font-weight:600 700;font-style:italic;font-display:swap}
@font-face{font-family:'EB Garamond';src:url(fonts/eb-garamond-latin-400-normal.woff2) format('woff2');font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:'EB Garamond';src:url(fonts/eb-garamond-latin-400-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'EB Garamond';src:url(fonts/eb-garamond-latin-600-normal.woff2) format('woff2');font-weight:600 700;font-style:normal;font-display:swap}
@font-face{font-family:'Montserrat';src:url(fonts/montserrat-latin-600-normal.woff2) format('woff2');font-weight:500 600;font-style:normal;font-display:swap}
@font-face{font-family:'Montserrat';src:url(fonts/montserrat-latin-700-normal.woff2) format('woff2');font-weight:700 800;font-style:normal;font-display:swap}

:root{
  /* Sprinkle with Soil palette */
  --leaf:#3b9b3e; --leaf-text:#2c7a30; --sprout:#33b540;
  --navy:#003e61; --slate:#2f5e95;
  --cream:#fffccc; --butter:#fff9a6; --sun:#fff36d;
  --rule-green:#cceaa9; --ink:#231f20; --ink-deep:#02162a; --muted:#5c5a52;
  --navy-box:#0c4a70; --navy-head:#8fd18f; --navy-sub:#a9c6ea; --navy-rule:#4f8a6a; --navy-text:#fffccc; --navy-muted:#c9d4cf;

  --font-display:"Source Serif 4","FreightText Pro",Georgia,serif;
  --font-body:"EB Garamond","Garamond Premier Pro",Garamond,Georgia,serif;
  --font-label:Montserrat,"Proxima Nova",system-ui,sans-serif;

  /* remap the site's old tokens so anything not overridden below still lands on-palette */
  --black:var(--ink); --white:#ffffff;
  --gold:var(--navy); --gold-light:var(--slate); --gold-dark:var(--navy);
  --green:var(--leaf-text); --green-light:var(--leaf); --green-dark:var(--navy);
  --gray-light:var(--rule-green); --gray-mid:var(--muted);
}

/* ---------- base ---------- */
html body{background:#fff;color:var(--ink);font-family:var(--font-body);font-size:19px;line-height:1.55}
*, *::before, *::after{box-shadow:none !important;text-shadow:none !important}
img{border-radius:0 !important}
:focus-visible{outline:2px solid var(--navy);outline-offset:2px}

/* double rule: the brand's only ornament */
.section-title::after,.final-cta h2::after,.popup-title::after{
  content:"";display:block;width:96px;height:3px;margin-top:14px;
  border-top:1px solid var(--rule-green);border-bottom:1px solid var(--rule-green)}
.section-inner[style*="center"] .section-title::after,.final-cta h2::after{margin-left:auto;margin-right:auto}

/* ---------- nav ---------- */
.nav{background:#fff !important;border-bottom:1px solid var(--rule-green) !important}
.nav-brand{font-family:var(--font-display) !important;font-weight:600 !important;color:var(--ink) !important;letter-spacing:0.01em !important;text-transform:none !important;font-size:1.3rem !important}
.nav-brand span{color:var(--leaf-text) !important}
.nav-links a{color:var(--navy) !important;opacity:1 !important;font-family:var(--font-label) !important;font-size:0.72rem !important;font-weight:600 !important;letter-spacing:0.12em !important;text-transform:uppercase}
.nav-links a:hover{color:var(--leaf-text) !important}
.nav-links a.nav-cta,.nav-cta{background:var(--navy) !important;color:var(--cream) !important;border-radius:2px !important;padding:0.55rem 1.1rem !important}
.nav-links a.nav-cta:hover{background:var(--slate) !important;color:var(--cream) !important}
.hamburger span{background:var(--navy) !important}
@media (max-width:768px){.nav-links{background:#fff !important;border-bottom:1px solid var(--rule-green) !important}}

/* ---------- buttons ---------- */
.btn-primary,.popup-cta,.contact-form-wrap button{
  background:var(--navy) !important;color:var(--cream) !important;border-radius:2px !important;
  font-family:var(--font-label) !important;font-weight:700 !important;font-size:0.78rem !important;letter-spacing:0.14em !important;text-transform:uppercase}
.btn-primary:hover,.popup-cta:hover,.contact-form-wrap button:hover{background:var(--slate) !important;transform:none !important}
.btn-secondary{border:1.5px solid var(--navy) !important;color:var(--navy) !important;background:transparent !important;border-radius:2px !important;
  font-family:var(--font-label) !important;font-weight:700 !important;font-size:0.78rem !important;letter-spacing:0.14em !important;text-transform:uppercase}
.btn-secondary:hover{background:var(--navy) !important;color:var(--cream) !important}

/* ---------- section scaffolding ---------- */
.section-light{background:#fff !important;color:var(--ink) !important}
.section-label{font-family:var(--font-label) !important;font-weight:700 !important;font-size:0.72rem !important;letter-spacing:0.2em !important;color:var(--navy) !important;text-transform:uppercase}
.section-title{font-family:var(--font-display) !important;font-weight:600 !important;color:var(--leaf) !important;letter-spacing:0 !important;text-transform:none !important;line-height:1.15 !important}
.section-text{font-family:var(--font-body) !important;color:var(--ink) !important;font-size:1.12rem !important;line-height:1.6 !important}
.section h3{font-family:var(--font-display) !important}
.section-light h3{color:var(--leaf-text) !important}

/* cream sections (surface-box) */
#about,#calculator,#faq{background:var(--cream) !important;color:var(--ink) !important}
#services,#podcast{background:#fff !important;color:var(--ink) !important}
#calculator .calc-result{background:#fff !important}

/* navy theme bands */
.hero,.hero-video-section,#community,#testimonial,.final-cta,.footer{background:var(--navy) !important;color:var(--navy-text) !important}
.hero .section-label,#community .section-label,#testimonial .section-label{color:var(--sun) !important}
#community .section-title,#testimonial .section-title,.final-cta h2{color:var(--navy-head) !important;font-family:var(--font-display) !important;font-weight:600 !important;text-transform:none !important;letter-spacing:0 !important}
#community .section-text,#testimonial .section-text,.final-cta p{color:var(--navy-text) !important}
#community .section-title::after,#testimonial .section-title::after,.final-cta h2::after{border-color:var(--navy-rule)}
#community .btn-primary,#testimonial .btn-primary,.final-cta .btn-primary,.hero .btn-primary{background:var(--sun) !important;color:var(--navy) !important}
#community .btn-primary:hover,.final-cta .btn-primary:hover,.hero .btn-primary:hover{background:var(--butter) !important}
.hero .btn-secondary,.final-cta .btn-secondary,#community .btn-secondary{border-color:var(--cream) !important;color:var(--cream) !important}
.hero .btn-secondary:hover,.final-cta .btn-secondary:hover{background:var(--cream) !important;color:var(--navy) !important}

/* ---------- hero ---------- */
.hero-eyebrow{font-family:var(--font-label) !important;font-weight:700 !important;font-size:0.72rem !important;letter-spacing:0.22em !important;color:var(--sun) !important}
.hero h1{font-family:var(--font-display) !important;font-weight:600 !important;color:#fff !important;text-transform:none !important;letter-spacing:-0.005em !important;line-height:1.08 !important}
.hero h1 .gold{color:var(--navy-head) !important;font-style:italic}
.hero h1::after{content:"";display:block;width:120px;height:3px;margin:22px auto 0;border-top:1px solid var(--navy-rule);border-bottom:1px solid var(--navy-rule)}
.hero-sub{color:var(--navy-text) !important;font-family:var(--font-body) !important;font-size:1.2rem !important;opacity:0.92}
.hero-video-embed{border-radius:0 !important;border:1px solid var(--navy-rule) !important;background:var(--ink-deep) !important}
.topo-divider{display:none}

/* ---------- story ---------- */
.story-photo{border-radius:0 !important}

/* ---------- about (cream) ---------- */
#about .section-label{color:var(--navy) !important}
#about .section-title{color:var(--leaf) !important}
#about .section-text{color:var(--ink) !important}
.about-photo{border-radius:0 !important}
.about-team-name{font-family:var(--font-label) !important;color:var(--navy) !important}
.about-quote{border-left:3px double var(--leaf) !important;color:var(--slate) !important;font-family:var(--font-display) !important;font-style:italic;font-weight:600}
.about-stat strong{font-family:var(--font-display) !important;color:var(--leaf) !important}
.about-stat span{font-family:var(--font-label) !important;color:var(--navy) !important;opacity:1 !important}
.about-person{background:#fff !important;border:1px solid var(--rule-green) !important;border-radius:0 !important;color:var(--ink) !important}
.about-person h3{color:var(--leaf-text) !important;font-family:var(--font-display) !important}
.about-person .role{font-family:var(--font-label) !important;color:var(--navy) !important;opacity:1 !important;font-size:0.68rem !important}
.about-person p{color:var(--ink) !important;opacity:1 !important}

/* ---------- services (cream, white cards) ---------- */
#services .section-title{color:var(--leaf) !important}
#services .section-label{color:var(--navy) !important}
#services p[style]{color:var(--ink) !important;opacity:1 !important}
#services p[style] a{color:var(--navy) !important;border-color:var(--navy) !important}
.service-card{background:var(--cream) !important;border:1px solid var(--rule-green) !important;border-radius:0 !important;color:var(--ink) !important}
.service-card:hover{border-color:var(--leaf) !important}
.service-icon{display:none}
.service-card h3{color:var(--leaf-text) !important;font-family:var(--font-display) !important;font-size:1.5rem !important}
.service-card p{color:var(--ink) !important;font-family:var(--font-body) !important;font-size:1.05rem !important}
.service-card .service-cta{color:var(--navy) !important;font-family:var(--font-label) !important;font-size:0.72rem !important;letter-spacing:0.14em !important}

/* ---------- calculator ---------- */
.calc-field label{font-family:var(--font-label) !important;color:var(--navy) !important}
.calc-field input{border:1px solid #b9c9a9 !important;border-radius:2px !important;font-family:var(--font-body) !important;font-size:1.05rem !important}
.calc-field input:focus{border-color:var(--navy) !important}
.calc-result{background:var(--cream) !important;border:1px solid var(--rule-green) !important;border-radius:0 !important}
.calc-result-label{font-family:var(--font-label) !important;color:var(--navy) !important}
.calc-result-amount{color:var(--leaf-text) !important;font-family:var(--font-display) !important}
.calc-result-sub{color:var(--muted) !important}

/* ---------- webinars ---------- */
.webinar-card{background:var(--cream) !important;border:1px solid var(--rule-green) !important;border-radius:0 !important;color:var(--ink) !important}
.webinar-card h3{color:var(--leaf-text) !important}
.webinar-card p{color:var(--ink) !important}
.webinar-date{color:var(--navy) !important;font-family:var(--font-label) !important}
.badge-monthly{background:var(--sun) !important;color:var(--navy) !important}
.badge-quarterly{background:var(--navy) !important;color:var(--cream) !important}
.webinar-badge{border-radius:0 !important;font-family:var(--font-label) !important}

/* ---------- book ---------- */
.book-section img{border-radius:0 !important}
.book-info h3{color:var(--leaf-text) !important}
.book-info .book-pub{color:var(--slate) !important;font-family:var(--font-display) !important;font-style:italic;font-weight:600}
.book-info p{color:var(--ink) !important}
#book hr{border-top-color:var(--rule-green) !important}

/* ---------- testimonial / video frames ---------- */
.testimonial-embed{background:var(--ink-deep) !important;border:1px solid var(--navy-rule) !important;border-radius:0 !important}
.testimonial-embed iframe{border-radius:0 !important}
.client-track img{border-radius:0 !important}

/* ---------- podcast (cream band, navy card) ---------- */
.podcast-row{background:var(--navy) !important;border:none !important;border-radius:0 !important;color:var(--navy-text) !important}
.podcast-row img{border-radius:0 !important}
.podcast-info h3{color:var(--navy-head) !important;font-family:var(--font-display) !important}
.podcast-info p{color:var(--navy-text) !important}
.podcast-link{color:var(--sun) !important;border-color:var(--sun) !important;border-radius:2px !important;font-family:var(--font-label) !important}
.podcast-link:hover{background:var(--sun) !important;color:var(--navy) !important}

/* ---------- FAQ (cream) ---------- */
#faq .section-title{color:var(--leaf) !important}
#faq .section-label{color:var(--navy) !important}
.faq-item{border-bottom:1px solid var(--rule-green) !important}
.faq-question{color:var(--ink) !important;font-family:var(--font-display) !important;font-weight:600 !important;font-size:1.15rem !important;text-transform:none !important;letter-spacing:0 !important}
.faq-question:hover{color:var(--leaf-text) !important}
.faq-toggle{color:var(--navy) !important}
.faq-answer-inner{color:var(--ink) !important;font-family:var(--font-body) !important;font-size:1.08rem !important}

/* ---------- final CTA / social / footer (navy) ---------- */
.final-cta{border-top:none !important}
.social-btn{border:1px solid var(--navy-rule) !important;color:var(--cream) !important;border-radius:2px !important;font-family:var(--font-label) !important}
.social-btn:hover{border-color:var(--sun) !important;color:var(--sun) !important}
.footer{border-top:1px solid var(--navy-rule) !important}
.footer-brand{font-family:var(--font-display) !important;text-transform:none !important;letter-spacing:0 !important;color:var(--cream) !important}
.footer-brand span{color:var(--navy-head) !important}
.footer-compliance,.footer-compliance p,.footer-housing{color:var(--navy-muted) !important;font-family:var(--font-label) !important;font-size:0.68rem !important}
.footer-compliance a{color:var(--navy-sub) !important}

/* ---------- contact ---------- */
.contact-form-wrap{background:var(--cream) !important;border:1px solid var(--rule-green) !important;border-radius:0 !important}
.contact-form-wrap label{font-family:var(--font-label) !important;color:var(--navy) !important}
.contact-form-wrap input,.contact-form-wrap select,.contact-form-wrap textarea{background:#fff !important;border:1px solid #b9c9a9 !important;border-radius:2px !important;font-family:var(--font-body) !important;font-size:1.05rem !important}
.contact-form-wrap input:focus,.contact-form-wrap select:focus,.contact-form-wrap textarea:focus{border-color:var(--navy) !important}
.contact-tab{border:1px solid var(--navy) !important;color:var(--navy) !important;border-radius:2px !important;font-family:var(--font-label) !important}
.contact-tab.active{background:var(--navy) !important;color:var(--cream) !important}
.mortgage-panel{background:var(--navy) !important;border-radius:0 !important}
.mortgage-panel h3{color:var(--navy-head) !important}
.contact-form-success h3{color:var(--leaf-text) !important}

/* ---------- popup ---------- */
.popup-box{background:#fff !important;border-radius:0 !important;border-top:6px double var(--rule-green) !important}
.popup-eyebrow{font-family:var(--font-label) !important;color:var(--navy) !important}
.popup-title{color:var(--leaf) !important;font-family:var(--font-display) !important;text-transform:none !important}
.popup-text{color:var(--ink) !important;font-family:var(--font-body) !important}

/* inline-styled bits in the page */
[style*="color:var(--black)"],[style*="color: var(--black)"]{color:var(--leaf-text) !important}
.section-light p[style*="#444"]{color:var(--ink) !important}

/* ==========================================================
   SUBPAGES: listings.html, listing-*.html, sellers.html
   ========================================================== */
:root{
  --green-dark:#ffffff; --green-deep:var(--cream); --green-mid:var(--navy); --charcoal:var(--cream);
  --text-light:var(--ink); --text-muted:var(--muted); --gold-dim:var(--navy); --cream-dim:var(--rule-green);
}
.nav-links a[style*="--gold"]{color:var(--leaf-text) !important}
.nav-toggle span{background:var(--navy) !important}
@media (max-width:768px){.nav-links.open{background:#fff !important;border-bottom:1px solid var(--rule-green)}}

/* shared subpage buttons */
.btn-outline{border:1.5px solid var(--navy) !important;color:var(--navy) !important;background:transparent !important;border-radius:2px !important;
  font-family:var(--font-label) !important;font-weight:700 !important;font-size:0.75rem !important;letter-spacing:0.14em !important;text-transform:uppercase}
.btn-outline:hover{background:var(--navy) !important;color:var(--cream) !important}

/* ---------- listings.html ---------- */
.listings-hero{background:var(--navy) !important}
.listings-hero::before{display:none !important}
.hero-title{font-family:var(--font-display) !important;font-weight:600 !important;text-transform:none !important;letter-spacing:0 !important;color:#fff !important}
.hero-title::after{content:"";display:block;width:120px;height:3px;margin:20px auto 0;border-top:1px solid var(--navy-rule);border-bottom:1px solid var(--navy-rule)}
.hero-subtitle{color:var(--navy-text) !important;font-family:var(--font-body) !important;font-size:1.15rem !important}
.filter-btn{border:1px solid var(--navy) !important;color:var(--navy) !important;background:#fff !important;border-radius:2px !important;font-family:var(--font-label) !important;font-weight:600 !important;font-size:0.7rem !important}
.filter-btn:hover,.filter-btn.active{background:var(--navy) !important;color:var(--cream) !important}
.partner-note p{color:var(--ink) !important;font-family:var(--font-body) !important;font-size:1.02rem !important}
.partner-note a{color:var(--navy) !important;border-color:var(--navy) !important}
.listing-card{background:var(--cream) !important;border:1px solid var(--rule-green) !important;border-radius:0 !important}
.listing-card:hover{border-color:var(--leaf) !important}
.card-badge{background:var(--sun) !important;color:var(--navy) !important;border-radius:0 !important;font-family:var(--font-label) !important}
.card-badge.partner{background:var(--navy) !important;color:var(--cream) !important}
.card-badge.pending{background:var(--butter) !important;color:var(--navy) !important}
.card-price{font-family:var(--font-display) !important;color:var(--leaf-text) !important}
.card-address{font-family:var(--font-display) !important;font-weight:600;color:var(--ink) !important}
.card-location{font-family:var(--font-label) !important;font-size:0.72rem !important;color:var(--navy) !important;letter-spacing:0.06em !important}
.card-specs{border-top:1px solid var(--rule-green) !important}
.card-spec-value{font-family:var(--font-display) !important;color:var(--ink) !important}
.card-spec-label{font-family:var(--font-label) !important;color:var(--navy) !important;font-size:0.62rem !important}
.card-highlights{font-family:var(--font-body) !important;color:var(--ink) !important;font-size:1rem !important}
.card-cta{color:var(--navy) !important;border-color:var(--navy) !important;font-family:var(--font-label) !important;font-size:0.72rem !important}
.listings-cta-section{background:var(--navy) !important;border-top:none !important}
.cta-title{font-family:var(--font-display) !important;font-weight:600 !important;text-transform:none !important;letter-spacing:0 !important;color:var(--navy-head) !important}
.cta-text{color:var(--navy-text) !important;font-family:var(--font-body) !important;font-size:1.1rem !important}
.listings-cta-section .btn-primary,.cta .btn-primary{background:var(--sun) !important;color:var(--navy) !important}
.listings-cta-section .btn-outline,.cta .btn-outline{border-color:var(--cream) !important;color:var(--cream) !important}
.listings-cta-section .btn-outline:hover,.cta .btn-outline:hover{background:var(--cream) !important;color:var(--navy) !important}

/* ---------- listing detail pages ---------- */
.back-link{color:var(--navy) !important;font-family:var(--font-label) !important;font-size:0.72rem !important}
.listing-header{border-bottom:1px solid var(--rule-green) !important}
.listing-status{background:var(--sun) !important;color:var(--navy) !important;border-radius:0 !important;font-family:var(--font-label) !important}
.listing-status[style]{background:var(--navy) !important;color:var(--cream) !important;border:none !important}
.listing-price{font-family:var(--font-display) !important;color:var(--leaf-text) !important}
.listing-address{font-family:var(--font-display) !important;font-weight:600;color:var(--ink) !important}
.listing-location{font-family:var(--font-label) !important;font-size:0.75rem !important;color:var(--navy) !important}
.gallery-main{border-radius:0 !important}
.gallery-counter{background:var(--navy) !important;color:var(--cream) !important;border-radius:0 !important;font-family:var(--font-label) !important}
.gallery-thumb{border-radius:0 !important}
.gallery-thumb:hover,.gallery-thumb.active{border-color:var(--leaf) !important}
.lightbox-close{color:#fff !important}
.lightbox-nav{color:#fff !important;background:rgba(255,252,204,0.18) !important}
.lightbox img{border-radius:0 !important}
.section-heading{font-family:var(--font-display) !important;font-weight:600 !important;text-transform:none !important;letter-spacing:0 !important;color:var(--leaf) !important}
.content-block p{color:var(--ink) !important;font-family:var(--font-body) !important;font-size:1.1rem !important;line-height:1.65 !important}
.content-block .section-heading::after{content:"";display:block;width:80px;height:3px;margin-top:12px;border-top:1px solid var(--rule-green);border-bottom:1px solid var(--rule-green)}
.eval-item{background:var(--cream) !important;border:1px solid var(--rule-green) !important;border-radius:0 !important}
.eval-item-label{font-family:var(--font-label) !important;color:var(--navy) !important}
.eval-item-value{font-family:var(--font-body) !important;color:var(--ink) !important;font-size:1.02rem !important}
.video-wrapper{background:var(--ink-deep) !important;border-radius:0 !important}
.video-placeholder{color:var(--navy-muted) !important;font-family:var(--font-label) !important}
.sidebar-card{background:var(--cream) !important;border:1px solid var(--rule-green) !important;border-radius:0 !important}
.sidebar-title{font-family:var(--font-display) !important;font-weight:600 !important;text-transform:none !important;letter-spacing:0 !important;font-size:1.25rem !important;color:var(--leaf-text) !important;border-bottom:1px solid var(--rule-green) !important}
.spec-row{border-bottom:1px solid var(--rule-green) !important}
.spec-label{font-family:var(--font-label) !important;color:var(--navy) !important;font-size:0.68rem !important}
.spec-value{font-family:var(--font-body) !important;color:var(--ink) !important;font-size:1.02rem !important}
.sidebar-link{color:var(--navy) !important;border:1.5px solid var(--navy) !important;border-radius:2px !important;font-family:var(--font-label) !important;font-size:0.72rem !important}
.sidebar-link:hover{background:var(--navy) !important;color:var(--cream) !important}
.sidebar-cta p{color:var(--ink) !important}
.sidebar-card p[style]{color:var(--muted) !important}
.calc-section h2{font-family:var(--font-display) !important;font-weight:600 !important;text-transform:none !important;letter-spacing:0 !important;color:var(--leaf) !important}
.calc-section .calc-intro{color:var(--ink) !important;font-family:var(--font-body) !important}
.calc-container{background:var(--cream) !important;border:1px solid var(--rule-green) !important;border-radius:0 !important}
.calc-section .calc-field input{background:#fff !important;color:var(--ink) !important}
.calc-section .calc-result{background:#fff !important}

/* ---------- sellers.html ---------- */
.hero[style],body .hero{background-image:none !important}
.hero h1 span{color:var(--navy-head) !important;font-style:italic}
.hero .label{color:var(--sun) !important}
.hero .lead{color:var(--navy-text) !important}
.hero .keep{color:var(--sun) !important;font-family:var(--font-label) !important}
.hero .btn-outline{border-color:var(--cream) !important;color:var(--cream) !important}
.hero .btn-outline:hover{background:var(--cream) !important;color:var(--navy) !important}
.label{font-family:var(--font-label) !important;font-weight:700 !important;font-size:0.72rem !important;color:var(--navy) !important}
.title{font-family:var(--font-display) !important;font-weight:600 !important;text-transform:none !important;letter-spacing:0 !important;color:var(--leaf) !important}
.title::after{content:"";display:block;width:96px;height:3px;margin-top:14px;border-top:1px solid var(--rule-green);border-bottom:1px solid var(--rule-green)}
.title.center::after{margin-left:auto;margin-right:auto}
.lead,.muted{color:var(--ink) !important;font-family:var(--font-body) !important}
.section.alt{background:var(--cream) !important;border-color:var(--rule-green) !important}
.stat{background:#fff !important;border:1px solid var(--rule-green) !important;border-radius:0 !important}
.stat-num{font-family:var(--font-display) !important;color:var(--leaf-text) !important}
.stat-label{font-family:var(--font-label) !important;color:var(--navy) !important}
.stat p{color:var(--ink) !important;font-family:var(--font-body) !important;font-size:1rem !important}
.bar-row span:first-child{font-family:var(--font-label) !important;color:var(--navy) !important;font-size:0.72rem !important}
.bar-row span:last-child{font-family:var(--font-display) !important;color:var(--ink) !important}
.bar-track{background:var(--cream) !important;border:1px solid var(--rule-green);border-radius:0 !important}
.bar-fill{background:var(--leaf) !important;border-radius:0 !important}
.bar-row.dim .bar-fill{background:var(--rule-green) !important;opacity:1 !important}
.caption{color:var(--muted) !important;font-family:var(--font-body) !important;font-style:italic}
.pkg{background:#fff !important;border:1px solid var(--rule-green) !important;border-radius:0 !important}
.pkg.featured{border:2px solid var(--navy) !important}
.pkg-tag{background:var(--sun) !important;color:var(--navy) !important;border-radius:0 !important;font-family:var(--font-label) !important}
.pkg h3{font-family:var(--font-display) !important;text-transform:none !important;letter-spacing:0 !important;color:var(--ink) !important;font-size:1.4rem !important}
.pkg-price{font-family:var(--font-display) !important;color:var(--leaf-text) !important}
.pkg li{border-bottom:1px solid var(--rule-green) !important;font-family:var(--font-body) !important;font-size:1rem !important}
.pkg li span:first-child{color:var(--ink) !important}
.pkg li.no span:last-child{color:#b8b6ad !important}
.steps li::before{border-color:var(--navy) !important;color:var(--navy) !important;border-radius:0 !important;font-family:var(--font-display) !important}
.steps strong{font-family:var(--font-label) !important;color:var(--navy) !important;font-size:0.78rem !important}
.steps p{color:var(--ink) !important;font-family:var(--font-body) !important;font-size:1.05rem !important}
.steps a{color:var(--navy) !important}
.card{background:var(--cream) !important;border:1px solid var(--rule-green) !important;border-radius:0 !important}
.card h3{font-family:var(--font-display) !important;text-transform:none !important;letter-spacing:0 !important;color:var(--leaf-text) !important;font-size:1.3rem !important;border-color:var(--rule-green) !important}
.checks li{color:var(--ink) !important;font-family:var(--font-body) !important;font-size:1.05rem !important}
.checks li::before{background:var(--leaf) !important}
.card .note{color:var(--slate) !important;font-family:var(--font-display) !important;font-style:italic}
.tim img{border:none !important}
.tim p{color:var(--ink) !important;font-family:var(--font-body) !important;font-size:1.1rem !important}
.fine li{color:var(--ink) !important;font-family:var(--font-body) !important;font-size:1rem !important}
.fine li::before{color:var(--leaf) !important}
.cta{background:var(--navy) !important;border-top:none !important}
.cta .label{color:var(--sun) !important}
.cta .title{color:var(--navy-head) !important}
.cta .title::after{border-color:var(--navy-rule) !important;margin-left:auto;margin-right:auto}
.cta .lead{color:var(--navy-text) !important}
.cta .email{color:var(--sun) !important;font-family:var(--font-label) !important}

/* ---------- event announcement bar ---------- */
:root{--bh:44px}
body{padding-top:var(--bh) !important}
.nav{top:var(--bh) !important}
.event-banner{position:fixed;top:0;left:0;right:0;z-index:150;min-height:44px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0.4rem 1rem;
  padding:0.55rem 3rem 0.55rem 1rem;background:var(--butter);color:var(--navy);border-bottom:1px solid var(--rule-green);text-align:center;line-height:1.35}
.eb-tag{font-family:var(--font-label);font-weight:700;font-size:0.62rem;letter-spacing:0.18em;text-transform:uppercase;background:var(--navy);color:var(--cream);padding:0.25rem 0.55rem}
.eb-text{font-family:var(--font-display);font-size:0.98rem;color:var(--navy)}
.eb-text strong{font-weight:600}
.eb-sep{color:var(--leaf);margin:0 0.15rem}
.eb-link{font-family:var(--font-label);font-weight:700;font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--navy);text-decoration:none;border-bottom:1.5px solid var(--navy);padding-bottom:1px}
.eb-link:hover{color:var(--leaf-text);border-color:var(--leaf-text)}
.eb-close{position:absolute;right:0.6rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--navy);font-size:1.4rem;line-height:1;cursor:pointer;padding:0.25rem 0.5rem}
.eb-close:hover{color:var(--leaf-text)}
@media (max-width:560px){.event-banner{gap:0.15rem 0.6rem;padding:0.45rem 2.2rem 0.45rem 0.75rem}.eb-tag{display:none}.eb-text{font-size:0.85rem;width:100%}.eb-link{font-size:0.62rem}}
