
:root {
  --green: #0f5a36;
  --green-dark: #0a3f28;
  --cream: #f7f1e5;
  --cream-deep: #eee4d2;
  --ink: #18201b;
  --muted: #667067;
  --white: #fffdf8;
  --line: rgba(24, 32, 27, .14);
  --serif: "Newsreader", Georgia, serif;
  --sans: "DM Sans", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--cream);
  color: #202a23;
  font-family: var(--sans);
  font-weight: 450;
  line-height: 1.72;
  -webkit-font-smoothing: antialiased;
}
img { display:block; width:100%; }
a { color: inherit; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { font-family: var(--serif); font-weight: 400; line-height: .98; }
h1 { font-size: clamp(3.3rem, 8vw, 7.5rem); letter-spacing: -.045em; max-width: 1000px; }
h2 { font-size: clamp(2.4rem, 5vw, 5.15rem); letter-spacing: -.035em; }
h3 { font-size: 2rem; letter-spacing: -.02em; }
p { font-size: 1.125rem; font-weight: 450; }

.skip-link {
  position: fixed; left: 1rem; top: -100px; z-index: 1000;
  padding: .75rem 1rem; background: var(--white);
}
.skip-link:focus { top: 1rem; }

.site-header {
  position: absolute; inset: 0 0 auto;
  z-index: 10; display:flex; align-items:center; justify-content:space-between;
  padding: 1rem clamp(1.25rem,4vw,4rem);
  color: var(--white);
}
.brand { display:flex; align-items:center; gap:.7rem; text-decoration:none; color:inherit; }
.brand img { width:40px; height:52px; object-fit:contain; filter:brightness(0) invert(1); }
.brand span { font-family:var(--serif); font-size:1.25rem; letter-spacing:-.02em; white-space:nowrap; }
nav { display:flex; gap: 1.5rem; }
nav a { text-decoration:none; font-size:.9rem; letter-spacing:.02em; }
nav a:hover { opacity:.7; }
.external-arrow {
  width:1.15rem;
  height:1.15rem;
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.hero {
  min-height: 94vh; position:relative; display:flex; align-items:flex-end;
  color:var(--white); overflow:hidden; background:var(--green-dark);
}
.hero-image {
  position:absolute; inset:0;
  background-image:url('assets/podcast_couch_2.jpg');
  background-size:cover;
  background-position:center 42%;
  transform:scale(1.01);
}
.hero-overlay {
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(3,24,14,.28) 0%, rgba(3,24,14,.22) 42%, rgba(3,24,14,.8) 100%),
    linear-gradient(90deg, rgba(3,24,14,.35), transparent 62%);
}
.hero-content {
  position:relative; z-index:2; width:min(1250px, 100%);
  padding: 11rem clamp(1.25rem,5vw,5.5rem) clamp(3rem,6vw,5.5rem);
}
.hero-content h1 { margin-bottom:1.5rem; }
.hero-copy { font-size:clamp(1.1rem,2vw,1.45rem); max-width:680px; color:rgba(255,255,255,.9); }
.eyebrow { font-size:.74rem; text-transform:uppercase; letter-spacing:.2em; font-weight:600; margin-bottom:1rem; }
.eyebrow.green { color:var(--green); }
.hero-actions { display:flex; gap:.75rem; flex-wrap:wrap; margin-top:2rem; }
.button {
  display:inline-flex; align-items:center; justify-content:center;
  min-height:48px; padding:.8rem 1.2rem; border-radius:999px;
  text-decoration:none; font-size:.93rem; font-weight:600;
  transition:transform .2s ease, background .2s ease, color .2s ease;
}
.button:hover { transform:translateY(-2px); }
.button-light { background:var(--white); color:var(--green-dark); }
.button-ghost { border:1px solid rgba(255,255,255,.55); color:var(--white); }
.button-green { background:var(--green); color:var(--white); }
.scroll-cue { position:absolute; z-index:2; bottom:2rem; right:3rem; text-decoration:none; font-size:1.5rem; }

.section { padding: clamp(5rem,9vw,9rem) clamp(1.25rem,4vw,4rem); }
.section-inner { width:min(1200px,100%); margin:auto; }
.narrow { width:min(1000px,100%); text-align:center; }
.mission { background:var(--white); }
.mission h2 { color:var(--green-dark); margin:0; }

.split { display:grid; grid-template-columns:1fr 1fr; gap:clamp(3rem,7vw,7rem); align-items:center; }
.belief-copy h2 { max-width:620px; }
.belief-copy > p:not(.eyebrow) { max-width:620px; color:#354138; }
.church-note { border-left:2px solid var(--green); padding-left:1.2rem; margin-top:2rem; }
.image-frame { margin:0; position:relative; }
.image-frame img { object-fit:cover; border-radius: 48% 48% 1rem 1rem / 18% 18% 1rem 1rem; }
.image-frame.tall img { aspect-ratio: 4 / 5; object-position:center; }
.image-frame.landscape img { aspect-ratio:16/10; border-radius:1.2rem; object-position:center; }
.image-frame figcaption { font-size:.78rem; color:var(--muted); margin-top:.7rem; }

.work { background:var(--green-dark); color:var(--white); }
.work .eyebrow { color:#b8d4c3; }
.section-heading { display:grid; grid-template-columns:1fr 2fr; gap:2rem; margin-bottom:4rem; }
.section-heading h2 { max-width:850px; }
.work-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.24); }
.work-card { padding:2rem 2rem 1rem 0; min-height:300px; border-right:1px solid rgba(255,255,255,.2); }
.work-card + .work-card { padding-left:2rem; }
.work-card:last-child { border-right:none; }
.number { display:block; opacity:.55; margin-bottom:4rem; }
.work-card p { color:rgba(255,255,255,.74); }

.podcast { background:var(--cream-deep); }
.podcast-layout { display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(2rem,6vw,6rem); align-items:center; }
.podcast-copy p { color:#3f4b42; }
.platform-links { margin-top:2rem; border-top:1px solid var(--line); }
.platform-links a {
  display:flex; justify-content:space-between; padding:1rem 0;
  border-bottom:1px solid var(--line); text-decoration:none; font-weight:600;
}
.platform-links a:hover { color:var(--green); }

.gallery { background:var(--white); }
.simple-gallery {
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:1rem;
  align-items:stretch;
}
.singing-image {
  margin:0;
  min-height:600px;
  overflow:hidden;
  border-radius:1.2rem;
}
.singing-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 32%;
}
.building-card {
  min-height:600px;
  border-radius:1.2rem;
  padding:clamp(2rem,5vw,4.5rem);
  background:var(--green);
  color:var(--white);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}
.building-card .eyebrow { color:rgba(255,255,255,.72); }
.building-card blockquote {
  margin:0 0 1.5rem;
  font-family:var(--serif);
  font-size:clamp(3rem,5vw,5.2rem);
  line-height:.95;
  letter-spacing:-.04em;
}
.building-card > p:last-child {
  max-width:520px;
  margin:0;
  color:rgba(255,255,255,.78);
}

.newsletter { background:var(--cream); }
.newsletter-box {
  background:var(--green); color:var(--white); border-radius:1.5rem;
  padding:clamp(2rem,5vw,5rem); display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:center;
}
.newsletter-box h2 { font-size:clamp(2.5rem,4vw,4.4rem); }
.newsletter-box p { color:rgba(255,255,255,.8); }
.signup-form { display:grid; grid-template-columns:1fr auto; gap:.65rem; }
.signup-form input, .signup-form button {
  border:0; border-radius:999px; min-height:52px; font:inherit;
}
.signup-form input { padding:0 1.2rem; background:var(--white); color:var(--ink); }
.signup-form button { padding:0 1.4rem; background:var(--ink); color:var(--white); font-weight:600; cursor:pointer; }
.form-status { grid-column:1/-1; min-height:1.1em; margin:.15rem 0 0; font-size:.82rem; color:var(--white) !important; }
.form-note { grid-column:1/-1; font-size:.72rem; margin:0; }
.subscription-frame { position:absolute; width:1px; height:1px; border:0; opacity:0; pointer-events:none; }
.provider-link { grid-column:1/-1; font-size:.68rem; opacity:.5; width:max-content; }

.partner { background:var(--white); }
.partner-inner { max-width:900px; text-align:center; }
.partner-inner p:not(.eyebrow) { max-width:720px; margin:0 auto 2rem; color:#434f46; }
.partner-inner h2 { margin-bottom:1.5rem; }

footer { padding:2rem clamp(1.25rem,4vw,4rem); background:var(--ink); color:rgba(255,255,255,.75); }
.footer-inner { width:min(1200px,100%); margin:auto; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:2rem; }
.footer-brand { display:flex; align-items:center; gap:.65rem; color:var(--white); text-decoration:none; }
.footer-brand img { width:34px; height:45px; object-fit:contain; filter:brightness(0) invert(1); opacity:.9; }
.footer-brand span { font-family:var(--serif); font-size:1.1rem; }
.footer-links { display:flex; gap:1.25rem; }
.footer-links a { text-decoration:none; font-size:.85rem; }
footer p { text-align:right; margin:0; font-size:.82rem; }

.sr-only {
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}
.reveal { opacity:0; transform:translateY(22px); transition:opacity .8s ease, transform .8s ease; }
.reveal.visible { opacity:1; transform:none; }

@media (max-width: 840px) {
  .site-header { padding:.7rem 1.1rem; gap:.75rem; }
  .brand { width:auto; flex:0 0 auto; }
  .brand span { display:none; }
  .brand img { width:34px; height:45px; }
  nav { margin-left:auto; gap:1rem; }
  nav a { font-size:.82rem; white-space:nowrap; }
  .hero { min-height:88vh; }
  .hero-content { padding-bottom:3.5rem; }
  .hero-actions { flex-direction:column; align-items:flex-start; }
  .split, .podcast-layout, .newsletter-box { grid-template-columns:1fr; }
  .section-heading { grid-template-columns:1fr; }
  .work-grid { grid-template-columns:1fr; }
  .work-card, .work-card + .work-card { padding:2rem 0; border-right:0; border-bottom:1px solid rgba(255,255,255,.2); min-height:auto; }
  .number { margin-bottom:1.5rem; }
  .simple-gallery { grid-template-columns:1fr; }
  .singing-image, .building-card { min-height:460px; }
  .newsletter-box { gap:2rem; }
  .footer-inner { grid-template-columns:1fr; text-align:center; }
  .footer-brand { margin:auto; }
  .footer-links { justify-content:center; flex-wrap:wrap; }
  footer p { text-align:center; }
}

@media (max-width: 520px) {
  .site-header { padding-left:.85rem; padding-right:.85rem; }
  nav { gap:.72rem; }
  nav a { font-size:.74rem; }
  .section { padding:4.5rem 1.1rem; }
  h1 { font-size:3.55rem; }
  .hero-content { padding-left:1.1rem; padding-right:1.1rem; }
  .scroll-cue { display:none; }
  .signup-form { grid-template-columns:1fr; }
  .signup-form button { width:100%; }
  .singing-image, .building-card { min-height:380px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  .reveal { opacity:1; transform:none; transition:none; }
  .button { transition:none; }
}


/* Version 4 refinement */
.work-light{
  background:#e7efe8;
  color:var(--ink);
}
.work-light .eyebrow{color:var(--green);}
.work-light .section-heading h2{color:var(--green-dark);}
.work-light .work-grid{
  border-top:1px solid rgba(15,90,54,.28);
}
.work-light .work-card{
  border-right:1px solid rgba(15,90,54,.22);
}
.work-light .work-card:last-child{
  border-right:none;
}
.work-light .work-card p{
  color:#4f6256;
}
.work-light .number{
  color:var(--green);
  opacity:.7;
}

.section{
  padding-top:7rem;
  padding-bottom:7rem;
}

.narrow h2{
  max-width:900px;
  margin:auto;
}

.button{
  min-height:44px;
  padding:.7rem 1.1rem;
}


.brand span{
  font-family:var(--sans);
  text-transform:uppercase;
  letter-spacing:.28em;
  font-size:.78rem;
  font-weight:600;
}

.building-card{
  background:#0f5a36;
}

.building-card blockquote{
  font-size:4.4rem;
}



/* Version 5 polish */
.site-header {
  position: fixed;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
  border-bottom:1px solid transparent;
}
.site-header.scrolled {
  background:var(--cream);
  color:var(--green-dark);
  border-bottom-color:var(--line);
}
.site-header.scrolled .brand img {
  filter:none;
}
.footer-brand span {
  font-family:var(--sans);
  text-transform:uppercase;
  letter-spacing:.22em;
  font-size:.72rem;
  font-weight:600;
}
@media (max-width: 840px) {
  .work-light .work-card,
  .work-light .work-card + .work-card {
    border-right:0;
    border-bottom:1px solid rgba(15,90,54,.22);
  }
}


/* Version 6 color and hero refinements */

/* Match the Now Streaming section to the site's established light beige. */
.podcast {
  background: var(--cream);
}

/*
  What We Do now uses only the established Yadah palette:
  light beige, white, and the same forest green used in Stay Connected.
*/
.work-light {
  background: var(--cream);
  color: var(--ink);
}

.work-light .section-heading {
  align-items: end;
}

.work-light .section-heading h2 {
  color: var(--green-dark);
}

.work-light .work-grid {
  gap: 1rem;
  border-top: 0;
}

.work-light .work-card,
.work-light .work-card + .work-card {
  min-height: 310px;
  padding: 2rem;
  background: var(--white);
  border: 0;
  border-top: 4px solid var(--green);
  border-radius: 1rem;
}

.work-light .work-card h3 {
  color: var(--green-dark);
}

.work-light .work-card p {
  color: #4d554e;
}

.work-light .number {
  width: 2.7rem;
  height: 2.7rem;
  margin-bottom: 3.5rem;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--green);
  color: var(--white);
  opacity: 1;
  font-size: .8rem;
  font-weight: 600;
}

/* The hero line should read as a short editorial statement, not a second mission. */
.hero-copy {
  max-width: 760px;
  letter-spacing: .01em;
}

@media (max-width: 840px) {
  .work-light .work-grid {
    gap: .85rem;
  }

  .work-light .work-card,
  .work-light .work-card + .work-card {
    border-bottom: 0;
  }
}


/* Version 7: restore clear section boundaries and remove the sticky header */

/* The navigation belongs only to the hero and scrolls away with it. */
.site-header {
  position: absolute;
  background: transparent;
  color: var(--white);
  border-bottom: 0;
}

/* Neutral outer section + established forest-green inner panel. */
.work-light {
  background: var(--white);
  color: var(--white);
}

.work-panel {
  background: var(--green);
  border-radius: 1.5rem;
  padding: clamp(2.25rem, 5vw, 5rem);
}

.work-light .eyebrow,
.work-light .section-heading .eyebrow {
  color: rgba(255,255,255,.72);
}

.work-light .section-heading h2 {
  color: var(--white);
}

.work-light .work-grid {
  gap: 0;
  border-top: 1px solid rgba(255,255,255,.24);
}

.work-light .work-card,
.work-light .work-card + .work-card {
  min-height: 300px;
  padding: 2rem 2rem 1rem 0;
  background: transparent;
  border: 0;
  border-right: 1px solid rgba(255,255,255,.2);
  border-radius: 0;
}

.work-light .work-card + .work-card {
  padding-left: 2rem;
}

.work-light .work-card:last-child {
  border-right: 0;
}

.work-light .work-card h3 {
  color: var(--white);
}

.work-light .work-card p {
  color: rgba(255,255,255,.76);
}

.work-light .number {
  width: auto;
  height: auto;
  margin-bottom: 4rem;
  display: block;
  background: transparent;
  color: rgba(255,255,255,.58);
  border-radius: 0;
  font-size: inherit;
  font-weight: 400;
}

@media (max-width: 840px) {
  .work-panel {
    padding: 2rem;
  }

  .work-light .work-grid {
    gap: 0;
  }

  .work-light .work-card,
  .work-light .work-card + .work-card {
    min-height: auto;
    padding: 2rem 0;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.2);
  }

  .work-light .work-card:last-child {
    border-bottom: 0;
  }

  .work-light .number {
    margin-bottom: 1.5rem;
  }
}

/* Version 1.0.4: mobile Safari end-of-page fix */
html {
  min-height: 100%;
  background: var(--ink);
  overflow-x: hidden;
}

body {
  min-height: 100%;
  overflow-x: hidden;
  padding-bottom: 0;
}

main,
footer {
  position: relative;
}

/* A visually hidden target iframe can create phantom page height in iOS Safari. */
.subscription-frame {
  display: none;
}

@media (max-width: 840px) {
  /* Use Safari's stable viewport unit instead of legacy vh. */
  .hero {
    min-height: 88svh;
  }
}

@supports (height: 100dvh) {
  @media (max-width: 840px) {
    .hero {
      min-height: 88dvh;
    }
  }
}

/* Mobile-only sticky navigation */
@media (max-width: 840px) {
  .site-header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 100;
    background: var(--cream);
    color: var(--green-dark);
    border-bottom: 1px solid rgba(24, 32, 27, .08);
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  .site-header .brand img {
    filter: none;
  }
}

.eden-page {
  background:#f6efe2;
}

.eden-page h1,
.eden-page h2,
.eden-page h3,
.eden-page p,
.eden-page a,
.eden-page span,
.eden-page li {
  letter-spacing:0;
}

.eden-header nav {
  gap:1.25rem;
}

.eden-hero {
  min-height:92vh;
  position:relative;
  display:flex;
  align-items:flex-end;
  color:var(--white);
  background:#183427;
  overflow:hidden;
}

.eden-hero-image {
  position:absolute;
  inset:0;
  background-image:url('assets/foundry-exterior.webp');
  background-size:cover;
  background-position:center;
  transform:scale(1.01);
}

.eden-hero-overlay {
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(10,25,18,.22), rgba(10,25,18,.62) 64%, rgba(10,25,18,.92)),
    linear-gradient(90deg, rgba(10,25,18,.72), rgba(10,25,18,.24));
}

