.elementor-110 .elementor-element.elementor-element-1fb20ec{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-110 .elementor-element.elementor-element-63ca27c4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:1px 0px 0px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:rgba(201,168,76,0.08);--border-color:rgba(201,168,76,0.08);--padding-top:100px;--padding-bottom:100px;--padding-left:24px;--padding-right:24px;}.elementor-110 .elementor-element.elementor-element-63ca27c4:not(.elementor-motion-effects-element-type-background), .elementor-110 .elementor-element.elementor-element-63ca27c4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #081427 0%, #061021 100%);}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-110 .elementor-element.elementor-element-53150f72{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 24px) 0px;}.elementor-110 .elementor-element.elementor-element-53150f72 .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:6px;color:#c9a84c;}.elementor-110 .elementor-element.elementor-element-1be43b5b{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-110 .elementor-element.elementor-element-1be43b5b .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:44px;font-weight:700;line-height:1.15em;color:#ffffff;}.elementor-110 .elementor-element.elementor-element-1bd23ec7{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:40px 64px;--row-gap:40px;--column-gap:64px;--grid-auto-flow:row;--align-items:start;--margin-top:48px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-110 .elementor-element.elementor-element-6d9ab35{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:12px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-110 .elementor-element.elementor-element-5aaa0057{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-110 .elementor-element.elementor-element-5aaa0057 .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:52px;font-weight:700;color:#ffffff;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-110 .elementor-element.elementor-element-2c81bed8{margin:4px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Barlow", Sans-serif;font-size:14px;font-weight:300;color:#e9e4d9;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-110 .elementor-element.elementor-element-30c9ccb1{margin:28px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--e-icon-list-icon-size:11px;--icon-vertical-offset:0px;}.elementor-110 .elementor-element.elementor-element-30c9ccb1 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(6px/2);}.elementor-110 .elementor-element.elementor-element-30c9ccb1 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(6px/2);}.elementor-110 .elementor-element.elementor-element-30c9ccb1 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(6px/2);}.elementor-110 .elementor-element.elementor-element-30c9ccb1 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-6px/2);}.elementor-110 .elementor-element.elementor-element-30c9ccb1 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-6px/2);}.elementor-110 .elementor-element.elementor-element-30c9ccb1 .elementor-icon-list-icon i{color:#8a7235;transition:color 0.3s;}.elementor-110 .elementor-element.elementor-element-30c9ccb1 .elementor-icon-list-icon svg{fill:#8a7235;transition:fill 0.3s;}.elementor-110 .elementor-element.elementor-element-30c9ccb1 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-110 .elementor-element.elementor-element-30c9ccb1 .elementor-icon-list-item > a{font-family:"Barlow", Sans-serif;font-size:14px;font-weight:300;}.elementor-110 .elementor-element.elementor-element-30c9ccb1 .elementor-icon-list-text{color:#e9e4d9;transition:color 0.3s;}.elementor-110 .elementor-element.elementor-element-28956da2{margin:24px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-110 .elementor-element.elementor-element-28956da2 .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:3px;color:#c0392b;}.elementor-110 .elementor-element.elementor-element-7fb027d6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-110 .elementor-element.elementor-element-32afa3d5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 28px) 0px;}.elementor-110 .elementor-element.elementor-element-32afa3d5 .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:5px;color:#c9a84c;}.elementor-110 .elementor-element.elementor-element-cf5e0cb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:rgba(201,168,76,0.1);--border-color:rgba(201,168,76,0.1);--padding-top:40px;--padding-bottom:40px;--padding-left:32px;--padding-right:32px;}.elementor-110 .elementor-element.elementor-element-cf5e0cb:not(.elementor-motion-effects-element-type-background), .elementor-110 .elementor-element.elementor-element-cf5e0cb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:rgba(255,255,255,0.02);}.elementor-110 .elementor-element.elementor-element-c5222c4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 28px) 0px;}.elementor-110 .elementor-element.elementor-element-c5222c4 .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:5px;color:#c9a84c;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:20px;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-20px;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-labels-inline .elementor-field-group > label{padding-left:8px;}body:not(.rtl) .elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-labels-inline .elementor-field-group > label{padding-right:8px;}body .elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-labels-above .elementor-field-group > label{padding-bottom:8px;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-group > label, .elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-subgroup label{color:#e9e4d9;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-group > label{font-family:"Barlow Condensed", Sans-serif;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:3px;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-type-html{padding-bottom:0px;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-group .elementor-field{color:#FFFFFF;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-group .elementor-field, .elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-subgroup label{font-family:"Barlow", Sans-serif;font-size:15px;font-weight:300;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:rgba(255,255,255,0.04);border-color:rgba(201,168,76,0.15);border-radius:0px 0px 0px 0px;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-group .elementor-select-wrapper select{background-color:rgba(255,255,255,0.04);border-color:rgba(201,168,76,0.15);border-radius:0px 0px 0px 0px;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-group .elementor-select-wrapper::before{color:rgba(201,168,76,0.15);}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-button{font-family:"Barlow Condensed", Sans-serif;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:5px;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .e-form__buttons__wrapper__button-next{background-color:#c9a84c;color:#061021;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-button[type="submit"]{background-color:#c9a84c;color:#061021;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-button[type="submit"] svg *{fill:#061021;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-110 .elementor-element.elementor-element-2acb5f1 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-110 .elementor-element.elementor-element-2acb5f1{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-110 .elementor-element.elementor-element-af50118{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(min-width:768px){.elementor-110 .elementor-element.elementor-element-63ca27c4{--content-width:900px;}}@media(max-width:1024px){.elementor-110 .elementor-element.elementor-element-1bd23ec7{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}@media(max-width:767px){.elementor-110 .elementor-element.elementor-element-1bd23ec7{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for form, class: .elementor-element-2acb5f1 */.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-type-acceptance { order: 10; }

