/* Ficha de producto Bambini — estiliza el single-product de WooCommerce */

.woocommerce div.product{--t:#B0463E;--t7:#973830;--t50:#F4E2DC;--cr:#FBF6EE;--cr2:#F4EADB;--ink:#2C2622;--mut:#8A7E73;--bd:#EAE0D4;--sage:#9CB29A;max-width:1180px;margin:0 auto;padding:0 24px}

/* breadcrumb */
.woocommerce .woocommerce-breadcrumb{color:var(--mut);font-size:14px;padding:24px 0 18px;max-width:1180px;margin:0 auto}
.woocommerce .woocommerce-breadcrumb a{color:var(--mut);text-decoration:none}
.woocommerce .woocommerce-breadcrumb a:hover{color:var(--t)}

/* layout: galeria + summary con buen gap (grid robusto, no se rompe en tablet) */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,52fr) minmax(0,48fr);column-gap:48px;row-gap:0;align-items:start}
.woocommerce div.product .bp-gallery{width:100%;float:none;margin:0;grid-column:1}
.woocommerce div.product div.summary{width:100% !important;float:none !important;margin:0 !important;grid-column:2}
/* secciones de ancho completo debajo */
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .bp-bundle-sec,
.woocommerce div.product .related,
.woocommerce div.product .upsells{grid-column:1 / -1;width:100%;clear:both}

/* ===== Carrusel de galería propio ===== */
.bp-gallery{width:100%}
.bp-carousel{position:relative;border-radius:16px;overflow:hidden;background:var(--cr2);aspect-ratio:4/5}
.bp-track{display:flex;height:100%;transition:transform .35s cubic-bezier(.4,.8,.3,1);will-change:transform}
.bp-slide{min-width:100%;height:100%}
.bp-slide img{width:100%;height:100%;object-fit:cover;display:block}
.bp-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ink);box-shadow:0 6px 18px -6px rgba(44,38,34,.35);font-size:20px;z-index:3;transition:.15s}
.bp-arrow:hover{background:#fff;color:var(--t)}
.bp-arrow.prev{left:14px}.bp-arrow.next{right:14px}
.bp-dots{position:absolute;bottom:14px;left:0;right:0;display:flex;gap:7px;justify-content:center;z-index:3}
.bp-dots span{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.65);cursor:pointer;transition:.15s}
.bp-dots span.active{background:#fff;width:22px;border-radius:5px}
.bp-thumbs{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.bp-thumbs img{width:70px;height:88px;object-fit:cover;border-radius:10px;border:2px solid transparent;cursor:pointer;transition:.15s;background:var(--cr2)}
.bp-thumbs img.active{border-color:var(--t)}
.bp-thumbs img:hover{border-color:var(--t50)}

/* titulo + precio */
.woocommerce div.product .product_title{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:34px;letter-spacing:-.01em;margin:0 0 14px;line-height:1.1}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ink);font-family:'Fraunces',Georgia,serif;font-weight:700;font-size:28px;margin:0 0 8px}
.woocommerce div.product p.price del{color:var(--mut);font-weight:400;font-size:18px}
.woocommerce div.product p.price ins{text-decoration:none}
/* descripción corta con respiro */
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--mut);font-size:15px;margin:0 0 20px;line-height:1.6}

/* rating estrellas en terracota */
.woocommerce .star-rating span::before,.woocommerce div.product .woocommerce-product-rating .star-rating span::before{color:var(--t)}

/* cuotas */
.bp-cuotas{color:var(--mut);font-size:14px;display:flex;align-items:center;gap:7px;margin:0 0 8px}
.bp-cuotas i{color:var(--t);font-size:18px}

/* link guia de talles (boton que abre modal) */
.bp-sizeguide{display:inline-flex;align-items:center;gap:5px;color:var(--t);font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:13.5px;text-decoration:none;margin:0 0 22px;background:none;border:none;cursor:pointer;padding:0}
.bp-sizeguide:hover{color:var(--t7);text-decoration:underline}

