/* ==========================================================
   Pandimadevi.org — shared styles
   "Editorial Split" system: full-height split-screen home,
   magazine-index tribute list, editorial article pages.
   ========================================================== */

*{margin:0;padding:0;box-sizing:border-box;}

:root{
  --ink:#241B12;
  --paper:#F7F1E4;
  --panel:#FBF6EA;
  --terracotta:#9C4A2C;
  --terracotta-soft:#F1E0D0;
  --muted:#6B5D4A;
  --hairline:#E4DAC6;
  --teal:#2B7A78;
  --teal-soft:#E9F3F2;
}

body{
  background:var(--paper);
  color:var(--ink);
  font-family:'Source Serif 4', serif;
  font-weight:400;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

a{ color:var(--terracotta); }

h1, h2{
  font-family:'Libre Caslon Display', serif;
  font-weight:400;
  color:var(--ink);
  letter-spacing:-0.01em;
}

/* ---------- Shared top bar (all inner pages) ---------- */
.site-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
  max-width:1040px;
  margin:0 auto;
  width:100%;
  padding:2rem 6vw 1.6rem;
  flex-wrap:wrap;
}

.site-wordmark{
  font-family:'Inter', sans-serif;
  font-weight:600;
  font-size:0.82rem;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--terracotta);
  text-decoration:none;
}

.site-nav{
  display:flex;
  gap:1.6rem;
  flex-wrap:wrap;
}

.site-nav a{
  font-family:'Inter', sans-serif;
  font-size:0.78rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  text-decoration:none;
  color:var(--muted);
  padding-bottom:0.3rem;
  border-bottom:1.5px solid transparent;
  transition:color 0.2s ease, border-color 0.2s ease;
}

.site-nav a:hover,
.site-nav a[aria-current="page"]{
  color:var(--ink);
  border-color:var(--terracotta);
  font-weight:600;
}

/* ---------- Main layout ---------- */
main{
  max-width:700px;
  margin:0 auto;
  padding:1.5rem 6vw 5rem;
  flex:1;
  width:100%;
}

main.wide{ max-width:980px; }

.kicker{
  font-family:'Inter', sans-serif;
  font-weight:600;
  font-size:0.78rem;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--terracotta);
  margin-bottom:1rem;
}

h1{
  font-size:clamp(2rem, 5vw, 2.9rem);
  line-height:1.12;
  margin-bottom:0.9rem;
}

h2{
  font-size:clamp(1.3rem, 3.2vw, 1.6rem);
  margin-bottom:1rem;
}

.byline{
  font-family:'Inter', sans-serif;
  font-style:normal;
  color:var(--muted);
  font-size:0.88rem;
  letter-spacing:0.02em;
  margin-bottom:2.6rem;
  padding-bottom:2rem;
  border-bottom:1px solid var(--hairline);
}

.page-intro{
  font-style:italic;
  color:var(--muted);
  font-size:1.05rem;
  margin-bottom:2.6rem;
  padding-bottom:2rem;
  border-bottom:1px solid var(--hairline);
  max-width:620px;
}

p{
  font-size:1.06rem;
  color:var(--ink);
  margin-bottom:1.4rem;
  text-align:left;
  hyphens:auto;
}

main#tribute p:first-of-type::first-letter{
  font-family:'Libre Caslon Display', serif;
  font-weight:400;
  font-size:3.3rem;
  float:left;
  line-height:0.82;
  padding-right:0.12em;
  padding-top:0.08em;
  color:var(--terracotta);
}

img{
  display:block;
  max-width:100%;
  border-radius:2px;
}

.portrait{
  width:320px;
  margin:2.4rem 0;
  box-shadow:0 14px 34px rgba(36,27,18,0.2);
}

.signoff{
  margin-top:2rem;
  padding-top:2rem;
  border-top:1px solid var(--hairline);
  text-align:right;
  font-style:italic;
  color:var(--muted);
}

/* ---------- Scanned / shared tribute image ---------- */
.tribute-scan{
  width:100%;
  max-width:520px;
  margin:0.5rem 0 1.2rem;
  display:block;
  box-shadow:0 14px 34px rgba(36,27,18,0.2);
}