.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-type-acceptance label { font-size: 12px !important; vertical-align: top; letter-spacing: 1px; margin-left: 4px; line-height: 1.5em; opacity: 0.85; }

.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-type-acceptance .elementor-field-label { display: none; }
.elementor-110 .elementor-element.elementor-element-2acb5f1 .elementor-field-group ::placeholder { color: #ffffff66; }


/* default white */
#form-field-ticketQuantity {
  color: #ffffff;
}

/* show the muted color only while the empty placeholder is selected */
#form-field-ticketQuantity:invalid {
  color: #ffffff66;
}/* End custom CSS */
/* Start custom CSS */:root {
  --navy: #061021;
  --navy-mid: #081427;
  --navy-light: #0e2038;
  --gold: #c9a84c;
  --gold-light: #dfc06a;
  --gold-pale: #f0dfa0;
  --gold-dim: #8a7235;
  --cream: #f5f0e6;
  --cream-muted: #e9e4d9;
  --white: #ffffff;
  --red-accent: #c0392b;
  --sea-teal: #1a5c6b;
  --sea-teal-light: #267d8f;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  background: var(--navy);
  color: var(--cream);
  font-family: 'Barlow', sans-serif;
  font-weight: 300;
  overflow-x: hidden;
}

/* ── Utility ── */
.gold { color: var(--gold); }
.gold-light { color: var(--gold-light); }

/* ── Noise / grain overlay ── */
body::after {
  content: '';
  position: fixed;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
  pointer-events: none;
  z-index: 9999;
}

/* ── HERO SECTION ── */
.hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 40px 24px 60px;
  overflow: hidden;
  /* CSS twin of the canvas scene: hero stays lighter than the
     darker below-the-fold blue it fades into. */
  background: linear-gradient(180deg,
    #030810 0%, #05101e 35%, #081828 70%, #0a1a30 100%);
}

/* Single canvas for sky + water */
.scene-canvas {
  position: absolute;
  inset: 0;
  /* THE fix: canvas is a replaced element — with width/height auto,
     `inset: 0` does NOT stretch it; it sits at its intrinsic size
     (the default 300×150 buffer) in the top-left corner. The JS then
     faithfully measured that tiny element and sized the buffer to
     match it, locking the scene into the corner box forever. */
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}

