/* BMY CORE 2.5.24 — Global UI Consistency & Readability
   Shared visual authority for radius, contained media, yacht conversion surfaces,
   header menu icon and dark-surface readability. */
:root{
  --bmy-ui-radius:0px;
  --bmy-ui-radius-sm:0px;
  --bmy-ui-radius-media:0px;
  --bmy-ui-ice:#f3f9fc;
  --bmy-ui-ice-2:#edf6fa;
  --bmy-ui-line:rgba(7,31,47,.10);
  --bmy-ui-line-dark:rgba(255,255,255,.11);
}

/* ------------------------------------------------------------------
   Signature menu trigger — flat, asymmetric two-line mark; no circle.
   ------------------------------------------------------------------ */
body[data-ui="bm-v080"] .bmy-menu-toggle>i{
  position:relative!important;
  display:block!important;
  width:28px!important;
  height:20px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body[data-ui="bm-v080"] .bmy-menu-toggle b{
  left:auto!important;
  right:0!important;
  height:1px!important;
  background:currentColor!important;
  transform-origin:center!important;
}
body[data-ui="bm-v080"] .bmy-menu-toggle b:first-child{top:6px!important;width:28px!important}
body[data-ui="bm-v080"] .bmy-menu-toggle b:last-child{top:14px!important;width:18px!important}
body[data-ui="bm-v080"] .bmy-menu-toggle:hover b:last-child{width:28px!important}
body[data-ui="bm-v080"] .bmy-menu-toggle[aria-expanded="true"] b:first-child,
body[data-ui="bm-v080"] .bmy-menu-toggle[aria-expanded="true"] b:last-child{
  top:10px!important;
  width:26px!important;
}
body[data-ui="bm-v080"] .bmy-menu-toggle[aria-expanded="true"] b:first-child{transform:rotate(45deg)!important}
body[data-ui="bm-v080"] .bmy-menu-toggle[aria-expanded="true"] b:last-child{transform:rotate(-45deg)!important}

/* ------------------------------------------------------------------
   Media radius — imagery follows the same surface language as cards.
   Leaflet tiles/markers are explicitly excluded.
   ------------------------------------------------------------------ */
body[data-ui="bm-v080"] main figure,
body[data-ui="bm-v080"] main img:not(.leaflet-tile):not(.leaflet-marker-icon):not(.leaflet-marker-shadow):not(.brand-logo){
  border-radius:0;
}
body[data-ui="bm-v080"] main figure{overflow:hidden}
body[data-ui="bm-v080"] .leaflet-container img,
body[data-ui="bm-v080"] .bmy-cruising-map img{border-radius:0!important}
body[data-ui="bm-v080"] :is(
  .fleet-card-media,
  .home-yacht-media,
  .home-flagship-media,
  .yacht-v7-hero-media,
  .yacht-v7-gallery-card,
  .yacht-v7-similar-card figure,
  .destination-v13-card-media,
  .destination-v13-hero-media,
  .itinerary-v13-map,
  .experience-v13-media,
  .journal-v13-media,
  .content-v13-story-media
){border-radius:0!important;overflow:hidden!important}

/* ------------------------------------------------------------------
   Yacht Profile — one visual family for capacity, facts, availability
   and human advisor.
   ------------------------------------------------------------------ */
body[data-ui="bm-v080"].yacht-detail .yacht-v34-meta-inline{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:7px!important;
  width:100%!important;
  margin-top:12px!important;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v34-meta-inline>span{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 22px!important;
  grid-template-rows:auto auto!important;
  gap:5px 8px!important;
  align-items:center!important;
  min-height:62px!important;
  padding:10px 11px!important;
  border:1px solid var(--bmy-ui-line)!important;
  border-radius:0!important;
  background:#fff!important;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v34-meta-inline>span svg{
  grid-column:2!important;
  grid-row:1/3!important;
  width:18px!important;
  height:18px!important;
  justify-self:end!important;
  color:#2ea8d3!important;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v34-meta-inline>span small{
  grid-column:1!important;
  grid-row:1!important;
  display:block!important;
  order:0!important;
  font-size:8px!important;
  line-height:1!important;
  text-transform:uppercase!important;
  letter-spacing:.14em!important;
  color:#6d8798!important;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v34-meta-inline>span b{
  grid-column:1!important;
  grid-row:2!important;
  font-size:14px!important;
  line-height:1.1!important;
  font-weight:650!important;
  color:#153a53!important;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v34-card-facts{gap:7px!important}
body[data-ui="bm-v080"].yacht-detail .yacht-v34-card-facts p{
  min-height:62px!important;
  padding:10px 11px!important;
  border-radius:0!important;
  background:#fff!important;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v34-availability{
  border-radius:0!important;
  border-color:#cfe6f1!important;
  background:var(--bmy-ui-ice)!important;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v31-availability .bmy-charter-controls{
  border-radius:0!important;
  overflow:hidden;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v31-availability>button[type="submit"]{
  border-radius:0!important;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v38-advisor-integrated{
  margin:0 12px 12px!important;
  padding-top:12px!important;
  border-top:1px solid rgba(7,31,47,.08)!important;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v38-advisor-integrated .yacht-v38-advisor-card{
  min-height:92px!important;
  padding:14px 14px!important;
  border:1px solid #cfe6f1!important;
  border-radius:0!important;
  background:var(--bmy-ui-ice)!important;
  color:#153a53!important;
  box-shadow:none!important;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v38-advisor-integrated .yacht-v38-advisor-card::before,
body[data-ui="bm-v080"].yacht-detail .yacht-v38-advisor-integrated .yacht-v38-advisor-card::after{display:none!important}
body[data-ui="bm-v080"].yacht-detail .yacht-v38-advisor-integrated .yacht-v38-advisor-card>span{color:#5d8399!important}
body[data-ui="bm-v080"].yacht-detail .yacht-v38-advisor-integrated .yacht-v38-advisor-card>strong{color:#14344b!important}
body[data-ui="bm-v080"].yacht-detail .yacht-v38-advisor-integrated .yacht-v38-advisor-card>small{color:#6d8290!important}
body[data-ui="bm-v080"].yacht-detail .yacht-v38-advisor-integrated .yacht-v38-advisor-card>em{
  border:1px solid rgba(38,154,197,.22)!important;
  border-radius:50%!important;
  background:#e5f5fb!important;
  color:#158db9!important;
}
body[data-ui="bm-v080"].yacht-detail .yacht-v38-advisor-integrated .yacht-v38-advisor-card:hover{
  transform:translateY(-1px)!important;
  border-color:#abd7e9!important;
  background:#eef8fc!important;
  box-shadow:none!important;
}

/* ------------------------------------------------------------------
   Dark-surface readability — homepage Route Explorer was inheriting
   light-surface text tokens after its panel became navy.
   ------------------------------------------------------------------ */
body[data-ui="bm-v080"].home-page .home-route-panel{
  border-color:var(--bmy-ui-line-dark)!important;
  color:#f4fbff!important;
}
body[data-ui="bm-v080"].home-page .home-route-selector{border-color:var(--bmy-ui-line-dark)!important}
body[data-ui="bm-v080"].home-page .home-route-selector button{
  border-color:rgba(255,255,255,.08)!important;
  color:rgba(232,245,251,.62)!important;
}
body[data-ui="bm-v080"].home-page .home-route-selector button span{color:#69d8fb!important}
body[data-ui="bm-v080"].home-page .home-route-selector button:hover,
body[data-ui="bm-v080"].home-page .home-route-selector button.active{
  background:#f5fafd!important;
  color:#12364e!important;
}
body[data-ui="bm-v080"].home-page .home-route-selector button:hover span,
body[data-ui="bm-v080"].home-page .home-route-selector button.active span{color:#1c83ad!important}
body[data-ui="bm-v080"].home-page .home-route-detail h3{color:#f4fbff!important}
body[data-ui="bm-v080"].home-page .home-route-detail>p:not(.route-detail-kicker){color:rgba(232,245,251,.65)!important}
body[data-ui="bm-v080"].home-page .route-detail-kicker{color:#65d5fa!important}
body[data-ui="bm-v080"].home-page .route-detail-facts{
  border-color:rgba(255,255,255,.10)!important;
}
body[data-ui="bm-v080"].home-page .route-detail-facts span{border-color:rgba(255,255,255,.09)!important}
body[data-ui="bm-v080"].home-page .route-detail-facts small{color:rgba(229,243,249,.46)!important}
body[data-ui="bm-v080"].home-page .route-detail-facts b{color:#f4fbff!important}
body[data-ui="bm-v080"].home-page .route-stop-preview span{
  border-color:rgba(255,255,255,.10)!important;
  background:rgba(255,255,255,.05)!important;
  color:rgba(238,248,252,.78)!important;
}
body[data-ui="bm-v080"].home-page .route-detail-actions .text-link{color:#82ddfb!important;border-bottom-color:rgba(130,221,251,.32)!important}

/* ------------------------------------------------------------------
   Contained-by-default public systems. Full-bleed backgrounds may remain,
   but their interactive/content surfaces align to the site grid.
   ------------------------------------------------------------------ */
@media(min-width:901px){
  body[data-ui="bm-v080"] .home-route-shell,
  body[data-ui="bm-v080"] .cruising-chart-system-shell,
  body[data-ui="bm-v080"].yacht-detail .yacht-v7-similar>.shell{
    width:var(--bmy-desktop-shell, min(1440px,calc(100% - 72px)))!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body[data-ui="bm-v080"] .cruising-chart-system-shell{border-radius:0!important;overflow:hidden!important}
  body[data-ui="bm-v080"].yacht-detail .yacht-v7-similar-card figure{border-radius:0!important}
}

@media(max-width:900px){
  body[data-ui="bm-v080"] .bmy-menu-toggle>i{width:27px!important;height:19px!important}
  body[data-ui="bm-v080"] .bmy-menu-toggle b:first-child{top:5px!important;width:27px!important}
  body[data-ui="bm-v080"] .bmy-menu-toggle b:last-child{top:13px!important;width:17px!important}
  body[data-ui="bm-v080"] .bmy-menu-toggle[aria-expanded="true"] b:first-child,
  body[data-ui="bm-v080"] .bmy-menu-toggle[aria-expanded="true"] b:last-child{top:9px!important;width:25px!important}
  body[data-ui="bm-v080"].yacht-detail .yacht-v34-meta-inline>span,
  body[data-ui="bm-v080"].yacht-detail .yacht-v34-card-facts p{min-height:58px!important}
  body[data-ui="bm-v080"].yacht-detail .yacht-v38-advisor-integrated .yacht-v38-advisor-card{min-height:84px!important}
}

@media(prefers-reduced-motion:reduce){
  body[data-ui="bm-v080"] .bmy-menu-toggle b{transition:none!important}
}


/* BMY CORE 2.5.26 — Contained Layout & Card System Consistency
   Contained Finder/Planner, fleet-standard Finder cards, borderless yacht media,
   and a single public radius language for actual UI surfaces. */
:root{
  --bmy-ui-radius-box:0px;
  --bmy-ui-radius-control:0px;
  --bmy-ui-contained:var(--bmy-desktop-shell,min(1440px,calc(100% - 72px)));
}

/* Public surface radius authority. These selectors intentionally target true
   surface tokens rather than layout wrappers, so grids and map engines remain untouched. */
body[data-ui="bm-v080"] main :is(
  [class$="-card"],[class*="-card "],
  [class$="-panel"],[class*="-panel "],
  [class$="-tile"],[class*="-tile "],
  [class$="-console"],[class*="-console "],
  [class$="-popover"],[class*="-popover "]
){border-radius:0}
body[data-ui="bm-v080"] main :is(
  .bmy-charter-controls,
  .planner-v23-workspace,
  .planner-v23-visual-wrap,
  .planner-v23-route-list label>span,
  .planner-v13-paces label>span,
  .planner-v13-moments label>span,
  .finder-v23-advanced-grid label,
  .finder-v23-next a,
  .shortlist-toolbar,
  .request-v23-context,
  .compare-picker,
  .room-v23-nav
){border-radius:0!important}
body[data-ui="bm-v080"] main :is(button,input,select,textarea){border-radius:0}
body[data-ui="bm-v080"] main :is(.button-primary,.button-secondary,.button-light,.button-muted){border-radius:0!important}

/* Yacht-card photography: clean rounded crop, never a visible frame/border. */
body[data-ui="bm-v080"] :is(
  .fleet-v10-media,
  .fleet-card-media,
  .match-media,
  .shortlist-media,
  .brief-yacht-media,
  .home-yacht-media,
  .yacht-v7-similar-card figure
){
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:hidden!important;
}

@media(min-width:901px){
  /* Finder and Planner use the same deliberate contained product width. */
  body[data-ui="bm-v080"].finder-page .finder-v23-hero-grid,
  body[data-ui="bm-v080"].finder-page .finder-v23-workspace,
  body[data-ui="bm-v080"].planner-page .planner-v23-hero-grid,
  body[data-ui="bm-v080"].planner-page .planner-v23-shell,
  body[data-ui="bm-v080"].planner-page .planner-v23-yachts>.shell{
    width:var(--bmy-ui-contained)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Finder results now speak the same visual language as the fleet cards. */
  body[data-ui="bm-v080"].finder-page .finder-v23-console{
    border-radius:0!important;
    overflow:visible!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-console .bmy-charter-controls{
    border-radius:0!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-advanced-grid label,
  body[data-ui="bm-v080"].finder-page .finder-v23-console-foot>div span{
    border-radius:0!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-card{
    min-width:0!important;
    overflow:visible!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    transform:none!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-card:hover{
    transform:none!important;
    box-shadow:none!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-media{
    position:relative!important;
    height:auto!important;
    aspect-ratio:16/10!important;
    background-position:center!important;
    background-size:cover!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-media::after{
    background:linear-gradient(180deg,rgba(3,18,28,.06),transparent 52%,rgba(3,18,28,.16))!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-index{
    left:12px!important;
    bottom:12px!important;
    padding:5px 7px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:0!important;
    background:rgba(4,22,35,.50)!important;
    color:#eefaff!important;
    backdrop-filter:blur(8px)!important;
    font-size:9px!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-score{
    top:12px!important;
    right:12px!important;
    bottom:auto!important;
    left:auto!important;
    display:flex!important;
    align-items:baseline!important;
    gap:5px!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    padding:7px 9px!important;
    border:1px solid rgba(255,255,255,.20)!important;
    border-radius:0!important;
    background:rgba(4,22,35,.62)!important;
    color:#fff!important;
    backdrop-filter:blur(9px)!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-score b{
    margin:0!important;
    font:600 12px/1 var(--ui-sans)!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-score small{
    margin:0!important;
    font-size:7px!important;
    line-height:1!important;
    letter-spacing:.10em!important;
    color:rgba(255,255,255,.70)!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-media em{
    top:auto!important;
    left:auto!important;
    right:12px!important;
    bottom:12px!important;
    padding:5px 7px!important;
    border-radius:0!important;
    font-size:8px!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-body{
    padding:12px 0 0!important;
    background:transparent!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-title{
    align-items:end!important;
    gap:16px!important;
    padding-bottom:11px!important;
    border-bottom:1px solid rgba(7,31,47,.09)!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-title strong{
    font-size:27px!important;
    line-height:.98!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-title>span{
    font:500 10px/1.2 var(--ui-sans)!important;
    color:#617c8c!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-title>div>span{
    margin-top:4px!important;
    font-size:9px!important;
    text-transform:uppercase!important;
    letter-spacing:.11em!important;
    color:#698496!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-specs{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:0!important;
    padding:10px 0!important;
    border-bottom:1px solid rgba(7,31,47,.09)!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-specs>span{
    min-width:0!important;
    padding:0 9px!important;
    border-right:1px solid rgba(7,31,47,.08)!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-specs>span:first-child{padding-left:0!important}
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-specs>span:last-child{padding-right:0!important;border-right:0!important}
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-specs small{
    font-size:7px!important;
    letter-spacing:.12em!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-specs b{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:10px!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-reasons{
    min-height:30px!important;
    gap:5px!important;
    margin:0!important;
    padding:8px 0!important;
    border-bottom:1px solid rgba(7,31,47,.09)!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-reasons span{
    padding:5px 7px!important;
    border:1px solid rgba(7,31,47,.08)!important;
    border-radius:0!important;
    background:#f2f8fb!important;
    color:#365e76!important;
    font-size:8px!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-actions{
    min-height:40px!important;
    padding-top:8px!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .match-view{
    font-size:9px!important;
    text-transform:uppercase!important;
    letter-spacing:.10em!important;
    color:#385e74!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .save-button{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    min-height:32px!important;
    padding:0 8px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#31566c!important;
    font-size:8px!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .save-button b{
    display:grid!important;
    place-items:center!important;
    width:26px!important;height:26px!important;
    border:1px solid rgba(7,31,47,.10)!important;
    border-radius:0!important;
    background:#fff!important;
  }
  body[data-ui="bm-v080"].finder-page .finder-v23-results .save-button svg{width:14px!important;height:14px!important}
  body[data-ui="bm-v080"].finder-page .finder-v23-results .save-button.saved{color:#123a52!important}

  /* Planner: visibly contained, rounded and composed as one premium workspace. */
  body[data-ui="bm-v080"].planner-page .planner-v23-workspace{
    border-radius:0!important;
    overflow:hidden!important;
    box-shadow:0 18px 44px rgba(7,31,47,.055)!important;
  }
  body[data-ui="bm-v080"].planner-page .planner-v23-controls .bmy-charter-controls,
  body[data-ui="bm-v080"].planner-page .planner-v23-route-list label>span,
  body[data-ui="bm-v080"].planner-page .planner-v13-paces label span,
  body[data-ui="bm-v080"].planner-page .planner-v13-moments label span,
  body[data-ui="bm-v080"].planner-page .planner-v23-summary{
    border-radius:0!important;
  }
  body[data-ui="bm-v080"].planner-page .planner-v23-visual-wrap{
    border-radius:0!important;
    overflow:hidden!important;
  }
  body[data-ui="bm-v080"].planner-page .planner-v23-yachts>.shell{
    padding-left:0!important;
    padding-right:0!important;
  }
}

@media(min-width:901px) and (max-width:1180px){
  body[data-ui="bm-v080"].finder-page .finder-v23-results{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* BMY CORE 2.5.27 — Finder / Planner shell alignment
   Product workspaces now inherit the exact same desktop shell as /yachts. */
@media(min-width:901px){
  body[data-ui="bm-v080"].finder-page .finder-v23-hero-grid,
  body[data-ui="bm-v080"].finder-page .finder-v23-workspace,
  body[data-ui="bm-v080"].planner-page .planner-v23-hero-grid,
  body[data-ui="bm-v080"].planner-page .planner-v23-shell,
  body[data-ui="bm-v080"].planner-page .planner-v23-yachts>.shell{
    width:var(--bmy-desktop-shell,min(1440px,calc(100% - 72px)))!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}