.tribute-scan-caption{
  font-style:italic;
  color:var(--muted);
  font-size:0.92rem;
  margin-bottom:0.8rem;
}

.tribute-article-link{
  margin-bottom:2.5rem;
}

/* ---------- Home hero (centered portrait + intro) ---------- */
.home-main{ max-width:640px; }

.home-hero-block{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  margin-bottom:1rem;
}

.home-portrait{
  width:min(380px, 74vw);
  aspect-ratio:4/5;
  overflow:hidden;
  background:var(--panel);
  border:8px solid #fff;
  border-radius:2px;
  box-shadow:
    0 0 0 1px var(--hairline),
    0 14px 30px -12px rgba(36,27,18,0.28);
  margin-bottom:1.8rem;
}

.home-portrait img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 15%;
  display:block;
}

.home-hero-block .kicker{ margin-bottom:1rem; }

.home-hero-block h1{ margin-bottom:1.1rem; }

.hero-dates{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0.9rem;
  font-family:'Inter', sans-serif;
  font-size:0.92rem;
  letter-spacing:0.06em;
  color:var(--muted);
  margin-bottom:1.8rem;
}

.hero-dates .dot{
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--terracotta);
}

.hero-poem{
  font-style:italic;
  color:var(--ink);
  font-size:1.1rem;
  line-height:1.75;
  max-width:440px;
  margin:0 auto 0.9rem;
  text-align:center;
}

.hero-poem-final{
  font-style:italic;
  color:var(--ink);
  font-size:1.1rem;
  line-height:1.75;
  max-width:440px;
  margin:0 auto;
  text-align:center;
}

/* ---------- Magazine index (home teaser + tribute list) ---------- */
.index-label{
  font-family:'Inter', sans-serif;
  font-weight:600;
  font-size:0.78rem;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--terracotta);
  margin:2.2rem 0 0.2rem;
  padding-top:1.6rem;
  border-top:1px solid var(--hairline);
}

.index-label:first-child{
  margin-top:0;
  padding-top:0;
  border-top:none;
}

.index-list{ margin-top:0; }

.index-item{
  display:flex;
  align-items:baseline;
  gap:1.2rem;
  padding:1.15rem 0;
  border-bottom:1px solid var(--hairline);
  text-decoration:none;
  color:inherit;
}

.index-item:last-child{ border-bottom:none; }

.index-item .num{
  font-family:'Inter', sans-serif;
  font-size:0.8rem;
  font-weight:600;
  color:var(--terracotta);
  flex:none;
  width:22px;
}

.index-item .meta{ flex:1; min-width:0; }

.index-item h2,
.index-item h3{
  font-family:'Libre Caslon Display', serif;
  font-weight:400;
  font-size:1.18rem;
  margin:0 0 0.25rem;
  color:var(--ink);
}

.index-item .index-byline{
  font-family:'Inter', sans-serif;
  font-size:0.78rem;
  color:var(--muted);
  letter-spacing:0.02em;
}

.index-item .index-preview{
  font-family:'Source Serif 4', serif;
  font-size:0.94rem;
  color:var(--muted);
  margin-top:0.4rem;
  line-height:1.55;
}

.index-item .arrow{
  font-family:'Inter', sans-serif;
  color:var(--terracotta);
  font-size:1.1rem;
  align-self:center;
}

a.index-item:hover .meta h2,
a.index-item:hover .meta h3{
  color:var(--terracotta);
}

/* Small "New" flag — used on a freshly-added tribute, both in the listing
   rows (inside the h2) and on the tribute page itself (inside the kicker). */
.badge-new{
  display:inline-flex;
  align-items:center;
  gap:0.28rem;
  font-family:'Inter', sans-serif;
  font-size:0.62rem;
  font-weight:700;
  letter-spacing:0.05em;
  text-transform:uppercase;
  color:#fff;
  background:var(--terracotta);
  border-radius:20px;
  padding:0.2rem 0.55rem 0.2rem 0.42rem;
  vertical-align:middle;
  margin-left:0.55rem;
  position:relative;
  top:-0.15em;
}

