/*
Theme Name: Annika Rollock
Theme URI: https://www.annikarollock.com
Author: Annika Rollock
Author URI: https://www.annikarollock.com
Description: A whimsical, space-themed personal site for aerospace engineer and writer Annika Rollock.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: annika-rollock
Tags: one-column, custom-menu, featured-images, blog, portfolio
*/

/* ── RESET & ROOT ──────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --navy:#09091f;
  --deep:#0d0d2b;
  --mid:#141438;
  --card:#1a1a42;
  --lavender:#c4b5fd;
  --soft-pink:#f9a8d4;
  --teal:#5eead4;
  --gold:#fcd34d;
  --white:#f0eeff;
  --muted:#9d8fd4;
  --glow-lavender:rgba(196,181,253,0.15);
  --glow-pink:rgba(249,168,212,0.12);
  --glow-teal:rgba(94,234,212,0.12);
}

html{scroll-behavior:smooth}

body{
  background:var(--navy);
  color:var(--white);
  font-family:'Nunito',sans-serif;
  font-weight:300;
  line-height:1.75;
  overflow-x:hidden;
}

/* ── STAR CANVAS ───────────────────────────────── */
#starfield{
  position:fixed;inset:0;
  pointer-events:none;
  z-index:0;
}

/* ── LAYOUT ────────────────────────────────────── */
.site-wrap{position:relative;z-index:1}

/* ── NAV ────────────────────────────────────────── */
nav.site-nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:1.2rem 4rem;
  background:rgba(9,9,31,0.75);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(196,181,253,0.1);
  transition:padding .3s;
}
.nav-logo{
  font-family:'Cormorant Garamond',serif;
  font-size:1.45rem;font-weight:600;letter-spacing:.04em;
  color:var(--lavender);text-decoration:none;
  display:flex;align-items:center;gap:.55rem;
}
.nav-logo .orbit-dot{
  width:9px;height:9px;border-radius:50%;
  background:var(--soft-pink);
  box-shadow:0 0 8px var(--soft-pink);
  animation:pulse 2.4s ease-in-out infinite;
}
@keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.65}}

/* WordPress nav menu */
.primary-nav{display:flex;align-items:center}
.primary-nav ul{display:flex;gap:2rem;list-style:none;margin:0;padding:0}
.primary-nav ul li a{
  font-family:'Nunito',sans-serif;font-size:.85rem;font-weight:500;
  letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted);text-decoration:none;
  transition:color .25s;
}
.primary-nav ul li a:hover,
.primary-nav ul li.current-menu-item a{color:var(--lavender)}
/* hide sub-menus for now */
.primary-nav ul ul{display:none}

/* Mobile hamburger */
.nav-toggle{
  display:none;
  background:none;border:none;cursor:pointer;
  flex-direction:column;gap:5px;padding:4px;
}
.nav-toggle span{
  display:block;width:22px;height:1.5px;
  background:var(--lavender);transition:all .3s;
}

