/* ═══════════════════════════════════════════════════════════════════════════
   AUTARK ADVISORY — INSIGHTS  ("Quiet")
   ---------------------------------------------------------------------------
   The blog's copy of the main site's Quiet system. Tokens, type, nav, links
   and footer are taken from the main site's styles.v3.css so /pricing and
   /insights/ read as one site; everything below "BLOG" is the blog's own.

   ⚠ DEPLOYMENT NOTES
   1. This file must live under /css/ — the main site's worker.js proxies
      autarkadvisory.com/css/* to this Pages project, and nothing else.
   2. Pages serves /css/* with max-age=31536000, so a returning visitor keeps
      whatever they loaded for a year. When the contents change, CHANGE THE
      FILENAME (quiet.v2.css …) and update the <link> in partials/head.html.

   DESIGN RULES (same as the main site)
   · No cards, no boxes, no badges. Posts sit on hairlines, not in tiles.
   · Sans display over serif body. No italics in display type.
   · Exactly one filled element: the nav phone number. Links carry a rule.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── TOKENS ─────────────────────────────────────────────────────────────── */
:root{
  --paper:#F4F2ED;
  --paper-warm:#EFEBE4;
  --ink:#16181A;
  --ink-soft:#3E4244;
  --muted:#83837E;
  --hairline:#DFDAD1;
  --accent:#3F6E6B;

  --gutter:clamp(1.5rem,6vw,6rem);
  --container:78rem;
  --breath:clamp(8rem,16vh,12rem);
  --measure:34rem;
  --prose:40rem;            /* article reading column */
}

/* ── BASE ───────────────────────────────────────────────────────────────── */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:"Newsreader",Georgia,serif;font-weight:300;
  font-size:clamp(1.02rem,.35vw + .95rem,1.16rem);line-height:1.8;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%}
a{color:inherit}

.wrap{max-width:var(--container);margin:0 auto;padding-inline:var(--gutter)}

/* ── TYPE ───────────────────────────────────────────────────────────────── */
h1,h2,h3,.ui{font-family:"Inter Tight",system-ui,sans-serif;font-weight:300}
h1 em,h2 em{
  font-style:normal;font-family:inherit;font-weight:inherit;
  background:var(--ink);color:var(--paper);
  padding:.04em .26em .1em;
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}
h1{font-size:clamp(2.05rem,5.25vw,4.45rem);line-height:1.24;letter-spacing:-.042em;margin:0;max-width:19ch}
h2{font-size:clamp(1.75rem,3.4vw,2.75rem);line-height:1.3;letter-spacing:-.032em;margin:0 0 1.75rem;max-width:24ch}
h3 em{background:none;color:inherit;padding:0;font-style:normal}
h3{font-size:clamp(1.25rem,1.9vw,1.6rem);line-height:1.2;letter-spacing:-.022em;font-weight:400;margin:0 0 1rem}
p{margin:0 0 1.6rem}
p:last-child{margin-bottom:0}
b,strong{font-weight:400;color:var(--ink)}

.lead{font-size:1.18em;line-height:1.7;color:var(--ink-soft)}
.small{font-size:.86rem;line-height:1.7;color:var(--muted)}

.cap-label{
  font-family:"Inter Tight",sans-serif;font-weight:500;font-size:.68rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--muted);
  margin:2.75rem 0 1.25rem;
}
.mark{
  font-family:"Inter Tight",sans-serif;font-weight:500;font-size:.68rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin:0 0 1rem;
}

/* ── LINKS — the only call-to-action style ──────────────────────────────── */
.link{
  position:relative;
  display:inline-block;font-family:"Inter Tight",sans-serif;font-weight:400;
  font-size:1rem;letter-spacing:-.01em;text-decoration:none;
  padding-bottom:.4rem;border-bottom:1px solid var(--ink);
  transition:border-color .4s ease,color .4s ease;
}
.link::after{
  content:"";position:absolute;left:100%;bottom:-1px;
  width:0;height:1px;background:currentColor;
  transition:width .4s ease;
}
.link:hover{color:var(--accent);border-color:var(--accent)}
.link:hover::after{width:.6rem}

