/* Shared top-bar treatment, matched to the End-of-Tenancy page. */
body > nav {
  background: rgba(255, 255, 255, 0.96) !important;
  border-bottom-color: #e7eee8 !important;
  box-shadow: 0 1px 0 rgba(15, 36, 23, 0.02);
}

body > nav > div:first-child {
  min-height: 76px;
}

body > nav a,
body > nav button {
  font-family: 'Open Sans', Arial, sans-serif;
}

body > nav .text-2xl {
  color: #173d26 !important;
  font-size: 21px !important;
  font-weight: 800 !important;
}

body > nav > div:first-child > a img {
  width: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
}

body > nav .text-sm {
  font-size: 14px !important;
  font-weight: 700 !important;
}

body > nav #services-btn {
  min-height: 44px;
  padding: 0;
}

body > nav a[href="/book"] {
  min-height: 44px;
  border-radius: 12px !important;
  padding: 10px 15px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* The homepage uses its own hero navigation wrapper. Match it to the same bar. */
body .gr-h1-nav {
  height: 76px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border-bottom: 1px solid #e7eee8 !important;
  box-shadow: 0 1px 0 rgba(15, 36, 23, 0.02) !important;
}

body .gr-h1-brand {
  gap: 10px !important;
  color: #173d26 !important;
  font-size: 21px !important;
  font-weight: 800 !important;
}

body .gr-h1-brand img {
  width: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
}

body .gr-h1-links {
  gap: 22px !important;
  color: #526475 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

body .gr-h1-cta {
  border-radius: 12px !important;
  padding: 10px 15px !important;
  background: #2d5a34 !important;
  font-size: 14px !important;
}

/* Heavier, more confident typography on the End-of-Tenancy page. */
body.eot-page {
  font-family: 'Open Sans', system-ui, -apple-system, sans-serif !important;
  font-weight: 400 !important;
}

body.eot-page .eot-hero h1,
body.eot-page .eot-section-head h2,
body.eot-page .eot-quote-copy h2,
body.eot-page .eot-plan h3,
body.eot-page .eot-benefit h3 {
  font-weight: 800;
}

body.eot-page .eot-lead,
body.eot-page .eot-section-head p,
body.eot-page .eot-quote-copy p,
body.eot-page .eot-plan > p,
body.eot-page .eot-benefit p,
body.eot-page .eot-faq p {
  font-weight: 500;
}

@media (max-width: 767px) {
  body > nav > div:first-child {
    min-height: 68px;
  }

  body .gr-h1-nav {
    height: 68px !important;
  }
}

/* Match the established End-of-Tenancy header treatment on the shared site nav. */
body > nav {
  background: rgba(255,255,255,.96) !important;
  border-bottom: 1px solid #e7eee8 !important;
  box-shadow: 0 1px 0 rgba(15,36,23,.02) !important;
}

body > nav > div:first-child {
  width: min(1120px, calc(100% - 40px));
  min-height: 76px !important;
  height: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body > nav > div:first-child > a {
  gap: 10px !important;
  color: #173d26 !important;
  font-size: 21px !important;
  font-weight: 800 !important;
}

body > nav > div:first-child > a img {
  width: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
}

body > nav > div:first-child > div[class~="md:flex"] {
  gap: 22px !important;
}

body > nav > div:first-child > div[class~="md:flex"] > * {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body > nav #services-btn,
body > nav > div:first-child > div[class~="md:flex"] > a {
  min-height: 44px;
  color: #526475 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

body > nav #services-btn:hover,
body > nav > div:first-child > div[class~="md:flex"] > a:hover {
  color: #2d5a34 !important;
}

body > nav #services-menu {
  width: 260px !important;
  padding-top: 8px !important;
  transform: translateY(-4px);
}

body > nav #services-menu > div {
  padding: 8px 0 !important;
  border: 1px solid #e7eee8 !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 18px 45px rgba(15,36,23,.14) !important;
}

body > nav #services-menu a {
  padding: 10px 16px !important;
  color: #526475 !important;
  font-size: 14px !important;
}

body > nav #services-menu a:hover {
  background: #f2f9ed !important;
  color: #173d26 !important;
}

body > nav > div:first-child > div[class~="md:flex"] > div:last-child a[href="/book"] {
  min-height: 44px;
  border-radius: 12px !important;
  padding: 10px 15px !important;
  background: #2d5a34 !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

body > nav > div:first-child > div[class~="md:flex"] > div:last-child a[href="/book"]:hover,
body > nav > div:first-child > div[class~="md:flex"] > div:last-child a[href="/book"]:focus-visible {
  background: #214628 !important;
  color: #fff !important;
}

body > nav #mobile-menu-btn {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #dbe7dc;
  border-radius: 11px;
  background: #fff;
  color: #173d26;
}

body > nav #mobile-menu {
  padding: 4px 20px 18px !important;
  border-top: 1px solid #edf2ed !important;
  background: #fff !important;
}

body > nav #mobile-menu a {
  min-height: 44px;
  padding: 12px 4px !important;
  color: #526475 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

