/* Instituto Brasbol 4.1.17 — rediseño premium real de carrito + checkout */
body.woocommerce-cart.brasbol-virtual-ui,
body.woocommerce-checkout.brasbol-virtual-ui{
  --bb417-green:#0aa83a;
  --bb417-green2:#16c34a;
  --bb417-deep:#083b1d;
  --bb417-text:#173a26;
  --bb417-muted:#66786e;
  --bb417-line:#dce9e0;
  --bb417-soft:#f5faf6;
  --bb417-soft2:#edf7ef;
  --bb417-shadow:0 24px 70px rgba(8,59,29,.10);
  background:
    radial-gradient(circle at 8% 5%,rgba(32,184,74,.09),transparent 270px),
    radial-gradient(circle at 92% 12%,rgba(32,184,74,.08),transparent 240px),
    linear-gradient(180deg,#f7faf8 0,#fbfdfb 420px,#fff 100%)!important;
}
body.woocommerce-cart.brasbol-virtual-ui .site-content,
body.woocommerce-checkout.brasbol-virtual-ui .site-content,
body.woocommerce-cart.brasbol-virtual-ui #content,
body.woocommerce-checkout.brasbol-virtual-ui #content{background:transparent!important;padding:34px 14px 78px!important}
body.woocommerce-cart.brasbol-virtual-ui .woocommerce,
body.woocommerce-checkout.brasbol-virtual-ui .woocommerce,
body.woocommerce-cart.brasbol-virtual-ui .entry-content>.woocommerce,
body.woocommerce-checkout.brasbol-virtual-ui .entry-content>.woocommerce{width:min(1200px,100%)!important;max-width:1200px!important;margin-inline:auto!important}

/* HERO MÁS PARECIDO A LA MAQUETA */
body .brasbol-commerce-head-v417{
  position:relative!important;overflow:hidden!important;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)!important;
  padding:34px 36px 28px!important;border:1px solid #d9eadf!important;border-radius:30px!important;
  background:
    linear-gradient(115deg,rgba(255,255,255,.98) 0%,rgba(248,253,249,.98) 52%,rgba(231,248,236,.96) 100%)!important;
  box-shadow:var(--bb417-shadow)!important;
}
body .brasbol-commerce-head-v417:before{content:"";position:absolute;right:-80px;top:-90px;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle,rgba(22,195,74,.17),rgba(22,195,74,0) 70%);pointer-events:none}
body .brasbol-commerce-head-v417:after{content:"";position:absolute;right:155px;bottom:-90px;width:190px;height:190px;border-radius:50%;border:1px solid rgba(22,195,74,.12);pointer-events:none}
body .brasbol-commerce-head-v417 h1{font-size:clamp(38px,4.4vw,56px)!important;line-height:.98!important;margin:10px 0 10px!important;color:var(--bb417-deep)!important}
body .brasbol-commerce-head-v417 p{font-size:15px!important;line-height:1.55!important;color:#596e61!important}
body .bb417-hero-art{position:relative!important;z-index:2!important;min-width:280px!important;padding:18px!important;border-radius:22px!important;background:rgba(255,255,255,.86)!important;border:1px solid rgba(188,226,198,.95)!important;box-shadow:0 18px 42px rgba(8,59,29,.08)!important}
body .bb417-hero-art>i{width:66px!important;height:66px!important;border-radius:20px!important;background:linear-gradient(135deg,#e7f9eb,#c6f0d0)!important;color:#078f31!important}
body .bb417-hero-art svg{width:34px!important;height:34px!important}
body .bb417-hero-art b{font-size:16px!important}.bb417-hero-art small{font-size:11px!important}
body .bb417-steps{gap:0!important;margin-top:10px!important;position:relative!important}
body .bb417-steps:before{content:"";position:absolute;left:16.5%;right:16.5%;top:28px;height:2px;background:linear-gradient(90deg,#b9dec2,#64c978,#b9dec2);z-index:0}
body .bb417-steps b{position:relative!important;z-index:1!important;min-height:70px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:9px 16px!important;justify-content:center!important;text-align:left!important}
body .bb417-steps b>i{width:46px!important;height:46px!important;flex:0 0 46px!important;border:1px solid #d5e6da!important;background:#fff!important;box-shadow:0 8px 22px rgba(8,59,29,.06)!important;font-size:14px!important}
body .bb417-steps b.is-active{background:transparent!important;color:var(--bb417-deep)!important;box-shadow:none!important}
body .bb417-steps b.is-active>i{border-color:#0aa83a!important;background:linear-gradient(135deg,#07952f,#18c94a)!important;color:#fff!important;box-shadow:0 10px 25px rgba(10,168,58,.24)!important}
body .bb417-steps b>span{font-size:13px!important;color:#183b26!important}.bb417-steps b small{font-size:10px!important;color:#6f8176!important}.bb417-steps b.is-active small{color:#258746!important}

/* CUPÓN COMO BARRA PREMIUM */
body.woocommerce-checkout.brasbol-virtual-ui .woocommerce-form-coupon-toggle .woocommerce-info{min-height:60px!important;padding:15px 20px 15px 52px!important;border-radius:18px!important;border:1px solid #dbe9df!important;background:linear-gradient(180deg,#fff,#fbfdfb)!important;box-shadow:0 12px 30px rgba(8,59,29,.05)!important;position:relative!important}
body.woocommerce-checkout.brasbol-virtual-ui .woocommerce-form-coupon-toggle .woocommerce-info:before{content:"%"!important;display:grid!important;place-items:center!important;left:16px!important;top:50%!important;transform:translateY(-50%)!important;width:26px!important;height:26px!important;border-radius:8px!important;background:#e8f8ec!important;color:#088f31!important;font-weight:900!important}

/* CHECKOUT: DOS PANELES DE VERDAD */
body.woocommerce-checkout.brasbol-virtual-ui form.checkout{grid-template-columns:minmax(0,1.04fr) minmax(470px,.96fr)!important;gap:26px!important}
body.woocommerce-checkout.brasbol-virtual-ui .col2-set,
body.woocommerce-checkout.brasbol-virtual-ui #order_review{border:1px solid var(--bb417-line)!important;border-radius:26px!important;background:#fff!important;box-shadow:var(--bb417-shadow)!important;padding:28px!important}
body.woocommerce-checkout.brasbol-virtual-ui .col2-set{min-height:0!important}
body.woocommerce-checkout.brasbol-virtual-ui .woocommerce-billing-fields>h3{font-size:29px!important;margin-bottom:22px!important;padding-bottom:18px!important}
body.woocommerce-checkout.brasbol-virtual-ui .woocommerce-billing-fields>h3:before{width:44px!important;height:44px!important;border-radius:14px!important;font-size:16px!important}
body.woocommerce-checkout.brasbol-virtual-ui .form-row label{font-size:12px!important;color:#294c35!important}
body.woocommerce-checkout.brasbol-virtual-ui input.input-text,
body.woocommerce-checkout.brasbol-virtual-ui select,
body.woocommerce-checkout.brasbol-virtual-ui .select2-container .select2-selection--single{min-height:56px!important;border-radius:15px!important;background:#fff!important;border-color:#d4e3d8!important;box-shadow:0 2px 0 rgba(8,59,29,.02)!important}
body.woocommerce-checkout.brasbol-virtual-ui input.input-text:focus,
body.woocommerce-checkout.brasbol-virtual-ui select:focus{border-color:#5fca7a!important;box-shadow:0 0 0 4px rgba(10,168,58,.09)!important}
/* iconos en campos sin tocar HTML */
body.woocommerce-checkout.brasbol-virtual-ui #billing_first_name,
body.woocommerce-checkout.brasbol-virtual-ui #billing_last_name{padding-left:44px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23708376' stroke-width='1.7'%3E%3Ccircle cx='12' cy='8' r='3'/%3E%3Cpath d='M5 20a7 7 0 0 1 14 0'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:14px center!important;background-size:18px!important}
body.woocommerce-checkout.brasbol-virtual-ui #billing_email{padding-left:44px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23708376' stroke-width='1.7'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m4 7 8 6 8-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:14px center!important;background-size:18px!important}

/* RESUMEN */
body.woocommerce-checkout.brasbol-virtual-ui #order_review{top:104px!important}
body.woocommerce-checkout.brasbol-virtual-ui #order_review:before{content:'Resumen del pedido'!important;font-size:29px!important;padding-bottom:18px!important;margin-bottom:16px!important}
body .bb417-order-product{display:flex!important;align-items:center!important;gap:12px!important;text-align:left!important}.bb417-order-thumb{flex:0 0 58px!important}.bb417-order-thumb img{display:block!important;width:58px!important;height:58px!important;object-fit:cover!important;border-radius:13px!important;border:1px solid #dce8df!important;box-shadow:0 8px 18px rgba(8,59,29,.06)!important}.bb417-order-name{display:block!important;font-weight:900!important;color:#173a26!important}.bb417-order-name small{display:block!important;margin-top:4px!important;font-size:10px!important;font-weight:600!important;color:#748278!important}
body.woocommerce-checkout.brasbol-virtual-ui #order_review table.shop_table{border-radius:18px!important;margin-bottom:18px!important}
body.woocommerce-checkout.brasbol-virtual-ui #order_review table.shop_table th,body.woocommerce-checkout.brasbol-virtual-ui #order_review table.shop_table td{padding:14px!important}
body.woocommerce-checkout.brasbol-virtual-ui #order_review table.shop_table tfoot tr:last-child th,body.woocommerce-checkout.brasbol-virtual-ui #order_review table.shop_table tfoot tr:last-child td{font-size:27px!important;background:linear-gradient(90deg,#eef9f1,#e5f6e9)!important}

/* PAGOS MUCHO MÁS VISIBLES */
body.woocommerce-checkout.brasbol-virtual-ui #payment{padding:16px!important;border-radius:20px!important;background:#f7fbf8!important}
body.woocommerce-checkout.brasbol-virtual-ui #payment:before{content:'Método de pago';display:block;margin:0 0 13px;padding-left:28px;color:#153b25;font-size:15px;font-weight:900;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23088f31' stroke-width='1.8'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left center;background-size:19px}
body.woocommerce-checkout.brasbol-virtual-ui #payment ul.payment_methods>li{min-height:64px!important;padding:16px!important;border-radius:16px!important;display:block!important}
body.woocommerce-checkout.brasbol-virtual-ui #payment ul.payment_methods>li:has(input:checked){border-color:#22b64c!important;background:linear-gradient(180deg,#fff,#f4fcf6)!important;box-shadow:0 0 0 2px rgba(34,182,76,.08),0 12px 26px rgba(8,59,29,.05)!important}
body.woocommerce-checkout.brasbol-virtual-ui #payment .woocommerce-terms-and-conditions-wrapper{padding:14px 16px!important;border-radius:15px!important}
body.woocommerce-checkout.brasbol-virtual-ui #payment #place_order{min-height:62px!important;border-radius:16px!important;font-size:17px!important;background:linear-gradient(135deg,#078e2d,#13bd43)!important;box-shadow:0 18px 38px rgba(10,168,58,.22)!important}
body.woocommerce-checkout.brasbol-virtual-ui #payment #place_order:after{content:' →'!important}

/* TRUST COMO FRANJA DE ICONOS */
.bb416-trust.bb417-trust,.bb416-trust{border-radius:22px!important;padding:17px 20px!important;background:linear-gradient(180deg,#fff,#f8fbf9)!important;box-shadow:0 14px 34px rgba(8,59,29,.05)!important}.bb416-trust span{min-height:64px!important}.bb416-trust i{width:42px!important;height:42px!important}.bb416-trust svg{width:30px!important;height:30px!important}.bb416-trust b{font-size:12px!important}.bb416-trust small{font-size:10px!important}

/* CARRITO COMO 2 COLUMNAS REALES */
body.woocommerce-cart.brasbol-virtual-ui .entry-content>.woocommerce{display:grid!important;grid-template-columns:minmax(0,1fr) 390px!important;gap:26px!important;align-items:start!important}
body.woocommerce-cart.brasbol-virtual-ui .brasbol-commerce-head-v417{grid-column:1/-1!important}
body.woocommerce-cart.brasbol-virtual-ui form.woocommerce-cart-form{grid-column:1!important;margin:0!important}
body.woocommerce-cart.brasbol-virtual-ui .cart-collaterals{grid-column:2!important;display:block!important;margin:0!important}
body.woocommerce-cart.brasbol-virtual-ui table.shop_table.cart{border-radius:24px!important;box-shadow:var(--bb417-shadow)!important}
body.woocommerce-cart.brasbol-virtual-ui table.shop_table.cart thead th{padding:17px 14px!important;background:linear-gradient(135deg,#08441e,#087631)!important}
body.woocommerce-cart.brasbol-virtual-ui table.shop_table.cart tbody td{padding:20px 15px!important}
body.woocommerce-cart.brasbol-virtual-ui .product-thumbnail img{width:78px!important;height:78px!important;object-fit:cover!important}
body.woocommerce-cart.brasbol-virtual-ui .product-name a{font-size:17px!important}.woocommerce-cart.brasbol-virtual-ui .product-price,.woocommerce-cart.brasbol-virtual-ui .product-subtotal{font-size:15px!important;font-weight:900!important}
body.woocommerce-cart.brasbol-virtual-ui .actions{padding:16px!important;background:linear-gradient(180deg,#fbfdfb,#f7faf8)!important}.woocommerce-cart.brasbol-virtual-ui .coupon #coupon_code{height:50px!important;border-radius:13px!important}.woocommerce-cart.brasbol-virtual-ui .coupon .button{height:50px!important;border-radius:13px!important;background:#0d7d35!important;color:#fff!important}
body.woocommerce-cart.brasbol-virtual-ui .cart-collaterals .cart_totals{width:100%!important;max-width:none!important;margin:0!important;padding:26px!important;border-radius:24px!important;box-shadow:var(--bb417-shadow)!important;position:sticky!important;top:100px!important}
body.woocommerce-cart.brasbol-virtual-ui .cart-collaterals .cart_totals h2{font-size:28px!important}.woocommerce-cart.brasbol-virtual-ui .cart-collaterals .cart_totals table.shop_table tr:last-child th,.woocommerce-cart.brasbol-virtual-ui .cart-collaterals .cart_totals table.shop_table tr:last-child td{font-size:23px!important}
body.woocommerce-cart.brasbol-virtual-ui .wc-proceed-to-checkout a.checkout-button{min-height:62px!important;font-size:17px!important;border-radius:16px!important}

@media(max-width:1000px){body.woocommerce-cart.brasbol-virtual-ui .entry-content>.woocommerce{grid-template-columns:1fr!important}body.woocommerce-cart.brasbol-virtual-ui form.woocommerce-cart-form,body.woocommerce-cart.brasbol-virtual-ui .cart-collaterals{grid-column:1!important}.woocommerce-cart.brasbol-virtual-ui .cart-collaterals .cart_totals{position:static!important}body.woocommerce-checkout.brasbol-virtual-ui form.checkout{grid-template-columns:1fr!important}body.woocommerce-checkout.brasbol-virtual-ui #customer_details,body.woocommerce-checkout.brasbol-virtual-ui #order_review{grid-column:1!important;position:static!important}}
@media(max-width:760px){body .brasbol-commerce-head-v417{grid-template-columns:1fr!important;padding:22px 18px!important}.bb417-hero-art{justify-self:stretch!important;min-width:0!important}.bb417-steps{grid-template-columns:1fr!important}.bb417-steps:before{display:none!important}body .bb417-steps b{justify-content:flex-start!important;min-height:58px!important;border:1px solid #dce9e0!important;border-radius:16px!important;background:#fff!important}.bb416-trust{grid-template-columns:1fr 1fr!important}}
@media(max-width:640px){body.woocommerce-cart.brasbol-virtual-ui .site-content,body.woocommerce-checkout.brasbol-virtual-ui .site-content{padding-inline:7px!important}body .brasbol-commerce-head-v417 h1{font-size:34px!important}.bb416-trust{grid-template-columns:1fr!important}.woocommerce-checkout.brasbol-virtual-ui .col2-set,.woocommerce-checkout.brasbol-virtual-ui #order_review{padding:18px!important;border-radius:20px!important}}
