:root{
  --brand:#0ea5e9;
  --ink:#0b1220;
  --muted:#5b667a;
  --card:#ffffff;
  --bg:#f7fafc;
  --hero-overlay: linear-gradient(to bottom, rgba(255,255,255,.86), rgba(255,255,255,.78) 40%, rgba(255,255,255,.70));
  --hero-image: url('images/hero-day.jpg');
}
@media (prefers-color-scheme: dark){
  :root{
    --ink:#e5e7eb;
    --muted:#a1a9b8;
    --card:#111827;
    --bg:#0b1220;
    --hero-overlay: linear-gradient(to bottom, rgba(0,0,0,.55), rgba(0,0,0,.55));
    --hero-image: url('images/hero-night.jpg');
  }
}
[data-theme="light"]{
  --ink:#0b1220;
  --muted:#5b667a;
  --card:#ffffff;
  --bg:#f7fafc;
  --hero-overlay: linear-gradient(to bottom, rgba(255,255,255,.86), rgba(255,255,255,.78) 40%, rgba(255,255,255,.70));
  --hero-image: url('images/hero-day.jpg');
}
[data-theme="dark"]{
  --ink:#e5e7eb;
  --muted:#a1a9b8;
  --card:#111827;
  --bg:#0b1220;
  --hero-overlay: linear-gradient(to bottom, rgba(0,0,0,.55), rgba(0,0,0,.55));
  --hero-image: url('images/hero-night.jpg');
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;scroll-behavior:smooth;background:var(--bg);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji"}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
header{position:sticky;top:0;z-index:1000;background:color-mix(in srgb, var(--bg) 90%, #fff 10%);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid color-mix(in srgb, var(--ink) 12%, transparent)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px}
.nav .right{display:flex;gap:16px;align-items:center;justify-content:flex-end}
.nav a{font-weight:600;color:var(--ink)}
.nav a.btn{padding:10px 16px;border:1px solid var(--brand);border-radius:999px}
.logo{display:flex;align-items:center;gap:12px}
.logo img{height:40px}
.logo .name{font-weight:800}
.theme-toggle{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:transparent;color:var(--ink);padding:8px 12px;border-radius:999px;cursor:pointer}
.hero{min-height:78vh;position:relative;display:flex;align-items:center;background-attachment:fixed;background-position:center;background-size:cover;background-repeat:no-repeat;background-image:var(--hero-image)}
.hero::before{content:"";position:absolute;inset:0;background:var(--hero-overlay)}
.hero .inner{position:relative}
h1{font-size:clamp(28px,5vw,46px);line-height:1.1;margin:.3em 0}
.lead{font-size:clamp(16px,2vw,19px);color:var(--muted);max-width:900px}
.cta{margin-top:20px;display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:999px;background:var(--brand);color:white;border:none;font-weight:700}
.btn.outline{background:transparent;color:var(--brand);border:1px solid var(--brand)}
section{padding:72px 0}
.section-title{font-size:32px;margin:0 0 8px}
.section-sub{color:var(--muted);margin:0 0 24px}
.grid{display:grid;gap:20px}
.cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.card{background:var(--card);border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);border-radius:16px;padding:18px;box-shadow:0 6px 24px rgba(0,0,0,.04)}
.card h3{margin:8px 0 6px;font-size:18px}
.small{font-size:14px;color:var(--muted)}
.logo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:18px;align-items:center}
.logo-tile{background:var(--card);border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);border-radius:12px;display:flex;align-items:center;justify-content:center;height:72px;padding:8px}
.logo-tile img{max-width:140px;max-height:48px;object-fit:contain}
.logo-tile .textbadge{font-weight:700}
.team{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.member{display:flex;flex-direction:column;align-items:center;text-align:center;padding:18px;border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);border-radius:16px;background:var(--card)}
.member img{width:120px;height:120px;border-radius:999px;object-fit:cover;border:3px solid color-mix(in srgb, var(--ink) 12%, transparent)}
.member .role{color:var(--muted);font-size:14px}
.testimonials{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.quote{background:var(--card);border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);border-radius:16px;padding:18px}
.quote p{margin:8px 0 0}
#ph-map{width:100%;height:520px;border-radius:16px;border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);overflow:hidden}
footer{background:#0b1220;color:#cbd5e1;padding:28px 0;margin-top:60px}
footer a{color:#93c5fd}
.address{white-space:pre-line}
.badge{display:inline-block;background:#0ea5e9;color:white;padding:4px 10px;border-radius:999px;font-size:12px}
@media (max-width: 640px){.nav .right a{font-size:14px}}