/* Homepage: large readable type and a seamless photographic marine scene. */
.homepage{font-size:18px}.homepage [hidden]{display:none!important}.homepage .shell{max-width:1360px}
.homepage .site-header nav a{font-size:18px}.homepage .site-header nav{gap:22px}.homepage .site-header nav .button{font-size:15px}.homepage .identity img{width:225px}
.homepage .home-hero{--hero-bg:#102c42;background:var(--hero-bg);padding:54px 0 42px;overflow:hidden}.homepage .hero-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);gap:24px;align-items:center}.homepage .hero-copy{position:relative;z-index:2;min-height:0;padding:8px 0 0}.homepage .hero-copy h1{font-size:clamp(42px,4.3vw,58px);line-height:1.13;letter-spacing:-.045em;font-weight:600}.homepage .hero-copy p{font-size:18px;line-height:1.7;max-width:480px;color:#c5d4e0}.homepage .hero-copy .eyebrow{font-size:12px;letter-spacing:.12em}.homepage .hero-copy .button,.homepage .hero-copy .text-link{font-size:16px}.homepage .hero-copy .actions{gap:23px}.homepage .hero-caption{font-size:11px;letter-spacing:.025em;line-height:1.8;margin-top:34px;flex-wrap:wrap;padding-top:20px}.homepage .hero-copy h1 em{color:#e8c886}
.hero-experience{min-width:0;position:relative;align-self:center}.experience-tabs{display:flex;gap:25px;justify-content:flex-end;position:relative;z-index:4;padding:0 12px}.experience-tabs button{font-size:14px;font-weight:500;padding:10px 0;background:none;border:0;border-bottom:2px solid transparent;color:#a6bfce}.experience-tabs button[aria-selected="true"]{color:#f1d49e;border-bottom-color:#dfbd78}.experience-tabs button:hover{color:white}.experience-stage{position:relative;aspect-ratio:1.5;min-width:0}.real-scene{position:absolute;inset:0;overflow:hidden;isolation:isolate;background:var(--hero-bg)}.scene-depth{position:absolute;inset:-2%;transform:translate3d(var(--scene-x,0px),var(--scene-y,0px),0);transition:transform .65s ease-out;will-change:transform}.harbour-photo{display:block;width:100%;height:100%;object-fit:cover}.scene-edge{position:absolute;inset:-1px;pointer-events:none;background:linear-gradient(90deg,#102c42 0%,transparent 18%,transparent 85%,#102c42 100%),linear-gradient(180deg,#102c42 0%,transparent 18%,transparent 80%,#102c42 100%);z-index:5}.scene-edge:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 54% 54%,transparent 44%,#102c4260 76%,#102c42 100%)}
.vessel-track{position:absolute;width:62%;left:0;bottom:23%;z-index:2;animation:vessel-sail 42s linear infinite;animation-delay:-17s;will-change:transform}.vessel-bob{position:relative;animation:vessel-buoyancy 6s ease-in-out infinite;transform-origin:50% 85%}.vessel-photo{width:100%;height:auto;display:block;filter:brightness(.84) saturate(.85);mask-image:linear-gradient(to bottom,#000 0%,#000 86%,transparent 100%)}.vessel-wake{position:absolute;left:-13%;right:0;bottom:4%;height:8%;background:radial-gradient(ellipse,#aed1df66,transparent 68%);filter:blur(2px);transform:skewX(-24deg);opacity:.6;z-index:-1}.water-glint{position:absolute;inset:52% -10% 3%;background:repeating-linear-gradient(174deg,transparent 0 17px,#84a7bf10 19px,transparent 22px 36px);mask-image:linear-gradient(transparent,#0008 35%,transparent);animation:water-drift 12s ease-in-out infinite;mix-blend-mode:screen;pointer-events:none}.platform-beacon,.site-beacon{position:absolute;width:3px;height:3px;border-radius:50%;background:#ffc070;box-shadow:0 0 9px 3px #ffc07070;animation:work-light 4s ease-in-out infinite}.platform-beacon{left:79%;top:13%}.site-beacon{left:21%;top:35%;animation-delay:1.7s}.construction-hoist{position:absolute;left:13.8%;top:39%;width:1px;height:5%;background:#8b9caa88;transform-origin:top;animation:site-hoist 14s ease-in-out infinite}.construction-hoist:after{content:"";position:absolute;bottom:-2px;left:-3px;width:7px;height:3px;background:#ca9c59;box-shadow:0 0 3px #e8c07855}
.experience-foot{display:flex;justify-content:space-between;align-items:center;gap:18px;position:relative;z-index:6;padding:0 12px;color:#a8becc;font-size:12px;letter-spacing:.035em}.scene-pause{background:transparent;border:1px solid #ffffff28;border-radius:4px;color:#d8e3eb;font-size:12px;padding:8px 12px;white-space:nowrap}.scene-pause:hover{border-color:#e2c17a;color:#e2c17a}.scene-paused *{animation-play-state:paused!important}.scene-paused .scene-depth{transform:none!important}
.homepage .hero__rig{position:absolute;inset:0;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0;padding:0 16px;display:flex;flex-direction:column;justify-content:center}.homepage .hero__rig .rig{width:100%;height:calc(100% - 76px);max-height:none;min-height:0;background:transparent}.homepage .rig__hint{font-size:12px;margin:0;text-align:center}.homepage .rig__readout{padding:9px 0 0;border-color:#ffffff24;font-size:12px;background:transparent;gap:8px}.homepage .rig__readout b{font-size:18px}
.homepage .section{padding-top:70px;padding-bottom:70px}.homepage main h2{font-size:clamp(32px,3.1vw,44px);line-height:1.2;letter-spacing:-.035em}.homepage .section-heading{gap:30px;margin-bottom:36px}.homepage .section-heading .text-link{font-size:16px}.homepage .eyebrow{font-size:12px}.homepage .home-group-grid{gap:24px}.homepage .home-group h3{font-size:23px;line-height:1.35}.homepage .home-group p{font-size:16px;line-height:1.65;min-height:54px}.homepage .home-group span{font-size:14px}.homepage .home-group>div:last-child{padding:25px}.homepage .home-group-art{height:210px}.homepage .home-support{gap:65px;border-top:1px solid var(--line)}.homepage .home-support p{font-size:18px;line-height:1.75}.homepage .home-support .button,.homepage .home-support .text-link{font-size:16px}.homepage .enquiry-strip .shell{font-size:16px}.homepage .site-footer{font-size:16px}.homepage .site-footer h3{font-size:20px}.homepage .site-footer p,.homepage .site-footer a{font-size:15px}.homepage .footer-bottom{font-size:12px}
@keyframes vessel-sail{0%{transform:translate3d(-95%,0,0)}100%{transform:translate3d(170%,0,0)}}
@keyframes vessel-buoyancy{0%,100%{transform:translateY(0) rotate(-.35deg)}50%{transform:translateY(3px) rotate(.35deg)}}
@keyframes water-drift{0%,100%{transform:translateX(-2%) scaleY(1);opacity:.5}50%{transform:translateX(2%) scaleY(1.06);opacity:.85}}
@keyframes work-light{0%,100%{opacity:.35}50%{opacity:.95}}
@keyframes site-hoist{0%,100%{height:5%}50%{height:8%}}
@media(min-width:901px) and (max-width:1150px){.homepage .site-header nav{gap:14px}.homepage .site-header nav a{font-size:14px}.homepage .identity img{width:200px}.homepage .hero-grid{gap:15px;grid-template-columns:.9fr 1.1fr}.homepage .hero-copy h1{font-size:45px}.homepage .hero-copy p{font-size:18px}.homepage .hero-copy .actions{gap:18px}.homepage .hero-copy .text-link{font-size:14px}}
@media(max-width:900px){.homepage .hero-grid{grid-template-columns:1fr}.homepage .hero-copy{max-width:660px}.homepage .hero-copy h1{font-size:48px}.homepage .hero-copy h1 br{display:none}.homepage .hero-copy h1 em:before{content:" "}.homepage .hero-copy p{max-width:630px}.homepage .hero-caption{margin-top:28px}.hero-experience{width:100%;max-width:760px;margin:auto}.experience-tabs{justify-content:flex-start;padding-top:10px}.experience-stage{margin-top:-10px}.homepage .home-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homepage .site-header nav a{font-size:16px}.homepage .home-support{gap:35px}.homepage .section{padding-top:54px;padding-bottom:54px}}
@media(max-width:620px){.homepage .home-hero{padding:34px 0 27px}.homepage .hero-copy h1{font-size:40px;line-height:1.15}.homepage .hero-copy p{font-size:18px;line-height:1.65}.homepage .hero-copy .button,.homepage .hero-copy .text-link{font-size:15px}.homepage .hero-caption{font-size:10px;gap:8px}.homepage .hero-grid{gap:24px}.experience-tabs{gap:23px;padding-inline:0}.experience-tabs button{font-size:13px}.experience-stage{margin-inline:-15px;margin-top:0;aspect-ratio:1.4}.experience-foot{padding:0;font-size:10px;gap:10px}.scene-pause{font-size:11px;padding:7px 9px}.homepage .hero__rig{padding:0 8px}.homepage .rig__hint{font-size:10px}.homepage .rig__readout{font-size:10px}.homepage .rig__readout b{font-size:16px}.homepage main h2{font-size:34px;line-height:1.25}.homepage .section-heading{display:block}.homepage .section-heading>.text-link{margin-top:20px}.homepage .home-group-grid{gap:16px}.homepage .home-group>div:last-child{padding:19px}.homepage .home-group h3{font-size:20px}.homepage .home-group p{font-size:15px;min-height:0}.homepage .home-group span{font-size:13px}.homepage .home-group-art{height:165px}.homepage .home-support{grid-template-columns:1fr;gap:23px}.homepage .section{padding-top:44px;padding-bottom:44px}.homepage .home-support p{font-size:18px}.homepage .enquiry-strip .shell{font-size:15px}}
@media(max-width:380px){.homepage .hero-copy h1{font-size:36px}.homepage .home-group-grid{grid-template-columns:1fr}.homepage .home-group-art{height:200px}.homepage main h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.real-scene *{animation:none!important;transition:none!important}.vessel-track{transform:translateX(20%)}.scene-depth{transform:none!important}}

/* Moving water texture fades in below the fixed horizon. */
.water-surface{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;mask-image:linear-gradient(to bottom,transparent 52%,#000 62%);z-index:1}.water-glint{z-index:1;opacity:.55}.vessel-track{z-index:2}

/* Classic dawn: restrained navy and brass, clear detail and slow movement. */
.homepage .home-hero{--hero-bg:#102c42;background:var(--hero-bg);padding:56px 0 42px;color:#f5f7f8}.homepage .hero-copy h1{color:#f5f7f8;letter-spacing:-.035em}.homepage .hero-copy h1 em{color:#dfbf7d}.homepage .hero-copy p{color:#c4d2dc}.homepage .hero-copy .eyebrow{color:#d4b77e}.homepage .hero-caption{color:#a8bdca;border-color:#ffffff20}.homepage .scene-depth{filter:brightness(1.06) contrast(1.025) saturate(.88)}.homepage .scene-edge{background:linear-gradient(90deg,#102c42 0%,transparent 13%,transparent 90%,#102c42 100%),linear-gradient(180deg,#102c42 0%,transparent 12%,transparent 86%,#102c42 100%)}.homepage .scene-edge:after{background:radial-gradient(ellipse at 54% 54%,transparent 53%,#102c4235 80%,#102c42 100%)}.homepage .vessel-photo{filter:brightness(.94) saturate(.9)}.homepage .vessel-track{animation-duration:58s;animation-delay:-23s}.homepage .vessel-bob{animation:classic-buoyancy 8s ease-in-out infinite}.homepage .vessel-wake{opacity:.3;filter:blur(1px);background:radial-gradient(ellipse,#a6c3d255,transparent 70%)}.homepage .water-glint,.homepage .platform-beacon,.homepage .site-beacon{display:none}.homepage .construction-hoist{animation-duration:22s;opacity:.65}.homepage .scene-pause{border-color:#ffffff28;color:#c9d7e1;background:transparent}.homepage .scene-pause:hover{border-color:#cfb279;color:#e4c68c}.homepage .experience-foot{color:#a6bdcc}.homepage .hero-copy .light{color:#e3ebf0;border-color:#8399a9}.homepage .hero-copy .light:hover{color:#e4c68c;border-color:#cfb279}.homepage .home-group{box-shadow:none}.homepage .home-group:hover{box-shadow:0 8px 22px #173b530a}
@keyframes classic-buoyancy{0%,100%{transform:translateY(0) rotate(-.12deg)}50%{transform:translateY(1px) rotate(.12deg)}}
@media(max-width:900px){.homepage .home-hero{padding:42px 0 32px}}
@media(max-width:620px){.homepage .home-hero{padding:32px 0 25px}}
@media(prefers-reduced-motion:reduce){.homepage .vessel-bob{animation:none!important}}
