.elementor-40 .elementor-element.elementor-element-ab4e300{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.77;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-40 .elementor-element.elementor-element-ab4e300:not(.elementor-motion-effects-element-type-background), .elementor-40 .elementor-element.elementor-element-ab4e300 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );background-image:url("https://viajathai.com/wp-content/uploads/2024/12/IMG_8546-scaled.webp");background-position:bottom right;background-repeat:no-repeat;background-size:cover;}.elementor-40 .elementor-element.elementor-element-ab4e300::before, .elementor-40 .elementor-element.elementor-element-ab4e300 > .elementor-background-video-container::before, .elementor-40 .elementor-element.elementor-element-ab4e300 > .e-con-inner > .elementor-background-video-container::before, .elementor-40 .elementor-element.elementor-element-ab4e300 > .elementor-background-slideshow::before, .elementor-40 .elementor-element.elementor-element-ab4e300 > .e-con-inner > .elementor-background-slideshow::before, .elementor-40 .elementor-element.elementor-element-ab4e300 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#001d35;--background-overlay:'';}.elementor-40 .elementor-element.elementor-element-202192a{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-40 .elementor-element.elementor-element-fd3878e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-40 .elementor-element.elementor-element-fd3878e .elementor-heading-title{font-family:"Bricolage Grotesque", Sans-serif;font-size:37px;font-weight:500;color:var( --e-global-color-astglobalcolor5 );}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-40 .elementor-element.elementor-element-5c787ce{--divider-border-style:solid;--divider-color:var( --e-global-color-29d84bc );--divider-border-width:3.5px;margin:-18px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-40 .elementor-element.elementor-element-5c787ce .elementor-divider-separator{width:77px;margin:0 auto;margin-left:0;}.elementor-40 .elementor-element.elementor-element-5c787ce .elementor-divider{text-align:left;padding-block-start:5px;padding-block-end:5px;}.elementor-40 .elementor-element.elementor-element-8dd47c2{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:45px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-40 .elementor-element.elementor-element-ffebeec > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-40 .elementor-element.elementor-element-ab4e300{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-40 .elementor-element.elementor-element-202192a{--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-40 .elementor-element.elementor-element-5c787ce{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-40 .elementor-element.elementor-element-5c787ce .elementor-divider{text-align:left;}.elementor-40 .elementor-element.elementor-element-5c787ce .elementor-divider-separator{margin:0 auto;margin-left:0;}}@media(min-width:768px){.elementor-40 .elementor-element.elementor-element-ab4e300{--content-width:75%;}.elementor-40 .elementor-element.elementor-element-202192a{--content-width:100%;}.elementor-40 .elementor-element.elementor-element-8dd47c2{--content-width:75%;}}@media(min-width:1025px){.elementor-40 .elementor-element.elementor-element-ab4e300:not(.elementor-motion-effects-element-type-background), .elementor-40 .elementor-element.elementor-element-ab4e300 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}@media(max-width:767px){.elementor-40 .elementor-element.elementor-element-ab4e300{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:33px;--padding-bottom:22px;--padding-left:0px;--padding-right:0px;}.elementor-40 .elementor-element.elementor-element-202192a{--padding-top:40px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-40 .elementor-element.elementor-element-fd3878e{padding:0px 0px 0px 10px;}.elementor-40 .elementor-element.elementor-element-fd3878e .elementor-heading-title{font-size:33px;}.elementor-40 .elementor-element.elementor-element-5c787ce{margin:-12px 0px calc(var(--kit-widget-spacing, 0px) + 3px) 0px;padding:0px 0px 0px 10px;}.elementor-40 .elementor-element.elementor-element-5c787ce .elementor-divider{text-align:left;}.elementor-40 .elementor-element.elementor-element-5c787ce .elementor-divider-separator{margin:0 auto;margin-left:0;}.elementor-40 .elementor-element.elementor-element-8dd47c2{--padding-top:30px;--padding-bottom:40px;--padding-left:10px;--padding-right:8px;}}/* Start custom CSS *//* ==========================
--------Order review
===========================*/

