*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --ink:#0d0d0b;--paper:#f5f2eb;--muted:#6b6860;
  --rule:#d8d3c8;--gold:#c8a96e;--gold-dim:rgba(200,169,110,0.08);
  --dark:#131310;
}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-weight:300;line-height:1;overflow-x:hidden}

/* MASTHEAD */
.masthead{position:fixed;top:0;left:0;right:0;height:56px;background:var(--paper);border-bottom:1px solid var(--rule);display:flex;align-items:center;justify-content:space-between;padding:0 2.5rem;z-index:200}
.logo{font-family:'DM Sans',sans-serif;font-weight:500;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);cursor:pointer;text-decoration:none}
.logo span{color:var(--gold)}
.nav{display:flex;align-items:center;gap:2rem}
.nav-link{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);cursor:pointer;transition:color .2s;background:none;border:none;font-family:'DM Sans',sans-serif;font-weight:400}
.nav-link:hover,.nav-link.active{color:var(--ink)}
.translate-btn{display:flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);background:none;border:1px solid var(--rule);padding:6px 14px;cursor:pointer;font-family:'DM Sans',sans-serif;font-weight:500;transition:all .2s}
.translate-btn:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
/* HAMBURGER */
.hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;cursor:pointer;background:none;border:none;padding:4px}
.hamburger span{display:block;width:20px;height:1.5px;background:var(--ink);transition:all .3s}
.hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.mobile-menu{display:none;position:fixed;top:56px;left:0;right:0;bottom:0;background:var(--paper);z-index:150;flex-direction:column;padding:2rem 2.5rem;gap:0;border-top:1px solid var(--rule)}
.mobile-menu.open{display:flex}
.mobile-nav-link{font-size:1.2rem;font-family:'Playfair Display',serif;font-weight:400;color:var(--ink);cursor:pointer;background:none;border:none;border-bottom:1px solid var(--rule);padding:20px 0;text-align:left;width:100%;transition:color .2s}
.mobile-nav-link:hover{color:var(--gold)}
.mobile-translate{margin-top:24px;align-self:flex-start}

/* PAGES */
.page{display:none;padding-top:56px}
.page.active{display:block}

/* HOME HERO */
.hero{min-height:100vh;background:var(--ink);display:flex;flex-direction:column;justify-content:center;padding:80px 2.5rem;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-40%;right:-20%;width:700px;height:700px;border-radius:50%;border:1px solid rgba(200,169,110,.08);pointer-events:none}
.hero::after{content:'';position:absolute;top:-20%;right:-10%;width:400px;height:400px;border-radius:50%;border:1px solid rgba(200,169,110,.06);pointer-events:none}
.hero-inner{max-width:900px;margin:0 auto;width:100%;animation:fadeUp 1s ease forwards;opacity:0}
.hero-eyebrow{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);margin-bottom:32px;display:flex;align-items:center;gap:14px}
.hero-eyebrow::before{content:'';display:block;width:32px;height:1px;background:var(--gold)}
.hero-headline{font-family:'Playfair Display',serif;font-size:clamp(3rem,7vw,5.8rem);font-weight:400;line-height:1.05;color:var(--paper);margin-bottom:40px;max-width:780px}
.hero-headline em{font-style:italic;color:var(--gold)}
.hero-sub{font-size:1rem;color:rgba(245,242,235,.5);line-height:1.7;max-width:480px;font-weight:300;margin-bottom:52px}
.hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.btn-primary{background:var(--gold);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;padding:14px 32px;border:none;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block}
.btn-primary:hover{background:#d9bc85}
.btn-ghost{background:transparent;color:rgba(245,242,235,.6);font-family:'DM Sans',sans-serif;font-size:12px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;padding:14px 0;border:none;border-bottom:1px solid rgba(245,242,235,.2);cursor:pointer;transition:all .2s}
.btn-ghost:hover{color:var(--paper);border-color:var(--paper)}
.scroll-hint{position:absolute;bottom:40px;left:2.5rem;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:rgba(245,242,235,.3);display:flex;align-items:center;gap:10px}
.scroll-hint::after{content:'';display:block;width:1px;height:40px;background:rgba(245,242,235,.15);animation:scrollPulse 2s ease infinite}
@keyframes scrollPulse{0%,100%{opacity:.3;transform:scaleY(1)}50%{opacity:1;transform:scaleY(.6)}}

/* MANIFESTO */
.manifesto{background:var(--paper);padding:100px 2.5rem}
.manifesto-inner{max-width:780px;margin:0 auto;display:grid;grid-template-columns:1fr 2fr;gap:60px;align-items:start}
.manifesto-label{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);padding-top:8px;position:sticky;top:80px}
.manifesto-text p{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:400;line-height:1.6;color:var(--ink);margin-bottom:2rem}
.manifesto-text p:last-child{margin-bottom:0}
.manifesto-text strong{color:var(--gold);font-weight:400}

