.sloff-content{color:var(--sloff-text);font-family:var(--sloff-font)}
.sloff-content__heading{margin:0 0 12px;font-size:clamp(28px,5vw,42px);line-height:1.05;font-weight:800}
.sloff-content__intro{max-width:72ch;color:var(--sloff-text-muted);line-height:1.6}
.sloff-content__empty{padding:18px;border:1px solid var(--sloff-line);border-radius:var(--sloff-radius-card);color:var(--sloff-text-muted)}
.sloff-content a:not(.btn-primary):not(.btn-secondary){color:var(--sloff-fest-accent);text-underline-offset:.18em}
.sloff-content a:focus-visible{outline:var(--sloff-focus-w) solid var(--sloff-focus);outline-offset:var(--sloff-focus-offset)}
.sloff-content__cta{margin-top:24px}
.sloff-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.sloff-sponsors__tier,.sloff-sponsors__hospitality{margin-top:26px}
.sloff-sponsors__tier h3,.sloff-sponsors__hospitality h3,.sloff-awards__group h3{margin:0 0 10px;font-size:1.1rem}
.sloff-sponsors__grid,.sloff-archive__photos ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0;margin:0;list-style:none}
.sloff-sponsors__item{min-height:112px;display:flex;align-items:center;justify-content:center;padding:10px;border-radius:10px;background:#f4f0e6;color:#171717;text-align:center;overflow:hidden}
.sloff-sponsors__item--white{background:#fff}
.sloff-sponsors__item a,.sloff-sponsors__item>span{width:100%;display:flex;align-items:center;justify-content:center}
.sloff-sponsors__logo{display:block;width:auto;height:auto;max-width:100%;object-fit:contain;flex:none}
.sloff-sponsors__item--ultrawide .sloff-sponsors__logo{max-width:132px;max-height:34px}
.sloff-sponsors__item--wide .sloff-sponsors__logo{max-width:100px;max-height:45px}
.sloff-sponsors__item--square .sloff-sponsors__logo{max-width:68px;max-height:68px}
.sloff-sponsors__item--tall .sloff-sponsors__logo{max-width:52px;max-height:86px}
.sloff-sponsors__tier--small .sloff-sponsors__item{min-height:90px}
.sloff-sponsors__tier--small .sloff-sponsors__item--ultrawide .sloff-sponsors__logo{max-width:106px;max-height:28px}.sloff-sponsors__tier--small .sloff-sponsors__item--wide .sloff-sponsors__logo{max-width:80px;max-height:36px}.sloff-sponsors__tier--small .sloff-sponsors__item--square .sloff-sponsors__logo{max-width:55px;max-height:55px}.sloff-sponsors__tier--small .sloff-sponsors__item--tall .sloff-sponsors__logo{max-width:42px;max-height:69px}
.sloff-sponsors__tier--large .sloff-sponsors__item{min-height:132px}
.sloff-sponsors__tier--large .sloff-sponsors__item--ultrawide .sloff-sponsors__logo{max-width:158px;max-height:41px}.sloff-sponsors__tier--large .sloff-sponsors__item--wide .sloff-sponsors__logo{max-width:120px;max-height:54px}.sloff-sponsors__tier--large .sloff-sponsors__item--square .sloff-sponsors__logo{max-width:82px;max-height:82px}.sloff-sponsors__tier--large .sloff-sponsors__item--tall .sloff-sponsors__logo{max-width:63px;max-height:103px}
.sloff-sponsors__item--smaller .sloff-sponsors__logo{transform:scale(.85)}
.sloff-sponsors__item--larger .sloff-sponsors__logo{transform:scale(1.15)}
.sloff-sponsors__name{font-size:.85rem}.sloff-sponsors__grid--row{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}
.sloff-venue-card{display:grid;grid-template-columns:minmax(160px,.9fr) minmax(0,1.3fr);gap:20px;margin-top:18px;padding:18px;border-radius:var(--sloff-radius-card);background:var(--sloff-surface-1)}
.sloff-venue-card__image{width:100%;height:100%;max-height:280px;min-height:150px;border-radius:10px;object-fit:cover}
.sloff-venue-card__body h3{margin:0 0 12px;font-size:1.35rem}.sloff-venue-card__body p{margin:8px 0;line-height:1.5}.sloff-venue-card__access ul{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none}.sloff-venue-card__access li{padding:5px 9px;border:1px solid var(--sloff-line-strong);border-radius:var(--sloff-radius-pill);font-size:.85rem}
.sloff-awards__group{margin-top:26px}.sloff-awards__group>ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;list-style:none}.sloff-awards__item{padding:18px;border-radius:var(--sloff-radius-card);background:var(--sloff-surface-1)}.sloff-awards__item h4{margin:4px 0 8px;font-size:1.2rem}.sloff-awards__category{margin:0;text-transform:uppercase;letter-spacing:.08em;color:var(--sloff-fest-highlight);font-size:.75rem;font-weight:800}.sloff-awards__item p:last-child{line-height:1.55}
.sloff-awards__roll{display:grid;gap:8px 48px}.sloff-awards__roll-list{margin:0;padding:0;list-style:none}.sloff-awards__roll-item{display:grid;grid-template-columns:3.25em minmax(0,1fr);gap:2px 12px;padding:9px 0;border-top:1px solid var(--sloff-line)}.sloff-awards__year{font-weight:800;color:var(--sloff-fest-highlight);font-variant-numeric:tabular-nums}.sloff-awards__honoree{color:var(--sloff-text)}.sloff-awards__role{grid-column:2;font-size:.875rem;color:var(--sloff-text-muted)}@media(min-width:768px){.sloff-awards__roll{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}
@media(max-width:600px){.sloff-sponsors__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sloff-venue-card{grid-template-columns:1fr;gap:12px}.sloff-venue-card__image{max-height:200px}.sloff-awards__group>ul{grid-template-columns:1fr}}
/* Two classes so the card title outranks the site kit's h3 (12 px, 1 px line height, letter-spaced). */
.sloff-content .sloff-venue-card__body h3{margin:0 0 12px;color:var(--sloff-text);font-size:var(--sloff-fs-22);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug);letter-spacing:0;text-transform:none}
.sloff-venues__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:var(--sloff-space-3)}
.sloff-venue-card.sloff-venue-card--compact,.sloff-venue-card.sloff-venue-card--access{display:block;margin:0;padding:var(--sloff-space-4) var(--sloff-space-5);border:1px solid var(--sloff-line)}
.sloff-venue-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--sloff-space-2)}
.sloff-content .sloff-venue-card--compact .sloff-venue-card__body h3,.sloff-content .sloff-venue-card--access .sloff-venue-card__body h3{margin:0;font-size:var(--sloff-fs-18)}
.sloff-venue-card__badge{flex:none;padding:3px 10px;border-radius:var(--sloff-radius-pill);background:var(--sloff-fest-accent);color:var(--sloff-fest-accent-ink);font-size:var(--sloff-fs-11);font-weight:var(--sloff-fw-extrabold);letter-spacing:var(--sloff-ls-label);text-transform:uppercase}
.sloff-venue-card .sloff-venue-card__facts{margin:var(--sloff-space-2) 0 0;color:var(--sloff-text-body);font-size:var(--sloff-fs-14)}
.sloff-venue-card .sloff-venue-card__note{margin:var(--sloff-space-1) 0 0;color:var(--sloff-text-muted);font-size:var(--sloff-fs-12)}
.sloff-venue-card .sloff-venue-card__action{margin:var(--sloff-space-2) 0 0}
.sloff-content .sloff-venue-card__action a{font-size:var(--sloff-fs-12);font-weight:var(--sloff-fw-extrabold);letter-spacing:var(--sloff-ls-label);text-transform:uppercase;text-decoration:none}
.sloff-venue-card--access .sloff-venue-card__access{margin-top:var(--sloff-space-2);color:var(--sloff-text-body);font-size:var(--sloff-fs-14)}
@media(max-width:600px){.sloff-content .sloff-venue-card__action a{display:flex;align-items:center;justify-content:center;gap:var(--sloff-space-1);min-height:var(--sloff-tap-min);border:1px solid var(--sloff-line-strong);border-radius:var(--sloff-radius-pill)}}

