/* Engagement & Events: scoped compositions built from the approved study primitives. */
@import url('./programs-training.css');
.engagement-main .engagement-subtitle { font:italic 27px/1.35 var(--serif); color:var(--red); margin-top:24px; }
.engagement-main .study-heading h1 { font-size:clamp(44px,4.6vw,66px); }
.engagement-main .study-heading .study-deck { font-size:21px; }
.engagement-main .feature-band { display:grid; grid-template-columns:1fr 1fr; margin-top:40px; margin-bottom:60px; }
.engagement-main figure { margin:0; min-width:0; }
.engagement-main .feature-photo img { width:100%; height:100%; object-fit:cover; }
.engagement-main .feature-copy { padding:46px 44px; }
.engagement-main .feature-copy h2 { margin-top:22px; margin-bottom:28px; font-size:clamp(32px,3vw,42px); }
.engagement-main .dark-panel { background:var(--deep); color:#f4eee4; }
.engagement-main .dark-panel h2,.engagement-main .dark-panel .study-prose,.engagement-main .dark-panel a { color:inherit; }
.engagement-main .dark-panel .eyebrow,.engagement-main .dark-panel .link-icon { color:#dac591; }
.engagement-main .dark-panel a:focus-visible { outline-color:#dac591; }
.engagement-main .cream-panel { background:#f6f3ed; }
.engagement-main .tan-panel { background:#eee6d9; }
.engagement-main .edition-date { font:29px/1.4 var(--serif); border-top:1px solid #806b54; padding-top:25px; margin-top:32px; }
.engagement-main .edition-date span { display:block; font:14px/1.6 var(--sans); margin-top:9px; color:#d7cbbd; }
.engagement-main .edition-note { margin-top:22px; font:17px/1.6 var(--serif); }
.engagement-main .conference-edition { display:grid; grid-template-columns:1fr 1.1fr; margin-top:42px; margin-bottom:65px; }
.engagement-main .conference-edition-art { background:#f0ece4; display:flex; align-items:center; }
.engagement-main .conference-edition-art img { display:block; width:100%; height:auto; }
.engagement-main .conference-edition .feature-copy { display:flex; flex-direction:column; justify-content:center; padding:48px 50px; }
.engagement-main .conference-edition h2 { font-size:clamp(39px,4vw,57px); margin-bottom:0; }
.engagement-main .edition-links { display:flex; flex-direction:column; align-items:flex-start; gap:16px; margin-top:32px; }
.engagement-main .edition-links a { display:inline-flex; gap:24px; font:16px/1.5 var(--serif); padding-block:4px; }
.engagement-main .engagement-section-heading { display:grid; grid-template-columns:.85fr 1.3fr; gap:8%; padding-block:24px 45px; }
.engagement-main .theme-grid { list-style:none; padding:0; margin:0 0 40px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.engagement-main .theme-panel { background:#f6f3ed; padding:32px 36px; border-top:2px solid var(--gold); }
.engagement-main .theme-panel:nth-child(2),.engagement-main .theme-panel:nth-child(3) { background:#eee6d9; }
.engagement-main .theme-panel h3 { font:31px/1.2 var(--serif); letter-spacing:-.5px; margin-top:19px; }
.engagement-main .theme-panel p:not(.eyebrow) { font:18px/1.65 var(--serif); color:#514a45; margin-top:18px; }
.engagement-main .theme-panel .eyebrow { color:var(--red); }
.engagement-main .theme-wide { grid-column:1/-1; }
.engagement-main .engagement-callout { display:grid; grid-template-columns:.85fr 1.3fr; align-items:center; gap:8%; background:#f8f5ee; border-block:1px solid #d6c7ad; padding:31px 40px; margin-top:35px; margin-bottom:55px; }
.engagement-main .callout-title { font:29px/1.3 var(--serif); margin-top:14px; }
.engagement-main .contact-email { display:inline-block; font:21px/1.6 var(--serif); color:var(--red); text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; padding-block:10px; }
.engagement-main .study-prose a { overflow-wrap:anywhere; }
.engagement-main .student-involvement { grid-template-columns:1.1fr 1fr; }
.engagement-main .gallery-heading { display:flex; justify-content:space-between; align-items:end; gap:40px; padding-block:28px 36px; }
.engagement-main .gallery-heading > p { font:17px/1.7 var(--serif); color:var(--muted); max-width:380px; }
.engagement-main .gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:19px; }
.engagement-main .gallery-item a { display:block; position:relative; text-decoration:none; }
.engagement-main .gallery-item a:hover .gallery-label,.engagement-main .gallery-item a:focus-visible .gallery-label { text-decoration:underline; text-underline-offset:3px; }
.engagement-main .gallery-item img { width:100%; height:auto; display:block; }
.engagement-main .gallery-open { display:flex; justify-content:space-between; gap:12px; padding:12px 15px; font:13px/1.5 var(--sans); color:var(--brown); background:#f6f3ed; }
.engagement-main .gallery-item a:hover .gallery-open,.engagement-main .gallery-item a:focus-visible .gallery-open { background:#e9dfcf; }
.engagement-main .gallery-open > span:last-child { font:23px/18px var(--serif); color:var(--red); }
.engagement-main .gallery-more { margin-block:26px 65px; }
.engagement-main .gallery-more summary { cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:20px 26px; border:1px solid #bdab8c; font:20px/1.5 var(--serif); background:#f6f3ed; list-style:none; }
.engagement-main .gallery-more summary::-webkit-details-marker { display:none; }
.engagement-main .gallery-plus { font:30px/1 var(--serif); color:var(--red); }
.engagement-main .gallery-collapse,.engagement-main .gallery-more[open] .gallery-expand { display:none; }
.engagement-main .gallery-more[open] .gallery-collapse { display:inline; }
.engagement-main .gallery-more[open] .gallery-plus { transform:rotate(45deg); }
.engagement-main .gallery-more[open] .gallery-grid { padding-top:26px; }
.engagement-main .workshop-note { display:grid; grid-template-columns:.5fr 1.7fr; gap:8%; border-block:1px solid var(--stone); padding-block:35px; margin-bottom:24px; }
.engagement-main .workshop-note h2 { font-size:32px; margin-bottom:18px; }
.engagement-main .summer-edition { grid-template-columns:1.2fr 1fr; }
.engagement-main .summer-cards { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-top:12px; margin-bottom:60px; }
.engagement-main .summer-card { display:flex; flex-direction:column; }
.engagement-main .summer-card figure { background:#eee6d9; }
.engagement-main .summer-card img { display:block; width:100%; height:420px; object-fit:cover; object-position:center 53%; }
.engagement-main .summer-card .feature-copy { flex:1; }
.engagement-main .summer-card h2 { font-size:36px; }
.engagement-main .learning-methods { display:grid; grid-template-columns:1fr 1fr; gap:8%; background:var(--deep); color:#f4eee4; padding:44px; margin-block:20px 50px; }
.engagement-main .learning-methods .eyebrow { color:#dac591; }
.engagement-main .learning-methods h2 { color:inherit; margin-bottom:24px; }
.engagement-main .learning-methods .study-prose { color:inherit; }
.engagement-main .learning-methods ul { padding:0; margin:0; list-style:none; align-self:center; }
.engagement-main .learning-methods li { padding:19px 0; border-bottom:1px solid #806b54; font:24px/1.4 var(--serif); }
.engagement-main .learning-methods li:first-child { border-top:1px solid #806b54; }
.engagement-main .partner-network { display:grid; grid-template-columns:1fr 1fr; margin-bottom:55px; }
.engagement-main .partner-sectors { display:grid; grid-template-columns:1fr 1fr; gap:1px; list-style:none; padding:1px; margin:0; background:#c6b79e; }
.engagement-main .partner-sectors li { padding:30px; background:#eee6d9; font:25px/1.4 var(--serif); display:flex; align-items:center; }
.engagement-main .partner-sectors li:nth-child(3),.engagement-main .partner-sectors li:nth-child(4) { background:#f6f3ed; }
.engagement-main .partner-sectors li:last-child { grid-column:1/-1; }
.engagement-main .advanced-placement .feature-photo { grid-column:2; grid-row:1; }
.engagement-main .advanced-placement .feature-copy { grid-column:1; grid-row:1; }
.engagement-main .text-link { max-width:100%; }
.engagement-main .text-link .link-label { min-width:0; }
/* Gallery only: native modal and shared close behavior, no extra animation. */
.conference-lightbox { width:min(1120px,calc(100% - 48px)); max-width:none; max-height:calc(100dvh - 36px); padding:24px; border:1px solid #806b54; background:var(--deep); color:#f4eee4; }
.conference-lightbox::backdrop { background:rgba(21,17,14,.88); }
.conference-lightbox .lightbox-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:16px; }
.conference-lightbox .lightbox-heading h2 { color:inherit; font:25px/1.2 var(--serif); margin:0; }
.conference-lightbox button { border:1px solid #947f64; background:transparent; color:inherit; min-height:44px; cursor:pointer; font:16px/1.4 var(--sans); padding:10px 16px; }
.conference-lightbox .link-icon { color:#dac591; }
.conference-lightbox button.icon-link { display:inline-flex; align-items:center; gap:9px; }
.conference-lightbox [data-dialog-close] { min-width:44px; padding:0; font-size:30px; }
.conference-lightbox figure { margin:0; }
.conference-lightbox .lightbox-image { display:block; width:100%; height:min(62dvh,660px); object-fit:contain; }
.conference-lightbox .lightbox-image[hidden] { display:none; }
.conference-lightbox .lightbox-caption { font:16px/1.5 var(--serif); padding-top:14px; }
.conference-lightbox .lightbox-controls { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:20px; }
.conference-lightbox .lightbox-controls a { display:inline-flex; align-items:center; gap:12px; color:#dac591; font:14px/1.5 var(--sans); padding-block:12px; }
.conference-lightbox a:focus-visible,.conference-lightbox button:focus-visible { outline:3px solid #dac591; outline-offset:3px; }
.conference-lightbox .lightbox-error { margin-top:16px; font:16px/1.5 var(--sans); }
@media(max-width:1100px) {
 .engagement-main .feature-copy,.engagement-main .conference-edition .feature-copy { padding:34px; }
 .engagement-main .partner-sectors li { padding:24px; font-size:22px; }
 .engagement-main .summer-card h2 { font-size:31px; }
}
@media(max-width:800px) {
 .engagement-main .study-heading { grid-template-columns:1fr; gap:28px; }
 .engagement-main .study-heading .study-deck { max-width:none; }
 .engagement-main .feature-band,.engagement-main .conference-edition,.engagement-main .student-involvement,.engagement-main .summer-edition,.engagement-main .partner-network,.engagement-main .learning-methods { grid-template-columns:1fr; }
 .engagement-main .feature-photo img { height:auto; }
 .engagement-main .conference-edition-art img { max-width:560px; margin:auto; }
 .engagement-main .engagement-section-heading,.engagement-main .engagement-callout,.engagement-main .workshop-note { grid-template-columns:1fr; gap:25px; }
 .engagement-main .advanced-placement .feature-photo,.engagement-main .advanced-placement .feature-copy { grid-column:auto; grid-row:auto; }
 .engagement-main .gallery-heading { display:block; }
 .engagement-main .gallery-heading > p { margin-top:22px; }
 .engagement-main .gallery-grid { grid-template-columns:1fr 1fr; gap:16px; }
 .engagement-main .summer-cards { grid-template-columns:1fr; }
 .engagement-main .summer-card { display:grid; grid-template-columns:1fr 1fr; }
 .engagement-main .summer-card img { height:100%; min-height:400px; }
 .engagement-main .summer-card .feature-copy { padding:28px; }
 .engagement-main .learning-methods { gap:32px; }
}
@media(max-width:560px) {
 .engagement-main .study-heading h1 { font-size:43px; }
 .engagement-main .engagement-subtitle { font-size:25px; }
 .engagement-main .study-heading .study-deck { font-size:20px; }
 .engagement-main .feature-band,.engagement-main .conference-edition { margin-top:28px; margin-bottom:38px; }
 .engagement-main .feature-copy,.engagement-main .conference-edition .feature-copy { padding:30px 25px; }
 .engagement-main .feature-copy h2 { font-size:32px; }
 .engagement-main .conference-edition h2 { font-size:39px; }
 .engagement-main .edition-date { font-size:26px; }
 .engagement-main .engagement-section-heading { padding-block:15px 30px; }
 .engagement-main .theme-grid { grid-template-columns:1fr; gap:18px; }
 .engagement-main .theme-panel { padding:27px 25px; }
 .engagement-main .theme-panel h3 { font-size:28px; }
 .engagement-main .engagement-callout { padding:28px 25px; margin-block:25px 38px; }
 .engagement-main .contact-email { font-size:19px; }
 .engagement-main .gallery-grid { grid-template-columns:1fr; gap:20px; }
 .engagement-main .gallery-more summary { padding:17px; font-size:18px; }
 .engagement-main .gallery-more { margin-bottom:42px; }
 .engagement-main .summer-cards { margin-bottom:38px; }
 .engagement-main .summer-card { display:flex; }
 .engagement-main .summer-card img { height:auto; min-height:0; }
 .engagement-main .learning-methods { padding:30px 25px; }
 .engagement-main .learning-methods li { font-size:22px; }
 .engagement-main .partner-network { margin-bottom:38px; }
 .engagement-main .partner-sectors { grid-template-columns:1fr; }
 .engagement-main .partner-sectors li { padding:24px 25px; font-size:23px; }
 .conference-lightbox { width:calc(100% - 20px); padding:15px; max-height:calc(100dvh - 20px); }
 .conference-lightbox .lightbox-heading h2 { font-size:22px; }
 .conference-lightbox .lightbox-image { height:45dvh; }
 .conference-lightbox .lightbox-controls { gap:10px; flex-wrap:wrap; }
 .conference-lightbox .lightbox-controls a { order:3; width:100%; justify-content:center; }
 .conference-lightbox button { font-size:14px; padding:9px 12px; }
}
@media print {
 .engagement-main .dark-panel,.engagement-main .learning-methods { background:white; color:black; }
 .engagement-main .dark-panel .eyebrow,.engagement-main .edition-date span,.engagement-main .learning-methods .eyebrow { color:black; }
 .engagement-main .conference-edition,.engagement-main .theme-panel,.engagement-main .summer-card { break-inside:avoid; }
 .engagement-main .gallery-open,.engagement-main .gallery-more summary,.conference-lightbox { display:none; }
 .engagement-main .gallery-more::details-content { content-visibility:visible; }
}
