:root {
  --bg: #f3efe7;
  --paper: #fbf8f2;
  --ink: #191714;
  --muted: #6f675d;
  --line: rgba(25, 23, 20, .16);
  --dark: #13110f;
  --warm: #a65328;
  --max: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: "Inter", system-ui, sans-serif;
  line-height: 1.65;
}

a { color: inherit; }
img { max-width: 100%; display: block; }

.site-header {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 22px 4vw;
  color: white;
  background: linear-gradient(to bottom, rgba(0,0,0,.64), transparent);
  transition: background .3s ease, color .3s ease, padding .3s ease;
}

.site-header.scrolled {
  color: var(--ink);
  background: rgba(243, 239, 231, .94);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--line);
  padding-top: 14px;
  padding-bottom: 14px;
}

.brand {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.4rem, 2vw, 2rem);
  font-weight: 700;
  text-decoration: none;
  letter-spacing: .02em;
}

.site-nav {
  display: flex;
  gap: 28px;
  align-items: center;
}
.site-nav a {
  text-decoration: none;
  font-size: .9rem;
}
.nav-login {
  border: 1px solid currentColor;
  padding: 9px 14px;
  border-radius: 999px;
}
.menu-toggle { display: none; }

.hero {
  min-height: 100svh;
  position: relative;
  display: grid;
  align-items: end;
  overflow: hidden;
  background:
    linear-gradient(to top, rgba(0,0,0,.75), rgba(0,0,0,.05) 58%, rgba(0,0,0,.15)),
    url("assets/from-this-fire-hero.jpg") center 56% / cover no-repeat;
  color: white;
}

.hero-overlay {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 58%, transparent 0 24%, rgba(0,0,0,.18) 70%, rgba(0,0,0,.5) 100%);
}

.hero-content {
  position: relative;
  z-index: 2;
  width: min(var(--max), 92vw);
  margin: 0 auto;
  padding: 0 0 clamp(56px, 8vw, 100px);
}

.eyebrow {
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: .72rem;
  font-weight: 600;
}

.hero h1,
.section h2,
.neighbor-door h2 {
  font-family: "Cormorant Garamond", serif;
  font-weight: 600;
  letter-spacing: -.03em;
  line-height: .95;
}

.hero h1 {
  margin: 10px 0 16px;
  font-size: clamp(4rem, 11vw, 9.5rem);
}

.hero-line {
  margin: 0;
  max-width: 760px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.5rem, 3vw, 2.9rem);
  line-height: 1.1;
}

.scroll-link {
  display: inline-block;
  margin-top: 34px;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.5);
  padding-bottom: 5px;
}

.section {
  padding: clamp(80px, 10vw, 150px) 4vw;
}

.section > * {
  width: min(var(--max), 100%);
  margin-inline: auto;
}

.section-kicker {
  font-size: .76rem;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 46px;
}

.story {
  background: var(--paper);
}
.story-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(48px, 8vw, 120px);
}
.story h2,
.belonging h2,
.archives h2 {
  font-size: clamp(3rem, 6vw, 6rem);
  margin: 0 0 28px;
}
.lead {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.6rem, 2.4vw, 2.4rem);
  line-height: 1.25;
}
.story-copy {
  font-size: 1.06rem;
}
.pull-quote {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2.6rem, 5vw, 5rem);
  margin: 26px 0;
}
.closing-line {
  margin-top: 44px;
  padding-top: 28px;
  border-top: 1px solid var(--line);
  font-size: 1.2rem;
}


.origin-opening {
  max-width: 760px;
  margin-left: 0;
}
.origin-intro {
  margin: 0 0 18px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2.5rem, 5vw, 5.2rem);
  line-height: 1;
  letter-spacing: -.03em;
}
.origin-opening > p:last-child {
  max-width: 650px;
  color: var(--muted);
  font-size: 1.08rem;
}
.origin-quote {
  max-width: 980px;
  margin: clamp(70px, 10vw, 130px) auto;
  padding: clamp(34px, 6vw, 72px) 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2rem, 4.4vw, 4.7rem);
  line-height: 1.08;
}
.origin-quote span,
.origin-quote strong {
  display: block;
}
.origin-quote span {
  margin-bottom: 12px;
  color: var(--muted);
  font-size: .55em;
}
.origin-story {
  max-width: 700px;
  margin-left: auto;
  font-size: 1.08rem;
}
.story-beat {
  margin: 46px 0;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: 1.12;
}
.street-line {
  margin: 34px 0;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2rem, 4vw, 3.8rem);
}
.name-reveal {
  max-width: 1000px;
  margin: clamp(90px, 12vw, 160px) auto 0;
  text-align: center;
}
.name-reveal h2 {
  margin: 0;
  font-size: clamp(4rem, 10vw, 9rem);
}
.name-reveal p {
  color: var(--muted);
  font-size: 1.1rem;
}
.origin-close {
  max-width: 850px;
  margin: clamp(80px, 10vw, 130px) auto 0;
  padding-top: 44px;
  border-top: 1px solid var(--line);
  text-align: center;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.8rem, 3.4vw, 3.4rem);
  line-height: 1.2;
}
.origin-close p { margin: 8px 0; }

.belonging {
  background: var(--dark);
  color: white;
  text-align: center;
}
.belonging .section-kicker { color: rgba(255,255,255,.58); }
.center-copy {
  max-width: 900px;
}
.center-copy > p {
  max-width: 700px;
  margin: 0 auto;
  color: rgba(255,255,255,.76);
}
.center-copy blockquote {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2rem, 4.5vw, 4.8rem);
  line-height: 1.05;
  margin: 62px auto 0;
}


.home-story {
  max-width: 1040px;
}
.home-overline {
  margin: 0 0 24px;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: .74rem;
  color: rgba(255,255,255,.56);
}
.home-story h2 {
  max-width: 900px;
  margin-bottom: clamp(55px, 8vw, 100px);
}
.home-copy {
  max-width: 720px;
  margin-left: auto;
  font-size: clamp(1.05rem, 1.5vw, 1.22rem);
  color: rgba(255,255,255,.76);
}
.home-copy p {
  margin: 0 0 28px;
}
.home-emphasis {
  margin: 48px 0 !important;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2.4rem, 5vw, 5rem);
  line-height: 1;
  color: white;
}
.home-question {
  max-width: 980px;
  margin: clamp(90px, 12vw, 160px) auto;
  padding: clamp(55px, 8vw, 90px) 0;
  border-top: 1px solid rgba(255,255,255,.2);
  border-bottom: 1px solid rgba(255,255,255,.2);
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3rem, 7vw, 7rem);
  line-height: .98;
  text-align: center;
}
.home-legacy {
  max-width: 760px;
  font-size: clamp(1.05rem, 1.5vw, 1.2rem);
  color: rgba(255,255,255,.72);
}
.home-legacy p {
  margin: 0 0 26px;
}
.home-final {
  margin-top: 58px !important;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2.5rem, 5vw, 5rem);
  line-height: 1;
  color: white;
}

.section-heading-row {
  display: grid;
  grid-template-columns: 1.4fr .8fr;
  gap: 40px;
  align-items: end;
  margin-bottom: 50px;
}
.section-heading-row h2 {
  margin: 0;
  font-size: clamp(2.8rem, 5vw, 5rem);
}
.section-heading-row p {
  margin: 0;
  color: var(--muted);
}

.card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.tradition-card {
  min-height: 390px;
  padding: 34px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.22);
  display: flex;
  flex-direction: column;
}
.card-number {
  color: var(--muted);
  font-size: .8rem;
}
.tradition-card h3 {
  font-family: "Cormorant Garamond", serif;
  font-size: 2.6rem;
  line-height: 1;
  margin: 80px 0 18px;
}
.tradition-card p {
  color: var(--muted);
  margin-bottom: 34px;
}
.tradition-card a {
  margin-top: auto;
  text-decoration: none;
  font-weight: 600;
}

.life { background: var(--paper); }
.life-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.life-tile {
  aspect-ratio: 1 / 1;
  border: 1px solid var(--line);
  display: flex;
  align-items: end;
  padding: 24px;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.65rem;
  background: linear-gradient(145deg, rgba(166,83,40,.06), transparent);
}

.archive-feature {
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  gap: clamp(36px, 6vw, 90px);
  align-items: center;
}
.archive-image-wrap {
  overflow: hidden;
  background: #000;
}
.archive-image-wrap img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center 56%;
}
.archive-id {
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: .74rem;
  color: var(--muted);
}
.archive-copy p {
  color: var(--muted);
}
.archive-copy a {
  display: inline-block;
  margin-top: 18px;
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid;
}

.neighbor-door {
  margin: 0;
  padding: clamp(70px, 9vw, 130px) 4vw;
  background: var(--warm);
  color: white;
  display: flex;
  justify-content: space-between;
  gap: 40px;
  align-items: center;
}
.neighbor-door > * {
  width: auto;
  margin: 0;
}
.neighbor-door h2 {
  font-size: clamp(3rem, 5vw, 5.5rem);
  margin: 8px 0 10px;
}
.neighbor-door p { margin: 0; }
.button {
  flex: 0 0 auto;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.7);
  padding: 15px 20px;
  border-radius: 999px;
}

.site-footer {
  background: #0e0d0c;
  color: rgba(255,255,255,.75);
  padding: 34px 4vw;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  font-size: .85rem;
}
.site-footer div {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}
.site-footer a { text-decoration: none; }

@media (max-width: 900px) {
  .menu-toggle {
    display: inline-flex;
    background: transparent;
    border: 1px solid currentColor;
    color: inherit;
    border-radius: 999px;
    padding: 8px 12px;
  }
  .site-nav {
    display: none;
    position: absolute;
    top: 68px;
    right: 4vw;
    left: 4vw;
    padding: 20px;
    background: rgba(20,18,16,.96);
    color: white;
    flex-direction: column;
    align-items: stretch;
  }
  .site-header.scrolled .site-nav {
    background: rgba(243,239,231,.98);
    color: var(--ink);
  }
  .site-nav.open { display: flex; }
  .story-grid,
  .section-heading-row,
  .archive-feature {
    grid-template-columns: 1fr;
  }
  .card-grid { grid-template-columns: 1fr; }
  .life-grid { grid-template-columns: repeat(2, 1fr); }
  .neighbor-door {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 560px) {
  .site-header { padding-inline: 20px; }
  .hero-content, .section { padding-left: 20px; padding-right: 20px; }
  .hero {
    background-position: 50% 58%;
  }
  .hero h1 { font-size: clamp(3.6rem, 21vw, 6.8rem); }
  .life-grid { grid-template-columns: 1fr; }
  .site-footer { flex-direction: column; }
}

.tradition-panels {
  display: grid;
  gap: 28px;
}
.tradition-panel {
  position: relative;
  min-height: 610px;
  overflow: hidden;
  border: 1px solid var(--line);
  background: #e9e1d4;
  display: grid;
  grid-template-columns: 1.15fr .85fr;
}
.tradition-art {
  min-height: 610px;
  display: grid;
  place-items: center;
  overflow: hidden;
}
.tradition-art img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.logo-art {
  padding: clamp(30px, 5vw, 70px);
  background: #f7f1e7;
}
.tradition-cornhole .logo-art {
  background: #16130f;
}
.tradition-panel-copy {
  padding: clamp(36px, 6vw, 78px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #211e19;
  color: white;
}
.tradition-panel-copy .card-number,
.tradition-type {
  color: rgba(255,255,255,.58);
}
.tradition-type {
  margin: 18px 0 0;
  text-transform: uppercase;
  letter-spacing: .15em;
  font-size: .72rem;
}
.tradition-panel h3 {
  margin: 28px 0 24px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3rem, 5vw, 5.4rem);
  line-height: .9;
}
.tradition-panel-copy > p:not(.tradition-type):not(.tradition-tagline) {
  color: rgba(255,255,255,.72);
}
.tradition-tagline {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.6rem, 2.6vw, 2.5rem);
  line-height: 1.15;
}
.tradition-panel a {
  margin-top: 36px;
  width: fit-content;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.55);
  padding-bottom: 5px;
  font-weight: 600;
}
.tradition-blockparty {
  min-height: 760px;
  display: block;
}
.tradition-blockparty .photo-art {
  position: absolute;
  inset: 0;
  min-height: 100%;
}
.tradition-blockparty .photo-art img {
  object-fit: cover;
}
.tradition-blockparty::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.5) 42%, rgba(0,0,0,.08) 76%);
}
.tradition-blockparty .overlay-copy {
  position: relative;
  z-index: 2;
  width: min(600px, 55%);
  min-height: 760px;
  background: transparent;
}
@media (max-width: 900px) {
  .tradition-panel {
    grid-template-columns: 1fr;
  }
  .tradition-art,
  .tradition-panel {
    min-height: auto;
  }
  .tradition-art {
    min-height: 430px;
  }
  .tradition-blockparty {
    min-height: 720px;
  }
  .tradition-blockparty .overlay-copy {
    width: 100%;
    min-height: 720px;
    justify-content: end;
    padding-bottom: 55px;
  }
  .tradition-blockparty::after {
    background: linear-gradient(to top, rgba(0,0,0,.9) 0%, rgba(0,0,0,.48) 55%, rgba(0,0,0,.08) 100%);
  }
}

