:root { color-scheme: dark; --ink:#1c2022; --panel:#24292c; --gold:#b7965a; --gold-d:#8a6f40; --paper:#f2efe9; --muted:rgba(242,239,233,.6); --line:rgba(242,239,233,.12); }
* { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; background:var(--ink); color:var(--paper); line-height:1.65; -webkit-font-smoothing:antialiased; }
a { color:inherit; }
img { max-width:100%; display:block; }

.site-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.25rem; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; text-decoration:none; }
.brand-logo { height:34px; width:auto; }
.site-header nav { display:flex; gap:1.25rem; font-size:.92rem; }
.site-header nav a { text-decoration:none; opacity:.85; }
.site-header nav a:hover { opacity:1; }

main { max-width:46rem; margin:0 auto; padding:2rem 1.25rem 4rem; }

.hero { text-align:center; padding:clamp(3rem,10vw,6rem) 0 clamp(2rem,6vw,3.5rem); }
.hero-logo { width:min(420px,80vw); height:auto; margin:0 auto 2rem; }
.hero h1 { font-size:clamp(1.5rem,5vw,2.2rem); line-height:1.2; letter-spacing:.01em; }
.hero p { color:var(--muted); margin-top:.9rem; max-width:34rem; margin-left:auto; margin-right:auto; }

.kicker { font-size:.72rem; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); font-weight:700; margin-bottom:.6rem; }
section { padding:2.25rem 0; border-top:1px solid var(--line); }
section h2 { font-size:clamp(1.2rem,4vw,1.6rem); margin-bottom:1rem; }
section p { color:var(--muted); }
section p + p { margin-top:.8rem; }

.brand-grid { display:grid; gap:1rem; grid-template-columns:1fr; margin-top:1.4rem; }
@media (min-width:40rem) { .brand-grid { grid-template-columns:1fr 1fr; } }
.brand-card { display:flex; flex-direction:column; gap:.5rem; padding:1.3rem 1.4rem; border:1px solid var(--line); border-radius:14px; text-decoration:none; background:var(--panel); transition:border-color .18s, transform .18s; }
.brand-card:hover { border-color:var(--gold-d); transform:translateY(-2px); }
.brand-name { font-weight:700; font-size:1.05rem; }
.brand-desc { font-size:.92rem; color:var(--muted); }
.brand-go { font-size:.85rem; color:var(--gold); }

.details dl { display:grid; grid-template-columns:auto 1fr; gap:.45rem 1.25rem; margin-top:1rem; font-size:.95rem; }
.details dt { color:var(--muted); white-space:nowrap; }
.details dd a { color:var(--gold); }

.page-head { margin:1.5rem 0 1.75rem; }
.page-head h1 { font-size:clamp(1.5rem,5vw,2rem); }
.legal h2 { font-size:1.05rem; margin:1.6rem 0 .5rem; }
.legal p, .legal li { color:var(--muted); font-size:.95rem; }
.legal ul { padding-left:1.2rem; margin-top:.4rem; }
.crumb { font-size:.82rem; color:var(--muted); }
.crumb a { color:var(--muted); text-decoration:none; }

.site-footer { padding:2.5rem 1.25rem 2rem; font-size:.85rem; color:var(--muted); border-top:1px solid var(--line); background:var(--panel); text-align:center; }
.site-footer .disc { margin-top:.5rem; }
.site-footer a { color:var(--muted); }
.site-footer nav { margin-top:.6rem; display:flex; gap:1rem; justify-content:center; }
.site-footer nav a { text-decoration:none; }
.site-footer nav a:hover { color:var(--paper); }
