/* Brand & theme with color swatches */
:root{--accent:#f59e0b; 
  --bg:#ffffff; --text:#0f172a; --muted:#6b7280; --border:#e5e7eb;
  --primary: var(--brand, #0d2a4a);
  --primary-2: color-mix(in oklab, var(--primary) 80%, black);
  --ring: color-mix(in oklab, var(--primary) 40%, transparent);
  --card:#ffffff; --alt:#f8fafc;
}
.dark{
  --bg:#0b1220; --text:#e5e7eb; --muted:#94a3b8; --border:#1e293b;
  --card:#0f172a; --alt:#0b1220;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}
.container{max-width:1120px;margin:0 auto;padding:0 20px}
.section{padding:80px 0}
.section--alt{background:var(--alt)}

.navbar{position:sticky;top:0;background:rgba(255,255,255,.75);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--border);z-index:50}
.dark .navbar{background:rgba(15,23,42,.6)}
.nav__inner{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}
.brand__text{display:flex;flex-direction:column;line-height:1}
.brand__text small{color:var(--muted)}
.links{display:flex;gap:18px;align-items:center}
.links a{color:inherit;text-decoration:none}
.nav__actions{display:flex;gap:8px;align-items:center}
.hamb{display:none;background:none;border:1px solid var(--border);border-radius:8px;padding:6px 10px;color:inherit}
.swatches{display:flex;gap:6px;margin-right:4px}
.sw{width:18px;height:18px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 2px rgba(0,0,0,.1);background:var(--c);cursor:pointer}

.hero{background:linear-gradient(135deg,#fff, #fff8ec)}
.dark .hero{background:linear-gradient(135deg,#05243a,#0b1220)}
.hero__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:center;padding:72px 0}
.pill{display:inline-block;background:var(--card);border:1px solid var(--border);border-radius:999px;padding:6px 12px;color:var(--muted);font-size:12px;margin-bottom:10px}
h1{font-size:44px;line-height:1.1;margin:0 0 12px}
.hero__copy p{color:var(--muted);font-size:18px}
.cta{display:flex;gap:12px;margin:16px 0 8px}
.badges{display:flex;gap:16px;list-style:none;padding:0;margin:8px 0 0;color:var(--muted);font-size:14px}
.hero__media{position:relative}
.hero__media img{width:100%;height:auto;border-radius:24px;box-shadow:0 12px 40px rgba(2,6,23,.15)}
.dark .hero__media img{box-shadow:0 12px 40px rgba(0,0,0,.4)}
.card{background:var(--card);border:1px solid var(--border);border-radius:16px}
.card--float{position:absolute;left:16px;bottom:-18px;padding:12px 14px;display:flex;gap:10px;align-items:center;box-shadow:0 10px 20px rgba(2,6,23,.08)}

.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cards .card{overflow:hidden;display:flex;flex-direction:column}
.card__img{width:100%;height:260px;object-fit:cover}
.card__body{padding:16px}
.card__body h3{margin:0 0 10px}
.specs{list-style:none;padding:0;margin:0 0 14px;color:var(--muted);display:grid;gap:6px}

.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--card)}
.service img{width:100%;height:180px;object-fit:cover}
.service div{padding:12px}

.contact{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.contact__list{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:8px}
.form{display:grid;gap:12px}
.form input,.form textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);font:inherit}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}

