/* ══ Design Tokens ══════════════════════════════════════ */
:root {
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
}

/* ══ Reset & Base ═══════════════════════════════════════ */
body, html {
  overflow-x: hidden;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: var(--sans);
  color: var(--ink);
  background: var(--paper);
  font-size: 16px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}
h1,h2,h3,h4,h5 { font-family: var(--serif); }
a { text-decoration: none; color: var(--wine); transition: color .2s; }
a:hover { color: var(--wine-d); }
img { max-width: 100%; display: block; }

/* ══ TOPBAR ═════════════════════════════════════════════ */
.topbar {
  background: var(--wine);
  color: rgba(255,255,255,.75);
  font-family: var(--sans);
  font-size: .74rem;
  padding: 8px 0;
  letter-spacing: .02em;
}
.topbar a { color: rgba(255,255,255,.75); }
.topbar a:hover { color: #fff; }
.topbar-sep { width: 1px; height: 12px; background: rgba(255,255,255,.22); display: inline-block; }

/* ══ NAVBAR ════════════════════════════════════════════ */
.site-nav {
  position: sticky; top: 0; z-index: 1030;
  background: rgba(255,253,248,.96);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--mist);
  transition: box-shadow .3s;
}
.site-nav.scrolled { box-shadow: 0 4px 28px rgba(23,14,8,.11); }
.nav-inner {
  display: flex; align-items: center;
  height: 70px;
  position: relative;
}
.brand { display: flex; align-items: center; gap: 14px; text-decoration: none; flex-shrink: 0; }
.brand-cross {
  width: 46px; height: 46px; border-radius: 8px;
  background: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--serif); font-size: 1.3rem; color: #fff;
  flex-shrink: 0; letter-spacing: 0;
}
.brand-primary { font-family: var(--serif); font-size: 1.08rem; font-weight: 600; color: var(--ink); line-height: 1.2; }
.brand-sub { font-family: var(--sans); font-size: .66rem; color: var(--stone); letter-spacing: .07em; text-transform: uppercase; }
.nav-links {
  display: flex; align-items: center; gap: 0;
  margin-left: auto; list-style: none;
}
.nav-links a {
  font-family: var(--sans); font-size: .82rem; font-weight: 500;
  color: #4a3a2e; padding: 0 .85rem; height: 70px;
  display: flex; align-items: center;
  border-bottom: 2px solid transparent;
  transition: color .2s, border-color .2s; letter-spacing: .02em;
}
.nav-links a:hover, .nav-links a.active { color: var(--wine); border-bottom-color: var(--wine); }
.nav-links .btn-login {
  background: var(--wine); color: #fff !important;
  border-radius: 5px; padding: .38rem .9rem !important;
  height: auto !important; border-bottom: none !important;
  font-size: .78rem !important; font-weight: 600 !important;
  margin-left: .4rem;
}
.nav-links .btn-login:hover { background: var(--wine-d) !important; }
.nav-toggler {
  display: none; background: none; border: none;
  cursor: pointer; margin-left: auto; color: var(--wine); font-size: 1.4rem;
}
@media (max-width: 991px) {
  .nav-links { display: none; }
  .nav-links.open {
    display: flex; flex-direction: column;
    position: absolute; top: 70px; left: 0; right: 0;
    background: rgba(255,253,248,.98); border-bottom: 1px solid var(--mist);
    padding: .75rem 0 1.5rem; z-index: 999;
  }
  .nav-links.open a { height: auto; padding: .6rem 1.5rem; border-bottom: none; }
  .nav-links.open a:hover { background: var(--cream); }
  .nav-toggler { display: block; }
}

/* ══ HERO ════════════════════════════════════════════= */
.hero {
  position: relative; height: 92vh; min-height: 560px;
  overflow: hidden; background: var(--ink);
}
.hero-bg {
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1548625149-720754963c49?w=1600&q=80') center/cover no-repeat;
  transform: scale(1.06); transition: transform 14s ease;
}
.hero:hover .hero-bg { transform: scale(1); }
.hero-veil {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(23,14,8,.84) 0%, rgba(92,21,25,.6) 55%, rgba(23,14,8,.35) 100%);
}
/* Watermark cross */
.hero-watermark {
  position: absolute; right: 4%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(45vw, 44rem);
  color: rgba(255,255,255,.038); line-height: 1;
  pointer-events: none; user-select: none; letter-spacing: -0.05em;
}
.hero-body {
  position: relative; z-index: 2; height: 100%;
  display: flex; align-items: flex-end;
  padding-bottom: min(9vh, 88px);
}
.hero-eyebrow {
  display: inline-flex; align-items: center; gap: 12px;
  font-family: var(--sans); font-size: .7rem; font-weight: 600;
  letter-spacing: .24em; text-transform: uppercase;
  color: var(--amber-lt); margin-bottom: 1.3rem;
}
.hero-eyebrow::before {
  content: ''; display: block; width: 32px; height: 1px; background: var(--amber-lt);
}
.hero-h1 {
  font-family: var(--serif);
  font-size: clamp(2.6rem, 6vw, 5rem);
  font-weight: 600; color: #fff;
  line-height: 1.1; letter-spacing: -.01em; margin-bottom: 1.2rem;
}
.hero-h1 em { font-style: italic; color: var(--amber-lt); }
.hero-desc {
  font-size: .98rem; font-weight: 300;
  color: rgba(255,255,255,.76); max-width: 400px; line-height: 1.75;
  margin-bottom: 2.2rem;
}
.hero-btns { display: flex; flex-wrap: wrap; gap: .75rem; }
.btn-gold {
  background: var(--amber); color: var(--ink);
  font-family: var(--sans); font-weight: 600; font-size: .8rem;
  letter-spacing: .07em; text-transform: uppercase;
  padding: .75rem 1.75rem; border-radius: 4px; border: none;
  cursor: pointer; transition: background .2s, transform .15s;
}
.btn-gold:hover { background: var(--amber-lt); color: var(--ink); transform: translateY(-1px); }
.btn-ghost {
  background: transparent; color: rgba(255,255,255,.86);
  font-family: var(--sans); font-weight: 500; font-size: .8rem;
  letter-spacing: .05em; padding: .75rem 1.75rem;
  border: 1px solid rgba(255,255,255,.38); border-radius: 4px;
  cursor: pointer; transition: border-color .2s, background .2s;
}
.btn-ghost:hover { border-color: rgba(255,255,255,.7); background: rgba(255,255,255,.08); color: #fff; }
/* Frosted stats panel */
.hero-stats {
  position: absolute; bottom: 0; right: 0; z-index: 3;
  background: rgba(23,14,8,.28);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(255,255,255,.11);
  border-right: none; border-bottom: none;
  border-radius: 10px 0 0 0;
  padding: 1.25rem 2rem;
  display: flex; gap: 2.2rem;
}
.hstat-val {
  font-family: var(--serif); font-size: 1.9rem; font-weight: 700;
  color: #fff; line-height: 1;
}
.hstat-lbl {
  font-family: var(--sans); font-size: .65rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.5); margin-top: 3px;
}
@media (max-width: 576px) { .hero-stats { display: none; } }

/* ══ VERSE TICKER ════════════════════════════════════= */
.verse-bar {
  background: var(--ink); padding: 12px 0; overflow: hidden;
}
.verse-label {
  font-family: var(--sans); font-size: .67rem; font-weight: 700;
  letter-spacing: .15em; text-transform: uppercase;
  color: #fff; background: var(--wine);
  padding: .22rem .75rem; border-radius: 3px;
  white-space: nowrap; flex-shrink: 0;
}
.verse-track {
  display: flex; gap: 80px;
  animation: vScroll 44s linear infinite; white-space: nowrap;
}
.verse-track:hover { animation-play-state: paused; }
.verse-item {
  font-family: var(--serif); font-style: italic;
  font-size: .95rem; color: rgba(244,234,208,.82);
}
.verse-item cite {
  font-style: normal; font-family: var(--sans); font-size: .72rem;
  font-weight: 500; color: var(--amber); margin-left: 10px; letter-spacing: .05em;
}
@keyframes vScroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ══ SERVICE BAND ════════════════════════════════════= */
.svc-band {
  background: var(--parch); border-bottom: 1px solid var(--mist); padding: 22px 0;
}
.svc-item {
  display: flex; align-items: center; gap: 14px;
  padding: 0 2rem; border-right: 1px solid var(--mist);
}
.svc-item:last-child { border-right: none; }
.svc-ico {
  width: 42px; height: 42px; border-radius: 7px;
  background: var(--wine); color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 1rem; flex-shrink: 0;
}
.svc-lbl { font-family: var(--sans); font-size: .66rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--stone); }
.svc-val { font-family: var(--serif); font-size: 1.05rem; font-weight: 600; color: var(--ink); line-height: 1.2; }
@media (max-width: 767px) {
  .svc-item { border-right: none; border-bottom: 1px solid var(--mist); padding: 12px 0; }
  .svc-item:last-child { border-bottom: none; }
}

/* ══ SECTION SHARED ══════════════════════════════════ */
.s-tag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }
.s-h2 {
  font-family: var(--serif);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.2rem;
}
.s-h2 em { font-style: italic; color: var(--wine); }
.btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--wine); border: 1.5px solid var(--wine);
  border-radius: 4px; padding: .62rem 1.4rem;
  transition: background .2s, color .2s;
}
.btn-outline:hover { background: var(--wine); color: #fff; }
.btn-outline i { font-size: .72rem; transition: transform .2s; }
.btn-outline:hover i { transform: translateX(4px); }

/* ══ ABOUT ══════════════════════════════════════════= */
.sec-about { padding: 100px 0; background: var(--paper); overflow: hidden; }
.about-img-wrap { position: relative; max-width: 380px; margin: 0 auto; }
.about-img-accent {
  position: absolute; top: -18px; left: -18px;
  width: 58%; height: 58%;
  background: var(--parch); border: 2px solid var(--amber);
  border-radius: 4px; z-index: 0;
}
.about-img-box {
  position: relative; z-index: 1;
  width: 100%; aspect-ratio: 3/4;
  background: linear-gradient(145deg, var(--parch), var(--mist));
  border-radius: 4px; overflow: hidden;
  display: flex; align-items: center; justify-content: center;
  font-size: 4.5rem; color: var(--stone);
}
.about-year-ghost {
  position: absolute; bottom: -2.5rem; right: -1rem; z-index: -1;
  font-family: var(--serif); font-size: min(12vw, 8rem); font-weight: 700;
  color: transparent; -webkit-text-stroke: 1.5px var(--mist);
  pointer-events: none; user-select: none;
}
.about-stats-row {
  display: grid; grid-template-columns: repeat(3,1fr);
  gap: 1px; background: var(--mist); border-radius: 6px; overflow: hidden;
  margin: 2rem 0;
}
.astat {
  background: var(--cream); padding: 1.1rem .8rem; text-align: center;
}
.astat .n { font-family: var(--serif); font-size: 2.3rem; font-weight: 700; color: var(--wine); line-height: 1; }
.astat .l { font-family: var(--sans); font-size: .64rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--stone); margin-top: 3px; }

/* ══ LEADERSHIP ══════════════════════════════════════ */
.sec-leadership { background: var(--cream); padding: 90px 0; }
.leaders-row {
  display: flex; gap: 1px; background: var(--mist);
  border-radius: 8px; overflow: hidden;
}
.leader {
  flex: 1 1 0; min-width: 185px; background: var(--paper);
  padding: 2rem 1.4rem 1.6rem; text-align: center;
  transition: background .2s; position: relative;
}
.leader:hover { background: var(--parch); }
.leader.hero-leader { background: var(--wine); }
.leader.hero-leader:hover { background: var(--wine-d); }
.l-avatar {
  width: 86px; height: 86px; border-radius: 50%;
  background: var(--parch); border: 3px solid var(--mist);
  display: flex; align-items: center; justify-content: center;
  font-size: 2.2rem; color: var(--stone);
  margin: 0 auto 1rem;
}
.hero-leader .l-avatar { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.25); color: rgba(255,255,255,.75); }
.l-rank { font-family: var(--sans); font-size: .63rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amber); margin-bottom: .3rem; }
.hero-leader .l-rank { color: var(--amber-lt); }
.l-name { font-family: var(--serif); font-size: 1.05rem; font-weight: 600; color: var(--ink); margin-bottom: .25rem; line-height: 1.25; }
.hero-leader .l-name { color: #fff; }
.l-role { font-family: var(--sans); font-size: .74rem; color: var(--stone); line-height: 1.4; }
.hero-leader .l-role { color: rgba(255,255,255,.6); }
@media (max-width: 767px) { .leaders-row { flex-direction: column; } }

/* ══ INFO HUB ════════════════════════════════════════ */
.sec-hub { background: var(--paper); padding: 90px 0; }
.hub-col-head {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: .75rem; border-bottom: 2px solid var(--wine);
  margin-bottom: 1.6rem; display: flex; align-items: center; gap: 8px;
}

/* Force the WPBakery Info Hub row to act like a standard Bootstrap container */
.vc_row.sec-hub {
    max-width: 1320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}

/* Restore native negative margins to pull the inner columns flush with the heading */
.vc_row.sec-hub .vc_inner {
    margin-left: -15px !important;
    margin-right: -15px !important;
}

.hub-col-head i { color: var(--wine); }

/* Events */
.evt-row {
  display: grid; grid-template-columns: 1fr; gap: 6px;
  align-items: start; padding: 12px 0; border-bottom: 1px solid var(--mist);
}
.evt-row:last-of-type { border-bottom: none; }
.evt-title { font-family: var(--serif); font-size: .97rem; font-weight: 600; color: var(--ink); margin-bottom: 2px; }
.evt-meta { font-family: var(--sans); font-size: .72rem; color: var(--stone); }

/* News */
.news-item { padding: 13px 0; border-bottom: 1px solid var(--mist); }
.news-item:last-child { border-bottom: none; }
.ntag {
  display: inline-block; font-family: var(--sans); font-size: .6rem;
  font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  padding: .15rem .52rem; border-radius: 3px; margin-bottom: .4rem;
}
.tag-n { background: #fde3df; color: #6b1009; }
.tag-e { background: #fdf0d0; color: #6b4800; }
.tag-a { background: #ddeef8; color: #0d3d65; }
.n-headline {
  font-family: var(--serif); font-size: 1rem; font-weight: 600;
  color: var(--ink); margin-bottom: .2rem; cursor: pointer; transition: color .2s;
}
.n-headline:hover { color: var(--wine); }
.n-preview { font-family: var(--sans); font-size: .77rem; color: var(--stone); line-height: 1.55; display: none; padding-top: .4rem; }
.news-item.open .n-preview { display: block; }
.n-date { font-family: var(--sans); font-size: .68rem; color: var(--stone); margin-top: 4px; }

/* Readings */
.readings-card { background: var(--wine); border-radius: 8px; overflow: hidden; }
.rc-head { padding: 1.3rem 1.6rem 1rem; border-bottom: 1px solid rgba(255,255,255,.1); }
.rc-week { font-family: var(--sans); font-size: .66rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--amber-lt); margin-bottom: .25rem; }
.rc-title { font-family: var(--serif); font-size: 1.2rem; font-weight: 600; color: #fff; }
.rc-body { padding: 1rem 1.6rem 1.3rem; }
.rrow { display: flex; align-items: center; gap: 12px; padding: .68rem 0; border-bottom: 1px solid rgba(255,255,255,.07); }
.rrow:last-child { border-bottom: none; padding-bottom: 0; }
.rdot { width: 7px; height: 7px; border-radius: 50%; background: var(--amber); flex-shrink: 0; }
.rtype { font-family: var(--sans); font-size: .63rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: rgba(255,255,255,.48); width: 78px; flex-shrink: 0; }
.rref { font-family: var(--serif); font-style: italic; font-size: .94rem; color: rgba(255,255,255,.88); }
.rc-foot { padding: .85rem 1.6rem; background: rgba(0,0,0,.15); }
.rc-foot a { font-family: var(--sans); font-size: .73rem; font-weight: 600; color: var(--amber-lt); display: flex; align-items: center; gap: 6px; }
.rc-foot a:hover { color: #fff; }

/* ══ VERSE FEATURE ════════════════════════════════════ */
.sec-verse {
  background: var(--parch); padding: 80px 0; text-align: center;
  position: relative; overflow: hidden;
}
.sec-verse::before {
  content: '\201C';
  position: absolute; top: -5rem; left: 50%; transform: translateX(-50%);
  font-family: var(--serif); font-size: 30rem; line-height: 1;
  color: rgba(92,21,25,.055); pointer-events: none;
}
.feat-verse {
  font-family: var(--serif); font-style: italic; font-weight: 500;
  font-size: clamp(1.5rem, 3.5vw, 2.45rem); line-height: 1.55;
  color: var(--ink); max-width: 740px; margin: 0 auto 1.3rem;
  position: relative;
}
.feat-ref {
  font-family: var(--sans); font-size: .8rem; font-weight: 600;
  letter-spacing: .16em; text-transform: uppercase; color: var(--wine);
}

/* ══ RESOURCES ═══════════════════════════════════════ */
.sec-resources { background: var(--cream); padding: 90px 0; }
.res-grid {
  display: grid; grid-template-columns: repeat(4,1fr);
  gap: 1px; background: var(--mist); border-radius: 8px; overflow: hidden;
}
.res-cell {
  background: var(--paper); padding: 1.75rem 1.4rem;
  display: flex; flex-direction: column; align-items: flex-start; gap: .55rem;
  text-decoration: none; color: var(--ink); transition: background .2s; cursor: pointer;
}
.res-cell:hover { background: var(--parch); }
.res-cell:hover .res-ico { background: var(--wine); color: #fff; }
.res-ico {
  width: 44px; height: 44px; border-radius: 8px;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.15rem; transition: background .2s, color .2s;
}
.res-label { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); line-height: 1.25; }
.res-hint { font-family: var(--sans); font-size: .7rem; color: var(--stone); }
@media (max-width: 767px) { .res-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 440px) { .res-grid { grid-template-columns: 1fr; } }

/* ══ FOOTER ══════════════════════════════════════════ */
.site-footer { background: var(--ink); color: rgba(255,255,255,.65); padding: 72px 0 0; }
.ft-logo-wrap { display: flex; align-items: center; gap: 14px; margin-bottom: 1.2rem; }
.ft-logo {
  width: 44px; height: 44px; background: var(--wine); border-radius: 6px;
  display: flex; align-items: center; justify-content: center;
  font-family: var(--serif); font-size: 1.2rem; color: #fff; flex-shrink: 0;
}
.ft-brand-name { font-family: var(--serif); font-size: 1.18rem; font-weight: 600; color: #fff; line-height: 1.2; }
.ft-brand-sub { font-family: var(--sans); font-size: .63rem; color: rgba(255,255,255,.38); letter-spacing: .07em; text-transform: uppercase; }
.ft-about { font-family: var(--sans); font-size: .82rem; line-height: 1.7; margin-bottom: 1.4rem; }
.ft-social { display: flex; gap: .45rem; }
.ft-social a {
  width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.14); border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,.5); font-size: .9rem;
  transition: background .2s, border-color .2s, color .2s;
}
.ft-social a:hover { background: var(--wine); border-color: var(--wine); color: #fff; }
.ft-col-head { font-family: var(--sans); font-size: .67rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--amber); margin-bottom: 1.15rem; }
.ft-list { list-style: none; padding: 0; }
.ft-list li { margin-bottom: .52rem; }
.ft-list a { font-family: var(--sans); font-size: .83rem; color: rgba(255,255,255,.58); transition: color .2s; }
.ft-list a:hover { color: #fff; }
.ft-contact-row { display: flex; gap: 12px; font-family: var(--sans); font-size: .82rem; margin-bottom: .85rem; align-items: flex-start; color: rgba(255,255,255,.65); }
.ft-contact-row i { color: var(--amber); flex-shrink: 0; margin-top: 3px; }
.ft-bottom {
  border-top: 1px solid rgba(255,255,255,.07); padding: 18px 0; margin-top: 56px;
  font-family: var(--sans); font-size: .74rem; color: rgba(255,255,255,.32);
}
.ft-bottom a { color: rgba(255,255,255,.38); }
.ft-bottom a:hover { color: rgba(255,255,255,.8); }

/* ══ Reveal Animations ════════════════════════════════ */
.reveal {
  opacity: 0; transform: translateY(22px);
  transition: opacity .65s ease, transform .65s ease;
}
.reveal.in { opacity: 1; transform: none; }
.d1 { transition-delay: .1s; }
.d2 { transition-delay: .2s; }
.d3 { transition-delay: .3s; }





/* ══════════════════════════════════════════════════════════════════════════════════ */
/* ═══════════════════════════ Parish-History Page styles ═══════════════════════════ */
/* ══════════════════════════════════════════════════════════════════════════════════ */
/* ══ SHARED SECTION TOKENS ══════════════════════════════ */
.s-tag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }
.s-h2 {
  font-family: var(--serif);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.2rem;
}
.s-h2 em { font-style: italic; color: var(--wine); }
.btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--wine); border: 1.5px solid var(--wine);
  border-radius: 4px; padding: .62rem 1.4rem;
  transition: background .2s, color .2s;
}
.btn-outline:hover { background: var(--wine); color: #fff; }
.btn-outline i { font-size: .72rem; transition: transform .2s; }
.btn-outline:hover i { transform: translateX(4px); }

/* ══ Reveal Animations ══════════════════════════════════ */
.reveal {
  opacity: 0; transform: translateY(22px);
  transition: opacity .65s ease, transform .65s ease;
}
.reveal.in { opacity: 1; transform: none; }
.d1 { transition-delay: .1s; }
.d2 { transition-delay: .2s; }
.d3 { transition-delay: .3s; }
.d4 { transition-delay: .4s; }

/* ══ PAGE HERO (subpage banner) ════════════════════════ */
.page-hero {
  position: relative;
  background: var(--ink);
  padding: 80px 0 60px;
  overflow: hidden;
}
.page-hero-bg {
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1548625149-720754963c49?w=1600&q=80') center/cover no-repeat;
  opacity: .18;
}
.page-hero-veil {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(92,21,25,.92) 0%, rgba(23,14,8,.75) 100%);
}
.page-hero-watermark {
  position: absolute; right: 2%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(40vw, 28rem);
  color: rgba(255,255,255,.04); line-height: 1;
  pointer-events: none; user-select: none;
}
.page-hero-body { position: relative; z-index: 2; }
.page-breadcrumb {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.5); margin-bottom: 1.4rem;
}
.page-breadcrumb a { color: var(--amber-lt); }
.page-breadcrumb a:hover { color: #fff; }
.page-breadcrumb i { font-size: .6rem; }
.page-title {
  font-family: var(--serif);
  font-size: clamp(2.4rem, 5.5vw, 4.2rem);
  font-weight: 600; color: #fff; line-height: 1.1;
  margin-bottom: 1rem; letter-spacing: -.01em;
}
.page-title em { font-style: italic; color: var(--amber-lt); }
.page-lead {
  font-family: var(--sans); font-size: .97rem; font-weight: 300;
  color: rgba(255,255,255,.72); max-width: 540px; line-height: 1.75;
}
/* Stats strip at bottom of hero */
.hero-strip {
  position: relative; z-index: 2;
  display: flex; flex-wrap: wrap; gap: 0;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(255,255,255,.1);
  margin-top: 52px;
}
.hs-item {
  flex: 1 1 160px; padding: 1.2rem 2rem;
  border-right: 1px solid rgba(255,255,255,.08);
  text-align: center;
}
.hs-item:last-child { border-right: none; }
.hs-val { font-family: var(--serif); font-size: 2rem; font-weight: 700; color: #fff; line-height: 1; }
.hs-lbl { font-family: var(--sans); font-size: .63rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,255,255,.45); margin-top: 4px; }
@media (max-width: 576px) { .hs-item { flex-basis: 50%; } }

/* ══ INTRO SECTION ══════════════════════════════════════ */
.sec-intro { padding: 90px 0 70px; background: var(--paper); }
.intro-img-wrap { position: relative; max-width: 420px; margin: 0 auto; }
.intro-img-accent {
  position: absolute; top: -16px; left: -16px;
  width: 55%; height: 55%;
  background: var(--parch); border: 2px solid var(--amber);
  border-radius: 4px; z-index: 0;
}
.intro-img-box {
  position: relative; z-index: 1;
  width: 100%; aspect-ratio: 4/3;
  background: linear-gradient(145deg, var(--parch), var(--mist));
  border-radius: 6px; overflow: hidden;
  display: flex; align-items: center; justify-content: center;
  font-size: 5rem; color: var(--stone);
}
.intro-img-box img { width: 100%; height: 100%; object-fit: cover; }
.intro-year-ghost {
  position: absolute; bottom: -2rem; right: -1rem; z-index: -1;
  font-family: var(--serif); font-size: min(16vw, 7rem); font-weight: 700;
  color: transparent; -webkit-text-stroke: 1.5px var(--mist);
  pointer-events: none; user-select: none;
}

/* ══ TIMELINE ═══════════════════════════════════════════ */
.sec-timeline { padding: 80px 0 90px; background: var(--cream); }
.timeline { position: relative; padding-left: 0; }
.timeline::before {
  content: '';
  position: absolute; left: 22px; top: 0; bottom: 0;
  width: 2px; background: linear-gradient(to bottom, var(--wine), var(--amber), var(--mist));
}
@media (min-width: 768px) {
  .timeline::before { left: 50%; transform: translateX(-50%); }
}

.tl-item {
  display: flex; gap: 0; margin-bottom: 56px; position: relative;
  align-items: flex-start;
}
.tl-item:last-child { margin-bottom: 0; }

/* Mobile: all left-aligned */
.tl-year-col {
  width: 44px; flex-shrink: 0; display: flex;
  flex-direction: column; align-items: center; margin-right: 28px;
}
.tl-dot {
  width: 44px; height: 44px; border-radius: 50%;
  background: var(--wine); color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-family: var(--serif); font-size: .85rem; font-weight: 700;
  flex-shrink: 0; z-index: 1; position: relative;
  border: 3px solid var(--cream);
  box-shadow: 0 0 0 3px var(--wine);
}
.tl-dot.amber { background: var(--amber); box-shadow: 0 0 0 3px var(--amber); }
.tl-card {
  flex: 1;
  background: var(--paper); border-radius: 8px;
  border: 1px solid var(--mist);
  padding: 1.5rem 1.75rem;
  box-shadow: 0 2px 14px rgba(23,14,8,.04);
  transition: box-shadow .25s, transform .25s;
}
.tl-card:hover { box-shadow: 0 8px 32px rgba(23,14,8,.09); transform: translateY(-2px); }
.tl-era {
  display: inline-block; font-family: var(--sans); font-size: .6rem;
  font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
  background: var(--parch); color: var(--wine);
  padding: .22rem .65rem; border-radius: 3px; margin-bottom: .8rem;
}
.tl-era.era-amber { background: #fdf0d0; color: #6b4800; }
.tl-h3 {
  font-family: var(--serif); font-size: 1.35rem; font-weight: 600;
  color: var(--ink); margin-bottom: .65rem; line-height: 1.25;
}
.tl-body {
  font-family: var(--sans); font-size: .88rem; color: #5a4a3a; line-height: 1.8;
}
.tl-body + .tl-body { margin-top: .75rem; }
.tl-highlight {
  display: flex; align-items: flex-start; gap: 12px;
  background: var(--parch); border-left: 3px solid var(--amber);
  border-radius: 0 5px 5px 0; padding: .85rem 1rem;
  margin-top: 1rem; font-family: var(--sans); font-size: .83rem;
  color: var(--ink); line-height: 1.6;
}
.tl-highlight i { color: var(--amber); flex-shrink: 0; margin-top: 2px; }

/* Desktop: alternating layout */
@media (min-width: 768px) {
  .timeline::before { left: 50%; }
  .tl-item { align-items: center; }
  .tl-item:nth-child(odd) { flex-direction: row; }
  .tl-item:nth-child(even) { flex-direction: row-reverse; }

  .tl-item:nth-child(odd) .tl-year-col { order: 2; margin: 0; position: absolute; left: 50%; transform: translateX(-50%); }
  .tl-item:nth-child(even) .tl-year-col { order: 2; margin: 0; position: absolute; left: 50%; transform: translateX(-50%); }

  .tl-item:nth-child(odd) .tl-card { width: calc(50% - 52px); margin-right: auto; }
  .tl-item:nth-child(even) .tl-card { width: calc(50% - 52px); margin-left: auto; }

  .tl-year-col { width: auto; }
  .tl-dot { width: 52px; height: 52px; font-size: .95rem; }
}

/* ══ VICARS TABLE SECTION ════════════════════════════════ */
.sec-vicars { padding: 80px 0; background: var(--paper); }
.vicars-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 1px; background: var(--mist); border-radius: 8px; overflow: hidden;
}
.vicar-card {
  background: var(--paper); padding: 1.5rem 1.4rem;
  transition: background .2s;
}
.vicar-card:hover { background: var(--parch); }
.vicar-card.current { background: var(--wine); }
.vicar-card.current:hover { background: var(--wine-d); }
.vc-num {
  font-family: var(--sans); font-size: .6rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--amber); margin-bottom: .4rem;
}
.vicar-card.current .vc-num { color: var(--amber-lt); }
.vc-name {
  font-family: var(--serif); font-size: 1.05rem; font-weight: 600;
  color: var(--ink); line-height: 1.25; margin-bottom: .3rem;
}
.vicar-card.current .vc-name { color: #fff; }
.vc-years {
  font-family: var(--sans); font-size: .75rem; color: var(--stone);
}
.vicar-card.current .vc-years { color: rgba(255,255,255,.6); }
.vc-avatar {
  width: 48px; height: 48px; border-radius: 50%;
  background: var(--parch); border: 2px solid var(--mist);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem; color: var(--stone); margin-bottom: 1rem;
}
.vicar-card.current .vc-avatar { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.2); color: rgba(255,255,255,.75); }

/* ══ TRUSTEES SECTION ═══════════════════════════════════ */
.sec-trustees { padding: 80px 0; background: var(--cream); }
.trustees-cols {
  display: grid; grid-template-columns: 1fr 1fr; gap: 2px;
  background: var(--mist); border-radius: 8px; overflow: hidden;
}
@media (max-width: 600px) { .trustees-cols { grid-template-columns: 1fr; } }
.tc-panel { background: var(--paper); padding: 2rem 2rem 2.5rem; }
.tc-head {
  font-family: var(--sans); font-size: .67rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: .75rem; border-bottom: 2px solid var(--wine);
  margin-bottom: 1.4rem; display: flex; align-items: center; gap: 8px;
}
.tc-head i { color: var(--wine); }
.trustee-list { list-style: none; padding: 0; columns: 2; gap: 0; }
@media (max-width: 400px) { .trustee-list { columns: 1; } }
.trustee-list li {
  font-family: var(--sans); font-size: .82rem; color: #5a4a3a;
  padding: .38rem 0; border-bottom: 1px solid var(--mist);
  break-inside: avoid;
}
.trustee-list li:last-child { border-bottom: none; }

/* ══ VERSE FEATURE ══════════════════════════════════════ */
.sec-verse {
  background: var(--parch); padding: 80px 0; text-align: center;
  position: relative; overflow: hidden;
}
.sec-verse::before {
  content: '\201C';
  position: absolute; top: -5rem; left: 50%; transform: translateX(-50%);
  font-family: var(--serif); font-size: 30rem; line-height: 1;
  color: rgba(92,21,25,.055); pointer-events: none;
}
.feat-verse {
  font-family: var(--serif); font-style: italic; font-weight: 500;
  font-size: clamp(1.5rem, 3.5vw, 2.45rem); line-height: 1.55;
  color: var(--ink); max-width: 740px; margin: 0 auto 1.3rem;
  position: relative;
}
.feat-ref {
  font-family: var(--sans); font-size: .8rem; font-weight: 600;
  letter-spacing: .16em; text-transform: uppercase; color: var(--wine);
}

/* ══ USEFUL LINKS ═══════════════════════════════════════ */
.sec-links { padding: 80px 0; background: var(--paper); }
.link-cards {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1px; background: var(--mist); border-radius: 8px; overflow: hidden;
}
.lc {
  background: var(--paper); padding: 1.6rem 1.5rem;
  display: flex; align-items: flex-start; gap: 14px;
  text-decoration: none; color: var(--ink);
  transition: background .2s;
}
.lc:hover { background: var(--parch); }
.lc-ico {
  width: 42px; height: 42px; border-radius: 7px; flex-shrink: 0;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.05rem; transition: background .2s, color .2s;
}
.lc:hover .lc-ico { background: var(--wine); color: #fff; }
.lc-label { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); margin-bottom: 2px; }
.lc-hint { font-family: var(--sans); font-size: .72rem; color: var(--stone); }








/* ══════════════════════════════════════════════════════════════════════════════════ */
/* ═══════════════════════════ Vicar Page styles ═══════════════════════════ */
/* ══════════════════════════════════════════════════════════════════════════════════ */

/* ══ PAGE HERO ═══════════════════════════════════════════ */
.vicarpg-page-hero {
  position: relative; background: var(--wine-d); overflow: hidden; padding: 72px 0 56px;
}
.vicarpg-page-hero::before {
  content: ''; position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1548625149-720754963c49?w=1600&q=80') center/cover no-repeat;
  opacity: .10;
}
.vicarpg-page-hero-watermark {
  position: absolute; right: 1%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(38vw, 34rem);
  color: rgba(255,255,255,.038); line-height: 1; pointer-events: none; user-select: none;
}
.vicarpg-page-hero-content { position: relative; z-index: 2; }
.vicarpg-breadcrumb-bar {
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.42); margin-bottom: 1rem;
  display: flex; align-items: center; gap: 8px;
}
.vicarpg-breadcrumb-bar a { color: rgba(255,255,255,.42); }
.vicarpg-breadcrumb-bar a:hover { color: rgba(255,255,255,.8); }
.vicarpg-breadcrumb-bar .vicarpg-current { color: var(--amber-lt); }
.vicarpg-page-eyebrow {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .8rem;
}
.vicarpg-page-eyebrow::before { content: ''; display: block; width: 28px; height: 1px; background: var(--amber); }
.vicarpg-page-h1 {
  font-family: var(--serif); font-size: clamp(2.1rem, 4.5vw, 3.6rem);
  font-weight: 600; color: #fff; line-height: 1.1; letter-spacing: -.01em; margin-bottom: .5rem;
}
.vicarpg-page-h1 em { font-style: italic; color: var(--amber-lt); }
.vicarpg-page-tagline { font-family: var(--sans); font-size: .9rem; font-weight: 300; color: rgba(255,255,255,.58); }

