/* Theme colors are derived with readable foregrounds; photographs are never filtered. */
.button-primary,.category-tab.active{background:var(--ob-accent);color:var(--ob-accent-ink);border-color:var(--ob-accent)}
.button-primary:hover:not(:disabled){background:var(--ob-accent-light-end);color:#171910}
.hero h1 em,.hero .hero-dot,.how-intro h2 em,.ad-login-heading h1 em{color:var(--ob-accent-on-paper)}
.event-card{background:linear-gradient(145deg,var(--ob-accent-light),var(--ob-accent-light-end));border-color:var(--ob-accent-on-paper)}
.event-card :is(.event-label,.event-dates,.event-dates span,.event-timezone,.countdown,.countdown p,.countdown small,.event-foot,.countdown-toggle){color:#292718}
.gallery-section{background:var(--ob-gallery);color:var(--ob-gallery-ink)}
.gallery-section :is(.section-head>p,.category-description,.story-content>p,.visual-description p,.vote-card,.vote-card small,.story-marker span,.carousel-progress){color:var(--ob-gallery-soft)}
.gallery-section :is(.eyebrow,.section-head h2 em,.story-marker strong,.view-switch,.text-button){color:var(--ob-gallery-accent)}
.category-tab{background:var(--ob-gallery-tab);color:var(--ob-gallery-ink);border-color:var(--ob-gallery-border)}
.category-tab.active{background:var(--ob-accent);color:var(--ob-accent-ink);border-color:var(--ob-accent)}
.category-tab:hover:not(.active){background:var(--ob-gallery-tab);border-color:var(--ob-gallery-ink)}
.gallery-section :is(.icon-btn,.visual-description summary){color:var(--ob-gallery-ink);border-color:var(--ob-gallery-border)}
.gallery-section .icon-btn:hover{color:var(--ob-accent-ink);background:var(--ob-accent)}
.gallery-section .slide-dot.active span{background:var(--ob-gallery-accent)}
.gallery-section .photo-story,.gallery-section .vote-card{border-color:var(--ob-gallery-border)}
.gallery-section .grid-photo{color:var(--ob-gallery-ink);border-color:var(--ob-gallery-border);background:var(--ob-gallery-tab)}
.gallery-section .grid-photo small{color:var(--ob-gallery-soft)}
.hero-description{white-space:pre-line}
.brand img{border-radius:0;mix-blend-mode:normal;object-fit:contain;width:72px;height:72px;flex:none}
.brand>span{min-width:0}.brand [data-brand-eyebrow]{display:block}.brand [data-brand-name]{display:block}
.ob-custom-dialog{width:min(1200px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
.ob-custom-dialog .dialog-inner{padding:36px}.ob-custom-heading{padding-right:40px;margin-bottom:30px}.ob-custom-heading h2{font-size:2rem;line-height:1.15;margin:10px 0 14px}.ob-custom-heading p{font-size:1rem;line-height:1.65;max-width:820px;color:#514d40}
.ob-custom-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr);gap:32px;align-items:start}.ob-custom-fields,.ob-custom-preview-column{min-width:0}
.ob-custom-section{border:1px solid #c4beaf;border-radius:16px;margin:0 0 28px;padding:24px;min-width:0;background:#fffdf7}.ob-custom-section legend{padding:0 10px;font-size:1.2rem;font-weight:700;max-width:100%;overflow-wrap:anywhere}.ob-custom-section .field{font-size:.95rem;margin-bottom:20px;line-height:1.5}
.ob-custom-section :is(input,textarea,select){width:100%;max-width:100%;min-width:0;min-height:52px;font-size:1rem;color:#25231e;background:#fff;border:1px solid #8d887b;border-radius:8px;padding:12px;line-height:1.5}.ob-custom-section textarea{resize:vertical;min-height:120px}.ob-custom-section input[type=file]{font-size:.85rem;padding:10px}.ob-custom-help{font-size:.85rem;line-height:1.65;color:#5c574a;margin:10px 0 20px;overflow-wrap:anywhere}
.ob-custom-logo{display:grid;grid-template-columns:88px minmax(0,1fr);gap:20px;margin-bottom:24px}.ob-custom-logo>img{width:88px;height:88px;object-fit:contain;border:1px solid #c4beaf;border-radius:12px;background:#fff;padding:8px}.ob-custom-logo .field{margin:0}.ob-custom-logo [role=status],.ob-custom-logo [role=alert]{font-size:.85rem;line-height:1.6;overflow-wrap:anywhere}
.ob-custom-color-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ob-custom-color>label{display:block;margin:0 0 8px;font-size:.95rem;font-weight:600}.ob-custom-color>div{display:flex;gap:8px;align-items:center}.ob-custom-color input[type=color]{width:60px;padding:4px;flex:none;height:54px;cursor:pointer}.ob-custom-color input[type=text]{font-variant-numeric:tabular-nums;flex:1;min-width:0}
.ob-custom-preview-sticky{position:sticky;top:10px}.ob-custom-preview-sticky>h3{font-size:1.15rem;margin:0 0 18px}.ob-style-preview{border:1px solid #b9b2a0;border-radius:16px;overflow:hidden;background:#faf8f2;color:#25231e;font-size:var(--ob-preview-size,20px)}.ob-preview-top{padding:20px;display:flex;gap:12px;align-items:center;border-bottom:1px solid #ddd6c8}.ob-preview-top img{width:55px;height:55px;object-fit:contain;flex:none}.ob-preview-top div{min-width:0;overflow-wrap:anywhere}.ob-preview-top span{display:block;font-size:.75em;line-height:1.5}.ob-preview-top strong{display:block;font-size:.8em;line-height:1.5}.ob-preview-hero{padding:28px 22px}.ob-preview-hero h4{font:400 1.8em/1.15 Georgia,serif;color:var(--ob-accent-on-paper);margin:0 0 18px;overflow-wrap:anywhere}.ob-preview-hero p{font-size:.85em;line-height:1.65;margin:10px 0;white-space:pre-line;overflow-wrap:anywhere}.ob-preview-button{display:inline-block;background:var(--ob-accent);color:var(--ob-accent-ink);padding:12px 16px;border-radius:8px;font-size:.8em;font-weight:700;margin-top:12px}.ob-preview-gallery{background:var(--ob-gallery);color:var(--ob-gallery-ink);padding:24px 20px;display:grid;gap:16px;overflow-wrap:anywhere}.ob-preview-gallery>span{font-size:.75em}.ob-preview-gallery>strong{font:400 1.3em/1.4 Georgia,serif}.ob-preview-gallery img{width:100%;height:180px;object-fit:contain;background:#151713;border-radius:8px}.ob-preview-footer{padding:24px 20px;line-height:1.6;overflow-wrap:anywhere}.ob-preview-footer strong{font-size:.9em}.ob-preview-footer :is(p,span){display:block;font-size:.75em;margin-top:8px}
.ob-custom-save{grid-column:1/-1;padding-top:24px;border-top:1px solid #c4beaf}.ob-custom-save [role=status],.ob-custom-save [role=alert]{font-size:1rem;line-height:1.6;margin-bottom:16px;overflow-wrap:anywhere}.ob-custom-save .has-error{color:#9a211c}.ob-custom-save-buttons{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap}.ob-custom-save .button{font-size:.95rem;min-height:56px}.ad-heading-actions [data-ad-action=appearance]{border:2px solid #79612b;background:#fff1c9;color:#453514}
@media(max-width:1000px){.ob-custom-layout{grid-template-columns:1fr}.ob-custom-preview-sticky{position:static}.ob-style-preview{max-width:620px}.ob-custom-preview-column{order:1}.ob-custom-save{order:2}}
@media(max-width:650px){.brand img{width:60px;height:60px}.ob-custom-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px)}.ob-custom-dialog .dialog-inner{padding:24px 16px}.ob-custom-heading{padding-right:34px}.ob-custom-heading h2{font-size:1.55rem;overflow-wrap:anywhere}.ob-custom-layout{gap:18px}.ob-custom-section{padding:16px}.ob-custom-section legend{font-size:1.1rem;padding:0 5px}.ob-custom-logo{grid-template-columns:1fr;gap:12px}.ob-custom-color-row{grid-template-columns:1fr}.ob-custom-save-buttons{flex-direction:column}.ob-custom-save-buttons>*{width:100%}.ob-custom-section input[type=file]{font-size:.8rem}.ob-custom-section :is(input,textarea,select){padding:10px}.ob-preview-top{flex-wrap:wrap}.ob-preview-button{overflow-wrap:anywhere}.ad-heading-actions [data-ad-action=appearance]{width:100%}}
html.ob-high-contrast :is(.ob-custom-section,.ob-style-preview,.ob-preview-top,.ob-preview-hero,.ob-preview-gallery,.ob-preview-footer){background:#000!important;color:#fff!important;border-color:#fff!important}
html.ob-high-contrast .ob-preview-button{background:#000!important;color:#ffdf6c!important;border:1px solid #ffdf6c}
html.ob-text-spacing .ob-custom-dialog *{min-width:0;overflow-wrap:anywhere}
@media print{.ob-custom-dialog{display:none!important}}

.ob-custom-heading>.eyebrow{color:#5e4d20}.gallery-section .slide-dot span{background:var(--ob-gallery-border)}.gallery-section .slide-dot.active span{background:var(--ob-gallery-accent)}

/* Literal editable copy, flexible sections and the public site's chosen theme. */
.public-page{background:var(--ob-paper)}
.public-page #app{background:var(--ob-paper);color:var(--ob-paper-ink)}
.public-page .site-header,.public-page .site-footer,.public-page .integrity-note{background:var(--ob-paper);color:var(--ob-paper-ink);border-color:var(--ob-paper-soft)}
.public-page :is(.hero .eyebrow,.hero-description,.hero-meta>span,.how-intro>p,.how-steps article>p,.footer-main>div>p,.footer-bottom,.brand span){color:var(--ob-paper-soft)}
.public-page :is(.how-intro>.eyebrow,.how-steps article>span,.nav-link:hover){color:var(--ob-accent-on-paper)}
.public-page .integrity-note :is(p,strong,svg,.text-button){color:var(--ob-paper-ink)}
.public-page .site-header .button-outline{color:var(--ob-paper-ink);border-color:var(--ob-paper-soft)}
.public-page .site-header .button-outline:hover{background:var(--ob-accent);color:var(--ob-accent-ink)}
.public-page .gallery-section .category-tab:not(.active) small{color:var(--ob-gallery-soft)}
.public-page :is(.hero h1,.section-head h2,.story-content h3,.how-intro h2,.footer-main>div>strong){font-family:var(--ob-display-font)}
.public-page :is(.header-wrap,.hero,.how-section){max-width:var(--ob-content-width)}
.public-page .integrity-note{max-width:calc(var(--ob-content-width) - 96px)}
.public-page :is(.gallery-section,.site-footer){padding-inline:max(48px,calc((100vw - var(--ob-content-width) + 96px)/2))}
.public-page :is(.button,.category-tab,.grid-photo){border-radius:var(--ob-button-radius)}
.public-page .brand img,.ad-topbar .brand img,.ad-login .brand img{width:var(--ob-logo-width);height:var(--ob-logo-width);max-width:40vw;object-fit:contain}
.public-page [data-ob-text]{white-space:pre-line;overflow-wrap:anywhere}
.public-page .event-foot>[data-ob-text]{display:block}
.public-page .hero.ob-hero-single{grid-template-columns:minmax(0,1fr)}
.public-page .hero.ob-hero-single .event-card{max-width:640px}
.public-page .vote-card>p{font-size:1.15rem;line-height:1.55}
.public-page .hero-meta{min-width:0}.public-page .lightbox-actions{flex-wrap:wrap}
@media(max-width:800px){.public-page :is(.gallery-section,.site-footer){padding-inline:24px}.public-page .integrity-note{max-width:calc(100% - 48px)}}
@media(max-width:360px){.public-page :is(.gallery-section,.site-footer){padding-inline:18px}.public-page .integrity-note{max-width:calc(100% - 36px)}}
html.ob-high-contrast .public-page #app,html.ob-high-contrast .public-page :is(.site-header,.site-footer,.integrity-note){background:#000!important;color:#fff!important;border-color:#fff!important}
html.ob-high-contrast .public-page :is(.hero .eyebrow,.hero-description,.hero-meta>span,.how-intro>p,.how-steps article>p,.footer-main>div>p,.footer-bottom,.brand span,.integrity-note p,.integrity-note strong,.integrity-note svg){color:#fff!important}

/* Editable voting period, with the same readable layout on phone and desktop. */
.event-dates .event-boundary{font-size:.8rem;letter-spacing:.04em;overflow-wrap:anywhere}
.event-dates .event-month{font-size:.85rem;letter-spacing:0;text-transform:none;line-height:1.5;margin-top:5px;overflow-wrap:anywhere}
.event-dates>div{min-width:0}.event-dates strong{flex-wrap:wrap}
.ad-controls .ad-edit-schedule{margin:18px 0 12px}
.ad-controls .ad-date-card strong{font-size:1.5rem;line-height:1.4}
.ad-schedule-dialog{width:min(780px,calc(100vw - 24px))}
.ad-schedule-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}
.ad-schedule-fields .field{min-width:0;line-height:1.5}
.ad-schedule-fields input{width:100%;max-width:100%;min-width:0;min-height:58px;font-size:1rem;color:#25231e;background:#fff;padding:12px}
.ad-schedule-intro,.ad-schedule-help,.ad-schedule-timezone,.ad-schedule-paused{font-size:1rem;line-height:1.65}
.ad-schedule-timezone{margin-top:22px;padding:16px;border:1px solid #b7ad92;border-radius:10px;background:#f5efdf;color:#514624}
.ad-schedule-help{color:#5a5548}.ad-schedule-paused{margin:20px 0;padding:16px;background:#fff1c5;color:#574213;border-radius:10px}
#ad-schedule-status{font-size:.95rem;line-height:1.6}.ad-schedule-dialog .ad-modal-actions{margin-top:24px}
.ob-current-period{padding:20px;margin:24px 0;background:#f2eddf;color:#373121;border:1px solid #c1b698;border-radius:12px}
.ob-current-period p{margin-top:8px;font-size:1rem;line-height:1.65}
.vote-rules-note [data-vote-period]{font-weight:700;margin-bottom:12px}
@media(max-width:700px){.ad-schedule-fields{grid-template-columns:minmax(0,1fr);gap:16px}.ad-schedule-dialog .ad-modal-actions{flex-direction:column;align-items:stretch}.ad-schedule-dialog .ad-modal-actions .button{width:100%}.ad-schedule-fields input{padding-inline:8px}}
@media(max-width:360px){.event-dates{align-items:flex-start}.event-dates .event-boundary{overflow-wrap:anywhere}.event-dates>div{flex-basis:100%}.event-dates .date-line{display:none}.event-dates>div+div{margin-top:12px}}
html:is([data-ob-font-scale="150"],[data-ob-font-scale="175"],[data-ob-font-scale="200"]) .ad-schedule-fields{grid-template-columns:minmax(0,1fr)}
html.ob-high-contrast :is(.ad-schedule-timezone,.ad-schedule-paused,.ad-schedule-help,.ob-current-period){background:#000!important;color:#fff!important;border-color:#fff!important}
.ad-schedule-dialog .ad-modal-content>.eyebrow{color:#725108}
html.ob-high-contrast .ad-schedule-dialog .ad-modal-content>.eyebrow{color:#fff!important}
.ad-schedule-fields .ad-schedule-preview{display:block;margin-top:10px;font-size:.9rem;line-height:1.6;font-weight:400;white-space:normal;overflow-wrap:anywhere;color:#514b3e}
@media(max-width:700px){.ad-schedule-fields input{font-size:max(16px,.8rem)}}
html.ob-high-contrast .ad-schedule-fields .ad-schedule-preview{color:#fff!important}

/* Restarting the vote is a separate, password-confirmed action. */
.ad-reset-zone{margin-top:24px;padding-top:22px;border-top:1px solid #bcaba5}
.ad-reset-zone h3{font-size:1.1rem;line-height:1.4;color:#792d24;margin-bottom:10px}
.ad-reset-zone p{font-size:.9rem;line-height:1.65;color:#5b514b;margin-bottom:16px}
.button.ad-danger-button{background:#982f26;color:#fff;border-color:#982f26;box-shadow:none}
.button.ad-danger-button:hover:not(:disabled){background:#74221c;color:#fff;border-color:#74221c}
.button.ad-danger-button:disabled{background:#e2dbd8;color:#554e49;border-color:#7f736c;cursor:wait}
.ad-reset-dialog{width:min(800px,calc(100vw - 24px))}
.ad-reset-dialog .ad-modal-content>.eyebrow{color:#792d24}
.ad-reset-warning{padding:20px;margin:24px 0;border:1px solid #b8756b;border-radius:12px;background:#fff0ed;color:#69261e}
.ad-reset-warning>strong{display:block;font-size:1.05rem;line-height:1.5}
.ad-reset-warning p{margin-top:10px;color:#69261e;font-size:1rem;line-height:1.65}
.ad-reset-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}
.ad-reset-counts>div{padding:16px;background:#f3eee4;border:1px solid #c3b8a4;border-radius:10px;min-width:0}
.ad-reset-counts strong{display:block;font-size:1.8rem;line-height:1.3;color:#302c25;overflow-wrap:anywhere}
.ad-reset-counts span{display:block;font-size:.85rem;line-height:1.5;color:#565043;margin-top:6px}
.ad-reset-dialog .ad-reset-kept{font-size:1rem;line-height:1.65;color:#514c40}
.ad-reset-period{margin:22px 0;padding:18px;border:1px solid #b6ad99;border-radius:10px;background:#f7f3e9;color:#514c40}
.ad-reset-period strong{font-size:1rem}.ad-reset-period p{font-size:.95rem;line-height:1.65;margin-top:8px;color:#514c40}
.ad-reset-dialog .checkbox-field{font-size:.95rem;line-height:1.65;align-items:flex-start}
.ad-reset-dialog .checkbox-field input{flex:none;min-width:24px;min-height:24px;margin-top:5px}
.ad-reset-dialog .field{margin-top:24px;line-height:1.5}
#ad-reset-status{font-size:1rem;line-height:1.6}
.ad-reset-dialog .ad-modal-actions{margin-top:24px;flex-wrap:wrap}
@media(max-width:700px){.ad-reset-counts{grid-template-columns:minmax(0,1fr);gap:10px}.ad-reset-counts>div{display:flex;align-items:center;gap:16px}.ad-reset-counts strong{min-width:2.5rem}.ad-reset-counts span{margin-top:0}.ad-reset-dialog .ad-modal-actions{flex-direction:column;align-items:stretch}.ad-reset-dialog .ad-modal-actions>.button{width:100%}.ad-reset-warning,.ad-reset-period{padding:16px}}
html:is([data-ob-font-scale="150"],[data-ob-font-scale="175"],[data-ob-font-scale="200"]) .ad-reset-counts{grid-template-columns:minmax(0,1fr)}
html.ob-high-contrast :is(.ad-reset-zone,.ad-reset-warning,.ad-reset-counts>div,.ad-reset-period){background:#000!important;border-color:#fff!important;color:#fff!important}
html.ob-high-contrast :is(.ad-reset-zone h3,.ad-reset-zone p,.ad-reset-warning p,.ad-reset-counts strong,.ad-reset-counts span,.ad-reset-dialog .ad-reset-kept,.ad-reset-period p,.ad-reset-dialog .ad-modal-content>.eyebrow){color:#fff!important}
html.ob-high-contrast .button.ad-danger-button{background:#000!important;color:#ffdf6c!important;border-color:#ffdf6c!important}

/* Required participant profile and private audience reports. */
.vote-audience{min-width:0;margin:24px 0 18px;padding:0;border:0}
.vote-audience legend{font-size:1.05rem;font-weight:700;line-height:1.5;padding:0;margin:0 0 4px}
.vote-audience .field-help{margin:0 0 12px}
.vote-audience-option{display:flex;align-items:flex-start;gap:14px;min-height:60px;padding:16px;margin:10px 0;border:1px solid #948a71;border-radius:12px;background:#fffdf6;color:#2d3025;font-size:1rem;line-height:1.55;cursor:pointer}
.vote-audience-option input{accent-color:#70521d;width:24px;height:24px;min-width:24px;flex:0 0 24px;margin-top:3px}
.vote-audience-option:has(input:checked){border-color:#6d5019;background:#fff0c3;box-shadow:inset 0 0 0 1px #6d5019}
.vote-audience-option:focus-within{outline:3px solid #4c4e30;outline-offset:3px}
.vote-audience-option span{min-width:0;overflow-wrap:anywhere}
.vote-dialog .participant-help{padding:16px;background:#f1ede2;border:1px solid #bdb5a3;border-radius:10px;color:#4a4538;line-height:1.65;margin:20px 0}
.ad-audience-panel{margin:28px 0}
.ad-audience-intro{max-width:1000px;margin:0 0 20px}
.ad-audience-panel table{min-width:740px;width:100%}
.ad-audience-panel th[scope=row]{white-space:normal;min-width:240px;font-weight:600}
.ad-participant-cell{min-width:220px;max-width:360px;white-space:normal!important;overflow-wrap:anywhere}
.ad-participant-cell strong,.ad-participant-cell span{display:block;white-space:normal;overflow-wrap:anywhere}
.ad-participant-cell span{font-size:.85rem;color:#555a43;margin-top:5px}
html.ob-high-contrast :is(.vote-audience-option,.vote-dialog .participant-help){background:#000!important;color:#fff!important;border-color:#fff!important}
html.ob-high-contrast .vote-audience-option:has(input:checked){border-color:#ffdf6c!important;box-shadow:inset 0 0 0 1px #ffdf6c}
html.ob-high-contrast .vote-audience-option:focus-within{outline-color:#ffdf6c!important}
html.ob-high-contrast .ad-participant-cell span{color:#fff!important}
@media(max-width:650px){.vote-audience-option{padding:14px 12px;gap:12px}.ad-audience-panel .button{width:100%}.ad-audience-panel{margin:20px 0}}
@media print{.ad-audience-panel{break-inside:avoid}.ad-audience-panel table{min-width:0}.ad-audience-panel th[scope=row]{min-width:0}.ad-audience-panel [data-ad-action=participants]{display:none!important}}

/* Exhibition first: the photographs precede event information and voting. */
.public-page .gallery-section{padding-top:30px;padding-bottom:40px}
.public-page .gallery-section .section-head{margin-bottom:22px}
.public-page .section-head h2{font-family:var(--ob-display-font);font-size:clamp(2rem,3.6vw,3rem);font-weight:400;line-height:1.12;letter-spacing:-.025em;margin-top:10px;overflow-wrap:anywhere}
.public-page .section-head h2 em{font-weight:400;color:var(--ob-gallery-accent)}
.public-page .gallery-top{margin-bottom:6px}
.public-page .gallery-context{position:relative;max-width:1100px;margin:22px auto 0;color:var(--ob-gallery-soft);font-size:.95rem;line-height:1.75}
.public-page .gallery-context .category-description{margin-top:10px;max-width:none}
.public-page .photo-story{grid-template-columns:70px minmax(0,1fr);margin-top:28px}
.public-page .story-content h2{font-family:var(--ob-display-font);font-size:2rem;line-height:1.3;font-weight:400;margin-bottom:18px;overflow-wrap:anywhere}
.public-page .hero-title{font-family:var(--ob-display-font);font-weight:400;font-size:clamp(2rem,4vw,3.5rem);line-height:1.1;letter-spacing:-.035em;margin:23px 0 25px;overflow-wrap:anywhere}
.public-page .hero-title em{font-weight:400;color:var(--ob-accent-on-paper)}
.public-page .gallery-vote-entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.46fr);gap:42px;align-items:center;max-width:var(--ob-content-width);margin:auto;padding:40px 48px;border-bottom:1px solid var(--ob-paper-soft);background:var(--ob-paper);color:var(--ob-paper-ink)}
.gallery-vote-entry .eyebrow{color:var(--ob-accent-on-paper)}
.gallery-vote-entry h2{font-family:var(--ob-display-font);font-size:2rem;line-height:1.2;font-weight:400;margin:10px 0 16px;overflow-wrap:anywhere}
.gallery-vote-entry p{font-size:1rem;line-height:1.7;color:var(--ob-paper-soft)}
.gallery-vote-action .button{width:100%;min-height:64px;font-size:1.1rem}
.gallery-vote-action p{font-size:.9rem;line-height:1.6;margin-top:14px}
.ad-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}
.ad-metric{min-width:0}.ad-metric>span,.ad-metric>small{overflow-wrap:anywhere}
.ad-audience-panel table{min-width:900px}
@media(max-width:1100px){.ad-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){
 .public-page .gallery-vote-entry{grid-template-columns:minmax(0,1fr);gap:24px;padding:30px 24px}
 .public-page .gallery-section{padding-top:24px}
 .public-page .gallery-section .section-head{margin-bottom:18px}
 .public-page .category-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}
 .public-page .category-tab{padding:16px 12px;min-height:108px;gap:0;align-items:center}
 .public-page .category-tab :is(.category-icon,.category-count){display:none}
 .public-page .category-tab strong{font-size:.9rem;line-height:1.45}
 .public-page .category-tab small{font-size:.75rem;letter-spacing:.03em}
 .public-page .view-switch{margin-top:8px;min-height:44px}
 .public-page .gallery-context{margin-top:18px}
 .public-page .hero-title{font-size:2.2rem}
 .ad-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){.public-page .photo-story{display:block}.public-page .story-content h2{font-size:1.6rem}.public-page .section-head h2{font-size:1.8rem}.gallery-vote-entry h2{font-size:1.65rem}}
@media(max-width:360px){.public-page .gallery-vote-entry{padding-inline:18px}.public-page .category-tabs{grid-template-columns:minmax(0,1fr)}.public-page .category-tab{min-height:76px;padding:12px 14px}.ad-metrics{grid-template-columns:minmax(0,1fr)}}
html:is([data-ob-font-scale="125"],[data-ob-font-scale="150"],[data-ob-font-scale="175"],[data-ob-font-scale="200"]) .public-page .category-tabs{grid-template-columns:minmax(0,1fr)}
html:is([data-ob-font-scale="150"],[data-ob-font-scale="175"],[data-ob-font-scale="200"]) .public-page .gallery-vote-entry{grid-template-columns:minmax(0,1fr)}
html:is([data-ob-font-scale="150"],[data-ob-font-scale="175"],[data-ob-font-scale="200"]) .ad-metrics{grid-template-columns:minmax(0,1fr)}
html.ob-high-contrast .public-page .gallery-vote-entry{background:#000!important;color:#fff!important;border-color:#fff!important}
html.ob-high-contrast .public-page :is(.gallery-context,.hero-title em,.section-head h2 em,.gallery-vote-entry .eyebrow,.gallery-vote-entry p){color:#fff!important}

/* Read the exhibition in order: guidance, category, photo, official summary, accessibility. */
.public-page .gallery-instructions{max-width:1100px;margin:0 0 28px;font-size:1rem;line-height:1.75;color:var(--ob-gallery-soft);white-space:pre-line;overflow-wrap:anywhere}
.public-page #gallery-panel>.category-description{max-width:1100px;margin:20px 0 12px;font-size:1rem;line-height:1.75;color:var(--ob-gallery-soft);white-space:pre-line;overflow-wrap:anywhere}
.public-page .section-head h2{font-size:clamp(2.25rem,4.6vw,3.6rem);line-height:1.12}
.official-summary{min-width:0;overflow-wrap:anywhere}
.official-summary-label{font-size:.8rem;font-weight:700;line-height:1.6;margin:0 0 10px}
.gallery-section .official-summary-label{color:var(--ob-gallery-soft)}
.gallery-section #photo-description{font-size:1rem;line-height:1.85;color:var(--ob-gallery-soft);white-space:pre-line}
.official-summary .lightbox-caption,.official-summary .ob-ballot-full-description{margin-top:0;white-space:pre-line}
.public-page .symposium-title{font-size:1rem;line-height:1.75;font-weight:400;color:var(--ob-paper-soft);max-width:800px;margin:0 0 26px;white-space:pre-line;overflow-wrap:anywhere}
.public-page .gallery-vote-entry{border-top:1px solid var(--ob-paper-soft)}
@media(max-width:650px){.public-page .gallery-instructions{margin-bottom:22px}.public-page #gallery-panel>.category-description{margin-top:16px}.public-page .section-head h2{font-size:2.1rem}.public-page .symposium-title{font-size:1rem;line-height:1.7}}
html.ob-high-contrast .public-page :is(.gallery-instructions,.symposium-title,.official-summary-label,#photo-description){color:#fff!important}
/* Keep short identifiers intact and let date columns wrap as whole blocks. */
.public-page .story-marker strong{white-space:nowrap}
.public-page .event-dates>div{min-width:min(100%,8.5rem)}
.public-page .event-dates .event-boundary{overflow-wrap:normal;letter-spacing:0}
.public-page .event-dates .date-line{display:none}