/* CONTACT SECTION (Home) */
.contact-section{background:var(--ink);padding:80px 2.5rem}
.contact-inner{max-width:780px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.contact-label{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
.contact-headline{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:400;color:var(--paper);line-height:1.2;margin-bottom:20px}
.contact-sub{font-size:.95rem;color:rgba(245,242,235,.5);line-height:1.7;font-weight:300}
.contact-form{display:flex;flex-direction:column;gap:14px}
.contact-input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:var(--paper);font-family:'DM Sans',sans-serif;font-size:14px;font-weight:300;padding:14px 16px;outline:none;transition:border-color .2s;width:100%}
.contact-input::placeholder{color:rgba(245,242,235,.3)}
.contact-input:focus{border-color:var(--gold)}
.contact-textarea{resize:vertical;min-height:100px}
.contact-submit{background:var(--gold);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;padding:14px 32px;border:none;cursor:pointer;transition:all .2s;align-self:flex-start}
.contact-submit:hover{background:#d9bc85}
.contact-email-link{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--gold);text-decoration:none;margin-top:12px;transition:opacity .2s}
.contact-email-link:hover{opacity:.7}

/* PAGE HERO (shared) */
.page-hero{background:var(--ink);padding:80px 2.5rem 60px}
.page-hero-inner{max-width:780px;margin:0 auto}
.page-eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:24px}
.page-title{font-family:'Playfair Display',serif;font-size:clamp(2rem,4vw,3rem);font-weight:400;color:var(--paper);line-height:1.15;max-width:560px}

/* ABOUT */
.about-body{max-width:780px;margin:0 auto;padding:80px 2.5rem}
.about-statement{border-left:3px solid var(--gold);padding:24px 28px;background:var(--gold-dim);margin-bottom:40px}
.about-statement p{font-family:'Playfair Display',serif;font-size:1.2rem;font-style:italic;line-height:1.6;color:var(--ink)}
.about-prose p{font-size:1rem;line-height:1.8;color:var(--ink);font-weight:300;margin-bottom:1.4rem}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);margin-top:48px}
.about-card{background:var(--paper);padding:36px 32px}
.about-card-num{font-family:'Playfair Display',serif;font-size:2.5rem;color:var(--gold);line-height:1;margin-bottom:12px}
.about-card-title{font-size:13px;font-weight:500;color:var(--ink);margin-bottom:10px;letter-spacing:.03em}
.about-card-body{font-size:13px;color:var(--muted);line-height:1.7}

/* PEOPLE */
.people-body{max-width:780px;margin:0 auto;padding:80px 2.5rem}
.founder-card{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:start}
.founder-avatar{width:100px;height:100px;background:var(--ink);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:2rem;color:var(--gold);flex-shrink:0}
.founder-name{font-family:'Playfair Display',serif;font-size:1.8rem;font-weight:400;color:var(--ink);margin-bottom:4px}
.founder-title{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:20px}
.founder-bio p{font-size:1rem;line-height:1.8;color:var(--ink);font-weight:300;margin-bottom:1.2rem}
.founder-bio p:last-child{margin-bottom:0}
.founder-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.tag{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border:1px solid var(--rule);padding:5px 12px}

/* ARTICLES */
.articles-body{max-width:780px;margin:0 auto;padding:60px 2.5rem 100px}
.article-row{display:grid;grid-template-columns:auto 1fr auto;gap:32px;align-items:start;padding:36px 0;border-bottom:1px solid var(--rule);cursor:pointer;transition:all .2s}
.article-row:first-child{border-top:1px solid var(--rule)}
.article-row:hover .article-row-title{color:var(--gold)}
.article-row:hover .article-arrow{transform:translateX(4px);color:var(--gold)}
.article-row-num{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--muted);padding-top:4px;min-width:28px}
.article-row-title{font-family:'Playfair Display',serif;font-size:1.25rem;font-weight:400;color:var(--ink);line-height:1.35;margin-bottom:8px;transition:color .2s}
.article-row-meta{font-size:12px;color:var(--muted);letter-spacing:.05em}
.article-row-excerpt{font-size:.9rem;color:var(--muted);line-height:1.6;margin-top:8px;font-weight:300}
.article-arrow{font-size:18px;color:var(--rule);padding-top:4px;transition:all .2s}
.article-tag{display:inline-block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(200,169,110,.3);padding:3px 10px;margin-bottom:12px}

