/*

Theme Name: Pro &ndash; Child Theme
Theme URI: https://theme.co/pro/
Author: Themeco
Author URI: https://theme.co/
Description: Make all of your modifications to Pro in this child theme.
Version: 1.0.0
Template: pro

*/
/* Tribe Events */
.tribe-events-calendar-list__event-row{background:#ffecc2; border-radius:.409em!important;padding:15px 0px 15px 0px!important;}
.tribe-events-pro-photo__event article{background:#ffecc2; border-radius:.409em!important;overflow:hidden;}
.tribe-events-pro-photo__event-details-wrapper{padding:15px 5px 15px 5px!important;}
.tribe-common a, .tribe-common a:active, .tribe-common a:focus, .tribe-common a:hover, .tribe-common a:visited{color:#f1be48!important;}

/* Hide counts in a specific Radio facet */
.facetwp-facet-listing_location .facetwp-counter {
    display: none;
}

.facetwp-facet-listing_location .facetwp-radio {
	background: none !important;
	display: inline-block !important;
	line-height: 1em !important;
	padding: 10px 12px !important; /* top/bottom right/left */
	margin: 0 8px 8px 0 !important; /* top right bottom left */
	border: 1px solid #2b2b2b !important;
	border-radius: 3px !important;
	color: #2b2b2b !important;
    }
 
/* Style the hover and 'checked' states */
.facetwp-facet-listing_location .facetwp-radio:hover,
.facetwp-facet-listing_location .facetwp-radio.checked {
	background-image: none !important;
	background-color: #2b2b2b !important;
	border-color: #2b2b2b !important;
	color: #ffffff !important;
    }

/* TEC */
.tribe-events-widget-events-list__view-more{display:none;}
.tribe-events-event-image img{width: 100%;border-top-left-radius: 0.409em;border-top-right-radius: 0.409em;border-bottom-right-radius: 0.409em;border-bottom-left-radius: 0.409em;aspect-ratio: auto;margin-bottom: 0;}

.tec-x-row{--gap: 25px;
  margin: 25px auto;
  border-radius: .409em;
  background:#fff;
  box-shadow: 0 0 1em .25em rgba(0,18,36,.11);
  padding: 1px;
  font-size: 1em;}

.tec-x-row-clear{--gap: 25px;
  margin: 25px auto;
  padding: 1px;
  font-size: 1em;}

.tec-x-row-clear-nomargin{--gap: 25px;
  margin: 0 auto;
  padding: 1px;
  font-size: 1em;}

.tec-x-row-inner{display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  align-items: stretch;}

.tec-x-col-clear{box-sizing: border-box;
  flex: 1 1 calc((100% - var(--gap)) / 2);
  padding: 25px;
}

.tec-x-col{
  border-radius: .409em;
  background:#fff;
  box-shadow: 0 0 1em .25em rgba(0,18,36,.11);
	box-sizing: border-box;
  flex: 1 1 calc((100% - var(--gap)) / 2);
  padding: 25px;
}

@media (max-width: 768px){
  .tec-x-col{ flex-basis: 100%; }
}

@media (max-width: 768px){
  .tec-x-col-clear{ flex-basis: 100%; }
}

.tec-x-col-nopadding{
  box-sizing: border-box;
  flex: 1 1 calc((100% - var(--gap)) / 2);
  padding: 0px;
}

/* =========================================================
   WooCommerce
   Brand neutrals: #2b2b2b (dark) / #f5f5f5 (light)
   Accent links & buttons: #007680
   Typography: inherit
   Radius: .409em
   Layout: Flex 
   ========================================================= */

/* ---------- Tokens ---------- */
:root {
  --wc-dark: #2b2b2b;
  --wc-light: #f5f5f5;
  --wc-border: #e0e0e0;
  --wc-muted: #fafafa;
  --wc-hover: #1d1d1d;
  --wc-accent: #007680;
  --wc-radius: .409em;
  --wc-shadow: 0 4px 20px rgba(0,0,0,.06);

  --wc-success: #16a34a;
  --wc-error: #dc2626;
  --wc-info: #2563eb;
}

/* =========================================================
   WooCommerce My Account – Full CSS (All-in-One)
   Brand neutrals: #2b2b2b (dark) / #f5f5f5 (light)
   Accent links & buttons: #007680
   Typography: inherit
   Radius: .409em
   Layout: Flex (stable with Woo defaults)
   ========================================================= */

/* ---------- Container & Layout ---------- */
.woocommerce-account .woocommerce {
  display: flex !important;              /* defeat Woo floats */
  gap: 2rem;
  align-items: flex-start;
  font-family: inherit;
  color: var(--wc-dark);
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important;
  width: auto !important;
  clear: none !important;
  margin: 0;
}

/* Sidebar */
.woocommerce-account .woocommerce-MyAccount-navigation {
  flex: 0 0 260px;
  max-width: 320px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: .6em;
  background: var(--wc-light);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  box-shadow: var(--wc-shadow);
}

.woocommerce-account .woocommerce-MyAccount-navigation li { margin: .25em 0; }

.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: block;
  padding: .65em .9em;
  border-radius: var(--wc-radius);
  color: var(--wc-accent);
  font-weight: 600;                         /* bold links */
  text-decoration: none;
  line-height: 1.4;
  transition: background .15s ease, color .15s ease, transform .1s ease;
  font-family: inherit;
}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible {
  background: var(--wc-accent);
  color: var(--wc-light);
  transform: translateY(-1px);
}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
  background: var(--wc-accent);
  color: var(--wc-light);
}

/* Content */
.woocommerce-account .woocommerce-MyAccount-content {
  flex: 1 1 0;
  min-width: 0;
  background: #fff;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  box-shadow: var(--wc-shadow);
  padding: 1.75em;
  line-height: 1.55;
}
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
  margin-top: 0;
  color: var(--wc-dark);
  font-family: inherit;
}
.woocommerce-account .woocommerce-MyAccount-content a {
  color: var(--wc-accent);
  font-weight: 600;                         /* bold links */
  text-decoration: none;
  transition: color .15s ease;
}
.woocommerce-account .woocommerce-MyAccount-content a:hover {
  color: var(--wc-hover);
  text-decoration: underline;
}
.woocommerce-account .woocommerce-MyAccount-content > * + * { margin-top: 1em; }

