:root{--bg:#ffffff;--ink:#14171c;--brand:#6b3a4a;--accent:#a3596f;--muted:color-mix(in oklab,var(--ink) 68%,var(--bg));--line:color-mix(in oklab,var(--ink) 14%,var(--bg))}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:400 1.0625rem/1.65 'Manrope',system-ui,sans-serif}
::selection{background:color-mix(in oklab,var(--brand) 30%,transparent)}a{color:var(--brand);text-underline-offset:.2em}a:hover{color:var(--accent)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}img{max-width:100%;height:auto;display:block}
h1,h2,h3{font-family:'Manrope',system-ui,sans-serif;line-height:1.15;letter-spacing:-.01em;text-wrap:balance;margin:2.2em 0 .6em}h1{font-size:clamp(2.2rem,5vw,4rem);margin-top:0}h2{font-size:clamp(1.5rem,3vw,2.2rem)}h3{font-size:1.2rem}
p,.list{max-width:68ch}.list{padding-left:1.2em}.list li{margin:.3em 0}
.wrap{width:min(1120px,92vw);margin:auto}
header.site{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.1rem 0}
.brand{display:flex;align-items:center;gap:.7rem;font:700 1.15rem 'Manrope',system-ui,sans-serif;color:var(--ink);text-decoration:none}.brand img{height:42px;width:auto}
nav.main{display:flex;gap:1.2rem;flex-wrap:wrap}nav.main a{color:var(--ink);text-decoration:none;font-weight:600;font-size:.95rem;padding:.3rem 0;border-bottom:2px solid transparent}nav.main a:hover,nav.main a[aria-current]{border-color:var(--brand)}
.hero{padding:4rem 0 3rem}.hero p.lede{font-size:1.25rem;color:var(--muted)}
.btn{display:inline-block;background:var(--brand);color:#fff;padding:.8rem 1.4rem;border-radius:6px;text-decoration:none;font-weight:600;margin-top:1rem;transition:background .2s}.btn:hover{background:var(--accent);color:#fff}
.grp{margin:1.4rem 0}.contact{display:grid;gap:.6rem;margin:1rem 0}.crow{display:grid;grid-template-columns:9rem 1fr;gap:1rem}dt{font-weight:600}dd{margin:0}
figure{margin:2rem 0}figure img{border-radius:8px}
footer.site{margin-top:5rem;padding:2.5rem 0;border-top:1px solid var(--line);font-size:.95rem;color:var(--muted)}footer.site .wrap{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
main{padding-bottom:2rem}
@media(max-width:640px){.crow{grid-template-columns:1fr;gap:0}.hero{padding:2.5rem 0 1.5rem}}
header.site{position:sticky;top:0}.top{background:var(--ink)}.top .brand,.top nav.main a{color:#fff}.top .brand img{background:#fff;padding:4px 8px;border-radius:6px}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}.hero h1{font-weight:800;letter-spacing:-.03em}.hero img{border-radius:14px;box-shadow:0 18px 40px -18px rgba(0,0,0,.35);aspect-ratio:4/3;object-fit:cover;width:100%}
.sec{padding:2rem 0;border-top:1px solid var(--line)}.sec:nth-child(even){background:color-mix(in oklab,var(--brand) 5%,var(--bg));padding:2rem 4vw;margin:0 -4vw}
@media(max-width:820px){.hero{grid-template-columns:1fr}}