
:root {
  --forest: #17372f;
  --forest-2: #245044;
  --sage: #879c82;
  --cream: #f6f1e7;
  --sand: #d6b78a;
  --copper: #a9683f;
  --ink: #1d2522;
  --muted: #66706b;
  --white: #fffdf8;
  --line: rgba(23,55,47,.14);
  --shadow: 0 18px 55px rgba(30,42,36,.12);
  --radius: 24px;
  --max: 1180px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--cream);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
img { display: block; max-width: 100%; }
a { color: inherit; }
.container { width: min(var(--max), calc(100% - 40px)); margin-inline: auto; }
.skip-link { position: fixed; top: 8px; left: 8px; transform: translateY(-150%); z-index: 999; padding: 10px 14px; background: var(--white); border-radius: 10px; }
.skip-link:focus { transform: translateY(0); }
.topnote { background: var(--forest); color: #fff; text-align: center; padding: 8px 16px; font-size: .82rem; letter-spacing: .04em; }
.site-header { position: sticky; top: 0; z-index: 50; background: rgba(246,241,231,.92); backdrop-filter: blur(14px); border-bottom: 1px solid var(--line); }
.nav-wrap { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 26px; }
.brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; min-width: 220px; }
.brand img { width: 145px; height: auto; }
.brand span { font-family: Georgia, serif; font-size: .9rem; color: var(--muted); line-height: 1.2; }
.nav-toggle { display: none; width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--line); background: var(--white); font-size: 1.25rem; }
.nav { display: flex; align-items: center; gap: 22px; }
.nav a { text-decoration: none; font-size: .94rem; font-weight: 650; }
.nav a:hover, .nav a[aria-current="page"] { color: var(--copper); }
.nav .nav-cta { background: var(--forest); color: #fff; padding: 11px 17px; border-radius: 999px; }
.nav .nav-cta:hover { color: #fff; background: var(--forest-2); }

.hero { position: relative; min-height: 680px; display: grid; align-items: end; color: #fff; overflow: hidden; }
.hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(15,31,27,.88) 0%, rgba(15,31,27,.62) 45%, rgba(15,31,27,.12) 75%), linear-gradient(0deg, rgba(15,31,27,.75) 0%, transparent 55%); z-index: 1; }
.hero img.hero-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero-content { position: relative; z-index: 2; padding: 110px 0 88px; max-width: 760px; }
.eyebrow { text-transform: uppercase; letter-spacing: .17em; font-weight: 800; font-size: .78rem; color: var(--copper); margin-bottom: 16px; }
.hero .eyebrow { color: #f3cda8; }
h1, h2, h3 { font-family: Georgia, "Times New Roman", serif; line-height: 1.1; margin-top: 0; }
h1 { font-size: clamp(3rem, 7vw, 6.2rem); letter-spacing: -.045em; margin-bottom: 24px; }
h2 { font-size: clamp(2.2rem, 4.6vw, 4.2rem); letter-spacing: -.035em; margin-bottom: 22px; }
h3 { font-size: 1.55rem; margin-bottom: 10px; }
.lead { font-size: clamp(1.08rem, 2vw, 1.35rem); max-width: 700px; color: inherit; }
.hero .lead { color: rgba(255,255,255,.9); }
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; text-decoration: none; padding: 14px 20px; border-radius: 999px; font-weight: 800; border: 1px solid transparent; transition: .2s ease; cursor: pointer; }
.btn-primary { background: var(--copper); color: #fff; }
.btn-primary:hover { transform: translateY(-2px); background: #935734; }
.btn-secondary { background: rgba(255,255,255,.12); color: #fff; border-color: rgba(255,255,255,.44); backdrop-filter: blur(8px); }
.btn-secondary:hover { background: rgba(255,255,255,.2); }
.btn-dark { background: var(--forest); color: #fff; }
.btn-outline { border-color: var(--forest); color: var(--forest); }

.trust-strip { position: relative; z-index: 4; margin-top: -32px; }
.trust-grid { background: var(--white); border-radius: 20px; box-shadow: var(--shadow); display: grid; grid-template-columns: repeat(4, 1fr); overflow: hidden; }
.trust-item { padding: 24px; border-right: 1px solid var(--line); }
.trust-item:last-child { border-right: 0; }
.trust-item strong { display: block; color: var(--forest); font-size: 1.04rem; }
.trust-item span { color: var(--muted); font-size: .9rem; }

.section { padding: 105px 0; }
.section-sm { padding: 70px 0; }
.section-white { background: var(--white); }
.section-dark { background: var(--forest); color: #fff; }
.section-dark p { color: rgba(255,255,255,.8); }
.section-heading { max-width: 780px; margin-bottom: 48px; }
.section-heading p { font-size: 1.1rem; color: var(--muted); }
.section-dark .section-heading p { color: rgba(255,255,255,.75); }
.grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 34px; align-items: center; }
.grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.grid-4 { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
.card { background: var(--white); border: 1px solid var(--line); border-radius: var(--radius); padding: 28px; box-shadow: 0 8px 26px rgba(31,45,39,.06); }
.card p { color: var(--muted); }
.card .num { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: #efe2d2; color: var(--copper); font-weight: 900; margin-bottom: 22px; }
.card-link { text-decoration: none; transition: .2s ease; }
.card-link:hover { transform: translateY(-5px); box-shadow: var(--shadow); }
.icon { width: 48px; height: 48px; border-radius: 15px; background: #e5ece7; color: var(--forest); display: grid; place-items: center; font-size: 1.35rem; margin-bottom: 20px; }
.media { border-radius: 30px; overflow: hidden; box-shadow: var(--shadow); min-height: 420px; }
.media img { width: 100%; height: 100%; object-fit: cover; }
.quote { font-family: Georgia, serif; font-size: clamp(1.8rem, 3vw, 2.8rem); line-height: 1.25; }
.quote small { display: block; margin-top: 18px; font-family: Inter, sans-serif; font-size: .9rem; opacity: .7; }
.pill { display: inline-flex; border-radius: 999px; padding: 7px 12px; background: #e5ece7; color: var(--forest); font-size: .82rem; font-weight: 800; margin: 4px 4px 4px 0; }
.list-check { list-style: none; padding: 0; margin: 22px 0; }
.list-check li { position: relative; padding-left: 30px; margin-bottom: 12px; }
.list-check li::before { content: "✓"; position: absolute; left: 0; top: 0; color: var(--copper); font-weight: 900; }
.notice { background: #efe2d2; border-left: 4px solid var(--copper); padding: 18px 20px; border-radius: 0 16px 16px 0; }

.page-hero { padding: 110px 0 80px; background: var(--forest); color: #fff; position: relative; overflow: hidden; }
.page-hero::after { content:""; position:absolute; width:460px; height:460px; border-radius:50%; background:rgba(255,255,255,.05); right:-120px; top:-180px; }
.page-hero h1 { font-size: clamp(3rem, 6vw, 5.2rem); max-width: 920px; }
.page-hero p { max-width: 720px; color: rgba(255,255,255,.8); font-size: 1.2rem; }
.breadcrumbs { font-size: .85rem; margin-bottom: 26px; opacity: .65; }
.breadcrumbs a { text-decoration: none; }

.feature-row { display: grid; grid-template-columns: 1.15fr .85fr; gap: 55px; align-items: center; margin-bottom: 85px; }
.feature-row.reverse { grid-template-columns: .85fr 1.15fr; }
.feature-row.reverse .feature-copy { order: 2; }
.feature-row.reverse .media { order: 1; }
.stat { padding: 22px; border-top: 1px solid var(--line); }
.stat strong { font-family: Georgia, serif; font-size: 2.4rem; display: block; color: var(--forest); }
.stat span { color: var(--muted); }

.fit-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.fit-box { border-radius: var(--radius); padding: 34px; }
.fit-yes { background: #e5ece7; }
.fit-no { background: #efe2d2; }
.fit-box h3 { font-size: 2rem; }

.price-card { background: var(--white); border: 1px solid var(--line); border-radius: var(--radius); padding: 32px; position: relative; overflow: hidden; }
.price-card.featured { border: 2px solid var(--copper); box-shadow: var(--shadow); }
.price { font-family: Georgia, serif; font-size: 3rem; color: var(--forest); margin: 14px 0 4px; }
.price small { font-family: Inter, sans-serif; font-size: .9rem; color: var(--muted); }
.price-card ul { padding-left: 18px; color: var(--muted); }

.accordion { border-top: 1px solid var(--line); }
.accordion-item { border-bottom: 1px solid var(--line); }
.accordion-button { width: 100%; border: 0; background: transparent; text-align: left; padding: 24px 44px 24px 0; font: inherit; font-weight: 800; font-size: 1.08rem; color: var(--ink); position: relative; cursor: pointer; }
.accordion-button::after { content: "+"; position: absolute; right: 0; top: 19px; font-size: 1.6rem; color: var(--copper); }
.accordion-button[aria-expanded="true"]::after { content: "–"; }
.accordion-panel { display: none; padding: 0 0 24px; color: var(--muted); max-width: 820px; }
.accordion-panel.open { display: block; }

.contact-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 36px; }
.contact-card { background: var(--forest); color: #fff; border-radius: var(--radius); padding: 36px; }
.contact-card a { color: #fff; }
.contact-card p { color: rgba(255,255,255,.75); }
.form { background: var(--white); border-radius: var(--radius); padding: 36px; border: 1px solid var(--line); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
label { display: block; font-size: .86rem; font-weight: 800; margin-bottom: 7px; }
input, textarea, select { width: 100%; border: 1px solid #cfd6d1; border-radius: 13px; padding: 13px 14px; background: #fff; font: inherit; }
textarea { min-height: 140px; resize: vertical; }
.full { grid-column: 1 / -1; }
.form-note { font-size: .82rem; color: var(--muted); }
.form-message { display: none; margin-top: 14px; padding: 12px; background: #e5ece7; border-radius: 12px; }

.cta-band { background: var(--copper); color: #fff; border-radius: 30px; padding: 48px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.cta-band h2 { font-size: clamp(2rem,4vw,3.4rem); margin-bottom: 10px; }
.cta-band p { margin: 0; opacity: .88; }

.footer { background: #10241f; color: #fff; padding: 70px 0 28px; }
.footer-grid { display: grid; grid-template-columns: 1.2fr .8fr .8fr; gap: 50px; }
.footer img { width: 190px; filter: brightness(0) invert(1); opacity: .92; margin-bottom: 20px; }
.footer p, .footer a { color: rgba(255,255,255,.68); }
.footer a { text-decoration: none; display: block; margin: 7px 0; }
.footer a:hover { color: #fff; }
.footer-bottom { margin-top: 45px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); display: flex; justify-content: space-between; gap: 20px; font-size: .82rem; color: rgba(255,255,255,.55); }

@media (max-width: 980px) {
  .nav-toggle { display: inline-grid; place-items: center; }
  .nav { position: absolute; top: 82px; left: 20px; right: 20px; padding: 20px; border-radius: 18px; background: var(--white); box-shadow: var(--shadow); flex-direction: column; align-items: stretch; display: none; }
  .nav.open { display: flex; }
  .trust-grid, .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .trust-item:nth-child(2) { border-right: 0; }
  .trust-item:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .grid-3 { grid-template-columns: 1fr 1fr; }
  .feature-row, .feature-row.reverse, .grid-2, .contact-grid { grid-template-columns: 1fr; }
  .feature-row.reverse .feature-copy, .feature-row.reverse .media { order: initial; }
}
@media (max-width: 680px) {
  .container { width: min(100% - 28px, var(--max)); }
  .brand img { width: 115px; }
  .brand span { display: none; }
  .hero { min-height: 640px; }
  .hero::before { background: linear-gradient(0deg, rgba(15,31,27,.9) 0%, rgba(15,31,27,.52) 78%); }
  .hero-content { padding-bottom: 64px; }
  .trust-grid, .grid-3, .grid-4, .fit-grid, .form-grid { grid-template-columns: 1fr; }
  .trust-item { border-right: 0; border-bottom: 1px solid var(--line); }
  .trust-item:last-child { border-bottom: 0; }
  .section { padding: 78px 0; }
  .page-hero { padding: 80px 0 60px; }
  .cta-band { padding: 32px; align-items: flex-start; flex-direction: column; }
  .footer-grid { grid-template-columns: 1fr; gap: 28px; }
  .footer-bottom { flex-direction: column; }
}

/* --- Prototype V2: event-led funnel --- */
.nav { gap: 14px; }
.nav a { font-size: .88rem; }
.hero-v2 { min-height: 760px; align-items: center; }
.hero-v2::before { background: linear-gradient(90deg, rgba(12,29,25,.94) 0%, rgba(12,29,25,.78) 48%, rgba(12,29,25,.35) 100%), linear-gradient(0deg, rgba(12,29,25,.78) 0%, transparent 60%); }
.hero-layout { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0,1.2fr) minmax(330px,.8fr); gap: 70px; align-items: center; padding: 92px 0 96px; }
.hero-copy-v2 { padding: 0; max-width: 720px; }
.hero-copy-v2 h1 { font-size: clamp(3.5rem,7vw,6.5rem); }
.hero-microcopy { color: rgba(255,255,255,.65); font-size: .9rem; margin-top: 18px; }
.hero-event-card { background: rgba(255,253,248,.96); color: var(--ink); padding: 28px; border-radius: 28px; box-shadow: 0 28px 70px rgba(0,0,0,.24); backdrop-filter: blur(15px); }
.event-kicker { text-transform: uppercase; letter-spacing: .12em; font-size: .72rem; font-weight: 900; color: var(--forest); padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.live-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--copper); margin-right: 7px; box-shadow: 0 0 0 5px rgba(169,104,63,.13); }
.mini-event { display: grid; grid-template-columns: 62px 1fr auto; gap: 14px; align-items: center; text-decoration: none; padding: 18px 0; border-bottom: 1px solid var(--line); }
.mini-event:hover strong { color: var(--copper); }
.mini-date { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 54px; border-radius: 14px; background: #e8eee9; color: var(--forest); font-size: .7rem; font-weight: 900; letter-spacing: .1em; }
.mini-date strong { font-family: Georgia,serif; font-size: 1.1rem; letter-spacing: -.03em; }
.mini-event > span:nth-child(2) { display: flex; flex-direction: column; line-height: 1.35; }
.mini-event small, .fireside-link small { color: var(--muted); margin-top: 4px; }
.mini-arrow { font-size: 1.4rem; color: var(--copper); }
.fireside-link { display: grid; grid-template-columns: 44px 1fr; gap: 12px; align-items: center; text-decoration: none; padding: 18px 0; }
.fireside-link > span:last-child { display: flex; flex-direction: column; line-height: 1.35; }
.fireside-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: radial-gradient(circle at 40% 35%, #efc278, #a9683f 60%, #6b3925); box-shadow: 0 0 28px rgba(194,111,53,.35); }
.btn-block { width: 100%; }
.trust-strip-v2 { margin-top: -38px; }

.intro-choice { padding-top: 125px; }
.journey-grid { align-items: stretch; }
.journey-card { position: relative; overflow: hidden; min-height: 340px; background: var(--white); border: 1px solid var(--line); border-radius: 28px; padding: 30px; text-decoration: none; display: flex; flex-direction: column; justify-content: space-between; box-shadow: 0 8px 28px rgba(31,45,39,.06); transition: .22s ease; }
.journey-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
.journey-card::after { content:""; position:absolute; width:180px; height:180px; border-radius:50%; background:#e5ece7; right:-80px; bottom:-95px; opacity:.7; }
.journey-card > div { position: relative; z-index: 1; }
.journey-event { background: var(--forest); color: #fff; border-color: transparent; }
.journey-event p { color: rgba(255,255,255,.72); }
.journey-event::after { background: rgba(255,255,255,.08); }
.journey-num { font-family: Georgia,serif; font-size: 3.2rem; color: var(--copper); line-height:1; margin-bottom: 65px; }
.journey-event .journey-num { color: #efc9a8; }
.journey-card p { color: var(--muted); }
.pill-light { background: rgba(255,255,255,.12); color:#fff; }
.text-link { color: var(--copper); font-weight: 850; }
.text-link.large { text-decoration:none; font-size:1rem; white-space:nowrap; }

.event-feature-grid { display: grid; grid-template-columns: 1.02fr .98fr; gap: 70px; align-items: center; }
.event-story .lead { color: var(--muted); }
.benefit-list { margin-top: 34px; }
.benefit-list > div { display:grid; grid-template-columns:48px 1fr; gap:16px; padding: 18px 0; border-top:1px solid var(--line); }
.benefit-list > div:last-child { border-bottom:1px solid var(--line); }
.benefit-list span { width:40px; height:40px; display:grid; place-items:center; border-radius:50%; background:#efe2d2; color:var(--copper); font-weight:900; font-size:.82rem; }
.benefit-list p { margin:0; color:var(--muted); }
.benefit-list strong { display:block; color:var(--ink); margin-bottom:3px; }
.fireside-panel { position:relative; overflow:hidden; min-height:610px; border-radius:34px; padding:54px; color:#fff; background: linear-gradient(145deg,#211713 0%,#3a241b 48%,#6e3a25 100%); box-shadow: var(--shadow); display:flex; align-items:flex-end; }
.fireside-glow { position:absolute; width:340px; height:340px; border-radius:50%; right:-70px; bottom:-110px; background: radial-gradient(circle,#efb55f 0%,rgba(205,94,32,.65) 28%,rgba(134,56,25,.18) 62%,transparent 72%); filter:blur(4px); }
.fireside-glow::after { content:""; position:absolute; width:170px; height:230px; left:80px; top:15px; border-radius:50% 50% 42% 58%; background:linear-gradient(160deg,#ffd58a,#c45f2b 58%,transparent 60%); transform:rotate(8deg); filter:blur(7px); opacity:.75; }
.fireside-content { position:relative; z-index:2; max-width:520px; }
.fireside-content h2,.fireside-content h3 { color:#fff; }
.fireside-content p { color:rgba(255,255,255,.78); }
.fireside-content .list-check li::before { color:#efc47e; }
.fireside-mark { display:inline-flex; padding:8px 13px; border-radius:999px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.2); text-transform:uppercase; letter-spacing:.15em; font-size:.72rem; font-weight:900; margin-bottom:22px; }
.fireside-quote { border-left:3px solid #efc47e; padding-left:18px; font-family:Georgia,serif; font-size:1.25rem; margin-top:28px; color:rgba(255,255,255,.9); }

.split-heading { max-width:none; display:flex; justify-content:space-between; align-items:flex-end; gap:30px; }
.split-heading > div { max-width:760px; }
.event-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.event-card { overflow:hidden; background:var(--white); border:1px solid var(--line); border-radius:28px; box-shadow:0 8px 28px rgba(31,45,39,.06); }
.featured-event { border:2px solid var(--copper); box-shadow:var(--shadow); }
.event-date { min-height:122px; display:flex; align-items:flex-end; justify-content:space-between; padding:24px 26px; background:var(--forest); color:#fff; }
.event-date span { font-family:Georgia,serif; font-size:2.5rem; letter-spacing:-.04em; }
.event-date strong { font-size:.78rem; letter-spacing:.15em; }
.event-date-soft { background:#8f5b3b; }
.event-body { padding:28px; }
.event-body p { color:var(--muted); min-height:130px; }
.event-meta { display:flex; flex-wrap:wrap; gap:10px 16px; color:var(--forest); font-size:.82rem; font-weight:800; margin:20px 0; }
.event-card-warm { background:#fbf3e8; }

.philosophy-grid { gap:70px; }
.cta-band-v2 { background:linear-gradient(120deg,var(--copper),#7e452e); }
.cta-buttons { display:flex; flex-wrap:wrap; gap:12px; justify-content:flex-end; }
.btn-ghost-light { color:#fff; border-color:rgba(255,255,255,.55); }
.eyebrow-light { color:#ffe1c4; }

.event-page-hero { padding:100px 0 90px; }
.event-hero-grid { position:relative; z-index:2; display:grid; grid-template-columns:1.25fr .75fr; gap:70px; align-items:end; }
.event-hero-note { background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16); border-radius:26px; padding:30px; backdrop-filter:blur(8px); }
.event-hero-note p { font-size:1rem; margin-bottom:0; }
.large-icon { width:56px; height:56px; font-size:1.3rem; margin-bottom:18px; }
.fireside-panel-page { min-height:680px; }
.event-detail-list { display:flex; flex-direction:column; gap:30px; }
.event-detail-card { display:grid; grid-template-columns:170px 1fr; background:var(--white); border:1px solid var(--line); border-radius:30px; overflow:hidden; box-shadow:0 10px 34px rgba(31,45,39,.07); }
.event-detail-date { background:var(--forest); color:#fff; padding:34px 28px; display:flex; flex-direction:column; justify-content:space-between; }
.event-detail-date span { font-family:Georgia,serif; font-size:3rem; line-height:1; letter-spacing:-.05em; }
.event-detail-date strong { text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; }
.event-detail-main { padding:38px; }
.event-detail-top { display:flex; justify-content:space-between; gap:30px; align-items:flex-start; }
.event-detail-top h3 { font-size:2.25rem; margin-top:10px; }
.event-subtitle { color:var(--copper)!important; font-weight:800; margin-top:-4px; }
.availability { display:inline-flex; border-radius:999px; padding:8px 13px; background:#e5ece7; color:var(--forest); font-size:.78rem; font-weight:850; white-space:nowrap; }
.detail-columns { display:grid; grid-template-columns:1fr 1fr; gap:40px; border-top:1px solid var(--line); margin-top:28px; padding-top:24px; }
.detail-columns h4 { margin-bottom:12px; }
.plain-list { list-style:none; padding:0; color:var(--muted); }
.plain-list li { margin-bottom:8px; }
.verification-note { padding:18px; background:#fff3df; border-radius:16px; color:#6d5035!important; }
.dark-card { padding:30px; border:1px solid rgba(255,255,255,.13); border-radius:24px; background:rgba(255,255,255,.05); }
.dark-card span { color:#efc9a8; font-weight:900; }
.dark-card h3 { margin-top:25px; color:#fff; }
.dark-card p { margin-bottom:0; }

@media (max-width: 1120px) {
  .nav { gap:10px; }
  .nav a { font-size:.82rem; }
  .brand { min-width:190px; }
  .brand img { width:125px; }
}
@media (max-width: 980px) {
  .hero-layout, .event-feature-grid, .event-hero-grid { grid-template-columns:1fr; }
  .hero-v2 { min-height:auto; }
  .hero-layout { padding:82px 0 100px; gap:36px; }
  .hero-event-card { max-width:620px; }
  .journey-grid, .event-card-grid { grid-template-columns:1fr; }
  .journey-card { min-height:280px; }
  .event-body p { min-height:0; }
  .event-detail-card { grid-template-columns:135px 1fr; }
  .cta-buttons { justify-content:flex-start; }
}
@media (max-width: 680px) {
  .hero-layout { padding:70px 0 88px; }
  .hero-copy-v2 h1 { font-size:clamp(3rem,16vw,4.7rem); }
  .hero-event-card { padding:20px; border-radius:22px; }
  .mini-event { grid-template-columns:54px 1fr; }
  .mini-arrow { display:none; }
  .trust-strip-v2 { margin-top:-25px; }
  .intro-choice { padding-top:92px; }
  .journey-num { margin-bottom:40px; }
  .event-feature-grid { gap:42px; }
  .fireside-panel { padding:32px; min-height:560px; }
  .split-heading { display:block; }
  .split-heading .text-link { display:inline-block; margin-top:10px; }
  .event-detail-card { grid-template-columns:1fr; }
  .event-detail-date { min-height:100px; flex-direction:row; align-items:flex-end; }
  .event-detail-main { padding:26px; }
  .event-detail-top { display:block; }
  .availability { margin-top:8px; }
  .detail-columns { grid-template-columns:1fr; gap:15px; }
  .event-hero-grid { gap:35px; }
}


/* Release Candidate V1 additions */
.nav { flex-wrap: wrap; justify-content: flex-end; }
.hero-v3 { min-height: 760px; align-items: stretch; }
.hero-v3::before { background: linear-gradient(90deg,rgba(11,29,24,.93),rgba(11,29,24,.69) 46%,rgba(11,29,24,.18) 82%),linear-gradient(0deg,rgba(11,29,24,.72),transparent 58%); }
.hero-layout { position:relative;z-index:2;display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;padding:120px 0 100px; }
.hero-copy-v2 h1 { font-size:clamp(3.3rem,6.8vw,6.4rem);max-width:900px; }
.hero-microcopy { max-width:680px;color:rgba(255,255,255,.72);font-size:.92rem;margin-top:18px; }
.hero-event-card { background:rgba(255,253,248,.96);color:var(--ink);padding:28px;border-radius:28px;box-shadow:0 28px 70px rgba(0,0,0,.24);backdrop-filter:blur(15px); }
.event-date-warm { background:linear-gradient(135deg,#74402c,#b97546); }
.page-hero-image { min-height:600px;display:flex;align-items:flex-end;padding:0;color:#fff;position:relative;overflow:hidden; }
.page-hero-image>img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover; }
.page-hero-overlay { position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,32,27,.9),rgba(14,32,27,.58) 58%,rgba(14,32,27,.18)),linear-gradient(0deg,rgba(14,32,27,.7),transparent 60%); }
.page-hero-content { position:relative;z-index:2;padding:120px 0 85px; }
.page-hero-content p { max-width:760px;color:rgba(255,255,255,.86);font-size:1.2rem; }
.gallery-teaser { background:#eee7da; }
.gallery-mosaic { display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:14px; }
.mosaic-item { position:relative;overflow:hidden;border-radius:22px;color:#fff;text-decoration:none; }
.mosaic-item img { width:100%;height:100%;object-fit:cover;transition:transform .35s ease; }
.mosaic-item:hover img { transform:scale(1.035); }
.mosaic-item::after { content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72)); }
.mosaic-item span { position:absolute;z-index:2;left:18px;right:18px;bottom:15px;font-weight:800; }
.mosaic-wide { grid-column:span 2; }
.mosaic-tall { grid-row:span 2; }
.gallery-row { display:grid;grid-template-columns:repeat(3,1fr);gap:16px; }
.gallery-row img { width:100%;height:300px;object-fit:cover;border-radius:22px; }
.profile-hero { background:var(--forest);color:#fff;padding:90px 0; }
.profile-hero-grid { display:grid;grid-template-columns:1.12fr .88fr;gap:70px;align-items:center; }
.profile-hero p { color:rgba(255,255,255,.8);font-size:1.2rem; }
.profile-image { border-radius:38px;overflow:hidden;box-shadow:var(--shadow);max-height:620px; }
.profile-image img { width:100%;height:100%;object-fit:cover; }
.credential-card { background:var(--white);border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--shadow); }
.timeline { list-style:none;padding:0;margin:20px 0 0; }
.timeline li { display:grid;grid-template-columns:110px 1fr;gap:18px;padding:16px 0;border-top:1px solid var(--line); }
.timeline strong { color:var(--copper); }
.decision-steps { display:grid;grid-template-columns:repeat(5,1fr);gap:14px; }
.decision-steps>div { background:var(--white);border:1px solid var(--line);border-radius:20px;padding:24px; }
.decision-steps span { width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#efe2d2;color:var(--copper);font-weight:900;margin-bottom:35px; }
.decision-steps p { color:var(--muted); }
.number-list { list-style:none;padding:0;counter-reset:item; }
.number-list li { display:grid;grid-template-columns:160px 1fr;gap:20px;padding:18px 0;border-top:1px solid var(--line); }
.number-list strong { color:var(--forest); }
.number-list span { color:var(--muted); }
.knowledge-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:22px; }
.knowledge-card { display:grid;grid-template-columns:70px 1fr;gap:20px;padding:30px;background:var(--white);border:1px solid var(--line);border-radius:26px;text-decoration:none;box-shadow:0 8px 26px rgba(31,45,39,.06);transition:.2s ease; }
.knowledge-card:hover { transform:translateY(-4px);box-shadow:var(--shadow); }
.knowledge-card p { color:var(--muted); }
.knowledge-icon { width:58px;height:58px;border-radius:18px;background:#e5ece7;display:grid;place-items:center;color:var(--forest);font-size:1.4rem; }
.article-hero { background:var(--forest);color:#fff;padding:95px 0 80px; }
.article-hero-grid { display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end; }
.article-hero p { color:rgba(255,255,255,.78);font-size:1.2rem;max-width:760px; }
.article-summary { background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:24px;padding:28px; }
.article-summary ul { margin-bottom:0;padding-left:20px;color:rgba(255,255,255,.82); }
.article { padding:90px 0; }
.article-layout { display:grid;grid-template-columns:minmax(0,760px) 300px;gap:70px;align-items:start; }
.article-main h2 { font-size:clamp(1.8rem,3vw,2.75rem);margin-top:52px; }
.article-main h2:first-child { margin-top:0; }
.article-main p,.article-main li { font-size:1.08rem;color:#46504b; }
.article-side { position:sticky;top:115px;display:flex;flex-direction:column;gap:16px; }
.side-card { background:var(--white);border:1px solid var(--line);border-radius:20px;padding:24px; }
.side-card p { color:var(--muted); }
.gallery-intro { display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:35px; }
.gallery-intro p { color:var(--muted);font-size:1.08rem; }
.gallery-filters { display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px; }
.filter-btn { border:1px solid var(--line);background:var(--white);border-radius:999px;padding:10px 16px;font-weight:800;cursor:pointer;color:var(--forest); }
.filter-btn.active,.filter-btn:hover { background:var(--forest);color:#fff; }
.gallery-grid { columns:3 320px;column-gap:18px; }
.gallery-card { break-inside:avoid;margin:0 0 18px;background:var(--white);border-radius:20px;overflow:hidden;border:1px solid var(--line);box-shadow:0 7px 22px rgba(31,45,39,.05); }
.gallery-card.is-hidden { display:none; }
.gallery-open { display:block;width:100%;padding:0;border:0;background:transparent;position:relative;cursor:zoom-in; }
.gallery-open img { width:100%;height:auto; }
.gallery-zoom { position:absolute;right:12px;bottom:12px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.9);color:var(--forest);font-size:1.25rem;opacity:0;transition:.2s; }
.gallery-open:hover .gallery-zoom,.gallery-open:focus .gallery-zoom { opacity:1; }
.gallery-card figcaption { padding:16px 18px;display:flex;flex-direction:column; }
.gallery-card figcaption span { color:var(--muted);font-size:.85rem;margin-top:2px; }
.lightbox { border:0;border-radius:20px;padding:0;background:#111;color:#fff;max-width:min(1100px,94vw);max-height:92vh;box-shadow:0 25px 90px rgba(0,0,0,.55); }
.lightbox::backdrop { background:rgba(0,0,0,.82); }
.lightbox img { max-width:100%;max-height:78vh;object-fit:contain;margin:auto; }
.lightbox p { margin:0;padding:16px 22px;text-align:center; }
.lightbox-close { position:absolute;right:12px;top:12px;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.92);font-size:1.5rem;cursor:pointer;z-index:2; }
.included-box { margin:35px 0;background:var(--white);border:1px solid var(--line);border-radius:26px;padding:32px; }
.legal-hero { padding:75px 0 55px; }
.legal-copy { max-width:850px; }
.legal-copy h2 { font-size:2rem;margin-top:45px; }
.form-dark { background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);color:#fff; }
.form-dark input,.form-dark textarea,.form-dark select { background:rgba(255,255,255,.96);color:var(--ink); }
.form-note-light { color:rgba(255,255,255,.7)!important; }
.editorial-note { display:none;margin:24px 0;padding:17px 20px;border:2px dashed #bd6f32;border-radius:14px;background:#fff5e6;color:#5d3d27;gap:14px;align-items:flex-start; }
.editorial-note strong { flex:0 0 auto;border-radius:999px;background:#bd6f32;color:#fff;padding:5px 9px;font-size:.72rem;letter-spacing:.08em; }
body.editorial-mode .editorial-note { display:flex; }
.editor-toggle { position:fixed;left:14px;bottom:14px;z-index:100;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(23,55,47,.92);color:#fff;padding:9px 13px;font-weight:800;font-size:.78rem;box-shadow:0 8px 25px rgba(0,0,0,.22);cursor:pointer; }
.editor-toggle[aria-pressed="true"] { background:#bd6f32; }
.editorial-page-hero { background:#704329; }
.editorial-dashboard { display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:30px; }
.editorial-task { display:grid;grid-template-columns:52px 1fr;gap:18px;background:var(--white);border:1px solid var(--line);border-radius:22px;padding:24px; }
.editorial-task>span { width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#fff0df;color:#a65d2f;font-weight:900; }
.editorial-task p { color:var(--muted);margin-bottom:0; }

@media (max-width:1120px){
 .nav-wrap{align-items:flex-start;padding:14px 0}.nav{max-width:690px}.decision-steps{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:980px){
 .hero-layout,.profile-hero-grid,.article-hero-grid,.article-layout,.gallery-intro{grid-template-columns:1fr}.hero-layout{align-items:end}.profile-image{max-height:520px}.article-side{position:static;display:grid;grid-template-columns:1fr 1fr}.gallery-mosaic{grid-template-columns:repeat(2,1fr)}.mosaic-tall{grid-row:span 1}.decision-steps{grid-template-columns:repeat(2,1fr)}.editorial-dashboard{grid-template-columns:1fr}
}
@media (max-width:760px){
 .site-header .nav-wrap{min-height:72px;align-items:center}.brand img{width:118px}.brand span{display:none}.nav-toggle{display:block}.nav{display:none;position:absolute;left:20px;right:20px;top:72px;background:var(--white);border:1px solid var(--line);border-radius:20px;padding:16px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:5px}.nav.open{display:flex}.nav a{padding:10px 12px}.hero-v3{min-height:auto}.hero-layout{padding:80px 0 85px}.hero-copy-v2 h1{font-size:clamp(2.8rem,15vw,4.5rem)}.trust-grid{grid-template-columns:1fr 1fr}.trust-item:nth-child(2){border-right:0}.grid-4,.grid-3,.grid-2,.fit-grid,.contact-grid,.event-feature-grid{grid-template-columns:1fr}.feature-row,.feature-row.reverse{grid-template-columns:1fr;gap:30px}.feature-row.reverse .feature-copy,.feature-row.reverse .media{order:initial}.section{padding:75px 0}.gallery-row{grid-template-columns:1fr}.gallery-row img{height:260px}.gallery-mosaic{grid-auto-rows:190px}.mosaic-wide{grid-column:span 2}.knowledge-grid{grid-template-columns:1fr}.article-side{grid-template-columns:1fr}.decision-steps{grid-template-columns:1fr}.number-list li{grid-template-columns:1fr;gap:4px}.timeline li{grid-template-columns:90px 1fr}.editor-toggle{font-size:.7rem;padding:8px 10px}
}
@media (max-width:520px){
 .container{width:min(var(--max),calc(100% - 28px))}.trust-grid{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid var(--line)}.trust-item:last-child{border-bottom:0}.gallery-mosaic{grid-template-columns:1fr;grid-auto-rows:240px}.mosaic-wide{grid-column:span 1}.hero-event-card{padding:18px}.page-hero-content{padding:90px 0 60px}.profile-hero{padding:65px 0}.event-detail-main{padding:24px}.form{padding:24px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.gallery-grid{columns:1}.knowledge-card{grid-template-columns:50px 1fr;padding:22px}.knowledge-icon{width:46px;height:46px}.article{padding:65px 0}
}
