/* Jedd Sarte earthy green editorial brand system */
:root{
  --brand-primary:#3B6255;
  --brand-primary-dark:#2F5046;
  --brand-sage:#8BA49A;
  --brand-mint:#CBDED3;
  --brand-sand:#D2C49E;
  --brand-amber:#E8A44A;
  --brand-amber-dark:#C9822F;
  --brand-forest:#173F35;
  --brand-neutral:#E2DFDA;
  --brand-ivory:#F7F4EF;
  --brand-white:#FFFDF9;
  --brand-ink:#2F2F2F;
  --brand-muted:#62645F;
  --brand-line:#D7D2CA;
  --navy:var(--brand-primary);
  --navy-mid:var(--brand-primary-dark);
  --navy-light:#52796D;
  --gold:var(--brand-sand);
  --gold-light:#E0D6BA;
  --gold-dim:rgba(210,196,158,.18);
  --gold-border:rgba(210,196,158,.42);
  --white:var(--brand-white);
  --offwhite:var(--brand-ivory);
  --cream:#EEF2EE;
  --gray-100:#F1EFEB;
  --gray-200:var(--brand-line);
  --gray-400:#9A9A93;
  --gray-600:var(--brand-muted);
  --gray-800:var(--brand-ink);
  --g100:#F1EFEB;
  --g200:var(--brand-line);
  --g400:#9A9A93;
  --g600:var(--brand-muted);
  --g800:var(--brand-ink);
}

html,body{background:var(--brand-ivory);color:var(--brand-ink)}
body{accent-color:var(--brand-primary)}
a{color:var(--brand-primary)}
a:hover{color:var(--brand-primary-dark)}

h1,h2,.hero-title,.audit-title,.cs-num,.bt-num{
  font-family:'DM Serif Display',Georgia,'Times New Roman',serif!important;
  letter-spacing:-.02em;
}
h3,h4,h5,h6{color:var(--brand-primary-dark)}

/* Homepage hero: solid green, editorial, premium */
#hero{
  background:var(--brand-primary)!important;
  color:var(--brand-white)!important;
  min-height:auto!important;
  position:relative!important;
}
#hero::before{
  content:'';
  position:absolute;
  right:-1%;
  top:7%;
  width:min(520px,42vw);
  height:88%;
  pointer-events:none;
  background:url('/assets/hero-botanical.svg') right center/contain no-repeat;
  opacity:.28;
  z-index:1;
  filter:saturate(.85);
}
#hero::after{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 84% 18%,rgba(203,222,211,.08),transparent 34%),
    linear-gradient(180deg,rgba(47,80,70,.06),rgba(47,80,70,.18));
  z-index:1;
}
#hero .hero-inner{position:relative;z-index:2!important}
#hero .hero-dot-bg{opacity:.08!important;background-image:radial-gradient(rgba(255,253,249,.16) 1px,transparent 1px)!important}
#hero .hero-glow{opacity:.18!important;background:radial-gradient(circle,rgba(210,196,158,.16) 0%,transparent 66%)!important}
#hero .hero-glow2{opacity:.12!important;background:radial-gradient(circle,rgba(139,164,154,.26) 0%,transparent 70%)!important}
#hero .hero-title,#hero h1,#hero h2,#hero h3{color:var(--brand-white)!important}
#hero .hero-title em,#hero h1 em{color:var(--brand-sand)!important}
#hero p,#hero .hero-sub,#hero .status-text,#hero .hero-stat-label{color:rgba(255,253,249,.80)!important}
#hero .hero-sub strong{color:var(--brand-white)!important}
#hero .hero-available{background:rgba(203,222,211,.10)!important;border-color:rgba(203,222,211,.24)!important;color:var(--brand-white)!important}
#hero .pulse{background:var(--brand-sand)!important}
#hero .hero-card{background:rgba(47,80,70,.30)!important;border-color:rgba(203,222,211,.28)!important;box-shadow:0 28px 70px rgba(25,46,39,.28)!important;backdrop-filter:blur(2px)}
#hero .hero-card::before{background:linear-gradient(90deg,var(--brand-sand),transparent)!important}
#hero .hero-card-body{background:rgba(47,80,70,.52)!important}
#hero .hero-card-kicker{color:var(--brand-sand)!important}
#hero .hero-stat{background:rgba(255,253,249,.04)!important;border-color:rgba(203,222,211,.15)!important}
#hero .hero-stat b{color:var(--brand-white)!important}
#hero .hero-stat span{color:rgba(255,253,249,.58)!important}
#hero .hero-portrait-overlay{background:linear-gradient(180deg,transparent 44%,rgba(47,80,70,.88) 100%)!important}
#hero .btn-gold,#hero .btn,#hero a[class*="btn"]{background:var(--brand-sand)!important;color:var(--brand-primary-dark)!important;border-color:var(--brand-sand)!important}
#hero .btn-gold:hover,#hero .btn:hover,#hero a[class*="btn"]:hover{background:#E0D6BA!important;color:var(--brand-primary-dark)!important}
#hero .btn-outline{background:transparent!important;color:var(--brand-white)!important;border-color:rgba(255,253,249,.48)!important}
#hero .btn-outline:hover{border-color:var(--brand-sand)!important;color:var(--brand-sand)!important;background:transparent!important}
#hero a:not([class*="btn"]){color:var(--brand-sand)!important}

