:root{color-scheme:dark;--base:#110e0e;--panel:#1d1515;--ink:#f4e8dd;--muted:#c1aca3;--accent:#ffad9f;--line:#493031}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(ellipse at 80% 0%,#331719 0,transparent 36rem),var(--base);color:var(--ink);font:16px/1.65 'Instrument Sans',-apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif}
a{color:var(--accent);text-underline-offset:.24em}
a:hover{color:#ffd3cb}
a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.shell{width:min(100% - 3rem,64rem);margin:auto}
header{border-bottom:1px solid var(--line)}
header .shell{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:72px}
.brand{display:flex;align-items:center;gap:.7rem;color:var(--ink);font-weight:750;text-decoration:none}
.brand img{border-radius:.55rem}
nav{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem}
nav a{text-decoration:none;color:var(--muted)}
nav a[aria-current]{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent)}
main{padding:clamp(3rem,9vw,6rem) 0 4rem}
.intro{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}
.hero-icon{width:clamp(76px,18vw,152px);height:auto;border-radius:22%;box-shadow:0 12px 40px #0008}
h1,h2{font-family:'Instrument Serif',Georgia,'Songti SC',serif;line-height:1.13}
h1{font-size:clamp(2.5rem,7vw,5.3rem);letter-spacing:-.043em;margin:0}
h2{font-size:clamp(1.55rem,3vw,2.2rem);margin:0 0 .7rem}
h3{font-size:1rem;margin:1.5rem 0 .35rem}
p{max-width:66ch;margin:.35rem 0 1rem}
.lead,.muted,footer{color:var(--muted)}
.lead{margin:1rem 0 0}
.contact{margin:1.4rem 0 0;display:inline-block;background:#f0aa9c;color:#251513;border-radius:5px;padding:.64rem 1rem;text-decoration:none;font-weight:700;overflow-wrap:anywhere}
.contact:hover{color:#251513;background:#ffd3cb}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}
.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:clamp(1.1rem,4vw,2rem)}
.card p:last-child{margin-bottom:0}
.policy{max-width:49rem}
.policy section{padding:1.8rem 0;border-bottom:1px solid var(--line)}
.policy section:last-child{border-bottom:0}
footer{border-top:1px solid var(--line);padding:1.2rem 0 2.6rem}
footer .shell{display:flex;gap:.6rem 1.5rem;flex-wrap:wrap;justify-content:space-between}
@media(max-width:620px){.shell{width:calc(100% - 2rem)}.grid{grid-template-columns:1fr}.intro{gap:1rem}header .shell{gap:.5rem}nav{gap:.5rem .75rem}.brand img{width:27px;height:27px}}
@media(max-width:370px){header .shell{flex-wrap:wrap;padding:.65rem 0}.intro{grid-template-columns:1fr}.hero-icon{grid-row:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