/* ══ SHARED UTILS ════════════════════════════════════════ */
.vicarpg-s-tag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.vicarpg-s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }
.vicarpg-s-h2 {
  font-family: var(--serif); font-size: clamp(1.9rem, 3.5vw, 2.8rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.1rem;
}
.vicarpg-s-h2 em { font-style: italic; color: var(--wine); }
.vicarpg-btn-wine {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  background: var(--wine); color: #fff;
  border-radius: 4px; padding: .7rem 1.6rem;
  transition: background .2s, transform .15s;
}
.vicarpg-btn-wine:hover { background: var(--wine-d); color: #fff; transform: translateY(-1px); }
.vicarpg-btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--wine); border: 1.5px solid var(--wine);
  border-radius: 4px; padding: .65rem 1.4rem; transition: background .2s, color .2s;
}
.vicarpg-btn-outline:hover { background: var(--wine); color: #fff; }
.vicarpg-btn-outline i, .vicarpg-btn-wine i { font-size: .72rem; }

/* ══ REVEAL ══════════════════════════════════════════════ */
/* Restored original names so existing Javascript successfully triggers them */
.reveal { opacity: 0; transform: translateY(22px); transition: opacity .65s ease, transform .65s ease; }
.reveal.in { opacity: 1; transform: none; }
.d1 { transition-delay: .1s; }
.d2 { transition-delay: .2s; }
.d3 { transition-delay: .3s; }
.d4 { transition-delay: .4s; }

/* ══ PROFILE SECTION ═════════════════════════════════════ */
.vicarpg-sec-profile { padding: 80px 0 70px; }

/* Photo column */
.vicarpg-vicar-photo-wrap { position: relative; max-width: 380px; margin: 0 auto; }
.vicarpg-vicar-photo-accent {
  position: absolute; top: -18px; left: -18px;
  width: 55%; height: 55%;
  background: var(--parch); border: 2px solid var(--amber);
  border-radius: 4px; z-index: 0;
}
.vicarpg-vicar-photo-box {
  position: relative; z-index: 1;
  border-radius: 4px; overflow: hidden;
  box-shadow: 0 16px 56px rgba(23,14,8,.18);
}
.vicarpg-vicar-photo-box img { width: 100%; aspect-ratio: 3/4; object-fit: cover; object-position: top center; }
.vicarpg-vicar-photo-ghost {
  position: absolute; bottom: -2.5rem; right: -1rem; z-index: -1;
  font-family: var(--serif); font-size: min(14vw, 9rem); font-weight: 700;
  color: transparent; -webkit-text-stroke: 1.5px var(--mist);
  pointer-events: none; user-select: none;
}

/* Ordination badge */
.vicarpg-ordination-badge {
  position: absolute; bottom: 22px; left: -22px; z-index: 2;
  background: var(--wine); color: #fff;
  padding: .95rem 1.2rem; border-radius: 5px;
  box-shadow: 0 8px 28px rgba(92,21,25,.35);
}
.vicarpg-ordination-badge .vicarpg-n { font-family: var(--serif); font-size: 1.95rem; font-weight: 700; line-height: 1; }
.vicarpg-ordination-badge .vicarpg-t { font-family: var(--sans); font-size: .62rem; letter-spacing: .1em; text-transform: uppercase; opacity: .8; }

/* Contact pills */
.vicarpg-contact-pills { display: flex; flex-direction: column; gap: 10px; margin-top: 20px; }
.vicarpg-contact-pill {
  display: flex; align-items: center; gap: 12px;
  background: var(--cream); border: 1px solid var(--mist);
  border-radius: 6px; padding: 12px 16px;
  font-family: var(--sans); font-size: .82rem; color: var(--ink);
  transition: border-color .2s, box-shadow .2s;
}
.vicarpg-contact-pill:hover { border-color: var(--amber-lt); box-shadow: 0 4px 16px rgba(23,14,8,.07); color: var(--wine); }
.vicarpg-contact-pill i { color: var(--wine); font-size: 1rem; flex-shrink: 0; width: 20px; text-align: center; }
.vicarpg-contact-pill span { flex: 1; }
.vicarpg-contact-pill .vicarpg-cp-label { font-size: .62rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--stone); display: block; margin-bottom: 1px; }

/* Text column */
.vicarpg-vicar-name-block { margin-bottom: 2rem; }
.vicarpg-vicar-rank { font-family: var(--sans); font-size: .7rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: var(--amber); margin-bottom: .4rem; }
.vicarpg-vicar-fullname { font-family: var(--serif); font-size: clamp(2rem, 4vw, 3rem); font-weight: 600; color: var(--ink); line-height: 1.1; margin-bottom: .3rem; }
.vicarpg-vicar-fullname em { font-style: italic; color: var(--wine); }
.vicarpg-vicar-role { font-family: var(--sans); font-size: .88rem; color: var(--stone); }

.vicarpg-vicar-intro { font-size: .95rem; color: #5a4a3a; line-height: 1.85; margin-bottom: 1rem; }

/* Key stats row */
.vicarpg-vicar-stats {
  display: grid; grid-template-columns: repeat(3,1fr);
  gap: 1px; background: var(--mist); border-radius: 6px; overflow: hidden;
  margin: 1.8rem 0;
}
.vicarpg-vstat { background: var(--cream); padding: 1rem .8rem; text-align: center; }
.vicarpg-vstat .vicarpg-n { font-family: var(--serif); font-size: 2.1rem; font-weight: 700; color: var(--wine); line-height: 1; }
.vicarpg-vstat .vicarpg-l { font-family: var(--sans); font-size: .62rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--stone); margin-top: 3px; }

/* ══ TIMELINE ════════════════════════════════════════════ */
.vicarpg-sec-timeline { background: var(--cream); padding: 80px 0; }
.vicarpg-timeline { position: relative; padding-left: 0; }
.vicarpg-timeline::before {
  content: ''; position: absolute;
  left: 28px; top: 10px; bottom: 10px;
  width: 2px; background: var(--mist);
}
.vicarpg-tl-item {
  display: flex; gap: 24px; align-items: flex-start;
  margin-bottom: 32px; position: relative;
}
.vicarpg-tl-item:last-child { margin-bottom: 0; }
.vicarpg-tl-dot {
  width: 58px; height: 58px; border-radius: 50%;
  background: var(--paper); border: 2px solid var(--mist);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; font-size: .9rem; color: var(--stone);
  position: relative; z-index: 1;
  transition: background .2s, border-color .2s, color .2s;
}
.vicarpg-tl-item:hover .vicarpg-tl-dot { background: var(--wine); border-color: var(--wine); color: #fff; }
.vicarpg-tl-dot.vicarpg-featured { background: var(--wine); border-color: var(--wine); color: #fff; }
.vicarpg-tl-body {
  background: var(--paper); border: 1px solid var(--mist); border-radius: 7px;
  padding: 18px 22px; flex: 1;
  transition: box-shadow .2s, border-color .2s;
}
.vicarpg-tl-item:hover .vicarpg-tl-body { box-shadow: 0 6px 24px rgba(23,14,8,.08); border-color: var(--amber-lt); }
.vicarpg-tl-period { font-family: var(--sans); font-size: .64rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amber); margin-bottom: 4px; }
.vicarpg-tl-title { font-family: var(--serif); font-size: 1.08rem; font-weight: 600; color: var(--ink); margin-bottom: 4px; line-height: 1.3; }
.vicarpg-tl-place { font-family: var(--sans); font-size: .78rem; color: var(--stone); display: flex; align-items: center; gap: 6px; margin-bottom: 8px; }
.vicarpg-tl-desc { font-family: var(--sans); font-size: .82rem; color: #6a5444; line-height: 1.65; }

/* ══ EDUCATION SECTION ═══════════════════════════════════ */
.vicarpg-sec-education { background: var(--paper); padding: 80px 0; }
.vicarpg-edu-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 8px;
  padding: 22px 24px; height: 100%;
  display: flex; flex-direction: column; gap: 8px;
  transition: box-shadow .2s, transform .2s, border-color .2s;
}
.vicarpg-edu-card:hover { box-shadow: 0 8px 28px rgba(23,14,8,.09); transform: translateY(-2px); border-color: var(--amber-lt); }
.vicarpg-edu-icon {
  width: 42px; height: 42px; border-radius: 7px; background: var(--wine); color: #fff;
  display: flex; align-items: center; justify-content: center; font-size: .95rem; margin-bottom: 4px;
}
.vicarpg-edu-degree { font-family: var(--serif); font-size: 1.02rem; font-weight: 600; color: var(--ink); line-height: 1.3; }
.vicarpg-edu-inst { font-family: var(--sans); font-size: .78rem; color: var(--stone); }
.vicarpg-edu-year { font-family: var(--sans); font-size: .64rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amber); margin-top: auto; padding-top: 6px; }

/* ══ FAMILY SECTION ══════════════════════════════════════ */
.vicarpg-sec-family { background: var(--parch); padding: 80px 0; position: relative; overflow: hidden; }
.vicarpg-sec-family::before {
  content: '✦'; position: absolute; right: -2rem; top: -3rem;
  font-family: var(--serif); font-size: 18rem; color: rgba(196,131,42,.06);
  pointer-events: none;
}
.vicarpg-family-card {
  background: var(--paper); border: 1px solid var(--mist); border-radius: 10px;
  padding: 32px 36px; position: relative; z-index: 1;
}
.vicarpg-family-row {
  display: flex; align-items: flex-start; gap: 16px;
  padding: 14px 0; border-bottom: 1px solid var(--mist);
}
.vicarpg-family-row:last-child { border-bottom: none; padding-bottom: 0; }
.vicarpg-family-ico {
  width: 38px; height: 38px; border-radius: 7px; background: var(--parch);
  color: var(--wine); display: flex; align-items: center; justify-content: center;
  font-size: .9rem; flex-shrink: 0;
}
.vicarpg-family-label { font-family: var(--sans); font-size: .64rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--stone); margin-bottom: 2px; }
.vicarpg-family-value { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); line-height: 1.35; }
.vicarpg-family-sub { font-family: var(--sans); font-size: .78rem; color: var(--stone); margin-top: 2px; line-height: 1.5; }

/* ══ SIDEBAR CARDS ═══════════════════════════════════════ */
.vicarpg-sidebar-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 8px;
  padding: 22px 22px; margin-bottom: 20px;
}
.vicarpg-sidebar-card-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine); margin-bottom: 14px;
}
.vicarpg-sidebar-link {
  display: flex; align-items: center; gap: 10px;
  font-family: var(--sans); font-size: .82rem; color: var(--ink);
  padding: 8px 0; border-bottom: 1px solid var(--mist);
  transition: color .2s;
}
.vicarpg-sidebar-link:last-child { border-bottom: none; padding-bottom: 0; }
.vicarpg-sidebar-link:hover { color: var(--wine); }
.vicarpg-sidebar-link i { color: var(--wine); font-size: .9rem; flex-shrink: 0; }
.vicarpg-sidebar-link .vicarpg-sl-sub { font-size: .72rem; color: var(--stone); display: block; }

/* ══ VERSE BAND ══════════════════════════════════════════ */
.vicarpg-sec-verse {
  background: var(--wine); padding: 72px 0; text-align: center; position: relative; overflow: hidden;
}
.vicarpg-sec-verse::before {
  content: '\201C'; position: absolute; top: -6rem; left: 50%; transform: translateX(-50%);
  font-family: var(--serif); font-size: 28rem; line-height: 1; color: rgba(255,255,255,.05); pointer-events: none;
}
.vicarpg-feat-verse {
  font-family: var(--serif); font-style: italic; font-weight: 500;
  font-size: clamp(1.4rem, 3vw, 2.2rem); line-height: 1.6;
  color: rgba(255,255,255,.92); max-width: 700px; margin: 0 auto 1rem; position: relative;
}
.vicarpg-feat-ref { font-family: var(--sans); font-size: .78rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--amber-lt); }









/* ═════════════════════════════════════════════════════════════════════════════════════ */
/* ═══════════════════════════ Managing Commitee Page styles ═══════════════════════════ */
/* ═════════════════════════════════════════════════════════════════════════════════════ */

/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Managing Committee Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-mc-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-mc-page-wrapper *,
.sg-mc-page-wrapper *::before,
.sg-mc-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-mc-page-wrapper h1, 
.sg-mc-page-wrapper h2, 
.sg-mc-page-wrapper h3, 
.sg-mc-page-wrapper h4, 
.sg-mc-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-mc-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-mc-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-mc-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ PAGE HERO ═══════════════════════════════════════════ */
.sg-mc-hero {
  position: relative; background: var(--wine-d); overflow: hidden; padding: 76px 0 60px;
}
.sg-mc-hero::before {
  content: ''; position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1511632765486-a01980e01a18?w=1600&q=80') center/cover no-repeat;
  opacity: .08;
}
.sg-mc-hero-watermark {
  position: absolute; right: -1%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(36vw, 28rem);
  color: rgba(255,255,255,.036); line-height: 1; pointer-events: none; user-select: none;
}
.sg-mc-hero-content { position: relative; z-index: 2; }
.sg-mc-breadcrumb {
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.42); margin-bottom: 1rem;
  display: flex; align-items: center; gap: 8px;
}
.sg-mc-breadcrumb a { color: rgba(255,255,255,.42); text-decoration: none; }
.sg-mc-breadcrumb a:hover { color: rgba(255,255,255,.8); }
.sg-mc-breadcrumb .sg-mc-current { color: var(--amber-lt); }
.sg-mc-eyebrow {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .8rem;
}
.sg-mc-eyebrow::before { content: ''; display: block; width: 28px; height: 1px; background: var(--amber); }
.sg-mc-h1 {
  font-family: var(--serif); font-size: clamp(2.2rem, 5vw, 3.8rem);
  font-weight: 600; color: #fff; line-height: 1.1; margin-bottom: .6rem;
}
.sg-mc-h1 em { font-style: italic; color: var(--amber-lt); }
.sg-mc-tagline { font-family: var(--sans); font-size: .9rem; font-weight: 300; color: rgba(255,255,255,.6); max-width: 520px; line-height: 1.75; margin-bottom: 0; }

/* ══ YEAR SELECTOR STRIP ═════════════════════════════════ */
.sg-mc-year-strip {
  background: var(--cream); border-bottom: 1px solid var(--mist);
  position: sticky; top: 70px; z-index: 100;
  box-shadow: 0 2px 12px rgba(23,14,8,.06);
}
.sg-mc-year-strip-inner {
  display: flex; align-items: center; overflow-x: auto;
  gap: 0; scrollbar-width: none; -ms-overflow-style: none;
  padding: 0 4px;
}
.sg-mc-year-strip-inner::-webkit-scrollbar { display: none; }
.sg-mc-year-btn {
  flex-shrink: 0; background: none; border: none; cursor: pointer;
  font-family: var(--sans); font-size: .8rem; font-weight: 600;
  color: var(--stone); padding: 16px 18px;
  border-bottom: 3px solid transparent;
  transition: color .2s, border-color .2s; white-space: nowrap;
  letter-spacing: .03em;
}
.sg-mc-year-btn:hover { color: var(--wine); }
.sg-mc-year-btn.sg-mc-active { color: var(--wine); border-bottom-color: var(--wine); }
.sg-mc-year-btn .sg-mc-current-badge {
  display: inline-block; background: var(--wine); color: #fff;
  font-size: .55rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  padding: 1px 6px; border-radius: 10px; margin-left: 5px; vertical-align: middle;
}

/* ══ COMMITTEE SECTION ═══════════════════════════════════ */
.sg-mc-sec-committee { padding: 64px 0 96px; }

/* Year panel */
.sg-mc-year-panel { display: none; }
.sg-mc-year-panel.sg-mc-active { display: block; }

/* ── Officer cards (President / Treas / Sec) ── */
.sg-mc-officer-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px;
  padding: 24px 22px; display: flex; align-items: center; gap: 18px;
  transition: box-shadow .25s, transform .25s, border-color .25s; height: 100%;
}
.sg-mc-officer-card:hover { box-shadow: 0 8px 28px rgba(23,14,8,.09); transform: translateY(-2px); border-color: var(--amber-lt); }
.sg-mc-officer-card.sg-mc-president { background: var(--wine); border-color: var(--wine); }
.sg-mc-officer-card.sg-mc-president .sg-mc-officer-role { color: var(--amber-lt); }
.sg-mc-officer-card.sg-mc-president .sg-mc-officer-name { color: #fff; }
.sg-mc-officer-avatar {
  width: 56px; height: 56px; border-radius: 50%; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem; background: var(--parch); color: var(--wine);
  border: 2px solid var(--mist);
}
.sg-mc-officer-card.sg-mc-president .sg-mc-officer-avatar { background: rgba(255,255,255,.15); border-color: rgba(255,255,255,.25); color: rgba(255,255,255,.8); }
.sg-mc-officer-role {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--amber); margin-bottom: 3px;
}
.sg-mc-officer-name { font-family: var(--serif); font-size: 1.1rem; font-weight: 600; color: var(--ink); line-height: 1.25; }

/* ── Members grid ── */
.sg-mc-members-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 16px; display: flex; align-items: center; gap: 8px;
}
.sg-mc-members-head i { color: var(--wine); }

.sg-mc-member-pill {
  display: flex; align-items: center; gap: 12px;
  background: var(--paper); border: 1px solid var(--mist); border-radius: 7px;
  padding: 12px 14px; transition: border-color .2s, box-shadow .2s;
}
.sg-mc-member-pill:hover { border-color: var(--amber-lt); box-shadow: 0 4px 14px rgba(23,14,8,.06); }
.sg-mc-member-pill-ico {
  width: 34px; height: 34px; border-radius: 50%;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: .82rem; flex-shrink: 0;
}
.sg-mc-member-pill-name { font-family: var(--serif); font-size: .98rem; font-weight: 600; color: var(--ink); line-height: 1.2; }
.sg-mc-member-pill-role { font-family: var(--sans); font-size: .65rem; color: var(--stone); letter-spacing: .05em; }

/* Auditor pill – slightly different shade */
.sg-mc-member-pill.sg-mc-auditor .sg-mc-member-pill-ico { background: rgba(196,131,42,.12); color: var(--amber); }
.sg-mc-member-pill.sg-mc-exofficio .sg-mc-member-pill-ico { background: rgba(92,21,25,.07); color: var(--wine); }

/* ── Group photo ── */
.sg-mc-group-photo-wrap {
  position: relative; border-radius: 10px; overflow: hidden;
  border: 1px solid var(--mist); margin-top: 40px;
  box-shadow: 0 12px 44px rgba(23,14,8,.12);
}
.sg-mc-group-photo-wrap img { 
  width: 100%; display: block; 
}
.sg-mc-group-photo-caption {
  background: var(--ink); color: rgba(255,255,255,.7);
  font-family: var(--sans); font-size: .78rem; line-height: 1.65;
  padding: 18px 22px;
}
.sg-mc-group-photo-caption strong { color: rgba(255,255,255,.9); }

/* Photo-only panel (2013, 2015, 2018 etc.) */
.sg-mc-photo-only-wrap {
  border-radius: 10px; overflow: hidden;
  border: 1px solid var(--mist);
  box-shadow: 0 12px 44px rgba(23,14,8,.12);
  max-width: 820px; margin: 0 auto;
}
.sg-mc-photo-only-wrap img { 
  width: 100%; display: block; 
}
.sg-mc-photo-only-caption {
  background: var(--ink); color: rgba(255,255,255,.7);
  font-family: var(--sans); font-size: .78rem; line-height: 1.65;
  padding: 18px 22px;
}

/* 2019 card grid (has individual photos) */
.sg-mc-photo-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 8px;
  overflow: hidden; text-align: center;
  transition: box-shadow .25s, transform .25s, border-color .25s;
}
.sg-mc-photo-card:hover { box-shadow: 0 8px 24px rgba(23,14,8,.1); transform: translateY(-3px); border-color: var(--amber-lt); }
.sg-mc-photo-card.sg-mc-vicar-card { background: var(--wine); border-color: var(--wine); }
.sg-mc-photo-card img {
  width: 100%; aspect-ratio: 1/1; object-fit: cover; object-position: top;
  display: block;
}
.sg-mc-photo-card-body { padding: 14px 12px; }
.sg-mc-mpc-name { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); line-height: 1.2; margin-bottom: 3px; }
.sg-mc-photo-card.sg-mc-vicar-card .sg-mc-mpc-name { color: #fff; }
.sg-mc-mpc-role { font-family: var(--sans); font-size: .64rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amber); }
.sg-mc-photo-card.sg-mc-vicar-card .sg-mc-mpc-role { color: var(--amber-lt); }

/* Year panel title */
.sg-mc-panel-title {
  font-family: var(--serif); font-size: clamp(1.7rem, 3vw, 2.6rem);
  font-weight: 600; color: var(--ink); margin-bottom: .3rem;
}
.sg-mc-panel-title em { font-style: italic; color: var(--wine); }
.sg-mc-panel-year-tag {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--wine); color: #fff;
  font-family: var(--sans); font-size: .66rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase;
  padding: 4px 12px; border-radius: 20px; margin-bottom: 10px;
}

/* ══ REVEAL - Global Utility Classes ══════════════════════════════════════════════ */
/* Scoped under wrapper so it overrides properly but uses original class names */
.sg-mc-page-wrapper .reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.sg-mc-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-mc-page-wrapper .d1 { transition-delay: .08s; } 
.sg-mc-page-wrapper .d2 { transition-delay: .16s; } 
.sg-mc-page-wrapper .d3 { transition-delay: .24s; }
.sg-mc-page-wrapper .d4 { transition-delay: .32s; } 
.sg-mc-page-wrapper .d5 { transition-delay: .40s; }






/* ═════════════════════════════════════════════════════════════════════════════════════ */
/* ════════════════════════════ Volunteer Team Page styles ═════════════════════════════ */
/* ═════════════════════════════════════════════════════════════════════════════════════ */

/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Volunteer Teams Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-vt-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-vt-page-wrapper *,
.sg-vt-page-wrapper *::before,
.sg-vt-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-vt-page-wrapper h1, 
.sg-vt-page-wrapper h2, 
.sg-vt-page-wrapper h3, 
.sg-vt-page-wrapper h4, 
.sg-vt-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-vt-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-vt-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-vt-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ PAGE HERO ═══════════════════════════════════════════ */
.sg-vt-page-hero {
  position: relative; background: var(--wine-d); overflow: hidden; padding: 76px 0 60px;
}
.sg-vt-page-hero::before {
  content: ''; position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1511632765486-a01980e01a18?w=1600&q=80') center/cover no-repeat;
  opacity: .08;
}
.sg-vt-page-hero-watermark {
  position: absolute; right: -1%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(36vw, 28rem);
  color: rgba(255,255,255,.036); line-height: 1; pointer-events: none; user-select: none;
}
.sg-vt-page-hero-content { position: relative; z-index: 2; }
.sg-vt-breadcrumb-bar {
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.42); margin-bottom: 1rem;
  display: flex; align-items: center; gap: 8px;
}
.sg-vt-breadcrumb-bar a { color: rgba(255,255,255,.42); text-decoration: none; }
.sg-vt-breadcrumb-bar a:hover { color: rgba(255,255,255,.8); }
.sg-vt-breadcrumb-bar .sg-vt-current { color: var(--amber-lt); }
.sg-vt-page-eyebrow {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .8rem;
}
.sg-vt-page-eyebrow::before { content: ''; display: block; width: 28px; height: 1px; background: var(--amber); }
.sg-vt-page-h1 {
  font-family: var(--serif); font-size: clamp(2.2rem, 5vw, 3.8rem);
  font-weight: 600; color: #fff; line-height: 1.1; margin-bottom: .6rem;
}
.sg-vt-page-h1 em { font-style: italic; color: var(--amber-lt); }
.sg-vt-page-tagline { font-family: var(--sans); font-size: .9rem; font-weight: 300; color: rgba(255,255,255,.6); max-width: 520px; line-height: 1.75; }

/* ══ VOLUNTEER SECTION ═══════════════════════════════════ */
.sg-vt-sec-volunteer { padding: 64px 0 96px; }

/* ── Team group card ── */
.sg-vt-team-group {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 12px;
  overflow: hidden; margin-bottom: 48px;
}
.sg-vt-team-group-header {
  background: var(--wine); padding: 22px 28px;
  display: flex; align-items: center; gap: 16px;
}
.sg-vt-team-group-icon {
  width: 48px; height: 48px; border-radius: 8px;
  background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.22);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem; color: rgba(255,255,255,.85); flex-shrink: 0;
}
.sg-vt-team-group-title {
  font-family: var(--serif); font-size: 1.45rem; font-weight: 600; color: #fff; line-height: 1.2;
}
.sg-vt-team-group-subtitle {
  font-family: var(--sans); font-size: .68rem; font-weight: 500;
  letter-spacing: .1em; text-transform: uppercase; color: var(--amber-lt); margin-top: 3px;
}
.sg-vt-team-group-body { padding: 28px; }

/* ── Officer card (lead volunteer) ── */
.sg-vt-officer-card {
  background: var(--paper); border: 1px solid var(--mist); border-radius: 10px;
  padding: 22px 20px; display: flex; align-items: center; gap: 16px;
  transition: box-shadow .25s, transform .25s, border-color .25s; height: 100%;
}
.sg-vt-officer-card:hover { box-shadow: 0 8px 28px rgba(23,14,8,.09); transform: translateY(-2px); border-color: var(--amber-lt); }
.sg-vt-officer-card.sg-vt-lead { background: var(--wine); border-color: var(--wine); }
.sg-vt-officer-card.sg-vt-lead .sg-vt-officer-role { color: var(--amber-lt); }
.sg-vt-officer-card.sg-vt-lead .sg-vt-officer-name { color: #fff; }
.sg-vt-officer-avatar {
  width: 52px; height: 52px; border-radius: 50%; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem; background: var(--parch); color: var(--wine);
  border: 2px solid var(--mist);
}
.sg-vt-officer-card.sg-vt-lead .sg-vt-officer-avatar { background: rgba(255,255,255,.15); border-color: rgba(255,255,255,.25); color: rgba(255,255,255,.8); }
.sg-vt-officer-role {
  font-family: var(--sans); font-size: .6rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--amber); margin-bottom: 3px;
}
.sg-vt-officer-name { font-family: var(--serif); font-size: 1.08rem; font-weight: 600; color: var(--ink); line-height: 1.25; }

/* ── Section divider head ── */
.sg-vt-members-section-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 16px; display: flex; align-items: center; gap: 8px;
}
.sg-vt-members-section-head i { color: var(--wine); }

/* ── Volunteer pill ── */
.sg-vt-member-pill {
  display: flex; align-items: center; gap: 12px;
  background: var(--paper); border: 1px solid var(--mist); border-radius: 7px;
  padding: 12px 14px; transition: border-color .2s, box-shadow .2s;
}
.sg-vt-member-pill:hover { border-color: var(--amber-lt); box-shadow: 0 4px 14px rgba(23,14,8,.06); }
.sg-vt-member-pill-ico {
  width: 34px; height: 34px; border-radius: 50%;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: .82rem; flex-shrink: 0;
}
.sg-vt-member-pill.sg-vt-prev .sg-vt-member-pill-ico { background: rgba(140,121,104,.12); color: var(--stone); }
.sg-vt-member-pill-name { font-family: var(--serif); font-size: .98rem; font-weight: 600; color: var(--ink); line-height: 1.2; }
.sg-vt-member-pill-role { font-family: var(--sans); font-size: .65rem; color: var(--stone); letter-spacing: .05em; }

/* ── Panel title ── */
.sg-vt-panel-title {
  font-family: var(--serif); font-size: clamp(1.7rem, 3vw, 2.6rem);
  font-weight: 600; color: var(--ink); margin-bottom: .3rem;
}
.sg-vt-panel-title em { font-style: italic; color: var(--wine); }
.sg-vt-panel-tag {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--wine); color: #fff;
  font-family: var(--sans); font-size: .66rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase;
  padding: 4px 12px; border-radius: 20px; margin-bottom: 10px;
}

/* ── Info callout box ── */
.sg-vt-info-callout {
  background: var(--parch); border: 1px solid var(--mist); border-left: 4px solid var(--amber);
  border-radius: 0 8px 8px 0; padding: 18px 22px;
  font-family: var(--sans); font-size: .84rem; color: var(--stone); line-height: 1.7;
}
.sg-vt-info-callout strong { color: var(--ink); }

/* ── Useful Links box ── */
.sg-vt-useful-links-box {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px; padding: 24px;
}
.sg-vt-useful-links-box .sg-vt-box-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 16px; display: flex; align-items: center; gap: 8px;
}
.sg-vt-useful-links-box .sg-vt-box-head i { color: var(--wine); }
.sg-vt-useful-link-item {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 10px 0; border-bottom: 1px solid var(--mist);
}
.sg-vt-useful-link-item:last-child { border-bottom: none; padding-bottom: 0; }
.sg-vt-useful-link-item i { color: var(--amber); font-size: .9rem; margin-top: 3px; flex-shrink: 0; }
.sg-vt-useful-link-item a { font-family: var(--sans); font-size: .84rem; color: var(--wine); line-height: 1.5; text-decoration: none; }
.sg-vt-useful-link-item a:hover { color: var(--wine-d); }

/* ── Contact Rows extracted from footer logic ── */
.sg-vt-contact-row { 
  display: flex; align-items: flex-start; gap: 10px; margin-bottom: 10px; font-family: var(--sans); font-size: .82rem; 
}
.sg-vt-contact-row i { 
  color: var(--amber); font-size: .9rem; margin-top: 3px; flex-shrink: 0; 
}

/* ══ REVEAL - Global Utility Classes ══════════════════════════════════════════════ */
/* Scoped under wrapper so it overrides properly but uses original class names */
.sg-vt-page-wrapper .reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.sg-vt-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-vt-page-wrapper .d1 { transition-delay: .08s; } 
.sg-vt-page-wrapper .d2 { transition-delay: .16s; } 
.sg-vt-page-wrapper .d3 { transition-delay: .24s; }
.sg-vt-page-wrapper .d4 { transition-delay: .32s; } 
.sg-vt-page-wrapper .d5 { transition-delay: .40s; }








/* ════════════════════════════════════════════════════════════════════════════════════════ */
/* ════════════════════════════ Parish Activities Page styles ═════════════════════════════ */
/* ════════════════════════════════════════════════════════════════════════════════════════ */

/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Parish Activities Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-pa-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-pa-page-wrapper *,
.sg-pa-page-wrapper *::before,
.sg-pa-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-pa-page-wrapper h1, 
.sg-pa-page-wrapper h2, 
.sg-pa-page-wrapper h3, 
.sg-pa-page-wrapper h4, 
.sg-pa-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-pa-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-pa-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-pa-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}


/* 2. Specific Page Components */

/* ══ PAGE HERO ═══════════════════════════════════════════ */
.sg-pa-page-hero {
  position: relative; background: var(--wine-d); overflow: hidden; padding: 76px 0 60px;
}
.sg-pa-page-hero::before {
  content: ''; position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1511632765486-a01980e01a18?w=1600&q=80') center/cover no-repeat;
  opacity: .08;
}
.sg-pa-page-hero-watermark {
  position: absolute; right: -1%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(36vw, 28rem);
  color: rgba(255,255,255,.036); line-height: 1; pointer-events: none; user-select: none;
}
.sg-pa-page-hero-content { position: relative; z-index: 2; }
.sg-pa-breadcrumb-bar {
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.42); margin-bottom: 1rem;
  display: flex; align-items: center; gap: 8px;
}
.sg-pa-breadcrumb-bar a { color: rgba(255,255,255,.42); }
.sg-pa-breadcrumb-bar a:hover { color: rgba(255,255,255,.8); }
.sg-pa-breadcrumb-bar .sg-pa-current { color: var(--amber-lt); }
.sg-pa-page-eyebrow {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .8rem;
}
.sg-pa-page-eyebrow::before { content: ''; display: block; width: 28px; height: 1px; background: var(--amber); }
.sg-pa-page-h1 {
  font-family: var(--serif); font-size: clamp(2.2rem, 5vw, 3.8rem);
  font-weight: 600; color: #fff; line-height: 1.1; margin-bottom: .6rem;
}
.sg-pa-page-h1 em { font-style: italic; color: var(--amber-lt); }
.sg-pa-page-tagline { font-family: var(--sans); font-size: .9rem; font-weight: 300; color: rgba(255,255,255,.6); max-width: 520px; line-height: 1.75; }

/* ══ ACTIVITY NAV STRIP ══════════════════════════════════ */
.sg-pa-activity-strip {
  background: var(--cream); border-bottom: 1px solid var(--mist);
  position: sticky; top: 70px; z-index: 100;
  box-shadow: 0 2px 12px rgba(23,14,8,.06);
}
.sg-pa-activity-strip-inner {
  display: flex; align-items: center; overflow-x: auto;
  gap: 0; scrollbar-width: none; -ms-overflow-style: none;
  padding: 0 4px;
}
.sg-pa-activity-strip-inner::-webkit-scrollbar { display: none; }
.sg-pa-act-btn {
  flex-shrink: 0; background: none; border: none; cursor: pointer;
  font-family: var(--sans); font-size: .8rem; font-weight: 600;
  color: var(--stone); padding: 16px 18px;
  border-bottom: 3px solid transparent;
  transition: color .2s, border-color .2s; white-space: nowrap;
  letter-spacing: .03em;
}
.sg-pa-act-btn:hover { color: var(--wine); }
.sg-pa-act-btn.sg-pa-active { color: var(--wine); border-bottom-color: var(--wine); }

/* ══ MAIN SECTION ════════════════════════════════════════ */
.sg-pa-sec-activities { padding: 64px 0 96px; }

/* ── Activity panel ── */
.sg-pa-activity-panel { display: none; }
.sg-pa-activity-panel.sg-pa-active { display: block; }

/* ── Panel header ── */
.sg-pa-panel-tag {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--wine); color: #fff;
  font-family: var(--sans); font-size: .66rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase;
  padding: 4px 12px; border-radius: 20px; margin-bottom: 10px;
}
.sg-pa-panel-title {
  font-family: var(--serif); font-size: clamp(1.7rem, 3vw, 2.6rem);
  font-weight: 600; color: var(--ink); margin-bottom: .3rem;
}
.sg-pa-panel-title em { font-style: italic; color: var(--wine); }

/* ── Description blockquote ── */
.sg-pa-activity-quote {
  position: relative;
  background: var(--cream); border: 1px solid var(--mist);
  border-left: 4px solid var(--wine);
  border-radius: 0 10px 10px 0;
  padding: 24px 28px 24px 32px;
  margin-bottom: 32px;
  font-family: var(--serif); font-size: 1.08rem; font-weight: 400;
  color: var(--ink); line-height: 1.8;
}
.sg-pa-activity-quote::before {
  content: '\201C';
  position: absolute; top: -4px; left: 12px;
  font-size: 4rem; color: var(--wine); opacity: .18;
  font-family: var(--serif); line-height: 1;
}

/* ── Body text ── */
.sg-pa-activity-body {
  font-family: var(--sans); font-size: .9rem; color: #3a2e25;
  line-height: 1.85; margin-bottom: 32px;
}

/* ── Sub-section head ── */
.sg-pa-sub-section-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 20px; display: flex; align-items: center; gap: 8px;
}
.sg-pa-sub-section-head i { color: var(--wine); }

/* ── Event chip grid ── */
.sg-pa-event-chip {
  background: var(--paper); border: 1px solid var(--mist); border-radius: 8px;
  padding: 14px 16px; display: flex; align-items: center; gap: 14px;
  transition: border-color .2s, box-shadow .2s, transform .2s; height: 100%;
}
.sg-pa-event-chip:hover { border-color: var(--amber-lt); box-shadow: 0 4px 16px rgba(23,14,8,.07); transform: translateY(-2px); }
.sg-pa-event-chip-ico {
  width: 40px; height: 40px; border-radius: 8px; flex-shrink: 0;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center; font-size: 1rem;
}
.sg-pa-event-chip-label { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); line-height: 1.2; }
.sg-pa-event-chip-meta { font-family: var(--sans); font-size: .65rem; color: var(--stone); letter-spacing: .05em; margin-top: 2px; }

/* ── Highlight stat boxes ── */
.sg-pa-stat-box {
  background: var(--wine); border-radius: 10px; padding: 22px 20px; text-align: center; height: 100%;
}
.sg-pa-stat-box-num {
  font-family: var(--serif); font-size: 2.2rem; font-weight: 600; color: #fff; line-height: 1;
  margin-bottom: 4px;
}
.sg-pa-stat-box-label {
  font-family: var(--sans); font-size: .68rem; font-weight: 600;
  letter-spacing: .12em; text-transform: uppercase; color: var(--amber-lt);
}

/* ── Info callout ── */
.sg-pa-info-callout {
  background: var(--parch); border: 1px solid var(--mist); border-left: 4px solid var(--amber);
  border-radius: 0 8px 8px 0; padding: 18px 22px;
  font-family: var(--sans); font-size: .84rem; color: var(--stone); line-height: 1.7;
}
.sg-pa-info-callout strong { color: var(--ink); }

/* ── Useful links sidebar ── */
.sg-pa-useful-links-box {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px; padding: 24px;
}
.sg-pa-useful-links-box .sg-pa-box-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 16px; display: flex; align-items: center; gap: 8px;
}
.sg-pa-useful-links-box .sg-pa-box-head i { color: var(--wine); }
.sg-pa-useful-link-item {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 10px 0; border-bottom: 1px solid var(--mist);
}
.sg-pa-useful-link-item:last-child { border-bottom: none; padding-bottom: 0; }
.sg-pa-useful-link-item i { color: var(--amber); font-size: .9rem; margin-top: 3px; flex-shrink: 0; }
.sg-pa-useful-link-item a { font-family: var(--sans); font-size: .84rem; color: var(--wine); line-height: 1.5; text-decoration: none; }
.sg-pa-useful-link-item a:hover { color: var(--wine-d); }

/* ── Activities quick nav (sidebar) ── */
.sg-pa-quick-nav-box {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px; padding: 24px;
}
.sg-pa-quick-nav-box .sg-pa-box-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 16px; display: flex; align-items: center; gap: 8px;
}
.sg-pa-quick-nav-box .sg-pa-box-head i { color: var(--wine); }
.sg-pa-qnav-item {
  display: flex; align-items: center; gap: 10px;
  padding: 9px 0; border-bottom: 1px solid var(--mist);
  cursor: pointer; transition: color .2s;
}
.sg-pa-qnav-item:last-child { border-bottom: none; padding-bottom: 0; }
.sg-pa-qnav-item i { color: var(--amber); font-size: .85rem; flex-shrink: 0; }
.sg-pa-qnav-item span { font-family: var(--sans); font-size: .84rem; color: var(--wine); transition: color .2s; }
.sg-pa-qnav-item:hover span { color: var(--wine-d); }
.sg-pa-qnav-item.sg-pa-active span { font-weight: 600; }