/* ── HERO ───────────────────────────────────────── */
.hero{
  min-height:100vh;
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  text-align:center;
  padding:7rem 2rem 4rem;
  position:relative;
  overflow:hidden;
}
.hero-nebula{
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse 70% 55% at 30% 40%, rgba(139,92,246,.13) 0%, transparent 65%),
    radial-gradient(ellipse 55% 45% at 75% 60%, rgba(249,168,212,.09) 0%, transparent 60%),
    radial-gradient(ellipse 40% 35% at 55% 20%, rgba(94,234,212,.07) 0%, transparent 55%);
  pointer-events:none;
}
.planet-ring{
  position:absolute;
  border-radius:50%;border:1px solid;
  opacity:.18;pointer-events:none;
  animation:orbit 18s linear infinite;
}
.planet-ring:nth-child(2){width:420px;height:420px;top:-120px;right:-80px;border-color:var(--lavender);animation-duration:22s}
.planet-ring:nth-child(3){width:280px;height:280px;bottom:40px;left:-60px;border-color:var(--soft-pink);animation-duration:28s;animation-direction:reverse}
@keyframes orbit{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

.hero-portrait-wrap{
  position:relative;
  width:120px;height:120px;
  margin-bottom:1.6rem;
}
.hero-portrait-ring{
  position:absolute;inset:-14px;border-radius:50%;
  border:1px solid rgba(196,181,253,.25);
  animation:orbit 14s linear infinite;
}
.hero-portrait-ring--2{
  inset:-26px;
  border-color:rgba(249,168,212,.15);
  animation-duration:22s;
  animation-direction:reverse;
}
.hero-portrait-img{
  width:120px;height:120px;border-radius:50%;
  object-fit:cover;
  border:2px solid rgba(196,181,253,.25);
  box-shadow:0 0 32px rgba(196,181,253,.18);
  display:block;
}
.hero-name{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(3.8rem,9vw,7.5rem);
  font-weight:300;line-height:1.0;letter-spacing:-.01em;
  color:var(--white);margin-bottom:0;
}
.hero-name em{
  font-style:italic;color:var(--lavender);
  display:block;font-weight:300;
}
.hero-subtitle{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1rem,2vw,1.25rem);
  font-weight:400;font-style:italic;
  color:#5eead4;letter-spacing:.04em;
  margin-top:.6rem;margin-bottom:3rem;
}

/* ── SCROLL INDICATOR ───────────────────────────── */
.scroll-hint{
  position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;gap:.5rem;
  color:var(--muted);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;
  animation:fadeUp 2.5s ease-in-out infinite;
}
@keyframes fadeUp{0%,100%{opacity:.3;transform:translateX(-50%) translateY(0)}50%{opacity:.7;transform:translateX(-50%) translateY(-5px)}}
.scroll-hint::after{content:'';display:block;width:1px;height:28px;background:var(--muted);opacity:.4}

/* ── SECTION SHARED ────────────────────────────── */
section{padding:6rem 2rem;max-width:1080px;margin:0 auto}
.section-label{
  font-size:.75rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;
  color:var(--teal);margin-bottom:.8rem;
}
.section-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2rem,5vw,3.2rem);
  font-weight:300;line-height:1.15;
  color:var(--white);margin-bottom:2.5rem;
}
.section-title em{font-style:italic;color:var(--lavender)}

/* ── DIVIDER ──────────────────────────────────── */
.starline{
  width:100%;max-width:1080px;margin:0 auto;
  border:none;border-top:1px solid rgba(196,181,253,.1);
  position:relative;overflow:visible;
}
.starline::after{
  content:'✦';
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  color:var(--muted);font-size:.75rem;
  background:var(--navy);padding:0 .8rem;
  opacity:.5;
}

/* ── MILESTONES ─────────────────────────────────── */
.milestones-section{
  padding:5rem 2rem;
  background:linear-gradient(to bottom,transparent,rgba(20,20,56,.5),transparent);
}
.milestones-inner{max-width:760px;margin:0 auto}

.timeline{position:relative;padding-left:2.8rem}
.timeline::before{
  content:'';position:absolute;left:7px;top:8px;bottom:8px;width:1px;
  background:linear-gradient(to bottom,
    transparent,rgba(196,181,253,.35) 8%,rgba(196,181,253,.35) 92%,transparent);
}
.tl-item{position:relative;margin-bottom:0;padding-bottom:2.4rem;cursor:default}
.tl-item:last-child{padding-bottom:0}
.tl-dot{
  position:absolute;left:-2.8rem;top:.35rem;
  width:15px;height:15px;border-radius:50%;
  background:var(--dot-color,var(--lavender));
  box-shadow:0 0 10px var(--dot-color,var(--lavender));
  border:2px solid rgba(9,9,31,.8);
  transition:transform .25s,box-shadow .25s;
}
.tl-item:hover .tl-dot{transform:scale(1.4);box-shadow:0 0 18px var(--dot-color,var(--lavender))}
.tl-item.dot-pink{--dot-color:var(--soft-pink)}
.tl-item.dot-teal{--dot-color:var(--teal)}
.tl-item.dot-gold{--dot-color:var(--gold)}
.tl-head{display:flex;align-items:baseline;gap:1rem;flex-wrap:wrap}
.tl-year{
  font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--muted);white-space:nowrap;flex-shrink:0;min-width:6.5rem;
}
.tl-title{
  font-family:'Cormorant Garamond',serif;
  font-size:1.15rem;font-weight:600;color:var(--white);line-height:1.25;
  transition:color .2s;
}
.tl-item:hover .tl-title{color:var(--lavender)}
.tl-blurb{
  max-height:0;overflow:hidden;
  transition:max-height .38s cubic-bezier(.4,0,.2,1),opacity .3s ease,margin-top .3s ease;
  opacity:0;margin-top:0;
}
.tl-item:hover .tl-blurb{max-height:220px;opacity:1;margin-top:.55rem}
.tl-blurb p{font-size:.9rem;color:rgba(240,238,255,.58);line-height:1.65}