.hero:not(#hero),#newsletter,#audit,.cta,.callout,.sidebar-card,
.fp-visual,.fp-body,.nl-form,
section[style*="#010829"],section[style*="#030d40"],section[style*="#07154f"]{
  background-color:var(--brand-primary)!important;
  background-image:none!important;
}

#services{background:var(--brand-primary)!important}
#services .svc{background:rgba(255,253,249,.045)!important;border-color:rgba(203,222,211,.16)!important}
#services .svc:hover{background:rgba(203,222,211,.08)!important;border-color:rgba(210,196,158,.42)!important}
#services .svc-tag{background:rgba(210,196,158,.14)!important;color:var(--brand-sand)!important}

.section.alt,#posts,#more-posts,.sidebar-cta,.toc,.tip-box,#cases,#blog{
  background-color:var(--brand-ivory)!important;
}
#testimonials{background:var(--brand-white)!important}
#process,.process-strip,.industry-strip{
  background:linear-gradient(90deg,var(--brand-mint),#DEE8E1)!important;
  color:var(--brand-primary-dark)!important;
}

.card,.post-card,.cs,.service-card,.industry-card,.location-card,.blog-card,.testi{
  border-color:var(--brand-line)!important;
  box-shadow:none;
}
.card:hover,.post-card:hover,.cs:hover,.blog-card:hover{
  box-shadow:0 16px 42px rgba(47,80,70,.10)!important;
}

.eyebrow,.tag,.pc-tag,.fp-label,.hero-tag,.post-tag,.tip-label,
.site-shell-logo span,.site-shell-footer-logo span{color:var(--brand-sand)!important}
.pc-tag,.fp-label{background:var(--brand-mint)!important;color:var(--brand-primary-dark)!important}
button,.btn,.nav-cta,.booking-btn,.csub,.cta-inline a,.nl-btn,a[class*="btn"]{border-color:transparent}

.btn,.booking-btn,.csub,.cta-inline a,.form-btn{background:var(--brand-primary)!important;color:var(--brand-white)!important}
.btn:hover,.booking-btn:hover,.csub:hover,.cta-inline a:hover,.form-btn:hover{background:var(--brand-primary-dark)!important;color:var(--brand-white)!important}

.hero:not(#hero) .btn,.hero:not(#hero) a[class*="btn"],.cta .btn,.cta a[class*="btn"],
.nav-cta,.site-shell-cta,#audit .btn,#audit a[class*="btn"]{background:var(--brand-sand)!important;color:var(--brand-primary-dark)!important}
.hero:not(#hero) .btn:hover,.hero:not(#hero) a[class*="btn"]:hover,.cta .btn:hover,.cta a[class*="btn"]:hover,
.nav-cta:hover,.site-shell-cta:hover,#audit .btn:hover,#audit a[class*="btn"]:hover{background:#E0D6BA!important;color:var(--brand-primary-dark)!important}

.cs-vis,.cs-gate{background:var(--brand-primary)!important}
.cs-vis-bg,.cs-gate::before{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-primary-dark) 100%)!important}
.cs-vis::after{background:linear-gradient(180deg,rgba(59,98,85,.12),rgba(47,80,70,.88))!important}
.cs-vis-glow{background:radial-gradient(circle,rgba(210,196,158,.18) 0%,transparent 70%)!important}
.cs-badge,.bt-tag{background:var(--brand-sand)!important;color:var(--brand-primary-dark)!important}

