/* ══════════════════════════════════════════════════════════
   WadeBauto — Premium Auto Repair
   ══════════════════════════════════════════════════════════ */
:root{
  --wb-purple:#4B1E78;
  --wb-plum:#2A0F45;
  --wb-lavender:#F4EEFB;
  --wb-champagne:#C9B37E;
  --wb-silver:#C0C0C8;
  --wb-white:#FFFFFF;
  --wb-dark:#1a1128;
  --wb-text:#333;
  --wb-mute:#6b6b6b;
  --wb-serif:'Cormorant Garamond',Georgia,serif;
  --wb-sans:'Inter',system-ui,sans-serif;
  --wb-ease:cubic-bezier(.25,.46,.45,.94);
  --wb-max:1200px;
  --wb-radius:10px;
}

/* ── Astra overrides ────────────────────────────────────── */
body{font-family:var(--wb-sans)!important;font-size:16px;line-height:1.7;color:var(--wb-text)!important;background:var(--wb-white)!important;-webkit-font-smoothing:antialiased;overflow-x:hidden}
#page{background:var(--wb-white)}
.site-header,.ast-above-header,.ast-below-header,.ast-primary-header-bar{display:none!important}
.site-footer,.ast-footer-overlay{display:none!important}
.site-content .ast-container{max-width:100%;padding:0}
.entry-content{margin:0;padding:0}
#primary{margin:0;padding:0;max-width:100%}
.ast-separate-container .ast-article-single,.ast-separate-container #primary{background:transparent;padding:0}

/* ── layout ─────────────────────────────────────────────── */
.wb-wrap{max-width:var(--wb-max);margin:0 auto;padding:0 24px}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;transition:color .3s var(--wb-ease)}
h1,h2,h3,h4{font-family:var(--wb-serif);font-weight:600;line-height:1.2;color:var(--wb-plum)}
ul{list-style:none;margin:0;padding:0}

/* ── kicker ─────────────────────────────────────────────── */
.wb-kicker{
  font-family:var(--wb-sans);font-size:11px;font-weight:700;
  letter-spacing:.3em;text-transform:uppercase;
  color:var(--wb-purple);display:block;margin-bottom:12px;
}

/* ── section title ──────────────────────────────────────── */
.wb-sec-title{font-size:clamp(28px,4vw,44px);margin-bottom:16px}
.wb-divider{width:50px;height:2px;background:linear-gradient(90deg,var(--wb-purple),var(--wb-champagne));margin-bottom:32px;border-radius:2px}
.wb-divider--center{margin-left:auto;margin-right:auto}

/* ── buttons ────────────────────────────────────────────── */
.wb-btn{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--wb-sans);font-size:13px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;
  padding:14px 36px;border-radius:var(--wb-radius);
  border:2px solid var(--wb-purple);color:var(--wb-purple);
  background:transparent;cursor:pointer;
  transition:all .3s var(--wb-ease);
}
.wb-btn:hover{background:var(--wb-purple);color:var(--wb-white)}
.wb-btn--solid{background:var(--wb-purple);color:var(--wb-white);border-color:var(--wb-purple)}
.wb-btn--solid:hover{background:var(--wb-plum);border-color:var(--wb-plum)}
.wb-btn--white{background:var(--wb-white);color:var(--wb-purple);border-color:var(--wb-white)}
.wb-btn--white:hover{background:var(--wb-lavender);border-color:var(--wb-lavender)}
.wb-btn--small{padding:10px 24px;font-size:11px}
.wb-btn--champagne{border-color:var(--wb-champagne);color:var(--wb-champagne)}
.wb-btn--champagne:hover{background:var(--wb-champagne);color:var(--wb-plum)}

/* ══════════════════════════════════════════════════════════
   HEADER
   ══════════════════════════════════════════════════════════ */
