
:root{
  --bg:#fafafa;
  --text:#111;
  --muted:#666;
  --border:#e5e5e5;
  --brand:#111;
  --accent:#f59e0b;
  --card:#fff;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, Noto Sans, Apple Color Emoji, Segoe UI Emoji; line-height:1.5}
img{max-width:100%;display:block}
.container{max-width:1100px;margin:0 auto;padding:0 16px}
.site-header{position:sticky;top:0;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--border);z-index:10}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:12px 0}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}
.logo{width:38px;height:38px;border-radius:50%;border:1px solid var(--border);background:#fff}
.brand-name{font-weight:600}
.nav { display:flex; align-items:center; gap:12px; }
.menu-toggle { display:none; background:transparent; border:none; padding:8px; border-radius:10px; }
.menu-toggle:focus { outline:2px solid var(--border); outline-offset:2px; }
.menu-toggle .bar { display:block; width:22px; height:2px; background:#333; margin:5px 0; border-radius:2px; }
.nav-links { display:flex; align-items:center; gap:18px; }
.nav a{color:var(--text);text-decoration:none}
.nav a:hover{color:#444}
.cta-link{padding:8px 12px;border:1px solid var(--border);border-radius:999px}
.hero{background:linear-gradient(180deg,#fff, #fff 60%, #fef6e7)}
.hero-inner{display:grid;grid-template-columns:1fr;gap:24px;padding:56px 0}
@media (min-width: 860px){.hero-inner{grid-template-columns:1.15fr .85fr;align-items:center}}
.eyebrow{color:#854d0e;font-weight:600;letter-spacing:.02em}
h1{font-size:40px;line-height:1.15;margin:8px 0 0}
@media (min-width:860px){h1{font-size:56px}}
.underline{border-bottom:6px solid var(--accent);}
.subtext{color:var(--muted);max-width:60ch;margin-top:12px}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.btn{display:inline-block;text-decoration:none;padding:12px 18px;border-radius:999px;font-weight:600;border:1px solid var(--border);color:inherit}
.btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}
.btn.outline:hover{background:#f6f6f6}
.hero-logo{width:240px;height:240px;border-radius:50%;border:1px solid var(--border);background:#fff;padding:8px;margin:0 auto}
.section{padding:64px 0}
.section.alt{background:#f8f8f8}
.section h2{font-size:32px;margin:0}
.section-sub{color:var(--muted);margin-top:8px}
.cards{display:grid;grid-template-columns:1fr;gap:16px;margin-top:28px}
@media (min-width:860px){.cards{grid-template-columns:1fr 1fr}}
.card{background:var(--card);border:1px solid var(--border);border-radius:20px;padding:20px;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.card h3{margin:0 0 6px}
.card p{color:var(--muted);margin:0 0 8px}
.card ul{margin:10px 0 0 18px}
.highlights{display:grid;grid-template-columns:1fr;gap:12px;margin-top:18px}
@media (min-width:860px){.highlights{grid-template-columns:1fr 1fr 1fr}}
.pill{background:#fff;border:1px solid var(--border);border-radius:999px;padding:12px 16px;font-weight:500;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.contact{text-align:center}
.site-footer{border-top:1px solid var(--border);background:#fff}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0}
.footer-left{display:flex;align-items:center;gap:10px}
.footer-logo{width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:#fff}
.tagline{color:var(--muted)}

/* --- Mobile Polish --- */
@media (max-width: 600px) {
  body { font-size: 16px; line-height: 1.6; }
  h1 { font-size: 2rem; }
  h2 { font-size: 1.5rem; }
  .btn { padding: 14px 20px; font-size: 1rem; }
  .logo { width: 48px; height: 48px; }
  .hero-logo { width: 180px; height: 180px; }
  .section { padding: 48px 1rem; }
  .cards { gap: 24px; }
  .card { padding: 1.25rem; }
  .highlights { gap: 16px; }
}

/* --- Mobile Navigation --- */
@media (max-width: 860px){
  .nav { position:relative; }
  .menu-toggle { display:inline-block; }
  .nav-links { 
    position:absolute; right:0; top:52px; 
    background:#fff; border:1px solid var(--border); border-radius:14px;
    padding:12px; display:none; flex-direction:column; gap:10px;
    box-shadow:0 8px 24px rgba(0,0,0,.08);
  }
  .nav-links a { width:100%; text-align:left; padding:8px 10px; border-radius:10px; }
  .nav-links a:hover { background:#f6f6f6; }
  .nav-links.open { display:flex; }
}
