/* ==========================================================================
   Syntra – store pages (cart, checkout, thank you, account, product)
   Covers both the WooCommerce Cart/Checkout blocks and the classic shortcodes.
   Selectors start with body.syntra-store so they win over WooCommerce's own CSS,
   which can load later in the page.
   ========================================================================== */

/* ---------- Page frame ---------- */
body.syntra-store { background: var(--mist); }
body.syntra-store .store-hero { min-height: clamp(130px, 11vw, 210px); }
body.syntra-store .woo-page { padding: clamp(32px, 4.6vw, 88px) clamp(16px, 5.4vw, 103px) clamp(56px, 6vw, 115px); }
body.syntra-store .woo-page__inner { max-width: 1500px; margin-inline: auto; }

body.syntra-store .woo-page,
body.syntra-store .woo-page [class*="wc-block-"],
body.syntra-store .woo-page .woocommerce {
	font-family: var(--font-body);
	color: var(--navy);
}

/* Section headings: bold blue, like "טופס יצירת קשר" */
body.syntra-store .wc-block-components-title,
body.syntra-store .wc-block-components-checkout-step__title,
body.syntra-store .wc-block-cart__totals-title,
body.syntra-store .woo-page h2,
body.syntra-store .woo-page h3 {
	font-family: var(--font-body) !important;
	font-size: var(--fs-32) !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	color: var(--blue) !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

/* ---------- Two-column layout (blocks) ---------- */
body.syntra-store .wc-block-components-sidebar-layout { gap: clamp(24px, 3vw, 56px); margin: 0; }
body.syntra-store .wc-block-components-sidebar-layout .wc-block-components-main { padding-inline-end: 0; }
body.syntra-store .wc-block-components-sidebar {
	padding: clamp(24px, 2.4vw, 46px) !important;
	background: var(--sky);
	border: 0;
	align-self: flex-start;
}
body.syntra-store .wc-block-components-sidebar .wc-block-components-panel,
body.syntra-store .wc-block-components-totals-wrapper { border-color: rgba(19, 14, 73, .15) !important; }

/* ---------- Cart items ---------- */
body.syntra-store .wc-block-cart-items,
body.syntra-store table.shop_table {
	border: 0 !important; border-collapse: separate; border-spacing: 0 14px;
	background: transparent;
}
body.syntra-store .wc-block-cart-items__header,
body.syntra-store table.shop_table thead th {
	font-size: var(--fs-20); font-weight: 700; color: var(--navy);
	text-transform: none; border: 0 !important; background: transparent;
}
body.syntra-store .wc-block-cart-items__row,
body.syntra-store table.shop_table.cart tbody tr.cart_item { background: var(--white); }
body.syntra-store .wc-block-cart-items__row td,
body.syntra-store table.shop_table td {
	border: 0 !important;
	padding: clamp(14px, 1.4vw, 26px) !important;
	vertical-align: middle;
}
body.syntra-store .wc-block-cart-item__image img,
body.syntra-store .wc-block-components-order-summary-item__image img,
body.syntra-store table.shop_table .product-thumbnail img { background: var(--sky); }
body.syntra-store .wc-block-components-product-name,
body.syntra-store table.shop_table .product-name a {
	font-size: var(--fs-24); font-weight: 700; color: var(--black); text-decoration: none;
}
body.syntra-store .wc-block-components-product-metadata,
body.syntra-store .wc-block-components-product-metadata__description { font-size: var(--fs-20); color: var(--navy); }
body.syntra-store .wc-block-cart-item__remove-link,
body.syntra-store table.shop_table a.remove {
	font-size: 16px !important; color: var(--blue) !important; text-decoration: underline; text-underline-offset: 4px;
}
body.syntra-store table.shop_table a.remove:hover { background: transparent; color: var(--navy) !important; }

/* A font is sold once, so quantity pickers aren't needed */
body.syntra-store .wc-block-components-quantity-selector,
body.syntra-store table.shop_table .product-quantity .quantity { display: none; }

/* ---------- Prices & totals ---------- */
body.syntra-store .wc-block-components-product-price,
body.syntra-store .wc-block-formatted-money-amount,
body.syntra-store .woocommerce-Price-amount { font-weight: 700; color: var(--navy); }
body.syntra-store .wc-block-components-totals-item { font-size: var(--fs-20); }
body.syntra-store .wc-block-components-totals-footer-item,
body.syntra-store .cart_totals .order-total,
body.syntra-store .woocommerce-checkout-review-order-table .order-total {
	font-size: var(--fs-32) !important; font-weight: 700;
}
body.syntra-store .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: var(--fs-32) !important; }

