/*
Theme Name: CB Aromas y Deco
Theme URI: https://cbaromasydeco.com.ar
Description: Tema hijo de Twenty Twenty-Three para cbaromasydeco.com.ar. Colores y tipografías en theme.json.
Template: twentytwentythree
Version: 0.1.6
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: cbaromas
*/

/* ---------- Encabezado ---------- */
.cbaromas-topbar { margin: 0; letter-spacing: 0.01em; }
.cbaromas-logo { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--wp--preset--color--contrast); font-weight: 600; font-size: 0.95rem; white-space: nowrap; }
.cbaromas-logo img { width: 52px; height: auto; display: block; mix-blend-mode: multiply; }
.cbaromas-logo small { color: var(--wp--preset--color--secondary); font-weight: 500; font-size: 1em; }
.cbaromas-logo:hover { color: var(--wp--preset--color--contrast); }
.cbaromas-nav a { text-decoration: none; color: var(--wp--preset--color--gris); }
.cbaromas-nav a:hover { color: var(--wp--preset--color--contrast); }
.cbaromas-header .wc-block-mini-cart__button { color: var(--wp--preset--color--contrast); border: 1px solid var(--wp--preset--color--linea); border-radius: 999px; padding: 0.5rem 0.9rem; }
.cbaromas-header .wc-block-mini-cart__badge { background: var(--wp--preset--color--primary); color: #fff; }

/* ---------- Portada ---------- */
.cbaromas-eyebrow { font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--wp--preset--color--secondary); margin: 0; }
.cbaromas-hero-title { display: flex; align-items: center; gap: 1.5rem; }
.cbaromas-hero-title img { width: 190px; height: auto; flex: none; mix-blend-mode: multiply; }
.cbaromas-hero-title h1 { margin: 0; }
.cbaromas-hero-art { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.cbaromas-hero-art a { position: relative; display: flex; align-items: flex-end; min-height: 160px; border-radius: 20px; overflow: hidden; padding: 14px; text-decoration: none; color: var(--wp--preset--color--contrast); }
.cbaromas-hero-art a.big { grid-row: span 2; min-height: 334px; }
.cbaromas-hero-art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.cbaromas-hero-art a:hover img { transform: scale(1.04); }
.cbaromas-hero-art span { position: relative; background: rgba(255, 255, 255, 0.94); border-radius: 12px; padding: 8px 12px; line-height: 1.3; }
.cbaromas-hero-art strong { display: block; font-size: 0.95rem; }
.cbaromas-hero-art small { font-size: 0.75rem; color: var(--wp--preset--color--gris); }

.cbaromas-perks { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; }
.cbaromas-perks strong { display: block; font-size: 0.95rem; }
.cbaromas-perks span { font-size: 0.8125rem; color: var(--wp--preset--color--gris); }

.cbaromas-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 1.5rem; }
.cbaromas-chips a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border: 1px solid var(--wp--preset--color--linea); border-radius: 999px; background: #fff; color: var(--wp--preset--color--contrast); text-decoration: none; font-size: 0.875rem; font-weight: 600; }
.cbaromas-chips a:hover { background: var(--wp--preset--color--contrast); border-color: var(--wp--preset--color--contrast); color: #fff; }

.wp-block-button.is-style-outline > .wp-block-button__link { background: #fff; color: var(--wp--preset--color--contrast); border: 1px solid var(--wp--preset--color--linea); }
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--wp--preset--color--contrast); color: #fff; border-color: var(--wp--preset--color--contrast); }

/* ---------- WooCommerce: botones ---------- */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt, .wc-block-components-button:not(.is-link) {
	background: var(--wp--preset--color--primary); color: #fff; border: 0; border-radius: 999px;
	font-family: var(--wp--preset--font-family--montserrat); font-weight: 600; font-size: 0.9375rem; padding: 0.8em 1.6em; line-height: 1.2;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .wc-block-components-button:not(.is-link):hover {
	background: var(--wp--preset--color--secondary); color: #fff;
}
.woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled] { background: #E3D6CF; color: var(--wp--preset--color--gris); }

/* ---------- WooCommerce: grilla de productos ---------- */
.woocommerce ul.products li.product, .wc-block-grid__product, .wc-block-product {
	background: #fff; border: 1px solid var(--wp--preset--color--linea); border-radius: 18px; overflow: hidden; padding-bottom: 1rem; text-align: left;
}
.woocommerce ul.products li.product a img { border-radius: 0; margin: 0 0 0.75rem; aspect-ratio: 1 / 1; object-fit: cover; background: var(--wp--preset--color--base); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: var(--wp--preset--font-family--cormorant); font-size: 1.25rem; font-weight: 600; line-height: 1.25; padding: 0 1rem; color: var(--wp--preset--color--contrast); }
.woocommerce ul.products li.product .price { color: var(--wp--preset--color--contrast); font-weight: 700; font-size: 1.05rem; padding: 0 1rem; }
.woocommerce ul.products li.product .price del { color: var(--wp--preset--color--gris); font-weight: 400; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button { margin: 0.5rem 1rem 0; }
.woocommerce span.onsale { background: var(--wp--preset--color--tertiary); color: var(--wp--preset--color--contrast); border-radius: 999px; min-height: auto; min-width: auto; padding: 0.3em 0.8em; line-height: 1.4; font-weight: 700; font-size: 0.75rem; }

/* ---------- WooCommerce: producto ---------- */
.woocommerce div.product .product_title { font-family: var(--wp--preset--font-family--cormorant); }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--wp--preset--color--contrast); font-weight: 700; font-size: 1.5rem; }
.woocommerce div.product div.images img { border-radius: 18px; }

/* ---------- WooCommerce: formularios (carrito y checkout clásicos) ---------- */
.woocommerce form .form-row label { font-size: 0.875rem; font-weight: 600; color: var(--wp--preset--color--contrast); }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select,
.woocommerce-cart table.cart td.actions .coupon .input-text, .woocommerce .quantity .qty, .select2-container--default .select2-selection--single {
	border: 1px solid #D9C8C0; border-radius: 10px; background: #fff; color: var(--wp--preset--color--contrast);
	font-family: var(--wp--preset--font-family--montserrat); font-size: 0.95rem; padding: 0.7em 0.9em; min-height: 46px; box-sizing: border-box;
}
.select2-container--default .select2-selection--single { display: flex; align-items: center; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 44px; }
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row select:focus { outline: 2px solid var(--wp--preset--color--primary); outline-offset: 1px; }
.woocommerce form .form-row .required { color: #B3261E; text-decoration: none; }

.woocommerce-checkout h3, .woocommerce-cart h2, #order_review_heading { font-family: var(--wp--preset--font-family--cormorant); font-size: 1.75rem; }
.woocommerce table.shop_table { border: 1px solid var(--wp--preset--color--linea); border-radius: 16px; background: #fff; border-collapse: separate; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { border-color: var(--wp--preset--color--linea); }
.woocommerce-checkout #payment { background: #fff; border: 1px solid var(--wp--preset--color--linea); border-radius: 16px; }
.woocommerce-checkout #payment div.payment_box { background: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast); border-radius: 10px; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--wp--preset--color--base); }
.woocommerce #payment #place_order { width: 100%; font-size: 1rem; padding: 1em; }
.woocommerce ul#shipping_method li { margin-bottom: 0.5em; }
.woocommerce ul#shipping_method li label { font-size: 0.875rem; }

.woocommerce-message, .woocommerce-info { border-top-color: var(--wp--preset--color--primary); background: #fff; border-radius: 10px; }
.woocommerce-message::before, .woocommerce-info::before { color: var(--wp--preset--color--primary); }

/* ---------- Celular ---------- */
@media (max-width: 781px) {
	.cbaromas-logo span { display: none; }
	.cbaromas-hero-title { flex-direction: column; text-align: center; gap: 0.75rem; }
	.cbaromas-hero-title img { width: 150px; }
	.cbaromas-hero .cbaromas-eyebrow, .cbaromas-hero p, .cbaromas-hero .wp-block-buttons { text-align: center; justify-content: center; }
	.cbaromas-hero-art a { min-height: 120px; }
	.cbaromas-hero-art a.big { min-height: 254px; }
}

/* ---------- Pie ---------- */
.cbaromas-footer a { color: #F8DFDB; }
.cbaromas-footer a:hover { color: #FFFFFF; }

/* ---------- Bloques de productos de WooCommerce (portada) ---------- */
.wc-block-grid__products { gap: 20px; margin: 0; }
.wc-block-grid.has-4-columns .wc-block-grid__product { flex: 1 0 calc(25% - 20px); max-width: calc(25% - 15px); }
.wc-block-grid__product { margin: 0 !important; border: 1px solid var(--wp--preset--color--linea); }
.wc-block-grid__product-image img { aspect-ratio: 1 / 1; object-fit: cover; width: 100%; background: var(--wp--preset--color--base); }
.wc-block-grid__product-title { font-family: var(--wp--preset--font-family--cormorant); font-size: 1.2rem; font-weight: 600; color: var(--wp--preset--color--contrast); padding: 0 1rem; text-align: left; }
.wc-block-grid__product-price { font-weight: 700; color: var(--wp--preset--color--contrast); padding: 0 1rem; text-align: left; }
.wc-block-grid__product-add-to-cart { padding: 0 1rem; text-align: left; }
.wc-block-grid__product-add-to-cart .wp-block-button__link { font-size: 0.875rem; padding: 0.6em 1.2em; }
@media (max-width: 781px) {
	.wc-block-grid.has-4-columns .wc-block-grid__product { flex: 1 0 calc(50% - 20px); max-width: calc(50% - 10px); }
}
.wc-block-grid__product a, .wc-block-grid__product-title, .woocommerce ul.products li.product a { text-decoration: none; }
.wc-block-grid__product a:hover .wc-block-grid__product-title { color: var(--wp--preset--color--secondary); }
.woocommerce-billing-fields h3, .woocommerce-shipping-fields h3, .woocommerce-additional-fields h3, #order_review_heading, .cart_totals h2 { font-family: var(--wp--preset--font-family--cormorant); font-weight: 600; font-size: 1.75rem; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 0.9rem 1rem; }

/* ---------- Resumen del pedido (checkout y carrito) ---------- */
.woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td,
.woocommerce .cart_totals table.shop_table th, .woocommerce .cart_totals table.shop_table td { padding: 0.9rem 1.1rem !important; vertical-align: top; }
.woocommerce-checkout-review-order-table .product-total, .woocommerce-checkout-review-order-table tfoot td { text-align: right; white-space: nowrap; }
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals td { text-align: left; white-space: normal; }
.woocommerce-checkout-review-order-table .product-quantity { color: var(--wp--preset--color--gris); font-weight: 400; }

/* ---------- Buscador del encabezado ---------- */
.cbaromas-search .wp-block-search__inside-wrapper { border: 1px solid var(--wp--preset--color--linea); border-radius: 999px; padding: 2px 2px 2px 14px; background: #fff; }
.cbaromas-search .wp-block-search__input { border: 0; background: transparent; font-size: 0.875rem; min-width: 180px; padding: 0.45rem 0; }
.cbaromas-search .wp-block-search__input:focus { outline: none; }
.cbaromas-search .wp-block-search__button { border-radius: 999px; padding: 0.45rem; margin: 0; background: var(--wp--preset--color--primary); color: #fff; }
.cbaromas-search .wp-block-search__button svg { width: 18px; height: 18px; fill: currentColor; }
@media (max-width: 1100px) { .cbaromas-search .wp-block-search__input { min-width: 120px; } }
@media (max-width: 781px) {
	.cbaromas-header-tools { order: 3; flex-basis: 100%; }
	.cbaromas-search { flex: 1; }
	.cbaromas-search .wp-block-search__input { min-width: 0; width: 100%; }
}

/* ---------- Resumen del pedido como grilla: Envío a ancho completo ---------- */
.woocommerce-checkout-review-order-table,
.woocommerce-checkout-review-order-table thead,
.woocommerce-checkout-review-order-table tbody,
.woocommerce-checkout-review-order-table tfoot { display: block; width: 100%; }
.woocommerce-checkout-review-order-table tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 1rem; border-bottom: 1px solid var(--wp--preset--color--linea); }
.woocommerce-checkout-review-order-table tr:last-child { border-bottom: 0; }
.woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td { display: block; border: 0 !important; }
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals { grid-template-columns: minmax(0, 1fr); }
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals th { padding-bottom: 0 !important; }
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals td { padding-top: 0.5rem !important; }
.woocommerce-checkout-review-order-table tr.order-total th, .woocommerce-checkout-review-order-table tr.order-total td { font-size: 1.1rem; }
.cbad-special .button { display: inline-flex; margin: 0 8px 8px 0; }
.cbaromas-nav { --wp--style--block-gap: 1.1rem; }
.cbaromas-search .wp-block-search__input { min-width: 140px; }
@media (min-width: 782px) and (max-width: 1280px) { .cbaromas-logo span { display: none; } }