input:focus,textarea:focus,select:focus{border-color:var(--brand-primary)!important;outline-color:var(--brand-primary)!important}
::selection{background:var(--brand-mint);color:var(--brand-primary-dark)}

@media(max-width:900px){
  #hero::before{width:58vw;height:72%;right:-18%;top:14%;opacity:.16}
}


/* 2026-09 energetic CRO refinement */
#services .section-label,#services .eyebrow,#services [class*="eyebrow"]{color:#F4C879!important}
#services p,#services .section-sub,#services .section-desc,#services .section-intro{color:rgba(255,253,249,.88)!important}
#services h2,#services>div>h2{color:#FFFDF9!important}
#services .svc{background:#FFFDF9!important;border-color:rgba(255,255,255,.38)!important;box-shadow:0 8px 24px rgba(23,63,53,.13)!important}
#services .svc h3,#services .svc h4,#services .svc strong{color:#173F35!important}
#services .svc p,#services .svc span:not(.svc-tag){color:#38453F!important}
#services .svc-tag{background:#CBDED3!important;color:#173F35!important}
#services .svc:hover{background:#FFFDF9!important;border-color:#E8A44A!important;transform:translateY(-3px)}
.site-shell-cta,.nav-cta{background:#E8A44A!important;color:#173F35!important}
.site-shell-cta:hover,.nav-cta:hover{background:#F4C879!important;color:#173F35!important}


/* Homepage editorial light/dark rhythm + accessibility contrast */
body.homepage-refresh, body:has(#hero){background:#FFFDF8!important;color:#173F35!important}
#hero{
  background:linear-gradient(90deg,#F7F1E7 0%,#FFFDF8 63%,#F3EDE2 100%)!important;
  color:#173F35!important;
  padding-top:132px!important;
  padding-bottom:72px!important;
}
#hero::before{left:-4%;right:auto;top:15%;width:min(330px,24vw);height:72%;opacity:.12;filter:none}
#hero::after{background:radial-gradient(circle at 76% 28%,rgba(203,222,211,.25),transparent 31%)!important}
#hero .hero-dot-bg{opacity:.14!important;background-image:radial-gradient(rgba(59,98,85,.16) 1px,transparent 1px)!important}
#hero .hero-glow,#hero .hero-glow2{display:none!important}
#hero .hero-inner{grid-template-columns:minmax(0,1.12fr) minmax(350px,.88fr)!important;gap:70px!important}
#hero .hero-title,#hero h1{color:#173F35!important;font-size:clamp(3rem,5.2vw,5rem)!important;line-height:1.01!important}
#hero .hero-title em,#hero h1 em{color:#C9822F!important}
#hero p,#hero .hero-sub{color:#314B43!important}
#hero .hero-sub{max-width:610px!important;font-size:1rem!important;line-height:1.62!important;margin-bottom:26px!important}
#hero .hero-sub strong{color:#173F35!important}
#hero .hero-available{background:#E4EFE8!important;border-color:#C5DBD0!important;color:#173F35!important}
#hero .pulse{background:#17934E!important}
#hero .btn-gold,#hero .btn,#hero a[class*="btn"]{background:#E8A44A!important;color:#173F35!important;border-color:#E8A44A!important;box-shadow:0 8px 22px rgba(201,130,47,.16)}
#hero .btn-gold:hover,#hero .btn:hover,#hero a[class*="btn"]:hover{background:#F4C879!important;color:#173F35!important}
#hero .btn-outline{background:#FFFDF8!important;color:#173F35!important;border-color:#3B6255!important}
#hero .btn-outline:hover{background:#E4EFE8!important;color:#173F35!important;border-color:#173F35!important}
#hero a:not([class*="btn"]){color:#8A551D!important;text-decoration-color:rgba(138,85,29,.45)}
#hero .cert-label{color:#50675F!important}
#hero .cert-text{color:#173F35!important;border-color:#B9C9C2!important;background:#FFFDF8!important}
#hero .cert-badge img{mix-blend-mode:multiply!important;opacity:.9!important;filter:none!important}
#hero .hero-card{background:#28594B!important;border:1px solid rgba(23,63,53,.16)!important;box-shadow:0 24px 55px rgba(23,63,53,.18)!important;border-radius:20px!important}
#hero .hero-card::before{background:linear-gradient(90deg,#E8A44A,transparent)!important}
#hero .hero-card-body{background:#28594B!important}
#hero .hero-card-kicker{color:#F4C879!important}
#hero .hero-stat{background:rgba(255,253,248,.07)!important;border-color:rgba(255,253,248,.18)!important}
#hero .hero-stat b{color:#FFFDF8!important}
#hero .hero-stat span{color:rgba(255,253,248,.78)!important}
#hero .hero-portrait{filter:saturate(.92) contrast(1.02)!important}
#hero .hero-portrait-overlay{background:linear-gradient(180deg,transparent 48%,rgba(23,63,53,.82) 100%)!important}

/* Crawl/service-area strip: quiet and readable */
.crawl-links{background:#E4EFE8!important;border-color:#C8D9D1!important}
.crawl-links-label{color:#415A51!important}
.crawl-link{color:#173F35!important;background:#FFFDF8!important;border-color:#B9CBC3!important}
.crawl-link:hover{border-color:#C9822F!important;color:#7B4B18!important}

/* Client marquee: retain dark brand anchor with accessible text */
#trust{background:#173F35!important;border-color:rgba(244,200,121,.22)!important}
#trust .logo-name{color:rgba(255,253,248,.82)!important}
#trust .client-logo-pill{background:rgba(255,253,248,.07)!important;border-color:rgba(255,253,248,.16)!important}

/* About and light content */
#about,#testimonials{background:#FFFDF8!important}
#about h2,#about h3,#testimonials h2,#testimonials h3{color:#173F35!important}
#about p,#testimonials p{color:#45574F!important}
.badge-dark{background:#173F35!important;color:#FFFDF8!important}
.badge-light{background:#E4EFE8!important;color:#173F35!important;border-color:#C8D9D1!important}

/* Services: premium green band, white cards, strong readable copy */
#services{background:#28594B!important}
#services .eyebrow{color:#F4C879!important}
#services h2{color:#FFFDF8!important}
#services>.container>p{color:rgba(255,253,248,.86)!important}
#services .svc{background:#FFFDF8!important;border-color:rgba(255,253,248,.55)!important}
#services .svc h3,#services .svc h3 a{color:#173F35!important}
#services .svc p{color:#45574F!important}
#services .svc-tag{background:#DDEBE4!important;color:#173F35!important}
#services .svc:hover{border-color:#E8A44A!important;box-shadow:0 18px 42px rgba(23,63,53,.22)!important}

/* Fix pale process/industry bands globally */
#process,.process-strip,.industry-strip{
  background:linear-gradient(90deg,#DCEBE4,#EEF4F0)!important;
  color:#173F35!important;
}
#process *, .process-strip *, .industry-strip *{color:#173F35!important}
#process p,.process-strip p,.industry-strip p{color:#3E554C!important}
#process .eyebrow,.process-strip .eyebrow,.industry-strip .eyebrow{color:#7B4B18!important}

/* General contrast safeguards for light sections */
#cases p,#blog p,.section.alt p,#posts p,#more-posts p{color:#4B5B54!important}
#cases h2,#cases h3,#blog h2,#blog h3,.section.alt h2,.section.alt h3{color:#173F35!important}
#cases .eyebrow,#blog .eyebrow,#testimonials .eyebrow,#contact .eyebrow{color:#8A551D!important}
.testi-text{color:#45574F!important}
.trole,.cs-m-lbl{color:#65736D!important}

/* Contact / audit dark sections */
#audit,#contact .contact-form{background:#173F35!important}
#audit p,#contact .contact-form p{color:rgba(255,253,248,.82)!important}
#audit h2,#audit h3,#contact .contact-form h2,#contact .contact-form h3{color:#FFFDF8!important}

/* Homepage MCP block overrides legacy inline blue-gray values */
#jeddsarte-paid-media-mcp{background:#F7F1E7!important;border-color:#D7D2CA!important}
#jeddsarte-paid-media-mcp>div>div{background:#FFFDF8!important;border-color:#D7D2CA!important}
#jeddsarte-paid-media-mcp h3,#jeddsarte-paid-media-mcp strong{color:#173F35!important}
#jeddsarte-paid-media-mcp p{color:#4B5B54!important}

@media(max-width:900px){
  #hero{padding-top:112px!important}
  #hero .hero-inner{grid-template-columns:1fr!important;gap:42px!important}
  #hero::before{width:62vw;opacity:.08}
}


/* 2026-09-20 cross-page contrast pass */
body:not(.homepage-refresh) #hero{
  background:#173F35!important;
  color:#FFFDF8!important;
}
body:not(.homepage-refresh) #hero .hero-title,
body:not(.homepage-refresh) #hero h1,
body:not(.homepage-refresh) #hero h2,
body:not(.homepage-refresh) #hero h3{color:#FFFDF8!important}
body:not(.homepage-refresh) #hero .hero-title em,
body:not(.homepage-refresh) #hero h1 em{color:#E8A44A!important}
body:not(.homepage-refresh) #hero p,
body:not(.homepage-refresh) #hero .hero-sub{color:rgba(255,253,248,.90)!important}
body:not(.homepage-refresh) #hero .eyebrow{color:#F4C879!important}

/* Case studies hero: approved white headline treatment over dark analytics image */
body:not(.homepage-refresh) #hero .hero-dots{
  opacity:.58!important;
  background-image:linear-gradient(90deg,rgba(23,63,53,.90),rgba(23,63,53,.66)),url('https://images.unsplash.com/photo-1551288049-bebda4e38f71?auto=format&fit=crop&w=1800&q=80')!important;
}
body:not(.homepage-refresh) #hero .hero-sub{color:rgba(255,253,248,.88)!important}
body:not(.homepage-refresh) #hero .hs-num{color:#FFFDF8!important}
body:not(.homepage-refresh) #hero .hs-lbl{color:rgba(255,253,248,.76)!important}
body:not(.homepage-refresh) #hero .hs{border-left-color:#E8A44A!important}

/* Services page contrast */
#services .services-intro h2{color:#FFFDF8!important}
#services .services-intro p{color:rgba(255,253,248,.88)!important}
#services .commercial-path{background:#FFFDF8!important;border-color:#D7D2CA!important}
#services .commercial-path strong{color:#173F35!important}
#services .commercial-path span{color:#45574F!important}
#services .need-head h3{color:#FFFDF8!important}
#services .need-head p{color:rgba(255,253,248,.88)!important}
#services .need-card{background:#FFFDF8!important;border-color:#D7D2CA!important}
#services .need-card span{color:#8A551D!important}
#services .need-card strong{color:#173F35!important}
#services .need-card p{color:#45574F!important}
#services .svc-grid{border-color:#D7D2CA!important}
#services .svc-content{background:#FFFDF8!important}
#services .svc-content h3{color:#173F35!important}
#services .svc-content>p,#services .svc-content .svc-desc{color:#3F5149!important}
#services .includes-label{color:#7B6650!important}
#services .includes-list li{color:#3F5149!important}
#services .svc-meta-label{color:#6B756F!important}
#services .svc-meta-val{color:#173F35!important}
#services .check{color:#C9822F!important}

/* Industries cards: ensure all card text stays readable */
.cards .card{background:#FFFDF8!important;border-color:#D7D2CA!important}
.cards .card-body span{color:#8A551D!important}
.cards .card-body h3{color:#173F35!important}
.cards .card-body p{color:#45574F!important}
.cards .card-body strong{color:#8A551D!important}


/* Homepage Case Studies CTA readability */
#cases .cs-gate .cs-gate-inner h3{
  font-family:'Space Grotesk',Inter,Arial,sans-serif!important;
  font-size:clamp(1.75rem,2.8vw,2.35rem)!important;
  font-weight:700!important;
  line-height:1.18!important;
  letter-spacing:-.02em!important;
  color:#FFFDF9!important;
}
#cases .cs-gate .cs-gate-inner p{
  font-family:Inter,Arial,sans-serif!important;
  font-size:1.05rem!important;
  font-weight:500!important;
  line-height:1.75!important;
  color:rgba(255,253,249,.88)!important;
  max-width:760px!important;
  margin:0 auto 28px!important;
}
#cases .cs-gate .cs-gate-inner .btn-gold{
  font-family:'Space Grotesk',Inter,Arial,sans-serif!important;
  font-size:.95rem!important;
  font-weight:700!important;
  letter-spacing:.01em!important;
  background:#D2C49E!important;
  color:#173F35!important;
  border-color:#D2C49E!important;
}
#cases .cs-gate .cs-gate-inner .btn-gold:hover{
  background:#E0D6BA!important;
  color:#173F35!important;
}
