:root{--navy:#071a2b;--navy2:#102b42;--blue:#2c668b;--ice:#eaf0f3;--paper:#f7f8f7;--ink:#102334;--muted:#667784;--line:#dce3e7;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}.container{width:min(1160px,calc(100% - 48px));margin:0 auto}.topline{background:#041321;color:#b9c8d2;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.topline-inner{height:36px;display:flex;align-items:center;justify-content:space-between}.topline a{color:#dce8ee;text-decoration:none}.topline strong{color:#fff;margin-left:7px}.site-header{height:82px;background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(7,26,43,.08)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--navy)}.brand img{width:58px;height:66px;object-fit:contain;background:transparent;border-radius:0}.brand span{display:flex;flex-direction:column;gap:5px}.brand b{font-family:Manrope,sans-serif;font-size:15px;letter-spacing:.09em}.brand small{font-size:9px;letter-spacing:.16em;color:#6e7c86}.nav-links{display:flex;align-items:center;gap:34px}.nav-links>a{font-size:12px;font-weight:600;color:#344957;text-decoration:none}.nav-links>a:hover{color:var(--blue)}.nav-links .nav-call{background:var(--navy);color:#fff;padding:13px 18px}.nav-call span,.button span{margin-left:14px}.menu-toggle{display:none;border:0;background:none;padding:10px}.menu-toggle span{display:block;width:23px;height:2px;background:var(--navy);margin:5px}.hero{height:min(690px,76vw);min-height:570px;position:relative;background:#0b263c;overflow:hidden;color:#fff}.hero-image{position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1617217640119-5ee3fe9fc564?auto=format&fit=crop&w=2200&q=85');background-size:cover;background-position:center 53%;transform:scale(1.015)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,17,29,.88) 0%,rgba(3,17,29,.62) 43%,rgba(3,17,29,.1) 100%),linear-gradient(0deg,rgba(3,17,29,.45),transparent 35%)}.hero-content{position:relative;padding-top:142px;z-index:1}.eyebrow,.section-kicker{font-size:10px;letter-spacing:.2em;font-weight:700;color:#6e9bb6}.eyebrow{color:#d2e1e9;display:flex;align-items:center;gap:12px}.eyebrow span{width:25px;height:1px;background:#79a9c5}.hero h1,.section-heading h2,.intro h2,.brands h2,.about h2,.contact h2{font-family:Manrope,sans-serif;font-weight:600;letter-spacing:-.055em}.hero h1{font-size:clamp(54px,7vw,88px);line-height:1.02;margin:24px 0 18px}.hero-content>p{font-size:16px;line-height:1.8;color:#d4e0e7;max-width:440px}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;padding:17px 21px;text-decoration:none;font-size:11px;letter-spacing:.04em;font-weight:700;transition:.2s}.button-primary{background:#fff;color:var(--navy)}.button-primary:hover{background:#dceaf1}.text-link{color:#fff;text-decoration:none;font-size:11px;font-weight:600}.text-link span{margin-left:12px}.hero-bottom{position:absolute;bottom:0;left:0;right:0;border-top:1px solid rgba(255,255,255,.23)}.hero-bottom-inner{height:57px;display:flex;align-items:center;gap:18px;font-size:9px;letter-spacing:.16em;color:#d7e1e7}.hero-rule{width:44px;height:1px;background:#79a9c5}.section-pad{padding:112px 0}.intro{background:#fff}.intro-grid{display:grid;grid-template-columns:1fr 2fr;gap:50px}.intro h2,.section-heading h2,.brands h2,.about h2,.contact h2{font-size:clamp(36px,4.2vw,53px);line-height:1.14;margin:18px 0 20px}.intro h2 em,.section-heading h2 em,.brands h2 em,.about h2 em,.contact h2 em{font-style:normal;color:#6d8ca0}.intro-copy{max-width:660px;color:var(--muted);font-size:15px;line-height:1.9}.under-link{display:inline-block;margin-top:22px;color:var(--navy);text-decoration:none;font-size:11px;font-weight:700;border-bottom:1px solid #a9bac5;padding-bottom:8px}.under-link span{margin-left:18px}.services{background:var(--ice)}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:48px}.section-heading>p{max-width:330px;color:var(--muted);font-size:13px;line-height:1.8;margin:0 0 23px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-card{min-height:260px;background:#fff;padding:27px 25px;position:relative}.service-feature{background:var(--navy);color:#fff}.service-number{font-size:9px;letter-spacing:.14em;color:#8ca3b2}.service-feature .service-number{color:#9bb7c9}.service-icon{font-family:Manrope,sans-serif;font-size:36px;color:#7ea1b7;margin:26px 0 12px}.service-card h3{font-family:Manrope,sans-serif;font-size:18px;letter-spacing:-.03em;margin:0 0 10px}.service-card p{font-size:12px;line-height:1.75;color:#6d7c86;margin:0}.service-feature p{color:#bdcbd4}.service-wide{grid-column:auto;min-height:260px}.service-wide .service-icon{position:absolute;right:28px;top:42px}.service-wide .under-link{margin-top:15px}.brands{background:#fff}.brands-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.brands p,.about-panel p,.contact-grid>div>p{color:var(--muted);font-size:14px;line-height:1.9;max-width:430px}.brand-list{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;border-top:1px solid var(--line)}.brand-list span{padding:24px 0;border-bottom:1px solid var(--line);font-family:Manrope,sans-serif;font-size:17px;font-weight:800;letter-spacing:.12em;color:#243c4d}.about{padding:0;display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:#fff}.about-photo{min-height:570px;background-image:linear-gradient(0deg,rgba(4,19,32,.1),rgba(4,19,32,.1)),url('https://images.unsplash.com/photo-1766703673122-502c1d41fef2?auto=format&fit=crop&w=1400&q=85');background-size:cover;background-position:center}.about-panel{padding:100px max(48px,calc((100vw - 1160px)/2)) 100px 75px;max-width:700px}.about-panel .section-kicker{color:#8fb0c4}.about h2{font-size:clamp(37px,4vw,49px)}.about h2 em{color:#9db8c9}.about-panel p{color:#bdcbd4}.button-outline{border:1px solid #7892a4;color:#fff;margin-top:22px}.button-outline:hover{background:#fff;color:var(--navy)}.contact{background:#edf2f4}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.contact-card{background:#fff;padding:40px 42px;box-shadow:0 15px 50px rgba(10,35,53,.06)}.contact-label{font-size:9px;letter-spacing:.18em;font-weight:700;color:#718694}.phone-number{display:block;font-family:Manrope,sans-serif;font-size:clamp(30px,4vw,44px);font-weight:700;letter-spacing:-.05em;color:var(--navy);text-decoration:none;margin:13px 0}.contact-location{font-size:12px;color:var(--muted)}.contact-button{display:flex;margin-top:26px;background:var(--navy);color:#fff}.contact-button:hover{background:#173c58}.footer{background:#041321;color:#a9bac5}.footer-main{min-height:105px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.13)}.footer-brand{font-family:Manrope,sans-serif;font-weight:800;font-size:16px;letter-spacing:.12em;color:#fff;text-decoration:none}.footer-brand span{color:#81a9c1}.footer-main>span{font-size:9px;letter-spacing:.16em}.footer-main>a:last-child{font-size:13px;color:#fff;text-decoration:none}.footer-bottom{height:55px;display:flex;justify-content:space-between;align-items:center;font-size:10px}.footer-bottom a{color:#c5d3dc;text-decoration:none}
@media(max-width:800px){.container{width:min(100% - 38px,600px)}.nav-links{gap:20px}.nav-links>a{font-size:11px}.hero{min-height:590px;height:75vh;max-height:700px}.hero-content{padding-top:130px}.intro-grid{grid-template-columns:1fr;gap:15px}.section-pad{padding:82px 0}.section-heading{display:block}.section-heading>p{margin-top:20px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-wide{grid-column:span 2}.brands-inner{gap:35px}.about-panel{padding:75px 38px}.about-photo{min-height:500px}.contact-grid{gap:35px}}
@media(max-width:600px){.topline-inner{height:33px;font-size:9px}.site-header{height:72px}.brand img{width:48px;height:48px}.brand b{font-size:12px;letter-spacing:.07em}.brand small{font-size:8px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:18px 22px 24px;box-shadow:0 15px 20px rgba(0,0,0,.08);flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links>a{padding:14px 5px;border-bottom:1px solid #edf1f3;font-size:13px}.nav-links .nav-call{margin-top:12px;text-align:center;border:0}.hero{height:680px;min-height:0;max-height:calc(100svh - 105px)}.hero-image{background-position:58% center}.hero-shade{background:linear-gradient(90deg,rgba(3,17,29,.85),rgba(3,17,29,.3)),linear-gradient(0deg,rgba(3,17,29,.5),transparent 60%)}.hero-content{padding-top:125px}.hero h1{font-size:56px}.hero-content>p{font-size:14px;max-width:340px}.hero-actions{align-items:flex-start;flex-direction:column;gap:21px}.hero-bottom-inner{font-size:8px;gap:10px}.hero-rule{width:20px}.section-pad{padding:70px 0}.intro h2,.section-heading h2,.brands h2,.about h2,.contact h2{font-size:38px}.service-grid{gap:10px}.service-card{padding:21px 17px;min-height:270px}.service-card h3{font-size:16px}.service-card p{font-size:11px}.service-number{font-size:8px}.service-wide{min-height:220px}.service-wide .service-icon{right:18px;top:40px}.brands-inner{grid-template-columns:1fr;gap:30px}.brand-list span{font-size:15px;padding:19px 0}.about{grid-template-columns:1fr}.about-photo{min-height:320px}.about-panel{padding:65px 24px 75px}.contact-grid{grid-template-columns:1fr;gap:25px}.contact-card{padding:30px 24px}.footer-main{padding:25px 0;align-items:flex-start;gap:14px;flex-direction:column}.footer-main>span{order:2}.footer-main>a:last-child{order:3}.footer-bottom{font-size:9px}.text-link{font-size:12px}}


/* NFM v4 refinements: unified marine-blue service cards and modern booking CTA */
.service-card,
.service-feature {
  background: #176b9b;
  color: #fff;
  border: 1px solid rgba(255,255,255,.12);
}
.service-number,
.service-feature .service-number {
  color: #d5eaf6;
}
.service-icon {
  color: #b9def2;
}
.service-card h3 {
  color: #fff;
}
.service-card p,
.service-feature p {
  color: #e3f0f7;
}
.button-primary {
  background: rgba(48, 137, 190, .72);
  color: #fff;
  border: 1px solid rgba(255,255,255,.62);
  border-radius: 14px;
  padding: 17px 25px;
  box-shadow: 0 8px 24px rgba(0, 18, 34, .18);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.button-primary:hover {
  background: rgba(48, 137, 190, .9);
  box-shadow: 0 10px 28px rgba(0, 18, 34, .24);
  transform: translateY(-1px);
}

/* NFM v5: consistent service-specific line icons */
.service-icon { width:48px; height:48px; display:flex; align-items:center; justify-content:flex-start; color:#d5eaf6; }
.service-icon svg { width:42px; height:42px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }

/* NFM v6: social and directions links */
.contact-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.2);
}
.contact-links a,
.footer-social a {
  color: inherit;
  text-decoration: none;
  font-weight: 600;
  transition: opacity .2s ease;
}
.contact-links a:hover,
.footer-social a:hover { opacity: .72; }
.contact-links a span { margin-left: 5px; }
.footer-social { display:flex; flex-wrap:wrap; gap:18px; }
@media (max-width: 700px) {
  .footer-social { width:100%; }
}


/* NFM v8: simple utility links and consistent call button */
.topline-links { display:flex; align-items:center; gap:22px; }
.topline-links a { white-space:nowrap; }
.topline-links a:hover { color:#fff; }
.hero-actions .hero-booking { margin-top:0; background:var(--navy); color:#fff; border:0; border-radius:0; box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none; }
.hero-actions .hero-booking:hover { background:#173c58; transform:none; box-shadow:none; }
.under-link span { margin-left:18px; }
@media(max-width:600px) {
  .topline-inner { gap:10px; }
  .topline-links { gap:12px; letter-spacing:.07em; font-size:8px; }
  .topline-links strong { margin-left:3px; }
}

/* NFM v10: hero link underline and simplified top-right call action */
.hero-actions .text-link {
  display: inline-block;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(255,255,255,.9);
}
.topline-links .topline-call {
  display: inline-block;
  padding: 7px 12px;
  background: #fff;
  color: #041321;
  font-weight: 700;
  letter-spacing: .08em;
  transition: background .2s ease, color .2s ease;
}
.topline-links .topline-call:hover {
  background: #dce8ee;
  color: #041321;
}
@media(max-width:600px) {
  .topline-links .topline-call { padding: 6px 9px; }
}
