.gallery-page{background:#f3eee5;color:var(--i)}.gallery-page .site-header{background:#fbf8f1}.gallery-hero{padding:clamp(90px,13vw,170px) 8% clamp(80px,10vw,130px);background:linear-gradient(115deg,#2d073f,#4f126f 65%,#6e2f83);color:#fff}.gallery-hero h1{max-width:820px;font-size:clamp(54px,8vw,112px)}.gallery-hero p:last-child{max-width:520px;margin:28px 0 0;color:#e6d9ec;font-size:18px}.gallery-section{padding:clamp(70px,9vw,120px) 8%}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:58px}.gallery-heading h2{font-size:clamp(38px,5vw,70px)}.gallery-heading>p{max-width:240px;color:var(--m);font-size:14px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.gallery-card{min-height:430px;perspective:1200px;cursor:pointer}.gallery-card-inner{position:relative;width:100%;height:100%;min-height:430px;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.7,.2,1)}.gallery-card.is-flipped .gallery-card-inner{transform:rotateY(180deg)}.gallery-card-face{position:absolute;inset:0;backface-visibility:hidden;overflow:hidden;background:#fff;border:1px solid #ded6df;box-shadow:0 16px 34px #2d073f14}.gallery-card-front{display:flex;flex-direction:column}.gallery-card-front img{width:100%;height:300px;object-fit:cover;transition:transform .45s ease}.gallery-card:hover .gallery-card-front img{transform:scale(1.04)}.gallery-card-front-copy{padding:18px 20px}.gallery-card-front-copy h3{font-size:22px;margin:0 0 8px}.gallery-card-front-copy p{margin:0;color:var(--m);font-size:13px}.gallery-card-back{transform:rotateY(180deg);padding:28px;background:var(--p);color:#fff;display:flex;flex-direction:column;justify-content:flex-end}.gallery-card-back h3{font-size:29px;margin:12px 0}.gallery-card-back p{color:#eadff0;font-size:14px;line-height:1.6}.gallery-card-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--y);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.gallery-flip-back{margin-top:24px;color:#fff;font-size:12px}.gallery-grid .empty-state{grid-column:1/-1}.gallery-page .site-footer{background:var(--pd)}@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.gallery-heading{display:block}.gallery-heading>p{margin-top:18px}.gallery-grid{grid-template-columns:1fr}.gallery-card,.gallery-card-inner{min-height:400px}.gallery-card-front img{height:270px}}