/* ── ABOUT ─────────────────────────────────────── */
.about-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:5rem;align-items:start}
.about-portrait{position:relative}
.portrait-frame{
  width:100%;aspect-ratio:3/4;border-radius:2rem;overflow:hidden;
  position:relative;border:1px solid rgba(196,181,253,.15);
}
.portrait-frame img{
  width:100%;height:100%;object-fit:cover;
  filter:brightness(.9) saturate(.85);transition:filter .4s;
}
.portrait-frame:hover img{filter:brightness(.95) saturate(1)}
.portrait-glow{
  position:absolute;inset:0;border-radius:2rem;
  background:linear-gradient(to bottom,transparent 50%,rgba(9,9,31,.8));
  pointer-events:none;
}
.portrait-planet{
  position:absolute;bottom:-20px;right:-20px;
  width:64px;height:64px;border-radius:50%;
  background:radial-gradient(circle at 35% 35%,#e879f9,#7c3aed 60%,#3730a3);
  box-shadow:0 0 24px rgba(232,121,249,.35);
  border:2px solid rgba(196,181,253,.2);
}
.portrait-planet::after{
  content:'';position:absolute;inset:-12px;border-radius:50%;
  border:1px solid rgba(196,181,253,.25);transform:rotate(-25deg);
}
.about-text p{color:rgba(240,238,255,.75);font-size:1rem;line-height:1.85;margin-bottom:1.25rem}
.about-text p:first-child{font-size:1.15rem;color:var(--white)}
.about-link{
  color:var(--lavender);text-decoration:none;
  border-bottom:1px solid rgba(196,181,253,.3);transition:border-color .2s;
}
.about-link:hover{border-color:var(--lavender)}

/* ── WRITING ───────────────────────────────────── */
.writing-section{padding:6rem 2rem;max-width:1080px;margin:0 auto}
.writing-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
.writing-card{
  padding:2rem;border-radius:1.25rem;
  border:1px solid rgba(196,181,253,.1);
  background:rgba(26,26,66,.4);
  transition:all .3s;text-decoration:none;display:block;
  position:relative;overflow:hidden;
}
.writing-card::after{
  content:'';position:absolute;inset:0;border-radius:1.25rem;
  background:radial-gradient(ellipse 80% 60% at 50% 110%,var(--glow-lavender),transparent);
  opacity:0;transition:opacity .3s;
}
.writing-card:hover{
  border-color:rgba(196,181,253,.22);transform:translateY(-3px);
  box-shadow:0 12px 40px rgba(9,9,31,.5);
}
.writing-card:hover::after{opacity:1}
.writing-tag{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--soft-pink);margin-bottom:.85rem}
.writing-card-desc{font-size:.9rem;color:rgba(240,238,255,.55);line-height:1.65}
.writing-arrow{
  display:inline-flex;align-items:center;gap:.4rem;
  font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--lavender);margin-top:1rem;transition:gap .2s;
}
.writing-card:hover .writing-arrow{gap:.7rem}