/* ---------- Notices (with icon gutter fix) ---------- */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-error,
.woocommerce .woocommerce-info {
  position: relative;
  border-radius: var(--wc-radius);
  border: 1px solid var(--wc-border);
  padding: .9em 1.2em .9em 3.5em;           /* space for ::before icon */
  margin-bottom: 1.25em;
  background: var(--wc-light);
  font-family: inherit;
  line-height: 1.55;
}

/* Align Woo's pseudo-element icons into the left gutter */
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-error::before,
.woocommerce .woocommerce-info::before {
  left: 1.2em !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
}

/* Optional tint */
.woocommerce .woocommerce-info::before { color: var(--wc-accent) !important; }

.woocommerce .woocommerce-message {
  border-color: rgba(22,163,74,.3);
  background: rgba(22,163,74,.05);
  color: var(--wc-success);
}
.woocommerce .woocommerce-error {
  border-color: rgba(220,38,38,.3);
  background: rgba(220,38,38,.05);
  color: var(--wc-error);
}
.woocommerce .woocommerce-info {
  border-color: rgba(37,99,235,.3);
  background: rgba(37,99,235,.05);
  color: var(--wc-info);
}

/* Buttons inside notices */
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-error .button,
.woocommerce .woocommerce-info .button { margin-left: .75em; }

/* ---------- Tables (Orders, Downloads) ---------- */
.woocommerce-account table.shop_table,
.woocommerce-account .woocommerce-orders-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  overflow: hidden;                          /* clip rounded corners */
  display: block;                            /* prevents wide tables from nudging layout */
  font-family: inherit;
}
.woocommerce-account table.shop_table thead { background: var(--wc-light); }
.woocommerce-account table.shop_table th,
.woocommerce-account table.shop_table td {
  padding: .9em 1em;
  border-bottom: 1px solid var(--wc-border);
  color: var(--wc-dark);
  vertical-align: middle;
}
.woocommerce-account .woocommerce-orders-table a {
  color: var(--wc-accent);
  font-weight: 600;
  text-decoration: none;
}

