:root{--teal:#16d4d2;--dark:#061318;--ink:#18282d;--light:#f5f8f8;--muted:#68787c;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.55;background:var(--light)}a{text-decoration:none;color:inherit}header{position:sticky;top:0;z-index:10;background:rgba(6,19,24,.97);border-bottom:1px solid rgba(22,212,210,.25);display:flex;align-items:center;justify-content:space-between;padding:12px 4vw;gap:24px}.logo{color:#fff;display:flex;flex-direction:column;line-height:1}.logo b{font-size:.65rem;letter-spacing:.2em}.logo strong{font-size:1.05rem;letter-spacing:.06em}.logo i{font-style:normal;color:var(--teal);font-weight:900;font-size:.9rem;letter-spacing:.18em}.logo small{font-size:.46rem;letter-spacing:.1em;margin-top:4px}.logo em{font-size:.44rem;letter-spacing:.12em;margin-top:4px}.logo span{font-size:.42rem;letter-spacing:.1em;color:var(--teal);margin-top:3px}nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap}nav a{color:#fff;font-size:.88rem;font-weight:800}nav a:hover{color:var(--teal)}nav .quote{background:var(--teal);color:#06272b;padding:10px 14px;border-radius:5px}.hero{background:var(--dark);color:#fff;padding:55px 4vw}.hero-inner{max-width:1180px;margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:45px;align-items:center}.eyebrow{color:var(--teal);font-size:.75rem;letter-spacing:.18em;font-weight:900}.hero h1{font-size:clamp(2.5rem,6vw,5rem);line-height:.95;margin:14px 0 24px}.hero h1 mark,h2 mark{background:none;color:var(--teal)}.hero p{color:#d5e1e3}.btn{display:inline-block;border:0;background:var(--teal);color:#06272b;font-weight:900;padding:13px 20px;border-radius:6px;margin:5px 4px 5px 0}.btn.alt{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3)}.trust{margin-top:22px;color:#b9c9cb;font-size:.8rem;font-weight:800}.van-slot{background:#02090c;border-radius:12px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.35)}.van-slot img{display:block;width:100%;height:auto}.dark{background:var(--dark);color:#fff;text-align:center;padding:80px 4vw}.dark h2,.about h2,.work h2,.areas h2,.contact h2{font-size:clamp(2rem,4vw,3.2rem);margin:0 0 10px}.dark>p,.work>p{color:#afbec0;max-width:700px;margin:0 auto 36px}.grid{max-width:1100px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid article{border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:25px 18px;color:var(--teal);font-size:1.8rem}.grid h3{font-size:1rem;color:#fff;margin:12px 0 6px}.grid p{font-size:.9rem;color:#aebcbe;margin:0}.about{max-width:1100px;margin:auto;padding:80px 4vw;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.about ul{padding-left:20px}.about li{margin:9px 0}.script{font-family:cursive;font-size:2rem;color:#078f91;margin-top:25px}.photo img{width:100%;display:block;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.12)}.work{background:#fff;padding:80px 4vw;text-align:center}.photos{max-width:1180px;margin:35px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.photos figure{margin:0;background:#fff;border:1px solid #dfe7e8;border-radius:10px;overflow:hidden;text-align:left;box-shadow:0 7px 20px rgba(0,0,0,.07)}.photos img{display:block;width:100%;height:250px;object-fit:cover}.photos figcaption{padding:12px 14px;font-weight:800}.areas{padding:75px 4vw;display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:1100px;margin:auto}.map{background:var(--dark);color:var(--teal);border-radius:12px;min-height:180px;display:grid;place-content:center;text-align:center;font-weight:900;letter-spacing:.1em}.map small{color:#fff;letter-spacing:0;margin-top:8px}.contact{background:var(--dark);color:#fff;padding:80px 4vw;display:grid;grid-template-columns:1fr 1fr;gap:55px}.contact a{color:var(--teal)}form{display:grid;gap:12px}label{font-size:.85rem;font-weight:800}input,textarea{display:block;width:100%;margin-top:5px;padding:12px;border-radius:5px;border:1px solid #cbd5d6;font:inherit}footer{background:#02090c;color:#aebec0;padding:28px 4vw;display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}footer .logo{min-width:220px}@media(max-width:850px){header{position:static}nav{display:none}.hero-inner,.about,.areas,.contact{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}.photos{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.grid,.photos{grid-template-columns:1fr}.hero{padding:40px 5vw}.about,.work,.areas,.contact{padding-top:55px;padding-bottom:55px}.photos img{height:280px}}
