/* ============ WOOCOMMERCE STYLES ============ */
.woocommerce-account .woocommerce{
	    max-width: var(--max-width);
    margin: 0 auto;
}
.woocommerce-account .entry-header .entry-title {
    text-align: center;
}



.wp-block-woocommerce-checkout {
    max-width: var(--max-width);
    margin: 50px auto;
}

.woocommerce-form-login, .woocommerce-form-register {
    margin: 50px auto;
}
.single-product div.product .product_title.entry-title{
    color: var(--purple-dark);
    display: block !important;
    justify-content: center;
    text-align: center;
}
.woocommerce div.product .woocommerce-product-details__short-description a{
	color: var(--red);
	text-decoration: underline;
}

.single-product div.product .woocommerce-tabs .panel iframe{
	margin-top: 20px;
}
.wc-block-grid__products{
	display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: var(--max-width);
    margin: 50px auto 0;
}
a.added_to_cart.wc-forward {
    font-size: 0.8em;
    text-transform: capitalize;
    margin-top: 10px;
    text-decoration: underline !important;
    color: var(--purple-dark);
    position: absolute;
    bottom: -22px;
    left: 9px;
}
.wc-block-grid.has-4-columns .wc-block-grid__product{
	max-width: unset;
	    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    background: #fff;
    border-radius: 16px;
    padding: 30px 24px !important;
    border: 1px solid var(--border);
    border-top-width: 4px;
    border-top-color: var(--purple-mid);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    transition: transform 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.wc-block-grid__products .wc-block-grid__product-image img {
	display: none;
}
.wc-block-grid__product .wc-block-grid__product-title{
	text-align: start;
	text-decoration: none;
	    font-family: var(--font-heading);
    font-weight: 700;
    font-size: 16px;
    color: var(--purple-deep);
    padding: 0;
    margin-bottom: 12px;
    line-height: 1.375;
}

.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link{
    margin-top: 15px;
    display: inline-block;
    background: var(--red-btn);
    color: #fff;
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: 13px;
    width: fit-content;
    padding: 10px 20px;
    border-radius: 9999px;
    border: none;
    cursor: pointer;
    transition: transform 0.25s ease, background-color 0.25s ease;
}
.wc-block-cart__empty-cart__title.with-empty-cart-icon:before{
	display: none;
}
.wc-block-grid__product .wc-block-grid__product-price{
	font-family: var(--font-heading);
    font-weight: 800;
    font-size: 20px;
    color: var(--purple-dark);
}

section.pd-shop-section--categories{
	background-color: var(--purple-bg-light);
		padding: 70px 0;
}
.pd-shop-section .container, .pd-shop-how .container{
	max-width: var(--max-width)!important;
    margin: 0 auto!important;
}

select#ticket-type {
    padding: 10px;
    border-radius: 50px;
    border: 1px solid #452e86;
    margin-left: 15px;
}

h2.pd-shop-section__title{
	color: var(--purple-dark);
	margin-bottom: 30px;
	font-weight: 800;
    font-size: 32px;
}

.pd-category-cards{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.pd-category-card{
    background: white;
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 30px 25px;
    text-align: start;
		transition: 0.3s ease all;
}

.pd-category-card:hover {
  transform: translateY(-4px);
	  box-shadow: 0 12px 28px -6px rgba(0,0,0,0.12);
	transition: 0.3s ease all;
}

.pd-category-card__img-link img{
	height: 20px;
	
}

.pd-category-card__body h3{
	color: var(--purple-dark);
    margin: 10px 0 5px;
}

.pd-category-card__desc {
    font-size: 13.6px;
    line-height: 1.625;
    color: var(--text-muted);
	margin-bottom: 10px;
}

.pd-category-card__cta{
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: 13.6px;
    color: var(--red);
    transition: transform 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.tax-product_cat .page-title,
.tax-product_cat .term-description {
  display: none;
}

.page-hero__breadcrumbs a,
.page-hero__breadcrumbs span{
font-family: "Plus Jakarta Sans";
font-size: 14px;
font-style: normal;
font-weight: 400;
line-height: 22.3px;
}


.page-hero__breadcrumbs a{
color: #5B5B74;
transition: 0.3s ease all;
}

.page-hero__breadcrumbs a:hover{
color: #DF202E;
transition: 0.3s ease all;
}

.page-hero__breadcrumbs span{
color: #452E86;
}


/* Promo banner */
section.promo-banner {
    background: white;
    padding: 40px 0 0;
}

section.promo-banner .container {
        background: linear-gradient(169deg, #edebff 0%, #dffcfd 50%, #dffee4 100%);
        border-radius: 12px;
        padding: 40px 30px;
	display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    }

section.promo-banner .container h2{
	color: var(--purple-dark);
	margin-bottom: 10px;
}

.btn-primary {
  display: inline-block;
  background: var(--red-btn);
  color: #fff;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 14.5px;
  padding: 14px 28px;
  border-radius: 9999px;
  transition: transform 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              box-shadow 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              background-color 0.25s ease;
}

.btn-primary:hover {
  transform: translateY(-2px);
  background-color: #c9403d;
  box-shadow: 0 6px 20px -4px rgba(222, 78, 75, 0.35);
}

.products-intro{
	padding: 0 0 30px;
}

h2.category-intro__heading{
	color: var(--purple-dark);
	margin-bottom: 5px;
}

.category-intro__text {
    color: var(----text-muted);
}

/* Product grid */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
    max-width: var(--max-width);
    margin: 50px auto 40px;
    padding: 0 5%;
}

.woocommerce ul.products li.product {
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
  background: #fff;
  border-radius: 16px;
  padding: 30px 24px !important;
  border: 1px solid var(--border);
  border-top-width: 4px;
  border-top-color: var(--purple-mid);
  box-shadow: 0 1px 3px rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1);
  display: flex;
  flex-direction: column;
  transition: transform 0.25s cubic-bezier(0.25,0.46,0.45,0.94),
              box-shadow 0.25s cubic-bezier(0.25,0.46,0.45,0.94);
}

.archive.woocommerce ul.products li.product ,
.single-product.woocommerce ul.products li.product {
	  padding: 30px 24px !important;
}
.woocommerce ul.products li.product:nth-child(6n + 1) {
  border-top-color: var(--blue);
}

.woocommerce ul.products li.product:nth-child(6n + 2) {
  border-top-color: var(--green);
}

.woocommerce ul.products li.product:nth-child(6n + 3) {
  border-top-color: var(--purple-light);
}

.woocommerce ul.products li.product:nth-child(6n + 4) {
  border-top-color: var(--red-light);
}

.woocommerce ul.products li.product:nth-child(6n + 5) {
  border-top-color: var(--orange-accent);
}

.woocommerce ul.products li.product:nth-child(6n + 6) {
  border-top-color: var(--green-bg);
}

.woocommerce ul.products li.product:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px -4px rgba(0,0,0,0.12);
}