/* ---------- Forms (Login, Edit, Addresses) ---------- */
.woocommerce-account .woocommerce form .form-row { margin-bottom: .95em; }
.woocommerce-account .woocommerce form .form-row label {
  display: block;
  margin-bottom: .35em;
  font-size: .95em;
  color: var(--wc-dark);
  font-family: inherit;
}
.woocommerce-account .woocommerce form .form-row .required { color: var(--wc-error); }

.woocommerce-account .woocommerce form .form-row input.input-text,
.woocommerce-account .woocommerce form .form-row textarea {
  width: 100%;
  padding: .75em 1em;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  background: #fff;
  font-family: inherit;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.woocommerce-account .woocommerce form .form-row input.input-text:focus,
.woocommerce-account .woocommerce form .form-row textarea:focus {
  outline: none;
  border-color: var(--wc-accent);
  box-shadow: 0 0 0 3px rgba(0,118,128,.15);
}

/* Select2 alignment (addresses) */
.woocommerce-account .select2-container .select2-selection--single {
  height: auto !important;
  padding: .55em .9em !important;
  border-radius: var(--wc-radius) !important;
  border: 1px solid var(--wc-border) !important;
}
.woocommerce-account .select2-selection__rendered { 
  line-height: 1.4 !important; 
  padding-left: 0 !important; 
}
.woocommerce-account .select2-selection__arrow { height: 100% !important; }

/* ---------- Buttons ---------- */
.woocommerce-account .woocommerce-Button,
.woocommerce-account .button,
.woocommerce-account .woocommerce a.button {
  background: var(--wc-accent);
  color: var(--wc-light);
  border: 1px solid var(--wc-accent);
  border-radius: var(--wc-radius);
  padding: .7em 1.15em;
  font-family: inherit;
  font-weight: 600;                            /* bold CTAs */
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: .5em;
  transition: background .15s ease, transform .1s ease, box-shadow .15s ease;
}
.woocommerce-account .woocommerce-Button:hover,
.woocommerce-account .button:hover,
.woocommerce-account .woocommerce a.button:hover {
  background: var(--wc-hover);
  border-color: var(--wc-hover);
  transform: translateY(-1px);
  box-shadow: 0 8px 16px rgba(0,0,0,.08);
}
.woocommerce-account .woocommerce-Button:focus-visible,
.woocommerce-account .button:focus-visible,
.woocommerce-account .woocommerce a.button:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0,118,128,.25);
}

/* ---------- Address cards ---------- */
.woocommerce-account .woocommerce-Addresses .woocommerce-Address {
  background: var(--wc-light);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: 1.2em;
  box-shadow: var(--wc-shadow);
  font-family: inherit;
}
.woocommerce-account .woocommerce-Addresses .title h3 { margin: 0 0 .4em; }
.woocommerce-account .woocommerce-Addresses a.edit {
  color: var(--wc-accent);
  font-weight: 600;
  text-decoration: none;
}
.woocommerce-account .woocommerce-Addresses a.edit:hover { text-decoration: underline; }

/* ---------- Pagination ---------- */
.woocommerce-account nav.woocommerce-pagination ul {
  display: inline-flex;
  gap: .5em;
  padding: 0;
  margin: .5em 0 0;
  list-style: none;
}
.woocommerce-account nav.woocommerce-pagination a,
.woocommerce-account nav.woocommerce-pagination span {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 36px;
  height: 36px;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  color: var(--wc-accent);
  font-weight: 600;
  text-decoration: none;
}
.woocommerce-account nav.woocommerce-pagination .current {
  background: var(--wc-accent);
  border-color: var(--wc-accent);
  color: var(--wc-light);
}

/* ---------- Mobile ---------- */
@media (max-width: 900px) {
  .woocommerce-account .woocommerce { display: block !important; }
  .woocommerce-account .woocommerce-MyAccount-navigation { 
    margin-bottom: 1rem; 
    max-width: none; 
  }
  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: .5em;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation a { text-align: center; }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
  .woocommerce-account .button,
  .woocommerce-account .woocommerce-Button,
  .woocommerce-account .woocommerce-MyAccount-navigation a {
    transition: none !important;
    transform: none !important;
  }
}