.eden-hero-content {
  position:relative;
  z-index:2;
  width:min(1180px,100%);
  padding:11rem clamp(1.25rem,5vw,5.5rem) clamp(3rem,6vw,5.5rem);
}

.eden-kicker {
  max-width:680px;
  margin-bottom:1rem;
  font-size:.92rem;
  font-weight:600;
  text-transform:uppercase;
}

.eden-hero h1 {
  margin-bottom:1.25rem;
  max-width:960px;
  font-size:6.6rem;
  line-height:.92;
}

.eden-subtitle {
  max-width:760px;
  color:rgba(255,255,255,.9);
  font-family:var(--serif);
  font-size:2rem;
  line-height:1.12;
}

.eden-meta {
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:1.8rem;
}

.eden-meta span {
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:.35rem .85rem;
  border:1px solid rgba(255,255,255,.38);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:rgba(255,255,255,.94);
  font-size:.9rem;
  font-weight:600;
}

.eden-intro {
  background:var(--white);
}

.eden-intro-grid,
.eden-schedule-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(2.5rem,6vw,6rem);
  align-items:start;
}

.eden-section-heading h2 {
  margin:0;
  color:var(--green-dark);
  font-size:4.2rem;
}

.eden-intro-copy {
  padding-top:2.8rem;
}