/* Blend bottom of hero into next section */
.hero-blend {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100px;
  background: linear-gradient(0deg, var(--navy-mid) 0%, transparent 100%);
  z-index: 1;
  pointer-events: none;
}

/* ── Hero layout: text + field footage ── */
.hero-grid {
  position: relative;
  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 44px;
  width: 100%;
  max-width: 1240px;
}
.hero-left {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* Field footage panel */
.hero-video-panel {
  width: 100%;
  max-width: 560px;
  opacity: 0;
  animation: fade-up 1.2s 1.4s forwards;
}
.video-frame {
  position: relative;
  background: #02060c;
  border: 1px solid rgba(201,168,76,0.28);
  box-shadow: 0 24px 80px rgba(0,0,0,0.55), 0 0 60px rgba(201,168,76,0.07);
}
.video-frame video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  background: #02060c;
}
.video-frame-label {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 14px;
  border-bottom: 1px solid rgba(201,168,76,0.18);
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 10px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--gold);
  background: rgba(201,168,76,0.04);
}
.video-frame-tag {
  margin-left: auto;
  color: var(--gold-dim);
  font-weight: 400;
}
.rec-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--red-accent);
  animation: rec-pulse 1.6s ease-in-out infinite;
}
@keyframes rec-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.25; }
}
.video-sound-btn {
  position: absolute;
  bottom: 12px;
  right: 12px;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 10px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold-light);
  background: rgba(4,10,20,0.7);
  border: 1px solid var(--gold-dim);
  padding: 7px 14px;
  cursor: pointer;
  transition: all 0.3s;
  backdrop-filter: blur(4px);
}
.video-sound-btn:hover {
  background: rgba(201,168,76,0.15);
  border-color: var(--gold);
}
.video-frame .corner {
  position: absolute;
  width: 14px;
  height: 14px;
  border-color: var(--gold);
  border-style: solid;
  border-width: 0;
  pointer-events: none;
}
.video-frame .corner.tl { top: -1px; left: -1px; border-top-width: 2px; border-left-width: 2px; }
.video-frame .corner.tr { top: -1px; right: -1px; border-top-width: 2px; border-right-width: 2px; }
.video-frame .corner.bl { bottom: -1px; left: -1px; border-bottom-width: 2px; border-left-width: 2px; }
.video-frame .corner.br { bottom: -1px; right: -1px; border-bottom-width: 2px; border-right-width: 2px; }

/* Desktop: title left, footage right */
@media (min-width: 1020px) {
  .hero { padding: 80px 48px; }
  .hero-grid {
    flex-direction: row;
    align-items: center;
    gap: 64px;
  }
  .hero-left {
    flex: 1.05;
    align-items: flex-start;
    text-align: left;
  }
  .hero-video-panel { flex: 0.95; max-width: 600px; }
  .hero-title { font-size: clamp(48px, 6.5vw, 84px); }
  .hero-divider { margin: 24px 0 !important; }
  .hero-subtitle { margin: 0; }
  .hero-left .countdown { justify-content: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  .rec-dot { animation: none; }
}

/* ── Brand mark placements ── */
.footer-mark {
  width: 120px;
  height: auto;
  margin: 0 auto 20px;
  display: block;
  opacity: 0.92;
}
.register-form { position: relative; overflow: hidden; }
.form-seal {
  position: absolute;
  top: -30px;
  right: -30px;
  width: 190px;
  height: auto;
  opacity: 0.05;
  pointer-events: none;
  transform: rotate(12deg);
}

/* Dossier stamp + classified bar */
.classified-bar {
  position: relative;
  z-index: 5;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--gold-dim);
  padding: 6px 20px;
  margin-bottom: 32px;
  letter-spacing: 6px;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 11px;
  text-transform: uppercase;
  color: var(--gold);
  opacity: 0;
  animation: fade-down 1s 0.3s forwards;
}
.classified-bar::before, .classified-bar::after {
  content: '◆';
  font-size: 6px;
  color: var(--gold-dim);
}

