/* Travel Pass 32 — carrito y checkout */
.woocommerce-cart .tp-wc-page-main,
.woocommerce-checkout .tp-wc-page-main{background:linear-gradient(180deg,#f4f8ff 0,#fbfcff 44%,#fff 100%)}

.woocommerce-cart .tp-checkout-intro,
.woocommerce-checkout .tp-checkout-intro{position:relative;overflow:hidden;padding:clamp(25px,3.2vw,42px);border:0;border-radius:26px;background:linear-gradient(125deg,#0c2d62 0%,#174d91 54%,#6634d9 100%);box-shadow:0 20px 55px rgba(16,48,101,.18);color:#fff}
.woocommerce-cart .tp-checkout-intro:after,
.woocommerce-checkout .tp-checkout-intro:after{content:"";position:absolute;width:230px;height:230px;right:-65px;top:-95px;border:45px solid rgba(255,255,255,.08);border-radius:50%;pointer-events:none}
.woocommerce-cart .tp-checkout-intro .tp-kicker,
.woocommerce-checkout .tp-checkout-intro .tp-kicker{color:#8de7ff}
.woocommerce-cart .tp-checkout-intro h2,
.woocommerce-checkout .tp-checkout-intro h2{position:relative;z-index:1;margin:7px 0 8px;color:#fff;font-size:clamp(1.75rem,3vw,2.7rem);line-height:1.08}
.woocommerce-checkout .tp-checkout-intro>p{position:relative;z-index:1;max-width:680px;margin:0 0 22px;color:rgba(255,255,255,.82);font-size:.95rem;line-height:1.7}
.woocommerce-cart .tp-commerce-steps,
.woocommerce-checkout .tp-commerce-steps{position:relative;z-index:1;margin-top:20px}
.woocommerce-cart .tp-commerce-steps span,
.woocommerce-checkout .tp-commerce-steps span{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:rgba(255,255,255,.76);backdrop-filter:blur(8px)}
.woocommerce-cart .tp-commerce-steps .is-active,
.woocommerce-checkout .tp-commerce-steps .is-active{border-color:#fff;background:#fff;color:#35217d}

.woocommerce-checkout form.checkout #customer_details{padding:clamp(22px,3vw,36px)!important}
.woocommerce-checkout form.checkout #customer_details:before{content:"Datos del pago";display:block;margin-bottom:7px;color:#102e5c;font-size:clamp(1.45rem,2vw,2rem);font-weight:800;letter-spacing:-.035em}
.woocommerce-checkout form.checkout #customer_details:after{content:"Todos los campos son obligatorios.";display:block;clear:both;padding-top:14px;color:#7a8799;font-size:.75rem}
.woocommerce-checkout #customer_details h3{font-size:0!important;margin:0 0 22px!important}
.woocommerce-checkout #customer_details h3:after{content:"Ingresa los datos del apoderado y del alumno antes de continuar a la pasarela.";display:block;color:#68778c;font-size:.88rem;font-weight:500;line-height:1.65;letter-spacing:0}
.woocommerce-checkout form .tp-checkout-field{margin-bottom:16px!important}
.woocommerce-checkout form .tp-checkout-field label{margin-bottom:7px;color:#1c355d!important;font-size:.79rem!important}
.woocommerce-checkout form .tp-checkout-field label .required{color:#7140e4}
.woocommerce-checkout form .tp-checkout-field input.input-text{height:54px;padding:0 15px!important;border:1px solid #d8e1ee!important;border-radius:13px!important;background:#fafdff!important;color:#182b49;font-size:.92rem;box-shadow:none;transition:border-color .2s,box-shadow .2s,background .2s}
.woocommerce-checkout form .tp-checkout-field input.input-text:focus{border-color:#6840dc!important;background:#fff!important;box-shadow:0 0 0 4px rgba(104,64,220,.1)!important;outline:0}
.woocommerce-checkout form .tp-checkout-field input.input-text::placeholder{color:#9aa7b8}
.woocommerce-checkout form.checkout #order_review{border:0!important;border-radius:24px!important;background:linear-gradient(155deg,#102e61,#242773 60%,#6333d1)!important;color:#fff;box-shadow:0 20px 55px rgba(18,43,99,.2)!important}
.woocommerce-checkout #order_review table.shop_table{border-color:rgba(255,255,255,.14)!important;background:transparent!important;color:#fff}
.woocommerce-checkout #order_review table.shop_table th{background:rgba(255,255,255,.06);color:#bfefff}
.woocommerce-checkout #order_review table.shop_table td,
.woocommerce-checkout #order_review table.shop_table strong,
.woocommerce-checkout #order_review table.shop_table .amount{color:#fff}
.woocommerce-checkout #payment{border:1px solid rgba(255,255,255,.15)!important;background:rgba(255,255,255,.96)!important;color:#263a59}
.woocommerce-checkout #payment #place_order{min-height:58px!important;background:linear-gradient(135deg,#1678ec,#7434e2)!important;box-shadow:0 12px 25px rgba(70,53,197,.25)!important;font-size:.92rem!important}

.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals .cart_totals{border:0!important;box-shadow:0 18px 50px rgba(14,42,86,.09)!important}
.woocommerce-cart .cart-collaterals .cart_totals{padding:clamp(22px,3vw,34px)!important}

@media(max-width:780px){
  .woocommerce-cart .tp-checkout-intro,.woocommerce-checkout .tp-checkout-intro{border-radius:20px;padding:24px 19px}
  .woocommerce-cart .tp-commerce-steps,.woocommerce-checkout .tp-commerce-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
  .woocommerce-cart .tp-commerce-steps span,.woocommerce-checkout .tp-commerce-steps span{justify-content:center;padding:7px 5px;font-size:.54rem}
  .woocommerce-checkout form.checkout{gap:18px!important}
  .woocommerce-checkout form.checkout #customer_details,.woocommerce-checkout form.checkout #order_review{padding:20px 16px!important;border-radius:20px!important}
  .woocommerce-checkout form .form-row-first,.woocommerce-checkout form .form-row-last{float:none!important;width:100%!important}
  .woocommerce-checkout #customer_details h3:after{font-size:.82rem}
  .woocommerce-checkout form .tp-checkout-field input.input-text{height:52px;font-size:16px}
}