.sloff-archive{display:grid;gap:var(--sloff-space-6)}
.sloff-archive__years ul{display:flex;flex-wrap:wrap;gap:var(--sloff-space-2);margin:0;padding:0;list-style:none}
.sloff-archive .sloff-archive__years a{display:inline-flex;align-items:center;min-height:var(--sloff-tap-min);padding:0 var(--sloff-space-4);border:1px solid var(--sloff-line-strong);border-radius:var(--sloff-radius-pill);color:var(--sloff-text);font-size:var(--sloff-fs-13);font-weight:var(--sloff-fw-bold);text-decoration:none}
.sloff-archive .sloff-archive__years a:hover{border-color:var(--sloff-fest-accent)}
.sloff-archive .sloff-archive__years a[aria-current="page"]{border-color:var(--sloff-text);background:var(--sloff-text);color:var(--sloff-ink)}
.sloff-archive__hero{display:grid;gap:var(--sloff-space-5)}
.sloff-archive__art{order:-1}
.sloff-archive__key-art{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:var(--sloff-radius-card)}
.sloff-archive__key-art--poster{aspect-ratio:auto;max-height:640px;object-fit:contain;object-position:left}
.sloff-archive__intro{display:grid;gap:var(--sloff-space-3);align-content:start}
.sloff-archive__eyebrow{margin:0;color:var(--sloff-fest-highlight);font-size:var(--sloff-fs-12);font-weight:var(--sloff-fw-extrabold);letter-spacing:var(--sloff-ls-eyebrow);text-transform:uppercase}
.sloff-archive .sloff-content__heading{margin:0}
.sloff-archive__recap p{margin:0;color:var(--sloff-text-muted);line-height:var(--sloff-lh-body)}
.sloff-archive__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:var(--sloff-space-2);margin:var(--sloff-space-2) 0 0;padding:0;list-style:none}
.sloff-archive__stat{display:flex;flex-direction:column;align-items:center;gap:var(--sloff-space-1);padding:var(--sloff-space-4) var(--sloff-space-2);border:1px solid var(--sloff-line);border-radius:var(--sloff-radius-card);background:var(--sloff-surface-1);text-align:center}
.sloff-archive__stat-value{font-size:var(--sloff-fs-32);font-weight:var(--sloff-fw-black);line-height:1}
.sloff-archive__stat-label{color:var(--sloff-text-muted);font-size:var(--sloff-fs-11);letter-spacing:var(--sloff-ls-eyebrow);text-transform:uppercase}
.sloff-archive__actions{display:flex;flex-wrap:wrap;gap:var(--sloff-space-2);margin:var(--sloff-space-2) 0 0}
.sloff-archive .sloff-archive__section-heading{margin:0 0 var(--sloff-space-3);font-size:var(--sloff-fs-22);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug);text-transform:uppercase}
.sloff-archive__summary p{margin:0 0 var(--sloff-space-3);color:var(--sloff-text-body);line-height:var(--sloff-lh-body)}
.sloff-archive__awards{display:grid;gap:var(--sloff-space-2);margin:0;padding:0;list-style:none}
.sloff-archive__award{padding:var(--sloff-space-4);border:1px solid var(--sloff-line);border-radius:var(--sloff-radius-card);background:var(--sloff-surface-1)}
.sloff-archive__award-name{margin:0;color:var(--sloff-fest-highlight);font-size:var(--sloff-fs-11);font-weight:var(--sloff-fw-extrabold);letter-spacing:var(--sloff-ls-eyebrow);line-height:var(--sloff-lh-snug);text-transform:uppercase}
.sloff-archive__award-honoree{margin:var(--sloff-space-1) 0 0;font-size:var(--sloff-fs-16);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug)}
.sloff-archive .sloff-archive__award-honoree a{color:var(--sloff-text)}
.sloff-archive__program-intro{margin:0 0 var(--sloff-space-4);color:var(--sloff-text-muted);line-height:var(--sloff-lh-body)}
.sloff-archive__films{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sloff-space-4) var(--sloff-space-3);margin:0;padding:0;list-style:none}
.sloff-archive .sloff-archive__film a,.sloff-archive__film>span{display:flex;flex-direction:column;gap:var(--sloff-space-1);color:var(--sloff-text);text-decoration:none}
.sloff-archive__film-image{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:var(--sloff-radius-control);background:var(--sloff-surface-2)}
.sloff-archive__film-title{margin-top:var(--sloff-space-1);font-size:var(--sloff-fs-14);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug)}
.sloff-archive__film-section{color:var(--sloff-text-muted);font-size:var(--sloff-fs-12)}
.sloff-archive__film a:hover .sloff-archive__film-title{color:var(--sloff-fest-accent)}
.sloff-archive__photos li{overflow:hidden;border-radius:var(--sloff-radius-control)}
.sloff-archive__photo{display:block;width:100%;height:180px;object-fit:cover}
.sloff-archive__sponsors ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:var(--sloff-space-2);margin:0;padding:0;list-style:none}
.sloff-archive__sponsor{display:flex;align-items:center;justify-content:center;min-height:64px;padding:var(--sloff-space-3);border-radius:var(--sloff-radius-control);background:var(--sloff-surface-1);font-size:var(--sloff-fs-13);font-weight:var(--sloff-fw-bold);text-align:center}
.sloff-archive__sponsor-logo{display:block;width:100%;height:44px;object-fit:contain}
.sloff-archive--compact{gap:var(--sloff-space-3)}
.sloff-archive__compact-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--sloff-space-2)}
/* Both Home module headings share typography and left alignment. */
.sloff-archive .sloff-archive__compact-heading,.sloff-palm .sloff-palm__heading{margin:0;font-size:var(--sloff-fs-18);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug);text-transform:uppercase;text-align:left}
.sloff-archive .sloff-archive__more{color:var(--sloff-fest-accent);font-size:var(--sloff-fs-12);font-weight:var(--sloff-fw-extrabold);letter-spacing:var(--sloff-ls-label);text-transform:uppercase;text-decoration:none}
.sloff-archive--compact .sloff-archive__stats{display:flex;flex-wrap:wrap;gap:var(--sloff-space-2);margin:0}
.sloff-archive--compact .sloff-archive__stat{display:flex;flex-direction:row;gap:var(--sloff-space-1);padding:0;border:0;border-radius:0;background:none;text-align:left}
.sloff-archive--compact .sloff-archive__stat + .sloff-archive__stat::before{content:"·";margin-right:var(--sloff-space-1);color:var(--sloff-text-muted)}
.sloff-archive--compact .sloff-archive__stat-value{font-size:var(--sloff-fs-14);font-weight:var(--sloff-fw-semibold);line-height:var(--sloff-lh-body)}
.sloff-archive--compact .sloff-archive__stat-label{font-size:var(--sloff-fs-14);letter-spacing:0;text-transform:lowercase}
.sloff-archive--compact .sloff-archive__summary p{margin:0;font-size:var(--sloff-fs-14)}
.sloff-archive__links{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--sloff-space-2);margin:0;padding:0;list-style:none}
.sloff-archive .sloff-archive__link{display:flex;align-items:center;min-height:var(--sloff-tap-min);padding:0 var(--sloff-space-3);border-radius:var(--sloff-radius-control);background:var(--sloff-surface-2);color:var(--sloff-text);font-size:var(--sloff-fs-14);font-weight:var(--sloff-fw-extrabold);text-decoration:none}
.sloff-archive .sloff-archive__link:hover{color:var(--sloff-fest-accent)}
/* Home card winners strip and photo tiles. Sized by the card, not the viewport: winners are rows (still left,
   text right) in a narrow card and up to three columns once the card is 460 px wide. Selectors start at
   .sloff-content.sloff-archive--compact so they outrank the shared link colour and the page builder's img reset. */
