/* ECNet V2 — runtime UI additions (mobile nav, form status) */
.mobile-nav{display:none;border-top:1px solid var(--border);background:var(--popover);max-height:calc(100svh - 7rem);overflow-y:auto}
.mobile-nav.open{display:block}
.mobile-nav ul{list-style:none;margin:0;padding:.75rem 1.25rem 1.25rem}
.mobile-nav a{display:block;padding:.65rem .25rem;border-radius:.5rem}
.mobile-nav .sub a{padding-left:1rem;font-size:.9rem;color:var(--muted-foreground)}
.mobile-nav .cta{margin-top:.75rem;text-align:center;border-radius:9999px;background:var(--primary);color:var(--primary-foreground);font-weight:500}
@media (min-width:1024px){.mobile-nav{display:none!important}}
button[aria-label="Menu"][aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
button[aria-label="Menu"][aria-expanded="true"] span:nth-child(2){opacity:0}
button[aria-label="Menu"][aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.form-msg{border-radius:.75rem;padding:.85rem 1rem;font-size:.9rem}
.form-msg.ok{background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.45);color:#86efac}
.form-msg.err{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.45);color:#fca5a5}
form button[disabled]{opacity:.65;cursor:wait}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
address{font-style:normal}
.mobile-nav ul.sub{padding:0 0 .35rem}
.mobile-nav .sub a{padding-top:.45rem;padding-bottom:.45rem}
/* ── AI Solutions mega menu ───────────────────────────── */
.mega{left:50%;transform:translateX(-50%);width:min(760px,92vw)}
.group:focus-within>.mega{visibility:visible;opacity:1}
.mega-inner{padding:22px 24px 16px}
.mega-cols{display:grid;grid-template-columns:1fr 1fr;gap:4px 28px}
.mega-label{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--primary);margin:0 0 6px 12px}
.mega-item{display:block;padding:10px 12px;border-radius:.65rem;transition:background .15s}
.mega-item:hover,.mega-item.is-current{background:var(--muted)}
.mega-title{display:block;font-weight:600;font-size:.95rem;color:var(--foreground)}
.mega-desc{display:block;margin-top:2px;font-size:.8rem;line-height:1.35;color:var(--muted-foreground)}
.mega-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:14px 12px 2px;border-top:1px solid var(--border);font-size:.8rem;color:var(--muted-foreground)}
.mega-foot a{color:var(--primary);font-weight:500;font-size:.9rem}
.mobile-nav .sub .label{padding:.7rem .25rem .2rem 1rem;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--primary)}
.mobile-nav .sub a .d{display:block;font-size:.75rem;opacity:.75;margin-top:1px}
/* ── Mobile tap targets (min ~44px touch areas, visuals unchanged) ── */
section[aria-roledescription="carousel"] button[aria-label^="Slide "]{position:relative;height:30px;background:transparent;overflow:visible;border-radius:0}
section[aria-roledescription="carousel"] button[aria-label^="Slide "]::before{content:"";position:absolute;left:0;right:0;top:12px;height:6px;border-radius:9999px;background:color-mix(in oklab,var(--foreground) 20%,transparent)}
section[aria-roledescription="carousel"] button[aria-label^="Slide "]>span{position:relative;height:6px;border-radius:9999px}
@media (max-width:1023px){
  footer li a{display:inline-block;padding:6px 0}
  footer a[href^="mailto:"],footer a[href^="tel:"]{padding:6px 0}
  main a[href*="google.com/maps"]{display:inline-block;padding:8px 0}
  .mobile-nav a{min-height:44px}
}
