:root{--bg:#fff;--fg:#0f1b2d;--ac:#e8601c;--mut:#5b6678}
@media(prefers-color-scheme:dark){:root{--bg:#0b1220;--fg:#eef2f8;--mut:#9aa6b8}}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,sans-serif;background:var(--bg);color:var(--fg)}
img{max-width:100%;display:block}.wrap{max-width:1180px;margin:auto;padding:48px 20px}.narrow{max-width:420px}
.nav{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;position:relative;z-index:5;color:var(--fg);border-bottom:1px solid #8883}.nav.over{position:absolute;inset:0 0 auto;color:#fff;background:linear-gradient(#000a,#0000);border:0}
.nav a{color:inherit;text-decoration:none;margin-left:18px}.logo b{color:var(--ac)}
.hero{position:relative;height:88vh;min-height:460px;overflow:hidden;background:#12233d}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1.6s}.slide.on{opacity:1}.slide img{width:100%;height:100%;object-fit:cover}
.slide.on img{animation:kb 9s ease-out forwards}@keyframes kb{to{transform:scale(1.08)}}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(#0008,#0006)}
.hero-t{position:absolute;z-index:2;left:6%;right:6%;bottom:18%;color:#fff}.hero-t h1{font-size:clamp(2rem,5vw,3.8rem);margin:0 0 8px;max-width:14em}
.btn,button{background:var(--ac);color:#fff;border:0;padding:10px 20px;border-radius:8px;cursor:pointer;text-decoration:none;display:inline-block}
input,select,textarea{padding:9px;border:1px solid #8886;border-radius:6px;background:transparent;color:inherit;width:100%}
.masonry{columns:3 260px;gap:12px}.masonry a{display:block;position:relative;margin-bottom:12px;overflow:hidden;border-radius:10px}
.masonry img{transition:transform .5s;width:100%}.masonry a:hover img{transform:scale(1.06)}
.ov{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:14px;color:#fff;background:linear-gradient(#0000 40%,#000b);opacity:0;transition:.3s}.masonry a:hover .ov,.masonry a:focus .ov{opacity:1}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.card{color:inherit;text-decoration:none;border-radius:12px;overflow:hidden;background:#8881;transition:transform .3s,box-shadow .3s;padding-bottom:14px}
.card:hover{transform:translateY(-6px);box-shadow:0 12px 30px #0003}.card h3,.card p,.card span{margin:8px 16px 0}.card span{color:var(--ac);display:block}
.ci{aspect-ratio:4/3;overflow:hidden;position:relative;background:#8883}.ci img{width:100%;height:100%;object-fit:cover}
.ph{position:absolute;top:8px;left:8px;background:#c00;color:#fff;font-size:11px;padding:2px 8px;border-radius:99px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px;padding:56px 20px;background:#12233d;color:#fff;text-align:center}.stats strong{display:block;font-size:2.6rem;color:var(--ac)}
.map{width:100%;height:360px;border:0;border-radius:10px;margin:16px 0}.foot{padding:30px;text-align:center;color:var(--mut)}
.rv{opacity:0;transform:translateY(24px);transition:.8s}.rv.in{opacity:1;transform:none}
#lb{position:fixed;inset:0;background:#000e;z-index:99;display:flex;align-items:center;justify-content:center}#lb[hidden]{display:none}
#lb figure{margin:0;max-width:94vw;color:#fff;text-align:center}#lb img{max-height:78vh;margin:auto}#lb button{position:absolute;background:#0008;font-size:28px;width:48px;height:48px;padding:0}
.x{top:12px;right:12px}.pv{left:8px}.nx{right:8px}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}.mcard{border:1px solid #8884;border-radius:10px;padding:8px;position:relative}.mcard.off{opacity:.45}.mcard img{aspect-ratio:4/3;object-fit:cover;width:100%;border-radius:6px}.sel{position:absolute;top:14px;right:14px}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:12px 0}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.tabs a{margin-right:14px;color:var(--ac)}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}
.err{color:#c00}.ok{color:#080}table.t{width:100%;border-collapse:collapse}table.t td,table.t th{padding:6px;border-bottom:1px solid #8883;text-align:left;vertical-align:top}.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.thumbs label{font-size:12px}.thumbs img{aspect-ratio:1;object-fit:cover;width:100%;border-radius:6px}.form{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.form .full{grid-column:1/-1}.inl{display:inline}.small{font-size:13px;color:var(--mut)}
