.elementor-8 .elementor-element.elementor-element-7a45b64{--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;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-8 .elementor-element.elementor-element-7a45b64:not(.elementor-motion-effects-element-type-background), .elementor-8 .elementor-element.elementor-element-7a45b64 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F7F7;}.elementor-8 .elementor-element.elementor-element-72a9624{--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;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-8 .elementor-element.elementor-element-4c8ac96{--update-cart-automatically-display:none;--sections-border-radius:20px 20px 20px 20px;--sections-title-color:#000000;--links-normal-color:#4E4E4E;--order-summary-color:#000000;--order-summary-variations-color:var( --e-global-color-primary );--product-link-normal-color:#000000;--product-link-hover-color:#000000;--order-summary-items-divider-color:#D5D5D5;--order-summary-items-divider-weight:1px;--order-summary-quantity-border-color:#DADADA;--order-summary-quantity-border-weight:1px;--order-summary-remove-icon-normal-color:#FF0000;--checkout-button-padding:10px 10px 10px 10px;--checkout-button-width:fit-content;}.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce .wc-proceed-to-checkout .checkout-button{background-color:var( --e-global-color-primary );}.elementor-8 .elementor-element.elementor-element-4c8ac96 .cart_totals h2{font-family:"Poppins", Sans-serif;font-weight:700;}.elementor-8 .elementor-element.elementor-element-4c8ac96 {--sections-descriptions-color:#000000;}.elementor-8 .elementor-element.elementor-element-4c8ac96 .e-cart-content, .elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-shipping-destination, .elementor-8 .elementor-element.elementor-element-4c8ac96 .shipping-calculator-button{font-family:"Poppins", Sans-serif;font-weight:500;}.elementor-8 .elementor-element.elementor-element-4c8ac96 #shipping_method li label{font-family:"Poppins", Sans-serif;}.elementor-8 .elementor-element.elementor-element-4c8ac96 .coupon .input-text, .elementor-8 .elementor-element.elementor-element-4c8ac96 .cart-collaterals .input-text, .elementor-8 .elementor-element.elementor-element-4c8ac96 select, .elementor-8 .elementor-element.elementor-element-4c8ac96 .select2-selection--single{font-family:"Poppins", Sans-serif;}.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-cart-form{--order-summary-title-color:#000000;}.elementor-8 .elementor-element.elementor-element-4c8ac96 .e-shop-table .cart th, .elementor-8 .elementor-element.elementor-element-4c8ac96 .e-shop-table .cart td:before{font-family:"Poppins", Sans-serif;font-weight:600;}.elementor-8 .elementor-element.elementor-element-4c8ac96 .cart td span, .elementor-8 .elementor-element.elementor-element-4c8ac96 .cart td, .elementor-8 .elementor-element.elementor-element-4c8ac96 .input-text.qty{font-family:"Poppins", Sans-serif;}.elementor-8 .elementor-element.elementor-element-4c8ac96 .cart_totals .shop_table td:before, .elementor-8 .elementor-element.elementor-element-4c8ac96 .cart_totals .shop_table td .woocommerce-Price-amount{font-family:"Poppins", Sans-serif;}.elementor-8 .elementor-element.elementor-element-4c8ac96 .checkout-button{text-transform:uppercase;}/* Start custom CSS for woocommerce-cart, class: .elementor-element-4c8ac96 *//* =========================================================
   ESTILOS PREMIUM PARA CARRITO - iperuano.com
   ========================================================= */

/* --- 1. ESTILOS GLOBALES Y CAJAS (Tarjetas) --- */
/* Cajas blancas para la tabla de productos y los totales */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .e-cart__column-start .e-shop-table,
.elementor-8 .elementor-element.elementor-element-4c8ac96 .e-cart__column-end .cart-collaterals {
    background-color: #ffffff;
    border: none !important;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05); /* Sombra elegante */
    padding: 30px;
    margin-bottom: 25px;
    font-family: 'Poppins', sans-serif;
}

/* --- 2. TÍTULOS Y CABECERAS --- */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .cart_totals h2 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    margin-bottom: 20px !important;
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 12px;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table thead th {
    font-weight: 600 !important;
    color: #888 !important;
    text-transform: uppercase;
    font-size: 12px !important;
    letter-spacing: 0.5px;
    border-bottom: 2px solid #f0f0f0 !important;
    padding-bottom: 15px !important;
    border-top: none !important;
}

/* --- 3. TABLA DE PRODUCTOS --- */

/* OCULTAR COLUMNAS DE CANTIDAD Y SUBTOTAL (Escritorio y Móvil) */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart th.product-quantity,
.elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-quantity,
.elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart th.product-subtotal,
.elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-subtotal {
    display: none !important;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table td {
    border-bottom: 1px solid #f0f0f0 !important;
    padding: 20px 10px !important;
    vertical-align: middle !important;
    border-top: none !important;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table tbody tr:last-child td {
    border-bottom: none !important;
}

/* Imagen del tour */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .product-thumbnail img {
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    width: 70px !important;
    height: auto;
}

/* Nombre del tour */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .product-name a {
    font-weight: 600 !important;
    color: #333333 !important;
    font-size: 15px !important;
    text-decoration: none !important;
    transition: color 0.2s ease;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 .product-name a:hover {
    color: #FF818D !important;
}

/* Detalles (Fecha, Horario, Personas) */
.elementor-8 .elementor-element.elementor-element-4c8ac96 dl.variation {
    font-size: 12px;
    color: #777;
    margin-top: 8px;
    background: #f9f9f9;
    padding: 10px;
    border-radius: 6px;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 dl.variation p {
    margin: 0 !important;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 dl.variation dt {
    font-weight: 600;
    color: #444;
    float: left;
    clear: left;
    margin-right: 5px;
}

/* --- 4. BOTÓN ELIMINAR (La crucecita 'x') --- */
.elementor-8 .elementor-element.elementor-element-4c8ac96 a.remove {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    background-color: #fff2f3 !important; /* Fondo rosado muy claro */
    color: #FF818D !important; /* X en color rosa fuerte */
    font-size: 18px !important;
    font-weight: bold !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    margin: 0 auto;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 a.remove:hover {
    background-color: #FF818D !important;
    color: #ffffff !important;
    transform: scale(1.1);
}

/* --- 5. TOTALES DEL CARRITO (Columna derecha) --- */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .cart_totals .shop_table th {
    font-weight: 600 !important;
    color: #4a4a4a !important;
    padding: 15px 0 !important;
    border-bottom: 1px solid #f0f0f0 !important;
    text-align: left !important;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 .cart_totals .shop_table td {
    padding: 15px 0 !important;
    border-bottom: 1px solid #f0f0f0 !important;
    text-align: right !important;
}

/* Fila del Total final */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .cart_totals .order-total th, 
.elementor-8 .elementor-element.elementor-element-4c8ac96 .cart_totals .order-total td {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #2b2b2b !important;
    padding-top: 20px !important;
    border: none !important;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 .cart_totals .order-total .amount {
    color: #FF818D !important;
    font-size: 22px !important;
}

/* --- 6. BOTÓN "PROCEDER AL PAGO" --- */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .checkout-button {
    background-color: #FF818D !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    padding: 18px 20px !important;
    border-radius: 8px !important;
    width: 100% !important;
    border: none !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease !important;
    margin-top: 25px !important;
    box-shadow: 0 4px 15px rgba(255, 129, 141, 0.3);
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 .checkout-button:hover {
    background-color: #e56d79 !important; /* Un poco más oscuro */
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 129, 141, 0.4);
}


/* =========================================================
   ESTILOS PREMIUM PARA AVISOS DE WOOCOMMERCE
   ========================================================= */

/* 1. Contenedor de las alertas (Eliminado, Añadido, etc.) */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-message, 
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-info, 
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-error {
    background-color: #ffffff !important;
    border: none !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
    padding: 20px 25px !important;
    font-family: 'Poppins', sans-serif !important;
    color: #4a4a4a !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 25px !important;
    border-left: 4px solid #FF818D !important; /* Línea lateral rosa elegante */
}

/* Ocultar el ícono estándar de WooCommerce si tu tema lo carga */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-message::before, 
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-info::before, 
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-error::before {
    display: none !important;
}

/* 2. Diseño del mensaje "Tu carrito está vacío" */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .cart-empty.woocommerce-info {
    justify-content: center !important;
    text-align: center !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    border-left: none !important; /* Le quitamos la línea lateral para que sea simétrico */
    padding: 40px 20px !important;
}

/* 3. Enlaces de acción dentro del mensaje (El "¿Deshacer?") */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-message a.restore-item,
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-message a.button {
    background-color: transparent !important;
    color: #FF818D !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 6px 16px !important;
    border: 1px solid #FF818D !important;
    border-radius: 6px !important;
    transition: all 0.3s ease !important;
    display: inline-block;
    margin-left: 20px;
    white-space: nowrap; /* Evita que el botón se rompa en dos líneas */
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-message a.restore-item:hover,
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-message a.button:hover {
    background-color: #FF818D !important;
    color: #ffffff !important;
}

/* 4. Botón gigante de "Volver a la tienda" cuando está vacío */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .return-to-shop {
    text-align: center;
    margin-top: 20px;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 .return-to-shop .button.wc-backward {
    background-color: #FF818D !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    padding: 16px 32px !important;
    border-radius: 8px !important;
    border: none !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 15px rgba(255, 129, 141, 0.3) !important;
    display: inline-block !important;
    font-family: 'Poppins', sans-serif !important;
}

.elementor-8 .elementor-element.elementor-element-4c8ac96 .return-to-shop .button.wc-backward:hover {
    background-color: #e56d79 !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 129, 141, 0.4) !important;
}

/* 5. Responsividad para móviles (Avisos de Woo) */
@media (max-width: 768px) {
    /* Convierte la caja en una columna con el texto arriba */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-message, 
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-info, 
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-error {
        flex-direction: column !important;
        align-items: flex-start !important;
        text-align: left !important;
        gap: 15px !important;
        padding: 20px 15px !important;
    }

    /* Fuerza el botón ("Seguir comprando" o "Deshacer") hacia abajo y al 100% del ancho */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-message a.restore-item,
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-message a.button,
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-info a.button,
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-error a.button {
        margin-left: 0 !important;
        width: 100% !important;
        text-align: center !important;
        display: block !important;
        padding: 12px 0 !important; /* Un poco más alto para facilitar el toque en móvil */
    }
}

/* =========================================================
   REPOSICIONAR AVISOS DE WOO AL FINAL DEL CARRITO
   ========================================================= */

/* 1. Convertimos el contenedor principal de Woo en un Flexbox en columna */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce {
    display: flex !important;
    flex-direction: column !important;
}

/* 2. Le decimos al carrito (Tabla + Totales) que vaya primero (arriba) */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .e-cart__container,
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-cart-form {
    order: 1 !important;
}

/* 3. Mandamos el contenedor de avisos al final (abajo) */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-notices-wrapper {
    order: 2 !important;
    width: 100% !important;
    margin-top: 10px !important; /* Espacio de separación con el carrito */
}

/* Eliminamos el margen inferior del aviso para que no deje espacio en blanco extra abajo */
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-message, 
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-info, 
.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-error {
    margin-bottom: 0 !important; 
}

/* =========================================================
   OCULTAR AVISOS DUPLICADOS DE WOOCOMMERCE
   ========================================================= */

.elementor-8 .elementor-element.elementor-element-4c8ac96 .woocommerce-notices-wrapper ~ .woocommerce-notices-wrapper {
    display: none !important;
}


/* =========================================================
   REDISEÑO MÓVIL DE LA TABLA DE PRODUCTOS (Estilo Referencia)
   ========================================================= */
@media (max-width: 768px) {
    
    /* 1. Contenedor de cada producto */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart tbody tr.woocommerce-cart-form__cart-item {
        position: relative;
        display: block;
        padding: 15px 0 !important;
        border-bottom: 2px solid #f5f5f5 !important;
    }
    /* Clearfix para evitar que los elementos floten fuera de la caja */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart tbody tr.woocommerce-cart-form__cart-item::after {
        content: "";
        display: table;
        clear: both;
    }

    /* 2. Botón de Eliminar (X) arriba a la derecha */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-remove {
        position: absolute !important;
        top: 15px !important;
        right: 0 !important; /* Lo pega a la derecha */
        display: block !important;
        padding: 0 !important;
        border: none !important;
        width: auto !important;
    }
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-remove::before {
        display: none !important; /* Oculta la etiqueta "Eliminar:" */
    }
    /* Quitamos el fondo rosado redondo en móvil para dejar solo la "X" limpia como en tu foto */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-remove a.remove {
        background-color: transparent !important;
        color: #777 !important;
        font-size: 24px !important;
        font-weight: 300 !important;
        line-height: 1 !important;
        margin: 0 !important;
    }
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-remove a.remove:hover {
        color: #FF818D !important;
    }

    /* 3. Forzar a mostrar la imagen a la izquierda */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-thumbnail {
        display: block !important; /* WooCommerce lo oculta, nosotros lo forzamos a mostrar */
        float: left; /* Lo pegamos a la izquierda */
        width: 80px !important; /* Tamaño de la miniatura */
        padding: 0 !important;
        border: none !important;
        margin-right: 15px !important;
        text-align: left !important;
    }
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-thumbnail::before {
        display: none !important; 
    }
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-thumbnail img {
        width: 100% !important;
        border-radius: 8px;
    }

    /* 4. Nombre del Producto y detalles al centro/derecha */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-name {
        display: block !important;
        margin-left: 95px !important; /* Empuja el texto (80px imagen + 15px margen) */
        padding: 0 30px 15px 0 !important; /* Deja espacio a la derecha para no chocar con la X */
        text-align: left !important;
        border: none !important;
    }
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-name::before {
        display: none !important; /* Oculta la etiqueta "Producto:" */
    }
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-name a {
        font-size: 16px !important;
        line-height: 1.3 !important;
        display: block;
        margin-bottom: 10px;
    }
    
    /* Estilo limpio y ALINEADO para los metadatos (Duración, Personas, etc.) */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-name dl.variation {
        background: transparent !important;
        padding: 0 !important;
        margin: 0 !important;
        font-size: 13px !important;
        display: flex !important;
        flex-direction: column !important; /* Apila cada par en su propia línea */
        gap: 4px !important; /* Espacio sutil entre cada línea de detalle */
    }

    /* Convertimos cada línea (contenedor de dt/dd) en un bloque flexible */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-name dl.variation > * {
        display: flex !important;
        align-items: baseline !important;
    }

    /* Las etiquetas ("De:", "Duración:") */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-name dl.variation dt {
        font-weight: 700 !important;
        color: #333 !important;
        float: none !important;
        clear: none !important;
        margin: 0 5px 0 0 !important; /* Margen solo a la derecha */
        min-width: auto !important; /* Quitamos anchos forzados */
    }

    /* Los valores ("18 de abril...", "5 horas") */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-name dl.variation dd,
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-name dl.variation p {
        margin: 0 !important;
        color: #666 !important;
        float: none !important;
    }

    /* 5. Fila inferior (Solo Precio) */
    
    /* Formateamos solo el Precio */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-price {
        clear: both !important; 
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 12px 0 !important;
        border-bottom: none !important; /* Sin borde porque ya es el último elemento */
        border-top: none !important;
        text-align: right !important;
    }

    /* Formato de la etiqueta izquierda (PRECIO) */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-price::before {
        content: attr(data-title) !important; 
        font-weight: 700 !important;
        text-transform: uppercase !important;
        color: #333 !important;
        font-size: 13px !important;
        float: none !important;
    }

    /* Destacar el precio final con el color de tu marca (opcional si lo quieres gris o rojo) */
    .elementor-8 .elementor-element.elementor-element-4c8ac96 .shop_table.cart td.product-price .woocommerce-Price-amount {
        color: #FF818D !important;
        font-size: 16px !important;
        font-weight: 700 !important;
    }
}/* End custom CSS */