:root {
  color-scheme: light;
  --ink: #222b28;
  --ink-muted: #5c645e;
  --gold: #b89a5a;
  --gold-light: #d4ba7a;
  --cream: #f7f5f0;
  --hairline: #e5e0d6;
  --green: #20302b;
  --serif: Georgia, "Times New Roman", serif;
  --sans: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background: var(--cream); color:var(--ink); font-family:var(--sans); font-synthesis:none; -webkit-font-smoothing:antialiased; }
a { color:inherit; }
.skip-link { position:absolute; z-index:10; top:-60px; left:16px; padding:12px; background:#fff; color:#111; }
.skip-link:focus { top:12px; }
.page { min-height:100svh; position:relative; padding:clamp(18px,4.8vw,64px) 20px; display:flex; align-items:center; justify-content:center; overflow:hidden; isolation:isolate; }
.ambient { position:absolute; pointer-events:none; z-index:-1; border-radius:50%; filter:blur(1px); }
.ambient-one { width:68vw; height:68vw; min-width:450px; min-height:450px; left:-30%; top:-55%; border:1px solid rgba(184,154,90,.18); }
.ambient-two { width:46vw; height:46vw; min-width:310px; min-height:310px; bottom:-40%; right:-18%; border:1px solid rgba(184,154,90,.15); }
.profile-card { width:min(100%,1032px); min-height:670px; display:grid; grid-template-columns: 42% 58%; background:#fffdf9; border:1px solid rgba(65,64,58,.09); border-radius:7px; overflow:hidden; box-shadow:0 30px 100px rgba(33,39,35,.11), 0 3px 12px rgba(33,39,35,.04); }
.portrait-panel { position:relative; overflow:hidden; min-height:670px; background:#22302c; }
.portrait { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:51% 39%; }
.portrait-shading { position:absolute; inset:0; background:linear-gradient(180deg,rgba(15,23,22,.74) 0%,rgba(20,25,23,.31) 25%,transparent 49%,rgba(12,19,17,.07) 70%,rgba(10,16,14,.67) 100%); }
.brand { position:absolute; top:30px; left:33px; width:116px; height:auto; filter:drop-shadow(0 3px 6px rgba(0,0,0,.18)); }
.portrait-foot { position:absolute; bottom:32px; left:36px; right:26px; color:#f7f3e6; font-size:10px; letter-spacing:.26em; display:flex; gap:15px; align-items:center; white-space:nowrap; text-shadow:0 1px 6px rgba(0,0,0,.3); }
.gold-line { width:28px; height:1px; background:var(--gold-light); }
.content-panel { padding:35px clamp(30px,5vw,67px) 29px; display:flex; flex-direction:column; justify-content:space-between; }
.topline { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:10px; line-height:1.4; letter-spacing:.15em; font-weight:600; }
.eyebrow { display:flex; align-items:center; gap:9px; }
.eyebrow-dot { width:6px; height:6px; border-radius:50%; display:inline-block; background:var(--gold); flex:none; }
.topline-location { color:#a2a39a; font-weight:500; }
.intro { padding-top:45px; }
.section-kicker { color:#ab8c50; margin:0 0 16px; letter-spacing:.14em; font-size:10px; font-weight:600; }
h1 { font:normal clamp(34px,4.2vw,47px)/1.13 var(--serif); letter-spacing:-.048em; margin:0 0 16px; color:#26312d; }
h1 span { font-style:italic; font-weight:normal; color:#aa8b50; }
.credentials { margin:0; color:#626962; font-size:11.5px; line-height:1.8; font-weight:500; letter-spacing:.005em; }
.credential-divider { padding:0 3px; color:#b4b5a9; }
.fine-rule { background:linear-gradient(90deg,#b99c61 0 36px,#e9e4db 36px 100%); height:1px; margin:24px 0 21px; }
.description { margin:0; color:#515b54; font-size:15px; line-height:1.72; letter-spacing:-.015em; max-width:390px; }
.links { display:grid; gap:11px; padding:31px 0 37px; }
.link { min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:0 19px; text-decoration:none; border-radius:3px; transition:transform .22s ease,background-color .22s ease,box-shadow .22s ease,border-color .22s ease; font-size:13px; letter-spacing:.004em; font-weight:550; }
.link:focus-visible { outline:3px solid #b89a5a; outline-offset:3px; }
.link:hover { transform:translateY(-2px); }
.link-start { display:flex; align-items:center; gap:13px; min-width:0; }
.link-icon { width:30px; height:30px; border-radius:50%; display:grid; place-items:center; color:#ede0bb; border:1px solid rgba(213,186,122,.53); }
.link-icon svg { width:17px; height:17px; }
.link-primary { background:var(--green); border:1px solid var(--green); color:#f6f4ec; min-height:64px; box-shadow:0 6px 17px rgba(35,54,45,.11); }
.link-primary:hover { background:#30433a; box-shadow:0 10px 21px rgba(35,54,45,.18); }
.arrow-icon { height:18px; width:18px; flex:none; opacity:.82; transition:transform .22s ease; }
.link:hover .arrow-icon { transform:translateX(3px); }
.link-secondary { border:1px solid #e0ddd6; background:transparent; color:#313b35; }
.link-secondary:hover { border-color:#bea977; background:#fbf9f4; }
.secondary-number { font:normal 12px var(--serif); color:#b19258; width:22px; display:inline-block; flex:none; }
.content-footer { padding-top:15px; border-top:1px solid #e9e5dc; }
.footer-location { display:flex; align-items:start; gap:8px; color:#606b61; font-size:10.5px; line-height:1.6; }
.footer-location svg { width:13px; height:13px; flex:none; margin-top:1px; color:#ad8f53; }
.content-footer p { margin:7px 0 0 21px; color:#a7aaa2; font-size:10px; letter-spacing:.01em; }
@media(max-width:850px) {
 .page { padding:22px 14px; align-items:flex-start; }
 .profile-card { width:min(100%,520px); min-height:0; grid-template-columns:1fr; }
 .portrait-panel { height:244px; min-height:0; }
 .portrait { object-position:50% 31%; }
 .portrait-shading { background:linear-gradient(90deg,rgba(10,17,16,.67),rgba(12,22,17,.08) 49%,transparent 88%),linear-gradient(0deg,rgba(10,17,16,.6),transparent 40%); }
 .brand { width:92px; top:18px; left:20px; }
 .portrait-foot { bottom:20px; left:22px; font-size:9px; letter-spacing:.2em; }
 .content-panel { padding:22px clamp(22px,6vw,35px) 24px; }
 .intro { padding-top:24px; }
 h1 { font-size:38px; margin-bottom:10px; }
 .section-kicker { margin-bottom:9px; font-size:9px; }
 .credentials { font-size:10.5px; }
 .fine-rule { margin:16px 0 13px; }
 .description { font-size:14px; line-height:1.6; }
 .links { padding:22px 0 25px; gap:9px; }
 .link { min-height:55px; font-size:13px; }
 .link-primary { min-height:59px; }
 .topline { font-size:9px; }
}
@media(max-width:430px) {
 .page { padding:0; background:#fffdf9; }
 .profile-card { border:0; box-shadow:none; border-radius:0; }
 .portrait-panel { height:226px; }
 .brand { width:82px; left:18px; top:13px; }
 .portrait-foot { bottom:16px; left:20px; }
 .content-panel { padding:22px 24px 28px; }
 .intro { padding-top:20px; }
 h1 { font-size:37px; }
 .credentials { font-size:10.3px; }
 .link { padding-left:15px; padding-right:16px; }
}
@media(max-width:350px) {
 .portrait-panel { height:205px; }
 h1 { font-size:33px; }
 .content-panel { padding-inline:17px; }
 .credentials { font-size:9.5px; }
 .link { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { html {scroll-behavior:auto;} .link,.arrow-icon {transition:none;} .link:hover {transform:none;} }