/* ── Contact Rows ── */
.sg-pa-contact-row {
  display: flex; align-items: flex-start; gap: 10px; margin-bottom: 10px; font-family: var(--sans); font-size: .82rem;
}
.sg-pa-contact-row i { color: var(--amber); font-size: .9rem; margin-top: 3px; flex-shrink: 0; }

/* ══ REVEAL - Global Utility Classes ══════════════════════════════════════════════ */
/* Scoped under wrapper so it overrides properly but uses original class names */
.sg-pa-page-wrapper .reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.sg-pa-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-pa-page-wrapper .d1 { transition-delay: .08s; } 
.sg-pa-page-wrapper .d2 { transition-delay: .16s; } 
.sg-pa-page-wrapper .d3 { transition-delay: .24s; }
.sg-pa-page-wrapper .d4 { transition-delay: .32s; } 
.sg-pa-page-wrapper .d5 { transition-delay: .40s; }







/* ════════════════════════════════════════════════════════════════════════════════════════ */
/* ══════════════════════════════ Sunday School Page styles ═══════════════════════════════ */
/* ════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Sunday School Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-ss-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-ss-page-wrapper *,
.sg-ss-page-wrapper *::before,
.sg-ss-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-ss-page-wrapper h1, 
.sg-ss-page-wrapper h2, 
.sg-ss-page-wrapper h3, 
.sg-ss-page-wrapper h4, 
.sg-ss-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-ss-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-ss-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-ss-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ SHARED SECTION TOKENS ══════════════════════════════ */
.sg-ss-s-tag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.sg-ss-s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }
.sg-ss-s-h2 {
  font-family: var(--serif);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.2rem;
}
.sg-ss-s-h2 em { font-style: italic; color: var(--wine); }
.sg-ss-btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--wine); border: 1.5px solid var(--wine);
  border-radius: 4px; padding: .62rem 1.4rem;
  transition: background .2s, color .2s; text-decoration: none;
}
.sg-ss-btn-outline:hover { background: var(--wine); color: #fff; }
.sg-ss-btn-outline i { font-size: .72rem; transition: transform .2s; }
.sg-ss-btn-outline:hover i { transform: translateX(4px); }

/* ══ PAGE HERO (subpage banner) ════════════════════════ */
.sg-ss-page-hero {
  position: relative;
  background: var(--ink);
  padding: 80px 0 60px;
  overflow: hidden;
}
.sg-ss-page-hero-bg {
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1503676260728-1c00da094a0b?w=1600&q=80') center/cover no-repeat;
  opacity: .18;
}
.sg-ss-page-hero-veil {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(92,21,25,.92) 0%, rgba(23,14,8,.75) 100%);
}
.sg-ss-page-hero-watermark {
  position: absolute; right: 2%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(40vw, 28rem);
  color: rgba(255,255,255,.04); line-height: 1;
  pointer-events: none; user-select: none;
}
.sg-ss-page-hero-body { position: relative; z-index: 2; }
.sg-ss-page-breadcrumb {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.5); margin-bottom: 1.4rem;
}
.sg-ss-page-breadcrumb a { color: var(--amber-lt); text-decoration: none; }
.sg-ss-page-breadcrumb a:hover { color: #fff; }
.sg-ss-page-breadcrumb i { font-size: .6rem; }
.sg-ss-page-title {
  font-family: var(--serif);
  font-size: clamp(2.4rem, 5.5vw, 4.2rem);
  font-weight: 600; color: #fff; line-height: 1.1;
  margin-bottom: 1rem; letter-spacing: -.01em;
}
.sg-ss-page-title em { font-style: italic; color: var(--amber-lt); }
.sg-ss-page-lead {
  font-family: var(--sans); font-size: .97rem; font-weight: 300;
  color: rgba(255,255,255,.72); max-width: 540px; line-height: 1.75;
}
/* Stats strip at bottom of hero */
.sg-ss-hero-strip {
  position: relative; z-index: 2;
  display: flex; flex-wrap: wrap; gap: 0;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(255,255,255,.1);
  margin-top: 52px;
}
.sg-ss-hs-item {
  flex: 1 1 160px; padding: 1.2rem 2rem;
  border-right: 1px solid rgba(255,255,255,.08);
  text-align: center;
}
.sg-ss-hs-item:last-child { border-right: none; }
.sg-ss-hs-val { font-family: var(--serif); font-size: 2rem; font-weight: 700; color: #fff; line-height: 1; }
.sg-ss-hs-lbl { font-family: var(--sans); font-size: .63rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,255,255,.45); margin-top: 4px; }
@media (max-width: 576px) { .sg-ss-hs-item { flex-basis: 50%; } }

/* ══ INTRO SECTION ══════════════════════════════════════ */
.sg-ss-sec-intro { padding: 90px 0 70px; background: var(--paper); }
.sg-ss-intro-img-wrap { position: relative; max-width: 420px; margin: 0 auto; }
.sg-ss-intro-img-accent {
  position: absolute; top: -16px; left: -16px;
  width: 55%; height: 55%;
  background: var(--parch); border: 2px solid var(--amber);
  border-radius: 4px; z-index: 0;
}
.sg-ss-intro-img-box {
  position: relative; z-index: 1;
  width: 100%; aspect-ratio: 4/3;
  background: linear-gradient(145deg, var(--parch), var(--mist));
  border-radius: 6px; overflow: hidden;
  display: flex; align-items: center; justify-content: center;
  font-size: 5rem; color: var(--stone);
}
.sg-ss-intro-img-box img { width: 100%; height: 100%; object-fit: cover; }
.sg-ss-intro-year-ghost {
  position: absolute; bottom: -2rem; right: -1rem; z-index: -1;
  font-family: var(--serif); font-size: min(16vw, 7rem); font-weight: 700;
  color: transparent; -webkit-text-stroke: 1.5px var(--mist);
  pointer-events: none; user-select: none;
}

/* ══ PROGRAMS (card grid) ═══════════════════════════════ */
.sg-ss-sec-programs { padding: 80px 0 90px; background: var(--cream); }
.sg-ss-prog-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1.5rem;
}
.sg-ss-prog-card {
  background: var(--paper);
  border: 1px solid var(--mist);
  border-radius: 10px;
  padding: 2rem 1.75rem;
  box-shadow: 0 2px 14px rgba(23,14,8,.04);
  transition: box-shadow .25s, transform .25s;
  position: relative;
  overflow: hidden; height: 100%;
}
.sg-ss-prog-card::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--wine), var(--amber));
}
.sg-ss-prog-card:hover { box-shadow: 0 8px 32px rgba(23,14,8,.09); transform: translateY(-3px); }
.sg-ss-prog-icon {
  width: 52px; height: 52px; border-radius: 10px;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem; margin-bottom: 1.2rem;
}
.sg-ss-prog-title {
  font-family: var(--serif); font-size: 1.25rem; font-weight: 600;
  color: var(--ink); margin-bottom: .6rem; line-height: 1.25;
}
.sg-ss-prog-body {
  font-family: var(--sans); font-size: .86rem; color: #5a4a3a; line-height: 1.8;
}
.sg-ss-prog-badge {
  display: inline-block; margin-top: 1rem;
  font-family: var(--sans); font-size: .6rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase;
  background: var(--parch); color: var(--wine);
  padding: .22rem .65rem; border-radius: 3px;
}

/* ══ SCHEDULE SECTION ═══════════════════════════════════ */
.sg-ss-sec-schedule { padding: 80px 0; background: var(--paper); }
.sg-ss-schedule-table-wrap {
  background: var(--paper);
  border: 1px solid var(--mist);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 2px 14px rgba(23,14,8,.04);
}
.sg-ss-sched-row {
  display: flex; align-items: stretch;
  border-bottom: 1px solid var(--mist);
}
.sg-ss-sched-row:last-child { border-bottom: none; }
.sg-ss-sched-row:hover { background: var(--cream); }
.sg-ss-sched-day {
  min-width: 160px; padding: 1.1rem 1.5rem;
  background: var(--parch); border-right: 1px solid var(--mist);
  display: flex; align-items: center;
  font-family: var(--serif); font-size: 1rem; font-weight: 600;
  color: var(--wine); flex-shrink: 0;
}
.sg-ss-sched-info { padding: 1.1rem 1.5rem; }
.sg-ss-sched-event { font-family: var(--sans); font-size: .88rem; font-weight: 600; color: var(--ink); }
.sg-ss-sched-time { font-family: var(--sans); font-size: .78rem; color: var(--stone); margin-top: 2px; }
@media (max-width: 576px) {
  .sg-ss-sched-row { flex-direction: column; }
  .sg-ss-sched-day { border-right: none; border-bottom: 1px solid var(--mist); min-width: unset; }
}

/* ══ HIGHLIGHTS SECTION ═════════════════════════════════ */
.sg-ss-sec-highlights { padding: 80px 0; background: var(--cream); }
.sg-ss-hl-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 1px; background: var(--mist);
  border-radius: 8px; overflow: hidden;
}
.sg-ss-hl-card {
  background: var(--paper); padding: 1.75rem 1.6rem;
  transition: background .2s; height: 100%;
}
.sg-ss-hl-card:hover { background: var(--parch); }
.sg-ss-hl-year {
  font-family: var(--sans); font-size: .6rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--amber); margin-bottom: .5rem;
}
.sg-ss-hl-title {
  font-family: var(--serif); font-size: 1.1rem; font-weight: 600;
  color: var(--ink); line-height: 1.3; margin-bottom: .5rem;
}
.sg-ss-hl-body {
  font-family: var(--sans); font-size: .82rem; color: #5a4a3a; line-height: 1.75;
}
.sg-ss-hl-medal {
  display: inline-flex; align-items: center; gap: 6px;
  margin-top: .8rem; font-family: var(--sans); font-size: .72rem;
  font-weight: 600; color: var(--wine);
}
.sg-ss-hl-medal i { font-size: .85rem; }

/* ══ TEACHERS SECTION ═══════════════════════════════════ */
.sg-ss-sec-teachers { padding: 80px 0; background: var(--paper); }
.sg-ss-teachers-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 1px; background: var(--mist); border-radius: 8px; overflow: hidden;
}
.sg-ss-tc-card {
  background: var(--paper); padding: 1.5rem 1.4rem;
  transition: background .2s; height: 100%;
}
.sg-ss-tc-card:hover { background: var(--parch); }
.sg-ss-tc-card.sg-ss-lead-card { background: var(--wine); }
.sg-ss-tc-card.sg-ss-lead-card:hover { background: var(--wine-d); }
.sg-ss-tc-role {
  font-family: var(--sans); font-size: .6rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--amber); margin-bottom: .4rem;
}
.sg-ss-tc-card.sg-ss-lead-card .sg-ss-tc-role { color: var(--amber-lt); }
.sg-ss-tc-name {
  font-family: var(--serif); font-size: 1.05rem; font-weight: 600;
  color: var(--ink); line-height: 1.25; margin-bottom: .3rem;
}
.sg-ss-tc-card.sg-ss-lead-card .sg-ss-tc-name { color: #fff; }
.sg-ss-tc-sub {
  font-family: var(--sans); font-size: .75rem; color: var(--stone);
}
.sg-ss-tc-card.sg-ss-lead-card .sg-ss-tc-sub { color: rgba(255,255,255,.6); }
.sg-ss-tc-avatar {
  width: 48px; height: 48px; border-radius: 50%;
  background: var(--parch); border: 2px solid var(--mist);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem; color: var(--stone); margin-bottom: 1rem;
}
.sg-ss-tc-card.sg-ss-lead-card .sg-ss-tc-avatar { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.2); color: rgba(255,255,255,.75); }

/* ══ REGISTRATION SECTION ═══════════════════════════════ */
.sg-ss-sec-registration { padding: 80px 0; background: var(--parch); }
.sg-ss-reg-card {
  background: var(--paper);
  border: 1px solid var(--mist);
  border-radius: 10px;
  padding: 2.5rem 2rem;
  box-shadow: 0 2px 14px rgba(23,14,8,.06);
}
.sg-ss-reg-steps {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1.5rem; margin-top: 2rem;
}
.sg-ss-reg-step {
  display: flex; gap: 14px; align-items: flex-start;
}
.sg-ss-reg-num {
  width: 36px; height: 36px; border-radius: 50%;
  background: var(--wine); color: #fff;
  font-family: var(--serif); font-size: 1rem; font-weight: 700;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.sg-ss-reg-step-title { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); margin-bottom: .3rem; }
.sg-ss-reg-step-body { font-family: var(--sans); font-size: .82rem; color: #5a4a3a; line-height: 1.7; }
.sg-ss-reg-contact-box {
  background: var(--parch); border-left: 3px solid var(--amber);
  border-radius: 0 6px 6px 0; padding: 1.25rem 1.5rem;
  margin-top: 2rem; display: flex; align-items: flex-start; gap: 14px;
}
.sg-ss-reg-contact-box i { color: var(--amber); font-size: 1.2rem; flex-shrink: 0; margin-top: 2px; }
.sg-ss-reg-contact-title { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); margin-bottom: .25rem; }
.sg-ss-reg-contact-body { font-family: var(--sans); font-size: .82rem; color: #5a4a3a; line-height: 1.7; }

/* ══ VERSE FEATURE ══════════════════════════════════════ */
.sg-ss-sec-verse {
  background: var(--parch); padding: 80px 0; text-align: center;
  position: relative; overflow: hidden;
}
.sg-ss-sec-verse::before {
  content: '\201C';
  position: absolute; top: -5rem; left: 50%; transform: translateX(-50%);
  font-family: var(--serif); font-size: 30rem; line-height: 1;
  color: rgba(92,21,25,.055); pointer-events: none;
}
.sg-ss-feat-verse {
  font-family: var(--serif); font-style: italic; font-weight: 500;
  font-size: clamp(1.5rem, 3.5vw, 2.45rem); line-height: 1.55;
  color: var(--ink); max-width: 740px; margin: 0 auto 1.3rem;
  position: relative;
}
.sg-ss-feat-ref {
  font-family: var(--sans); font-size: .8rem; font-weight: 600;
  letter-spacing: .16em; text-transform: uppercase; color: var(--wine);
}

/* ══ USEFUL LINKS ═══════════════════════════════════════ */
.sg-ss-sec-links { padding: 80px 0; background: var(--paper); }
.sg-ss-link-cards {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1px; background: var(--mist); border-radius: 8px; overflow: hidden;
}
.sg-ss-lc {
  background: var(--paper); padding: 1.6rem 1.5rem;
  display: flex; align-items: flex-start; gap: 14px;
  text-decoration: none; color: var(--ink);
  transition: background .2s; height: 100%;
}
.sg-ss-lc:hover { background: var(--parch); }
.sg-ss-lc-ico {
  width: 42px; height: 42px; border-radius: 7px; flex-shrink: 0;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.05rem; transition: background .2s, color .2s;
}
.sg-ss-lc:hover .sg-ss-lc-ico { background: var(--wine); color: #fff; }
.sg-ss-lc-label { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); margin-bottom: 2px; }
.sg-ss-lc-hint { font-family: var(--sans); font-size: .72rem; color: var(--stone); }

/* ══ REVEAL - Global Utility Classes ══════════════════════════════════════════════ */
/* Scoped under wrapper so it overrides properly but uses original class names */
.sg-ss-page-wrapper .reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.sg-ss-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-ss-page-wrapper .d1 { transition-delay: .08s; } 
.sg-ss-page-wrapper .d2 { transition-delay: .16s; } 
.sg-ss-page-wrapper .d3 { transition-delay: .24s; }
.sg-ss-page-wrapper .d4 { transition-delay: .32s; } 
.sg-ss-page-wrapper .d5 { transition-delay: .40s; }







/* ════════════════════════════════════════════════════════════════════════════════════════ */
/* ═════════════════════════════════ MGOCSM Page styles ═══════════════════════════════════ */
/* ════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT MGOCSM Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-mg-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-mg-page-wrapper *,
.sg-mg-page-wrapper *::before,
.sg-mg-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-mg-page-wrapper h1, 
.sg-mg-page-wrapper h2, 
.sg-mg-page-wrapper h3, 
.sg-mg-page-wrapper h4, 
.sg-mg-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-mg-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-mg-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-mg-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ SHARED TOKENS ══════════════════════════════════════ */
.sg-mg-s-tag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.sg-mg-s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }
.sg-mg-s-h2 {
  font-family: var(--serif);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.2rem;
}
.sg-mg-s-h2 em { font-style: italic; color: var(--wine); }
.sg-mg-btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--wine); border: 1.5px solid var(--wine);
  border-radius: 4px; padding: .62rem 1.4rem;
  transition: background .2s, color .2s; text-decoration: none;
}
.sg-mg-btn-outline:hover { background: var(--wine); color: #fff; }
.sg-mg-btn-outline i { font-size: .72rem; transition: transform .2s; }
.sg-mg-btn-outline:hover i { transform: translateX(4px); }

/* ══ PAGE HERO ══════════════════════════════════════════ */
.sg-mg-page-hero {
  position: relative;
  background: var(--ink);
  padding: 80px 0 60px;
  overflow: hidden;
}
.sg-mg-page-hero-bg {
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1529070538774-1843cb3265df?w=1600&q=80') center/cover no-repeat;
  opacity: .18;
}
.sg-mg-page-hero-veil {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(92,21,25,.92) 0%, rgba(23,14,8,.75) 100%);
}
.sg-mg-page-hero-watermark {
  position: absolute; right: 2%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(40vw, 28rem);
  color: rgba(255,255,255,.04); line-height: 1;
  pointer-events: none; user-select: none;
}
.sg-mg-page-hero-body { position: relative; z-index: 2; }
.sg-mg-page-breadcrumb {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.5); margin-bottom: 1.4rem;
}
.sg-mg-page-breadcrumb a { color: var(--amber-lt); text-decoration: none; }
.sg-mg-page-breadcrumb a:hover { color: #fff; }
.sg-mg-page-breadcrumb i { font-size: .6rem; }
.sg-mg-page-title {
  font-family: var(--serif);
  font-size: clamp(2.4rem, 5.5vw, 4.2rem);
  font-weight: 600; color: #fff; line-height: 1.1;
  margin-bottom: 1rem; letter-spacing: -.01em;
}
.sg-mg-page-title em { font-style: italic; color: var(--amber-lt); }
.sg-mg-page-lead {
  font-family: var(--sans); font-size: .97rem; font-weight: 300;
  color: rgba(255,255,255,.72); max-width: 560px; line-height: 1.75;
}

/* Hero stats strip */
.sg-mg-hero-strip {
  position: relative; z-index: 2;
  display: flex; flex-wrap: wrap; gap: 0;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(255,255,255,.1);
  margin-top: 52px;
}
.sg-mg-hs-item {
  flex: 1 1 160px; padding: 1.2rem 2rem;
  border-right: 1px solid rgba(255,255,255,.08);
  text-align: center;
}
.sg-mg-hs-item:last-child { border-right: none; }
.sg-mg-hs-val { font-family: var(--serif); font-size: 2rem; font-weight: 700; color: #fff; line-height: 1; }
.sg-mg-hs-lbl { font-family: var(--sans); font-size: .63rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,255,255,.45); margin-top: 4px; }
@media (max-width: 576px) { .sg-mg-hs-item { flex-basis: 50%; } }

/* ══ MOTTO SECTION ══════════════════════════════════════ */
.sg-mg-sec-motto { padding: 90px 0 70px; background: var(--paper); }
.sg-mg-motto-trio {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px; background: var(--mist);
  border-radius: 12px; overflow: hidden;
  margin-top: 2.5rem;
}
@media (max-width: 768px) { .sg-mg-motto-trio { grid-template-columns: 1fr; } }
.sg-mg-motto-card {
  background: var(--paper);
  padding: 2.5rem 2rem;
  text-align: center;
  transition: background .25s;
  position: relative; overflow: hidden;
}
.sg-mg-motto-card:hover { background: var(--parch); }
.sg-mg-motto-card::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--wine), var(--amber));
}
.sg-mg-motto-icon {
  width: 64px; height: 64px; border-radius: 50%;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem; margin: 0 auto 1.2rem;
}
.sg-mg-motto-word {
  font-family: var(--serif); font-size: 1.6rem; font-weight: 700;
  color: var(--wine); letter-spacing: .02em; margin-bottom: .5rem;
}
.sg-mg-motto-desc {
  font-family: var(--sans); font-size: .86rem; color: #5a4a3a; line-height: 1.75;
}
/* Intro text */
.sg-mg-intro-text-body {
  font-family: var(--sans); font-size: .97rem; color: #5a4a3a; line-height: 1.85;
  max-width: 680px;
}
.sg-mg-intro-accent-box {
  background: var(--parch);
  border-left: 3px solid var(--amber);
  padding: 1.2rem 1.5rem; border-radius: 0 8px 8px 0;
  margin-top: 2rem;
}
.sg-mg-intro-accent-box p { font-family: var(--sans); font-size: .88rem; color: #5a4a3a; line-height: 1.8; margin: 0; }
.sg-mg-intro-accent-box strong { color: var(--wine); }

/* ══ YEAR TABS ══════════════════════════════════════════ */
.sg-mg-sec-bearers { padding: 80px 0 90px; background: var(--cream); }
.sg-mg-year-tabs {
  display: flex; flex-wrap: wrap; gap: .5rem;
  margin-bottom: 2.5rem;
}
.sg-mg-yr-btn {
  font-family: var(--sans); font-size: .75rem; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  padding: .45rem 1.1rem; border-radius: 4px;
  border: 1.5px solid var(--mist);
  background: transparent; color: var(--stone);
  cursor: pointer; transition: all .2s;
}
.sg-mg-yr-btn:hover { border-color: var(--wine); color: var(--wine); }
.sg-mg-yr-btn.sg-mg-active { background: var(--wine); border-color: var(--wine); color: #fff; }
.sg-mg-year-panel { display: none; }
.sg-mg-year-panel.sg-mg-active { display: block; }

/* Bearers grid */
.sg-mg-bearers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1px; background: var(--mist);
  border-radius: 8px; overflow: hidden;
}
.sg-mg-bc-card {
  background: var(--paper); padding: 1.5rem 1.4rem;
  transition: background .2s; height: 100%;
}
.sg-mg-bc-card:hover { background: var(--parch); }
.sg-mg-bc-card.sg-mg-lead { background: var(--wine); }
.sg-mg-bc-card.sg-mg-lead:hover { background: var(--wine-d); }
.sg-mg-bc-role {
  font-family: var(--sans); font-size: .58rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--amber); margin-bottom: .4rem;
}
.sg-mg-bc-card.sg-mg-lead .sg-mg-bc-role { color: var(--amber-lt); }
.sg-mg-bc-name {
  font-family: var(--serif); font-size: 1.08rem; font-weight: 600;
  color: var(--ink); line-height: 1.25; margin-bottom: .3rem;
}
.sg-mg-bc-card.sg-mg-lead .sg-mg-bc-name { color: #fff; }
.sg-mg-bc-avatar {
  width: 44px; height: 44px; border-radius: 50%;
  background: var(--parch); border: 2px solid var(--mist);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem; color: var(--stone); margin-bottom: .9rem;
}
.sg-mg-bc-card.sg-mg-lead .sg-mg-bc-avatar { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.2); color: rgba(255,255,255,.75); }

/* ══ EVENTS / HIGHLIGHTS ════════════════════════════════ */
.sg-mg-sec-events { padding: 80px 0; background: var(--paper); }
.sg-mg-ev-list { display: flex; flex-direction: column; gap: 1.5rem; }
.sg-mg-ev-card {
  display: flex; gap: 1.5rem; align-items: flex-start;
  background: var(--paper); border: 1px solid var(--mist);
  border-radius: 10px; padding: 1.75rem;
  box-shadow: 0 2px 14px rgba(23,14,8,.04);
  transition: box-shadow .25s, transform .25s;
  position: relative; overflow: hidden;
}
.sg-mg-ev-card::before {
  content: ''; position: absolute; top: 0; left: 0;
  bottom: 0; width: 3px;
  background: linear-gradient(180deg, var(--wine), var(--amber));
}
.sg-mg-ev-card:hover { box-shadow: 0 8px 32px rgba(23,14,8,.09); transform: translateY(-2px); }
.sg-mg-ev-year-badge {
  flex-shrink: 0;
  background: var(--parch); border: 1px solid var(--mist);
  border-radius: 6px; padding: .7rem 1rem;
  text-align: center; min-width: 70px;
}
.sg-mg-ev-year-num { font-family: var(--serif); font-size: 1.4rem; font-weight: 700; color: var(--wine); line-height: 1; }
.sg-mg-ev-year-lbl { font-family: var(--sans); font-size: .55rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--stone); margin-top: 3px; }
.sg-mg-ev-title { font-family: var(--serif); font-size: 1.15rem; font-weight: 600; color: var(--ink); line-height: 1.3; margin-bottom: .4rem; }
.sg-mg-ev-body { font-family: var(--sans); font-size: .86rem; color: #5a4a3a; line-height: 1.8; }
.sg-mg-ev-tag {
  display: inline-flex; align-items: center; gap: 5px;
  margin-top: .75rem; font-family: var(--sans); font-size: .65rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--wine); background: var(--parch);
  padding: .2rem .6rem; border-radius: 3px;
}
@media (max-width: 576px) {
  .sg-mg-ev-card { flex-direction: column; gap: 1rem; }
  .sg-mg-ev-year-badge { align-self: flex-start; }
}

/* ══ ALUMNI CTA ═════════════════════════════════════════ */
.sg-mg-sec-alumni {
  padding: 70px 0;
  background: var(--ink);
  position: relative; overflow: hidden;
}
.sg-mg-sec-alumni::before {
  content: '';
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1529070538774-1843cb3265df?w=1200&q=60') center/cover no-repeat;
  opacity: .07;
}
.sg-mg-alumni-inner { position: relative; z-index: 1; text-align: center; }
.sg-mg-alumni-pre {
  font-family: var(--sans); font-size: .7rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase;
  color: var(--amber); margin-bottom: 1rem;
}
.sg-mg-alumni-h { font-family: var(--serif); font-size: clamp(1.8rem, 4vw, 2.8rem); font-weight: 600; color: #fff; line-height: 1.2; margin-bottom: 1rem; }
.sg-mg-alumni-h em { font-style: italic; color: var(--amber-lt); }
.sg-mg-alumni-body { font-family: var(--sans); font-size: .93rem; color: rgba(255,255,255,.7); max-width: 560px; margin: 0 auto 2rem; line-height: 1.8; }
.sg-mg-btn-amber {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  background: var(--amber); color: #fff;
  border-radius: 4px; padding: .7rem 1.6rem;
  transition: background .2s; text-decoration: none;
}
.sg-mg-btn-amber:hover { background: #a56d20; color: #fff; }

/* ══ VERSE FEATURE ══════════════════════════════════════ */
.sg-mg-sec-verse {
  background: var(--wine);
  padding: 70px 0;
  text-align: center;
}
.sg-mg-feat-verse {
  font-family: var(--serif); font-size: clamp(1.3rem, 3vw, 1.85rem);
  font-style: italic; color: rgba(255,255,255,.9);
  line-height: 1.5; max-width: 700px; margin: 0 auto .9rem;
}
.sg-mg-feat-ref {
  font-family: var(--sans); font-size: .78rem; font-weight: 500;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--amber-lt);
}

/* ══ USEFUL LINKS ═══════════════════════════════════════ */
.sg-mg-sec-links { padding: 80px 0; background: var(--cream); }
.sg-mg-link-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1px; background: var(--mist);
  border-radius: 10px; overflow: hidden;
}
.sg-mg-lc {
  display: flex; align-items: center; gap: 1rem;
  background: var(--paper); padding: 1.4rem 1.5rem;
  transition: background .2s; text-decoration: none; height: 100%;
}
.sg-mg-lc:hover { background: var(--parch); }
.sg-mg-lc-ico {
  width: 44px; height: 44px; border-radius: 8px;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem; flex-shrink: 0; transition: background .2s, color .2s;
}
.sg-mg-lc:hover .sg-mg-lc-ico { background: var(--wine); color: #fff; }
.sg-mg-lc-label { font-family: var(--sans); font-size: .85rem; font-weight: 600; color: var(--ink); }
.sg-mg-lc-hint { font-family: var(--sans); font-size: .74rem; color: var(--stone); margin-top: 2px; }

/* ══ REVEAL - Global Utility Classes ══════════════════════════════════════════════ */
/* Scoped under wrapper so it overrides properly but uses original class names */
.sg-mg-page-wrapper .reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.sg-mg-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-mg-page-wrapper .d1 { transition-delay: .08s; } 
.sg-mg-page-wrapper .d2 { transition-delay: .16s; } 
.sg-mg-page-wrapper .d3 { transition-delay: .24s; }
.sg-mg-page-wrapper .d4 { transition-delay: .32s; } 
.sg-mg-page-wrapper .d5 { transition-delay: .40s; }









/* ══════════════════════════════════════════════════════════════════════════════════════════════ */
/* ═════════════════════════════════ marth-mariam Page styles ═══════════════════════════════════ */
/* ══════════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Marth Mariam (MMVS) Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-mm-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-mm-page-wrapper *,
.sg-mm-page-wrapper *::before,
.sg-mm-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-mm-page-wrapper h1, 
.sg-mm-page-wrapper h2, 
.sg-mm-page-wrapper h3, 
.sg-mm-page-wrapper h4, 
.sg-mm-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-mm-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-mm-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-mm-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ SHARED TOKENS ══════════════════════════════════════ */
.sg-mm-s-tag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.sg-mm-s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }
.sg-mm-s-h2 {
  font-family: var(--serif);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.2rem;
}
.sg-mm-s-h2 em { font-style: italic; color: var(--wine); }

/* ══ PAGE HERO ══════════════════════════════════════════ */
.sg-mm-page-hero {
  position: relative;
  background: var(--ink);
  padding: 80px 0 0;
  overflow: hidden;
}
.sg-mm-page-hero-bg {
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1545205597-3d9d02c29597?w=1600&q=80') center/cover no-repeat;
  opacity: .15;
}
.sg-mm-page-hero-veil {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(92,21,25,.93) 0%, rgba(23,14,8,.78) 100%);
}
.sg-mm-page-hero-watermark {
  position: absolute; right: 1%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(40vw, 28rem);
  color: rgba(255,255,255,.04); line-height: 1;
  pointer-events: none; user-select: none;
}
.sg-mm-page-hero-body { position: relative; z-index: 2; padding-bottom: 60px; }
.sg-mm-page-breadcrumb {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.5); margin-bottom: 1.4rem;
}
.sg-mm-page-breadcrumb a { color: var(--amber-lt); }
.sg-mm-page-breadcrumb i { font-size: .6rem; }
.sg-mm-page-title {
  font-family: var(--serif);
  font-size: clamp(2.4rem, 5.5vw, 4.2rem);
  font-weight: 600; color: #fff; line-height: 1.1;
  margin-bottom: 1rem; letter-spacing: -.01em;
}
.sg-mm-page-title em { font-style: italic; color: var(--amber-lt); }
.sg-mm-page-lead {
  font-family: var(--sans); font-size: .97rem; font-weight: 300;
  color: rgba(255,255,255,.72); max-width: 560px; line-height: 1.75;
}

/* Hero stats strip */
.sg-mm-hero-strip {
  position: relative; z-index: 2;
  display: flex; flex-wrap: wrap;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(255,255,255,.1);
}
.sg-mm-hs-item {
  flex: 1 1 160px; padding: 1.2rem 2rem;
  border-right: 1px solid rgba(255,255,255,.08);
  text-align: center;
}
.sg-mm-hs-item:last-child { border-right: none; }
.sg-mm-hs-val { font-family: var(--serif); font-size: 2rem; font-weight: 700; color: #fff; line-height: 1; }
.sg-mm-hs-lbl { font-family: var(--sans); font-size: .63rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,255,255,.45); margin-top: 4px; }
@media (max-width: 576px) { .sg-mm-hs-item { flex-basis: 50%; } }

/* ══ INTRO & PILLARS ════════════════════════════════════ */
.sg-mm-sec-intro { padding: 90px 0 70px; background: var(--paper); }
.sg-mm-intro-accent-box {
  background: var(--parch);
  border-left: 3px solid var(--amber);
  padding: 1.2rem 1.5rem; border-radius: 0 8px 8px 0; margin-top: 1.5rem;
  font-family: var(--sans); font-size: .88rem; color: #5a4a3a; line-height: 1.8;
}
.sg-mm-intro-accent-box strong { color: var(--wine); }

.sg-mm-pillars-trio {
  display: grid; grid-template-columns: repeat(3,1fr);
  gap: 1px; background: var(--mist);
  border-radius: 12px; overflow: hidden; margin-top: 2.5rem;
}
@media (max-width: 768px) { .sg-mm-pillars-trio { grid-template-columns: 1fr; } }
.sg-mm-pillar-card {
  background: var(--paper); padding: 2.2rem 1.8rem;
  text-align: center; transition: background .25s;
  position: relative; overflow: hidden;
}
.sg-mm-pillar-card:hover { background: var(--parch); }
.sg-mm-pillar-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--wine), var(--amber));
}
.sg-mm-pillar-icon {
  width: 60px; height: 60px; border-radius: 50%;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.5rem; margin: 0 auto 1.1rem;
}
.sg-mm-pillar-title { font-family: var(--serif); font-size: 1.3rem; font-weight: 700; color: var(--wine); margin-bottom: .5rem; }
.sg-mm-pillar-desc { font-family: var(--sans); font-size: .85rem; color: #5a4a3a; line-height: 1.75; }

/* ══ OFFICE BEARERS TABS ════════════════════════════════ */
.sg-mm-sec-bearers { padding: 80px 0 90px; background: var(--cream); }
.sg-mm-year-tabs { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 2.5rem; }
.sg-mm-yr-btn {
  font-family: var(--sans); font-size: .75rem; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  padding: .45rem 1.1rem; border-radius: 4px;
  border: 1.5px solid var(--mist); background: transparent;
  color: var(--stone); cursor: pointer; transition: all .2s;
}
.sg-mm-yr-btn:hover { border-color: var(--wine); color: var(--wine); }
.sg-mm-yr-btn.sg-mm-active { background: var(--wine); border-color: var(--wine); color: #fff; }
.sg-mm-year-panel { display: none; }
.sg-mm-year-panel.sg-mm-active { display: block; }

.sg-mm-year-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 1rem;
}
.sg-mm-year-heading h3 {
  font-family: var(--serif);
  font-size: clamp(1.45rem, 3vw, 2rem);
  font-weight: 600;
  line-height: 1;
  color: var(--ink);
  margin: 0;
}
.sg-mm-year-heading i {
  color: var(--wine);
  font-size: 1.6rem;
}
.sg-mm-year-kicker {
  font-family: var(--sans);
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--amber);
  margin-bottom: .4rem;
}

.sg-mm-bearers-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1px; background: var(--mist); border-radius: 8px; overflow: hidden;
}
.sg-mm-bc-card { background: var(--paper); padding: 1.5rem 1.4rem; transition: background .2s; height: 100%; }
.sg-mm-bc-card:hover { background: var(--parch); }
.sg-mm-bc-card.sg-mm-lead { background: var(--wine); }
.sg-mm-bc-card.sg-mm-lead:hover { background: var(--wine-d); }
.sg-mm-bc-role {
  font-family: var(--sans); font-size: .58rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase; color: var(--amber); margin-bottom: .4rem;
}
.sg-mm-bc-card.sg-mm-lead .sg-mm-bc-role { color: var(--amber-lt); }
.sg-mm-bc-name { font-family: var(--serif); font-size: 1.08rem; font-weight: 600; color: var(--ink); line-height: 1.25; }
.sg-mm-bc-card.sg-mm-lead .sg-mm-bc-name { color: #fff; }
.sg-mm-bc-sub { font-family: var(--sans); font-size: .75rem; color: var(--stone); margin-top: .2rem; }
.sg-mm-bc-card.sg-mm-lead .sg-mm-bc-sub { color: rgba(255,255,255,.55); }
.sg-mm-bc-avatar {
  width: 44px; height: 44px; border-radius: 50%;
  background: var(--parch); border: 2px solid var(--mist);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem; color: var(--stone); margin-bottom: .9rem;
}
.sg-mm-bc-card.sg-mm-lead .sg-mm-bc-avatar { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.2); color: rgba(255,255,255,.75); }