/* v1.9 — Golf jacket emblem integration */
.tradition-golf .logo-art {
  background:
    radial-gradient(circle at 50% 45%, rgba(255,255,255,.055), transparent 44%),
    #171a16;
}
.tradition-golf .logo-art img {
  width: min(78%, 720px);
  height: auto;
  filter: drop-shadow(0 18px 26px rgba(0,0,0,.28));
}

/* v2.0 — Golf Championship page */
.golf-page { background: #ece6da; }
.golf-header { position: fixed; }
.golf-hero {
  min-height: 100svh;
  padding: 120px 6vw 70px;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 7vw;
  align-items: center;
  background: #151914;
  color: white;
}
.golf-hero-mark { display: grid; place-items: center; }
.golf-hero-mark img {
  width: min(100%, 600px);
  filter: drop-shadow(0 24px 34px rgba(0,0,0,.35));
}
.golf-hero-copy h1 {
  margin: 12px 0 28px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(5rem, 10vw, 10rem);
  line-height: .76;
  letter-spacing: -.055em;
}
.golf-deck {
  max-width: 720px;
  color: rgba(255,255,255,.72);
  font-size: clamp(1.05rem, 1.5vw, 1.25rem);
}
.golf-chapter {
  min-height: 78vh;
  padding: clamp(90px, 11vw, 160px) 6vw;
  display: grid;
  grid-template-columns: .35fr 1fr;
  gap: 7vw;
  align-items: start;
}
.golf-chapter.light { background: #f5f0e7; }
.golf-chapter.dark { background: #171814; color: white; }
.golf-chapter.range { background: #d9d0bf; }
.golf-chapter.first-tee { background: #f5f0e7; }
.golf-chapter.eighteenth { background: #d4c9b6; }
.golf-chapter.chalice { background: #252017; color: white; }
.chapter-time {
  position: sticky;
  top: 110px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2.3rem, 4vw, 4.4rem);
  line-height: 1;
}
.chapter-copy { max-width: 820px; }
.chapter-label {
  margin: 0 0 22px;
  text-transform: uppercase;
  letter-spacing: .17em;
  font-size: .74rem;
  font-weight: 600;
  opacity: .58;
}
.chapter-copy h2,
.golf-ending h2,
.golf-traditions-index h2 {
  margin: 0 0 35px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3.2rem, 6vw, 6.5rem);
  line-height: .92;
  letter-spacing: -.035em;
}
.chapter-copy > p:not(.chapter-label):not(.chapter-punch) {
  max-width: 680px;
  font-size: 1.08rem;
  opacity: .76;
}
.chapter-lead {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.8rem, 3vw, 3rem) !important;
  line-height: 1.12;
  opacity: 1 !important;
}
.chapter-punch {
  margin: 55px 0 0;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2.4rem, 4.5vw, 4.8rem);
  line-height: 1.05;
}
.golf-callout,
.chairman-rule {
  margin-top: 65px;
  padding: 34px 0;
  border-top: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.7rem, 3vw, 3rem);
  line-height: 1.12;
}
.chairman-rule span {
  display: block;
  margin-bottom: 14px;
  font-family: "Inter", sans-serif;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .16em;
  opacity: .55;
}
.chairman-rule strong { display: block; }
.golf-story-quote {
  margin: 70px 0 0;
  padding: 45px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.7rem, 3vw, 3rem);
  line-height: 1.18;
}
.golf-story-quote span {
  display: block;
  margin-bottom: 18px;
  font-family: "Inter", sans-serif;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .16em;
  color: var(--muted);
}
.golf-story-quote strong { display: block; margin-top: 22px; }
.golf-ending {
  padding: clamp(110px, 14vw, 200px) 6vw;
  background: #0e100d;
  color: white;
  text-align: center;
}
.golf-ending-inner { max-width: 900px; margin: auto; }
.golf-ending-inner > p:not(.eyebrow) {
  max-width: 700px;
  margin: 25px auto;
  color: rgba(255,255,255,.7);
}
.golf-ending-inner > strong {
  display: block;
  margin-top: 70px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3.5rem, 8vw, 8rem);
  line-height: .9;
}
.golf-traditions-index {
  padding: clamp(90px, 11vw, 160px) 6vw;
  background: #f5f0e7;
}
.golf-traditions-index > * { width: min(1240px, 100%); margin-inline: auto; }
.golf-index-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.golf-index-grid a {
  min-height: 240px;
  padding: 30px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  text-decoration: none;
  display: flex;
  flex-direction: column;
}
.golf-index-grid span { color: var(--muted); font-size: .75rem; }
.golf-index-grid strong {
  margin-top: auto;
  font-family: "Cormorant Garamond", serif;
  font-size: 2rem;
}
.golf-index-grid small { color: var(--muted); }
@media (max-width: 800px) {
  .golf-hero { grid-template-columns: 1fr; padding-top: 130px; }
  .golf-hero-mark img { width: min(70vw, 430px); }
  .golf-chapter { grid-template-columns: 1fr; min-height: auto; }
  .chapter-time { position: static; }
  .golf-index-grid { grid-template-columns: 1fr; }
}

/* v2.1 — elevate Championship traditions */
.golf-deck-short {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.8rem, 3vw, 3rem);
  line-height: 1.05;
  color: rgba(255,255,255,.9);
}
.golf-traditions-index {
  position: relative;
  background: #f5f0e7;
}
.golf-traditions-index::before {
  content: "THE TRADITIONS";
  display: block;
  width: min(1240px, 100%);
  margin: 0 auto 22px;
  font-size: .68rem;
  font-weight: 600;
  letter-spacing: .22em;
  color: var(--muted);
}
.golf-index-intro {
  max-width: 620px;
  margin: -10px auto 50px 0 !important;
  color: var(--muted);
  font-size: 1.08rem;
}
.golf-index-grid a {
  transition: background .2s ease, transform .2s ease;
}
.golf-index-grid a:hover {
  background: rgba(166,83,40,.06);
  transform: translateY(-2px);
}

/* v2.3 — Current Championship + player registration */
.golf-current-year {
  padding: clamp(90px, 11vw, 155px) 6vw;
  background: #ebe2d2;
}
.golf-current-year > * {
  width: min(1240px, 100%);
  margin-inline: auto;
}
.current-year-heading {
  position: relative;
}
.current-year-number {
  margin: 0;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(5rem, 14vw, 13rem);
  line-height: .72;
  opacity: .1;
}
.current-year-heading h2,
.golf-registration h2 {
  margin: -1.4rem 0 28px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3.4rem, 6vw, 6.7rem);
  line-height: .92;
  letter-spacing: -.04em;
}
.current-year-intro {
  max-width: 720px;
  color: var(--muted);
  font-size: 1.08rem;
}
.current-year-grid {
  margin-top: 65px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.year-info-card {
  min-height: 220px;
  padding: 28px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.year-info-card span,
.year-note span {
  display: block;
  text-transform: uppercase;
  letter-spacing: .15em;
  font-size: .7rem;
  color: var(--muted);
}
.year-info-card strong {
  display: block;
  margin: 54px 0 8px;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.9rem;
  line-height: 1;
}
.year-info-card p {
  margin: 0;
  color: var(--muted);
  font-size: .9rem;
}
.year-note {
  margin-top: 38px;
  padding: 32px 0 0;
  border-top: 1px solid var(--line);
  max-width: 760px;
}
.year-note p {
  color: var(--muted);
}
.golf-registration {
  padding: clamp(90px, 11vw, 155px) 6vw;
  background: #171914;
  color: white;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 8vw;
}
.registration-copy {
  max-width: 520px;
}
.registration-copy p:not(.section-kicker) {
  color: rgba(255,255,255,.68);
}
.registration-note {
  margin-top: 38px;
  padding-top: 25px;
  border-top: 1px solid rgba(255,255,255,.18);
  font-size: .9rem;
}
.registration-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  align-content: start;
}
.registration-form label {
  display: grid;
  gap: 9px;
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .11em;
  color: rgba(255,255,255,.72);
}
.registration-form input,
.registration-form select,
.registration-form textarea {
  width: 100%;
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,.28);
  border-radius: 0;
  padding: 13px 0;
  background: transparent;
  color: white;
  font: inherit;
  text-transform: none;
  letter-spacing: normal;
  outline: none;
}
.registration-form select option {
  color: #171914;
}
.registration-form input:focus,
.registration-form select:focus,
.registration-form textarea:focus {
  border-bottom-color: white;
}
.full-field {
  grid-column: 1 / -1;
}
.registration-check {
  display: flex !important;
  grid-template-columns: none !important;
  flex-direction: row;
  align-items: flex-start;
  gap: 12px !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  line-height: 1.45;
}
.registration-check input {
  width: auto;
  margin-top: 4px;
}
.registration-form button {
  grid-column: 1 / -1;
  width: fit-content;
  margin-top: 16px;
  padding: 15px 20px;
  border: 1px solid rgba(255,255,255,.6);
  border-radius: 999px;
  background: transparent;
  color: white;
  font: inherit;
  cursor: pointer;
}
.registration-form button:hover {
  background: white;
  color: #171914;
}
@media (max-width: 900px) {
  .current-year-grid { grid-template-columns: repeat(2, 1fr); }
  .golf-registration { grid-template-columns: 1fr; }
}
@media (max-width: 580px) {
  .current-year-grid,
  .registration-form { grid-template-columns: 1fr; }
  .full-field { grid-column: auto; }
}

/* v3.0 — The First Tradition Edition */
.golf-traditions-v3 {
  background: #f5f0e7;
  padding: clamp(100px, 12vw, 180px) 4vw;
  overflow: hidden;
}
.traditions-v3-intro,
.tradition-feature,
.traditions-coming-soon,
.jacket-story-inner {
  width: min(1380px, 100%);
  margin-inline: auto;
}
.traditions-v3-intro {
  max-width: 980px;
  margin-left: max(0px, calc((100% - min(1380px, 100%)) / 2));
  margin-bottom: clamp(70px, 10vw, 130px);
}
.traditions-v3-intro .section-kicker { margin-bottom: 18px; }
.traditions-v3-label {
  margin: 0 0 24px;
  text-transform: uppercase;
  letter-spacing: .22em;
  font-size: .68rem;
  font-weight: 600;
  color: var(--muted);
}
.traditions-v3-intro h2 {
  margin: 0 0 30px;
  max-width: 950px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(4rem, 8vw, 8.5rem);
  line-height: .86;
  letter-spacing: -.045em;
}
.traditions-v3-intro > p:last-child {
  max-width: 650px;
  color: var(--muted);
  font-size: 1.08rem;
}
.tradition-feature {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(340px, .55fr);
  min-height: min(82vh, 880px);
  margin-bottom: clamp(70px, 9vw, 125px);
  background: #171713;
  color: white;
  box-shadow: 0 28px 80px rgba(28, 22, 15, .14);
}
.tradition-feature-jacket {
  grid-template-columns: minmax(340px, .55fr) minmax(0, 1.45fr);
}
.tradition-feature-jacket .tradition-feature-image { order: 2; }
.tradition-feature-jacket .tradition-feature-copy { order: 1; }
.tradition-feature-image {
  min-height: 620px;
  overflow: hidden;
  background: #15120f;
}
.tradition-feature-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.015);
  transition: transform 7s ease;
}
.tradition-feature:hover .tradition-feature-image img { transform: scale(1.055); }
.tradition-feature-chalice .tradition-feature-image img { object-position: 50% 52%; }
.tradition-feature-jacket .tradition-feature-image img { object-position: 50% 50%; }
.tradition-feature-reception .tradition-feature-image img { object-position: 50% 50%; }
.tradition-feature-copy {
  position: relative;
  padding: clamp(42px, 6vw, 88px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  background:
    radial-gradient(circle at 50% 20%, rgba(187,126,61,.1), transparent 48%),
    #171713;
}
.tradition-feature-number {
  position: absolute;
  top: 28px;
  right: 30px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(4rem, 7vw, 8rem);
  line-height: 1;
  color: rgba(255,255,255,.06);
}
.tradition-feature-type {
  margin: 0 0 32px;
  text-transform: uppercase;
  letter-spacing: .19em;
  font-size: .68rem;
  font-weight: 600;
  color: rgba(255,255,255,.5);
}
.tradition-feature h3 {
  margin: 0 0 30px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3.4rem, 6vw, 6.7rem);
  line-height: .83;
  letter-spacing: -.045em;
}
.tradition-feature-line {
  margin: 0 0 30px;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.8rem, 2.8vw, 3rem);
  line-height: 1.08;
  color: #f2c98d;
}
.tradition-feature-copy > p:not(.tradition-feature-type):not(.tradition-feature-line) {
  max-width: 510px;
  color: rgba(255,255,255,.67);
}
.tradition-feature-copy a {
  width: fit-content;
  margin-top: 34px;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(255,255,255,.48);
  text-decoration: none;
  font-weight: 600;
}
.tradition-feature-copy a span { display: inline-block; transition: transform .2s ease; }
.tradition-feature-copy a:hover span { transform: translateX(5px); }
.traditions-coming-soon {
  padding-top: clamp(35px, 6vw, 75px);
  border-top: 1px solid var(--line);
}
.coming-soon-heading {
  display: grid;
  grid-template-columns: .55fr 1fr;
  gap: 50px;
  align-items: end;
  margin-bottom: 48px;
}
.coming-soon-heading .section-kicker { margin: 0; }
.coming-soon-heading h3 {
  margin: 0;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3rem, 5vw, 5.5rem);
  line-height: .9;
}
.coming-soon-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.coming-soon-grid > div {
  min-height: 270px;
  padding: 28px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,.18);
}
.coming-soon-grid span,
.coming-soon-grid em {
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .15em;
  color: var(--muted);
  font-style: normal;
}
.coming-soon-grid strong {
  margin-top: auto;
  font-family: "Cormorant Garamond", serif;
  font-size: 2.15rem;
  line-height: 1;
}
.coming-soon-grid small { color: var(--muted); }
.coming-soon-grid em { margin-top: 28px; }
.jacket-story-v3 {
  padding: clamp(100px, 12vw, 180px) 6vw;
  background: #2a261f;
  color: white;
}
.jacket-story-inner { max-width: 1180px; }
.jacket-story-v3 .section-kicker { color: rgba(255,255,255,.5); margin-bottom: 24px; }
.jacket-story-v3 h2 {
  max-width: 950px;
  margin: 0 0 clamp(55px, 8vw, 95px);
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(4rem, 8vw, 8.2rem);
  line-height: .86;
  letter-spacing: -.045em;
}
.jacket-story-grid {
  max-width: 900px;
  margin-left: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(36px, 7vw, 90px);
  color: rgba(255,255,255,.72);
  font-size: 1.08rem;
}
.reveal-on-scroll {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .8s ease, transform .8s ease;
}
.reveal-on-scroll.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .reveal-on-scroll { opacity: 1; transform: none; transition: none; }
  .tradition-feature-image img { transition: none; }
}
@media (max-width: 1050px) {
  .tradition-feature,
  .tradition-feature-jacket { grid-template-columns: 1fr; }
  .tradition-feature-jacket .tradition-feature-image,
  .tradition-feature-jacket .tradition-feature-copy { order: initial; }
  .tradition-feature-image { min-height: 58vw; max-height: 760px; }
  .coming-soon-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 720px) {
  .golf-traditions-v3 { padding-inline: 0; }
  .traditions-v3-intro,
  .traditions-coming-soon { padding-inline: 6vw; }
  .tradition-feature { margin-bottom: 65px; }
  .tradition-feature-image { min-height: 78vw; }
  .tradition-feature-copy { min-height: 520px; }
  .coming-soon-heading,
  .jacket-story-grid { grid-template-columns: 1fr; }
  .coming-soon-grid { grid-template-columns: 1fr; }
  .coming-soon-grid > div { min-height: 220px; }
}