.woocommerce ul.products li.product a {
  text-decoration: none;
}

.woocommerce ul.products li.product a img {
  border-radius: 12px;
  margin-bottom: 16px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 16px;
  color: var(--purple-deep);
  padding: 0;
  margin-bottom: 12px;
  line-height: 1.375;
  flex: 1;
}

.woocommerce ul.products li.product .price {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 20px;
  color: var(--purple-dark);
  margin-bottom: 16px;
}

.woocommerce ul.products li.product .price del {
  color: var(--text-muted);
  font-weight: 400;
}

.woocommerce ul.products li.product .price ins {
  text-decoration: none;
  background: none;
}
p.woocommerce-product-excerpt {
    font-size: 0.9em;
    margin-bottom: 15px;
    color: var(--text-muted);
}
span.onsale {
    position: absolute;
    top: -14px;
    right: 20px;
    background: var(--red-btn);
    border-radius: 50px;
    padding: 3px 12px;
    color: white;
    font-size: 0.85em;
}

.woocommerce ul.products li.product .price del {
	font-size: 0.7em;
}
.woocommerce ul.products li.product .button {
	margin-top: 15px;
  display: inline-block;
  background: var(--red-btn);
  color: #fff;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 13px;
  width: fit-content;
  padding: 10px 20px;
  border-radius: 9999px;
  border: none;
  cursor: pointer;
  transition: transform 0.25s ease, background-color 0.25s ease;
}

.woocommerce ul.products li.product .button.btn-outline{
	background: transparent;
    color: var(--purple-dark);
    border: 2px solid var(--purple-dark);
}
.pd-card-buttons {
	display: flex;
	gap: 10px;
	align-items: stretch;
	
	position: relative;
}

.pd-card-buttons .button {
	flex: 1;          /* each button takes equal width */
	margin: 0;        /* remove default theme button spacing */
	text-align: center;
}

.woocommerce ul.products li.product .button:hover {
  transform: translateY(-2px);
  background-color: #c9403d;
}

/* Single product */
.woocommerce div.product {
  padding: 0;
}

.woocommerce div.product div.images {
  border-radius: 16px;
  overflow: hidden;
}

.woocommerce div.product .product_title {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 28px;
  color: var(--text-dark);
  margin-bottom: 16px;
}

.woocommerce div.product p.price {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 24px;
  color: var(--purple-dark);
  margin-bottom: 20px;
}

.woocommerce div.product .woocommerce-product-details__short-description {
  font-size: 15px;
  line-height: 1.75;
  color: var(--text-body);
  margin-bottom: 24px;
}

.woocommerce div.product form.cart .button {
  display: inline-block;
  background: var(--red-btn);
  color: #fff;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 15px;
  padding: 14px 28px;
  border-radius: 9999px;
  border: none;
  cursor: pointer;
  transition: transform 0.25s ease, background-color 0.25s ease;
}

.woocommerce div.product form.cart .button:hover {
  transform: translateY(-2px);
  background-color: #c9403d;
}

.woocommerce div.product .woocommerce-tabs {
  margin-top: 48px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  list-style: none;
  display: flex;
  gap: 0;
  border-bottom: 2px solid var(--border);
  padding: 0;
  margin: 0 0 24px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  display: block;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 14px;
  color: var(--text-muted);
  padding: 12px 20px;
  border-bottom: 2px solid transparent;
  margin-bottom: -2px;
  transition: color 0.25s ease;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--purple-dark);
  border-bottom-color: var(--purple-dark);
}

.single-product div.product .related h2{
	text-align: center;
}

.single-product div.product .related{
	margin-bottom: 50px;
}

/* Cart */

.woocommerce table.shop_table {
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
}

.woocommerce table.shop_table th {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 13px;
  color: var(--text-dark);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  background: var(--purple-bg-light);
  padding: 16px;
}

.woocommerce table.shop_table td {
  padding: 16px;
  font-size: 14px;
}

.woocommerce .cart-collaterals .cart_totals {
  float: none;
  width: 100%;
  max-width: 480px;
  margin-left: auto;
}

/* Checkout */
.woocommerce form .form-row label {
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 13px;
  color: var(--text-dark);
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  border: 1.5px solid var(--border);
  border-radius: 10px;
  padding: 12px 16px;
  font-size: 14px;
  color: var(--text-dark);
  width: 100%;
  transition: border-color 0.25s ease;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
  border-color: var(--purple-mid);
  outline: none;
}

.woocommerce #place_order {
  background: var(--red-btn);
  color: #fff;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 15px;
  padding: 14px 28px;
  border-radius: 9999px;
  border: none;
  cursor: pointer;
  transition: transform 0.25s ease, background-color 0.25s ease;
}

.woocommerce #place_order:hover {
  transform: translateY(-2px);
  background-color: #c9403d;
}

/* Notices */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info {
  border-top-color: var(--purple-dark);
  background: var(--purple-bg-light);
  border-radius: 10px;
}

.woocommerce .woocommerce-error {
  border-top-color: var(--red);
  background: var(--red-bg);
  border-radius: 10px;
}

/* Result count and ordering */
.woocommerce .woocommerce-result-count,
form.woocommerce-ordering {
  display: none;
}

.woocommerce .woocommerce-ordering select {
  border: 1.5px solid var(--border);
  border-radius: 10px;
  padding: 10px 16px;
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--text-dark);
  background: #fff;
  margin-bottom: 24px;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination {
  margin-top: 48px;
  text-align: center;
}

.woocommerce nav.woocommerce-pagination ul {
  display: flex;
  justify-content: center;
  gap: 8px;
  border: none;
}