.wb-header{
  position:fixed;top:0;left:0;right:0;z-index:100;
  padding:16px 0;transition:all .4s var(--wb-ease);
}
.wb-header--solid{background:rgba(255,255,255,.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 20px rgba(0,0,0,.06);padding:8px 0}
.wb-header .wb-wrap{display:flex;align-items:center;justify-content:space-between}
.wb-logo{font-family:var(--wb-serif);font-size:26px;font-weight:700;color:var(--wb-white);transition:color .3s}
.wb-logo span{color:var(--wb-champagne)}
.wb-header--solid .wb-logo{color:var(--wb-plum)}
.wb-nav{display:flex;gap:32px;align-items:center}
.wb-nav a{font-family:var(--wb-sans);font-size:13px;font-weight:500;letter-spacing:.06em;color:rgba(255,255,255,.85);transition:color .3s}
.wb-nav a:hover{color:var(--wb-champagne)}
.wb-header--solid .wb-nav a{color:var(--wb-text)}
.wb-header--solid .wb-nav a:hover{color:var(--wb-purple)}
.wb-header__phone{font-family:var(--wb-sans);font-size:13px;font-weight:500;color:rgba(255,255,255,.85);display:flex;align-items:center;gap:6px}
.wb-header--solid .wb-header__phone{color:var(--wb-text)}
.wb-header__cta{margin-left:16px}
.wb-header--transparent .wb-header__cta .wb-btn{border-color:var(--wb-white);color:var(--wb-white)}

.wb-hamburger{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;gap:5px}
.wb-hamburger span{display:block;width:24px;height:2px;background:var(--wb-white);transition:all .3s;border-radius:2px}
.wb-header--solid .wb-hamburger span{background:var(--wb-plum)}

.wb-mobile-nav{
  display:none;position:fixed;inset:0;z-index:200;
  background:var(--wb-plum);flex-direction:column;
  align-items:center;justify-content:center;gap:28px;
}
.wb-mobile-nav.is-open{display:flex}
.wb-mobile-nav a{font-family:var(--wb-serif);font-size:28px;color:var(--wb-white)}
.wb-mobile-nav a:hover{color:var(--wb-champagne)}

.wb-mobile-call{
  display:none;position:fixed;bottom:0;left:0;right:0;z-index:90;
  background:var(--wb-purple);padding:12px;text-align:center;
}
.wb-mobile-call a{color:var(--wb-white);font-family:var(--wb-sans);font-size:15px;font-weight:600;letter-spacing:.05em}

@media(max-width:900px){
  .wb-nav,.wb-header__phone,.wb-header__cta{display:none}
  .wb-hamburger{display:flex}
  .wb-mobile-call{display:block}
  body{padding-bottom:52px}
}

/* ══════════════════════════════════════════════════════════
   HERO
   ══════════════════════════════════════════════════════════ */
.wb-hero{
  min-height:92vh;display:flex;align-items:center;
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--wb-plum) 0%,var(--wb-purple) 60%,rgba(75,30,120,.9) 100%);
}
.wb-hero::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at 80% 40%,rgba(201,179,126,.08) 0%,transparent 60%);
}
.wb-hero .wb-wrap{position:relative;z-index:2;text-align:center;max-width:800px}
.wb-hero__title{
  font-family:var(--wb-serif);font-size:clamp(40px,6vw,72px);
  font-weight:600;color:var(--wb-white);margin-bottom:20px;line-height:1.08;
}
.wb-hero__sub{font-size:20px;color:rgba(255,255,255,.75);margin-bottom:40px;font-weight:300}
.wb-hero__ctas{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* ══════════════════════════════════════════════════════════
   TRUST BAR
   ══════════════════════════════════════════════════════════ */
.wb-trust{background:var(--wb-white);padding:60px 0;border-bottom:1px solid rgba(0,0,0,.06)}
.wb-trust__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;text-align:center}
.wb-trust__item svg{width:40px;height:40px;fill:var(--wb-purple);margin:0 auto 12px}
.wb-trust__item h4{font-family:var(--wb-sans);font-size:14px;font-weight:600;color:var(--wb-plum);margin-bottom:4px}
.wb-trust__item p{font-size:13px;color:var(--wb-mute);line-height:1.5}
@media(max-width:768px){.wb-trust__grid{grid-template-columns:repeat(2,1fr);gap:24px}}

/* ══════════════════════════════════════════════════════════
   SERVICES GRID
   ══════════════════════════════════════════════════════════ */
.wb-services{padding:100px 0;background:var(--wb-lavender)}
.wb-services__header{text-align:center;margin-bottom:56px}
.wb-services__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.wb-svc{
  background:var(--wb-white);border-radius:var(--wb-radius);
  padding:36px 24px;text-align:center;
  border:1px solid transparent;
  transition:all .4s var(--wb-ease);
  box-shadow:0 2px 12px rgba(0,0,0,.04);
}
.wb-svc:hover{
  transform:translateY(-6px);
  box-shadow:0 16px 40px rgba(75,30,120,.12);
  border-color:var(--wb-purple);
}
.wb-svc svg{width:36px;height:36px;fill:var(--wb-purple);margin:0 auto 16px}
.wb-svc h3{font-family:var(--wb-sans);font-size:15px;font-weight:600;color:var(--wb-plum);margin-bottom:8px}
.wb-svc p{font-size:13px;color:var(--wb-mute);line-height:1.55}
@media(max-width:1000px){.wb-services__grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.wb-services__grid{grid-template-columns:repeat(2,1fr)}}

