/*
Theme Name: Sheridan Custom Child
Template: extendable
Description: Child theme adding a custom "Sheridan in the News" section (custom post type + shortcode) on top of the site's existing default theme (Extendable). No plugins required.
Version: 1.0
Text Domain: sheridan-child
*/

/* ============================================================
   Template is set to "extendable" to match the site's active
   parent theme. If the parent theme is ever changed or renamed
   on the server, this line has to be updated to match, or the
   child theme won't activate.
   ============================================================ */

/* ---- Design tokens ---- */
:root{
  --sitn-ink:#14201F;
  --sitn-ink-soft:#2B3A38;
  --sitn-paper:#EAE6DC;
  --sitn-paper-raised:#F4F1E9;
  --sitn-brass:#C68A2E;
  --sitn-brass-dim:#A8752A;
  --sitn-steel:#3E5C58;
  --sitn-line: rgba(20,32,31,0.14);
  --sitn-line-strong: rgba(20,32,31,0.28);
}

/* ---- Section wrapper (scoped so it never leaks into the rest of the theme) ---- */
.sitn-section{
  max-width:1180px;
  margin:0 auto;
  padding:64px 24px 80px;
  background:var(--sitn-paper);
  color:var(--sitn-ink);
  font-family:'IBM Plex Sans', sans-serif;
  -webkit-font-smoothing:antialiased;
}
.sitn-section *{ box-sizing:border-box; }

.sitn-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:32px;
  border-bottom:1px solid var(--sitn-line-strong);
  padding-bottom:32px;
  margin-bottom:44px;
  flex-wrap:wrap;
}
.sitn-eyebrow{
  font-family:'IBM Plex Mono', monospace;
  font-size:12px;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--sitn-steel);
  margin:0 0 14px;
  display:flex;
  align-items:center;
  gap:10px;
}
.sitn-eyebrow::before{
  content:"";
  width:22px;
  height:1px;
  background:var(--sitn-brass);
  display:inline-block;
}
.sitn-section h2{
  font-family:'Fraunces', serif;
  font-weight:600;
  font-size:clamp(30px, 4vw, 48px);
  line-height:1.05;
  letter-spacing:-0.01em;
  margin:0 0 14px;
  color:var(--sitn-ink);
}
.sitn-dek{
  font-size:16px;
  line-height:1.55;
  color:var(--sitn-ink-soft);
  max-width:46ch;
  margin:0;
}

.sitn-filters{ display:flex; gap:8px; flex-wrap:wrap; }
.sitn-chip{
  font-family:'IBM Plex Mono', monospace;
  font-size:12px;
  letter-spacing:0.04em;
  padding:8px 14px;
  border:1px solid var(--sitn-line-strong);
  border-radius:100px;
  background:transparent;
  color:var(--sitn-ink-soft);
  cursor:pointer;
  transition:all .15s ease;
  white-space:nowrap;
}
.sitn-chip:hover{ border-color:var(--sitn-brass); color:var(--sitn-ink); }
.sitn-chip.is-active{
  background:var(--sitn-ink);
  border-color:var(--sitn-ink);
  color:var(--sitn-paper-raised);
}

.sitn-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:2px;
  background:var(--sitn-line-strong);
  border:1px solid var(--sitn-line-strong);
}
@media (max-width:900px){ .sitn-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:620px){ .sitn-grid{ grid-template-columns:1fr; } }

.sitn-card{
  background:var(--sitn-paper-raised);
  display:flex;
  flex-direction:column;
  text-decoration:none;
  color:inherit;
  position:relative;
  transition:transform .18s ease, box-shadow .18s ease;
}
.sitn-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 30px -18px rgba(20,32,31,0.35);
  z-index:2;
}
.sitn-card.is-hidden{ display:none; }

.sitn-thumb{
  position:relative;
  aspect-ratio: 4 / 3;
  overflow:hidden;
  background:
    radial-gradient(120% 140% at 15% 0%, rgba(198,138,46,0.55), transparent 55%),
    linear-gradient(135deg, var(--sitn-ink) 0%, var(--sitn-steel) 65%, var(--sitn-ink) 100%);
}
.sitn-thumb img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  mix-blend-mode:luminosity;
  opacity:0.85;
}
.sitn-stamp{
  position:absolute;
  top:14px; left:14px;
  font-family:'IBM Plex Mono', monospace;
  font-size:10.5px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--sitn-paper-raised);
  background:rgba(20,32,31,0.55);
  border:1px solid rgba(234,230,220,0.55);
  padding:5px 9px;
  transform:rotate(-2deg);
  backdrop-filter:blur(2px);
  z-index:1;
}
.sitn-stamp span{ color:var(--sitn-brass); margin-left:6px; }

.sitn-card-body{
  padding:22px 22px 24px;
  display:flex;
  flex-direction:column;
  gap:10px;
  flex:1;
}
.sitn-outlet{
  font-family:'IBM Plex Mono', monospace;
  font-size:11px;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--sitn-steel);
}
.sitn-headline{
  font-family:'Fraunces', serif;
  font-weight:600;
  font-size:19px;
  line-height:1.22;
  margin:0;
  color:var(--sitn-ink);
}
.sitn-card-dek{
  font-size:13.5px;
  color:var(--sitn-ink-soft);
  line-height:1.45;
  margin:0;
  flex:1;
}
.sitn-cta{
  margin-top:6px;
  font-family:'IBM Plex Mono', monospace;
  font-size:11.5px;
  letter-spacing:0.05em;
  color:var(--sitn-brass-dim);
  display:flex;
  align-items:center;
  gap:6px;
}
.sitn-cta .sitn-arrow{ transition:transform .18s ease; }
.sitn-card:hover .sitn-cta .sitn-arrow{ transform:translateX(3px); }
.sitn-card:hover .sitn-cta{ color:var(--sitn-brass); }

.sitn-empty{
  padding:40px;
  text-align:center;
  font-family:'IBM Plex Mono', monospace;
  font-size:13px;
  color:var(--sitn-ink-soft);
  background:var(--sitn-paper-raised);
  border:1px dashed var(--sitn-line-strong);
}