/* ── NAV ────────────────────────────────────────────────────────────────── */
.site-nav{
  position:sticky;top:0;z-index:30;
  background:color-mix(in srgb,var(--paper) 90%,transparent);
  backdrop-filter:blur(14px);
  display:flex;align-items:center;justify-content:space-between;gap:2rem;
  width:100%;
  padding:1.35rem max(var(--gutter), calc((100% - var(--container)) / 2 + var(--gutter)));
}
.site-nav .logo{display:block;flex-shrink:0}
.site-nav .logo img{width:auto;height:2.25rem}
.logo-fallback{font-family:"Inter Tight",sans-serif;font-weight:500;font-size:.9rem;letter-spacing:.2em;text-transform:uppercase}
.nav-right{display:flex;align-items:center;gap:2.2rem}
.nav-links{list-style:none;display:flex;align-items:center;gap:2.1rem;margin:0;padding:0}
.nav-links a{
  font-family:"Inter Tight",sans-serif;font-weight:400;font-size:.92rem;
  color:var(--muted);text-decoration:none;letter-spacing:-.005em;
  transition:color .3s ease;white-space:nowrap;
}
.nav-links a:hover,.nav-links a.active{color:var(--ink)}
.nav-phone{
  font-family:"Inter Tight",sans-serif;font-weight:400;font-size:.88rem;
  letter-spacing:.01em;white-space:nowrap;text-decoration:none;
  background:var(--ink);color:var(--paper);padding:.62rem 1rem;
  transition:background .3s ease,color .3s ease;
}
.nav-phone:hover{background:var(--accent);color:var(--paper)}
.nav-toggle{
  display:none;background:none;border:0;padding:.4rem 0;cursor:pointer;
  font-family:"Inter Tight",sans-serif;font-size:.92rem;color:var(--ink);
}
@media(max-width:1080px){
  .nav-links{gap:1.5rem}
  .nav-links a{font-size:.87rem}
  .nav-right{gap:1.5rem}
}
@media(max-width:900px){
  .nav-toggle{display:block}
  .nav-links{
    position:absolute;top:100%;left:0;right:0;
    flex-direction:column;align-items:flex-start;gap:1.4rem;
    background:var(--paper);border-top:1px solid var(--hairline);
    padding:2rem max(var(--gutter), calc((100% - var(--container)) / 2 + var(--gutter))) 2.5rem;
    display:none;
  }
  .nav-links.open{display:flex}
  .nav-links a{font-size:1.05rem;color:var(--ink)}
}
@media(max-width:520px){
  .site-nav .logo img{height:1.9rem}
  .nav-phone{font-size:.8rem;padding:.5rem .7rem}
  .nav-right{gap:1rem}
}

/* ── FOOTER ─────────────────────────────────────────────────────────────── */
/* Scoped to the page footer: an article's own <footer> must not pick this up. */
body > footer{background:var(--paper-warm);border-top:1px solid var(--hairline);padding-block:3.5rem}
body > footer .wrap{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap}
body > footer p{margin:0}
body > footer a{color:var(--muted);text-decoration:none;margin-right:1.6rem}
body > footer a:last-child{margin-right:0}
body > footer a:hover{color:var(--ink)}

/* ── MOTION ─────────────────────────────────────────────────────────────── */
@media(prefers-reduced-motion:reduce){ html{scroll-behavior:auto} }


/* ═══════════════════════════════════════════════════════════════════════════
   BLOG
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── ARCHIVE HEADER ─────────────────────────────────────────────────────── */
.archive-hero{padding-top:clamp(4.5rem,13vh,8.5rem);padding-bottom:clamp(3rem,7vh,4.5rem)}
.archive-hero .lead{margin-top:2.5rem;max-width:40rem}

/* ── TOPICS — text, not pills ───────────────────────────────────────────── */
/* The active topic is marked the way a .link is: by a rule underneath. */
.topics{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:.9rem 2.1rem;
  padding-block:1.6rem;border-top:1px solid var(--hairline);
}
.topics .cap-label{margin:0 .4rem 0 0}
.topic{
  font-family:"Inter Tight",sans-serif;font-weight:400;font-size:.95rem;letter-spacing:-.005em;
  background:none;border:0;border-bottom:1px solid transparent;border-radius:0;
  padding:0 0 .3rem;cursor:pointer;color:var(--muted);
  transition:color .3s ease,border-color .3s ease;
}
.topic sup{font-size:.68rem;margin-left:.2rem;color:var(--muted);vertical-align:.45em}
.topic:hover{color:var(--ink)}
.topic.active{color:var(--ink);border-bottom-color:var(--ink)}
.topic:focus-visible{outline:1px solid var(--accent);outline-offset:4px}

/* ── LATEST — the newest post, given room ───────────────────────────────── */
.latest{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,4.5rem);
  align-items:center;text-decoration:none;
  padding-block:clamp(2.5rem,6vh,4rem);border-top:1px solid var(--hairline);
}
.latest.no-cover{grid-template-columns:1fr}
.latest h2{margin:0 0 1.25rem;max-width:22ch;transition:color .3s ease}
.latest .desc{color:var(--ink-soft);max-width:36rem;margin-bottom:1.6rem}
.latest:hover h2{color:var(--accent)}
.latest figure{margin:0;background:var(--paper-warm)}
.latest img{width:100%;aspect-ratio:16/9;object-fit:cover}

