:root{--bg:#faf6ee;--ink:#2a1a1f;--mut:#6a5a5e;--card:#fffdf8;--line:#e6dccb;--wine:#7a1f3d;--wine2:#5c1630;--gold:#b98a2e;--gold2:#e0b95a}
@media(prefers-color-scheme:dark){:root{--bg:#17100f;--ink:#f2e9de;--mut:#b9a99f;--card:#211716;--line:#3a2a28;--wine:#e0788f;--wine2:#f0a0b2;--gold:#e0b95a;--gold2:#f0d080}}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.8 'Libre Franklin',system-ui,-apple-system,'Segoe UI',sans-serif;padding-bottom:70px}
h1,h2,h3{font-family:'Playfair Display',Georgia,'Times New Roman',serif;line-height:1.15;margin:0 0 .5em;font-weight:700}h1{font-size:clamp(2.2rem,6vw,4rem)}h2{font-size:clamp(1.5rem,3.2vw,2.1rem);margin-top:1.6em}h3{font-size:1.2rem}
a{color:var(--wine)}p{margin:0 0 1.15em}.w{max-width:1120px;margin:0 auto;padding:0 22px}
.mast{background:var(--wine2);color:#f6e8d8;text-align:center;padding:14px 0 0}.mast .logo{display:inline-block;font:700 1.9rem 'Playfair Display',Georgia,serif;color:#fff;text-decoration:none;letter-spacing:.04em}.mast .logo span{color:var(--gold2)}.mast small{display:block;font-size:.78rem;letter-spacing:.22em;color:#d9bfa8;text-transform:uppercase}
.mast nav{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;padding:12px 0;border-top:1px solid rgba(255,255,255,.14);margin-top:10px}.mast nav a{color:#f1dfcb;text-decoration:none;font-size:.9rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.mast nav a:hover{color:var(--gold2)}
.tel{background:var(--gold);color:#241508;text-align:center;font-weight:700;font-size:.95rem;padding:7px 10px}.tel a{color:#241508;text-decoration:none;margin:0 10px}
.hero{padding:64px 0 46px;text-align:center;border-bottom:1px solid var(--line);background:radial-gradient(700px 260px at 50% 0,rgba(185,138,46,.14),transparent)}
.hero .k{font-size:.8rem;letter-spacing:.3em;color:var(--gold);font-weight:700;text-transform:uppercase;margin-bottom:14px}.hero h1{max-width:18ch;margin:0 auto .45em}.hero h1 em{color:var(--wine);font-style:italic}
.hero .lead{max-width:62ch;margin:0 auto 1.2em;font-size:1.15rem;color:var(--mut)}.hero.s{padding:44px 0 36px}.hero.s h1{font-size:clamp(2rem,5vw,3.1rem);max-width:none}
.rule{width:90px;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold2));margin:18px auto;border-radius:2px}
.cta{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:22px 0 10px}.bt{display:inline-block;background:var(--wine);color:#fff!important;font-weight:700;padding:.85rem 1.5rem;border-radius:4px;text-decoration:none;border:2px solid var(--wine);transition:.15s}.bt:hover{background:var(--wine2);transform:translateY(-2px)}.bt.g{background:var(--gold);border-color:var(--gold);color:#241508!important}.bt.o{background:transparent;color:var(--wine)!important}
.dis{max-width:64ch;margin:14px auto 0;font-size:.88rem;color:var(--mut);font-style:italic}
.crumb{font-size:.86rem;color:var(--mut);padding:16px 0 0}.crumb a{color:var(--mut)}
.art{display:grid;gap:44px;grid-template-columns:minmax(0,1fr) 300px;align-items:start;padding:36px 0 50px}
.art .tx>p:first-of-type:first-letter{font:700 3.6rem/0.9 'Playfair Display',Georgia,serif;float:left;color:var(--wine);padding:6px 10px 0 0}
.art h2:first-child{margin-top:0}.art h2{padding-bottom:8px;border-bottom:2px solid var(--gold)}
.side{position:sticky;top:20px;background:var(--card);border:1px solid var(--line);border-top:4px solid var(--gold);padding:22px;font-size:.96rem}.side h3{font-size:1.1rem}.side a.n{display:block;font:700 1.35rem 'Playfair Display',Georgia,serif;color:var(--wine);text-decoration:none;margin:2px 0 10px}
.ck{list-style:none;margin:0 0 1.2em;padding:0}.ck li{padding:7px 0 7px 26px;position:relative;border-bottom:1px dotted var(--line)}.ck li:before{content:"◆";position:absolute;left:0;color:var(--gold);font-size:.75rem;top:11px}
.qa{border:1px solid var(--line);background:var(--card);margin-bottom:12px;padding:6px 20px}.qa summary{cursor:pointer;font-weight:700;padding:10px 0}.qa p{color:var(--mut)}
.pb{background:var(--card);border-left:4px solid var(--wine);padding:14px 20px;margin:0 0 14px}.pb b{display:block;color:var(--wine)}.pb p{margin:4px 0 0;color:var(--mut)}
.sec{padding:46px 0}.sec.alt{background:var(--card);border-block:1px solid var(--line)}
.dg{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.dg a,.rl a{display:block;background:var(--card);border:1px solid var(--line);padding:11px 15px;text-decoration:none;color:var(--ink);transition:.15s}.dg a:hover,.rl a:hover{border-color:var(--gold);transform:translateY(-2px)}.dg b{display:block;font-family:'Playfair Display',serif}.dg span{font-size:.82rem;color:var(--mut)}
.rl{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.rl b{display:block;font-family:'Playfair Display',serif}.rl span{font-size:.9rem;color:var(--mut)}
.yk{font-family:'Playfair Display',serif;font-size:1.3rem;margin:26px 0 12px;color:var(--wine);border-bottom:1px solid var(--line);padding-bottom:4px}
.chp{display:flex;flex-wrap:wrap;gap:8px}.chp a{background:var(--card);border:1px solid var(--line);padding:5px 14px;font-size:.92rem;text-decoration:none;color:var(--ink)}.chp a:hover{border-color:var(--gold);color:var(--wine)}
footer{background:var(--wine2);color:#e6cfbd;padding:44px 0 26px;font-size:.94rem}footer h4{font-family:'Playfair Display',serif;color:#fff;margin:0 0 8px}footer a{color:#fff;text-decoration:none}.fg{display:grid;gap:26px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}footer ul{list-style:none;margin:0;padding:0;line-height:2}.fd{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:26px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:.85rem}.fd a{color:#d9bfa8}.fine{margin-top:20px;font-size:.82rem;opacity:.85}
.fx{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex}.fx a{flex:1;text-align:center;padding:15px 6px;font-weight:700;text-decoration:none;color:#fff;font-size:.9rem}.fx .a{background:var(--wine)}.fx .a2{background:var(--wine2)}.fx .b{background:#1f8f4e;flex:.45}
@media(min-width:900px){.fx{display:none}body{padding-bottom:0}}@media(max-width:900px){.art{grid-template-columns:1fr}.side{position:static}}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