/* Logo / Title */
.hero-title-group {
  position: relative;
  z-index: 5;
  opacity: 0;
  animation: fade-up 1.2s 0.6s forwards;
}
.hero-pretitle {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 400;
  font-size: 15px;
  letter-spacing: 10px;
  line-height: 1.15; /* ~1pt breathing room between the two lines */
  text-transform: uppercase;
  color: var(--cream-muted);
  margin-bottom: 8px;
}
.hero-pretitle em {
  font-style: italic;
  font-weight: 300;
  letter-spacing: 8px;
  color: var(--cream-muted);
}
.hero-title {
  font-family: 'Playfair Display', serif;
  font-weight: 900;
  font-size: clamp(52px, 10vw, 100px);
  line-height: 0.95;
  color: var(--white);
  text-shadow: 0 0 80px rgba(201,168,76,0.15);
}
.hero-title .mission { display: block; }
.hero-title .possible {
  color: var(--gold);
  font-style: italic;
  display: block;
}
.hero-divider {
  width: 80px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
  margin: 24px auto;
}
.hero-subtitle {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 400;
  font-size: clamp(16px, 2.5vw, 22px);
  color: var(--cream-muted);
  line-height: 1.6;
  max-width: 520px;
  margin: 0 auto;
  position: relative;
  z-index: 5;
  opacity: 0;
  animation: fade-up 1s 1s forwards;
}
.hero-subtitle em {
  color: var(--gold-light);
  font-style: normal;
}

/* Date badge */
.date-badge {
  position: relative;
  z-index: 5;
  margin-top: 40px;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 500;
  font-size: 13px;
  letter-spacing: 5px;
  text-transform: uppercase;
  color: var(--gold);
  opacity: 0;
  animation: fade-up 1s 1.3s forwards;
}
.date-badge span {
  display: inline-block;
  border-bottom: 1px solid var(--gold-dim);
  padding-bottom: 4px;
}

/* ── COUNTDOWN ── */
.countdown-section {
  position: relative;
  z-index: 5;
  margin-top: 48px;
  opacity: 0;
  animation: fade-up 1s 1.5s forwards;
}
.countdown-label {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 6px;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 16px;
}
.countdown {
  display: flex;
  gap: 6px;
  justify-content: center;
  align-items: center;
}
.countdown-unit {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 72px;
}
.countdown-num {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 48px;
  color: var(--white);
  line-height: 1;
  letter-spacing: 2px;
}
.countdown-text {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 400;
  font-size: 10px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--gold);
  margin-top: 6px;
}
.countdown-sep {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 36px;
  color: var(--gold-dim);
  margin: 0 4px;
  align-self: flex-start;
  margin-top: 4px;
}

/* CTA Button */
.cta-group {
  position: relative;
  z-index: 5;
  margin-top: 48px;
  opacity: 0;
  animation: fade-up 1s 1.8s forwards;
}
.cta-btn {
  display: inline-block;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 5px;
  text-transform: uppercase;
  color: var(--navy);
  background: linear-gradient(135deg, var(--gold-light), var(--gold));
  padding: 16px 48px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.4s;
  position: relative;
  overflow: hidden;
}
.cta-btn:hover {
  background: linear-gradient(135deg, var(--gold-pale), var(--gold-light));
  transform: translateY(-2px);
  box-shadow: 0 12px 40px rgba(201,168,76,0.25);
}
.cta-btn::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 30%, rgba(255,255,255,0.2) 50%, transparent 70%);
  transform: translateX(-100%);
  transition: transform 0.6s;
}
.cta-btn:hover::after {
  transform: translateX(100%);
}

.scroll-hint {
  position: absolute;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
  opacity: 0;
  animation: fade-up 1s 2.2s forwards;
}
.scroll-hint span {
  display: block;
  width: 1px;
  height: 40px;
  background: linear-gradient(to bottom, var(--gold-dim), transparent);
  margin: 0 auto;
  animation: pulse-line 2s ease-in-out infinite;
}
@keyframes pulse-line {
  0%, 100% { opacity: 0.3; transform: scaleY(1); }
  50% { opacity: 0.8; transform: scaleY(1.3); }
}