.eden-intro-copy p {
  color:#39453d;
}

.eden-statement {
  background:var(--green-dark);
  color:var(--white);
}

.eden-statement-inner {
  max-width:950px;
}

.eden-statement p {
  margin:0;
  font-family:var(--serif);
  font-size:4.4rem;
  line-height:1;
}

.eden-speakers {
  background:#f6efe2;
}

.eden-speaker-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1rem;
}

.eden-speaker-card {
  padding:1rem 1rem 1.15rem;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--white);
}

.eden-speaker-photo {
  min-height:340px;
  margin-bottom:1.2rem;
  border-radius:6px;
  background:
    linear-gradient(135deg, rgba(15,90,54,.86), rgba(111,39,52,.84)),
    url('assets/yadah-mark.svg') center / 82px auto no-repeat;
}

.eden-speaker-card h3 {
  margin-bottom:.5rem;
  font-size:1.7rem;
  line-height:1.08;
}

.eden-speaker-card p {
  margin:0;
  color:#59645d;
  font-size:.98rem;
}

.eden-speaker-role {
  margin-bottom:.35rem !important;
  color:var(--green) !important;
  font-weight:600;
  text-transform:uppercase;
  font-size:.76rem !important;
}

.eden-schedule {
  background:var(--green-dark);
  color:var(--white);
}

.eden-schedule .eden-section-heading h2,
.eden-schedule .eyebrow {
  color:var(--white);
}

.eden-agenda {
  display:grid;
  gap:0;
  margin:0;
  padding:0;
  list-style:none;
  border-top:1px solid rgba(255,255,255,.22);
}

.eden-agenda li {
  display:grid;
  grid-template-columns:80px 1fr;
  gap:1.25rem;
  padding:1.45rem 0;
  border-bottom:1px solid rgba(255,255,255,.22);
}

.eden-agenda span {
  color:#caa06a;
  font-weight:600;
}

.eden-agenda h3 {
  margin-bottom:.45rem;
  font-size:1.8rem;
}

.eden-agenda p {
  margin:0;
  color:rgba(255,255,255,.76);
}

.eden-venue {
  background:var(--white);
}

