   THEME OVERRIDES v5 (Green background + Gold accents)
   Single consistent design system across every page.
   ========================================================== */
:root{
  /* Core palette */
  --ate-green:#0f2f1f;
  --ate-green-2:#143a27;
  --ate-green-3:#071a16;
  --ate-gold:#d6c28b;
  --ate-gold-2:#bfa765;
  --ate-cream:#f7f5ef;

  /* System tokens */
  --bg: var(--ate-green-3);
  --bg-2: #0b241f;
  --text: rgba(247,245,239,.94);
  --muted: rgba(247,245,239,.72);
  --muted2: rgba(247,245,239,.58);

  --paper: rgba(255,255,255,.06);
  --paper-2: rgba(255,255,255,.045);
  --ate-border: rgba(214,194,139,.18);
  --ate-border-2: rgba(255,255,255,.08);

  --shadow: 0 18px 46px rgba(0,0,0,.38);
  --shadow-2: 0 10px 26px rgba(0,0,0,.32);
  --radius: 18px;
  --radius-sm: 14px;
  --tap: 52px;
  --ease: cubic-bezier(.2,.8,.2,1);
}

html, body{ background: var(--bg) !important; }
body{
  color: var(--text) !important;
  background:
    radial-gradient(1200px 800px at 20% -10%, rgba(214,194,139,.14), rgba(0,0,0,0) 55%),
    radial-gradient(1000px 700px at 110% 10%, rgba(255,255,255,.06), rgba(0,0,0,0) 60%),
    linear-gradient(180deg, var(--bg) 0%, var(--bg-2) 100%) !important;
}

/* Typography + hierarchy */
h1,h2,h3{ color: var(--ate-cream) !important; }
p,li,span,div{ color: inherit; }

/* Links */
a{ color: var(--ate-gold) !important; }
a:hover{ color: var(--ate-gold-2) !important; }

/* Surfaces */
.card, .panel, .ate-card, .tile, .pricing-card, .quote-card, .faq-item, .review-card{
  background: var(--paper) !important;
  border: 1px solid var(--ate-border) !important;
  box-shadow: var(--shadow) !important;
  border-radius: var(--radius) !important;
}

/* Headers / nav */
header, .header, .topbar{
  background: rgba(7,26,22,.72) !important;
  border-bottom: 1px solid rgba(214,194,139,.16) !important;
  backdrop-filter: blur(12px);
}

.bottom-nav{
  background: rgba(7,26,22,.88) !important;
  border-top: 1px solid rgba(214,194,139,.16) !important;
}
.bottom-nav a{ color: rgba(247,245,239,.72) !important; }
.bottom-nav a.active{ color: var(--ate-gold) !important; }

/* Inputs */
input, select, textarea{
  color: var(--ate-cream) !important;
}
.field input, .field select, .field textarea,
input[type="text"], input[type="tel"], input[type="number"], input[type="email"], input[type="date"], input[type="time"], textarea, select{
  min-height: var(--tap);
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(214,194,139,.22) !important;
  border-radius: var(--radius-sm) !important;
  box-shadow: none !important;
}
input::placeholder, textarea::placeholder{ color: rgba(247,245,239,.52) !important; }
input:focus, select:focus, textarea:focus{
  outline: none !important;
  border-color: rgba(214,194,139,.55) !important;
  box-shadow: 0 0 0 4px rgba(214,194,139,.14) !important;
}

/* Buttons */
.btn.primary, button.primary, .primary.btn{
  background: linear-gradient(180deg, var(--ate-gold), var(--ate-gold-2)) !important;
  color: var(--ate-green-3) !important;
  border: 1px solid rgba(0,0,0,.14) !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.34) !important;
}
.btn.primary:hover{ filter: brightness(1.03) !important; }

.btn.ghost, .btn.secondary, button.ghost, .ghost.btn{
  background: rgba(255,255,255,.06) !important;
  color: var(--ate-gold) !important;
  border: 1px solid rgba(214,194,139,.22) !important;
}

/* Chips / badges */
.badge, .pill, .chip{
  background: rgba(214,194,139,.12) !important;
  border: 1px solid rgba(214,194,139,.22) !important;
  color: var(--ate-cream) !important;
}

/* Quiet dividers */
hr, .divider{ border-color: rgba(214,194,139,.14) !important; }

/* Reduce 'mashed together' feel: unify section spacing */
section{ padding-top: 26px !important; padding-bottom: 26px !important; }

/* Ensure any legacy light backgrounds are neutralised */
.bg-light, .light, .paper, .surface-light{
  background: transparent !important;
}

