/* CMS fields inside the approved layout. Shared styles.css/website.css/subpages.css remain byte-preserved. */
.brand-name{max-width:24ch;overflow-wrap:anywhere;white-space:normal}
.cms-copy{overflow-wrap:anywhere}.cms-copy p{font-size:15px;line-height:1.8;margin-block:18px}
.cms-photo{max-width:960px}.cms-content-image{width:100%;height:auto;max-height:720px;object-fit:contain}
.cms-card-image{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px;margin-bottom:22px}
.hero-content h1{overflow-wrap:anywhere}.home-redesign .hero-visual{height:auto;min-height:clamp(410px,41.5vw,620px)}
.home-redesign .cms-community-no-photo{grid-template-columns:1fr}
.language-switch{display:flex;gap:12px}.cms-preview-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;padding:12px 20px;background:var(--navy);color:white;font:600 13px Manrope,sans-serif}
.cms-preview-bar a{text-decoration:underline;text-underline-offset:3px;padding:5px}.cms-preview-bar strong{border:1px solid currentColor;border-radius:4px;padding:5px 9px}
@media(max-width:600px){.cms-preview-bar{gap:6px;font-size:12px}.cms-copy p{font-size:14px}.brand-name{max-width:18ch}.home-redesign .hero-visual{min-height:470px}}
.home-supplementary{max-width:1180px}.cms-copy ul,.cms-copy ol{padding-left:1.5em;line-height:1.8}.cms-copy a,.home-community-copy a:not(.button){text-decoration:underline;overflow-wrap:anywhere}
.home-community-photo>a{display:block;width:100%;height:100%}
.cms-lightbox{position:fixed;inset:0;margin:0;padding:64px 16px 24px;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;background:transparent;color:white}
.cms-lightbox[open]{display:flex;align-items:center;justify-content:center}.cms-lightbox::backdrop{background:rgb(0 0 0 / .9)}
.cms-lightbox>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.cms-lightbox-close{position:fixed;right:max(16px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top));display:grid;place-items:center;width:48px;height:48px;background:#152238;color:white;border:2px solid white;border-radius:50%;font:32px/1 sans-serif;cursor:pointer;z-index:1}
.cms-lightbox-close:focus-visible{outline:3px solid #20c7a5;outline-offset:4px}.cms-lightbox-open{overflow:hidden}
/* One native article link covers the existing card, including its unchanged padding. */
.cms-news-card{position:relative}.cms-news-card-link::after{content:"";position:absolute;inset:0;border-radius:6px;cursor:pointer}
.cms-news-card-link:focus-visible{outline:none}.cms-news-card-link:focus-visible::after{outline:3px solid #eb6f22;outline-offset:5px}
.cms-news-card:hover .text-link{border-color:var(--navy)}

.cms-language-note{font-size:.85rem;color:var(--navy-muted);padding:8px 16px;overflow-wrap:anywhere}.language-switch{flex-wrap:wrap}

.cms-board-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:24px;margin-block:24px}.cms-board-card{padding:20px;border:1px solid var(--line);border-radius:8px;overflow-wrap:anywhere}.cms-board-card img{width:100%;height:auto;max-height:280px;object-fit:contain}.cms-board-card h2{font-size:1.25rem}

.cms-calendar-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:1rem}.cms-calendar-list article{padding:1.25rem;border:1px solid #ddd;border-radius:.75rem;overflow-wrap:anywhere}.cms-calendar-list h3{font-size:1.1rem}.cms-calendar-list time{font-variant-numeric:tabular-nums}

.cms-gallery-index,.cms-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1.25rem;margin-block:1.5rem}.cms-gallery-index a{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border:1px solid var(--line);border-radius:8px}.cms-gallery-image{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.cms-gallery figure{margin:0;min-width:0}.cms-gallery a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.cms-gallery figcaption{padding-block:.5rem;overflow-wrap:anywhere}.cms-gallery{scroll-margin-top:6rem}.cms-gallery h2{overflow-wrap:anywhere}

/* Website typography tokens only; all calendar layout/cards/responsiveness are shared. */
.cms-public-calendar{--tp-navy:var(--navy);--tp-text:var(--navy);--tp-primary:var(--navy);--tp-accent:var(--accent);--tp-border:var(--line);--tp-radius-input:.5rem;--tp-surface:#fff;--tp-radius-modal:.5rem;--tp-shadow-overlay:0 .25rem .75rem #0002}
.cms-public-calendar [hidden]{display:none!important}.cms-public-calendar .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--line);border-radius:.4rem;padding:.35rem .6rem;font:inherit;text-decoration:none}.cms-public-calendar .btn-primary{background:var(--navy);color:white}.cms-public-calendar a:focus-visible,.cms-public-calendar summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.cms-public-calendar .central-calendar-day-events .central-calendar-event:nth-child(n+3){display:block}.cms-public-calendar .calendar-holiday-range{font-size:.8rem;color:var(--navy-muted)}