.eden-venue-grid {
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:1rem;
  align-items:stretch;
}

.eden-venue-details {
  padding:2rem;
  border:1px solid var(--line);
  border-radius:8px;
}

.eden-venue-details h3 {
  margin:0 0 .7rem;
  font-size:1.8rem;
}

.eden-venue-details h3:not(:first-child) {
  margin-top:2rem;
}

.eden-venue-details p {
  color:#3d4941;
}

.eden-map {
  min-height:480px;
  overflow:hidden;
  border-radius:8px;
  background:#dce4dc;
}

.eden-map iframe {
  width:100%;
  height:100%;
  min-height:480px;
  border:0;
}

.eden-venue-photos {
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr;
  gap:1rem;
  margin-top:1rem;
}

.eden-venue-photos figure {
  margin:0;
}

.eden-venue-photos img {
  height:360px;
  object-fit:cover;
  border-radius:8px;
}

.eden-venue-photos figcaption,
.eden-photo-credit {
  margin-top:.55rem;
  color:var(--muted);
  font-size:.82rem;
}

.eden-photo-credit {
  margin-bottom:0;
}

.eden-cta {
  background:var(--green);
  color:#1d211c;
}

.eden-cta-inner {
  max-width:900px;
  text-align:center;
  opacity:1 !important;
  transform:none !important;
}

.eden-cta h2 {
  margin-bottom:1rem;
  font-size:4.2rem;
}

.eden-cta p:not(.eyebrow) {
  max-width:620px;
  margin:0 auto 1.8rem;
}

@media (max-width: 840px) {
  .eden-header nav {
    gap:.8rem;
  }

  .eden-hero {
    min-height:88vh;
  }

  .eden-hero-content {
    padding:9rem 1.1rem 3rem;
  }

  .eden-hero h1 {
    font-size:4.2rem;
  }

  .eden-subtitle {
    font-size:1.55rem;
  }

  .eden-intro-grid,
  .eden-schedule-grid,
  .eden-venue-grid,
  .eden-speaker-grid,
  .eden-venue-photos {
    grid-template-columns:1fr;
  }

  .eden-intro-copy {
    padding-top:0;
  }

  .eden-section-heading h2,
  .eden-statement p,
  .eden-cta h2 {
    font-size:3rem;
  }

  .eden-speaker-photo {
    min-height:280px;
  }

  .eden-venue-photos img {
    height:300px;
  }
}

@media (max-width: 520px) {
  .eden-header nav a {
    font-size:.7rem;
  }

  .eden-hero {
    min-height:100svh;
  }

  .eden-hero-content {
    padding-top:7.25rem;
    padding-bottom:2.4rem;
  }

  .eden-hero h1 {
    font-size:3.08rem;
  }

  .eden-subtitle {
    font-size:1.22rem;
  }

  .eden-meta {
    align-items:flex-start;
    flex-direction:column;
  }

  .eden-section-heading h2,
  .eden-statement p,
  .eden-cta h2 {
    font-size:2.55rem;
  }

  .eden-agenda li {
    grid-template-columns:1fr;
    gap:.5rem;
  }

  .eden-venue-details {
    padding:1.25rem;
  }
}

/* EDEN page revision: compact speaker hover cards and interactive agenda */
.eden-speaker-grid {
  grid-template-columns:repeat(auto-fit, minmax(172px, 1fr));
  gap:.85rem;
}

