:root{--sky:#0b5ea8;--sky2:#1d84d6;--light:#eaf5ff;--ink:#11263c;--muted:#5a6f84;--line:#d8e6f3;--r:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:#fff}
img{max-width:100%;height:auto;display:block}a{color:var(--sky)}.wrap{max-width:1140px;margin:0 auto;padding:0 20px}
h1,h2,h3{line-height:1.2;margin:0 0 .5em}h2{font-size:clamp(1.7rem,3vw,2.3rem)}.eyebrow{color:var(--sky2);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;margin:0 0 .4em}
.btn{display:inline-block;padding:.85em 1.5em;border-radius:999px;font-weight:700;text-decoration:none;border:2px solid transparent;cursor:pointer;font-size:1rem}
.btn-primary{background:var(--sky);color:#fff}.btn-primary:hover{background:#094c88}.btn-ghost{border-color:#fff;color:#fff}.btn-ghost:hover{background:rgba(255,255,255,.15)}
header.nav{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:66px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--ink);text-decoration:none;font-size:1.1rem}.brand img{height:48px;width:auto;display:block}
.nav-links{display:flex;gap:26px;align-items:center}.nav-links a{color:var(--ink);text-decoration:none;font-weight:600}.nav-links a.btn{color:#fff;padding:.55em 1.2em}
.nav-toggle{display:none;background:none;border:0;font-size:1.6rem;cursor:pointer;color:var(--ink)}
.hero{position:relative;min-height:78vh;display:flex;align-items:center;color:#fff;background:#0b3a66 url(img/hero.jpg) center/cover no-repeat}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(6,40,78,.82),rgba(11,94,168,.35) 70%,rgba(11,94,168,.1))}
.hero .wrap{position:relative;padding-top:60px;padding-bottom:60px}.hero h1{font-size:clamp(2.4rem,6vw,4.2rem);max-width:12ch}.hero p{font-size:1.2rem;max-width:40ch;opacity:.95}.cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
section{padding:84px 0}.alt{background:var(--light)}.center{text-align:center}.lead{color:var(--muted);max-width:60ch;margin:0 auto 40px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:0 6px 24px rgba(11,94,168,.07)}
.card img{aspect-ratio:16/10;object-fit:cover;width:100%;height:auto}.card .b{padding:22px}.card p{color:var(--muted);margin:0}
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.value{background:#fff;border-radius:var(--r);padding:28px;border:1px solid var(--line)}.value .ic{width:48px;height:48px;border-radius:12px;background:var(--light);color:var(--sky);display:grid;place-items:center;font-size:1.5rem;margin-bottom:12px}.value p{color:var(--muted);margin:0}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:12px}.gallery figure{margin:0;border-radius:10px;overflow:hidden;background:var(--light)}.gallery figure a{display:block;height:100%}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery a:hover img{transform:scale(1.04)}
.gallery .wide{grid-column:span 2;grid-row:span 2}
.todo{border:2px dashed #e0a800;background:#fff8e1;color:#7a5b00;border-radius:10px;padding:14px 18px;margin-top:22px;font-size:.95rem}
.about{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.about img{aspect-ratio:3/2;object-fit:cover;border-radius:var(--r);box-shadow:0 10px 30px rgba(0,0,0,.12)}
.contact{display:grid;grid-template-columns:1fr 1.3fr;gap:40px}.info{background:var(--sky);color:#fff;border-radius:var(--r);padding:32px}.info a{color:#fff;font-weight:700;font-size:1.15rem;text-decoration:none}.info a:hover{text-decoration:underline}
.info dl{display:grid;grid-template-columns:auto 1fr;gap:4px 18px;margin:8px 0 0}.info dt{font-weight:700}.info dd{margin:0}.info .row{margin-bottom:18px}
form{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:grid;gap:6px;font-weight:600;font-size:.92rem}.full{grid-column:1/-1}
input,select,textarea{font:inherit;padding:.75em .9em;border:1px solid #c5d6e6;border-radius:10px;background:#fbfdff;width:100%}input:focus,select:focus,textarea:focus{outline:3px solid #b9dcff;border-color:var(--sky2)}
#form-status{margin:0;color:var(--sky);font-weight:600}.note{font-size:.85rem;color:var(--muted);margin:0}
footer{background:#0a2540;color:#c9d8e8;padding:34px 0;font-size:.95rem}footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}footer a{color:#fff}
@media(max-width:900px){.cards,.values{grid-template-columns:1fr 1fr}.about,.contact{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.gallery{grid-auto-rows:140px}.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:66px;left:0;right:0;background:#fff;flex-direction:column;padding:18px;gap:16px;border-bottom:1px solid var(--line)}.nav-links.open{display:flex}
.cards,.values,form{grid-template-columns:1fr}section{padding:60px 0}.hero{min-height:70vh}form,.info{padding:22px}}
.hero .area{font-size:1rem;font-weight:600;color:#bfe2ff;margin:.4em 0 0}

.maps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.maps figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.maps a{display:block;aspect-ratio:4/3;overflow:hidden;background:#fff}.maps img{width:100%;height:100%;object-fit:contain;transition:transform .3s}.maps a:hover img{transform:scale(1.04)}.maps figcaption{padding:12px 16px;font-weight:600;text-align:center}
@media(max-width:900px){.maps{grid-template-columns:1fr}}

.photos{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}.photos figure{grid-column:span 2;margin:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.photos figure:nth-child(4){grid-column:2/span 2}.photos a{display:block;aspect-ratio:4/3;overflow:hidden}.photos img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.photos a:hover img{transform:scale(1.04)}.photos figcaption{padding:12px 16px;font-weight:600;text-align:center}
@media(max-width:900px){.photos{grid-template-columns:1fr 1fr}.photos figure,.photos figure:nth-child(4){grid-column:auto}}
@media(max-width:640px){.photos{grid-template-columns:1fr}}
.photos{margin-top:32px}

.hero{background-image:url(video/hero-construction-progress.jpg)}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.hero:before{z-index:1}.hero .wrap{z-index:2}
@media(max-width:640px),(prefers-reduced-motion:reduce){.hero-video{display:none}}
.videos{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:32px}.videos figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.videos video{display:block;width:100%;aspect-ratio:16/9;background:#0b3a66;object-fit:cover}.videos figcaption{padding:12px 16px;font-weight:600;text-align:center}
@media(max-width:640px){.videos{grid-template-columns:1fr}}

footer .wrap{align-items:center}.footer-logo{height:52px;width:auto;flex-basis:100%;max-width:100%;object-fit:contain;object-position:left}
@media(max-width:640px){.brand img{height:40px;max-width:70vw}.footer-logo{height:44px}}

.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}.quote-form{max-width:820px;margin:32px auto 0}#quote-status{margin:0;color:var(--sky);font-weight:600}.quote-form.sent{display:block;text-align:center}