/* READING PAGE */
.reading-layout{display:grid;grid-template-columns:1fr 280px;gap:0;max-width:1060px;margin:0 auto;padding:0 2.5rem}
.reading-hero{background:var(--ink);padding:80px 2.5rem 60px}
@media(max-width:680px){.reading-hero{padding:60px 1.2rem 40px}}
.reading-hero-inner{max-width:780px;margin:0 auto}
.reading-category{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:24px;display:flex;align-items:center;gap:12px}
.reading-category::after{content:'';display:block;width:32px;height:1px;background:var(--gold)}
.reading-title{font-family:'Playfair Display',serif;font-size:clamp(2rem,5vw,3.4rem);font-weight:400;line-height:1.1;color:var(--paper);margin-bottom:20px;max-width:640px}
.reading-subtitle{font-size:1rem;color:rgba(245,242,235,.5);margin-bottom:36px;line-height:1.6}
.reading-meta{display:flex;align-items:center;gap:20px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}
.reading-avatar{width:38px;height:38px;background:var(--gold);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:13px;color:var(--ink);flex-shrink:0}
.reading-author-name{font-size:13px;font-weight:500;color:var(--paper)}
.reading-author-role{font-size:11px;color:rgba(245,242,235,.4);margin-top:2px}
.reading-divider{width:1px;height:26px;background:rgba(255,255,255,.1)}
.reading-date{font-size:12px;color:rgba(245,242,235,.4)}
.reading-body{padding:64px 40px 100px 0;min-width:0;overflow-wrap:break-word}
.reading-body p{font-size:1.05rem;line-height:1.85;color:var(--ink);margin-bottom:1.6rem;font-weight:300}
.reading-body>p:first-child::first-letter{font-family:'Playfair Display',serif;font-size:4rem;font-weight:400;line-height:.8;float:left;margin-right:8px;margin-top:8px;color:var(--ink)}
.reading-body em{font-family:'Playfair Display',serif;font-style:italic}
.reading-body strong.sh{font-family:'Playfair Display',serif;font-weight:500;font-size:1.3rem;color:var(--ink);display:block;margin:3rem 0 1.2rem;line-height:1.3}
.stat-block{border-left:3px solid var(--gold);padding:20px 24px;margin:2.4rem 0;background:var(--gold-dim)}
.stat-block .sn{font-family:'Playfair Display',serif;font-size:2.2rem;font-weight:400;color:var(--gold);display:block;margin-bottom:6px;line-height:1}
.stat-block p{margin:0;font-size:.95rem;color:var(--ink);line-height:1.7}
.pull-quote{margin:3rem -40px 3rem 0;padding:2rem 40px;background:var(--ink)}
.pull-quote p{font-family:'Playfair Display',serif;font-size:1.4rem;font-style:italic;line-height:1.5;color:var(--paper);margin:0!important}
.reading-body ul{list-style:none;margin:0 0 1.6rem;padding:0}
.reading-body ul li{font-size:1rem;line-height:1.75;color:var(--ink);font-weight:300;padding:7px 0 7px 20px;position:relative;border-bottom:1px solid var(--rule)}
.reading-body ul li:first-child{border-top:1px solid var(--rule)}
.reading-body ul li::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:5px;height:5px;border-radius:50%;background:var(--gold)}
.author-card-dark{margin-top:3.5rem;padding:28px;background:var(--ink);display:flex;gap:20px;align-items:flex-start}
.acd-avatar{width:50px;height:50px;background:var(--gold);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:16px;color:var(--ink);flex-shrink:0}
.acd-name{font-size:14px;font-weight:500;color:var(--paper);margin-bottom:3px}
.acd-role{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.acd-bio{font-size:13px;color:rgba(245,242,235,.5);line-height:1.6;margin:0!important}
.sources-block{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--rule)}
.sources-block p{font-size:.78rem!important;color:var(--muted)!important;line-height:1.6!important;margin:0!important}
.back-btn{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);cursor:pointer;border:none;background:none;font-family:'DM Sans',sans-serif;padding:0;margin-bottom:32px;transition:color .2s}
.back-btn:hover{color:var(--ink)}

