:root {
      --bg: #020617;
      --bg-soft: #0b1120;
      --accent: #38bdf8;
      --accent-soft: #0ea5e9;
      --text: #e5e7eb;
      --muted: #9ca3af;
      --card: #020617;
      --border: #1f2937;
      --font: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    }
    * { box-sizing:border-box; margin:0; padding:0; }
    body {
      font-family:var(--font);
      background:radial-gradient(circle at top,#1f2937 0,#020617 55%);
      color:var(--text);
      line-height:1.6;
    }
    a { color:var(--accent); text-decoration:none; }
    a:hover { color:var(--accent-soft); }
    .page { max-width:1100px; margin:01 auto; padding:1.5rem 1rem 3rem; }

    header {
      display:flex; justify-content:space-between; align-items:center;
      padding-bottom:0.75rem; border-bottom:1px solid var(--border); margin-bottom:1.5rem;
    }
    .logo { font-weight:700; letter-spacing:.08em; font-size:.95rem; text-transform:uppercase; }
    nav a { margin-left:1.2rem; font-size:.9rem; color:var(--muted); }
    nav a:hover { color:var(--accent); }

    .btn {
      display:inline-flex; align-items:center; justify-content:center;
      padding:.6rem 1.2rem; border-radius:999px; border:1px solid transparent;
      font-size:.9rem; font-weight:500; cursor:pointer; transition:all .16s ease-out;
    }
    .btn-primary {
      background:linear-gradient(135deg,var(--accent),var(--accent-soft));
      color:#020617; box-shadow:0 10px 25px rgba(56,189,248,.3);
    }
    .btn-primary:hover { transform:translateY(-1px); box-shadow:0 18px 40px rgba(56,189,248,.4); }
    .btn-ghost { border-color:var(--border); color:var(--muted); background:transparent; }
    .btn-ghost:hover { border-color:var(--accent); color:var(--accent); }

    /* HERO */
    .hero {
      display:block;
     ; padding:1.5rem 0 2rem;
    }
    .hero-kicker {
      font-size:.8rem; text-transform:uppercase; letter-spacing:.18em;
      color:var(--accent-soft); margin-bottom:.75rem;
    }
    .hero h1 {
      font-size:clamp(2.1rem,3vw,2.6rem); line-height:1.15; margin-bottom:.75rem;
    }
    .hero-sub { font-size:.96rem; color:var(--muted); max-width:32rem; margin-bottom:1.4rem; }
    .hero-cta { display:flex; flex-wrap:wrap; gap:.75rem; margin-bottom:1.2rem; }
    .hero-meta { font-size:.85rem; color:var(--muted); }

    .hero-card {
      background:radial-gradient(circle at top left,#1f2937,#020617);
      border-radius:1rem; padding:1.1rem 1.3rem;
      border:1px solid rgba(148,163,184,.4);
      box-shadow:0 22px 45px rgba(15,23,42,.8); font-size:.85rem;
    }
    .hero-card h2 { font-size:.95rem; margin-bottom:.4rem; }
    .hero-card ul { list-style:none; margin-top:.4rem; }
    .hero-card li { color:var(--muted); margin-bottom:.25rem; }

    section { margin-top:2.4rem; }
    .section-heading {
      font-size:.8rem; text-transform:uppercase; letter-spacing:.18em;
      color:var(--muted); margin-bottom:.3rem;
    }
    .section-title { font-size:1.4rem; margin-bottom:.5rem; }
    .section-sub { font-size:.9rem; color:var(--muted); max-width:38rem; margin-bottom:1.3rem; }

    .grid-3 {
      display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem;
    }
    .card {
      background:rgba(15,23,42,.95); border-radius:.9rem;
      padding:1rem 1rem 1.1rem; border:1px solid var(--border);
    }
    .card h3 { font-size:1rem; margin-bottom:.35rem; }
    .card p { font-size:.9rem; color:var(--muted); }

    .pill {
      display:inline-block; font-size:.75rem; color:var(--muted);
      background:rgba(17,24,39,.95); border-radius:999px;
      padding:.2rem .55rem; margin-right:.25rem; margin-top:.3rem;
    }

    .hours-grid {
      display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem;
    }
    .hours-card {
      background:rgba(15,23,42,.95); border-radius:.9rem;
      padding:.9rem 1rem; border:1px solid var(--border); font-size:.9rem;
    }
    .hours-table { margin-top:.5rem; font-size:.85rem; color:var(--muted); }
    .hours-table div { display:flex; justify-content:space-between; margin-bottom:.2rem; }

    .contact-card {
      display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1.4fr);
      gap:1.5rem; background:rgba(15,23,42,.97);
      border-radius:1rem; border:1px solid var(--border);
      padding:1.2rem 1.3rem 1.4rem;
    }
    form { display:grid; gap:.75rem; font-size:.9rem; }
    label { font-size:.8rem; color:var(--muted); margin-bottom:.1rem; display:block; }
    input, textarea {
      width:100%; border-radius:.6rem; border:1px solid var(--border);
      padding:.55rem .7rem; background:var(--bg-soft); color:var(--text);
      font-family:var(--font); font-size:.9rem;
    }
    textarea { min-height:110px; resize:vertical; }
    input:focus, textarea:focus {
      outline:1px solid var(--accent-soft); border-color:var(--accent-soft);
    }

    footer {
      margin-top:2.3rem; padding-top:1rem; border-top:1px solid var(--border);
      font-size:.8rem; color:var(--muted); display:flex;
      justify-content:space-between; flex-wrap:wrap; gap:.75rem;
    }

    @media (max-width:900px) {
      .hero { grid-template-columns:minmax(0,1fr); }
      .hero-card { order:-1; }
      .grid-3 { grid-template-columns:minmax(0,1fr); }
      .hours-grid { grid-template-columns:minmax(0,1fr); }
      .contact-card { grid-template-columns:minmax(0,1fr); }
    }
    .btn {
  display: inline-block;
  padding: 0.75rem 1.4rem;
  border-radius: 999px;
  border: 1px solid transparent;
  font-size: 0.95rem;
  font-weight: 500;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
}

.btn-primary {
  background: #38bdf8;
  color: #020617;
}

.btn-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 25px rgba(56, 189, 248, 0.4);
}
