
:root{
  --limestone:#f6f4ef;--plaster:#fdfcfa;--ink:#1b1b1d;--stone:#6d6a63;
  --brass:#a8894a;--brass-dark:#8a6f3a;--line:#dcd7cc;--night:#232326;
  --serif:"Cormorant Garamond",Georgia,serif;--sans:"Inter",-apple-system,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--limestone);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
.wrap{max-width:1080px;margin:0 auto;padding:0 28px}
/* plaque label */
.plaque{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--brass-dark)}
h1,h2,h3.serif{font-family:var(--serif);font-weight:500;letter-spacing:.005em}
h2{font-size:clamp(30px,4vw,42px);line-height:1.15;margin:14px 0 18px}
p.lead{font-size:18px;color:var(--stone);max-width:62ch}
a{color:var(--brass-dark);text-decoration:none;border-bottom:1px solid transparent;transition:.2s}
a:hover{border-bottom-color:var(--brass)}
/* nav */
nav{position:sticky;top:0;z-index:10;background:rgba(246,244,239,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
nav .wrap{display:flex;align-items:center;gap:26px;height:auto;padding-top:12px;padding-bottom:12px;min-height:64px}
nav .name{font-family:var(--serif);font-size:21px;font-weight:600;letter-spacing:.02em;margin-right:auto}
.brand{display:flex;flex-direction:column;align-items:center;gap:3px;border:0;margin-right:auto;flex-shrink:0}
.brand:hover{border:0}
.brand img{height:30px;filter:invert(.55) sepia(.65) saturate(3.4) hue-rotate(8deg) contrast(1.25)}
.brand .bname{font-family:var(--serif);font-size:14px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);white-space:nowrap}
nav a{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
nav a:hover{color:var(--brass-dark)}
@media(max-width:860px){nav .wrap{flex-wrap:wrap;row-gap:4px;justify-content:center}nav a{font-size:12px}}
/* hero */
header.hero{padding:110px 0 90px;text-align:center;position:relative}
header.hero::after{content:"";display:block;width:1px;height:56px;background:var(--brass);margin:56px auto 0}
.hero h1{font-size:clamp(44px,7vw,76px);line-height:1.06;font-weight:500;max-width:19ch;margin:22px auto 24px}
.hero h1 em{font-style:italic;color:var(--brass-dark)}
.hero p{font-size:19px;color:var(--stone);max-width:56ch;margin:0 auto}
/* sections framed like boiserie panels */
section{padding:84px 0}
section.alt{background:var(--plaster);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.panel{border:1px solid var(--line);outline:1px solid var(--line);outline-offset:5px;padding:42px;background:var(--plaster)}
section.alt .panel{background:var(--limestone)}
.cols{display:grid;gap:34px}
.c2{grid-template-columns:1fr 1fr}.c3{grid-template-columns:repeat(3,1fr)}
@media(max-width:860px){.c2,.c3{grid-template-columns:1fr}}
/* start here */
.start{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
@media(max-width:860px){.start{grid-template-columns:1fr}}
.start a{display:block;border:1px solid var(--line);background:var(--plaster);padding:26px;color:var(--ink)}
.start a:hover{border-color:var(--brass);transform:translateY(-2px)}
.start .num{font-family:var(--serif);font-size:30px;color:var(--brass);font-style:italic}
.start b{display:block;font-size:16px;margin:8px 0 4px}
.start span{font-size:13.5px;color:var(--stone)}
/* book */
.bookcover{aspect-ratio:2/3;background:var(--night);color:#efe9dc;display:flex;flex-direction:column;justify-content:center;text-align:center;padding:30px;border:1px solid var(--brass)}
.bookcover .t{font-family:var(--serif);font-size:26px;line-height:1.2}
.bookcover .r{width:34px;height:1px;background:var(--brass);margin:16px auto}
.bookcover .a{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--brass)}
.laws{columns:2;gap:30px;font-size:14px;color:var(--stone);margin-top:18px}
.laws li{margin-bottom:6px;break-inside:avoid}
@media(max-width:640px){.laws{columns:1}}
/* video */
.videoframe{aspect-ratio:16/9;background:var(--night);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:#bdb6a6;font-family:var(--serif);font-size:20px;font-style:italic}
/* lists */
ul.clean{list-style:none}
ul.clean li{padding:13px 0;border-bottom:1px solid var(--line);font-size:15px}
ul.clean li b{font-weight:600}
ul.clean li .meta{display:block;font-size:13px;color:var(--stone)}
.status{font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:2px 9px;border:1px solid var(--brass);color:var(--brass-dark);border-radius:2px;margin-left:8px;white-space:nowrap}
/* impossible list */
.imp li{display:flex;gap:12px;align-items:baseline}
.imp .tick{font-family:var(--serif);color:var(--brass);font-size:18px;flex-shrink:0}
.imp .done{text-decoration:line-through;color:var(--stone)}
/* newsletter */
.news{background:var(--night);color:#efe9dc;padding:74px 0;text-align:center}
.news .plaque{color:var(--brass)}
.news h2{color:#f4efe4}
.news p{color:#b9b2a2;max-width:52ch;margin:0 auto 26px}
.newsform{display:flex;gap:10px;max-width:440px;margin:0 auto}
.newsform input{flex:1;padding:13px 16px;border:1px solid #4a4a4e;background:#2b2b2f;color:#efe9dc;font-family:var(--sans);font-size:14px}
.newsform button{padding:13px 24px;background:var(--brass);color:var(--night);border:0;font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.newsform button:hover{background:#c2a35e}
.news .fine{font-size:12px;color:#8a847a;margin-top:14px}
/* footer */
footer{padding:56px 0;text-align:center;color:var(--stone);font-size:13.5px}
footer .links{display:flex;gap:26px;justify-content:center;margin-bottom:18px}
footer .links a{font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.rule-center{width:44px;height:1px;background:var(--brass);margin:0 auto 22px}

/* subpage additions */
.pagehero{padding:70px 0 50px}
.pagehero h1{font-family:var(--serif);font-size:clamp(36px,5vw,54px);font-weight:500;margin:14px 0 16px}
nav a.here{color:var(--brass-dark);border-bottom:1px solid var(--brass)}
.prose{max-width:68ch;font-size:16.5px}
.prose p{margin-bottom:18px}
.prose h3{font-family:var(--serif);font-size:24px;margin:30px 0 10px}
.stream{border-left:2px solid var(--brass);padding-left:22px;margin:26px 0}
.stream .q{font-size:14px;color:var(--stone);font-style:italic;margin-top:8px}
.lawitem{padding:18px 0;border-bottom:1px solid var(--line)}
.lawitem .n{font-family:var(--serif);font-style:italic;color:var(--brass);font-size:20px;margin-right:10px}
.lawitem b{font-size:17px}
.lawitem p{font-size:14.5px;color:var(--stone);margin-top:4px}
