/* EcoSapa Cruise Top Spacing Safe Patch v1.0.6
   STRICT SCOPE:
   - Keep restored Cruise Pages untouched.
   - Remove ONLY: catalogue intro/title block + booking confidence strip.
   - Put existing quick-choice filters directly above the RIGHT results column.
   - Sidebar remains on the LEFT and begins at the same vertical level.
   - No routes, URLs, rewrite rules, templates, links, cruise cards or data are changed.
*/

/* ===== DETAIL RULES — KEEP EXISTING SAFE BEHAVIOR ===== */
body.ecosapa-cruise-detail-v220 main#cruise-detail.ecsd-page{
    margin-top:-46px !important;
}
body.ecosapa-cruise-detail-v220 main#cruise-detail .ecsd-breadcrumb{
    margin:0 !important;
    padding:10px 0 10px !important;
    gap:8px !important;
    font-size:14px !important;
    line-height:1.4 !important;
    font-weight:400 !important;
    color:#667787 !important;
}
body.ecosapa-cruise-detail-v220 main#cruise-detail .ecsd-breadcrumb a{
    font-size:14px !important;
    font-weight:400 !important;
    color:#667787 !important;
    text-decoration:none !important;
}
body.ecosapa-cruise-detail-v220 main#cruise-detail .ecsd-breadcrumb a:hover{
    color:#ed1c24 !important;
    text-decoration:underline !important;
    text-underline-offset:2px !important;
}

/* ===== CATALOGUE TOP GAP — KEEP EXISTING SAFE BEHAVIOR ===== */
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) #content.site-content,
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) #content.ecosapa-wp-content{
    margin-top:0 !important;
    padding-top:0 !important;
}
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) #content.site-content > .container,
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) #content.site-content > .main-content-wrapper,
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) #content.site-content > #primary,
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) #primary.content-area{
    margin-top:0 !important;
    padding-top:0 !important;
}
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) main.ecs-v130,
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) main.ecs-v290{
    margin-top:0 !important;
    padding-top:0 !important;
}
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) main.ecs.ecs-v130{
    margin-top:-64px !important;
}

/* ===== KEEP PREVIOUS DECLUTTER REMOVALS ===== */
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) .ecs-catalog__tools .ecs-advisor-strip,
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-masterfilter,
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) nav.ecs-taxnav{
    display:none !important;
}
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog{
    margin-top:0 !important;
}

/* ===== v1.0.6: REMOVE THE TWO LEFT-SIDE BLOCKS USER MARKED ===== */
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-catalog__title,
body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-confidence{
    display:none !important;
}

/* Desktop catalogue head is now redundant. Mobile keeps the native filter-open control. */
@media (min-width:981px){
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-catalog__head{
        display:none !important;
        margin:0 !important;
        padding:0 !important;
    }

    /* Restore the catalogue itself to its native two-column geometry. */
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog > .ecs-shell,
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog > .ecs-shell.ecs-v106-layout{
        display:block !important;
    }
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-catalog__layout{
        width:100% !important;
        margin:0 !important;
        grid-template-columns:310px minmax(0,1fr) !important;
        gap:22px !important;
        align-items:start !important;
    }

    /* Quick-choice strip now lives inside the RIGHT results column, directly above cards. */
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-results > section.ecs-decision{
        width:100% !important;
        max-width:none !important;
        margin:0 0 18px !important;
        padding:0 !important;
        background:transparent !important;
        border:0 !important;
    }
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-results > section.ecs-decision > .ecs-shell{
        width:100% !important;
        max-width:none !important;
        margin:0 !important;
        padding:0 !important;
    }
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-results > section.ecs-decision .ecs-decision__head{
        margin:0 0 10px !important;
        padding:0 !important;
        min-height:auto !important;
    }
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-results > section.ecs-decision .ecs-decision__head .ecs-kicker{
        font-size:11px !important;
        line-height:1.25 !important;
        letter-spacing:.055em !important;
    }
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-results > section.ecs-decision .ecs-decision__grid{
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:10px !important;
        width:100% !important;
    }
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-results > section.ecs-decision .ecs-decision__grid > a{
        min-height:78px !important;
        padding:12px 13px !important;
    }

    /* Active chips stay in the right results column naturally. */
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-active-filters{
        margin:0 0 12px !important;
    }
}

@media (max-width:1180px) and (min-width:981px){
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-catalog__layout{
        grid-template-columns:270px minmax(0,1fr) !important;
    }
}

@media (max-width:980px){
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) main.ecs.ecs-v130{
        margin-top:-36px !important;
    }
    body.ecosapa-cruise-detail-v220 main#cruise-detail.ecsd-page{
        margin-top:-30px !important;
    }
    /* On tablet/mobile the title stays removed, but keep the native catalogue head for the Filters button. */
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) section.ecs-catalog .ecs-catalog__head{
        margin:0 0 12px !important;
    }
}
@media (max-width:720px){
    body.ecosapa-cruise-storefront-v130:not(.ecosapa-cruise-detail-v220) main.ecs.ecs-v130{
        margin-top:-16px !important;
    }
    body.ecosapa-cruise-detail-v220 main#cruise-detail.ecsd-page{
        margin-top:-16px !important;
    }
    body.ecosapa-cruise-detail-v220 main#cruise-detail .ecsd-breadcrumb,
    body.ecosapa-cruise-detail-v220 main#cruise-detail .ecsd-breadcrumb a{
        font-size:13px !important;
    }
    body.ecosapa-cruise-detail-v220 main#cruise-detail .ecsd-breadcrumb{
        padding:8px 0 8px !important;
    }
}

