.gallery{background:linear-gradient(#0f0f23 0%,#16213e 50%,#0f0f23 100%);position:relative}.gallery:before{content:"";opacity:.5;pointer-events:none;background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\"><defs><pattern id=\"grain\" width=\"100\" height=\"100\" patternUnits=\"userSpaceOnUse\"><circle cx=\"50\" cy=\"50\" r=\"1\" fill=\"rgba(255,255,255,0.02)\"/></pattern></defs><rect width=\"100\" height=\"100\" fill=\"url(%23grain)\"/></rect></svg>");width:100%;height:100%;position:absolute;top:0;left:0}.section-header{text-align:center;margin-bottom:4rem}.section-title{color:#fff;margin-bottom:1rem}.section-subtitle{color:#ffffffb3;max-width:600px;margin:0 auto;font-size:1.1rem;line-height:1.6}.gallery-container{width:100%;max-width:1200px;margin:0 auto}.gallery-cards-wrapper{will-change:transform, opacity;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;padding:1rem 0;display:grid}.gallery-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;flex-direction:column;height:450px;transition:all .4s;display:flex;position:relative;overflow:hidden;transform:translateZ(0)}.gallery-image-container{height:250px;position:relative;overflow:hidden}.gallery-image{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform .4s}.gallery-card:hover .gallery-image{transform:scale(1.05)}.gallery-content{flex-grow:1;padding:2rem}.gallery-card-title{color:#fff;margin-bottom:.75rem;font-size:1.4rem;font-weight:700}.gallery-card-description{color:#fffc;margin-bottom:1.5rem;font-size:.95rem;line-height:1.6}.badge{z-index:10;border-radius:5px;padding:5px 10px;font-size:.8em;font-weight:700;position:absolute;top:10px}.before-badge{color:#0f0f23;background-color:#d4af37cc;left:10px}.after-badge{color:#d4af37;background-color:#0f0f23cc;right:10px}@media (max-width:768px){.gallery-cards-wrapper{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.gallery-image-container{height:200px}.gallery-content{padding:1.5rem}.section-header{margin-bottom:3rem}}@media (max-width:480px){.gallery-cards-wrapper{grid-template-columns:1fr;gap:1.5rem}}