/* ══ ACTIVITIES ═════════════════════════════════════════ */
.sg-mm-sec-activities { padding: 80px 0; background: var(--paper); }
.sg-mm-act-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1.5rem;
}
.sg-mm-act-card {
  background: var(--paper); border: 1px solid var(--mist); border-radius: 10px;
  padding: 2rem 1.75rem; box-shadow: 0 2px 14px rgba(23,14,8,.04);
  transition: box-shadow .25s, transform .25s; position: relative; overflow: hidden; height: 100%;
}
.sg-mm-act-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--wine), var(--amber));
}
.sg-mm-act-card:hover { box-shadow: 0 8px 32px rgba(23,14,8,.09); transform: translateY(-3px); }
.sg-mm-act-icon {
  width: 52px; height: 52px; border-radius: 10px; background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center; font-size: 1.4rem; margin-bottom: 1.2rem;
}
.sg-mm-act-year { font-family: var(--sans); font-size: .6rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amber); margin-bottom: .3rem; }
.sg-mm-act-title { font-family: var(--serif); font-size: 1.2rem; font-weight: 600; color: var(--ink); margin-bottom: .6rem; line-height: 1.3; }
.sg-mm-act-body { font-family: var(--sans); font-size: .86rem; color: #5a4a3a; line-height: 1.8; }
.sg-mm-act-badge {
  display: inline-flex; align-items: center; gap: 5px; margin-top: 1rem;
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: var(--wine);
  background: var(--parch); padding: .22rem .65rem; border-radius: 3px;
}

/* ══ CHARITY SPOTLIGHT ══════════════════════════════════ */
.sg-mm-event-accordion {
  display: flex;
  flex-direction: column;
  border: 1px solid var(--mist);
  border-radius: 10px;
  overflow: hidden;
  background: var(--mist);
  box-shadow: 0 4px 28px rgba(23,14,8,.06);
}
.sg-mm-event-item {
  background: var(--paper);
  border-bottom: 1px solid var(--mist);
}
.sg-mm-event-item:last-child { border-bottom: 0; }
.sg-mm-event-summary {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.2rem 1.4rem;
  cursor: pointer;
  background: var(--paper);
  transition: background .2s;
}
.sg-mm-event-summary::-webkit-details-marker { display: none; }
.sg-mm-event-summary:hover { background: var(--cream); }
.sg-mm-event-item[open] .sg-mm-event-summary { background: var(--wine); }
.sg-mm-event-icon {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background: var(--parch);
  color: var(--wine);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 1.15rem;
  transition: background .2s, color .2s;
}
.sg-mm-event-item[open] .sg-mm-event-icon {
  background: rgba(255,255,255,.12);
  color: var(--amber-lt);
}
.sg-mm-event-heading {
  display: flex;
  flex-direction: column;
  gap: .18rem;
  min-width: 0;
  flex: 1;
}
.sg-mm-event-year {
  font-family: var(--sans);
  font-size: .58rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--amber);
}
.sg-mm-event-title {
  font-family: var(--serif);
  font-size: clamp(.98rem, 1.3vw, 1.08rem);
  font-weight: 500;
  line-height: 1.28;
  color: var(--ink);
}
.sg-mm-event-item[open] .sg-mm-event-year { color: var(--amber-lt); }
.sg-mm-event-item[open] .sg-mm-event-title { color: #fff; }
.sg-mm-event-chevron {
  color: var(--stone);
  flex-shrink: 0;
  transition: transform .25s, color .2s;
}
.sg-mm-event-item[open] .sg-mm-event-chevron {
  transform: rotate(180deg);
  color: rgba(255,255,255,.72);
}
.sg-mm-event-content {
  background: var(--cream);
  padding: 2rem 1.6rem 2.2rem;
}
.sg-mm-event-copy { max-width: 820px; }
.sg-mm-event-copy p {
  font-family: var(--sans);
  font-size: .92rem;
  color: #5a4a3a;
  line-height: 1.85;
  margin: 0 0 .85rem;
}
.sg-mm-event-copy p:last-child { margin-bottom: 0; }
.sg-mm-event-copy img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 420px;
  margin: 1.5rem auto 0;
  border-radius: 10px;
  border: 1px solid var(--mist);
  box-shadow: 0 8px 28px rgba(23,14,8,.09);
}
.sg-mm-event-links {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 1.2rem;
}
.sg-mm-event-link {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  font-family: var(--sans);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--wine);
  background: var(--paper);
  border: 1px solid var(--mist);
  border-radius: 4px;
  padding: .55rem .85rem;
}
.sg-mm-event-link:hover {
  background: var(--wine);
  border-color: var(--wine);
  color: #fff;
}
.sg-mm-event-embeds {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin-top: 1.5rem;
}
.sg-mm-event-copy iframe,
.sg-mm-event-embed iframe {
  display: block;
  width: 100%;
  max-width: 860px;
  aspect-ratio: 16 / 9;
  height: auto;
  margin: 0 auto;
  border: 0;
  border-radius: 10px;
  box-shadow: 0 8px 28px rgba(23,14,8,.09);
}
.sg-mm-event-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  align-items: start;
  justify-items: center;
  gap: 1rem;
  margin-top: 1.5rem;
}
.sg-mm-event-photo {
  width: fit-content;
  max-width: 860px;
  margin: 0;
  border-radius: 10px;
  overflow: hidden;
  background: var(--paper);
  border: 1px solid var(--mist);
  box-shadow: 0 8px 28px rgba(23,14,8,.09);
}
.sg-mm-event-photo img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 420px;
  margin: 0 auto;
  object-fit: contain;
}

@media (max-width: 640px) {
  .sg-mm-year-heading { align-items: flex-start; }
  .sg-mm-event-summary {
    align-items: flex-start;
    gap: .85rem;
    padding: 1rem;
  }
  .sg-mm-event-icon {
    width: 38px;
    height: 38px;
    font-size: 1rem;
  }
  .sg-mm-event-content { padding: 1.4rem 1rem 1.6rem; }
  .sg-mm-event-gallery { grid-template-columns: 1fr; }
}

.sg-mm-sec-charity { padding: 70px 0; background: var(--cream); }
.sg-mm-charity-wrap {
  display: grid; grid-template-columns: 1fr 1fr; gap: 1px;
  background: var(--mist); border-radius: 12px; overflow: hidden;
}
@media (max-width: 768px) { .sg-mm-charity-wrap { grid-template-columns: 1fr; } }
.sg-mm-ch-cell { background: var(--paper); padding: 2rem 1.8rem; transition: background .2s; }
.sg-mm-ch-cell:hover { background: var(--parch); }
.sg-mm-ch-cell.sg-mm-dark { background: var(--wine); }
.sg-mm-ch-cell.sg-mm-dark:hover { background: var(--wine-d); }
.sg-mm-ch-ico { font-size: 2rem; color: var(--wine); margin-bottom: .75rem; }
.sg-mm-ch-cell.sg-mm-dark .sg-mm-ch-ico { color: var(--amber-lt); }
.sg-mm-ch-label {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase; color: var(--amber); margin-bottom: .4rem;
}
.sg-mm-ch-cell.sg-mm-dark .sg-mm-ch-label { color: var(--amber-lt); }
.sg-mm-ch-title { font-family: var(--serif); font-size: 1.25rem; font-weight: 600; color: var(--ink); margin-bottom: .5rem; }
.sg-mm-ch-cell.sg-mm-dark .sg-mm-ch-title { color: #fff; }
.sg-mm-ch-body { font-family: var(--sans); font-size: .86rem; color: #5a4a3a; line-height: 1.8; }
.sg-mm-ch-cell.sg-mm-dark .sg-mm-ch-body { color: rgba(255,255,255,.7); }

/* ══ BIBLE STUDY BANNER ═════════════════════════════════ */
.sg-mm-sec-bible { padding: 70px 0; background: var(--ink); position: relative; overflow: hidden; }
.sg-mm-sec-bible::before {
  content: ''; position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1472220625704-91e1462799b2?w=1200&q=60') center/cover no-repeat;
  opacity: .08;
}
.sg-mm-bible-inner { position: relative; z-index: 1; }
.sg-mm-bible-pre {
  font-family: var(--sans); font-size: .7rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber); margin-bottom: 1rem;
}
.sg-mm-bible-h {
  font-family: var(--serif); font-size: clamp(1.8rem, 4vw, 2.8rem);
  font-weight: 600; color: #fff; line-height: 1.2; margin-bottom: .75rem;
}
.sg-mm-bible-h em { font-style: italic; color: var(--amber-lt); }
.sg-mm-bible-body {
  font-family: var(--sans); font-size: .93rem; color: rgba(255,255,255,.7);
  line-height: 1.8; max-width: 580px; margin-bottom: 2rem;
}
.sg-mm-bible-detail { display: flex; flex-wrap: wrap; gap: 1.5rem; }
.sg-mm-bd-item { display: flex; align-items: flex-start; gap: .75rem; }
.sg-mm-bd-ico {
  width: 36px; height: 36px; border-radius: 6px; background: rgba(255,255,255,.08);
  display: flex; align-items: center; justify-content: center; font-size: 1rem;
  color: var(--amber-lt); flex-shrink: 0;
}
.sg-mm-bd-text { font-family: var(--sans); font-size: .82rem; color: rgba(255,255,255,.65); line-height: 1.6; }
.sg-mm-bd-text strong { color: rgba(255,255,255,.85); display: block; margin-bottom: 1px; }
.sg-mm-btn-amber {
  display: inline-flex; align-items: center; gap: 8px; font-family: var(--sans);
  font-size: .78rem; font-weight: 600; letter-spacing: .07em; text-transform: uppercase;
  background: var(--amber); color: #fff; border-radius: 4px; padding: .7rem 1.6rem; transition: background .2s;
  text-decoration: none;
}
.sg-mm-btn-amber:hover { background: #a56d20; color: #fff; }

/* ══ VERSE ══════════════════════════════════════════════ */
.sg-mm-sec-verse { background: var(--wine); padding: 70px 0; text-align: center; }
.sg-mm-feat-verse {
  font-family: var(--serif); font-size: clamp(1.3rem, 3vw, 1.85rem); font-style: italic;
  color: rgba(255,255,255,.9); line-height: 1.5; max-width: 700px; margin: 0 auto .9rem;
}
.sg-mm-feat-ref { font-family: var(--sans); font-size: .78rem; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; color: var(--amber-lt); }

/* ══ LINKS ══════════════════════════════════════════════ */
.sg-mm-sec-links { padding: 80px 0; background: var(--cream); }
.sg-mm-link-cards {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1px; background: var(--mist); border-radius: 10px; overflow: hidden;
}
.sg-mm-lc { display: flex; align-items: center; gap: 1rem; background: var(--paper); padding: 1.4rem 1.5rem; transition: background .2s; text-decoration: none; height: 100%; }
.sg-mm-lc:hover { background: var(--parch); }
.sg-mm-lc-ico {
  width: 44px; height: 44px; border-radius: 8px; background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center; font-size: 1.2rem; flex-shrink: 0;
  transition: background .2s, color .2s;
}
.sg-mm-lc:hover .sg-mm-lc-ico { background: var(--wine); color: #fff; }
.sg-mm-lc-label { font-family: var(--sans); font-size: .85rem; font-weight: 600; color: var(--ink); }
.sg-mm-lc-hint { font-family: var(--sans); font-size: .74rem; color: var(--stone); margin-top: 2px; }

/* ══ REVEAL - Global Utility Classes ══════════════════════════════════════════════ */
/* Scoped under wrapper so it overrides properly but uses original class names */
.sg-mm-page-wrapper .reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.sg-mm-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-mm-page-wrapper .d1 { transition-delay: .08s; } 
.sg-mm-page-wrapper .d2 { transition-delay: .16s; } 
.sg-mm-page-wrapper .d3 { transition-delay: .24s; }
.sg-mm-page-wrapper .d4 { transition-delay: .32s; } 
.sg-mm-page-wrapper .d5 { transition-delay: .40s; }







/* ══════════════════════════════════════════════════════════════════════════════════════════════ */
/* ═══════════════════════════════════ Acolytes Page styles ═════════════════════════════════════ */
/* ══════════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Acolytes Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-ac-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-ac-page-wrapper *,
.sg-ac-page-wrapper *::before,
.sg-ac-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-ac-page-wrapper h1, 
.sg-ac-page-wrapper h2, 
.sg-ac-page-wrapper h3, 
.sg-ac-page-wrapper h4, 
.sg-ac-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-ac-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-ac-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-ac-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ SHARED TOKENS ══════════════════════════════════════ */
.sg-ac-s-tag { font-family: var(--sans); font-size: .68rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--amber); display: flex; align-items: center; gap: 10px; margin-bottom: .9rem; }
.sg-ac-s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }
.sg-ac-s-h2 { font-family: var(--serif); font-size: clamp(2rem, 4vw, 3.2rem); font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.2rem; }
.sg-ac-s-h2 em { font-style: italic; color: var(--wine); }

/* ══ PAGE HERO ══════════════════════════════════════════ */
.sg-ac-page-hero { position: relative; background: var(--ink); padding: 80px 0 60px; overflow: hidden; }
.sg-ac-page-hero-bg { position: absolute; inset: 0; background: url('https://images.unsplash.com/photo-1545987796-200677ee1011?w=1600&q=80') center/cover no-repeat; opacity: .15; }
.sg-ac-page-hero-veil { position: absolute; inset: 0; background: linear-gradient(135deg, rgba(92,21,25,.93) 0%, rgba(23,14,8,.78) 100%); }
.sg-ac-page-hero-watermark { position: absolute; right: 2%; top: 50%; transform: translateY(-50%); font-family: var(--serif); font-size: min(40vw, 28rem); color: rgba(255,255,255,.04); line-height: 1; pointer-events: none; user-select: none; }
.sg-ac-page-hero-body { position: relative; z-index: 2; }
.sg-ac-page-breadcrumb { display: inline-flex; align-items: center; gap: 8px; font-family: var(--sans); font-size: .7rem; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.5); margin-bottom: 1.4rem; }
.sg-ac-page-breadcrumb a { color: var(--amber-lt); }
.sg-ac-page-breadcrumb i { font-size: .6rem; }
.sg-ac-page-title { font-family: var(--serif); font-size: clamp(2.4rem, 5.5vw, 4.2rem); font-weight: 600; color: #fff; line-height: 1.1; margin-bottom: 1rem; letter-spacing: -.01em; }
.sg-ac-page-title em { font-style: italic; color: var(--amber-lt); }
.sg-ac-page-lead { font-family: var(--sans); font-size: .97rem; font-weight: 300; color: rgba(255,255,255,.72); max-width: 560px; line-height: 1.75; }
.sg-ac-hero-strip { position: relative; z-index: 2; display: flex; flex-wrap: wrap; background: rgba(255,255,255,.06); backdrop-filter: blur(12px); border-top: 1px solid rgba(255,255,255,.1); margin-top: 52px; }
.sg-ac-hs-item { flex: 1 1 150px; padding: 1.2rem 2rem; border-right: 1px solid rgba(255,255,255,.08); text-align: center; }
.sg-ac-hs-item:last-child { border-right: none; }
.sg-ac-hs-val { font-family: var(--serif); font-size: 2rem; font-weight: 700; color: #fff; line-height: 1; }
.sg-ac-hs-lbl { font-family: var(--sans); font-size: .63rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,255,255,.45); margin-top: 4px; }
@media (max-width: 576px) { .sg-ac-hs-item { flex-basis: 50%; } }

/* ══ ACCORDION SECTION ══════════════════════════════════ */
.sg-ac-sec-accordion { padding: 90px 0 100px; background: var(--paper); }
.sg-ac-acc-wrap { display: flex; flex-direction: column; gap: 0; border-radius: 10px; overflow: hidden; border: 1px solid var(--mist); box-shadow: 0 4px 28px rgba(23,14,8,.07); }

/* Each accordion item */
.sg-ac-acc-item { border-bottom: 1px solid var(--mist); }
.sg-ac-acc-item:last-child { border-bottom: none; }

/* Trigger button */
.sg-ac-acc-trigger {
  width: 100%; background: none; border: none; cursor: pointer;
  display: flex; align-items: center; gap: 1.25rem;
  padding: 1.35rem 1.75rem; background: var(--paper);
  transition: background .2s; text-align: left;
}
.sg-ac-acc-trigger:hover { background: var(--cream); }
.sg-ac-acc-trigger[aria-expanded="true"] { background: var(--wine); }

/* Year badge on the trigger */
.sg-ac-acc-year {
  font-family: var(--serif); font-size: 1.6rem; font-weight: 700;
  color: var(--wine); line-height: 1; flex-shrink: 0;
  transition: color .2s; min-width: 68px;
}
.sg-ac-acc-trigger[aria-expanded="true"] .sg-ac-acc-year { color: var(--amber-lt); }

.sg-ac-acc-divider {
  width: 1px; height: 28px; background: var(--mist); flex-shrink: 0;
  transition: background .2s;
}
.sg-ac-acc-trigger[aria-expanded="true"] .sg-ac-acc-divider { background: rgba(255,255,255,.2); }

.sg-ac-acc-label-wrap { flex: 1; }
.sg-ac-acc-title {
  font-family: var(--serif); font-size: 1.15rem; font-weight: 600;
  color: var(--ink); line-height: 1.25; transition: color .2s;
}
.sg-ac-acc-trigger[aria-expanded="true"] .sg-ac-acc-title { color: #fff; }

.sg-ac-acc-subtitle {
  font-family: var(--sans); font-size: .72rem; color: var(--stone);
  letter-spacing: .05em; margin-top: 2px; transition: color .2s;
}
.sg-ac-acc-trigger[aria-expanded="true"] .sg-ac-acc-subtitle { color: rgba(255,255,255,.5); }

/* Chevron icon */
.sg-ac-acc-chevron {
  font-size: 1rem; color: var(--stone); flex-shrink: 0;
  transition: transform .35s ease, color .2s;
}
.sg-ac-acc-trigger[aria-expanded="true"] .sg-ac-acc-chevron {
  transform: rotate(180deg); color: rgba(255,255,255,.7);
}

/* Panel body */
.sg-ac-acc-panel {
  max-height: 0; overflow: hidden;
  transition: max-height .45s cubic-bezier(.4,0,.2,1);
  background: var(--cream);
}
.sg-ac-acc-panel.sg-ac-open { max-height: 2400px; }
.sg-ac-acc-body { padding: 2.5rem 2rem 2.5rem; }

/* ── Sacristans table inside panel ── */
.sg-ac-sacristan-table {
  width: 100%; border-collapse: collapse; margin-bottom: 2rem;
  border-radius: 8px; overflow: hidden; border: 1px solid var(--mist);
  box-shadow: 0 1px 6px rgba(23,14,8,.04);
}
.sg-ac-sacristan-table thead tr { background: var(--wine); }
.sg-ac-sacristan-table thead th {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase;
  color: rgba(255,255,255,.7); padding: .75rem 1.25rem; text-align: left;
}
.sg-ac-sacristan-table tbody tr { border-bottom: 1px solid var(--mist); background: var(--paper); transition: background .15s; }
.sg-ac-sacristan-table tbody tr:last-child { border-bottom: none; }
.sg-ac-sacristan-table tbody tr:hover { background: var(--parch); }
.sg-ac-sacristan-table td {
  font-family: var(--sans); font-size: .87rem; color: #4a3a2e;
  padding: .9rem 1.25rem; vertical-align: middle;
}
.sg-ac-sacristan-table td:first-child {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase; color: var(--amber); width: 160px;
}
.sg-ac-sacristan-table td strong { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); }

/* ── Photo grid inside panel ── */
.sg-ac-photo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.25rem; }
.sg-ac-photo-card {
  border-radius: 8px; overflow: hidden; border: 1px solid var(--mist);
  background: var(--paper); box-shadow: 0 2px 12px rgba(23,14,8,.06);
  transition: box-shadow .25s, transform .25s;
}
.sg-ac-photo-card:hover { box-shadow: 0 8px 32px rgba(23,14,8,.12); transform: translateY(-3px); }
.sg-ac-photo-card img { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; }
.sg-ac-photo-caption {
  padding: .85rem 1rem; font-family: var(--sans); font-size: .78rem;
  color: var(--stone); line-height: 1.5; border-top: 1px solid var(--mist);
}
.sg-ac-photo-caption strong { font-family: var(--serif); font-size: .92rem; color: var(--ink); display: block; margin-bottom: 2px; }

/* ── Section sub-heading inside panel ── */
.sg-ac-panel-section-head {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .2em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: 1rem; margin-top: 2rem;
}
.sg-ac-panel-section-head:first-child { margin-top: 0; }
.sg-ac-panel-section-head::after { content: ''; flex: 1; height: 1px; background: var(--mist); }

/* ══ VERSE FEATURE ═══════════════════════════════════════ */
.sg-ac-sec-verse { background: var(--parch); padding: 80px 0; text-align: center; position: relative; overflow: hidden; }
.sg-ac-sec-verse::before { content: '\201C'; position: absolute; top: -5rem; left: 50%; transform: translateX(-50%); font-family: var(--serif); font-size: 30rem; line-height: 1; color: rgba(92,21,25,.055); pointer-events: none; }
.sg-ac-feat-verse { font-family: var(--serif); font-style: italic; font-weight: 500; font-size: clamp(1.5rem, 3.5vw, 2.45rem); line-height: 1.55; color: var(--ink); max-width: 740px; margin: 0 auto 1.3rem; position: relative; }
.sg-ac-feat-ref { font-family: var(--sans); font-size: .8rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--wine); }

/* ══ LINKS SECTION ═══════════════════════════════════════ */
.sg-ac-sec-links { padding: 80px 0; background: var(--paper); }
.sg-ac-link-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1px; background: var(--mist); border-radius: 8px; overflow: hidden; }
.sg-ac-lc { background: var(--paper); padding: 1.6rem 1.5rem; display: flex; align-items: flex-start; gap: 14px; text-decoration: none; color: var(--ink); transition: background .2s; }
.sg-ac-lc:hover { background: var(--parch); }
.sg-ac-lc-ico { width: 42px; height: 42px; border-radius: 7px; flex-shrink: 0; background: var(--parch); color: var(--wine); display: flex; align-items: center; justify-content: center; font-size: 1.05rem; transition: background .2s, color .2s; }
.sg-ac-lc:hover .sg-ac-lc-ico { background: var(--wine); color: #fff; }
.sg-ac-lc-label { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); margin-bottom: 2px; }
.sg-ac-lc-hint { font-family: var(--sans); font-size: .72rem; color: var(--stone); }

/* ══ REVEAL - Global Utility Classes ══════════════════════════════════════════════ */
/* Scoped under wrapper so it overrides properly but uses original class names */
.sg-ac-page-wrapper .reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.sg-ac-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-ac-page-wrapper .d1 { transition-delay: .08s; } 
.sg-ac-page-wrapper .d2 { transition-delay: .16s; } 
.sg-ac-page-wrapper .d3 { transition-delay: .24s; }







/* ═══════════════════════════════════════════════════════════════════════════════════════════════════ */
/* ═══════════════════════════════════ Prayer Groups Page styles ═════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════════════════════════════════════════════════ */

/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Prayer Groups Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-pg-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-pg-page-wrapper *,
.sg-pg-page-wrapper *::before,
.sg-pg-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-pg-page-wrapper h1, 
.sg-pg-page-wrapper h2, 
.sg-pg-page-wrapper h3, 
.sg-pg-page-wrapper h4, 
.sg-pg-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-pg-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-pg-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-pg-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ SHARED TOKENS ══════════════════════════════════════ */
.sg-pg-s-tag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.sg-pg-s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }

.sg-pg-s-h2 {
  font-family: var(--serif);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.2rem;
}
.sg-pg-s-h2 em { font-style: italic; color: var(--wine); }

.sg-pg-btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--wine); border: 1.5px solid var(--wine);
  border-radius: 4px; padding: .62rem 1.4rem;
  transition: background .2s, color .2s;
}
.sg-pg-btn-outline:hover { background: var(--wine); color: #fff; }
.sg-pg-btn-outline i { font-size: .72rem; transition: transform .2s; }
.sg-pg-btn-outline:hover i { transform: translateX(4px); }

/* ══ PAGE HERO ══════════════════════════════════════════ */
.sg-pg-page-hero {
  position: relative;
  background: var(--ink);
  padding: 80px 0 60px;
  overflow: hidden;
}
.sg-pg-page-hero-bg {
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1519748763510-9890489190b8?w=1600&q=80') center/cover no-repeat;
  opacity: .18;
}
.sg-pg-page-hero-veil {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(92,21,25,.92) 0%, rgba(23,14,8,.75) 100%);
}
.sg-pg-page-hero-watermark {
  position: absolute; right: 2%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(40vw, 28rem);
  color: rgba(255,255,255,.04); line-height: 1;
  pointer-events: none; user-select: none;
}
.sg-pg-page-hero-body { position: relative; z-index: 2; }
.sg-pg-page-breadcrumb {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.5); margin-bottom: 1.4rem;
}
.sg-pg-page-breadcrumb a { color: var(--amber-lt); }
.sg-pg-page-breadcrumb a:hover { color: #fff; }
.sg-pg-page-breadcrumb i { font-size: .6rem; }
.sg-pg-page-title {
  font-family: var(--serif);
  font-size: clamp(2.4rem, 5.5vw, 4.2rem);
  font-weight: 600; color: #fff; line-height: 1.1;
  margin-bottom: 1rem; letter-spacing: -.01em;
}
.sg-pg-page-title em { font-style: italic; color: var(--amber-lt); }
.sg-pg-page-lead {
  font-family: var(--sans); font-size: .97rem; font-weight: 300;
  color: rgba(255,255,255,.72); max-width: 560px; line-height: 1.75;
}

/* Hero stats strip */
.sg-pg-hero-strip {
  position: relative; z-index: 2;
  display: flex; flex-wrap: wrap; gap: 0;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(255,255,255,.1);
  margin-top: 52px;
}
.sg-pg-hs-item {
  flex: 1 1 160px; padding: 1.2rem 2rem;
  border-right: 1px solid rgba(255,255,255,.08);
  text-align: center;
}
.sg-pg-hs-item:last-child { border-right: none; }
.sg-pg-hs-val { font-family: var(--serif); font-size: 2rem; font-weight: 700; color: #fff; line-height: 1; }
.sg-pg-hs-lbl { font-family: var(--sans); font-size: .63rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,255,255,.45); margin-top: 4px; }
@media (max-width: 576px) { .sg-pg-hs-item { flex-basis: 50%; } }

/* ══ ABOUT SECTION ══════════════════════════════════════ */
.sg-pg-sec-about { padding: 90px 0 70px; background: var(--paper); }

.sg-pg-intro-text-body {
  font-family: var(--sans); font-size: .97rem; color: #5a4a3a; line-height: 1.85;
  max-width: 680px;
}
.sg-pg-intro-accent-box {
  background: var(--parch);
  border-left: 3px solid var(--amber);
  padding: 1.2rem 1.5rem; border-radius: 0 8px 8px 0;
  margin-top: 2rem;
}
.sg-pg-intro-accent-box p { font-family: var(--sans); font-size: .88rem; color: #5a4a3a; line-height: 1.8; margin: 0; }
.sg-pg-intro-accent-box strong { color: var(--wine); }

.sg-pg-style-trio {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px; background: var(--mist);
  border-radius: 12px; overflow: hidden;
  margin-top: 2.5rem;
}
@media (max-width: 900px) { .sg-pg-style-trio { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 576px) { .sg-pg-style-trio { grid-template-columns: 1fr; } }
.sg-pg-style-card {
  background: var(--paper);
  padding: 2rem 1.6rem;
  text-align: center;
  transition: background .25s;
  position: relative; overflow: hidden;
}
.sg-pg-style-card:hover { background: var(--parch); }
.sg-pg-style-card::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--wine), var(--amber));
}
.sg-pg-style-icon {
  width: 60px; height: 60px; border-radius: 50%;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.5rem; margin: 0 auto 1rem;
}
.sg-pg-style-word {
  font-family: var(--serif); font-size: 1.3rem; font-weight: 700;
  color: var(--wine); letter-spacing: .02em; margin-bottom: .4rem;
}
.sg-pg-style-desc {
  font-family: var(--sans); font-size: .83rem; color: #5a4a3a; line-height: 1.75;
}

/* ══ YEAR TABS / PRAYER GROUP COORDINATORS ═════════════ */
.sg-pg-sec-bearers { padding: 80px 0 90px; background: var(--cream); }
.sg-pg-year-tabs {
  display: flex; flex-wrap: wrap; gap: .5rem;
  margin-bottom: 2.5rem;
}
.sg-pg-yr-btn {
  font-family: var(--sans); font-size: .75rem; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  padding: .45rem 1.1rem; border-radius: 4px;
  border: 1.5px solid var(--mist);
  background: transparent; color: var(--stone);
  cursor: pointer; transition: all .2s;
}
.sg-pg-yr-btn:hover { border-color: var(--wine); color: var(--wine); }
.sg-pg-yr-btn.sg-pg-active { background: var(--wine); border-color: var(--wine); color: #fff; }

.sg-pg-year-panel { display: none; }
.sg-pg-year-panel.sg-pg-active { display: block; }

/* Coordinators table */
.sg-pg-coord-table-wrap {
  border-radius: 10px; overflow: hidden;
  border: 1px solid var(--mist);
  margin-bottom: 1.5rem;
}
.sg-pg-coord-table {
  width: 100%; border-collapse: collapse;
}
.sg-pg-coord-table thead tr {
  background: var(--wine);
}
.sg-pg-coord-table thead th {
  font-family: var(--sans); font-size: .65rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase;
  color: rgba(255,255,255,.7); padding: .85rem 1.4rem;
  border: none; text-align: left;
}
.sg-pg-coord-table tbody tr {
  border-bottom: 1px solid var(--mist);
  transition: background .2s;
}
.sg-pg-coord-table tbody tr:last-child { border-bottom: none; }
.sg-pg-coord-table tbody tr:hover { background: var(--parch); }
.sg-pg-coord-table tbody td {
  padding: 1.1rem 1.4rem;
  font-family: var(--sans); font-size: .9rem; color: #5a4a3a;
  background: var(--paper); vertical-align: middle;
}
.sg-pg-coord-table tbody tr:hover td { background: var(--parch); }
.sg-pg-coord-group-name {
  font-family: var(--serif); font-size: 1.05rem; font-weight: 600;
  color: var(--ink);
}
.sg-pg-coord-group-badge {
  display: inline-flex; align-items: center; gap: 6px;
  font-family: var(--sans); font-size: .6rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase;
  color: var(--wine); background: var(--parch);
  padding: .2rem .55rem; border-radius: 3px; margin-top: .3rem;
}
.sg-pg-coord-person {
  display: flex; align-items: center; gap: .8rem;
}
.sg-pg-coord-avatar {
  width: 36px; height: 36px; border-radius: 50%;
  background: var(--parch); border: 2px solid var(--mist);
  display: flex; align-items: center; justify-content: center;
  font-size: .95rem; color: var(--stone); flex-shrink: 0;
}
.sg-pg-coord-name {
  font-family: var(--serif); font-size: 1.02rem; font-weight: 600; color: var(--ink);
}

/* ══ VERSE FEATURE ══════════════════════════════════════ */
.sg-pg-sec-verse {
  background: var(--ink);
  padding: 60px 0;
  text-align: center;
  position: relative; overflow: hidden;
}
.sg-pg-sec-verse::before {
  content: '✝';
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
  font-family: var(--serif); font-size: 22rem;
  color: rgba(255,255,255,.025); line-height: 1;
  pointer-events: none;
}
.sg-pg-feat-verse {
  font-family: var(--serif); font-size: clamp(1.3rem, 3vw, 2rem);
  font-style: italic; color: rgba(255,255,255,.85);
  line-height: 1.55; max-width: 680px; margin: 0 auto .75rem;
  position: relative;
}
.sg-pg-feat-ref {
  font-family: var(--sans); font-size: .72rem; font-weight: 600;
  letter-spacing: .15em; text-transform: uppercase;
  color: var(--amber); position: relative;
}

/* ══ JOIN CTA ════════════════════════════════════════════ */
.sg-pg-sec-join {
  background: var(--wine-d);
  padding: 80px 0;
  position: relative; overflow: hidden;
}
.sg-pg-sec-join::before {
  content: '';
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1519748763510-9890489190b8?w=1200&q=60') center/cover no-repeat;
  opacity: .07;
}
.sg-pg-join-inner { position: relative; z-index: 1; text-align: center; }
.sg-pg-join-pre {
  font-family: var(--sans); font-size: .7rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase;
  color: var(--amber); margin-bottom: 1rem;
}
.sg-pg-join-h { font-family: var(--serif); font-size: clamp(1.8rem, 4vw, 2.8rem); font-weight: 600; color: #fff; line-height: 1.2; margin-bottom: 1rem; }
.sg-pg-join-h em { font-style: italic; color: var(--amber-lt); }
.sg-pg-join-body { font-family: var(--sans); font-size: .93rem; color: rgba(255,255,255,.7); max-width: 560px; margin: 0 auto 2rem; line-height: 1.8; }
.sg-pg-btn-amber {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--ink); background: var(--amber);
  border-radius: 4px; padding: .7rem 1.6rem;
  transition: background .2s, color .2s;
  text-decoration: none;
}
.sg-pg-btn-amber:hover { background: var(--amber-lt); color: var(--ink); }

/* ══ USEFUL LINKS ════════════════════════════════════════ */
.sg-pg-sec-links { padding: 80px 0; background: var(--cream); }
.sg-pg-link-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1px; background: var(--mist);
  border-radius: 10px; overflow: hidden;
}
.sg-pg-lc {
  display: flex; align-items: center; gap: 1.1rem;
  background: var(--paper); padding: 1.4rem 1.5rem;
  color: var(--ink); transition: background .2s;
  text-decoration: none; height: 100%;
}
.sg-pg-lc:hover { background: var(--parch); color: var(--ink); }
.sg-pg-lc-ico {
  width: 42px; height: 42px; border-radius: 8px;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.1rem; flex-shrink: 0;
  transition: background .2s, color .2s;
}
.sg-pg-lc:hover .sg-pg-lc-ico { background: var(--wine); color: #fff; }
.sg-pg-lc-label { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); line-height: 1.3; margin-bottom: 2px; }
.sg-pg-lc-hint { font-family: var(--sans); font-size: .75rem; color: var(--stone); margin-top: 2px; }

/* ══ REVEAL - Global Utility Classes ══════════════════════════════════════════════ */
/* Scoped under wrapper so it overrides properly but uses original class names */
.sg-pg-page-wrapper .reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.sg-pg-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-pg-page-wrapper .d1 { transition-delay: .08s; } 
.sg-pg-page-wrapper .d2 { transition-delay: .16s; } 
.sg-pg-page-wrapper .d3 { transition-delay: .24s; }
.sg-pg-page-wrapper .d4 { transition-delay: .32s; } 
.sg-pg-page-wrapper .d5 { transition-delay: .40s; }






/* ═══════════════════════════════════════════════════════════════════════════════════════════════════ */
/* ════════════════════════════════════ News Updates Page styles ═════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════════════════════════════════════════════════ */

/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT News Update Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-nu-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-nu-page-wrapper *,
.sg-nu-page-wrapper *::before,
.sg-nu-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-nu-page-wrapper h1, 
.sg-nu-page-wrapper h2, 
.sg-nu-page-wrapper h3, 
.sg-nu-page-wrapper h4, 
.sg-nu-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-nu-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-nu-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-nu-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ PAGE HERO ═══════════════════════════════════════════ */
.sg-nu-page-hero {
  position: relative; background: var(--wine-d); overflow: hidden; padding: 76px 0 60px;
}
.sg-nu-page-hero::before {
  content: ''; position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1504711434969-e33886168f5c?w=1600&q=80') center/cover no-repeat;
  opacity: .08;
}
.sg-nu-page-hero-watermark {
  position: absolute; right: -1%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(36vw, 28rem);
  color: rgba(255,255,255,.036); line-height: 1; pointer-events: none; user-select: none;
}
.sg-nu-page-hero-content { position: relative; z-index: 2; }
.sg-nu-breadcrumb-bar {
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.42); margin-bottom: 1rem;
  display: flex; align-items: center; gap: 8px;
}
.sg-nu-breadcrumb-bar a { color: rgba(255,255,255,.42); }
.sg-nu-breadcrumb-bar a:hover { color: rgba(255,255,255,.8); }
.sg-nu-breadcrumb-bar .sg-nu-current { color: var(--amber-lt); }
.sg-nu-page-eyebrow {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .8rem;
}
.sg-nu-page-eyebrow::before { content: ''; display: block; width: 28px; height: 1px; background: var(--amber); }
.sg-nu-page-h1 {
  font-family: var(--serif); font-size: clamp(2.2rem, 5vw, 3.8rem);
  font-weight: 600; color: #fff; line-height: 1.1; margin-bottom: .6rem;
}
.sg-nu-page-h1 em { font-style: italic; color: var(--amber-lt); }
.sg-nu-page-tagline { font-family: var(--sans); font-size: .9rem; font-weight: 300; color: rgba(255,255,255,.6); max-width: 520px; line-height: 1.75; }

