:root { color-scheme: light; --accent:#b8430e; --accent-soft:#f8ece6; --ink:#111821; --ink-2:#0c131a; --muted:#56616b; --line:#e2e6ea; --tint:#f5f7f9; --sans: ui-sans-serif, system-ui, sans-serif; --r:12px; }
* { box-sizing: border-box; }
body { margin:0; background:#fff; color:var(--ink); font:17px/1.65 var(--sans); padding-bottom:76px; }
h1,h2,h3,.brand { font-weight:720; letter-spacing:-.025em; line-height:1.14; margin:0 0 12px; }
h1 { font-size:clamp(32px,5vw,52px); }
h2 { font-size:clamp(24px,3vw,32px); margin-top:8px; }
h3 { font-size:19px; }
p { margin:0 0 14px; }
a { color:inherit; }
main a:not(.phone) { color:var(--accent); }
ul { padding-left:22px; margin:0 0 16px; }
.wrap { width:min(860px, calc(100% - 40px)); margin:0 auto; }
section { padding:28px 0; }
.band { background:var(--ink-2); color:#cfd8df; font-size:13px; }
.band .wrap { display:flex; justify-content:space-between; padding:8px 0; }
.band a { color:#fff; font-weight:650; text-decoration:none; }
.top { position:sticky; top:0; z-index:4; background:#fffc; border-bottom:1px solid var(--line); backdrop-filter:blur(8px); }
.top .wrap { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 0; }
.brand { display:flex; align-items:center; gap:10px; text-decoration:none; font-size:18px; margin:0; }
.mark { width:40px; height:40px; display:grid; place-items:center; background:var(--accent); color:#fff; font-weight:760; border-radius:10px; }
a.phone { display:inline-flex; align-items:center; justify-content:center; min-height:48px; background:var(--accent); color:#fff; text-decoration:none; padding:0 18px; font-weight:700; border-radius:10px; }
.mast { background:color-mix(in srgb, var(--accent) 22%, #0a1016); color:#fff; margin:0 calc(50% - 50vw) 28px; padding:42px max(20px, calc(50vw - 430px)) 36px; border-bottom:4px solid var(--accent); }
.mast .kicker { letter-spacing:.14em; text-transform:uppercase; font-size:12px; color:#b9c6d0; margin:0 0 10px; }
.crumbs { font-size:14px; color:var(--muted); margin:0 0 16px; }
.crumbs a { color:var(--muted); }
.place { background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:14px 18px 16px; margin:0 0 12px; }
.chips { display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 0; padding:0; list-style:none; }
.chips li { margin:0; }
.chips span { display:inline-block; background:var(--tint); border:1px solid var(--line); padding:4px 10px; border-radius:999px; font-size:14px; }
footer { margin-top:48px; padding:40px 0; color:#b9c6d0; background:var(--ink-2); font-size:15px; }
footer a { color:#fff; text-decoration:none; }
.disclosure { font-size:14px; color:#a9b7c2; margin-top:18px; padding-top:16px; border-top:1px solid #22303b; }
.callbar { position:fixed; left:0; right:0; bottom:0; background:#fff; border-top:1px solid var(--line); padding:8px 12px calc(8px + env(safe-area-inset-bottom)); }
.callbar a.phone { display:flex; width:100%; min-height:56px; }
@media (min-width:800px){ body{padding-bottom:0} .callbar{display:none} }