/* ---------- Optional: System Dark Mode ---------- */
@media (prefers-color-scheme: dark) {
  :root {
    --wc-light: #2b2b2b;
    --wc-dark: #f5f5f5;
    --wc-border: #444;
    --wc-muted: #333;
    --wc-shadow: 0 4px 20px rgba(0,0,0,.4);
  }
  .woocommerce-account .woocommerce-MyAccount-content,
  .woocommerce-account .woocommerce-MyAccount-navigation ul { background: var(--wc-light); }
  .woocommerce-account .woocommerce-MyAccount-navigation a { color: var(--wc-accent); }
}

/* =========================================================
   WooCommerce BLOCKS – Cart, Checkout, Thank You, Mini-Cart
   Uses existing tokens: --wc-dark, --wc-light, --wc-border,
   --wc-muted, --wc-hover, --wc-accent, --wc-radius, --wc-shadow
   ========================================================= */

/* ---------- Base text + links ---------- */
body.woocommerce-cart :is(.wc-block-cart, .wc-block-components),
body.woocommerce-checkout :is(.wc-block-checkout, .wc-block-components),
.wc-block-order-confirmation,
.wc-block-mini-cart__drawer,
.wc-block-mini-cart-drawer {
  font-family: inherit;
  color: var(--wc-dark);
}
body.woocommerce-cart a,
body.woocommerce-checkout a,
.wc-block-order-confirmation a,
.wc-block-mini-cart__drawer a {
  color: var(--wc-accent);
  font-weight: 600;
  text-decoration: none;
  transition: color .15s ease;
}
body.woocommerce-cart a:hover,
body.woocommerce-checkout a:hover,
.wc-block-order-confirmation a:hover,
.wc-block-mini-cart__drawer a:hover {
  color: var(--wc-hover);
  text-decoration: none;
}

/* =========================================================
   CART
========================================================= */

.wp-block-woocommerce-cart .wc-block-components-main,
.wp-block-woocommerce-cart .wc-block-cart__main {
  background: #fff;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  box-shadow: var(--wc-shadow);
  padding: 1.25em;
}
.wp-block-woocommerce-cart .wc-block-components-sidebar {
  gap: 1.25rem;
}

.wc-block-cart-items {
  width: 100%;
  border-collapse: collapse;
}
.wc-block-cart-items__row td { padding: 1em 0; }
.wc-block-cart-items__row + .wc-block-cart-items__row { border-top: 1px solid var(--wc-border); }
.wc-block-cart-item__image img { border-radius: var(--wc-radius); }
.wc-block-cart-item__remove-link { color: var(--wc-accent); font-weight: 600; }

.wc-block-components-quantity-selector {
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  overflow: hidden;
}
.wc-block-components-quantity-selector__input { border: none !important; }

.wp-block-woocommerce-cart-order-summary-block {
  background: #fff;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  box-shadow: var(--wc-shadow);
  padding: 1.25em;
}
.wc-block-cart__totals-title {
  margin: 0 0 .6em;
  padding: 0 0 .6em;
  color: var(--wc-dark);
  border-bottom: 1px solid var(--wc-border);
}

.wc-block-components-totals-coupon.wc-block-components-panel {
  background: var(--wc-muted);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: .8em;
  box-shadow: none;
}

.wp-block-woocommerce-cart-order-summary-totals-block .wc-block-components-totals-wrapper,
.wp-block-woocommerce-cart-order-summary-block .wc-block-components-totals-wrapper {
  background: transparent; border: 0; box-shadow: none; padding: 0; margin: 0;
}
.wp-block-woocommerce-cart-order-summary-totals-block .wc-block-components-totals-item,
.wp-block-woocommerce-cart-order-summary-block .wc-block-components-totals-item {
  padding: .6em 0; border: 0; background: transparent;
}
.wp-block-woocommerce-cart-order-summary-totals-block .wc-block-components-totals-item + .wc-block-components-totals-item,
.wp-block-woocommerce-cart-order-summary-block .wc-block-components-totals-item + .wc-block-components-totals-item {
  border-top: 1px solid var(--wc-border);
}
.wc-block-components-totals-item__value,
.wc-block-components-formatted-money-amount { font-weight: 600; }

