:root{--color-primary: #D32F2F;--color-accent: #FFC107;--color-text-on-primary: #FFFFFF;--color-text: #333;--color-light-gray: #f4f4f4;--color-white: #fff}body{font-family:Lato,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;padding:0;background-color:var(--color-light-gray);color:var(--color-text)}h1,h2,h3,h4{font-family:Playfair Display,Georgia,serif}main[data-astro-cid-sahthylw]{max-width:1200px;margin:0 auto;padding:2rem 1.25rem 5rem}.page-header[data-astro-cid-sahthylw]{text-align:center;padding:2rem 0 2.5rem;border-bottom:2px solid var(--color-accent);margin-bottom:3rem}.page-title[data-astro-cid-sahthylw]{font-size:clamp(2rem,5vw,3rem);color:var(--color-primary);margin:0 0 .6rem}.page-subtitle[data-astro-cid-sahthylw]{color:#555;font-size:1rem;margin:0}.gallery-section[data-astro-cid-sahthylw]{margin-bottom:4rem}.section-title[data-astro-cid-sahthylw]{font-size:clamp(1.3rem,3vw,1.75rem);color:var(--color-primary);margin:0 0 1.5rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-accent);display:inline-block}.gallery-grid[data-astro-cid-sahthylw]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(min-width:600px){.gallery-grid[data-astro-cid-sahthylw]{grid-template-columns:repeat(3,1fr);gap:1.25rem}}@media(min-width:1024px){.gallery-grid[data-astro-cid-sahthylw]{grid-template-columns:repeat(4,1fr);gap:1.5rem}}.gallery-item[data-astro-cid-sahthylw]{background:var(--color-white);border:none;border-radius:8px;overflow:hidden;cursor:pointer;padding:0;display:flex;flex-direction:column;box-shadow:0 2px 8px #00000014;transition:box-shadow .2s,transform .2s;text-align:left}.gallery-item[data-astro-cid-sahthylw]:hover,.gallery-item[data-astro-cid-sahthylw]:focus-visible{box-shadow:0 6px 18px #00000026;transform:translateY(-3px);outline:2px solid var(--color-accent);outline-offset:2px}.gallery-img[data-astro-cid-sahthylw]{width:100%;aspect-ratio:3 / 4;object-fit:contain;background-color:#f8f8f8;display:block}.gallery-caption[data-astro-cid-sahthylw]{padding:.6rem .75rem .75rem;display:flex;flex-direction:column;gap:.2rem}.gallery-name[data-astro-cid-sahthylw]{font-size:.88rem;font-weight:700;color:#333;line-height:1.3}.gallery-tagline[data-astro-cid-sahthylw]{font-size:.78rem;color:#888;font-style:italic;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.facility-placeholder[data-astro-cid-sahthylw]{background:var(--color-white);border-radius:10px;border:2px dashed #ddd;padding:3rem 2rem;text-align:center;color:#888}.facility-placeholder[data-astro-cid-sahthylw] p[data-astro-cid-sahthylw]{margin:0 0 .5rem;font-size:.95rem;line-height:1.6}.facility-placeholder[data-astro-cid-sahthylw] p[data-astro-cid-sahthylw]:last-child{margin:0;font-size:.85rem}.gallery-modal[data-astro-cid-sahthylw]{border:none;border-radius:12px;padding:0;max-width:min(92vw,600px);width:100%;box-shadow:0 12px 40px #0006;overflow:hidden}.gallery-modal[data-astro-cid-sahthylw]::backdrop{background:#000000bf}.modal-content[data-astro-cid-sahthylw]{position:relative;display:flex;flex-direction:column;background:#fff}.modal-close[data-astro-cid-sahthylw]{position:absolute;top:.6rem;right:.75rem;background:#00000080;color:#fff;border:none;border-radius:50%;width:2rem;height:2rem;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1;transition:background .15s}.modal-close[data-astro-cid-sahthylw]:hover{background:#000000bf}.modal-img[data-astro-cid-sahthylw]{width:100%;height:auto;display:block;object-fit:contain;background:#f8f8f8}.modal-caption[data-astro-cid-sahthylw]{padding:1rem 1.25rem}.modal-name[data-astro-cid-sahthylw]{font-family:Playfair Display,Georgia,serif;font-size:1.15rem;font-weight:700;color:var(--color-primary);margin:0 0 .3rem}.modal-tagline[data-astro-cid-sahthylw]{font-size:.9rem;color:#777;font-style:italic;margin:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(2rem)}to{opacity:1;transform:translateY(0)}}@supports (animation-timeline: view()){.reveal[data-astro-cid-sahthylw]{animation:fadeInUp .6s ease both;animation-timeline:view();animation-range:entry 0% entry 35%}}