/* ── MISSION SECTION ── */
.section {
  position: relative;
  padding: 100px 24px;
}
.section-inner {
  max-width: 900px;
  margin: 0 auto;
}

.mission-section {
  background: linear-gradient(180deg, var(--navy-mid) 0%, var(--navy) 30%, var(--navy-mid) 100%);
}
.section-tag {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 6px;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 24px;
}
.section-heading {
  font-family: 'Playfair Display', serif;
  font-weight: 700;
  font-size: clamp(28px, 5vw, 44px);
  color: var(--white);
  line-height: 1.15;
  margin-bottom: 32px;
}
.section-body {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 400;
  font-size: 19px;
  line-height: 1.8;
  color: var(--cream-muted);
  max-width: 650px;
}
.section-body strong {
  color: var(--gold-light);
  font-weight: 400;
}

/* ── JOURNEY / COORDINATES PREVIEW ── */
.journey-section {
  background: var(--navy-mid);
  border-top: 1px solid rgba(201,168,76,0.08);
}
.journey-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 48px;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 700px) {
  .journey-grid { grid-template-columns: 1fr; max-width: 320px; }
}
.journey-card {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(201,168,76,0.1);
  padding: 32px 24px;
  text-align: center;
  position: relative;
  overflow: hidden;
  transition: all 0.4s;
}
.journey-card:hover {
  border-color: var(--gold-dim);
  background: rgba(201,168,76,0.04);
  transform: translateY(-4px);
}
.journey-card-num {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 48px;
  color: rgba(201,168,76,0.12);
  position: absolute;
  top: 8px;
  right: 16px;
}
.journey-card-label {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 8px;
}
.journey-card-title {
  font-family: 'Playfair Display', serif;
  font-size: 20px;
  color: var(--white);
  margin-bottom: 8px;
}
.journey-card-desc {
  font-family: 'Barlow', sans-serif;
  font-weight: 400;
  font-size: 14px;
  color: var(--cream-muted);
  line-height: 1.5;
}
.journey-card.final {
  grid-column: 1 / -1;
  border-color: var(--gold-dim);
  background: linear-gradient(135deg, rgba(201,168,76,0.06) 0%, rgba(26,92,107,0.08) 100%);
}
.journey-card.final .journey-card-label { color: var(--gold-light); }
.journey-card .coords-locked {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--gold-dim);
  margin-top: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.coords-locked .lock-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.coords-locked .lock-icon svg {
  width: 14px;
  height: 14px;
  stroke: var(--gold-dim);
  fill: none;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* ── REGISTRATION SECTION ── */
.register-section {
  background: linear-gradient(180deg, var(--navy-mid) 0%, var(--navy) 100%);
  border-top: 1px solid rgba(201,168,76,0.08);
}
.register-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  margin-top: 48px;
  align-items: start;
}
@media (max-width: 768px) {
  .register-grid { grid-template-columns: 1fr; gap: 40px; }
}

.register-info {
  padding-top: 12px;
}
.register-info .price {
  font-family: 'Playfair Display', serif;
  font-size: 52px;
  font-weight: 700;
  color: var(--white);
}
.register-info .price .price-prefix {
  font-weight: normal;
}
.register-info .price-note {
  font-family: 'Barlow', sans-serif;
  font-weight: 300;
  font-size: 14px;
  color: var(--cream-muted);
  margin-top: 4px;
}
.register-info .includes {
  margin-top: 28px;
  font-family: 'Barlow', sans-serif;
  font-weight: 300;
  font-size: 14px;
  color: var(--cream-muted);
  line-height: 2;
}
.includes li {
  list-style: none;
  padding-left: 20px;
  position: relative;
}
.includes li::before {
  content: '—';
  position: absolute;
  left: 0;
  color: var(--gold-dim);
}
.register-info .capacity {
  margin-top: 24px;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 500;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--red-accent);
}