.wc-block-cart__submit-container {
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  background: var(--wc-light) !important;
  padding: 1em;
  box-shadow: var(--wc-shadow);
}
.wc-block-cart__submit-button {
  background: var(--wc-accent);
  color: var(--wc-light);
  border: 1px solid var(--wc-accent);
  border-radius: var(--wc-radius);
  padding: .75em 1.15em;
  font-weight: 600;
  display: inline-flex; align-items: center; gap: .5em;
  transition: background .15s ease, transform .1s ease, box-shadow .15s ease, color .15s ease;
}
.wc-block-cart__submit-button:hover {
  background: var(--wc-hover);
  border-color: var(--wc-hover);
  color: var(--wc-light);
  transform: translateY(-1px);
  box-shadow: 0 8px 16px rgba(0,0,0,.08);
}
.wc-block-cart__submit-button:hover .wc-block-components-button__text { color: var(--wc-light); }

/* =========================================================
   CHECKOUT
========================================================= */

.wc-block-checkout__form,
.wc-block-checkout__sidebar {
  background: #fff;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  box-shadow: var(--wc-shadow);
  padding: 1.25em;
}

.wc-block-components-checkout-step__title {
  margin: 0 0 .75em;
  color: var(--wc-dark);
}

.wc-block-components-text-input input,
.wc-block-components-text-input textarea,
.wc-block-components-address-form input,
.wc-block-components-address-form textarea,
.wc-blocks-components-select__select,
.wc-block-components-phone-input input {
  width: 100%;
  padding: .75em 1em;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  background: #fff;
  transition: border-color .15s ease, box-shadow .15s ease;
  font-family: inherit;
}
.wc-block-components-text-input input:focus,
.wc-block-components-text-input textarea:focus,
.wc-block-components-address-form input:focus,
.wc-block-components-address-form textarea:focus,
.wc-blocks-components-select__select:focus,
.wc-block-components-phone-input input:focus {
  outline: none;
  border-color: var(--wc-accent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--wc-accent) 15%, transparent);
}

.wc-block-components-shipping-rates-control__option,
.wc-block-checkout__payment-method {
  background: #fff;
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: .9em 1em;
}
.wc-block-components-radio-control__option:hover { background: var(--wc-muted); }

/* Hide payment method name text (e.g., "Stripe") */
.wc-block-checkout__payment-method .wc-block-components-radio-control__label > span { display: none; }

/* Keep Express Payment default styles – no overrides */

/* ----- Order Summary (sidebar) ----- */
.wc-block-components-checkout-order-summary__title {
  padding: 0 0 .6em;
  margin: 0 0 .6em;
  border-bottom: 1px solid var(--wc-border);
  background: transparent;
  box-shadow: none;
}

/* --- FIXED: Fully transparent summary container --- */
.wp-block-woocommerce-checkout-order-summary-block {
  background: transparent;
  border: 0!important;
  border-radius: 0!important;
  box-shadow: none;
  padding: 0;
}
@container (max-width: 699px)
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title{
  border-bottom: 0!important;
border-top: 0!important;
}
.wc-block-components-order-summary {
  overflow: hidden;
  background: transparent; border: 0; box-shadow: none; padding: 0;
}
.wc-block-components-order-summary__content { background: transparent; border: 0; box-shadow: none; padding: 0; }
.wc-block-components-order-summary-item {
  background: transparent; border: 0; padding: .6em 0;
}
.wc-block-components-order-summary-item + .wc-block-components-order-summary-item {
  border-top: 1px solid var(--wc-border);
}
.wc-block-components-totals-wrapper {
  background: transparent; border: 0; box-shadow: none; padding: 0; margin: 0;
}
.wc-block-components-totals-item {
  background: transparent; border: 0; padding: .6em 0;
}
.wc-block-components-totals-item + .wc-block-components-totals-item {
  border-top: 1px solid var(--wc-border);
}
.wc-block-components-totals-item__value,
.wc-block-components-order-summary-item__total,
.wc-block-components-formatted-money-amount { font-weight: 600; }

.wc-block-components-totals-coupon.wc-block-components-panel {
  background: var(--wc-muted);
  border: 1px solid var(--wc-border);
  border-radius: var(--wc-radius);
  padding: .8em;
  box-shadow: none;
}