/* ---------- Buttons ---------- */
body.syntra-store .wc-block-components-button:not(.is-link),
body.syntra-store .wc-block-cart__submit-button,
body.syntra-store .wc-block-components-checkout-place-order-button,
body.syntra-store .woo-page .button,
body.syntra-store .woo-page button[type="submit"],
body.syntra-store #place_order,
body.syntra-store .checkout-button {
	display: inline-flex !important; align-items: center; justify-content: center;
	min-height: clamp(53px, 4.6vw, 88px) !important;
	padding: 0 2em !important;
	border: 0 !important; border-radius: var(--radius-pill) !important;
	background: var(--navy) !important; color: var(--white) !important;
	font-family: var(--font-body) !important; font-size: var(--fs-24) !important; font-weight: 700 !important;
	text-decoration: none !important; box-shadow: none !important;
	transition: background-color .2s ease, transform .2s ease;
}
/* Button labels are nested spans; keep them white over the navy fill */
body.syntra-store .wc-block-components-button:not(.is-link) *,
body.syntra-store .wc-block-cart__submit-button *,
body.syntra-store .wc-block-components-checkout-place-order-button *,
body.syntra-store .woo-page .button *,
body.syntra-store #place_order * { color: var(--white) !important; }
body.syntra-store .wc-block-components-button:not(.is-link):hover,
body.syntra-store .woo-page .button:hover,
body.syntra-store #place_order:hover { background: var(--blue) !important; transform: translateY(-2px); }
body.syntra-store .wc-block-cart__submit-button,
body.syntra-store .wc-block-components-checkout-place-order-button,
body.syntra-store #place_order,
body.syntra-store .checkout-button { width: 100%; }
body.syntra-store .wc-block-components-button.is-link,
body.syntra-store .wc-block-components-checkout-return-to-cart-button {
	color: var(--blue) !important; font-size: var(--fs-20); text-decoration: underline; text-underline-offset: 4px;
}

/* ---------- Form fields: white boxes like the contact form ---------- */
body.syntra-store .wc-block-components-text-input input,
body.syntra-store .wc-block-components-textarea,
body.syntra-store .wc-blocks-components-select__select,
body.syntra-store .wc-block-components-combobox .components-combobox-control__input,
body.syntra-store .woo-page .input-text,
body.syntra-store .woo-page select,
body.syntra-store .woo-page .select2-container .select2-selection {
	min-height: clamp(56px, 4.3vw, 83px) !important;
	border: 0 !important; border-radius: 0 !important;
	background: var(--white) !important;
	color: var(--navy) !important;
	font-family: var(--font-body) !important; font-size: var(--fs-20) !important;
	box-shadow: none !important;
}
body.syntra-store .wc-block-components-text-input input { padding-inline: clamp(18px, 1.6vw, 30px) !important; }
body.syntra-store .woo-page .input-text { padding: 0 clamp(18px, 1.6vw, 30px) !important; }
body.syntra-store .woo-page textarea.input-text,
body.syntra-store .wc-block-components-textarea { padding: 20px clamp(18px, 1.6vw, 30px) !important; background: var(--lime) !important; }
body.syntra-store .wc-block-components-text-input label,
body.syntra-store .wc-blocks-components-select__label,
body.syntra-store .woo-page .form-row label {
	color: var(--navy) !important; font-family: var(--font-body);
	font-size: var(--fs-20);
	inset-inline-start: clamp(18px, 1.6vw, 30px) !important;
}
body.syntra-store .wc-block-components-text-input.is-active label { font-size: 14px; }
body.syntra-store .wc-block-components-text-input input:focus,
body.syntra-store .woo-page .input-text:focus,
body.syntra-store .woo-page select:focus {
	outline: 3px solid var(--blue) !important; outline-offset: 0;
}
body.syntra-store .wc-block-components-validation-error,
body.syntra-store .woo-page .woocommerce-invalid label { color: #a11 !important; }

/* Checkboxes and radios in brand navy */
body.syntra-store .wc-block-components-checkbox__input[type="checkbox"],
body.syntra-store .wc-block-components-radio-control__input,
body.syntra-store .woo-page input[type="checkbox"],
body.syntra-store .woo-page input[type="radio"] { accent-color: var(--navy); border-color: var(--navy) !important; }
body.syntra-store .wc-block-components-checkbox__input[type="checkbox"]:checked { background: var(--navy) !important; }
body.syntra-store .wc-block-components-checkbox__mark { fill: var(--white); }

/* ---------- Checkout steps ---------- */
body.syntra-store .wc-block-components-checkout-step { margin-block-end: clamp(32px, 2.6vw, 50px); }
body.syntra-store .wc-block-components-checkout-step__container::after { display: none; }
body.syntra-store .wc-block-components-checkout-step__heading { margin-block-end: 18px; }
body.syntra-store .wc-block-components-checkout-step__description { font-size: var(--fs-20); color: var(--navy); }
body.syntra-store .wc-block-components-checkout-step--with-step-number .wc-block-components-checkout-step__title::before { color: var(--blue); }

/* Payment options as white cards; the chosen one turns lime */
body.syntra-store .wc-block-components-radio-control-accordion-option,
body.syntra-store .wc-block-components-radio-control__option,
body.syntra-store #payment .wc_payment_method {
	background: var(--white) !important; border: 0 !important; box-shadow: none !important;
	margin-block-end: 10px;
}
body.syntra-store .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
body.syntra-store .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted {
	background: var(--lime) !important; box-shadow: none !important;
}
body.syntra-store .wc-block-components-radio-control--highlight-checked::after { display: none; }
body.syntra-store #payment { background: transparent !important; border-radius: 0; }
body.syntra-store #payment ul.payment_methods { border: 0; padding: 0; }
body.syntra-store #payment div.payment_box { background: var(--lime); color: var(--navy); }
body.syntra-store #payment div.payment_box::before { border-bottom-color: var(--lime); }
body.syntra-store #payment div.form-row { padding-inline: 0; }