.woocommerce nav.woocommerce-pagination ul li {
  border: none;
  margin: 0;
  padding: 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 12px;
  border-radius: 10px;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 14px;
  color: var(--text-body);
  background: #fff;
  border: 1.5px solid var(--border);
  transition: all 0.25s ease;
  text-decoration: none;
}

.woocommerce nav.woocommerce-pagination ul li a:hover {
  border-color: var(--purple-dark);
  color: var(--purple-dark);
  transform: translateY(-2px);
}

.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--purple-dark);
  color: #fff;
  border-color: var(--purple-dark);
}

/* Category description on archive */
.woocommerce .term-description {
  font-size: 15px;
  line-height: 1.75;
  color: var(--text-body);
  margin-bottom: 32px;
  max-width: 720px;
}

/* Single product layout improvements */
.product-speaker {
	margin: 8px 0;
	font-size: 0.95rem;
	font-weight: 400;
	color: var(--purple-dark);
}

.woocommerce ul.products li.product img.product-time-length__icon {
    display: flex !important;
	margin-bottom: 0;
}
.product-time-length {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 20px 0 15px;
	font-size: 0.95rem;
	font-weight: 300;
    color: var(--text-muted);
}

.product-time-length__icon {
	width: 16px;
	height: 16px;
	display: inline-block;
	flex: 0 0 16px;
}

.product-time-length__tilde,
.product-time-length__text {
	line-height: 1;
}
.woocommerce div.product div.summary {
  font-family: var(--font-body);
}

.woocommerce div.product .woocommerce-product-details__short-description p,
.woocommerce div.product .woocommerce-Tabs-panel p {
  font-size: 15px;
  line-height: 1.75;
  color: var(--text-body);
  margin-bottom: 16px;
}

/* Related products heading */
.woocommerce div.product .related > h2,
.woocommerce div.product .upsells > h2 {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 24px;
  color: var(--purple-dark);
  margin-bottom: 24px;
}

/* Breadcrumb */
.woocommerce .woocommerce-breadcrumb {
  font-family: var(--font-body);
  font-size: 13px;
  color: var(--text-muted);
  margin-bottom: 24px;
}

.woocommerce .woocommerce-breadcrumb a {
  color: var(--purple-dark);
  text-decoration: none;
}

.woocommerce .woocommerce-breadcrumb a:hover {
  text-decoration: underline;
}

/* Responsive */
@media (max-width: 768px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 480px) {
  .woocommerce ul.products {
    grid-template-columns: 1fr;
  }
}

/* Category hero pills */
.page-hero__pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  gap: 12px;
  list-style: none;
  padding: 0;
  margin: 24px 0 0;
}

.page-hero__pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 18px;
  background: #fff;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 600;
  color: #452E86;
font-family: "Plus Jakarta Sans";
font-size: 14px;
font-style: normal;
font-weight: 600;
line-height: 22.3px;
  line-height: 1.2;
}

.page-hero__pill-icon {
  width: 18px;
  height: 18px;
  object-fit: contain;
  flex-shrink: 0;
}

