/* Happy Sailing × Oromarine 2027. Scoped UI; header and footer belong to Divi theme. */
/* The previous left:50% / margin-left:-50vw breakout was offset by Divi's sidebar. */
.hsom-catalog,.hsom-single{width:100vw!important;max-width:none!important;position:relative!important;left:var(--hsom-fullbleed-offset,0px)!important;margin-left:0!important;margin-right:0!important;float:none!important;clear:both}
.hsom-shell{--hm-bg:#0b0e12;--hm-surface:#161b21;--hm-surface2:#20262d;--hm-gold:#d8ab54;--hm-gold2:#f0d18a;--hm-txt:#f4f4f1;--hm-muted:#aeb5ba;--hm-rule:#343b42;font-family:inherit;color:var(--hm-txt);background:var(--hm-bg);width:100%;max-width:none;margin:0 auto;padding:0 0 56px;font-size:16px;line-height:1.65;overflow:hidden}
.hsom-shell *,.hsom-shell *:before,.hsom-shell *:after{box-sizing:border-box}
.hsom-shell h1,.hsom-shell h2,.hsom-shell h3,.hsom-shell p{padding:0;margin:0}
.hsom-shell a{text-decoration:none!important}.hsom-shell button,.hsom-shell input,.hsom-shell select{font:inherit}
.hsom-shell img{display:block}.hsom-shell a:focus-visible,.hsom-shell button:focus-visible,.hsom-shell input:focus-visible{outline:2px solid var(--hm-gold2);outline-offset:3px}
.hsom-overline{font:700 10px/1.5 system-ui,sans-serif;letter-spacing:2.8px;color:var(--hm-gold);text-transform:uppercase}
.hsom-hero{isolation:isolate;position:relative;min-height:670px;display:flex;align-items:center;background-color:#080e16;background-image:linear-gradient(90deg,#080b10 0%,#080b10ed 23%,#080b1080 53%,#080b102e 100%),var(--hsom-hero-img);background-size:cover,min(74vw,1360px) auto;background-position:center,right 51%;background-repeat:no-repeat;padding:70px max(24px,calc((100vw - 1240px)/2)) 85px}
.hsom-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:150px;z-index:-1;background:linear-gradient(transparent,#0b0e12)}
.hsom-hero-inner{max-width:760px}.hsom-hero h1{font:italic 900 clamp(57px,10vw,130px)/.97 Impact,'Arial Black',sans-serif;letter-spacing:-3px;color:var(--hm-gold2);margin:25px 0 8px!important;text-shadow:0 7px 42px #0007}.hsom-hero-logo-wrap{margin:25px 0 10px}.hsom-hero-logo{display:block;width:min(360px,78vw);max-width:100%;height:auto;filter:drop-shadow(0 8px 28px rgba(0,0,0,.35));}
.hsom-hero h1 span{color:#fff}.hsom-subbrand{color:var(--hm-gold);font-size:10px;letter-spacing:6px;font-weight:700;padding-bottom:24px!important;border-bottom:1px solid #ffffff4a;max-width:510px}
.hsom-hero h2{font:500 clamp(27px,3.6vw,47px)/1.26 Georgia,serif;color:white;margin:24px 0 18px!important;max-width:670px}.hsom-hero h2 em,.hsom-collection-intro h2 em,.hsom-options-head h2 em,.hsom-editorial h2 em,.hsom-end-cta h2 em{font-weight:400;color:var(--hm-gold2)}
.hsom-hero-copy{max-width:560px;color:#dde0e1;line-height:1.85;font-size:15px}.hsom-hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}
.hsom-btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:49px;padding:13px 22px;white-space:normal;font:700 11px/1.3 system-ui,sans-serif;letter-spacing:1.1px;text-transform:uppercase;transition:background .2s,border-color .2s,color .2s;border:1px solid var(--hm-gold);color:var(--hm-gold2)!important;text-align:center}
.hsom-btn-gold{background:linear-gradient(95deg,#c69b48,#e6c27e);border-color:var(--hm-gold);color:#141719!important}.hsom-btn-gold:hover{background:#f4d899;color:#121416!important}
.hsom-btn-outline{background:transparent;color:var(--hm-gold2)!important}.hsom-btn-outline-light{background:#0004;border-color:#acb0b9;color:#fff!important}.hsom-btn-outline:hover,.hsom-btn-outline-light:hover{background:#ffffff16}
.hsom-collection-intro,.hsom-filterbar,.hsom-grid,.hsom-results,.hsom-no-results,.hsom-end-cta,.hsom-disclaimer,.hsom-admin-banner,.hsom-breadcrumb,.hsom-single-heading,.hsom-detail-grid,.hsom-editorial,.hsom-options-section,.hsom-download,.hsom-back{max-width:1240px;margin-left:auto!important;margin-right:auto!important}
.hsom-collection-intro{padding:64px 22px 44px;display:flex;align-items:end;justify-content:space-between;gap:50px;scroll-margin-top:100px}.hsom-collection-intro h2,.hsom-editorial h2,.hsom-options-head h2,.hsom-end-cta h2{font:400 clamp(29px,4vw,49px)/1.2 Georgia,serif;margin:13px 0 0!important}
.hsom-intro-side{max-width:490px}.hsom-intro-side>p{color:var(--hm-muted);font-size:14px;line-height:1.9}.hsom-intro-stats{display:flex;gap:32px;padding-top:20px;margin-top:19px;border-top:1px solid var(--hm-rule)}.hsom-intro-stats>span{display:flex;flex-direction:column;color:#9aa1a8;font:700 10px/1.8 system-ui,sans-serif;letter-spacing:1.4px}.hsom-intro-stats strong{font:500 31px/1.4 Georgia,serif;color:var(--hm-gold2)}
.hsom-filterbar{background:#151a20;border:1px solid var(--hm-rule);padding:18px 20px 19px;margin:0 auto 20px!important}.hsom-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:19px;padding-bottom:16px;border-bottom:1px solid var(--hm-rule)}.hsom-tabs button{cursor:pointer;background:transparent;border:1px solid #384048;color:#d1d5d7;padding:10px 23px;font:700 11px/1 system-ui,sans-serif;letter-spacing:1.3px}.hsom-tabs button.is-active{background:var(--hm-gold);color:#121314;border-color:var(--hm-gold)}
.hsom-fields{display:flex;align-items:end;gap:13px;flex-wrap:wrap}.hsom-fields label{flex:1 1 142px;max-width:260px}.hsom-fields label:first-child{flex:1.3 1 170px}.hsom-fields label>span{display:block;color:#a6acb1;font:700 9px system-ui,sans-serif;letter-spacing:1.25px;margin-bottom:8px}.hsom-fields input,.hsom-fields select{border:1px solid #3e454f;border-radius:0;background:#0d1116;color:#f6f6f6;width:100%;min-height:42px;padding:9px 11px;box-shadow:none!important;font-size:12px}.hsom-fields input::placeholder{color:#8d9298}.hsom-reset{background:transparent;border:0;color:var(--hm-gold2);font:700 10px system-ui,sans-serif;letter-spacing:1.2px;cursor:pointer;padding:13px 4px}
.hsom-results{text-align:right;color:#a8afb5;font:700 10px system-ui,sans-serif;letter-spacing:1.6px;padding:0 22px;margin-bottom:18px!important}
.hsom-grid{padding:0 22px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.hsom-card{display:flex;flex-direction:column;min-width:0;color:var(--hm-txt)!important;background:#161b21;border:1px solid #30353d;transition:border-color .2s,transform .2s}.hsom-card:hover{transform:translateY(-4px);border-color:#bd914e}.hsom-card[hidden]{display:none!important}
.hsom-card-photo{position:relative;height:250px;background:linear-gradient(120deg,#21262b,#0c141c);overflow:hidden}.hsom-card-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .6s}.hsom-card:hover img{transform:scale(1.04)}.hsom-card-tag{position:absolute;left:14px;top:14px;background:#0b0d11e8;color:var(--hm-gold2);border:1px solid #bea0635e;padding:7px 11px;font:700 10px system-ui,sans-serif;letter-spacing:1.9px}.hsom-draft{position:absolute;top:14px;right:14px;background:#a1632b;color:white;font:700 10px system-ui,sans-serif;letter-spacing:1px;padding:6px 9px}
.hsom-card-info{padding:23px 23px 0;flex:1;display:flex;flex-direction:column}.hsom-card-meta{font:700 9px system-ui,sans-serif;letter-spacing:1.6px;color:var(--hm-gold)}.hsom-card h3{font:400 30px/1.2 Georgia,serif;color:#fff;margin:10px 0 12px!important}.hsom-card-info>p{color:#bac0c3;line-height:1.75;font-size:13px;min-height:67px}.hsom-quick-specs{display:flex;gap:25px;margin-top:auto;padding:22px 0 16px}.hsom-quick-specs>span{display:flex;flex-direction:column;gap:4px;color:#92999d;font:700 9px system-ui,sans-serif;letter-spacing:1px}.hsom-quick-specs strong{color:#f3f3f1;font:500 16px Georgia,serif;letter-spacing:0}.hsom-card-bottom{border-top:1px solid #343a42;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 0 20px}.hsom-card-bottom>span{display:flex;flex-direction:column;gap:5px}.hsom-card-bottom small{font:700 9px system-ui,sans-serif;color:#9ca3a9;letter-spacing:.7px}.hsom-card-bottom strong{font:600 21px Georgia,serif;color:var(--hm-gold2)}.hsom-card-bottom>b{font:400 27px Georgia,serif;color:var(--hm-gold)}
.hsom-no-results{padding:40px 22px;color:#ddd;margin:20px auto!important;text-align:center}.hsom-no-results[hidden]{display:none!important}
.hsom-end-cta{background:linear-gradient(115deg,#23201b,#11171e 74%);border:1px solid #59492e;padding:47px 54px;margin-top:75px!important;display:flex;justify-content:space-between;align-items:center;gap:38px}.hsom-end-cta h2{max-width:660px}.hsom-end-cta p{color:#c3c2bf;max-width:550px;font-size:14px;margin-top:14px!important;line-height:1.8}.hsom-ctas{display:flex;flex-wrap:wrap;gap:10px;min-width:250px}.hsom-ctas .hsom-btn{flex:1 1 205px}.hsom-disclaimer{padding:23px 22px 0;color:#858d93;font-size:11px;line-height:1.7;text-align:center}
.hsom-admin-banner{background:#fff5d8;color:#4b3514;padding:12px 22px;font-size:13px;margin-top:12px!important;margin-bottom:20px!important}
.hsom-breadcrumb{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:36px 22px 0;color:#7e8b94;font:700 10px system-ui,sans-serif;letter-spacing:1px}.hsom-breadcrumb a{color:var(--hm-gold)!important}.hsom-breadcrumb span:last-child{color:white}
.hsom-single-heading{padding:36px 22px 35px;display:flex;justify-content:space-between;gap:40px;align-items:end}.hsom-single-heading h1{font:400 clamp(43px,6vw,78px)/1.12 Georgia,serif;color:#fff;margin:12px 0!important}.hsom-single-heading p{max-width:680px;color:#bac3c8;font-size:15px}.hsom-price-panel{min-width:290px;text-align:right;display:flex;flex-direction:column;gap:5px}.hsom-price-panel small,.hsom-price-mini small{font:700 9px system-ui,sans-serif;letter-spacing:1.5px;color:#aeb3b6}.hsom-price-panel strong{font:500 29px Georgia,serif;color:var(--hm-gold2)}.hsom-price-panel>span{color:#aeb3b6;font-size:11px}
.hsom-detail-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.9fr);gap:30px;padding:0 22px}.hsom-main-photo{height:530px;overflow:hidden;background:#1b2228}.hsom-main-photo button{position:relative;border:0;padding:0;width:100%;height:100%;cursor:zoom-in;background:none}.hsom-main-photo img{width:100%;height:100%;object-fit:cover}.hsom-main-photo button>span{position:absolute;right:15px;bottom:15px;padding:8px 12px;color:white;background:#111b26bb;font:700 10px system-ui,sans-serif;letter-spacing:1.2px}.hsom-thumbs{display:flex;gap:10px;margin-top:10px;overflow-x:auto}.hsom-thumbs button{padding:0;cursor:pointer;border:1px solid #3a414b;background:#171a1e;min-width:130px;width:144px;height:93px}.hsom-thumbs img{width:100%;height:100%;object-fit:cover}.hsom-placeholder{display:flex;align-items:center;justify-content:center;font-size:30px;letter-spacing:4px}
.hsom-spec-box{padding:33px 31px;background:#171b21;border-top:3px solid var(--hm-gold);align-self:start}.hsom-spec-box h2{font:400 36px/1.3 Georgia,serif;margin:13px 0 22px!important}.hsom-spec-box dl{margin:0}.hsom-spec-box dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:15px;border-bottom:1px solid #373d45;padding:13px 0}.hsom-spec-box dt{font:700 10px system-ui,sans-serif;letter-spacing:1.3px;color:#9fa9ad}.hsom-spec-box dd{font:500 16px Georgia,serif;color:#fff;text-align:right;margin:0}.hsom-price-mini{display:flex;flex-direction:column;margin:23px 0 16px;gap:6px}.hsom-price-mini strong{font:500 28px Georgia,serif;color:var(--hm-gold2)}.hsom-smallprint{color:#89939a;font-size:11px;line-height:1.7;margin-top:17px!important}.hsom-form{margin-top:24px;border-top:1px solid #343a42;padding-top:15px}.hsom-form h3{font:500 21px Georgia,serif;margin-bottom:10px!important}.hsom-form iframe{width:100%;height:600px;border:none;background:#fff}
.hsom-editorial{padding:72px 22px 60px;display:grid;grid-template-columns:1fr 1fr;gap:80px}.hsom-editorial h2{margin-bottom:23px!important}.hsom-description{font-size:15px;line-height:1.95;color:#c1c7ca}.hsom-bullets{padding:0!important;margin:0!important;list-style:none!important;display:grid;gap:0}.hsom-bullets li{position:relative;border-bottom:1px solid #30363e;padding:12px 10px 12px 23px;color:#d8dadd;font-size:14px}.hsom-bullets li:before{content:"";width:7px;height:7px;background:var(--hm-gold);position:absolute;left:0;top:22px;transform:rotate(45deg)}
.hsom-options-section{margin-top:8px!important;padding:42px 35px;background:#191e24;border:1px solid #424249}.hsom-options-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:22px}.hsom-options-head h2{margin:12px 0!important}.hsom-options-head p{color:#aeb6ba;font-size:13px;line-height:1.8}.hsom-optional-marker{font:italic 700 74px Georgia,serif;color:#d8ab5433}.hsom-options-section details{border-top:1px solid #49505a}.hsom-options-section summary{display:flex;justify-content:space-between;align-items:center;gap:12px;list-style:none;cursor:pointer;font:700 11px system-ui,sans-serif;letter-spacing:1.5px;color:var(--hm-gold2);padding:22px 0}.hsom-options-section summary::-webkit-details-marker{display:none}.hsom-options-section summary span{font-size:20px}.hsom-options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px;padding:10px 0 15px}.hsom-option{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:13px 0;border-bottom:1px solid #343b43;color:#cbd0d2;font-size:12px}.hsom-option strong{color:#e5ca8f;white-space:nowrap;font-size:12px}
.hsom-download{padding:38px 35px;margin-top:26px!important;display:flex;justify-content:space-between;align-items:center;gap:24px;border:1px solid #333c43}.hsom-download h2{font:400 27px Georgia,serif;margin:8px 0!important}.hsom-download p{color:#aeb4b8;font-size:13px}.hsom-back{text-align:center;padding:30px 22px}.hsom-back a{color:var(--hm-gold2)!important;font:700 11px system-ui,sans-serif;letter-spacing:1.3px}
.hsom-lightbox:not([hidden]){display:flex}.hsom-lightbox[hidden]{display:none!important}.hsom-lightbox{position:fixed;z-index:999999;inset:0;background:#08090beb;align-items:center;justify-content:center;gap:12px;padding:50px}.hsom-lightbox img{object-fit:contain;max-width:85vw;max-height:84vh;width:auto;height:auto}.hsom-lightbox button{border:1px solid #ffffff4d;background:#192029;color:white;font:400 33px Georgia,serif;min-width:42px;min-height:45px;cursor:pointer}.hsom-lightbox .hsom-lightbox-close{position:absolute;right:18px;top:15px}
.hsom-brand-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;max-width:370px;min-height:170px;border:1px solid #cbb47e55;background:linear-gradient(130deg,#0b0f14,#1c2428);padding:25px 34px!important;color:#fff!important;text-align:center;transition:border-color .2s,transform .2s}.hsom-brand-tile:hover{border-color:#dbb76e;transform:translateY(-2px)}.hsom-brand-name{font:italic 900 34px Impact,'Arial Black',sans-serif;color:#e5c57d;letter-spacing:-.7px}.hsom-brand-name span{color:#fff}.hsom-brand-caption{font:700 9px system-ui,sans-serif;color:#cab678;letter-spacing:2.2px}.hsom-brand-link{font:700 10px system-ui,sans-serif;letter-spacing:1px;margin-top:9px;color:#f4d991}
@media(max-width:1100px){.hsom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hsom-hero{min-height:590px}.hsom-fields label{flex-basis:125px}.hsom-detail-grid{grid-template-columns:1.25fr 1fr}.hsom-main-photo{height:465px}.hsom-editorial{gap:38px}}
@media(max-width:760px){.hsom-hero{min-height:640px;padding:55px 21px 72px;background-position:center,right 51%;background-size:cover,125vw auto}.hsom-hero h1{font-size:clamp(46px,13vw,87px);letter-spacing:-2px}.hsom-hero h2{font-size:29px}.hsom-collection-intro{display:block;padding:48px 20px 30px}.hsom-collection-intro h2{margin-bottom:22px!important}.hsom-intro-stats{gap:22px}.hsom-filterbar{margin:0 15px 20px!important}.hsom-tabs button{padding:10px 13px}.hsom-fields label{flex:1 1 45%;max-width:none}.hsom-fields label:first-child{flex-basis:100%}.hsom-fields label:last-of-type{flex-basis:100%}.hsom-reset{width:100%;text-align:left}.hsom-grid{grid-template-columns:1fr;padding:0 15px;gap:17px}.hsom-card-photo{height:235px}.hsom-card-info>p{min-height:0}.hsom-end-cta{margin:50px 15px 0!important;display:block;padding:35px 25px}.hsom-end-cta .hsom-ctas{margin-top:23px}.hsom-breadcrumb{padding:20px 18px 0}.hsom-single-heading{padding:25px 18px;display:block}.hsom-single-heading h1{font-size:43px}.hsom-price-panel{text-align:left;margin-top:24px;min-width:0}.hsom-detail-grid{grid-template-columns:1fr;padding:0 15px;gap:20px}.hsom-main-photo{height:290px}.hsom-spec-box{padding:28px 22px}.hsom-editorial{grid-template-columns:1fr;padding:49px 20px 40px;gap:42px}.hsom-options-section{margin:0 15px!important;padding:29px 19px}.hsom-options-grid{grid-template-columns:1fr}.hsom-optional-marker{display:none}.hsom-download{margin:20px 15px 0!important;padding:28px 20px;display:block}.hsom-download .hsom-btn{margin-top:17px}.hsom-lightbox{padding:14px;gap:4px}.hsom-lightbox img{max-width:71vw}.hsom-lightbox button{min-width:32px;font-size:25px}.hsom-disclaimer{padding:23px 16px 0}}
@media(prefers-reduced-motion:reduce){.hsom-card,.hsom-card img,.hsom-btn,.hsom-brand-tile{transition:none}}

/* 2.2.0 — Divi integration. Scope page-template overrides to Oromarine only. */
body.hsom-fullwidth-page { overflow-x:clip; }
body.hsom-fullwidth-page #main-content .container { width:100%!important;max-width:100%!important;padding:0!important; }
body.hsom-fullwidth-page #main-content .container:before { display:none!important; }
body.hsom-fullwidth-page #main-content #content-area,
body.hsom-fullwidth-page #main-content #left-area { float:none!important;width:100%!important;max-width:none!important;padding:0!important;margin:0!important; }
body.hsom-fullwidth-page #main-content #sidebar { display:none!important; }
body.hsom-fullwidth-page #main-content article.page { width:100%!important;max-width:none!important;margin:0!important;padding:0!important; }
/* Keep Divi's header/footer untouched; align only the Oromarine shortcode elements. */
.hsom-catalog,.hsom-single { overflow-x:clip; }
.hsom-catalog h1,.hsom-catalog h2,.hsom-catalog h3,.hsom-single h1,.hsom-single h2,.hsom-single h3 {color:#fff;}
.hsom-catalog .hsom-hero h1,.hsom-catalog .hsom-hero h1 span {color:var(--hm-gold2);}
.hsom-catalog .hsom-hero h1 span {color:#fff;}
.hsom-catalog .hsom-collection-intro p,.hsom-catalog .hsom-card p,
.hsom-catalog .hsom-end-cta p,.hsom-single .hsom-single-heading p,
.hsom-single .hsom-description p,.hsom-single .hsom-options-head p,
.hsom-single .hsom-download p,.hsom-single .hsom-end-cta p {color:#e2e5e7!important;}
.hsom-single .hsom-spec-box h2,.hsom-single .hsom-editorial h2,
.hsom-single .hsom-download h2,.hsom-single .hsom-end-cta h2,
.hsom-catalog .hsom-card h3,.hsom-catalog .hsom-end-cta h2 {color:#fff!important;}
.hsom-catalog .hsom-admin-banner,.hsom-single .hsom-admin-banner{color:#493616!important;}
/* Different commercial CTA: configure = gold, request a quote = ocean blue. */
.hsom-shell .hsom-btn-quote {background:#285572!important;border-color:#41809e!important;color:#fff!important;}
.hsom-shell .hsom-btn-quote:hover,.hsom-shell .hsom-btn-quote:focus-visible {background:#347899!important;border-color:#6da9be!important;color:#fff!important;}
.hsom-shell .hsom-btn-gold {background:linear-gradient(95deg,#c69b48,#e6c27e)!important;border-color:#d8ab54!important;color:#141719!important;}
.hsom-shell .hsom-btn-gold:hover,.hsom-shell .hsom-btn-gold:focus-visible {background:#f4d899!important;color:#121416!important;}
@media(max-width:760px){
 .hsom-catalog,.hsom-single {width:100vw!important;}
 .hsom-hero {background-size:cover,170vw auto;background-position:center,right 53%;}
}


/* v2.3.0 — Oromarine-only navigation; preserves the rest of Happy Sailing. */
body.hsom-fullwidth-page #top-header,
body.hsom-fullwidth-page #main-header,
body.hsom-fullwidth-page .et-l--header,
body.hsom-fullwidth-page #et-top-navigation { display:none!important; }
/* Divi's fixed navigation reserves vertical space even when the header is hidden. */
body.hsom-fullwidth-page #page-container {padding-top:0!important;margin-top:0!important;}
body.hsom-fullwidth-page #main-content {padding-top:0!important;}
body.hsom-fullwidth-page .et-l--header + #et-main-area {padding-top:0!important;}
body.hsom-fullwidth-page .hsom-shell{overflow:visible!important;}
body.hsom-fullwidth-page .hsom-catalog,
body.hsom-fullwidth-page .hsom-single{overflow-x:clip!important;}
.hsom-brand-nav{position:relative;z-index:80;width:100%;background:#080b10;color:#fff;border-bottom:1px solid rgba(216,171,84,.23);box-shadow:0 6px 18px #0002;}
.hsom-brand-nav-inner{max-width:1440px;margin:0 auto;padding:0 clamp(18px,4vw,58px);min-height:87px;display:flex;align-items:center;justify-content:space-between;gap:30px;}
.hsom-brand-nav-logo{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex-shrink:0;line-height:1.05;text-decoration:none!important;}
.hsom-brand-nav-logo small{margin-top:8px;font:700 8px/1.5 system-ui,sans-serif;letter-spacing:1.5px;color:#aeb3b8!important;}
.hsom-brand-nav-logo small b{color:#d5b370!important;}
.hsom-brand-nav-links{display:flex;gap:clamp(14px,2.3vw,32px);align-items:center;justify-content:flex-end;}
.hsom-brand-nav-links>a{font:700 10px/1.5 system-ui,sans-serif;letter-spacing:1.1px;text-decoration:none!important;color:#ebedf0!important;white-space:nowrap;transition:color .2s,border-color .2s,background .2s;padding:14px 0;}
.hsom-brand-nav-links>a:hover,.hsom-brand-nav-links>a:focus-visible,.hsom-brand-nav-links>a.is-active{color:#e3bc72!important;}
.hsom-brand-nav-links>a.is-active{border-bottom:2px solid #d8ab54;}
.hsom-brand-nav-links>a.hsom-brand-nav-exit{border:1px solid #ba934d;color:#e9c785!important;padding:12px 16px;}
.hsom-brand-nav-links>a.hsom-brand-nav-exit:hover{background:#d8ab54;color:#101318!important;}
.hsom-brand-nav-toggle{display:none;flex:0 0 44px;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:5px;background:#111820;border:1px solid #7c6850;color:#fff;cursor:pointer;border-radius:3px;}
.hsom-brand-nav-toggle span{width:21px;height:2px;background:#eac786;transition:transform .2s,opacity .2s;}
.hsom-brand-nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.hsom-brand-nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.hsom-brand-nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.hsom-brand-nav a:focus-visible,.hsom-brand-nav button:focus-visible{outline:2px solid #efcf8a;outline-offset:3px;}
/* Replace the image's abrupt left edge with a gradual reveal; keep logo visible on the right. */
.hsom-catalog .hsom-hero{background:#07111b!important;isolation:isolate;overflow:hidden;}
.hsom-catalog .hsom-hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:var(--hsom-hero-img);background-repeat:no-repeat;background-position:right 49%;background-size:min(75vw,1120px) auto;-webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent 30%,rgba(0,0,0,.6) 55%,#000 82%);mask-image:linear-gradient(90deg,transparent 0%,transparent 30%,rgba(0,0,0,.6) 55%,#000 82%);}
.hsom-catalog .hsom-hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;height:auto;background:linear-gradient(90deg,#07111bed 0%,#07111bdf 25%,#07111b75 53%,#07111b05 92%),linear-gradient(0deg,#0b0e12 0%,transparent 26%);}
.hsom-catalog .hsom-hero-inner{position:relative;z-index:2;}
@media(max-width:1020px){
 .hsom-brand-nav-inner{min-height:75px;gap:16px;}
 .hsom-brand-nav-toggle{display:flex;}
 .hsom-brand-nav-links{display:none;position:absolute;left:0;right:0;top:100%;background:#0d1117;border-bottom:1px solid #66563e;padding:14px 22px 23px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 18px 24px #0009;}
 .hsom-brand-nav.is-open .hsom-brand-nav-links{display:flex;}
 .hsom-brand-nav-links>a{padding:17px 6px;border-bottom:1px solid #ffffff1f!important;}
 .hsom-brand-nav-links>a.is-active{border-left:3px solid #d8ab54;padding-left:12px;}
 .hsom-brand-nav-links>a.hsom-brand-nav-exit{margin-top:13px;text-align:center;border:1px solid #ba934d!important;}
}
@media(max-width:760px){
 .hsom-brand-nav-inner{padding:0 17px;min-height:73px;}
 .hsom-brand-nav-logo small{font-size:7px;letter-spacing:1px;}
 .hsom-catalog .hsom-hero::before{background-size:170vw auto;background-position:100% 51%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent 8%,rgba(0,0,0,.55) 48%,#000 93%);mask-image:linear-gradient(90deg,transparent 0%,transparent 8%,rgba(0,0,0,.55) 48%,#000 93%);}
 .hsom-catalog .hsom-hero::after{background:linear-gradient(90deg,#07111bf5,#07111bc8 51%,#07111b80),linear-gradient(0deg,#0b0e12 0%,transparent 30%);}
}
@media(prefers-reduced-motion:reduce){.hsom-brand-nav-toggle span,.hsom-brand-nav-links>a{transition:none;}}

/* v2.3.1 — Original white Oromarine logo from official 2027 catalog, transparent PNG. */
.hsom-brand-nav-logo .hsom-brand-nav-image{display:block!important;width:196px!important;max-width:100%!important;height:auto!important;object-fit:contain;object-position:left center;}
.hsom-brand-tile .hsom-brand-tile-image{display:block!important;width:238px!important;max-width:100%!important;height:auto!important;object-fit:contain;margin:0 auto;}
@media(max-width:760px){.hsom-brand-nav-logo .hsom-brand-nav-image{width:158px!important;}}

/* v2.3.2 — use official white logo in hero and keep background clean. */
@media(max-width:760px){.hsom-hero-logo{width:min(290px,76vw);}}

/* === v2.4.0 · Visual QA: entire boats visible, no prow/stern cropped by CSS === */
/* Preserve original proportions on all catalog images, even if the source was portrait. */
.hsom-catalog .hsom-card-photo{
  height:auto!important;min-height:210px;max-height:300px;aspect-ratio:16 / 10;
  display:grid;place-items:center;position:relative;isolation:isolate;
  background:#101a24;overflow:hidden;
}
/* Soft atmospheric background uses the same photo; the sharp foreground is never cropped. */
.hsom-catalog .hsom-card-photo::before{
  content:"";position:absolute;inset:-20px;z-index:-1;
  background-image:linear-gradient(#111a2490,#111a2490),var(--hsom-photo-backdrop,none);
  background-position:center;background-size:cover;
  filter:blur(22px) saturate(.7) brightness(.55);opacity:.75;
  pointer-events:none;
}
.hsom-catalog .hsom-card-photo::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(0deg,#09121da8 0%,transparent 24%,transparent 76%,#09121d65 100%);
  pointer-events:none;
}
.hsom-catalog .hsom-card-photo img,
.hsom-catalog .hsom-card:hover .hsom-card-photo img{
  width:100%!important;height:100%!important;min-width:0;
  object-fit:contain!important;object-position:center center!important;
  padding:9px;transition:none!important;transform:none!important;
  position:absolute!important;inset:0;z-index:1;
}
.hsom-catalog .hsom-card-tag,.hsom-catalog .hsom-draft{z-index:2;}
/* Main product photo: height is flexible, all source pixels remain visible. */
.hsom-single .hsom-main-photo{
  height:clamp(315px,43vw,550px)!important;display:grid;place-items:center;
  background:radial-gradient(ellipse at center,#23303a 0%,#0e171e 80%);
  border:1px solid #303c46;overflow:hidden;
}
.hsom-single .hsom-main-photo button{
  display:flex;align-items:center;justify-content:center;min-width:0;width:100%;height:100%;
  padding:13px;overflow:hidden;
}
.hsom-single .hsom-main-photo img{
  width:100%!important;height:100%!important;max-width:100%;max-height:100%;
  object-fit:contain!important;object-position:center center!important;
  transition:none!important;transform:none!important;
}
.hsom-single .hsom-main-photo button>span{z-index:2;background:#0b1720e8;right:16px;bottom:16px;pointer-events:none;}
.hsom-single .hsom-thumbs{padding:2px 1px 8px;scrollbar-width:thin;scrollbar-color:#a68e5c #11181f;}
.hsom-single .hsom-thumbs button{
  flex:0 0 125px;min-width:0;width:125px;height:90px;
  display:flex;justify-content:center;align-items:center;
  background:#101922;padding:5px;overflow:hidden;border:2px solid #48505a;
  transition:border-color .2s,background .2s;
}
.hsom-single .hsom-thumbs button:hover,.hsom-single .hsom-thumbs button.is-active{
  background:#1a252e;border-color:#e0ba6f;
}
.hsom-single .hsom-thumbs img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;}
.hsom-single .hsom-lightbox{padding:58px 60px 40px;gap:12px;}
.hsom-single .hsom-lightbox img{
  width:auto!important;height:auto!important;max-width:min(82vw,1400px)!important;
  max-height:calc(100dvh - 105px)!important;object-fit:contain!important;
  filter:drop-shadow(0 6px 32px #0008);
}
.hsom-lightbox-count{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);font:700 12px system-ui,sans-serif;letter-spacing:1.5px;color:#f0d18a;}
/* Consistent card heights and safe wrapping on small devices. */
.hsom-catalog .hsom-card-info{min-width:0;}
.hsom-catalog .hsom-card-bottom{flex-wrap:wrap;}
.hsom-catalog .hsom-card-bottom strong{overflow-wrap:anywhere;}
.hsom-catalog .hsom-card h3{overflow-wrap:break-word;}
@media(max-width:760px){
 .hsom-catalog .hsom-card-photo{aspect-ratio:16 / 10;min-height:210px;max-height:275px;}
 .hsom-single .hsom-main-photo{height:clamp(265px,79vw,400px)!important;}
 .hsom-single .hsom-main-photo button{padding:8px;}
 .hsom-single .hsom-thumbs button{flex-basis:100px;width:100px;height:79px;}
 .hsom-single .hsom-lightbox{padding:46px 7px 38px;gap:5px;}
 .hsom-single .hsom-lightbox img{max-width:calc(100vw - 90px)!important;max-height:calc(100dvh - 105px)!important;}
 .hsom-single .hsom-lightbox button{min-width:34px;min-height:42px;flex-shrink:0;}
 .hsom-single .hsom-lightbox-close{top:10px;right:10px;}
}
@media(prefers-reduced-motion:reduce){.hsom-single .hsom-thumbs button{transition:none;}}

/* v2.5.0 — immersive photographic coverage for cards and product galleries.
   The lightbox is intentionally kept uncropped so visitors can see the entire photo. */
.hsom-catalog .hsom-card-photo{
  height:auto!important;min-height:210px;max-height:none!important;aspect-ratio:16/10;
  background:#101a24;position:relative;overflow:hidden;
}
.hsom-catalog .hsom-card-photo::before{content:none!important;background-image:none!important;}
.hsom-catalog .hsom-card-photo::after{z-index:1;background:linear-gradient(180deg,#07111b25 0%,transparent 38%,#07111b37 100%);}
.hsom-catalog .hsom-card-photo img,.hsom-catalog .hsom-card:hover .hsom-card-photo img{
  inset:0!important;position:absolute!important;width:100%!important;height:100%!important;
  padding:0!important;object-fit:cover!important;object-position:50% 50%!important;
  transform:none!important;transition:none!important;
}
.hsom-single .hsom-main-photo{height:clamp(315px,43vw,550px)!important;background:#101820;}
.hsom-single .hsom-main-photo button{padding:0!important;}
.hsom-single .hsom-main-photo img{object-fit:cover!important;object-position:center center!important;}
.hsom-single .hsom-thumbs button{padding:0!important;}
.hsom-single .hsom-thumbs img{object-fit:cover!important;}
/* Catalog hero shares the clean, watermark-free photo with the configurator. */
@media(max-width:760px){
  .hsom-catalog .hsom-card-photo{min-height:215px;max-height:none!important;aspect-ratio:16/10;}
  .hsom-single .hsom-main-photo{height:clamp(270px,78vw,400px)!important;}
}

/* v2.5.2 — mobile gamma hero: clean image starts directly below menu and fades at bottom */
@media(max-width:760px){
 .hsom-catalog .hsom-hero{
   min-height:0;
   padding:0 0 32px !important;
   display:block;
   background:none !important;
 }
 .hsom-catalog .hsom-hero::before{
   inset:0 auto auto 0;
   width:100%;
   height:320px;
   background-size:cover !important;
   background-position:center top !important;
   -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 60%,rgba(0,0,0,.78) 78%,rgba(0,0,0,.28) 92%,transparent 100%) !important;
   mask-image:linear-gradient(180deg,#000 0%,#000 60%,rgba(0,0,0,.78) 78%,rgba(0,0,0,.28) 92%,transparent 100%) !important;
 }
 .hsom-catalog .hsom-hero::after{
   inset:0;
   background:linear-gradient(180deg,rgba(7,17,27,.10) 0%,rgba(7,17,27,.18) 32%,rgba(7,17,27,.55) 62%,#0b0e12 100%) !important;
 }
 .hsom-catalog .hsom-hero-inner{
   padding:210px 21px 0 !important;
   max-width:none;
 }
 .hsom-catalog .hsom-overline{display:block;padding-top:0;margin-top:0;}
 .hsom-catalog .hsom-hero-logo{width:min(250px,68vw);}
 .hsom-catalog .hsom-subbrand{max-width:none;}
}
@media(max-width:420px){
 .hsom-catalog .hsom-hero::before{height:285px;}
 .hsom-catalog .hsom-hero-inner{padding-top:190px !important;}
 .hsom-catalog .hsom-hero h2{font-size:26px;}
}

/* v2.5.3 — Happy Sailing logo in dedicated blue nav */
.hsom-brand-nav-logo .hsom-brand-nav-image-hs{width:232px!important;max-width:min(58vw,232px)!important;height:auto!important;object-fit:contain;}
@media(max-width:760px){.hsom-brand-nav-logo .hsom-brand-nav-image-hs{width:174px!important;max-width:58vw!important;}}

/* v2.5.3 — Product listing in one full-width column with compact horizontal cards */
.hsom-catalog .hsom-grid{grid-template-columns:1fr!important;gap:18px!important;padding:0 22px!important;}
.hsom-catalog .hsom-card{
  display:grid!important;
  grid-template-columns:minmax(320px,42%) minmax(0,1fr);
  align-items:stretch;
  min-height:270px;
  overflow:hidden;
}
.hsom-catalog .hsom-card-photo{
  height:100%!important;
  min-height:270px!important;
  max-height:none!important;
  aspect-ratio:auto!important;
}
.hsom-catalog .hsom-card-info{padding:24px 28px 0!important;}
.hsom-catalog .hsom-card h3{font-size:clamp(28px,2.5vw,40px)!important;}
.hsom-catalog .hsom-card-info>p{min-height:0!important;max-width:72ch;}
.hsom-catalog .hsom-quick-specs{gap:22px;flex-wrap:wrap;}
.hsom-catalog .hsom-card-bottom{margin-top:auto;padding-bottom:22px!important;align-items:flex-end;}
.hsom-catalog .hsom-card-bottom b{font-size:32px!important;line-height:1;}
@media(max-width:980px){
  .hsom-catalog .hsom-card{grid-template-columns:minmax(270px,40%) minmax(0,1fr);min-height:248px;}
  .hsom-catalog .hsom-card-photo{min-height:248px!important;}
}
@media(max-width:760px){
  .hsom-catalog .hsom-grid{padding:0 15px!important;gap:17px!important;}
  .hsom-catalog .hsom-card{display:flex!important;flex-direction:column!important;min-height:0;}
  .hsom-catalog .hsom-card-photo{min-height:215px!important;aspect-ratio:16/10!important;}
  .hsom-catalog .hsom-card-info{padding:22px 20px 0!important;}
}

/* v2.5.4 — improved official Happy Sailing white logo visibility in brand nav */
.hsom-brand-nav-logo .hsom-brand-nav-image-hs{
  width:300px!important;
  max-width:min(68vw,300px)!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:left center!important;
  display:block!important;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.08));
}
@media(max-width:980px){
  .hsom-brand-nav-logo .hsom-brand-nav-image-hs{width:240px!important;max-width:56vw!important;}
}
@media(max-width:760px){
  .hsom-brand-nav-logo .hsom-brand-nav-image-hs{width:188px!important;max-width:52vw!important;}
}

/* v2.5.5 — Official Happy Sailing white logo. The nav uses a real CSS background
   rather than an <img>, preventing Divi/Imagify lazy-loading placeholders and
   image sizing rules from replacing or cropping the menu brand. */
.hsom-shell .hsom-brand-nav-logo{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:0!important;
  min-width:0!important;
  width:auto!important;
  max-width:calc(100% - 70px)!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
}
.hsom-shell .hsom-brand-nav-logo .hsom-brand-nav-mark{
  display:block!important;
  flex:0 0 auto!important;
  width:260px!important;
  max-width:min(62vw,260px)!important;
  aspect-ratio:1878 / 275!important;
  height:auto!important;
  min-height:36px!important;
  background-color:transparent!important;
  background-repeat:no-repeat!important;
  background-size:contain!important;
  background-position:left center!important;
  border:0!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  transform:none!important;
}
.hsom-shell .hsom-brand-nav-logo small{display:block!important;margin-top:8px!important;}
@media(max-width:1020px){
  .hsom-shell .hsom-brand-nav-logo .hsom-brand-nav-mark{
    width:220px!important;
    max-width:55vw!important;
    min-height:32px!important;
  }
}
@media(max-width:760px){
  .hsom-shell .hsom-brand-nav-logo .hsom-brand-nav-mark{
    width:192px!important;
    max-width:56vw!important;
    min-height:27px!important;
  }
  .hsom-shell .hsom-brand-nav-logo small{font-size:6.5px!important;letter-spacing:1px!important;margin-top:5px!important;}
}


/* v2.5.7 — reinstate the horizontal single-column product cards from v2.5.5.
   Keep the menu without the secondary caption. */
.hsom-shell .hsom-brand-nav-logo small{display:none!important}
.hsom-shell .hsom-brand-nav-logo{gap:0!important}
