/* Shared public-site language: coastal ink, cool blue, open editorial layouts. */
:root { --site-ink:#edf3ff; --site-muted:#b3c4df; --site-blue:#9fbcff; --site-deep:#0d182b; --site-surface:#14243e; --site-rule:#405777; }
::selection { background:#9fbcff; color:#0d182b; }
:focus-visible { outline:2px solid #9fbcff; outline-offset:4px; }
a { text-underline-offset:4px; }
/* The homepage's photographic world is preserved; its news section is an open ledger. */
#news-following.nf-zine { background:none; border:0; border-radius:0; padding:clamp(24px,4vw,44px) 0 0; box-shadow:none; border-top:1px solid var(--site-rule); color:var(--site-ink); }
.nf-zine-masthead { gap:16px; padding:0 0 28px; border-bottom:1px solid var(--site-rule); }
.nf-zine-masthead::after { display:none; }
.nf-zine-title { color:var(--site-ink); font-size:clamp(34px,5vw,58px); font-weight:600; line-height:1.08; letter-spacing:-.035em; text-transform:none; }
.nf-zine-masthead-top { display:none; }
.nf-disclaimer { color:var(--site-muted); font-size:15px; line-height:1.65; max-width:67ch; }
#news-following .nf-panels { gap:40px; margin-top:28px; }
#news-following .nf-panel:first-child { border:0; padding:0; }
#news-following .nf-panel-header { border:0; padding:0 0 12px; }
#news-following .nf-panel-title { color:var(--site-blue); font:600 19px/1.35 var(--display); text-transform:none; letter-spacing:-.015em; }
#news-following .nf-item { gap:12px; padding:0 0 26px; border-bottom:1px solid var(--site-rule); }
#news-following .nf-item > a { color:var(--site-ink); font-size:clamp(19px,2.5vw,24px); font-weight:600; line-height:1.3; letter-spacing:-.02em; }
#news-following .nf-item > a:hover { color:var(--site-blue); }
#news-following .nf-meta, #news-following .nf-tags { color:var(--site-muted); font:400 13px/1.5 var(--family); text-transform:none; letter-spacing:0; }
#news-following .nf-summary { color:var(--site-muted); font-size:15px; line-height:1.65; }
#news-following .nf-tags span { background:none; border:0; padding:0; }
#news-following .nf-tags span:not(:last-child)::after { content:' /'; color:var(--site-rule); }
#news-following .nf-see-all { color:var(--site-blue); font:500 14px/1.4 var(--family); text-transform:none; letter-spacing:0; border-bottom:1px solid var(--site-rule); }
#news-following .nf-thumb-link { border:0; border-radius:0; }
#news-following .nf-thumb { filter:none; }
/* Full news archive keeps the existing IDs, controls, data and rendering script. */
body.page-news { --ink:var(--site-ink); --muted:var(--site-muted); --accent:var(--site-blue); background:var(--site-deep); color:var(--site-ink); color-scheme:dark; }
.page-news #cr-page { display:flex; flex-direction:column; max-width:1160px; padding:0 clamp(20px,5vw,56px); gap:0; }
.news-header { padding:24px 0; border-bottom:1px solid var(--site-rule); }
.news-brand__home { font-family:Georgia,serif; font-size:24px; font-weight:400; letter-spacing:-.025em; }
.news-brand__subtitle { display:none; }
.news-back-home { background:none; border:0; border-radius:0; padding:10px 0; color:var(--site-muted); font:500 14px/1.5 var(--family); letter-spacing:0; text-transform:none; min-height:44px; }
.news-back-home:hover, .news-back-home:focus-visible { box-shadow:none; transform:none; color:var(--site-ink); }
.news-intro { padding:clamp(40px,7vw,80px) 0 32px; gap:36px; }
.news-intro__copy { gap:18px; }
.news-kicker { display:none; }
.news-intro h1 { max-width:16ch; font-size:clamp(40px,6.5vw,76px); font-weight:600; line-height:1.05; text-transform:none; letter-spacing:-.04em; }
.news-intro__lede { font-size:17px; line-height:1.65; max-width:68ch; }
.news-intro__note { font-size:14px; color:var(--site-muted); }
.news-controls { padding:28px 0; border-top:1px solid var(--site-rule); border-bottom:1px solid var(--site-rule); gap:24px; }
.news-toggle { background:none; border:0; border-radius:0; padding:0; gap:24px; }
.news-toggle__btn { padding:10px 0; min-height:44px; border-radius:0; border-bottom:2px solid transparent; font:500 17px/1.4 var(--family); text-transform:none; letter-spacing:0; color:var(--site-muted); }
.news-toggle__btn.is-active { background:none; color:var(--site-blue); border-bottom-color:var(--site-blue); transform:none; }
.news-filter__label { font:500 13px/1.5 var(--family); color:var(--site-muted); letter-spacing:0; text-transform:none; }
.news-filter input, .news-filter select { background:var(--site-surface); border:1px solid var(--site-rule); border-radius:3px; color:var(--site-ink); font-size:16px; min-height:46px; }
.news-filter input::placeholder { color:var(--site-muted); opacity:1; }
.news-results { padding:0 0 48px; }
.news-results__list { gap:0; }
.news-item { padding:30px 0; background:none; border:0; border-bottom:1px solid var(--site-rule); border-radius:0; gap:14px; }
.news-item__title { font-size:clamp(23px,3vw,34px); font-weight:600; text-transform:none; letter-spacing:-.025em; line-height:1.25; max-width:35ch; }
.news-item__title:hover { color:var(--site-blue); }
.news-item__summary { color:var(--site-muted); max-width:72ch; font-size:16px; line-height:1.65; }
.news-item__meta, .news-item__tags { color:var(--site-muted); font:400 13px/1.5 var(--family); letter-spacing:0; text-transform:none; }
.news-item__tags span { border:0; border-radius:0; background:var(--site-surface); padding:4px 8px; }
.news-comment { border:0; border-radius:0; background:var(--site-surface); padding:20px; }
.news-footer { border-top:1px solid var(--site-rule); padding:24px 0; margin:0; font-size:13px; }
/* Press retains its landscape arrival and downloads, with quieter open sections. */
.page-press { --ink:var(--site-ink); --muted:var(--site-muted); --accent:var(--site-blue); }
.page-press .press-card { background:var(--site-deep); border:0; border-radius:0; box-shadow:none; }
.page-press .press-bio-frame { background:var(--site-surface); border:0; border-radius:0; box-shadow:none; }
.page-press .cr-card-meta { display:none; }
.page-press .press-contact-link, .page-press .press-reporting-link { color:var(--site-blue); }
.page-press h2 { letter-spacing:-.03em; }
.page-press .press-contact-icon { display:none; }
/* Supporting public pages inherit palette and finish without changing their workflows. */
.page-privacy, .page-food, .page-workroom, .page-photo-booth, .page-photo-booth-download, .page-thank-you { --bg:var(--site-deep); --ink:var(--site-ink); --muted:var(--site-muted); --accent:var(--site-blue); --accent-dark:#c3d4ff; --border:var(--site-rule); --card:var(--site-surface); --surface:var(--site-surface); --text:var(--site-muted); --text-bright:var(--site-ink); --text-muted:var(--site-muted); --green:var(--site-blue); background:var(--site-deep); color:var(--site-ink); color-scheme:dark; }
.page-privacy .card { border:0; border-radius:0; box-shadow:none; background:none; padding:20px 0; border-top:1px solid var(--site-rule); }
.page-privacy .policy-hero h1 { letter-spacing:-.035em; }
.page-privacy .eyebrow { display:none; }
.page-food .card, .page-workroom .card { border-radius:3px; box-shadow:none; background:var(--site-surface); }
.page-workroom .title { font-size:clamp(40px,6vw,64px); line-height:1.08; letter-spacing:-.035em; }
.page-workroom .card-label { color:var(--site-blue); }
.page-photo-booth section { border:0; border-radius:3px; box-shadow:none; background:var(--site-surface); backdrop-filter:none; }
.page-photo-booth .button, .page-photo-booth button { box-shadow:none; }
.page-photo-booth-download .download-card { border-radius:3px; box-shadow:none; }
@media (max-width:600px) { .news-header__inner { gap:12px; } .news-intro h1 { font-size:42px; } .news-toggle { gap:20px; } .news-filters { grid-template-columns:minmax(0,1fr); } .news-filter { min-width:0; } }
@media (prefers-reduced-motion:reduce) { #news-following .nf-thumb, .page-workroom .card { transition:none; } }

.cr-selected-photos { color:var(--site-blue); font:500 14px/1.5 var(--family); min-height:44px; display:inline-flex; align-items:center; align-self:flex-start; text-decoration:underline; }
/* Native date controls must include their padding inside the mobile track. */
.news-filter input, .news-filter select { box-sizing:border-box; min-width:0; max-width:100%; }
footer small { font-family:inherit; font-size:13px; letter-spacing:0; text-transform:none; }
#news-following .nf-status { font:400 14px/1.5 var(--family); color:var(--site-muted); letter-spacing:0; text-transform:none; }
/* Complete foreground/background pairs when converting the old light pages. */
.page-press .press-card { color:var(--site-ink); }
.page-press .press-card h2, .page-press .press-card h3 { color:var(--site-ink); text-transform:none; letter-spacing:-.025em; }
.page-press .press-card p, .page-press .press-bio-copy p, .page-press .press-contact-note, .page-press .press-reporting-meta, .page-press .press-reporting-summary { color:var(--site-muted); }
.page-press .press-reporting-item { background:none; border:0; border-radius:0; box-shadow:none; padding:20px 0; border-top:1px solid var(--site-rule); }
.page-press .press-reporting-link { text-transform:none; letter-spacing:-.02em; }
.page-press .press-hero-links { flex-wrap:wrap; gap:8px; }
.page-press .press-hero-link { width:auto; height:auto; min-height:44px; padding:10px 12px; border:0; border-radius:3px; background:#edf3ff; color:#0d182b; box-shadow:none; backdrop-filter:none; font:500 13px/1.4 var(--family); }
.page-press .press-hero-link:hover { background:var(--site-blue); }
.page-food { --surface:#14243e; --surface-subtle:#1d3356; --surface-tint:#1d3356; --muted-soft:#b3c4df; --accent-on:#0d182b; --border-strong:#6e86a9; }
.page-food .site-header { background:#0d182b; border-color:#405777; backdrop-filter:none; }
.page-food .hero { background:none; border:0; border-radius:0; box-shadow:none; padding:12px 0 32px; }
.page-food .hero h1 { letter-spacing:-.035em; }
.page-food .calendar, .page-food .disclaimer, .page-food .news-feed { background:#14243e; border:0; border-radius:3px; box-shadow:none; }
.page-food .news-item { background:none; border:0; border-radius:0; border-top:1px solid #405777; }
.page-food .header-cta, .page-food .btn-primary { background:#edf3ff; color:#0d182b; box-shadow:none; border-radius:3px; }
.page-food .header-cta:hover, .page-food .header-cta:focus-visible, .page-food .btn-primary:hover, .page-food .btn-primary:focus-visible { background:#9fbcff; color:#0d182b; }
.page-food .btn-secondary, .page-food .btn-tertiary { background:#1d3356; color:#edf3ff; border-color:#405777; }
.page-food .hero-notes { border-color:#405777; }
.page-photo-booth-download *, .page-photo-booth-download *::before, .page-photo-booth-download *::after { box-sizing:border-box; }
.page-photo-booth-download .download-shell { width:min(1120px,100%); }
.page-photo-booth-download .download-hero { border:0; border-radius:3px; box-shadow:none; text-align:left; }
.page-photo-booth-download .download-hero::after, .page-photo-booth-download .download-eyebrow { display:none; }
.page-photo-booth-download .download-hero h1 { text-transform:none; letter-spacing:-.035em; color:var(--site-ink); }
.page-photo-booth-download .download-hero__instructions { border:0; border-radius:0; background:none; box-shadow:none; padding:20px 0; width:100%; }
.page-photo-booth-download .download-hero__instructions h2 { text-transform:none; letter-spacing:-.02em; }
.page-photo-booth-download .download-button { border-radius:3px; min-height:44px; white-space:normal; }
.page-photo-booth-download .download-button--primary, .page-photo-booth-download .download-button--cta { background:#edf3ff; color:#0d182b; box-shadow:none; }
.page-press .press-hero-link { box-sizing:border-box; }
body.page-photo-booth-download { --surface:#14243e; --muted:#b3c4df; --ink:#edf3ff; --accent:#9fbcff; --border:#405777; background:#0d182b; background-image:none; }
.page-food .resource-links li { background:#14243e; border-radius:3px; box-shadow:none; }
.page-food .resource-links li::before { display:none; }
.page-food .newsletter { background:#14243e; border-radius:3px; box-shadow:none; }
.page-food .news-badge { color:#ffd0d0; background:#442330; border:0; }

/* Homepage photography entry, using Cam's existing photograph. */
.cr-photography-feature{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(24px,4vw,48px);align-items:center;padding:32px 0 48px}.cr-photography-image{display:block}.cr-photography-image img{display:block;width:100%;height:auto}.cr-photography-feature h2{font:400 clamp(30px,4vw,46px)/1.2 Georgia,serif;margin:0 0 16px}.cr-photography-feature p{font-size:17px;line-height:1.6;margin:0 0 20px}.cr-photography-feature .cr-article-btn{display:inline-flex;min-height:44px;align-items:center}@media(max-width:700px){.cr-photography-feature{grid-template-columns:1fr;gap:24px}}
