/* Gallery & real-session enhancements for Achievers Mind Academy */
.gallery-hero{padding:clamp(5rem,9vw,8rem) 0 3.75rem;background:radial-gradient(circle at 85% 18%,rgba(68,97,234,.22),transparent 28%),linear-gradient(155deg,#0e1a44 0%,#142a78 54%,#1e3bd8 100%);color:#fff;overflow:hidden}.gallery-hero .eyebrow,.gallery-hero h1{color:#fff}.gallery-hero .lead{color:rgba(255,255,255,.82);max-width:46rem}.gallery-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,5rem);align-items:center}.gallery-hero-media{position:relative;min-height:420px}.gallery-hero-media img{width:100%;height:clamp(360px,45vw,520px);object-fit:cover;border-radius:22px;box-shadow:0 28px 70px rgba(3,10,34,.35)}.gallery-hero-badge{position:absolute;left:-1.2rem;bottom:1.4rem;background:#fff;color:#0e1a44;padding:.8rem 1rem;border-radius:12px;font-weight:700;box-shadow:0 16px 36px rgba(3,10,34,.22)}
.gallery-toolbar{display:flex;gap:.7rem;flex-wrap:wrap;justify-content:center;margin:0 0 2.3rem}.gallery-filter{border:1px solid var(--line-strong);background:#fff;padding:.62rem 1rem;border-radius:999px;font-weight:650;transition:.2s ease}.gallery-filter:hover,.gallery-filter.active{background:var(--blue-700);border-color:var(--blue-700);color:#fff;transform:translateY(-1px)}
.gallery-grid{columns:3 320px;column-gap:1.25rem}.gallery-card{break-inside:avoid;margin:0 0 1.25rem;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm);transition:.25s ease}.gallery-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.gallery-card button{display:block;width:100%;text-align:left}.gallery-card img{width:100%;height:auto;max-height:520px;object-fit:cover}.gallery-caption{padding:1rem 1.05rem 1.1rem}.gallery-caption strong{display:block;font-family:var(--font-display);font-size:1rem;color:var(--ink)}.gallery-caption span{display:block;margin-top:.25rem;color:var(--ink-muted);font-size:.9rem}.gallery-card[hidden]{display:none!important}
.session-strip{display:grid;grid-template-columns:1.35fr .65fr .65fr;grid-template-rows:220px 220px;gap:1rem;margin-top:2.5rem}.session-strip figure{overflow:hidden;border-radius:18px;position:relative;background:#dfe6fb}.session-strip figure:first-child{grid-row:1/3}.session-strip img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.session-strip figure:hover img{transform:scale(1.035)}.session-strip figcaption{position:absolute;left:.8rem;bottom:.8rem;background:rgba(10,18,51,.8);backdrop-filter:blur(10px);color:#fff;padding:.45rem .7rem;border-radius:8px;font-size:.82rem;font-weight:600}
.gallery-lightbox{position:fixed;inset:0;z-index:2000;background:rgba(5,9,26,.94);display:none;align-items:center;justify-content:center;padding:2rem}.gallery-lightbox.open{display:flex}.gallery-lightbox img{max-width:min(1100px,94vw);max-height:82vh;object-fit:contain;border-radius:10px}.gallery-lightbox-close{position:absolute;top:1.1rem;right:1.1rem;width:46px;height:46px;border-radius:50%;background:#fff;color:#0e1a44;font-size:1.7rem;line-height:1;display:grid;place-items:center}.gallery-lightbox-caption{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);color:#fff;text-align:center;width:min(90vw,760px);font-weight:600}
.photo-proof{background:linear-gradient(135deg,var(--blue-50),#fff);border:1px solid var(--blue-100);padding:clamp(1.4rem,3vw,2rem);border-radius:18px;margin-top:2rem;display:flex;align-items:flex-start;gap:1rem}.photo-proof strong{font-family:var(--font-display);display:block;margin-bottom:.25rem}.photo-proof .proof-dot{width:12px;height:12px;border-radius:50%;background:var(--gold-500);flex:none;margin-top:.45rem;box-shadow:0 0 0 6px var(--gold-100)}
@media(max-width:900px){.gallery-hero-grid{grid-template-columns:1fr}.gallery-hero-media{min-height:0}.gallery-hero-badge{left:.8rem}.session-strip{grid-template-columns:1fr 1fr;grid-template-rows:240px 190px}.session-strip figure:first-child{grid-column:1/3;grid-row:auto}.gallery-grid{columns:2 260px}}
@media(max-width:560px){.gallery-grid{columns:1}.session-strip{display:grid;grid-template-columns:1fr;grid-template-rows:none}.session-strip figure,.session-strip figure:first-child{grid-column:auto;grid-row:auto;height:220px}.gallery-hero-media img{height:320px}.gallery-hero-badge{position:static;display:inline-block;margin-top:.7rem}}


/* 2026 album-style gallery — folders open only when visitors choose them */
.album-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;align-items:start}
.album-card{position:relative;margin-top:1rem}
.album-cover{position:relative;width:100%;text-align:left;padding:1rem;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fff 0%,#f7f9ff 100%);box-shadow:var(--shadow-md);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;overflow:visible}
.album-cover:before{content:"";position:absolute;top:-14px;left:20px;width:42%;height:22px;border:1px solid var(--line);border-bottom:0;border-radius:10px 10px 0 0;background:#fff}
.album-cover:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--blue-200)}
.album-card.open .album-cover{border-color:var(--blue-200);border-radius:18px 18px 8px 8px}
.album-tab{position:relative;z-index:2;display:inline-flex;margin:-.2rem 0 .9rem .15rem;padding:.35rem .7rem;border-radius:999px;background:var(--blue-50);color:var(--blue-700);font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.album-preview{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:115px 115px;gap:.65rem}
.album-preview img{width:100%;height:100%;object-fit:cover;border-radius:12px;background:var(--blue-50)}
.album-preview img:first-child{grid-row:1/3}
.album-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:1.2rem;padding:.95rem .15rem .15rem}
.album-meta h3{font-size:1.12rem}.album-meta p{margin-top:.2rem;color:var(--ink-muted);font-size:.88rem}
.album-open{flex:none;color:var(--blue-700);font-size:.8rem;font-weight:800}
.album-panel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;padding:1rem;margin-top:.45rem;border:1px solid var(--blue-100);border-radius:8px 8px 18px 18px;background:var(--blue-50);box-shadow:var(--shadow-sm)}
.album-panel[hidden]{display:none}
.album-photo{overflow:hidden;border-radius:12px;background:#fff;border:1px solid var(--line);text-align:left;transition:transform .2s ease,box-shadow .2s ease}
.album-photo:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.album-photo img{width:100%;height:150px;object-fit:cover}
.album-photo span{display:block;padding:.6rem .65rem .7rem;color:var(--ink);font-size:.8rem;font-weight:650}
@media(max-width:900px){.album-grid{grid-template-columns:1fr}.album-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.album-preview{grid-template-rows:140px 140px}}
@media(max-width:560px){.album-cover{padding:.8rem}.album-preview{grid-template-rows:105px 105px;gap:.45rem}.album-meta{align-items:flex-start;flex-direction:column;gap:.45rem}.album-panel{grid-template-columns:1fr 1fr;padding:.7rem;gap:.6rem}.album-photo img{height:120px}}