/* V14 Hero Badge Upgrade */
.hero img, .hero-logo, .logo-hero {
    max-width:130px !important;
    width:130px !important;
    margin-top:10px !important;
    margin-bottom:8px !important;
}

.hero {
    padding-top:10px !important;
    padding-bottom:10px !important;
}


/* V15 Hero Badge Full-Bleed */
.hero img, .hero-logo, .logo-hero {
  width: 170px !important;
  max-width: 170px !important;
  height: auto !important;
  margin-top: 4px !important;
  margin-bottom: 2px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.hero {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}

/* If a wrapper is adding a circular plate/ring, neutralise it */
.hero .logo-wrap, .hero .logo-circle, .hero .badge, .hero .badge-ring {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}



/* V15 Full-bleed Hero Badge */
.hero img, .hero-logo, .logo-hero {
  width: 170px !important;
  max-width: 170px !important;
  height: auto !important;
  margin-top: 6px !important;
  margin-bottom: 2px !important;
  background: transparent !important;
  border: none !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.38) !important;
}
.hero {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}



/* Home-only header banner */
body[data-page="home"] .home-top-banner{
  width:100%;
  background:#0f2f1f;
  overflow:hidden;
  border-bottom: 1px solid rgba(255,255,255,.06);
}
body[data-page="home"] .home-top-banner img{
  display:block;
  width:100%;
  height:auto;
}
@media (max-width: 520px){
  body[data-page="home"] .home-top-banner img{
    /* keep banner from taking over the screen on small phones */
    max-height: 150px;
    object-fit: cover;
  }
}

/* =============================
   Uniform page titles (site-wide)
   ============================= */
main h1,
.page h1,
.page-head h1,
.hero h1,
.hero-card h1,
.card h1,
.asap-h1,
.h1,
.section-title,
.step__title{
  font-size: clamp(32px, 6.2vw, 46px) !important;
  line-height: 1.06 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 10px !important;
}
main h2,
.page h2,
.card h2{
  margin: 0 0 10px !important;
  letter-spacing: -0.01em;
}
.page-head p,
.hero p,
.hero-card p,
.page > p,
main h1 + p,
main h1 + .sub,
.page h1 + p,
.card h1 + p{
  margin-top: 0 !important;
  margin-bottom: 14px !important;
  opacity: .92;
}
.kicker,
.page-kicker,
.hero-kicker,
.tagline,
.eyebrow{
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  opacity: .78;
}

a.back,
.back a,
.backlink,
.backlink a{
  color: rgba(255,255,255,.78) !important;
  text-decoration: none;
}
a.back:hover,
.back a:hover,
.backlink:hover,
.backlink a:hover{
  text-decoration: underline;
}

/* PATCH: booking page label contrast */
body[data-page="booking3"] .q__label,
body[data-page="booking3"] .q__help{
  color:#27483b !important;
  opacity:1 !important;
  -webkit-text-fill-color:#27483b !important;
}


/* PATCH: booking form readability + kill ASAP */
#btnASAPFill,
#btnAsap,
.asap,
.asap-btn,
.asap-cta,
[data-asap],
[data-action="asap"],
button[aria-label="ASAP"],
button[title="ASAP"]{
  display:none !important;
}

body[data-page="booking3"] .q__label,
body[data-page="booking3"] .q label,
body[data-page="booking3"] .q-title,
body[data-page="booking3"] .question-label,
body[data-page="booking3"] .form-label,
body[data-page="booking3"] .field-label,
body[data-page="booking3"] [class*="label"],
body[data-page="booking3"] [class*="question"]{
  color:#27483b !important;
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:none !important;
  -webkit-text-fill-color:#27483b !important;
}

body[data-page="booking3"] .q__help,
body[data-page="booking3"] .step__sub,
body[data-page="booking3"] .field-help,
body[data-page="booking3"] .hint,
body[data-page="booking3"] [class*="help"]{
  color:#5f7269 !important;
  opacity:1 !important;
  -webkit-text-fill-color:#5f7269 !important;
}

body[data-page="booking3"] input,
body[data-page="booking3"] textarea,
body[data-page="booking3"] select{
  color:#0f2f1f !important;
  -webkit-text-fill-color:#0f2f1f !important;
  background:#fff !important;
}

body[data-page="booking3"] input::placeholder,
body[data-page="booking3"] textarea::placeholder{
  color:rgba(15,47,31,.45) !important;
  -webkit-text-fill-color:rgba(15,47,31,.45) !important;
}

body[data-page="booking3"] .step__title,
body[data-page="booking3"] h1,
body[data-page="booking3"] h2,
body[data-page="booking3"] h3{
  color:#0f2f1f !important;
  -webkit-text-fill-color:#0f2f1f !important;
}