.wc-block-checkout__actions_row { margin-top: 1em; }
.wc-block-components-checkout-place-order-button,
.wp-element-button.wc-block-components-button {
  background: var(--wc-accent);
  color: var(--wc-light);
  border: 1px solid var(--wc-accent);
  border-radius: var(--wc-radius);
  padding: .75em 1.15em;
  font-weight: 600;
  display: inline-flex; align-items: center; gap: .5em;
  transition: background .15s ease, transform .1s ease, box-shadow .15s ease;
}
.wc-block-components-checkout-place-order-button:hover,
.wp-element-button.wc-block-components-button:hover {
  background: var(--wc-hover);
  border-color: var(--wc-hover);
  transform: translateY(-1px);
  box-shadow: 0 8px 16px rgba(0,0,0,.08);
}

/* =========================================================
   NOTICES
========================================================= */

.wc-block-components-notice-banner,
.wc-block-components-error,
.wc-block-components-success {
  position: relative;
  border-radius: var(--wc-radius);
  border: 1px solid var(--wc-border);
  padding: .9em 1.2em .9em 3.5em;
  background: var(--wc-light);
  color: var(--wc-dark);
  margin: 1em 0;
  line-height: 1.55;
}
.wc-block-components-notice-banner::before,
.wc-block-components-error::before,
.wc-block-components-success::before {
  position: absolute; left: 1.2em; top: 50%; transform: translateY(-50%);
}

/* =========================================================
   THANK YOU / CONFIRMATION
========================================================= */

