/* Native, accessible overlays and a restrained hero halo. */
.hero h1 .wordmark{width:82%;max-height:none;margin-inline:auto}
.hero-stage{position:relative;isolation:isolate;margin-top:15px}
.hero-stage::before,.hero-stage::after{content:'';position:absolute;inset:-2px;z-index:-1;border-radius:26px;pointer-events:none}
@property --figo-halo-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
.hero-stage::before,.hero-stage::after{background:conic-gradient(from var(--figo-halo-angle),transparent 0deg,transparent 235deg,rgba(230,173,67,.1) 270deg,#dcb66c 300deg,#fff0bf 325deg,rgba(238,196,114,.5) 340deg,transparent 360deg);background-size:auto;animation:figo-orbit 10s linear infinite;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.hero-stage::before{inset:-3px;padding:3px;opacity:.95}
.hero-stage::after{inset:-10px;padding:11px;filter:blur(9px);opacity:.45}
.hero-photo{box-shadow:0 22px 55px rgba(0,0,0,.23)}
.hero-image{height:530px;object-position:center 60%;filter:brightness(1.18) saturate(1.04)}
.hero-caption{align-items:flex-end}.hero-caption h2{font-size:clamp(2.6rem,4.8vw,4.5rem);max-width:650px}
.hero-actions{display:flex;flex-direction:column;align-items:flex-end;gap:14px;flex-shrink:0}
.hero-secondary{font-size:13px;padding:6px 3px;border-bottom:1px solid rgba(247,240,223,.5)}
.hero-secondary:hover{color:var(--orange)}
.next-event{display:flex;align-items:center;gap:22px;margin-top:35px;padding:24px 28px;border:1px solid rgba(239,211,148,.18);border-radius:18px;background:linear-gradient(120deg,rgba(203,216,180,.06),rgba(239,211,148,.035))}
.event-icon{flex-shrink:0;transform:rotate(-6deg)}.event-icon .brass-icon{background:#d8d9b6;border-radius:50%;padding:8px;width:64px;height:64px}
.next-event .eyebrow{font-size:10px;margin-bottom:6px;color:var(--green)}.next-event h2{font-size:24px;letter-spacing:-.035em}.next-event p[data-event-date]{font-size:13px;color:var(--muted);margin:8px 0 0}.next-event>.text-link{margin-left:auto;white-space:nowrap;font-size:12px}
.portrait-link{display:block;position:relative;cursor:zoom-in}.portrait-link::after{content:'↗';position:absolute;right:12px;bottom:12px;background:rgba(28,37,30,.7);color:var(--paper);width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;font-size:16px}.photo-grid a{cursor:zoom-in}
html.figo-modal-open{overflow:hidden}
.figo-dialog,.figo-viewer{color:var(--paper);border:1px solid #566250;box-shadow:0 24px 100px rgba(0,0,0,.55);background:linear-gradient(145deg,#303a32,#242b27);border-radius:24px;padding:0;width:min(780px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto}
dialog::backdrop{background:rgba(9,16,12,.82)}
.dialog-shell{padding:38px;position:relative}.dialog-close{position:absolute;right:16px;top:16px;z-index:3;border:1px solid #6f7b6a;background:#29362d;color:var(--paper);width:40px;height:40px;border-radius:50%;font-size:27px;line-height:1;cursor:pointer;display:grid;place-items:center}
.dialog-close:hover{background:#3e4f3d}.figo-dialog h2{font-size:clamp(28px,5vw,42px);padding-right:35px;margin-bottom:20px}.figo-dialog p{color:var(--muted);font-size:14px}.figo-dialog .eyebrow{color:var(--green);font-size:10px}.figo-dialog .join-form{margin-top:25px}.figo-dialog .join-form>p{font-size:12px}.figo-dialog .button{font-size:13px}.figo-dialog .join-form label{font-size:12px}.figo-dialog .join-form input,.figo-dialog .join-form textarea{min-height:46px;padding:11px}.dialog-intro{max-width:580px}
.contact-choices{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:25px}.contact-choices button{text-align:left;cursor:pointer;background:rgba(185,208,159,.04);color:var(--paper);border:1px solid #586751;border-radius:15px;padding:20px}.contact-choices button[aria-pressed=true],.contact-choices button:hover{border-color:var(--orange);background:rgba(239,211,148,.08)}.contact-choices span{display:block;font-size:10px;color:var(--green);text-transform:uppercase;letter-spacing:.12em}.contact-choices strong{display:block;font-family:var(--display);font-size:20px;margin:9px 0 6px}.contact-choices small{font-size:11px;color:var(--muted)}.recipient-panel{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.recipient-summary a{color:var(--orange)}[hidden]{display:none!important}
.figo-viewer{width:min(1160px,calc(100vw - 24px));height:calc(100dvh - 32px);background:#17211b;overflow:hidden;display:none}
.figo-viewer[open]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:55px 18px 18px}
.figo-viewer figure{margin:0;min-height:0;flex:1;display:flex;align-items:center;justify-content:center;flex-direction:column;width:100%;gap:12px}
#viewer-image{min-height:0;max-width:100%;max-height:100%;object-fit:contain;flex:1;display:block;width:auto;height:auto}
#viewer-caption{font-size:13px;line-height:1.5;text-align:center;flex-shrink:0}
.viewer-controls{display:flex;align-items:center;gap:25px;margin-top:15px}.viewer-controls button{background:#2f4032;border:1px solid #5f735b;color:var(--paper);width:44px;height:44px;border-radius:50%;cursor:pointer;font-size:20px}.viewer-controls button:disabled{opacity:.35;cursor:default}#viewer-count{font-size:12px;min-width:70px;text-align:center}.viewer-status{font-size:12px;margin:10px 0 0;color:var(--muted)}.viewer-status:empty{display:none}
@keyframes figo-orbit{to{--figo-halo-angle:360deg}}
@media(max-width:800px){.hero h1 .wordmark{max-height:none}.hero-image{height:460px}.hero-caption h2{font-size:7.5vw}.hero-actions{align-items:flex-start;gap:9px}.hero-secondary{font-size:12px}.next-event{padding:20px;gap:15px;flex-wrap:wrap}.next-event h2{font-size:21px}.next-event>.text-link{margin-left:79px}.dialog-shell{padding:30px 23px}}
@media(max-width:520px){.hero-image{height:460px;object-position:52% 60%}.hero-caption h2{font-size:10vw;margin-bottom:20px}.hero-caption .button{font-size:12px;padding:14px 18px;gap:12px}.hero-secondary{padding-top:3px}.next-event{margin-top:28px;padding:19px 16px}.event-icon .brass-icon{width:52px;height:52px}.next-event>div:nth-child(2){max-width:calc(100% - 70px)}.next-event>.text-link{margin-left:67px}.next-event h2{font-size:20px}.figo-dialog{max-height:calc(100dvh - 24px);border-radius:18px}.contact-choices{grid-template-columns:1fr;gap:10px}.contact-choices button{padding:15px}.contact-choices strong{font-size:18px;margin-block:5px}.dialog-shell{padding:28px 20px}.figo-dialog .form-grid{gap:16px}.figo-viewer{border-radius:16px}.figo-viewer[open]{padding:55px 10px 15px}}
@media(prefers-reduced-motion:reduce){.hero-stage::before,.hero-stage::after{animation:none}}

/* A date announcement while the new flyer is being prepared. */
.figobeiz-date-card{padding:48px 35px;border:1px solid rgba(237,199,119,.35);border-radius:24px;background:radial-gradient(ellipse at 90% 5%,rgba(237,199,119,.16),transparent 65%),linear-gradient(145deg,#334333,#25352a);text-align:center;box-shadow:0 20px 50px rgba(0,0,0,.16)}
.figobeiz-date-card time{display:block;color:var(--paper);margin:30px 0}.figobeiz-date-card time strong{display:block;font-family:var(--display);font-size:clamp(100px,15vw,170px);letter-spacing:-.08em;line-height:1;color:var(--orange)}.figobeiz-date-card time span{display:block;font-size:17px;font-weight:650;letter-spacing:.15em;margin-top:15px}.figobeiz-date-card>p{font-size:17px}.flyer-note{display:inline-block;padding:8px 15px;border-radius:30px;border:1px solid rgba(237,199,119,.3);font-size:12px;color:var(--muted)}
@media(max-width:520px){.figobeiz-date-card{padding:32px 24px}}
/* Small, native countdown; no animation or library needed. */
.event-countdown[hidden],.event-countdown [hidden]{display:none}
.event-countdown{margin-top:18px}.countdown-heading{display:block;font-size:9px;letter-spacing:.12em;color:var(--muted);margin-bottom:9px}
.countdown-units{display:flex;gap:10px}.countdown-units>span{min-width:54px;padding:9px 8px 7px;border:1px solid rgba(239,211,148,.16);border-radius:10px;background:rgba(18,24,20,.35);text-align:center}
.countdown-units strong{display:block;font-size:25px;line-height:1.1;color:var(--gold,#efd394);font-variant-numeric:tabular-nums}.countdown-units small{display:block;margin-top:4px;font-size:9px;color:var(--muted)}
.event-countdown p{margin:0;color:var(--gold,#efd394);font-weight:700}.next-event>div:nth-child(2){min-width:0}
@media(min-width:801px){.next-event>div:nth-child(2){flex:1;display:grid;grid-template-columns:minmax(0,max-content) minmax(0,1fr);column-gap:28px;align-items:center}.next-event [data-event-label]{grid-column:1;grid-row:1}.next-event [data-event-title]{grid-column:1;grid-row:2;max-width:clamp(170px,24vw,320px)}.next-event [data-event-date]{grid-column:1;grid-row:3}.next-event .event-countdown{grid-column:2;grid-row:1 / 4;margin-top:0;justify-self:center}.next-event>.text-link{margin-left:8px}}
@media(max-width:520px){.countdown-units{gap:5px}.countdown-units>span{min-width:0;flex:1;padding:8px 5px}.countdown-units strong{font-size:21px}.countdown-units small{font-size:8px}}