.sloff-archive--compact{container-type:inline-size}
.sloff-archive__winners-strip{display:grid;gap:var(--sloff-space-2);margin:0;padding:0;list-style:none}
.sloff-archive__winner{min-width:0}
.sloff-content.sloff-archive--compact .sloff-archive__winner a,.sloff-content.sloff-archive--compact .sloff-archive__winner>span{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:var(--sloff-space-3);color:var(--sloff-text);text-decoration:none}
.sloff-content.sloff-archive--compact .sloff-archive__winner-still{display:block;box-sizing:border-box;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--sloff-line);border-radius:var(--sloff-radius-control);background:var(--sloff-surface-2);transition:border-color .18s ease,transform .18s ease}
.sloff-archive__winner-still--empty{background-image:conic-gradient(color-mix(in srgb,var(--sloff-fest-sage) 22%,transparent) 25%,transparent 0 50%,color-mix(in srgb,var(--sloff-fest-sage) 22%,transparent) 0 75%,transparent 0);background-size:16px 16px}
.sloff-archive__winner-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.sloff-archive__winner-award{color:var(--sloff-fest-highlight);font-size:var(--sloff-fs-11);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug);letter-spacing:var(--sloff-ls-label);text-transform:uppercase}
.sloff-archive__winner-title{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:var(--sloff-fs-14);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug)}
.sloff-content.sloff-archive--compact .sloff-archive__winner a:hover .sloff-archive__winner-title,.sloff-content.sloff-archive--compact .sloff-archive__winner a:focus-visible .sloff-archive__winner-title{color:var(--sloff-fest-accent)}
.sloff-content.sloff-archive--compact .sloff-archive__winner a:hover .sloff-archive__winner-still{border-color:var(--sloff-fest-accent);transform:translateY(-2px)}
.sloff-archive__links li{display:flex;min-width:0}
.sloff-archive__links li>a{flex:1 1 auto}
.sloff-archive__links--photo .sloff-archive__link{min-height:96px}
.sloff-content.sloff-archive--compact a.sloff-archive__link--photo{position:relative;isolation:isolate;overflow:hidden;align-items:flex-end;padding:var(--sloff-space-3);color:var(--sloff-text);transition:transform .18s ease}
.sloff-content.sloff-archive--compact a.sloff-archive__link--photo::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,var(--sloff-scrim) 0,var(--sloff-scrim) 28%,transparent 100%)}
.sloff-content.sloff-archive--compact .sloff-archive__link-image{position:absolute;inset:0;z-index:-2;display:block;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:0;transition:transform .3s ease}
.sloff-archive__link-label{font-size:var(--sloff-fs-16);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug);letter-spacing:var(--sloff-ls-label);text-transform:uppercase}
.sloff-content.sloff-archive--compact a.sloff-archive__link--photo:hover{color:var(--sloff-text);transform:translateY(-2px)}
.sloff-content.sloff-archive--compact a.sloff-archive__link--photo:hover .sloff-archive__link-image{transform:scale(1.04)}
.sloff-content.sloff-archive--compact .sloff-archive__links--photo a.sloff-archive__link:not(.sloff-archive__link--photo):hover{transform:translateY(-2px)}
@container (min-width:460px){.sloff-archive__winners-strip{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--sloff-space-3)}.sloff-content.sloff-archive--compact .sloff-archive__winner a,.sloff-content.sloff-archive--compact .sloff-archive__winner>span{grid-template-columns:minmax(0,1fr);align-items:start;gap:var(--sloff-space-2)}.sloff-archive__links--photo .sloff-archive__link{min-height:112px}}
@media (prefers-reduced-motion:reduce){.sloff-content.sloff-archive--compact :is(.sloff-archive__winner-still,.sloff-archive__link,.sloff-archive__link-image){transition:none;transform:none!important}}
@media(min-width:600px){.sloff-archive__films{grid-template-columns:repeat(3,minmax(0,1fr))}.sloff-archive__awards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:900px){.sloff-archive__hero--art{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start}.sloff-archive__art{order:0}.sloff-archive__awards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.sloff-archive__films{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}

.sloff-deadlines .sloff-deadlines__heading{margin:0 0 var(--sloff-space-3);font-size:var(--sloff-fs-22);font-weight:var(--sloff-fw-extrabold)}
.sloff-deadlines__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,76px),1fr));gap:var(--sloff-space-2);margin:0;padding:0;list-style:none}
.sloff-deadlines__item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--sloff-space-3) var(--sloff-space-1);border-radius:var(--sloff-radius-control);background:var(--sloff-surface-2);color:var(--sloff-text);text-align:center}
.sloff-deadlines__date{font-size:var(--sloff-fs-16);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug)}
.sloff-deadlines__name{font-size:var(--sloff-fs-11);font-weight:var(--sloff-fw-bold);line-height:var(--sloff-lh-snug)}
.sloff-deadlines__fee{font-size:var(--sloff-fs-11);font-weight:var(--sloff-fw-semibold);opacity:.8}
.sloff-deadlines__item.is-next{background:var(--sloff-fest-accent);color:var(--sloff-fest-accent-ink)}
.sloff-deadlines__item.is-past{color:var(--sloff-text-faint);text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:currentColor;opacity:.7}
.sloff-deadlines__note{margin:var(--sloff-space-2) 0 0;color:var(--sloff-text-muted);font-size:var(--sloff-fs-12);line-height:var(--sloff-lh-body)}
.sloff-deadlines--compact .sloff-deadlines__item{padding:var(--sloff-space-2) var(--sloff-space-1)}
.sloff-deadlines--compact .sloff-deadlines__date{font-size:var(--sloff-fs-13)}
@media(min-width:900px){.sloff-deadlines--cards .sloff-deadlines__item{padding:var(--sloff-space-4) var(--sloff-space-2)}.sloff-deadlines--cards .sloff-deadlines__date{font-size:var(--sloff-fs-18)}}
/* Built-in archive pages (/archive/, /archive/<year>/ without a staff page): the centered page column. */
.sloff-archive-page{box-sizing:border-box;width:100%;max-width:calc(var(--sloff-content-max, 1260px) + 2 * var(--sloff-gutter, 16px));margin:0 auto;padding:var(--sloff-space-6) var(--sloff-gutter, 16px) calc(var(--sloff-space-6) * 2)}
.sloff-archive-page .sloff-archive-page__title{margin:0 0 var(--sloff-space-4)}