.wc-block-order-confirmation__title { margin: 0 0 .5em; color: var(--wc-dark); }
.wc-block-order-confirmation__intro,
.woocommerce-order-received .woocommerce-notice--success {
  position: relative;
  border: 1px solid color-mix(in srgb, #16a34a 30%, transparent);
  background: color-mix(in srgb, #16a34a 6%, #ffffff);
  color: #16a34a;
  border-radius: var(--wc-radius);
  padding: .9em 1.2em .9em 3.5em;
  margin: 1em 0 1.25em;
}
.wc-block-order-confirmation__intro::before,
.woocommerce-order-received .woocommerce-notice--success::before {
  content: "✓";
  font-weight: 700;
  position: absolute; left: 1.2em; top: 50%; transform: translateY(-50%);
}
.wc-block-order-confirmation-summary,
.wc-block-order-confirmation-totals,
.wc-block-order-confirmation-address,
.wc-block-order-confirmation-items,
.wc-block-order-confirmation-additional-fields {
  background:#fff; border:1px solid var(--wc-border);
  border-radius:var(--wc-radius); box-shadow:var(--wc-shadow); padding:1.25em;
}
.wc-block-order-confirmation-items__products,
.wc-block-order-confirmation-totals__table { width:100%; border-collapse:collapse; }
.wc-block-order-confirmation-items__products th,
.wc-block-order-confirmation-items__products td,
.wc-block-order-confirmation-totals__table th,
.wc-block-order-confirmation-totals__table td {
  padding:.75em .9em; border-bottom:1px solid var(--wc-border); vertical-align:middle; color:var(--wc-dark);
}
.wc-block-order-confirmation-totals__value,
.wc-block-order-confirmation-items__product-total { font-weight:600; }
.woocommerce-customer-details address,
.wc-block-order-confirmation-address__address {
  background: var(--wc-light); border:1px solid var(--wc-border);
  border-radius: var(--wc-radius); padding: 1em; margin: 0;
}

/* =========================================================
   MINI-CART
========================================================= */

.wc-block-mini-cart__button { color: var(--wc-accent); font-weight: 600; border-radius: var(--wc-radius); }
.wc-block-mini-cart__button:hover { color: var(--wc-hover); transform: translateY(-1px); }

.wc-block-mini-cart__badge {
  background: var(--wc-accent) !important; color: var(--wc-light) !important;
  border-radius: 999px !important; font-weight: 700 !important;
}

.wc-block-mini-cart__drawer .components-modal__screen-overlay,
.wc-block-mini-cart-drawer__screen-overlay { background: rgba(0,0,0,.45) !important; }
.wc-block-mini-cart__drawer .components-panel,
.wc-block-mini-cart-drawer__panel {
  background: #fff; border-left: 1px solid var(--wc-border);
  box-shadow: -8px 0 24px rgba(0,0,0,.12);
}
.wc-block-mini-cart__drawer .components-panel__header,
.wc-block-mini-cart-drawer__header {
  background: var(--wc-light);
  border-bottom: 1px solid var(--wc-border);
  padding: .9em 1em;
  font-weight: 600;
  color: var(--wc-dark);
}
.wc-block-mini-cart-items { padding: 1em; }
.wc-block-mini-cart-items__line-item {
  background:#fff; border:1px solid var(--wc-border);
  border-radius:var(--wc-radius); padding:.9em;
}
.wc-block-mini-cart-items__line-item + .wc-block-mini-cart-items__line-item { margin-top:.6em; }
.wc-block-mini-cart-item__product a { color: var(--wc-dark); text-decoration: none; }
.wc-block-mini-cart-item__product a:hover { color: var(--wc-hover); text-decoration: underline; }
.wc-block-mini-cart-item__total,
.wc-block-mini-cart__subtotal .wc-block-components-totals-item__value { font-weight: 600; }
.wc-block-mini-cart-item__remove-link { color: var(--wc-accent); font-weight: 600; }
.wc-block-mini-cart__subtotal { padding: .9em 1em; background:#fff; border-top:1px solid var(--wc-border); }
.wc-block-mini-cart__actions {
  padding: 1em; display: grid; gap: .6em; background: #fff; border-top: 1px solid var(--wc-border);
}
.wc-block-mini-cart__footer .wp-element-button,
.wc-block-mini-cart__button_view-cart,
.wc-block-mini-cart__button_checkout {
  background: var(--wc-accent) !important; color: var(--wc-light) !important;
  border: 1px solid var(--wc-accent) !important; border-radius: var(--wc-radius) !important;
  padding: .75em 1.15em !important; font-weight: 600 !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: .5em !important;
  transition: background .15s ease, transform .1s ease, box-shadow .15s ease !important;
}
.wc-block-mini-cart__footer .wp-element-button:hover,
.wc-block-mini-cart__button_view-cart:hover,
.wc-block-mini-cart__button_checkout:hover {
  background: var(--wc-hover) !important; border-color: var(--wc-hover) !important;
  transform: translateY(-1px); box-shadow: 0 8px 16px rgba(0,0,0,.08);
}

/* =========================================================
   Mobile tweaks
========================================================= */

@media (max-width: 900px) {
  .wp-block-woocommerce-cart .wc-block-cart-items { padding: 0 .75em; }
  .wp-block-woocommerce-cart .wc-block-components-main,
  .wp-block-woocommerce-cart .wc-block-components-sidebar,
  .wc-block-checkout__form,
  .wc-block-checkout__sidebar { padding: 1em; }
  .wc-block-mini-cart-items__line-item { padding: .75em; }
  .wc-block-mini-cart__actions { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .wc-block-cart__submit-button,
  .wc-block-components-checkout-place-order-button,
  .wp-element-button.wc-block-components-button { transition: none !important; transform: none !important; }
}

/* CART – mobile padding fix (targets your exact markup) */
@media (max-width: 900px) {

  /* 1) Pad the wrapper that contains the table */
  .wp-block-woocommerce-cart .wp-block-woocommerce-cart-items-block {
    padding-left: .85em !important;
    padding-right: .85em !important;
  }

  /* 2) Ensure the table itself doesn’t negate spacing */
  .wp-block-woocommerce-cart table.wc-block-cart-items {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    width: 100%;
  }

  /* 3) Add side padding to header + body cells */
  .wp-block-woocommerce-cart .wc-block-cart-items__header th,
  .wp-block-woocommerce-cart .wc-block-cart-items__row td {
    padding-left: .85em !important;
    padding-right: .85em !important;
  }

  /* 4) Keep product image from hugging the edge */
  .wp-block-woocommerce-cart .wc-block-cart-item__image {
    padding-left: .85em !important;
  }

  /* 5) A little vertical breathing room on rows */
  .wp-block-woocommerce-cart .wc-block-cart-items__row td {
    padding-top: 1em !important;
    padding-bottom: 1em !important;
  }
}