/* v3.3 — Champions Reception image-fit correction */
.tradition-feature-reception {
  display: block;
  min-height: 0;
}
.tradition-feature-reception .tradition-feature-image {
  min-height: 0;
  aspect-ratio: 3 / 2;
  background: #171713;
}
.tradition-feature-reception .tradition-feature-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transform: none;
}
.tradition-feature-reception:hover .tradition-feature-image img {
  transform: none;
}
.tradition-feature-reception .tradition-feature-copy {
  min-height: 0;
  padding: clamp(38px, 5vw, 68px);
}
.tradition-feature-reception .tradition-feature-number {
  top: 18px;
  right: 26px;
}

@media (min-width: 900px) {
  .tradition-feature-reception .tradition-feature-copy {
    display: grid;
    grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr);
    column-gap: clamp(38px, 6vw, 90px);
    align-items: end;
  }
  .tradition-feature-reception .tradition-feature-type,
  .tradition-feature-reception h3,
  .tradition-feature-reception .tradition-feature-line {
    grid-column: 1;
  }
  .tradition-feature-reception .tradition-feature-copy > p:not(.tradition-feature-type):not(.tradition-feature-line),
  .tradition-feature-reception .tradition-feature-copy a {
    grid-column: 2;
  }
  .tradition-feature-reception .tradition-feature-type {
    margin-bottom: 20px;
  }
  .tradition-feature-reception h3 {
    margin-bottom: 22px;
    font-size: clamp(3.2rem, 5vw, 5.8rem);
  }
  .tradition-feature-reception .tradition-feature-line {
    margin-bottom: 0;
  }
  .tradition-feature-reception .tradition-feature-copy > p:not(.tradition-feature-type):not(.tradition-feature-line) {
    align-self: end;
    margin: 0;
  }
  .tradition-feature-reception .tradition-feature-copy a {
    margin-top: 24px;
  }
}

