@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Manrope:wght@400;500;600&display=swap');

:root{--ink:#102c3b;--navy:#0b2738;--deep:#071c29;--foam:#f5f4ef;--white:#fff;--mist:#dfe8e8;--sand:#c7a879;--line:rgba(16,44,59,.17);--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--foam);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
body:has(dialog[open]){overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
img{display:block;max-width:100%}
.skip-link{position:fixed;left:16px;top:-100px;z-index:100;background:#fff;padding:10px 16px}.skip-link:focus{top:16px}
.site-header{position:fixed;z-index:50;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:14px clamp(20px,4vw,72px);transition:.3s;background:linear-gradient(180deg,rgba(5,23,34,.72),transparent);color:#fff}
.site-header.scrolled{padding-top:9px;padding-bottom:9px;background:rgba(8,31,44,.96);box-shadow:0 4px 30px rgba(0,0,0,.13);backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:14px}.brand img{width:62px;height:58px;object-fit:contain;background:#fff;border-radius:50%;padding:3px}.brand span{display:flex;flex-direction:column;line-height:1}.brand strong{font:500 24px/1 var(--sans);letter-spacing:.18em}.brand small{margin-top:8px;text-transform:uppercase;letter-spacing:.12em;font-size:8px;opacity:.75}
nav{display:flex;align-items:center;gap:clamp(22px,2.8vw,46px)}nav>a{font-size:14px;font-weight:500;position:relative}nav>a:not(.nav-cta)::after{content:'';position:absolute;left:0;bottom:-6px;width:0;height:1px;background:#fff;transition:.25s}nav>a:hover::after,nav>a:focus-visible::after{width:100%}.nav-cta{border:1px solid rgba(255,255,255,.55);padding:11px 18px;border-radius:99px;transition:.2s}.nav-cta:hover{background:#fff;color:var(--ink)}
.menu-toggle{display:none;border:1px solid rgba(255,255,255,.45);background:transparent;color:#fff;border-radius:50px;padding:8px 14px}
.hero{min-height:100svh;position:relative;display:flex;flex-direction:column;justify-content:center;padding:160px clamp(24px,8vw,140px) 130px;color:#fff;background:url('../images/hero.webp') center/cover no-repeat;isolation:isolate}
.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,23,35,.85) 0%,rgba(4,23,35,.58) 38%,rgba(4,23,35,.12) 70%),linear-gradient(0deg,rgba(4,23,35,.42),transparent 40%)}
.hero-content{max-width:720px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.3em;font-weight:600;margin:0 0 24px;color:rgba(255,255,255,.76)}.eyebrow.dark{color:#58717a}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:.98;margin:0}.hero h1{font-size:clamp(58px,8vw,124px);max-width:830px}.hero-lead{font-size:clamp(18px,2vw,23px);font-weight:300;max-width:610px;line-height:1.55;margin:30px 0 40px;color:rgba(255,255,255,.88)}
.hero-actions{display:flex;align-items:center;gap:32px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;border:0;border-radius:99px;padding:15px 25px;font-size:14px;font-weight:600;cursor:pointer;transition:.25s}.button-light{background:#fff;color:var(--ink)}.button-light:hover{background:var(--sand);color:#fff;transform:translateY(-2px)}.text-link{font-weight:500;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:4px}.text-link span{margin-left:8px}
.hero-proof{position:absolute;bottom:32px;right:clamp(24px,6vw,90px);display:flex;border-top:1px solid rgba(255,255,255,.28);padding-top:18px;gap:42px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.hero-proof b{font-weight:400;color:var(--sand);margin-right:8px}
.section{padding:clamp(85px,10vw,150px) clamp(22px,6vw,100px)}.section-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:end;max-width:1400px;margin:0 auto 70px}.section-heading h2,.about h2,.contact h2{font-size:clamp(46px,6vw,84px)}.section-heading>p{font-size:18px;color:#536b74;max-width:520px;margin:0 0 6px}.section-heading.light>p{color:#afc1c6}.section-heading.light{color:#fff}
.service-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-card{position:relative;padding:36px 28px 38px;border-right:1px solid var(--line);min-height:390px;display:flex;flex-direction:column;transition:.3s}.service-card:last-child{border-right:0}.service-card:hover{background:#fff;transform:translateY(-6px);box-shadow:0 22px 60px rgba(19,44,54,.09)}.service-number{font-size:11px;letter-spacing:.18em;color:#71868c}.service-symbol{font:400 54px/1 var(--serif);margin:auto 0 48px;color:var(--sand)}.service-card h3{font:400 25px/1.2 var(--serif);margin:0 0 16px}.service-card p{font-size:14px;color:#63777e;margin:0;line-height:1.7}
.boats-section{background:var(--deep);color:#fff;overflow:hidden}.boats-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.boat-card{background:#0e3042;border:1px solid rgba(255,255,255,.1)}.boat-image{position:relative;border:0;padding:0;background:#15394a;width:100%;aspect-ratio:3/2;overflow:hidden;display:block;color:#fff;cursor:pointer}.boat-image:disabled{cursor:default}.boat-image img{width:100%;height:100%;object-fit:cover;transition:.6s}.boat-image:hover img{transform:scale(1.035)}.boat-placeholder{position:absolute;inset:0;display:grid;place-items:center;font:400 34px/1 var(--serif);letter-spacing:.18em;opacity:.4}.status,.photo-count{position:absolute;top:18px;border-radius:99px;padding:7px 12px;background:rgba(5,25,36,.8);backdrop-filter:blur(8px);text-transform:uppercase;font-size:9px;letter-spacing:.16em}.status{left:18px}.photo-count{right:18px}.status-verkocht{background:#7d3c35}.status-verwacht{background:#7a6644}.boat-info{padding:28px}.boat-info>div:first-child{display:flex;justify-content:space-between;gap:20px}.boat-info h3{margin:0;font:400 29px/1.2 var(--serif)}.price{margin:4px 0 0;color:var(--sand);white-space:nowrap}.boat-info dl{display:flex;gap:34px;margin:24px 0}.boat-info dl div{display:flex;flex-direction:column}.boat-info dt{text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:#8ca0a8}.boat-info dd{margin:2px 0 0;font-size:14px}.boat-description{color:#b7c6ca;font-size:14px}.boat-info>a{display:inline-block;margin-top:10px;padding-bottom:3px;border-bottom:1px solid #66808a;font-size:13px}.empty-offer{max-width:900px;margin:30px auto 0;padding:65px;border:1px solid rgba(255,255,255,.15);text-align:center;background:linear-gradient(130deg,rgba(255,255,255,.04),rgba(255,255,255,.01))}.empty-offer h3{font:400 clamp(32px,4vw,52px)/1.15 var(--serif);margin:0}.empty-offer>p:not(.eyebrow){color:#adc0c5;max-width:590px;margin:22px auto 30px}
.visual-stories{background:#f5f4ef}.album-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.album-card{background:#fff;border:1px solid var(--line)}.album-cover{display:block;position:relative;width:100%;aspect-ratio:4/3;padding:0;border:0;background:#dce5e4;color:#fff;overflow:hidden;cursor:pointer}.album-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,29,41,.68),transparent 50%);transition:.35s}.album-cover img{width:100%;height:100%;object-fit:cover;transition:.6s}.album-card:hover .album-cover img{transform:scale(1.045)}.album-count,.album-open{position:absolute;z-index:2;bottom:16px;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.album-count{left:18px}.album-open{right:18px;opacity:0;transform:translateY(6px);transition:.3s}.album-card:hover .album-open{opacity:1;transform:none}.album-copy{padding:24px}.album-copy h3{font:400 28px/1.2 var(--serif);margin:0}.album-copy p{margin:10px 0 0;color:#667a81;font-size:14px}.album-card:first-child:nth-last-child(2),.album-card:first-child:nth-last-child(2)~.album-card{grid-column:span 1}.about{display:grid;grid-template-columns:1fr 1fr;min-height:760px;background:#e8ece9}.about-image{background:linear-gradient(0deg,rgba(10,39,54,.15),transparent),url('../images/hero.webp') 68% center/cover no-repeat;min-height:520px}.about-copy{align-self:center;padding:80px clamp(38px,7vw,110px)}.about-copy h2{max-width:620px}.about-lead{color:#536b73;font-size:18px;line-height:1.8}.about blockquote{font:italic 22px/1.5 var(--serif);border-left:2px solid var(--sand);padding-left:24px;margin:36px 0;color:#244554}.dark-link{color:var(--ink);border-color:#80959b}
.contact{background:var(--navy);color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;padding:clamp(90px,11vw,160px) clamp(24px,8vw,130px)}.contact-intro>p:not(.eyebrow){font-size:18px;color:#aec0c5;max-width:530px}.contact-details{margin-top:52px;display:grid;gap:18px}.contact-details a,.contact-details span{display:flex;flex-direction:column;font-size:17px}.contact-details small{text-transform:uppercase;letter-spacing:.14em;font-size:9px;color:#7f9aa3;margin-bottom:3px}.contact-form{background:#fff;color:var(--ink);padding:clamp(28px,4vw,55px);box-shadow:0 28px 80px rgba(0,0,0,.16)}.contact-form label{display:block;text-transform:uppercase;font-size:9px;font-weight:600;letter-spacing:.12em;margin-bottom:22px}.contact-form input,.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #bac7c9;background:transparent;border-radius:0;padding:11px 0;color:var(--ink);outline:none;text-transform:none;font-size:16px;letter-spacing:0;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--sand)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:30px}.contact-form .button{background:var(--navy);color:#fff;margin-top:8px}.privacy-note{font-size:11px;color:#7b8c91;margin:16px 0 0}.honeypot{position:absolute;left:-9999px}.form-notice{padding:13px 16px;margin-bottom:22px;font-size:13px}.form-notice.success{background:#e6f3eb;color:#23613b}.form-notice.error{background:#f9e8e5;color:#8b392f}
footer{background:#061823;color:#fff;padding:55px clamp(24px,6vw,95px) 28px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;border-top:1px solid rgba(255,255,255,.08)}.footer-brand{display:flex;align-items:center;gap:18px}.footer-brand img{border-radius:50%;background:#fff;padding:3px}.footer-brand span{font-size:27px;letter-spacing:.18em}footer>p{text-transform:uppercase;font-size:10px;letter-spacing:.18em;color:#78909a;text-align:right}footer>div{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.1);padding-top:20px;display:flex;justify-content:space-between;font-size:11px;color:#71868f}
.gallery{width:min(1100px,94vw);max-width:none;border:0;padding:0;background:#061823;color:#fff}.gallery::backdrop{background:rgba(1,12,18,.9);backdrop-filter:blur(6px)}.gallery-stage{display:grid;grid-template-columns:55px 1fr 55px;align-items:center;min-height:65vh}.gallery-stage img{width:100%;height:min(72vh,760px);object-fit:contain}.gallery button{border:0;background:transparent;color:#fff;cursor:pointer;font-size:42px}.gallery-close{position:absolute;z-index:2;right:10px;top:5px}.gallery-caption{padding:15px 70px 22px;display:flex;justify-content:space-between;color:#a7bac0}.gallery-caption strong{color:#fff;font-family:var(--serif);font-size:20px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}.service-card:nth-child(2),.boat-card:nth-child(2){transition-delay:.08s}.service-card:nth-child(3){transition-delay:.16s}.service-card:nth-child(4){transition-delay:.24s}
@media(max-width:980px){.brand small{display:none}.site-header nav{position:absolute;top:100%;left:16px;right:16px;background:var(--deep);padding:25px;display:none;flex-direction:column;align-items:stretch;gap:20px;box-shadow:0 20px 40px rgba(0,0,0,.2)}.site-header nav.open{display:flex}.menu-toggle{display:block}.nav-cta{text-align:center}.hero{padding-left:30px;padding-right:30px}.hero-proof{left:30px;right:auto}.section-heading{grid-template-columns:1fr;gap:30px}.service-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(2){border-right:0}.service-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.boats-grid{grid-template-columns:1fr}.album-grid{grid-template-columns:1fr 1fr}.about{grid-template-columns:1fr}.about-image{min-height:58vw}.contact{grid-template-columns:1fr;gap:60px}}
@media(max-width:620px){.site-header{padding:9px 16px}.brand img{width:48px;height:46px}.brand strong{font-size:19px}.hero{min-height:760px;padding-top:120px;padding-bottom:160px}.hero h1{font-size:56px}.hero-lead{font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-proof{right:20px;left:20px;bottom:28px;gap:0;justify-content:space-between}.hero-proof span{display:flex;flex-direction:column}.hero-proof b{margin:0}.section{padding-left:20px;padding-right:20px}.section-heading{margin-bottom:45px}.service-grid{grid-template-columns:1fr}.service-card{border-right:0!important;border-bottom:1px solid var(--line);min-height:315px}.service-card:last-child{border-bottom:0}.service-symbol{margin:36px 0 30px}.empty-offer{padding:45px 22px}.boat-info>div:first-child{display:block}.price{margin-top:8px}.album-grid{grid-template-columns:1fr}.album-open{opacity:1;transform:none}.about-copy{padding:70px 25px}.field-row{grid-template-columns:1fr;gap:0}.contact{padding-left:20px;padding-right:20px}.contact-form{padding:30px 22px}.contact h2{font-size:47px}footer{grid-template-columns:1fr}footer>p{text-align:left}footer>div{grid-column:auto}.gallery-stage{grid-template-columns:38px 1fr 38px}.gallery-caption{padding-left:45px;padding-right:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