.badge-new svg{
  width:9px;
  height:9px;
  flex:none;
}

.kicker .badge-new{
  font-size:0.66rem;
  top:-0.2em;
}

.index-more{
  display:inline-block;
  margin-top:1.6rem;
  font-family:'Inter', sans-serif;
  font-size:0.85rem;
  letter-spacing:0.03em;
  color:var(--terracotta);
  text-decoration:none;
  border-bottom:1px solid var(--terracotta);
  padding-bottom:0.15rem;
}

.index-more:hover{ opacity:0.75; }

/* ---------- Compact masthead / page header (inner pages) ---------- */
.page-header{
  padding:0.5rem 0 0;
}

/* ---------- Background music toggle ---------- */
.music-toggle{
  position:fixed;
  bottom:1.5rem;
  left:1.5rem;
  width:46px;
  height:46px;
  border-radius:50%;
  background:var(--ink);
  color:var(--paper);
  border:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 6px 18px rgba(36,27,18,0.32);
  z-index:1000;
  transition:opacity 0.2s ease, transform 0.2s ease;
  padding:0;
}

.music-toggle:hover{
  opacity:0.88;
  transform:scale(1.05);
}

.music-toggle svg{
  width:20px;
  height:20px;
}

.music-toggle .wave{
  transition:opacity 0.15s ease;
}

.music-toggle.is-muted .wave{
  opacity:0;
}

/* ---------- Footer ---------- */
.site-footer{
  font-family:'Inter', sans-serif;
  text-align:center;
  font-size:0.78rem;
  letter-spacing:0.02em;
  color:var(--muted);
  padding:2rem 6vw 2.5rem;
  border-top:1px solid var(--hairline);
  max-width:980px;
  margin:0 auto;
  width:100%;
}

.footer-note{
  margin-top:0.4rem;
  font-size:0.72rem;
  opacity:0.75;
}

/* ---------- Gallery ---------- */
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:1.5rem;
  margin-top:1rem;
}

.gallery-grid figure{
  margin:0;
}

.gallery-grid img{
  width:100%;
  aspect-ratio:1249/2048;
  object-fit:cover;
  margin:0;
}

#galleryData{
  display:none;
}

/* ---------- Photo-frame slideshow ---------- */
.slideshow{
  max-width:640px;
  margin:1.5rem auto 0;
  display:flex;
  flex-direction:column;
  align-items:center;
}

.slideshow:focus-visible{
  outline:2px solid var(--terracotta);
  outline-offset:6px;
}

.slideshow-frame{
  width:auto;
  max-width:100%;
  height:min(78vh, 720px);
  aspect-ratio:1249/2048;
  background:var(--panel);
  border:10px solid #fff;
  border-radius:2px;
  box-shadow:
    0 0 0 1px var(--hairline),
    0 1px 3px rgba(36,27,18,0.06) inset,
    0 18px 40px rgba(36,27,18,0.24);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  position:relative;
}

.slideshow-img{
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
  opacity:1;
  transition:opacity 0.35s ease;
}

.slideshow-img.is-fading{
  opacity:0;
}

.slideshow-controls{
  margin-top:1.1rem;
  display:flex;
  align-items:center;
  gap:0.9rem;
}

.slide-btn{
  width:42px;
  height:42px;
  border-radius:50%;
  background:none;
  border:1px solid var(--hairline);
  color:var(--terracotta);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:background 0.2s ease, transform 0.15s ease, border-color 0.2s ease;
}

.slide-btn svg{ width:18px; height:18px; }

.slide-btn:hover{
  background:var(--terracotta-soft);
  border-color:var(--terracotta);
  transform:scale(1.06);
}

.slide-btn:focus-visible{
  outline:2px solid var(--terracotta);
  outline-offset:2px;
}

.slide-btn-play{
  width:48px;
  height:48px;
  background:var(--ink);
  border-color:var(--ink);
  color:var(--paper);
}

