/*
 * India Bon Voyage - site-wide design layer (loaded on every front-end page).
 * Header, footer, buttons, tour cards, typography and home page colours.
 * Presentation only. Elementor stays fully editable: nothing here replaces any page or widget.
 */
:root{--ibv-navy:#0f1a2b;--ibv-navy-2:#16243b}

/* ============ typography ============ */
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4{letter-spacing:-.01em}
/* the home "Why us" block used a serif display font - bring it in line with the rest */
.elementor-heading-title,
.elementor-widget-heading h2,.elementor-widget-heading h3,.elementor-widget-heading h4{font-family:"Outfit","DM Sans",sans-serif}
[style*="DM Serif"],
.elementor-2639 h3.elementor-heading-title,
.elementor-2639 .elementor-icon-box-title{font-family:"Outfit","DM Sans",sans-serif !important}

/* ============ header ============ */
/* top bar (phone / email / currency / social) */
#header .elementor-element-f9fdc16{background:var(--ibv-navy) !important}
#header .elementor-element-f9fdc16 *{color:#e8edf5}
#header .elementor-element-f9fdc16 a:hover{color:#fff}
/* main bar */
#header .elementor-element-43f43d4{background:#fff !important;box-shadow:0 1px 0 var(--ibv-line),0 6px 20px rgba(16,24,40,.05)}
#header .menu-item.level-1 > a,
#header .menu-item.level-1 > .menu-item-title{font-weight:600;color:var(--ibv-ink)}
#header .menu-item.level-1:hover > a,
#header .menu-item.level-1:hover > .menu-item-title{color:var(--ibv-brand)}
#header .sub-menu{border:1px solid var(--ibv-line);border-radius:12px;box-shadow:var(--ibv-shadow-lg);overflow:hidden}
#header .sub-menu a:hover{color:var(--ibv-brand);background:var(--ibv-brand-soft)}
/* "Plan Your Trip" call to action */
#header .togo-button,
#header a.elementor-button{border-radius:999px !important;font-weight:700;box-shadow:0 4px 14px rgba(253,70,33,.28)}

/* ============ footer ============ */
#footer.site-footer,
#footer.site-footer .e-con.e-parent{background:var(--ibv-navy) !important}
#footer h4.elementor-heading-title{color:#fff !important;font-size:17px;font-weight:700;position:relative;padding-bottom:10px}
#footer .elementor-heading-title{color:#e8edf5 !important}
#footer h4.elementor-heading-title:after{content:"";position:absolute;left:0;bottom:0;width:34px;height:3px;border-radius:3px;background:var(--ibv-brand)}
#footer a,#footer .elementor-icon-list-text,#footer .togo-icon-list-item-title{color:#b9c3d3 !important}
#footer a:hover,#footer a:hover .elementor-icon-list-text{color:#fff !important}
#footer .elementor-icon-list-item,#footer .togo-icon-list-item{padding-top:3px;padding-bottom:3px}
#footer hr,#footer .elementor-divider-separator{border-color:rgba(255,255,255,.12) !important}

/* ============ buttons ============ */
.togo-button.full-filled,
a.togo-button.full-filled,
button.togo-button.full-filled{
  background:var(--ibv-brand);border-color:var(--ibv-brand);color:#fff;border-radius:10px;font-weight:700;
  transition:background .15s,border-color .15s,transform .15s
}
.togo-button.full-filled:hover{background:var(--ibv-brand-dark);border-color:var(--ibv-brand-dark);color:#fff}
.togo-button.line,.togo-button.border-line{border-radius:10px;font-weight:600}

/* ============ tour cards (grid-04) - same card everywhere: home, categories, related, carousels ============ */
.type-trip-grid-04 .trip-inner{
  background:#fff;border:1px solid var(--ibv-line);border-radius:var(--ibv-radius);overflow:hidden;
  box-shadow:var(--ibv-shadow);height:100%;display:flex;flex-direction:column;
  transition:box-shadow .2s,transform .2s
}
.type-trip-grid-04 .trip-inner:hover{box-shadow:var(--ibv-shadow-lg);transform:translateY(-3px)}
.type-trip-grid-04 .trip-thumbnail{overflow:hidden;border-radius:0 !important;aspect-ratio:4/3;background:#e9ebef}
.type-trip-grid-04 .trip-thumbnail a,
.type-trip-grid-04 .trip-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}
.type-trip-grid-04 .trip-thumbnail img{transition:transform .4s}
.type-trip-grid-04 .trip-inner:hover .trip-thumbnail img{transform:scale(1.05)}
.type-trip-grid-04 .trip-wishlist{top:12px !important;right:12px !important}
.type-trip-grid-04 .trip-content{padding:14px 16px 16px !important;display:flex;flex-direction:column;gap:6px;flex:1}
.type-trip-grid-04 .trip-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--ibv-muted);margin:0 !important}
.type-trip-grid-04 .trip-location{text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.type-trip-grid-04 .trip-review{font-weight:700;color:var(--ibv-ink)}
.type-trip-grid-04 .trip-review .togo-svg-icon,
.type-trip-grid-04 .trip-review svg{color:#f5a623 !important}
.type-trip-grid-04 .trip-review svg path{fill:#f5a623 !important;stroke:#f5a623 !important}
.type-trip-grid-04 .trip-title{margin:2px 0 0 !important;font-size:16px !important;line-height:1.35 !important;font-weight:700}
.type-trip-grid-04 .trip-title a{color:var(--ibv-ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.7em}
.type-trip-grid-04 .trip-title a:hover{color:var(--ibv-brand)}
.type-trip-grid-04 .trip-info{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:var(--ibv-muted)}
.type-trip-grid-04 .trip-description{
  font-size:13px;line-height:1.5;color:var(--ibv-muted);margin:0 !important;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden
}
.type-trip-grid-04 .trip-footer{
  margin-top:auto !important;padding-top:12px;border-top:1px solid var(--ibv-line);
  display:flex;align-items:flex-end;justify-content:space-between;gap:10px
}
.type-trip-grid-04 .trip-price .prefix,
.type-trip-grid-04 .trip-price .suffix{font-size:12px;color:var(--ibv-muted)}
.type-trip-grid-04 .trip-price .sale-price{font-size:20px;font-weight:800;color:var(--ibv-ink)}
.type-trip-grid-04 .trip-price .regular-price{font-size:13px;color:var(--ibv-muted)}
.type-trip-grid-04 .trip-view-detail .togo-button{
  background:var(--ibv-brand);border-color:var(--ibv-brand);color:#fff;border-radius:10px;
  padding:10px 16px;font-size:14px;font-weight:700;white-space:nowrap
}
.type-trip-grid-04 .trip-view-detail .togo-button:hover{background:var(--ibv-brand-dark);border-color:var(--ibv-brand-dark)}

/* ============ home page: one colour rhythm instead of mint / peach / grey / dark bands ============ */
/* soft mint + peach section backgrounds -> neutral light grey / white */
.elementor-2639 .elementor-element-ba38e36:not(.elementor-motion-effects-element-type-background),
.elementor-2639 .elementor-element-eedfde9:not(.elementor-motion-effects-element-type-background),
.elementor-2639 .elementor-element-d23e66d:not(.elementor-motion-effects-element-type-background){background-color:var(--ibv-bg) !important}
.elementor-2639 .elementor-element-fa5f3b1:not(.elementor-motion-effects-element-type-background),
.elementor-2639 .elementor-element-2765b91:not(.elementor-motion-effects-element-type-background),
.elementor-2639 .elementor-element-60d6da8:not(.elementor-motion-effects-element-type-background){background-color:#fff !important}
/* yellow icons / accents -> brand orange */
.elementor-2639 .elementor-icon svg,
.elementor-2639 .elementor-icon svg path,
.elementor-2639 .togo-svg-icon svg path[fill="#F3D110"]{fill:var(--ibv-brand) !important}
.elementor-2639 .elementor-icon{color:var(--ibv-brand) !important}
/* section headings */
.elementor-2639 .elementor-widget-heading .elementor-heading-title{letter-spacing:-.015em}

@media (max-width:767px){
  #footer h4.elementor-heading-title{font-size:16px}
  .type-trip-grid-04 .trip-title{font-size:15px !important}
}

/* ================= HEADER v2 (all pages) ================= */
#header{position:sticky;top:0;z-index:100;background:#fff}
#header .elementor-element-f9fdc16{min-height:0 !important;padding-top:6px !important;padding-bottom:6px !important;font-size:13px}
#header .elementor-element-43f43d4{background:rgba(255,255,255,.97) !important;backdrop-filter:saturate(1.4) blur(8px);box-shadow:0 1px 0 var(--ibv-line),0 8px 24px rgba(16,24,40,.06) !important;min-height:0 !important}
#header .elementor-element-43f43d4 > .e-con-inner,#header .elementor-element-43f43d4{padding-top:8px !important;padding-bottom:8px !important}
#header .elementor-widget-togo-logo img{max-height:50px;width:auto}
/* menu: one line, calm, orange underline on hover */
#header .menu-item.level-1{white-space:nowrap}
#header .menu-item.level-1 > a,#header .menu-item.level-1 > .menu-item-title{font-size:15px;font-weight:600;color:var(--ibv-ink);padding:10px 4px;position:relative;white-space:nowrap}
#header .menu-item.level-1 > a:after{content:"";position:absolute;left:4px;right:4px;bottom:2px;height:2px;border-radius:2px;background:var(--ibv-brand);transform:scaleX(0);transform-origin:left;transition:transform .2s}
#header .menu-item.level-1:hover > a:after,#header .menu-item.level-1.current-menu-item > a:after{transform:scaleX(1)}
#header .elementor-widget-togo-main-menu .menu{gap:6px}
/* "Plan Your Trip" button */
#header .togo-button,#header a.elementor-button{background:var(--ibv-brand) !important;border-color:var(--ibv-brand) !important;color:#fff !important;border-radius:999px !important;padding:12px 22px !important;font-weight:700;box-shadow:0 6px 18px rgba(253,70,33,.30);white-space:nowrap}
#header .togo-button:hover,#header a.elementor-button:hover{background:var(--ibv-brand-dark) !important}
/* dropdown */
#header .sub-menu{border:1px solid var(--ibv-line);border-radius:14px;box-shadow:var(--ibv-shadow-lg);padding:8px}
#header .sub-menu a{border-radius:8px;padding:9px 12px}
@media (max-width:1024px){#header .elementor-widget-togo-logo img{max-height:42px}}

/* ================= tour cards: hide the empty "0 (0)" rating until a tour really has reviews ================= */
.type-trip .trip-review.ibv-noreview{display:none !important}

/* ---- no "Add to Cart" anywhere (Book now goes straight to checkout) ---- */
a.add-to-cart,.item-availability .add-to-cart,.togo-button.add-to-cart,button.add_to_cart_button,a.add_to_cart_button,.single_add_to_cart_button,.togo-ajax-success{display:none !important}
.togo-mini-cart,.togo-minicart-button,.togo-minicart-icon,.elementor-widget-togo-mini-cart{display:none !important}
