
:root{
  --burgundy:#6f0f1f;
  --burgundy-dark:#5c0c19;
  --gold:#c59a55;
  --cream:#fbf7f1;
  --ink:#2f2928;
  --muted:#6c6460;
  --line:#eadfce;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.48}
a{color:inherit}
.wrap{width:min(1180px,calc(100% - 48px));margin:0 auto}
.topbar{background:var(--burgundy);border-bottom:1px solid rgba(197,154,85,.85);color:#fff}
.topbar .wrap{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#d6ad68}
.brand-r{font-family:Georgia,serif;font-size:54px;line-height:.8}
.brand-name{font-family:Georgia,serif;font-size:23px;letter-spacing:.04em}
.topnav a{color:#fff;text-decoration:none;font-size:14px}
.topnav a:hover{text-decoration:underline}

.hero{background:var(--burgundy);color:#fff}
.hero-grid{display:grid;grid-template-columns:44% 56%;min-height:520px}
.hero-copy{padding:40px max(36px,calc((100vw - 1180px)/2)) 40px max(36px,calc((100vw - 1180px)/2));padding-right:44px;align-self:stretch}
.eyebrow{font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.hero h1,.section-title,.personal h2,.contact h2,.legal h1{font-family:Georgia,serif;font-weight:400}
.hero h1{font-size:56px;line-height:1.05;margin:12px 0 20px;max-width:580px}
.hero h1 em{font-style:normal;color:var(--gold)}
.gold-rule{width:42px;height:2px;background:var(--gold);margin:0 0 22px}
.hero p{font-size:18px;max-width:540px;margin:0 0 18px}
.location{display:flex;gap:10px;align-items:center;margin-top:22px;font-weight:700}
.pin{width:22px;height:22px;border:2px solid white;border-radius:50% 50% 50% 0;transform:rotate(-45deg);position:relative}
.pin:after{content:"";width:6px;height:6px;background:white;border-radius:50%;position:absolute;left:6px;top:6px}
.hero-image{background:url('assets/hero.jpg') center center/cover no-repeat;min-height:520px}

.section{padding:18px 0 28px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.photo-card img{display:block;width:100%;height:100%;object-fit:cover}
.kicker{color:var(--gold);text-transform:uppercase;letter-spacing:.04em;font-size:14px;margin-bottom:8px}
.section-title{color:var(--burgundy);font-size:42px;line-height:1.05;margin:0 0 14px}
.copy p{font-size:17px;margin:0 0 14px}
.copy strong{font-weight:700}

.values{background:var(--cream);padding:18px 0 34px}
.values .section-title{max-width:700px}
.tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:18px}
.tile{background:#fff;border:1px solid var(--line);padding:18px 16px 20px;text-align:center;min-height:205px}
.icon{font-size:36px;color:var(--gold);line-height:1;margin-bottom:10px}
.tile h3{font-family:Georgia,serif;color:var(--burgundy);font-size:22px;font-weight:400;margin:0 0 10px}
.tile p{font-size:15px;margin:0}

.personal{padding:0}
.personal-grid{display:grid;grid-template-columns:58% 42%;align-items:stretch}
.personal-copy{padding:28px max(36px,calc((100vw - 1180px)/2)) 28px max(36px,calc((100vw - 1180px)/2));padding-right:42px}
.personal h2{font-size:42px;color:var(--burgundy);font-weight:400;margin:0 0 10px}
.personal p{font-size:16px;margin:0 0 12px}
.signature{margin-top:14px}
.signature strong{display:block;color:var(--burgundy);font-size:20px}
.portrait{background:url('assets/portrait.jpg') center center/cover no-repeat;min-height:440px}

.contact{background:var(--burgundy);color:#fff;padding:28px 0;border-top:1px solid rgba(197,154,85,.65);border-bottom:1px solid rgba(197,154,85,.65)}
.contact-grid{display:grid;grid-template-columns:1.35fr .9fr;gap:46px;align-items:center}
.contact h2{font-size:36px;font-weight:400;margin:0 0 8px}
.contact p{margin:0;font-size:16px}
.phonebox{border-left:1px solid rgba(197,154,85,.75);padding-left:34px}
.phone{font-family:Georgia,serif;font-size:38px;letter-spacing:.01em;white-space:nowrap}
.phone-meta{font-size:14px;margin-top:2px}
.cta{display:inline-block;background:var(--gold);color:#fff;text-decoration:none;font-weight:700;padding:14px 20px;border-radius:2px;margin-top:15px}
.cta:hover{filter:brightness(.96)}

.footer{background:var(--burgundy-dark);color:#fff;padding:22px 0}
.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:24px}
.footer-brand{font-family:Georgia,serif;color:#d6ad68;font-size:24px}
.footer nav{display:flex;gap:26px;flex-wrap:wrap}
.footer a{text-decoration:none;font-size:13px}
.footer a:hover{text-decoration:underline}

.legal{padding:44px 0 70px}
.legal h1{color:var(--burgundy);font-size:44px;font-weight:400;margin:0 0 24px}
.legal h2{font-family:Georgia,serif;color:var(--burgundy);font-weight:400;margin-top:28px}
.notice{background:#fff7e9;border:1px solid #ead4ae;padding:14px 16px;margin-bottom:28px}
.legal p,.legal li{font-size:16px}
.back{display:inline-block;margin-top:24px;color:var(--burgundy);font-weight:700}

@media(max-width:900px){
  .wrap{width:min(100% - 32px,760px)}
  .topbar .wrap{min-height:64px}
  .brand-r{font-size:46px}.brand-name{font-size:20px}
  .hero-grid,.two-col,.personal-grid,.contact-grid{grid-template-columns:1fr}
  .hero-copy{padding:34px 24px}
  .hero h1{font-size:44px}
  .hero-image{min-height:390px}
  .two-col{gap:20px}
  .section{padding:22px 0}
  .tiles{grid-template-columns:1fr 1fr}
  .personal-copy{padding:30px 24px}
  .portrait{min-height:430px}
  .phonebox{border-left:0;border-top:1px solid rgba(197,154,85,.75);padding-left:0;padding-top:20px}
  .footer-grid{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
  .wrap{width:min(100% - 24px,520px)}
  .topnav{display:block}
  .hero h1{font-size:39px}
  .section-title,.personal h2{font-size:34px}
  .hero p,.copy p{font-size:16px}
  .hero-image{min-height:300px}
  .tiles{grid-template-columns:1fr}
  .tile{min-height:auto}
  .phone{font-size:31px}
  .contact h2{font-size:31px}
  .footer nav{gap:16px}
}
