.page-module__8IDnjq__galleryPage{width:100%}.page-module__8IDnjq__pageHeader{background-color:var(--banner-bg);color:var(--white);text-align:center;padding:140px 0 80px}.page-module__8IDnjq__headerTag{text-transform:uppercase;letter-spacing:1.5px;color:var(--white);opacity:.8;margin-bottom:12px;font-size:.85rem;font-weight:700;display:inline-block}.page-module__8IDnjq__headerTitle{color:var(--white);margin-bottom:16px;font-size:clamp(2.2rem,5vw,3.5rem);font-weight:800}.page-module__8IDnjq__headerSubtitle{max-width:800px;color:var(--white);opacity:.9;margin:0 auto;font-size:1.2rem;line-height:1.6}.page-module__8IDnjq__gallerySection{background-color:var(--white);padding:80px 0}.page-module__8IDnjq__filterBar{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:40px;display:flex}.page-module__8IDnjq__filterBtn{background-color:var(--card-bg);border:1px solid var(--border-color);color:var(--text-dark);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);padding:8px 20px;font-size:.9rem;font-weight:600}.page-module__8IDnjq__filterBtn:hover{background-color:var(--primary);color:var(--white)}.page-module__8IDnjq__filterBtnActive{background-color:var(--primary);color:var(--white);border-color:var(--primary)}.page-module__8IDnjq__galleryGrid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;display:grid}.page-module__8IDnjq__galleryItem{border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:var(--card-bg);transition:var(--transition);overflow:hidden}.page-module__8IDnjq__galleryItem:hover{box-shadow:var(--shadow-md);transform:scale(1.02)}.page-module__8IDnjq__imagePlaceholder{background:linear-gradient(135deg, var(--primary-light), var(--primary-dark));height:220px;color:var(--white);justify-content:center;align-items:center;font-size:3rem;display:flex;position:relative}.page-module__8IDnjq__itemContent{padding:20px}.page-module__8IDnjq__itemTitle{color:var(--primary-dark);margin-bottom:6px;font-size:1.15rem;font-weight:700}.page-module__8IDnjq__itemTag{color:var(--primary);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:700}.page-module__8IDnjq__galleryItem{cursor:pointer}.page-module__8IDnjq__modalOverlay{z-index:1000;-webkit-user-select:none;user-select:none;background-color:#000000f2;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.page-module__8IDnjq__modalContent{flex-direction:column;align-items:center;gap:16px;max-width:90%;max-height:90%;display:flex;position:relative}.page-module__8IDnjq__modalImageWrapper{border-radius:var(--radius-md);width:75vw;max-width:1000px;height:65vh;max-height:700px;position:relative;overflow:hidden;box-shadow:0 10px 40px #0009}.page-module__8IDnjq__modalImage{object-fit:contain}.page-module__8IDnjq__modalClose{color:var(--white);cursor:pointer;z-index:1010;transition:var(--transition);background:0 0;border:none;font-size:3rem;font-weight:300;line-height:1;position:absolute;top:24px;right:24px}.page-module__8IDnjq__modalClose:hover{color:var(--border-color);transform:scale(1.1)}.page-module__8IDnjq__modalNav{color:var(--white);cursor:pointer;z-index:1010;border-radius:var(--radius-full);transition:var(--transition);background:#ffffff0d;border:1px solid #ffffff1a;padding:16px 22px;font-size:2rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.page-module__8IDnjq__modalNav:hover{background-color:#ffffff26;transform:translateY(-50%)scale(1.05)}.page-module__8IDnjq__modalPrev{left:24px}.page-module__8IDnjq__modalNext{right:24px}.page-module__8IDnjq__modalCaption{color:var(--white);text-align:center}.page-module__8IDnjq__modalCaption h3{color:var(--white);font-size:1.25rem;font-weight:700;font-family:var(--font-montserrat), sans-serif;margin-bottom:4px}.page-module__8IDnjq__modalCaption p{color:var(--border-color);opacity:.8;text-transform:uppercase;letter-spacing:1px;font-size:.85rem}@media (max-width:768px){.page-module__8IDnjq__modalNav{padding:10px 16px;font-size:1.5rem}.page-module__8IDnjq__modalPrev{left:10px}.page-module__8IDnjq__modalNext{right:10px}.page-module__8IDnjq__modalImageWrapper{width:90vw;height:55vh}.page-module__8IDnjq__modalClose{font-size:2.5rem;top:16px;right:16px}}
