/* Latest STAR type/kerning/motion adapted to the approved CPJ content. */
:root{--space-outer:max(32px,calc((100vw - 1120px)/2));--space-section:96px;--space-between:24px;--space-inside:16px}
.in{width:calc(100% - var(--space-outer)*2);margin-inline:auto}
.section,.pv-section{padding-block:var(--space-section)}
.field-gallery,.together-gallery{gap:var(--space-between)}
.cta{padding-block:var(--space-inside)}
.fv-title,.section-head h2{font-family:var(--body);font-weight:900;letter-spacing:-.025em}
.section-head{margin-bottom:32px}.pv-section .section-head{margin-bottom:0}
.section-head h2{transform:none}
.hero{background-image:none}.hero:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(var(--cream),var(--cream));}
.together{background-image:none}
.photo-open{position:relative;display:block;width:100%;border:0;padding:0;background:none;color:white;text-align:left;cursor:zoom-in}
.photo-hint{position:absolute;right:10px;bottom:10px;background:var(--navy);color:white;padding:2px 8px;font-size:11px;line-height:1.8}
.photo-dialog{width:min(1040px,calc(100% - 24px));max-height:calc(100dvh - 32px);border:0;padding:var(--space-inside);background:var(--cream);color:var(--navy);overflow:auto}
.photo-dialog::backdrop{background:#060c1fe8}
.photo-toolbar,.photo-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}
.photo-toolbar h2{font:900 14px/1.5 var(--body)}
.photo-toolbar button,.photo-controls button{border:0;background:var(--navy);color:white;min-width:60px;min-height:44px;padding:8px 12px;font:700 13px/1.5 var(--body)}
.photo-stage{margin:16px 0;display:grid;place-items:center;min-height:100px;background:var(--navy)}
.photo-stage img{width:100%;max-height:calc(100dvh - 240px);object-fit:contain}
.photo-controls p{margin:0;font-size:12px}.photo-dialog #photo-caption{font-size:13px;line-height:1.7;margin-top:12px}
html.photo-opened{overflow:hidden}html:not(.mo) .ticker-track{animation:none}
@media(max-width:899px){:root{--space-outer:max(20px,calc((100vw - 680px)/2));--space-section:72px;--space-between:16px}}
@media(max-width:560px){:root{--space-between:12px}.section-head h2{font-size:28px}.hero .fv-title{font-size:clamp(27px,5.7vw,42px)}.photo-controls button{padding-inline:8px;min-width:60px}}