/* ---------- Order summary (checkout sidebar) ---------- */
body.syntra-store .wc-block-components-order-summary-item { padding-block: 14px; }
body.syntra-store .wc-block-components-order-summary-item__quantity {
	background: var(--navy) !important; color: var(--white) !important; border: 0 !important; box-shadow: none !important;
}
body.syntra-store .wc-block-components-order-summary-item__description .wc-block-components-product-name { font-size: var(--fs-20); }

/* Coupon */
body.syntra-store .wc-block-components-totals-coupon-link,
body.syntra-store .wc-block-components-panel__button { color: var(--blue); font-size: var(--fs-20); }
body.syntra-store .wc-block-components-totals-coupon__form .wc-block-components-button { min-height: 56px !important; }

/* ---------- Notices ---------- */
body.syntra-store .wc-block-components-notice-banner,
body.syntra-store .woocommerce-message,
body.syntra-store .woocommerce-info,
body.syntra-store .woocommerce-error {
	border: 0 !important; border-radius: 0 !important;
	background: var(--lime) !important; color: var(--forest) !important;
	font-size: var(--fs-20);
}
body.syntra-store .wc-block-components-notice-banner.is-error,
body.syntra-store .woocommerce-error { background: #ffe1e1 !important; color: #8a1010 !important; }
body.syntra-store .wc-block-components-notice-banner > svg { background: var(--forest); fill: var(--lime); }
body.syntra-store .woocommerce-message::before,
body.syntra-store .woocommerce-info::before { color: var(--forest); }

/* ---------- Empty cart ---------- */
body.syntra-store .wc-block-cart__empty-cart__title,
body.syntra-store .cart-empty {
	font-size: var(--fs-48) !important; font-weight: 700; color: var(--black) !important;
	text-align: center; background: none !important;
}
body.syntra-store .wc-block-cart__empty-cart__title::before { background-color: var(--blue); }
body.syntra-store .wp-block-woocommerce-empty-cart-block .wp-block-separator { border-color: rgba(19, 14, 73, .15); }
body.syntra-store .wp-block-woocommerce-empty-cart-block .wp-block-heading { text-align: center; }
body.syntra-store .return-to-shop { text-align: center; }

/* ---------- Classic cart & checkout (shortcode versions) ---------- */
body.syntra-store .woocommerce .cart-collaterals .cart_totals,
body.syntra-store #order_review {
	width: 100%; padding: clamp(24px, 2.4vw, 46px);
	background: var(--sky);
}
body.syntra-store .woocommerce .cart_totals table.shop_table,
body.syntra-store #order_review table.shop_table { border-spacing: 0; }
body.syntra-store .woocommerce .cart_totals table.shop_table th,
body.syntra-store .woocommerce .cart_totals table.shop_table td,
body.syntra-store #order_review table.shop_table th,
body.syntra-store #order_review table.shop_table td { background: transparent; border-top: 1px solid rgba(19, 14, 73, .15) !important; padding-inline: 0 !important; }
body.syntra-store .woocommerce-checkout #customer_details .col-1,
body.syntra-store .woocommerce-checkout #customer_details .col-2 { width: 100%; float: none; }
body.syntra-store form.checkout { display: grid; grid-template-columns: 1fr minmax(320px, 40%); gap: 0 clamp(24px, 3vw, 56px); align-items: start; }
body.syntra-store form.checkout > * { grid-column: 1; }
body.syntra-store form.checkout #order_review_heading { grid-column: 2; grid-row: 1; margin: 0; padding: clamp(24px, 2.4vw, 46px) clamp(24px, 2.4vw, 46px) 0; background: var(--sky); }
body.syntra-store form.checkout #order_review { grid-column: 2; grid-row: 2 / span 3; padding-block-start: 16px; }
body.syntra-store table.shop_table .actions .coupon .input-text { min-width: 200px; }