body > nav #mobile-menu a[href="/book"] {
  margin-top: 8px;
  padding: 12px 16px !important;
  border-radius: 11px !important;
  background: #2d5a34 !important;
  color: #fff !important;
}

/* Shared EOT header markup used across the main GreenRun pages. */
:root {
  --eot-deep: #173d26;
  --eot-green: #2d5a34;
  --eot-line: #dbe7dc;
}

.eot-wrap { width: min(1120px, calc(100% - 40px)); margin-inline: auto; }
.eot-nav { position: relative; z-index: 100; border-bottom: 1px solid #e7eee8; background: rgba(255,255,255,.96); box-shadow: 0 1px 0 rgba(15,36,23,.02); }
.eot-nav-row { display:flex; min-height:76px; align-items:center; justify-content:space-between; gap:20px; }
.eot-brand { display:flex; align-items:center; gap:10px; color:var(--eot-deep); font-size:21px; font-weight:800; text-decoration:none; }
.eot-brand img { width:38px; height:38px; border:1px solid #edf2ed; border-radius:12px; }
.eot-desktop-nav { display:flex; align-items:center; gap:22px; }
.eot-desktop-nav>a, .eot-services-button { border:0; background:none; color:#526475; font:inherit; font-size:14px; font-weight:700; text-decoration:none; cursor:pointer; }
.eot-desktop-nav>a:hover, .eot-services-button:hover { color:var(--eot-green); }
.eot-services { position:relative; }
.eot-services-button { display:inline-flex; min-height:44px; align-items:center; gap:6px; padding:0; }
.eot-services-button svg { width:16px; height:16px; transition:transform .2s ease; }
.eot-services-button[aria-expanded="true"] svg { transform:rotate(180deg); }
.eot-services-menu { position:absolute; top:100%; left:0; width:260px; padding-top:8px; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-4px); transition:opacity .18s ease,transform .18s ease,visibility .18s ease; }
.eot-services-menu[data-open="true"] { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0); }
.eot-services-button[aria-expanded="true"] + .eot-services-menu { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0); }
.eot-services-menu-inner { padding:8px 0; border:1px solid #e7eee8; border-radius:14px; background:#fff; box-shadow:0 18px 45px rgba(15,36,23,.14); }
.eot-services-menu a { display:block; padding:10px 16px; color:#526475; font-size:14px; text-decoration:none; }
.eot-services-menu a:hover { background:#f2f9ed; color:var(--eot-deep); }
.eot-nav-cta { display:inline-flex; min-height:44px; align-items:center; justify-content:center; border:0; border-radius:12px; padding:10px 15px; background:var(--eot-green); color:#fff; font:inherit; font-size:13px; font-weight:800; text-decoration:none; cursor:pointer; }
.eot-christmas-link { display:inline-flex; min-height:44px; align-items:center; justify-content:center; padding:10px 15px; border:1px solid var(--eot-green); border-radius:12px; background:#fff; color:var(--eot-green) !important; font:inherit; font-size:13px; font-weight:800 !important; text-decoration:none; white-space:nowrap; }
.eot-christmas-link:hover, .eot-christmas-link:focus-visible { color:#214628 !important; }
.eot-christmas-link:hover, .eot-christmas-link:focus-visible { background:#f2f9ed; }
.eot-nav-cta:hover, .eot-nav-cta:focus-visible { background:#214628; color:#fff !important; }
.eot-mobile-button { display:none; width:44px; height:44px; align-items:center; justify-content:center; border:1px solid #dbe7dc; border-radius:11px; background:#fff; color:var(--eot-deep); }
.eot-mobile-button svg { width:24px; height:24px; }
.eot-mobile-menu { display:none; padding:4px 20px 18px; border-top:1px solid #edf2ed; background:#fff; }
.eot-mobile-menu a { display:block; min-height:44px; padding:12px 4px; color:#526475; font-size:14px; font-weight:700; text-decoration:none; }
.eot-mobile-menu a:hover { color:var(--eot-deep); }
.eot-mobile-menu .eot-mobile-cta { margin-top:8px; padding:12px 16px; border-radius:11px; background:var(--eot-green); color:#fff; text-align:center; }
.eot-mobile-menu .eot-christmas-link { margin-top:8px; width:100%; background:#fff; }

@media (max-width:768px) {
  .eot-desktop-nav { display:none; }
  .eot-mobile-button { display:inline-flex; }
  .eot-mobile-menu:not([hidden]) { display:block; }
  .eot-mobile-menu[style*="display: block"] { display:block !important; }
}

@media (max-width:520px) {
  .eot-wrap { width:min(100% - 32px,1120px); }
  .eot-nav-row { min-height:68px; }
  .eot-brand { font-size:19px; }
}

@media (max-width: 767px) {
  body > nav > div:first-child {
    width: calc(100% - 32px);
    min-height: 68px !important;
  }
}

/* Keep shared service navigation usable at the desktop/mobile boundary. */
@media(min-width:769px) and (max-width:900px){.eot-desktop-nav{gap:16px}}
