
:root{--accent:#66cbd6;--text:#686868;--dark:#404040;--bg:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);line-height:1.65}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.container{width:min(960px,calc(100% - 40px));margin:auto}
.site-header{background:#fff;border-bottom:1px solid #bdebf0;position:sticky;top:0;z-index:20}
.nav{min-height:88px;display:flex;align-items:center;gap:34px}.brand img{width:56px;height:56px;object-fit:cover}
.menu{display:flex;align-items:center;gap:34px;font-size:14px}.menu a:hover,.menu a.active{color:#26bdd0}
.menu-toggle{display:none;margin-left:auto;border:0;background:transparent;font-size:30px;color:var(--dark);cursor:pointer}
.welcome{background:var(--accent);color:white;text-align:center;font-size:30px;font-weight:300;padding:24px}
.hero{height:480px;background:url('../img/hero.jpg') center 42%/cover no-repeat}
main{min-height:610px}.section{padding:48px 0 70px}.section h1,.section h2,.section h3{color:#666;font-weight:400}.section h1{font-size:28px;margin-top:0}.section h3{font-size:18px}.section p{margin:0 0 16px}
.two-col{display:grid;grid-template-columns:1fr 220px;gap:55px}.side-images{display:grid;gap:8px;align-content:start}.side-images img{width:100%;height:auto}
.home-copy{display:grid;grid-template-columns:1fr 220px;gap:55px}.home-copy h3{margin-top:0}
.year{font-weight:bold;color:#666}.link{color:#ef655b}
.apel-wrap{max-width:800px;margin:auto}.apel-wrap img{width:100%}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gallery a{overflow:hidden;background:#eee;aspect-ratio:1}.gallery img{width:100%;height:100%;object-fit:cover;transition:.25s}.gallery a:hover img{transform:scale(1.025)}
.thanks{display:grid;grid-template-columns:1fr 230px;gap:55px}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:35px}.contact label{display:block;font-size:17px}.contact input,.contact textarea{width:100%;border:1px solid #bbb;padding:12px;font:inherit;margin-bottom:15px}.contact textarea{min-height:170px;resize:vertical}.button{border:0;background:#e95b50;color:#fff;padding:12px 20px;border-radius:4px;font:inherit;cursor:pointer}
.site-footer{height:210px;background:var(--accent)}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;padding:30px;z-index:99}.lightbox.open{display:flex}.lightbox img{max-width:95vw;max-height:90vh}.lightbox button{position:absolute;right:25px;top:18px;background:none;border:0;color:white;font-size:42px;cursor:pointer}
.note{font-size:13px;color:#999}
@media(max-width:760px){
 .container{width:min(100% - 28px,960px)}.nav{min-height:72px}.brand img{width:48px;height:48px}.menu-toggle{display:block}.menu{display:none;position:absolute;left:0;right:0;top:72px;background:#fff;border-bottom:1px solid #bdebf0;padding:12px 22px 20px;flex-direction:column;align-items:flex-start;gap:8px}.menu.open{display:flex}.menu a{padding:7px 0;width:100%}
 .welcome{font-size:22px;padding:18px}.hero{height:300px;background-position:center}.section{padding:32px 0 48px}
 .two-col,.home-copy,.thanks,.contact{grid-template-columns:1fr;gap:25px}.side-images{grid-template-columns:repeat(2,1fr)}.side-images img{width:100%}
 .gallery{grid-template-columns:repeat(2,1fr)}.site-footer{height:120px}
}
@media(max-width:460px){.hero{height:235px}.gallery{grid-template-columns:1fr}.side-images{grid-template-columns:1fr}}
