@font-face{font-family:"AbbPF Anton";src:url("fonts/Anton-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
.abbpf,.abbpf *{box-sizing:border-box}
.abbpf{container-type:inline-size;--af-mobile-inset:min(var(--af-padding),24px);width:100%;max-width:var(--af-width);margin:0 auto;background:var(--af-bg);color:var(--af-ink);font-family:var(--af-body-font);font-size:var(--af-body-size);line-height:1.55;overflow-wrap:anywhere}
.abbpf-fluid{max-width:none}.abbpf a{color:inherit}.abbpf a:focus-visible,.abbpf summary:focus-visible{outline:3px solid var(--af-accent);outline-offset:5px}
.abbpf figure,.abbpf p{margin:0}.abbpf h1,.abbpf h2,.abbpf h3,.abbpf h4{color:inherit;font-family:var(--af-heading-font);font-weight:var(--af-heading-weight);line-height:1.13;letter-spacing:0;text-transform:none;margin:0}
.abbpf .af-header{padding:var(--af-padding);border-bottom:var(--af-border) solid var(--af-line);background:var(--af-hero-bg);color:var(--af-hero-ink)}
.abbpf .af-hero-split.af-has-poster{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--af-gap);align-items:center;min-height:520px}.abbpf .af-hero-copy{min-width:0}
.abbpf .af-header-top{display:flex;flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:56px}.abbpf .af-brand{font-family:var(--af-heading-font);font-size:30px;line-height:1}.abbpf .af-eyebrow{font-size:.75em;letter-spacing:.08em}
.abbpf .af-header h1{font-size:clamp(32px,6.3cqi,var(--af-title-size));line-height:1.08;margin-bottom:24px}.abbpf .af-intro{max-width:850px;margin-bottom:24px}.abbpf .af-intro p+p{margin-top:12px}
.abbpf .af-nav{display:flex;gap:12px;flex-wrap:wrap}.abbpf .af-nav a{padding:10px 20px;border:var(--af-border) solid var(--af-hero-ink);color:var(--af-hero-ink);text-decoration:none;border-radius:var(--af-radius);font-size:.85em;font-weight:700}
.abbpf .af-banner{margin:0;min-width:0}.abbpf .af-banner img{display:block;width:100%;height:auto;max-height:680px;object-fit:contain;border-radius:var(--af-radius)}.abbpf .af-hero-banner .af-banner{margin-top:var(--af-gap)}
.abbpf .af-schedule,.abbpf .af-previews{padding:var(--af-padding)}.abbpf .af-section-title{font-size:var(--af-day-size);margin-bottom:24px}.abbpf .af-days-nav{display:flex;flex-wrap:wrap;gap:10px 20px;margin-bottom:42px;font-size:.8em}.abbpf .af-days-nav a{text-decoration:underline;text-underline-offset:5px}
.abbpf .af-day{scroll-margin-top:20px;margin-bottom:50px}.abbpf .af-day:last-child{margin-bottom:0}.abbpf .af-day-heading{background:var(--af-accent);color:var(--af-on-accent);font-size:var(--af-day-size);padding:16px 22px;border-radius:var(--af-radius)}
.abbpf .af-event{min-width:0;padding:var(--af-gap) 0;border-bottom:var(--af-border) solid var(--af-line)}
.abbpf .af-event-main{min-width:0}.abbpf .af-event-with-image>.af-event-main{display:grid;grid-template-columns:min(var(--af-image-width),48%) minmax(0,1fr);gap:var(--af-gap);align-items:start}
.abbpf .af-event-body{display:grid;grid-template-columns:110px minmax(0,1fr);gap:var(--af-gap);min-width:0}.abbpf .af-event-with-image .af-event-body{display:block}.abbpf .af-event-with-image .af-time{margin-bottom:16px}.abbpf .af-event-copy{min-width:0}
.abbpf .af-event h3,.abbpf .af-film h4{font-size:var(--af-event-size)}.abbpf .af-time{font-size:var(--af-time-size);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.3}.abbpf .af-end-time{display:block;font-size:.65em;font-weight:400;margin-top:8px}.abbpf .af-pending-time{display:block;font-size:.58em;line-height:1.5;font-weight:400}
.abbpf .af-tags{font-size:.75em;letter-spacing:.035em;font-weight:700;margin-bottom:10px}.abbpf .af-credits{margin-top:8px}.abbpf .af-guests{margin-top:8px;font-weight:700}.abbpf .af-venue{font-size:.8em;display:flex;align-items:baseline;gap:0 10px;flex-wrap:wrap;margin-top:14px}.abbpf .af-venue a{text-underline-offset:3px}
.abbpf .af-access{font-size:.8em;font-weight:700;margin-top:12px}.abbpf .af-description{margin-top:18px;max-width:850px}.abbpf .af-description p+p{margin-top:10px}
.abbpf .af-event-image,.abbpf .af-film-image{min-width:0;margin:0}.abbpf .af-event-image img,.abbpf .af-film-image img{display:block;width:100%;height:auto;max-width:100%;object-fit:var(--af-image-fit);border-radius:var(--af-radius)}
.abbpf .af-details{margin-top:18px;max-width:850px;font-size:1em}.abbpf .af-details summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px;padding-block:5px}.abbpf .af-details>div{padding-top:12px}.abbpf .af-details p+p{margin-top:12px}
.abbpf .af-synopsis-mobile{display:none}.abbpf .af-synopsis-desktop{display:block}
.abbpf .af-films{margin-top:var(--af-gap)}.abbpf .af-film{min-width:0;padding:var(--af-gap) 0;border-top:var(--af-border) solid var(--af-line)}.abbpf .af-film:last-child{padding-bottom:0}.abbpf .af-film-with-image{display:grid;grid-template-columns:min(var(--af-image-width),48%) minmax(0,1fr);gap:var(--af-gap);align-items:start}.abbpf .af-film-copy{min-width:0}
.abbpf .af-technical{margin-top:22px;max-width:850px;font-size:.85em}.abbpf .af-technical-heading{font-weight:700;margin-bottom:10px}.abbpf .af-technical dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin:0}.abbpf .af-technical dt{font-size:.85em;opacity:.72}.abbpf .af-technical dd{margin:1px 0 0}
.abbpf .af-button{display:inline-block;padding:12px 20px;background:var(--af-accent);color:var(--af-on-accent);border:var(--af-border) solid var(--af-accent);border-radius:var(--af-radius);font-size:.85em;font-weight:700;text-decoration:none;margin-top:20px;align-self:start}.abbpf .af-button:hover{filter:brightness(.93)}.abbpf .af-booking-state{display:block;font-size:.8em;margin-top:20px;opacity:.7}
.abbpf .af-previews{background:var(--af-surface);border-top:var(--af-border) solid var(--af-line)}.abbpf .af-previews-intro{margin-bottom:20px;max-width:800px}.abbpf .af-preview-free{margin-bottom:24px;font-weight:700}.abbpf .af-previews-grid{display:block}.abbpf .af-preview-date{display:block;font-size:16px;margin-bottom:8px;font-weight:400}
.abbpf .af-previews .af-event-body{grid-template-columns:170px minmax(0,1fr)}
.abbpf-cards .af-day-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--af-gap);padding-top:var(--af-gap)}.abbpf-cards .af-event{padding:24px;background:var(--af-surface);border:var(--af-border) solid var(--af-line);border-radius:var(--af-radius)}.abbpf-cards .af-event:has(.af-films){grid-column:1/-1}
.abbpf .af-partners{padding:var(--af-padding);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--af-gap);background:var(--af-surface);border-top:var(--af-border) solid var(--af-line)}.abbpf .af-partner-group h2{font-family:var(--af-body-font);font-size:14px;font-weight:700;margin:0 0 24px}.abbpf .af-partner-images{display:flex;flex-wrap:wrap;align-items:center;gap:24px}.abbpf .af-partner-logo img{display:block;max-width:100%;width:auto;max-height:90px;height:auto;object-fit:contain}
.abbpf .af-footer{display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap;padding:24px var(--af-padding);font-size:.8em;border-top:var(--af-border) solid var(--af-line)}
.abbpf .af-event,.abbpf .af-film{scroll-margin-top:24px}
.abbpf .af-event-with-info>.af-event-main{display:grid;grid-template-columns:minmax(0,1fr) min(var(--af-info-width),26%);gap:var(--af-gap);align-items:start}
.abbpf .af-event-with-image.af-event-with-info>.af-event-main{grid-template-columns:min(var(--af-image-width),44%) minmax(0,1fr) min(var(--af-info-width),24%)}
.abbpf .af-event-with-info .af-event-body{display:block}.abbpf .af-event-with-info .af-time{margin-bottom:16px}
.abbpf .af-film-with-info{display:grid;grid-template-columns:minmax(0,1fr) min(var(--af-info-width),26%);gap:var(--af-gap);align-items:start}
.abbpf .af-film-with-image.af-film-with-info{grid-template-columns:min(var(--af-image-width),44%) minmax(0,1fr) min(var(--af-info-width),24%)}
.abbpf .af-film-info{min-width:0;border-left:var(--af-border) solid var(--af-line);padding-left:min(var(--af-gap),24px)}
.abbpf .af-film-info .af-technical{margin-top:0;font-size:var(--af-info-size)}.abbpf .af-film-info .af-technical dl{grid-template-columns:1fr;gap:18px}.abbpf .af-film-info .af-technical-heading{margin-bottom:22px}
.abbpf .af-selection{padding:var(--af-padding);border-bottom:var(--af-border) solid var(--af-line);scroll-margin-top:24px}
.abbpf .af-selection-intro{max-width:850px;margin-bottom:24px}.abbpf .af-selection-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--af-gap);list-style:none;padding:0;margin:0}
.abbpf .af-selection-list li{min-width:0;margin:0;padding:0;border-top:var(--af-border) solid var(--af-line)}.abbpf .af-selection-list a{display:block;padding:20px 0;text-decoration:none}.abbpf .af-selection-list a:hover .af-selection-name{text-decoration:underline;text-underline-offset:5px}
.abbpf .af-selection-name{display:block;font-family:var(--af-heading-font);font-weight:var(--af-heading-weight);font-size:min(var(--af-event-size),28px);line-height:1.2}.abbpf .af-selection-credits{display:block;font-size:.85em;margin-top:7px}
.abbpf-cards .af-event-with-info{grid-column:1/-1}
@container (min-width:761px) and (max-width:1100px){
.abbpf .af-event-with-image.af-event-with-info>.af-event-main,.abbpf .af-film-with-image.af-film-with-info{grid-template-columns:min(var(--af-image-width),48%) minmax(0,1fr)}
.abbpf .af-event-with-image.af-event-with-info .af-film-info,.abbpf .af-film-with-image.af-film-with-info>.af-film-info{grid-column:2;border-left:0;border-top:var(--af-border) solid var(--af-line);padding-left:0;padding-top:24px}
}
@container(max-width:760px){
.abbpf .af-header,.abbpf .af-schedule,.abbpf .af-previews,.abbpf .af-selection{padding:var(--af-mobile-inset)}.abbpf .af-hero-split.af-has-poster{grid-template-columns:1fr;min-height:0}.abbpf .af-header-top{margin-bottom:28px;gap:16px}.abbpf .af-header h1{font-size:min(var(--af-title-size),42px)}.abbpf .af-banner{margin-top:8px}.abbpf .af-banner img{max-height:none}
.abbpf .af-days-nav{gap:12px 20px}.abbpf .af-day-heading{font-size:min(var(--af-day-size),30px);padding:16px}.abbpf .af-event-body{grid-template-columns:65px minmax(0,1fr);gap:20px}.abbpf .af-previews .af-event-body{grid-template-columns:1fr;gap:16px}.abbpf .af-event-with-image>.af-event-main,.abbpf .af-event-with-info>.af-event-main,.abbpf .af-event-with-image.af-event-with-info>.af-event-main,.abbpf .af-film-with-image,.abbpf .af-film-with-info,.abbpf .af-film-with-image.af-film-with-info{display:block}
.abbpf .af-event-with-image .af-event-body,.abbpf .af-film-with-image .af-film-copy{margin-top:24px}.abbpf .af-event h3,.abbpf .af-film h4{font-size:min(var(--af-event-size),30px)}
.abbpf .af-event-image,.abbpf .af-film-image{width:100%;max-width:none}.abbpf-mobile-edge .af-event-image,.abbpf-mobile-edge .af-film-image{width:calc(100% + 2 * var(--af-mobile-inset));max-width:none;margin-inline:calc(-1 * var(--af-mobile-inset))}.abbpf-mobile-edge .af-event-image img,.abbpf-mobile-edge .af-film-image img{border-radius:0}
.abbpf .af-film-info{margin-top:24px;border-left:0;border-top:var(--af-border) solid var(--af-line);padding-left:0;padding-top:24px}.abbpf .af-selection-list{grid-template-columns:1fr}
.abbpf .af-synopsis-desktop{display:none}.abbpf .af-synopsis-mobile{display:block}.abbpf .af-technical dl{gap:10px 16px}
.abbpf-cards .af-day-events{grid-template-columns:1fr}.abbpf-cards .af-event{padding:var(--af-gap) 0;border-left:0;border-right:0;background:transparent}
.abbpf .af-partners{grid-template-columns:1fr;padding:var(--af-mobile-inset)}.abbpf .af-footer{padding-inline:var(--af-mobile-inset)}
}
@media print{.abbpf .af-nav,.abbpf .af-days-nav,.abbpf .af-button,.abbpf .af-footer a{display:none}.abbpf .af-day{break-inside:auto}.abbpf .af-event,.abbpf .af-film{break-inside:avoid}.abbpf .af-day-heading{background:transparent;color:inherit;border-bottom:2px solid currentColor}}

