
:root{--ink:#102f50;--ink2:#354b65;--red:#c8102e;--red-dark:#a40d26;--blue:#24549a;--blue-dark:#183f76;--paper:#f6f8fc;--white:#fff;--line:#dce3ed;--muted:#596779;--pale:#eff4fb;--soft-red:#fff1f3;--header-height:96px;--max:1180px;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:var(--sans);line-height:1.6;font-size:16px}body.modal-open{overflow:hidden}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.1}h1{font-size:clamp(2.8rem,5.1vw,4.55rem);margin-bottom:25px}h2{font-size:clamp(2rem,3.2vw,2.85rem);margin-bottom:20px}h3{font-size:1.2rem;line-height:1.35;letter-spacing:-.02em}p{margin-bottom:20px}img{display:block;max-width:100%}[hidden]{display:none!important}.wrap{width:min(var(--max),calc(100% - 64px));margin:auto}.section{padding:72px 0}.eyebrow{display:block;font-size:.72rem;font-weight:750;letter-spacing:.15em;text-transform:uppercase;color:var(--red);margin-bottom:18px}.lead{font-size:1.13rem;line-height:1.75;color:var(--ink2);max-width:650px}.small{font-size:.85rem;color:var(--muted)}.muted{color:var(--muted)}.paper{background:var(--paper)}.soft{background:var(--pale)}.rule{height:1px;background:var(--line);margin:32px 0}.page{animation:enter .25s ease}.page:focus{outline:none}@keyframes enter{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.skip{position:fixed;top:-70px;left:20px;z-index:100;background:white;padding:12px}.skip:focus{top:8px}.preview-bar{background:var(--ink);color:#f3f5f7;min-height:34px;padding:7px 0;font-size:.72rem}.preview-inner{display:flex;justify-content:space-between;align-items:center;gap:16px}.preview-bar strong{letter-spacing:.08em;text-transform:uppercase}.preview-bar button{background:none;border:0;color:inherit;padding:0;text-decoration:underline;text-underline-offset:3px;font-size:inherit}.header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:relative;z-index:20}.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}.wordmark{font-size:1.33rem;font-weight:750;line-height:1.1;letter-spacing:.05em}.nav{display:flex;align-items:center;gap:25px}.nav a{font-size:.84rem;font-weight:600;text-decoration:none;padding:9px 0;position:relative;white-space:nowrap}.nav a[aria-current=page]:not(.button){color:var(--red)}.nav a[aria-current=page]:not(.button):after{content:'';height:2px;background:var(--red);position:absolute;bottom:2px;left:0;right:0}.nav .button{padding:10px 17px}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);padding:9px 12px;color:var(--ink);border-radius:3px}.button{display:inline-flex;gap:12px;justify-content:center;align-items:center;border:1px solid var(--red);background:var(--red);color:white;padding:12px 20px;font-size:.9rem;font-weight:650;text-decoration:none;min-height:48px;border-radius:3px;transition:background .15s,transform .15s}.button:hover{background:var(--red-dark);border-color:var(--red-dark);transform:translateY(-1px)}.button.secondary{background:transparent;color:var(--ink);border-color:#9bafcc}.button.secondary:hover{background:#edf3fc}.button.light{background:white;color:var(--ink);border-color:white}.button.text{border:0;background:none;color:var(--ink);padding-left:0;padding-right:0}.actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.text-link{font-weight:650;font-size:.9rem;text-decoration:none;border-bottom:1px solid #9bafcc;padding-bottom:4px}.text-link:hover{color:var(--red);border-color:var(--red)}.hero{background:var(--paper);padding:62px 0 58px}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}.hero h1{max-width:650px}.hero .lead{font-size:1.08rem;max-width:470px;margin-bottom:28px}.photo{position:relative;overflow:hidden;background:#edf2f8;isolation:isolate}.photo:before{content:'PAMS DMV · Society photograph';position:absolute;inset:0;display:grid;place-items:center;padding:30px;color:#354b65;font-size:.95rem;text-align:center;z-index:-1;background:linear-gradient(140deg,#f4f7fc,#e3eaf5)}.photo img{width:100%;height:100%;object-fit:cover;position:relative}.hero-photo{height:382px;border-radius:2px}.hero-figure{margin:0;position:relative}.hero-figure:before{content:'';position:absolute;width:68px;height:5px;top:-18px;left:0;background:var(--red)}.hero-figure figcaption{font-size:.76rem;color:var(--muted);margin-top:12px}.place-strip{border-bottom:1px solid var(--line);padding:19px 0;font-size:.8rem}.place-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px}.place-strip span:first-child{font-weight:650}.places{letter-spacing:.08em;font-size:.72rem;text-transform:uppercase}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:29px}.section-head h2{margin:0}.section-head .text-link{flex-shrink:0}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.feature{padding:8px 27px 4px 0;border-right:1px solid var(--line)}.feature:last-child{border:0;padding-right:0}.feature-number{font-family:var(--serif);font-size:2rem;color:var(--red);display:block;margin-bottom:12px}.feature h3{margin-bottom:10px}.feature p{font-size:.94rem;color:var(--ink2);margin:0;max-width:300px}.card{background:white;border:1px solid var(--line);border-radius:3px;overflow:hidden;display:flex;flex-direction:column}.card-media{height:245px}.card-copy{padding:27px;display:flex;flex-direction:column;flex:1}.card-copy h3{font-family:var(--serif);font-weight:400;font-size:1.65rem;margin-bottom:13px}.card-copy p{color:var(--muted);font-size:.94rem}.card-copy .text-link{align-self:flex-start;margin-top:auto}.meta{font-size:.69rem;letter-spacing:.1em;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:12px}.band{background:var(--ink);color:#fff;padding:46px 0}.band .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.band h2{font-size:2.2rem;margin-bottom:10px}.band p{margin:0;color:#e3ecf8}.page-top{padding:55px 0 45px;background:var(--paper);border-bottom:1px solid var(--line)}.page-top h1{font-size:clamp(2.65rem,4.5vw,3.8rem);margin-bottom:19px;max-width:850px}.page-top .lead{margin:0}.crumb{font-size:.76rem;color:var(--muted);margin-bottom:22px}.crumb a{text-decoration:none}.split{display:grid;grid-template-columns:1.6fr 1fr;gap:72px}.sidebar{padding:28px;background:var(--paper);border-top:3px solid var(--red);align-self:start}.sidebar h3{font-family:var(--serif);font-size:1.55rem;font-weight:400}.sidebar p{font-size:.94rem}.sidebar p:last-child{margin-bottom:0}.prose{max-width:760px}.prose p{color:var(--ink2)}.leadership{border-top:1px solid var(--line)}.leader{padding:21px 0;border-bottom:1px solid var(--line)}.leader summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer}.leader summary::-webkit-details-marker{display:none}.leader summary:after{content:'+';font-size:1.6rem;color:var(--red);line-height:1}.leader[open] summary:after{content:'−'}.leader strong{display:block;font-weight:650}.leader span{font-size:.83rem;color:var(--muted)}.leader p{font-size:.93rem;margin:15px 35px 0 0;color:var(--ink2)}.rates{width:100%;border-collapse:collapse;margin-top:25px}.rates th{text-align:left;padding:12px 15px;border-bottom:2px solid var(--ink);font-size:.73rem;text-transform:uppercase;letter-spacing:.08em}.rates td{padding:18px 15px;border-bottom:1px solid var(--line);vertical-align:top}.rates td:first-child{padding-left:0}.rates th:first-child{padding-left:0}.rates th:last-child,.rates td:last-child{text-align:right;white-space:nowrap;font-weight:650}.rates small{display:block;max-width:460px;font-size:.82rem;color:var(--muted);margin-top:5px;font-weight:400}.rates details summary{cursor:pointer}.pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}.pill{border:1px solid var(--line);background:white;padding:9px 16px;color:var(--ink);border-radius:24px;font-size:.87rem;font-weight:600}.pill[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.notice{padding:19px 22px;background:var(--paper);border-left:3px solid var(--blue);color:var(--ink2);font-size:.9rem;margin-bottom:24px}.notice strong{display:block;color:var(--ink);margin-bottom:4px}.review-strip{background:#f0f5fc;border:1px dashed #a5b8d2;padding:16px 20px;font-size:.84rem;margin-bottom:30px;display:flex;gap:18px;align-items:center;justify-content:space-between}.review-strip p{margin:0;max-width:760px}.review-strip button{flex-shrink:0}.empty{padding:50px;border:1px solid var(--line);background:var(--paper);text-align:center}.empty h3{font-family:var(--serif);font-weight:400;font-size:1.8rem}.empty p{max-width:650px;margin:0 auto;color:var(--muted)}.event-hero{height:430px;max-width:890px;margin:0 0 35px;border-radius:3px}.event-hero img{object-position:center 32%}.event-meta{display:flex;gap:26px;flex-wrap:wrap;color:var(--ink2);font-size:.9rem;margin:25px 0 0}.event-meta span{padding-right:26px;border-right:1px solid #c8d4e5}.event-meta span:last-child{border:0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0 40px}.gallery button{border:0;padding:0;background:transparent;position:relative;text-align:left}.gallery .photo{height:220px;border-radius:3px}.gallery button span{display:block;color:var(--muted);font-size:.77rem;margin-top:8px}.gallery button:after{content:'↗';position:absolute;right:10px;top:10px;background:rgba(255,255,255,.95);border-radius:50%;width:28px;height:28px;text-align:center;line-height:28px;color:var(--ink)}.video-shell{background:var(--ink);color:white;aspect-ratio:16/9;display:grid;place-items:center;text-align:center;padding:25px;border-radius:3px;margin:20px 0 12px}.video-shell h3{font-family:var(--serif);font-weight:400;font-size:1.9rem;max-width:490px;margin:12px auto 15px}.video-shell p{color:#e3ecf8;font-size:.85rem}.video-shell iframe{width:100%;height:100%;border:0}.video-shell.loaded{padding:0;display:block}.play-dot{font-size:1.5rem;border:1px solid #b4c5de;border-radius:50%;width:53px;height:53px;display:grid;place-items:center;margin:auto;padding-left:3px}.news-row{display:grid;grid-template-columns:230px 1fr;gap:30px;padding:30px 0;border-bottom:1px solid var(--line)}.news-row:first-child{padding-top:0}.news-row .photo{height:170px;border-radius:3px}.news-row h3{font-family:var(--serif);font-size:1.65rem;font-weight:400;margin:8px 0 13px}.news-row p{color:var(--muted);font-size:.94rem}.news-row .meta{margin:0}.support-card{padding:30px;border:1px solid var(--line);background:white}.support-card h3{font-family:var(--serif);font-size:1.6rem;font-weight:400}.support-card p{color:var(--muted);font-size:.95rem}.form-card{max-width:620px;padding:32px;border:1px solid var(--line);border-top:3px solid var(--red);background:white;border-radius:3px}.field{display:block;margin-bottom:20px;font-size:.88rem;font-weight:600}.field input,.field select,.field textarea{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #92a5bf;border-radius:3px;background:white;color:var(--ink);font-weight:400;min-width:0}.field input:focus,.field select:focus{border-color:var(--ink)}.field input[type=number]{appearance:textfield}.field small{display:block;font-weight:400;color:var(--muted);font-size:.76rem;margin-top:6px}.amounts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0 20px}.amounts button{background:white;color:var(--ink);padding:12px 5px;font-size:1.1rem;border:1px solid #9bafcc;border-radius:3px;font-weight:650}.amounts button[aria-pressed=true]{background:var(--soft-red);border:2px solid var(--red);color:var(--red);padding:11px 4px}.form-note{font-size:.8rem;color:var(--muted);margin:18px 0 0}.form-card .button{width:100%}.success{border-top:3px solid #42755e;background:#eef5f0;padding:28px}.success h3{font-size:1.35rem}.success p{color:var(--ink2)}.summary-list{margin:0 0 25px}.summary-list div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:12px 0}.summary-list dt{color:var(--muted);font-size:.9rem}.summary-list dd{margin:0;text-align:right;font-weight:600;overflow-wrap:anywhere}.contact-panel{padding:35px;border:1px solid var(--line);background:var(--paper)}.contact-panel .email{font-family:var(--serif);font-size:clamp(1.6rem,4vw,2.35rem);overflow-wrap:anywhere;text-decoration:none;letter-spacing:-.02em}.footer{background:#f6f8fc;border-top:1px solid var(--line);padding:44px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px}.footer h3{font-size:.85rem;margin-bottom:15px}.footer p{font-size:.85rem;color:var(--muted);max-width:340px}.footer a{display:block;font-size:.84rem;margin-bottom:8px;text-decoration:none}.footer a:hover{text-decoration:underline}.footer-bottom{margin-top:32px;padding-top:18px;border-top:1px solid #dce3ed;display:flex;justify-content:space-between;gap:20px;font-size:.72rem;color:var(--muted)}.footer-bottom button{background:none;border:0;padding:0;color:inherit;font-size:inherit;text-decoration:underline}.modal{border:0;border-radius:5px;padding:0;max-width:min(860px,calc(100% - 32px));max-height:90dvh;width:760px;color:var(--ink);box-shadow:0 18px 100px #061a2c55}.modal::backdrop{background:rgba(10,26,39,.73)}.modal-head{padding:22px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:25px;background:var(--paper);position:sticky;top:0;z-index:2}.modal-head h2{font-size:1.5rem;margin:0}.close{border:1px solid #92a5bf;color:var(--ink);border-radius:50%;width:35px;height:35px;background:white;flex-shrink:0;font-size:1.2rem;line-height:1}.modal-content{padding:28px}.modal-content h3{font-family:var(--serif);font-size:1.5rem;font-weight:400;margin:28px 0 12px}.modal-content h3:first-child{margin-top:0}.modal-content p,.modal-content li{font-size:.93rem;color:var(--ink2)}.modal-content li{margin-bottom:8px}.modal-content ul{padding-left:21px}.modal.gallery-modal{width:1000px;background:#102f50;color:white}.gallery-modal .modal-head{background:#102f50;border-color:#527092}.gallery-modal .close{background:#102f50;color:white;border-color:#9bb0cc}.large-photo{height:min(65vh,700px);display:flex;align-items:center;justify-content:center;background:#102f50;padding:0}.large-photo img{max-height:65vh;max-width:100%;width:auto;height:auto;object-fit:contain}.gallery-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 24px;font-size:.85rem}.gallery-controls button{border:1px solid #9bb0cc;background:transparent;color:white;border-radius:3px;padding:8px 15px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);padding:13px 22px;border-radius:3px;background:var(--ink);color:white;font-size:.9rem;box-shadow:0 5px 30px #0003;z-index:200;text-align:center}.media-error img{visibility:hidden}.video-caution{font-size:.8rem;color:var(--muted)}
@media(min-width:1500px){:root{--max:1240px}.hero-photo{height:420px}.hero-grid{gap:80px}}
@media(max-width:1110px){.nav{gap:17px}.nav a{font-size:.77rem}.header-inner{gap:18px}.hero-grid{gap:35px}h1{font-size:3.6rem}.split{gap:40px}.hero-photo{height:365px}}
@media(max-width:900px){.wrap{width:calc(100% - 40px)}.menu-toggle{display:block}.header-inner{height:82px}.nav{display:none;position:absolute;top:82px;left:0;right:0;background:white;padding:20px;box-shadow:0 12px 20px #122f4610;border-bottom:1px solid var(--line);align-items:stretch;gap:0}.nav.open{display:flex;flex-direction:column}.nav a{padding:13px;font-size:.95rem}.nav a[aria-current=page]:not(.button):after{display:none}.nav .button{margin-top:10px}.hero-grid{grid-template-columns:1fr 1fr;gap:25px}.hero h1{font-size:2.9rem}.hero-photo{height:335px}.hero{padding:45px 0}.hero .lead{font-size:1rem}.section{padding:50px 0}.grid3{gap:18px}.feature{padding-right:18px}.feature p{font-size:.88rem}.split{grid-template-columns:1fr;gap:35px}.sidebar{max-width:none}.footer-grid{gap:25px}.gallery .photo{height:190px}.card-media{height:210px}.section-head h2{font-size:2.2rem}}
@media(max-width:640px){.wrap{width:calc(100% - 36px)}.preview-bar{font-size:.64rem}.preview-inner{gap:12px}.preview-extra{display:none}.hero-grid{grid-template-columns:1fr;gap:40px}.hero{padding:37px 0}.hero h1{font-size:3.15rem;max-width:540px;letter-spacing:-.045em}.hero .lead{max-width:100%}.hero-photo{height:285px}.hero-figure:before{top:-13px}.place-strip .wrap{display:block}.places{margin-top:6px;display:block;font-size:.65rem;letter-spacing:.07em}.grid3,.grid2{grid-template-columns:1fr}.feature{border-right:0;border-bottom:1px solid var(--line);padding:5px 0 25px;display:grid;grid-template-columns:45px 1fr;column-gap:17px}.feature-number{grid-row:1/3}.feature h3{margin-bottom:7px}.feature p{grid-column:2;max-width:none;font-size:.92rem}.feature:last-child{padding-bottom:0}.section{padding:42px 0}.section-head{align-items:start;flex-direction:column;gap:18px}.card-media{height:235px}.card-copy{padding:24px}.band .wrap{flex-direction:column;align-items:start;gap:22px}.band h2{font-size:2rem}.page-top{padding:35px 0}.page-top h1{font-size:2.65rem}.page-top .lead{font-size:1rem}.event-meta{gap:10px;font-size:.78rem}.event-meta span{padding-right:12px}.event-hero{height:280px}.gallery{gap:9px;grid-template-columns:repeat(2,1fr)}.gallery .photo{height:175px}.gallery button span{font-size:.7rem}.gallery button:first-child{grid-column:span 2}.gallery button:first-child .photo{height:270px}.video-shell{min-height:255px;padding:20px;aspect-ratio:auto}.video-shell.loaded{aspect-ratio:16/9;min-height:0}.video-shell h3{font-size:1.5rem}.news-row{grid-template-columns:1fr;gap:20px}.news-row .photo{height:225px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}.footer-bottom{flex-direction:column;gap:10px}.form-card{padding:23px}.review-strip{display:block}.review-strip button{margin-top:14px}.rates td,.rates th{padding:15px 8px;font-size:.9rem}.rates small{font-size:.77rem}.rates td:first-child{width:78%}.empty{padding:30px 23px}.modal-head{padding:17px 20px}.modal-content{padding:22px}.contact-panel{padding:25px}.wordmark{font-size:1.2rem}.actions .button{font-size:.85rem}.gallery-controls{padding:15px;gap:10px}.gallery-controls button{padding:8px 10px}.large-photo{min-height:180px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
@media print{.preview-bar,.header,.footer,.review-strip,.button,.pills{display:none!important}.page{display:none!important}.page:not([hidden]){display:block!important}.section{padding:20px 0}.wrap{width:100%}.hero{padding:20px 0}.modal{display:none}.photo{break-inside:avoid}}

/* v02 palette retained — red / white with restrained blue accents; original logo artwork retained. */
.preview-bar{background:var(--blue-dark)}
.header-inner{height:var(--header-height)}
.hero{background:var(--white);border-bottom:1px solid var(--line)}
.hero-figure:before{width:88px;background:linear-gradient(to right,var(--red) 0 70%,var(--white) 70% 78%,var(--blue) 78% 100%)}
.button.secondary{color:var(--blue);border-color:#9bafcc}
.button.secondary:hover{background:var(--pale);border-color:var(--blue)}
.button.text,.text-link{color:var(--blue)}
.button.text:hover,.text-link:hover{color:var(--red)}
.button.light{color:var(--blue-dark)}
.pill[aria-pressed=true]{background:var(--blue);border-color:var(--blue)}
.feature:nth-child(2) .feature-number{color:var(--blue)}
.band{background:var(--ink)}
.footer{background:var(--paper)}
/* Shared horizontal branding and navigation on every page. */
.brand{display:flex;align-items:center;width:300px;max-width:100%;min-width:0;flex:0 1 300px;text-decoration:none}
.brand-logo{display:block;width:100%;height:auto;max-height:88px;object-fit:contain;object-position:left center}
.header-inner{gap:24px}
@media(max-width:1050px){
 .menu-toggle{display:block;flex-shrink:0}
 .nav{display:none;position:absolute;top:var(--header-height);left:0;right:0;background:white;padding:20px;box-shadow:0 12px 20px #122f4610;border-bottom:1px solid var(--line);align-items:stretch;gap:0}
 .nav.open{display:flex;flex-direction:column}
 .nav a{padding:13px;font-size:.95rem}
 .nav a[aria-current=page]:not(.button):after{display:none}
}
@media(max-width:900px){
 .header{--header-height:82px}
 .brand-logo{max-height:70px}
 .header-inner{gap:16px}
}
@media(max-width:380px){
 .header-inner{gap:10px}
 .menu-toggle{padding:9px 10px;font-size:.9rem}
}

/* v03 — photographs retain their full frame; controls remain outside the image. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero-carousel{min-width:0;touch-action:pan-y}
.hero-carousel .hero-photo{background:#e9eef6}
.hero-carousel .hero-photo img{object-fit:contain}
.carousel-controlbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;min-height:54px}
.carousel-controlbar button{min-width:40px;min-height:40px;border:1px solid #b7c5d9;border-radius:3px;background:white;color:var(--ink);font-size:1rem;padding:5px 9px}
.carousel-controlbar button:hover{background:var(--pale);border-color:var(--blue)}
.carousel-navigation{display:flex;align-items:center;gap:7px;flex-shrink:0}
#hero-count{font-size:.73rem;color:var(--muted);min-width:34px;text-align:center;font-variant-numeric:tabular-nums}
.carousel-dots{display:flex;flex:1;justify-content:center;flex-wrap:wrap;gap:0}
.carousel-dots button{border:0;background:transparent;min-width:24px;min-height:36px;padding:8px 6px;display:grid;place-items:center}
.carousel-dots button:before{content:'';display:block;width:7px;height:7px;border-radius:50%;background:#b7c5d9}
.carousel-dots button[aria-current=true]:before{background:var(--red);width:9px;height:9px}
#hero-toggle{font-size:.76rem;white-space:nowrap;flex-shrink:0;min-width:76px}
.hero-carousel figcaption{margin-top:8px;min-height:46px;line-height:1.5}
#hero-caption{display:block}
.carousel-event-link{display:inline-block;color:var(--blue);font-weight:650;text-decoration:none;margin-top:4px}
.carousel-event-link:hover{text-decoration:underline}
.gallery .photo{background:#e9eef6}
.gallery .photo img{object-fit:contain}
.gallery-caption{margin:0;padding:13px 24px 0;color:#e3ecf8;font-size:.86rem;text-align:center;line-height:1.5}
.gallery-summary{display:flex;align-items:baseline;gap:12px;justify-content:space-between;flex-wrap:wrap;margin-bottom:0}
.gallery-summary .photo-total{color:var(--blue);font-size:.77rem;white-space:nowrap;font-weight:650}
@media(max-width:1110px) and (min-width:641px){.carousel-controlbar{flex-wrap:wrap}.carousel-dots{order:3;flex-basis:100%;min-height:28px}.carousel-dots button{min-height:28px}.hero-carousel figcaption{margin-top:3px}}
@media(max-width:380px){.carousel-controlbar{flex-wrap:wrap}.carousel-dots{order:3;flex-basis:100%;min-height:28px}.carousel-dots button{min-height:28px}}
@media(max-width:640px){.gallery button:first-child{grid-column:auto}.gallery button:first-child .photo{height:175px}.gallery .photo{height:175px}.gallery-caption{padding:12px 16px 0}.hero-carousel figcaption{min-height:46px}}
@media print{.carousel-controlbar{display:none}}


/* v03 — original event photographs, fully visible at every image placement. */
.photo:before{content:""}
.photo.media-error:before{content:"Photograph unavailable"}
.photo img{object-fit:contain;object-position:center}
.hero-enlarge{display:block;position:relative;width:100%;height:100%;padding:0;border:0;background:transparent;color:var(--ink)}
.enlarge-mark{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.94);font-size:1rem}
.card-photo-preview{display:grid;grid-template-columns:repeat(var(--preview-count),minmax(0,1fr));gap:7px;padding:9px;background:var(--paper);border-bottom:1px solid var(--line)}
.preview-photo{display:block;min-width:0;width:100%;height:100px;border:1px solid var(--line);padding:0;background:#e9eef6;border-radius:2px;overflow:hidden}
.preview-photo:hover{border-color:var(--blue)}
.preview-photo img{width:100%;height:100%;object-fit:contain}
.gallery .photo img,.event-hero img,.card-media img,.news-row .photo img{object-position:center}
@media(max-width:640px){.preview-photo{height:84px}.card-photo-preview{gap:5px;padding:7px}.enlarge-mark{right:9px;top:9px}}



/* Original-site content restored after the content audit. */
.leader summary>div{display:grid;grid-template-columns:64px 1fr;column-gap:16px;align-items:center;min-width:0}
.leader-portrait{grid-column:1;grid-row:1/3;width:64px;height:88px;object-fit:contain;background:var(--paper)}
.leader summary strong,.leader summary span{grid-column:2;overflow-wrap:anywhere}
.founders-figure{margin:32px 0}
.founders-figure .photo{height:400px}
.founders-figure figcaption{font-size:.82rem;color:var(--muted);margin-top:12px}
.membership-overview{margin:24px 0}
.membership-overview summary{cursor:pointer;font-weight:650}
@media(max-width:640px){.founders-figure .photo{height:320px}}


/* Upcoming event: readable details alongside the complete partner flyer. */
.upcoming-feature .card{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr)}
.upcoming-feature .card-media{display:flex;align-items:center;height:auto;min-height:280px;background:white}
.upcoming-feature .card-media img{height:auto;object-fit:contain}
.event-flyer{margin:0}
.event-flyer img{width:100%;height:auto}
.event-flyer figcaption{margin-top:12px;font-size:.85rem;color:var(--muted)}
.event-details{margin:0 0 24px}
.event-details dt{font-weight:650;margin-top:18px}
.event-details dd{margin:4px 0 0;color:var(--ink2);overflow-wrap:anywhere}
@media(max-width:640px){.upcoming-feature .card{grid-template-columns:1fr}.upcoming-feature .card-media{min-height:0}.upcoming-feature .card-media img{height:auto}}
