/* =========================================================
   WooCommerce — End of Funnel.ai theme skin
   All colors use the theme CSS variables so they follow the
   Customizer palette automatically.
   ========================================================= */

/* ---------- Layout wrappers ---------- */
.woo-section{padding-top:clamp(48px,5vw,72px)}
.woo-hero p{max-width:680px}
.woo-topbar{background:var(--gray-50);border-bottom:1px solid var(--gray-200)}
.woo-topbar .container{padding-top:16px;padding-bottom:16px}
.woo-breadcrumb{font-family:var(--font-head);font-size:.85rem;color:var(--gray-500)}
.woo-breadcrumb a{color:var(--blue-500)}
.woo-breadcrumb.light,.woo-breadcrumb.light a{color:#9fb6d4}
.woo-breadcrumb.light a:hover{color:var(--cyan-300)}

/* ---------- Buttons ---------- */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce .single_add_to_cart_button,
.woocommerce #place_order,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce .woocommerce-message a.button{
	display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
	background:var(--grad-brand);color:#fff;border:0;border-radius:50px;
	font-family:var(--font-head);font-weight:600;font-size:1rem;line-height:1.2;
	padding:.85rem 1.6rem;cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s var(--ease);
	box-shadow:var(--shadow-cyan);text-shadow:none;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce #place_order:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{
	transform:translateY(-3px);box-shadow:0 20px 48px rgba(0,180,255,.42);color:#fff;
}
/* secondary / ghost buttons (e.g. "Update cart", "Apply coupon") */
.woocommerce button.button[name="update_cart"],
.woocommerce .cart input.button[name="apply_coupon"],
.woocommerce .button.wc-backward{
	background:#fff;color:var(--navy-800);border:2px solid var(--gray-300);box-shadow:none;
}
.woocommerce button.button[name="update_cart"]:hover,
.woocommerce .cart input.button[name="apply_coupon"]:hover,
.woocommerce .button.wc-backward:hover{border-color:var(--cyan-500);color:var(--cyan-500);transform:translateY(-2px)}

/* ---------- Sale badge ---------- */
.woocommerce span.onsale{
	background:var(--grad-brand);color:#fff;border-radius:50px;font-family:var(--font-head);
	font-weight:700;font-size:.72rem;letter-spacing:.04em;min-height:0;min-width:0;
	padding:.35rem .8rem;top:14px;left:14px;line-height:1.2;box-shadow:var(--shadow-cyan);
}

/* ---------- Notices ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-noreviews,
.woocommerce .woocommerce-info{
	border-top:0;border-radius:var(--radius);font-family:var(--font-body);
	padding:1rem 1.2rem 1rem 3rem;box-shadow:var(--shadow-sm);
}
.woocommerce-message{background:#eaf7ee;border-left:4px solid #1aa463}
.woocommerce-info{background:#e7f3ff;border-left:4px solid var(--blue-500)}
.woocommerce-error{background:#fdecec;border-left:4px solid #d9534f}
.woocommerce-message::before{color:#1aa463}
.woocommerce-info::before{color:var(--blue-500)}

/* ---------- Result count / ordering ---------- */
.woocommerce .woocommerce-result-count{color:var(--gray-600);font-size:.95rem;margin-top:.4rem}
.woocommerce .woocommerce-ordering select,
.woocommerce form .form-row select,
.woocommerce select{
	font-family:var(--font-body);border:1.5px solid var(--gray-200);border-radius:10px;
	padding:.6rem 2rem .6rem .9rem;background-color:#fff;color:var(--ink);
}

/* =========================================================
   SHOP / ARCHIVE GRID
   ========================================================= */
.woocommerce ul.products,
.woocommerce-page ul.products{display:grid;gap:26px;margin:0 0 40px;list-style:none}
.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,1fr)}
.woocommerce ul.products.columns-4{grid-template-columns:repeat(4,1fr)}
.woocommerce ul.products.columns-2{grid-template-columns:repeat(2,1fr)}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
	width:auto!important;margin:0!important;float:none;background:#fff;
	border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:18px 18px 22px;
	box-shadow:var(--shadow-sm);transition:transform .3s var(--ease),box-shadow .3s var(--ease);
	display:flex;flex-direction:column;text-align:left;position:relative;
}
.woocommerce ul.products li.product:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:transparent}
.woocommerce ul.products li.product a img{border-radius:12px;margin:0 0 16px;background:var(--gray-100)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
	font-family:var(--font-head);font-weight:700;font-size:1.12rem;color:var(--navy-900);
	padding:0 0 .3em;line-height:1.25;
}
.woocommerce ul.products li.product .price{
	color:var(--blue-600);font-family:var(--font-head);font-weight:700;font-size:1.2rem;margin-bottom:.8rem;
}
.woocommerce ul.products li.product .price del{color:var(--gray-400);font-weight:500;margin-right:6px}
.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce ul.products li.product .button{margin-top:auto;width:100%}