/* Compact sponsor strip: equal 3:2 logo areas, no homepage descriptions. */
.home-redesign .home-sponsors-premium{padding:12px 0;background:#fff;border-bottom:1px solid var(--line)}
.home-sponsors-premium>.home-container{position:relative}
.sponsor-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;margin-bottom:6px}
.sponsor-section-heading h2{font-size:1rem;margin:0}
.sponsor-all-link{font-size:.8125rem;text-decoration:underline;text-underline-offset:4px;white-space:nowrap;color:var(--navy-muted)}
.sponsor-strip-row{display:flex;align-items:center;gap:24px}
.sponsor-main{flex:0 0 auto;max-width:45%;text-align:center}
.sponsor-main-logos{display:flex;gap:12px;justify-content:center}
.home-redesign .home-sponsors-premium .sponsor-main .sponsor-card{width:144px;max-width:100%;min-width:0;flex:0 1 144px}
.sponsor-main-label{display:block;font-size:.6875rem;line-height:1.3;color:var(--navy-muted);margin-top:3px}
[data-sponsor-slider]{--sponsor-columns:4;--sponsor-gap:16px;flex:1;min-width:0}
.sponsor-slider-viewport{overflow-x:auto;overscroll-behavior-x:contain}
[data-sponsor-slider][data-enhanced] .sponsor-slider-viewport{overflow:hidden;touch-action:pan-y}
.sponsor-slider-track{display:flex;gap:var(--sponsor-gap);align-items:center}
.home-redesign .home-sponsors-premium .sponsor-slider-track>.sponsor-card{flex:0 0 calc((100% - (var(--sponsor-columns) - 1)*var(--sponsor-gap))/var(--sponsor-columns));min-width:0}
.home-redesign .home-sponsors-premium .sponsor-card{margin:0;padding:0;border:0;background:transparent;box-shadow:none;display:flex;justify-content:center}
.sponsor-logo-area{display:grid;place-items:center;min-width:0}
.home-redesign .home-sponsors-premium .sponsor-company{display:flex;align-items:center;justify-content:center;width:100%;height:auto}
.home-redesign .home-sponsors-premium .sponsor-company>.sponsor-logo-area{position:static;display:grid;width:min(100%,144px);height:auto;aspect-ratio:3/2;padding:8px;margin:0;background:#fafbfc;border:1px solid var(--line);border-radius:6px;box-sizing:border-box;overflow:hidden;clip-path:none;white-space:normal;flex:none}
.home-redesign .home-sponsors-premium .sponsor-logo{display:block;width:100%;height:100%;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center;filter:none}
.home-redesign .home-sponsors-premium .sponsor-company>.sponsor-name{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sponsor-tier-main{padding:20px;border:1px solid var(--line);border-radius:12px;background:#faf8f2;margin-bottom:28px}
.sponsor-tier-main .sponsor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:24px;max-width:880px;margin-inline:auto}
.sponsor-tier-main .sponsor-logo-area{width:100%;aspect-ratio:3/2;padding:16px;box-sizing:border-box}
.sponsor-tier-main .sponsor-logo{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}
.sponsor-slider-controls{position:absolute;right:132px;top:0;display:flex;justify-content:flex-end;gap:2px;margin:0}
.sponsor-slider-controls[hidden]{display:none}
.sponsor-slider-controls button{width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--navy-muted);font:inherit;cursor:pointer}
.sponsor-slider-controls button:hover{color:var(--navy);background:#f7f8fa}
.home-sponsors-premium a:focus-visible,.sponsor-slider-controls button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.sponsor-slider-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1050px){[data-sponsor-slider]{--sponsor-columns:3}.home-redesign .home-sponsors-premium .sponsor-main .sponsor-card{width:110px}}
@media(max-width:760px){[data-sponsor-slider]{--sponsor-columns:2;--sponsor-gap:12px;width:100%}.sponsor-strip-row{flex-direction:column;gap:12px}.sponsor-main{max-width:100%;width:100%}.home-redesign .home-sponsors-premium .sponsor-main .sponsor-card{width:120px}.home-redesign .home-sponsors-premium .sponsor-company>.sponsor-logo-area{width:min(100%,120px)}.sponsor-slider-controls{position:static;margin-top:4px;justify-content:center}.sponsor-section-heading h2{max-width:18ch}}
@media(max-width:360px){[data-sponsor-slider]{--sponsor-columns:1}.sponsor-section-heading{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.sponsor-slider-track{transition:none!important}}

/* Same compact preview geometry with and without a news image. */
.home-redesign .home-news .home-news-visual{width:100%;height:auto;aspect-ratio:16/9;flex:none;background:#f2f4f6}
.home-redesign .home-news .home-news-visual img{display:block;width:100%;height:100%;object-fit:cover}
.home-redesign .home-news-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#f5f7f8,#e9eef1)}
.home-news-placeholder-mark{font-size:clamp(2rem,4vw,3.5rem);line-height:1;color:var(--navy);opacity:.18}
/* Inset news imagery reuses the existing card, derivative sizes and full-card link. */
.home-redesign .home-news .home-news-link{padding:16px;gap:0;height:100%;box-sizing:border-box}
.home-redesign .home-news .home-news-visual{width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:8px}
.home-redesign .home-news .home-news-copy{padding:16px 0 0;flex:1;display:flex;flex-direction:column}
.home-redesign .home-news .home-card-arrow{margin-top:auto;padding-top:12px;font-size:.875rem}
.home-redesign .home-news .home-news-card{height:100%}
.home-redesign .home-sponsors-premium .sponsor-main{background:#f7f8fa;border:1px solid #e2e6eb;border-radius:10px;padding:4px 12px}
.home-redesign .home-sponsors-premium .sponsor-main-label{font-weight:650;letter-spacing:.03em;color:var(--navy)}
.sponsor-tier{margin-block:32px}.sponsor-tier>h2{padding-bottom:12px;border-bottom:1px solid #e2e6eb}
.sponsor-grid .sponsor-card{padding:24px;display:flex;flex-direction:column;scroll-margin-top:16px}
.sponsor-grid .sponsor-card:target{outline:2px solid var(--accent);outline-offset:4px;background:#f7f8fa}
.sponsor-grid .sponsor-card:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.sponsor-website{margin-top:auto;padding-top:12px;display:flex;flex-direction:column;gap:4px;font-size:.9375rem}
.sponsor-website>span{font-weight:650}.sponsor-website a{overflow-wrap:anywhere;text-decoration:underline}
.sponsor-tier-main{padding:0;border:0;background:transparent}.sponsor-grid .sponsor-logo-area{width:min(100%,240px);aspect-ratio:3/2;margin-inline:auto}

/* One archive and embedded gallery presentation; responsive derivatives stay lazy. */
.cms-gallery-years{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.5rem 0}.cms-gallery-years a{padding:.5rem .9rem;border:1px solid var(--line);border-radius:2rem}.cms-gallery-years a{color:var(--navy);text-decoration:none}.cms-gallery-years a:hover{border-color:var(--navy);text-decoration:underline;text-underline-offset:.2em}.cms-gallery-years a[aria-current]{background:var(--club-primary);color:var(--club-on-primary);border-color:var(--club-primary);font-weight:700}.cms-gallery-card{color:inherit;text-decoration:none;overflow:hidden}.cms-gallery-card h3,.cms-gallery-card p{margin:0}.cms-gallery-index{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),320px));justify-content:start}@media(max-width:600px){.cms-gallery-index{grid-template-columns:minmax(0,1fr)}}.cms-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))}.cms-gallery-description{max-width:70ch;white-space:normal}.cms-gallery-back{display:inline-block;margin-block:1rem}.cms-lightbox-previous,.cms-lightbox-next{position:fixed;top:50%;width:48px;height:48px;border:1px solid white;border-radius:50%;background:#152238;color:white;font-size:2rem;cursor:pointer}.cms-lightbox-previous{left:12px}.cms-lightbox-next{right:12px}.cms-lightbox-caption{position:fixed;bottom:12px;left:12px;right:12px;text-align:center;margin:0;background:#152238bb;padding:.5rem}.cms-lightbox button:focus-visible{outline:3px solid #20c7a5;outline-offset:3px}.cms-lightbox>img{max-height:calc(100dvh - 150px)}