/* ===== v2.23.0.7 LOCKED: RED VIEW CABINS & PHOTOS CTA ONLY ===== */
.ecs-v130 .ecs-main-photo .ecs-gallery-open--locked-red>span,
.ecs-v130 .ecs-main-photo .ecs-gallery-open--locked-red:visited>span{
  background:#ed1c24 !important;
  color:#fff !important;
  border-color:#ed1c24 !important;
  box-shadow:none !important;
}
.ecs-v130 .ecs-main-photo .ecs-gallery-open--locked-red:hover>span,
.ecs-v130 .ecs-main-photo .ecs-gallery-open--locked-red:focus>span{
  background:#d8171f !important;
  color:#fff !important;
}

/* ===== v2.23.0.7 LOCKED: CABIN POPUP CTA AT NATURAL BOTTOM ONLY ===== */
.ecsd-cabin-detail-modal--premium .ecsd-cabin-popup__info{
  padding-bottom:30px !important;
}
.ecsd-cabin-detail-modal--premium .ecsd-cabin-popup__bottom{
  position:static !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  z-index:auto !important;
  width:100% !important;
  min-height:78px;
  margin-top:20px !important;
  padding:14px 0 0 !important;
  border-top:1px solid #dfe7e4;
  background:#fff !important;
  backdrop-filter:none !important;
  box-shadow:none !important;
}
@media (max-width:1120px){
  .ecsd-cabin-detail-modal--premium .ecsd-cabin-popup__info{padding-bottom:24px !important;}
}
@media (max-width:820px){
  .ecsd-cabin-detail-modal--premium .ecsd-cabin-popup__info{padding-bottom:22px !important;}
  .ecsd-cabin-detail-modal--premium .ecsd-cabin-popup__bottom{
    position:static !important;
    margin-top:18px !important;
    padding-top:14px !important;
  }
}

/* ===== v2.23.0.7 LOCKED: SIMILAR CRUISES TYPE + STAR DISPLAY ONLY ===== */
body.ecosapa-cruise-detail-v220 .ecsd-related-card__image{
  position:relative;
  display:block;
  overflow:hidden;
}
body.ecosapa-cruise-detail-v220 .ecsd-related-card__image .ecsd-related-card__type{
  position:absolute;
  top:12px;
  left:12px;
  z-index:2;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.96);
  color:#1f2937;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 5px 14px rgba(15,23,42,.08);
  font-size:11px;
  font-weight:800;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.04em;
}
body.ecosapa-cruise-detail-v220 .ecsd-related-card__image .ecsd-related-card__rating{
  position:absolute;
  top:12px;
  right:12px;
  left:auto;
  z-index:2;
  padding:7px 9px;
  border-radius:7px;
  background:#252b30;
  color:#fff;
  font-size:12px;
  font-weight:800;
}
body.ecosapa-cruise-detail-v220 .ecsd-related-card__title-row{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}
body.ecosapa-cruise-detail-v220 .ecsd-related-card__title-row h3{margin-right:0;}
body.ecosapa-cruise-detail-v220 .ecsd-related-card__stars{
  color:#f59e0b;
  font-size:18px;
  line-height:1;
  letter-spacing:1px;
  white-space:nowrap;
}


/* v2.23.0.9 — LOCKED: catalogue price balance only.
   Scope: right-side price display inside cruise catalogue cards.
   Remove nothing else; no detail/cabin/showroom/filter price styling is affected. */
.ecs-v130 .ecs-cruise__price .ecs-price{
  gap:3px;
}
.ecs-v130 .ecs-cruise__price .ecs-price sup{
  align-self:flex-end;
  margin:0 0 3px;
  font-size:18px !important;
  line-height:1;
  font-weight:850;
}
.ecs-v130 .ecs-cruise__price .ecs-price strong{
  font-size:42px !important;
  line-height:.96;
}


/* v2.23.0.11 — LOCKED: Cruise-detail FAQ internal-link visibility only.
   Match the clear clickable treatment already used in Tour FAQ.
   Scope is ONLY links generated inside FAQ answers. */
body.ecosapa-cruise-detail-v220 .ecsd-faq-list p a.ecsd-faq-link,
body.ecosapa-cruise-detail-v220 .ecsd-faq-list p a.ecsd-faq-link:visited{
  color:#0b63c7 !important;
  font-weight:700 !important;
  text-decoration:none !important;
  text-underline-offset:3px;
}
body.ecosapa-cruise-detail-v220 .ecsd-faq-list p a.ecsd-faq-link:hover,
body.ecosapa-cruise-detail-v220 .ecsd-faq-list p a.ecsd-faq-link:focus{
  color:#ed1c24 !important;
  text-decoration:underline !important;
  text-decoration-thickness:1px;
}
