/* ============================================
   ASE AUTOMOTIVE — PHONE STYLESHEET
   Same look as desktop. Built for touch.
   ============================================ */

/* ---- KILL DESKTOP-ONLY EFFECTS ---- */
body::after        { display:none !important; }          /* SVG noise = scroll jank */
#cur-dot,#cur-ring { display:none !important; }          /* custom cursor */
#curtain           { display:none !important; }          /* loading curtain — skipped on mobile */
body               { cursor:auto !important; -webkit-tap-highlight-color:transparent; overflow-x:hidden; }
nav, nav.scrolled, .mob-drawer {
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
nav, nav.scrolled  { background:rgba(246,241,234,.98) !important; }
.mob-drawer        { background:rgba(246,241,234,.99) !important; }
.hero-watermark    { display:none !important; }
.hero-line-left,
.hero-line-right   { display:none !important; }
* { transition-duration:.12s !important; }

/* ---- NAV ---- */
nav {
  padding:0 20px !important;
  height:60px !important;
}
.logo-ase { font-size:28px !important; }
.nav-links, .nav-btn { display:none !important; }
.mob-toggle        { display:flex !important; }
.mob-drawer        { top:60px !important; }
.mob-drawer ul li a {
  padding:18px 0 !important;
  font-size:14px !important;
  display:flex; align-items:center;
  min-height:56px;
}
.mob-cta {
  padding:17px !important;
  font-size:11px !important;
  margin-top:14px !important;
  min-height:54px;
  display:flex; align-items:center; justify-content:center;
}

/* ---- BANNER ---- */
.ann-banner {
  padding:0 56px 0 16px !important;
  min-height:48px !important;
  display:flex; align-items:center;
}
.ann-msg  { font-size:13px !important; }
.ann-dots { display:none !important; }
.ann-close {
  width:44px !important;
  height:44px !important;
  right:4px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}

/* ---- HERO ---- */
.hero {
  min-height:-webkit-fill-available !important;
  min-height:100svh !important;
}
.hero-content {
  padding:100px 24px 48px !important;
  text-align:center !important;
}
.hero-eyebrow { font-size:9px !important; }
.hero h1 { font-size:clamp(40px,11vw,60px) !important; line-height:1.08 !important; }
.hero-sub { font-size:15px !important; }

/* Hero buttons — stacked, well separated, easy to tap */
.hero-btns {
  flex-direction:column !important;
  align-items:stretch !important;
  gap:14px !important;
  max-width:340px;
  margin-left:auto !important;
  margin-right:auto !important;
}
.hero-call { display:none !important; }   /* phone already visible in nav + footer */
.hero-btn-primary,
.hero-btn-ghost {
  padding:19px 20px !important;
  font-size:11px !important;
  text-align:center !important;
  min-height:58px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  letter-spacing:.18em !important;
}

/* ---- PROMO POPUP ---- */
.promo-popup {
  left:12px !important;
  right:12px !important;
  bottom:16px !important;
  max-width:none !important;
  padding:24px 20px 20px !important;
}
.promo-close {
  width:44px !important;
  height:44px !important;
}
.promo-btn {
  min-height:54px !important;
  font-size:10px !important;
  display:flex; align-items:center; justify-content:center;
}

/* ---- GENERAL FORM ELEMENTS ---- */
input, select, textarea {
  font-size:16px !important;   /* iOS zoom prevention */
  min-height:52px !important;
  padding:14px 16px !important;
}
textarea { min-height:110px !important; }
.btn-submit, button[type="submit"], .submit-btn {
  min-height:56px !important;
  width:100% !important;
  font-size:11px !important;
}

/* ---- SHOWING PAGE ---- */
.radio-group { gap:10px !important; }
.radio-option {
  padding:16px !important;
  min-height:54px !important;
  cursor:pointer !important;
}
.day-grid  { grid-template-columns:repeat(3,1fr) !important; gap:8px !important; }
.time-grid { grid-template-columns:repeat(2,1fr) !important; gap:8px !important; }
.day-btn, .time-btn {
  min-height:54px !important;
  font-size:12px !important;
  cursor:pointer !important;
}
.field-grid { grid-template-columns:1fr !important; gap:16px !important; }
.form-section { padding:28px 20px !important; }

/* ---- INVENTORY ---- */
.inv-grid {
  grid-template-columns:1fr !important;
  gap:14px !important;
}
.c-act-btn {
  min-height:50px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:10px !important;
}

/* ---- CONTACT ---- */
.contact-wrap  { padding:40px 20px 80px !important; }
.contact-grid  { grid-template-columns:1fr !important; gap:20px !important; }
.info-card     { padding:24px 20px !important; }
.ic-actions    { flex-direction:column !important; gap:8px !important; }
.ic-btn {
  width:100% !important;
  min-height:50px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:10px !important;
  padding:12px !important;
}
.map-embed { height:220px !important; }

/* ---- FOOTER ---- */
footer { padding:40px 20px 28px !important; }
.foot-grid, .footer-grid {
  grid-template-columns:1fr !important;
  gap:28px !important;
}

/* ---- ALL INTERACTIVE ELEMENTS — min tap size ---- */
a[href], button, [onclick], [role="button"],
.radio-option, .day-btn, .time-btn, .nav-btn,
.svc-accent-link, .ic-btn, .promo-btn, .mob-cta {
  min-height:44px;
}