/* ══ MAIN SECTION ════════════════════════════════════════ */
.sg-nu-sec-news { padding: 64px 0 96px; }

/* ── Panel title ── */
.sg-nu-panel-title {
  font-family: var(--serif); font-size: clamp(1.7rem, 3vw, 2.6rem);
  font-weight: 600; color: var(--ink); margin-bottom: .3rem;
}
.sg-nu-panel-title em { font-style: italic; color: var(--wine); }
.sg-nu-panel-tag {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--wine); color: #fff;
  font-family: var(--sans); font-size: .66rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase;
  padding: 4px 12px; border-radius: 20px; margin-bottom: 10px;
}

/* ── Category filter bar ── */
.sg-nu-cat-filter {
  display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 32px;
}
.sg-nu-cat-btn {
  font-family: var(--sans); font-size: .72rem; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  padding: 7px 16px; border-radius: 5px; border: 1px solid var(--mist);
  background: var(--cream); color: var(--stone); cursor: pointer;
  transition: all .2s;
}
.sg-nu-cat-btn:hover, .sg-nu-cat-btn.sg-nu-active { background: var(--wine); color: #fff; border-color: var(--wine); }

.sg-nu-news-cat-tag {
  font-family: var(--sans); font-size: .63rem; font-weight: 600; letter-spacing: .1em;
  text-transform: uppercase; padding: 3px 10px; border-radius: 20px;
  background: rgba(255,255,255,.12); color: rgba(255,255,255,.65); border: 1px solid rgba(255,255,255,.15);
}
.sg-nu-news-cat-tag.sg-nu-dark {
  background: rgba(92,21,25,.08); color: var(--wine); border: 1px solid rgba(92,21,25,.15);
}
.sg-nu-btn-read-more-outline {
  display: inline-flex; align-items: center; gap: 8px;
  border: 1.5px solid var(--mist); color: var(--wine);
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  padding: 8px 18px; border-radius: 5px; transition: all .2s; background: transparent;
}
.sg-nu-page-wrapper .sg-nu-btn-read-more-outline:hover,
.sg-nu-page-wrapper .sg-nu-btn-read-more-outline:hover i {
  background: var(--wine);
  border-color: var(--wine);
  color: #fff !important;
}

/* ── News card ── */
.sg-nu-news-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 12px;
  overflow: hidden; display: flex; flex-direction: column;
  transition: box-shadow .25s, transform .25s, border-color .25s; height: 100%;
}
.sg-nu-news-card:hover { box-shadow: 0 8px 32px rgba(23,14,8,.09); transform: translateY(-3px); border-color: var(--amber-lt); }
.sg-nu-news-card-header {
  background: var(--wine-d); padding: 14px 20px;
  display: flex; align-items: center; justify-content: space-between;
}
.sg-nu-news-card-date {
  font-family: var(--sans); font-size: .68rem; color: rgba(255,255,255,.55); letter-spacing: .06em;
}
.sg-nu-news-card-body { padding: 22px; flex: 1; }
.sg-nu-news-card-cats { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.sg-nu-news-card-title {
  font-family: var(--serif); font-size: 1.2rem; font-weight: 600; color: var(--ink);
  line-height: 1.3; margin-bottom: 10px;
}
.sg-nu-news-card-title a { color: var(--ink); }
.sg-nu-news-card-title a:hover { color: var(--wine); }
.sg-nu-news-card-excerpt {
  font-family: var(--sans); font-size: .82rem; color: var(--stone); line-height: 1.75; margin-bottom: 18px;
}
.sg-nu-news-card-footer {
  padding: 0 22px 20px; margin-top: auto;
}

/* ── Divider section head ── */
.sg-nu-section-divider-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 20px; display: flex; align-items: center; gap: 8px;
}
.sg-nu-section-divider-head i { color: var(--wine); }

/* ── Useful Links box ── */
.sg-nu-useful-links-box {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px; padding: 24px;
}
.sg-nu-useful-links-box .sg-nu-box-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 16px; display: flex; align-items: center; gap: 8px;
}
.sg-nu-useful-links-box .sg-nu-box-head i { color: var(--wine); }
.sg-nu-useful-link-item {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 10px 0; border-bottom: 1px solid var(--mist);
}
.sg-nu-useful-link-item:last-child { border-bottom: none; padding-bottom: 0; }
.sg-nu-useful-link-item i { color: var(--amber); font-size: .9rem; margin-top: 3px; flex-shrink: 0; }
.sg-nu-useful-link-item a { font-family: var(--sans); font-size: .84rem; color: var(--wine); line-height: 1.5; }
.sg-nu-useful-link-item a:hover { color: var(--wine-d); }

/* ── Recent news list (sidebar) ── */
.sg-nu-recent-news-item {
  display: flex; flex-direction: column; gap: 4px;
  padding: 10px 0; border-bottom: 1px solid var(--mist);
}
.sg-nu-recent-news-item:last-child { border-bottom: none; padding-bottom: 0; }
.sg-nu-recent-news-item-date {
  font-family: var(--sans); font-size: .63rem; color: var(--stone); letter-spacing: .06em;
}
.sg-nu-recent-news-item-title {
  font-family: var(--serif); font-size: .95rem; font-weight: 600; color: var(--wine); line-height: 1.35;
}
.sg-nu-recent-news-item-title:hover { color: var(--wine-d); }

/* ── Contact row ── */
.sg-nu-contact-row { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 10px; font-family: var(--sans); font-size: .82rem; }
.sg-nu-contact-row i { color: var(--amber); font-size: .9rem; margin-top: 3px; flex-shrink: 0; }

/* ══ REVEAL ══════════════════════════════════════════════ */
.sg-nu-page-wrapper .reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.sg-nu-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-nu-page-wrapper .d1 { transition-delay: .08s; } 
.sg-nu-page-wrapper .d2 { transition-delay: .16s; } 
.sg-nu-page-wrapper .d3 { transition-delay: .24s; }
.sg-nu-page-wrapper .d4 { transition-delay: .32s; } 
.sg-nu-page-wrapper .d5 { transition-delay: .40s; }

/* ===================================================================================================================== */
/* ============================================== Parish News Single Page ============================================= */
/* ===================================================================================================================== */
.sg-news-single-page {
  --wine: #5C1519;
  --wine-d: #3e0d10;
  --amber: #C4832A;
  --amber-lt: #e8b96a;
  --parch: #F4EAD0;
  --cream: #FAF6EE;
  --paper: #FFFDF8;
  --ink: #170E08;
  --stone: #8C7968;
  --mist: #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans: 'Outfit', sans-serif;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--sans);
}
.sg-news-single-page *,
.sg-news-single-page *::before,
.sg-news-single-page *::after { box-sizing: border-box; }
.sg-news-single-hero {
  position: relative;
  overflow: hidden;
  background: var(--wine-d);
  padding: 84px 0 92px;
}
.sg-news-single-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 82% 18%, rgba(232,185,106,.22), transparent 28%),
    linear-gradient(135deg, rgba(92,21,25,.96) 0%, rgba(62,13,16,.9) 48%, rgba(23,14,8,.84) 100%),
    url('https://images.unsplash.com/photo-1495020689067-958852a7765e?w=1600&q=80') center/cover no-repeat;
}
.sg-news-single-hero::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 54px;
  background: linear-gradient(180deg, rgba(255,253,248,0), var(--paper));
}
.sg-news-single-hero-mark {
  position: absolute;
  right: 3%;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--serif);
  font-size: min(42vw, 32rem);
  line-height: 1;
  color: rgba(255,255,255,.035);
  pointer-events: none;
  user-select: none;
}
.sg-news-single-hero .container { position: relative; z-index: 2; }
.sg-news-single-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin-bottom: 1.2rem;
  font-family: var(--sans);
  font-size: .68rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(255,255,255,.42);
}
.sg-news-single-breadcrumb a { color: rgba(255,255,255,.48); text-decoration: none; }
.sg-news-single-breadcrumb a:hover { color: var(--amber-lt); }
.sg-news-single-breadcrumb span:last-child { color: var(--amber-lt); }
.sg-news-single-hero-inner {
  max-width: 980px;
}
.sg-news-single-kicker {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-family: var(--sans);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--amber-lt);
  margin-bottom: 1rem;
}
.sg-news-single-title {
  font-family: var(--serif);
  font-size: clamp(2.35rem, 5vw, 4.8rem);
  font-weight: 600;
  line-height: 1.08;
  color: #fff;
  margin: 0 0 1.2rem;
}
.sg-news-single-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  font-family: var(--sans);
  font-size: .8rem;
  color: rgba(255,255,255,.64);
}
.sg-news-single-meta span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 999px;
  padding: .34rem .72rem;
}
.sg-news-single-meta i { color: var(--amber-lt); }
.sg-news-single-body {
  padding: 0 0 96px;
  background:
    linear-gradient(180deg, var(--paper) 0%, var(--cream) 100%);
}
.sg-news-single-card {
  position: relative;
  z-index: 3;
  margin-top: -42px;
  background: var(--paper);
  border: 1px solid var(--mist);
  border-radius: 14px;
  box-shadow: 0 18px 52px rgba(23,14,8,.1);
}
.sg-news-single-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: clamp(1.5rem, 4vw, 3.25rem);
  right: clamp(1.5rem, 4vw, 3.25rem);
  height: 4px;
  background: linear-gradient(90deg, var(--wine), var(--amber), var(--wine));
  border-radius: 0 0 999px 999px;
}
.sg-news-single-card { overflow: hidden; }
.sg-news-single-image {
  margin: 0;
  border-bottom: 1px solid var(--mist);
  background: var(--cream);
  max-height: 520px;
  overflow: hidden;
}
.sg-news-single-image img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: 520px;
  object-fit: cover;
}
.sg-news-single-content {
  max-width: 940px;
  margin: 0 auto;
  padding: clamp(1.75rem, 4.5vw, 4rem);
  font-family: var(--sans);
  font-size: 1rem;
  line-height: 1.9;
  color: #4a3a2e;
}
.sg-news-single-content > *:first-child { margin-top: 0; }
.sg-news-single-content > *:last-child { margin-bottom: 0; }
.sg-news-single-content p { margin: 0 0 1.18rem; }
.sg-news-single-content > p:first-of-type {
  font-size: clamp(1.08rem, 2vw, 1.24rem);
  line-height: 1.78;
  color: #2f221a;
}
.sg-news-single-content h2,
.sg-news-single-content h3,
.sg-news-single-content h4 {
  position: relative;
  font-family: var(--serif);
  color: var(--ink);
  line-height: 1.2;
  margin: 2.2rem 0 .85rem;
}
.sg-news-single-content h2 {
  font-size: clamp(1.75rem, 3vw, 2.35rem);
  padding-bottom: .55rem;
}
.sg-news-single-content h2::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 76px;
  height: 3px;
  background: linear-gradient(90deg, var(--wine), var(--amber));
  border-radius: 999px;
}
.sg-news-single-content h3 {
  font-size: clamp(1.38rem, 2.2vw, 1.72rem);
  color: var(--wine);
}
.sg-news-single-content h4 {
  font-size: 1.12rem;
  font-family: var(--sans);
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--amber);
}
.sg-news-single-content a {
  color: var(--wine);
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: rgba(196,131,42,.45);
  text-underline-offset: 3px;
}
.sg-news-single-content a:hover { color: var(--wine-d); }
.sg-news-single-content ul,
.sg-news-single-content ol {
  margin: 0 0 1.35rem;
  padding-left: 0;
  list-style-position: inside;
}
.sg-news-single-content li {
  margin-bottom: .45rem;
  padding: .15rem 0;
}
.sg-news-single-content blockquote {
  position: relative;
  margin: 2rem 0;
  padding: 1.45rem 1.65rem 1.45rem 2rem;
  background: linear-gradient(135deg, var(--parch), rgba(250,246,238,.75));
  border-left: 4px solid var(--amber);
  border-radius: 10px;
  font-family: var(--serif);
  font-size: clamp(1.15rem, 2vw, 1.38rem);
  font-style: italic;
  color: var(--ink);
  box-shadow: inset 0 0 0 1px rgba(196,131,42,.14);
}
.sg-news-single-content img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 1.5rem auto;
  border-radius: 10px;
  border: 1px solid var(--mist);
  box-shadow: 0 8px 28px rgba(23,14,8,.08);
}
.sg-news-single-content .alignleft {
  float: left;
  margin: .45rem 1.5rem 1rem 0;
}
.sg-news-single-content .alignright {
  float: right;
  margin: .45rem 0 1rem 1.5rem;
}
.sg-news-single-content .aligncenter { margin-left: auto; margin-right: auto; }
.sg-news-single-content table {
  width: 100%;
  margin: 1.75rem 0;
  border-collapse: collapse;
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0 0 0 1px var(--mist);
}
.sg-news-single-content th,
.sg-news-single-content td {
  padding: .9rem 1rem;
  border-bottom: 1px solid var(--mist);
  text-align: left;
}
.sg-news-single-content th {
  background: var(--wine);
  color: #fff;
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.sg-news-single-content tr:nth-child(even) td { background: var(--cream); }
.sg-news-single-content tr:last-child td { border-bottom: 0; }
.sg-news-single-content iframe,
.sg-news-single-content video,
.sg-news-single-content embed {
  display: block;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  border: 0;
  border-radius: 10px;
  margin: 1.5rem auto;
}
.sg-news-single-footer {
  display: flex;
  justify-content: center;
  padding: 1.25rem clamp(1.5rem, 4vw, 3.25rem) 1.6rem;
  border-top: 1px solid var(--mist);
  background: var(--cream);
}
.sg-news-single-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--wine);
  border: 1.5px solid var(--wine);
  border-radius: 5px;
  padding: .62rem 1rem;
  font-family: var(--sans);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: none;
}
.sg-news-single-back:hover {
  background: var(--wine);
  color: #fff;
}
.sg-news-single-related {
  margin-top: 64px;
}
.sg-news-related-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 1.35rem;
}
.sg-news-related-head span {
  display: block;
  margin-bottom: .4rem;
  color: var(--amber);
  font-family: var(--sans);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.sg-news-related-head h2 {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(2rem, 4vw, 3.05rem);
  color: var(--ink);
}
.sg-news-related-head > a {
  flex: 0 0 auto;
  color: var(--wine);
  border-bottom: 2px solid var(--amber);
  font-family: var(--sans);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-decoration: none;
  text-transform: uppercase;
}
.sg-news-related-head > a:hover { color: var(--wine-d); }
.sg-news-related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}
.sg-news-related-card {
  min-height: 100%;
  overflow: hidden;
  background: var(--paper);
  border: 1px solid var(--mist);
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(23,14,8,.07);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.sg-news-related-card:hover {
  transform: translateY(-4px);
  border-color: var(--amber-lt);
  box-shadow: 0 16px 42px rgba(23,14,8,.11);
}
.sg-news-related-media {
  display: block;
  height: 188px;
  overflow: hidden;
  background: linear-gradient(135deg, var(--wine), var(--amber));
  text-decoration: none;
}
.sg-news-related-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}
.sg-news-related-card:hover .sg-news-related-media img { transform: scale(1.05); }
.sg-news-related-media span {
  display: grid;
  place-items: center;
  height: 100%;
  color: rgba(255,255,255,.82);
  font-size: 2.3rem;
}
.sg-news-related-body {
  padding: 1.25rem;
}
.sg-news-related-date {
  margin-bottom: .55rem;
  color: var(--amber);
  font-family: var(--sans);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.sg-news-related-body h3 {
  margin: 0 0 .6rem;
  font-family: var(--serif);
  font-size: 1.36rem;
  line-height: 1.2;
}
.sg-news-related-body h3 a {
  color: var(--ink);
  text-decoration: none;
}
.sg-news-related-body h3 a:hover { color: var(--wine); }
.sg-news-related-body p {
  margin: 0 0 1rem;
  color: var(--stone);
  font-family: var(--sans);
  font-size: .9rem;
  line-height: 1.65;
}
.sg-news-related-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--wine);
  font-family: var(--sans);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-decoration: none;
  text-transform: uppercase;
}
.sg-news-related-link:hover { color: var(--wine-d); }
.sg-news-related-empty {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.5rem;
  background:
    linear-gradient(135deg, rgba(244,234,208,.92), rgba(255,253,248,.96));
  border: 1px solid var(--mist);
  border-radius: 12px;
  color: var(--stone);
  box-shadow: 0 10px 30px rgba(23,14,8,.06);
}
.sg-news-related-empty i {
  display: grid;
  place-items: center;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  background: var(--wine);
  border-radius: 50%;
  color: #fff;
  font-size: 1.15rem;
}
.sg-news-related-empty p {
  margin: 0;
  font-family: var(--sans);
  font-size: .95rem;
  line-height: 1.65;
}
@media (max-width: 991px) {
  .sg-news-related-grid { grid-template-columns: 1fr; }
  .sg-news-related-media { height: 240px; }
}
@media (max-width: 640px) {
  .sg-news-single-hero { padding: 58px 0 52px; }
  .sg-news-single-body { padding: 0 0 72px; }
  .sg-news-single-card { margin-top: -28px; border-radius: 10px; }
  .sg-news-single-breadcrumb { font-size: .62rem; }
  .sg-news-single-content .alignleft,
  .sg-news-single-content .alignright {
    float: none;
    margin: 1.5rem auto;
  }
  .sg-news-related-head {
    display: block;
  }
  .sg-news-related-head > a {
    display: inline-block;
    margin-top: .9rem;
  }
  .sg-news-related-media { height: 200px; }
}









/* ════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* ════════════════════════════════════ Scripture Reading Page styles ═════════════════════════════════════ */
/* ════════════════════════════════════════════════════════════════════════════════════════════════════════ */

/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Scripture Reading Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-sr-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-sr-page-wrapper *,
.sg-sr-page-wrapper *::before,
.sg-sr-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-sr-page-wrapper h1, 
.sg-sr-page-wrapper h2, 
.sg-sr-page-wrapper h3, 
.sg-sr-page-wrapper h4, 
.sg-sr-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-sr-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-sr-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-sr-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ PAGE HERO ═══════════════════════════════════════════ */
.sg-sr-page-hero {
  position: relative; background: var(--wine-d); overflow: hidden; padding: 76px 0 60px;
}
.sg-sr-page-hero::before {
  content: ''; position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1504711434969-e33886168f5c?w=1600&q=80') center/cover no-repeat;
  opacity: .08;
}
.sg-sr-page-hero-watermark {
  position: absolute; right: -1%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(36vw, 28rem);
  color: rgba(255,255,255,.036); line-height: 1; pointer-events: none; user-select: none;
}
.sg-sr-page-hero-content { position: relative; z-index: 2; }
.sg-sr-breadcrumb-bar {
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.42); margin-bottom: 1rem;
  display: flex; align-items: center; gap: 8px;
}
.sg-sr-breadcrumb-bar a { color: rgba(255,255,255,.42); }
.sg-sr-breadcrumb-bar a:hover { color: rgba(255,255,255,.8); }
.sg-sr-current { color: var(--amber-lt); }
.sg-sr-page-eyebrow {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .8rem;
}
.sg-sr-page-eyebrow::before { content: ''; display: block; width: 28px; height: 1px; background: var(--amber); }
.sg-sr-page-h1 {
  font-family: var(--serif); font-size: clamp(2.2rem, 5vw, 3.8rem);
  font-weight: 600; color: #fff; line-height: 1.1; margin-bottom: .6rem;
}
.sg-sr-page-h1 em { font-style: italic; color: var(--amber-lt); }
.sg-sr-page-tagline { font-family: var(--sans); font-size: .9rem; font-weight: 300; color: rgba(255,255,255,.6); max-width: 520px; line-height: 1.75; }

/* ══ SCRIPTURE SECTION ═══════════════════════════════════ */
.sg-sr-sec-scripture { padding: 60px 0 90px; }

/* ── Search Bar ── */
.sg-sr-search-wrap {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px;
  display: flex; align-items: center; gap: 10px; padding: 10px 16px;
  margin-bottom: 28px;
}
.sg-sr-search-wrap i { color: var(--stone); font-size: 1rem; }
.sg-sr-search-wrap input {
  border: none; background: transparent; flex: 1;
  font-family: var(--sans); font-size: .87rem; color: var(--ink);
  outline: none;
}
.sg-sr-search-wrap input::placeholder { color: var(--stone); }

/* ── Season Tabs ── */
.sg-sr-season-tabs {
  display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 36px;
}
.sg-sr-season-tab {
  font-family: var(--sans); font-size: .72rem; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  padding: 7px 16px; border-radius: 5px; border: 1px solid var(--mist);
  background: var(--cream); color: var(--stone); cursor: pointer;
  transition: all .2s;
}
.sg-sr-season-tab:hover, .sg-sr-season-tab.sg-sr-active { background: var(--wine); color: #fff; border-color: var(--wine); }

/* ── Feast Accordion Card ── */
.sg-sr-feast-section {
  margin-bottom: 12px; border-radius: 10px; overflow: hidden;
  border: 1px solid var(--mist);
  transition: box-shadow .25s;
}
.sg-sr-feast-section:hover { box-shadow: 0 4px 20px rgba(23,14,8,.07); }
.sg-sr-feast-section.sg-sr-hidden { display: none !important; }

.sg-sr-feast-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 16px 22px; cursor: pointer;
  background: var(--cream); user-select: none;
  transition: background .2s;
}
.sg-sr-feast-header:hover { background: var(--parch); }
.sg-sr-feast-header.sg-sr-open { background: var(--wine); }
.sg-sr-feast-header.sg-sr-open .sg-sr-feast-title { color: #fff; }
.sg-sr-feast-header.sg-sr-open .sg-sr-feast-meta { color: rgba(255,255,255,.55); }
.sg-sr-feast-header.sg-sr-open .sg-sr-feast-chevron { color: rgba(255,255,255,.8); transform: rotate(180deg); }
.sg-sr-feast-header.sg-sr-open .sg-sr-feast-badge { background: rgba(255,255,255,.18); color: #fff; }

.sg-sr-feast-title {
  font-family: var(--serif); font-size: 1.18rem; font-weight: 600;
  color: var(--ink); line-height: 1.25;
}
.sg-sr-feast-meta {
  font-family: var(--sans); font-size: .7rem; color: var(--stone);
  letter-spacing: .04em; margin-top: 3px;
}
.sg-sr-feast-badge {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  background: var(--parch); color: var(--wine);
  padding: 3px 10px; border-radius: 20px; white-space: nowrap;
  margin-left: 12px; flex-shrink: 0;
}
.sg-sr-feast-chevron {
  color: var(--stone); font-size: 1.1rem; flex-shrink: 0;
  margin-left: 10px; transition: transform .25s;
}

.sg-sr-feast-body {
  display: none; padding: 0 22px 22px; background: var(--paper);
  border-top: 1px solid var(--mist);
}
.sg-sr-feast-body.sg-sr-open { display: block; }

/* ── Service Block ── */
.sg-sr-service-block { margin-top: 18px; }
.sg-sr-service-label {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 7px; border-bottom: 2px solid var(--wine);
  margin-bottom: 10px; display: flex; align-items: center; gap: 8px;
}
.sg-sr-service-label i { color: var(--wine); }

.sg-sr-reading-list { list-style: none; padding: 0; margin: 0; }
.sg-sr-reading-list li {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 6px 0; border-bottom: 1px solid var(--mist);
  font-family: var(--sans); font-size: .84rem;
}
.sg-sr-reading-list li:last-child { border-bottom: none; }
.sg-sr-reading-list li::before {
  content: '✦'; color: var(--amber); font-size: .55rem; flex-shrink: 0; margin-top: 5px;
}
.sg-sr-reading-list a {
  color: var(--wine); font-weight: 500; transition: color .2s;
}
.sg-sr-reading-list a:hover { color: var(--amber); text-decoration: underline; }

/* ── Section Season Label ── */
.sg-sr-season-group-head {
  display: flex; align-items: center; gap: 14px;
  margin: 36px 0 18px;
}
.sg-sr-season-group-head-label {
  font-family: var(--sans); font-size: .66rem; font-weight: 700;
  letter-spacing: .2em; text-transform: uppercase;
  background: var(--wine); color: #fff;
  padding: 5px 14px; border-radius: 4px; white-space: nowrap;
}
.sg-sr-season-group-head-line {
  flex: 1; height: 1px; background: var(--mist);
}
.sg-sr-season-group-head-icon { color: var(--amber); font-size: 1.1rem; }

/* ── Sidebar ── */
.sg-sr-sidebar-box {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px;
  padding: 22px; margin-bottom: 20px;
}
.sg-sr-sidebar-head {
  font-family: var(--sans); font-size: .65rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 16px; display: flex; align-items: center; gap: 8px;
}
.sg-sr-sidebar-head i { color: var(--wine); }
.sg-sr-sidebar-link-item {
  display: flex; align-items: center; gap: 10px;
  padding: 8px 0; border-bottom: 1px solid var(--mist);
  font-family: var(--sans); font-size: .83rem; color: var(--ink);
  transition: color .2s;
}
.sg-sr-sidebar-link-item:last-child { border-bottom: none; }
.sg-sr-sidebar-link-item i { color: var(--amber); font-size: .9rem; width: 18px; text-align: center; }
.sg-sr-sidebar-link-item a { color: var(--ink); font-weight: 500; transition: color .2s; text-decoration: none; cursor: pointer; }
.sg-sr-sidebar-link-item a:hover { color: var(--wine); }

.sg-sr-tip-box {
  background: linear-gradient(135deg, var(--wine-d), var(--wine));
  border-radius: 10px; padding: 22px; margin-bottom: 20px;
  position: relative; overflow: hidden;
}
.sg-sr-tip-box::after {
  content: '✦'; position: absolute; right: 16px; bottom: 10px;
  font-size: 5rem; color: rgba(255,255,255,.06); font-family: var(--serif); line-height: 1;
}
.sg-sr-tip-box-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--amber);
  margin-bottom: 10px;
}
.sg-sr-tip-box p {
  font-family: var(--sans); font-size: .82rem; color: rgba(255,255,255,.7); line-height: 1.7;
}
.sg-sr-tip-box a {
  display: inline-flex; align-items: center; gap: 6px; margin-top: 14px;
  background: var(--amber); color: #fff; font-family: var(--sans);
  font-size: .76rem; font-weight: 700; padding: 8px 16px; border-radius: 5px;
  transition: background .2s; text-decoration: none;
}
.sg-sr-tip-box a:hover { background: var(--amber-lt); color: var(--wine-d); }

/* ── Expand All Button ── */
.sg-sr-expand-bar {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 20px; flex-wrap: wrap; gap: 10px;
}
.sg-sr-expand-btn {
  font-family: var(--sans); font-size: .76rem; font-weight: 600;
  padding: 7px 16px; border-radius: 5px; border: 1.5px solid var(--mist);
  background: transparent; color: var(--wine); cursor: pointer;
  transition: all .2s; display: inline-flex; align-items: center; gap: 6px;
}
.sg-sr-expand-btn:hover { background: var(--wine); color: #fff; border-color: var(--wine); }

.sg-sr-results-count {
  font-family: var(--sans); font-size: .78rem; color: var(--stone);
}

/* ══ REVEAL ══════════════════════════════════════════════ */
.sg-sr-page-wrapper .reveal { opacity: 0; transform: translateY(22px); transition: opacity .55s ease, transform .55s ease; }
.sg-sr-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-sr-page-wrapper .d1 { transition-delay: .05s; }
.sg-sr-page-wrapper .d2 { transition-delay: .12s; }
.sg-sr-page-wrapper .d3 { transition-delay: .19s; }
.sg-sr-page-wrapper .d4 { transition-delay: .26s; }
.sg-sr-page-wrapper .d5 { transition-delay: .33s; }






/* ════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* ════════════════════════════════════════ Resources Page styles ═════════════════════════════════════════ */
/* ════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Resources Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-rs-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-rs-page-wrapper *,
.sg-rs-page-wrapper *::before,
.sg-rs-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-rs-page-wrapper h1, 
.sg-rs-page-wrapper h2, 
.sg-rs-page-wrapper h3, 
.sg-rs-page-wrapper h4, 
.sg-rs-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-rs-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-rs-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-rs-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ SHARED TOKENS ══════════════════════════════════════ */
.sg-rs-s-tag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.sg-rs-s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }
.sg-rs-s-h2 {
  font-family: var(--serif); font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.2rem;
}
.sg-rs-s-h2 em { font-style: italic; color: var(--wine); }

/* ══ PAGE HERO ══════════════════════════════════════════ */
.sg-rs-page-hero {
  position: relative; background: var(--ink);
  padding: 80px 0 60px; overflow: hidden;
}
.sg-rs-page-hero-bg {
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1504711434969-e33886168f5c?w=1600&q=80') center/cover no-repeat;
  opacity: .15;
}
.sg-rs-page-hero-veil {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(92,21,25,.92) 0%, rgba(23,14,8,.75) 100%);
}
.sg-rs-page-hero-watermark {
  position: absolute; right: 2%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(40vw, 28rem);
  color: rgba(255,255,255,.04); line-height: 1;
  pointer-events: none; user-select: none;
}
.sg-rs-page-hero-body { position: relative; z-index: 2; }
.sg-rs-page-breadcrumb {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.5); margin-bottom: 1.4rem;
}
.sg-rs-page-breadcrumb a { color: var(--amber-lt); }
.sg-rs-page-breadcrumb a:hover { color: #fff; }
.sg-rs-page-breadcrumb i { font-size: .6rem; }
.sg-rs-page-title {
  font-family: var(--serif); font-size: clamp(2.4rem, 5.5vw, 4.2rem);
  font-weight: 600; color: #fff; line-height: 1.1;
  margin-bottom: 1rem; letter-spacing: -.01em;
}
.sg-rs-page-title em { font-style: italic; color: var(--amber-lt); }
.sg-rs-page-lead {
  font-family: var(--sans); font-size: .97rem; font-weight: 300;
  color: rgba(255,255,255,.72); max-width: 560px; line-height: 1.75;
}
.sg-rs-hero-strip {
  position: relative; z-index: 2;
  display: flex; flex-wrap: wrap;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(255,255,255,.1);
  margin-top: 52px;
}
.sg-rs-hs-item {
  flex: 1 1 160px; padding: 1.2rem 2rem;
  border-right: 1px solid rgba(255,255,255,.08); text-align: center;
}
.sg-rs-hs-item:last-child { border-right: none; }
.sg-rs-hs-val { font-family: var(--serif); font-size: 2rem; font-weight: 700; color: #fff; line-height: 1; }
.sg-rs-hs-lbl { font-family: var(--sans); font-size: .63rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,255,255,.45); margin-top: 4px; }
@media (max-width: 576px) { .sg-rs-hs-item { flex-basis: 50%; } }

/* ══ RESOURCES MAIN ═════════════════════════════════════ */
.sg-rs-sec-resources { padding: 80px 0 100px; background: var(--paper); }

/* ══ RESOURCE SECTION BLOCK ═════════════════════════════ */
.sg-rs-res-block {
  background: var(--paper);
  border: 1px solid var(--mist);
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 1.8rem;
  box-shadow: 0 2px 14px rgba(23,14,8,.04);
  position: relative;
}
.sg-rs-res-block::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--wine), var(--amber));
}
.sg-rs-res-block-head {
  display: flex; align-items: center; gap: 10px;
  padding: 1rem 1.4rem;
  background: var(--cream);
  border-bottom: 1px solid var(--mist);
}
.sg-rs-res-block-head-icon {
  width: 34px; height: 34px; border-radius: 7px;
  background: var(--wine); color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: .9rem; flex-shrink: 0;
}
.sg-rs-res-block-head-title {
  font-family: var(--serif); font-size: 1.15rem; font-weight: 600;
  color: var(--ink); line-height: 1.2;
}
.sg-rs-res-list { list-style: none; padding: 0; margin: 0; }
.sg-rs-res-list li { border-bottom: 1px solid var(--mist); }
.sg-rs-res-list li:last-child { border-bottom: none; }
.sg-rs-res-list a {
  display: flex; align-items: center; gap: 12px;
  padding: .85rem 1.4rem;
  color: var(--ink);
  font-family: var(--sans); font-size: .88rem;
  transition: background .15s;
}
.sg-rs-res-list a:hover { background: var(--parch); color: var(--wine); text-decoration: none; }
.sg-rs-res-list .sg-rs-rl-icon {
  width: 28px; height: 28px; border-radius: 6px;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; font-size: .8rem;
}
.sg-rs-res-list .sg-rs-rl-ext { margin-left: auto; font-size: .7rem; color: var(--stone); }
.sg-rs-res-pill {
  margin-left: auto;
  font-family: var(--sans); font-size: .6rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--wine); background: var(--parch);
  padding: .15rem .5rem; border-radius: 3px; white-space: nowrap;
}

/* ══ SIDEBAR ════════════════════════════════════════════ */
.sg-rs-sidebar-box {
  background: var(--cream); border-radius: 10px;
  border: 1px solid var(--mist); overflow: hidden;
  margin-bottom: 1.5rem;
}
.sg-rs-sidebar-head {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .2em; text-transform: uppercase;
  color: rgba(255,255,255,.75); background: var(--wine);
  padding: .7rem 1.2rem;
}
.sg-rs-sidebar-body { padding: 1.2rem; }
.sg-rs-sidebar-list { list-style: none; padding: 0; }
.sg-rs-sidebar-list li {
  border-bottom: 1px solid var(--mist); padding: .65rem 0;
  display: flex; align-items: flex-start; gap: .7rem;
}
.sg-rs-sidebar-list li:last-child { border-bottom: none; padding-bottom: 0; }
.sg-rs-sidebar-list a {
  font-family: var(--serif); font-size: .98rem; font-weight: 600;
  color: var(--ink); line-height: 1.3; transition: color .2s;
}
.sg-rs-sidebar-list a:hover { color: var(--wine); }

.sg-rs-contact-card {
  background: var(--wine); border-radius: 10px;
  padding: 1.5rem; margin-bottom: 1.5rem;
  font-family: var(--sans); font-size: .83rem;
  color: rgba(255,255,255,.72); line-height: 1.85;
}
.sg-rs-contact-card h3 {
  font-family: var(--serif); font-size: 1.1rem; font-weight: 600;
  color: #fff; margin-bottom: .8rem;
  padding-bottom: .75rem; border-bottom: 1px solid rgba(255,255,255,.18);
}
.sg-rs-contact-card .sg-rs-cc-row { display: flex; gap: .6rem; align-items: flex-start; margin-bottom: .5rem; }
.sg-rs-contact-card .sg-rs-cc-row i { color: var(--amber-lt); margin-top: 3px; flex-shrink: 0; }
.sg-rs-contact-card a { color: var(--amber-lt); }
.sg-rs-contact-card a:hover { color: #fff; }

/* ══ PHOTO BLOCK ════════════════════════════════════════ */
.sg-rs-photo-block {
  border-radius: 10px; overflow: hidden;
  border: 1px solid var(--mist);
  box-shadow: 0 2px 14px rgba(23,14,8,.04);
  margin-bottom: 1.8rem;
  position: relative;
}
.sg-rs-photo-block::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--wine), var(--amber));
  z-index: 1;
}
.sg-rs-photo-block .sg-rs-pb-head {
  display: flex; align-items: center; gap: 10px;
  padding: 1rem 1.4rem;
  background: var(--cream);
  border-bottom: 1px solid var(--mist);
}
.sg-rs-photo-block .sg-rs-pb-head-icon {
  width: 34px; height: 34px; border-radius: 7px;
  background: var(--wine); color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: .9rem;
}
.sg-rs-photo-block .sg-rs-pb-head-title {
  font-family: var(--serif); font-size: 1.15rem; font-weight: 600; color: var(--ink);
}
.sg-rs-photo-block img { width: 100%; display: block; max-height: 280px; object-fit: cover; }
.sg-rs-photo-caption { padding: .7rem 1.4rem; font-size: .78rem; color: var(--stone); font-style: italic; background: var(--cream); }