#order_review_heading{
  background:#f8f9fb !important;
  border:1px solid #e9ecef;
  border-bottom:none !important;
  border-top-left-radius:5px;
  border-top-right-radius:5px;
  padding-top:44px !important;
  padding-bottom:20px !important;
box-shadow:0 6px 18px rgba(0,0,0,.13);
}
#order_review{
  background:#f8f9fb !important;
  border:1px solid #e9ecef;
  border-top:none;
  box-shadow:0 6px 18px rgba(0,0,0,.13);
  border-bottom-left-radius:5px;
  border-bottom-right-radius:5px;
}
/* Login link on top */
.woocommerce-form-login-toggle {
    margin-bottom: -22px !important;
}
/* Light grey divider between payment methods and the bottom section */
.woocommerce-checkout #payment .form-row.place-order,
.woocommerce #payment .place-order {
  border-top: 1px solid #e5e5e5;
  padding-top: 30px !important;   /* space below the line */
  margin-top: 20px;    /* space above the line */
}

/* STICKY Desktop only */
@media (min-width: 992px){
    .woocommerce-billing-fields
 {
    margin-top: 10px;
}
  /* Target the order summary panel */
  #order_review,
  .woocommerce-checkout .woocommerce-checkout-review-order {
    position: sticky;
    top: 110px;               
    align-self: flex-start;   
  }
}
/* WP admin bar */
@media (min-width: 992px){
  body.admin-bar #order_review,
  body.admin-bar .woocommerce-checkout .woocommerce-checkout-review-order {
    top: 142px;               
  }
}
/* Mobile: normal flow */
@media (max-width: 991.98px){
  #order_review,
  .woocommerce-checkout .woocommerce-checkout-review-order {
    position: static;
    max-height: none;
    overflow: visible;
  }
}





/* ========================
   PAYMENT METHODS 
=========================== */

#payment { margin-top:16px; padding-top:14px; }

/* Row per method; wrap so the box drops below */
.woocommerce-checkout #payment ul.payment_methods li{
  display:flex;
  align-items:center;                 /* radio + label centered */
  gap:10px;
  margin:0 0 .75rem;
  position:relative;
  flex-wrap:wrap;                      /* payment_box on new line */
}

.woocommerce-checkout #payment ul.payment_methods li>input[type="radio"]{
  margin:0; flex:0 0 auto;
}

/* Label + icons row */
.woocommerce-checkout #payment ul.payment_methods li>label{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  line-height:1.25;
  flex:1 1 auto;
  min-width:0;
  flex-wrap:nowrap;
  justify-content:flex-start;          /* we’ll push icons selectively */
}

/* --- ICONS (normalize, spacing) --- */
.woocommerce-checkout #payment ul.payment_methods li>label .wc-payment-method__icons{
  display:inline-flex;
  gap:6px;
  flex:0 0 auto;
}
.woocommerce-checkout #payment ul.payment_methods li>label img,
.woocommerce-checkout #payment ul.payment_methods li>label .wc-payment-method__icons img{
  height:22px;
  width:auto!important;
  display:inline-block;
  vertical-align:middle;
}
.woocommerce-checkout #payment ul.payment_methods li>label > img + img{ margin-left:6px; }

/* DESKTOP: push the *last* icon group to the right.
   Works whether it’s a wrapper or a single <img>. */
@media (min-width: 769px){
  .woocommerce-checkout #payment ul.payment_methods li>label
  > .wc-payment-method__icons:last-child{ margin-left:auto; }

  .woocommerce-checkout #payment ul.payment_methods li>label
  > img:last-child{ margin-left:auto; } /* when there’s no wrapper */
}

/* PAYMENT BOX – full width under the label */
.woocommerce-checkout #payment ul.payment_methods li .payment_box{
  flex:0 0 100%;
  width:100%;
  margin:10px 0 0;
  padding:14px !important;
}
.woocommerce-checkout #payment ul.payment_methods li .payment_box::before{ left:28px; }

/* MONEI (size only) */
img.monei-icons{ max-width:45px; }