/* =========================================================
   SINGLE PRODUCT
   ========================================================= */
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);align-items:start}
.woocommerce div.product .woocommerce-product-gallery,
.woocommerce div.product .summary{width:100%!important;max-width:100%!important;float:none!important;margin:0!important}
.woocommerce div.product .woocommerce-product-gallery__image img{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);width:100%}
.woocommerce div.product .product_title{
	font-family:var(--font-head);font-weight:800;color:var(--navy-900);
	font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.1;margin:0 0 .35em;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price{
	color:var(--blue-600);font-family:var(--font-head);font-weight:800;font-size:1.9rem;margin-bottom:1rem;
}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--gray-600);font-size:1.05rem;margin-bottom:1.4rem}
.woocommerce div.product form.cart{margin-bottom:1.6rem;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.woocommerce .quantity .qty{
	width:84px;height:52px;border:1.5px solid var(--gray-200);border-radius:12px;
	font-family:var(--font-head);font-weight:700;font-size:1.05rem;text-align:center;color:var(--ink);
}
.woocommerce div.product form.cart .button{height:52px;padding-left:2rem;padding-right:2rem}
.woocommerce div.product .product_meta{font-size:.9rem;color:var(--gray-500);border-top:1px solid var(--gray-200);padding-top:1rem;margin-top:.5rem}

/* "You already own this" note on the setup product */
.eof-owned{background:#eaf7ee;border:1px solid #bfe6cb;color:#10693a;border-radius:var(--radius);padding:.9rem 1.1rem;font-weight:600;font-family:var(--font-head)}
.eof-owned a{color:var(--blue-600)}

/* Helper note under quantity (leads product only, output via PHP) */
.eof-qty-note{flex-basis:100%;width:100%;font-size:.85rem;color:var(--gray-500);font-family:var(--font-body);margin:2px 0 0}

/* Tabs */
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:48px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 24px;border-bottom:1px solid var(--gray-200)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-color:var(--gray-200)}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
	background:transparent;border:0;border-radius:0;margin:0 6px -1px 0;padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
	font-family:var(--font-head);font-weight:600;color:var(--gray-500);padding:.7rem 1rem;display:inline-block;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--blue-600);box-shadow:inset 0 -3px 0 var(--cyan-500)}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce-Tabs-panel h2{font-family:var(--font-head);color:var(--navy-900)}

/* Related / upsells */
.woocommerce .related,.woocommerce .upsells{grid-column:1/-1;margin-top:56px}
.woocommerce .related>h2,.woocommerce .upsells>h2{font-family:var(--font-head);color:var(--navy-900);margin-bottom:24px}

/* =========================================================
   FORMS (cart, checkout, account)
   ========================================================= */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-page form .form-row input.input-text,
