:root {
  --ss-plum: #4c0d2a;
  --ss-wine: #7b2949;
  --ss-gold: #f6d987;
  --ss-blush: #f3e5e3;
  --ss-cream: #fcf8f3;
  --ss-paper: #ffffff;
  --ss-ink: #2b1a20;
  --ss-muted: #75686d;
  --ss-line: rgba(76, 13, 42, 0.14);
  --ss-shadow: 0 20px 60px rgba(54, 24, 36, 0.09);
}

html { scroll-behavior: smooth; }
body { text-rendering: optimizeLegibility; }

.ss-site-header { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid var(--ss-line); backdrop-filter: blur(18px); background: rgba(252, 248, 243, 0.94); }
.admin-bar .ss-site-header { top: 32px; }
.ss-brand-row { min-height: 74px; }
.ss-wordmark { letter-spacing: -0.02em; }
.ss-wordmark a { text-decoration: none; }
.ss-spark { width: 18px; height: 18px; display: inline-block; background: var(--ss-gold); clip-path: polygon(50% 0, 63% 37%, 100% 50%, 63% 63%, 50% 100%, 37% 63%, 0 50%, 37% 37%); vertical-align: middle; margin-right: 0.6rem; }
.ss-kicker { color: var(--ss-wine); font-size: 0.76rem; font-weight: 750; letter-spacing: 0.14em; text-transform: uppercase; }
.ss-hero { overflow: hidden; }
.ss-hero-copy { min-height: clamp(430px, 62vw, 700px); display: flex; flex-direction: column; justify-content: center; }
.ss-hero-title { max-width: 8.8ch; letter-spacing: -0.035em; }
.ss-hero-text { max-width: 31rem; color: var(--ss-muted); }
.ss-hero-media { min-height: clamp(430px, 62vw, 700px); background-position: center; background-size: cover; }
.ss-section { padding-top: clamp(3.5rem, 8vw, 7rem); padding-bottom: clamp(3.5rem, 8vw, 7rem); }
.ss-section-title { max-width: 13ch; letter-spacing: -0.025em; }
.ss-section-lede { max-width: 43rem; color: var(--ss-muted); }
.ss-trending { padding-top: 1.25rem; padding-bottom: 1.25rem; border-top: 1px solid var(--ss-line); border-bottom: 1px solid var(--ss-line); }
.ss-trending h2 { margin: 0; }
.ss-trending-links { display: flex; flex-wrap: wrap; gap: 0.55rem 1.35rem; margin: 0; color: var(--ss-wine); font-size: 0.8rem; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; }
.ss-trending-links a { text-decoration: none; }
.ss-trending-links a:hover { text-decoration: underline; }
.ss-topic-card { min-height: 260px; border: 1px solid var(--ss-line); border-radius: 24px; padding: clamp(1.35rem, 3vw, 2rem); background: var(--ss-paper); box-shadow: 0 0 0 rgba(0,0,0,0); transition: transform 180ms ease, box-shadow 180ms ease; }
.ss-topic-card:hover { transform: translateY(-3px); box-shadow: var(--ss-shadow); }
.ss-topic-card h3 { margin-top: auto; }
.ss-topic-card p { color: var(--ss-muted); }
.ss-topic-card a { text-decoration: none; }
.ss-topic-card--plum { background: var(--ss-plum); color: var(--ss-paper); }
.ss-topic-card--plum h3, .ss-topic-card--plum a, .ss-topic-card--plum p { color: var(--ss-paper); }
.ss-topic-card--blush { background: var(--ss-blush); }
.ss-hero-text,
.ss-topic-card--blush p { color: #695b60; }
.ss-topic-card--gold { background: #fbf0cc; }
.ss-editorial-band { border-top: 1px solid var(--ss-line); border-bottom: 1px solid var(--ss-line); }
.ss-editorial-number { color: var(--ss-wine); font-family: Iowan Old Style, Baskerville, Times New Roman, serif; font-size: 2.4rem; line-height: 1; }
.ss-post-card { height: 100%; overflow: hidden; border: 1px solid var(--ss-line); border-radius: 22px; background: var(--ss-paper); }
.ss-post-card .wp-block-post-featured-image img { aspect-ratio: 4 / 5; object-fit: cover; }
.ss-post-card__body { padding: 1.25rem 1.35rem 1.5rem; }
.ss-article-shell { padding-top: clamp(2.5rem, 7vw, 6rem); padding-right: clamp(1rem, 4vw, 3.25rem); padding-bottom: clamp(4rem, 9vw, 8rem); padding-left: clamp(1rem, 4vw, 3.25rem); }
.ss-article-hero { margin-top: clamp(2.5rem, 6vw, 5rem); margin-bottom: clamp(3rem, 7vw, 6rem); }
.ss-article-header { max-width: 900px; margin-inline: auto; text-align: center; }
.ss-article-title { letter-spacing: -0.03em; text-wrap: balance; }
.ss-article-intro { max-width: 760px; margin: 1.5rem auto 0; color: var(--ss-muted); font-size: clamp(1.05rem, 1.6vw, 1.25rem); line-height: 1.65; }
.ss-article-intro > :first-child { margin-top: 0; }
.ss-article-intro > :last-child { margin-bottom: 0; }
.ss-article-featured { width: min(100%, 760px); margin: clamp(2.25rem, 5vw, 4.5rem) auto 0; background: var(--ss-paper); }
.ss-article-hero .ss-article-featured img { display: block; width: 100%; height: auto; aspect-ratio: 2 / 3; object-fit: contain; }
.ss-article-content > * { margin-block-start: 1.5rem; }
.ss-article-content h2 { margin-block-start: clamp(3rem, 7vw, 5rem); }
.ss-article-content h3 { margin-block-start: 2.6rem; }
.ss-article-content img { border-radius: 18px; }
.ss-article-content figcaption { color: var(--ss-muted); font-size: 0.82rem; }
.rank-math-breadcrumb { color: var(--ss-muted); font-size: 0.78rem; }
.rank-math-breadcrumb a { color: inherit; }
.ss-page-shell { padding-top: clamp(3rem, 8vw, 7rem); padding-bottom: clamp(4rem, 9vw, 8rem); }
.ss-page-intro { max-width: 780px; }
.ss-page-content { max-width: 780px; }
.ss-page-content h2 { margin-top: 3rem; }
.ss-section-feed { width: min(1240px, calc(100vw - 2rem)); max-width: none; position: relative; left: 50%; margin-top: clamp(4rem, 9vw, 7rem); margin-right: 0; margin-left: 0; transform: translateX(-50%); }
.ss-section-feed > h2 { margin-top: 0.35rem; }
.ss-section-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.25rem, 3vw, 2rem); margin-top: clamp(2rem, 5vw, 3.5rem); }
.ss-section-card__image { display: block; overflow: hidden; background: var(--ss-blush); }
.ss-section-card__image img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
.ss-section-card h3 { margin-top: 0; }
.ss-section-card h3 a { text-decoration: none; }
.ss-section-card p { color: var(--ss-muted); }
.ss-section-card__link { margin-top: 1.25rem; font-size: 0.78rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.ss-section-empty { margin-top: 2rem; padding: clamp(1.5rem, 4vw, 2.5rem); border: 1px solid var(--ss-line); border-radius: 22px; background: var(--ss-paper); }
.ss-section-empty p { max-width: 46rem; }
.ss-footer { border-top: 1px solid rgba(255,255,255,0.18); }
.ss-footer a { color: inherit; }
.ss-footer-nav { gap: 0.85rem 1.25rem; }
.ss-fine-print { color: rgba(255,255,255,0.72); font-size: 0.8rem; }
.wp-block-button__link { transition: transform 160ms ease, background-color 160ms ease; }
.wp-block-button__link:hover { transform: translateY(-1px); background: var(--ss-wine); }
@media (max-width: 781px) {
  .admin-bar .ss-site-header { top: 46px; }
  .ss-brand-row { min-height: 64px; }
  .ss-hero-copy { min-height: auto; padding-top: 4rem !important; padding-bottom: 4rem !important; }
  .ss-hero-media { min-height: 62vw; background-position: 58% center; }
  .ss-topic-card { min-height: 220px; }
  .ss-trending .wp-block-group { align-items: flex-start; }
  .ss-article-shell { padding-right: 1rem; padding-left: 1rem; }
  .ss-article-featured { margin-top: 2rem; }
  .ss-section-grid { grid-template-columns: 1fr; }
  .wp-block-navigation__responsive-container.is-menu-open { inset: 0; width: 100vw; height: 100dvh; min-height: 100vh; overflow-y: auto; box-sizing: border-box; padding: 1.5rem; background: var(--ss-cream) !important; }
}
@media (max-width: 480px) {
  .ss-hero-title { font-size: clamp(2.65rem, 15vw, 4.3rem) !important; }
  .ss-section { padding-top: 3.5rem; padding-bottom: 3.5rem; }
  .ss-topic-card { border-radius: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: 0.01ms !important; }
}