/* Form */
.register-form {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(201,168,76,0.1);
  padding: 40px 32px;
}
.form-title {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 5px;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 28px;
}
.form-group {
  margin-bottom: 20px;
}
.form-label {
  display: block;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--cream-muted);
  margin-bottom: 8px;
}
.form-label .label-optional {
  color: var(--gold-dim);
  font-weight: 300;
}
.form-input {
  width: 100%;
  padding: 12px 16px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(201,168,76,0.15);
  color: var(--white);
  font-family: 'Barlow', sans-serif;
  font-weight: 300;
  font-size: 15px;
  transition: border-color 0.3s;
  outline: none;
}
.form-input:focus {
  border-color: var(--gold);
  background: rgba(201,168,76,0.04);
}
.form-input::placeholder {
  color: rgba(212,207,197,0.3);
}
.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
@media (max-width: 500px) {
  .form-row { grid-template-columns: 1fr; }
}

.sms-consent {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 4px;
  margin-bottom: 24px;
}
.sms-consent input[type="checkbox"] {
  appearance: none;
  width: 18px;
  height: 18px;
  min-width: 18px;
  border: 1px solid var(--gold-dim);
  background: transparent;
  cursor: pointer;
  margin-top: 2px;
  position: relative;
  transition: all 0.3s;
}
.sms-consent input[type="checkbox"]:checked {
  background: var(--gold);
  border-color: var(--gold);
}
.sms-consent input[type="checkbox"]:checked::after {
  content: '';
  position: absolute;
  left: 5px; top: 2px;
  width: 5px; height: 9px;
  border: solid var(--navy); border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.sms-consent label {
  font-family: 'Barlow', sans-serif;
  font-weight: 300;
  font-size: 12px;
  color: var(--cream-muted);
  line-height: 1.5;
  cursor: pointer;
}

.form-submit {
  width: 100%;
  padding: 16px;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 5px;
  text-transform: uppercase;
  color: var(--navy);
  background: linear-gradient(135deg, var(--gold-light), var(--gold));
  border: none;
  cursor: pointer;
  transition: all 0.4s;
  position: relative;
  overflow: hidden;
}
.form-submit:hover {
  background: linear-gradient(135deg, var(--gold-pale), var(--gold-light));
  box-shadow: 0 8px 32px rgba(201,168,76,0.25);
}
.form-submit:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* Success state */
.form-success {
  display: none;
  text-align: center;
  padding: 40px 20px;
}
.form-success.show { display: block; }
.form-success h3 {
  font-family: 'Playfair Display', serif;
  font-size: 28px;
  color: var(--gold-light);
  margin-bottom: 12px;
}
.form-success p {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
  font-size: 17px;
  color: var(--cream-muted);
  line-height: 1.6;
}

/* ── EXPERIENCE TIMELINE ── */
.experience-section {
  background: var(--navy-mid);
  border-top: 1px solid rgba(201,168,76,0.08);
}
.timeline {
  position: relative;
  margin-top: 56px;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}
.timeline::before {
  content: '';
  position: absolute;
  left: 23px;
  top: 0;
  bottom: 0;
  width: 1px;
  background: linear-gradient(180deg, var(--gold-dim), rgba(201,168,76,0.1));
}
@media (max-width: 600px) {
  .timeline::before { left: 19px; }
}
.timeline-progress {
  position: absolute;
  left: 23px;
  top: 0;
  width: 1px;
  height: 0;
  background: linear-gradient(180deg, rgba(201,168,76,0.5), var(--gold-light));
  box-shadow: 0 0 10px rgba(201,168,76,0.45);
  z-index: 1;
  pointer-events: none;
}
.timeline-progress::after {
  content: '◆';
  position: absolute;
  bottom: -7px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 9px;
  color: var(--gold-light);
  text-shadow: 0 0 10px rgba(201,168,76,0.8);
}
@media (max-width: 600px) {
  .timeline-progress { left: 19px; }
}
.timeline-dot { transition: border-color 0.5s, box-shadow 0.5s; }
.timeline-dot::after { transition: background 0.5s, width 0.4s, height 0.4s; }
.timeline-time { transition: color 0.5s; }
.timeline-step.lit .timeline-dot {
  border-color: var(--gold);
  box-shadow: 0 0 14px rgba(201,168,76,0.35);
}
.timeline-step.lit .timeline-dot::after { background: var(--gold-light); }
.timeline-step.lit .timeline-time { color: var(--gold-light); }

/* Staggered child reveals */
.reveal .timeline-step,
.reveal .journey-card {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
.reveal.visible .timeline-step,
.reveal.visible .journey-card {
  opacity: 1;
  transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
  .reveal .timeline-step,
  .reveal .journey-card { opacity: 1; transform: none; transition: none; }
  .timeline-progress { display: none; }
}

.timeline-step {
  position: relative;
  padding-left: 64px;
  padding-bottom: 40px;
}
.timeline-step:last-child { padding-bottom: 0; }
.timeline-dot {
  position: absolute;
  left: 14px;
  top: 2px;
  width: 18px;
  height: 18px;
  border: 1px solid var(--gold-dim);
  border-radius: 50%;
  background: var(--navy-mid);
  display: flex;
  align-items: center;
  justify-content: center;
}
.timeline-dot::after {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--gold);
}
.timeline-step.final .timeline-dot {
  border-color: var(--gold);
  box-shadow: 0 0 12px rgba(201,168,76,0.3);
}
.timeline-step.final .timeline-dot::after {
  width: 8px;
  height: 8px;
  background: var(--gold-light);
}
.timeline-time {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 4px;
}
.timeline-title {
  font-family: 'Playfair Display', serif;
  font-size: 19px;
  color: var(--white);
  margin-bottom: 4px;
}
.timeline-desc {
  font-family: 'Barlow', sans-serif;
  font-weight: 400;
  font-size: 14px;
  color: var(--cream-muted);
  line-height: 1.6;
}

/* ── CAUSE SECTION ── */
.cause-section {
  background: linear-gradient(180deg, var(--navy) 0%, var(--navy-mid) 100%);
  border-top: 1px solid rgba(201,168,76,0.08);
}
.cause-highlight {
  margin-top: 40px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
@media (max-width: 700px) {
  .cause-highlight { grid-template-columns: 1fr; gap: 24px; }
}
.cause-stat {
  text-align: center;
  padding: 32px 16px;
  border: 1px solid rgba(201,168,76,0.08);
  background: rgba(255,255,255,0.015);
}
.cause-stat-num {
  font-family: 'Playfair Display', serif;
  font-weight: 700;
  font-size: 40px;
  color: var(--gold-light);
  line-height: 1;
  margin-bottom: 8px;
}
.cause-stat-label {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--cream-muted);
}
.cause-quote {
  margin-top: 40px;
  padding: 32px 40px;
  border-left: 2px solid var(--gold-dim);
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
  font-size: 20px;
  font-style: italic;
  color: var(--cream-muted);
  line-height: 1.7;
}
.cause-quote-attr {
  display: block;
  margin-top: 16px;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-style: normal;
  color: var(--gold-dim);
}

/* ── PARTNERS SECTION ── */
.partners-section {
  background: var(--navy-mid);
  border-top: 1px solid rgba(201,168,76,0.08);
}
.partners-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 24px;
  margin-top: 48px;
}
.partner-card {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(201,168,76,0.08);
  padding: 36px 24px;
  text-align: center;
  transition: all 0.4s;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.partner-logo {
  display: block;
  height: 46px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  margin: 0 auto 16px;
  opacity: 0.78;
  transition: opacity 0.4s;
}
.partner-card:hover .partner-logo { opacity: 1; }
.host-venue {
  max-width: 760px;
  margin: 48px auto 40px;
  padding: 44px 28px 36px;
  text-align: center;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(201,168,76,0.16);
}
.host-venue-logo {
  display: block;
  height: 92px;
  width: auto;
  max-width: 88%;
  object-fit: contain;
  margin: 0 auto 18px;
  opacity: 0.92;
}
.host-venue-label {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 5px;
  text-transform: uppercase;
  color: var(--gold);
}
.partner-card:hover {
  border-color: var(--gold-dim);
  background: rgba(201,168,76,0.04);
  transform: translateY(-3px);
}
.partner-card-name {
  font-family: 'Playfair Display', serif;
  font-size: 18px;
  color: var(--white);
  margin-bottom: 6px;
}
.partner-card-type {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 400;
  font-size: 11px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold);
}
.partners-note {
  margin-top: 32px;
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
  font-size: 16px;
  font-style: italic;
  color: rgba(212,207,197,0.5);
  text-align: center;
}