/* ══════════════════════════════════════════════════════════
   WHY CHOOSE US
   ══════════════════════════════════════════════════════════ */
.wb-why{padding:100px 0;background:var(--wb-white)}
.wb-why__grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.wb-why__img{border-radius:var(--wb-radius);overflow:hidden;box-shadow:0 24px 48px rgba(0,0,0,.1)}
.wb-why__img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.wb-why__points{display:flex;flex-direction:column;gap:28px}
.wb-why__point{display:flex;gap:16px;align-items:flex-start}
.wb-why__point-num{
  flex-shrink:0;width:40px;height:40px;
  background:var(--wb-lavender);color:var(--wb-purple);
  border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-family:var(--wb-serif);font-size:18px;font-weight:700;
}
.wb-why__point h4{font-family:var(--wb-sans);font-size:16px;font-weight:600;color:var(--wb-plum);margin-bottom:4px}
.wb-why__point p{font-size:14px;color:var(--wb-mute);line-height:1.6}
@media(max-width:900px){.wb-why__grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════════════════════════
   PROCESS
   ══════════════════════════════════════════════════════════ */
.wb-process{padding:100px 0;background:var(--wb-lavender)}
.wb-process__header{text-align:center;margin-bottom:56px}
.wb-process__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;text-align:center}
.wb-step{position:relative}
.wb-step__num{
  width:64px;height:64px;margin:0 auto 20px;
  background:var(--wb-purple);color:var(--wb-white);
  border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-family:var(--wb-serif);font-size:24px;font-weight:700;
  box-shadow:0 8px 24px rgba(75,30,120,.2);
}
.wb-step h4{font-family:var(--wb-sans);font-size:15px;font-weight:600;color:var(--wb-plum);margin-bottom:6px}
.wb-step p{font-size:13px;color:var(--wb-mute);line-height:1.5}
@media(max-width:768px){.wb-process__grid{grid-template-columns:repeat(2,1fr);gap:40px}}

/* ══════════════════════════════════════════════════════════
   TESTIMONIALS
   ══════════════════════════════════════════════════════════ */
.wb-testimonials{padding:100px 0;background:var(--wb-white)}
.wb-testimonials__header{text-align:center;margin-bottom:56px}
.wb-testimonials__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.wb-testi{
  background:var(--wb-lavender);border-radius:var(--wb-radius);
  padding:36px 28px;position:relative;
}
.wb-testi__stars{color:var(--wb-champagne);font-size:18px;margin-bottom:16px;letter-spacing:3px}
.wb-testi blockquote{font-size:15px;color:var(--wb-text);line-height:1.65;font-style:italic;margin-bottom:20px}
.wb-testi cite{font-style:normal;font-family:var(--wb-sans);font-size:13px;font-weight:600;color:var(--wb-purple)}
@media(max-width:768px){.wb-testimonials__grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════════════════════════
   CTA BAND
   ══════════════════════════════════════════════════════════ */
.wb-cta-band{
  padding:80px 0;
  background:linear-gradient(135deg,var(--wb-plum) 0%,var(--wb-purple) 100%);
  text-align:center;
}
.wb-cta-band h2{font-family:var(--wb-serif);font-size:clamp(28px,4vw,42px);color:var(--wb-white);margin-bottom:24px}
.wb-cta-band p{color:rgba(255,255,255,.7);margin-bottom:32px;font-size:17px}
.wb-cta-band__actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* ══════════════════════════════════════════════════════════
   CONTACT
   ══════════════════════════════════════════════════════════ */
.wb-contact{padding:100px 0;background:var(--wb-lavender)}
.wb-contact__header{text-align:center;margin-bottom:56px}
.wb-contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.wb-contact__form{
  background:var(--wb-white);border-radius:var(--wb-radius);
  padding:40px;box-shadow:0 4px 20px rgba(0,0,0,.06);
}
.wb-contact__info{display:flex;flex-direction:column;gap:24px}
.wb-contact__info-item{display:flex;gap:14px;align-items:flex-start}
.wb-contact__info-item svg{width:24px;height:24px;fill:var(--wb-purple);flex-shrink:0;margin-top:2px}
.wb-contact__info-item h4{font-family:var(--wb-sans);font-size:14px;font-weight:600;color:var(--wb-plum);margin-bottom:2px}
.wb-contact__info-item p{font-size:14px;color:var(--wb-mute);line-height:1.5}
.wb-contact__info-item a{color:var(--wb-purple);font-weight:500}
.wb-contact__map{border-radius:var(--wb-radius);overflow:hidden;height:280px;margin-top:8px}
.wb-contact__map iframe{width:100%;height:100%;border:0}
@media(max-width:900px){.wb-contact__grid{grid-template-columns:1fr}}

/* ── form styling ───────────────────────────────────────── */
.wb-contact__form label{font-family:var(--wb-sans);font-size:13px;font-weight:500;color:var(--wb-plum);display:block;margin-bottom:6px}
.wb-contact__form input,.wb-contact__form select,.wb-contact__form textarea{
  width:100%;padding:12px 16px;border:1px solid #ddd;border-radius:8px;
  font-family:var(--wb-sans);font-size:14px;color:var(--wb-text);
  transition:border-color .3s;margin-bottom:18px;background:var(--wb-white);
}
.wb-contact__form input:focus,.wb-contact__form select:focus,.wb-contact__form textarea:focus{
  outline:none;border-color:var(--wb-purple);box-shadow:0 0 0 3px rgba(75,30,120,.1);
}
.wb-contact__form textarea{min-height:100px;resize:vertical}
.wb-contact__form .wb-btn{width:100%;justify-content:center;padding:16px}
.wb-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:600px){.wb-form-row{grid-template-columns:1fr}}