/* ── CONTACT ────────────────────────────────────── */
.contact-section{padding:6rem 2rem 8rem;text-align:center;position:relative;overflow:hidden}
.contact-nebula{
  position:absolute;inset:0;
  background:radial-gradient(ellipse 70% 60% at 50% 50%,rgba(139,92,246,.1),transparent 70%);
  pointer-events:none;
}
.contact-inner{max-width:620px;margin:0 auto;position:relative}
.contact-planet{
  width:90px;height:90px;border-radius:50%;margin:0 auto 2rem;
  background:radial-gradient(circle at 35% 30%,#67e8f9,#0891b2 55%,#164e63);
  box-shadow:0 0 40px rgba(103,232,249,.2);position:relative;
}
.contact-planet::before{
  content:'';position:absolute;inset:-18px;border-radius:50%;
  border:1px dashed rgba(103,232,249,.25);animation:orbit 12s linear infinite;
}
.contact-planet::after{
  content:'';position:absolute;inset:-30px;border-radius:50%;
  border:1px solid rgba(103,232,249,.1);animation:orbit 20s linear infinite reverse;
}
.contact-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2rem,5vw,3rem);font-weight:300;color:var(--white);margin-bottom:.75rem;
}
.contact-sub{color:rgba(240,238,255,.55);font-size:1rem;margin-bottom:2.5rem}
.contact-links{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}
.contact-link{
  display:inline-flex;align-items:center;gap:.6rem;
  padding:.7rem 1.5rem;border-radius:999px;
  font-size:.83rem;font-weight:500;letter-spacing:.08em;
  text-decoration:none;transition:all .3s;border:1px solid;
}
.cl-email{background:rgba(196,181,253,.08);border-color:rgba(196,181,253,.25);color:var(--lavender)}
.cl-email:hover{background:rgba(196,181,253,.16);border-color:rgba(196,181,253,.5);transform:translateY(-2px)}
.cl-twitter{background:rgba(94,234,212,.06);border-color:rgba(94,234,212,.22);color:var(--teal)}
.cl-twitter:hover{background:rgba(94,234,212,.14);border-color:rgba(94,234,212,.45);transform:translateY(-2px)}
.cl-linkedin{background:rgba(249,168,212,.06);border-color:rgba(249,168,212,.22);color:var(--soft-pink)}
.cl-linkedin:hover{background:rgba(249,168,212,.14);border-color:rgba(249,168,212,.45);transform:translateY(-2px)}

/* ── SITE FOOTER ─────────────────────────────────── */
.site-footer{
  border-top:1px solid rgba(196,181,253,.08);
  padding:2rem 4rem;
  display:flex;align-items:center;justify-content:space-between;
  color:rgba(157,143,212,.4);
  font-size:.78rem;letter-spacing:.06em;
}

/* ── INNER PAGES (Blog, Archive, Single, Page) ──── */
.page-hero{
  padding:9rem 2rem 4rem;
  text-align:center;
  position:relative;overflow:hidden;
}
.page-hero-nebula{
  position:absolute;inset:0;
  background:radial-gradient(ellipse 60% 50% at 50% 40%,rgba(139,92,246,.1),transparent 65%);
  pointer-events:none;
}
.page-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.5rem,6vw,4.5rem);font-weight:300;
  color:var(--white);margin-bottom:.5rem;position:relative;
}
.page-title em{font-style:italic;color:var(--lavender)}

.content-area{max-width:760px;margin:0 auto;padding:4rem 2rem 6rem}
.content-area .entry-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1.8rem,4vw,2.8rem);font-weight:300;
  color:var(--white);margin-bottom:1.5rem;
}
.content-area .entry-content{color:rgba(240,238,255,.75);font-size:1rem;line-height:1.85}
.content-area .entry-content p{margin-bottom:1.25rem}
.content-area .entry-content h2,
.content-area .entry-content h3{
  font-family:'Cormorant Garamond',serif;
  color:var(--white);margin:2rem 0 1rem;
}
.content-area .entry-content a{color:var(--lavender);text-decoration:none;border-bottom:1px solid rgba(196,181,253,.3)}
.content-area .entry-content a:hover{border-color:var(--lavender)}
.content-area .entry-meta{
  font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted);margin-bottom:2rem;
}

