/* NOIR ASTRA — static stylesheet */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400&family=Special+Elite&family=Caveat:wght@400;600&display=swap');

:root{
  --paper:#e9dec7;
  --paper-dark:#cfbf9f;
  --ink:#1d1813;
  --sepia:#6b5740;
  --gold:#c9a14a;
  --burgundy:#7a2018;
  --bronze:#a87b3e;
  --bg-dark:#15110d;
  --bg-dark-2:#1f1a13;
  --font-display:"Playfair Display","Cormorant Garamond",serif;
  --font-serif:"Cormorant Garamond",Georgia,serif;
  --font-typewriter:"Special Elite","Courier New",monospace;
  --font-hand:"Caveat",cursive;
}

*{box-sizing:border-box;margin:0;padding:0;border-color:rgba(107,87,64,.3)}
html{scroll-behavior:smooth}
body{
  font-family:var(--font-serif);
  background:var(--paper);color:var(--ink);
  font-feature-settings:"liga","kern","onum";
  overflow-x:hidden;line-height:1.5;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;line-height:1.05}
em{font-style:italic}
.smallcaps{font-variant:small-caps}
::selection{background:var(--burgundy);color:var(--paper)}

.container{max-width:1200px;margin:0 auto;padding:0 24px}
.container-md{max-width:1024px;margin:0 auto;padding:0 24px}
.container-sm{max-width:800px;margin:0 auto;padding:0 24px}

/* paper textures */
.paper-texture{
  background-color:var(--paper);
  background-image:
    radial-gradient(at 20% 30%, rgba(180,150,100,.15) 0, transparent 40%),
    radial-gradient(at 80% 70%, rgba(120,90,60,.18) 0, transparent 45%),
    radial-gradient(at 50% 100%, rgba(60,40,20,.12) 0, transparent 50%),
    repeating-linear-gradient(0deg, transparent 0, transparent 2px, rgba(80,60,40,.025) 2px, rgba(80,60,40,.025) 3px);
}
.paper-dark-texture{
  background-color:#1a1510;
  background-image:
    radial-gradient(at 30% 20%, rgba(120,80,40,.25) 0, transparent 50%),
    radial-gradient(at 70% 80%, rgba(80,30,20,.2) 0, transparent 55%),
    radial-gradient(circle at 50% 50%, transparent 30%, rgba(0,0,0,.6) 100%);
  color:var(--paper);
}

.grain{position:relative}
.grain::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  opacity:.18;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml;utf8,<svg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.2 0 0 0 0 0.15 0 0 0 0 0.1 0 0 0 0.6 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  background-size:220px 220px;
}
.grain-dark{position:relative}
.grain-dark::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  opacity:.35;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  background-size:180px 180px;
  animation:grain-shift .8s steps(4) infinite;
}
@keyframes grain-shift{
  0%{transform:translate(0,0)}25%{transform:translate(-3%,2%)}
  50%{transform:translate(2%,-3%)}75%{transform:translate(-2%,-2%)}
  100%{transform:translate(0,0)}
}

.spotlight{
  position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse at 50% 35%, transparent 0%, transparent 25%, rgba(0,0,0,.55) 70%, rgba(0,0,0,.85) 100%);
}

@keyframes smoke{
  0%{transform:translate(0,0) scale(1);opacity:0}
  20%{opacity:.4}
  100%{transform:translate(40px,-120px) scale(1.6);opacity:0}
}
.smoke{
  position:absolute;border-radius:50%;
  background:radial-gradient(circle, rgba(220,200,160,.3) 0%, transparent 70%);
  filter:blur(20px);animation:smoke 14s ease-out infinite;pointer-events:none;
}
.smoke.s1{width:300px;height:300px;left:10%;top:60%;animation-delay:0s}
.smoke.s2{width:240px;height:240px;left:70%;top:30%;animation-delay:5s}
.smoke.s3{width:200px;height:200px;left:40%;top:80%;animation-delay:9s}

