:root{
  --primary:#0d6efd;
  --primary-dark:#0a58ca;
  --text:#e5e7eb;
  --muted:#b7bcc3;
  --accent:#22c55e;
  --focus:#38bdf8;
  --bg-dark:#0b1120;
}

*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  background:radial-gradient(circle at top,#1e293b 0,#020617 45%,#000 100%);
  color:var(--text);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Skip link */
.skip-link{
  position:absolute;left:1rem;top:-48px;background:#fff;color:#000;padding:8px 12px;border-radius:6px;z-index:10000;box-shadow:0 4px 12px rgba(0,0,0,0.25);
}
.skip-link:focus{top:1rem;outline:3px solid var(--focus)}

/* Header / Nav */
header{position:sticky;top:0;z-index:50;backdrop-filter:blur(8px);background:linear-gradient(to bottom,rgba(15,23,42,0.95),rgba(15,23,42,0.85));border-bottom:1px solid rgba(148,163,184,0.18)}
.nav{max-width:1100px;margin:0 auto;padding:0.75rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo{display:flex;align-items:center;gap:0.8rem;font-weight:700}
.logo img{width:300px;height:auto;object-fit:contain;display:block}
.logo-text span{font-size:0.98rem}
.logo-text small{font-size:0.66rem;color:var(--muted);font-weight:500}

.nav-links{display:flex;gap:1.25rem;font-size:0.95rem}
.nav-links a{color:var(--muted);position:relative}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:linear-gradient(to right,var(--primary),var(--accent));transition:width .18s ease}
.nav-links a:hover,.nav-links a:focus{color:var(--text)}
.nav-links a:hover::after,.nav-links a:focus::after{width:100%}

.btn-nav{padding:0.45rem 0.9rem;border-radius:999px;border:1px solid rgba(148,163,184,0.45);font-size:0.85rem;color:var(--text);background:radial-gradient(circle at top left,rgba(56,189,248,0.12),transparent 55%)}
.btn-nav:focus{outline:3px solid var(--focus);outline-offset:3px}

/* Main layout */
main{max-width:1100px;margin:0 auto;padding:1.5rem 1.25rem 3rem}

/* Hero */
.hero{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2.5fr);gap:2.5rem;padding:3.5rem 0 2.5rem;align-items:center}
.badge{display:inline-flex;align-items:center;gap:0.4rem;padding:0.25rem 0.7rem;border-radius:999px;border:1px solid rgba(148,163,184,0.45);background:rgba(15,23,42,0.9);font-size:0.75rem;color:var(--muted)}
.badge-dot{width:7px;height:7px;border-radius:999px;background:radial-gradient(circle,#22c55e,#16a34a);box-shadow:0 0 10px rgba(34,197,94,0.8)}

.hero h1{font-size:clamp(2.1rem,3.1vw + 1.4rem,3.1rem);line-height:1.05;margin-bottom:0.9rem}
.gradient-text{background:linear-gradient(to right,#38bdf8,#22c55e);-webkit-background-clip:text;color:transparent}
.hero-sub{font-size:0.98rem;color:var(--muted);max-width:36rem;margin-bottom:1.4rem}
.hero-highlights{display:flex;flex-wrap:wrap;gap:0.75rem;margin-bottom:1.6rem}
.chip{font-size:0.78rem;padding:0.28rem 0.7rem;border-radius:999px;border:1px solid rgba(148,163,184,0.45);color:var(--muted);background:rgba(15,23,42,0.9)}

.hero-actions{display:flex;gap:0.75rem;align-items:center;margin-bottom:1.4rem}
.btn-primary{padding:0.7rem 1.4rem;border-radius:999px;border:none;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-size:0.95rem;font-weight:600;cursor:pointer;box-shadow:0 12px 30px rgba(37,99,235,0.28)}
.btn-primary:focus{outline:3px solid var(--focus);outline-offset:3px}
.btn-ghost{padding:0.6rem 1.1rem;border-radius:999px;border:1px solid rgba(148,163,184,0.6);background:transparent;color:var(--muted);cursor:pointer}
.btn-ghost:focus{outline:3px solid var(--focus);outline-offset:3px}

.hero-note{font-size:0.78rem;color:var(--muted)}

.hero-right{position:relative}
.card{border-radius:1.3rem;padding:1.4rem;background:radial-gradient(circle at top left,rgba(56,189,248,0.12),rgba(15,23,42,0.95));border:1px solid rgba(148,163,184,0.35);box-shadow:0 18px 45px rgba(0,0,0,0.6)}
.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}
.card-title{font-size:0.95rem;font-weight:600}
.status-pill{font-size:0.75rem;padding:0.25rem 0.6rem;border-radius:999px;background:rgba(22,163,74,0.12);color:#4ade80;border:1px solid rgba(34,197,94,0.45)}

.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.75rem;margin-bottom:1rem}
.mini{padding:0.6rem 0.7rem;border-radius:0.9rem;background:rgba(15,23,42,0.9);border:1px solid rgba(148,163,184,0.28);font-size:0.82rem}
.mini-label{font-size:0.72rem;color:var(--muted);margin-bottom:0.15rem}
.mini-value{font-size:0.85rem;color:var(--text)}

.progress-row{display:flex;align-items:center;justify-content:space-between;font-size:0.78rem;color:var(--muted);margin-bottom:0.4rem}
.progress-bar{width:100%;height:8px;border-radius:999px;background:rgba(15,23,42,0.9);overflow:hidden;border:1px solid rgba(30,64,175,0.5)}
.progress-fill{height:100%;width:82%;background:linear-gradient(to right,#22c55e,#38bdf8);box-shadow:0 0 12px rgba(56,189,248,0.6)}

.floating-tag{position:absolute;right:-10px;top:50%;transform:translateY(-50%);padding:0.4rem 0.7rem;border-radius:999px;background:rgba(15,23,42,0.95);border:1px solid rgba(148,163,184,0.4);font-size:0.75rem;color:var(--muted)}

/* Sections */
section{padding:2.5rem 0 1.5rem}
.section-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1.5rem;gap:1rem}
.section-header h2{font-size:1.4rem;color:var(--text)}
.section-header p{font-size:0.95rem;color:var(--muted);max-width:28rem}

.services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.service-card{padding:1rem;border-radius:1rem;background:rgba(15,23,42,0.95);border:1px solid rgba(148,163,184,0.28);font-size:0.9rem}
.service-icon{width:36px;height:36px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:1rem;margin-bottom:0.5rem;background:radial-gradient(circle at top,rgba(56,189,248,0.12),transparent 70%)}

.two-col{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2.5fr);gap:2rem}
.list{list-style:none;font-size:0.95rem;color:var(--muted)}
.list li{margin-bottom:0.5rem;display:flex;gap:0.6rem;align-items:flex-start}
.list li span{color:#22c55e;margin-top:0.15rem}

.contact-card{padding:1.2rem;border-radius:1.1rem;background:rgba(15,23,42,0.95);border:1px solid rgba(148,163,184,0.32);font-size:0.9rem}
.contact-row{margin-bottom:0.9rem}
.contact-label{font-size:0.78rem;color:var(--muted)}
.contact-value{font-size:0.95rem;color:var(--text)}
.contact-value a{color:#38bdf8}
.hours-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.3rem 1rem;font-size:0.85rem;color:var(--muted)}

footer{border-top:1px solid rgba(148,163,184,0.18);padding:1.2rem 1.25rem 2rem;font-size:0.82rem;color:var(--muted);max-width:1100px;margin:0 auto}
.footer-row{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:center}

/* Form */
label{display:block;font-size:0.9rem;color:var(--muted)}
input,select,textarea{width:100%;margin-top:0.25rem;padding:0.55rem 0.6rem;border-radius:0.6rem;border:1px solid rgba(148,163,184,0.35);background:rgba(15,23,42,0.9);color:var(--text);font-size:0.95rem}
input:focus,select:focus,textarea:focus{outline:3px solid var(--focus);outline-offset:3px}
button[type="submit"]{cursor:pointer}

/* Utility */
.muted-paragraph{font-size:0.95rem;color:var(--muted)}
.muted-note{font-size:0.75rem;color:var(--muted)}

/* Responsive */
@media (max-width:900px){
  .hero,.two-col{grid-template-columns:minmax(0,1fr)}
  .hero-right{order:-1}
  .floating-tag{display:none}
  .services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .nav-links{display:none}
  .hero{padding-top:2.5rem}
  .services-grid{grid-template-columns:minmax(0,1fr)}
  main{padding-inline:1rem}
  .logo img{width:36px;height:36px}
}