.eden-speaker-card {
  position:relative;
  min-height:312px;
  overflow:hidden;
  padding:.78rem;
  border-radius:8px;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.eden-speaker-card:hover,
.eden-speaker-card:focus {
  transform:translateY(-4px);
  border-color:rgba(15,90,54,.36);
  box-shadow:0 18px 38px rgba(24,32,27,.14);
  outline:none;
}

.eden-speaker-photo {
  min-height:174px;
  margin-bottom:1rem;
}

.eden-speaker-card h3 {
  font-size:1.32rem;
  line-height:1.04;
}

.eden-speaker-card > p:not(.eden-speaker-role) {
  font-size:.86rem;
  line-height:1.35;
}

.eden-speaker-bio {
  position:absolute;
  inset:.78rem;
  display:flex;
  align-items:flex-end;
  padding:1rem;
  border-radius:6px;
  background:linear-gradient(180deg, rgba(10,63,40,.94), rgba(10,63,40,.98));
  color:var(--white);
  opacity:0;
  transform:translateY(8px);
  transition:opacity .22s ease, transform .22s ease;
  pointer-events:none;
}

.eden-speaker-bio p {
  margin:0;
  color:rgba(255,255,255,.9);
  font-size:.9rem;
  line-height:1.45;
}

.eden-speaker-card:hover .eden-speaker-bio,
.eden-speaker-card:focus .eden-speaker-bio,
.eden-speaker-card:focus-within .eden-speaker-bio {
  opacity:1;
  transform:none;
}

.eden-agenda {
  display:grid;
  gap:.75rem;
  border-top:0;
}

.eden-agenda-item {
  border:1px solid rgba(255,255,255,.2);
  border-radius:8px;
  background:rgba(255,255,255,.06);
  overflow:hidden;
}

.eden-agenda-item summary {
  display:grid;
  grid-template-columns:64px 1fr auto 34px;
  gap:1rem;
  align-items:center;
  min-height:78px;
  padding:1rem 1.1rem;
  cursor:pointer;
  list-style:none;
}

.eden-agenda-item summary::-webkit-details-marker {
  display:none;
}

.eden-agenda-item summary::after {
  content:"";
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:50%;
  color:var(--white);
  background:
    linear-gradient(currentColor 0 0) center / 12px 1px no-repeat,
    linear-gradient(currentColor 0 0) center / 1px 12px no-repeat;
}

.eden-agenda-item[open] summary::after {
  background:
    linear-gradient(currentColor 0 0) center / 12px 1px no-repeat;
}

.eden-agenda-item summary span {
  color:#b8d4c3;
  font-weight:700;
}

.eden-agenda-item summary strong {
  font-family:var(--serif);
  font-size:1.7rem;
  font-weight:400;
  line-height:1;
}

.eden-agenda-item summary em {
  color:rgba(255,255,255,.68);
  font-style:normal;
  font-size:.84rem;
  font-weight:600;
  text-transform:uppercase;
}

.eden-agenda-body {
  padding:0 1.1rem 1.25rem calc(64px + 2.1rem);
}

.eden-agenda-body h3 {
  margin:0 0 .45rem;
  font-size:1.35rem;
}

.eden-agenda-body p {
  max-width:620px;
  margin:0;
  color:rgba(255,255,255,.76);
}

@media (max-width: 840px) {
  .eden-speaker-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .eden-speaker-card {
    min-height:292px;
  }

  .eden-speaker-photo {
    min-height:154px;
  }

  .eden-agenda-item summary {
    grid-template-columns:44px 1fr 30px;
    gap:.75rem;
  }

  .eden-agenda-item summary em {
    grid-column:2 / 3;
  }

  .eden-agenda-item summary::after {
    grid-column:3;
    grid-row:1 / span 2;
  }

  .eden-agenda-body {
    padding:0 1rem 1.2rem calc(44px + 1.75rem);
  }
}

@media (max-width: 520px) {
  .eden-meta span {
    max-width:100%;
  }

  .eden-speaker-grid {
    grid-template-columns:1fr;
  }

  .eden-speaker-card {
    min-height:258px;
  }

  .eden-speaker-photo {
    min-height:126px;
  }

  .eden-speaker-bio {
    padding:.85rem;
  }

  .eden-agenda-item summary {
    min-height:70px;
    padding:.9rem;
  }

  .eden-agenda-item summary strong {
    font-size:1.35rem;
  }

  .eden-agenda-body {
    padding:0 .9rem 1rem .9rem;
  }
}

/* EDEN speaker bios: Hub-style hover prompt with click-to-read modal */
.button-register {
  min-height:62px;
  padding:1rem 1.75rem;
  font-size:1.03rem;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.button-outline-green {
  border:1px solid rgba(15,90,54,.4);
  color:var(--green-dark);
}

.eden-cta-actions {
  display:flex;
  justify-content:center;
  gap:.8rem;
  flex-wrap:wrap;
}

.eden-speaker-card {
  min-height:auto;
  overflow:visible;
}

.eden-speaker-card:hover,
.eden-speaker-card:focus {
  transform:none;
  border-color:var(--line);
  box-shadow:none;
}

.eden-speaker-trigger {
  position:relative;
  display:block;
  width:100%;
  margin:0 0 1rem;
  padding:0;
  border:0;
  border-radius:6px;
  overflow:hidden;
  background:transparent;
  cursor:pointer;
  font:inherit;
  color:inherit;
}

.eden-speaker-trigger:focus-visible {
  outline:3px solid rgba(15,90,54,.4);
  outline-offset:3px;
}

.eden-speaker-trigger .eden-speaker-photo {
  display:block;
  min-height:190px;
  margin:0;
  border-radius:0;
  transition:transform .28s ease, filter .28s ease;
}

.eden-read-bio {
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  background:rgba(10,63,40,.74);
  color:var(--white);
  font-size:.82rem;
  font-weight:700;
  text-transform:uppercase;
  opacity:0;
  transition:opacity .22s ease;
}

.eden-speaker-trigger:hover .eden-speaker-photo,
.eden-speaker-trigger:focus-visible .eden-speaker-photo {
  transform:scale(1.035);
  filter:saturate(.9) brightness(.72);
}

.eden-speaker-trigger:hover .eden-read-bio,
.eden-speaker-trigger:focus-visible .eden-read-bio {
  opacity:1;
}

.eden-bio-modal {
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  padding:1.25rem;
  background:rgba(8,24,15,.68);
  opacity:0;
  pointer-events:none;
  transition:opacity .22s ease;
}

.eden-bio-modal.is-open {
  opacity:1;
  pointer-events:auto;
}

.eden-bio-dialog {
  position:relative;
  width:min(620px,100%);
  padding:clamp(1.5rem,4vw,3rem);
  border-radius:8px;
  background:var(--white);
  color:var(--ink);
  box-shadow:0 24px 70px rgba(0,0,0,.3);
}

.eden-bio-dialog h3 {
  margin-bottom:.55rem;
  color:var(--green-dark);
  font-size:2.6rem;
}

.eden-bio-dialog p:last-child {
  margin-bottom:0;
  color:#3f4b42;
}

.eden-modal-topic {
  margin-bottom:1.2rem;
  color:var(--green) !important;
  font-weight:700;
}

.eden-bio-close {
  position:absolute;
  top:.9rem;
  right:.9rem;
  border:1px solid var(--line);
  border-radius:999px;
  background:transparent;
  color:var(--green-dark);
  cursor:pointer;
  font:inherit;
  font-size:.76rem;
  font-weight:700;
  padding:.45rem .7rem;
  text-transform:uppercase;
}

body.modal-open {
  overflow:hidden;
}

@media (max-width: 840px) {
  .button-register {
    min-height:58px;
  }

  .eden-speaker-trigger .eden-speaker-photo {
    min-height:176px;
  }
}

@media (max-width: 520px) {
  .hero-actions .button-register {
    width:100%;
  }

  .eden-speaker-card {
    min-height:auto;
  }

  .eden-speaker-trigger .eden-speaker-photo {
    min-height:220px;
  }

  .eden-read-bio {
    opacity:1;
    inset:auto 0 0;
    min-height:54px;
  }

  .eden-cta-actions {
    display:grid;
  }

  .eden-cta-actions .button {
    width:100%;
  }
}

/* EDEN Yadah refresh: calmer palette, tighter speakers, lighter venue */
.eden-page {
  background:var(--cream);
}

.eden-page .section {
  padding-block:clamp(4rem,7vw,6.75rem);
}

.eden-intro,
.eden-speakers,
.eden-venue {
  background:var(--white);
}

.eden-intro {
  border-bottom:1px solid var(--line);
}

.eden-speakers {
  padding-top:clamp(4rem,6vw,5.75rem);
}

.eden-speakers .section-heading {
  margin-bottom:2.2rem;
}

.eden-speaker-grid {
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:.8rem;
}

.eden-speaker-card {
  display:grid;
  align-content:start;
  padding:.72rem;
  border-color:rgba(15,90,54,.14);
  background:#fffdf8;
}

.eden-speaker-trigger {
  margin-bottom:.75rem;
  background:var(--green-dark);
}

.eden-speaker-trigger .eden-speaker-photo {
  min-height:128px;
  background:
    linear-gradient(135deg, rgba(15,90,54,.92), rgba(10,63,40,.82)),
    url('assets/yadah-mark.svg') center / 58px auto no-repeat;
}

.eden-read-bio {
  background:rgba(10,63,40,.82);
}

.eden-speaker-role {
  color:var(--green) !important;
}

.eden-speaker-card h3 {
  margin-bottom:.38rem;
  color:var(--green-dark);
  font-size:1.22rem;
}

.eden-speaker-card > p:not(.eden-speaker-role) {
  color:#47534a;
  font-size:.85rem;
}

.eden-modal-topic {
  color:var(--green) !important;
}

.eden-bio-dialog h3 {
  color:var(--green-dark);
}

.eden-schedule {
  background:var(--green-dark);
}

.eden-agenda-item {
  background:rgba(255,253,248,.07);
}

.eden-agenda-item summary span {
  color:#b8d4c3;
}

.eden-venue {
  border-top:1px solid var(--line);
}

.eden-venue .section-heading {
  margin-bottom:2rem;
}

.eden-venue .section-heading h2 {
  font-size:clamp(2.6rem,4.4vw,4.3rem);
}

.eden-venue-grid {
  grid-template-columns:.92fr 1.08fr;
  gap:.85rem;
}

.eden-venue-details {
  padding:1.45rem;
  background:var(--cream);
}

.eden-venue-details h3 {
  font-size:1.42rem;
}

.eden-venue-details h3:not(:first-child) {
  margin-top:1.25rem;
}

.eden-venue-details p {
  margin-bottom:.75rem;
  font-size:.98rem;
  line-height:1.58;
}

.eden-map,
.eden-map iframe {
  min-height:330px;
}

.eden-venue-photos {
  grid-template-columns:repeat(3,1fr);
  gap:.75rem;
}

.eden-venue-photos img {
  height:190px;
}

.eden-photo-credit {
  font-size:.76rem;
}

.eden-cta {
  background:var(--green);
  color:var(--white);
}

.eden-cta .eyebrow,
.eden-cta h2,
.eden-cta p {
  color:var(--white);
}

.eden-cta p:not(.eyebrow) {
  color:rgba(255,255,255,.82);
}

.eden-cta .button-green {
  background:var(--white);
  color:var(--green-dark);
}

.eden-cta .button-outline-green {
  border-color:rgba(255,255,255,.48);
  color:var(--white);
}

@media (max-width: 840px) {
  .eden-page .section {
    padding-block:4rem;
  }

  .eden-speaker-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .eden-speaker-trigger .eden-speaker-photo {
    min-height:132px;
  }

  .eden-venue-grid,
  .eden-venue-photos {
    grid-template-columns:1fr;
  }

  .eden-map,
  .eden-map iframe {
    min-height:320px;
  }

  .eden-venue-photos img {
    height:230px;
  }
}

@media (max-width: 520px) {
  .eden-speaker-grid {
    grid-template-columns:1fr;
  }

  .eden-speaker-trigger .eden-speaker-photo {
    min-height:150px;
  }

  .eden-venue-photos img {
    height:210px;
  }
}

/* EDEN v1.2: GSB-inspired page flow with Yadah colors */
.eden-page {
  background:var(--green-dark);
}

.eden-gsb-hero {
  min-height:94vh;
}

.eden-gsb-hero .eden-hero-content {
  width:min(1240px,100%);
}

.eden-gsb-hero .eden-kicker {
  margin-bottom:1rem;
  color:rgba(255,255,255,.88);
  letter-spacing:.16em;
}

.eden-gsb-hero h1 {
  margin:0 0 1rem;
  max-width:980px;
  color:var(--white);
  font-size:6.8rem;
  letter-spacing:0;
}

.eden-gsb-hero .eden-subtitle {
  max-width:780px;
  margin-bottom:0;
  color:rgba(255,255,255,.9);
  font-size:2.15rem;
  letter-spacing:0;
}

.eden-quick-facts {
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:2rem;
}

.eden-quick-facts span {
  display:inline-flex;
  align-items:center;
  gap:.58rem;
  min-height:44px;
  padding:.44rem .9rem;
  border:1px solid rgba(255,255,255,.36);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:rgba(255,255,255,.96);
  font-size:.95rem;
  font-weight:700;
}

.eden-quick-facts svg {
  width:1.08rem;
  height:1.08rem;
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.eden-flow-section {
  padding:7rem clamp(1.25rem,4vw,4rem);
}

.eden-flow-white {
  background:var(--white);
  color:var(--ink);
}

.eden-flow-green {
  background:var(--green-dark);
  color:var(--white);
}

.eden-flow-green .eyebrow,
.eden-flow-green .eden-section-title,
.eden-flow-green h3 {
  color:var(--white);
}

.eden-flow-green p {
  color:rgba(255,255,255,.78);
}

.eden-section-title {
  margin:0;
  color:var(--green-dark);
  font-size:5.75rem;
  line-height:.95;
  letter-spacing:0;
}

.eden-about-layout {
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:6rem;
  align-items:start;
}

.eden-large-copy {
  padding-top:.35rem;
}

.eden-large-copy p {
  max-width:680px;
  color:#344139;
  font-size:1.35rem;
  line-height:1.62;
}

.eden-large-copy p:last-child {
  margin-bottom:0;
}

.eden-flow-heading {
  max-width:1000px;
  margin-bottom:3rem;
}

.eden-schedule-stack {
  display:grid;
  gap:1rem;
}

.eden-schedule-card {
  display:grid;
  grid-template-columns:160px 1fr;
  gap:2rem;
  align-items:start;
  padding:1.45rem 1.55rem;
  border:1px solid rgba(255,255,255,.22);
  border-radius:8px;
  background:rgba(255,255,255,.075);
  transition:transform .22s ease, background .22s ease, border-color .22s ease;
}

.eden-schedule-card:hover,
.eden-schedule-card:focus-within {
  transform:translateY(-3px);
  border-color:rgba(255,255,255,.4);
  background:rgba(255,255,255,.12);
}

.eden-schedule-time {
  color:#b8d4c3;
  font-size:.9rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.eden-schedule-card h3 {
  margin:0 0 .35rem;
  font-size:2.25rem;
  line-height:1.05;
  letter-spacing:0;
}

.eden-schedule-card p {
  max-width:760px;
  margin:0;
  font-size:1.05rem;
}

.eden-ticket-cta,
.eden-contact-panel {
  max-width:960px;
  text-align:center;
}

.eden-ticket-cta .eden-section-title,
.eden-contact-panel .eden-section-title {
  max-width:850px;
  margin-inline:auto;
}

.eden-ticket-cta > p:not(.eyebrow),
.eden-contact-panel > p:not(.eyebrow) {
  max-width:700px;
  margin:1.35rem auto 2rem;
  color:#38443c;
  font-size:1.18rem;
}

.eden-cta-actions {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:.85rem;
}

.button-outline-green {
  border:1px solid rgba(15,90,54,.4);
  color:var(--green-dark);
}

.eden-venue-compact {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
  align-items:stretch;
}

.eden-venue-photo {
  min-height:100%;
  margin:0;
  overflow:hidden;
  border-radius:8px;
}

.eden-venue-photo img {
  height:100%;
  min-height:365px;
  object-fit:cover;
}

.eden-venue-info {
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:2.3rem;
  border:1px solid rgba(255,255,255,.22);
  border-radius:8px;
  background:rgba(255,255,255,.08);
}

.eden-venue-info h3 {
  margin:0 0 .8rem;
  font-size:2.3rem;
  line-height:1;
}

.eden-venue-info p {
  max-width:560px;
  margin:0 0 .9rem;
  font-size:1.02rem;
  line-height:1.6;
}

.eden-venue-info .button {
  margin-top:.7rem;
}

.eden-email-pill {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:64px;
  max-width:100%;
  padding:.8rem 1.45rem;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--cream);
  color:var(--green-dark);
  text-decoration:none;
  font-size:1.05rem;
  font-weight:800;
}

@media (max-width: 1100px) {
  .eden-gsb-hero h1 {
    font-size:5.5rem;
  }

  .eden-section-title {
    font-size:4.7rem;
  }

  .eden-about-layout {
    gap:3.5rem;
  }
}

@media (max-width: 840px) {
  .eden-gsb-hero {
    min-height:88vh;
  }

  .eden-gsb-hero h1 {
    font-size:4rem;
  }

  .eden-gsb-hero .eden-subtitle {
    font-size:1.58rem;
  }

  .eden-quick-facts {
    align-items:flex-start;
    flex-direction:column;
  }

  .eden-flow-section {
    padding:4.5rem 1.1rem;
  }

  .eden-section-title {
    font-size:3.35rem;
  }

  .eden-about-layout,
  .eden-venue-compact,
  .eden-schedule-card {
    grid-template-columns:1fr;
  }

  .eden-large-copy {
    padding-top:0;
  }

  .eden-large-copy p {
    font-size:1.14rem;
  }

  .eden-schedule-card {
    gap:.65rem;
    padding:1.25rem;
  }

  .eden-schedule-card h3 {
    font-size:1.8rem;
  }

  .eden-venue-photo img {
    min-height:270px;
  }
}

@media (max-width: 520px) {
  .eden-header nav {
    gap:.7rem;
  }

  .eden-header nav a {
    font-size:.78rem;
  }

  .eden-gsb-hero h1 {
    font-size:3.25rem;
  }

  .eden-gsb-hero .eden-subtitle {
    font-size:1.35rem;
  }

  .eden-section-title {
    font-size:2.6rem;
  }

  .eden-ticket-cta .eden-section-title,
  .eden-contact-panel .eden-section-title {
    font-size:2.45rem;
  }

  .eden-quick-facts span,
  .hero-actions .button,
  .eden-cta-actions .button,
  .eden-email-pill {
    width:100%;
  }

  .eden-venue-info {
    padding:1.35rem;
  }
}

/* EDEN v1.2.1: richer imagery, speaker placeholders, agenda, and FAQs */
.eden-page .eyebrow {
  font-size:.96rem;
  line-height:1.2;
  letter-spacing:.16em;
}

.eden-hero-rotator {
  background-image:none;
}

.eden-hero-rotator span {
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  opacity:0;
  transform:scale(1.02);
  animation:edenHeroFade 24s infinite;
}

.eden-hero-rotator span:nth-child(1) {
  opacity:1;
  animation-delay:-1.7s;
}

.eden-hero-rotator span:nth-child(2) {
  animation-delay:6s;
}

.eden-hero-rotator span:nth-child(3) {
  animation-delay:12s;
  background-position:center 38%;
}

.eden-hero-rotator span:nth-child(4) {
  animation-delay:18s;
  background-position:center 35%;
}

@keyframes edenHeroFade {
  0% { opacity:0; }
  7% { opacity:1; }
  25% { opacity:1; }
  34% { opacity:0; }
  100% { opacity:0; }
}

.eden-question-list {
  display:grid;
  gap:.65rem;
  margin:0 0 1.4rem;
  padding-left:1.15rem;
  color:#344139;
  font-size:1.18rem;
  line-height:1.58;
}

.eden-question-list li::marker {
  color:var(--green);
}

.eden-photo-strip {
  display:grid;
  grid-template-columns:1.15fr .9fr .95fr;
  gap:1rem;
  margin-top:4rem;
}

.eden-photo-strip img {
  height:310px;
  border-radius:8px;
  object-fit:cover;
}

.eden-photo-strip img:nth-child(2) {
  margin-top:2.5rem;
}

.eden-photo-strip img:nth-child(3) {
  margin-top:1rem;
}

.eden-stage-grid {
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:1rem;
}

.eden-stage-card {
  position:relative;
  min-height:315px;
  overflow:hidden;
  padding:.72rem;
  border:1px solid rgba(255,255,255,.22);
  border-radius:8px;
  background:rgba(255,255,255,.08);
  outline:none;
}

.eden-stage-photo {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:218px;
  margin-bottom:1rem;
  border-radius:6px;
  background:
    linear-gradient(135deg, rgba(255,253,248,.13), rgba(255,253,248,.03)),
    url('assets/yadah-mark.svg') center / 54px auto no-repeat,
    rgba(255,255,255,.08);
}

.eden-stage-photo span {
  position:absolute;
  top:1rem;
  left:1rem;
  color:#b8d4c3;
  font-size:.86rem;
  font-weight:800;
  letter-spacing:.12em;
}

.eden-stage-card h3 {
  margin:0 0 .28rem;
  color:var(--white);
  font-size:1.42rem;
  line-height:1.08;
}

.eden-stage-card p {
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:.95rem;
}

.eden-stage-bio {
  position:absolute;
  inset:.72rem;
  display:flex;
  align-items:flex-end;
  padding:1rem;
  border-radius:6px;
  background:rgba(10,63,40,.92);
  color:var(--white);
  opacity:0;
  transform:translateY(8px);
  transition:opacity .22s ease, transform .22s ease;
  font-weight:700;
}

.eden-stage-card:hover .eden-stage-bio,
.eden-stage-card:focus .eden-stage-bio,
.eden-stage-card:focus-within .eden-stage-bio {
  opacity:1;
  transform:translateY(0);
}

.eden-surprise-card .eden-stage-photo {
  background:
    linear-gradient(135deg, rgba(184,212,195,.2), rgba(255,253,248,.04)),
    url('assets/yadah-mark.svg') center / 64px auto no-repeat,
    rgba(255,255,255,.1);
}

.eden-agenda-accordion,
.eden-faq-list {
  display:grid;
  gap:1rem;
}

.eden-agenda-panel,
.eden-faq-item {
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--cream);
  transition:transform .22s ease, border-color .22s ease, background .22s ease;
}

.eden-agenda-panel:hover,
.eden-agenda-panel:focus-within,
.eden-faq-item:hover,
.eden-faq-item:focus-within {
  transform:translateY(-2px);
  border-color:rgba(15,90,54,.28);
  background:#fbf7ef;
}

.eden-agenda-panel summary,
.eden-faq-item summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.4rem;
  padding:1.35rem 1.45rem;
  color:var(--green-dark);
  cursor:pointer;
  list-style:none;
}

.eden-agenda-panel summary {
  text-align:center;
}

.eden-agenda-panel summary::-webkit-details-marker,
.eden-faq-item summary::-webkit-details-marker {
  display:none;
}

.eden-agenda-panel summary::after,
.eden-faq-item summary::after {
  content:"+";
  flex:0 0 auto;
  width:2rem;
  height:2rem;
  border:1px solid rgba(15,90,54,.25);
  border-radius:50%;
  display:grid;
  place-items:center;
  font-family:var(--sans);
  font-weight:800;
}

.eden-agenda-panel[open] summary::after,
.eden-faq-item[open] summary::after {
  content:"-";
}

.eden-agenda-panel summary span {
  display:block;
  margin-bottom:.3rem;
  color:var(--green);
  font-size:.86rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.eden-agenda-panel summary strong,
.eden-faq-item summary {
  font-family:var(--serif);
  font-size:2rem;
  font-weight:400;
  line-height:1.06;
  letter-spacing:0;
}

.eden-agenda-panel p,
.eden-faq-item p {
  max-width:900px;
  margin:0;
  padding:0 1.45rem 1.45rem;
  color:#344139;
  font-size:1.08rem;
  line-height:1.62;
}

.eden-faq-item {
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.08);
}

.eden-faq-item:hover,
.eden-faq-item:focus-within {
  border-color:rgba(255,255,255,.36);
  background:rgba(255,255,255,.12);
}

.eden-faq-item summary {
  color:var(--white);
}

.eden-faq-item summary::after {
  border-color:rgba(255,255,255,.32);
}

.eden-faq-item p,
.eden-faq-item a {
  color:rgba(255,255,255,.8);
}

.eden-flow-green .eden-ticket-cta > p:not(.eyebrow) {
  color:rgba(255,255,255,.82);
}

.eden-flow-green .eden-ticket-cta .eden-section-title {
  color:var(--white);
}

.eden-flow-white .eden-venue-info {
  border-color:var(--line);
  background:var(--cream);
}

.eden-flow-white .eden-venue-info h3 {
  color:var(--green-dark);
}

.eden-flow-white .eden-venue-info p {
  color:#344139;
}

@media (max-width: 1100px) {
  .eden-stage-grid {
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  .eden-photo-strip img {
    height:260px;
  }
}

@media (max-width: 840px) {
  .eden-page .eyebrow {
    font-size:.88rem;
  }

  .eden-photo-strip {
    grid-template-columns:1fr;
    margin-top:3rem;
  }

  .eden-photo-strip img,
  .eden-photo-strip img:nth-child(2),
  .eden-photo-strip img:nth-child(3) {
    height:260px;
    margin-top:0;
  }

  .eden-stage-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .eden-stage-card {
    min-height:285px;
  }

  .eden-stage-photo {
    min-height:188px;
  }

  .eden-agenda-panel summary,
  .eden-faq-item summary {
    align-items:flex-start;
  }

  .eden-agenda-panel summary strong,
  .eden-faq-item summary {
    font-size:1.55rem;
  }
}

@media (max-width: 520px) {
  .eden-header nav {
    gap:.55rem;
  }

  .eden-header nav a {
    font-size:.7rem;
  }

  .eden-question-list {
    font-size:1.04rem;
  }

  .eden-stage-grid {
    grid-template-columns:1fr;
  }

  .eden-stage-card {
    min-height:300px;
  }

  .eden-stage-photo {
    min-height:205px;
  }

  .eden-agenda-panel summary,
  .eden-faq-item summary {
    padding:1.1rem;
  }

  .eden-agenda-panel p,
  .eden-faq-item p {
    padding:0 1.1rem 1.1rem;
    font-size:1rem;
  }
}

/* EDEN v1.2.3: real speaker photos */
.eden-stage-photo {
  position:relative;
  height:218px;
  min-height:0;
  overflow:hidden;
}

.eden-stage-photo img {
  width:100%;
  height:100%;
  border-radius:6px;
  object-fit:cover;
  object-position:center;
  filter:saturate(.96) contrast(.98);
}

.eden-stage-photo span {
  z-index:2;
  padding:.28rem .45rem;
  border-radius:999px;
  background:rgba(10,63,40,.72);
  color:var(--white);
}

.eden-stage-card h3 {
  font-size:1.26rem;
}

.eden-stage-card:nth-child(3) .eden-stage-photo img,
.eden-stage-card:nth-child(5) .eden-stage-photo img,
.eden-stage-card:nth-child(7) .eden-stage-photo img {
  object-position:center top;
}

.eden-stage-card:nth-child(6) .eden-stage-photo img {
  object-position:center 20%;
}

.eden-stage-card:nth-child(9) .eden-stage-photo img {
  object-position:center 28%;
}

.eden-surprise-card .eden-stage-photo {
  display:flex;
  align-items:center;
  justify-content:center;
}

@media (max-width: 840px) {
  .eden-stage-photo {
    height:220px;
    min-height:0;
  }
}

@media (max-width: 520px) {
  .eden-stage-photo {
    height:260px;
    min-height:0;
  }
}

/* EDEN v1.2.6: centered event schedule summaries */
.eden-agenda-panel summary {
  position:relative;
  display:block;
  padding-left:4rem;
  padding-right:4rem;
  text-align:center;
}

.eden-agenda-panel summary::after {
  position:absolute;
  top:50%;
  right:1.45rem;
  transform:translateY(-50%);
}

.eden-agenda-panel p {
  margin-inline:auto;
  text-align:center;
}

@media (max-width: 520px) {
  .eden-agenda-panel summary {
    padding-left:3.4rem;
    padding-right:3.4rem;
  }

  .eden-agenda-panel summary::after {
    right:1.1rem;
  }
}

/* EDEN v1.3.1: speaker roles and lighter cards */
.eden-flow-green .eden-stage-card {
  border-color:rgba(255,253,248,.5);
  background:#fff8ec;
  box-shadow:0 16px 40px rgba(0,0,0,.12);
}

.eden-flow-green .eden-stage-card h3 {
  color:var(--green-dark);
}

.eden-flow-green .eden-stage-card p {
  color:#47534a;
}

.eden-stage-photo {
  background:
    linear-gradient(135deg, rgba(255,253,248,.78), rgba(246,233,208,.56)),
    url('assets/yadah-mark.svg') center / 54px auto no-repeat,
    #f6e9d0;
}

.eden-stage-photo span {
  background:rgba(15,90,54,.86);
  color:var(--white);
}

.eden-stage-bio {
  align-items:center;
  justify-content:center;
  text-align:center;
  background:rgba(255,248,236,.94);
  color:var(--green-dark);
}

.eden-surprise-card .eden-stage-photo {
  position:relative;
  background:
    linear-gradient(135deg, rgba(255,253,248,.9), rgba(246,233,208,.75)),
    #f6e9d0;
}

.eden-surprise-card .eden-stage-photo::before {
  content:"?";
  color:rgba(15,90,54,.72);
  font-family:Georgia, serif;
  font-size:5.8rem;
  line-height:1;
  font-weight:700;
}

/* EDEN v1.3.2: venue slideshow */
.eden-venue-slideshow {
  position:relative;
  isolation:isolate;
  min-height:365px;
  background:var(--green-dark);
}

.eden-venue-slides {
  position:absolute;
  inset:0;
}

.eden-venue-slides img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  opacity:0;
  transition:opacity .55s ease;
}

.eden-venue-slides img.is-active {
  opacity:1;
}

.eden-venue-arrow {
  position:absolute;
  top:50%;
  z-index:2;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.5);
  border-radius:999px;
  background:rgba(10,63,40,.58);
  color:var(--white);
  cursor:pointer;
  font:inherit;
  font-size:2rem;
  line-height:1;
  transform:translateY(-50%);
  transition:background .2s ease, transform .2s ease;
}