/* v3.5 — Burnside Way Corn Hole Championship */
.cornhole-page { background:#12120f; color:#f5efdf; }
.cornhole-page .site-header { color:#fff; background:linear-gradient(to bottom,rgba(8,8,7,.72),transparent); border-bottom-color:transparent; }
.cornhole-page .site-header.scrolled { background:rgba(16,16,13,.94); backdrop-filter:blur(12px); }
.cornhole-origin { height:600vh; position:relative; background:#0b0b09; }
.cornhole-origin-sticky { position:sticky; top:0; height:100vh; overflow:hidden; isolation:isolate; }
.cornhole-origin-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.82) contrast(1.06) brightness(.78); transform:scale(1.015); transition:filter .2s linear, transform .2s linear; }
.cornhole-storm-layer { position:absolute; inset:0; background:linear-gradient(180deg,rgba(9,18,32,.08) 0%,rgba(5,8,14,.02) 43%,rgba(6,5,2,.25) 100%); mix-blend-mode:multiply; opacity:.25; }
.cornhole-origin-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,8,6,.72) 0%,rgba(8,8,6,.25) 48%,rgba(8,8,6,.1) 100%),linear-gradient(0deg,rgba(8,8,6,.75),transparent 50%); opacity:.72; }
.cornhole-origin-opening { position:absolute; left:clamp(26px,7vw,110px); bottom:clamp(45px,10vh,110px); max-width:930px; z-index:3; transition:opacity .35s ease, transform .35s ease; }
.origin-year { text-transform:uppercase; letter-spacing:.24em; font-size:.72rem; font-weight:700; color:#efad4a; }
.cornhole-origin-opening h1 { margin:18px 0 32px; font-family:"Cormorant Garamond",serif; font-size:clamp(4.3rem,9.6vw,10.5rem); line-height:.78; letter-spacing:-.055em; text-wrap:balance; }
.cornhole-story-actions { display:flex; flex-wrap:wrap; gap:12px; }
.cornhole-story-button { appearance:none; border:1px solid rgba(255,255,255,.42); background:rgba(16,16,13,.42); color:white; min-height:48px; padding:0 20px; font:600 .76rem/1 Inter,sans-serif; text-transform:uppercase; letter-spacing:.12em; cursor:pointer; backdrop-filter:blur(8px); transition:.25s ease; }
.cornhole-story-button:hover { background:#efad4a; color:#16130d; border-color:#efad4a; }
.play-icon { margin-right:9px; }
.audio-status { margin:14px 0 0; font-size:.78rem; color:rgba(255,255,255,.56); }
.cornhole-scroll-link { display:inline-block; margin-top:22px; color:#fff; }
.cornhole-story-stage { position:absolute; inset:0; z-index:4; display:grid; place-items:center; pointer-events:none; padding:8vw; }
.cornhole-story-line { position:absolute; width:min(1050px,84vw); margin:0; text-align:center; font-family:"Cormorant Garamond",serif; font-size:clamp(3rem,7vw,7.8rem); line-height:.92; letter-spacing:-.04em; opacity:0; transform:translateY(85px); filter:blur(5px); text-shadow:0 3px 30px rgba(0,0,0,.65); }
.cornhole-story-line.is-active { opacity:1; transform:translateY(0); filter:blur(0); }
.cornhole-story-line.is-past { opacity:0; transform:translateY(-80px); filter:blur(4px); }
.story-list { display:flex; flex-direction:column; gap:.12em; font-size:clamp(2.5rem,5.7vw,6.2rem); }
.story-confession strong { display:block; color:#efad4a; font-style:italic; }
.story-vision { color:#efad4a; font-size:clamp(4rem,10vw,11rem); }
.story-photo { max-width:1100px; }
.story-final { font-size:clamp(2.6rem,5.6vw,6.4rem); }
.story-final strong { display:block; margin-top:.25em; color:#efad4a; }
.story-progress { position:absolute; left:50%; bottom:24px; z-index:6; width:min(480px,60vw); height:2px; transform:translateX(-50%); background:rgba(255,255,255,.2); opacity:0; transition:opacity .3s; }
.story-progress span { display:block; height:100%; width:0; background:#efad4a; }
.story-skip { position:absolute; right:28px; bottom:20px; z-index:7; border:0; background:none; color:rgba(255,255,255,.7); text-transform:uppercase; letter-spacing:.13em; font-size:.68rem; cursor:pointer; opacity:0; pointer-events:none; }
.cornhole-origin.is-story-active .story-progress,.cornhole-origin.is-story-active .story-skip { opacity:1; pointer-events:auto; }
.cornhole-origin.is-story-active .cornhole-origin-opening { opacity:0; transform:translateY(-25px); pointer-events:none; }
.cornhole-identity { min-height:100vh; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:7vw; padding:clamp(90px,11vw,170px) 7vw; background:radial-gradient(circle at 20% 45%,#423322 0%,#1a1914 36%,#10100d 75%); }
.cornhole-identity-mark img { display:block; width:min(650px,100%); margin:auto; filter:drop-shadow(0 30px 50px rgba(0,0,0,.5)); }
.cornhole-identity-copy h2,.evolution-heading h2,.cornhole-night h2,.champions-heading h2,.cornhole-current h2 { font-family:"Cormorant Garamond",serif; font-size:clamp(4rem,7.8vw,8.7rem); line-height:.84; letter-spacing:-.05em; margin:16px 0 34px; }
.cornhole-tagline { color:#efad4a; text-transform:uppercase; letter-spacing:.12em; line-height:1.8; font-weight:700; }
.cornhole-identity-copy > p:last-child { max-width:650px; font-size:1.12rem; color:rgba(255,255,255,.66); }
.cornhole-evolution { padding:clamp(100px,12vw,180px) 7vw; background:#e9dfc9; color:#171710; }
.evolution-heading { max-width:900px; margin-bottom:80px; }
.evolution-track { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(20,20,15,.28); }
.evolution-year { min-height:470px; padding:44px clamp(26px,3.5vw,55px) 50px 0; border-right:1px solid rgba(20,20,15,.18); }
.evolution-year + .evolution-year { padding-left:clamp(26px,3.5vw,55px); }
.evolution-year:last-child { border-right:0; }
.evolution-number { font:700 .78rem/1 Inter,sans-serif; letter-spacing:.18em; text-transform:uppercase; color:#9a551e; }
.evolution-year h3 { margin:150px 0 24px; font-family:"Cormorant Garamond",serif; font-size:clamp(2.6rem,4vw,4.8rem); line-height:.9; }
.evolution-year p { color:#555044; line-height:1.8; }
.cornhole-night { min-height:100vh; padding:clamp(100px,12vw,180px) 7vw; display:grid; align-content:center; background:linear-gradient(135deg,rgba(11,15,24,.94),rgba(23,17,10,.92)),url('assets/cornhole-origin-2019.jpeg') center/cover; }
.cornhole-night-copy { max-width:1050px; }
.night-lead { max-width:850px; color:#efad4a; font-family:"Cormorant Garamond",serif; font-size:clamp(1.8rem,3vw,3.1rem); line-height:1.1; }
.cornhole-night-copy > p:last-child { max-width:760px; color:rgba(255,255,255,.7); line-height:1.8; }
.night-cues { display:flex; flex-wrap:wrap; gap:10px; margin-top:70px; }
.night-cues span { border:1px solid rgba(255,255,255,.2); padding:12px 18px; text-transform:uppercase; letter-spacing:.18em; font-size:.68rem; }
.cornhole-champions { padding:clamp(100px,12vw,180px) 7vw; background:#171711; }
.champions-heading { max-width:1000px; margin-bottom:80px; }
.champions-heading > p:last-child { max-width:650px; color:rgba(255,255,255,.6); }
.champion-placeholders { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.champion-card { min-height:360px; padding:34px; display:flex; flex-direction:column; justify-content:flex-end; border:1px solid rgba(255,255,255,.13); background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.015)); }
.champion-card span { margin-bottom:auto; color:#efad4a; text-transform:uppercase; letter-spacing:.16em; font-size:.7rem; }
.champion-card strong { font-family:"Cormorant Garamond",serif; font-size:2.4rem; line-height:.95; }
.champion-card small { margin-top:15px; color:rgba(255,255,255,.48); }
.champion-card-next { background:#efad4a; color:#1a150e; }
.champion-card-next span,.champion-card-next small { color:rgba(26,21,14,.7); }
.cornhole-current { padding:clamp(100px,12vw,170px) 7vw; display:grid; grid-template-columns:.9fr 1.1fr; gap:8vw; background:#d56827; color:#17110d; }
.cornhole-current-copy > p { max-width:650px; line-height:1.75; }
.cornhole-details { display:grid; gap:1px; background:rgba(23,17,13,.18); }
.cornhole-details > div { padding:28px; background:#e7833e; display:grid; gap:7px; }
.cornhole-details span { text-transform:uppercase; letter-spacing:.15em; font-size:.67rem; font-weight:700; }
.cornhole-details strong { font-family:"Cormorant Garamond",serif; font-size:2rem; }
.cornhole-details small { opacity:.68; }
.cornhole-register-button { display:flex; align-items:center; justify-content:center; min-height:75px; background:#17110d; color:#fff; text-transform:uppercase; letter-spacing:.16em; font-size:.73rem; font-weight:700; }
.cornhole-footer { background:#0d0d0a; }
@media (max-width:900px) {
  .cornhole-identity,.cornhole-current { grid-template-columns:1fr; }
  .cornhole-identity-mark img { max-width:520px; }
  .evolution-track,.champion-placeholders { grid-template-columns:1fr; }
  .evolution-year { min-height:340px; border-right:0; border-bottom:1px solid rgba(20,20,15,.18); padding:36px 0; }
  .evolution-year + .evolution-year { padding-left:0; }
  .evolution-year h3 { margin-top:90px; }
}
@media (max-width:650px) {
  .cornhole-origin { height:520vh; }
  .cornhole-origin-photo { object-position:56% center; }
  .cornhole-origin-opening { left:22px; right:22px; bottom:45px; }
  .cornhole-origin-opening h1 { font-size:clamp(3.6rem,18vw,6rem); }
  .cornhole-story-stage { padding:24px; }
  .cornhole-story-line { width:88vw; font-size:clamp(2.6rem,13vw,4.8rem); }
  .story-list { font-size:clamp(2.1rem,10vw,3.7rem); }
  .story-skip { display:none; }
  .cornhole-story-actions { flex-direction:column; align-items:flex-start; }
}
@media (prefers-reduced-motion:reduce) {
  .cornhole-origin { height:auto; }
  .cornhole-origin-sticky { position:relative; min-height:100vh; }
  .cornhole-story-stage,.story-progress,.story-skip { display:none; }
}

/* Corn Hole Championship registration */
.cornhole-registration-form {
  grid-column: 1 / -1;
  margin-top: clamp(52px, 7vw, 96px);
  padding: clamp(34px, 5vw, 72px);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  background: #17110d;
  color: #fff7ec;
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 30px 80px rgba(52,23,7,.22);
}
.cornhole-form-heading { grid-column: 1 / -1; max-width: 780px; margin-bottom: 16px; }
.cornhole-form-heading h3 {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3.1rem, 5.8vw, 6.5rem);
  line-height: .88;
  letter-spacing: -.045em;
  margin: 14px 0 22px;
}
.cornhole-form-heading > p:last-child { max-width: 650px; line-height: 1.7; color: rgba(255,247,236,.72); }
.cornhole-registration-form label {
  display: grid;
  gap: 9px;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: .69rem;
  font-weight: 700;
}
.cornhole-registration-form input,
.cornhole-registration-form select,
.cornhole-registration-form textarea {
  width: 100%;
  padding: 16px 17px;
  border: 1px solid rgba(255,247,236,.22);
  border-radius: 0;
  background: rgba(255,255,255,.055);
  color: #fff7ec;
  font: 500 1rem/1.35 Inter, sans-serif;
  text-transform: none;
  letter-spacing: normal;
}
.cornhole-registration-form select option { color: #17110d; }
.cornhole-registration-form input::placeholder,
.cornhole-registration-form textarea::placeholder { color: rgba(255,247,236,.42); }
.cornhole-registration-form input:focus,
.cornhole-registration-form select:focus,
.cornhole-registration-form textarea:focus {
  outline: 2px solid #d56827;
  outline-offset: 2px;
  border-color: transparent;
}
.cornhole-registration-form .full-field { grid-column: 1 / -1; }
.cornhole-registration-form .registration-check {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  text-transform: none;
  letter-spacing: normal;
  font-size: .88rem;
  line-height: 1.55;
  color: rgba(255,247,236,.78);
}
.cornhole-registration-form .registration-check input { width: auto; margin-top: 4px; accent-color: #d56827; }
.cornhole-registration-form button {
  min-height: 66px;
  padding: 17px 26px;
  border: 0;
  background: #d56827;
  color: #17110d;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: .74rem;
  font-weight: 800;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease;
}
.cornhole-registration-form button:hover { transform: translateY(-2px); background: #ef7b35; }
.cornhole-form-note { align-self: center; margin: 0; color: rgba(255,247,236,.5); font-size: .76rem; line-height: 1.55; }
@media (max-width: 760px) {
  .cornhole-registration-form { grid-template-columns: 1fr; }
  .cornhole-registration-form .full-field,
  .cornhole-form-heading { grid-column: 1; }
}

/* Homepage v4 — Story Edition */
.homepage-v4 { background: #f4efe6; }
.home-hero { min-height: 100svh; position: relative; display: flex; align-items: flex-end; overflow: hidden; color: #fff; background: url("assets/blockparty-hero-2026.png") center 50% / cover no-repeat; }
.home-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(20,16,11,.78) 0%, rgba(20,16,11,.38) 47%, rgba(20,16,11,.12) 75%), linear-gradient(0deg, rgba(15,12,9,.68), transparent 48%); }
.home-hero-content { position: relative; z-index: 2; width: min(1260px,92vw); margin: 0 auto; padding: 0 0 clamp(72px,9vw,124px); }
.home-hero-kicker { text-transform: uppercase; letter-spacing: .25em; font-size: .72rem; font-weight: 600; margin: 0 0 18px; }
.home-hero h1 { margin: 0; max-width: 940px; font-family: "Cormorant Garamond",serif; font-weight: 600; font-size: clamp(4rem,10vw,9.5rem); line-height: .82; letter-spacing: -.055em; }
.home-hero h1 span,.home-hero h1 strong { display:block; }
.home-hero h1 strong { font-weight: 600; color: #efbf78; }
.home-hero-content>p:not(.home-hero-kicker) { max-width: 680px; margin: 28px 0 0; font-family: "Cormorant Garamond",serif; font-size: clamp(1.4rem,2.5vw,2.4rem); line-height:1.15; }
.hero-button { display:inline-flex; margin-top: 32px; padding: 13px 19px; border:1px solid rgba(255,255,255,.72); border-radius:999px; text-decoration:none; font-size:.9rem; gap:12px; align-items:center; }
.hero-edition { position:absolute; z-index:2; right:3vw; bottom:24px; margin:0; font-size:.64rem; letter-spacing:.13em; text-transform:uppercase; opacity:.72; }
.home-origin { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); min-height:82vh; background:#171411; color:#f8f3e9; }
.home-origin-image img { width:100%; height:100%; object-fit:cover; }
.home-origin-copy { padding:clamp(70px,9vw,140px) clamp(36px,7vw,110px); align-self:center; }
.home-origin-copy .section-kicker { color:#b9aa97; margin-bottom:32px; }
.home-origin-overline { color:#c9bba8; font-size:.92rem; text-transform:uppercase; letter-spacing:.13em; }
.home-origin-copy h2,.home-section-heading h2,.home-day-copy h2,.home-championship-heading h2,.home-closing h2 { font-family:"Cormorant Garamond",serif; letter-spacing:-.04em; line-height:.92; }
.home-origin-copy h2 { font-size:clamp(3.5rem,7vw,7rem); margin:10px 0 28px; }
.home-origin-lead { font-family:"Cormorant Garamond",serif; font-size:clamp(1.45rem,2.2vw,2.15rem); line-height:1.28; }
.text-link { display:inline-block; margin-top:26px; text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:4px; }
.home-traditions,.home-people,.home-timeline { padding:clamp(90px,11vw,160px) 4vw; }
.home-section-heading { width:min(1220px,100%); margin:0 auto clamp(54px,7vw,92px); display:grid; grid-template-columns:1fr 1.2fr; gap:40px; align-items:end; }
.home-section-heading .section-kicker { grid-column:1/-1; margin-bottom:0; }
.home-section-heading h2 { margin:0; font-size:clamp(3.4rem,6.7vw,7rem); }
.home-section-heading>p:last-child { max-width:500px; color:var(--muted); font-size:1.05rem; }
.home-tradition-grid { width:min(1320px,100%); margin:0 auto; display:grid; grid-template-columns:1.25fr .875fr .875fr; gap:18px; }
.home-tradition-card { position:relative; min-height:650px; overflow:hidden; background:#e7ddcd; }
.home-tradition-card>img { width:100%; height:100%; object-fit:cover; }
.home-tradition-shade { position:absolute; inset:0; background:linear-gradient(0deg,rgba(12,10,8,.8),transparent 68%); }
.home-tradition-copy { position:absolute; inset:auto 0 0; z-index:2; padding:38px; color:#fff; }
.home-tradition-copy span { font-size:.69rem; letter-spacing:.15em; text-transform:uppercase; }
.home-tradition-copy h3 { margin:12px 0 16px; font-family:"Cormorant Garamond",serif; font-size:clamp(2.3rem,4vw,4.4rem); line-height:.92; }
.home-tradition-copy p { max-width:440px; }
.home-tradition-copy a { text-decoration:none; font-weight:600; }
.home-logo-stage { height:100%; display:grid; place-items:center; padding:70px 38px 250px; background:#d9cbb8; }
.home-logo-stage img { max-width:74%; max-height:290px; object-fit:contain; }
.home-logo-stage-dark { background:#171411; }
.home-tradition-copy-dark { color:#171411; background:linear-gradient(0deg,rgba(217,203,184,.98) 40%,transparent); }
.home-tradition-copy-light { background:linear-gradient(0deg,rgba(23,20,17,.98) 42%,transparent); }
.home-day { display:grid; grid-template-columns:1.4fr .8fr; background:#f9f5ed; }
.home-day-image img { width:100%; height:100%; min-height:720px; object-fit:cover; }
.home-day-copy { padding:clamp(70px,8vw,130px) clamp(38px,6vw,90px); align-self:center; }
.home-day-copy h2 { font-size:clamp(3rem,5.6vw,6rem); margin:0 0 28px; }
.home-day-copy blockquote { margin:42px 0; padding-left:26px; border-left:2px solid var(--warm); font-family:"Cormorant Garamond",serif; font-size:clamp(1.5rem,2.6vw,2.4rem); line-height:1.25; }
.home-day-signoff { font-size:.7rem; letter-spacing:.15em; text-transform:uppercase; color:var(--muted); }
.people-grid { width:min(1220px,100%); margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.people-grid article { min-height:260px; padding:30px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(255,255,255,.24); }
.people-grid span { font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); }
.people-grid h3 { margin:36px 0 10px; font-family:"Cormorant Garamond",serif; font-size:2rem; }
.people-grid p { color:var(--muted); }
.home-championship-bridge { padding:clamp(90px,11vw,160px) 4vw; background:#171411; color:#f9f5ed; }
.home-championship-heading,.championship-symbols { width:min(1220px,100%); margin-inline:auto; }
.home-championship-heading .section-kicker { color:#b9aa97; }
.home-championship-heading h2 { max-width:1000px; margin:0 0 64px; font-size:clamp(3.4rem,7vw,7.3rem); }
.championship-symbols { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.22); border-left:1px solid rgba(255,255,255,.22); }
.championship-symbols a { min-height:230px; padding:30px; display:flex; flex-direction:column; justify-content:flex-end; text-decoration:none; border-right:1px solid rgba(255,255,255,.22); border-bottom:1px solid rgba(255,255,255,.22); transition:background .25s ease; }
.championship-symbols a:hover { background:rgba(255,255,255,.07); }
.championship-symbols strong { font-family:"Cormorant Garamond",serif; font-size:2rem; }
.championship-symbols span { margin-top:12px; color:#c9bba8; }
.timeline-track { width:min(1220px,100%); margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.timeline-track article { min-height:210px; padding:28px; background:#fbf8f2; border:1px solid var(--line); }
.timeline-track span { font-family:"Cormorant Garamond",serif; font-size:2.4rem; color:var(--warm); }
.timeline-track p { margin-top:42px; }
.timeline-future { background:#171411!important; color:#fff; }
.home-full-origin { padding-top:clamp(100px,12vw,170px); }
.home-closing { min-height:88vh; position:relative; display:grid; place-items:center; text-align:center; color:#fff; background:url("assets/from-this-fire-hero.jpg") center 58% / cover no-repeat; }
.home-closing-shade { position:absolute; inset:0; background:rgba(12,10,8,.66); }
.home-closing-copy { position:relative; z-index:2; width:min(900px,86vw); padding:100px 0; }
.home-closing-copy .section-kicker { color:#d8cab7; }
.home-closing h2 { margin:0; font-size:clamp(5rem,12vw,11rem); }
.home-closing-copy>p:not(.section-kicker) { max-width:700px; margin:28px auto; font-family:"Cormorant Garamond",serif; font-size:clamp(1.35rem,2.6vw,2.4rem); line-height:1.25; }
.home-closing-copy strong { display:block; margin-top:64px; font-family:"Cormorant Garamond",serif; font-size:clamp(2.5rem,5vw,5rem); color:#efbf78; }
@media (max-width: 980px) {
  .home-origin,.home-day { grid-template-columns:1fr; }
  .home-origin-image img,.home-day-image img { min-height:56vh; max-height:680px; }
  .home-section-heading { grid-template-columns:1fr; }
  .home-tradition-grid { grid-template-columns:1fr; }
  .home-tradition-card { min-height:600px; }
  .people-grid,.championship-symbols,.timeline-track { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 640px) {
  .home-hero h1 { font-size:clamp(3.7rem,18vw,6rem); }
  .home-hero { background-position:42% center; }
  .hero-edition { display:none; }
  .home-traditions,.home-people,.home-timeline { padding-inline:20px; }
  .home-tradition-card { min-height:540px; }
  .home-tradition-copy { padding:26px; }
  .people-grid,.championship-symbols,.timeline-track { grid-template-columns:1fr; }
  .home-day-copy,.home-origin-copy { padding-inline:24px; }
}

/* v4.0 — Documentary homepage */
.documentary-home { background:#f2ede4; }
.documentary-hero {
  position:relative; min-height:100svh; overflow:hidden; color:#fff;
  display:grid; place-items:center; text-align:center; isolation:isolate;
}
.documentary-fire {
  position:absolute; inset:-3%; z-index:-3;
  background:url("assets/from-this-fire-hero.jpg") center 55% / cover no-repeat;
  transform:scale(1.035); animation:documentary-breathe 18s ease-in-out infinite alternate;
}
.documentary-shade {
  position:absolute; inset:0; z-index:-2;
  background:radial-gradient(circle at 50% 61%, rgba(31,18,8,.04), rgba(11,8,6,.54) 55%, rgba(8,7,6,.86) 100%),
             linear-gradient(0deg, rgba(7,6,5,.76), rgba(7,6,5,.18) 45%, rgba(7,6,5,.55));
}
.documentary-hero::after {
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:linear-gradient(90deg, transparent 0 48%, rgba(255,141,49,.06) 50%, transparent 52%);
  mix-blend-mode:screen; animation:ember-glow 6s ease-in-out infinite;
}
.documentary-hero-content { width:min(980px,88vw); padding:140px 0 130px; }
.documentary-kicker { margin:0 0 24px; font-size:.72rem; text-transform:uppercase; letter-spacing:.25em; color:#e3d3bd; font-weight:600; }
.documentary-hero h1 { margin:0; font:600 clamp(5rem,14vw,12.5rem)/.78 "Cormorant Garamond",serif; letter-spacing:-.065em; text-shadow:0 12px 45px rgba(0,0,0,.48); }
.documentary-deck { margin:34px auto 0; max-width:760px; font:500 clamp(1.4rem,3vw,2.7rem)/1.12 "Cormorant Garamond",serif; }
.documentary-deck span,.documentary-deck strong { display:block; }
.documentary-deck strong { color:#efbf78; font-weight:600; }
.origin-player { margin:42px auto 0; display:grid; justify-items:center; gap:16px; width:min(680px,100%); }
.origin-play { border:1px solid rgba(255,255,255,.55); background:rgba(12,10,8,.42); color:#fff; border-radius:999px; padding:17px 28px; display:inline-flex; align-items:center; gap:12px; font:600 .82rem/1 Inter,sans-serif; letter-spacing:.12em; text-transform:uppercase; backdrop-filter:blur(12px); cursor:pointer; transition:.25s ease; }
.origin-play:hover { background:#fff; color:#17120d; transform:translateY(-2px); }
.origin-play-icon { display:grid; place-items:center; width:25px; height:25px; border-radius:50%; background:#efbf78; color:#21170e; font-size:.72rem; padding-left:2px; }
.origin-play[aria-pressed="true"] .origin-play-icon { padding-left:0; }
.origin-status { margin:0; color:#d7c9b8; font-size:.78rem; letter-spacing:.04em; }
.origin-progress-wrap { width:min(560px,90vw); }
.origin-time { display:flex; justify-content:space-between; font-size:.72rem; color:#e3d9cc; margin-bottom:8px; }
.origin-progress { width:100%; accent-color:#efbf78; cursor:pointer; }
.documentary-scroll { position:absolute; bottom:28px; left:50%; transform:translateX(-50%); color:#fff; font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; text-decoration:none; opacity:.8; }
.documentary-intro { display:grid; grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr); gap:clamp(40px,8vw,140px); align-items:end; padding:clamp(90px,12vw,170px) min(7vw,110px); background:#171411; color:#f5eee4; }
.documentary-intro h2 { margin:12px 0 0; font:600 clamp(3.8rem,8vw,8rem)/.88 "Cormorant Garamond",serif; letter-spacing:-.05em; }
.documentary-intro>p { margin:0; max-width:720px; font:500 clamp(1.4rem,2.3vw,2.2rem)/1.3 "Cormorant Garamond",serif; color:#d8cbbb; }
.documentary-home .home-traditions { padding-top:clamp(100px,12vw,170px); }
@keyframes documentary-breathe { from{transform:scale(1.035)} to{transform:scale(1.085)} }
@keyframes ember-glow { 0%,100%{opacity:.2} 50%{opacity:.8} }
@media (max-width:760px){
  .documentary-hero { min-height:100svh; }
  .documentary-fire { background-position:58% center; }
  .documentary-hero-content { padding:120px 0 112px; }
  .documentary-hero h1 { font-size:clamp(4.7rem,22vw,7.2rem); }
  .documentary-intro { grid-template-columns:1fr; padding-inline:24px; }
}
@media (prefers-reduced-motion:reduce){ .documentary-fire,.documentary-hero::after{animation:none} }


/* v4.1 — reflective ending after the origin narration */
.origin-afterglow {
  position: absolute;
  left: 50%;
  bottom: 5.5rem;
  z-index: 5;
  width: min(90vw, 42rem);
  transform: translate(-50%, 18px);
  text-align: center;
  color: #fff;
  opacity: 0;
  transition: opacity 1.4s ease, transform 1.4s ease;
}
.origin-afterglow.is-visible { opacity: 1; transform: translate(-50%, 0); }
.origin-afterglow p {
  margin: 0 0 1.25rem;
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(1.55rem, 3vw, 2.5rem);
  line-height: 1.15;
  text-shadow: 0 2px 22px rgba(0,0,0,.72);
}
.origin-afterglow strong { font-weight: 700; }
.origin-continue {
  display: inline-flex;
  gap: .55rem;
  align-items: center;
  padding: .9rem 1.25rem;
  border: 1px solid rgba(255,255,255,.62);
  border-radius: 999px;
  color: #fff;
  text-decoration: none;
  background: rgba(18,18,18,.38);
  backdrop-filter: blur(8px);
}
.origin-continue:hover { background: rgba(255,255,255,.14); }
@media (max-width: 700px) {
  .origin-afterglow { bottom: 3.25rem; }
  .origin-afterglow p { font-size: 1.65rem; }
}


/* v4.2 — Oral-history chapter shelf and Burnside Way Days */
.episode-library { padding:clamp(90px,11vw,160px) 4vw; background:#171411; color:#f8f3e9; }
.episode-library-heading { width:min(1220px,100%); margin:0 auto 60px; display:grid; grid-template-columns:1.15fr .85fr; gap:40px; align-items:end; }
.episode-library-heading .section-kicker { grid-column:1/-1; color:#b9aa97; margin-bottom:0; }
.episode-library-heading h2 { margin:0; font-family:"Cormorant Garamond",serif; font-size:clamp(3.5rem,7vw,7.4rem); line-height:.9; letter-spacing:-.045em; }
.episode-library-heading>p:last-child { color:#c9bba8; max-width:520px; }
.episode-grid { width:min(1220px,100%); margin:auto; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.2); border-left:1px solid rgba(255,255,255,.2); }
.episode-card { min-height:400px; padding:34px; display:flex; flex-direction:column; border-right:1px solid rgba(255,255,255,.2); border-bottom:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.025); }
.episode-card-live { background:linear-gradient(145deg,rgba(166,83,40,.32),rgba(255,255,255,.025)); }
.episode-card>span { text-transform:uppercase; letter-spacing:.14em; font-size:.68rem; color:#b9aa97; }
.episode-card h3 { margin:70px 0 18px; font-family:"Cormorant Garamond",serif; font-size:clamp(2.6rem,4vw,4.4rem); line-height:.9; }
.episode-card p { color:#c9bba8; }
.episode-card a,.episode-card em { margin-top:auto; padding-top:35px; text-decoration:none; font-style:normal; font-weight:600; }
.days-preview { display:grid; grid-template-columns:1fr 1.2fr; gap:clamp(45px,8vw,100px); padding:clamp(90px,11vw,150px) max(4vw,calc((100vw - 1220px)/2)); background:#e7ddcd; }
.days-preview-copy h2 { margin:0 0 25px; font-family:"Cormorant Garamond",serif; font-size:clamp(4rem,8vw,8rem); line-height:.82; letter-spacing:-.055em; }
.days-preview-copy>p:not(.section-kicker) { max-width:520px; color:var(--muted); }
.days-preview-link { display:inline-block; margin-top:28px; text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:5px; }
.days-preview-schedule { display:grid; border-top:1px solid rgba(25,23,20,.22); }
.days-preview-schedule article { padding:28px 4px; display:grid; grid-template-columns:170px 1fr auto; gap:20px; align-items:baseline; border-bottom:1px solid rgba(25,23,20,.22); }
.days-preview-schedule span,.days-preview-schedule small { color:var(--muted); }
.days-preview-schedule strong { font-family:"Cormorant Garamond",serif; font-size:clamp(1.6rem,2.7vw,2.5rem); }
.days-hero { min-height:100svh; position:relative; display:flex; align-items:flex-end; color:white; background:url("assets/blockparty-hero-2026.png") center/cover no-repeat; }
.days-hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(13,11,8,.82),rgba(13,11,8,.18) 70%),linear-gradient(0deg,rgba(13,11,8,.72),transparent 55%); }
.days-hero-content { position:relative; z-index:2; width:min(1220px,92vw); margin:auto; padding-bottom:clamp(70px,10vw,130px); }
.days-hero-content>p { text-transform:uppercase; letter-spacing:.18em; font-size:.72rem; }
.days-hero h1 { margin:10px 0; font-family:"Cormorant Garamond",serif; font-size:clamp(4.8rem,12vw,11rem); line-height:.78; letter-spacing:-.065em; }
.days-hero-content>strong { display:block; font-family:"Cormorant Garamond",serif; font-size:clamp(1.5rem,3vw,2.8rem); font-weight:500; }
.days-hero-content>a { display:inline-block; margin-top:30px; padding-bottom:5px; border-bottom:1px solid rgba(255,255,255,.6); text-decoration:none; }
.days-statement,.days-note { padding:clamp(100px,12vw,170px) 4vw; }
.days-statement { max-width:1200px; margin:auto; }
.days-statement>p { text-transform:uppercase; letter-spacing:.13em; color:var(--muted); font-size:.75rem; }
.days-statement h2,.days-note h2 { margin:28px 0 0; font-family:"Cormorant Garamond",serif; font-size:clamp(3.3rem,7vw,7rem); line-height:.95; letter-spacing:-.04em; }
.days-weekend { background:#171411; color:#f8f3e9; }
.days-event { min-height:78vh; display:grid; grid-template-columns:1.25fr .75fr; border-bottom:1px solid rgba(255,255,255,.13); }
.days-event:nth-child(even) { grid-template-columns:.75fr 1.25fr; }
.days-event:nth-child(even) .days-event-image { order:2; }
.days-event-image img { width:100%; height:100%; min-height:650px; object-fit:cover; }
.days-event-copy { padding:clamp(60px,8vw,120px); align-self:center; }
.days-event-copy>span { text-transform:uppercase; letter-spacing:.14em; font-size:.7rem; color:#b9aa97; }
.days-event-copy h2 { margin:22px 0; font-family:"Cormorant Garamond",serif; font-size:clamp(3.2rem,6vw,6.4rem); line-height:.88; letter-spacing:-.045em; }
.days-event-copy p { color:#c9bba8; font-size:1.05rem; }
.days-event-copy a { display:inline-block; margin-top:25px; text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:4px; }
.days-event-copy small { display:block; margin-top:25px; color:#b9aa97; }
.days-note { background:#e7ddcd; }
.days-note>* { max-width:1000px; margin-left:auto; margin-right:auto; }
.days-note>p:last-child { max-width:760px; color:var(--muted); font-size:1.08rem; }
@media(max-width:900px){
 .episode-library-heading,.days-preview,.days-event,.days-event:nth-child(even){grid-template-columns:1fr}
 .episode-grid{grid-template-columns:1fr}
 .days-preview-schedule article{grid-template-columns:1fr;gap:4px}
 .days-event:nth-child(even) .days-event-image{order:0}
 .days-event-image img{min-height:420px}
}

/* v4.3 — Memory Edition */
.homepage-v43 .site-header { background: rgba(13,18,15,.82); }
.quiet-intro { padding: 7rem 8vw 4rem; text-align:center; background:#f2eee4; }
.quiet-intro h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(3rem,6vw,6rem); margin:.3rem 0; color:#1b2820; }
.quiet-intro p { color:#6a6257; }
.quiet-intro a { display:inline-block; margin-top:1rem; color:#7d4a2e; font-weight:600; text-decoration:none; }
.simple-events { display:grid; grid-template-columns:repeat(3,1fr); background:#141a16; }
.simple-event { min-height:72vh; position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:flex-end; padding:3rem; color:#fff; text-decoration:none; }
.simple-event img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.simple-event::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.82)); }
.simple-event:hover img { transform:scale(1.035); }
.simple-event span,.simple-event h2 { position:relative; z-index:1; }
.simple-event span { text-transform:uppercase; letter-spacing:.16em; font-size:.72rem; }
.simple-event h2 { font:600 clamp(2.6rem,4vw,4.8rem)/.92 'Cormorant Garamond',serif; margin:.6rem 0 0; }
.memory-statement { display:grid; grid-template-columns:1fr 1fr; gap:4rem; padding:7rem 8vw; background:#efe9dc; align-items:end; }
.memory-statement h2 { font:600 clamp(3rem,6vw,6rem)/.95 'Cormorant Garamond',serif; margin:0; color:#17231c; }
.memory-statement>p { max-width:42rem; font-size:1.2rem; line-height:1.8; color:#5d5a51; }
.home-photo-strip { display:grid; grid-template-columns:repeat(4,1fr); height:52vh; }
.home-photo-strip img { width:100%; height:100%; object-fit:cover; }
.days-title-hero { min-height:74vh; background:url('assets/from-this-fire-hero.jpg') center/cover; position:relative; display:grid; place-items:center; text-align:center; color:#fff; }
.days-title-shade { position:absolute; inset:0; background:rgba(9,12,10,.62); }
.days-title-hero>div:last-child { position:relative; z-index:1; }
.days-title-hero p { letter-spacing:.18em; text-transform:uppercase; font-size:.78rem; }
.days-title-hero h1 { font:700 clamp(4.5rem,10vw,10rem)/.85 'Cormorant Garamond',serif; margin:1rem 0 2rem; }
.days-title-hero a { color:#fff; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.7); padding-bottom:.35rem; }
.days-weekend-simple { display:grid; grid-template-columns:repeat(3,1fr); background:#f2eee4; }
.days-weekend-simple a { min-height:42vh; padding:4rem 3rem; display:flex; flex-direction:column; justify-content:flex-end; text-decoration:none; color:#1a241e; border-right:1px solid #d4ccbc; }
.days-weekend-simple a:last-child { border-right:0; }
.days-weekend-simple span { letter-spacing:.14em; text-transform:uppercase; font-size:.72rem; color:#7d4a2e; }
.days-weekend-simple h2 { font:600 clamp(2.8rem,5vw,5rem)/.92 'Cormorant Garamond',serif; margin:.8rem 0 0; }
.days-small-note { padding:4rem 8vw; text-align:center; background:#17231c; color:#efe9dc; }
.event-memory-hero { min-height:84vh; position:relative; display:flex; align-items:flex-end; color:white; }
.event-memory-hero>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.event-memory-shade { position:absolute; inset:0; background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.8)); }
.event-memory-hero>div:last-child { position:relative; z-index:1; padding:5rem 8vw; }
.event-memory-hero p { text-transform:uppercase; letter-spacing:.16em; font-size:.75rem; }
.event-memory-hero h1 { font:700 clamp(5rem,11vw,11rem)/.8 'Cormorant Garamond',serif; margin:.6rem 0 0; }
.montage-intro { padding:7rem 8vw 3rem; background:#f2eee4; text-align:center; }
.montage-intro h2 { font:600 clamp(3rem,6vw,6rem)/.95 'Cormorant Garamond',serif; margin:.4rem auto 1.2rem; color:#17231c; }
.montage-intro p:last-child { color:#6b655b; max-width:42rem; margin:auto; }
.photo-montage { background:#101410; padding:0 0 4rem; }
.montage-stage { height:min(74vh,760px); position:relative; overflow:hidden; }
.montage-slide { position:absolute; inset:0; opacity:0; transition:opacity 1s ease; margin:0; }
.montage-slide.is-active { opacity:1; }
.montage-slide img { width:100%; height:100%; object-fit:contain; background:#0a0d0b; }
.montage-controls { display:flex; justify-content:space-between; align-items:center; padding:1.2rem 8vw; color:#eee8dc; }
.montage-controls button { border:1px solid #9b8a70; background:transparent; color:#fff; padding:.9rem 1.3rem; font:600 .9rem Inter,sans-serif; cursor:pointer; }
.montage-thumbs { display:grid; grid-template-columns:repeat(6,1fr); gap:.5rem; padding:0 8vw; }
.montage-thumbs button { padding:0; border:0; background:none; cursor:pointer; opacity:.55; }
.montage-thumbs button.is-active { opacity:1; outline:2px solid #c79b61; }
.montage-thumbs img { width:100%; aspect-ratio:4/3; object-fit:cover; display:block; }
.event-details-simple { display:grid; grid-template-columns:repeat(3,1fr); background:#eee8dc; padding:5rem 8vw; gap:2rem; }
.event-details-simple div { border-top:1px solid #bdb3a2; padding-top:1.3rem; }
.event-details-simple span { display:block; text-transform:uppercase; letter-spacing:.16em; font-size:.7rem; color:#7d4a2e; margin-bottom:.8rem; }
.event-details-simple strong { font:600 1.45rem/1.5 'Cormorant Garamond',serif; color:#17231c; }
@media(max-width:900px){.simple-events,.days-weekend-simple,.memory-statement,.event-details-simple{grid-template-columns:1fr}.simple-event{min-height:62vh}.home-photo-strip{grid-template-columns:1fr 1fr;height:auto}.home-photo-strip img{aspect-ratio:1/1}.montage-thumbs{grid-template-columns:repeat(4,1fr)}}

/* v4.4 — experience-first launch */
.experience-home { background:#0e0d0b; }
.experience-hero { min-height:100svh; position:relative; display:grid; place-items:center; overflow:hidden; color:#fff; background:url("assets/from-this-fire-hero.jpg") center 48%/cover no-repeat; }
.experience-hero-shade { position:absolute; inset:0; background:linear-gradient(to bottom,rgba(0,0,0,.28),rgba(0,0,0,.22) 45%,rgba(0,0,0,.72)); }
.experience-hero-content { position:relative; z-index:2; text-align:center; width:min(960px,90vw); padding-top:8vh; }
.experience-hero h1 { margin:0 0 32px; font-family:"Cormorant Garamond",serif; font-size:clamp(4rem,10vw,9rem); line-height:.9; letter-spacing:-.045em; text-wrap:balance; }
.experience-hero .origin-player { display:flex; flex-direction:column; align-items:center; }
.experience-hero .origin-play { border-color:rgba(255,255,255,.65); color:#fff; background:rgba(0,0,0,.18); backdrop-filter:blur(8px); }
.experience-hero .origin-status { color:rgba(255,255,255,.68); }
.experience-hero .origin-progress-wrap { width:min(520px,78vw); }
.experience-scroll { position:absolute; z-index:2; bottom:25px; left:50%; transform:translateX(-50%); color:#fff; text-decoration:none; font-size:1.8rem; animation:bob 1.8s ease-in-out infinite; }
@keyframes bob { 50% { transform:translate(-50%,8px); } }
.traditions { background:#f4efe6; padding:clamp(90px,11vw,160px) 4vw; }
.traditions-heading { width:min(1240px,100%); margin:0 auto clamp(46px,7vw,90px); text-align:center; }
.traditions-heading p { margin:0 0 12px; text-transform:uppercase; letter-spacing:.2em; font-size:.72rem; color:#6f675d; }
.traditions-heading h1,.traditions-heading h2 { margin:0; font-family:"Cormorant Garamond",serif; font-size:clamp(3.5rem,8vw,7.8rem); line-height:.9; letter-spacing:-.04em; }
.traditions-heading span { display:block; margin-top:22px; color:#6f675d; }
.tradition-grid { width:min(1420px,100%); margin:auto; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.tradition-card { position:relative; min-height:70vh; overflow:hidden; color:#fff; text-decoration:none; background:#111; }
.tradition-card img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.tradition-card::after { content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.82),transparent 62%); }
.tradition-card div { position:absolute; z-index:2; left:0; right:0; bottom:0; padding:34px; }
.tradition-card span { font-size:.76rem; letter-spacing:.13em; text-transform:uppercase; }
.tradition-card h2,.tradition-card h3 { margin:8px 0 0; font-family:"Cormorant Garamond",serif; font-size:clamp(2.1rem,3.5vw,4rem); line-height:.95; }
.tradition-card:hover img { transform:scale(1.045); }
.traditions-page { min-height:100vh; padding-top:150px; }

.film-page { background:#080808; color:#fff; }
.film-hero { min-height:100svh; position:relative; display:grid; align-items:end; overflow:hidden; }
.film-hero>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.film-hero-shade { position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,.08) 65%); }
.film-hero-title { position:relative; z-index:2; width:min(1240px,92vw); margin:0 auto; padding-bottom:clamp(55px,8vw,100px); }
.film-hero-title p { margin:0; text-transform:uppercase; letter-spacing:.15em; font-size:.76rem; }
.film-hero-title h1 { margin:8px 0 28px; font-family:"Cormorant Garamond",serif; font-size:clamp(5rem,12vw,10rem); line-height:.82; letter-spacing:-.05em; }
.film-launch { border:1px solid rgba(255,255,255,.75); border-radius:999px; padding:14px 25px; background:rgba(0,0,0,.2); color:#fff; font:inherit; cursor:pointer; backdrop-filter:blur(6px); }
.film-experience { background:#000; }
.film-stage { position:relative; height:100svh; min-height:620px; overflow:hidden; background:#000; }
.film-image { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; opacity:0; transform:scale(1.015); transition:opacity 1.1s ease, transform 5.5s ease; }
.film-image.is-active { opacity:1; transform:scale(1.055); }
.film-vignette { position:absolute; inset:0; pointer-events:none; box-shadow:inset 0 0 150px rgba(0,0,0,.52); }
.film-title-card { position:absolute; inset:0; z-index:3; display:grid; place-content:center; text-align:center; background:rgba(0,0,0,.42); opacity:0; visibility:hidden; transition:opacity .7s ease; }
.film-title-card.is-visible { opacity:1; visibility:visible; }
.film-title-card p { margin:0; text-transform:uppercase; letter-spacing:.24em; font-size:.74rem; }
.film-title-card h2 { margin:10px 0 0; font-family:"Cormorant Garamond",serif; font-size:clamp(4rem,10vw,9rem); line-height:.85; }
.film-controls { position:absolute; z-index:5; left:50%; bottom:22px; transform:translateX(-50%); display:flex; align-items:center; gap:12px; padding:10px 14px; border-radius:999px; background:rgba(0,0,0,.56); backdrop-filter:blur(10px); white-space:nowrap; }
.film-controls button { border:0; color:#fff; background:transparent; font:inherit; cursor:pointer; padding:7px 9px; }
.film-controls span { color:rgba(255,255,255,.72); font-size:.8rem; }
.film-play { display:flex; align-items:center; gap:7px; }
.film-page .event-details-simple { background:#f4efe6; color:#191714; }

@media (max-width:900px) {
  .tradition-grid { grid-template-columns:1fr; }
  .tradition-card { min-height:62vh; }
  .experience-hero h1 { font-size:clamp(4rem,18vw,7rem); }
  .film-controls { width:calc(100% - 24px); justify-content:center; overflow:auto; }
}


/* v4.5 — artwork at the front door, atmosphere inside */
.tradition-card img { transition: transform .7s cubic-bezier(.2,.7,.2,1), filter .4s ease; }
.tradition-card:hover img { transform: scale(1.035); }
.tradition-card[href*="cornhole"] img { object-fit: contain; padding: clamp(1.5rem,4vw,4rem); background: #151613; }
.tradition-card[href*="block-party"] img { object-position: center; }

.tradition-entry {
  min-height: 100svh;
  position: relative;
  display: grid;
  place-items: end start;
  overflow: hidden;
  background: #111;
}
.tradition-entry > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tradition-entry-cornhole > img { object-fit: contain; padding: 8vh 7vw; background: #171812; }
.tradition-entry-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.08) 25%, rgba(0,0,0,.78) 100%);
}
.tradition-entry-copy {
  position: relative;
  z-index: 1;
  padding: clamp(6rem,12vw,10rem) clamp(1.4rem,6vw,6rem);
  color: white;
  max-width: 1000px;
}
.tradition-entry-copy p {
  margin: 0 0 .7rem;
  font: 600 .76rem/1.2 Inter, sans-serif;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.tradition-entry-copy h1 {
  margin: 0 0 1.5rem;
  font: 600 clamp(3.5rem,9vw,8.5rem)/.86 "Cormorant Garamond", serif;
  letter-spacing: -.045em;
}
.tradition-entry-play {
  display: inline-flex;
  align-items: center;
  gap: .75rem;
  color: white;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.7);
  border-radius: 999px;
  padding: .9rem 1.25rem;
  font: 600 .82rem/1 Inter, sans-serif;
  letter-spacing: .04em;
  background: rgba(0,0,0,.18);
  backdrop-filter: blur(8px);
  transition: background .25s ease, color .25s ease, transform .25s ease;
}
.tradition-entry-play:hover { background: white; color: #171713; transform: translateY(-2px); }

.film-hero > img { object-position: center; }
.film-hero-title h1 { max-width: 12ch; }

@media (max-width: 700px) {
  .tradition-entry-copy { padding-bottom: 5rem; }
  .tradition-entry-copy h1 { font-size: clamp(3.25rem,18vw,5.6rem); }
  .tradition-entry-cornhole > img { padding: 15vh 1.25rem 10vh; }
}

/* v4.6 editorial openings */
.block-party-page .film-hero img,
.film-page .film-hero img {
  object-position: center 46%;
}

.cornhole-patio-entry .tradition-entry-copy {
  max-width: 980px;
}

.cornhole-entry-line {
  margin: 1rem 0 0;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(1.35rem, 2.5vw, 2.25rem);
  font-weight: 600;
  letter-spacing: .02em;
  line-height: 1.15;
  color: #fff;
  text-shadow: 0 2px 18px rgba(0,0,0,.45);
}

.cornhole-patio-entry img {
  object-position: center center;
}

/* v4.7 — Golf Championship living archive */
.golf-archive-page{background:#f3f0e8;color:#183528}.golf-symbol-hero{position:relative;min-height:100svh;display:grid;place-items:end start;overflow:hidden;background:#17130f}.golf-symbol-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.golf-symbol-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,13,10,.78) 0%,rgba(12,13,10,.25) 55%,rgba(12,13,10,.18)),linear-gradient(0deg,rgba(12,13,10,.72),transparent 55%)}.golf-symbol-copy{position:relative;z-index:2;padding:clamp(7rem,12vw,11rem) clamp(1.5rem,7vw,7rem);color:#fff;max-width:850px}.golf-symbol-copy p,.golf-symbol-copy span{font:600 .78rem/1.2 Inter,sans-serif;letter-spacing:.2em;text-transform:uppercase}.golf-symbol-copy h1{font:600 clamp(3.4rem,8vw,7.5rem)/.87 "Cormorant Garamond",serif;margin:.8rem 0 1rem;text-wrap:balance}.golf-symbol-copy>a{display:inline-flex;gap:.8rem;align-items:center;margin-top:2rem;padding:.95rem 1.25rem;border:1px solid rgba(255,255,255,.6);color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font:600 .72rem Inter,sans-serif}.golf-champions-section,.golf-years-section,.golf-traditions-compact{padding:clamp(5rem,9vw,9rem) clamp(1.2rem,6vw,6rem)}.golf-archive-heading{text-align:center;margin-bottom:3rem}.golf-archive-heading h2{font:600 clamp(3rem,7vw,6rem)/.95 "Cormorant Garamond",serif;margin:.2rem 0}.champion-year-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;max-width:1500px;margin:auto}.champion-year-card{position:relative;min-height:480px;padding:0;border:0;background:#111;cursor:pointer;overflow:hidden}.champion-year-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease,filter .7s ease}.champion-year-card span{position:absolute;left:1.2rem;bottom:1rem;color:#fff;font:600 clamp(2.2rem,4vw,4rem) "Cormorant Garamond",serif;text-shadow:0 2px 18px #000}.champion-year-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.68),transparent 55%)}.champion-year-card span{z-index:2}.champion-year-card:hover img{transform:scale(1.04);filter:saturate(1.08)}.golf-years-section{background:#173428;color:#f7f1df}.golf-year-list{max-width:1150px;margin:auto;border-top:1px solid rgba(255,255,255,.22)}.golf-year-row{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2.1rem 0;border-bottom:1px solid rgba(255,255,255,.22)}.golf-year-row>div>span{font:600 .78rem Inter,sans-serif;letter-spacing:.2em}.golf-year-row h3{font:600 clamp(2rem,4vw,3.8rem)/1 "Cormorant Garamond",serif;margin:.35rem 0}.golf-year-row p{margin:0;color:rgba(255,255,255,.72)}.golf-year-row button{flex:0 0 auto;border:1px solid rgba(255,255,255,.55);background:transparent;color:#fff;padding:1rem 1.2rem;text-transform:uppercase;letter-spacing:.13em;font:600 .7rem Inter,sans-serif;cursor:pointer}.golf-year-row-2025 h3{font-style:italic}.golf-tradition-cards{max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.golf-tradition-cards article{background:#fff;box-shadow:0 15px 55px rgba(24,53,40,.12)}.golf-tradition-cards img{width:100%;aspect-ratio:4/3;object-fit:cover}.golf-tradition-cards article div{padding:1.4rem}.golf-tradition-cards span{font:600 .7rem Inter,sans-serif;letter-spacing:.18em;text-transform:uppercase}.golf-tradition-cards h3{font:600 2.2rem "Cormorant Garamond",serif;margin:.35rem 0}.golf-tradition-cards p{margin:0}.golf-next-chapter{padding:8rem 1.5rem;background:#0f1e17;color:#fff;text-align:center}.golf-next-chapter p,.golf-next-chapter span{text-transform:uppercase;letter-spacing:.2em;font:600 .72rem Inter,sans-serif}.golf-next-chapter h2{font:600 clamp(5rem,15vw,12rem)/.8 "Cormorant Garamond",serif;margin:1rem 0 2rem}.year-lightbox{position:fixed;inset:0;z-index:999;background:#080b09;color:#fff;display:grid;grid-template-rows:auto 1fr auto}.year-lightbox[hidden]{display:none}.year-lightbox-close{position:absolute;right:1rem;top:.5rem;z-index:5;color:#fff;background:transparent;border:0;font-size:3rem;cursor:pointer}.year-lightbox-copy{text-align:center;padding:1.1rem 4rem .7rem}.year-lightbox-copy p{margin:0;font:600 .72rem Inter,sans-serif;letter-spacing:.2em}.year-lightbox-copy h2{margin:.1rem 0;font:600 clamp(2rem,5vw,4rem) "Cormorant Garamond",serif}.year-lightbox-copy span{font:.75rem Inter,sans-serif;color:rgba(255,255,255,.68)}.year-lightbox-stage{position:relative;min-height:0;overflow:hidden;display:grid;place-items:center}.year-lightbox-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transform:scale(.985);transition:opacity .7s ease,transform 1.2s ease}.year-lightbox-stage img.is-active{opacity:1;transform:scale(1)}.year-lightbox-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;pointer-events:none;transition:opacity .7s ease}.year-lightbox-stage video.is-active{opacity:1;pointer-events:auto}.year-lightbox-controls{display:flex;justify-content:center;gap:.8rem;padding:1rem}.year-lightbox-controls button{border:1px solid rgba(255,255,255,.45);background:transparent;color:#fff;padding:.8rem 1rem;min-width:58px;cursor:pointer}.year-lightbox-controls [data-year-play]{min-width:130px;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}@media(max-width:900px){.champion-year-grid,.golf-tradition-cards{grid-template-columns:1fr 1fr}.champion-year-card{min-height:380px}.golf-year-row{align-items:flex-start;flex-direction:column}}@media(max-width:580px){.champion-year-grid,.golf-tradition-cards{grid-template-columns:1fr}.golf-symbol-copy h1{font-size:3.4rem}.champion-year-card{min-height:430px}.year-lightbox-copy{padding-right:3rem;padding-left:3rem}}

/* v4.8 — Corn Hole documentary experience */
.cornhole-documentary-page { background:#0b0d0c; color:#f3efe7; }
.cornhole-documentary-page .cornhole-header { background:rgba(8,10,9,.72); backdrop-filter:blur(16px); }
.cornhole-cinematic-hero { position:relative; min-height:100svh; overflow:hidden; background:#090a09; }
.cornhole-cinematic-layer { position:absolute; inset:0; }
.cornhole-cinematic-layer img { width:100%; height:100%; object-fit:cover; display:block; }
.cornhole-drone-layer { opacity:0; transform:scale(1.07); animation:cornholeLift 12s ease-in-out infinite alternate; }
.cornhole-patio-layer { animation:cornholePatio 12s ease-in-out infinite alternate; }
@keyframes cornholeLift { 0%,38%{opacity:0;transform:scale(1.07)} 62%,100%{opacity:1;transform:scale(1)} }
@keyframes cornholePatio { 0%,38%{opacity:1;transform:scale(1)} 62%,100%{opacity:.12;transform:scale(1.04)} }
.cornhole-cinematic-shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.12) 45%,rgba(0,0,0,.78)); }
.cornhole-cinematic-copy { position:absolute; left:clamp(24px,7vw,110px); right:24px; bottom:clamp(54px,10vh,112px); max-width:820px; z-index:2; }
.cornhole-cinematic-copy>p:first-child { text-transform:uppercase; letter-spacing:.18em; font-size:.72rem; font-weight:700; margin:0 0 12px; }
.cornhole-cinematic-copy h1 { font-family:"Cormorant Garamond",serif; font-size:clamp(3.2rem,8.5vw,8.8rem); line-height:.82; margin:0; max-width:900px; }
.cornhole-cinematic-line { font-family:"Cormorant Garamond",serif; font-style:italic; font-size:clamp(1.35rem,2.6vw,2.35rem); margin:22px 0 0; }
.cornhole-scroll-cue { position:absolute; left:50%; bottom:22px; width:1px; height:42px; background:rgba(255,255,255,.35); z-index:3; overflow:hidden; }
.cornhole-scroll-cue span { display:block; width:100%; height:18px; background:#fff; animation:scrollCue 1.8s ease-in-out infinite; }
@keyframes scrollCue { from{transform:translateY(-18px)} to{transform:translateY(42px)} }
.cornhole-drone-reveal { min-height:82vh; background:#0b0d0c; display:grid; place-items:center; padding:clamp(18px,4vw,64px); }
.cornhole-drone-reveal img { width:min(1500px,100%); max-height:82vh; object-fit:cover; box-shadow:0 30px 100px rgba(0,0,0,.45); }
.cornhole-living-gallery { max-width:1500px; margin:0 auto; padding:clamp(18px,4vw,64px); display:grid; grid-template-columns:repeat(12,1fr); grid-auto-flow:dense; gap:clamp(10px,1.5vw,24px); }
.cornhole-living-gallery figure { grid-column:span 4; margin:0; min-height:320px; overflow:hidden; background:#171a18; }
.cornhole-living-gallery .gallery-wide { grid-column:span 8; }
.cornhole-living-gallery .gallery-tall { grid-row:span 2; min-height:680px; }
.cornhole-living-gallery img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .7s ease, filter .7s ease; }
.cornhole-living-gallery figure:hover img { transform:scale(1.025); filter:brightness(1.04); }
.cornhole-path { max-width:1320px; margin:60px auto 110px; padding:0 clamp(24px,5vw,72px); display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(36px,7vw,110px); align-items:center; }
.cornhole-path h2 { font-family:"Cormorant Garamond",serif; font-size:clamp(3rem,6vw,6rem); line-height:.92; margin:.15em 0 0; }
.cornhole-bracket-frame { margin:0; padding:clamp(10px,1.2vw,18px); background:#eee8dc; transform:rotate(-1deg); box-shadow:0 25px 70px rgba(0,0,0,.4); }
.cornhole-bracket-frame img { width:100%; display:block; }
.cornhole-night-gallery { background:#050706; padding:clamp(36px,7vw,110px); display:grid; grid-template-columns:1fr 1.55fr 1fr; gap:clamp(12px,2vw,28px); align-items:stretch; }
.cornhole-night-gallery figure { margin:0; min-height:540px; overflow:hidden; }
.cornhole-night-gallery .night-feature { min-height:700px; }
.cornhole-night-gallery img { width:100%; height:100%; object-fit:cover; display:block; }
.cornhole-documentary-page .cornhole-current { background:#111512; }
@media (max-width:900px){
  .cornhole-living-gallery figure,.cornhole-living-gallery .gallery-wide { grid-column:span 6; min-height:280px; }
  .cornhole-living-gallery .gallery-tall { min-height:580px; }
  .cornhole-path { grid-template-columns:1fr; }
  .cornhole-night-gallery { grid-template-columns:1fr; }
  .cornhole-night-gallery figure,.cornhole-night-gallery .night-feature { min-height:auto; aspect-ratio:4/3; }
}
@media (max-width:620px){
  .cornhole-cinematic-copy h1 { font-size:clamp(3rem,16vw,5.4rem); }
  .cornhole-living-gallery { grid-template-columns:1fr; padding:12px; gap:12px; }
  .cornhole-living-gallery figure,.cornhole-living-gallery .gallery-wide,.cornhole-living-gallery .gallery-tall { grid-column:auto; grid-row:auto; min-height:auto; aspect-ratio:4/3; }
  .cornhole-living-gallery .gallery-tall { aspect-ratio:3/4; }
  .cornhole-drone-reveal { min-height:auto; padding:12px; }
  .cornhole-path { margin:42px auto 72px; }
}
@media (prefers-reduced-motion:reduce){
 .cornhole-drone-layer,.cornhole-patio-layer,.cornhole-scroll-cue span{animation:none}
 .cornhole-drone-layer{display:none}
}


/* v5.0 Premiere polish */
:root {
  --ease-cinematic: cubic-bezier(.22,.61,.36,1);
  --ember: rgba(214, 133, 61, .42);
}
html { scroll-behavior: smooth; }
body.page-enter { opacity: 0; transform: translateY(8px); }
body.page-enter.page-ready { opacity: 1; transform: none; transition: opacity .9s var(--ease-cinematic), transform .9s var(--ease-cinematic); }
body.page-leaving { opacity: 0 !important; transform: scale(.995) !important; transition: opacity .42s ease, transform .42s ease !important; }
.site-header { transition: background-color .45s ease, backdrop-filter .45s ease, box-shadow .45s ease, color .45s ease; }
.site-header.scrolled { backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.tradition-card, .champion-card, .gallery-card { transition: transform .55s var(--ease-cinematic), box-shadow .55s var(--ease-cinematic), filter .55s ease; }
.tradition-card:hover, .champion-card:hover, .gallery-card:hover { transform: translateY(-7px); }
.tradition-card img, .cornhole-living-gallery img, .cornhole-night-gallery img { transition: transform 1.1s var(--ease-cinematic), filter .8s ease; }
.tradition-card:hover img, .cornhole-living-gallery figure:hover img, .cornhole-night-gallery figure:hover img { transform: scale(1.025); filter: saturate(1.04) contrast(1.02); }
.reveal-on-scroll { transition-duration: 1s !important; transition-timing-function: var(--ease-cinematic) !important; }
.cornhole-bracket-frame { position: relative; overflow: hidden; }
.bracket-zoom { display: block; width: 100%; padding: 0; border: 0; background: transparent; color: inherit; cursor: zoom-in; position: relative; }
.bracket-zoom img { width: 100%; display: block; }
.bracket-zoom span { position: absolute; right: 18px; bottom: 18px; padding: 10px 14px; border-radius: 999px; background: rgba(15,15,15,.78); color: #fff; font: 600 12px/1 Inter, sans-serif; letter-spacing: .08em; text-transform: uppercase; opacity: 0; transform: translateY(6px); transition: .35s ease; }
.bracket-zoom:hover span, .bracket-zoom:focus-visible span { opacity: 1; transform: none; }
.bracket-lightbox { position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; padding: 4vw; background: rgba(8,8,8,.94); opacity: 0; visibility: hidden; transition: opacity .35s ease, visibility .35s ease; }
.bracket-lightbox.open { opacity: 1; visibility: visible; }
.bracket-lightbox img { max-width: min(1400px, 94vw); max-height: 88vh; object-fit: contain; box-shadow: 0 30px 80px rgba(0,0,0,.5); }
.bracket-lightbox button { position: fixed; top: 24px; right: 24px; width: 46px; height: 46px; border-radius: 50%; border: 1px solid rgba(255,255,255,.35); background: rgba(0,0,0,.4); color: white; font-size: 24px; cursor: pointer; }
img[loading="lazy"] { content-visibility: auto; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  body.page-enter { opacity: 1; transform: none; }
}

/* v5.2 Golf Championship scored entrance */
.golf-enter-button {
  appearance: none;
  border: 1px solid rgba(255,255,255,.55);
  background: rgba(15,18,14,.28);
  color: #fff;
  font: inherit;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: .9rem 1.15rem;
  cursor: pointer;
  backdrop-filter: blur(5px);
  transition: background .25s ease, transform .25s ease, border-color .25s ease;
}
.golf-enter-button:hover,
.golf-enter-button:focus-visible {
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.9);
  transform: translateY(-2px);
}
.golf-symbol-hero.is-entering .golf-symbol-copy {
  opacity: 0;
  transform: translateY(-10px);
  transition: opacity 1.2s ease, transform 1.2s ease;
}
.golf-symbol-hero.is-entering img {
  transform: scale(1.035);
  transition: transform 3s ease;
}
.golf-audio-control {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 1000;
  display: flex;
  gap: .45rem;
  padding: .45rem;
  border-radius: 999px;
  background: rgba(15,18,14,.86);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 12px 35px rgba(0,0,0,.25);
  backdrop-filter: blur(10px);
}
.golf-audio-control[hidden] { display: none; }
.golf-audio-control button {
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #fff;
  padding: .55rem .8rem;
  cursor: pointer;
  font: 600 .72rem/1 Inter, sans-serif;
  letter-spacing: .04em;
}
.golf-audio-control button:hover,
.golf-audio-control button:focus-visible { background: rgba(255,255,255,.12); }
@media (prefers-reduced-motion: reduce) {
  .golf-symbol-hero.is-entering .golf-symbol-copy,
  .golf-symbol-hero.is-entering img { transition-duration: .01ms; }
}

/* v5.4 Golf hierarchy and launch-night premiere */
.golf-traditions-compact { background:#f3f0e8; }
.golf-champions-section { background:#fffdf7; }
.golf-years-section { margin-top:0; }
.golf-hero-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:2rem; }
.golf-premiere-button { appearance:none; border:1px solid rgba(255,255,255,.38); background:rgba(255,255,255,.08); color:#fff; padding:.9rem 1.15rem; cursor:pointer; text-transform:uppercase; letter-spacing:.08em; font:600 .74rem/1 Inter,sans-serif; backdrop-filter:blur(5px); transition:.25s ease; }
.golf-premiere-button:hover,.golf-premiere-button:focus-visible { background:rgba(255,255,255,.18); transform:translateY(-2px); }
.year-lightbox-controls [data-year-fullscreen] { min-width:110px; text-transform:uppercase; letter-spacing:.08em; font-size:.68rem; }
.golf-premiere { position:fixed; inset:0; z-index:12000; background:#050706; color:#fff; overflow:hidden; }
.golf-premiere[hidden] { display:none; }
.golf-premiere-media { position:absolute; inset:0; overflow:hidden; }
.golf-premiere-media img, .golf-premiere-media video { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; opacity:0; transform:scale(1.015); transition:opacity .75s ease, transform 3.2s ease; background:#050706; }
.golf-premiere-media img.is-active, .golf-premiere-media video.is-active { opacity:1; transform:scale(1); }
.golf-premiere-media::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(0deg,rgba(0,0,0,.68),transparent 34%,rgba(0,0,0,.15)); }
.golf-premiere-endcard { position:absolute; inset:0; z-index:6; display:grid; place-items:center; background:#000; opacity:0; visibility:hidden; transition:opacity 1.2s ease, visibility 0s linear 1.2s; }
.golf-premiere-endcard.is-visible { opacity:1; visibility:visible; transition:opacity 1.2s ease; }
.golf-premiere-endcard p { margin:0; padding:2rem; color:#fff; text-align:center; font:600 clamp(2.5rem,6vw,6rem)/1 "Cormorant Garamond",serif; letter-spacing:-.025em; }
.golf-premiere.is-ending .golf-premiere-caption, .golf-premiere.is-ending .golf-premiere-controls { opacity:0; pointer-events:none; transition:opacity .7s ease; }
.golf-premiere-media img.is-fading-out, .golf-premiere-media video.is-fading-out { opacity:0 !important; transition:opacity 1.5s ease !important; }
.golf-premiere-media video { object-fit:contain; background:#050706; opacity:0; transform:scale(1.01); transition:opacity 1.15s ease, transform 1.8s ease; }
.golf-premiere-caption { position:absolute; left:clamp(1.25rem,5vw,5rem); bottom:clamp(5.5rem,10vh,8rem); z-index:3; text-shadow:0 3px 25px #000; }
.golf-premiere-caption p { margin:0 0 .35rem; text-transform:uppercase; letter-spacing:.2em; font:600 .75rem/1 Inter,sans-serif; }
.golf-premiere-caption h2 { margin:0; font:600 clamp(2.5rem,7vw,6.5rem)/.9 "Cormorant Garamond",serif; }
.golf-premiere-caption span { display:block; margin-top:.55rem; font:.75rem Inter,sans-serif; color:rgba(255,255,255,.75); }
.golf-premiere-close { position:absolute; right:1rem; top:.75rem; z-index:5; width:48px; height:48px; border:1px solid rgba(255,255,255,.35); border-radius:50%; background:rgba(0,0,0,.35); color:#fff; font-size:2rem; cursor:pointer; }
.golf-premiere-controls { position:absolute; z-index:4; left:50%; bottom:1.1rem; transform:translateX(-50%); display:flex; gap:.5rem; padding:.5rem; border-radius:999px; background:rgba(8,10,9,.78); border:1px solid rgba(255,255,255,.18); backdrop-filter:blur(10px); }
.golf-premiere-controls button { border:0; border-radius:999px; background:transparent; color:#fff; padding:.7rem .95rem; cursor:pointer; font:600 .7rem/1 Inter,sans-serif; letter-spacing:.05em; }
.golf-premiere-controls button:hover,.golf-premiere-controls button:focus-visible { background:rgba(255,255,255,.12); }
@media(max-width:620px){ .golf-hero-actions{flex-direction:column;align-items:flex-start}.golf-premiere-controls{width:calc(100% - 1rem);justify-content:center}.golf-premiere-controls button{padding:.65rem .7rem}.golf-premiere-caption{bottom:6rem}.golf-premiere-caption h2{font-size:2.6rem} }

/* Golf v5.7 polish */
.golf-registration-section{padding:clamp(5rem,9vw,9rem) clamp(1.2rem,6vw,6rem);background:#e7e0d1;color:#173428}.golf-registration-shell{max-width:1200px;margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,6rem);align-items:start}.golf-registration-intro{position:sticky;top:7rem}.golf-registration-intro h2{font:600 clamp(3.6rem,7vw,6.5rem)/.88 "Cormorant Garamond",serif;margin:.35rem 0 1rem}.golf-registration-intro>p:last-child{font-size:1.08rem;line-height:1.7;max-width:28rem}.golf-registration-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.2rem;background:#f8f4ea;padding:clamp(1.4rem,4vw,3rem);box-shadow:0 20px 65px rgba(24,53,40,.12)}.golf-registration-form label{display:grid;gap:.5rem;font:600 .7rem/1.3 Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase}.golf-registration-form label span{font-weight:500;opacity:.55}.golf-registration-form input,.golf-registration-form select,.golf-registration-form textarea{width:100%;box-sizing:border-box;border:0;border-bottom:1px solid rgba(23,52,40,.32);background:transparent;padding:.8rem .15rem;color:#173428;font:400 1rem Inter,sans-serif;letter-spacing:0;text-transform:none;outline:none}.golf-registration-form input:focus,.golf-registration-form select:focus,.golf-registration-form textarea:focus{border-color:#173428}.golf-registration-full{grid-column:1/-1}.golf-registration-form button{grid-column:1/-1;border:0;background:#173428;color:#fff;padding:1.1rem 1.3rem;text-transform:uppercase;letter-spacing:.15em;font:600 .72rem Inter,sans-serif;cursor:pointer;transition:transform .25s ease,background .25s ease}.golf-registration-form button:hover{transform:translateY(-2px);background:#244b3a}.golf-registration-note{grid-column:1/-1;margin:0;text-align:center;font:.72rem/1.5 Inter,sans-serif;opacity:.6}.golf-premiere-endcard p{letter-spacing:.04em!important;text-transform:none!important;font-style:italic}.golf-years-section .golf-archive-heading{margin-bottom:2rem}.golf-year-row{padding:1.65rem 0}.golf-next-chapter{padding-top:6rem;padding-bottom:6rem}@media(max-width:800px){.golf-registration-shell{grid-template-columns:1fr}.golf-registration-intro{position:static}.golf-registration-form{grid-template-columns:1fr}.golf-registration-form label,.golf-registration-full,.golf-registration-form button,.golf-registration-note{grid-column:1}}

/* v5.8 — lock Golf Championship hero title to two intentional lines */
.golf-symbol-copy h1 .golf-title-line{display:block;white-space:nowrap}
@media(max-width:580px){.golf-symbol-copy h1 .golf-title-line{white-space:normal}}

/* v5.11 — final Golf hero title hierarchy */
.golf-symbol-copy h1{
  font-size:clamp(3.1rem,6.6vw,6.7rem);
  line-height:.9;
  max-width:none;
}
.golf-symbol-copy h1 .golf-title-line{
  display:block;
  white-space:nowrap;
}
.golf-symbol-copy h1 .golf-title-line:first-child{
  font-size:.78em;
  line-height:1;
  letter-spacing:-.015em;
}
.golf-symbol-copy h1 .golf-title-line:last-child{
  font-size:1em;
  line-height:.9;
  letter-spacing:-.025em;
}
@media(max-width:760px){
  .golf-symbol-copy h1{font-size:clamp(2.65rem,9.5vw,4.5rem)}
}
@media(max-width:580px){
  .golf-symbol-copy{max-width:100%;padding-left:1.35rem;padding-right:1.35rem}
  .golf-symbol-copy h1{font-size:clamp(2.35rem,10vw,3.6rem)}
  .golf-symbol-copy h1 .golf-title-line{white-space:nowrap}
  .golf-symbol-copy h1 .golf-title-line:first-child{font-size:.8em}
  .golf-symbol-copy h1 .golf-title-line:last-child{font-size:.9em}
}

/* v5.12 — restore the original Golf hero typeface while keeping the two-line hierarchy */
.golf-symbol-copy h1,
.golf-symbol-copy h1 .golf-title-line{
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-weight:600 !important;
  font-style:normal !important;
}

/* Block Party final polish — v5.26 */
.block-party-intro{max-width:900px;margin:0 auto;padding:72px 24px 52px;text-align:center}.block-party-intro .eyebrow{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;opacity:.68;margin:0 0 14px}.block-party-intro h2{font-family:"Cormorant Garamond",serif;font-size:clamp(2.35rem,5vw,4.4rem);line-height:.95;margin:0 0 22px}.block-party-intro p{max-width:720px;margin:0 auto;font-size:clamp(1rem,1.5vw,1.16rem);line-height:1.75;opacity:.8}.block-party-intro .hood-line{font-family:"Cormorant Garamond",serif;font-size:clamp(1.5rem,3vw,2.2rem);font-weight:600;margin-top:28px;opacity:1}.block-party-film-lead{text-align:center;padding:0 24px 24px}.block-party-film-lead span{display:block;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;opacity:.62;margin-bottom:7px}.block-party-film-lead strong{font-family:"Cormorant Garamond",serif;font-size:clamp(1.7rem,3vw,2.5rem)}.block-party-fire-note{max-width:850px;margin:12px auto 70px;padding:44px 28px;text-align:center;border-top:1px solid rgba(128,128,128,.28);border-bottom:1px solid rgba(128,128,128,.28)}.block-party-fire-note p{font-family:"Cormorant Garamond",serif;font-size:clamp(1.5rem,3vw,2.15rem);line-height:1.25;margin:0 0 12px}.block-party-fire-note span{font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;opacity:.62}.film-hero-title .annual-kicker{font-size:clamp(.78rem,1.3vw,.95rem);letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px}.film-hero-title .hero-tagline{font-family:"Cormorant Garamond",serif;font-size:clamp(1.15rem,2vw,1.55rem);margin:10px 0 20px;opacity:.92}.event-details-simple strong{line-height:1.45}
