
:root{
  --ink:#17212b;
  --muted:#5d6974;
  --paper:#f7f4ee;
  --white:#fff;
  --accent:#1f5f67;
  --accent-dark:#164950;
  --line:#d9ddd9;
  --max:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--white);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.65}
a{color:inherit}
.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}
header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{text-decoration:none;font-weight:750;letter-spacing:.04em;font-size:15px;line-height:1.15}
.brand small{display:block;margin-top:6px;font-size:10px;letter-spacing:.16em;color:var(--accent)}
nav{display:flex;align-items:center;gap:22px;font-size:14px}
nav a{text-decoration:none;color:#3d4851}
nav a:hover{color:var(--accent)}
.menu{display:none;border:0;background:none;font-size:22px}
.hero{background:linear-gradient(135deg,#f7f4ee 0%,#fff 65%);padding:86px 0 78px}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:70px}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.12;margin:0 0 20px}
h1{font-size:clamp(48px,6vw,76px);letter-spacing:-.03em}
h2{font-size:clamp(34px,4vw,48px)}
h3{font-size:23px}
.kicker,.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700;color:var(--accent)}
.rule{width:70px;height:2px;background:var(--accent);margin:24px 0}
.lead{font-size:19px;color:#3f4b55;max-width:650px}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 20px}
.btn{display:inline-block;padding:13px 19px;border:1px solid var(--accent);border-radius:4px;text-decoration:none;font-weight:700;font-size:14px}
.btn.primary{background:var(--accent);color:white}
.btn.primary:hover{background:var(--accent-dark)}
.btn.secondary{color:var(--accent);background:white}
.trust{display:flex;flex-wrap:wrap;gap:14px 24px;color:var(--muted);font-size:13px}
.portrait img{display:block;width:100%;max-height:650px;object-fit:cover;object-position:center top;border-radius:4px;box-shadow:0 18px 50px rgba(20,35,40,.14)}
section{padding:78px 0}
.specialties{background:#fff}
.specialty-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.specialty{padding:24px;border:1px solid var(--line);border-radius:6px;background:#fff}
.icon,.ci{color:var(--accent);font-size:23px;margin-bottom:14px}
.specialty p,.credential p,.card p,.prose p,.prose li{color:var(--muted)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.credentials{display:grid;gap:16px}
.credential{display:flex;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}
.credential .ci{min-width:28px}
.credential strong{display:block;margin-bottom:4px}
.contact{background:var(--paper)}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.card,.booking{background:white;border:1px solid var(--line);border-radius:6px;padding:28px}
.price{font:700 32px Georgia,serif;color:var(--accent);margin:10px 0 12px}
.booking{margin-top:18px}
.page-hero{background:var(--paper);padding:72px 0 62px}
.page-hero .lead{margin-bottom:0}
.prose{max-width:760px}
.prose ul{padding-left:22px}
footer{border-top:1px solid var(--line);padding:28px 0;background:#fff}
.foot{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:13px}
@media(max-width:1000px){
  nav{gap:12px;font-size:13px}
  .specialty-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .container{width:min(var(--max),calc(100% - 28px))}
  .nav{min-height:70px}
  nav{display:none}
  .menu{display:block}
  .hero{padding:52px 0}
  .hero-grid,.two,.cards{grid-template-columns:1fr;gap:35px}
  h1{font-size:48px}
  section{padding:56px 0}
  .specialty-grid{grid-template-columns:1fr}
  .foot{flex-direction:column}
}