.eden-venue-arrow:hover,
.eden-venue-arrow:focus-visible {
  background:rgba(10,63,40,.82);
  transform:translateY(-50%) scale(1.05);
}

.eden-venue-prev {
  left:1rem;
}

.eden-venue-next {
  right:1rem;
}

.eden-venue-dots {
  position:absolute;
  left:50%;
  bottom:1rem;
  z-index:2;
  display:flex;
  gap:.45rem;
  transform:translateX(-50%);
}

.eden-venue-dots span {
  width:8px;
  height:8px;
  border-radius:999px;
  background:rgba(255,255,255,.48);
}

.eden-venue-dots span.is-active {
  width:22px;
  background:var(--white);
}

@media (max-width: 520px) {
  .eden-venue-slideshow {
    min-height:270px;
  }

  .eden-venue-arrow {
    width:38px;
    height:38px;
  }
}

/* v1.2.8: trim mobile-only end-of-page whitespace */
@media (max-width: 640px) {
  body:not(.eden-page) .partner.section {
    padding-bottom:2.5rem;
  }

  .eden-page #contact.eden-flow-section {
    padding-bottom:2.5rem;
  }

  footer {
    padding-top:1.1rem;
    padding-bottom:calc(1.1rem + env(safe-area-inset-bottom));
  }

  .footer-inner {
    gap:.85rem;
  }

  .footer-brand img {
    width:28px;
    height:37px;
  }

  .footer-links {
    gap:.8rem 1rem;
  }
}