/* 1.4: grouped selection, compact calendar and collapsible days. */
.abbpf button{font-family:var(--af-body-font)}.abbpf button:focus-visible{outline:3px solid var(--af-accent);outline-offset:4px}.abbpf [hidden]{display:none!important}
.abbpf .af-preview-calendar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--af-gap)}
.abbpf .af-preview-item{min-width:0;display:flex;flex-direction:column;border-top:var(--af-border) solid var(--af-line);padding-top:22px}
.abbpf .af-calendar-date{font-size:var(--af-day-size);margin-bottom:14px}.abbpf .af-calendar-venue,.abbpf .af-calendar-time{font-size:.85em}.abbpf .af-calendar-films{list-style:none;margin:20px 0 0;padding:0 0 20px}.abbpf .af-calendar-films li{font-family:var(--af-heading-font);font-weight:var(--af-heading-weight);font-size:min(var(--af-event-size),26px);line-height:1.2;margin:0 0 12px}.abbpf .af-preview-item .af-button{margin-top:auto}
.abbpf .af-selection-group+.af-selection-group{margin-top:36px}.abbpf .af-selection-group-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.abbpf .af-selection-group-head h3{font-size:min(var(--af-day-size),30px)}
.abbpf .af-selection-horizontal .af-selection-list{display:flex;flex-wrap:wrap;gap:0 var(--af-gap)}.abbpf .af-selection-horizontal .af-selection-list li{flex:0 1 var(--af-selection-item-width);max-width:100%}
.abbpf .af-selection-grid .af-selection-list{display:grid;grid-template-columns:repeat(var(--af-selection-columns),minmax(0,1fr))}
.abbpf .af-selection-vertical .af-selection-list{display:block}
.abbpf .af-selection-carousel .af-selection-list{display:flex;gap:var(--af-gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:4px 2px 16px;scrollbar-width:thin}
.abbpf .af-selection-carousel .af-selection-list li{flex:0 0 min(var(--af-selection-item-width),85%);scroll-snap-align:start}
.abbpf .af-carousel-controls{display:flex;gap:8px}.abbpf .af-carousel-controls button{border:var(--af-border) solid var(--af-ink);border-radius:var(--af-radius);background:transparent;color:var(--af-ink);font-size:20px;line-height:1;min-width:44px;min-height:44px;cursor:pointer}.abbpf .af-carousel-controls button:disabled{opacity:.3;cursor:default}
.abbpf .af-day{margin-bottom:16px;scroll-margin-top:calc(var(--af-sticky-offset) + var(--af-admin-offset,0px) + 12px)}
.abbpf .af-day-heading{position:relative;list-style:none;display:flex;justify-content:space-between;gap:24px;align-items:center;border:0;margin:0;line-height:1.2}
.abbpf summary.af-day-heading{cursor:pointer}.abbpf .af-day-heading::-webkit-details-marker{display:none}.abbpf .af-day-heading h2{font-size:inherit;line-height:inherit}
.abbpf-sticky-days .af-day-heading{position:sticky;top:calc(var(--af-sticky-offset) + var(--af-admin-offset,0px));z-index:10}
.abbpf .af-day-chevron{width:12px;height:12px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);flex:none;margin:0 4px 6px}.abbpf .af-day[open]>.af-day-heading .af-day-chevron{transform:rotate(225deg);margin-bottom:-6px}
.abbpf .af-day[open],.abbpf section.af-day{margin-bottom:32px}.abbpf .af-event,.abbpf .af-film{scroll-margin-top:calc(var(--af-sticky-offset) + var(--af-admin-offset,0px) + var(--af-day-size) + 60px)}
.abbpf .af-technical-inline{max-width:none;font-size:var(--af-info-size);line-height:1.6}.abbpf .af-technical-inline .af-technical-heading{margin-bottom:6px;font-size:inherit}.abbpf .af-credit-line{margin:0;font-size:inherit;line-height:1.6}.abbpf .af-credit-enhanced:not(.af-credit-expanded) .af-credit-line{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.abbpf .af-credit-separator{padding:0 .2em;opacity:.6}.abbpf .af-credit-toggle{border:0;padding:8px 0;margin:0;background:none;color:inherit;font-size:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:44px}
.abbpf .af-film-title-link{text-decoration:none}.abbpf .af-film-title-link:hover{text-decoration:underline;text-underline-offset:5px}.abbpf .af-film-copy>.af-tags{margin:10px 0}.abbpf .af-film-time{font-weight:700;font-size:.9em}
.abbpf-cards .af-day-events{grid-template-columns:repeat(var(--af-program-columns),minmax(0,1fr));align-items:start}
.abbpf-cards .af-event-with-info{grid-column:auto}.abbpf-cards .af-day-events .af-event-main{display:block}.abbpf-cards .af-day-events .af-event-body{display:block}.abbpf-cards .af-day-events .af-time{margin-bottom:16px}.abbpf-cards .af-day-events .af-event-image{margin-bottom:24px}.abbpf-cards .af-day-events .af-film-info{border-left:0;border-top:var(--af-border) solid var(--af-line);padding:20px 0 0;margin-top:20px}
.abbpf .af-films-columns{display:grid;grid-template-columns:repeat(var(--af-short-columns),minmax(0,1fr));gap:var(--af-gap);align-items:start}.abbpf .af-films-columns>.af-film{display:block}.abbpf .af-films-columns .af-film-image{margin-bottom:24px}.abbpf .af-films-columns .af-film-info{border-left:0;border-top:var(--af-border) solid var(--af-line);padding:20px 0 0;margin-top:20px}
.abbpf-mode-titles .af-schedule .af-event-body{display:block}.abbpf-mode-titles .af-schedule .af-event,.abbpf-mode-titles .af-schedule .af-film{padding-block:20px}.abbpf-mode-essential .af-schedule .af-tags{margin-bottom:6px}
.abbpf .af-film-page-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:var(--af-padding);background:var(--af-hero-bg);color:var(--af-hero-ink)}.abbpf .af-film-page-body{padding:var(--af-padding)}.abbpf .af-film-page-with-image{display:grid;grid-template-columns:min(var(--af-image-width),48%) minmax(0,1fr);gap:var(--af-gap);align-items:start}.abbpf .af-film-page-body h1{font-size:var(--af-event-size)}.abbpf .af-film-screenings{padding:0 var(--af-padding) var(--af-padding)}.abbpf .af-film-screenings h2{font-size:var(--af-day-size);margin-bottom:22px}.abbpf .af-film-screening{padding:18px 0;border-top:var(--af-border) solid var(--af-line)}.abbpf .af-film-screening a{display:inline-block;margin-top:8px}
@container(min-width:761px) and (max-width:1100px){.abbpf-cards .af-day-events,.abbpf .af-films-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.abbpf .af-selection-grid .af-selection-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container(max-width:760px){
.abbpf .af-preview-calendar{grid-template-columns:1fr}.abbpf .af-preview-item .af-button{margin-top:0}
.abbpf .af-selection-grid .af-selection-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.abbpf .af-selection-grid .af-selection-name{font-size:min(var(--af-event-size),22px)}
.abbpf .af-day-heading{gap:16px}.abbpf .af-day-heading h2{font-size:inherit}
.abbpf-cards .af-day-events,.abbpf .af-films-columns{grid-template-columns:1fr}.abbpf .af-films-columns{gap:0}.abbpf-cards .af-day-events .af-event-main{display:block}
.abbpf .af-film-page-header{padding:var(--af-mobile-inset);flex-wrap:wrap}.abbpf .af-film-page-body{display:block;padding:var(--af-mobile-inset)}.abbpf .af-film-page-with-image .af-film-copy{margin-top:24px}.abbpf .af-film-screenings{padding:0 var(--af-mobile-inset) var(--af-mobile-inset)}
}
@media print{.abbpf .af-day-heading{position:static}.abbpf .af-credit-toggle,.abbpf .af-carousel-controls{display:none!important}.abbpf .af-credit-enhanced .af-credit-line{display:block!important;overflow:visible!important;-webkit-line-clamp:unset}.abbpf .af-selection-carousel .af-selection-list{flex-wrap:wrap;overflow:visible}.abbpf .af-day-chevron{display:none}}

/* 1.6: opening navigation stays on a single row, including narrow screens. */
.abbpf .af-header-compact .af-header-top{margin-bottom:28px}
.abbpf .af-header .af-nav{display:flex;flex-wrap:nowrap;align-items:center;gap:24px;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
.abbpf .af-header .af-nav a{flex:0 0 auto;white-space:nowrap;padding:12px 0 8px;border:0;border-bottom:1px solid currentColor;border-radius:0;font-size:13px;line-height:1.4;min-height:44px;letter-spacing:.01em}
@container(max-width:760px){
 .abbpf .af-header .af-nav{gap:18px}
 .abbpf .af-header .af-nav a{font-size:12px}
 .abbpf .af-header-compact .af-header-top{margin-bottom:20px}
}
