@import url("./business-family-reference.css");

/* Laravel adapters; the live site's typography, palette and grid stay shared. */
.hero-visual > img, .story-photo > img, .page-hero-image > img, .collage-main > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
/* Keep the home hero balanced independently of the global heading size. */
.hero { min-height:0; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:clamp(28px,4vw,54px); padding:40px; }
.hero-copy { padding-left:0; }
.hero h1 { font-size:clamp(2.6rem,4.6vw,4rem); line-height:1.08; letter-spacing:-.045em; text-wrap:balance; margin-bottom:22px; }
.hero-copy > p { font-size:1.08rem; line-height:1.6; margin-bottom:24px; }
.hero-proof { margin-top:24px; }
.hero-visual { min-height:0; height:clamp(420px,42vw,560px); align-self:center; }
@media(max-width:800px) {
    .hero { grid-template-columns:minmax(0,1fr); gap:28px; padding:32px 20px; }
    .hero h1 { font-size:clamp(2.25rem,7vw,3.25rem); }
    .hero-visual { width:100%; height:auto; aspect-ratio:4 / 3; }
    .hero-event { top:14px; right:14px; left:14px; width:fit-content; max-width:calc(100% - 28px); }
    .photo-note { right:20px; bottom:18px; left:20px; font-size:.82rem; }
}
.header-actions { margin-left:auto; }
.menu-button { flex-shrink:0; }
.mobile-nav a { display:block; }
.button { white-space:normal; text-align:center; }
.page-hero h1, .simple-hero h1 { margin-bottom:24px; }
.event-content h3, .program-card h3 { overflow-wrap:break-word; }
.content-prose { max-width:820px; font-size:1.05rem; }
.content-prose p { margin-bottom:20px; }
.content-prose h2 { margin:32px 0 16px; font-size:2rem; }
.content-block { margin-top:40px; padding-top:24px; border-top:1px solid var(--line); }
.event-facts { display:grid; gap:7px; margin:25px 0; }
.curriculum { max-width:900px; }
.curriculum > h2 { margin-bottom:28px; font-size:2.4rem; }
.curriculum article { margin-top:20px; padding:28px; border:1px solid var(--line); border-radius:14px; background:#fff; }
.curriculum h3 { margin-bottom:14px; }
.curriculum li { display:flex; justify-content:space-between; gap:16px; padding:14px 0; border-bottom:1px solid var(--line); }
.curriculum small { flex-shrink:0; color:var(--muted); }
.member-avatar { display:grid; width:64px; height:64px; place-items:center; margin-bottom:18px; border-radius:50%; background:var(--soft); color:var(--navy); font-weight:850; }
.member-card > strong { display:block; margin-bottom:6px; }
.directory-filters { display:grid; grid-template-columns:2fr 1fr 1fr auto; gap:10px; margin-bottom:30px; }
.auth-card { background:#fff; }
.auth-card form, .cms-form, .admin-form-grid, .assignment-card form { display:grid; gap:17px; }
.auth-card label, .cms-form label, .admin-form-grid label, .assignment-card label { display:grid; gap:6px; font-size:.82rem; font-weight:750; }
input:not([type="radio"]):not([type="checkbox"]), select, textarea { width:100%; min-width:0; padding:12px 14px; border:1px solid #cbd1d4; border-radius:8px; background:#fff; color:var(--ink); }
textarea { min-height:120px; resize:vertical; }
input[type="radio"], input[type="checkbox"] { width:18px; height:18px; accent-color:var(--navy); flex-shrink:0; }
.check { display:flex!important; gap:8px; align-items:center; font-weight:500; }
.fine-print { margin-top:20px; color:var(--muted); font-size:.78rem; }
.amount-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
.amount-grid label { position:relative; display:block; cursor:pointer; }
.amount-grid input { position:absolute; opacity:0; }
.amount-grid span { display:block; padding:12px; border:1px solid var(--line); border-radius:8px; text-align:center; }
.amount-grid input:checked + span { background:var(--navy); color:#fff; }
.amount-grid input:focus-visible + span { outline:2px solid var(--focus); outline-offset:3px; }
.checkout-summary { display:grid; gap:6px; margin:18px 0; padding:18px; border:1px solid var(--line); border-radius:12px; }
.checkout-summary span { font-size:2rem; font-weight:800; }
.donate-layout .auth-card { max-width:520px; margin:40px auto; padding:40px; border-radius:18px; }
.flash, .error-box { padding:14px 18px; border-radius:9px; font-size:.88rem; }
.flash { max-width:1180px; margin:18px auto; border:1px solid #a8d5c1; background:#effaf5; color:#1b5b3d; }
.error-box { margin-bottom:18px; border:1px solid #e2a5a5; background:#fff1f1; color:#8a2525; }
.dashboard-main { min-width:0; }
.dashboard-welcome { align-items:center; }
.dashboard-nav .text-button { width:100%; padding:10px 12px; text-align:left; }
.dashboard-main > h1 { margin-bottom:20px; font-size:3rem; }
.dashboard-main > .settings-card { margin-top:28px; }
.continue-card > img { width:100%; height:230px; object-fit:cover; border-radius:10px; }
.course-row-grid .progress { margin-top:20px; }
.lesson-content { width:100%; padding-top:12px; }
.lesson-content:has(+ .curriculum-side) { max-width:none; }
.curriculum-side { display:grid; gap:6px; margin-top:30px; padding:24px; border:1px solid var(--line); border-radius:14px; background:#fff; }
.curriculum-side strong { margin-top:12px; font-weight:800; }
.curriculum-side a { padding:9px 12px; border-radius:7px; color:var(--muted); font-size:.84rem; }
.curriculum-side a.active { background:var(--soft); color:var(--navy); font-weight:800; }
.video-frame { position:relative; display:block; overflow:hidden; }
.video-frame iframe { width:100%; height:100%; border:0; position:absolute; inset:0; }
.quiz-card h2, .assignment-card h2 { margin-bottom:18px; font-size:1.8rem; }
.quiz-card fieldset { margin-top:20px; border:0; }
.quiz-card legend { margin-bottom:12px; }
.assignment-card { margin:32px 0; padding:24px; border-left:4px solid var(--teal); background:var(--soft); }
.assignment-card p { margin-bottom:20px; }
.certificate .brand-mark { margin:auto; }
.certificate h2 { margin-bottom:20px; }
.certificate > div { display:flex; justify-content:space-between; gap:20px; margin-top:40px; padding-top:18px; border-top:1px solid var(--line); color:var(--muted); font-size:.8rem; }
.admin-sidebar { position:sticky; top:0; height:100vh; overflow-y:auto; }
.admin-sidebar > a { margin-top:auto; padding:24px 12px 0; font-size:.8rem; }
.admin-sidebar .brand { min-width:0; }
.admin-sidebar .brand small { display:none; }
.admin-topbar > div { display:grid; gap:1px; }
.admin-topbar .mode-pill { padding:5px 9px; border-radius:99px; background:var(--soft); }
.admin-main > .admin-form-grid, .admin-main > .cms-form { margin:0 35px 30px; padding:28px; border:1px solid var(--line); border-radius:14px; background:#fff; }
.admin-main > .settings-card { margin:0 35px 30px; }
.admin-form-grid { grid-template-columns:1fr 1fr; }
.admin-form-grid > h2, .admin-form-grid > button { grid-column:1/-1; }
.admin-form-grid h2 { font-size:1.8rem; }
.admin-table-card { overflow-x:auto; }
.admin-table-card h2 { margin:20px; font-size:1.5rem; }
.admin-table-card td form { display:grid; gap:8px; min-width:190px; }
.payment-columns { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:0 35px 30px!important; }
.payment-columns .admin-table-card { min-width:0; margin:0; }
.locale-columns { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.locale-columns h2 { margin-bottom:18px; font-size:1.6rem; }
.locale-columns section { display:grid; gap:18px; }
.tall { min-height:340px; }
body > main, .hero > *, .club-hero > *, .page-hero > *, .program-grid > *, .member-grid > * { min-width:0; }
@media(min-width:1480px) {
    .dashboard-main:has(.lesson-content + .curriculum-side) { display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:30px; }
    .curriculum-side { align-self:start; margin-top:0; position:sticky; top:110px; }
}
@media(max-width:1080px) {
    .mobile-nav.is-open { display:grid; }
    .header-inner { gap:20px; }
}
@media(max-width:800px) {
    .header-inner { gap:10px; }
    .menu-button { margin-left:0; }
    .mobile-nav { right:16px; left:16px; }
    .dashboard-nav { display:flex; flex-direction:row; gap:6px; overflow-x:auto; border-right:0; border-bottom:1px solid var(--line); padding:12px 15px; }
    .dashboard-nav a, .dashboard-nav form { flex-shrink:0; white-space:nowrap; }
    .dashboard-nav .nav-label { display:none; }
    .dashboard-nav .text-button { font-size:.84rem; }
    .directory-filters, .payment-columns, .locale-columns, .admin-form-grid { grid-template-columns:1fr; }
    .admin-sidebar { display:flex; position:static; height:auto; min-height:0; padding:12px 16px; }
    .admin-sidebar .brand { display:none; }
    .admin-sidebar nav { flex-direction:row; gap:5px; overflow-x:auto; margin-top:0; }
    .admin-sidebar nav a { flex-shrink:0; white-space:nowrap; }
    .admin-sidebar > a { padding:10px 12px 0; }
    .admin-topbar { min-height:68px; flex-wrap:wrap; gap:8px; }
    .admin-main > .admin-form-grid, .admin-main > .cms-form, .admin-main > .settings-card { margin:0 20px 24px; padding:22px; }
    .payment-columns { margin:0 20px 24px!important; }
    .admin-form-grid > h2, .admin-form-grid > button { grid-column:auto; }
    .curriculum li { flex-direction:column; gap:4px; }
    .donate-layout .auth-card { width:calc(100% - 32px); padding:26px; }
    .certificate > div { display:grid; }
}
@media(max-width:520px) {
    .club-collage { min-height:390px; }
    .collage-main { inset:0 28px 30px 0; border-radius:60px 12px 60px 12px; }
    .floating-card { width:210px; }
    .brand { gap:8px; }
    .brand strong { font-size:.9rem; }
    .amount-grid { grid-template-columns:1fr 1fr; }
    .auth-promise h1 { margin-bottom:20px; }
    .dashboard-main > h1 { font-size:2.4rem; }
}

.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:24px}.gallery-grid figure{margin:0}.gallery-grid img{width:100%;height:260px;object-fit:cover;border-radius:16px}.gallery-grid label{display:block;margin:12px 0}.gallery-grid input:not([type=checkbox]),.gallery-grid select{width:100%;padding:10px}.gallery-grid figcaption{padding:12px 0}.hero-visual [data-slide]{display:block;width:100%;height:100%}.hero-visual [data-slide][hidden]{display:none}.hero-visual [data-slide] img{width:100%;height:100%;object-fit:cover}.slide-controls{position:absolute;top:16px;right:16px;display:flex;gap:8px;z-index:3}.slide-controls button{border:0;background:#fff;color:#173f38;padding:10px 15px;border-radius:24px;cursor:pointer}.hero-event,.photo-note{pointer-events:none}.legacy-content img{max-width:100%;height:auto}.legacy-content .card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:24px}.legacy-content .founder-photo{max-height:350px;object-fit:cover}.legacy-content .card,.legacy-content .press-card{padding:24px;border:1px solid #dde5df;border-radius:18px}.legacy-content li{margin:8px 0}

.hero-visual .slide-controls{top:auto;bottom:14px}.hero-visual .photo-note{bottom:70px;max-width:calc(100% - 40px)}.legacy-content .page-hero-media img{width:100%;max-height:520px;object-fit:cover;border-radius:20px}.legacy-content .page-hero{display:block}.legacy-content .page-hero-media{margin-top:24px}

/* Luma event content */
.event-card-cover{float:right;width:80px;height:80px;object-fit:contain;border-radius:12px;margin:0 0 16px 24px;background:#f4f5f7}
.event-content{min-width:0}.event-content:after{content:"";display:table;clear:both}
.event-page-hero{grid-template-columns:minmax(0,1fr) 120px;min-height:0;gap:32px;align-items:start}
.event-page-hero .event-cover{width:120px;height:120px;min-height:0;align-self:start;background:transparent}
.event-page-hero .event-cover img{position:static;display:block;width:100%;height:100%;object-fit:contain;border-radius:18px}
.event-description{overflow-wrap:anywhere}.event-description h2{margin-top:32px}.event-description ul{list-style:disc;padding-left:24px}.event-description ol{list-style:decimal;padding-left:24px}.event-description li{margin-bottom:8px}.event-description hr{margin:28px 0}.event-description a{text-decoration:underline}.preserve-lines{white-space:pre-line}.event-source-note{font-size:.9rem;color:#626b78}
@media(max-width:760px){.event-page-hero{grid-template-columns:minmax(0,1fr);gap:20px}.event-page-hero .event-cover{grid-row:1;width:80px;height:80px}}
@media(max-width:520px){.event-card-cover{width:64px;height:64px;margin-left:12px}}

.event-pagination{margin-top:28px}.event-pagination form{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.event-pagination select{min-width:80px;padding:10px 14px;border:1px solid #cbd5df;border-radius:8px;background:#fff;color:#172b4d;font:inherit;cursor:pointer}.event-pagination select:focus-visible{outline:2px solid #173f38;outline-offset:3px}.event-pagination [hidden]{display:none}

/* Resources: shared reading layout for both languages and archived articles. */
.resource-content { overflow-wrap:anywhere; }
.resource-content .breadcrumbs { display:flex; flex-wrap:wrap; gap:6px 10px; max-width:var(--max); margin:0 auto; padding:24px 28px 0; color:var(--muted); font-size:.82rem; line-height:1.6; }
.resource-content .breadcrumbs > * { min-width:0; }
.resource-content .breadcrumbs a:hover { color:var(--blue); text-decoration:underline; }
.resource-content .section { padding-top:56px; padding-bottom:64px; }
.resource-content .page-hero { min-height:0; padding-top:40px; padding-bottom:16px; }
.resource-content .page-hero h1 { font-size:clamp(2.1rem,4vw,3.5rem); line-height:1.14; overflow-wrap:anywhere; }
.resource-content .page-hero .page-hero-media { display:none; }
.resource-content .article-body { padding-top:40px; }
.resource-content .content-narrow { width:100%; max-width:760px; margin-inline:auto; font-size:1.0625rem; line-height:1.8; }
.resource-content .article-body h1 { margin:12px 0 24px; font-size:clamp(2rem,4vw,3.3rem); line-height:1.16; letter-spacing:-.035em; overflow-wrap:anywhere; text-wrap:balance; }
.resource-content .article-body h2 { margin:40px 0 16px; font-size:clamp(1.4rem,2.6vw,1.85rem); line-height:1.3; letter-spacing:-.02em; overflow-wrap:anywhere; }
.resource-content .article-body h3 { margin:28px 0 12px; font-size:1.25rem; line-height:1.4; overflow-wrap:anywhere; }
.resource-content .article-body p { margin:0 0 20px; }
.resource-content .article-body .eyebrow { margin-bottom:12px; font-size:.75rem; }
.resource-content .article-body .lead { margin-bottom:28px; color:var(--muted); font-size:clamp(1.08rem,2vw,1.25rem); line-height:1.65; }
.resource-content .article-body ul { list-style:disc; padding-left:1.5em; margin:20px 0; }
.resource-content .article-body ol { list-style:decimal; padding-left:1.5em; margin:20px 0; }
.resource-content .article-body li { padding-left:.25em; margin:8px 0; }
.resource-content .article-body blockquote { border-left:3px solid var(--teal); margin:28px 0; padding:18px 24px; background:var(--soft); }
.resource-content .article-body a:not(.button), .resource-content .article-source a { color:var(--blue); text-decoration:underline; text-underline-offset:3px; }
.resource-content .article-body img { display:block; max-width:100%; height:auto; border-radius:14px; }
.resource-content .article-body iframe, .resource-content .article-body video { max-width:100%; }
.resource-content .article-body pre { max-width:100%; overflow-x:auto; padding:16px; background:var(--soft); }
.resource-content .article-body table { display:block; max-width:100%; overflow-x:auto; }
.resource-content .article-body th, .resource-content .article-body td { padding:12px; border:1px solid var(--line); }
.resource-content .article-body .notice { margin-top:32px; padding:18px 20px; border-left:3px solid var(--teal); border-radius:0 10px 10px 0; background:var(--soft); font-size:.9rem; line-height:1.65; color:var(--muted); }
.resource-content .button-row { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.resource-content .button-row .button { max-width:100%; }
.resource-content .section.soft { background:var(--soft); border-radius:20px; }
.resource-content .section-heading { margin-bottom:28px; }
.resource-content .section-heading h2 { font-size:clamp(1.6rem,3vw,2.2rem); line-height:1.25; overflow-wrap:anywhere; }
.resource-content .card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; }
.resource-content .card { min-width:0; background:var(--surface); }
.resource-content .article-card { display:flex; flex-direction:column; }
.resource-content .card h3 { margin:0 0 14px; font-size:1.35rem; line-height:1.35; letter-spacing:-.02em; overflow-wrap:anywhere; }
.resource-content .card h3 a:hover { color:var(--blue); }
.resource-content .card p { margin-bottom:20px; line-height:1.65; color:var(--muted); }
.resource-content .card .eyebrow { font-size:.68rem; line-height:1.6; margin-bottom:12px; }
.resource-content .article-card > .text-link { margin-top:auto; padding-top:8px; }
.resource-content .article-card-image { display:block; margin:0 0 20px; overflow:hidden; border-radius:10px; background:var(--soft); }
.resource-content .article-card-image img { width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; }
.resource-content .article-figure { margin:32px 0 36px; }
.resource-content .article-figure img { width:100%; }
.resource-content .article-figure figcaption { padding-top:12px; color:var(--muted); font-size:.8rem; line-height:1.6; }
.resource-content .article-body .article-meta { margin:4px 0; color:var(--muted); font-size:.85rem; line-height:1.6; }
.resource-content .article-source { margin-top:40px; border-top:1px solid var(--line); padding-top:24px; font-size:.95rem; }
.resource-content .article-source p { color:var(--muted); margin-bottom:10px; }
.resource-content .article-source a { font-weight:750; }
.resource-content .article-back { max-width:816px; padding-top:0; }
@media(max-width:1000px) {
    .resource-content .card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:640px) {
    .resource-content .breadcrumbs { padding:20px 20px 0; font-size:.75rem; }
    .resource-content .section { padding:36px 20px 44px; }
    .resource-content .article-body { padding-top:28px; }
    .resource-content .content-narrow { font-size:1rem; line-height:1.75; }
    .resource-content .article-body h2 { margin-top:32px; }
    .resource-content .card-grid { grid-template-columns:minmax(0,1fr); }
    .resource-content .card { padding:22px; }
    .resource-content .card h3 { font-size:1.3rem; }
    .resource-content .article-figure { margin:26px 0; }
    .resource-content .section.soft { border-radius:0; }
    .resource-content .article-back { padding-top:0; }
}

/* Keep the language switch and menu inside narrow phone screens. */
@media(max-width:380px) {
    .header-inner { gap:8px; }
    .header-inner .brand { gap:6px; }
    .header-inner .brand-mark { width:36px; height:36px; flex-shrink:0; }
    .header-inner .brand strong { font-size:.82rem; }
    .header-inner .menu-button { gap:5px; padding-inline:8px; font-size:.82rem; }
}

/* Full press publications: preserve portrait photos and readable long quotations. */
.resource-content .press-article .article-header { margin-bottom:28px; }
.resource-content .press-article h1 { font-size:clamp(1.85rem,3.6vw,2.9rem); }
.resource-content .article-body .article-archive-note { margin:20px 0 0; padding:12px 16px; border-radius:8px; background:var(--soft); color:var(--muted); font-size:.82rem; line-height:1.6; }
.resource-content .press-article .article-figure img { max-height:820px; object-fit:contain; }
.resource-content .article-body blockquote p:last-child { margin-bottom:0; }
@media(max-width:640px) {
    .resource-content .article-body blockquote { padding:16px 18px; }
}

/* Press on About and separate community/event galleries. */
.about-press-grid,.album-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.about-press-grid .press-card { display:flex; flex-direction:column; min-width:0; background:var(--surface); overflow-wrap:anywhere; }
.about-press-grid .article-card-image { display:block; margin-bottom:20px; }
.about-press-grid .article-card-image img { display:block; width:100%; height:210px; object-fit:cover; border-radius:12px; }
.about-press-grid h3,.album-details h3 { margin:0 0 14px; font-size:1.35rem; line-height:1.35; letter-spacing:-.02em; overflow-wrap:anywhere; }
.about-press-grid p { margin:0 0 20px; line-height:1.65; color:var(--muted); }
.about-press-grid .eyebrow { font-size:.68rem; line-height:1.6; margin-bottom:12px; }
.about-press-grid .text-link,.album-details .text-link { margin-top:auto; padding-top:8px; }
.gallery-page { overflow-wrap:anywhere; }
.gallery-page .simple-hero h1 { font-size:clamp(2rem,4vw,3.5rem); line-height:1.16; }
.gallery-navigation,.gallery-pagination { display:flex; flex-wrap:wrap; align-items:center; gap:16px; }
.gallery-navigation { margin-top:24px; }
.gallery-pagination { margin-top:32px; }
.gallery-section { padding-top:36px; padding-bottom:48px; scroll-margin-top:100px; }
.album-card { min-width:0; border:1px solid var(--line); border-radius:18px; overflow:hidden; background:var(--surface); display:flex; flex-direction:column; }
.album-cover { display:flex; aspect-ratio:16/10; background:var(--soft); }
.album-cover img { width:100%; height:100%; object-fit:cover; }
.album-placeholder { display:flex; align-items:center; justify-content:center; padding:32px; width:100%; text-align:center; color:var(--muted); font-size:.95rem; }
.album-details { display:flex; flex-direction:column; flex:1; padding:24px; }
.album-details p { margin:0 0 14px; color:var(--muted); font-size:.9rem; }
.album-details .eyebrow { font-size:.72rem; }
.gallery-empty { padding:24px; background:var(--soft); border-radius:12px; }
.gallery-grid > * { min-width:0; overflow-wrap:anywhere; }
.gallery-admin { max-width:1200px; min-width:0; margin:auto; overflow-wrap:anywhere; }
.gallery-admin h1 { font-size:clamp(1.8rem,3vw,2.6rem); line-height:1.2; margin:0 0 18px; }
.gallery-admin h2 { font-size:1.4rem; line-height:1.35; margin:0 0 16px; }
.gallery-admin > p,.gallery-upload > p { margin-bottom:20px; color:var(--muted); line-height:1.6; }
.gallery-filter { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin:24px 0; }
.gallery-filter select { flex:1 1 280px; min-width:0; max-width:100%; padding:12px; background:white; border:1px solid var(--line); border-radius:8px; font:inherit; }
.gallery-upload { margin:28px 0 36px; padding:24px; border:1px solid var(--line); background:var(--soft); border-radius:16px; }
.gallery-admin .admin-form-grid { margin:0; }
.gallery-admin label,.gallery-admin input,.gallery-admin select { min-width:0; max-width:100%; }
.gallery-admin input[type=file] { width:100%; }
.gallery-admin .gallery-grid article { padding:20px; background:white; border:1px solid var(--line); border-radius:16px; }
.gallery-admin .photo-album-label { margin:14px 0; color:var(--muted); font-size:.85rem; }
.gallery-admin .text-button { margin-top:16px; }
.gallery-count { color:var(--muted); font-weight:400; }
@media(max-width:1000px) { .about-press-grid,.album-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:640px) {
    .about-press-grid,.album-grid { grid-template-columns:minmax(0,1fr); }
    .gallery-page .simple-hero { padding:40px 20px 16px; }
    .gallery-upload { padding:18px; }
    .gallery-admin .admin-form-grid { grid-template-columns:minmax(0,1fr); }
    .gallery-filter { align-items:stretch; }
    .gallery-filter label { width:100%; }
}
.gallery-page .simple-hero .gallery-navigation { justify-content:center; }
.gallery-admin { padding:32px; }
@media(max-width:640px) { .gallery-admin { padding:24px 18px; } }
.gallery-admin label:has(input[type=checkbox]) { display:flex; align-items:center; gap:8px; }