/* Category page footer note */
.category-footer-note {
  margin: 48px auto 50px;
  padding: 28px 32px;
  background: var(--purple-bg-light, #f4f1fb);
  border-radius: 16px;
  text-align: center;
  color: var(--text-body, #5B5B74);
  font-size: 15px;
  line-height: 1.7;
}

.category-footer-note :last-child {
  margin-bottom: 0;
}

.category-footer-note a {
  color: var(--purple-dark, #452E86);
  font-weight: 600;
  text-decoration: none;
  transition: color 0.3s ease;
}

.category-footer-note a:hover {
  color: #DF202E;
}



/* ==========================================================================
   Shop Page Redesign (pd-shop-*)
   migrated from Code Snippets
   ========================================================================== */
.pd-shop-hero{background:linear-gradient(135deg,#e8f4f8 0%,#d0f0e8 30%,#f5e8d0 70%,#f0e0d8 100%);padding:64px 0 56px}
.pd-shop-hero .container{max-width:860px;margin:0 auto;padding:0 32px}
.pd-shop-section .container,.pd-shop-how .container{max-width:1140px;margin:0 auto;}
.pd-shop-badge{display:inline-block;background:#ffe4c4;color:#c47400;font-size:11px;font-weight:700;letter-spacing:.08em;padding:4px 14px;border-radius:20px;margin-bottom:20px;text-transform:uppercase}
.pd-shop-hero__title{font-size:46px;font-weight:800;color:#1a1a3e;line-height:1.15;margin-bottom:16px}
.pd-shop-hero__title-red{color:#e84040}
.pd-shop-hero__desc{font-size:16px;color:#555;line-height:1.7;margin-bottom:24px;max-width:560px}
.pd-shop-hero__badges{display:flex;flex-wrap:wrap;gap:10px}
.pd-shop-hero__badge{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#555;background:rgba(255,255,255,.75);border:1px solid rgba(0,0,0,.1);padding:6px 14px;border-radius:20px}
.pd-shop-section{padding:60px 0}
.pd-shop-section-label{margin-bottom:12px}
.pd-shop-section-tag{display:inline-block;background:#ffe4c4;color:#c47400;font-size:11px;font-weight:700;letter-spacing:.08em;padding:4px 12px;border-radius:20px;text-transform:uppercase}
.pd-shop-section-tag--blue{background:#e0e8ff;color:#3355cc}
.pd-shop-section-title{font-size:26px;font-weight:800;color:#1a1a3e;margin-bottom:28px}
.pd-shop-bestsellers{background:#fff}
.pd-shop-bestsellers__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pd-bestseller-card{background:#fff;border:1.5px solid #e8e8f0;border-radius:12px;padding:28px 20px 20px;position:relative;display:flex;flex-direction:column}
.pd-bestseller-card__badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);font-size:10px;font-weight:700;letter-spacing:.08em;padding:4px 14px;border-radius:20px;text-transform:uppercase;white-space:nowrap}
.pd-bestseller-card__badge--green{background:#00b274;color:#fff}
.pd-bestseller-card__badge--blue{background:#3388cc;color:#fff}
.pd-bestseller-card__badge--red{background:#e84040;color:#fff}
.pd-bestseller-card__title{font-size:15px;font-weight:700;color:#1a1a3e;margin-bottom:8px;line-height:1.4}
.pd-bestseller-card__desc{font-size:13px;color:#666;line-height:1.6;flex:1;margin-bottom:16px}
.pd-bestseller-card__footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f0f0f5;padding-top:12px;margin-top:auto}
.pd-price-current{font-size:20px;font-weight:700;color:#1a1a3e}
.pd-price-old{font-size:13px;color:#aaa;text-decoration:line-through;margin-left:6px}
.pd-bestseller-card__link{font-size:13px;font-weight:600;color:#e84040;text-decoration:none}
.pd-bestseller-card__link:hover{text-decoration:underline}
.pd-shop-categories{background:#f4f2ff}
.pd-shop-categories__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pd-cat-card{background:#fff;border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:12px;text-decoration:none !important;color:inherit !important;border:1px solid #e8e8f0;transition:box-shadow .2s,transform .2s;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.pd-cat-card:hover{box-shadow:0 6px 24px rgba(0,0,0,.1);transform:translateY(-2px)}
.pd-cat-card__icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center}
.pd-cat-card__header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pd-cat-card__title{font-size:15px;font-weight:700;color:#1a1a3e;margin:0}
.pd-cat-card__price-badge{font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;white-space:nowrap;text-transform:uppercase}
.pd-cat-card__price-badge--teal{background:#d0f5ee;color:#0a6650}
.pd-cat-card__price-badge--green{background:#d4f5d4;color:#1a7a1a}
.pd-cat-card__price-badge--purple{background:#ede8ff;color:#5533aa}
.pd-cat-card__price-badge--orange{background:#ffe4c4;color:#c47400}
.pd-cat-card__price-badge--blue{background:#ddeeff;color:#1155aa}
.pd-cat-card__price-badge--sasc{background:#e8f5e8;color:#2a6a2a}
.pd-cat-card__desc{font-size:13px;color:#666;line-height:1.6;flex:1}
.pd-cat-card__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
.pd-cat-card__tag{font-size:11px;color:#555;background:#f0f0f8;border-radius:20px;padding:3px 10px}
.pd-shop-how{background:#fff;text-align:center}
.pd-shop-how .container{max-width:960px}
.pd-shop-how__title{font-size:30px;font-weight:800;color:#1a1a3e;margin-bottom:36px}
.pd-shop-how__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:28px}
.pd-shop-how__step{background:#fafafa;border:1px solid #e8e8f0;border-radius:16px;padding:28px 24px}
.pd-shop-how__num{font-size:36px;font-weight:800;color:#e84040;margin-bottom:12px}
.pd-shop-how__step-title{font-size:16px;font-weight:700;color:#1a1a3e;margin-bottom:8px}
.pd-shop-how__step-desc{font-size:13px;color:#666;line-height:1.6}
.pd-shop-how__contact{font-size:14px;color:#666}
.pd-shop-how__contact a{color:#e84040}
@media(max-width:900px){.pd-shop-bestsellers__grid,.pd-shop-categories__grid,.pd-shop-how__grid{grid-template-columns:1fr}.pd-shop-hero__title{font-size:30px}}


/* ==========================================================================
   Cart Page – WooCommerce Blocks Styling
   ========================================================================== */

/* --- Page heading (entry-header) --- */
.woocommerce-cart .entry-header {
  padding: 48px 48px 32px;
  background: linear-gradient(135deg, #e8f4f8 0%, #d0f0e8 30%, #f5e8d0 70%, #f0e0d8 100%);
  margin-bottom: 0;
}

.woocommerce-cart .entry-header .entry-title {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 42px;
  color: var(--purple-deep);
  margin: 0;
  line-height: 1.15;
}

/* --- Content area (entry-content) --- */
.woocommerce-cart .entry-content {
  padding: 40px 32px 64px;
  background: var(--purple-bg-light);
  min-height: 60vh;
}

/* --- Block cart outer wrapper --- */
.wp-block-woocommerce-cart {
  max-width: 100%;
}

/* --- Sidebar layout: force side-by-side --- */
.wc-block-components-sidebar-layout.wc-block-cart {
  flex-wrap: nowrap !important;
  gap: 32px;
  align-items: flex-start;
}

.wc-block-components-sidebar-layout.wc-block-cart .wc-block-components-main {
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0;
  padding-right: 0 !important;
}

.wc-block-components-sidebar-layout.wc-block-cart .wc-block-components-sidebar {
  flex: 0 0 340px !important;
  width: 340px !important;
  min-width: 0;
  padding-left: 0 !important;
}

/* --- Cart items table --- */
.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block {
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid var(--border);
  box-shadow: 0 1px 3px rgba(0,0,0,0.06);
  background: #fff!important;
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-total,
table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-image{
	background: white!important;
}

/* Table header row */
.wc-block-cart-items__header {
  background: var(--purple-bg-light);
}

.wc-block-cart-items__header th {
  font-family: var(--font-heading) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--text-label) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.07em !important;
  padding: 13px 20px !important;
  border-bottom: 1px solid var(--border) !important;
  white-space: nowrap !important;
}

/* Table item rows */
.wc-block-cart-items__row td {
  padding: 16px 20px !important;
  border-bottom: 1px solid var(--border-light) !important;
  vertical-align: top !important;
  border-top: none !important;
}

.wc-block-cart-items__row:last-child td {
  border-bottom: none;
}

.wc-block-cart-items__row:hover td {
  background: #fafafe;
}

/* Product image cell */
.wc-block-cart-item__image {
  width: 80px !important;
  padding-right: 0 !important;
}

.wc-block-cart-item__image a {
  display: block;
  width: 68px;
  height: 68px;
  border-radius: 10px;
  overflow: hidden;
  flex-shrink: 0;
}

.wc-block-cart-item__image img {
  width: 68px !important;
  height: 68px !important;
  object-fit: cover;
  border-radius: 10px;
}

/* Product info cell */
.wc-block-cart-item__product {
  padding-left: 16px !important;
}

.wc-block-cart-item__wrap {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

/* Product name */
.wc-block-components-product-name {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 15px;
  color: var(--purple-deep) !important;
  text-decoration: none !important;
  line-height: 1.4;
  display: block;
  margin-bottom: 2px;
}

.wc-block-components-product-name:hover {
  color: var(--red-btn) !important;
}

/* Product price in product cell */
.wc-block-cart-item__prices .price,
.wc-block-cart-item__prices .wc-block-components-product-price {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 14px;
  color: var(--purple-dark);
}

/* Product meta description */
.wc-block-components-product-metadata {
  font-family: var(--font-body);
  font-size: 13px;
  color: var(--text-muted);
  line-height: 1.5;
  margin-top: 2px;
  margin-bottom: 8px;
}

/* Quantity selector */
.wc-block-cart-item__quantity {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 8px;
}

.wc-block-components-quantity-selector {
  display: inline-flex;
  align-items: center;
  border: 1.5px solid var(--border);
  border-radius: 999px;
  overflow: hidden;
  background: #fff;
  height: 36px;
}

.wc-block-components-quantity-selector__input {
  width: 40px;
  text-align: center;
  border: none;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 14px;
  color: var(--text-dark);
  background: transparent;
  padding: 0;
  -moz-appearance: textfield;
  outline: none;
}

.wc-block-components-quantity-selector__input::-webkit-outer-spin-button,
.wc-block-components-quantity-selector__input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

.wc-block-components-quantity-selector__button {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0 10px;
  height: 100%;
  font-size: 18px;
  color: var(--purple-dark);
  font-weight: 700;
  line-height: 36px;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.wc-block-components-quantity-selector__button:hover {
  background: var(--purple-light);
  color: var(--purple-deep);
}

/* Remove (trash) button */
.wc-block-cart-item__remove-link {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--text-muted);
  padding: 6px;
  border-radius: 8px;
  transition: color 0.2s ease, background 0.2s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.wc-block-cart-item__remove-link:hover {
  color: var(--red);
  background: var(--red-bg);
}

/* Row total price */
.wc-block-cart-item__total {
  text-align: right;
  white-space: nowrap;
}

.wc-block-cart-item__total .price,
.wc-block-cart-item__total .wc-block-components-product-price {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 16px;
  color: var(--purple-dark);
}

/* --- Cart sidebar / totals panel --- */
.wp-block-woocommerce-cart-order-summary-block {
  background: #fff;
  border-radius: 16px;
  border: 1px solid var(--border);
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06);
  margin-bottom: 16px;
}

/* Totals title needs !important to override WC block container queries */
.wc-block-cart__totals-title {
  font-family: var(--font-heading) !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  color: var(--purple-deep) !important;
  padding: 16px 20px 14px !important;
  margin: 0 !important;
  border-bottom: 1px solid var(--border-light) !important;
  background: var(--purple-bg-light) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.07em !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Coupon / totals wrappers inside order summary */
.wp-block-woocommerce-cart-order-summary-coupon-form-block,
.wp-block-woocommerce-cart-order-summary-totals-block {
  padding: 0 16px;
}

.wc-block-components-totals-wrapper {
  padding: 12px 16px;
  border-bottom: 1px solid var(--border-light);
}

.wc-block-components-totals-wrapper:last-child {
  border-bottom: none;
}

/* Coupon accordion toggle */
.wc-block-components-panel__button {
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 14px;
  color: var(--purple-dark);
  background: none;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0;
  width: 100%;
  text-align: left;
  transition: color 0.2s ease;
}

.wc-block-components-panel__button:hover {
  color: var(--red-btn);
}

/* Totals row */
.wc-block-components-totals-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

.wc-block-components-totals-item__label {
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--text-body);
}

.wc-block-components-totals-item__value {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 14px;
  color: var(--text-dark);
}

/* Footer / estimated total row */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  font-family: var(--font-heading);
  font-size: 15px;
  font-weight: 700;
  color: var(--purple-deep);
}

.wc-block-components-totals-footer-item .wc-block-formatted-money-amount,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-family: var(--font-heading);
  font-size: 20px;
  font-weight: 800;
  color: var(--purple-dark);
}

/* --- Proceed to Checkout button --- */
.wc-block-cart__submit {
  padding: 0;
  margin-top: 16px;
}

.wc-block-cart__submit-container {
  padding: 0;
}

.wc-block-cart__submit-button.contained,
.wc-block-cart__submit-button {
  display: block !important;
  width: 100% !important;
  background: var(--red-btn) !important;
  color: #fff !important;
  font-family: var(--font-heading) !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  padding: 14px 28px !important;
  border-radius: 999px !important;
  border: none !important;
  cursor: pointer !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: transform 0.25s ease, background-color 0.25s ease !important;
}

.wc-block-cart__submit-button.contained:hover,
.wc-block-cart__submit-button:hover {
  transform: translateY(-2px) !important;
  background-color: #c9403d !important;
  color: #fff !important;
}

.wc-block-components-button__text {
  font-family: var(--font-heading);
  font-weight: 700;
}

/* Payment options area (express checkout, etc.) */
.wc-block-cart__payment-options {
  margin-bottom: 12px;
}

/* --- Cart notices --- */
.wc-block-components-notices {
  margin-bottom: 20px;
}

.wc-block-components-notice-banner {
  border-radius: 10px;
  border-left: 4px solid var(--purple-dark);
  background: var(--purple-bg-light);
  padding: 12px 16px;
  font-size: 14px;
  color: var(--text-dark);
}

/* --- Empty cart state --- */
.wp-block-woocommerce-empty-cart-block {
  text-align: center;
  padding: 56px 32px;
}

.wc-block-cart__empty-cart__title {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 24px;
  color: var(--purple-dark);
  margin-bottom: 12px;
}

/* Back to shop link in empty cart */
.wc-block-cart__empty-cart__image + * a,
.wp-block-woocommerce-empty-cart-block a.wc-block-components-button {
  display: inline-block;
  background: var(--red-btn);
  color: #fff;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 14px;
  padding: 12px 28px;
  border-radius: 999px;
  text-decoration: none;
  transition: transform 0.25s ease, background-color 0.25s ease;
}

.wp-block-woocommerce-empty-cart-block a.wc-block-components-button:hover {
  transform: translateY(-2px);
  background-color: #c9403d;
}

/* --- Responsive --- */
@media (max-width: 960px) {
  .woocommerce-cart .entry-header {
    padding: 32px 24px 24px;
  }

  .woocommerce-cart .entry-header .entry-title {
    font-size: 30px;
  }

  .woocommerce-cart .entry-content {
    padding: 28px 20px 48px;
  }

  .wc-block-components-sidebar-layout.wc-block-cart {
    flex-wrap: wrap !important;
  }

  .wc-block-components-sidebar-layout.wc-block-cart .wc-block-components-main {
    flex: 1 1 100% !important;
    width: 100% !important;
  }

  .wc-block-components-sidebar-layout.wc-block-cart .wc-block-components-sidebar {
    flex: 1 1 100% !important;
    width: 100% !important;
  }
}


/* ==========================================================================
   My Account Page – Styling
   ========================================================================== */

/* --- Page header / hero --- */
.woocommerce-account .entry-header,
.woocommerce-checkout .entry-header{
  padding: 48px 48px 32px;
  background: linear-gradient(135deg, #e8f4f8 0%, #d0f0e8 30%, #f5e8d0 70%, #f0e0d8 100%);
  margin-bottom: 0;
}
.woocommerce-account .entry-header .entry-title, .woocommerce-checkout .entry-header .entry-title {
    text-align: center;
}

.woocommerce-account .entry-header .entry-title,
.woocommerce-checkout .entry-header .entry-title{
  font-family: var(--font-heading);
  font-weight: 800;
	text-transform: capitalize;
  font-size: 42px;
  color: var(--purple-deep);
  margin: 0;
  line-height: 1.15;
}

/* --- Main content area --- */
.woocommerce-account .entry-content {
  padding: 0;
  background: var(--purple-bg-light);
  min-height: 60vh;
}

/* --- Inner woocommerce wrapper: two-column layout --- */
.woocommerce-account .woocommerce {
  display: flex;
  align-items: flex-start;
  gap: 0;
  max-width: 100%;
  padding: 0;
}

/* --- Left nav sidebar --- */
.woocommerce-MyAccount-navigation {
  flex: 0 0 320px;
  width: 320px;
  background: #fff;
  border-right: 1px solid var(--border);
  min-height: 60vh;
  padding: 24px 0;
}

.woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-MyAccount-navigation ul li {
  margin: 0;
  padding: 0;
  border: none;
}

.woocommerce-MyAccount-navigation ul li a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 24px;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 14px;
  color: var(--text-body);
  text-decoration: none;
  border-left: 3px solid transparent;
  transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.woocommerce-MyAccount-navigation ul li a:hover {
  color: var(--purple-dark);
  background: var(--purple-bg-light);
  border-left-color: var(--purple-mid);
}

.woocommerce-MyAccount-navigation ul li.is-active a {
  color: var(--purple-deep);
  background: var(--purple-section);
  border-left-color: var(--purple-dark);
  font-weight: 700;
}

/* Logout link – red tint */
.woocommerce-MyAccount-navigation-link--customer-logout a {
  color: var(--text-muted) !important;
}

.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
  color: var(--red) !important;
  background: var(--red-bg) !important;
  border-left-color: var(--red) !important;
}

/* --- Right content panel --- */
.woocommerce-MyAccount-content {
  flex: 1 1 0;
  min-width: 0;
  padding: 40px 48px 56px;
  background: var(--purple-bg-light);
}

/* --- Dashboard welcome message --- */
.woocommerce-MyAccount-content p {
  font-family: var(--font-body);
  font-size: 15px;
  color: var(--text-body);
  line-height: 1.75;
  margin-bottom: 12px;
}

.woocommerce-MyAccount-content p strong {
  color: var(--purple-deep);
  font-weight: 700;
}

.woocommerce-MyAccount-content p a {
  color: var(--purple-dark);
  font-weight: 600;
  text-decoration: none;
  transition: color 0.2s ease;
}

.woocommerce-MyAccount-content p a:hover {
  color: var(--red-btn);
  text-decoration: underline;
}

/* --- Section headings inside content --- */
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
  font-family: var(--font-heading);
  font-weight: 800;
  color: var(--purple-deep);
  margin-bottom: 20px;
  line-height: 1.2;
}

.woocommerce-MyAccount-content h2 {
  font-size: 22px;
	margin-bottom: 0;
}

.woocommerce-MyAccount-content h3 {
  font-size: 18px;
  margin-top: 32px;
}

/* --- Orders / Downloads table --- */
.woocommerce-account .woocommerce-orders-table,
.woocommerce-account .woocommerce-MyAccount-downloads {
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid var(--border);
  box-shadow: 0 1px 3px rgba(0,0,0,0.06);
  border-collapse: separate;
  border-spacing: 0;
  background: #fff;
}

.woocommerce-account .woocommerce-orders-table thead,
.woocommerce-account .woocommerce-MyAccount-downloads thead {
  background: var(--purple-bg-light);
}

.woocommerce-account .woocommerce-orders-table th,
.woocommerce-account .woocommerce-MyAccount-downloads th {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 11px;
  color: var(--text-label);
  text-transform: uppercase;
  letter-spacing: 0.07em;
  padding: 13px 20px;
  border-bottom: 1px solid var(--border);
  white-space: nowrap;
  text-align: left;
}

.woocommerce-account .woocommerce-orders-table td,
.woocommerce-account .woocommerce-MyAccount-downloads td {
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--text-body);
  padding: 16px 20px;
  border-bottom: 1px solid var(--border-light);
  vertical-align: middle;
}

.woocommerce-account .woocommerce-orders-table tr:last-child td,
.woocommerce-account .woocommerce-MyAccount-downloads tr:last-child td {
  border-bottom: none;
}

.woocommerce-account .woocommerce-orders-table tbody tr:hover td {
  background: #fafafe;
}

/* Order number link */
.woocommerce-orders-table__cell-order-number a {
  font-family: var(--font-heading);
  font-weight: 700;
  color: var(--purple-dark);
  text-decoration: none;
}

.woocommerce-orders-table__cell-order-number a:hover {
  color: var(--red-btn);
  text-decoration: underline;
}

/* Order status badge */
.woocommerce-orders-table__cell-order-status mark {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 700;
  font-family: var(--font-heading);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background: var(--purple-light);
  color: var(--purple-dark);
}

.woocommerce-orders-table__cell-order-status mark.order-status-completed {
  background: var(--green-bg);
  color: var(--green-dark);
}

.woocommerce-orders-table__cell-order-status mark.order-status-processing {
  background: #e0f2fe;
  color: #0369a1;
}

.woocommerce-orders-table__cell-order-status mark.order-status-cancelled,
.woocommerce-orders-table__cell-order-status mark.order-status-failed {
  background: var(--red-bg);
  color: var(--red);
}

.woocommerce-orders-table__cell-order-status mark.order-status-on-hold {
  background: var(--orange-bg);
  color: var(--orange-dark);
}

/* View order button */
.woocommerce-orders-table__cell-order-actions .woocommerce-button,
.woocommerce-orders-table__cell-order-actions a.button,
.woocommerce-orders-table__cell-order-actions a {
  display: inline-block;
  background: var(--purple-deep);
  color: #fff;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 12px;
  padding: 6px 16px;
  border-radius: 999px;
  text-decoration: none;
  transition: background-color 0.2s ease, transform 0.2s ease;
  border: none;
  cursor: pointer;
}

.woocommerce-orders-table__cell-order-actions .woocommerce-button:hover,
.woocommerce-orders-table__cell-order-actions a.button:hover,
.woocommerce-orders-table__cell-order-actions a:hover {
  background: var(--purple-dark);
  transform: translateY(-1px);
}

/* Empty state messages */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info {
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--text-body);
  padding: 14px 20px;
  border-radius: 10px;
  background: var(--purple-bg-light);

  margin-bottom: 20px;
}

.woocommerce-account .woocommerce-message a,
.woocommerce-account .woocommerce-info a {
  color: var(--purple-dark);
  font-weight: 600;
  text-decoration: none;
}

.woocommerce-account .woocommerce-message a:hover,
.woocommerce-account .woocommerce-info a:hover {
  color: var(--red-btn);
}

/* --- Account details form --- */
.woocommerce-EditAccountForm,
.woocommerce-address-fields form,
.woocommerce-form-login,
.woocommerce-form-register {
  width: 100%;
  max-width: 560px;
}

/* Form field rows – side by side for first/last name */
.woocommerce-account .woocommerce-form-row,
.woocommerce-account .form-row {
  margin-bottom: 18px;
  position: relative;
}

.woocommerce-account .form-row-first,
.woocommerce-account .form-row-last {
  display: inline-block;
  width: calc(50% - 8px);
  vertical-align: top;
}

.woocommerce-account .form-row-first {
  margin-right: 16px;
}

/* Labels */
.woocommerce-account .woocommerce-form-row label,
.woocommerce-account .form-row label {
  display: block;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 13px;
  color: var(--text-dark);
  margin-bottom: 6px;
}

/* Required star */
.woocommerce-account .woocommerce-form-row label .required,
.woocommerce-account .form-row label .required {
  color: var(--red);
  font-weight: 700;
  margin-left: 2px;
}

/* Input fields */
.woocommerce-account .woocommerce-form-row input.woocommerce-Input,
.woocommerce-account .woocommerce-form-row input[type="text"],
.woocommerce-account .woocommerce-form-row input[type="email"],
.woocommerce-account .woocommerce-form-row input[type="password"],
.woocommerce-account .woocommerce-form-row input[type="tel"],
.woocommerce-account .form-row input.woocommerce-Input,
.woocommerce-account .form-row input[type="text"],
.woocommerce-account .form-row input[type="email"],
.woocommerce-account .form-row input[type="password"],
.woocommerce-account .form-row input[type="tel"],
.woocommerce-account .form-row textarea,
.woocommerce-account .form-row select {
  width: 100%;
  border: 1.5px solid var(--border);
  border-radius: 10px;
  padding: 11px 14px;
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--text-dark);
  background: #fff;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
  outline: none;
  box-sizing: border-box;
}

.woocommerce-account .woocommerce-form-row input:focus,
.woocommerce-account .form-row input:focus,
.woocommerce-account .form-row textarea:focus,
.woocommerce-account .form-row select:focus {
  border-color: var(--purple-mid);
  box-shadow: 0 0 0 3px rgba(107,78,199,0.12);
}

/* Helper text */
.woocommerce-account .form-row em,
.woocommerce-account .woocommerce-form-row em {
  display: block;
  font-size: 12px;
  color: var(--text-muted);
  margin-top: 4px;
  font-style: italic;
}

/* Fieldset (password change section) */
.woocommerce-account fieldset {
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 20px 24px;
  margin: 24px 0;
  background: #fff;
}

.woocommerce-account fieldset legend {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 14px;
  color: var(--purple-dark);
  padding: 0 8px;
}

/* Password strength meter */
.woocommerce-account .woocommerce-password-strength {
  font-size: 12px;
  font-family: var(--font-body);
  padding: 4px 10px;
  border-radius: 6px;
  margin-top: 6px;
  display: inline-block;
}

.woocommerce-account a.woocommerce-Button.wc-forward.button{
	color: white!important;
}
/* Form submit button */
.woocommerce-account .woocommerce-Button,
.woocommerce-account button[type="submit"],
.woocommerce-account input[type="submit"] {
  display: inline-block;
  background: var(--red-btn);
  color: #fff;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 14px;
  padding: 12px 28px;
  border-radius: 999px;
  border: none;
  cursor: pointer;
  transition: transform 0.25s ease, background-color 0.25s ease;
  margin-top: 8px;
}

.woocommerce-account .woocommerce-Button:hover,
.woocommerce-account button[type="submit"]:hover,
.woocommerce-account input[type="submit"]:hover {
  transform: translateY(-2px);
  background-color: #c9403d;
}

/* --- Addresses page --- */
.woocommerce-account .woocommerce-Addresses {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.woocommerce-account .woocommerce-Address {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.woocommerce-account .woocommerce-Address-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--border-light);
}

.woocommerce-account .woocommerce-Address-title h3 {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 16px;
  color: var(--purple-deep);
  margin: 0;
}

.woocommerce-account .woocommerce-Address-title .edit {
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 12px;
  color: var(--purple-dark);
  text-decoration: none;
  padding: 4px 12px;
  border: 1.5px solid var(--purple-dark);
  border-radius: 999px;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.woocommerce-account .woocommerce-Address-title .edit:hover {
  background: var(--purple-dark);
  color: #fff;
}

.woocommerce-account address {
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--text-body);
  line-height: 1.75;
  font-style: normal;
}

.woocommerce-account .woocommerce-Address p {
  color: var(--text-muted);
  font-size: 13px;
  font-style: italic;
}

/* --- Login / Register forms (logged-out state) --- */
.woocommerce-account .u-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  max-width: 900px;
  margin: 50px auto;
}

.woocommerce-account .u-column1,
.woocommerce-account .u-column2 {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 32px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.woocommerce-account .woocommerce-form-login h2,
.woocommerce-account .woocommerce-form-register h2 {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 20px;
  color: var(--purple-deep);
  margin-bottom: 20px;
  margin-top: 0;
}

/* Login "remember me" checkbox row */
.woocommerce-account .woocommerce-form__label-for-checkbox {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--text-body);
  cursor: pointer;
  margin-bottom: 16px;
}

.woocommerce-account .woocommerce-form__label-for-checkbox input[type="checkbox"] {
  width: 16px;
  height: 16px;
  accent-color: var(--purple-mid);
  cursor: pointer;
  flex-shrink: 0;
}

/* Lost password link */
.woocommerce-account .woocommerce-LostPassword a,
.woocommerce-account .lost_password a {
  font-family: var(--font-body);
  font-size: 13px;
  color: var(--text-muted);
  text-decoration: none;
  transition: color 0.2s ease;
}

.woocommerce-account .woocommerce-LostPassword a:hover,
.woocommerce-account .lost_password a:hover {
  color: var(--red-btn);
  text-decoration: underline;
}

/* Register privacy note */
.woocommerce-account .woocommerce-privacy-policy-text {
  font-size: 12px;
  color: var(--text-muted);
  line-height: 1.6;
  margin-top: 12px;
}

.woocommerce-account .woocommerce-privacy-policy-text a {
  color: var(--purple-dark);
}

/* --- Notices inside my account --- */
.woocommerce-account .woocommerce-notices-wrapper .woocommerce-message {
  display: flex;
  align-items: center;
  gap: 12px;
  background: var(--green-bg);
  border-left-color: var(--green-dark);
  color: var(--green-dark);
}

.woocommerce-account .woocommerce-notices-wrapper .woocommerce-error {
  background: var(--red-bg);
  border-left-color: var(--red);
  color: var(--red);
}

@media (max-width: 1150px) {
.pd-card-buttons {
    flex-direction: column;
    gap: 0;
}
.woocommerce ul.products li.product .button {
    margin-top: 12px;
    width: 100%;
}
}

/* --- Responsive --- */
@media (max-width: 900px) {
  .woocommerce-account .entry-header {
    padding: 32px 24px 24px;
  }

  .woocommerce-account .entry-header .entry-title {
    font-size: 30px;
  }

  .woocommerce-account .woocommerce {
    flex-direction: column;
  }

  .woocommerce-MyAccount-navigation {
    flex: none;
    width: 100%;
    min-height: auto;
    border-right: none;
    border-bottom: 1px solid var(--border);
    padding: 0;
  }

  .woocommerce-MyAccount-navigation ul {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
  }

  .woocommerce-MyAccount-navigation ul li a {
    padding: 10px 16px;
    border-left: none;
    border-bottom: 3px solid transparent;
  }

  .woocommerce-MyAccount-navigation ul li.is-active a {
    border-left: none;
    border-bottom-color: var(--purple-dark);
  }

  .woocommerce-MyAccount-content {
    padding: 28px 20px 48px;
  }

  .woocommerce-account .form-row-first,
  .woocommerce-account .form-row-last {
    display: block;
    width: 100%;
    margin-right: 0;
  }

  .woocommerce-account .woocommerce-Addresses {
    grid-template-columns: 1fr;
  }

  .woocommerce-account .u-columns {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 763px) {
section.promo-banner .container {
    flex-direction: column;
    align-items: start;
    gap: 20px;
}
	.wc-block-grid__products{
		grid-template-columns: repeat(2, 1fr);
	}
}

.wc-block-components-form .wc-block-components-text-input input:-webkit-autofill, .wc-block-components-form .wc-block-components-text-input.is-active input[type=email], .wc-block-components-form .wc-block-components-text-input.is-active input[type=number], .wc-block-components-form .wc-block-components-text-input.is-active input[type=password], .wc-block-components-form .wc-block-components-text-input.is-active input[type=tel], .wc-block-components-form .wc-block-components-text-input.is-active input[type=text], .wc-block-components-form .wc-block-components-text-input.is-active input[type=url], .wc-block-components-text-input input:-webkit-autofill, .wc-block-components-text-input.is-active input[type=email], .wc-block-components-text-input.is-active input[type=number], .wc-block-components-text-input.is-active input[type=password], .wc-block-components-text-input.is-active input[type=tel], .wc-block-components-text-input.is-active input[type=text], .wc-block-components-text-input.is-active input[type=url] {
    padding: 24px 9px 8px;
    border-radius: 6px;
}

h2.wp-block-heading.has-text-align-center,
.wp-block-separator.is-style-dots,
.woocommerce-cart .wc-block-grid.wp-block-product-new.wp-block-woocommerce-product-new.wc-block-product-new.has-4-columns{
	display: none;
}

h2.wp-block-heading.has-text-align-center.with-empty-cart-icon.wc-block-cart__empty-cart__title{
	display: block;
}
body.single-product div.product .woocommerce-product-gallery,
body.single-product div.product div.images,
body.single-product div.product .woocommerce-product-gallery__wrapper,
body.single-product div.product .woocommerce-product-gallery__image {
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
}

body.single-product div.product {
	display: flex;
	flex-direction: column;
	align-items: center;
}

body.single-product div.product .woocommerce-product-gallery,
body.single-product div.product div.images {
	float: none !important;
	width: 100%;
	max-width: 520px;
	margin: 0 auto 40px;
	text-align: center;
}

body.single-product div.product .woocommerce-product-gallery img,
body.single-product div.product div.images img {
	display: block;
	margin: 0 auto;
	width: 100%;
	height: auto;
}

body.single-product div.product .summary {
	float: none !important;
	width: 100%;
	max-width: 720px;
	margin: 0 auto;
	text-align: center;
}
.single-product div.product .woocommerce-tabs .panel h2{
	margin-bottom: 5px;
	    color: var(--purple-dark);
}

.single-product div.product .related a h2 {
    text-align: start;
}