.elementor-3619 .elementor-element.elementor-element-50c04b1{--display:flex;--min-height:420px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-3619 .elementor-element.elementor-element-50c04b1:not(.elementor-motion-effects-element-type-background), .elementor-3619 .elementor-element.elementor-element-50c04b1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://aetheriatourism.com/wp-content/uploads/2025/12/8638e25e474ad4bd4b76d5b2c2a702076e4a2af8.png");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-3619 .elementor-element.elementor-element-d921652 .elementor-heading-title{font-family:"Cinzel", Sans-serif;font-size:40px;font-weight:700;line-height:40px;color:#FFFFFF;}.elementor-3619 .elementor-element.elementor-element-b5883be{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:10px;--padding-right:10px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-3619 .elementor-element.elementor-element-b5883be{--content-width:1250px;}}@media(max-width:1024px){.elementor-3619 .elementor-element.elementor-element-d921652{margin:50px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}@media(max-width:767px){.elementor-3619 .elementor-element.elementor-element-50c04b1{--min-height:250px;--justify-content:flex-end;--padding-top:0px;--padding-bottom:70px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for shortcode, class: .elementor-element-6f92283 *//* ============================================================
   AETHERIA TOURISM — WP TRAVEL CART PAGE
   v2: 1250px width + proper responsive card stacking
   ============================================================ */

.ws-theme-cart-page {
  --ae-dark: #211a15;
  --ae-dark-soft: #2b2418;
  --ae-gold: #b99a54;
  --ae-gold-dark: #9d7d3f;
  --ae-gold-soft: #f7f1e3;
  --ae-cream: #fbf8f0;
  --ae-card: #fffaf2;
  --ae-border: rgba(185, 154, 84, 0.32);
  --ae-border-soft: rgba(43, 36, 24, 0.08);
  --ae-text: #090909;
  --ae-muted: #77716a;

  font-family: var(--itinerary-body-font, "Spartan", sans-serif) !important;
  background: #ffffff !important;
  color: var(--ae-text) !important;
}

/* ── FORM WRAPPER ── */
.ws-theme-cart-page form {
  max-width: 1250px !important;
  margin: 0 auto !important;
}

/* ── BOTH TABLES ── */
.ws-theme-cart-page .ws-theme-cart-list {
  width: 100% !important;
  border: 1px solid var(--ae-border) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: #ffffff !important;
  overflow: hidden !important;
}

.ws-theme-cart-page > form > .ws-theme-cart-list:first-of-type {
  border-radius: 10px 10px 0 0 !important;
}

/* ── THEAD ── */
.ws-theme-cart-page .ws-theme-cart-list thead th {
  background: var(--ae-dark) !important;
  color: var(--ae-gold) !important;
  border: 0 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  padding: 18px 16px !important;
}

.ws-theme-cart-page .ws-theme-cart-list thead th:first-child {
  border-radius: 10px 0 0 0 !important;
}

.ws-theme-cart-page .ws-theme-cart-list thead th:last-child {
  border-radius: 0 10px 0 0 !important;
}

/* ── CART ROW ── */
.ws-theme-cart-page .ws-theme-cart-list tbody tr.responsive-cart {
  background: #ffffff !important;
  border-bottom: 1px solid var(--ae-border-soft) !important;
}

.ws-theme-cart-page .ws-theme-cart-list td {
  padding: 28px 18px !important;
  vertical-align: middle !important;
  border-color: var(--ae-border-soft) !important;
}

/* ── REMOVE ── */
.ws-theme-cart-page .product-remove {
  width: 56px !important;
  text-align: center !important;
}

.ws-theme-cart-page .product-remove a {
  width: 28px !important;
  height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(185, 154, 84, 0.25) !important;
  border-radius: 50% !important;
  color: var(--ae-gold-dark) !important;
  background: #ffffff !important;
  font-size: 17px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.ws-theme-cart-page .product-remove a:hover {
  color: #ffffff !important;
  background: var(--ae-gold-dark) !important;
  border-color: var(--ae-gold-dark) !important;
}

/* ── THUMBNAIL ── */
.ws-theme-cart-page .product-thumbnail {
  width: 96px !important;
}

.ws-theme-cart-page .product-thumbnail img {
  width: 72px !important;
  height: 58px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  border: 1px solid rgba(185, 154, 84, 0.26) !important;
  display: block !important;
}

/* ── PRODUCT NAME ── */
.ws-theme-cart-page .product-name {
  min-width: 340px !important;
}

.ws-theme-cart-page .product-name h4 {
  margin: 0 0 12px !important;
  line-height: 1.45 !important;
}

.ws-theme-cart-page .product-name h4 a {
  color: var(--ae-text) !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  letter-spacing: 0.01em !important;
}

.ws-theme-cart-page .product-name h4 a:hover {
  color: var(--ae-gold-dark) !important;
}

.ws-theme-cart-page .variation {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: var(--ae-muted) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

.ws-theme-cart-page .variation strong {
  color: var(--ae-text) !important;
  font-weight: 800 !important;
}

/* ── PAX COLUMN ── */
.ws-theme-cart-page .product-price {
  width: 360px !important;
  padding-right: 28px !important;
}

.ws-theme-cart-page .product-price ul {
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ws-theme-cart-page .product-price li.person-count {
  background: var(--ae-card) !important;
  border: 1px solid rgba(185, 154, 84, 0.30) !important;
  border-radius: 8px !important;
  padding: 16px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px 10px !important;
  color: var(--ae-text) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

.ws-theme-cart-page .product-price .category-type {
  width: 100% !important;
  display: block !important;
  color: var(--ae-text) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  margin-bottom: 8px !important;
}

.ws-theme-cart-page .product-price .wp-travel-pax {
  width: 74px !important;
  height: 42px !important;
  border: 1px solid rgba(43, 36, 24, 0.16) !important;
  border-radius: 5px !important;
  background: #ffffff !important;
  color: var(--ae-text) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  text-align: center !important;
  padding: 0 8px !important;
  outline: none !important;
}

.ws-theme-cart-page .product-price .wp-travel-pax:focus {
  border-color: var(--ae-gold) !important;
  box-shadow: 0 0 0 3px rgba(185, 154, 84, 0.14) !important;
}

.ws-theme-cart-page .product-price li.person-count .wp-travel-trip-currency {
  color: var(--ae-muted) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

.ws-theme-cart-page .product-price li.person-count .wp-travel-trip-price-figure {
  color: var(--ae-gold-dark) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
}

/* ── SUBTOTAL ── */
.ws-theme-cart-page .product-subtotal {
  width: 130px !important;
  padding-left: 20px !important;
  text-align: right !important;
}

.ws-theme-cart-page .product-subtotal .item_cart p {
  margin: 0 !important;
}

.ws-theme-cart-page .product-subtotal .wp-travel-trip-currency {
  color: var(--ae-muted) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.ws-theme-cart-page .product-subtotal .wp-travel-trip-price-figure {
  color: var(--ae-gold-dark) !important;
  font-size: 22px !important;
  font-weight: 900 !important;
}

/* ── CHILD ROW ── */
.ws-theme-cart-page tr.child_products td {
  padding: 0 !important;
  border: 0 !important;
}

/* ── TOTAL TABLE ── */
.ws-theme-cart-page .table-total-info {
  margin-top: 18px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid var(--ae-border) !important;
}

.ws-theme-cart-page .table-total-info th {
  background: var(--ae-dark) !important;
  color: var(--ae-gold) !important;
  padding: 28px 30px !important;
  border: 0 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.10em !important;
}

.ws-theme-cart-page .table-total-info .total {
  float: right !important;
  margin: 0 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.ws-theme-cart-page .wp-travel-total .wp-travel-trip-currency {
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

.ws-theme-cart-page .wp-travel-total .wp-travel-trip-price-figure {
  color: var(--ae-gold) !important;
  font-size: 26px !important;
  font-weight: 900 !important;
}

.ws-theme-cart-page .table-total-info td {
  background: #ffffff !important;
  padding: 28px 30px !important;
  border: 0 !important;
  vertical-align: middle !important;
}

/* ── COUPON ── */
.ws-theme-cart-page .coupon {
  display: flex !important;
  align-items: stretch !important;
  gap: 12px !important;
}

.ws-theme-cart-page #coupon_code {
  height: 52px !important;
  min-width: 300px !important;
  border: 1px solid var(--ae-border) !important;
  border-radius: 7px !important;
  background: var(--ae-cream) !important;
  color: var(--ae-text) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  padding: 0 18px !important;
  outline: none !important;
  box-sizing: border-box !important;
}

.ws-theme-cart-page #coupon_code::placeholder {
  color: rgba(43, 36, 24, 0.45) !important;
}

.ws-theme-cart-page #coupon_code:focus {
  border-color: var(--ae-gold) !important;
  box-shadow: 0 0 0 3px rgba(185, 154, 84, 0.14) !important;
}

.ws-theme-cart-page .wp-travel-apply-coupon-btn {
  height: 52px !important;
  background: #ffffff !important;
  color: var(--ae-gold-dark) !important;
  border: 1px solid var(--ae-border) !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-transform: capitalize !important;
  padding: 0 24px !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}

.ws-theme-cart-page .wp-travel-apply-coupon-btn:hover {
  background: var(--ae-gold-soft) !important;
  color: var(--ae-dark) !important;
}

/* ── ACTIONS ── */
.ws-theme-cart-page .actions {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 16px !important;
}

.ws-theme-cart-page .wp-travel-update-cart-btn {
  height: 52px !important;
  min-width: 140px !important;
  background: #ffffff !important;
  color: rgba(43, 36, 24, 0.35) !important;
  border: 1px solid rgba(43, 36, 24, 0.12) !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-transform: capitalize !important;
  padding: 0 24px !important;
  cursor: not-allowed !important;
}

.ws-theme-cart-page .book-now-btn {
  height: 52px !important;
  min-width: 220px !important;
  background: var(--ae-gold) !important;
  color: var(--ae-dark) !important;
  border: 1px solid var(--ae-gold) !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  padding: 0 32px !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
}

.ws-theme-cart-page .book-now-btn:hover {
  background: var(--ae-gold-dark) !important;
  border-color: var(--ae-gold-dark) !important;
  color: #ffffff !important;
}

/* Reset plugin colors */
.ws-theme-cart-page a,
.ws-theme-cart-page input[type="submit"],
.ws-theme-cart-page button {
  box-shadow: none !important;
}

/* ============================================================
   RESPONSIVE — proper card stacking, no horizontal scroll
   ============================================================ */

@media (max-width: 900px) {

  /* Convert main cart table to block cards */
  .ws-theme-cart-page .ws-theme-cart-list,
  .ws-theme-cart-page .ws-theme-cart-list thead,
  .ws-theme-cart-page .ws-theme-cart-list tbody,
  .ws-theme-cart-page .ws-theme-cart-list tr,
  .ws-theme-cart-page .ws-theme-cart-list td,
  .ws-theme-cart-page .ws-theme-cart-list th {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Hide desktop thead */
  .ws-theme-cart-page .ws-theme-cart-list thead {
    display: none !important;
  }

  /* Each cart row becomes a card */
  .ws-theme-cart-page .ws-theme-cart-list tbody tr.responsive-cart {
    border: 1px solid var(--ae-border) !important;
    border-radius: 10px !important;
    margin-bottom: 16px !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  /* Remove cell */
  .ws-theme-cart-page .product-remove {
    width: 100% !important;
    text-align: right !important;
    padding: 12px 16px 0 !important;
    background: var(--ae-cream) !important;
    border-bottom: 1px solid var(--ae-border) !important;
  }

  /* Thumbnail + Name: side by side */
  .ws-theme-cart-page .product-thumbnail,
  .ws-theme-cart-page .product-name {
    display: inline-block !important;
    vertical-align: middle !important;
    width: auto !important;
    min-width: unset !important;
    padding: 16px 12px !important;
  }

  .ws-theme-cart-page .product-thumbnail {
    width: 80px !important;
    padding-right: 0 !important;
  }

  .ws-theme-cart-page .product-thumbnail img {
    width: 64px !important;
    height: 52px !important;
  }

  .ws-theme-cart-page .product-name {
    width: calc(100% - 96px) !important;
    padding-left: 12px !important;
  }

  .ws-theme-cart-page .product-name h4 a {
    font-size: 14px !important;
  }

  /* Wrap thumbnail + name row */
  .ws-theme-cart-page .product-thumbnail,
  .ws-theme-cart-page .product-name {
    background: #ffffff !important;
  }

  /* Pax section full width */
  .ws-theme-cart-page .product-price {
    width: 100% !important;
    padding: 16px !important;
    background: var(--ae-cream) !important;
    border-top: 1px solid var(--ae-border) !important;
  }

  .ws-theme-cart-page .product-price li.person-count {
    min-width: unset !important;
    width: 100% !important;
  }

  /* Subtotal full width */
  .ws-theme-cart-page .product-subtotal {
    width: 100% !important;
    text-align: right !important;
    padding: 14px 16px !important;
    background: var(--ae-dark) !important;
    border-top: 1px solid var(--ae-border) !important;
  }

  .ws-theme-cart-page .product-subtotal .wp-travel-trip-currency {
    color: rgba(255,255,255,0.6) !important;
  }

  .ws-theme-cart-page .product-subtotal .wp-travel-trip-price-figure {
    color: var(--ae-gold) !important;
  }

  /* Child row */
  .ws-theme-cart-page tr.child_products {
    display: none !important;
  }

  /* Total table */
  .ws-theme-cart-page .table-total-info,
  .ws-theme-cart-page .table-total-info tbody,
  .ws-theme-cart-page .table-total-info tr,
  .ws-theme-cart-page .table-total-info td,
  .ws-theme-cart-page .table-total-info th {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  .ws-theme-cart-page .table-total-info th {
    padding: 20px 20px !important;
  }

  .ws-theme-cart-page .table-total-info .total {
    float: none !important;
    display: block !important;
    margin-top: 6px !important;
  }

  .ws-theme-cart-page .table-total-info td {
    padding: 20px 20px !important;
  }

  /* Coupon stacked */
  .ws-theme-cart-page .coupon {
    flex-direction: column !important;
    gap: 10px !important;
  }

  .ws-theme-cart-page #coupon_code {
    min-width: 100% !important;
    width: 100% !important;
  }

  .ws-theme-cart-page .wp-travel-apply-coupon-btn {
    width: 100% !important;
  }

  /* Actions stacked */
  .ws-theme-cart-page .actions {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    margin-top: 16px !important;
  }

  .ws-theme-cart-page .book-now-btn,
  .ws-theme-cart-page .wp-travel-update-cart-btn {
    width: 100% !important;
    min-width: 100% !important;
    text-align: center !important;
  }

}

/* Fix total strip colors */

.ws-theme-cart-page .table-total-info th {
  background: #211a15 !important;
  color: #b99a54 !important;
}

.ws-theme-cart-page .table-total-info th strong {
  color: #b99a54 !important;
}

.ws-theme-cart-page .table-total-info .total,
.ws-theme-cart-page .table-total-info .total strong,
.ws-theme-cart-page .table-total-info .wp-travel-total {
  color: #ffffff !important;
}

.ws-theme-cart-page .table-total-info .wp-travel-total .wp-travel-trip-currency {
  color: #ffffff !important;
  font-weight: 800 !important;
}

.ws-theme-cart-page .table-total-info .wp-travel-total .wp-travel-trip-price-figure {
  color: #b99a54 !important;
  font-size: 28px !important;
  font-weight: 900 !important;
}



/* Final fix: total row full width + correct alignment */

.ws-theme-cart-page .table-total-info {
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

/* Keep colspan working */
.ws-theme-cart-page .table-total-info tr:first-child th {
  display: table-cell !important;
  width: 100% !important;
  position: relative !important;
  background: #211a15 !important;
  color: #b99a54 !important;
  padding: 34px 40px !important;
  height: 92px !important;
  vertical-align: middle !important;
  text-align: left !important;
  border: 0 !important;
}

/* TOTAL label */
.ws-theme-cart-page .table-total-info tr:first-child th > strong {
  color: #b99a54 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.10em !important;
  margin: 0 !important;
}

/* Amount on right */
.ws-theme-cart-page .table-total-info tr:first-child th .total {
  float: none !important;
  position: absolute !important;
  right: 40px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
  display: flex !important;
  align-items: baseline !important;
  justify-content: flex-end !important;
  text-align: right !important;
}

/* AED 200 styling */
.ws-theme-cart-page .table-total-info tr:first-child th .wp-travel-total {
  display: flex !important;
  align-items: baseline !important;
  gap: 8px !important;
}

.ws-theme-cart-page .table-total-info tr:first-child th .wp-travel-trip-currency {
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 900 !important;
}

.ws-theme-cart-page .table-total-info tr:first-child th .wp-travel-trip-price-figure {
  color: #b99a54 !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

/* Mobile */
@media (max-width: 767px) {
  .ws-theme-cart-page .table-total-info tr:first-child th {
    display: block !important;
    height: auto !important;
    padding: 24px 20px !important;
  }

  .ws-theme-cart-page .table-total-info tr:first-child th .total {
    position: static !important;
    transform: none !important;
    margin-top: 14px !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b5883be */.ws-theme-cart-page {
    border: none;
}/* End custom CSS */