/* At the Palm strip (Home 109 / 112). Columns follow the card's width, not the viewport: three across
   in a narrow card (more than three scroll sideways, the next one peeking), a wrapping grid of fixed
   columns (four across in the half-width desktop card) once there's room. */
.sloff-palm{display:grid;gap:var(--sloff-space-3);container-type:inline-size}
.sloff-palm__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--sloff-space-2)}
.sloff-content.sloff-palm a.sloff-palm__more{color:var(--sloff-palm-orange);font-size:var(--sloff-fs-12);font-weight:var(--sloff-fw-extrabold);letter-spacing:var(--sloff-ls-label);text-transform:uppercase;text-decoration:none}
.sloff-content.sloff-palm a.sloff-palm__more:hover{text-decoration:underline}
.sloff-palm__intro p{margin:0;color:var(--sloff-text-muted);font-size:var(--sloff-fs-13);line-height:var(--sloff-lh-body)}
.sloff-palm__films{--sloff-palm-gap:var(--sloff-space-2);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sloff-palm-gap);margin:0;padding:0;list-style:none}
.sloff-palm__films.is-many{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 2 * var(--sloff-palm-gap)) / 3.25);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}
.sloff-palm__film{min-width:0;scroll-snap-align:start}
.sloff-content.sloff-palm .sloff-palm__film a,.sloff-palm__film>span{display:flex;flex-direction:column;gap:var(--sloff-space-1);color:var(--sloff-text);text-decoration:none}
/* Posters and titles follow the Palm site's film cards: a thin light frame on a near-black 2:3 panel, the whole poster shown (contain), orange frame on hover; titles regular weight, uppercase, tracked. */
.sloff-palm .sloff-palm__poster{display:block;box-sizing:border-box;width:100%;height:auto;aspect-ratio:2/3;margin-bottom:var(--sloff-space-1);object-fit:contain;object-position:center 58%;border:1px solid var(--sloff-line-strong);border-radius:var(--sloff-radius-control);background:var(--sloff-surface-1);transition:border-color .18s ease}
.sloff-palm__title{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:var(--sloff-fs-13);font-weight:var(--sloff-fw-regular);line-height:var(--sloff-lh-snug);letter-spacing:var(--sloff-ls-label);text-transform:uppercase;min-height:calc(2em * var(--sloff-lh-snug))}
/* Showtime: the day as a small orange label over the time in muted type; "+N more" sits under it. Titles reserve two lines so every card's showtime starts at the same height. */
.sloff-palm__time{display:block;color:var(--sloff-text-muted);font-size:var(--sloff-fs-11);font-weight:var(--sloff-fw-semibold);line-height:1.45;letter-spacing:var(--sloff-ls-label);text-transform:uppercase}
.sloff-palm__day{display:block;color:var(--sloff-palm-orange);font-weight:var(--sloff-fw-extrabold);white-space:nowrap}
.sloff-palm__clock{display:block;white-space:nowrap}
.sloff-palm__sep{display:none}
.sloff-palm__extra{display:block;color:var(--sloff-text-muted);font-weight:var(--sloff-fw-medium);letter-spacing:0;text-transform:none;white-space:nowrap;opacity:.8}
.sloff-content.sloff-palm .sloff-palm__film a:hover .sloff-palm__title,.sloff-content.sloff-palm .sloff-palm__film a:focus-visible .sloff-palm__title{color:var(--sloff-palm-orange)}
.sloff-content.sloff-palm .sloff-palm__film a:hover .sloff-palm__poster,.sloff-content.sloff-palm .sloff-palm__film a:focus-visible .sloff-palm__poster{border-color:var(--sloff-palm-orange)}
/* Standard focus ring on the whole card (a11y audit 2026-10-30: the colour change alone was too faint). */
.sloff-content.sloff-palm .sloff-palm__film a:focus-visible{outline:var(--sloff-focus-w) solid var(--sloff-focus);outline-offset:var(--sloff-focus-offset)}
.sloff-palm--fallback .sloff-palm__eyebrow{margin:0;color:var(--sloff-fest-highlight);font-size:var(--sloff-fs-12);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-tight);letter-spacing:var(--sloff-ls-eyebrow);text-transform:uppercase}
.sloff-palm .sloff-palm__fallback-heading{margin:0;font-size:var(--sloff-fs-18);font-weight:var(--sloff-fw-extrabold);line-height:var(--sloff-lh-snug)}
.sloff-palm__fallback-text p{margin:0;color:var(--sloff-text-muted);line-height:var(--sloff-lh-body)}
.sloff-palm__fallback-action{margin:0}
@container (min-width:460px){.sloff-palm__films,.sloff-palm__films.is-many{grid-auto-flow:row;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;scroll-snap-type:none}.sloff-palm__films.sloff-palm__films--cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sloff-palm__films.sloff-palm__films--cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sloff-palm__title{font-size:var(--sloff-fs-14)}.sloff-palm__time{font-size:var(--sloff-fs-12)}}