/* ══ USEFUL LINKS ════════════════════════════════════════ */
.sg-rs-sec-links { padding: 80px 0; background: var(--cream); }
.sg-rs-link-cards {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1px; background: var(--mist); border-radius: 10px; overflow: hidden;
}
.sg-rs-lc {
  display: flex; align-items: center; gap: 1.1rem;
  background: var(--paper); padding: 1.4rem 1.5rem;
  color: var(--ink); transition: background .2s;
}
.sg-rs-lc:hover { background: var(--parch); color: var(--ink); }
.sg-rs-lc-ico {
  width: 42px; height: 42px; border-radius: 8px;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.1rem; flex-shrink: 0;
}
.sg-rs-lc-label { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); line-height: 1.3; }
.sg-rs-lc-hint { font-family: var(--sans); font-size: .75rem; color: var(--stone); margin-top: 2px; }

/* ══ REVEAL ══════════════════════════════════════════════ */
.sg-rs-page-wrapper .reveal { opacity: 0; transform: translateY(22px); transition: opacity .65s ease, transform .65s ease; }
.sg-rs-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-rs-page-wrapper .d1 { transition-delay: .1s; } 
.sg-rs-page-wrapper .d2 { transition-delay: .2s; }
.sg-rs-page-wrapper .d3 { transition-delay: .3s; } 
.sg-rs-page-wrapper .d4 { transition-delay: .4s; }






/* ════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* ═════════════════════════════════════════ Contact Page styles ══════════════════════════════════════════ */
/* ════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Contact Us Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-co-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-co-page-wrapper *,
.sg-co-page-wrapper *::before,
.sg-co-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-co-page-wrapper h1, 
.sg-co-page-wrapper h2, 
.sg-co-page-wrapper h3, 
.sg-co-page-wrapper h4, 
.sg-co-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-co-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-co-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-co-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ SHARED TOKENS ══════════════════════════════════════ */
.sg-co-s-tag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.sg-co-s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }
.sg-co-s-h2 {
  font-family: var(--serif); font-size: clamp(1.9rem, 3.5vw, 2.9rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.2rem;
}
.sg-co-s-h2 em { font-style: italic; color: var(--wine); }

.sg-co-btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--wine); border: 1.5px solid var(--wine);
  border-radius: 4px; padding: .62rem 1.4rem;
  transition: background .2s, color .2s;
}
.sg-co-btn-outline:hover { background: var(--wine); color: #fff; }
.sg-co-btn-outline i { font-size: .72rem; transition: transform .2s; }
.sg-co-btn-outline:hover i { transform: translateX(4px); }

/* ══ PAGE HERO ═══════════════════════════════════════════ */
.sg-co-page-hero {
  position: relative; background: var(--wine-d); overflow: hidden; padding: 72px 0 56px;
}
.sg-co-page-hero::before {
  content: ''; position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1548625149-720754963c49?w=1600&q=80') center/cover no-repeat;
  opacity: .12;
}
.sg-co-page-hero-watermark {
  position: absolute; right: 2%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(38vw, 32rem);
  color: rgba(255,255,255,.04); line-height: 1; pointer-events: none; user-select: none;
}
.sg-co-page-hero-content { position: relative; z-index: 2; }
.sg-co-breadcrumb-bar {
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.45); margin-bottom: 1rem;
  display: flex; align-items: center; gap: 8px;
}
.sg-co-breadcrumb-bar a { color: rgba(255,255,255,.45); }
.sg-co-breadcrumb-bar a:hover { color: rgba(255,255,255,.8); }
.sg-co-breadcrumb-bar .sg-co-sep { opacity: .35; }
.sg-co-breadcrumb-bar .sg-co-current { color: var(--amber-lt); }
.sg-co-page-eyebrow {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .8rem;
}
.sg-co-page-eyebrow::before { content: ''; display: block; width: 28px; height: 1px; background: var(--amber); }
.sg-co-page-h1 {
  font-family: var(--serif); font-size: clamp(2.2rem, 5vw, 3.8rem);
  font-weight: 600; color: #fff; line-height: 1.1; letter-spacing: -.01em; margin-bottom: .6rem;
}
.sg-co-page-h1 em { font-style: italic; color: var(--amber-lt); }
.sg-co-page-tagline {
  font-family: var(--sans); font-size: .9rem; font-weight: 300;
  color: rgba(255,255,255,.62); max-width: 440px;
}

/* ══ OFFICE HOURS STRIP ═════════════════════════════════ */
.sg-co-hours-strip {
  background: var(--parch); border-top: 1px solid var(--mist);
  border-bottom: 1px solid var(--mist); padding: 18px 0;
}
.sg-co-hours-item {
  display: flex; align-items: center; gap: 12px;
  padding: 0 2.2rem; border-right: 1px solid var(--mist);
}
.sg-co-hours-item:last-child { border-right: none; }
.sg-co-hours-ico {
  width: 36px; height: 36px; border-radius: 6px;
  background: var(--wine); color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: .9rem; flex-shrink: 0;
}
.sg-co-hours-lbl { font-family: var(--sans); font-size: .63rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--stone); }
.sg-co-hours-val { font-family: var(--serif); font-size: .98rem; font-weight: 600; color: var(--ink); line-height: 1.2; }
@media (max-width: 767px) {
  .sg-co-hours-item { border-right: none; border-bottom: 1px solid var(--mist); padding: 10px 0; }
  .sg-co-hours-item:last-child { border-bottom: none; }
}

/* ══ CONTACT INFO CARDS ═════════════════════════════════ */
.sg-co-sec-contact { padding: 80px 0 100px; }
.sg-co-info-cards { margin-bottom: 56px; }

.sg-co-info-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 8px;
  padding: 28px 24px; display: flex; align-items: flex-start; gap: 18px; height: 100%;
  transition: box-shadow .25s, transform .25s, border-color .25s;
}
.sg-co-info-card:hover {
  box-shadow: 0 8px 32px rgba(23,14,8,.09); transform: translateY(-2px); border-color: var(--amber-lt);
}
.sg-co-info-card-ico {
  width: 48px; height: 48px; border-radius: 8px; background: var(--wine); color: #fff;
  display: flex; align-items: center; justify-content: center; font-size: 1.1rem; flex-shrink: 0; margin-top: 2px;
}
.sg-co-info-card-lbl {
  font-family: var(--sans); font-size: .66rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase; color: var(--stone); margin-bottom: 5px;
}
.sg-co-info-card-val {
  font-family: var(--serif); font-size: 1.05rem; font-weight: 600; color: var(--ink); line-height: 1.35;
}
.sg-co-info-card-sub {
  font-family: var(--sans); font-size: .78rem; color: var(--stone); margin-top: 3px; line-height: 1.5;
}
.sg-co-info-card-link {
  font-family: var(--sans); font-size: .75rem; font-weight: 600; letter-spacing: .06em;
  color: var(--wine); margin-top: 8px; display: inline-flex; align-items: center; gap: 5px;
}
.sg-co-info-card-link:hover { color: var(--wine-d); }
.sg-co-info-card-link i { font-size: .68rem; }

/* ══ DIVIDER ════════════════════════════════════════════ */
.sg-co-ornament-divider {
  display: flex; align-items: center; gap: 16px; margin: 52px 0 48px;
}
.sg-co-ornament-divider::before, .sg-co-ornament-divider::after {
  content: ''; flex: 1; height: 1px; background: var(--mist);
}
.sg-co-ornament-divider-inner {
  display: flex; align-items: center; gap: 8px;
  font-family: var(--serif); font-size: 1.3rem; color: var(--amber);
}

/* ══ CONTACT FORM WRAPPER ═══════════════════════════════ */
.sg-co-form-wrap {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px;
  padding: clamp(28px, 5vw, 52px) clamp(24px, 5vw, 48px);
  position: relative; overflow: hidden;
}
.sg-co-form-wrap::before {
  content: '✦'; position: absolute; right: -18px; top: -10px;
  font-size: 9rem; color: rgba(196,131,42,.06);
  pointer-events: none; user-select: none; font-family: var(--serif);
}
.sg-co-form-head { margin-bottom: 32px; }
.sg-co-form-head h2 {
  font-family: var(--serif); font-size: clamp(1.7rem, 3vw, 2.4rem);
  font-weight: 600; color: var(--ink); line-height: 1.15; margin-bottom: .5rem;
}
.sg-co-form-head h2 em { font-style: italic; color: var(--wine); }
.sg-co-form-head p {
  font-family: var(--sans); font-size: .88rem; color: var(--stone); line-height: 1.7;
}

/* ══ FORM ELEMENTS ══════════════════════════════════════ */
.sg-co-form-label {
  font-family: var(--sans); font-size: .72rem; font-weight: 600;
  letter-spacing: .1em; text-transform: uppercase; color: var(--stone);
  margin-bottom: 7px; display: block;
}
.sg-co-form-control, .sg-co-form-select {
  font-family: var(--sans); font-size: .92rem; color: var(--ink);
  background: var(--paper); border: 1.5px solid var(--mist);
  border-radius: 5px; padding: .68rem 1rem; width: 100%; outline: none;
  transition: border-color .2s, box-shadow .2s;
  appearance: none; -webkit-appearance: none;
}
.sg-co-form-control:focus, .sg-co-form-select:focus {
  border-color: var(--wine); box-shadow: 0 0 0 3px rgba(92,21,25,.1); background: #fff;
}
.sg-co-form-control::placeholder { color: #b8a898; }
textarea.sg-co-form-control { resize: vertical; min-height: 138px; line-height: 1.65; }

/* Custom select arrow */
.sg-co-select-wrap { position: relative; }
.sg-co-select-wrap::after {
  content: '\F282'; font-family: 'bootstrap-icons';
  position: absolute; right: 14px; top: 50%; transform: translateY(-50%);
  color: var(--stone); pointer-events: none; font-size: .85rem;
}
.sg-co-form-select { padding-right: 2.4rem; cursor: pointer; }

/* Recipient-specific accents */
.sg-co-recipient-badge {
  display: none; align-items: center; gap: 8px;
  padding: 10px 14px; border-radius: 5px;
  background: rgba(92,21,25,.06); border-left: 3px solid var(--wine);
  font-family: var(--sans); font-size: .8rem; color: var(--stone);
  margin-top: 8px; line-height: 1.45;
}
.sg-co-recipient-badge.visible { display: flex; }
.sg-co-recipient-badge i { color: var(--wine); font-size: 1rem; flex-shrink: 0; }
.sg-co-recipient-badge strong { color: var(--ink); }

/* Submit button */
.sg-co-btn-send {
  background: var(--wine); color: #fff;
  font-family: var(--sans); font-weight: 600; font-size: .82rem;
  letter-spacing: .09em; text-transform: uppercase;
  padding: .8rem 2.4rem; border-radius: 5px; border: none;
  cursor: pointer; display: inline-flex; align-items: center; gap: 10px;
  transition: background .2s, transform .15s, box-shadow .2s;
}
.sg-co-btn-send:hover { background: var(--wine-d); transform: translateY(-1px); box-shadow: 0 6px 22px rgba(92,21,25,.22); }
.sg-co-btn-send:active { transform: none; box-shadow: none; }
.sg-co-btn-send i { font-size: .8rem; }

/* Success message */
.sg-co-form-success {
  display: none; text-align: center; padding: 36px 24px;
}
.sg-co-form-success .sg-co-success-ico {
  width: 62px; height: 62px; border-radius: 50%;
  background: rgba(92,21,25,.08); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.7rem; margin: 0 auto 18px;
}
.sg-co-form-success h3 { font-family: var(--serif); font-size: 1.9rem; color: var(--ink); margin-bottom: .5rem; }
.sg-co-form-success p { font-family: var(--sans); font-size: .88rem; color: var(--stone); max-width: 320px; margin: 0 auto; }

/* Character counter */
.sg-co-char-counter {
  font-family: var(--sans); font-size: .7rem; color: var(--stone);
  text-align: right; margin-top: 4px;
}
.sg-co-char-counter.warn { color: var(--amber); }

/* ══ MAP SECTION ═════════════════════════════════════════ */
.sg-co-sec-map { background: var(--parch); padding: 0; }
.sg-co-map-frame-wrap {
  position: relative; width: 100%; height: 420px;
  border-top: 1px solid var(--mist); overflow: hidden;
}
.sg-co-map-frame-wrap iframe {
  width: 100%; height: 100%; border: none; display: block;
}
.sg-co-map-overlay-card {
  position: absolute; top: 24px; left: 24px; z-index: 10;
  background: rgba(255,253,248,.96); backdrop-filter: blur(12px);
  border: 1px solid var(--mist); border-radius: 8px;
  padding: 20px 22px; max-width: 280px; box-shadow: 0 8px 28px rgba(23,14,8,.12);
}
.sg-co-map-card-name {
  font-family: var(--serif); font-size: 1.1rem; font-weight: 600;
  color: var(--ink); margin-bottom: 10px; line-height: 1.25;
}
.sg-co-map-card-row {
  display: flex; align-items: flex-start; gap: 9px;
  font-family: var(--sans); font-size: .78rem; color: var(--stone);
  margin-bottom: 7px; line-height: 1.45;
}
.sg-co-map-card-row i { color: var(--wine); font-size: .9rem; flex-shrink: 0; margin-top: 2px; }
.sg-co-map-card-row:last-child { margin-bottom: 0; }
@media (max-width: 576px) {
  .sg-co-map-overlay-card { display: none; }
  .sg-co-map-frame-wrap { height: 300px; }
}

/* ══ FAQ ACCORDION STYLES ════════════════════════════════ */
.sg-co-faq-q {
  width: 100%; background: none; border: none; padding: 14px 0;
  font-family: var(--sans); font-size: .85rem; font-weight: 500; color: var(--ink);
  display: flex; justify-content: space-between; align-items: center; gap: 12px;
  cursor: pointer; text-align: left; line-height: 1.45;
  transition: color .2s;
}
.sg-co-faq-q:hover { color: var(--wine); }
.sg-co-faq-ico { font-size: .72rem; color: var(--wine); flex-shrink: 0; transition: transform .25s; }
.sg-co-faq-item.open .sg-co-faq-ico { transform: rotate(45deg); }
.sg-co-faq-a {
  font-family: var(--sans); font-size: .82rem; color: var(--stone);
  line-height: 1.65; max-height: 0; overflow: hidden;
  transition: max-height .3s ease, padding .3s ease; padding: 0;
}
.sg-co-faq-item.open .sg-co-faq-a { max-height: 200px; padding-bottom: 14px; }

/* ══ REVEAL ══════════════════════════════════════════════ */
.sg-co-page-wrapper .reveal { opacity: 0; transform: translateY(24px); transition: opacity .6s ease, transform .6s ease; }
.sg-co-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-co-page-wrapper .d1 { transition-delay: .1s; } 
.sg-co-page-wrapper .d2 { transition-delay: .2s; }
.sg-co-page-wrapper .d3 { transition-delay: .3s; }






/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* ═════════════════════════════════════════ Prayer Request Page styles ══════════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Prayer Request Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-pr-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-pr-page-wrapper *,
.sg-pr-page-wrapper *::before,
.sg-pr-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-pr-page-wrapper h1, 
.sg-pr-page-wrapper h2, 
.sg-pr-page-wrapper h3, 
.sg-pr-page-wrapper h4, 
.sg-pr-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-pr-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-pr-page-wrapper a:hover { 
  color: var(--wine-d); 
}

/* Scoped Form Controls (Isolates from Bootstrap globally but applies correctly inside) */
.sg-pr-page-wrapper .form-label {
  font-family: var(--sans); font-size: .7rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: var(--stone); margin-bottom: 6px; display: block;
}
.sg-pr-page-wrapper .form-control, 
.sg-pr-page-wrapper .form-select {
  font-family: var(--sans); font-size: .92rem; color: var(--ink);
  background: var(--paper); border: 1.5px solid var(--mist);
  border-radius: 5px; padding: .65rem 1rem; width: 100%; outline: none;
  transition: border-color .2s, box-shadow .2s; appearance: none; -webkit-appearance: none;
}
.sg-pr-page-wrapper .form-control:focus, 
.sg-pr-page-wrapper .form-select:focus {
  border-color: var(--wine); box-shadow: 0 0 0 3px rgba(92,21,25,.1); background: #fff;
}
.sg-pr-page-wrapper .form-control.is-invalid { border-color: #b22a2a; }
.sg-pr-page-wrapper .form-control::placeholder { color: #b8a898; }
.sg-pr-page-wrapper textarea.form-control { resize: vertical; min-height: 100px; line-height: 1.65; }

/* 2. Specific Page Components */

/* ══ PAGE HERO ═══════════════════════════════════════════ */
.sg-pr-page-hero {
  position: relative; background: var(--wine-d); overflow: hidden; padding: 80px 0 64px;
}
.sg-pr-page-hero::before {
  content: ''; position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1447452001602-7090c7ab2db3?w=1600&q=80') center/cover no-repeat;
  opacity: .09;
}
/* Candle glow orbs */
.sg-pr-hero-orb {
  position: absolute; border-radius: 50%;
  background: radial-gradient(circle, rgba(196,131,42,.18) 0%, transparent 70%);
  pointer-events: none;
}
.sg-pr-hero-orb-1 { width: 420px; height: 420px; top: -80px; right: 8%; }
.sg-pr-hero-orb-2 { width: 260px; height: 260px; bottom: -40px; left: 5%; }
.sg-pr-page-hero-watermark {
  position: absolute; right: 0; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(35vw, 30rem);
  color: rgba(255,255,255,.035); line-height: 1; pointer-events: none; user-select: none; letter-spacing: -.04em;
}
.sg-pr-page-hero-content { position: relative; z-index: 2; }
.sg-pr-breadcrumb-bar {
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.42); margin-bottom: 1rem;
  display: flex; align-items: center; gap: 8px;
}
.sg-pr-breadcrumb-bar a { color: rgba(255,255,255,.42); }
.sg-pr-breadcrumb-bar a:hover { color: rgba(255,255,255,.8); }
.sg-pr-breadcrumb-bar .sg-pr-current { color: var(--amber-lt); }
.sg-pr-page-eyebrow {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .8rem;
}
.sg-pr-page-eyebrow::before { content: ''; display: block; width: 28px; height: 1px; background: var(--amber); }
.sg-pr-page-h1 {
  font-family: var(--serif); font-size: clamp(2.2rem, 5vw, 3.8rem);
  font-weight: 600; color: #fff; line-height: 1.1; margin-bottom: .6rem;
}
.sg-pr-page-h1 em { font-style: italic; color: var(--amber-lt); }
.sg-pr-page-tagline { font-family: var(--sans); font-size: .9rem; font-weight: 300; color: rgba(255,255,255,.6); max-width: 520px; line-height: 1.75; }

/* ══ ALERTS ══════════════════════════════════════════════ */
.sg-pr-deadline-alert-form {
  display: flex; align-items: center; gap: 12px;
  background: rgba(196,131,42,.09); border: 1.5px solid rgba(196,131,42,.3);
  border-radius: 8px; padding: 14px 18px; margin-bottom: 28px;
  font-family: var(--sans); font-size: .8rem; color: var(--stone);
}
.sg-pr-deadline-alert-form i { font-size: 1.1rem; flex-shrink: 0; color: var(--amber); }
.sg-pr-deadline-alert-form strong { color: var(--wine); font-weight: 600; }

/* ══ PRAYER TYPE CARDS ═══════════════════════════════════ */
.sg-pr-sec-types { background: var(--cream); padding: 64px 0 56px; }
.sg-pr-prayer-type-card {
  background: var(--paper); border: 1px solid var(--mist); border-radius: 8px;
  padding: 20px 18px; text-align: center; cursor: default;
  transition: box-shadow .2s, transform .2s, border-color .2s; height: 100%;
}
.sg-pr-prayer-type-card:hover { box-shadow: 0 6px 24px rgba(23,14,8,.09); transform: translateY(-2px); border-color: var(--amber-lt); }
.sg-pr-pt-icon {
  width: 52px; height: 52px; border-radius: 50%; margin: 0 auto 12px;
  display: flex; align-items: center; justify-content: center; font-size: 1.2rem;
}
.sg-pr-pt-label { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); line-height: 1.3; }

/* ══ FORM SECTION ════════════════════════════════════════ */
.sg-pr-sec-form { padding: 72px 0 96px; }

/* Requester card */
.sg-pr-requester-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px;
  padding: clamp(24px,4vw,40px); margin-bottom: 28px;
}
.sg-pr-card-section-head {
  display: flex; align-items: center; gap: 12px; margin-bottom: 22px;
  padding-bottom: 14px; border-bottom: 1px solid var(--mist);
}
.sg-pr-card-section-ico {
  width: 38px; height: 38px; border-radius: 7px; background: var(--wine); color: #fff;
  display: flex; align-items: center; justify-content: center; font-size: .9rem; flex-shrink: 0;
}
.sg-pr-card-section-title { font-family: var(--serif); font-size: 1.25rem; font-weight: 600; color: var(--ink); }
.sg-pr-card-section-sub { font-family: var(--sans); font-size: .74rem; color: var(--stone); margin-top: 1px; }

/* Names card */
.sg-pr-names-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px;
  padding: clamp(24px,4vw,40px);
}

/* Custom select */
.sg-pr-select-wrap { position: relative; }
.sg-pr-select-wrap::after {
  content: '\F282'; font-family: 'bootstrap-icons';
  position: absolute; right: 13px; top: 50%; transform: translateY(-50%);
  color: var(--stone); pointer-events: none; font-size: .82rem;
}
.sg-pr-page-wrapper .sg-pr-select-wrap .form-select { padding-right: 2.4rem; cursor: pointer; }

/* Prayer entry row */
.sg-pr-prayer-entry {
  background: var(--paper); border: 1px solid var(--mist); border-radius: 8px;
  padding: 18px 20px 16px; margin-bottom: 12px; position: relative;
  transition: border-color .2s, box-shadow .2s;
}
.sg-pr-prayer-entry:hover { border-color: var(--amber-lt); box-shadow: 0 4px 18px rgba(23,14,8,.06); }
.sg-pr-entry-num {
  position: absolute; top: -11px; left: 18px;
  background: var(--wine); color: #fff;
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  padding: 2px 10px; border-radius: 20px;
}

/* Prayer type badge selector */
.sg-pr-prayer-type-pills {
  display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px;
}
.sg-pr-ptype-pill {
  font-family: var(--sans); font-size: .7rem; font-weight: 600;
  padding: .28rem .72rem; border-radius: 20px; cursor: pointer;
  border: 1.5px solid var(--mist); background: var(--paper); color: var(--stone);
  transition: all .18s; user-select: none; white-space: nowrap;
}
.sg-pr-ptype-pill:hover { border-color: var(--wine); color: var(--wine); }
.sg-pr-ptype-pill.selected { background: var(--wine); border-color: var(--wine); color: #fff; }
.sg-pr-ptype-pill input { display: none; }

/* Remove button */
.sg-pr-btn-remove-entry {
  position: absolute; top: 14px; right: 14px;
  background: none; border: 1.5px solid var(--mist); color: var(--stone);
  width: 28px; height: 28px; border-radius: 50%; cursor: pointer;
  display: flex; align-items: center; justify-content: center; font-size: .75rem;
  transition: border-color .2s, color .2s, background .2s;
}
.sg-pr-btn-remove-entry:hover { border-color: var(--wine); color: var(--wine); background: rgba(92,21,25,.06); }

/* Add entry button */
.sg-pr-btn-add-entry {
  display: flex; align-items: center; gap: 8px; width: 100%;
  background: none; border: 1.5px dashed var(--mist); border-radius: 8px;
  color: var(--stone); font-family: var(--sans); font-size: .82rem; font-weight: 500;
  padding: 14px 20px; cursor: pointer;
  transition: border-color .2s, color .2s, background .2s;
  margin-top: 4px;
}
.sg-pr-btn-add-entry:hover { border-color: var(--wine); color: var(--wine); background: rgba(92,21,25,.03); }
.sg-pr-btn-add-entry i { font-size: .9rem; }

/* Special notes */
.sg-pr-special-notes-card {
  background: rgba(196,131,42,.07); border: 1px solid rgba(196,131,42,.25);
  border-radius: 8px; padding: 20px 22px; margin-top: 20px;
}
.sg-pr-special-notes-head {
  display: flex; align-items: center; gap: 10px; margin-bottom: 12px;
  font-family: var(--sans); font-size: .72rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: var(--amber);
}

/* Submit */
.sg-pr-btn-submit {
  background: var(--wine); color: #fff;
  font-family: var(--sans); font-weight: 700; font-size: .82rem;
  letter-spacing: .09em; text-transform: uppercase;
  padding: .88rem 2.6rem; border-radius: 5px; border: none;
  cursor: pointer; display: inline-flex; align-items: center; gap: 10px;
  transition: background .2s, transform .15s, box-shadow .2s;
}
.sg-pr-btn-submit:hover { background: var(--wine-d); transform: translateY(-1px); box-shadow: 0 6px 22px rgba(92,21,25,.25); }
.sg-pr-btn-submit:active { transform: none; }
.sg-pr-btn-submit i { font-size: .8rem; }

/* Success state */
.sg-pr-form-success {
  display: none; text-align: center; padding: 60px 30px;
}
.sg-pr-success-cross {
  width: 76px; height: 76px; border-radius: 50%;
  background: rgba(92,21,25,.08); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 2rem; margin: 0 auto 20px;
}
.sg-pr-form-success h3 { font-family: var(--serif); font-size: 2rem; color: var(--ink); margin-bottom: .5rem; }
.sg-pr-form-success p { font-family: var(--sans); font-size: .88rem; color: var(--stone); max-width: 360px; margin: 0 auto 1.4rem; line-height: 1.7; }

/* Count badge */
.sg-pr-entry-count-badge {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--parch); border: 1px solid var(--mist);
  border-radius: 20px; padding: 4px 12px;
  font-family: var(--sans); font-size: .72rem; font-weight: 600; color: var(--stone);
}
.sg-pr-entry-count-badge span { color: var(--wine); font-weight: 700; }

/* ══ SIDEBAR ══════════════════════════════════════════════ */
.sg-pr-sidebar-block {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 8px;
  padding: 22px 22px; margin-bottom: 20px;
}
.sg-pr-sidebar-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine); margin-bottom: 16px;
}
.sg-pr-scripture-block {
  background: var(--wine); border-radius: 8px; padding: 26px 22px;
  margin-bottom: 20px; position: relative; overflow: hidden;
}
.sg-pr-scripture-block::before {
  content: '\201C'; position: absolute; top: -2.5rem; left: .5rem;
  font-family: var(--serif); font-size: 8rem; color: rgba(255,255,255,.08);
  line-height: 1; pointer-events: none;
}
.sg-pr-scripture-text {
  font-family: var(--serif); font-style: italic; font-size: 1.08rem;
  color: rgba(255,255,255,.9); line-height: 1.65; margin-bottom: 12px; position: relative;
}
.sg-pr-scripture-ref { font-family: var(--sans); font-size: .68rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--amber-lt); }

.sg-pr-info-row {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 10px 0; border-bottom: 1px solid var(--mist);
  font-family: var(--sans); font-size: .8rem; color: var(--stone); line-height: 1.5;
}
.sg-pr-info-row:last-child { border-bottom: none; padding-bottom: 0; }
.sg-pr-info-row i { color: var(--wine); font-size: .95rem; flex-shrink: 0; margin-top: 2px; width: 16px; text-align: center; }
.sg-pr-info-row strong { color: var(--ink); display: block; font-size: .76rem; }

.sg-pr-sidebar-link {
  display: flex; align-items: center; gap: 10px;
  font-family: var(--sans); font-size: .82rem; color: var(--ink);
  padding: 9px 0; border-bottom: 1px solid var(--mist); transition: color .2s;
}
.sg-pr-sidebar-link:last-child { border-bottom: none; padding-bottom: 0; }
.sg-pr-sidebar-link:hover { color: var(--wine); }
.sg-pr-sidebar-link i { color: var(--wine); font-size: .9rem; flex-shrink: 0; }
.sg-pr-sidebar-link .sg-pr-sl-sub { font-size: .7rem; color: var(--stone); display: block; margin-top: 1px; }

/* ══ REVEAL ══════════════════════════════════════════════ */
.sg-pr-page-wrapper .reveal { opacity: 0; transform: translateY(22px); transition: opacity .65s ease, transform .65s ease; }
.sg-pr-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-pr-page-wrapper .d1 { transition-delay: .1s; } 
.sg-pr-page-wrapper .d2 { transition-delay: .2s; }
.sg-pr-page-wrapper .d3 { transition-delay: .3s; }










/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* ══════════════════════════════════════════ Weekend Mail Page styles ═══════════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Weekend Mail Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-wm-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-wm-page-wrapper *,
.sg-wm-page-wrapper *::before,
.sg-wm-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-wm-page-wrapper h1, 
.sg-wm-page-wrapper h2, 
.sg-wm-page-wrapper h3, 
.sg-wm-page-wrapper h4, 
.sg-wm-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-wm-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-wm-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-wm-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ SHARED TOKENS ═════════════════════════════════════ */
.sg-wm-stag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.sg-wm-stag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }

.sg-wm-h2 {
  font-family: var(--serif);
  font-size: clamp(1.8rem, 3.5vw, 2.6rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1rem;
}
.sg-wm-h2 em { font-style: italic; color: var(--wine); }

.sg-wm-btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--wine) !important; border: 1.5px solid var(--wine);
  border-radius: 4px; padding: .62rem 1.4rem;
  transition: background .2s, color .2s;
}
.sg-wm-btn-outline:hover { background: var(--wine); color: #fff !important; }

/* ══ PAGE HERO / MASTHEAD ═══════════════════════════════ */
.sg-wm-masthead {
  position: relative;
  background: var(--ink);
  padding: 72px 0 52px;
  overflow: hidden;
}
.sg-wm-masthead-bg {
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1529070538774-1843cb3265df?w=1600&q=80') center/cover no-repeat;
  opacity: .14;
}
.sg-wm-masthead-veil {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(92,21,25,.93) 0%, rgba(23,14,8,.78) 100%);
}
.sg-wm-masthead-watermark {
  position: absolute; right: 3%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(38vw, 26rem);
  color: rgba(255,255,255,.04); line-height: 1;
  pointer-events: none; user-select: none;
}
.sg-wm-masthead-body { position: relative; z-index: 2; }

/* Topline meta strip */
.sg-wm-masthead-meta {
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 8px;
  border-bottom: 1px solid rgba(201,145,58,.2);
  padding-bottom: 14px; margin-bottom: 32px;
}
.sg-wm-masthead-parish {
  font-family: var(--sans); font-size: .66rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(230,185,106,.7);
}
.sg-wm-masthead-date {
  font-family: var(--sans); font-size: .66rem;
  color: rgba(230,185,106,.7); letter-spacing: .06em;
}

/* Kicker + title */
.sg-wm-masthead-kicker {
  font-family: var(--sans); font-size: .66rem; font-weight: 700;
  letter-spacing: .26em; text-transform: uppercase;
  color: var(--amber); margin-bottom: 1rem;
}
.sg-wm-masthead-title {
  font-family: var(--serif);
  font-size: clamp(2.8rem, 7vw, 5rem);
  font-weight: 700; color: #fff; line-height: 1;
  letter-spacing: -.01em; margin-bottom: .8rem;
}
.sg-wm-masthead-title em { font-style: italic; color: var(--amber-lt); }
.sg-wm-masthead-sub {
  font-family: var(--sans); font-size: .88rem; font-weight: 300;
  color: rgba(255,255,255,.65); letter-spacing: .04em;
}
.sg-wm-masthead-rule {
  width: 100%; height: 1px;
  background: linear-gradient(90deg, transparent, var(--amber) 30%, var(--amber) 70%, transparent);
  margin-top: 28px; opacity: .4;
}