/* ══════════════════════════════════════════════════════════
   FOOTER
   ══════════════════════════════════════════════════════════ */
.wb-footer{background:var(--wb-plum);padding:64px 0 32px;color:rgba(255,255,255,.7)}
.wb-footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:40px;margin-bottom:48px}
.wb-footer__brand h3{font-family:var(--wb-serif);font-size:24px;color:var(--wb-white);margin-bottom:12px}
.wb-footer__brand h3 span{color:var(--wb-champagne)}
.wb-footer__brand p{font-size:14px;line-height:1.6}
.wb-footer h4{font-family:var(--wb-sans);font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--wb-champagne);margin-bottom:16px}
.wb-footer ul{display:flex;flex-direction:column;gap:8px}
.wb-footer a{color:rgba(255,255,255,.6);font-size:14px;transition:color .3s}
.wb-footer a:hover{color:var(--wb-white)}
.wb-footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:24px;text-align:center;font-size:13px}
@media(max-width:900px){.wb-footer__grid{grid-template-columns:1fr 1fr;gap:32px}}
@media(max-width:600px){.wb-footer__grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════════════════════════
   ANIMATIONS
   ══════════════════════════════════════════════════════════ */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--wb-ease),transform .7s var(--wb-ease)}
.reveal.is-visible{opacity:1;transform:translateY(0)}

/* ══════════════════════════════════════════════════════════
   SERVICE PAGE
   ══════════════════════════════════════════════════════════ */
.wb-service-hero{padding:160px 0 80px;background:linear-gradient(135deg,var(--wb-plum),var(--wb-purple));text-align:center}
.wb-service-hero h1{font-family:var(--wb-serif);font-size:clamp(32px,5vw,52px);color:var(--wb-white);margin-bottom:16px}
.wb-service-hero p{color:rgba(255,255,255,.7);font-size:18px}
.wb-service-content{padding:80px 0;max-width:800px;margin:0 auto}
.wb-service-content h2{font-size:28px;margin:40px 0 16px}
.wb-service-content p{margin-bottom:18px;color:var(--wb-mute);line-height:1.8}
.wb-service-content ul{margin:16px 0;padding-left:20px}
.wb-service-content li{margin-bottom:8px;color:var(--wb-mute);list-style:disc}
.wb-faq{margin:48px 0}
.wb-faq details{border:1px solid #e8e0f0;border-radius:var(--wb-radius);margin-bottom:12px;overflow:hidden}
.wb-faq summary{padding:18px 24px;font-family:var(--wb-sans);font-size:15px;font-weight:600;color:var(--wb-plum);cursor:pointer;background:var(--wb-lavender)}
.wb-faq details[open] summary{border-bottom:1px solid #e8e0f0}
.wb-faq details p{padding:18px 24px;margin:0;font-size:14px;color:var(--wb-mute);line-height:1.7}