.woocommerce #order_review input.input-text,
.woocommerce .woocommerce-form-login input.input-text,
.woocommerce table.cart input{
	font-family:var(--font-body);font-size:1rem;padding:.8rem 1rem;border:1.5px solid var(--gray-200);
	border-radius:10px;background:#fff;color:var(--ink);transition:.2s var(--ease);width:100%;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce select:focus{outline:none;border-color:var(--cyan-500);box-shadow:0 0 0 4px rgba(0,180,255,.12)}
.woocommerce form .form-row label,
.woocommerce-checkout label{font-family:var(--font-head);font-weight:600;font-size:.9rem;color:var(--navy-800)}

/* =========================================================
   CART
   ========================================================= */
.woocommerce table.shop_table{border:1px solid var(--gray-200);border-radius:var(--radius-lg);border-collapse:separate;overflow:hidden;box-shadow:var(--shadow-sm)}
.woocommerce table.shop_table thead th{background:var(--gray-50);font-family:var(--font-head);color:var(--navy-900);font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;padding:1rem}
.woocommerce table.shop_table td{padding:1.1rem 1rem;border-top:1px solid var(--gray-200)}
.woocommerce table.shop_table .product-name a{color:var(--navy-800);font-weight:600}
.woocommerce a.remove{color:var(--blue-600)!important;border:1px solid var(--gray-200)}
.woocommerce a.remove:hover{background:var(--blue-600)!important;color:#fff!important}
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-cart .cart-collaterals .cart_totals{float:none;width:100%}
.woocommerce .cart_totals h2{font-family:var(--font-head);color:var(--navy-900)}
.woocommerce .cart_totals table{border-radius:var(--radius-lg);overflow:hidden}
.woocommerce .wc-proceed-to-checkout a.checkout-button{width:100%;font-size:1.08rem;padding:1rem}

/* =========================================================
   CHECKOUT
   ========================================================= */
.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading{margin-top:0}
.woocommerce-checkout #order_review{
	background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);
	padding:26px;box-shadow:var(--shadow-sm);
}
.woocommerce-checkout #payment{background:var(--gray-50);border-radius:var(--radius)}
.woocommerce-checkout #payment div.payment_box{background:#fff;border:1px solid var(--gray-200)}
.woocommerce-checkout #place_order{width:100%;font-size:1.1rem;padding:1rem;margin-top:1rem}
.woocommerce form.checkout_coupon{border:1px solid var(--gray-200);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{float:none;width:auto}

/* =========================================================
   MY ACCOUNT
   ========================================================= */
.woocommerce-account .woocommerce-MyAccount-navigation{
	width:26%;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);
	padding:12px;box-shadow:var(--shadow-sm);
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.woocommerce-account .woocommerce-MyAccount-navigation li{border:0;margin:0}
.woocommerce-account .woocommerce-MyAccount-navigation li a{
	display:block;padding:.7rem 1rem;border-radius:10px;font-family:var(--font-head);
	font-weight:600;color:var(--navy-800);
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:var(--gray-100);color:var(--blue-600)}
.woocommerce-account .woocommerce-MyAccount-content{width:70%}

/* =========================================================
   WOOCOMMERCE CART / CHECKOUT BLOCKS (Gutenberg blocks)
   Different class names than the classic templates.
   ========================================================= */
.wc-block-components-button.wc-block-components-button.contained,
.wc-block-components-button.wc-block-components-button--contained,
button.wc-block-cart__submit-button,
.wc-block-cart__submit-container .wc-block-components-button,
.wc-block-components-totals-coupon__button,
.wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-checkout .wc-block-components-button.contained{
	background:var(--grad-brand)!important;color:#fff!important;border:0!important;
	border-radius:50px!important;font-family:var(--font-head)!important;font-weight:600!important;
	box-shadow:var(--shadow-cyan)!important;min-height:52px!important;padding:.8rem 1.7rem!important;
	transition:transform .25s var(--ease),box-shadow .25s var(--ease)!important;
}
.wc-block-components-button.contained:hover,
button.wc-block-cart__submit-button:hover,
.wc-block-components-totals-coupon__button:hover,
.wc-block-components-checkout-place-order-button:hover{
	transform:translateY(-2px)!important;box-shadow:0 18px 44px rgba(0,180,255,.42)!important;color:#fff!important;
}
.wc-block-components-button .wc-block-components-button__text{color:#fff!important}
/* coupon "Apply" sits next to the input — keep it tidy */
.wc-block-components-totals-coupon__button{min-height:48px!important;padding:.7rem 1.3rem!important}

/* Block form fields */
.wc-block-components-text-input input,
.wc-block-components-text-input textarea,
.wc-block-checkout__form input.input-text,
.wc-block-components-address-form input,
.wc-block-components-address-form select{
	border:1.5px solid var(--gray-200)!important;border-radius:10px!important;font-family:var(--font-body)!important;
}
.wc-block-components-text-input input:focus,
.wc-block-components-address-form input:focus{
	border-color:var(--cyan-500)!important;box-shadow:0 0 0 4px rgba(0,180,255,.12)!important;
}
.wc-block-components-text-input.is-active label,
.wc-block-checkout__form label{color:var(--navy-800)}
/* Order summary card on the right */
.wc-block-components-sidebar .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{color:var(--navy-900);font-family:var(--font-head)}
.wp-block-woocommerce-checkout-order-summary-block{border-radius:var(--radius-lg);border:1px solid var(--gray-200);box-shadow:var(--shadow-sm)}
/* Step titles */
.wc-block-components-checkout-step__title{font-family:var(--font-head);color:var(--navy-900)}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media(max-width:980px){
	.woocommerce ul.products.columns-3,.woocommerce ul.products.columns-4{grid-template-columns:repeat(2,1fr)}
	.woocommerce div.product{grid-template-columns:1fr;gap:28px}
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content{width:100%;float:none}
	.woocommerce-account .woocommerce-MyAccount-navigation{margin-bottom:20px}
}
@media(max-width:600px){
	.woocommerce ul.products.columns-3,.woocommerce ul.products.columns-4,.woocommerce ul.products.columns-2{grid-template-columns:1fr}
}
