/* SFL Community — public: events list + violation form. Uses the theme colors when available. */
body:not(#sfl-x) .sfl-wrap,body:not(#sfl-x) .sfl-events,body:not(#sfl-x) .sfl-vr{
  --e-ink:var(--sfl-ink,#12272A);--e-gold:var(--sfl-gold,#D4B47E);
  --e-gold-text:color-mix(in srgb,var(--e-gold) 40%,#3a2a10);--e-gold-soft:color-mix(in srgb,var(--e-gold) 25%,#fff);
  --e-text:#1A2224;--e-body:#3A4547;--e-muted:#55605F;--e-line:#E2E4E0;--e-field:#CBD1CD;--e-ground:var(--sfl-ground,#F5F6F4);
  --e-serif:var(--sfl-serif,'Cormorant Garamond',Georgia,serif);--e-sans:var(--sfl-sans,'Manrope',system-ui,sans-serif);
  font-family:var(--e-sans);color:var(--e-text)}
body:not(#sfl-x) .sfl-wrap{max-width:1240px;margin:0 auto;padding:64px 24px 112px;box-sizing:border-box}
body:not(#sfl-x) .sfl-entry:has(.sfl-events),body:not(#sfl-x) .sfl-entry:has(.sfl-vr){max-width:none}
body:not(#sfl-x) .sfl-events *,body:not(#sfl-x) .sfl-vr *{box-sizing:border-box}
body:not(#sfl-x) .sfl-events [hidden],body:not(#sfl-x) .sfl-vr [hidden]{display:none!important}

/* Buttons + badges */
body:not(#sfl-x) .sfl-ebtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;border:1px solid var(--e-field);background:#fff;color:var(--e-text);font:inherit;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .2s}
body:not(#sfl-x) .sfl-ebtn:hover{border-color:var(--e-ink);color:var(--e-ink)}
body:not(#sfl-x) .sfl-ebtn--ink{background:var(--e-ink);border-color:var(--e-ink);color:#fff}
body:not(#sfl-x) .sfl-ebtn--ink:hover{background:color-mix(in srgb,var(--e-ink) 72%,#000);color:#fff}
body:not(#sfl-x) .sfl-ebtn--gold{background:var(--e-gold);border-color:var(--e-gold);color:var(--e-ink)}
body:not(#sfl-x) .sfl-ebtn--gold:hover{background:#fff;border-color:#fff;color:var(--e-ink)}
body:not(#sfl-x) .sfl-ebtn--lg{min-height:56px;padding:0 34px;font-size:16px;font-weight:700}
body:not(#sfl-x) .sfl-badge{display:inline-flex;align-items:center;font-size:12px;font-weight:700;padding:6px 11px;border-radius:999px;line-height:1.2}
body:not(#sfl-x) .sfl-badge--free{background:#E4EFE9;color:#1F5A3F}
body:not(#sfl-x) .sfl-badge--dark{background:var(--e-ink);color:#fff}
body:not(#sfl-x) .sfl-badge--ink{background:var(--e-ink);color:var(--e-gold);letter-spacing:.14em;text-transform:uppercase;font-size:10.5px}
body:not(#sfl-x) .sfl-badge--gold{background:var(--e-gold-soft);color:#5d4519}

/* ---------- Events ---------- */
body:not(#sfl-x) .sfl-events{display:flex;flex-direction:column;gap:32px}
body:not(#sfl-x) .sfl-events__intro{font-family:var(--e-serif);font-style:italic;font-size:clamp(22px,2.4vw,28px);color:var(--e-muted);margin:0;max-width:760px}
body:not(#sfl-x) .sfl-events__filters{display:flex;flex-wrap:wrap;gap:8px}
body:not(#sfl-x) .sfl-chip{min-height:46px;padding:0 20px;border-radius:999px;border:1px solid var(--e-field);background:#fff;color:var(--e-text);font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}
body:not(#sfl-x) .sfl-chip:hover{border-color:var(--e-ink)}
body:not(#sfl-x) .sfl-chip.is-active{background:var(--e-ink);border-color:var(--e-ink);color:#fff}
body:not(#sfl-x) .sfl-events__heading{font-family:var(--e-serif);font-weight:500;font-size:40px;color:var(--e-ink);margin:16px 0 0}
body:not(#sfl-x) .sfl-events__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:24px}
body:not(#sfl-x) .sfl-events__empty{background:#fff;border-radius:24px;padding:56px 32px;text-align:center}
body:not(#sfl-x) .sfl-events__empty p,body:not(#sfl-x) .sfl-events__none{font-family:var(--e-serif);font-size:28px;color:var(--e-ink);margin:0}
body:not(#sfl-x) .sfl-ecard{background:#fff;border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:transform .35s ease,box-shadow .35s ease}
body:not(#sfl-x) .sfl-ecard:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(18,39,42,.10)}
body:not(#sfl-x) .sfl-ecard__media{position:relative;aspect-ratio:16/10;background:color-mix(in srgb,var(--e-ink) 80%,#fff);overflow:hidden}
body:not(#sfl-x) .sfl-ecard__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s ease}
body:not(#sfl-x) .sfl-ecard:hover .sfl-ecard__media img{transform:scale(1.04)}
body:not(#sfl-x) .sfl-ecard__date{position:absolute;top:16px;left:16px;background:#fff;border-radius:14px;padding:8px 14px;display:flex;flex-direction:column;align-items:center;line-height:1;box-shadow:0 6px 18px rgba(0,0,0,.12)}
body:not(#sfl-x) .sfl-ecard__date span{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--e-gold-text)}
body:not(#sfl-x) .sfl-ecard__date strong{font-family:var(--e-serif);font-size:32px;font-weight:600;color:var(--e-ink);margin-top:4px}
body:not(#sfl-x) .sfl-ecard__body{padding:26px 28px 28px;display:flex;flex-direction:column;gap:14px;flex:1}
body:not(#sfl-x) .sfl-ecard__badges{display:flex;flex-wrap:wrap;gap:8px}
body:not(#sfl-x) .sfl-ecard__title{font-family:var(--e-serif);font-weight:600;font-size:31px;line-height:1.08;color:var(--e-ink);margin:0}
body:not(#sfl-x) .sfl-ecard__desc{font-size:15px;line-height:1.65;color:var(--e-body)}
body:not(#sfl-x) .sfl-ecard__desc p{margin:0 0 .6em}
body:not(#sfl-x) .sfl-ecard__desc p:last-child{margin:0}
body:not(#sfl-x) .sfl-ecard__meta{margin:auto 0 0;padding-top:16px;border-top:1px solid var(--e-line);display:grid;gap:10px;font-size:14px}
body:not(#sfl-x) .sfl-ecard__meta div{display:grid;grid-template-columns:62px 1fr;gap:12px}
body:not(#sfl-x) .sfl-ecard__meta dt{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--e-gold-text);padding-top:3px}
body:not(#sfl-x) .sfl-ecard__meta dd{margin:0;color:var(--e-muted)}
body:not(#sfl-x) .sfl-ecard__actions{display:flex;flex-wrap:wrap;gap:8px}
body:not(#sfl-x) .sfl-ecard--featured{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);border-radius:28px;box-shadow:0 22px 50px rgba(18,39,42,.08)}
body:not(#sfl-x) .sfl-ecard--featured .sfl-ecard__media{aspect-ratio:auto;min-height:440px}
body:not(#sfl-x) .sfl-ecard--featured .sfl-ecard__body{padding:48px;gap:18px;justify-content:center}
body:not(#sfl-x) .sfl-ecard--featured .sfl-ecard__title{font-size:clamp(38px,4vw,50px);font-weight:500}
body:not(#sfl-x) .sfl-ecard--featured .sfl-ecard__meta{margin-top:8px}
body:not(#sfl-x) .sfl-ecard--featured .sfl-ecard__meta div{grid-template-columns:80px 1fr}
@media (max-width:860px){body:not(#sfl-x) .sfl-ecard--featured{grid-template-columns:1fr}body:not(#sfl-x) .sfl-ecard--featured .sfl-ecard__media{min-height:0;aspect-ratio:16/10}body:not(#sfl-x) .sfl-ecard--featured .sfl-ecard__body{padding:28px}}

/* ---------- Violation form ---------- */
body:not(#sfl-x) .sfl-vr{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start}
body:not(#sfl-x) .sfl-vr__guide{flex:1 1 340px;background:#fff;border-radius:24px;padding:36px;display:flex;flex-direction:column;gap:18px}
@media (min-width:1100px){body:not(#sfl-x) .sfl-vr__guide{position:sticky;top:110px}}
body:not(#sfl-x) .sfl-vr__heading{font-family:var(--e-serif);font-size:32px;font-weight:600;line-height:1.1;color:var(--e-ink);margin:0}
body:not(#sfl-x) .sfl-vr__intro{font-size:15px;line-height:1.7;color:var(--e-body)}
body:not(#sfl-x) .sfl-vr__intro p{margin:0 0 12px}
body:not(#sfl-x) .sfl-vr__intro p:last-child{margin:0}
body:not(#sfl-x) .sfl-vr__intro p:has(>strong:only-child){background:var(--e-gold-soft);border-radius:12px;padding:14px 16px;color:var(--e-ink)}
body:not(#sfl-x) .sfl-vr__rules{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;font-size:14px;line-height:1.6;color:var(--e-body)}
body:not(#sfl-x) .sfl-vr__rules li{display:flex;gap:12px}
body:not(#sfl-x) .sfl-vr__rules p{margin:0}
body:not(#sfl-x) .sfl-vr__num{flex:none;width:28px;height:28px;border-radius:50%;background:var(--e-ink);color:var(--e-gold);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}
body:not(#sfl-x) .sfl-vr__num svg{width:14px;height:14px}
body:not(#sfl-x) .sfl-vr__rules li.is-key .sfl-vr__num{background:var(--e-gold);color:#fff}
body:not(#sfl-x) .sfl-vr__rules li.is-key{color:var(--e-text)}
body:not(#sfl-x) .sfl-vr__form,body:not(#sfl-x) .sfl-vr__done{flex:999 1 600px;min-width:0;display:flex;flex-direction:column;gap:24px}
body:not(#sfl-x) .sfl-vr__steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
body:not(#sfl-x) .sfl-vr__steps li{display:flex;flex-direction:column;gap:8px;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--e-muted);transition:color .3s}
body:not(#sfl-x) .sfl-vr__steps li span{height:4px;border-radius:4px;background:var(--e-field);transition:background .3s}
body:not(#sfl-x) .sfl-vr__steps li.is-on{color:var(--e-ink)}
body:not(#sfl-x) .sfl-vr__steps li.is-on span{background:var(--e-gold)}
body:not(#sfl-x) .sfl-vr__card{margin:0;border:0;background:#fff;border-radius:24px;padding:36px;display:flex;flex-direction:column;gap:22px;min-width:0}
@media (max-width:600px){body:not(#sfl-x) .sfl-vr__card,body:not(#sfl-x) .sfl-vr__guide{padding:24px}}
body:not(#sfl-x) .sfl-vr__card-head{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:flex-start}
body:not(#sfl-x) .sfl-vr__title{display:block;font-family:var(--e-serif);font-size:32px;font-weight:600;color:var(--e-ink);padding:0;margin:0;line-height:1.1}
body:not(#sfl-x) .sfl-vr__sub{margin:6px 0 0;font-size:14px;color:var(--e-muted)}
body:not(#sfl-x) .sfl-vr__req{font-size:13px;font-weight:600;color:#8A3A1F}
body:not(#sfl-x) .sfl-vr__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;transition:opacity .3s}
body:not(#sfl-x) .sfl-vr__grid--3{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
body:not(#sfl-x) .sfl-vr__grid.is-off{opacity:.4;pointer-events:none}
body:not(#sfl-x) .sfl-f{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:var(--e-text)}
body:not(#sfl-x) .sfl-f input,body:not(#sfl-x) .sfl-f select,body:not(#sfl-x) .sfl-f textarea{font:inherit;font-weight:400;font-size:15px;color:var(--e-text);background:#fff;border:1px solid var(--e-field);border-radius:12px;padding:13px 16px;min-height:52px;width:100%;transition:border-color .2s,box-shadow .2s}
body:not(#sfl-x) .sfl-f textarea{resize:vertical;min-height:130px}
body:not(#sfl-x) .sfl-f input:focus,body:not(#sfl-x) .sfl-f select:focus,body:not(#sfl-x) .sfl-f textarea:focus{outline:none;border-color:var(--e-gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--e-gold) 30%,transparent)}
body:not(#sfl-x) .sfl-f.is-invalid input,body:not(#sfl-x) .sfl-f.is-invalid select,body:not(#sfl-x) .sfl-f.is-invalid textarea{border-color:#B4472A;box-shadow:0 0 0 3px #F6E3DC}
body:not(#sfl-x) .sfl-switch{display:inline-flex;align-items:center;gap:12px;min-height:46px;padding:0 18px 0 8px;border-radius:999px;background:var(--e-ground);font-size:14px;font-weight:600;cursor:pointer;position:relative}
body:not(#sfl-x) .sfl-switch input{position:absolute;opacity:0;width:1px;height:1px}
body:not(#sfl-x) .sfl-switch__ui{width:42px;height:24px;border-radius:999px;background:var(--e-field);position:relative;transition:background .2s}
body:not(#sfl-x) .sfl-switch__ui::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
body:not(#sfl-x) .sfl-switch input:checked+.sfl-switch__ui{background:var(--e-ink)}
body:not(#sfl-x) .sfl-switch input:checked+.sfl-switch__ui::after{transform:translateX(18px)}
body:not(#sfl-x) .sfl-switch input:focus-visible+.sfl-switch__ui{outline:2px solid var(--e-gold);outline-offset:2px}
body:not(#sfl-x) .sfl-vr__upload{display:flex;flex-direction:column;gap:12px}
body:not(#sfl-x) .sfl-vr__upload-title{font-size:14px;font-weight:700}
body:not(#sfl-x) .sfl-drop{position:relative;border:2px dashed var(--e-field);border-radius:18px;padding:34px 20px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;background:#FAFBF9;cursor:pointer;transition:border-color .2s,background .2s}
body:not(#sfl-x) .sfl-drop svg{width:36px;height:36px;color:var(--e-gold-text)}
body:not(#sfl-x) .sfl-drop:hover,body:not(#sfl-x) .sfl-drop.is-over{border-color:var(--e-gold);background:var(--e-gold-soft)}
body:not(#sfl-x) .sfl-drop__main{font-size:16px;font-weight:600;color:var(--e-ink)}
body:not(#sfl-x) .sfl-drop__help{font-size:13px;color:var(--e-muted)}
body:not(#sfl-x) .sfl-drop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
body:not(#sfl-x) .sfl-drop input:focus-visible{opacity:0}
body:not(#sfl-x) .sfl-drop:focus-within{outline:2px solid var(--e-gold);outline-offset:2px}
body:not(#sfl-x) .sfl-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body:not(#sfl-x) .sfl-thumbs:empty{display:none}
body:not(#sfl-x) .sfl-thumb{position:relative;height:120px;border-radius:14px;overflow:hidden;background:var(--e-ink);color:#fff;display:flex;align-items:flex-end}
body:not(#sfl-x) .sfl-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
body:not(#sfl-x) .sfl-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.6),transparent 60%)}
body:not(#sfl-x) .sfl-thumb span{position:relative;z-index:1;padding:10px;font-size:12px;line-height:1.3;word-break:break-all}
body:not(#sfl-x) .sfl-thumb--pdf{background:color-mix(in srgb,var(--e-ink) 80%,#fff)}
body:not(#sfl-x) .sfl-thumb--slot{background:transparent;border:1px dashed var(--e-field);color:var(--e-muted);align-items:center;justify-content:center;font-size:13px}
body:not(#sfl-x) .sfl-thumb--slot::after{display:none}
body:not(#sfl-x) .sfl-vr__submit{background:var(--e-ink);color:#fff;border-radius:24px;padding:36px;display:flex;flex-direction:column;gap:20px}
body:not(#sfl-x) .sfl-vr__agree{display:flex;gap:14px;align-items:flex-start;font-size:14px;line-height:1.7;color:#DCE5E2;cursor:pointer}
body:not(#sfl-x) .sfl-vr__agree input{flex:none;width:20px;height:20px;margin-top:3px;accent-color:var(--e-gold)}
body:not(#sfl-x) .sfl-vr__agree.is-invalid span{color:#F3C2B2}
body:not(#sfl-x) .sfl-vr__note{margin:0;font-size:14px;color:var(--e-gold)}
body:not(#sfl-x) .sfl-vr__submit .sfl-ebtn{align-self:flex-start}
body:not(#sfl-x) .sfl-vr__errors{background:#F6E3DC;color:#8A3A1F;border-radius:16px;padding:18px 22px;font-size:14px}
body:not(#sfl-x) .sfl-vr__errors ul{margin:8px 0;padding-left:18px}
body:not(#sfl-x) .sfl-vr__errors p{margin:0;font-size:13px}
body:not(#sfl-x) .sfl-vr__done{background:#fff;border-radius:24px;padding:56px 40px;align-items:flex-start}
body:not(#sfl-x) .sfl-vr__done-icon{width:60px;height:60px;border-radius:50%;background:#E4EFE9;color:#1F5A3F;display:flex;align-items:center;justify-content:center}
body:not(#sfl-x) .sfl-vr__done-icon svg{width:30px;height:30px}
body:not(#sfl-x) .sfl-vr__done h2{font-family:var(--e-serif);font-weight:500;font-size:40px;color:var(--e-ink);margin:0;line-height:1.1}
body:not(#sfl-x) .sfl-vr__done p{margin:0;color:var(--e-body);font-size:16px}
body:not(#sfl-x) .sfl-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
/* Keep our headings' spacing when placed inside a theme content column */
body:not(#sfl-x) .sfl-vr .sfl-vr__heading,body:not(#sfl-x) .sfl-vr .sfl-vr__done h2{margin-top:0}
body:not(#sfl-x) .sfl-events .sfl-events__heading{margin:16px 0 0}
body:not(#sfl-x) .sfl-events .sfl-ecard__title{margin:0}

/* Elementor Site Settings style every <button>/<input>; keep ours consistent. */
body:not(#sfl-x) :is(.sfl-ebtn,.sfl-chip){text-transform:none;letter-spacing:normal;line-height:1.2;box-shadow:none}
body:not(#sfl-x) .sfl-chip:is(:focus,:active):not(.is-active){background:#fff;color:var(--e-text)}
body:not(#sfl-x) .sfl-chip.is-active:is(:hover,:focus,:active){background:var(--e-ink);color:#fff}
body:not(#sfl-x) .sfl-ebtn--gold:is(:focus,:active){background:var(--e-gold);color:var(--e-ink)}
body:not(#sfl-x) .sfl-ebtn--ink:is(:focus,:active){background:var(--e-ink);color:#fff}
body:not(#sfl-x) .sfl-f :is(input,select,textarea){box-shadow:none;outline:none}

/* ---------- Home: Upcoming events band ---------- */
body:not(#sfl-x) .sfl-up{--e-ink:var(--sfl-ink,#12272A);--e-gold:var(--sfl-gold,#D4B47E);--e-serif:var(--sfl-serif,'Cormorant Garamond',Georgia,serif);--e-sans:var(--sfl-sans,'Manrope',system-ui,sans-serif);position:relative;z-index:2;background:var(--e-ink);color:#E8ECEB;font-family:var(--e-sans);padding:clamp(48px,6vw,80px) 0;overflow:hidden;isolation:isolate}
body:not(#sfl-x) .sfl-up *{box-sizing:border-box}
body:not(#sfl-x) .sfl-up::before{content:"";position:absolute;inset:-40% auto auto -10%;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(212,180,126,.16),transparent 65%);z-index:-1}
body:not(#sfl-x) .sfl-up::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,transparent,var(--e-gold),transparent)}
body:not(#sfl-x) .sfl-up__inner{max-width:1240px;margin:0 auto;padding:0 24px}
body:not(#sfl-x) .sfl-up__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:36px}
body:not(#sfl-x) .sfl-up__eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:12px;letter-spacing:.28em;text-transform:uppercase;font-weight:700;color:var(--e-gold)}
body:not(#sfl-x) .sfl-up__pulse{position:relative;width:10px;height:10px;border-radius:50%;background:var(--e-gold)}
body:not(#sfl-x) .sfl-up__pulse::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--e-gold);opacity:0;animation:sflUpPulse 2.2s ease-out infinite}
@keyframes sflUpPulse{0%{transform:scale(.5);opacity:.9}100%{transform:scale(1.6);opacity:0}}
body:not(#sfl-x) .sfl-up__title{font-family:var(--e-serif);font-weight:500;font-size:clamp(38px,5vw,56px);line-height:1.05;color:#fff;margin:10px 0 0;text-transform:none;letter-spacing:0}
body:not(#sfl-x) .sfl-up__tagline{font-family:var(--e-serif);font-style:italic;font-size:clamp(19px,2vw,23px);color:#C9D3D1;margin:10px 0 0}
body:not(#sfl-x) .sfl-up__all{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 24px;border-radius:999px;border:1px solid rgba(212,180,126,.6);color:#fff;font-weight:600;font-size:15px;text-decoration:none;transition:background .2s,border-color .2s,color .2s}
body:not(#sfl-x) .sfl-up__all:hover,body:not(#sfl-x) .sfl-up__all:focus-visible{background:var(--e-gold);border-color:var(--e-gold);color:var(--e-ink)}
body:not(#sfl-x) .sfl-up a:focus-visible{outline:3px solid var(--e-gold);outline-offset:3px}
body:not(#sfl-x) .sfl-up__empty{font-family:var(--e-serif);font-size:26px;color:#fff;margin:0}

body:not(#sfl-x) .sfl-up__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:stretch}
body:not(#sfl-x) .sfl-up__grid.is-single{grid-template-columns:minmax(0,1fr)}
body:not(#sfl-x) .sfl-up__feature{display:grid;grid-template-columns:minmax(0,1fr);background:#fff;color:#1A2224;border-radius:24px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
body:not(#sfl-x) .sfl-up__grid.is-single .sfl-up__feature{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
body:not(#sfl-x) .sfl-up__media{position:relative;aspect-ratio:16/8;background:linear-gradient(135deg,color-mix(in srgb,var(--e-ink) 80%,#fff),var(--e-ink));overflow:hidden}
body:not(#sfl-x) .sfl-up__grid.is-single .sfl-up__media{aspect-ratio:auto;min-height:280px}
body:not(#sfl-x) .sfl-up__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
body:not(#sfl-x) .sfl-up__feature:hover .sfl-up__media img{transform:scale(1.04)}
body:not(#sfl-x) .sfl-up__when{position:absolute;top:16px;left:16px;background:var(--e-gold);color:var(--e-ink);font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase;border-radius:999px;padding:8px 14px}
body:not(#sfl-x) .sfl-up__body{display:flex;gap:20px;padding:26px 28px 28px}
body:not(#sfl-x) .sfl-up__date{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:76px;padding:12px 10px;border-radius:16px;background:var(--e-ink);color:#fff;line-height:1;align-self:flex-start}
body:not(#sfl-x) .sfl-up__mon{font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--e-gold)}
body:not(#sfl-x) .sfl-up__day{font-family:var(--e-serif);font-size:40px;font-weight:600;margin-top:4px}
body:not(#sfl-x) .sfl-up__dow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#C9D3D1;margin-top:4px}
body:not(#sfl-x) .sfl-up__text{min-width:0}
body:not(#sfl-x) .sfl-up__name{font-family:var(--e-serif);font-weight:600;font-size:clamp(26px,2.6vw,34px);line-height:1.1;color:var(--e-ink);margin:0;text-transform:none;letter-spacing:0}
body:not(#sfl-x) .sfl-up__facts{list-style:none;margin:10px 0 0;padding:0;color:#3A4547;font-size:15px;line-height:1.6}
body:not(#sfl-x) .sfl-up__facts li{margin:0}
body:not(#sfl-x) .sfl-up__badges{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
body:not(#sfl-x) .sfl-up__actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
body:not(#sfl-x) .sfl-up .sfl-ebtn--ghost{background:transparent;border:1px solid #CBD1CD;color:var(--e-ink)}
body:not(#sfl-x) .sfl-up .sfl-ebtn--ghost:hover{border-color:var(--e-ink)}
body:not(#sfl-x) .sfl-up .sfl-ebtn--gold:hover{background:var(--e-ink);border-color:var(--e-ink);color:#fff}

body:not(#sfl-x) .sfl-up__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
body:not(#sfl-x) .sfl-up__item{margin:0;flex:1}
body:not(#sfl-x) .sfl-up__row{display:flex;align-items:center;gap:18px;height:100%;min-height:96px;padding:16px 20px;border-radius:20px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);color:#fff;text-decoration:none;transition:background .25s,border-color .25s,transform .25s}
body:not(#sfl-x) .sfl-up__row:hover,body:not(#sfl-x) .sfl-up__row:focus-visible{background:rgba(255,255,255,.1);border-color:rgba(212,180,126,.7);transform:translateX(4px);color:#fff}
body:not(#sfl-x) .sfl-up__date--sm{min-width:62px;padding:10px 8px;background:rgba(212,180,126,.14);border:1px solid rgba(212,180,126,.35);align-self:center}
body:not(#sfl-x) .sfl-up__date--sm .sfl-up__day{font-size:30px}
body:not(#sfl-x) .sfl-up__row-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
body:not(#sfl-x) .sfl-up__row-name{font-weight:700;font-size:17px;line-height:1.3;color:#fff}
body:not(#sfl-x) .sfl-up__row-meta{font-size:14px;color:#C9D3D1;line-height:1.45}
body:not(#sfl-x) .sfl-up__arrow{color:var(--e-gold);font-size:20px;transition:transform .2s}
body:not(#sfl-x) .sfl-up__row:hover .sfl-up__arrow{transform:translateX(4px)}
body:not(#sfl-x) .sfl-up .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

@media (max-width:960px){
  body:not(#sfl-x) .sfl-up__grid,body:not(#sfl-x) .sfl-up__grid.is-single,body:not(#sfl-x) .sfl-up__grid.is-single .sfl-up__feature{grid-template-columns:minmax(0,1fr)}
  body:not(#sfl-x) .sfl-up__grid.is-single .sfl-up__media{aspect-ratio:16/9;min-height:0}
}
@media (max-width:560px){
  body:not(#sfl-x) .sfl-up__body{flex-direction:column;gap:14px;padding:22px}
  body:not(#sfl-x) .sfl-up__date{flex-direction:row;gap:8px;align-items:baseline;min-width:0;padding:8px 14px}
  body:not(#sfl-x) .sfl-up__date .sfl-up__day{font-size:24px;margin:0}
  body:not(#sfl-x) .sfl-up__date .sfl-up__dow{margin:0}
  body:not(#sfl-x) .sfl-up__date--sm{flex-direction:column;align-items:center}
  body:not(#sfl-x) .sfl-up__row{gap:14px;padding:14px 16px}
  body:not(#sfl-x) .sfl-up__all{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){body:not(#sfl-x) .sfl-up__pulse::after{animation:none}body:not(#sfl-x) .sfl-up__row,body:not(#sfl-x) .sfl-up__media img,body:not(#sfl-x) .sfl-up__arrow{transition:none}}