.slide-btn-play:hover{
  background:var(--ink);
  opacity:0.88;
}

.slide-btn-play .icon-play{ display:none; }
.slide-btn-play.is-paused .icon-play{ display:block; }
.slide-btn-play.is-paused .icon-pause{ display:none; }

.slideshow-dots{
  margin-top:1rem;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:0.5rem;
  max-width:400px;
}

.slide-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--hairline);
  border:none;
  padding:0;
  cursor:pointer;
  transition:background 0.2s ease, transform 0.2s ease;
}

.slide-dot:hover{
  background:var(--terracotta);
}

.slide-dot.is-active{
  background:var(--terracotta);
  transform:scale(1.25);
}

.slide-dot:focus-visible{
  outline:2px solid var(--terracotta);
  outline-offset:2px;
}

.slideshow-counter{
  margin-top:0.6rem;
  font-family:'Inter', sans-serif;
  font-size:0.72rem;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--muted);
}

@media (max-width:640px){
  .slideshow-frame{ height:min(68vh, 560px); border-width:7px; }
  .slide-btn{ width:38px; height:38px; }
  .slide-btn-play{ width:44px; height:44px; }
  .slideshow-controls{ gap:0.6rem; }
}

.back-link{
  display:inline-block;
  font-family:'Inter', sans-serif;
  font-size:0.78rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--muted);
  text-decoration:none;
  margin-bottom:2.4rem;
}

.back-link:hover{
  color:var(--terracotta);
}

/* ---------- Guestbook ---------- */
.guestbook-form{
  background:var(--panel);
  border:1px solid var(--hairline);
  border-radius:2px;
  padding:2.2rem;
  margin-bottom:3rem;
}

.guestbook-form label{
  display:block;
  font-family:'Inter', sans-serif;
  font-size:0.78rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--muted);
  margin-bottom:0.4rem;
}

.guestbook-form input,
.guestbook-form textarea{
  width:100%;
  font-family:'Source Serif 4', serif;
  font-size:1rem;
  padding:0.7rem 0.9rem;
  border:1px solid var(--hairline);
  border-radius:2px;
  background:#fff;
  color:var(--ink);
  margin-bottom:1.3rem;
}

.guestbook-form input:focus,
.guestbook-form textarea:focus{
  outline:none;
  border-color:var(--terracotta);
}

.guestbook-form textarea{
  min-height:110px;
  resize:vertical;
}

.guestbook-form button{
  font-family:'Inter', sans-serif;
  font-size:0.85rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  font-weight:600;
  background:var(--ink);
  color:var(--paper);
  border:none;
  border-radius:2px;
  padding:0.85rem 1.9rem;
  cursor:pointer;
  transition:opacity 0.2s ease;
}

.guestbook-form button:hover{
  opacity:0.85;
}

.guestbook-form input[type="file"]{
  padding:0.55rem 0.7rem;
  font-size:0.9rem;
  color:var(--muted);
  cursor:pointer;
  font-family:'Inter', sans-serif;
}

.guestbook-note{
  font-family:'Inter', sans-serif;
  font-size:0.76rem;
  color:var(--muted);
  margin-top:1rem;
}

.field-note{
  font-family:'Inter', sans-serif;
  font-size:0.76rem;
  color:var(--muted);
  margin-top:-0.9rem;
  margin-bottom:1.3rem;
}
.field-note.field-error{
  display:none;
  color:#9C2C2C;
  margin-top:0.4rem;
  margin-bottom:0.9rem;
}
.field-note.field-error.showing{
  display:block;
}

.guestbook-entry-photo{
  width:100%;
  max-width:320px;
  border-radius:2px;
  margin:0.6rem 0 1rem;
  box-shadow:0 8px 20px rgba(36,27,18,0.18);
}

.guestbook-entry{
  padding:1.4rem 0;
  border-bottom:1px solid var(--hairline);
}

.guestbook-entry:last-child{
  border-bottom:none;
}

.guestbook-entry p{
  margin-bottom:0.4rem;
}

.guestbook-entry .entry-name{
  font-weight:600;
  color:var(--ink);
  font-style:normal;
}