/* SIDEBAR (comments) */
.reading-sidebar{padding:64px 0 100px 40px;border-left:1px solid var(--rule)}
.sidebar-sticky{position:sticky;top:72px}
.sidebar-title{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:20px}
.comment-form{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}
.comment-input{background:transparent;border:1px solid var(--rule);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:13px;font-weight:300;padding:10px 12px;outline:none;transition:border-color .2s;width:100%}
.comment-input::placeholder{color:var(--muted)}
.comment-input:focus{border-color:var(--gold)}
.comment-textarea{resize:vertical;min-height:80px}
.comment-submit{background:var(--ink);color:var(--paper);font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:10px 20px;border:none;cursor:pointer;transition:all .2s;align-self:flex-start}
.comment-submit:hover{background:var(--gold);color:var(--ink)}
.comments-list{display:flex;flex-direction:column;gap:16px}
.comment-item{padding:14px 0;border-bottom:1px solid var(--rule)}
.comment-item:last-child{border-bottom:none}
.comment-author{font-size:12px;font-weight:500;color:var(--ink);margin-bottom:4px}
.comment-date{font-size:10px;color:var(--muted);letter-spacing:.05em;margin-bottom:6px}
.comment-text{font-size:13px;color:var(--muted);line-height:1.6;font-weight:300}
.no-comments{font-size:13px;color:var(--muted);font-style:italic;line-height:1.6}

/* SHARE & NEXT ARTICLE */
.share-section{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--rule);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
.share-label{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.share-btn-li{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:var(--paper);font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:12px 24px;border:none;cursor:pointer;text-decoration:none;transition:background .2s}
.share-btn-li:hover{background:var(--gold);color:var(--ink)}
.next-article{margin-top:3rem;background:var(--ink);padding:32px 36px;cursor:pointer;transition:opacity .2s}
.next-article:hover{opacity:.85}
.next-label{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.next-title{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:400;color:var(--paper);line-height:1.3;margin-bottom:8px}
.next-sub{font-size:13px;color:rgba(245,242,235,.45);line-height:1.5}
.next-arrow{font-size:13px;color:var(--gold);margin-top:16px;display:block;letter-spacing:.1em;text-transform:uppercase}
/* FOOTER */
.site-footer{background:var(--ink);padding:48px 2.5rem;display:flex;align-items:center;justify-content:space-between}
.footer-logo{font-family:'DM Sans',sans-serif;font-weight:500;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--paper)}
.footer-logo span{color:var(--gold)}
.footer-right{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.footer-copy{font-size:11px;color:rgba(245,242,235,.3);letter-spacing:.05em}
.footer-contact{font-size:12px;color:var(--gold);text-decoration:none;letter-spacing:.05em;transition:opacity .2s}
.footer-contact:hover{opacity:.7}

/* ANIMS */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.anim{opacity:0;animation:fadeUp .7s ease forwards}
.anim-1{animation-delay:.1s}.anim-2{animation-delay:.2s}.anim-3{animation-delay:.35s}.anim-4{animation-delay:.5s}

/* MOBILE */
@media(max-width:680px){
  .masthead{padding:0 1.2rem}
  .nav{display:none}
  .hamburger{display:flex}
  .rg{display:block!important;padding:0 1.4rem!important}
  .rg .reading-body{display:block!important;width:100%!important;padding:40px 0!important;min-width:0!important;word-break:break-word!important}
  .rg #art2-footer-sections,.rg #art3-footer-sections,.rg #art4-footer-sections,.rg #art5-footer-sections{display:block!important;width:100%!important;padding:0!important}
  .rg .reading-sidebar{display:block!important;width:100%!important;padding:32px 0 60px!important;border-left:none!important;border-top:1px solid var(--rule)!important;position:relative!important;top:0!important}
  .rg .sidebar-sticky{position:relative!important;top:0!important}
  .hero{padding:0 1.5rem}
  .manifesto-inner{grid-template-columns:1fr;gap:24px}
  .manifesto-label{position:static}
  .contact-inner{grid-template-columns:1fr;gap:40px}
  .about-grid{grid-template-columns:1fr}
  .founder-card{grid-template-columns:1fr;gap:24px}
  .article-row{grid-template-columns:auto 1fr}
  .article-arrow{display:none}
  .reading-layout{grid-template-columns:1fr;padding:0 1.5rem}
  #reading-grid,#reading-grid2{grid-template-columns:1fr!important;padding:0!important;display:block!important}
  .reading-sidebar{display:block!important;padding:32px 1.4rem 60px!important;border-left:none!important;border-top:1px solid var(--rule);position:relative!important;top:0!important;width:100%!important}
  .sidebar-sticky{position:relative!important;top:0!important}
  .pull-quote{margin:2rem 0!important}
  .reading-body{display:block!important;padding:40px 1.4rem 40px!important;width:100%!important;min-width:0!important;word-break:break-word!important}
  .reading-body>p:first-child::first-letter{font-size:2.8rem!important;margin-top:4px!important}
  .site-footer{flex-direction:column;gap:16px;text-align:center}
  .footer-right{align-items:center}
}