@keyframes drift{
  0%{transform:translate(0,0);opacity:0}
  10%{opacity:.7}90%{opacity:.5}
  100%{transform:translate(20px,-200px);opacity:0}
}
.dust{position:absolute;width:2px;height:2px;background:#dccfa7;border-radius:50%;pointer-events:none;animation:drift linear infinite}

@keyframes flicker{
  0%,100%{opacity:1}92%{opacity:1}93%{opacity:.85}
  94%{opacity:1}96%{opacity:.92}97%{opacity:1}
}
.flicker{animation:flicker 6s infinite}

@keyframes blink{50%{opacity:0}}
.caret::after{content:"▍";margin-left:4px;animation:blink 1s step-end infinite;color:var(--gold)}

.rule-fancy{display:flex;align-items:center;gap:1rem}
.rule-fancy::before,.rule-fancy::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--sepia),transparent)}

.stamp{
  display:inline-block;border:2px solid currentColor;
  padding:.25rem .75rem;font-family:var(--font-typewriter);
  font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;
  transform:rotate(-4deg);opacity:.85;border-radius:2px;
}
.stamp-burgundy{color:var(--burgundy)}
.stamp-ink{color:var(--ink)}

.archive-card{
  transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s;
  box-shadow:0 1px 0 rgba(0,0,0,.1),0 8px 20px -10px rgba(0,0,0,.3);
  display:block;
}
.archive-card:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:0 4px 0 rgba(0,0,0,.08),0 30px 50px -20px rgba(0,0,0,.45)}

.story-link{position:relative;display:inline-block}
.story-link::after{
  content:"";position:absolute;left:0;bottom:-2px;
  width:100%;height:1px;background:currentColor;
  transform:scaleX(0);transform-origin:right;
  transition:transform .4s cubic-bezier(.2,.8,.2,1);
}
.story-link:hover::after{transform:scaleX(1);transform-origin:left}

.ink-shadow{text-shadow:0 1px 0 rgba(0,0,0,.15),0 0 24px rgba(0,0,0,.08)}

.dropcap::first-letter{
  font-family:var(--font-display);font-weight:900;font-size:4.5em;float:left;
  line-height:.85;margin:.05em .1em 0 0;color:var(--burgundy);
}

.columns-news{column-count:2;column-gap:2.5rem;column-rule:1px solid rgba(107,87,64,.3)}
@media (max-width:768px){.columns-news{column-count:1}}

/* NAV */
.site-nav{position:relative;z-index:40;border-bottom:1px solid rgba(107,87,64,.3)}
.site-nav.dark{border-color:rgba(201,161,74,.2);color:var(--paper)}
.nav-inner{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:baseline;gap:12px}
.brand-name{font-family:var(--font-display);font-size:1.5rem;letter-spacing:.18em;font-variant:small-caps;font-weight:700}
.brand-est{font-family:var(--font-typewriter);font-size:.65rem;text-transform:uppercase;letter-spacing:.3em;opacity:.6}
@media (max-width:768px){.brand-est{display:none}}
.nav-links{display:flex;align-items:center;gap:28px;list-style:none}
.nav-links a{font-family:var(--font-serif);font-size:.95rem;letter-spacing:.02em;opacity:.9;position:relative}
.nav-links a:hover{opacity:1}
.nav-links a.active{opacity:1;font-style:italic}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .4s}
.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1);transform-origin:left}
.nav-toggle{display:none;background:none;border:none;color:inherit;font-family:var(--font-typewriter);font-size:.75rem;text-transform:uppercase;letter-spacing:.25em;cursor:pointer}
@media (max-width:768px){
  .nav-links{display:none}
  .nav-toggle{display:block}
  .nav-links.open{display:flex;flex-direction:column;align-items:stretch;gap:0;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-top:1px solid rgba(107,87,64,.3);padding:8px 24px}
  .site-nav.dark .nav-links.open{background:var(--bg-dark);border-color:rgba(201,161,74,.2)}
  .nav-links.open li{border-bottom:1px solid rgba(107,87,64,.15)}
  .nav-links.open a{display:block;padding:14px 0;font-size:1.125rem}
}

/* FOOTER */
.site-footer{position:relative;border-top:1px solid rgba(107,87,64,.3)}
.footer-grid{max-width:1200px;margin:0 auto;padding:56px 24px;display:grid;gap:40px;grid-template-columns:repeat(4,1fr)}
@media (max-width:900px){.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr}}
.footer-grid h4{font-family:var(--font-typewriter);font-size:.75rem;text-transform:uppercase;letter-spacing:.25em;color:var(--sepia);font-weight:400}
.footer-grid ul{list-style:none;margin-top:12px;display:flex;flex-direction:column;gap:6px;font-family:var(--font-serif);font-size:.875rem}
.footer-grid p{margin-top:12px;font-family:var(--font-serif);font-size:.875rem}
.footer-grid p i{font-style:italic}
.footer-bottom{border-top:1px solid rgba(107,87,64,.2);padding:16px 24px;text-align:center;font-family:var(--font-typewriter);font-size:.65rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}

