
body{font-family:'Open Sans',sans-serif;margin:0;padding:0;color:#222;background:#fdfdfd;line-height:1.7;}
html{scroll-behavior:smooth;}
.main-wrapper{max-width:1200px;margin:0 auto;padding:0 20px 40px;}
nav{background:#0d47a1;padding:12px 0;text-align:center;box-shadow:0 2px 4px rgba(0,0,0,.15);}
nav a{color:#fff;text-decoration:none;margin:0 18px;font-size:1.05rem;font-weight:600;transition:color .3s ease;}
nav a:hover,nav a:focus{color:#ffeb3b;}
h1{color:#0d47a1;font-size:2.1rem;margin:48px 0 28px;line-height:1.3;}
h2{color:#1976d2;font-size:1.5rem;margin:36px 0 18px;line-height:1.35;}
p{text-align:justify;hyphens:auto;margin:0 0 22px;}
footer{background:#eeeeee;padding:14px 0;text-align:center;font-size:.9rem;color:#555;margin-top:40px;}
img{max-width:100%;height:auto;border-radius:4px;}
form input,form textarea,form button{font-family:inherit;font-size:1rem;}
form input,form textarea{border:1px solid #bdbdbd;border-radius:4px;padding:10px 12px;width:100%;box-sizing:border-box;}
form textarea{resize:vertical;}
form button{background:#0d47a1;color:#fff;border:none;padding:12px 26px;border-radius:4px;cursor:pointer;transition:background .3s ease;}
form button:hover{background:#1565c0;}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin-top:32px;}
.gallery-grid figure{margin:0;position:relative;overflow:hidden;border-radius:6px;box-shadow:0 2px 8px rgba(0,0,0,.1);}
.gallery-grid img{width:100%;height:100%;object-fit:cover;vertical-align:middle;transition:transform .4s ease;}
.gallery-grid figure:hover img{transform:scale(1.05);}
.gallery-grid figcaption{position:absolute;bottom:0;width:100%;background:rgba(13,71,161,.8);color:#fff;font-size:.9rem;padding:6px 10px;box-sizing:border-box;}
