/* Cinematic opening: edge-to-edge footage, readable copy, compact weather. */
.hero{height:100svh;min-height:780px;max-height:1100px;background:#092536;color:#fff;display:flex;align-items:center;padding:92px 0 100px}
.hero>.hero-video,.hero>.hero-image{top:92px;left:0;right:0;bottom:0;width:100%;height:calc(100% - 92px);object-fit:cover;object-position:0% 45%;background:#092536}
.hero .hero-shade,html[data-theme="dark"] .hero .hero-shade{top:92px;bottom:0;height:auto;background:linear-gradient(90deg,#04192508 0%,#04192510 38%,#041925a8 64%,#041925df 100%),linear-gradient(0deg,#041925c9,transparent 25%);pointer-events:none}
.hero .hero-content{position:relative;width:36%;max-width:630px;margin:0 5% 0 auto;padding:40px 0;z-index:2}
.hero h1{font-size:clamp(40px,4.05vw,70px);line-height:1.08;letter-spacing:-.05em;font-weight:500;text-shadow:0 2px 24px #00142155}
.hero h1 .serif,html[data-theme="dark"] .hero h1 .serif{color:#d5eaf5;font-weight:300}
.hero .hero-content>p,html[data-theme="dark"] .hero .hero-content>p{color:#e0edf3;font-size:14px;max-width:390px;line-height:1.85}
.hero .eyebrow.light,html[data-theme="dark"] .hero .eyebrow.light{color:#d5eaf5;font-size:9px;letter-spacing:.16em}
.hero .marine-hero-links{gap:20px}.hero .marine-hero-links .button,html[data-theme="dark"] .hero .marine-hero-links .button{background:#e9f4f8;color:#14394e;border-color:#e9f4f8}
.hero .marine-contact-link,html[data-theme="dark"] .hero .marine-contact-link{color:#edf6fa;border-color:#a2c6d7}
.hero .hero-bottom,html[data-theme="dark"] .hero .hero-bottom{left:5%;right:auto;bottom:35px;width:auto;margin:0;padding:0;background:none;border:0;color:#e2eff5}
.hero .hero-bottom>span{display:none}.hero .hero-bottom a,html[data-theme="dark"] .hero .hero-bottom a{color:#e2eff5}
.hero-video-toggle{top:108px;right:24px;background:#071f306b;border-color:#d9eaf13d;border-radius:24px;backdrop-filter:blur(10px);font-size:10px}
/* Weather stays out of the vessel and headline, with no solid rectangular banner. */
.hero .genoa-weather,html[data-theme="dark"] .hero .genoa-weather{top:auto;bottom:25px;right:5%;left:auto;width:auto;max-width:75%;height:auto;min-height:68px;display:flex;align-items:center;gap:22px;padding:13px 24px;background:linear-gradient(115deg,#0a293cb8,#153d51a6);color:#f0f7fb;border:1px solid #c3e0ed2b;border-radius:12px;backdrop-filter:blur(16px);box-shadow:0 8px 30px #00111e1a;z-index:3}
.hero .weather-location{display:block;min-width:105px}.hero .weather-place{font-size:9px;letter-spacing:.13em;color:#e1eff6}.hero .weather-status,html[data-theme="dark"] .hero .weather-status{font-size:9px;line-height:1.4;margin-top:5px;color:#c4dce8;text-align:left;max-width:150px}
.hero .weather-value{padding-left:20px;border-left:1px solid #d2e8f023;gap:5px}
.hero .weather-value small,html[data-theme="dark"] .hero .weather-value small{font-size:8px;letter-spacing:.09em;color:#c4dce8}
.hero .weather-value strong,html[data-theme="dark"] .hero .weather-value strong{font-size:18px;line-height:1.2;color:#fff;font-weight:500;letter-spacing:-.015em;white-space:nowrap}
@media(min-width:1600px){.hero .hero-content{margin-right:8%;width:34%}}
@media(max-width:1200px){
 .hero{display:block;height:auto;min-height:100svh;max-height:none;padding:calc(84px + 56.25vw) 0 170px}
 .hero>.hero-video,.hero>.hero-image{top:84px;height:56.25vw;bottom:auto;object-fit:contain;object-position:center}
 .hero .hero-shade,html[data-theme="dark"] .hero .hero-shade{top:84px;height:56.25vw;bottom:auto;background:linear-gradient(0deg,#092536,transparent 22%)}
 .hero .hero-content{width:calc(100% - 80px);max-width:780px;margin:0 auto;padding:24px 0 20px}
 .hero h1{font-size:clamp(40px,6vw,64px)}.hero .hero-content>p{max-width:620px}
 .hero .marine-hero-links{flex-direction:row;align-items:center}
 .hero-video-toggle{top:98px}
 .hero .genoa-weather,html[data-theme="dark"] .hero .genoa-weather{bottom:62px;right:40px;left:40px;max-width:none;width:auto;justify-content:space-between;gap:14px;padding:15px 22px}
 .hero .hero-bottom{bottom:23px;left:40px}
}
@media(max-width:600px){
 .hero{padding-top:calc(78px + 56.25vw);padding-bottom:168px}
 .hero>.hero-video,.hero>.hero-image,.hero .hero-shade,html[data-theme="dark"] .hero .hero-shade{top:78px}
 .hero .hero-content{width:calc(100% - 40px);padding:20px 0}
 .hero h1{font-size:clamp(34px,9vw,50px);margin-bottom:22px}.hero .hero-content>p{font-size:13px}
 .hero .eyebrow.light{font-size:8px}.hero-video-toggle{top:88px;right:12px}
 .hero .genoa-weather,html[data-theme="dark"] .hero .genoa-weather{left:20px;right:20px;bottom:55px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 7px;padding:14px 16px;border-radius:10px}
 .hero .weather-location{grid-column:1/-1;display:flex;justify-content:space-between;align-items:baseline;gap:8px;min-width:0}
 .hero .weather-status{margin:0;font-size:8px;max-width:55%;text-align:right}
 .hero .weather-value{padding-left:9px;gap:4px}.hero .weather-value:nth-child(2){padding-left:0;border:0}
 .hero .weather-value small{font-size:7px;letter-spacing:.04em}.hero .weather-value strong{font-size:17px}
 .hero .weather-value strong[data-weather="wind"]{font-size:13px;white-space:normal}
 .hero .hero-bottom{bottom:20px;left:20px;font-size:7px}
}