/* modal guia de talles */
.bp-modal{position:fixed;inset:0;z-index:1000;display:none}
.bp-modal.open{display:block}
.bp-modal-overlay{position:absolute;inset:0;background:rgba(44,38,34,.5);animation:bpFade .2s ease}
.bp-modal-box{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--cr);border-radius:20px;width:min(920px,94vw);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 80px -20px rgba(44,38,34,.5);animation:bpPop .25s cubic-bezier(.4,.8,.3,1)}
.bp-modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--bd);background:#fff}
.bp-modal-head h3{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:19px;margin:0;display:flex;align-items:center;gap:9px}
.bp-modal-head h3 i{color:var(--t)}
.bp-modal-close{background:var(--cr2);border:none;width:38px;height:38px;border-radius:50%;cursor:pointer;font-size:20px;color:var(--ink);display:flex;align-items:center;justify-content:center;transition:.15s}
.bp-modal-close:hover{background:var(--t);color:#fff}
.bp-modal-body{padding:24px;overflow-y:auto}
.bp-modal-body .bsg-lead{font-size:16px}
@keyframes bpFade{from{opacity:0}to{opacity:1}}
@keyframes bpPop{from{opacity:0;transform:translate(-50%,-46%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@media(max-width:640px){.bp-modal-box{width:96vw;max-height:92vh}.bp-modal-body{padding:16px}}
/* La figura del calculador debe llenar su contenedor y pisar el suelo.
   Dentro de la ficha, reglas de WooCommerce sobre img/svg le ponen height:auto
   (más específicas) y la "despegan"; las neutralizamos solo en el modal. */
.bp-modal .bsg-kid img,.bp-modal .bsg-kid svg{height:100% !important;width:auto !important;max-width:none !important}
/* Medidas específicas de la prenda (extraídas de la descripción) */
.bp-sg-this-h{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:18px;margin:0 0 12px;display:flex;align-items:center;gap:8px;color:var(--ink)}
.bp-sg-this-h i{color:var(--t)}
.bp-sg-table{overflow-x:auto;border:1px solid var(--bd);border-radius:14px}
.bp-sg-table table{width:100%;border-collapse:collapse;background:#fff;font-size:14px;margin:0}
.bp-sg-table th,.bp-sg-table td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--bd)}
.bp-sg-table thead th{background:var(--cr2);font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.02em;color:var(--ink)}
.bp-sg-table tbody td{font-weight:400;color:var(--ink)}
.bp-sg-table tbody td:first-child{font-weight:700;color:var(--t)}
.bp-sg-table tbody td:not(:first-child){text-transform:lowercase}
.bp-sg-table tbody tr:last-child td{border-bottom:none}
.bp-sg-hint{color:var(--mut);font-size:13px;margin:10px 0 0}
.bp-sg-vary{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--bd);border-left:3px solid var(--butter,#F0C964);border-radius:12px;padding:14px 16px;font-size:14.5px;line-height:1.5}
.bp-sg-vary i{color:#E0A92E;font-size:20px;flex:none;margin-top:1px}
.bp-sg-vary a{color:var(--t);font-weight:700}
.bp-sg-general{margin-top:26px;border-top:1px solid var(--bd);padding-top:18px}
.bp-sg-general-h{text-align:center;margin:0 0 12px}
.bp-sg-general-h span{color:var(--mut);font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:14px}

/* CTA "Elegir este talle" dentro del modal de guía → autoselecciona la variante */
.bp-modal .bsg-res{flex-wrap:wrap}
.bp-usetalle{margin-left:auto;display:inline-flex;align-items:center;gap:6px;background:var(--t);color:#fff;border:none;border-radius:999px;font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:14px;padding:10px 18px;cursor:pointer;transition:.15s;white-space:nowrap}
.bp-usetalle:hover{background:var(--t7)}
.bp-usetalle i{font-size:16px}
.bp-usetalle-msg{display:block;width:100%;color:var(--mut);font-size:13px;margin-top:8px}
@media(max-width:640px){.bp-usetalle{margin-left:0;margin-top:6px}}

/* selectores de variaciones (color/talle) */
.woocommerce div.product form.cart .variations{border:none;margin:0 0 8px;width:100%}
.woocommerce div.product form.cart .variations tr{display:block;margin-bottom:18px}
.woocommerce div.product form.cart .variations td,.woocommerce div.product form.cart .variations th{display:block;padding:0;border:none;width:100%}
.woocommerce div.product form.cart .variations label{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:15px;margin:0 0 10px;display:block}
/* ocultar el valor seleccionado al lado del label (": Verde", ": 3-6m") */
.woocommerce div.product .variations .label .woo-selected-variation-item-name,
.woocommerce div.product .variations .variable-item-span ~ *,
.woocommerce div.product .variations td.label > span,
.woocommerce div.product .variations th.label span{display:none !important}
/* swatches del plugin como píldoras Bambini */
.woocommerce div.product .variations .variable-items-wrapper{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.woocommerce div.product .variations ul.variable-items-wrapper{padding:0;list-style:none}
.woocommerce div.product .variations .variable-item{margin:0 !important;box-shadow:none !important;border-radius:999px !important;border:1.5px solid var(--bd) !important;background:#fff !important;transition:.15s;overflow:visible}
.woocommerce div.product .variations .variable-item.button-variable-item{min-width:58px;height:auto;padding:11px 18px !important;width:auto !important}
.woocommerce div.product .variations .variable-item .variable-item-span{font-family:'Fraunces',Georgia,serif !important;font-weight:500;font-size:14.5px;color:var(--ink);line-height:1;width:auto !important;height:auto !important;padding:0 !important;margin:0 !important}
.woocommerce div.product .variations .variable-item:hover{border-color:var(--t) !important}
.woocommerce div.product .variations .variable-item:hover .variable-item-span{color:var(--t)}
.woocommerce div.product .variations .variable-item.selected{border-color:var(--t) !important;background:var(--t) !important;box-shadow:0 4px 12px -4px rgba(199,93,67,.5) !important}
.woocommerce div.product .variations .variable-item.selected .variable-item-span{color:#fff}
.woocommerce div.product .variations .variable-item.disabled{opacity:.35;text-decoration:line-through}
/* quitar el ::after/tooltip del plugin */
.woocommerce div.product .variations .variable-item::after,
.woocommerce div.product .variations .variable-item::before{display:none !important}
.woocommerce div.product .woocommerce-variation-add-to-cart{margin-top:8px}
.woocommerce div.product .reset_variations{font-size:13px;color:var(--mut);margin-left:4px;text-decoration:underline}
.woocommerce div.product .reset_variations:hover{color:var(--t)}

/* qty stepper redondeado con botones − / + */
.woocommerce div.product form.cart{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap;margin-top:18px}
.woocommerce div.product form.cart .quantity{display:inline-flex !important;align-items:center;justify-content:space-between;border:1.5px solid var(--bd);border-radius:999px;background:#fff;overflow:hidden;height:54px;width:150px;float:none;flex:none}
.woocommerce div.product form.cart .quantity input.qty{border:none !important;width:46px;flex:1;min-height:auto;height:52px;text-align:center;font-family:'Fraunces',Georgia,serif !important;font-weight:700;font-size:17px;color:#2C2622 !important;background:#fff !important;-moz-appearance:textfield;padding:0;margin:0;box-shadow:none;line-height:52px;order:2}
.woocommerce div.product form.cart .quantity input.qty::-webkit-outer-spin-button,
.woocommerce div.product form.cart .quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.woocommerce div.product form.cart .quantity .bp-qbtn{width:50px;height:52px;border:none;background:#fff;cursor:pointer;font-size:24px;color:#2C2622;display:flex;align-items:center;justify-content:center;transition:.15s;line-height:1;font-family:'Fraunces',Georgia,serif;flex:none}
.woocommerce div.product form.cart .quantity .bp-qbtn:first-of-type{order:1}
.woocommerce div.product form.cart .quantity .bp-qbtn:last-of-type{order:3}
.woocommerce div.product form.cart .quantity .bp-qbtn:hover{background:var(--cr2);color:var(--t)}
.woocommerce div.product form.cart .button,
.woocommerce div.product form.cart .single_add_to_cart_button{
	background:var(--t);color:#fff;border-radius:999px;font-family:'Fraunces',Georgia,serif;font-weight:600;
	padding:0 32px;height:54px;font-size:16px;transition:.18s;flex:1;min-width:200px;text-transform:none;
	display:inline-flex;align-items:center;justify-content:center;border:none;cursor:pointer;
}
.woocommerce div.product form.cart .single_add_to_cart_button:hover{background:var(--t7)}
/* estado disabled (hasta elegir variación) más claro, no "apagado feo" */
.woocommerce div.product form.cart .single_add_to_cart_button.disabled,
.woocommerce div.product form.cart .single_add_to_cart_button:disabled{background:var(--t);opacity:.45;cursor:not-allowed}
.woocommerce div.product form.cart .single_add_to_cart_button.disabled:hover{background:var(--t)}

/* trust badges */
.bp-trust{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;border-top:1px solid var(--bd);margin-top:26px;padding-top:24px}
.bp-trust .t{display:flex;gap:11px;align-items:center;font-size:13.5px}
.bp-trust .t i{font-size:24px;color:var(--t);flex:none}
.bp-trust .t b{font-family:'Fraunces',Georgia,serif;font-weight:600;display:block;font-size:13.5px;line-height:1.2}
.bp-trust .t span{color:var(--mut);font-size:12.5px;display:block}

/* meta (categoria) */
.woocommerce div.product .product_meta{font-size:13px;color:var(--mut);margin-top:22px;padding-top:18px;border-top:1px solid var(--bd)}
.woocommerce div.product .product_meta a{color:var(--t);text-decoration:none}
.woocommerce div.product .product_meta > span{display:block;margin-bottom:4px}

/* bundle "completá el look" */
.bp-bundle-sec{max-width:1180px;margin:48px auto 0;padding:48px 24px 0;border-top:1px solid var(--bd)}
.bp-bundle-head h2{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:26px;margin:0 0 4px}
.bp-bundle-head p{color:var(--mut);margin:0 0 22px}
.bp-bundle{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.bp-bitem{background:#fff;border:1px solid var(--bd);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink);transition:.2s;display:block}
.bp-bitem:hover{box-shadow:0 10px 30px -14px rgba(44,38,34,.25);transform:translateY(-3px)}
.bp-bimg{aspect-ratio:3/4;overflow:hidden;background:var(--cr2)}
.bp-bimg img{width:100%;height:100%;object-fit:cover;display:block}
.bp-binfo{padding:12px 14px 14px}
.bp-bn{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:15px;display:block;margin-bottom:4px;color:var(--ink)}
.bp-bp{display:block;font-weight:700;color:var(--t)}
.bp-bp .amount{color:var(--t)}
.bp-bundle-note{display:flex;align-items:center;gap:8px;color:var(--mut);font-size:13.5px;margin-top:16px;background:var(--cr2);border-radius:12px;padding:12px 16px}
.bp-bundle-note i{color:var(--t);font-size:18px}

/* tabs descripcion */
.woocommerce div.product .woocommerce-tabs{margin-top:48px;padding-top:48px;border-top:1px solid var(--bd)}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin-bottom:0}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-color:var(--bd)}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent;border:none;border-radius:0;font-family:'Fraunces',Georgia,serif;font-weight:600}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:transparent;border-bottom:2.5px solid var(--t)}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--ink)}
.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before{display:none}
.woocommerce-Tabs-panel h2{font-family:'Fraunces',Georgia,serif;font-weight:600}

/* productos relacionados — grid uniforme */
.woocommerce .related h2,.woocommerce .upsells h2{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:26px;margin-bottom:22px}
.woocommerce .related ul.products,.woocommerce .upsells ul.products{display:grid !important;grid-template-columns:repeat(4,1fr);gap:18px;margin:0}
.woocommerce .related ul.products li.product,.woocommerce .upsells ul.products li.product{width:auto !important;margin:0 !important;float:none !important;background:#fff;border:1px solid var(--bd);border-radius:16px;overflow:hidden;padding-bottom:14px;transition:.2s}
.woocommerce .related ul.products li.product:hover,.woocommerce .upsells ul.products li.product:hover{box-shadow:0 10px 30px -14px rgba(44,38,34,.25);transform:translateY(-4px)}
.woocommerce .related ul.products li.product img,.woocommerce .upsells ul.products li.product img{margin:0 0 10px;border-radius:0;aspect-ratio:3/4;object-fit:cover}
.woocommerce .related ul.products li.product .woocommerce-loop-product__title,.woocommerce .upsells ul.products li.product .woocommerce-loop-product__title{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:15px;padding:0 14px;color:var(--ink)}
.woocommerce .related ul.products li.product .price,.woocommerce .upsells ul.products li.product .price{padding:0 14px;color:var(--ink)}
.woocommerce .related ul.products li.product .button,.woocommerce .upsells ul.products li.product .button{margin:10px 14px 0;display:block;text-align:center;background:var(--t);color:#fff;border-radius:999px;font-family:'Fraunces',Georgia,serif;font-weight:600;padding:10px 16px;font-size:14px}
.woocommerce .related ul.products li.product .button:hover{background:var(--t7)}

/* tablet: 2 columnas más ajustadas (sigue lado a lado) */
@media(max-width:1024px){
	.woocommerce div.product{column-gap:32px}
	.woocommerce div.product .product_title{font-size:28px}
	.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:24px}
}
/* tablet medio: relacionados 3 col */
@media(max-width:1024px){
	.woocommerce .related ul.products,.woocommerce .upsells ul.products{grid-template-columns:repeat(3,1fr)}
}
/* mobile: recién acá apilamos galería + info */
@media(max-width:768px){
	.woocommerce div.product{grid-template-columns:1fr;row-gap:28px}
	.woocommerce div.product .bp-gallery,.woocommerce div.product div.summary{grid-column:1 !important}
	.bp-bundle{grid-template-columns:repeat(2,1fr)}
	.bp-trust{grid-template-columns:1fr 1fr}
	.woocommerce .related ul.products,.woocommerce .upsells ul.products{grid-template-columns:repeat(2,1fr) !important}
}
@media(max-width:640px){
	.woocommerce div.product .product_title{font-size:24px}
	.bp-bundle{grid-template-columns:repeat(2,1fr)}
	.bp-bundle-sec{padding:36px 16px 0}
	.bp-trust{grid-template-columns:1fr}
	/* form: cantidad + boton */
	.woocommerce div.product form.cart{flex-wrap:wrap;gap:10px}
	.woocommerce div.product form.cart .single_add_to_cart_button{flex:1 1 auto}
	/* relacionados 2x2 */
	.woocommerce .related ul.products,.woocommerce .upsells ul.products{grid-template-columns:repeat(2,1fr) !important;gap:12px}
	.woocommerce .related ul.products li.product .woocommerce-loop-product__title{font-size:13.5px}
	.woocommerce .related ul.products li.product .button{font-size:12.5px;padding:9px 10px}
}
