/* V21: quiet, accessible hotel group disclosure and island photo galleries */
.md21-chooser{margin:26px 0 8px;border:1px solid #e0e6e2;border-radius:6px;background:#fff;overflow:hidden;box-shadow:0 8px 36px rgba(20,43,48,.045)}
.md21-chooser>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 28px;transition:background .2s}
.md21-chooser>summary::-webkit-details-marker{display:none}
.md21-chooser>summary:hover{background:#f7f9f8}
.md21-chooser>summary span:first-child{display:flex;flex-direction:column;gap:5px}
.md21-chooser>summary small{font-size:10px;letter-spacing:.15em;color:#8a826e;font-style:normal}
.md21-chooser>summary strong{font-family:Georgia,serif;font-size:clamp(23px,2.4vw,34px);font-weight:400;color:#173b47}
.md21-chooser>summary em{font-size:13px;font-style:normal;color:#607276}
.md21-chooser-toggle{font-size:27px;color:#526b70;font-weight:300}
.md21-chooser[open] .md21-chooser-toggle{transform:rotate(45deg)}
.md21-chooser>.hotel-grid{padding:0 20px 25px;gap:16px}
.md21-chooser .hotel-card{box-shadow:none}
.md21-gallery-trigger,.reunion-thumbs button{cursor:zoom-in}
.md21-gallery-trigger:focus-visible,.reunion-thumbs button:focus-visible{outline:3px solid #c4a16b;outline-offset:3px}
.md21-gallery-trigger .photo-count{font-weight:500;letter-spacing:.015em}
.reunion-gallery{width:min(96vw,1100px);background:#112c36;border-radius:7px;color:#fff}
.reunion-gallery .gallery-main{grid-template-columns:76px minmax(0,1fr) 76px;gap:8px;padding:8px 18px}
.reunion-gallery .gallery-main button{font-family:inherit;font-size:12px;letter-spacing:.025em;height:46px}
.reunion-gallery .gallery-main img{max-height:68vh;object-fit:contain}
.md21-gallery-thumbs{display:flex;justify-content:center;gap:9px;overflow-x:auto;max-width:100%;padding:6px 20px 17px}
.md21-gallery-thumbs button{height:60px;min-width:87px;max-width:110px;padding:0;border:2px solid transparent;border-radius:3px;background:transparent;opacity:.65;cursor:pointer}
.md21-gallery-thumbs button[aria-current="true"]{border-color:#d8c19a;opacity:1}
.md21-gallery-thumbs img{height:100%;width:100%;object-fit:cover}
@media(max-width:700px){.md21-chooser>summary{padding:18px}.md21-chooser>.hotel-grid{padding:0 14px 18px}.reunion-gallery .gallery-main{grid-template-columns:54px minmax(0,1fr) 54px;gap:4px;padding:5px}.reunion-gallery .gallery-main button{font-size:10px;padding:3px}.md21-gallery-thumbs button{height:48px;min-width:67px}}