/* Post grid (archive) */
.posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}
.post-card{
  padding:2rem;border-radius:1.25rem;
  border:1px solid rgba(196,181,253,.1);
  background:rgba(26,26,66,.4);
  text-decoration:none;display:block;
  transition:all .3s;position:relative;overflow:hidden;
}
.post-card:hover{border-color:rgba(196,181,253,.22);transform:translateY(-3px);box-shadow:0 12px 40px rgba(9,9,31,.5)}
.post-card-date{font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem}
.post-card-title{
  font-family:'Cormorant Garamond',serif;
  font-size:1.3rem;font-weight:600;color:var(--white);line-height:1.3;margin-bottom:.6rem;
}
.post-card-excerpt{font-size:.88rem;color:rgba(240,238,255,.5);line-height:1.6}
.post-card-read{
  display:inline-block;margin-top:1rem;
  font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--lavender);
}

/* Pagination */
.pagination{display:flex;gap:.5rem;justify-content:center;margin-top:3rem}
.pagination a,.pagination span{
  padding:.45rem 1rem;border-radius:999px;
  font-size:.8rem;font-weight:500;text-decoration:none;
  border:1px solid rgba(196,181,253,.2);color:var(--muted);transition:all .25s;
}
.pagination a:hover{border-color:rgba(196,181,253,.45);color:var(--lavender)}
.pagination .current{background:rgba(196,181,253,.12);border-color:rgba(196,181,253,.35);color:var(--lavender)}

/* ── MISSION LOG (homepage short version) ──────── */
.mission-log-text{
  max-width:680px;margin:0 auto;
  font-size:1.05rem;line-height:1.85;
  color:rgba(240,238,255,.8);
  text-align:center;
}
.mission-log-readmore{
  text-align:center;margin-top:1.5rem;
}
.about-inline-link{
  font-family:'Cormorant Garamond',serif;
  font-size:1rem;font-style:italic;font-weight:400;
  color:var(--teal);text-decoration:none;
  border-bottom:1px solid rgba(94,234,212,.3);
  letter-spacing:.02em;
  transition:border-color .2s,color .2s;
}
.about-inline-link:hover{
  color:var(--white);
  border-color:var(--teal);
}

/* ── ABOUT PAGE (full layout) ───────────────────── */
.about-page-wrap{
  max-width:1080px;margin:0 auto;
  padding:4rem 2rem;
  display:grid;grid-template-columns:1fr 1.4fr;gap:5rem;
  align-items:start;
}
.about-page-portrait{position:relative}
.about-page-bio p{
  color:rgba(240,238,255,.75);
  font-size:1rem;line-height:1.85;
  margin-bottom:1.25rem;
}
.about-page-bio p:first-child{font-size:1.1rem;color:var(--white)}

/* ── TIMELINE LEGEND ────────────────────────────── */
.tl-legend{
  display:flex;flex-wrap:wrap;gap:1.25rem;
  justify-content:center;
  margin-bottom:2.5rem;
}
.tl-legend-item{
  display:flex;align-items:center;gap:.5rem;
  font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted);
}
.tl-legend-dot{
  width:10px;height:10px;border-radius:50%;flex-shrink:0;
}
.tl-legend-dot.edu  { background:var(--lavender); box-shadow:0 0 6px var(--lavender); }
.tl-legend-dot.fell { background:var(--gold);     box-shadow:0 0 6px var(--gold); }
.tl-legend-dot.job  { background:var(--teal);     box-shadow:0 0 6px var(--teal); }