/* ══ ISSUE STRIP ════════════════════════════════════════ */
.sg-wm-issue-strip {
  background: var(--parch);
  border-bottom: 2px solid var(--mist);
  padding: 14px 0;
}
.sg-wm-issue-strip-inner {
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 12px;
}
.sg-wm-issue-label {
  font-family: var(--sans); font-size: .65rem; font-weight: 700;
  letter-spacing: .2em; text-transform: uppercase; color: var(--amber);
  margin-bottom: 3px;
}
.sg-wm-issue-heading {
  font-family: var(--serif); font-size: 1.25rem; font-weight: 600;
  color: var(--ink); line-height: 1.15;
}
.sg-wm-issue-sunday {
  font-family: var(--serif); font-style: italic; font-size: .9rem;
  color: var(--stone); margin-bottom: 8px;
}
.sg-wm-pdf-btn {
  display: inline-flex; align-items: center; gap: 6px;
  font-family: var(--sans); font-size: .7rem; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  color: #fff !important; background: var(--wine);
  padding: .5rem 1.1rem; border-radius: 4px;
  transition: background .2s;
  text-decoration: none;
}
.sg-wm-pdf-btn:hover { background: var(--wine-d); color: #fff !important; }

/* ══ LAYOUT ═════════════════════════════════════════════ */
.sg-wm-page {
  max-width: 1060px;
  margin: 0 auto;
  padding: 0 24px 80px;
}
.sg-wm-body {
  display: grid;
  grid-template-columns: 1fr 310px;
  gap: 48px;
  padding-top: 40px;
}
@media (max-width: 768px) {
  .sg-wm-body { grid-template-columns: 1fr; }
}

/* ══ SCRIPTURE BOX ══════════════════════════════════════ */
.sg-wm-scripture {
  background: var(--parch);
  border-left: 3px solid var(--amber);
  padding: 18px 22px;
  margin-bottom: 28px;
  border-radius: 0 8px 8px 0;
}
.sg-wm-scripture-label {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase;
  color: var(--amber); margin-bottom: 10px;
}
.sg-wm-scripture-row {
  font-family: var(--sans); font-size: .88rem; color: #5a4a3a; line-height: 1.7;
}
.sg-wm-scripture-row strong {
  font-family: var(--sans); font-size: .72rem; font-weight: 700;
  color: var(--wine); display: inline-block; min-width: 28px;
}

/* ══ GOSPEL ═════════════════════════════════════════════ */
.sg-wm-section-heading {
  font-family: var(--serif); font-size: 1.4rem; font-weight: 600;
  color: var(--ink); margin: 28px 0 12px;
  border-bottom: 1px solid var(--mist);
  padding-bottom: 8px;
}
.sg-wm-gospel-text {
  font-family: var(--sans); font-size: .93rem; line-height: 1.85; color: #2a2010;
}
.sg-wm-gospel-text p { margin-bottom: 12px; }
.sg-wm-verse-num {
  font-family: var(--sans); font-size: .58rem; font-weight: 700;
  vertical-align: super; color: var(--amber);
  margin-right: 2px;
}
.sg-wm-gospel-subhead {
  font-family: var(--serif); font-style: italic; font-size: 1rem;
  color: var(--wine); margin: 18px 0 8px;
}

/* ══ REFLECTION ═════════════════════════════════════════ */
.sg-wm-reflection { font-family: var(--sans); font-size: .95rem; line-height: 1.85; }
.sg-wm-reflection p { margin-bottom: 14px; color: var(--ink); }
.sg-wm-reflection p:first-of-type::first-letter {
  font-family: var(--serif); font-size: 3.4rem; font-weight: 700;
  color: var(--wine); float: left; line-height: .78;
  margin: 6px 8px 0 0;
}

/* ══ PASTORAL BOXES ═════════════════════════════════════ */
.sg-wm-pastoral {
  margin-top: 28px;
  border-left: 3px solid var(--stone);
  padding: 16px 20px;
  background: var(--cream);
  border-radius: 0 8px 8px 0;
}
.sg-wm-pastoral.amber { border-color: var(--amber); }
.sg-wm-pastoral-label {
  font-family: var(--sans); font-size: .6rem; font-weight: 700;
  letter-spacing: .2em; text-transform: uppercase;
  color: var(--stone); margin-bottom: 10px;
}
.sg-wm-pastoral.amber .sg-wm-pastoral-label { color: var(--amber); }
.sg-wm-pastoral p { font-family: var(--sans); font-size: .88rem; color: var(--ink); line-height: 1.75; margin-bottom: 10px; }
.sg-wm-pastoral p:last-child { margin-bottom: 0; }

/* ══ DIVIDER ════════════════════════════════════════════ */
.sg-wm-divider {
  display: flex; align-items: center; gap: 12px;
  margin: 32px 0;
}
.sg-wm-divider::before, .sg-wm-divider::after {
  content: ''; flex: 1; height: 1px; background: var(--mist);
}
.sg-wm-divider-icon {
  font-family: var(--sans); font-size: .65rem; color: var(--amber);
  letter-spacing: .2em;
}

/* ══ EVENTS ═════════════════════════════════════════════ */
.sg-wm-events {
  margin-top: 36px;
  border-top: 2px solid var(--ink);
  padding-top: 28px;
}
.sg-wm-events-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1px; background: var(--mist);
  border-radius: 8px; overflow: hidden;
}
.sg-wm-event-card {
  background: var(--paper); padding: 1.4rem 1.5rem;
  border-top: 3px solid var(--wine);
  transition: background .2s, border-color .2s;
}
.sg-wm-event-card:hover { background: var(--parch); border-color: var(--amber); }
.sg-wm-event-date {
  font-family: var(--sans); font-size: .62rem; font-weight: 600;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--amber); margin-bottom: 5px;
}
.sg-wm-event-title {
  font-family: var(--serif); font-size: 1.05rem; font-weight: 600;
  color: var(--ink); margin-bottom: 5px;
}
.sg-wm-event-desc { font-family: var(--sans); font-size: .83rem; color: #5a4a3a; line-height: 1.6; }

/* ══ NOTICES ════════════════════════════════════════════ */
.sg-wm-notices {
  margin-top: 32px;
  background: var(--cream);
  border: 1px solid var(--mist);
  border-radius: 8px; padding: 22px 24px;
}
.sg-wm-notices-heading {
  font-family: var(--serif); font-size: 1.1rem; font-weight: 600;
  color: var(--ink); margin-bottom: 14px;
  border-bottom: 1px solid var(--mist); padding-bottom: 8px;
}
.sg-wm-notice-item {
  font-family: var(--sans); font-size: .86rem; color: var(--ink);
  padding: 7px 0; border-bottom: 1px dashed var(--mist); line-height: 1.6;
}
.sg-wm-notice-item:last-child { border-bottom: none; }
.sg-wm-notice-item::before { content: '→ '; color: var(--wine); font-weight: 700; }

/* ══ NEXT WEEK ══════════════════════════════════════════ */
.sg-wm-nextweek {
  background: var(--wine); color: var(--paper);
  padding: 22px 26px; margin-top: 32px;
  border-radius: 8px;
}
.sg-wm-nextweek-label {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase;
  color: var(--amber); margin-bottom: 8px;
}
.sg-wm-nextweek-heading {
  font-family: var(--serif); font-size: 1.1rem; font-weight: 600;
  color: #fff; margin-bottom: 10px;
}
.sg-wm-nextweek-readings {
  font-family: var(--sans); font-size: .85rem;
  color: rgba(255,253,248,.7); line-height: 1.75;
}

/* ══ SIDEBAR ════════════════════════════════════════════ */
.sg-wm-sidebar-card {
  background: var(--wine);
  color: var(--paper);
  padding: 20px 20px;
  margin-bottom: 20px;
  border-radius: 8px;
}
.sg-wm-sidebar-card-label {
  font-family: var(--sans); font-size: .58rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase;
  color: var(--amber); margin-bottom: 14px;
  border-bottom: 1px solid rgba(201,145,58,.25);
  padding-bottom: 8px;
}
.sg-wm-sidebar-item {
  border-bottom: 1px solid rgba(255,255,255,.07);
  padding: 10px 0; font-size: .86rem; line-height: 1.55;
}
.sg-wm-sidebar-item:last-child { border-bottom: none; }
.sg-wm-sidebar-item strong {
  display: block; font-family: var(--sans); font-size: .6rem; font-weight: 700;
  color: var(--amber-lt); margin-bottom: 3px; letter-spacing: .05em;
}
.sg-wm-sidebar-item p { color: rgba(255,253,248,.75); font-size: .84rem; }

/* Vicar card */
.sg-wm-vicar-card {
  background: var(--parch);
  border: 1px solid var(--mist);
  border-left: 3px solid var(--amber);
  padding: 18px 20px; margin-bottom: 20px;
  border-radius: 0 8px 8px 0;
}
.sg-wm-vicar-title {
  font-family: var(--sans); font-size: .6rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--amber); margin-bottom: 4px;
}
.sg-wm-vicar-name {
  font-family: var(--serif); font-size: 1.15rem; font-weight: 600;
  color: var(--ink); margin-bottom: 10px;
}
.sg-wm-vicar-card a {
  display: block; font-family: var(--sans); font-size: .83rem;
  color: var(--stone); margin-bottom: 3px;
}
.sg-wm-vicar-card a:hover { color: var(--wine); }

/* ══ ARCHIVE ════════════════════════════════════════════ */
.sg-wm-archive {
  margin-top: 64px;
  border-top: 3px double var(--ink);
  padding-top: 48px;
}
.sg-wm-archive h2 {
  font-family: var(--serif); font-size: 2rem; font-weight: 700;
  color: var(--ink); margin-bottom: 6px;
}
.sg-wm-archive-sub {
  font-family: var(--sans); font-size: .88rem; font-style: italic;
  color: var(--stone); margin-bottom: 32px;
}
.sg-wm-archive-year {
  margin-bottom: 6px;
  border: 1px solid var(--mist);
  border-radius: 6px; overflow: hidden;
}
.sg-wm-archive-year-btn {
  width: 100%; background: var(--parch); border: none;
  padding: 13px 18px;
  display: flex; align-items: center; justify-content: space-between;
  cursor: pointer; transition: background .2s; text-align: left;
}
.sg-wm-archive-year-btn:hover { background: var(--wine); }
.sg-wm-archive-year-btn:hover .sg-wm-archive-year-label,
.sg-wm-archive-year-btn:hover .sg-wm-archive-year-count,
.sg-wm-archive-year-btn:hover .sg-wm-archive-chevron { color: var(--amber-lt); }
.sg-wm-archive-year-label {
  font-family: var(--serif); font-size: 1.08rem; font-weight: 600;
  color: var(--ink); transition: color .2s;
}
.sg-wm-archive-year-right { display: flex; align-items: center; gap: 14px; }
.sg-wm-archive-year-count {
  font-family: var(--sans); font-size: .62rem; color: var(--stone); transition: color .2s;
}
.sg-wm-archive-chevron { color: var(--amber); font-size: .8rem; transition: transform .3s, color .2s; }
.sg-wm-archive-year.open .sg-wm-archive-chevron { transform: rotate(180deg); }
.sg-wm-archive-links {
  display: none; flex-wrap: wrap; gap: 6px;
  padding: 14px 18px 18px; background: var(--paper);
  border-top: 1px solid var(--mist);
}
.sg-wm-archive-year.open .sg-wm-archive-links { display: flex; }
.sg-wm-archive-link {
  font-family: var(--sans); font-size: .62rem; font-weight: 500;
  letter-spacing: .04em; color: var(--wine);
  background: var(--cream); border: 1px solid var(--mist);
  padding: 5px 11px; border-radius: 3px;
  transition: background .18s, color .18s, border-color .18s;
  text-decoration: none;
}
.sg-wm-archive-link:hover { background: var(--wine) !important; color: var(--amber-lt) !important; border-color: var(--wine) !important; }

/* ══ REVEAL ══════════════════════════════════════════════ */
.sg-wm-page-wrapper .reveal { opacity: 0; transform: translateY(22px); transition: opacity .65s ease, transform .65s ease; }
.sg-wm-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-wm-page-wrapper .d1 { transition-delay: .1s; }
.sg-wm-page-wrapper .d2 { transition-delay: .2s; }








/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* ═════════════════════════════════════════════ Urava Page styles ═══════════════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Cinzel:wght@400;600;700&family=Crimson+Pro:ital,wght@0,300;0,400;1,300&display=swap');

/* ══ SGOCT Urava Journal Page Styles ════════════════════════════════════ */

.sg-ur-page-wrapper {
  /* Design Tokens */
  --sg-ur-maroon:     #5c1a1a;
  --sg-ur-maroon-mid: #7a2828;
  --sg-ur-gold:       #c9993c;
  --sg-ur-gold-light: #e8c882;
  --sg-ur-cream:      #faf6ee;
  --sg-ur-parchment:  #f0e8d6;
  --sg-ur-ink:        #1e1008;
  --sg-ur-muted:      #7a6a55;
  --sg-ur-rule:       #c9993c55;

  background-color: var(--sg-ur-cream);
  color: var(--sg-ur-ink);
  font-family: 'Crimson Pro', Georgia, serif;
  font-size: 18px;
  line-height: 1.7;
  overflow-x: hidden;
  padding-bottom: 20px; /* Slight padding to avoid cutting off at bottom */
}

.sg-ur-page-wrapper *,
.sg-ur-page-wrapper *::before,
.sg-ur-page-wrapper *::after {
  box-sizing: border-box;
}

/* ─── FEATURED: LATEST ISSUE ─── */
.sg-ur-featured {
  max-width: 980px;
  margin: 56px auto 0;
  padding: 0 24px;
  animation: sg-ur-fadeUp 0.8s 0.3s ease both;
}

.sg-ur-featured-inner {
  background: var(--sg-ur-maroon);
  display: grid;
  grid-template-columns: 1fr 1.8fr;
  overflow: hidden;
  border: 1px solid rgba(201,153,60,0.35);
}

.sg-ur-featured-img-col {
  position: relative;
  overflow: hidden;
  min-height: 320px;
}

.sg-ur-featured-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0.7;
  transition: transform 0.6s ease;
}

.sg-ur-featured:hover .sg-ur-featured-img { transform: scale(1.04); }

.sg-ur-featured-text-col {
  padding: 44px 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.sg-ur-featured-eyebrow {
  font-family: 'Cinzel', serif;
  font-size: 0.6rem;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--sg-ur-gold);
  margin-bottom: 14px;
}

.sg-ur-featured-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 2.6rem;
  font-weight: 300;
  color: var(--sg-ur-cream);
  line-height: 1.1;
  margin-bottom: 14px;
  margin-top: 0;
}

.sg-ur-featured-desc {
  color: rgba(240,232,214,0.7);
  font-size: 1rem;
  font-style: italic;
  margin-bottom: 28px;
  line-height: 1.65;
}

.sg-ur-featured-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Cinzel', serif;
  font-size: 0.62rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--sg-ur-maroon);
  background: var(--sg-ur-gold);
  text-decoration: none;
  padding: 13px 26px;
  align-self: flex-start;
  border: 1px solid var(--sg-ur-gold);
  transition: background 0.25s, color 0.25s;
}

.sg-ur-featured-btn:hover {
  background: transparent;
  color: var(--sg-ur-gold-light);
}

/* ─── INTRO ─── */
.sg-ur-intro {
  max-width: 680px;
  margin: 64px auto 0;
  padding: 0 24px;
  text-align: center;
  animation: sg-ur-fadeUp 0.9s 0.5s ease both;
}

.sg-ur-intro-heading {
  font-family: 'Cormorant Garamond', serif;
  font-size: 2rem;
  font-weight: 400;
  color: var(--sg-ur-maroon);
  margin-bottom: 16px;
  margin-top: 0;
}

.sg-ur-intro-heading em { font-style: italic; color: var(--sg-ur-gold); }

.sg-ur-intro-body {
  color: var(--sg-ur-muted);
  font-size: 1.05rem;
  font-style: italic;
}

.sg-ur-divider {
  width: 80px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--sg-ur-gold), transparent);
  margin: 28px auto;
}

/* ─── GRID ─── */
.sg-ur-grid-section {
  max-width: 980px;
  margin: 0 auto;
  padding: 0 24px 80px;
}

.sg-ur-section-label {
  font-family: 'Cinzel', serif;
  font-size: 0.65rem;
  letter-spacing: 0.35em;
  text-transform: uppercase;
  color: var(--sg-ur-gold);
  text-align: center;
  margin-bottom: 36px;
}

.sg-ur-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 32px;
}

/* ─── CARD ─── */
.sg-ur-card {
  background: var(--sg-ur-parchment);
  border: 1px solid var(--sg-ur-rule);
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: transform 0.35s cubic-bezier(.22,.68,0,1.2), box-shadow 0.35s ease;
  animation: sg-ur-fadeUp 0.7s ease both;
}

.sg-ur-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 48px rgba(92,26,26,0.18), 0 4px 12px rgba(201,153,60,0.1);
}

.sg-ur-card:nth-child(1) { animation-delay: 0.1s; }
.sg-ur-card:nth-child(2) { animation-delay: 0.18s; }
.sg-ur-card:nth-child(3) { animation-delay: 0.26s; }
.sg-ur-card:nth-child(4) { animation-delay: 0.34s; }
.sg-ur-card:nth-child(5) { animation-delay: 0.42s; }
.sg-ur-card:nth-child(6) { animation-delay: 0.50s; }

.sg-ur-card-badge {
  position: absolute;
  top: 12px; right: 12px;
  background: var(--sg-ur-maroon);
  color: var(--sg-ur-gold-light);
  font-family: 'Cinzel', serif;
  font-size: 0.55rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  padding: 4px 9px;
  border: 1px solid rgba(201,153,60,0.4);
  z-index: 2;
}

.sg-ur-card-cover-wrap {
  position: relative;
  background: var(--sg-ur-maroon);
  overflow: hidden;
  aspect-ratio: 3 / 4;
}

.sg-ur-card-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease, opacity 0.3s;
  opacity: 0.92;
}

.sg-ur-card:hover .sg-ur-card-cover {
  transform: scale(1.04);
  opacity: 1;
}

.sg-ur-card-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(92,26,26,0.82) 0%, transparent 55%);
  display: flex;
  align-items: flex-end;
  padding: 18px;
  opacity: 0;
  transition: opacity 0.35s ease;
}

.sg-ur-card:hover .sg-ur-card-overlay { opacity: 1; }

.sg-ur-card-overlay-link {
  font-family: 'Cinzel', serif;
  font-size: 0.65rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--sg-ur-gold-light);
  text-decoration: none;
  border: 1px solid var(--sg-ur-gold);
  padding: 8px 16px;
  transition: background 0.2s, color 0.2s;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.sg-ur-card-overlay-link:hover {
  background: var(--sg-ur-gold);
  color: var(--sg-ur-maroon);
}

.sg-ur-card-body {
  padding: 20px 20px 22px;
  border-top: 1px solid var(--sg-ur-rule);
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.sg-ur-card-vol {
  font-family: 'Cinzel', serif;
  font-size: 0.62rem;
  letter-spacing: 0.22em;
  color: var(--sg-ur-gold);
  text-transform: uppercase;
}

.sg-ur-card-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.45rem;
  font-weight: 400;
  color: var(--sg-ur-maroon);
  line-height: 1.2;
  margin: 0;
}

.sg-ur-card-date {
  font-size: 0.82rem;
  color: var(--sg-ur-muted);
  font-style: italic;
  margin: 0;
}

.sg-ur-card-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 10px;
  font-family: 'Cinzel', serif;
  font-size: 0.6rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--sg-ur-maroon);
  text-decoration: none;
  border-bottom: 1px solid var(--sg-ur-gold);
  padding-bottom: 2px;
  transition: color 0.2s, border-color 0.2s;
  align-self: flex-start;
}

.sg-ur-card-link:hover { color: var(--sg-ur-gold); border-color: var(--sg-ur-gold); }

/* ─── KEYFRAMES ─── */
@keyframes sg-ur-fadeUp {
  from { opacity: 0; transform: translateY(22px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ─── RESPONSIVE ─── */
@media (max-width: 640px) {
  .sg-ur-featured-inner { grid-template-columns: 1fr; }
  .sg-ur-featured-img-col { min-height: 220px; }
  .sg-ur-featured-text-col { padding: 28px 22px; }
  .sg-ur-featured-title { font-size: 2rem; }
  .sg-ur-grid { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 20px; }
}





/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* ═════════════════════════════════════════════ Choir Page styles ═══════════════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Choir Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-ch-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-ch-page-wrapper *,
.sg-ch-page-wrapper *::before,
.sg-ch-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-ch-page-wrapper h1, 
.sg-ch-page-wrapper h2, 
.sg-ch-page-wrapper h3, 
.sg-ch-page-wrapper h4, 
.sg-ch-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-ch-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-ch-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-ch-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

/* 2. Specific Page Components */

/* ══ SHARED TOKENS ══════════════════════════════════════ */
.sg-ch-s-tag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.sg-ch-s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }

.sg-ch-s-h2 {
  font-family: var(--serif);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.2rem;
}
.sg-ch-s-h2 em { font-style: italic; color: var(--wine); }

.sg-ch-btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--wine) !important; border: 1.5px solid var(--wine);
  border-radius: 4px; padding: .62rem 1.4rem;
  transition: background .2s, color .2s;
}
.sg-ch-btn-outline:hover { background: var(--wine); color: #fff !important; }
.sg-ch-btn-outline i { font-size: .72rem; transition: transform .2s; }
.sg-ch-btn-outline:hover i { transform: translateX(4px); }

/* ══ PAGE HERO ══════════════════════════════════════════ */
.sg-ch-page-hero {
  position: relative;
  background: var(--ink);
  padding: 80px 0 60px;
  overflow: hidden;
}
.sg-ch-page-hero-bg {
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1519748763510-9890489190b8?w=1600&q=80') center/cover no-repeat;
  opacity: .18;
}
.sg-ch-page-hero-veil {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(92,21,25,.92) 0%, rgba(23,14,8,.75) 100%);
}
.sg-ch-page-hero-watermark {
  position: absolute; right: 2%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(40vw, 28rem);
  color: rgba(255,255,255,.04); line-height: 1;
  pointer-events: none; user-select: none;
}
.sg-ch-page-hero-body { position: relative; z-index: 2; }
.sg-ch-page-breadcrumb {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.5); margin-bottom: 1.4rem;
}
.sg-ch-page-breadcrumb a { color: var(--amber-lt); }
.sg-ch-page-breadcrumb a:hover { color: #fff; }
.sg-ch-page-breadcrumb i { font-size: .6rem; }
.sg-ch-page-title {
  font-family: var(--serif);
  font-size: clamp(2.4rem, 5.5vw, 4.2rem);
  font-weight: 600; color: #fff; line-height: 1.1;
  margin-bottom: 1rem; letter-spacing: -.01em;
}
.sg-ch-page-title em { font-style: italic; color: var(--amber-lt); }
.sg-ch-page-lead {
  font-family: var(--sans); font-size: .97rem; font-weight: 300;
  color: rgba(255,255,255,.72); max-width: 560px; line-height: 1.75;
}

/* Hero stats strip */
.sg-ch-hero-strip {
  position: relative; z-index: 2;
  display: flex; flex-wrap: wrap; gap: 0;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(255,255,255,.1);
  margin-top: 52px;
}
.sg-ch-hs-item {
  flex: 1 1 160px; padding: 1.2rem 2rem;
  border-right: 1px solid rgba(255,255,255,.08);
  text-align: center;
}
.sg-ch-hs-item:last-child { border-right: none; }
.sg-ch-hs-val { font-family: var(--serif); font-size: 2rem; font-weight: 700; color: #fff; line-height: 1; }
.sg-ch-hs-lbl { font-family: var(--sans); font-size: .63rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,255,255,.45); margin-top: 4px; }
@media (max-width: 576px) { .sg-ch-hs-item { flex-basis: 50%; } }

/* ══ ABOUT SECTION ══════════════════════════════════════ */
.sg-ch-sec-about { padding: 90px 0 70px; background: var(--paper); }

.sg-ch-intro-text-body {
  font-family: var(--sans); font-size: .97rem; color: #5a4a3a; line-height: 1.85;
  max-width: 680px;
}
.sg-ch-intro-accent-box {
  background: var(--parch);
  border-left: 3px solid var(--amber);
  padding: 1.2rem 1.5rem; border-radius: 0 8px 8px 0;
  margin-top: 2rem;
}
.sg-ch-intro-accent-box p { font-family: var(--sans); font-size: .88rem; color: #5a4a3a; line-height: 1.8; margin: 0; }
.sg-ch-intro-accent-box strong { color: var(--wine); }

.sg-ch-style-trio {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px; background: var(--mist);
  border-radius: 12px; overflow: hidden;
  margin-top: 2.5rem;
}
@media (max-width: 900px) { .sg-ch-style-trio { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 576px) { .sg-ch-style-trio { grid-template-columns: 1fr; } }
.sg-ch-style-card {
  background: var(--paper);
  padding: 2rem 1.6rem;
  text-align: center;
  transition: background .25s;
  position: relative; overflow: hidden;
}
.sg-ch-style-card:hover { background: var(--parch); }
.sg-ch-style-card::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--wine), var(--amber));
}
.sg-ch-style-icon {
  width: 60px; height: 60px; border-radius: 50%;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.5rem; margin: 0 auto 1rem;
}
.sg-ch-style-word {
  font-family: var(--serif); font-size: 1.3rem; font-weight: 700;
  color: var(--wine); letter-spacing: .02em; margin-bottom: .4rem;
}
.sg-ch-style-desc {
  font-family: var(--sans); font-size: .83rem; color: #5a4a3a; line-height: 1.75;
}

/* ══ YEAR TABS / OFFICE BEARERS ═════════════════════════ */
.sg-ch-sec-bearers { padding: 80px 0 90px; background: var(--cream); }
.sg-ch-year-tabs {
  display: flex; flex-wrap: wrap; gap: .5rem;
  margin-bottom: 2.5rem;
}
.sg-ch-yr-btn {
  font-family: var(--sans); font-size: .75rem; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  padding: .45rem 1.1rem; border-radius: 4px;
  border: 1.5px solid var(--mist);
  background: transparent; color: var(--stone);
  cursor: pointer; transition: all .2s;
}
.sg-ch-yr-btn:hover { border-color: var(--wine); color: var(--wine); }
.sg-ch-yr-btn.sg-ch-active { background: var(--wine); border-color: var(--wine); color: #fff; }
.sg-ch-year-panel { display: none; }
.sg-ch-year-panel.sg-ch-active { display: block; }

/* Bearers grid */
.sg-ch-bearers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1px; background: var(--mist);
  border-radius: 8px; overflow: hidden;
}
.sg-ch-bc-card {
  background: var(--paper); padding: 1.5rem 1.4rem;
  transition: background .2s;
}
.sg-ch-bc-card:hover { background: var(--parch); }
.sg-ch-bc-card.sg-ch-lead { background: var(--wine); }
.sg-ch-bc-card.sg-ch-lead:hover { background: var(--wine-d); }
.sg-ch-bc-role {
  font-family: var(--sans); font-size: .58rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--amber); margin-bottom: .4rem;
}
.sg-ch-bc-card.sg-ch-lead .sg-ch-bc-role { color: var(--amber-lt); }
.sg-ch-bc-name {
  font-family: var(--serif); font-size: 1.08rem; font-weight: 600;
  color: var(--ink); line-height: 1.25; margin-bottom: .3rem;
}
.sg-ch-bc-card.sg-ch-lead .sg-ch-bc-name { color: #fff; }
.sg-ch-bc-avatar {
  width: 44px; height: 44px; border-radius: 50%;
  background: var(--parch); border: 2px solid var(--mist);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem; color: var(--stone); margin-bottom: .9rem;
}
.sg-ch-bc-card.sg-ch-lead .sg-ch-bc-avatar { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.2); color: rgba(255,255,255,.75); }

/* ══ PERFORMANCES / EVENTS ══════════════════════════════ */
.sg-ch-sec-events { padding: 80px 0; background: var(--paper); }
.sg-ch-ev-list { display: flex; flex-direction: column; gap: 1.5rem; }
.sg-ch-ev-card {
  display: flex; gap: 1.5rem; align-items: flex-start;
  background: var(--paper); border: 1px solid var(--mist);
  border-radius: 10px; padding: 1.75rem;
  box-shadow: 0 2px 14px rgba(23,14,8,.04);
  transition: box-shadow .25s, transform .25s;
  position: relative; overflow: hidden;
}
.sg-ch-ev-card::before {
  content: ''; position: absolute; top: 0; left: 0;
  bottom: 0; width: 3px;
  background: linear-gradient(180deg, var(--wine), var(--amber));
}
.sg-ch-ev-card:hover { box-shadow: 0 8px 32px rgba(23,14,8,.09); transform: translateY(-2px); }
.sg-ch-ev-year-badge {
  flex-shrink: 0;
  background: var(--parch); border: 1px solid var(--mist);
  border-radius: 6px; padding: .7rem 1rem;
  text-align: center; min-width: 70px;
}
.sg-ch-ev-year-num { font-family: var(--serif); font-size: 1.4rem; font-weight: 700; color: var(--wine); line-height: 1; }
.sg-ch-ev-year-lbl { font-family: var(--sans); font-size: .55rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--stone); margin-top: 3px; }
.sg-ch-ev-title { font-family: var(--serif); font-size: 1.15rem; font-weight: 600; color: var(--ink); line-height: 1.3; margin-bottom: .4rem; }
.sg-ch-ev-body { font-family: var(--sans); font-size: .86rem; color: #5a4a3a; line-height: 1.8; }
.sg-ch-ev-tag {
  display: inline-flex; align-items: center; gap: 5px;
  margin-top: .75rem; font-family: var(--sans); font-size: .65rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--wine); background: var(--parch);
  padding: .2rem .6rem; border-radius: 3px;
}
@media (max-width: 576px) {
  .sg-ch-ev-card { flex-direction: column; gap: 1rem; }
  .sg-ch-ev-year-badge { align-self: flex-start; }
}

/* ══ VIDEO GRID ═════════════════════════════════════════ */
.sg-ch-video-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 1.2rem;
  margin-top: 1.5rem;
}
.sg-ch-video-card {
  background: var(--paper);
  border: 1px solid var(--mist);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(23,14,8,.05);
}
.sg-ch-video-card video,
.sg-ch-video-card iframe {
  width: 100%; display: block;
  aspect-ratio: 16/9; border: none;
  background: #000;
}
.sg-ch-video-label {
  font-family: var(--sans); font-size: .8rem; font-weight: 600;
  color: #5a4a3a; padding: .75rem 1rem;
  border-top: 1px solid var(--mist);
}

/* ══ VERSE FEATURE ══════════════════════════════════════ */
.sg-ch-sec-verse {
  background: var(--wine);
  padding: 64px 0;
}
.sg-ch-feat-verse {
  font-family: var(--serif); font-style: italic;
  font-size: clamp(1.35rem, 3vw, 2rem);
  color: rgba(255,255,255,.9); line-height: 1.55;
  text-align: center; max-width: 780px; margin: 0 auto .8rem;
}
.sg-ch-feat-ref {
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .18em; text-transform: uppercase;
  color: var(--amber-lt); text-align: center;
}

/* ══ JOIN CTA ═══════════════════════════════════════════ */
.sg-ch-sec-join {
  padding: 70px 0;
  background: var(--ink);
  position: relative; overflow: hidden;
}
.sg-ch-sec-join::before {
  content: '';
  position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1519748763510-9890489190b8?w=1200&q=60') center/cover no-repeat;
  opacity: .07;
}
.sg-ch-join-inner { position: relative; z-index: 1; text-align: center; }
.sg-ch-join-pre {
  font-family: var(--sans); font-size: .7rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase;
  color: var(--amber); margin-bottom: 1rem;
}
.sg-ch-join-h { font-family: var(--serif); font-size: clamp(1.8rem, 4vw, 2.8rem); font-weight: 600; color: #fff; line-height: 1.2; margin-bottom: 1rem; }
.sg-ch-join-h em { font-style: italic; color: var(--amber-lt); }
.sg-ch-join-body { font-family: var(--sans); font-size: .93rem; color: rgba(255,255,255,.7); max-width: 560px; margin: 0 auto 2rem; line-height: 1.8; }
.sg-ch-btn-amber {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--ink); background: var(--amber);
  border-radius: 4px; padding: .7rem 1.6rem;
  transition: background .2s, color .2s;
  text-decoration: none;
}
.sg-ch-btn-amber:hover { background: var(--amber-lt); color: var(--ink); }

/* ══ USEFUL LINKS ════════════════════════════════════════ */
.sg-ch-sec-links { padding: 80px 0; background: var(--cream); }
.sg-ch-link-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1px; background: var(--mist);
  border-radius: 10px; overflow: hidden;
}
.sg-ch-lc {
  display: flex; align-items: center; gap: 1.1rem;
  background: var(--paper); padding: 1.4rem 1.5rem;
  color: var(--ink); transition: background .2s;
  text-decoration: none;
}
.sg-ch-lc:hover { background: var(--parch); color: var(--ink); }
.sg-ch-lc-ico {
  width: 42px; height: 42px; border-radius: 8px;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.1rem; flex-shrink: 0;
}
.sg-ch-lc-label { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); line-height: 1.3; }
.sg-ch-lc-hint { font-family: var(--sans); font-size: .75rem; color: var(--stone); margin-top: 2px; }

/* ══ REVEAL ══════════════════════════════════════════════ */
.sg-ch-page-wrapper .reveal { opacity: 0; transform: translateY(22px); transition: opacity .65s ease, transform .65s ease; }
.sg-ch-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-ch-page-wrapper .d1 { transition-delay: .1s; } 
.sg-ch-page-wrapper .d2 { transition-delay: .2s; }
.sg-ch-page-wrapper .d3 { transition-delay: .3s; }
.sg-ch-page-wrapper .d4 { transition-delay: .4s; }




















/* ═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* ═════════════════════════════════════════════ Home slider Page styles ═══════════════════════════════════════════════ */
/* ═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Homepage Styles ════════════════════════════════════ */

.sgoc-home-slider-row > .vc_column_container > .vc_column-inner {
  padding-top: 0 !important;
}


.sg-hp-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;

  font-family: var(--sans);
  color: var(--ink);
  background: var(--paper);
  font-size: 16px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}

.sg-hp-page-wrapper *,
.sg-hp-page-wrapper *::before,
.sg-hp-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-hp-page-wrapper h1, 
.sg-hp-page-wrapper h2, 
.sg-hp-page-wrapper h3, 
.sg-hp-page-wrapper h4, 
.sg-hp-page-wrapper h5 { 
  font-family: var(--serif);
}

.sg-hp-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}
.sg-hp-page-wrapper a:hover { 
  color: var(--wine-d); 
}
.sg-hp-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}

.sg-hp-slider-block,
.sg-hp-slider-block .sg-hp-hero,
.sg-hp-page-wrapper > .sg-hp-hero:first-child,
.sg-hp-slider-host {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Keep WPBakery wrappers from adding a blank band above/below the homepage slider. */
.vc_row:has(.sg-hp-hero),
.wpb_content_element:has(.sg-hp-hero),
.wpb_wrapper:has(> .sg-hp-page-wrapper) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.site-nav + .sg-hp-page-wrapper,
.site-nav + .vc_row:has(.sg-hp-hero),
.site-nav + .wpb-content-wrapper:has(.sg-hp-hero),
.wpb-content-wrapper:has(.sg-hp-hero) > :first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* ══ HERO SLIDER ════════════════════════════════════════ */
.sg-hp-hero {
  position: relative; height: 92vh; min-height: 560px;
  overflow: hidden; background: var(--ink);
}
.sg-hp-slider-track {
  position: absolute; inset: 0;
  display: flex; width: 100%; height: 100%;
  transition: none;
}
.sg-hp-slider-slide {
  position: absolute; inset: 0;
  opacity: 0;
  transition: opacity 1.2s ease;
  z-index: 0;
}
.sg-hp-slider-slide.sg-hp-active { opacity: 1; z-index: 1; }
.sg-hp-slider-slide.sg-hp-prev   { opacity: 0; z-index: 0; }

.sg-hp-slide-bg {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  transform: scale(1.06);
  transition: transform 8s ease;
}
.sg-hp-slider-slide.sg-hp-active .sg-hp-slide-bg { transform: scale(1); }

.sg-hp-hero-veil {
  position: absolute; inset: 0; z-index: 2;
  background: linear-gradient(135deg, rgba(23,14,8,.84) 0%, rgba(92,21,25,.6) 55%, rgba(23,14,8,.35) 100%);
}

.sg-hp-slide-caption {
  position: absolute; inset: 0; z-index: 3;
  display: flex; align-items: flex-end;
  padding-bottom: min(9vh, 88px);
  opacity: 0;
  transition: opacity 1s ease .2s;
}
.sg-hp-slider-slide.sg-hp-active .sg-hp-slide-caption { opacity: 1; }

.sg-hp-hero-watermark {
  position: absolute; right: 4%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(45vw, 44rem);
  color: rgba(255,255,255,.038); line-height: 1; z-index: 2;
  pointer-events: none; user-select: none; letter-spacing: -0.05em;
}

.sg-hp-slider-arrow {
  position: absolute; top: 50%; transform: translateY(-50%);
  z-index: 10; background: rgba(23,14,8,.38); backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.15); border-radius: 50%;
  width: 46px; height: 46px; display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,.8); font-size: 1.1rem; cursor: pointer;
  transition: background .2s, color .2s; text-decoration: none;
}
.sg-hp-slider-arrow:hover { background: var(--wine); color: #fff !important; border-color: var(--wine); }
.sg-hp-slider-arrow.sg-hp-prev { left: 22px; }
.sg-hp-slider-arrow.sg-hp-next { right: 22px; }
@media (max-width: 576px) { .sg-hp-slider-arrow { display: none; } }

.sg-hp-slider-dots {
  position: absolute; bottom: 22px; left: 50%; transform: translateX(-50%);
  z-index: 10; display: flex; gap: 9px; align-items: center;
}
.sg-hp-slider-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: rgba(255,255,255,.35); border: none; padding: 0; cursor: pointer;
  transition: background .3s, transform .3s;
}
.sg-hp-slider-dot.sg-hp-active { background: var(--amber); transform: scale(1.35); }

.sg-hp-slider-progress {
  position: absolute; bottom: 0; left: 0; z-index: 10;
  height: 3px; background: var(--amber);
  width: 0%; transition: width linear;
}

.sg-hp-hero-eyebrow {
  display: inline-flex; align-items: center; gap: 12px;
  font-family: var(--sans); font-size: .7rem; font-weight: 600;
  letter-spacing: .24em; text-transform: uppercase;
  color: var(--amber-lt); margin-bottom: 1.3rem;
}
.sg-hp-hero-eyebrow::before {
  content: ''; display: block; width: 32px; height: 1px; background: var(--amber-lt);
}
.sg-hp-hero-h1 {
  font-family: var(--serif);
  font-size: clamp(2.6rem, 6vw, 5rem);
  font-weight: 600; color: #fff;
  line-height: 1.1; letter-spacing: -.01em; margin-bottom: 1.2rem; margin-top: 0;
}
.sg-hp-hero-h1 em { font-style: italic; color: var(--amber-lt); }
.sg-hp-hero-desc {
  font-size: .98rem; font-weight: 300;
  color: rgba(255,255,255,.76); max-width: 400px; line-height: 1.75;
  margin-bottom: 2.2rem;
}
.sg-hp-hero-btns { display: flex; flex-wrap: wrap; gap: .75rem; }

.sg-hp-btn-gold {
  background: var(--amber); color: var(--ink) !important;
  font-family: var(--sans); font-weight: 600; font-size: .8rem;
  letter-spacing: .07em; text-transform: uppercase;
  padding: .75rem 1.75rem; border-radius: 4px; border: none;
  cursor: pointer; transition: background .2s, transform .15s;
  display: inline-block;
}
.sg-hp-btn-gold:hover { background: var(--amber-lt); color: var(--ink) !important; transform: translateY(-1px); }

.sg-hp-btn-ghost {
  background: transparent; color: rgba(255,255,255,.86) !important;
  font-family: var(--sans); font-weight: 500; font-size: .8rem;
  letter-spacing: .05em; padding: .75rem 1.75rem;
  border: 1px solid rgba(255,255,255,.38); border-radius: 4px;
  cursor: pointer; transition: border-color .2s, background .2s;
  display: inline-block;
}
.sg-hp-btn-ghost:hover { border-color: rgba(255,255,255,.7); background: rgba(255,255,255,.08); color: #fff !important; }

.sg-hp-hero-stats {
  position: absolute; bottom: 0; right: 0; z-index: 3;
  background: rgba(23,14,8,.28);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(255,255,255,.11);
  border-right: none; border-bottom: none;
  border-radius: 10px 0 0 0;
  padding: 1.25rem 2rem;
  display: flex; gap: 2.2rem;
}
.sg-hp-hstat-val {
  font-family: var(--serif); font-size: 1.9rem; font-weight: 700;
  color: #fff; line-height: 1;
}
.sg-hp-hstat-lbl {
  font-family: var(--sans); font-size: .65rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.5); margin-top: 3px;
}
@media (max-width: 576px) { .sg-hp-hero-stats { display: none; } }


