:root{
  --black:#111113;
  --charcoal:#1b1b1e;
  --paper:#f7f5f1;
  --white:#fff;
  --ink:#242428;
  --muted:#77736d;
  --gold:#b88943;
  --line:#ded9d0;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.site-header{position:sticky;top:0;z-index:20;height:74px;padding:0 max(20px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;background:rgba(17,17,19,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08);color:white}
.brand{display:flex;align-items:center;gap:14px;font-size:.9rem;letter-spacing:.14em;text-transform:uppercase;font-weight:760;white-space:nowrap}.brand img{width:66px;height:66px;border-radius:50%;object-fit:cover}.site-nav{display:flex;align-items:center;gap:24px;font-size:.9rem}.site-nav a{opacity:.84}.site-nav a:hover{opacity:1}.nav-cta{border:1px solid var(--gold);padding:9px 14px;border-radius:999px}.menu-toggle{display:none;background:transparent;color:white;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:8px 12px}
.hero{min-height:720px;background:radial-gradient(circle at 82% 22%,#38383e 0,#1e1e22 25%,#111113 58%);color:white;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:30px;padding:90px max(24px,calc((100vw - var(--max))/2));overflow:hidden}.hero-inner{max-width:720px;position:relative;z-index:2}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.2em;font-size:.76rem;font-weight:750;color:var(--gold);margin:0 0 18px}.hero h1{font-size:clamp(3.4rem,8vw,7.5rem);line-height:.9;letter-spacing:-.055em;margin:0 0 28px;font-weight:760}.hero h1 span{color:#b8b8bc}.hero-copy{font-size:clamp(1.1rem,2vw,1.35rem);max-width:650px;color:#d2d2d6}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:999px;font-weight:700;font-size:.92rem;transition:.2s transform,.2s opacity}.button:hover{transform:translateY(-1px)}.primary{background:var(--gold);color:#111}.ghost{border:1px solid rgba(255,255,255,.3);color:white}.hero-mark{display:flex;justify-content:flex-end;opacity:.9}.hero-mark img{width:min(440px,44vw);border-radius:50%;box-shadow:0 30px 90px rgba(0,0,0,.4)}
.section-pad{padding:100px max(24px,calc((100vw - var(--max))/2))}.intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}.intro h2,.section-heading h2,.visit h2,.cta h2{font-size:clamp(2.6rem,5vw,5rem);line-height:1;letter-spacing:-.04em;margin:0}.intro p{font-size:1.18rem;margin:0;max-width:650px;color:#55514b}.dark-section{background:var(--black);color:white}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:46px}.section-kicker.light{color:#cda35f}.section-note{margin:0;color:#9a9a9e;font-size:.95rem}.stylist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.stylist-card{background:#1a1a1d;border:1px solid #2a2a2e;border-radius:24px;overflow:hidden}.portrait-wrap{height:520px;background:#242428;overflow:hidden}.portrait{width:100%;height:100%;object-fit:cover}.portrait.rodney{object-position:center 38%}.portrait.peter{object-position:center 18%}.portrait.dennis{object-position:left center}.portrait.sydney{object-position:center 28%}.card-body{padding:30px}.name-row{display:flex;gap:20px;justify-content:space-between;align-items:flex-start}.name-row h3{font-size:2rem;line-height:1.05;margin:0 0 8px;letter-spacing:-.03em}.name-row p{margin:0;color:#aaa;font-size:.78rem;letter-spacing:.11em;text-transform:uppercase}.mini-logo{width:68px;height:68px;border-radius:50%;object-fit:cover;flex:0 0 auto}.card-body>p{color:#c9c9cc}.known{border-top:1px solid #333337;margin-top:22px;padding-top:18px;color:#c9c9cc;font-size:.9rem}.known span{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:800;margin-bottom:7px}
.light-bg{color:var(--ink)}.dark-note{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service{border-top:2px solid var(--gold);padding:20px 4px}.service span{color:var(--gold);font-size:.75rem;letter-spacing:.16em}.service h3{font-size:1.5rem;margin:8px 0}.service p{color:#605c56;margin:0}.visit-grid{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:50px}.address{font-size:1.35rem;color:#ddd}.muted{color:#8f8f94}.visit-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}.light-ghost{border-color:#555}.cta{text-align:center}.cta p{max-width:560px;margin:18px auto 28px;color:#5b5751}.cta .button{color:#111}
footer{padding:28px max(24px,calc((100vw - var(--max))/2));display:flex;justify-content:space-between;gap:20px;background:#0d0d0f;color:#929297;font-size:.85rem;border-top:1px solid #222}
@media (max-width:900px){.site-nav{display:none;position:absolute;left:16px;right:16px;top:68px;background:#171719;padding:18px;border:1px solid #2a2a2e;border-radius:16px;flex-direction:column;align-items:stretch}.site-nav.open{display:flex}.menu-toggle{display:block}.hero{grid-template-columns:1fr;min-height:auto;padding-top:90px;padding-bottom:70px}.hero-mark{display:none}.intro-grid{grid-template-columns:1fr;gap:25px}.stylist-grid{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.visit-grid{grid-template-columns:1fr}.visit-actions{justify-content:flex-start}}
@media (max-width:600px){.site-header{height:88px}.brand{gap:12px;font-size:.82rem;letter-spacing:.11em}.brand img{width:72px;height:72px}.brand span{display:block;max-width:150px;line-height:1.15}.menu-toggle{padding:9px 13px}.hero h1{font-size:clamp(3rem,16vw,5rem)}.section-pad{padding:72px 20px}.portrait-wrap{height:410px}.card-body{padding:24px}.name-row h3{font-size:1.65rem}.mini-logo{width:58px;height:58px}.service-grid{grid-template-columns:1fr}.section-heading{align-items:flex-start;flex-direction:column}.visit-actions,.hero-actions{flex-direction:column;align-items:stretch}.button{width:100%}footer{flex-direction:column}}


/* v4 — salon-first hero */
.salon-hero{
  min-height:640px;
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center;
  padding:78px 24px 84px;
  background:radial-gradient(circle at 50% 18%,#29292d 0,#1a1a1d 34%,#111113 72%);
}
.salon-hero-inner{max-width:760px;margin:0 auto}
.hero-logo{
  width:168px;
  height:168px;
  border-radius:50%;
  object-fit:cover;
  margin:0 auto 22px;
  box-shadow:0 22px 60px rgba(0,0,0,.32);
}
.salon-label{
  margin:0 0 14px;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.78rem;
  font-weight:760;
}
.salon-hero h1{
  margin:0;
  font-size:clamp(2.9rem,7vw,5.6rem);
  line-height:.98;
  letter-spacing:-.04em;
  font-weight:620;
  color:#fff;
}
.service-line{
  margin:20px 0 0;
  color:#efefef;
  font-size:clamp(.95rem,2vw,1.08rem);
  letter-spacing:.06em;
}
.salon-hero .hero-copy{
  margin:18px auto 0;
  max-width:620px;
  color:#bfc0c4;
  font-size:1.08rem;
  line-height:1.7;
}
.salon-hero .hero-actions{justify-content:center;margin-top:30px}

@media (max-width:600px){
  .site-header{height:76px}
  .brand span{display:none}
  .brand img{width:58px;height:58px}
  .salon-hero{min-height:auto;padding:64px 20px 70px}
  .hero-logo{width:150px;height:150px;margin-bottom:20px}
  .salon-label{font-size:.7rem;letter-spacing:.14em}
  .salon-hero h1{font-size:clamp(2.55rem,12vw,4rem);font-weight:610}
  .service-line{font-size:.92rem;line-height:1.7}
  .salon-hero .hero-copy{font-size:1rem;line-height:1.65}
}


/* v6 — stylist social links */
.stylist-links{margin-top:18px}
.social-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #46464b;border-radius:999px;padding:10px 14px;color:#fff;font-size:.84rem;font-weight:700;transition:.2s border-color,.2s transform,.2s background}
.social-button:hover{border-color:var(--gold);background:#222226;transform:translateY(-1px)}
@media (max-width:600px){.social-button{width:100%;font-size:.82rem}}