/* ── FAQ SECTION ── */
.faq-section {
  background: linear-gradient(180deg, var(--navy-mid) 0%, var(--navy) 100%);
  border-top: 1px solid rgba(201,168,76,0.08);
}
.faq-list {
  margin-top: 48px;
  max-width: 700px;
}
.faq-item {
  border-bottom: 1px solid rgba(201,168,76,0.08);
  padding: 24px 0;
}
.faq-item:first-child { border-top: 1px solid rgba(201,168,76,0.08); }
.faq-question {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 15px;
  letter-spacing: 1px;
  color: var(--white);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 12px;
  user-select: none;
}
.faq-question::before {
  content: '+';
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 300;
  font-size: 20px;
  color: var(--gold);
  width: 20px;
  text-align: center;
  flex-shrink: 0;
  transition: transform 0.3s;
}
.faq-item.open .faq-question::before {
  content: '—';
  color: var(--gold-dim);
}
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, padding 0.4s ease;
  font-family: 'Barlow', sans-serif;
  font-weight: 300;
  font-size: 14px;
  color: var(--cream-muted);
  line-height: 1.7;
  padding-left: 32px;
}
.faq-item.open .faq-answer {
  max-height: 200px;
  padding-top: 12px;
}

/* ── HOST SECTION ── */
.host-section {
  background: var(--navy);
  border-top: 1px solid rgba(201,168,76,0.08);
}
.host-content {
  margin-top: 32px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  max-width: 650px;
}
.host-letter {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
  font-size: 19px;
  line-height: 1.8;
  color: var(--cream-muted);
}
.host-letter strong {
  color: var(--gold-light);
  font-weight: 400;
}
.host-signature {
  margin-top: 24px;
  font-family: 'Playfair Display', serif;
  font-style: italic;
  font-size: 22px;
  color: var(--gold);
}
.host-signature-title {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--gold-dim);
  margin-top: 4px;
}