/* ══ Reveal Animations ════════════════════════════════ */
.sg-hp-page-wrapper .reveal {
  opacity: 0; transform: translateY(22px);
  transition: opacity .65s ease, transform .65s ease;
}
.sg-hp-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-hp-page-wrapper .d1 { transition-delay: .1s; }
.sg-hp-page-wrapper .d2 { transition-delay: .2s; }
.sg-hp-page-wrapper .d3 { transition-delay: .3s; }
.sg-hp-page-wrapper .d4 { transition-delay: .4s; }
















/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* ═════════════════════════════════════════════ Seniors Forum Page styles ═══════════════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
/* Import required fonts just for this page's classes */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ══ SGOCT Seniors Forum Page Styles ════════════════════════════════════ */

/* 1. Scoped "Global" Resets for this page only */
.sg-sf-page-wrapper {
  /* Design Tokens */
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  
  font-family: var(--sans); 
  color: var(--ink);
  background: var(--paper); 
  font-size: 16px;
  line-height: 1.7; 
  -webkit-font-smoothing: antialiased;
}

.sg-sf-page-wrapper *,
.sg-sf-page-wrapper *::before,
.sg-sf-page-wrapper *::after {
  box-sizing: border-box;
}

.sg-sf-page-wrapper h1, 
.sg-sf-page-wrapper h2, 
.sg-sf-page-wrapper h3, 
.sg-sf-page-wrapper h4, 
.sg-sf-page-wrapper h5 { 
  font-family: var(--serif);
  margin-top: 0;
}

.sg-sf-page-wrapper a { 
  text-decoration: none; 
  color: var(--wine); 
  transition: color .2s; 
}

.sg-sf-page-wrapper a:hover { 
  color: var(--wine-d); 
}

.sg-sf-page-wrapper img { 
  max-width: 100%; 
  display: block; 
}


/* 2. Specific Page Components */

/* ══ SHARED TOKENS ══════════════════════════════════════ */
.sg-sf-s-tag {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .9rem;
}
.sg-sf-s-tag::after { content: ''; flex: 1; height: 1px; background: var(--mist); max-width: 60px; }

.sg-sf-s-h2 {
  font-family: var(--serif); font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 600; line-height: 1.12; color: var(--ink); margin-bottom: 1.2rem;
}
.sg-sf-s-h2 em { font-style: italic; color: var(--wine); }

.sg-sf-btn-outline {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: .78rem; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase;
  color: var(--wine); border: 1.5px solid var(--wine);
  border-radius: 4px; padding: .62rem 1.4rem;
  transition: background .2s, color .2s;
  text-decoration: none;
}
.sg-sf-btn-outline:hover { background: var(--wine); color: #fff; }
.sg-sf-btn-outline i { font-size: .72rem; transition: transform .2s; }
.sg-sf-btn-outline:hover i { transform: translateX(4px); }


/* ══ PAGE HERO ═══════════════════════════════════════════ */
.sg-sf-page-hero {
  position: relative; background: var(--wine-d); overflow: hidden; padding: 76px 0 60px;
}
.sg-sf-page-hero::before {
  content: ''; position: absolute; inset: 0;
  background: url('https://images.unsplash.com/photo-1511632765486-a01980e01a18?w=1600&q=80') center/cover no-repeat;
  opacity: .08;
}
.sg-sf-page-hero-watermark {
  position: absolute; right: -1%; top: 50%; transform: translateY(-50%);
  font-family: var(--serif); font-size: min(36vw, 28rem);
  color: rgba(255,255,255,.036); line-height: 1; pointer-events: none; user-select: none;
}
.sg-sf-page-hero-content { position: relative; z-index: 2; }
.sg-sf-breadcrumb-bar {
  font-family: var(--sans); font-size: .7rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.42); margin-bottom: 1rem;
  display: flex; align-items: center; gap: 8px;
}
.sg-sf-breadcrumb-bar a { color: rgba(255,255,255,.42); text-decoration: none; }
.sg-sf-breadcrumb-bar a:hover { color: rgba(255,255,255,.8); }
.sg-sf-breadcrumb-bar .sg-sf-current { color: var(--amber-lt); }
.sg-sf-page-eyebrow {
  font-family: var(--sans); font-size: .68rem; font-weight: 700;
  letter-spacing: .22em; text-transform: uppercase; color: var(--amber);
  display: flex; align-items: center; gap: 10px; margin-bottom: .8rem;
}
.sg-sf-page-eyebrow::before { content: ''; display: block; width: 28px; height: 1px; background: var(--amber); }
.sg-sf-page-h1 {
  font-family: var(--serif); font-size: clamp(2.2rem, 5vw, 3.8rem);
  font-weight: 600; color: #fff; line-height: 1.1; margin-bottom: .6rem;
}
.sg-sf-page-h1 em { font-style: italic; color: var(--amber-lt); }
.sg-sf-page-tagline { font-family: var(--sans); font-size: .9rem; font-weight: 300; color: rgba(255,255,255,.6); max-width: 520px; line-height: 1.75; }

/* ══ YEAR SELECTOR STRIP ═════════════════════════════════ */
.sg-sf-year-strip {
  background: var(--cream); border-bottom: 1px solid var(--mist);
  position: sticky; top: 70px; z-index: 100;
  box-shadow: 0 2px 12px rgba(23,14,8,.06);
}
.sg-sf-year-strip-inner {
  display: flex; align-items: center; overflow-x: auto;
  gap: 0; scrollbar-width: none; -ms-overflow-style: none;
  padding: 0 4px;
}
.sg-sf-year-strip-inner::-webkit-scrollbar { display: none; }
.sg-sf-year-btn {
  flex-shrink: 0; background: none; border: none; cursor: pointer;
  font-family: var(--sans); font-size: .8rem; font-weight: 600;
  color: var(--stone); padding: 16px 18px;
  border-bottom: 3px solid transparent;
  transition: color .2s, border-color .2s; white-space: nowrap;
  letter-spacing: .03em;
}
.sg-sf-year-btn:hover { color: var(--wine); }
.sg-sf-year-btn.sg-sf-active { color: var(--wine); border-bottom-color: var(--wine); }
.sg-sf-year-btn .sg-sf-current-badge {
  display: inline-block; background: var(--wine); color: #fff;
  font-size: .55rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  padding: 1px 6px; border-radius: 10px; margin-left: 5px; vertical-align: middle;
}

/* ══ FORUM SECTION ═══════════════════════════════════════ */
.sg-sf-sec-forum { padding: 64px 0 96px; }

/* Year panel */
.sg-sf-year-panel { display: none; }
.sg-sf-year-panel.sg-sf-active { display: block; }

/* ── Officer cards ── */
.sg-sf-officer-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px;
  padding: 24px 22px; display: flex; align-items: center; gap: 18px;
  transition: box-shadow .25s, transform .25s, border-color .25s; height: 100%;
}
.sg-sf-officer-card:hover { box-shadow: 0 8px 28px rgba(23,14,8,.09); transform: translateY(-2px); border-color: var(--amber-lt); }
.sg-sf-officer-card.sg-sf-president { background: var(--wine); border-color: var(--wine); }
.sg-sf-officer-card.sg-sf-president .sg-sf-officer-role { color: var(--amber-lt); }
.sg-sf-officer-card.sg-sf-president .sg-sf-officer-name { color: #fff; }
.sg-sf-officer-avatar {
  width: 56px; height: 56px; border-radius: 50%; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem; background: var(--parch); color: var(--wine);
  border: 2px solid var(--mist);
}
.sg-sf-officer-card.sg-sf-president .sg-sf-officer-avatar { background: rgba(255,255,255,.15); border-color: rgba(255,255,255,.25); color: rgba(255,255,255,.8); }
.sg-sf-officer-role {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--amber); margin-bottom: 3px;
}
.sg-sf-officer-name { font-family: var(--serif); font-size: 1.1rem; font-weight: 600; color: var(--ink); line-height: 1.25; }

/* ── Member pills ── */
.sg-sf-members-section-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 16px; display: flex; align-items: center; gap: 8px;
}
.sg-sf-members-section-head i { color: var(--wine); }

.sg-sf-member-pill {
  display: flex; align-items: center; gap: 12px;
  background: var(--paper); border: 1px solid var(--mist); border-radius: 7px;
  padding: 12px 14px; transition: border-color .2s, box-shadow .2s;
}
.sg-sf-member-pill:hover { border-color: var(--amber-lt); box-shadow: 0 4px 14px rgba(23,14,8,.06); }
.sg-sf-member-pill-ico {
  width: 34px; height: 34px; border-radius: 50%;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: .82rem; flex-shrink: 0;
}
.sg-sf-member-pill-name { font-family: var(--serif); font-size: .98rem; font-weight: 600; color: var(--ink); line-height: 1.2; }
.sg-sf-member-pill-role { font-family: var(--sans); font-size: .65rem; color: var(--stone); letter-spacing: .05em; }

/* ── Member photo cards (years with individual photos) ── */
.sg-sf-member-photo-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 8px;
  overflow: hidden; text-align: center;
  transition: box-shadow .25s, transform .25s, border-color .25s; height: 100%;
}
.sg-sf-member-photo-card:hover { box-shadow: 0 8px 24px rgba(23,14,8,.1); transform: translateY(-3px); border-color: var(--amber-lt); }
.sg-sf-member-photo-card img {
  width: 100%; aspect-ratio: 1/1; object-fit: cover; object-position: top; display: block;
}
.sg-sf-member-photo-card-body { padding: 14px 12px; }
.sg-sf-mpc-name { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); line-height: 1.2; margin-bottom: 3px; }
.sg-sf-mpc-role { font-family: var(--sans); font-size: .64rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amber); }

/* ── Activity/event block ── */
.sg-sf-activity-block {
  background: var(--cream); border: 1px solid var(--mist);
  border-left: 3px solid var(--amber);
  border-radius: 0 8px 8px 0; padding: 20px 22px; margin-bottom: 16px;
}
.sg-sf-activity-block h3 {
  font-family: var(--serif); font-size: 1.1rem; font-weight: 600;
  color: var(--ink); margin-bottom: 8px;
}
.sg-sf-activity-block p { font-family: var(--sans); font-size: .87rem; color: var(--stone); line-height: 1.75; }
.sg-sf-activity-block p + p { margin-top: 8px; }
.sg-sf-activity-block ul {
  margin-top: 10px; padding-left: 18px;
  font-family: var(--sans); font-size: .87rem; color: var(--stone); line-height: 1.9;
}
.sg-sf-activity-block ul li strong { color: var(--ink); }

/* ── Annual report highlight ── */
.sg-sf-report-card {
  background: var(--paper); border: 1px solid var(--mist); border-radius: 8px;
  padding: 20px 22px; margin-bottom: 16px;
  border-top: 3px solid var(--wine); height: 100%;
}
.sg-sf-report-card h3 {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--wine);
  margin-bottom: 10px; display: flex; align-items: center; gap: 7px;
}
.sg-sf-report-card h3 i { font-size: .8rem; }
.sg-sf-report-card p { font-family: var(--sans); font-size: .87rem; color: var(--stone); line-height: 1.75; }

/* ── Scripture quote ── */
.sg-sf-quote {
  background: var(--parch); border-left: 3px solid var(--amber);
  border-radius: 0 8px 8px 0; padding: 18px 22px; margin-bottom: 24px;
}
.sg-sf-quote p { font-family: var(--serif); font-size: 1.05rem; font-style: italic; color: var(--ink); line-height: 1.65; margin: 0; }
.sg-sf-quote cite { display: block; font-family: var(--sans); font-size: .72rem; font-style: normal; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--amber); margin-top: 6px; }

/* ── Event photo ── */
.sg-sf-event-photo {
  border-radius: 10px; overflow: hidden;
  border: 1px solid var(--mist);
  box-shadow: 0 8px 28px rgba(23,14,8,.09);
  margin-bottom: 16px; margin-top: 24px;
}
.sg-sf-event-photo img { width: 100%; display: block; }
.sg-sf-event-photo figcaption {
  background: var(--ink); color: rgba(255,255,255,.65);
  font-family: var(--sans); font-size: .78rem; line-height: 1.65; padding: 14px 18px;
}

/* ── Activities section head ── */
.sg-sf-activities-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 20px; margin-top: 40px;
  display: flex; align-items: center; gap: 8px;
}
.sg-sf-activities-head i { color: var(--wine); }

/* ── Year panel title ── */
.sg-sf-panel-title {
  font-family: var(--serif); font-size: clamp(1.7rem, 3vw, 2.6rem);
  font-weight: 600; color: var(--ink); margin-bottom: .3rem;
}
.sg-sf-panel-title em { font-style: italic; color: var(--wine); }
.sg-sf-panel-year-tag {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--wine); color: #fff;
  font-family: var(--sans); font-size: .66rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase;
  padding: 4px 12px; border-radius: 20px; margin-bottom: 10px;
}

/* ══ REVEAL - Global Utility Classes ══════════════════════════════════════════════ */
/* Scoped under wrapper so it overrides properly but uses original class names */
.sg-sf-page-wrapper .reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.sg-sf-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-sf-page-wrapper .d1 { transition-delay: .08s; } 
.sg-sf-page-wrapper .d2 { transition-delay: .16s; } 
.sg-sf-page-wrapper .d3 { transition-delay: .24s; }
.sg-sf-page-wrapper .d4 { transition-delay: .32s; } 
.sg-sf-page-wrapper .d5 { transition-delay: .40s; }























/* ===================================================================================================================== */
/* =============================================== SGOC Video Gallery Block ============================================ */
/* ===================================================================================================================== */
.sg-vg-page-wrapper {
  --wine:     #5C1519;
  --wine-d:   #3e0d10;
  --amber:    #C4832A;
  --amber-lt: #e8b96a;
  --parch:    #F4EAD0;
  --cream:    #FAF6EE;
  --paper:    #FFFDF8;
  --ink:      #170E08;
  --stone:    #8C7968;
  --mist:     #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Outfit', sans-serif;
  font-family: var(--sans);
  color: var(--ink);
}
.sg-vg-page-wrapper *,
.sg-vg-page-wrapper *::before,
.sg-vg-page-wrapper *::after { box-sizing: border-box; }
.sg-vg-sec-gallery { padding: 80px 0; background: var(--paper); }
.sg-vg-s-tag {
  font-family: var(--sans);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--amber);
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: .9rem;
}
.sg-vg-s-tag::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--mist);
  max-width: 60px;
}
.sg-vg-s-h2 {
  font-family: var(--serif);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 600;
  line-height: 1.12;
  color: var(--ink);
  margin-bottom: 1.2rem;
}
.sg-vg-s-h2 em { font-style: italic; color: var(--wine); }
.sg-vg-section-desc {
  font-family: var(--sans);
  font-size: .93rem;
  color: #5a4a3a;
  line-height: 1.8;
  margin: 0;
}
.sg-vg-grid {
  display: grid;
  gap: 1.4rem;
  align-items: start;
}
.sg-vg-cols-auto,
.sg-vg-cols-1,
.sg-vg-cols-2,
.sg-vg-cols-3 { grid-template-columns: 1fr; }
.sg-vg-card {
  background: var(--paper);
  border: 1px solid var(--mist);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 2px 14px rgba(23,14,8,.05);
  transition: box-shadow .25s, transform .25s;
}
.sg-vg-card:hover {
  box-shadow: 0 8px 32px rgba(23,14,8,.1);
  transform: translateY(-2px);
}
.sg-vg-no-frame .sg-vg-card {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}
.sg-vg-video-frame {
  background: #100908;
  border-top: 1px solid var(--mist);
  width: 100%;
  max-width: none;
  margin: 0;
  overflow: hidden;
}
.sg-vg-video-frame iframe,
.sg-vg-video-frame video,
.sg-vg-video-frame embed,
.sg-vg-video-frame object {
  display: block;
  width: 100% !important;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  height: clamp(260px, 42vw, 560px);
  max-height: 560px;
  min-height: 180px;
  border: 0;
  background: #000;
}
.sg-vg-cols-2 .sg-vg-video-frame iframe,
.sg-vg-cols-2 .sg-vg-video-frame video,
.sg-vg-cols-2 .sg-vg-video-frame embed,
.sg-vg-cols-2 .sg-vg-video-frame object,
.sg-vg-cols-3 .sg-vg-video-frame iframe,
.sg-vg-cols-3 .sg-vg-video-frame video,
.sg-vg-cols-3 .sg-vg-video-frame embed,
.sg-vg-cols-3 .sg-vg-video-frame object,
.sg-vg-cols-auto .sg-vg-video-frame iframe,
.sg-vg-cols-auto .sg-vg-video-frame video,
.sg-vg-cols-auto .sg-vg-video-frame embed,
.sg-vg-cols-auto .sg-vg-video-frame object {
  height: auto;
}
.sg-vg-video-frame > :is(div, p, figure) { margin: 0; }
.sg-vg-video-frame > :is(div, p, figure),
.sg-vg-video-frame .epyt-video-wrapper,
.sg-vg-video-frame .fluid-width-video-wrapper {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.sg-vg-video-frame .epyt-gallery,
.sg-vg-video-frame .epyt-gallery-allthumbs,
.sg-vg-video-frame .epyt-gallery-list {
  background: var(--paper);
}
.sg-vg-card-body { padding: 1.2rem 1.25rem 1.35rem; }
.sg-vg-card-meta {
  font-family: var(--sans);
  font-size: .58rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--amber);
  margin-bottom: .35rem;
}
.sg-vg-card-title {
  font-family: var(--serif);
  font-size: 1.18rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--ink);
  margin: 0 0 .45rem;
}
.sg-vg-card-desc {
  font-family: var(--sans);
  font-size: .86rem;
  color: #5a4a3a;
  line-height: 1.75;
}
.sg-vg-card-desc p { margin: 0 0 .75rem; }
.sg-vg-card-desc p:last-child { margin-bottom: 0; }
.sg-vg-card-link {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin-top: 1rem;
  font-family: var(--sans);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--wine);
  background: var(--parch);
  padding: .35rem .7rem;
  border-radius: 4px;
  text-decoration: none;
}
.sg-vg-card-link:hover {
  background: var(--wine);
  color: #fff;
}
@media (max-width: 640px) {
  .sg-vg-sec-gallery { padding: 64px 0; }
  .sg-vg-cols-auto,
  .sg-vg-cols-2,
  .sg-vg-cols-3 { grid-template-columns: 1fr; }
  .sg-vg-video-frame iframe,
  .sg-vg-video-frame video,
  .sg-vg-video-frame embed,
  .sg-vg-video-frame object { min-height: 190px; }
}

/* ══ FORUM SECTION ═══════════════════════════════════════ */
.sg-sf-sec-forum { padding: 64px 0 96px; }

/* Year panel */
.sg-sf-year-panel { display: none; }
.sg-sf-year-panel.sg-sf-active { display: block; }

/* ── Officer cards ── */
.sg-sf-officer-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 10px;
  padding: 24px 22px; display: flex; align-items: center; gap: 18px;
  transition: box-shadow .25s, transform .25s, border-color .25s; height: 100%;
}
.sg-sf-officer-card:hover { box-shadow: 0 8px 28px rgba(23,14,8,.09); transform: translateY(-2px); border-color: var(--amber-lt); }
.sg-sf-officer-card.sg-sf-president { background: var(--wine); border-color: var(--wine); }
.sg-sf-officer-card.sg-sf-president .sg-sf-officer-role { color: var(--amber-lt); }
.sg-sf-officer-card.sg-sf-president .sg-sf-officer-name { color: #fff; }
.sg-sf-officer-avatar {
  width: 56px; height: 56px; border-radius: 50%; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem; background: var(--parch); color: var(--wine);
  border: 2px solid var(--mist);
}
.sg-sf-officer-card.sg-sf-president .sg-sf-officer-avatar { background: rgba(255,255,255,.15); border-color: rgba(255,255,255,.25); color: rgba(255,255,255,.8); }
.sg-sf-officer-role {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--amber); margin-bottom: 3px;
}
.sg-sf-officer-name { font-family: var(--serif); font-size: 1.1rem; font-weight: 600; color: var(--ink); line-height: 1.25; }

/* ── Member pills ── */
.sg-sf-members-section-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 16px; display: flex; align-items: center; gap: 8px;
}
.sg-sf-members-section-head i { color: var(--wine); }

.sg-sf-member-pill {
  display: flex; align-items: center; gap: 12px;
  background: var(--paper); border: 1px solid var(--mist); border-radius: 7px;
  padding: 12px 14px; transition: border-color .2s, box-shadow .2s;
}
.sg-sf-member-pill:hover { border-color: var(--amber-lt); box-shadow: 0 4px 14px rgba(23,14,8,.06); }
.sg-sf-member-pill-ico {
  width: 34px; height: 34px; border-radius: 50%;
  background: var(--parch); color: var(--wine);
  display: flex; align-items: center; justify-content: center;
  font-size: .82rem; flex-shrink: 0;
}
.sg-sf-member-pill-name { font-family: var(--serif); font-size: .98rem; font-weight: 600; color: var(--ink); line-height: 1.2; }
.sg-sf-member-pill-role { font-family: var(--sans); font-size: .65rem; color: var(--stone); letter-spacing: .05em; }

/* ── Member photo cards (years with individual photos) ── */
.sg-sf-member-photo-card {
  background: var(--cream); border: 1px solid var(--mist); border-radius: 8px;
  overflow: hidden; text-align: center;
  transition: box-shadow .25s, transform .25s, border-color .25s; height: 100%;
}
.sg-sf-member-photo-card:hover { box-shadow: 0 8px 24px rgba(23,14,8,.1); transform: translateY(-3px); border-color: var(--amber-lt); }
.sg-sf-member-photo-card img {
  width: 100%; aspect-ratio: 1/1; object-fit: cover; object-position: top; display: block;
}
.sg-sf-member-photo-card-body { padding: 14px 12px; }
.sg-sf-mpc-name { font-family: var(--serif); font-size: 1rem; font-weight: 600; color: var(--ink); line-height: 1.2; margin-bottom: 3px; }
.sg-sf-mpc-role { font-family: var(--sans); font-size: .64rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--amber); }

/* ── Activity/event block ── */
.sg-sf-activity-block {
  background: var(--cream); border: 1px solid var(--mist);
  border-left: 3px solid var(--amber);
  border-radius: 0 8px 8px 0; padding: 20px 22px; margin-bottom: 16px;
}
.sg-sf-activity-block h3 {
  font-family: var(--serif); font-size: 1.1rem; font-weight: 600;
  color: var(--ink); margin-bottom: 8px;
}
.sg-sf-activity-block p { font-family: var(--sans); font-size: .87rem; color: var(--stone); line-height: 1.75; }
.sg-sf-activity-block p + p { margin-top: 8px; }
.sg-sf-activity-block ul {
  margin-top: 10px; padding-left: 18px;
  font-family: var(--sans); font-size: .87rem; color: var(--stone); line-height: 1.9;
}
.sg-sf-activity-block ul li strong { color: var(--ink); }

/* ── Annual report highlight ── */
.sg-sf-report-card {
  background: var(--paper); border: 1px solid var(--mist); border-radius: 8px;
  padding: 20px 22px; margin-bottom: 16px;
  border-top: 3px solid var(--wine); height: 100%;
}
.sg-sf-report-card h3 {
  font-family: var(--sans); font-size: .62rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--wine);
  margin-bottom: 10px; display: flex; align-items: center; gap: 7px;
}
.sg-sf-report-card h3 i { font-size: .8rem; }
.sg-sf-report-card p { font-family: var(--sans); font-size: .87rem; color: var(--stone); line-height: 1.75; }

/* ── Scripture quote ── */
.sg-sf-quote {
  background: var(--parch); border-left: 3px solid var(--amber);
  border-radius: 0 8px 8px 0; padding: 18px 22px; margin-bottom: 24px;
}
.sg-sf-quote p { font-family: var(--serif); font-size: 1.05rem; font-style: italic; color: var(--ink); line-height: 1.65; margin: 0; }
.sg-sf-quote cite { display: block; font-family: var(--sans); font-size: .72rem; font-style: normal; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--amber); margin-top: 6px; }

/* ── Event photo ── */
.sg-sf-event-photo {
  border-radius: 10px; overflow: hidden;
  border: 1px solid var(--mist);
  box-shadow: 0 8px 28px rgba(23,14,8,.09);
  margin-bottom: 16px; margin-top: 24px;
}
.sg-sf-event-photo img { width: 100%; display: block; }
.sg-sf-event-photo figcaption {
  background: var(--ink); color: rgba(255,255,255,.65);
  font-family: var(--sans); font-size: .78rem; line-height: 1.65; padding: 14px 18px;
}

/* ── Activities section head ── */
.sg-sf-activities-head {
  font-family: var(--sans); font-size: .64rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--stone);
  padding-bottom: 10px; border-bottom: 2px solid var(--wine);
  margin-bottom: 20px; margin-top: 40px;
  display: flex; align-items: center; gap: 8px;
}
.sg-sf-activities-head i { color: var(--wine); }

/* ── Year panel title ── */
.sg-sf-panel-title {
  font-family: var(--serif); font-size: clamp(1.7rem, 3vw, 2.6rem);
  font-weight: 600; color: var(--ink); margin-bottom: .3rem;
}
.sg-sf-panel-title em { font-style: italic; color: var(--wine); }
.sg-sf-panel-year-tag {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--wine); color: #fff;
  font-family: var(--sans); font-size: .66rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase;
  padding: 4px 12px; border-radius: 20px; margin-bottom: 10px;
}

/* ══ REVEAL - Global Utility Classes ══════════════════════════════════════════════ */
/* Scoped under wrapper so it overrides properly but uses original class names */
.sg-sf-page-wrapper .reveal { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.sg-sf-page-wrapper .reveal.in { opacity: 1; transform: none; }
.sg-sf-page-wrapper .d1 { transition-delay: .08s; } 
.sg-sf-page-wrapper .d2 { transition-delay: .16s; } 
.sg-sf-page-wrapper .d3 { transition-delay: .24s; }
.sg-sf-page-wrapper .d4 { transition-delay: .32s; } 
.sg-sf-page-wrapper .d5 { transition-delay: .40s; }




/* ===================================================================================================================== */
/* ============================================== SGOC General Content Block =========================================== */
/* ===================================================================================================================== */
.sg-gc-page-wrapper {
  --wine: #5C1519; --wine-d: #3e0d10; --amber: #C4832A; --amber-lt: #e8b96a;
  --parch: #F4EAD0; --cream: #FAF6EE; --paper: #FFFDF8; --ink: #170E08;
  --stone: #8C7968; --mist: #DDD3C4;
  --serif: 'Cormorant Garamond', Georgia, serif; --sans: 'Outfit', sans-serif;
  font-family: var(--sans); color: var(--ink); background: var(--paper);
}
.sg-gc-page-wrapper *, .sg-gc-page-wrapper *::before, .sg-gc-page-wrapper *::after { box-sizing: border-box; }

.sg-gc-pad-none { padding: 0; }
.sg-gc-pad-compact { padding: 42px 0; }
.sg-gc-pad-normal { padding: 70px 0; }
.sg-gc-pad-large { padding: 96px 0; }
.sg-gc-inner { width: 100%; margin-left: auto; margin-right: auto; }
.sg-gc-width-narrow { max-width: 760px; }
.sg-gc-width-normal,
.sg-gc-width-wide { max-width: 100%; }
.sg-gc-width-full { max-width: none; }
.sg-gc-align-center { text-align: center; }
.sg-gc-soft-reveal {
  opacity: 1;
  transform: none;
  animation: sg-gc-soft-in .32s ease both;
}

@keyframes sg-gc-soft-in {
  from {
    opacity: .92;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sg-gc-soft-reveal { animation: none; }
}

.sg-gc-style-card,
.sg-gc-style-accent,
.sg-gc-style-parchment,
.sg-gc-style-dark {
  border-radius: 10px;
  padding: clamp(1.5rem, 3vw, 2.4rem);
}
.sg-gc-style-card {
  background: var(--paper);
  border: 1px solid var(--mist);
  box-shadow: 0 4px 24px rgba(23,14,8,.06);
}
.sg-gc-style-accent {
  background: var(--paper);
  border: 1px solid var(--mist);
  border-left: 3px solid var(--amber);
  border-radius: 0 10px 10px 0;
  box-shadow: 0 4px 24px rgba(23,14,8,.05);
}
.sg-gc-style-parchment {
  background: var(--parch);
  border: 1px solid #e3d2b1;
}
.sg-gc-style-dark {
  background: var(--wine);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.76);
}

.sg-gc-s-tag {
  font-family: var(--sans);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--amber);
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: .9rem;
}
.sg-gc-s-tag::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--mist);
  max-width: 60px;
}
.sg-gc-align-center .sg-gc-s-tag { justify-content: center; }
.sg-gc-align-center .sg-gc-s-tag::before {
  content: '';
  width: 60px;
  height: 1px;
  background: var(--mist);
}
.sg-gc-style-dark .sg-gc-s-tag { color: var(--amber-lt); }
.sg-gc-style-dark .sg-gc-s-tag::before,
.sg-gc-style-dark .sg-gc-s-tag::after { background: rgba(255,255,255,.18); }

.sg-gc-s-h2 {
  font-family: var(--serif);
  font-size: clamp(1.8rem, 3.6vw, 3rem);
  font-weight: 600;
  line-height: 1.12;
  color: var(--ink);
  margin: 0 0 1rem;
}
.sg-gc-s-h2 em {
  font-style: italic;
  color: var(--wine);
}
.sg-gc-style-dark .sg-gc-s-h2 { color: #fff; }
.sg-gc-style-dark .sg-gc-s-h2 em { color: var(--amber-lt); }
.sg-gc-lead {
  font-family: var(--sans);
  font-size: .96rem;
  line-height: 1.85;
  color: #5a4a3a;
  margin: 0 0 1.35rem;
}
.sg-gc-style-dark .sg-gc-lead { color: rgba(255,255,255,.72); }

.sg-gc-content {
  font-family: var(--sans);
  font-size: .94rem;
  line-height: 1.85;
  color: #4a3a2e;
}
.sg-gc-style-dark .sg-gc-content { color: rgba(255,255,255,.75); }
.sg-gc-content > *:first-child { margin-top: 0; }
.sg-gc-content > *:last-child { margin-bottom: 0; }
.sg-gc-content p { margin: 0 0 1rem; }
.sg-gc-content h1,
.sg-gc-content h2,
.sg-gc-content h3,
.sg-gc-content h4 {
  font-family: var(--serif);
  color: var(--ink);
  line-height: 1.2;
  margin: 1.5rem 0 .65rem;
}
.sg-gc-content h3 { font-size: 1.35rem; }
.sg-gc-content h4 { font-size: 1.12rem; }
.sg-gc-style-dark .sg-gc-content h1,
.sg-gc-style-dark .sg-gc-content h2,
.sg-gc-style-dark .sg-gc-content h3,
.sg-gc-style-dark .sg-gc-content h4 { color: #fff; }
.sg-gc-content a {
  color: var(--wine);
  font-weight: 600;
  text-decoration: none;
}
.sg-gc-content a:hover { color: var(--wine-d); }
.sg-gc-style-dark .sg-gc-content a { color: var(--amber-lt); }
.sg-gc-content ul,
.sg-gc-content ol {
  margin: 0 0 1rem;
  padding-left: 1.2rem;
}
.sg-gc-content li { margin-bottom: .35rem; }
.sg-gc-content blockquote {
  margin: 1.4rem 0;
  padding: 1.05rem 1.25rem;
  background: var(--parch);
  border-left: 3px solid var(--amber);
  border-radius: 0 8px 8px 0;
  font-family: var(--serif);
  font-size: 1.08rem;
  font-style: italic;
  line-height: 1.65;
  color: var(--ink);
}
.sg-gc-style-dark .sg-gc-content blockquote {
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.88);
}
.sg-gc-content hr,
.sg-gc-divider {
  display: block;
  width: min(100%, 260px);
  height: 12px;
  border: 0;
  background:
    linear-gradient(var(--paper), var(--paper)) center / 34px 12px no-repeat,
    linear-gradient(90deg, transparent, var(--mist) 16%, var(--amber) 50%, var(--mist) 84%, transparent) center / 100% 1px no-repeat;
  margin: 2rem auto;
  position: relative;
  overflow: visible;
}
.sg-gc-content hr::after,
.sg-gc-divider::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--wine);
  box-shadow: 0 0 0 5px var(--paper), 0 0 0 6px var(--amber-lt);
  transform: translate(-50%, -50%);
}
.sg-gc-style-parchment .sg-gc-content hr,
.sg-gc-style-parchment .sg-gc-divider {
  background:
    linear-gradient(var(--parch), var(--parch)) center / 34px 12px no-repeat,
    linear-gradient(90deg, transparent, #d7c49f 16%, var(--amber) 50%, #d7c49f 84%, transparent) center / 100% 1px no-repeat;
}
.sg-gc-style-parchment .sg-gc-content hr::after,
.sg-gc-style-parchment .sg-gc-divider::after {
  box-shadow: 0 0 0 5px var(--parch), 0 0 0 6px var(--amber-lt);
}
.sg-gc-style-dark .sg-gc-content hr,
.sg-gc-style-dark .sg-gc-divider {
  background:
    linear-gradient(var(--wine), var(--wine)) center / 34px 12px no-repeat,
    linear-gradient(90deg, transparent, rgba(255,255,255,.2) 16%, var(--amber-lt) 50%, rgba(255,255,255,.2) 84%, transparent) center / 100% 1px no-repeat;
}
.sg-gc-style-dark .sg-gc-content hr::after,
.sg-gc-style-dark .sg-gc-divider::after {
  background: var(--amber-lt);
  box-shadow: 0 0 0 5px var(--wine), 0 0 0 6px rgba(255,255,255,.26);
}
.sg-gc-content img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 10px;
  border: 1px solid var(--mist);
  box-shadow: 0 8px 28px rgba(23,14,8,.09);
  margin: 1.4rem auto;
}
.sg-gc-image-align-left .sg-gc-content img,
.sg-gc-image-align-text.sg-gc-align-left .sg-gc-content img {
  margin-left: 0;
  margin-right: auto;
}
.sg-gc-image-align-center .sg-gc-content img,
.sg-gc-image-align-text.sg-gc-align-center .sg-gc-content img {
  margin-left: auto;
  margin-right: auto;
}
.sg-gc-image-align-right .sg-gc-content img {
  margin-left: auto;
  margin-right: 0;
}
.sg-gc-content iframe,
.sg-gc-content video,
.sg-gc-content embed,
.sg-gc-content object {
  display: block;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16/9;
  min-height: 220px;
  border: 0;
  border-radius: 10px;
  box-shadow: 0 8px 28px rgba(23,14,8,.09);
  margin: 1.4rem auto;
}
.sg-gc-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.4rem 0;
  border: 1px solid var(--mist);
  border-radius: 8px;
  overflow: hidden;
}
.sg-gc-content th {
  background: var(--wine);
  color: #fff;
  font-family: var(--sans);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.sg-gc-content th,
.sg-gc-content td {
  padding: .75rem 1rem;
  border-bottom: 1px solid var(--mist);
  text-align: left;
}
.sg-gc-content tr:nth-child(even) td { background: var(--cream); }
.sg-gc-content .button,
.sg-gc-content .btn,
.sg-gc-content .sg-gc-btn {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  font-family: var(--sans);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #fff;
  background: var(--wine);
  border-radius: 4px;
  padding: .62rem 1rem;
  text-decoration: none;
}
.sg-gc-content .button:hover,
.sg-gc-content .btn:hover,
.sg-gc-content .sg-gc-btn:hover {
  background: var(--wine-d);
  color: #fff;
}

@media (max-width: 640px) {
  .sg-gc-pad-compact { padding: 34px 0; }
  .sg-gc-pad-normal { padding: 54px 0; }
  .sg-gc-pad-large { padding: 72px 0; }
  .sg-gc-style-card,
  .sg-gc-style-accent,
  .sg-gc-style-parchment,
  .sg-gc-style-dark { padding: 1.25rem; }
  .sg-gc-content iframe,
  .sg-gc-content video,
  .sg-gc-content embed,
  .sg-gc-content object { min-height: 190px; }
}
