
/* ==========================================================
   EVERGREEN WEBSITE — FINAL PRESENTATION & CONVERSION LAYER
   Conservative: preserves the existing brand and components.
   ========================================================== */

:root{
  --ev-green:#5a786e;
  --ev-green-dark:#3d564e;
  --ev-green-pale:#f3f6f5;
  --ev-border:#dbe3e1;
  --ev-gold:#9e7b47;
  --ev-ink:#2f3b37;
  --ev-muted:#52635d;
  --ev-white:#fff;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  overflow-x:clip;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
img,svg,video,iframe{max-width:100%}
p,li,a,h1,h2,h3,h4,td,th{overflow-wrap:anywhere}

a:focus-visible,button:focus-visible,input:focus-visible,
select:focus-visible,textarea:focus-visible{
  outline:3px solid var(--ev-gold);
  outline-offset:3px;
}

.ev-home{background:var(--ev-white);color:var(--ev-ink)}

.ev-hero{
  position:relative;
  overflow:hidden;
  background:linear-gradient(120deg,#f3f6f5 0%,#fbfcfb 55%,#fff 100%);
  border-bottom:1px solid var(--ev-border);
}
.ev-hero-inner{
  width:min(1180px,90%);
  margin:0 auto;
  min-height:600px;
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(320px,.98fr);
  align-items:center;
  gap:60px;
  padding:70px 0;
}
.ev-kicker{
  display:inline-block;
  margin-bottom:18px;
  padding:7px 12px;
  border:1px solid var(--ev-border);
  border-radius:999px;
  background:#fff;
  color:var(--ev-green-dark);
  font-size:11px;
  font-weight:700;
  letter-spacing:1.2px;
  text-transform:uppercase;
}
.ev-hero h1{
  margin:0 0 18px;
  color:var(--ev-green-dark);
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(38px,5.2vw,62px);
  line-height:1.08;
  font-weight:400;
}
.ev-hero h1 em{font-style:normal;color:var(--ev-green)}
.ev-hero-lead{
  max-width:650px;
  margin:0 0 26px;
  color:var(--ev-muted);
  font-size:18px;
  line-height:1.75;
}
.ev-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:0 0 18px;
}
.ev-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 21px;
  border-radius:4px;
  text-decoration:none;
  font-size:12px;
  font-weight:700;
  letter-spacing:.45px;
  text-transform:uppercase;
  transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease;
}
.ev-btn:hover{transform:translateY(-1px)}
.ev-btn-primary{background:var(--ev-green);color:#fff!important;box-shadow:0 7px 18px rgba(61,86,78,.14)}
.ev-btn-primary:hover{background:var(--ev-green-dark)}
.ev-btn-secondary{background:#fff;color:var(--ev-green-dark)!important;border:1px solid var(--ev-border)}
.ev-btn-secondary:hover{background:var(--ev-green-pale)}
.ev-micro{
  margin:0;
  color:#687872;
  font-size:12px;
  line-height:1.55;
}

.ev-hero-visual{
  position:relative;
  min-width:0;
}
.ev-hero-image{
  display:block;
  width:100%;
  aspect-ratio:1.25/1;
  object-fit:cover;
  border-radius:12px;
  box-shadow:0 22px 55px rgba(47,59,55,.14);
}
.ev-visual-badge{
  position:absolute;
  left:-22px;
  bottom:22px;
  max-width:260px;
  padding:16px 18px;
  background:#fff;
  border:1px solid var(--ev-border);
  border-radius:8px;
  box-shadow:0 12px 30px rgba(47,59,55,.12);
}
.ev-visual-badge strong{display:block;color:var(--ev-green-dark);font-size:13px;margin-bottom:4px}
.ev-visual-badge span{display:block;color:var(--ev-muted);font-size:11.5px;line-height:1.5}

.ev-paths{
  width:min(1180px,90%);
  margin:0 auto;
  padding:70px 0;
}
.ev-section-heading{text-align:center;max-width:780px;margin:0 auto 34px}
.ev-section-heading .ev-kicker{margin-bottom:12px}
.ev-section-heading h2{
  margin:0 0 10px;
  color:var(--ev-green-dark);
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(30px,4vw,40px);
  font-weight:400;
}
.ev-section-heading p{margin:0;color:var(--ev-muted);font-size:15px;line-height:1.7}
.ev-path-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
.ev-path-card{
  position:relative;
  padding:34px;
  border:1px solid var(--ev-border);
  border-radius:10px;
  background:#fff;
  box-shadow:0 8px 28px rgba(47,59,55,.05);
}
.ev-path-card h3{
  margin:0 0 10px;
  color:var(--ev-green-dark);
  font-family:"Playfair Display",Georgia,serif;
  font-size:28px;
  font-weight:400;
}
.ev-path-card p{margin:0 0 20px;color:var(--ev-muted);font-size:14px;line-height:1.7}
.ev-path-card ul{margin:0 0 24px;padding:0;list-style:none}
.ev-path-card li{position:relative;margin:0 0 9px;padding-left:21px;color:var(--ev-ink);font-size:13px;line-height:1.5}
.ev-path-card li:before{
  content:"✓";position:absolute;left:0;top:0;color:var(--ev-green);font-weight:700
}

.ev-trust{
  background:var(--ev-green-dark);
  color:#fff;
}
.ev-trust-inner{
  width:min(1180px,90%);
  margin:0 auto;
  padding:58px 0;
}
.ev-trust-heading{text-align:center;max-width:720px;margin:0 auto 30px}
.ev-trust-heading h2{
  margin:0 0 10px;
  color:#fff;
  font-family:"Playfair Display",Georgia,serif;
  font-size:34px;font-weight:400;
}
.ev-trust-heading p{margin:0;color:#e4ece9;font-size:14px;line-height:1.7}
.ev-trust-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.ev-trust-card{
  padding:22px 18px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:8px;
  background:rgba(255,255,255,.055);
}
.ev-trust-card h3{margin:0 0 7px;color:#fff;font-size:14px}
.ev-trust-card p{margin:0;color:#dce7e3;font-size:12.5px;line-height:1.6}
.ev-trust-links{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;margin-top:25px}
.ev-trust-links a{color:#fff;text-decoration:underline;text-underline-offset:3px;font-size:12px}

.ev-platform{
  width:min(1180px,90%);
  margin:0 auto;
  padding:76px 0;
}
.ev-platform-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  align-items:center;
  gap:60px;
}
.ev-platform-visual{
  padding:16px;
  border:1px solid var(--ev-border);
  border-radius:12px;
  background:var(--ev-green-pale);
}
.ev-platform-screen{
  padding:24px;
  border:1px solid var(--ev-border);
  border-radius:9px;
  background:#fff;
  box-shadow:0 12px 32px rgba(47,59,55,.08);
}
.ev-screen-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.ev-screen-title{font-size:13px;font-weight:700;color:var(--ev-green-dark)}
.ev-screen-pill{font-size:10px;font-weight:700;color:var(--ev-green);padding:6px 8px;background:var(--ev-green-pale);border-radius:999px}
.ev-screen-row{
  display:grid;
  grid-template-columns:1.2fr .8fr .65fr;
  gap:8px;
  padding:12px 0;
  border-top:1px solid #edf1ef;
  color:var(--ev-muted);
  font-size:11px;
}
.ev-screen-row strong{color:var(--ev-ink)}
.ev-platform-copy h2{
  margin:0 0 14px;
  color:var(--ev-green-dark);
  font-family:"Playfair Display",Georgia,serif;
  font-size:40px;font-weight:400;
}
.ev-platform-copy p{margin:0 0 20px;color:var(--ev-muted);font-size:15px;line-height:1.75}
.ev-platform-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 24px;padding:0;list-style:none}
.ev-platform-points li{
  padding:12px 13px;
  border:1px solid var(--ev-border);
  border-radius:6px;
  color:var(--ev-ink);
  font-size:12.5px;
  background:#fff;
}

.ev-why{
  background:var(--ev-green-pale);
  border-top:1px solid var(--ev-border);
  border-bottom:1px solid var(--ev-border);
}
.ev-why-inner{width:min(1180px,90%);margin:0 auto;padding:70px 0}
.ev-why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.ev-why-card{padding:25px 20px;background:#fff;border:1px solid var(--ev-border);border-radius:8px}
.ev-why-card .ev-icon{
  width:34px;height:34px;display:flex;align-items:center;justify-content:center;
  margin-bottom:15px;border-radius:50%;background:var(--ev-green-pale);color:var(--ev-green);font-weight:700
}
.ev-why-card h3{margin:0 0 7px;color:var(--ev-green-dark);font-size:15px}
.ev-why-card p{margin:0;color:var(--ev-muted);font-size:12.5px;line-height:1.65}

.ev-coverage{width:min(1180px,90%);margin:0 auto;padding:70px 0}
.ev-county-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.ev-county-grid a{
  padding:12px 8px;text-align:center;border:1px solid var(--ev-border);border-radius:5px;
  color:var(--ev-green-dark);background:#fff;text-decoration:none;font-size:12px;font-weight:600
}
.ev-county-grid a:hover{background:var(--ev-green-pale)}
.ev-centre{text-align:center;margin-top:22px}

.ev-final-cta{
  width:min(1120px,90%);
  margin:0 auto 70px;
  padding:52px 28px;
  border-radius:11px;
  background:linear-gradient(135deg,var(--ev-green-dark),var(--ev-green));
  text-align:center;
}
.ev-final-cta h2{
  margin:0 0 10px;color:#fff;
  font-family:"Playfair Display",Georgia,serif;font-size:36px;font-weight:400
}
.ev-final-cta p{max-width:680px;margin:0 auto 22px;color:#e8efec;font-size:14px;line-height:1.7}
.ev-final-cta .ev-btn-primary{background:#fff;color:var(--ev-green-dark)!important;box-shadow:none}
.ev-final-cta .ev-btn-primary:hover{background:#f3f6f5}

.ev-ico-note{
  margin:18px auto 0;
  color:#dce7e3;
  font-size:11.5px;
}

@media(max-width:950px){
  .ev-hero-inner{grid-template-columns:1fr;gap:35px;padding:55px 0;min-height:auto}
  .ev-hero-copy{max-width:760px;margin:0 auto;text-align:center}
  .ev-hero-lead{margin-left:auto;margin-right:auto}
  .ev-actions{justify-content:center}
  .ev-hero-visual{max-width:680px;margin:0 auto}
  .ev-visual-badge{left:12px}
  .ev-trust-grid,.ev-why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ev-platform-grid{grid-template-columns:1fr;gap:35px}
  .ev-platform-copy{text-align:center}
  .ev-platform-points{max-width:680px;margin-left:auto;margin-right:auto;text-align:left}
  .ev-platform-copy .ev-actions{justify-content:center}
  .ev-county-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@media(max-width:650px){
  .ev-hero-inner,.ev-paths,.ev-trust-inner,.ev-platform,.ev-why-inner,.ev-coverage{width:90%}
  .ev-hero-inner{padding:42px 0}
  .ev-hero h1{font-size:34px}
  .ev-hero-lead{font-size:15px}
  .ev-actions{flex-direction:column;align-items:stretch;max-width:330px;margin-left:auto;margin-right:auto}
  .ev-btn{width:100%}
  .ev-visual-badge{position:relative;left:auto;bottom:auto;margin:-12px 12px 0;max-width:none}
  .ev-paths,.ev-platform,.ev-why-inner,.ev-coverage{padding:52px 0}
  .ev-path-grid{grid-template-columns:1fr}
  .ev-trust-grid,.ev-why-grid{grid-template-columns:1fr 1fr}
  .ev-platform-copy h2{font-size:31px}
  .ev-platform-points{grid-template-columns:1fr}
  .ev-county-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ev-final-cta{width:90%;margin-bottom:50px;padding:40px 20px}
  .ev-final-cta h2{font-size:30px}
}

@media(max-width:380px){
  .ev-trust-grid,.ev-why-grid,.ev-county-grid{grid-template-columns:1fr}
  .ev-hero h1{font-size:30px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

/* County-page conversion additions */
.location-trust{
  margin-top:45px;
  padding:32px 0 0;
  border-top:1px solid var(--ev-border);
}
.location-trust-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:18px;
}
.location-trust-card{
  padding:18px 14px;
  background:var(--ev-green-pale);
  border:1px solid var(--ev-border);
  border-radius:6px;
}
.location-trust-card strong{display:block;color:var(--ev-green-dark);font-size:13px;margin-bottom:5px}
.location-trust-card span{display:block;color:var(--ev-muted);font-size:11.5px;line-height:1.5}
.location-nearby-title{margin-top:42px!important}
@media(max-width:700px){.location-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){.location-trust-grid{grid-template-columns:1fr}}


/* App download links and charity support */
.ev-app-downloads{
  margin-top:24px;
}
.ev-app-download-title{
  margin:0 0 10px;
  color:var(--ev-green-dark);
  font-size:12px;
  font-weight:700;
  letter-spacing:.4px;
  text-transform:uppercase;
}
.ev-app-download-grid{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:9px;
}
.ev-app-download-grid a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:5px 9px;
  background:#fff;
  border:1px solid var(--ev-border);
  border-radius:6px;
  box-shadow:0 4px 12px rgba(47,59,55,.05);
  transition:transform .18s ease,box-shadow .18s ease;
}
.ev-app-download-grid a:hover{
  transform:translateY(-1px);
  box-shadow:0 7px 16px rgba(47,59,55,.09);
}
.ev-app-download-grid img{
  display:block;
  width:auto;
  height:31px;
  max-width:112px;
  object-fit:contain;
}
.ev-charity-support{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:20px;
}
.ev-charity-support > span{
  color:var(--ev-muted);
  font-size:11.5px;
  font-weight:700;
  letter-spacing:.35px;
  text-transform:uppercase;
}
.ev-charity-support a{
  display:flex;
  align-items:center;
  padding:5px 8px;
  background:#fff;
  border:1px solid var(--ev-border);
  border-radius:6px;
}
.ev-charity-support img{
  display:block;
  width:auto;
  height:42px;
  max-width:170px;
  object-fit:contain;
}
@media(max-width:650px){
  .ev-app-download-grid{
    justify-content:center;
  }
  .ev-app-download-title{
    text-align:center;
  }
  .ev-charity-support{
    justify-content:center;
    flex-wrap:wrap;
  }
}


/* ==========================================================
   GLOBAL HEADER — final, site-wide correction
   This deliberately lives in website-final.css so ALL pages,
   including non-county pages, receive exactly the same header.
   ========================================================== */
.site-header{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) !important;
  align-items:center !important;
  width:100% !important;
  max-width:100% !important;
  height:92px !important;
  min-height:92px !important;
  margin:0 !important;
  padding:10px 4% !important;
  gap:12px !important;
  position:relative !important;
  z-index:100000 !important;
  box-sizing:border-box !important;
  background:#fff !important;
  border-bottom:1px solid #e6ece9 !important;
  overflow:visible !important;
}
.site-header .header-left,
.site-header .header-middle,
.site-header .header-right{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
  width:auto !important;
  float:none !important;
  position:relative !important;
}
.site-header .header-left{justify-content:flex-start !important}
.site-header .header-middle{justify-content:center !important}
.site-header .header-right{justify-content:flex-end !important}

.site-header .logo-link{
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 !important;
}
.site-header .logo-img{
  display:block !important;
  width:auto !important;
  height:64px !important;
  max-height:64px !important;
  max-width:42vw !important;
  margin:0 !important;
  object-fit:contain !important;
}

/* The header CTA must ALWAYS be a green button, not a browser-default link. */
.site-header a.btn-register-top,
.site-header .btn-register-top{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  width:auto !important;
  max-width:none !important;
  min-width:170px !important;
  min-height:44px !important;
  margin:0 !important;
  padding:12px 18px !important;
  background:#5a786e !important;
  color:#fff !important;
  border:1px solid #5a786e !important;
  border-radius:4px !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  overflow:visible !important;
  font-family:inherit !important;
  font-size:11.5px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  letter-spacing:.35px !important;
  box-shadow:none !important;
  opacity:1 !important;
  visibility:visible !important;
}
.site-header a.btn-register-top:hover,
.site-header .btn-register-top:hover{
  background:#3d564e !important;
  color:#fff !important;
  border-color:#3d564e !important;
  text-decoration:none !important;
}
.site-header a.btn-register-top:visited{
  color:#fff !important;
}

.site-header label.hamburger-btn,
.site-header .hamburger-btn{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:46px !important;
  min-width:46px !important;
  height:46px !important;
  min-height:46px !important;
  padding:0 !important;
  margin:0 !important;
  box-sizing:border-box !important;
  cursor:pointer !important;
  background:#fff !important;
  color:transparent !important;
  font-size:0 !important;
  line-height:1 !important;
  border:1px solid #d5dfdc !important;
  border-radius:4px !important;
  opacity:1 !important;
  visibility:visible !important;
}
.site-header .hamburger-btn::before{
  content:"" !important;
  position:absolute !important;
  left:11px !important;
  right:11px !important;
  top:13px !important;
  height:2px !important;
  background:#5a786e !important;
  box-shadow:0 7px 0 #5a786e,0 14px 0 #5a786e !important;
}
.site-header .hamburger-btn::after{display:none !important}

.mobile-nav-drawer{
  position:fixed !important;
  top:92px !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  height:calc(100vh - 92px) !important;
  max-height:calc(100dvh - 92px) !important;
  box-sizing:border-box !important;
  padding:20px 5% 30px !important;
  overflow-y:auto !important;
  background:#fff !important;
  background-color:#fff !important;
  border-bottom:2px solid #5a786e !important;
  box-shadow:0 14px 34px rgba(47,59,55,.16) !important;
  isolation:isolate !important;
  z-index:99999 !important;
}
.mobile-menu-toggle:not(:checked) ~ .mobile-nav-drawer{display:none !important}
.mobile-menu-toggle:checked ~ .mobile-nav-drawer{display:block !important}
.mobile-nav-drawer ul{position:relative !important;z-index:2 !important}
.mobile-nav-drawer a{position:relative !important;z-index:2 !important;color:#2f3b37 !important;text-decoration:none !important}

@media(max-width:650px){
  .site-header{
    height:70px !important;
    min-height:70px !important;
    padding:8px 4% !important;
    gap:8px !important;
  }
  .site-header .logo-img{
    height:50px !important;
    max-height:50px !important;
    max-width:38vw !important;
  }
  .site-header a.btn-register-top,
  .site-header .btn-register-top{
    min-width:0 !important;
    min-height:42px !important;
    padding:9px 10px !important;
    font-size:9.5px !important;
  }
  .site-header .hamburger-btn{
    width:44px !important;
    min-width:44px !important;
    height:44px !important;
    min-height:44px !important;
  }
  .mobile-nav-drawer{
    top:70px !important;
    height:calc(100vh - 70px) !important;
    max-height:calc(100dvh - 70px) !important;
  }
}
@media(max-width:380px){
  .site-header{padding-left:3% !important;padding-right:3% !important;gap:6px !important}
  .site-header .logo-img{height:48px !important;max-height:48px !important;max-width:35vw !important}
  .site-header a.btn-register-top,.site-header .btn-register-top{
    min-height:40px !important;padding:8px 8px !important;font-size:8.8px !important
  }
  .site-header .hamburger-btn{width:42px !important;min-width:42px !important;height:42px !important;min-height:42px !important}
  .mobile-nav-drawer{top:68px !important;height:calc(100vh - 68px) !important;max-height:calc(100dvh - 68px) !important}
}

/* ==========================================================
   EVERGREEN PAGE BACKGROUND — VISIBLE LAYER
   The previous version placed the image behind the body canvas,
   which can disappear underneath solid page backgrounds.
   This version puts the image above the page canvas but below
   all readable content.
   ========================================================== */
html, body {
  min-height: 100%;
}
body.evergreen-page-background {
  position: relative !important;
  background: #fff !important;
}
body.evergreen-page-background::before {
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background-image: var(--evergreen-page-bg) !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  opacity: .12 !important;
  filter: saturate(.72) !important;
}
body.evergreen-page-background > * {
  position: relative !important;
  z-index: 1 !important;
}

/* Let the photographic layer breathe through the main page canvas,
   while retaining solid white cards/CTA blocks where they are useful. */
body.evergreen-page-background main,
body.evergreen-page-background main > section:not(.ev-trust):not(.ev-final-cta),
body.evergreen-page-background .location-content {
  background-color: rgba(255,255,255,.82) !important;
}

/* Preserve intentionally solid brand sections. */
body.evergreen-page-background header,
body.evergreen-page-background footer,
body.evergreen-page-background .ev-trust,
body.evergreen-page-background .ev-final-cta,
body.evergreen-page-background .location-hero,
body.evergreen-page-background .location-cta {
  position: relative !important;
}

/* Homepage hero image is already a deliberate image and should remain crisp. */
body.evergreen-page-background .ev-hero-visual,
body.evergreen-page-background .ev-platform-visual {
  background: transparent !important;
}

/* County content blocks should be translucent rather than opaque. */
body.evergreen-page-background .location-section {
  background: transparent !important;
}

/* Mobile: slightly stronger visibility because the smaller viewport
   naturally crops more of the background image. */
@media (max-width: 650px) {
  body.evergreen-page-background::before {
    opacity: .14 !important;
  }
}


/* ==========================================================
   BACKGROUND VISIBILITY — final correction
   Page-level white canvases were masking the fixed image.
   Keep readable cards white, but allow the photographic layer
   to show through the main page areas.
   ========================================================== */

/* Legacy/content pages */
body.evergreen-page-background main{
  background:transparent !important;
}
body.evergreen-page-background main > .hero{
  background:rgba(255,255,255,.76) !important;
}
body.evergreen-page-background main > .content{
  background:rgba(255,255,255,.66) !important;
}
body.evergreen-page-background main > .content .card{
  background:rgba(255,255,255,.91) !important;
}

/* Location/county pages */
body.evergreen-page-background .location-page,
body.evergreen-page-background .location-content{
  background:transparent !important;
}
body.evergreen-page-background .location-hero{
  background:rgba(243,246,245,.80) !important;
}
body.evergreen-page-background .location-content > section{
  background:rgba(255,255,255,.60) !important;
}
body.evergreen-page-background .location-areas li,
body.evergreen-page-background .location-note,
body.evergreen-page-background .location-trust-card{
  background:rgba(243,246,245,.90) !important;
}
body.evergreen-page-background .location-cta{
  background:#3d564e !important;
}

/* New homepage */
body.evergreen-page-background .ev-home{
  background:transparent !important;
}
body.evergreen-page-background .ev-hero{
  background:linear-gradient(120deg,rgba(243,246,245,.76) 0%,rgba(251,252,251,.70) 55%,rgba(255,255,255,.68) 100%) !important;
}
body.evergreen-page-background .ev-paths,
body.evergreen-page-background .ev-platform,
body.evergreen-page-background .ev-coverage{
  background:rgba(255,255,255,.45) !important;
}
body.evergreen-page-background .ev-why{
  background:rgba(243,246,245,.72) !important;
}
body.evergreen-page-background .ev-path-card,
body.evergreen-page-background .ev-platform-screen,
body.evergreen-page-background .ev-platform-points li,
body.evergreen-page-background .ev-why-card,
body.evergreen-page-background .ev-county-grid a,
body.evergreen-page-background .ev-app-download-grid a,
body.evergreen-page-background .ev-charity-support a{
  background:rgba(255,255,255,.92) !important;
}

/* Make the actual background photographic layer clearly visible,
   while still subtle and professional. */
body.evergreen-page-background::before{
  opacity:.16 !important;
  filter:saturate(.78) contrast(.96) !important;
}
@media(max-width:650px){
  body.evergreen-page-background::before{opacity:.18 !important;}
}

/* ==========================================================
   PANEL TRANSPARENCY — remove the "solid white placeholder"
   look so the subtle Evergreen photography is genuinely visible.
   ========================================================== */

/* Generic legacy/content pages */
body.evergreen-page-background main{
  background:transparent !important;
}
body.evergreen-page-background main .hero{
  background:rgba(255,255,255,.42) !important;
}
body.evergreen-page-background main .content{
  background:rgba(255,255,255,.30) !important;
}
body.evergreen-page-background main .grid{
  background:transparent !important;
}
body.evergreen-page-background main .card{
  background:rgba(255,255,255,.72) !important;
  backdrop-filter:blur(1.5px);
  -webkit-backdrop-filter:blur(1.5px);
}

/* Other common large content panels */
body.evergreen-page-background main section{
  background-color:rgba(255,255,255,.32) !important;
}
body.evergreen-page-background main section.hero{
  background:rgba(255,255,255,.42) !important;
}
body.evergreen-page-background main .card,
body.evergreen-page-background main .feature-card,
body.evergreen-page-background main .service-card,
body.evergreen-page-background main .info-card{
  background-color:rgba(255,255,255,.72) !important;
}

/* Keep deliberate dark/brand sections solid. */
body.evergreen-page-background main .location-cta,
body.evergreen-page-background main .ev-trust,
body.evergreen-page-background main .ev-final-cta,
body.evergreen-page-background main .timeline-section,
body.evergreen-page-background main .together-callout{
  background-color:#3d564e !important;
}
body.evergreen-page-background main .ev-why{
  background-color:rgba(243,246,245,.64) !important;
}

/* Legal/content pages: readable but not opaque. */
body.evergreen-page-background .terms-container,
body.evergreen-page-background .privacy-container{
  background:rgba(255,255,255,.22) !important;
}
body.evergreen-page-background .terms-content,
body.evergreen-page-background .privacy-content{
  background:transparent !important;
}

/* Make the actual photo a little more apparent. */
body.evergreen-page-background::before{
  opacity:.22 !important;
  filter:saturate(.85) contrast(.98) !important;
}
@media(max-width:650px){
  body.evergreen-page-background::before{opacity:.25 !important;}
}

/* ==========================================================
   FINAL VISUAL TREATMENT
   1) Use the page photograph as the BODY background itself,
      rather than a pseudo-element behind the body canvas.
   2) Remove the opaque white panels which were hiding it.
   3) Increase the Evergreen header logo by 100% from the
      previous final sizing.
   ========================================================== */

/* Reliable page-level photographic background */
html, body {
  min-height:100%;
}
body.evergreen-page-background {
  background-color:#fff !important;
  background-image:
    linear-gradient(rgba(255,255,255,.74),rgba(255,255,255,.74)),
    var(--evergreen-page-bg) !important;
  background-position:center,center !important;
  background-size:cover,cover !important;
  background-repeat:no-repeat,no-repeat !important;
  background-attachment:fixed,fixed !important;
}

/* Remove the old pseudo-layer so it cannot interfere with the body image. */
body.evergreen-page-background::before,
body.evergreen-page-background::after {
  content:none !important;
  display:none !important;
}

/* Main site canvases must not be solid white. */
body.evergreen-page-background main,
body.evergreen-page-background .ev-home,
body.evergreen-page-background .location-page,
body.evergreen-page-background .location-content {
  background:transparent !important;
}

/* Hero/content panels: soft translucent glass rather than white blocks. */
body.evergreen-page-background main > .hero {
  background:rgba(255,255,255,.48) !important;
}
body.evergreen-page-background main > .content,
body.evergreen-page-background main section {
  background-color:rgba(255,255,255,.38) !important;
}
body.evergreen-page-background main .card,
body.evergreen-page-background main .feature-card,
body.evergreen-page-background main .service-card,
body.evergreen-page-background main .info-card {
  background:rgba(255,255,255,.76) !important;
}

/* Homepage */
body.evergreen-page-background .ev-hero {
  background:rgba(243,246,245,.45) !important;
}
body.evergreen-page-background .ev-paths,
body.evergreen-page-background .ev-platform,
body.evergreen-page-background .ev-coverage {
  background:rgba(255,255,255,.34) !important;
}
body.evergreen-page-background .ev-why {
  background:rgba(243,246,245,.48) !important;
}
body.evergreen-page-background .ev-path-card,
body.evergreen-page-background .ev-platform-screen,
body.evergreen-page-background .ev-platform-points li,
body.evergreen-page-background .ev-why-card,
body.evergreen-page-background .ev-county-grid a,
body.evergreen-page-background .ev-app-download-grid a,
body.evergreen-page-background .ev-charity-support a {
  background:rgba(255,255,255,.84) !important;
}

/* County pages */
body.evergreen-page-background .location-hero {
  background:rgba(243,246,245,.52) !important;
}
body.evergreen-page-background .location-content > section {
  background:rgba(255,255,255,.34) !important;
}
body.evergreen-page-background .location-areas li,
body.evergreen-page-background .location-note,
body.evergreen-page-background .location-trust-card {
  background:rgba(243,246,245,.78) !important;
}

/* Deliberate brand sections stay solid. */
body.evergreen-page-background footer,
body.evergreen-page-background .ev-trust,
body.evergreen-page-background .ev-final-cta,
body.evergreen-page-background .location-cta {
  background:#3d564e !important;
}

/* Header logo: 100% larger than the previous final 70px desktop /
   50px mobile sizing. Header grows with it so it never collides. */
.site-header {
  height:160px !important;
  min-height:160px !important;
}
.site-header .logo-img {
  height:140px !important;
  max-height:140px !important;
  width:auto !important;
}
@media(max-width:650px) {
  .site-header {
    height:120px !important;
    min-height:120px !important;
    padding:8px 4% !important;
  }
  .site-header .logo-img {
    height:100px !important;
    max-height:100px !important;
    max-width:48vw !important;
  }
  .mobile-nav-drawer {
    top:120px !important;
    height:calc(100vh - 120px) !important;
    max-height:calc(100dvh - 120px) !important;
  }
}
@media(max-width:380px) {
  .site-header {
    height:108px !important;
    min-height:108px !important;
  }
  .site-header .logo-img {
    height:92px !important;
    max-height:92px !important;
    max-width:46vw !important;
  }
  .mobile-nav-drawer {
    top:108px !important;
    height:calc(100vh - 108px) !important;
    max-height:calc(100dvh - 108px) !important;
  }
}

/* FINAL MOBILE LOGO SIZE
   Desktop stays at 140px.
   Mobile is reduced by 50% from 100px to 50px so it cannot
   collide with the Register/Login button. */
@media (max-width:650px) {
  .site-header {
    height:76px !important;
    min-height:76px !important;
    padding:8px 4% !important;
  }
  .site-header .logo-img {
    height:50px !important;
    max-height:50px !important;
    max-width:38vw !important;
  }
  .header-middle {
    margin:0 4px !important;
  }
  .btn-register-top {
    max-width:34vw !important;
    padding:7px 9px !important;
    font-size:9.5px !important;
  }
  .hamburger-btn {
    width:42px !important;
    min-width:42px !important;
    height:42px !important;
    font-size:22px !important;
  }
  .mobile-nav-drawer {
    top:76px !important;
    height:calc(100vh - 76px) !important;
    max-height:calc(100dvh - 76px) !important;
  }
}
@media (max-width:380px) {
  .site-header {
    height:70px !important;
    min-height:70px !important;
    padding-left:3% !important;
    padding-right:3% !important;
  }
  .site-header .logo-img {
    height:46px !important;
    max-height:46px !important;
    max-width:35vw !important;
  }
  .mobile-nav-drawer {
    top:70px !important;
    height:calc(100vh - 70px) !important;
    max-height:calc(100dvh - 70px) !important;
  }
}

.ev-local-detail{
  padding:55px 5%;
  background:rgba(243,246,245,.42) !important;
}
.ev-local-detail .ev-content-inner{
  max-width:980px;
  margin:0 auto;
}
.ev-local-detail h2{
  margin:8px 0 14px;
  color:#5a786e;
}
.ev-local-detail p{
  max-width:900px;
  margin:0 0 12px;
}
