/* Mosum Voyage 1.1 - card system (Belong mosaic + Hot Deals portrait cards) ------------- */
:root{--mv-card-r:22px;--mv-card-shadow:0 18px 40px rgba(6,25,29,.32);--mv-card-grad:linear-gradient(180deg,rgba(6,25,29,0) 18%,rgba(6,25,29,.62) 52%,rgba(6,25,29,.96) 100%)}

/* =====  1. TOUR + SAFARI LOOP GRIDS (Elementor loop templates 1301 / 3223)  ============ */
body .e-loop-item .elementor-element.e-parent{position:relative;aspect-ratio:3/4;min-height:0;padding:0;border-radius:var(--mv-card-r);overflow:hidden;background:var(--theme-palette-color-7);box-shadow:var(--mv-card-shadow);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}
body .e-loop-item .elementor-element.e-parent:hover{transform:translateY(-8px);box-shadow:0 26px 54px rgba(6,25,29,.42)}
body .e-loop-item .e-parent>.e-con-inner{position:absolute;inset:0;display:block;width:100%;max-width:none;height:100%;padding:0;margin:0}
/* whole card is one tap target */
body .e-loop-item .e-parent .--eael-wrapper-link-tag{position:absolute!important;inset:0;z-index:5;display:block}
/* photo layer */
body .e-loop-item .e-parent .e-child:first-of-type{position:absolute;inset:0;width:100%;height:100%;min-height:0!important;padding:0;border-radius:0!important;background-size:cover;background-position:center;transition:filter .5s ease}
body .e-loop-item .e-parent:hover .e-child:first-of-type{filter:saturate(1.12) brightness(1.04)}
body .e-loop-item .e-parent .e-child:first-of-type::before{background:none!important;opacity:0!important}
/* price tag (gold, top-left) */
body .e-loop-item .elementor-element-1ef71d9,body .e-loop-item .e-child:first-of-type .elementor-widget-heading{position:absolute;top:16px;left:16px;z-index:4;width:auto!important;max-width:none!important;margin:0;padding:8px 16px 8px 14px;border-radius:999px;background:var(--theme-palette-color-1);box-shadow:0 8px 18px rgba(6,25,29,.35);text-align:left}
body .e-loop-item .e-child:first-of-type .elementor-heading-title{color:var(--theme-palette-color-5)!important;font-size:14px!important;font-weight:700!important;letter-spacing:.02em;line-height:1}
/* text overlay */
body .e-loop-item .e-parent .e-child:last-of-type{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;align-items:flex-start;gap:8px;width:100%;padding:90px 22px 22px;background:var(--mv-card-grad);pointer-events:none}
body .e-loop-item .e-child:last-of-type .elementor-widget{width:100%;margin:0}
body .e-loop-item .e-child:last-of-type .elementor-heading-title{text-shadow:0 2px 12px rgba(0,0,0,.5);margin:0;font-size:20px!important;line-height:1.28!important;letter-spacing:0;font-weight:700;color:#fff}
body .e-loop-item .e-child:last-of-type .elementor-heading-title a{color:#fff;text-decoration:none}
body .e-loop-item .e-child:last-of-type .elementor-widget-theme-post-excerpt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13.5px;line-height:1.5;color:rgba(255,255,255,.82)!important}
body .e-loop-item .e-child:last-of-type .elementor-widget-button{width:auto}
body .e-loop-item .e-child:last-of-type .elementor-button{padding:6px 0 0!important;border:0!important;border-radius:0!important;background:none!important;color:var(--theme-palette-color-1)!important;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;box-shadow:none}
body .e-loop-item .e-child:last-of-type .elementor-button-text::after{content:"\2192";display:inline-block;margin-left:8px;transition:transform .25s ease}
body .e-loop-item .e-parent:hover .elementor-button-text::after{transform:translateX(6px)}
/* the grid container itself */
.elementor-widget-loop-grid .elementor-loop-container{row-gap:28px}
@media (max-width:767.98px){body .e-loop-item .elementor-element.e-parent{aspect-ratio:4/5}.elementor-widget-loop-grid .elementor-loop-container{row-gap:20px}}

/* =====  2. HOME "WHAT WE ARRANGE" - Belong mosaic  ===================================== */
body .elementor-element-7f9a2cb{display:flex!important;flex-direction:column;align-items:center;text-align:center;gap:14px;--gap:14px;margin-bottom:6px}
body .elementor-element-7f9a2cb .elementor-widget{width:100%;max-width:640px;text-align:center}
body .elementor-element-7f9a2cb .elementor-heading-title::after{content:"";display:block;width:56px;height:4px;margin:16px auto 0;border-radius:4px;background:var(--theme-palette-color-1)}
body .elementor-element-1a53175{counter-reset:mvb;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:none!important;grid-auto-rows:290px;gap:18px!important;--gap:18px}
body .elementor-element-1a53175,body .elementor-element-1a53175 *{text-align:left}
body .elementor-element-1a53175>.elementor-element{position:relative;min-width:0;max-width:100%;grid-column:auto!important;grid-row:auto;min-height:0!important;padding:0!important;border-radius:var(--mv-card-r)!important;overflow:hidden;box-shadow:var(--mv-card-shadow)!important;border:0!important;counter-increment:mvb;isolation:isolate;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}
body .elementor-element-1a53175>.elementor-element:first-child{grid-column:1 / span 2!important;grid-row:1 / span 2;min-height:0!important}
body .elementor-element-1a53175>.elementor-element:hover{transform:translateY(-6px)}
/* photo (Elementor draws it on ::before) */
body .elementor-element-1a53175>.elementor-element::before{opacity:1!important;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;transition:transform .8s cubic-bezier(.2,.7,.2,1);z-index:0}
body .elementor-element-1a53175>.elementor-element:hover::before{transform:scale(1.07)}
body .elementor-element-1a53175>.elementor-element::after{content:"";position:absolute;inset:0;z-index:1;background:var(--mv-card-grad);pointer-events:none}
/* index tag, top-left (the "price tag" of the Belong layout) */
body .elementor-element-1a53175>.elementor-element>.e-con-inner{position:static}
body .elementor-element-1a53175>.elementor-element>.elementor-widget:first-child::before,
body .elementor-element-1a53175>.elementor-element>.e-con>.elementor-widget:first-child::before{content:counter(mvb,decimal-leading-zero);display:inline-block;margin:0 0 10px;padding:6px 12px;border-radius:999px;background:var(--theme-palette-color-1);color:var(--theme-palette-color-5);font-size:12px;font-weight:700;letter-spacing:.08em;line-height:1}
body .elementor-element-1a53175>.elementor-element .elementor-widget{position:relative;z-index:2;width:100%;min-width:0;max-width:100%}
body .elementor-element-1a53175 .elementor-widget-button{width:auto}
body .elementor-element-1a53175>.elementor-element{display:flex!important;flex-direction:column;justify-content:flex-end!important;gap:8px;padding:22px!important}
body .elementor-element-1a53175>.elementor-element:first-child{padding:34px!important}
body .elementor-element-1a53175>.elementor-element .elementor-heading-title{margin:0;font-size:22px;line-height:1.2;font-weight:700;color:#fff}
body .elementor-element-1a53175>.elementor-element:first-child .elementor-heading-title{font-size:clamp(28px,3vw,40px)}
body .elementor-element-1a53175>.elementor-element .elementor-widget-text-editor{font-size:14px;line-height:1.5;color:rgba(255,255,255,.84)!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body .elementor-element-1a53175>.elementor-element:first-child .elementor-widget-text-editor{font-size:16px;-webkit-line-clamp:4;max-width:420px}
body .elementor-element-1a53175>.elementor-element .elementor-widget-text-editor *{color:inherit;margin:0}
body .elementor-element-1a53175 .elementor-button{padding:6px 0 0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none;color:var(--theme-palette-color-1)!important;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
body .elementor-element-1a53175 .elementor-button:hover{color:#fff!important}
/* nested last card (Safaris) - flatten its inner glass box */
body .elementor-element-1a53175>.elementor-element>.e-con{position:static;min-height:0!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none;display:flex!important;flex-direction:column;gap:8px;justify-content:flex-end}
body .elementor-element-1a53175>.elementor-element>.e-con::before,body .elementor-element-1a53175>.elementor-element>.e-con::after{display:none}
body .elementor-element-1a53175>.elementor-element>.e-con .elementor-widget{z-index:2}
/* tablet / mobile */
@media (max-width:1024px){
  body .elementor-element-1a53175{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:minmax(300px,auto)}
  body .elementor-element-1a53175>.elementor-element:first-child{grid-column:1 / span 2!important;grid-row:auto;min-height:380px!important}
  body .elementor-element-1a53175>.elementor-element:last-child{grid-column:1 / span 2!important}
}
@media (max-width:600px){
  body .elementor-element-7f9a2cb{padding-inline:20px!important}
  body .elementor-element-1a53175{grid-template-columns:minmax(0,1fr)!important;gap:14px!important;padding-inline:16px!important}
  body .elementor-element-1a53175>.elementor-element,body .elementor-element-1a53175>.elementor-element:first-child,body .elementor-element-1a53175>.elementor-element:last-child{grid-column:auto!important;min-height:300px!important}
  body .elementor-element-1a53175>.elementor-element:first-child{min-height:380px!important}
}

/* =====  3. BLOG CARDS  ================================================================ */
/* 3a. theme archive/search cards */
.mv-grid .mv-card,.mv-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:8px;aspect-ratio:3/4;padding:22px;border:0;border-radius:var(--mv-card-r);background:var(--theme-palette-color-7);overflow:hidden;box-shadow:var(--mv-card-shadow)}
.mv-card:hover{transform:translateY(-8px)}
.mv-card::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(6,25,29,0) 25%,rgba(6,25,29,.7) 58%,rgba(6,25,29,.96) 100%);pointer-events:none}
.mv-card .mv-card-media{position:absolute;inset:0;z-index:0;aspect-ratio:auto;border-radius:0}
.mv-card .mv-card-media img{width:100%;height:100%;object-fit:cover}
.mv-card .mv-card-ph{display:block;width:100%;height:100%;background:linear-gradient(135deg,var(--theme-palette-color-6),var(--theme-palette-color-7))}
.mv-card .mv-card-body{display:contents}
.mv-card .mv-pill{position:absolute;top:16px;left:16px;z-index:3;padding:8px 16px;background:var(--theme-palette-color-1);color:var(--theme-palette-color-5);font-size:13px;font-weight:700;box-shadow:0 8px 18px rgba(6,25,29,.35)}
.mv-card .mv-card-title,.mv-card .mv-card-text,.mv-card .mv-more{position:relative;z-index:2}
.mv-card .mv-card-title{width:100%;text-shadow:0 2px 12px rgba(0,0,0,.5);font-size:20px;line-height:1.28;color:#fff}
.mv-card .mv-card-title a{color:#fff;text-decoration:none}
.mv-card .mv-card-title a::after{content:"";position:absolute;inset:-9999px;z-index:4}
.mv-card .mv-card-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13.5px;line-height:1.5;color:rgba(255,255,255,.82);opacity:1}
.mv-card .mv-more{margin-top:2px;color:var(--theme-palette-color-1);font-size:13px;letter-spacing:.12em;text-transform:uppercase}
@media (max-width:690px){.mv-card{aspect-ratio:4/5}}

/* 3b. Essential Addons post grids (home journal + blog listings) */
body .eael-post-grid .eael-grid-post-holder{position:relative;overflow:hidden;border:0!important;border-radius:var(--mv-card-r)!important;background:var(--theme-palette-color-7)!important;box-shadow:var(--mv-card-shadow)!important;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}
body .eael-post-grid .eael-grid-post-holder:hover{transform:translateY(-8px);box-shadow:0 26px 54px rgba(6,25,29,.42)!important}
body .eael-post-grid .eael-grid-post-holder-inner{position:relative;aspect-ratio:3/4;height:auto}
body .eael-post-grid .eael-entry-media{position:absolute!important;inset:0;width:100%;height:100%}
body .eael-post-grid .eael-entry-thumbnail,body .eael-post-grid .eael-entry-thumbnail img{width:100%!important;height:100%!important;padding:0!important;object-fit:cover}
body .eael-post-grid .eael-entry-thumbnail.eael-image-ratio{padding-bottom:0!important}
body .eael-post-grid .eael-entry-overlay{background:linear-gradient(180deg,transparent,rgba(14,59,67,.25))!important}
body .eael-post-grid .eael-entry-overlay>a{position:absolute;inset:0;z-index:5}
body .eael-post-grid .eael-entry-wrapper{position:absolute!important;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;gap:8px;padding:150px 22px 22px!important;background:var(--mv-card-grad)!important;text-align:left;pointer-events:none}
body .eael-post-grid .eael-entry-title,body .eael-post-grid .eael-entry-title a{text-shadow:0 2px 12px rgba(0,0,0,.5);margin:0;color:#fff!important;font-size:20px!important;line-height:1.28!important;font-weight:700;text-decoration:none}
body .eael-post-grid .eael-grid-post-excerpt,body .eael-post-grid .eael-grid-post-excerpt p{color:rgba(255,255,255,.82)!important;font-size:13.5px;line-height:1.5;margin:0}
body .eael-post-grid .eael-post-elements-readmore-btn{display:inline-block;margin-top:6px;padding:0!important;border:0!important;background:none!important;color:var(--theme-palette-color-1)!important;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;box-shadow:none}
body .eael-post-grid .eael-entry-meta,body .eael-post-grid .eael-entry-footer{display:none}
body .eael-post-grid .post-carousel-categories,body .eael-post-grid .eael-entry-meta .eael-posted-by{display:none}
@media (max-width:690px){body .eael-post-grid .eael-grid-post-holder-inner{aspect-ratio:4/5}}

@media (prefers-reduced-motion:reduce){body .e-loop-item .elementor-element.e-parent,.mv-card,body .eael-post-grid .eael-grid-post-holder,body .elementor-element-1a53175>.elementor-element,body .elementor-element-1a53175>.elementor-element::before{transition:none!important}}

/* 1.3.1: on phones a flex parent measured the card grid with zero-width columns, so the grid collapsed to one row's height and the cards ran over the next section. A block parent sizes it from its real width. */
.e-con>.e-con-inner:has(>.elementor-widget-loop-grid),.e-con.e-con-full:has(>.elementor-widget-loop-grid){display:block!important;height:auto}
.elementor-widget-loop-grid{width:100%}
.elementor-widget-loop-grid .elementor-loop-container{grid-auto-rows:auto}
