.facilities-grid{
    display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:26px}
.facility-card{min-height:250px}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.gallery-card{overflow:hidden;border-radius:24px;border:1px solid rgba(249,196,84,.25);
    background:rgba(255,241,191,.09);box-shadow:0 20px 52px rgba(0,0,0,.2)}
.gallery-card img{height:250px;width:100%;object-fit:cover}
.gallery-body{padding:20px}
.download-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.download-card{display:flex;flex-direction:column;gap:14px;min-height:260px}
.map-frame{min-height:420px;border-radius:28px;overflow:hidden;border:1px solid rgba(249,196,84,.27);
    background:linear-gradient(135deg,rgba(255,241,191,.12),rgba(255,241,191,.05));
    display:grid;place-items:center;text-align:center;padding:34px}
    .admission-panel{display:grid;grid-template-columns:1fr .95fr;gap:34px;align-items:start}@media(max-width:1050px){.facilities-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.download-grid,.admission-panel{grid-template-columns:1fr}}@media(max-width:620px){.facilities-grid,.gallery-grid{grid-template-columns:1fr}.gallery-card img{height:220px}}

/* Phase 1C: Gallery and Downloads refinement */
.downloads-table-shell{background:linear-gradient(145deg,rgba(255,241,191,.12),rgba(255,241,191,.05));}
.downloads-table td:nth-child(1){width:180px;color:#fff1bf;font-weight:900;white-space:nowrap;}
.downloads-table td:nth-child(2) strong{display:block;color:#fff4c9;font-size:1.05rem;margin-bottom:5px;}
.downloads-table td:nth-child(2) span{display:block;color:rgba(255,241,191,.72);font-weight:700;line-height:1.55;}
.downloads-table td:nth-child(3){width:250px;white-space:nowrap;}
.downloads-table td:nth-child(3) .ems-btn{margin:4px 6px 4px 0;}
.category-gallery-grid{grid-template-columns:repeat(3,minmax(260px,1fr));}
.category-gallery-card{min-height:430px;}
.category-gallery-card img{height:280px;}
.category-gallery-card .gallery-body{padding:24px;}
.category-gallery-card p{margin:8px 0 0;color:rgba(255,241,191,.74);font-weight:700;line-height:1.65;}
.pdf-preview-frame{width:100%;height:min(72vh,760px);border:0;border-radius:18px;background:#fff;}
@media(max-width:1050px){.category-gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.category-gallery-grid{grid-template-columns:1fr}.downloads-table td:nth-child(1),.downloads-table td:nth-child(3){width:auto;white-space:normal}.category-gallery-card img{height:235px}}


/* Phase 1C-E.1: Gallery folder buttons + fixed modal workflow */
.gallery-folder-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(260px,1fr));
  gap:22px;
}
.gallery-folder-button{
  width:100%;
  min-height:150px;
  display:flex;
  align-items:center;
  gap:18px;
  text-align:left;
  padding:26px;
  border-radius:28px;
  border:1px solid rgba(249,196,84,.32);
  background:linear-gradient(145deg,rgba(255,241,191,.14),rgba(255,241,191,.055));
  color:#fff1bf;
  box-shadow:0 20px 52px rgba(0,0,0,.22);
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}
.gallery-folder-button:hover,
.gallery-folder-button:focus{
  transform:translateY(-5px);
  border-color:rgba(249,196,84,.72);
  box-shadow:0 30px 72px rgba(0,0,0,.34);
  background:linear-gradient(145deg,rgba(249,196,84,.22),rgba(255,241,191,.08));
  outline:none;
}
.gallery-folder-icon{
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  flex:0 0 62px;
  border-radius:20px;
  background:linear-gradient(135deg,var(--ems-gold),#fff1bf);
  color:#183418;
  font-size:1.75rem;
  box-shadow:0 16px 36px rgba(0,0,0,.24);
}
.gallery-folder-button strong{
  display:block;
  color:#fff4c9;
  font-size:1.15rem;
  line-height:1.2;
  margin-bottom:8px;
}
.gallery-folder-button small{
  display:block;
  color:rgba(255,241,191,.72);
  font-weight:750;
  line-height:1.55;
}
@media(max-width:1050px){.gallery-folder-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.gallery-folder-grid{grid-template-columns:1fr}.gallery-folder-button{min-height:auto;padding:22px}}


/* Phase 1C-F: Contact page + social media footer */
.contact-info-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);gap:28px;align-items:stretch}
.contact-info-card,.contact-social-card,.contact-form-card{padding:34px;border-radius:28px}
.contact-detail-list{display:grid;gap:16px;margin-top:22px}
.contact-detail-list div{padding:18px 20px;border-radius:18px;background:rgba(255,241,191,.09);border:1px solid rgba(249,196,84,.22)}
.contact-detail-list strong{display:block;color:var(--ems-gold);font-weight:1000;margin-bottom:4px}
.contact-detail-list span,.contact-detail-list a{color:#fff1bf;font-weight:800;line-height:1.55}
.contact-social-buttons{display:grid;gap:14px;margin-top:24px}
.social-button{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:22px;background:linear-gradient(145deg,rgba(255,241,191,.13),rgba(255,241,191,.055));border:1px solid rgba(249,196,84,.28);transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
.social-button:hover{transform:translateY(-3px);border-color:rgba(249,196,84,.7);background:linear-gradient(145deg,rgba(249,196,84,.22),rgba(255,241,191,.08));box-shadow:0 22px 52px rgba(0,0,0,.22)}
.social-button strong{display:block;color:#fff4c9;font-size:1.08rem}.social-button small{display:block;color:rgba(255,241,191,.72);font-weight:750;margin-top:2px}
.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.contact-form-card h2{font-size:clamp(2rem,2.6vw,3.4rem);line-height:1.04}.field-help{font-size:.84rem;color:rgba(255,241,191,.68);font-weight:800}.field-invalid label{color:#ffd45f}.field-invalid input,.field-invalid select,.field-invalid textarea{border-color:#ffd45f;box-shadow:0 0 0 3px rgba(249,196,84,.14)}
.contact-map-section{padding-top:60px}.contact-map-frame{padding:0;min-height:520px;display:block;overflow:hidden}.contact-map-frame iframe{width:100%;height:520px;border:0;display:block;filter:saturate(.92) contrast(.95)}
@media(max-width:1050px){.contact-info-grid,.contact-form-grid{grid-template-columns:1fr}.contact-social-card{order:2}}
@media(max-width:620px){.contact-info-card,.contact-social-card,.contact-form-card{padding:26px}.contact-map-frame,.contact-map-frame iframe{min-height:420px;height:420px}}

.contact-info-single{grid-template-columns:1fr}.contact-info-single .contact-info-card{max-width:100%;}


/* Contact page final refinement: left contact card + right message card */
.contact-top-grid{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);gap:30px;align-items:start}
.contact-office-card{align-self:stretch}
.contact-card-socials{margin-top:28px;padding:22px;border-radius:22px;background:linear-gradient(145deg,rgba(249,196,84,.18),rgba(255,241,191,.07));border:1px solid rgba(249,196,84,.28)}
.contact-card-socials h3{margin:4px 0 10px;color:#fff1bf;font-size:1.35rem}
.contact-card-socials p{margin:0;color:#d9d2ad;line-height:1.65;font-weight:750}
.contact-social-buttons{margin-top:18px}
.general-message-card{min-height:100%}
.career-section{padding-top:18px}
.career-wide-card{max-width:100%}
.career-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.career-form-grid .full{grid-column:1/-1}
@media(max-width:1050px){.contact-top-grid,.career-form-grid{grid-template-columns:1fr}.career-section{padding-top:0}}
@media(max-width:620px){.contact-card-socials{padding:18px}.contact-social-buttons{gap:10px}}


/* Committee Members public page */
.committee-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.committee-card{display:flex;flex-direction:column;gap:12px}.committee-card h3{margin:0;color:#fff1bf;font-size:1.35rem}.committee-card h4{margin:8px 0 0;color:#f9c454;font-size:.95rem;text-transform:uppercase;letter-spacing:.05em}.committee-card p{margin:0;line-height:1.75;color:rgba(255,242,207,.78)}.committee-card ul{margin:0;padding-left:20px;color:rgba(255,242,207,.78);line-height:1.75}.committee-tag{width:max-content;max-width:100%;border:1px solid rgba(249,196,84,.32);background:rgba(249,196,84,.12);color:#f9c454;border-radius:999px;padding:7px 12px;font-weight:1000;font-size:.78rem}.committee-members{margin-top:auto;border-top:1px solid rgba(249,196,84,.18);padding-top:12px;display:grid;gap:8px}.committee-members strong{color:#fff1bf}.committee-members span,.committee-members li{color:rgba(255,242,207,.76);line-height:1.6}.committee-members ul{padding-left:18px;margin:0}.staff-card img.staff-photo{width:100%;height:170px;object-fit:cover;border-radius:22px;margin-bottom:22px;border:1px solid rgba(249,196,84,.24);background:rgba(249,196,84,.1)}@media(max-width:900px){.committee-grid{grid-template-columns:1fr}}