/* ── ENTRIES — rows on hairlines, grouped by year ───────────────────────── */
.year{
  display:grid;grid-template-columns:minmax(0,12rem) minmax(0,1fr);gap:clamp(1.5rem,5vw,4rem);
  border-top:1px solid var(--hairline);padding-top:clamp(2rem,5vh,3rem);
}
.year-label{
  font-family:"Inter Tight",sans-serif;font-weight:300;font-size:clamp(1.5rem,2.6vw,2.2rem);
  letter-spacing:-.03em;line-height:1;margin:0;position:sticky;top:7rem;align-self:start;
}
.entries{list-style:none;margin:0 0 clamp(2rem,5vh,3rem);padding:0}
.entry + .entry{border-top:1px solid var(--hairline)}
.entry a{display:block;text-decoration:none;padding-block:1.6rem}
.entry:first-child a{padding-top:0}
.meta{
  font-family:"Inter Tight",sans-serif;font-weight:400;font-size:.8rem;letter-spacing:.01em;
  color:var(--muted);margin:0 0 .6rem;
}
.meta .cat{color:var(--accent)}
.entry h3{margin:0 0 .6rem;max-width:34ch;transition:color .3s ease}
.entry .desc{font-size:.98rem;line-height:1.7;color:var(--ink-soft);max-width:44rem;margin:0}
.entry a:hover h3{color:var(--accent)}
.archive-end{padding-bottom:calc(var(--breath) / 2)}
.archive-empty{color:var(--muted);padding-block:2rem;display:none}

/* ── ARTICLE ────────────────────────────────────────────────────────────── */
.article-head{padding-top:clamp(4rem,11vh,7rem);padding-bottom:clamp(2.5rem,6vh,4rem)}
.article-head h1{font-size:clamp(1.8rem,3.95vw,3.3rem);line-height:1.18;letter-spacing:-.04em;max-width:22ch}
.article-head .meta{margin-top:2rem}
.article-head .lead{margin-top:1.75rem;max-width:40rem}

.cover{max-width:56rem;margin:0 0 clamp(3rem,7vh,4.5rem);background:var(--paper-warm)}
.cover img{width:100%;aspect-ratio:16/9;object-fit:cover}

/* The reading column sits on the same left edge as the headline. */
.prose{max-width:var(--prose)}
.prose h2{font-size:clamp(1.5rem,2.6vw,2rem);letter-spacing:-.028em;line-height:1.25;margin:3.75rem 0 1.25rem}
.prose h3{margin:2.75rem 0 .9rem}
.prose h2 em{background:none;color:inherit;padding:0}
.prose a{text-decoration:none;border-bottom:1px solid var(--hairline);transition:color .3s ease,border-color .3s ease}
.prose a:hover{color:var(--accent);border-color:var(--accent)}
.prose em{font-style:italic}
.prose ul,.prose ol{margin:0 0 1.6rem;padding:0}
.prose ul{list-style:none}
.prose ul li{padding-left:1.5rem;position:relative;margin-bottom:.6rem}
.prose ul li::before{content:"";position:absolute;left:0;top:.9em;width:.5rem;height:1px;background:var(--accent)}
.prose ol{padding-left:1.5rem}
.prose ol li{margin-bottom:.6rem;padding-left:.3rem}
.prose ol li::marker{font-family:"Inter Tight",sans-serif;font-size:.9em;color:var(--muted)}
.prose blockquote{
  margin:2.5rem 0;padding:0;
  font-style:italic;font-size:clamp(1.25rem,2vw,1.5rem);line-height:1.45;letter-spacing:-.01em;
}
.prose blockquote p{margin-bottom:1rem}
.prose hr{border:0;border-top:1px solid var(--hairline);margin:3.5rem 0}
.prose img{margin:2.5rem 0}
.prose code{font-family:ui-monospace,Menlo,monospace;font-size:.86em;color:var(--ink-soft)}
.prose pre{font-size:.9rem;overflow-x:auto;padding-block:1rem;border-block:1px solid var(--hairline);margin:0 0 1.6rem}
.prose table{border-collapse:collapse;width:100%;margin:0 0 1.6rem;font-size:.95rem}
.prose th,.prose td{text-align:left;padding:.6rem 1rem .6rem 0;border-bottom:1px solid var(--hairline)}
.prose th{font-family:"Inter Tight",sans-serif;font-weight:500;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
/* The legal disclaimer is each post's last paragraph, set in italics. */
.prose > p:last-child em{font-size:.86rem;line-height:1.7;color:var(--muted)}

.article-foot{max-width:var(--prose);margin-top:4rem;padding-bottom:calc(var(--breath) / 2)}
.article-foot .block{border-top:1px solid var(--hairline);padding-top:1.5rem;margin-top:2.5rem}
.article-foot .cap-label{margin:0 0 .9rem}
.tags{font-family:"Inter Tight",sans-serif;font-size:.85rem;color:var(--muted);margin:0}
.bio-name{font-family:"Inter Tight",sans-serif;font-weight:400;font-size:1.05rem;letter-spacing:-.01em;margin:0}
.bio-role{margin:0 0 .9rem}
.bio-text{font-size:.97rem;line-height:1.7;color:var(--ink-soft);margin:0}
.next-links{display:flex;flex-wrap:wrap;gap:1.25rem 2.5rem}
.back{margin-top:3.5rem}

/* ── RESPONSIVE ─────────────────────────────────────────────────────────── */
@media(max-width:900px){
  .latest{grid-template-columns:1fr}
  .latest figure{order:-1}
  .year{grid-template-columns:1fr;gap:1.5rem}
  .year-label{position:static}
}
