html,body{margin:0;padding:0;width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,sans-serif;background-color:#fff;color:#333;display:flex;flex-direction:column;text-align:center}.home-section{width:100%;height:100vh;display:flex;justify-content:center;align-items:center}.home-content{max-width:600px;padding:20px}.home-content h1{font-size:1.5rem;font-weight:500;color:#333;margin-bottom:20px;line-height:1.4}.home-button{display:inline-block;padding:10px 20px;font-size:1rem;color:#fff;background-color:#0078d4;border:none;border-radius:5px;text-decoration:none;font-weight:500;transition:background-color .2s ease}.home-button:hover{background-color:#005a9e}.page-title{font-size:36px;font-weight:600;text-align:center;margin:40px 0;color:#333;word-wrap:break-word}.article-content{max-width:800px;margin:0 auto;padding:20px;line-height:1.8;color:#555;background-color:#fff;box-shadow:0 4px 12px rgba(0,0,0,.1);border-radius:8px}.article-content img{max-width:100%;height:auto;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;padding:0 20px;max-width:1200px;margin:0 auto}.photo-card{position:relative;overflow:hidden;border-radius:8px;transition:transform .3s ease,box-shadow .3s ease;box-shadow:0 8px 16px rgba(0,0,0,.2);aspect-ratio:16/9}.photo-card:hover{transform:scale(1.05);box-shadow:0 12px 24px rgba(0,0,0,.3)}.photo-cover{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,filter .5s ease}.photo-card:hover .photo-cover{transform:scale(1.2);filter:brightness(70%)}.photo-title{position:absolute;bottom:20px;left:20px;font-size:24px;font-weight:700;color:#fff;text-shadow:2px 2px 8px rgba(0,0,0,.8);z-index:10}.photo-title a{color:#fff;text-decoration:none;transition:color .3s ease}.photo-title a:hover{color:#ffdd57}footer{text-align:center;padding:20px;font-size:14px;color:#999;margin-top:auto;width:100%;background-color:transparent}.photo-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;padding:20px;max-width:1200px;margin:0 auto}.photo-item{display:block;transition:transform .3s ease;overflow:hidden;border-radius:8px;content-visibility:auto;contain-intrinsic-size:300px 225px}.photo-thumbnail{width:100%;height:auto;object-fit:cover;transition:transform .3s ease,filter .3s ease;display:block}@media(hover:hover){.photo-item:hover .photo-thumbnail{transform:scale(1.2);filter:brightness(90%)}}.lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.8);display:none;justify-content:center;align-items:center;z-index:1000;overscroll-behavior:contain}.lightbox-content{max-width:80%;max-height:80%;object-fit:contain}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;color:#fff;font-size:40px;cursor:pointer;user-select:none;transition:opacity .3s;background:0 0;border:none;line-height:1;padding:0 8px}.lightbox-close{top:20px;right:30px}.lightbox-prev{left:20px;top:50%;transform:translateY(-50%)}.lightbox-next{right:20px;top:50%;transform:translateY(-50%)}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{opacity:.8}.lightbox-open{display:flex}body.lightbox-open{overflow:hidden}.lightbox-download{position:absolute;bottom:24px;right:28px;color:#fff;text-decoration:underline;font-size:14px}.lightbox-close:focus-visible,.lightbox-prev:focus-visible,.lightbox-next:focus-visible,.lightbox-download:focus-visible{outline:2px solid #ffdd57;outline-offset:2px;border-radius:6px}@media(max-width:1200px){.photo-gallery{grid-template-columns:repeat(2,1fr)}}@media(max-width:400px){.home-content h1{font-size:1.2rem}.photo-gallery{grid-template-columns:1fr;gap:12px}.page-title{font-size:24px;margin:20px 0;font-weight:500;color:#555}}@media(min-width:401px) and (max-width:768px){.home-content h1{font-size:1.2rem}.photo-gallery{grid-template-columns:repeat(2,1fr);gap:12px}.page-title{font-size:24px;margin:20px 0;font-weight:500;color:#555}}@media(prefers-reduced-motion:reduce){.photo-card,.photo-cover,.photo-item,.photo-thumbnail,.lightbox-close,.lightbox-prev,.lightbox-next{transition:none !important}}#sentinel{display:block;height:1px}.photo-item{display:block;aspect-ratio:3/2}.photo-thumbnail{width:100%;height:100%;object-fit:cover;display:block}*,*::before,*::after{box-sizing:border-box}html,body{margin:0;padding:0;width:100%;max-width:100%;overflow-x:hidden}