/* ── FOOTER ── */
.footer {
  text-align: center;
  padding: 60px 24px 40px;
  border-top: 1px solid rgba(201,168,76,0.06);
  background: var(--navy);
}
.footer-logo {
  font-family: 'Playfair Display', serif;
  font-weight: 700;
  font-size: 20px;
  color: var(--white);
}
.footer-logo span { color: var(--gold); font-style: italic; }
.footer-note {
  font-family: 'Barlow', sans-serif;
  font-weight: 400;
  font-size: 13px;
  color: var(--cream-muted);
  margin-top: 12px;
  line-height: 1.6;
}
.footer-cause {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
  font-size: 15px;
  font-style: italic;
  color: var(--gold-dim);
  margin-top: 20px;
}

/* ── ANIMATIONS ── */
@keyframes fade-up {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes fade-down {
  from { opacity: 0; transform: translateY(-16px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Scroll reveal */
.reveal {
  opacity: 0;
  transform: translateY(32px);
  transition: opacity 0.8s, transform 0.8s;
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* ── RESPONSIVE ── */
@media (max-width: 600px) {
  .countdown-num { font-size: 36px; }
  .countdown-unit { min-width: 56px; }
  .register-form { padding: 28px 20px; }
  .register-info .price { font-size: 40px; }
  .classified-bar { margin-bottom: 20px; }
  .hero-pretitle { margin-bottom: 20px; }
}/* End custom CSS */