.footer{border-top:1px solid var(--border);padding:28px 0;background:var(--card)}
.footer__grid{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.footer__links{display:flex;gap:14px}
.footer__links a{text-decoration:none;color:inherit}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:12px 18px;text-decoration:none;font-weight:700;border:1px solid var(--border);color:inherit}
.btn--primary{background:var(--primary);border-color:var(--primary);color:#fff}
.btn--primary:hover{filter:brightness(0.95)}
.btn--ghost{background:transparent}
.btn--sm{padding:8px 12px;font-weight:600}

.muted{color:var(--muted)}
.grad1{background:linear-gradient(90deg,var(--brand),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}
.grad2{background:linear-gradient(90deg,var(--accent),var(--brand));-webkit-background-clip:text;background-clip:text;color:transparent}
.w-100{width:100%}
.hidden{position:absolute;opacity:0;height:0;width:0;overflow:hidden}

.fab{position:fixed;right:18px;bottom:18px;background:#22c55e;color:#fff;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 12px 24px rgba(2,6,23,.2);font-size:22px}

@media (max-width: 960px){
  .links{display:none}
  .hamb{display:block}
  .hero__grid{grid-template-columns:1fr}
  .grid2{grid-template-columns:1fr}
  .grid3{grid-template-columns:1fr}
  .services-grid{grid-template-columns:1fr}
  .contact{grid-template-columns:1fr}
}

.brand__img{height:28px;width:auto;display:block}


/* --- Tesla image visibility tweaks --- */
.card__img--contain{object-fit:contain;background:#000;padding:8px;height:320px}
@media (min-width: 960px){.card__img--contain{height:380px}}


/* tiny photo credit under service images */
.credit{font-size:.75rem;opacity:.7;margin-top:.25rem}
.service figure{margin:0}
.service img{width:100%;height:220px;object-fit:cover;border-radius:1rem}
@media (min-width:960px){.service img{height:240px}}


/* Service photo credits and sizing */
.credit{font-size:.75rem;opacity:.7;margin-top:.25rem}
.service figure{margin:0}
.service img{width:100%;height:220px;object-fit:cover;border-radius:1rem}
@media (min-width:960px){.service img{height:240px}}


/* === Responsive enhancements (PHR Connect, 2025-08-22) === */
:root{
  --container:1120px;
}
.container{max-width:var(--container)}

.card__img{height:clamp(180px, 32vw, 260px)}

/* Medium screens */
@media (max-width: 1024px){
  .hero__grid{grid-template-columns:1fr; gap:24px; padding:56px 0}
  .grid3{grid-template-columns:repeat(2,1fr)}
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .card__img{height:clamp(180px, 38vw, 240px)}
  .section{padding:64px 0}
}

/* Small screens */
@media (max-width: 700px){
  .container{padding:0 14px}
  h1{font-size:clamp(28px, 7vw, 38px)}
  .hero__copy p{font-size:16px}
  .grid2{grid-template-columns:1fr}
  .grid3{grid-template-columns:1fr}
  .services-grid{grid-template-columns:1fr}
  .card__img{height:clamp(170px, 50vw, 220px)}
  .cta{flex-direction:column; align-items:stretch}
  .footer__grid{justify-content:center; gap:10px}
}

/* Touch targets */
@media (hover:none){
  .btn{padding:12px 16px}
  .btn--sm{padding:10px 12px}
}


/* === Header fixed & aligned (final) === */
.navbar{position:sticky;top:0;z-index:50;height:70px;display:flex;align-items:center}
.nav__inner{height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px;line-height:1}
.brand__img{height:40px;width:auto}
.links{display:flex;align-items:center;gap:22px}
.links a{display:inline-flex;align-items:center;height:40px;line-height:1}
.nav__actions{display:flex;align-items:center;gap:10px}
.nav__actions>*{display:inline-flex;align-items:center;height:40px}
.langs{display:flex;align-items:center;gap:8px}

/* Cards images responsive */
.card__img{height:clamp(180px, 32vw, 260px)}
@media (max-width:1024px){.grid3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.grid2,.grid3{grid-template-columns:1fr}.card__img{height:clamp(170px,50vw,220px)}}


/* === Fleet badges === */
.card{position:relative}
.badge{
  position:absolute; top:10px; left:10px;
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius:9999px;
  font-size:12px; font-weight:700; line-height:1;
  color:#0b1020; background:rgba(255,255,255,0.9);
  box-shadow:0 2px 8px rgba(0,0,0,.15);
}
.badge--capacity{background:#e0f2fe;color:#0c4a6e;border:1px solid #bae6fd}
.badge--fourby4{background:#fef9c3;color:#854d0e;border:1px solid #fde68a}
@media (max-width:700px){.badge{top:8px;left:8px;font-size:11px;padding:5px 8px}}


/* === Brand alignment v5 === */
.brand{display:flex;align-items:center;gap:12px}
.brand__img{height:40px;width:auto}
.brand__text{display:flex;flex-direction:column;gap:2px;line-height:1.25}
.brand__text strong{display:block}
.brand__text span{opacity:.9}