/* MOBILE: keep icons close to label (no big gap) */
@media (max-width: 768px){
  .woocommerce-checkout #payment ul.payment_methods li>label{
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis; gap:6px;
  }
  /* cancel any desktop push-right */
  .woocommerce-checkout #payment ul.payment_methods li>label
  > .wc-payment-method__icons:last-child{ margin-left:6px !important; }

  .woocommerce-checkout #payment ul.payment_methods li>label
  > img:last-child{ margin-left:6px !important; }

  /* smaller icons to help single-line fit */
  .woocommerce-checkout #payment ul.payment_methods li>label img,
  .woocommerce-checkout #payment ul.payment_methods li>label .wc-payment-method__icons img{
    height:18px;
  }

  #payment{ margin-left:-15px; }
}

/* Woo checkout - payment method - save card */
.revolut-payment-method-save{ margin-top:10px !important; }
.revolut-payment-method-save label{
  font-size:15px !important; font-weight:500 !important; line-height:1.2 !important;
}







/* ===========================
------ Woo - Input fields
========================*/    
.form-row label {
font-weight: 600;
font-size: 17px !important;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
  border: 1px solid #d9d9d9;
  border-radius: 12px !important;
  padding: 12px 14px;
  background: #fff;
  line-height: 1.5 !important;
}
.woocommerce form .form-row select {
  border: 1px solid #d9d9d9;
  border-radius: 12px !important;
  background: #fff;
  height: 48px !important;
  padding: 0 40px 0 14px;
  line-height: normal;
  -webkit-appearance: none;
  appearance: none;
}
.select2-container .select2-selection--single {
  border: 1px solid #d9d9d9;
  border-radius: 12px !important;
  background: #fff;
  height: 48px !important;
  padding: 0 14px !important;
  display: flex;             
  align-items: center;
  box-sizing: border-box;
}
.select2-container--default .select2-selection__rendered {
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
}
.select2-container--default .select2-selection__arrow {
  height: 48px !important;
}


/* ===================
-------OTHERS
=======================" */

/* Woo - hide the title "billing details" */
#customer_details h3{ display:none; }

/* Woo checkout - privacy policy */
.woocommerce-privacy-policy-text{ font-size: 12px !important; margin-top:0 !important; }

/* Woo checkout - terms and conditions */
.woocommerce-terms-and-conditions-wrapper{ font-size: 14px; margin-bottom:20px; margin-top:15px; }
.woocommerce-terms-and-conditions-wrapper label{ line-height: 1 !important; }
.woocommerce-terms-and-conditions h1{ font-size: 23px !important; }
.woocommerce-terms-and-conditions h4{ font-size: 18px !important; }
/* Woo checkout - hide quantity */
#order_review td.product-name .product-quantity{ display:none; }

/* Woo checkout - "product" and "subtotal" labels hidden */
.woocommerce-page.woocommerce-checkout table.shop_table thead,
.woocommerce.woocommerce-checkout table.shop_table thead{ display: none; }

/* Woo checkout - replace "your order" for "tu reserva" */
#order_review_heading::after {
  content: "";
  display: block;
  width: 50px;
  height: 3px;
  background: #2BC7EB;
  margin-top: 9px;
}
#order_review_heading { color: transparent !important; }
#order_review_heading::before {
  content: "> Resumen de la reserva";
  color: #111;
  font-size: 21px;
  font-weight: 900;
}
/* Remove Woo's green border after validation */
.woocommerce-js form .form-row.woocommerce-validated input.input-text,
.woocommerce-js form .form-row.woocommerce-validated select,
.woocommerce-js form .form-row.woocommerce-validated .select2-selection {
  box-shadow: none !important;
  border-color: #d9d9d9 !important;
}

/* Woo checkout - hide "added to cart" notice */
.woocommerce-notices-wrapper{ display: none; }

/* Woo checkout - columns width */
@media (min-width: 922px) {
    .woocommerce.woocommerce-checkout form #customer_details.col2-set, .woocommerce-page.woocommerce-checkout form #customer_details.col2-set {
        width: 50%;
    }
    .woocommerce.woocommerce-checkout form #order_review, .woocommerce.woocommerce-checkout form #order_review_heading, .woocommerce-page.woocommerce-checkout form #order_review, .woocommerce-page.woocommerce-checkout form #order_review_heading {
        width: 45%;
    }
}/* End custom CSS */