*{box-sizing:border-box;margin:0;padding:0;}
:root{
  --sand:#f6efdc;
  --sand-2:#f2ead6;
  --sand-3:#e8ddc0;
  --ink:#1c1815;
  --ink-2:#3d332a;
  --burgundy:#722f37;
  --burgundy-2:#5a232a;
  --brass:#8a7654;
  --line:#d8ccae;
}
html,body{background:var(--sand);color:var(--ink);}
body{font-family:'Inter',system-ui,sans-serif;font-size:16px;line-height:1.65;}
h1,h2,h3,h4,.mark-name{font-family:'Merriweather',Georgia,serif;color:var(--ink);}
a{color:var(--burgundy);text-decoration:none;}
a:hover{text-decoration:underline;}
ol,ul{list-style:none;}
img,svg{max-width:100%;}

.page{display:grid;grid-template-columns:280px 1fr;min-height:100vh;}
@media (max-width:960px){.page{grid-template-columns:1fr;}}

.side{background:var(--ink);color:#d9ccb2;padding:2.5rem 2rem;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;overflow-y:auto;}
@media (max-width:960px){.side{position:relative;height:auto;padding:1.5rem;}}

.mark{display:flex;gap:.9rem;align-items:center;color:#f6efdc;margin-bottom:2.5rem;}
.mark:hover{text-decoration:none;}
.mark-glyph{background:var(--sand);border-radius:50%;padding:2px;display:flex;}
.mark-name{font-size:1.35rem;font-weight:900;color:#f6efdc;display:block;line-height:1;}
.mark-tagline{font-size:.72rem;color:#a89778;text-transform:uppercase;letter-spacing:2px;display:block;margin-top:4px;}

.side-nav{display:flex;flex-direction:column;gap:.2rem;margin-bottom:auto;}
.side-nav a{color:#c4b696;padding:.65rem .75rem;border-radius:4px;border-left:3px solid transparent;font-weight:500;}
.side-nav a:hover{background:rgba(246,239,220,.06);color:#f6efdc;text-decoration:none;}
.side-nav a.on{color:#f6efdc;background:rgba(114,47,55,.35);border-left-color:var(--burgundy);}
.side-meta{margin-top:2rem;font-size:.83rem;color:#8b7d5f;border-top:1px solid rgba(217,204,178,.15);padding-top:1.5rem;}
.side-meta a{color:#c4b696;}

.main{padding:3.5rem 4rem 0;max-width:960px;}
@media (max-width:1200px){.main{padding:3rem 2.5rem 0;}}
@media (max-width:768px){.main{padding:2rem 1.25rem 0;}}

.eyebrow{display:inline-block;font-size:.75rem;letter-spacing:3px;text-transform:uppercase;color:var(--burgundy);font-weight:700;margin-bottom:1.5rem;}
.hero h1{font-size:3rem;line-height:1.15;font-weight:900;letter-spacing:-.5px;margin-bottom:1.2rem;}
@media (max-width:768px){.hero h1{font-size:2.1rem;}}
.hero .subline{font-size:1.15rem;color:var(--ink-2);max-width:640px;margin-bottom:2rem;}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;}

.btn{display:inline-block;padding:.85rem 1.7rem;font-family:'Inter',sans-serif;font-weight:600;font-size:.95rem;border-radius:2px;cursor:pointer;transition:.15s;border:2px solid transparent;text-decoration:none;}
.btn.primary{background:var(--burgundy);color:#fff;border-color:var(--burgundy);}
.btn.primary:hover{background:var(--burgundy-2);border-color:var(--burgundy-2);text-decoration:none;}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink);}
.btn.ghost:hover{background:var(--ink);color:#fff;text-decoration:none;}

.market-band{margin:4rem 0 3rem;background:var(--sand-2);border-top:2px solid var(--burgundy);border-bottom:1px solid var(--line);padding:1.5rem 2rem;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;}
@media (max-width:768px){.market-band{grid-template-columns:repeat(2,1fr);}}
.mb-label{font-size:.72rem;text-transform:uppercase;letter-spacing:2px;color:var(--brass);font-weight:700;}
.mb-value{font-family:'Merriweather',serif;font-size:1.7rem;font-weight:700;color:var(--ink);}

.feature{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;background:var(--sand-2);padding:2.5rem;border-radius:2px;margin-bottom:4rem;align-items:center;}
@media (max-width:960px){.feature{grid-template-columns:1fr;}}
.feature-head h2{font-size:1.9rem;line-height:1.2;margin:.6rem 0 1rem;}

.cat-tag{display:inline-block;background:var(--burgundy);color:#fff;font-size:.7rem;text-transform:uppercase;letter-spacing:2px;padding:.3rem .7rem;border-radius:2px;font-weight:700;}
.byline{font-size:.85rem;color:var(--brass);margin-top:1rem;font-style:italic;}

.section-h{font-size:1.8rem;font-weight:700;margin-bottom:2rem;border-bottom:2px solid var(--line);padding-bottom:.8rem;}

.entries{margin-bottom:4rem;}
.entry-list{display:flex;flex-direction:column;gap:2rem;}
.entry-list li{display:grid;grid-template-columns:80px 1fr;gap:2rem;padding-bottom:2rem;border-bottom:1px solid var(--line);}
.entry-list li:last-child{border-bottom:none;}
.entry-num{font-family:'Merriweather',serif;font-size:2.5rem;color:var(--brass);opacity:.6;line-height:1;}
.entry-body h3{font-size:1.3rem;margin:.5rem 0;font-weight:700;}
.entry-body h3 a{color:var(--ink);}
.entry-body h3 a:hover{color:var(--burgundy);}
.entry-body p{color:var(--ink-2);}

.quote{background:var(--burgundy);color:#f6efdc;padding:3rem 2.5rem;margin-bottom:4rem;border-radius:2px;}
.quote blockquote p{font-family:'Merriweather',serif;font-size:1.5rem;font-weight:700;font-style:italic;line-height:1.5;color:#f6efdc;}
.quote blockquote footer{color:#e8c8ac;font-size:.9rem;margin-top:1rem;font-style:normal;}

.signup{background:var(--sand-3);padding:2.5rem;margin-bottom:4rem;border-radius:2px;text-align:center;}
.signup h2{font-size:1.6rem;margin-bottom:.6rem;}
.signup p{color:var(--ink-2);margin-bottom:1.5rem;}
.signup-form{display:flex;gap:.7rem;max-width:520px;margin:0 auto;}
.signup-form input{flex:1;padding:.85rem 1rem;border:1px solid var(--line);border-radius:2px;font-family:inherit;font-size:1rem;background:#fff;}
@media (max-width:576px){.signup-form{flex-direction:column;}}
.fine{font-size:.8rem;color:var(--brass);margin-top:1rem;}

.foot{padding:3rem 0 2rem;border-top:1px solid var(--line);}
.foot-cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem;margin-bottom:2rem;}
@media (max-width:768px){.foot-cols{grid-template-columns:repeat(2,1fr);}}
.foot h4{font-size:.9rem;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:1rem;color:var(--ink);font-family:'Inter',sans-serif;font-weight:700;}
.foot ul li{margin-bottom:.5rem;}
.foot a{color:var(--ink-2);font-size:.92rem;}
.foot-bottom{font-size:.85rem;color:var(--brass);border-top:1px solid var(--line);padding-top:1.5rem;}

#cookie{position:fixed;left:1.5rem;right:1.5rem;bottom:1.5rem;background:var(--ink);color:#f6efdc;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;border-radius:2px;box-shadow:0 6px 24px rgba(0,0,0,.3);z-index:50;flex-wrap:wrap;}
#cookie a{color:var(--sand-3);}
#cookie p{margin:0;}

/* Long-read article page */
.reading{max-width:720px;padding:3rem 0;}
.reading h1{font-size:2.4rem;line-height:1.2;margin:1rem 0;}
.reading p{margin-bottom:1.3rem;color:var(--ink);}
.reading h2{font-size:1.4rem;margin:2rem 0 .8rem;}
.reading ul{margin-bottom:1.3rem;padding-left:1.5rem;list-style:disc;}
.reading li{margin-bottom:.5rem;}
.reading .byline{margin-bottom:2rem;}

/* Contact */
.form-block{max-width:600px;padding:3rem 0;}
.form-block h1{font-size:2.2rem;margin-bottom:1rem;}
.form-block label{display:block;font-size:.85rem;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:.4rem;color:var(--ink-2);font-weight:600;}
.form-block input,.form-block textarea{width:100%;padding:.75rem;border:1px solid var(--line);border-radius:2px;font-family:inherit;font-size:1rem;margin-bottom:1.2rem;background:#fff;}

/* Legal */
.legal{max-width:760px;padding:3rem 0;}
.legal h1{font-size:2.2rem;margin-bottom:1rem;}
.legal h2{font-size:1.3rem;margin:2rem 0 .8rem;}
.legal p,.legal li{color:var(--ink-2);}
.legal ul{list-style:disc;padding-left:1.5rem;margin-bottom:1.3rem;}
.legal li{margin-bottom:.5rem;}
.legal .updated{color:var(--brass);font-size:.9rem;margin-bottom:1.5rem;font-style:italic;}

/* Team */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:2rem;}
@media (max-width:768px){.team-grid{grid-template-columns:1fr;}}
.person{background:var(--sand-2);padding:2rem;border-top:3px solid var(--burgundy);}
.person-initials{font-family:'Merriweather',serif;font-size:2rem;color:var(--burgundy);margin-bottom:.8rem;}
.person-name{font-family:'Merriweather',serif;font-size:1.2rem;font-weight:700;margin-bottom:.3rem;}
.person-role{font-size:.85rem;color:var(--brass);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:1rem;}
.person-bio{font-size:.92rem;color:var(--ink-2);}