/* ── SUBSTACK FEED LIST ─────────────────────────── */
.substack-list{
  display:flex;flex-direction:column;gap:1rem;
  margin-top:1rem;
}
.substack-card{
  display:flex;align-items:center;gap:1.25rem;
  padding:1rem 1.25rem;
  border-radius:1rem;
  border:1px solid rgba(196,181,253,.1);
  background:rgba(26,26,66,.4);
  text-decoration:none;
  transition:all .3s;
}
.substack-card:hover{
  border-color:rgba(196,181,253,.25);
  transform:translateX(4px);
  box-shadow:0 6px 28px rgba(9,9,31,.5);
}
.substack-thumb{
  width:72px;height:72px;
  border-radius:.6rem;
  object-fit:cover;
  flex-shrink:0;
  filter:brightness(.85) saturate(.8);
  transition:filter .3s;
}
.substack-card:hover .substack-thumb{
  filter:brightness(.95) saturate(1);
}
.substack-thumb-placeholder{
  width:72px;height:72px;
  border-radius:.6rem;
  flex-shrink:0;
  background:rgba(196,181,253,.08);
  border:1px solid rgba(196,181,253,.12);
  display:flex;align-items:center;justify-content:center;
  color:rgba(196,181,253,.3);
  font-size:1.25rem;
}
.substack-card-body{
  flex:1;min-width:0;
}
.substack-card-date{
  font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;
  color:var(--muted);margin-bottom:.25rem;
}
.substack-card-title{
  font-family:'Cormorant Garamond',serif;
  font-size:1.1rem;font-weight:600;
  color:var(--white);line-height:1.3;
  margin-bottom:.3rem;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.substack-card-desc{
  font-size:.82rem;color:rgba(240,238,255,.45);
  line-height:1.5;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.substack-card-arrow{
  font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--lavender);flex-shrink:0;margin-left:.5rem;
  transition:transform .2s;
}
.substack-card:hover .substack-card-arrow{transform:translateX(3px)}

@media(max-width:480px){
  .substack-thumb,.substack-thumb-placeholder{width:54px;height:54px}
}

/* ── POST CARD IMAGE ────────────────────────────── */
.post-card-img-wrap{
  width:calc(100% + 4rem);
  margin:-2rem -2rem 1.25rem -2rem;
  border-radius:1.25rem 1.25rem 0 0;
  overflow:hidden;
  aspect-ratio:16/9;
}
.post-card-img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
  filter:brightness(.85) saturate(.8);
  transition:filter .4s,transform .4s;
}
.post-card:hover .post-card-img{
  filter:brightness(.95) saturate(1);
  transform:scale(1.03);
}

/* ── POST NAVIGATION ────────────────────────────── */
.post-nav{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(196,181,253,.1)}
.post-nav-links{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.post-nav-prev,.post-nav-next{
  display:flex;flex-direction:column;gap:.25rem;
  text-decoration:none;max-width:48%;
  transition:opacity .2s;
}
.post-nav-prev:hover,.post-nav-next:hover{opacity:.75}
.post-nav-next{text-align:right;margin-left:auto}
.post-nav-label{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.post-nav-title{
  font-family:'Cormorant Garamond',serif;
  font-size:1.1rem;font-weight:600;color:var(--lavender);line-height:1.3;
}

/* ── MOBILE ─────────────────────────────────────── */
@media(max-width:768px){
  nav.site-nav{padding:1rem 1.5rem}
  .nav-toggle{display:flex}
  .primary-nav{display:none;position:absolute;top:100%;left:0;right:0;
    background:rgba(9,9,31,.97);padding:1.5rem;border-bottom:1px solid rgba(196,181,253,.1)}
  .primary-nav.is-open{display:block}
  .primary-nav ul{flex-direction:column;gap:1.2rem}
  .about-grid{grid-template-columns:1fr;gap:3rem}
  .about-page-wrap{grid-template-columns:1fr;gap:3rem}
  .writing-cards{grid-template-columns:1fr}
  .posts-grid{grid-template-columns:1fr}
  .post-nav-links{flex-direction:column}
  .post-nav-next{text-align:left;margin-left:0}
  .site-footer{flex-direction:column;gap:.5rem;text-align:center;padding:2rem}
}
