
:root{--bg:#f7f4ef;--surface:#fffcf8;--ink:#2a2624;--muted:#6a625c;--accent:#7a3f48;--line:#e4d9cf}
*{box-sizing:border-box}
html{overflow-x:hidden;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Source Sans 3",system-ui,sans-serif;font-size:1.06rem;line-height:1.7;overflow-x:hidden}
img{max-width:100%;height:auto}
a{color:var(--accent)}
.banner{background:#3f2c2f;color:#f7f4ef;font-size:.88rem;padding:10px 16px;text-align:center}
.banner a{color:#fff}
.wrap{max-width:980px;margin:0 auto;padding:0 2.5rem;padding-left:calc(2.5rem + env(safe-area-inset-left, 0px));padding-right:calc(2.5rem + env(safe-area-inset-right, 0px))}
@media(min-width:760px){.wrap{padding:0 2rem;padding-left:calc(2rem + env(safe-area-inset-left, 0px));padding-right:calc(2rem + env(safe-area-inset-right, 0px))}}
header.site{padding-top:22px}
.top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
.portrait-sm{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:center 18%}
.brand-name{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.55rem;font-weight:600;line-height:1.1}
.brand-title{display:block;color:var(--muted);font-size:.88rem}
.cta{display:inline-flex;align-items:center;background:var(--accent);color:#fff;text-decoration:none;padding:10px 18px;border-radius:999px;font-weight:600;min-height:44px}
nav.main ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px 18px;padding:16px 0 12px;margin:18px 0 0;border-bottom:1px solid var(--line)}
nav.main a{text-decoration:none;color:var(--ink);font-weight:600;font-size:.92rem}
nav.main a[aria-current]{color:var(--accent)}
main{padding-top:28px;padding-bottom:56px}
.hero{display:grid;gap:28px;align-items:center;padding:8px 0 12px}
@media(min-width:760px){.hero{grid-template-columns:220px 1fr;gap:40px}}
.portrait-lg{width:180px;height:180px;border-radius:50%;object-fit:cover;object-position:center 18%;display:block;margin:0 auto;box-shadow:0 10px 30px rgba(60,40,40,.12)}
@media(min-width:760px){.portrait-lg{width:220px;height:220px;margin:0}}
.kicker{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:600;margin:0 0 8px}
h1{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(1.9rem,3.6vw,2.7rem);font-weight:600;margin:0 0 10px;line-height:1.12}
.phrase{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:1.28rem;color:var(--muted);margin:0 0 16px;max-width:36rem}
.sub{color:var(--muted);margin:0 0 18px}
.prose{max-width:42rem}
.prose h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.55rem;margin:1.6em 0 .5em}
.prose p,.prose li{color:var(--ink)}
.prose ul{margin:.4em 0 1.2em;padding-left:1.2rem}
.cabinet-photo{width:100%;max-width:42rem;height:auto;display:block;margin:8px 0 28px;border-radius:12px}
.doors{display:grid;gap:14px;padding:8px 0 28px}
@media(min-width:700px){.doors{grid-template-columns:1fr 1fr}}
.door{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px 22px;text-decoration:none;color:inherit;display:block}
.door h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.35rem;margin:0 0 8px;font-weight:600}
.door p{margin:0;color:var(--muted)}
.note{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px;font-size:.95rem;color:var(--muted);max-width:42rem}
.more{margin-top:28px;font-size:.95rem}
.more a{margin-right:14px}
footer{border-top:1px solid var(--line);padding:28px 0 48px;color:var(--muted);font-size:.92rem}
.fg{display:grid;gap:10px}
@media(min-width:700px){.fg{grid-template-columns:1.2fr 1fr 1fr}}
.foot-links{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:18px}
.foot-links a{color:var(--muted);text-decoration:none}
.foot-links a:hover{color:var(--accent)}
