/* Eduar Mobile Auto Detailing — shared stylesheet.
   Brand from the customer's existing identity: black, chrome/silver, red #E10600. */
:root{
  --bg:#0A0A0A; --bg-2:#121111; --card:#161514; --card-2:#1C1B1A;
  --line:rgba(255,255,255,.09); --line-strong:rgba(255,255,255,.16);
  --text:#F5F5F5; --muted:#B9B4AE; --dim:#8A8580;
  --red:#E10600; --red-dark:#B00500;
  --gold:#D4AF37; --silver:#C7CCD1; --bronze:#C98A50;
  --wa:#22C55E;
  --radius:14px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:'Inter',system-ui,-apple-system,sans-serif;
     line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}

h1,h2,h3{font-weight:800;letter-spacing:-.01em;line-height:1.15}
h1{font-size:clamp(30px,6vw,52px);text-transform:uppercase}
h2{font-size:clamp(24px,3.6vw,34px);text-transform:uppercase}
.chrome{background:linear-gradient(180deg,#FFFFFF 0%,#E8E8E8 45%,#9FA4AA 55%,#E6E6E6 100%);
        -webkit-background-clip:text;background-clip:text;color:transparent}
.redline{display:inline-block;width:64px;height:3px;background:var(--red);border-radius:2px;margin:14px 0 0}
.eyebrow{color:var(--red);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.sub{color:var(--muted);font-size:17px;max-width:44em}

/* nav */
.topbar{position:sticky;top:0;z-index:50;background:rgba(10,10,10,.92);backdrop-filter:blur(10px);
        border-bottom:1px solid var(--line)}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.02em}
.brand img{height:38px;width:auto}
.navlinks{display:flex;gap:26px;font-size:14.5px;font-weight:600;color:var(--muted)}
.navlinks a:hover,.navlinks a[aria-current]{color:var(--text)}
.nav-cta{display:flex;gap:10px}

/* mobile menu (hidden on desktop) */
.navtoggle{display:none;background:none;border:1px solid var(--line-strong);border-radius:9px;
           width:42px;height:38px;padding:0;cursor:pointer;align-items:center;justify-content:center;
           flex-direction:column;gap:4px}
.navtoggle-bar{display:block;width:17px;height:2px;background:var(--text);border-radius:2px;
               transition:transform .18s ease,opacity .18s ease}
.navtoggle.is-open .navtoggle-bar:nth-child(1){transform:translateY(6px) rotate(45deg)}
.navtoggle.is-open .navtoggle-bar:nth-child(2){opacity:0}
.navtoggle.is-open .navtoggle-bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mobilemenu{display:none}
.mobilemenu[hidden]{display:none!important}
.mm-hours{color:var(--dim);font-size:13px;margin-top:14px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;
     font-size:15px;padding:13px 24px;border-radius:10px;border:1.5px solid transparent;
     transition:transform .06s ease,background .15s,border-color .15s;cursor:pointer}
.btn:active{transform:translateY(1px)}
.btn-red{background:var(--red);color:#fff}
.btn-red:hover{background:var(--red-dark)}
.btn-wa{background:var(--wa);color:#06230f}
.btn-wa:hover{filter:brightness(1.06)}
.btn-ghost{border-color:var(--line-strong);color:var(--text)}
.btn-ghost:hover{border-color:#fff}
.btn-sm{padding:9px 16px;font-size:13.5px;border-radius:8px}

/* hero */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);
      background:
        radial-gradient(70% 90% at 80% -10%,rgba(225,6,0,.16),transparent 60%),
        radial-gradient(50% 60% at 10% 110%,rgba(255,255,255,.05),transparent 60%),
        var(--bg)}
.hero .wrap{padding:72px 20px 64px;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.hero .sub{margin:18px 0 8px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.hero-note{color:var(--dim);font-size:13.5px;margin-top:14px}
.hero-art{display:flex;justify-content:center}
.hero-art img{width:min(420px,100%)}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.badge{border:1px solid var(--line-strong);border-radius:20px;padding:6px 14px;font-size:12.5px;
       font-weight:600;color:var(--muted)}

/* sections */
section{padding:64px 0}
.section-head{max-width:640px;margin-bottom:34px}
.alt{background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

/* package cards */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}
.tier{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
      padding:26px 24px;display:flex;flex-direction:column;position:relative}
.tier.popular{border-color:rgba(225,6,0,.55);box-shadow:0 18px 44px -26px rgba(225,6,0,.5)}
.tier-tag{position:absolute;top:-12px;left:22px;background:var(--red);color:#fff;font-size:11px;
          font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 11px;border-radius:12px}
.tier-medal{font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}
.tier-medal.gold{color:var(--gold)} .tier-medal.silver{color:var(--silver)} .tier-medal.bronze{color:var(--bronze)}
.tier h3{font-size:21px;text-transform:uppercase}
.tier .who{color:var(--muted);font-size:14px;margin:8px 0 16px;min-height:3em}
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:2px 0 14px}
.price{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:9px 6px;text-align:center}
.price b{display:block;font-size:18px}
.price span{font-size:11px;color:var(--dim);text-transform:uppercase;letter-spacing:.04em}
.tier .time{color:var(--dim);font-size:13px;margin-bottom:14px}
.tier ul{list-style:none;margin:0 0 18px}
.tier li{padding:5px 0 5px 24px;position:relative;font-size:14px;color:var(--muted);line-height:1.5}
.tier li::before{content:"";position:absolute;left:2px;top:11px;width:9px;height:5px;
                 border-left:2px solid var(--red);border-bottom:2px solid var(--red);transform:rotate(-45deg)}
.tier .btn{margin-top:auto;width:100%}
.tier details{margin:0 0 16px}
.tier summary{cursor:pointer;color:var(--text);font-size:13.5px;font-weight:600;padding:4px 0}
.tier summary:hover{color:#fff}

/* add-ons */
.addons{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.addon{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px}
.addon h3{font-size:16.5px;margin-bottom:6px}
.addon p{color:var(--muted);font-size:14px}
.addon .from{color:var(--text);font-weight:700;margin-top:10px;font-size:15px}

/* price comparison table: answer engines lift tables for "how much does X cost" queries */
.ptable-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.ptable{width:100%;border-collapse:collapse;min-width:520px;font-size:15px}
.ptable caption{text-align:left;color:var(--dim);font-size:13.5px;padding-bottom:12px}
.ptable th,.ptable td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left}
.ptable thead th{color:var(--dim);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;
                 font-weight:800;border-bottom-color:var(--line-strong)}
.ptable tbody th{font-weight:700;color:var(--text);white-space:nowrap}
.ptable tbody th small{display:block;font-weight:600;font-size:11.5px;letter-spacing:.08em;
                       text-transform:uppercase;margin-bottom:3px}
.ptable td{color:var(--muted);white-space:nowrap}
.ptable tbody tr:last-child th,.ptable tbody tr:last-child td{border-bottom:none}
.ptable tbody tr.hi{background:rgba(225,6,0,.06)}
.updated{color:var(--dim);font-size:13px;margin-top:8px}

/* photo + copy side by side */
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center}
.split > *{min-width:0}
.shot{margin:0}
/* cap the height so a portrait phone photo doesn't tower over the copy beside it */
.shot img{width:100%;max-height:560px;object-fit:cover;object-position:center;
          border-radius:var(--radius);border:1px solid var(--line-strong);
          box-shadow:0 24px 60px -30px rgba(0,0,0,.9)}
.shot figcaption{color:var(--dim);font-size:13px;margin-top:10px;line-height:1.5}
.grid3.stack{grid-template-columns:1fr}
ul.plain{list-style:none;margin:0;padding:0}
ul.plain li{padding:4px 0;color:var(--muted);font-size:14px;line-height:1.5}

/* hero photo replaces the logo lockup, so it needs a frame rather than a glow */
.hero-art img{border-radius:var(--radius);border:1px solid var(--line-strong)}

/* steps / trust */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;list-style:none;margin:0;padding:0}
.grid3 > li{list-style:none}
.gcard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.gcard .num{color:var(--red);font-weight:800;font-size:13px;letter-spacing:.1em}
.gcard h3{font-size:17px;margin:8px 0 8px}
.gcard p{color:var(--muted);font-size:14.5px}

/* FAQ */
.faq{max-width:760px}
.faq details{border-bottom:1px solid var(--line);padding:16px 0}
.faq summary{cursor:pointer;font-weight:700;font-size:16.5px;list-style:none;display:flex;justify-content:space-between;gap:14px}
.faq summary::after{content:"+";color:var(--red);font-weight:800;font-size:20px;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq p{color:var(--muted);margin-top:10px;font-size:15px;max-width:60ch}

/* area strip */
.area{display:flex;gap:12px;flex-wrap:wrap}
.area span{border:1px solid var(--line-strong);border-radius:24px;padding:8px 18px;font-weight:600;font-size:14px}

/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.form{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.form label{display:block;font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
            color:var(--muted);margin:14px 0 6px}
.form input,.form textarea{width:100%;background:var(--bg);border:1px solid var(--line-strong);border-radius:9px;
     color:var(--text);padding:12px 13px;font-family:inherit;font-size:15px;outline:none}
.form input:focus,.form textarea:focus{border-color:var(--red)}
.form textarea{min-height:110px;resize:vertical}
.form .btn{width:100%;margin-top:18px}
.form-msg{margin-top:12px;font-size:14px;display:none}
.form-msg.ok{display:block;color:#7ddb96}
.form-msg.err{display:block;color:#ff8a80}
.contact-ways{display:flex;flex-direction:column;gap:12px;margin-top:22px}
.way{display:flex;gap:14px;align-items:center;background:var(--card);border:1px solid var(--line);
     border-radius:var(--radius);padding:16px 18px}
.way b{display:block;font-size:15px}
.way span{color:var(--muted);font-size:13.5px}
.way .ic{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;
         background:var(--bg);border:1px solid var(--line-strong);flex:none}

/* latest posts on the homepage */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;list-style:none;margin:0;padding:0}
.pgrid > li{list-style:none;min-width:0}
.pcard a{display:flex;flex-direction:column;height:100%;background:var(--card);
         border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
         transition:border-color .15s,transform .08s}
.pcard a:hover{border-color:var(--line-strong);transform:translateY(-2px)}
.pcard img{width:100%;aspect-ratio:3/2;object-fit:cover;border-bottom:1px solid var(--line)}
.pcard a{position:relative;overflow:hidden}
.pcard a::before{content:"";position:absolute;top:0;left:0;height:3px;width:38px;background:var(--red);
                 transition:width .22s ease}
.pcard a:hover::before{width:100%}
.pcard-in{padding:26px 20px 20px;display:flex;flex-direction:column;flex:1}
.pcard-date{color:var(--dim);font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:700}
.pcard h3{font-size:17px;margin:8px 0 8px;text-transform:none;letter-spacing:0;line-height:1.25}
.pcard p{color:var(--muted);font-size:14px;line-height:1.55;margin-bottom:14px;
         display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pcard-go{margin-top:auto;color:var(--red);font-weight:700;font-size:13.5px}

/* scroll-in animations — elements fade and rise as they enter the viewport */
.reveal{opacity:0;transform:translateY(26px);
        transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1);
        will-change:opacity,transform}
.reveal.is-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1!important;transform:none!important;transition:none!important}
}

/* footer */
footer{border-top:1px solid var(--line);padding:40px 0 90px;color:var(--dim);font-size:14px}
footer .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
footer a:hover{color:var(--text)}
.foot-nav{display:flex;gap:18px;flex-wrap:wrap}

/* mobile sticky booking bar — a detailing customer is on a phone */
.bookbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;gap:1px;
         background:var(--line);border-top:1px solid var(--line)}
.bookbar a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 10px;
           font-weight:800;font-size:15px;background:var(--bg-2)}
.bookbar .wa{background:var(--wa);color:#06230f}
.bookbar .call{color:var(--text)}

@media(max-width:900px){
  /* the Arbor chat launcher ships with inline bottom:18px; lift it above the booking bar */
  button[aria-label="Chat with us"]{bottom:84px !important}
  .hero .wrap{grid-template-columns:1fr;padding:46px 20px 44px;gap:30px}
  .hero-art{order:-1}
  /* a full-height portrait hero pushed the headline off the first screen on a phone;
     crop it to a band so the H1 and a CTA are visible without scrolling */
  .hero-art img{width:100%;height:230px;object-fit:cover;object-position:50% 42%}
  .tiers{grid-template-columns:1fr}
  .grid3{grid-template-columns:1fr}
  .addons{grid-template-columns:1fr}
  .split{grid-template-columns:1fr;gap:26px}
  .pgrid{grid-template-columns:1fr}
  .shot img{max-height:420px}
  .ptable{min-width:460px;font-size:14px}
  .ptable th,.ptable td{padding:11px 11px}
  .contact-grid{grid-template-columns:1fr}
  .navlinks{display:none}
  .nav-cta{display:none}
  .navtoggle{display:flex}
  .mobilemenu{display:block;border-top:1px solid var(--line);background:var(--bg-2);
              max-height:calc(100vh - 64px);overflow-y:auto}
  .topbar .mobilemenu .wrap{display:flex;flex-direction:column;align-items:stretch;height:auto;justify-content:flex-start;padding:14px 20px 22px}
  .topbar .mobilemenu a{display:block;padding:14px 2px;font-size:17px;font-weight:700;
                color:var(--text);border-bottom:1px solid var(--line)}
  .topbar .mobilemenu a[aria-current]{color:var(--red)}
  .topbar .mobilemenu .mm-call,.topbar .mobilemenu .mm-wa{margin-top:14px;border-bottom:none;
                border-radius:10px;text-align:center;padding:14px 16px;font-size:16px}
  .topbar .mobilemenu .mm-call{border:1.5px solid var(--line-strong)}
  .topbar .mobilemenu .mm-wa{background:var(--wa);color:#06230f}
  html.menu-open{overflow:hidden}
  .bookbar{display:flex}
  section{padding:48px 0}
  footer{padding-bottom:110px}
}