.guestbook-entry .entry-date{
  font-family:'Inter', sans-serif;
  font-size:0.78rem;
  color:var(--muted);
}

.guestbook-entry-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin-top:0.6rem;
}

.guestbook-entry-footer .entry-date{
  margin-bottom:0;
}

.reaction-btn{
  display:inline-flex;
  align-items:center;
  gap:0.4rem;
  background:none;
  border:1px solid var(--hairline);
  border-radius:999px;
  padding:0.35rem 0.8rem;
  font-family:'Inter', sans-serif;
  font-size:0.8rem;
  color:var(--muted);
  cursor:pointer;
  transition:border-color 0.2s ease, color 0.2s ease, transform 0.15s ease;
}

.reaction-btn svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  transition:fill 0.2s ease, stroke 0.2s ease;
}

.reaction-btn:hover{
  border-color:var(--terracotta);
  color:var(--terracotta);
}

.reaction-btn.reacted{
  border-color:var(--terracotta);
  color:var(--terracotta);
}

.reaction-btn.reacted svg{
  fill:var(--terracotta);
  stroke:var(--terracotta);
}

.reaction-btn:active{
  transform:scale(0.9);
}

.form-success{
  display:none;
  padding:2rem;
  border:1px solid var(--hairline);
  border-radius:2px;
  margin-bottom:3rem;
}

.form-success p{
  font-style:italic;
  color:var(--terracotta);
  margin-bottom:1.4rem;
}

.form-success-link{
  display:inline-block;
  font-family:'Inter', sans-serif;
  font-size:0.85rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  font-weight:600;
  background:var(--ink);
  color:var(--paper);
  border:none;
  border-radius:2px;
  padding:0.85rem 1.9rem;
  text-decoration:none;
  transition:opacity 0.2s ease;
}

.form-success-link:hover{
  opacity:0.85;
}

/* ---------- Language toggle ---------- */
span[data-lang-content]{
  display:none;
}

html[data-lang="en"] span[data-lang-content="en"]{
  display:inline;
}

html[data-lang="ta"] span[data-lang-content="ta"]{
  display:inline;
}

span[data-lang-content="ta"]{
  font-family:'Noto Serif Tamil', 'Source Serif 4', serif;
}

h1 span[data-lang-content="ta"],
h2 span[data-lang-content="ta"],
h3 span[data-lang-content="ta"],
.site-wordmark span[data-lang-content="ta"]{
  font-family:'Noto Serif Tamil', 'Libre Caslon Display', serif;
}

.lang-toggle{
  display:inline-flex;
  border:1px solid var(--ink);
  border-radius:20px;
  overflow:hidden;
  background:transparent;
}

.lang-btn{
  font-family:'Inter', sans-serif;
  font-size:0.72rem;
  letter-spacing:0.05em;
  border:none;
  background:transparent;
  color:var(--ink);
  padding:0.4rem 0.85rem;
  cursor:pointer;
  transition:background 0.2s ease, color 0.2s ease;
}

.lang-btn.active{
  background:var(--ink);
  color:var(--paper);
}

.lang-disclaimer{
  display:none;
  width:100%;
  font-family:'Noto Serif Tamil', 'Source Serif 4', serif;
  font-size:0.78rem;
  font-style:italic;
  color:var(--muted);
  margin-top:0.9rem;
  padding-top:0.9rem;
  border-top:1px solid var(--hairline);
}

html[data-lang="ta"] .lang-disclaimer{
  display:block;
}

/* ---------- Awareness page ---------- */
.ribbon-icon{
  display:block;
  width:34px;
  height:auto;
  margin-bottom:1.2rem;
}

.awareness-section{
  margin-top:3rem;
  padding-top:2.2rem;
  border-top:1px solid var(--hairline);
}

.awareness-section:first-of-type{
  margin-top:0;
  padding-top:0;
  border-top:none;
}

.awareness-section-intro{
  font-style:italic;
  color:var(--muted);
  font-size:1rem;
  max-width:640px;
  margin-bottom:1.8rem;
}