/* Home: the Palm card and the "in review" card sit side by side and end on the same line (Ryan, 2026-09-30).
   Their row stretches both cards; the review card's Winners / Photos tiles take the extra height (96 px minimum).
   Stacked on phones, each card keeps its content height. */
body .elementor .e-con>.elementor-widget-sloff-archive-year{display:flex;flex-direction:column;flex-grow:1}
.sloff-archive.sloff-archive--compact{display:flex;flex:1 1 auto;flex-direction:column}
.sloff-archive--compact>.sloff-archive__links{flex:1 1 auto}
.sloff-palm .sloff-palm__eyebrow{flex-basis:100%;margin:0;color:var(--sloff-palm-orange);font-size:var(--sloff-fs-11);font-weight:var(--sloff-fw-extrabold);letter-spacing:var(--sloff-ls-eyebrow);text-transform:uppercase}
.sloff-palm__showtimes{font-size:var(--sloff-fs-11);font-weight:var(--sloff-fw-semibold);color:var(--sloff-palm-orange);margin-top:var(--sloff-space-1)}
/* Narrow poster columns (phones): the label stays on one line and the arrow drops, instead of wrapping onto its own line. */
@container (max-width:459px){.sloff-palm .sloff-palm__showtimes{white-space:nowrap}.sloff-palm .sloff-palm__showtimes>[aria-hidden]{display:none}}

/* Waiting-state subscribe forms sit on dark cards, so Elementor's global label color must stay light. */
body .elementor .sloff-films-waiting-panel .elementor-widget-form.sloff-newsletter-form .elementor-field-label,
body .elementor .sloff-schedule-waiting-card .elementor-widget-form.sloff-newsletter-form .elementor-field-label{color:var(--sloff-text)}
@media(max-width:600px){.sloff-venue-card__action a{width:100%}}

/* Optional venue photo on the short cards (Compact, Access): edge to edge above the text, cropped to the chosen shape. */
.sloff-venue-card.sloff-venue-card--has-photo{padding:0;overflow:hidden}
.sloff-venue-card--has-photo>.sloff-venue-card__body{padding:var(--sloff-space-4) var(--sloff-space-5)}
.sloff-venue-card__photo{aspect-ratio:3/2;overflow:hidden;background:var(--sloff-surface-2,#1a1a1a)}
.sloff-venue-card__photo .sloff-venue-card__photo-img{display:block;width:100%;height:100%;object-fit:cover}
.sloff-venues--photo-wide .sloff-venue-card__photo{aspect-ratio:16/9}
.sloff-venues--photo-square .sloff-venue-card__photo{aspect-ratio:1/1}