/* HERO */
.hero{position:relative;isolation:isolate;overflow:hidden}
.hero-inner{position:relative;min-height:92vh;}
.hero-mast{position:relative;z-index:10;max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid rgba(201,161,74,.2);padding:12px 24px;font-family:var(--font-typewriter);font-size:.65rem;text-transform:uppercase;letter-spacing:.3em;color:rgba(232,222,199,.6)}
.hero-mast .mid{display:none;font-style:italic}
@media (min-width:768px){.hero-mast .mid{display:inline}}
.hero-body{position:relative;z-index:10;max-width:1100px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;padding:80px 24px 96px}
@media (min-width:768px){.hero-body{padding-top:112px}}
.hero-spis{margin-bottom:24px;display:flex;align-items:center;gap:16px;font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.4em;color:var(--gold)}
.hero-spis span.line{height:1px;width:40px;background:rgba(201,161,74,.6)}
.hero-title{font-family:var(--font-display);font-variant:small-caps;color:var(--paper);font-weight:700;font-size:14vw;line-height:.92;letter-spacing:-.01em}
@media (min-width:768px){.hero-title{font-size:8.5rem}}
.hero-title em{font-weight:300;font-style:italic;color:var(--gold)}
.hero-sub{margin-top:32px;max-width:640px;font-family:var(--font-serif);font-size:1.125rem;line-height:1.6;color:rgba(232,222,199,.8)}
@media (min-width:768px){.hero-sub{font-size:1.25rem}}
.hero-tw{margin-top:24px;font-family:var(--font-typewriter);font-size:.875rem;color:rgba(232,222,199,.7)}
.hero-cta{margin-top:48px;display:flex;flex-direction:column;align-items:center;gap:12px}
@media (min-width:640px){.hero-cta{flex-direction:row}}
.btn-noir{display:inline-flex;align-items:center;gap:12px;border:1px solid rgba(201,161,74,.7);background:rgba(201,161,74,.1);padding:16px 32px;font-family:var(--font-typewriter);font-size:.75rem;text-transform:uppercase;letter-spacing:.3em;color:var(--paper);transition:all .35s}
.btn-noir span.arr{color:var(--gold);transition:color .35s}
.btn-noir:hover{background:var(--gold);color:var(--ink)}
.btn-noir:hover span.arr{color:var(--ink)}
.btn-ghost{padding:16px 24px;font-family:var(--font-serif);font-style:italic;color:rgba(232,222,199,.85);position:relative}
.btn-ghost::after{content:"";position:absolute;left:24px;right:24px;bottom:8px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .4s}
.btn-ghost:hover::after{transform:scaleX(1);transform-origin:left}
.hero-foot{position:relative;z-index:10;max-width:1200px;margin:0 auto;border-top:1px solid rgba(201,161,74,.15);padding:16px 24px;font-family:var(--font-typewriter);font-size:.65rem;text-transform:uppercase;letter-spacing:.3em;color:rgba(232,222,199,.5);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.hero-foot .quote{font-style:italic}

/* SECTIONS */
.section{padding:80px 0}
.section-dark{background:#221c14;color:var(--paper);position:relative}
.section-dark::before{content:"";position:absolute;inset:0;background-image:radial-gradient(at 30% 20%, rgba(120,80,40,.25) 0, transparent 50%),radial-gradient(at 70% 80%, rgba(80,30,20,.2) 0, transparent 55%);pointer-events:none}
.section-eyebrow{font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}
.section-eyebrow.gold{color:var(--gold)}
.section-title{font-family:var(--font-display);font-variant:small-caps;font-size:3rem;text-align:center}
@media (min-width:768px){.section-title{font-size:3.75rem}}
.section-title em{color:var(--burgundy);font-style:italic}
.section-dark .section-title em{color:var(--gold)}
.section-lead{margin:16px auto 0;max-width:640px;text-align:center;font-family:var(--font-serif);font-style:italic;color:var(--sepia)}

/* DAILY GRID */
.cards-3{margin-top:56px;display:grid;gap:32px;grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){.cards-3{grid-template-columns:1fr}}
.dispatch-card{position:relative;border:1px solid rgba(107,87,64,.4);background:var(--paper);padding:28px}
.dispatch-card .stamp{position:absolute;right:16px;top:16px}
.dispatch-card .kicker{font-family:var(--font-typewriter);font-size:.75rem;text-transform:uppercase;letter-spacing:.25em;color:var(--sepia)}
.dispatch-card h3{margin-top:12px;font-family:var(--font-display);font-variant:small-caps;font-size:2.25rem}
.dispatch-card h3 .glyph{font-size:1.5rem;color:var(--bronze)}
.dispatch-card .dates{font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:var(--sepia)}
.dispatch-card .pred{margin-top:20px;font-family:var(--font-serif);font-size:1.125rem;line-height:1.6;color:rgba(29,24,19,.9)}
.dispatch-card .row{margin-top:24px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(107,87,64,.3);padding-top:16px;font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;color:var(--sepia)}
.dispatch-card .row a{color:var(--burgundy)}

/* ZODIAC ARCHIVE GRID */
.zodiac-grid{margin-top:48px;display:grid;gap:1px;background:rgba(201,161,74,.1);grid-template-columns:repeat(4,1fr)}
@media (max-width:1024px){.zodiac-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.zodiac-grid{grid-template-columns:repeat(2,1fr)}}
.zodiac-cell{background:#1a1510}
.zodiac-cell a{display:block;padding:28px;transition:background-color .5s}
.zodiac-cell a:hover{background:#2a2218}
.zodiac-cell .top{display:flex;align-items:baseline;justify-content:space-between;color:rgba(201,161,74,.7)}
.zodiac-cell .glyph{font-family:var(--font-typewriter);font-size:.65rem;text-transform:uppercase;letter-spacing:.3em}
.zodiac-cell .sym{font-size:1.875rem}
.zodiac-cell h3{margin-top:24px;font-family:var(--font-display);font-variant:small-caps;font-size:1.875rem;color:var(--paper)}
.zodiac-cell .lat{font-family:var(--font-serif);font-style:italic;color:rgba(232,222,199,.55)}
.zodiac-cell .dates{margin-top:4px;font-family:var(--font-typewriter);font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;color:rgba(232,222,199,.4)}
.zodiac-cell .pred{margin-top:20px;font-family:var(--font-serif);color:rgba(232,222,199,.75);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.zodiac-cell .more{margin-top:24px;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-typewriter);font-size:.65rem;text-transform:uppercase;letter-spacing:.25em;color:var(--gold)}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;border-bottom:1px solid rgba(201,161,74,.2);padding-bottom:24px}
.section-head h2{font-family:var(--font-display);font-variant:small-caps;font-size:3rem;margin-top:8px}
@media (min-width:768px){.section-head h2{font-size:3.75rem}}

/* NEWSPAPER FRONT */
.npaper{display:grid;gap:40px;grid-template-columns:repeat(12,1fr)}
@media (max-width:900px){.npaper{grid-template-columns:1fr}}
.npaper .col-l{grid-column:span 4}
.npaper .col-r{grid-column:span 8}
@media (max-width:900px){.npaper .col-l,.npaper .col-r{grid-column:1/-1}}
.npaper h2{font-family:var(--font-display);font-variant:small-caps;font-size:3.75rem;line-height:.95;margin-top:8px}
.npaper h2 em{color:var(--burgundy);font-style:italic}
.npaper article{border-top:1px solid rgba(107,87,64,.4);padding-top:24px;margin-top:24px}
.npaper article:first-child{margin-top:0}
.npaper .meta{display:flex;align-items:center;gap:16px;font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}
.npaper .meta .pill{border:1px solid rgba(107,87,64,.4);padding:2px 8px}
.npaper article h3{margin-top:12px;font-family:var(--font-display);font-variant:small-caps;font-size:1.875rem;line-height:1.1}
@media (min-width:768px){.npaper article h3{font-size:2.25rem}}
.npaper article p{margin-top:12px;font-family:var(--font-serif);font-size:1.125rem;line-height:1.6;color:rgba(29,24,19,.85)}

/* CTA section */
.cta-noir{position:relative;color:var(--paper);text-align:center}
.cta-noir h2{font-family:var(--font-display);font-variant:small-caps;font-size:3rem;line-height:1.1;margin-top:24px}
@media (min-width:768px){.cta-noir h2{font-size:3.75rem}}
.cta-noir h2 em{color:var(--gold);font-style:italic}
.cta-noir p{margin:24px auto 0;max-width:560px;font-family:var(--font-serif);font-style:italic;color:rgba(232,222,199,.8)}
.cta-noir .row{margin-top:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}
@media (min-width:640px){.cta-noir .row{flex-direction:row}}

/* DOSSIER (sign page) */
.dossier{position:relative;border:2px double rgba(29,24,19,.4);background:var(--paper);padding:40px}
@media (min-width:768px){.dossier{padding:56px}}
.dossier .stamp-tr{position:absolute;right:-16px;top:-16px;font-size:1rem}
.dossier .stamp-br{position:absolute;right:40px;bottom:24px;transform:rotate(6deg)}
.dossier .dept{font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.35em;color:var(--sepia)}
.dossier .head{margin-top:24px;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;border-bottom:1px solid rgba(107,87,64,.4);padding-bottom:32px}
.dossier h1{font-family:var(--font-display);font-variant:small-caps;font-size:5rem;line-height:1}
@media (min-width:768px){.dossier h1{font-size:6rem}}
.dossier .lat{margin-top:8px;font-family:var(--font-serif);font-style:italic;font-size:1.25rem;color:var(--sepia)}
.dossier .sym{font-family:var(--font-display);font-size:5rem;color:var(--bronze);text-align:right}
@media (min-width:768px){.dossier .sym{font-size:6rem}}
.dossier .ruler{font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia);text-align:right}
.dossier .body{margin-top:32px;font-family:var(--font-serif);font-size:1.25rem;line-height:1.7;color:rgba(29,24,19,.9)}
.dossier .hand{margin-top:24px;font-family:var(--font-hand);font-size:1.5rem;color:var(--burgundy)}

.sections-grid{margin-top:48px;display:grid;gap:1px;background:rgba(107,87,64,.3);grid-template-columns:repeat(2,1fr)}
@media (max-width:768px){.sections-grid{grid-template-columns:1fr}}
.sections-grid section{background:var(--paper);padding:32px}
.sections-grid .num{font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}
.sections-grid h2{margin-top:4px;font-family:var(--font-display);font-variant:small-caps;font-size:1.875rem}
.sections-grid p{margin-top:12px;font-family:var(--font-serif);font-size:1.125rem;line-height:1.6;color:rgba(29,24,19,.9)}

.widgets{margin-top:48px;display:grid;gap:24px;grid-template-columns:repeat(4,1fr)}
@media (max-width:900px){.widgets{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.widgets{grid-template-columns:1fr}}
.widget{border:2px double rgba(29,24,19,.3);background:rgba(207,191,159,.3);padding:24px;text-align:center}
.widget .k{font-family:var(--font-typewriter);font-size:.65rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}
.widget .v{margin-top:8px;font-family:var(--font-display);font-variant:small-caps;font-size:1.5rem;color:var(--burgundy)}

.compat-block{margin-top:48px;border-top:2px double rgba(29,24,19,.4);padding-top:32px}
.compat-block .chip-row{margin-top:20px;display:flex;flex-wrap:wrap;gap:12px}
.compat-block .chip{border:1px solid rgba(107,87,64,.5);padding:8px 16px;font-family:var(--font-serif);font-style:italic;transition:background .3s}
.compat-block .chip:hover{background:rgba(207,191,159,.4)}

.dossier-nav{margin-top:64px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(107,87,64,.4);padding-top:24px;font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}

/* GENERIC PAGE HEAD */
.page-head{padding:64px 0 0}
.page-head h1{margin-top:12px;font-family:var(--font-display);font-variant:small-caps;font-size:4rem;line-height:.95}
@media (min-width:768px){.page-head h1{font-size:5rem}}
.page-head h1 em{color:var(--burgundy);font-style:italic}
.page-head p{margin-top:16px;max-width:640px;font-family:var(--font-serif);font-style:italic;font-size:1.125rem;color:var(--sepia)}

/* List grid (zodiac index, archive) */
.list-grid{margin-top:56px;display:grid;gap:1px;background:rgba(107,87,64,.3);grid-template-columns:repeat(3,1fr)}
@media (max-width:1024px){.list-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.list-grid{grid-template-columns:1fr}}
.list-cell{background:var(--paper)}
.list-cell a{display:block;padding:28px;border:1px solid rgba(107,87,64,.3)}
.list-cell a:hover{background:rgba(207,191,159,.4)}
.list-cell .top{display:flex;align-items:flex-start;justify-content:space-between}
.list-cell .cls{font-family:var(--font-typewriter);font-size:.65rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}
.list-cell h2{margin-top:8px;font-family:var(--font-display);font-variant:small-caps;font-size:2.25rem}
.list-cell .lat{font-family:var(--font-serif);font-style:italic;color:var(--sepia)}
.list-cell .sym{font-size:2.25rem;color:var(--bronze)}
.list-cell .pred{margin-top:20px;font-family:var(--font-serif);color:rgba(29,24,19,.85)}
.list-cell .row{margin-top:20px;display:flex;align-items:center;justify-content:space-between;font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.25em;color:var(--sepia)}
.list-cell .row .more{color:var(--burgundy)}

/* COMPATIBILITY */
.compat-pickers{margin-top:40px;display:grid;gap:1px;background:rgba(107,87,64,.3);grid-template-columns:1fr auto 1fr;align-items:stretch}
@media (max-width:768px){.compat-pickers{grid-template-columns:1fr}}
.picker{background:var(--paper);padding:24px}
.picker .lbl{font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}
.picker .sel{margin-top:12px;display:flex;align-items:center;gap:16px}
.picker .sel .sym{font-family:var(--font-display);font-size:3rem;color:var(--bronze)}
.picker .sel .name{font-family:var(--font-display);font-variant:small-caps;font-size:1.875rem}
.picker .sel .dates{font-family:var(--font-serif);font-style:italic;color:var(--sepia)}
.picker .glyph-grid{margin-top:20px;display:flex;flex-wrap:wrap;gap:6px}
.picker .glyph-grid button{height:36px;width:36px;border:1px solid rgba(107,87,64,.4);background:transparent;font-size:1.125rem;cursor:pointer;transition:all .2s}
.picker .glyph-grid button:hover{border-color:var(--burgundy);color:var(--burgundy)}
.picker .glyph-grid button.active{border-color:var(--burgundy);background:var(--burgundy);color:var(--paper)}
.compat-x{display:flex;align-items:center;justify-content:center;background:var(--paper);padding:32px 24px;font-family:var(--font-display);font-size:3rem;color:var(--burgundy)}

.report{position:relative;margin-top:48px;border:2px double rgba(29,24,19,.4);background:var(--paper);padding:40px}
@media (min-width:768px){.report{padding:56px}}
.report .stamp-tr{position:absolute;right:-16px;top:-16px;font-size:1rem}
.report .stamp-br{position:absolute;right:48px;bottom:32px;transform:rotate(-7deg)}
.report .case{font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}
.report h2{margin-top:8px;font-family:var(--font-display);font-variant:small-caps;font-size:2.25rem}
@media (min-width:768px){.report h2{font-size:3rem}}
.meters{margin-top:32px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr)}
@media (max-width:640px){.meters{grid-template-columns:1fr}}
.meter{border:1px solid rgba(107,87,64,.4);background:rgba(207,191,159,.2);padding:20px}
.meter .row{display:flex;align-items:baseline;justify-content:space-between}
.meter .lbl{font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.25em;color:var(--sepia)}
.meter .val{font-family:var(--font-display);font-size:1.5rem;color:var(--burgundy)}
.meter .bar{margin-top:12px;height:6px;background:rgba(107,87,64,.2);overflow:hidden}
.meter .fill{height:100%;background:var(--burgundy);width:0;transition:width 1.2s ease-out}
.report .body{margin-top:40px;font-family:var(--font-serif);font-size:1.125rem;line-height:1.7}

/* ARTICLES */
.editorial-list{margin-top:56px;display:flex;flex-direction:column;gap:64px}
.editorial-list article{border-top:2px double rgba(29,24,19,.4);padding-top:40px}
.editorial-list .meta{display:flex;align-items:center;gap:16px;font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}
.editorial-list .pill{border:1px solid rgba(107,87,64,.4);padding:2px 8px}
.editorial-list h2{margin-top:16px;font-family:var(--font-display);font-variant:small-caps;font-size:3rem;line-height:.98}
@media (min-width:768px){.editorial-list h2{font-size:3.75rem}}
.editorial-list .excerpt{margin-top:20px;font-family:var(--font-serif);font-size:1.25rem;font-style:italic;line-height:1.6;color:rgba(29,24,19,.85)}
.editorial-list .more{margin-top:20px;display:inline-block;font-family:var(--font-typewriter);font-size:.75rem;text-transform:uppercase;letter-spacing:.25em;color:var(--burgundy)}

.article-page .meta{display:flex;align-items:center;gap:16px;font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}
.article-page .pill{border:1px solid rgba(107,87,64,.4);padding:2px 8px}
.article-page h1{margin-top:16px;font-family:var(--font-display);font-variant:small-caps;font-size:3.75rem;line-height:.95}
@media (min-width:768px){.article-page h1{font-size:4.5rem}}
.article-page .excerpt{margin-top:20px;font-family:var(--font-serif);font-size:1.25rem;font-style:italic;line-height:1.6;color:var(--sepia)}
.article-page .body{margin-top:40px;display:flex;flex-direction:column;gap:24px;font-family:var(--font-serif);font-size:1.125rem;line-height:1.7;color:rgba(29,24,19,.9)}
.article-page .sign{margin-top:48px;font-family:var(--font-hand);font-size:1.5rem;color:var(--burgundy)}
.article-page .end{margin-top:64px;border-top:2px double rgba(29,24,19,.4);padding-top:24px;text-align:center;font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}

/* ARCHIVE all-signs strip */
.signs-strip{margin-top:32px;display:grid;gap:1px;background:rgba(107,87,64,.3);grid-template-columns:repeat(6,1fr)}
@media (max-width:900px){.signs-strip{grid-template-columns:repeat(4,1fr)}}
@media (max-width:520px){.signs-strip{grid-template-columns:repeat(3,1fr)}}
.signs-strip a{background:var(--paper);padding:20px;text-align:center}
.signs-strip .sym{font-size:1.875rem;color:var(--bronze)}
.signs-strip .nm{margin-top:8px;font-family:var(--font-display);font-variant:small-caps;font-size:1.25rem}
.signs-strip .gl{font-family:var(--font-typewriter);font-size:.6rem;text-transform:uppercase;letter-spacing:.25em;color:var(--sepia)}

.weekly-grid{margin-top:32px;display:grid;gap:1px;background:rgba(107,87,64,.3);grid-template-columns:repeat(2,1fr)}
@media (max-width:768px){.weekly-grid{grid-template-columns:1fr}}
.weekly-cell{background:var(--paper);padding:32px}
.weekly-cell .top{display:flex;align-items:baseline;justify-content:space-between}
.weekly-cell .cls{font-family:var(--font-typewriter);font-size:.65rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}
.weekly-cell h3{margin-top:4px;font-family:var(--font-display);font-variant:small-caps;font-size:1.875rem}
.weekly-cell .sym{font-size:1.875rem;color:var(--bronze)}
.weekly-cell .line{margin-top:16px;font-family:var(--font-serif);font-size:1.125rem;color:rgba(29,24,19,.85)}
.weekly-cell .more{margin-top:16px;display:inline-block;font-family:var(--font-typewriter);font-size:.7rem;text-transform:uppercase;letter-spacing:.25em;color:var(--burgundy)}

.old-issues{margin-top:32px;display:grid;gap:40px;grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){.old-issues{grid-template-columns:1fr}}
.old-issues .meta{font-family:var(--font-typewriter);font-size:.65rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sepia)}
.old-issues h3{margin-top:8px;font-family:var(--font-display);font-variant:small-caps;font-size:1.5rem;line-height:1.1}
.old-issues a:hover h3{color:var(--burgundy)}
.old-issues p{margin-top:8px;font-family:var(--font-serif);font-style:italic;color:var(--sepia)}

.section-block{margin-top:80px}