.stat-strip{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:2rem;
  margin:0.5rem 0 3rem;
}

.stat-card{
  padding:0 0 0 1.2rem;
  border-left:2px solid var(--teal);
}

.stat-number{
  display:block;
  font-family:'Libre Caslon Display', serif;
  font-weight:400;
  font-size:1.9rem;
  color:var(--teal);
  margin-bottom:0.5rem;
  line-height:1.1;
}

.stat-label{
  font-size:0.9rem;
  color:var(--ink);
  line-height:1.55;
}

.stat-source{
  display:block;
  font-family:'Inter', sans-serif;
  font-size:0.7rem;
  color:var(--muted);
  margin-top:0.6rem;
}

.symptom-grid{
  margin-bottom:0.6rem;
}

.symptom-card{
  display:flex;
  gap:1.2rem;
  align-items:flex-start;
  padding:1.15rem 0;
  border-bottom:1px solid var(--hairline);
}

.symptom-icon{
  width:26px;
  height:26px;
  margin-top:0.15rem;
  color:var(--teal);
  flex:none;
}

.symptom-title{
  font-family:'Libre Caslon Display', serif;
  font-weight:400;
  font-size:1.08rem;
  color:var(--ink);
  margin-bottom:0.3rem;
}

.symptom-desc{
  font-size:0.94rem;
  color:var(--muted);
  line-height:1.6;
}

.awareness-footnote{
  font-family:'Inter', sans-serif;
  font-size:0.8rem;
  color:var(--muted);
  margin-top:1.4rem;
  line-height:1.6;
}

.awareness-footnote a{ color:var(--teal); }

.risk-list{
  max-width:640px;
  list-style:none;
}

.risk-list li{
  position:relative;
  padding-left:1.3rem;
  margin-bottom:0.85rem;
  font-size:1.02rem;
  color:var(--ink);
  line-height:1.6;
}

.risk-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:0.6em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--teal);
}

.awareness-callout{
  font-family:'Libre Caslon Display', serif;
  font-style:italic;
  font-weight:400;
  border-left:2px solid var(--teal);
  padding:0.2rem 0 0.2rem 1.5rem;
  margin-top:1.4rem;
  max-width:640px;
  font-size:1.15rem;
  color:var(--ink);
  line-height:1.55;
}

.resource-grid{
  display:block;
}

.resource-card{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:1.5rem;
  padding:1.1rem 0;
  border-bottom:1px solid var(--hairline);
}

.resource-card > div:first-child{ flex:1; min-width:0; }

.resource-name{
  font-family:'Libre Caslon Display', serif;
  font-weight:400;
  font-size:1.05rem;
  color:var(--ink);
  margin-bottom:0.3rem;
}

.resource-desc{
  font-size:0.9rem;
  color:var(--muted);
  line-height:1.5;
}

.resource-link{
  font-family:'Inter', sans-serif;
  font-size:0.82rem;
  color:var(--teal);
  text-decoration:none;
  border-bottom:1px solid var(--teal);
  padding-bottom:0.1rem;
  flex:none;
  white-space:nowrap;
}

.resource-link:hover{ opacity:0.75; }

.awareness-disclaimer{
  font-family:'Inter', sans-serif;
  font-size:0.8rem;
  font-style:normal;
  color:var(--muted);
  max-width:640px;
  margin-top:3rem;
  padding-top:1.6rem;
  border-top:1px solid var(--hairline);
  line-height:1.6;
}

/* ---------- Responsive ---------- */
@media (max-width:640px){
  main{ padding:1.2rem 7vw 2rem; }
  p{ font-size:1.02rem; }
  main#tribute p:first-of-type::first-letter{ font-size:2.7rem; }
  .signoff{ text-align:left; }
  .stat-strip{ grid-template-columns:1fr; gap:1.6rem; }
  .site-topbar{ padding:1.6rem 7vw 1.2rem; gap:1rem; }
  .site-nav{ gap:1rem; }
  .resource-card{ flex-direction:column; align-items:flex-start; gap:0.5rem; }
}
