@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Italiana&display=swap');
:root{--navy:#061d32;--ink:#102a3e;--cyan:#21c4d5;--cream:#f5f6f3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:15px 5%;background:white;border-bottom:1px solid #dde1e3;position:relative;z-index:5}header img{width:270px;max-width:36vw}nav{display:flex;align-items:center;gap:30px;font-size:13px}nav a:hover{color:#008a9e}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:var(--navy);color:white;padding:18px 27px;border:1px solid var(--navy);font-size:13px;cursor:pointer}.btn.light{background:white;color:var(--navy);border-color:white}.btn.outline{background:transparent;border-color:#889ba8;color:inherit}.eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:30px;height:1px;background:var(--cyan)}h1,h2,h3{font-family:'Italiana',Georgia,serif;font-weight:400}h1{font-size:clamp(60px,7.5vw,112px);line-height:.98;letter-spacing:-2px;margin:32px 0}h2{font-size:clamp(40px,4.8vw,68px);line-height:1.06;margin:24px 0}h3{font-size:33px;margin:20px 0 12px}p{line-height:1.85;font-size:14px;color:#62717b}.hero{min-height:735px;display:grid;grid-template-columns:55% 45%;background:var(--navy);color:white;position:relative}.hero-copy{padding:90px 8% 70px 9%}.hero p{color:#b6c5ce;max-width:400px;margin:30px 0}.hero em{color:#61d1dd;font-weight:400}.hero-photo{position:relative;background:url('/assets/yacht.jpg') center 48%/cover}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#061d3240,transparent)}.photo-label{position:absolute;bottom:35px;left:35px;color:white;z-index:1;font-size:10px;letter-spacing:3px}.hero-bottom{margin-top:55px;font-size:10px;letter-spacing:2px;color:#8fa5b5}.row{display:flex;gap:14px;flex-wrap:wrap}.strip{display:flex;justify-content:space-between;padding:28px 6%;border-bottom:1px solid #d5dddf;font-size:10px;letter-spacing:2px}.strip span:before{content:'✦';color:#00a9bc;margin-right:14px}.wrap{max-width:1320px;margin:auto;padding:100px 6%}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center}.intro p{max-width:420px}.section-top{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px}.section-top h2{max-width:650px}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:38px}.card img{width:100%;height:290px;object-fit:cover}.card .num{font-size:11px;color:#008fa2;letter-spacing:2px}.card p{max-width:490px}.text-link{display:inline-block;font-size:12px;border-bottom:1px solid #97adb7;padding:10px 0}.dark{background:var(--navy);color:white}.dark p{color:#b1c1cc}.split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.split>img{width:100%;height:550px;object-fit:cover}.plan{border-top:1px solid #506170;padding:23px 0;display:flex;justify-content:space-between}.plan strong{font-size:15px;font-weight:500}.plan small{color:#9aafb9}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:50px}.process b{font-size:12px;color:#008fa2}.banner{text-align:center;padding:90px 20px;background:#ddebef}.banner h2{max-width:700px;margin:20px auto 32px}footer{background:#041726;color:#9dafba;padding:50px 6% 25px}footer .foot-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:45px}footer h3{color:white;font-size:28px;margin:0 0 10px}footer a{font-size:13px;display:inline-block;margin:8px 15px 0 0}.copyright{border-top:1px solid #2d414f;padding-top:22px;font-size:10px;display:flex;justify-content:space-between}.page-head{padding:80px 6%;background:var(--navy);color:white}.page-head h1{font-size:75px;max-width:900px}.page-head p{color:#b7c9d3;max-width:600px}.form{background:white;padding:40px;border:1px solid #dae1e4}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{font-size:12px;display:block}input,select,textarea{width:100%;padding:15px;margin-top:8px;background:#f7f8f8;border:1px solid #ccd6db;color:var(--ink)}textarea{min-height:100px}.full{grid-column:1/-1}.menu{display:none}details{padding:24px 0;border-bottom:1px solid #cbd7dc}summary{cursor:pointer;font-size:16px}details p{max-width:700px}.sticky-call{display:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #00b8cc;outline-offset:5px}@media(max-width:800px){header{height:80px}header img{max-width:65vw;width:230px}.menu{display:block;background:none;border:0;font-size:23px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:white;padding:25px;flex-direction:column;align-items:stretch}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:60px 7%}.hero-photo{height:420px;background-position:center 45%}.hero-bottom{margin-top:35px}.strip{gap:16px;flex-wrap:wrap;font-size:8px}.wrap{padding:65px 7%}.intro,.split{grid-template-columns:1fr;gap:30px}.cards{grid-template-columns:1fr}.card img{height:280px}.section-top{display:block}.split>img{height:350px}.process{grid-template-columns:1fr;gap:15px}.page-head h1{font-size:56px}.fields{grid-template-columns:1fr}.full{grid-column:auto}.form{padding:25px}.foot-top{flex-direction:column}.copyright{gap:15px;flex-direction:column}.sticky-call{display:block;position:fixed;bottom:18px;right:18px;background:var(--cyan);padding:15px 20px;z-index:10;color:#041726;border-radius:40px;font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.topline{background:#0b293f;color:#bacbd4;display:flex;justify-content:space-between;padding:12px 5%;font-size:9px;letter-spacing:1.6px}.topline a{color:white}.nav-dropdown{border:0;padding:0;position:relative}.nav-dropdown summary{font-size:13px;list-style:none;padding:15px 0}.nav-dropdown summary:after{content:'⌄';padding-left:8px;color:#008fa2}.dropdown{position:absolute;top:45px;left:-25px;min-width:260px;padding:18px 25px;background:white;box-shadow:0 20px 55px #001e3330;border-top:2px solid #00c9d7;display:grid;gap:0}.dropdown a{padding:12px 0;font-size:12px;border-bottom:1px solid #e7edf0}.hero-photo{background-image:url('/assets/yacht-wide.jpg');background-position:57% center}.service-hero{position:relative;min-height:570px;display:flex;align-items:center;background:#061d32;color:white;overflow:hidden}.service-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.48}.service-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#061d32e8,transparent)}.service-hero>div{position:relative;z-index:1;padding:70px 6%;max-width:1000px}.service-hero h1{font-size:clamp(52px,7vw,95px)}.service-hero p{color:white;font-size:18px}.service-list{background:#e8eef0;padding:35px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 25px}.service-tile{display:block}.tile-image{overflow:hidden}.tile-image img{width:100%;height:250px;object-fit:cover;transition:transform .8s ease}.service-tile:hover img{transform:scale(1.055)}.service-tile small{display:block;font-size:9px;letter-spacing:2px;color:#008fa2;margin-top:22px}.service-tile h3{font-size:27px}.service-tile h3 span{float:right;font-family:Arial;font-size:20px;color:#00a6ba}.service-tile p{margin:0}.footer-services{border-top:1px solid #2d414f;margin-top:25px;padding-top:15px;display:flex;gap:20px;flex-wrap:wrap}.footer-services a{font-size:11px;color:#a8beca}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.btn{transition:background .25s,color .25s,transform .25s}.btn:hover{background:#00a4b7;color:white;border-color:#00a4b7;transform:translateY(-2px)}#request-preview{white-space:pre-wrap;overflow-wrap:anywhere;background:#edf5f6;padding:20px;font:13px/1.8 'DM Sans',sans-serif}#send{display:block}#send[hidden],#copy-request[hidden]{display:none}.contact-note{font-size:11px}.hero h1{animation:arrive 1s ease both}@keyframes arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@media(max-width:1000px){nav{gap:16px}header img{width:215px}.service-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.topline{font-size:8px;gap:15px;letter-spacing:1px}.topline span{max-width:220px}.dropdown{position:static;box-shadow:none;min-width:0;padding:5px 20px;border-top:1px solid #00c9d7}.nav-dropdown summary{padding:14px 0}.service-grid{grid-template-columns:1fr}.service-hero{min-height:490px}.service-hero>div{padding:55px 7%}.hero-photo{height:400px;background-position:center}.tile-image img{height:300px}}@media(prefers-reduced-motion:reduce){.hero h1{animation:none}.reveal{opacity:1;transform:none;transition:none}.tile-image img,.btn{transition:none}}
.mobile-care-bar{display:none}.care-plan-entry>p{max-width:550px;margin:20px auto}.care-plan-entry .btn{position:relative;overflow:hidden}.care-plan-entry .btn:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 25%,#ffffff35 50%,transparent 75%);transform:translateX(-130%)}@media(hover:hover) and (prefers-reduced-motion:no-preference){.care-plan-entry .btn:hover:after{transform:translateX(130%);transition:transform .7s ease}}@media(max-width:800px){body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.mobile-care-bar{display:grid;grid-template-columns:1fr 1.3fr;gap:8px;position:fixed;bottom:0;left:0;right:0;padding:10px 5% calc(10px + env(safe-area-inset-bottom));background:#061d32f5;border-top:1px solid #4d6a7b;z-index:12}.mobile-care-bar a{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #819da9;color:white;font-size:12px}.mobile-care-bar a:last-child{background:#22c4d5;border-color:#22c4d5;color:#052338}.signature-active .mobile-care-bar,.orbit-is-active .mobile-care-bar{visibility:hidden;pointer-events:none}}

.project-gallery[hidden],.project-comparison[hidden]{display:none}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.comparison-scene{position:relative;aspect-ratio:16/10;overflow:hidden;background:#dae5e7}.comparison-scene img{position:absolute;width:100%;height:100%;object-fit:cover}.comparison-handle{position:absolute;top:0;bottom:0;width:2px;background:white;transform:translateX(-50%);pointer-events:none}.comparison-handle:after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;width:40px;height:40px;display:grid;place-items:center;background:white;color:#08253a}.comparison-labels{position:absolute;top:14px;left:14px;right:14px;display:flex;justify-content:space-between}.comparison-labels span{font-size:11px;background:#061d32e6;color:white;padding:8px 12px}.project-comparison>label{margin-top:15px}.project-comparison input{accent-color:#008c9e;padding:0;min-height:44px}.project-comparison h3{font-size:28px}@media(max-width:800px){.project-grid{grid-template-columns:1fr}}
/* Local service information stays readable outside the cinematic sections. */
.seo-home-title{font-size:clamp(40px,4.8vw,68px);line-height:1.06;letter-spacing:0;margin:24px 0}.seo-breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:20px 6%;font-size:11px;color:#506b7a;background:#edf3f4}.seo-breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.seo-planning{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding-top:0}.seo-planning h2{font-size:44px}.seo-planning ul{padding-left:20px}.seo-planning li{font-size:13px;line-height:1.85;margin:12px 0}.seo-service-links{list-style:none;padding-left:0!important}.seo-service-links li{margin:5px 0}.seo-faq{padding-top:15px}.seo-coverage{border-top:1px solid #d6e0e4;padding-top:50px;padding-bottom:50px}.seo-coverage h2{font-size:clamp(30px,3.5vw,46px)}.seo-coverage p{max-width:760px}.seo-area-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px}.seo-area-links a{font-size:12px;border-bottom:1px solid #91aeb9;padding:6px 0}.seo-area-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.seo-area-grid article{border-top:1px solid #bacdd6;padding:20px 0}.seo-area-grid h3{margin:8px 0}.seo-area-grid h3 a:hover,.seo-area-links a:hover{color:#007d8f}@media(max-width:800px){.seo-planning{grid-template-columns:1fr;gap:30px}.seo-area-grid{grid-template-columns:1fr}.seo-coverage{padding-top:40px;padding-bottom:40px}.seo-breadcrumbs{font-size:10px;gap:8px}}