/* ---------- Thank you page & downloads ---------- */
body.syntra-store .woocommerce-order,
body.syntra-store .wc-block-order-confirmation-status,
body.syntra-store .wc-block-order-confirmation-summary { font-size: var(--fs-20); }
body.syntra-store .woocommerce-thankyou-order-received,
body.syntra-store .wc-block-order-confirmation-status p {
	padding: clamp(20px, 2vw, 36px); background: var(--lime); color: var(--forest);
	font-size: var(--fs-32); font-weight: 700; text-align: center;
}
body.syntra-store ul.woocommerce-order-overview,
body.syntra-store .wc-block-order-confirmation-summary-list {
	display: flex; flex-wrap: wrap; gap: 0; margin: clamp(24px, 2.4vw, 46px) 0; padding: 0;
	background: var(--white); list-style: none;
}
body.syntra-store ul.woocommerce-order-overview li,
body.syntra-store .wc-block-order-confirmation-summary-list-item {
	flex: 1 1 180px; margin: 0; padding: 20px 24px;
	border: 0 !important; border-inline-end: 1px solid var(--sky) !important;
	font-size: 15px; text-transform: none;
}
body.syntra-store ul.woocommerce-order-overview li strong { display: block; margin-block-start: 6px; font-size: var(--fs-20); color: var(--navy); }
body.syntra-store .woocommerce-order-downloads,
body.syntra-store .wc-block-order-confirmation-downloads {
	padding: clamp(24px, 2.4vw, 46px); background: var(--sky); margin-block-end: clamp(24px, 2.4vw, 46px);
}
body.syntra-store .woocommerce-table--order-downloads td.download-file a,
body.syntra-store .woocommerce-MyAccount-downloads-file,
body.syntra-store .wc-block-order-confirmation-downloads a {
	display: inline-flex; align-items: center; min-height: 44px; padding: 0 1.4em;
	border-radius: var(--radius-pill); background: var(--navy); color: var(--white) !important;
	font-weight: 700; text-decoration: none;
}
body.syntra-store .woocommerce-customer-details address { border: 0; padding: 24px; background: var(--white); font-style: normal; }

/* ---------- My account ---------- */
body.syntra-store .woocommerce-MyAccount-navigation ul { display: flex; flex-direction: column; gap: 6px; }
body.syntra-store .woocommerce-MyAccount-navigation a {
	display: block; padding: 14px 20px; background: var(--white); color: var(--navy); text-decoration: none;
}
body.syntra-store .woocommerce-MyAccount-navigation .is-active a { background: var(--navy); color: var(--white); }

/* ---------- Product page ---------- */
body.syntra-store .shop div.product { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px, 4vw, 80px); align-items: start; }
body.syntra-store .shop div.product > * { width: auto !important; float: none !important; margin: 0 !important; }
body.syntra-store .shop div.product .summary { grid-column: 1 / -1; }
body.syntra-store .shop div.product:not(:has(.woocommerce-product-gallery)) .summary { grid-column: 1 / -1; }
body.syntra-store .shop .product_title { color: var(--black); }
body.syntra-store .shop .woocommerce-tabs { grid-column: 1 / -1; }
body.syntra-store .shop .woocommerce-tabs ul.tabs { padding: 0; }
body.syntra-store .shop .woocommerce-tabs ul.tabs li { border: 0; border-radius: var(--radius-pill); background: var(--white); }
body.syntra-store .shop .woocommerce-tabs ul.tabs li.active { background: var(--navy); }
body.syntra-store .shop .woocommerce-tabs ul.tabs li.active a { color: var(--white); }
body.syntra-store .shop .woocommerce-tabs ul.tabs::before,
body.syntra-store .shop .woocommerce-tabs ul.tabs li::before,
body.syntra-store .shop .woocommerce-tabs ul.tabs li::after { display: none; }
body.syntra-store .shop .woocommerce-breadcrumb { font-size: 15px; color: var(--blue); }
body.syntra-store .shop .woocommerce-breadcrumb a { color: var(--blue); }

/* ---------- Responsive ---------- */
@media (max-width: 900px) {
	body.syntra-store form.checkout { grid-template-columns: 1fr; }
	body.syntra-store form.checkout #order_review_heading,
	body.syntra-store form.checkout #order_review { grid-column: 1; grid-row: auto; }
	body.syntra-store .shop div.product { grid-template-columns: 1fr; }
}
