/* Photographs from MEDCARE 360 2025, kept distinct from the current edition. */
.home-photo-story{max-width:1280px;margin:0 auto;padding:32px 32px 54px;border-top:1px solid #e3dcde}
.photo-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}
.photo-section-heading h2{margin:0;color:#33232b;font-family:var(--font-ui);font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.25;font-weight:650;letter-spacing:-.025em}
.photo-section-heading .eyebrow{margin:0 0 10px;color:#7b273b;font-size:.65rem;letter-spacing:.08em}
.photo-section-heading>p{max-width:48ch;margin:0;color:#655b60;font-size:.85rem;line-height:1.7}
.photo-section-heading>.text-link{flex-shrink:0;font-size:.78rem;min-height:44px;display:inline-flex;align-items:center;gap:12px}
.home-photo-grid,.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.home-photo-card,.photo-card{min-width:0;margin:0;color:#33232b;text-decoration:none}
.home-photo-card{display:block;border:1px solid #e3dcde;border-radius:9px;overflow:hidden;background:#fff;transition:border-color .16s}
.home-photo-card:hover{border-color:#9a6170;text-decoration:none!important}
.home-photo-card picture,.photo-card picture{position:relative;display:block;aspect-ratio:3/2;overflow:hidden;background:#edeae7}
.home-photo-card img,.photo-card img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}
.home-photo-card>span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;font-size:.79rem;line-height:1.5}
.home-photo-card strong{font-weight:600}
.home-photo-card>span>span{color:#7b273b}
.photo-date-note{margin:16px 0 0;color:#6d6368;font-size:.72rem}
.photo-archive-section{padding-top:24px!important;padding-bottom:28px!important;scroll-margin-top:130px}
.photo-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px}
.photo-filters[hidden],.photo-panel[hidden]{display:none!important}
.photo-filters button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;max-width:100%;padding:10px 16px;border:1px solid #d5c8cd;border-radius:6px;background:#fff;color:#684d58;font:600 .75rem/1.4 var(--font-ui);cursor:pointer}
.photo-filters button:hover{border-color:#986171}
.photo-filters button[aria-pressed=true]{color:#70192e;border-color:#70192e;background:#f3e8ec}
.photo-filter-count{font-size:.65rem;font-weight:400;opacity:.8}
.photo-gallery-help{margin:0 0 24px;color:#6d6368;font-size:.73rem;line-height:1.7}
.photo-panel+.photo-panel{margin-top:36px}
.photo-gallery.is-enhanced .photo-panel{margin-top:0}
.photo-panel h3{margin:0 0 18px;font-family:var(--font-ui);font-size:1.05rem;line-height:1.4;font-weight:650}
.photo-card>a{position:relative;display:block;overflow:hidden;border:1px solid #e0d7db;border-radius:7px;text-decoration:none}
.photo-card>a:hover{border-color:#956070}
.photo-expand{position:absolute;bottom:10px;right:10px;display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:#fff;color:#6e1a2e;border-radius:50%;font-size:.9rem;box-shadow:0 2px 8px #2711191a}
.photo-card figcaption{padding:10px 2px 0;color:#655b60;font-size:.73rem;line-height:1.6}
.photo-viewer-open{overflow:hidden}
.photo-dialog{position:fixed;inset:0;box-sizing:border-box;width:min(1200px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:18px 22px 20px;border:1px solid #d8c9cf;border-radius:10px;background:#faf8f7;color:#35252c;box-shadow:0 20px 80px #0005}
.photo-dialog::backdrop{background:rgba(24,12,17,.88)}
.photo-dialog-header,.photo-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}
.photo-dialog-header{margin-bottom:14px}
.photo-dialog-label{margin:0;font:600 .75rem/1.4 var(--font-ui);color:#74535f}
.photo-dialog button{min-width:46px;min-height:46px;padding:10px 14px;border:1px solid #c9b7bf;border-radius:6px;background:#fff;color:#70192e;font:600 .75rem/1.4 var(--font-ui);cursor:pointer}
.photo-dialog button:hover{background:#f3e8ec;border-color:#70192e}
.photo-dialog figure{margin:0}
.photo-dialog picture{display:flex;align-items:center;justify-content:center;background:#edeae7;border-radius:4px}
.photo-dialog img{display:block;width:auto;height:auto;max-width:100%;max-height:65dvh;object-fit:contain}
.photo-dialog figcaption{padding:12px 0 14px;font-size:.8rem;line-height:1.6}
.photo-dialog-counter{color:#6d6368;font:400 .75rem/1.4 var(--font-ui);font-variant-numeric:tabular-nums}
@media(max-width:1024px){.home-photo-story{padding-inline:28px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-section-heading{align-items:start;flex-direction:column;gap:14px}.photo-section-heading>p{max-width:65ch}}
@media(max-width:640px){.home-photo-story{margin:0 22px;padding:28px 0 36px}.home-photo-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:84%;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:10px;scrollbar-width:thin;scrollbar-color:#b79ca6 #eee8e9}.home-photo-card{scroll-snap-align:start}.photo-grid{grid-template-columns:1fr;gap:22px}.home-photo-card>span{font-size:.81rem}.photo-section-heading{margin-bottom:18px}.photo-section-heading h2{font-size:1.4rem}.photo-section-heading>p{font-size:.82rem}.photo-date-note{font-size:.7rem}.photo-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.photo-filters button{justify-content:space-between;padding:10px 12px;font-size:.7rem;text-align:left}.photo-gallery-help{font-size:.73rem;margin-bottom:20px}.photo-card figcaption{font-size:.76rem}.photo-archive-section{scroll-margin-top:90px}.photo-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);padding:12px;border-radius:8px}.photo-dialog img{max-height:60dvh}.photo-dialog-header{gap:8px}.photo-dialog-label{font-size:.67rem;max-width:20ch}.photo-dialog button{padding:10px;font-size:.7rem}.photo-dialog figcaption{font-size:.74rem}.photo-dialog-footer{gap:8px}}
@supports not (height:100dvh){.photo-dialog{max-height:calc(100vh - 48px)}.photo-dialog img{max-height:60vh}}
@supports not (aspect-ratio:3/2){.home-photo-card picture,.photo-card picture{padding-top:66.666%}}
@media(prefers-reduced-motion:reduce){.home-photo-card{transition:none}}
