:root {
  --gk-primary: #9B58F6;
  --gk-primary-hover: #8B4BE6;
  --gk-primary-soft: #F7F1FF;
  --gk-text: #1F1147;
  --gk-muted: #64748B;
  --gk-border: #EADCFF;
  --gk-border-soft: #EEE7FF;
  --gk-card: #FFFFFF;
  --gk-radius: 16px;
  --gk-radius-sm: 10px;
  --gk-shadow: 0 10px 26px rgba(31, 17, 71, .055);
  --gk-shadow-hover: 0 14px 32px rgba(31, 17, 71, .10);
  --gk-shadow-button: 0 8px 18px rgba(155, 88, 246, .22);

  --theme-palette-color-1: #9B58F6;
  --theme-palette-color-2: #8B4BE6;
  --theme-link-initial-color: #9B58F6;
  --theme-link-hover-color: #8B4BE6;
  --theme-button-background-initial-color: #9B58F6;
  --theme-button-background-hover-color: #8B4BE6;
  --theme-button-text-initial-color: #FFFFFF;
  --theme-button-text-hover-color: #FFFFFF;
}

::selection {
  background: var(--gk-primary);
  color: #fff;
}

.wp-element-button,
.ct-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .button,
.woocommerce .added_to_cart,
button[type="submit"],
input[type="submit"] {
  border-radius: var(--gk-radius-sm);
  text-decoration: none;
  line-height: 1.25;
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .button,
.woocommerce .added_to_cart {
  background: var(--gk-primary);
  color: #fff;
  box-shadow: var(--gk-shadow-button);
  border-color: transparent;
  font-weight: 800;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce .button:hover,
.woocommerce .added_to_cart:hover {
  background: var(--gk-primary-hover);
  color: #fff;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.wc-block-grid__product {
  background: var(--gk-card);
  border: 1px solid var(--gk-border-soft);
  border-radius: 15px;
  padding: 14px;
  box-shadow: var(--gk-shadow);
  overflow: hidden;
  text-align: center;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover,
.wc-block-grid__product:hover {
  border-color: var(--gk-border);
  box-shadow: var(--gk-shadow-hover);
}

@media (hover: hover) {
  .woocommerce ul.products li.product:hover,
  .woocommerce-page ul.products li.product:hover,
  .wc-block-grid__product:hover {
    transform: translateY(-3px);
  }
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  display: flex;
  flex-direction: column;
}

.woocommerce ul.products li.product .woocommerce-LoopProduct-link,
.woocommerce-page ul.products li.product .woocommerce-LoopProduct-link,
.wc-block-grid__product-link {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  color: inherit;
  text-decoration: none;
}

.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product a img,
.woocommerce-page ul.products li.product img,
.wc-block-grid__product-image img {
  width: 100%;
  height: 175px;
  max-height: 175px;
  object-fit: contain;
  object-position: center;
  background: #fff;
  border-radius: 12px;
  padding: 8px;
  margin: 0 auto 12px;
  box-sizing: border-box;
  display: block;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title {
  color: var(--gk-text);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.45;
  min-height: 2.9em;
  margin: 0 0 7px;
  padding: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-align: center;
}

.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price,
.wc-block-grid__product-price {
  color: var(--gk-primary);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.35;
  margin: 0 0 12px;
  text-align: center;
  min-height: 1.35em;
}

.woocommerce ul.products li.product .price .amount,
.woocommerce-page ul.products li.product .price .amount,
.wc-block-grid__product-price .amount {
  color: var(--gk-primary);
  font-weight: 900;
}

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product a.added_to_cart,
.woocommerce-page ul.products li.product .button,
.woocommerce-page ul.products li.product .add_to_cart_button,
.woocommerce-page ul.products li.product a.added_to_cart,
.wc-block-grid__product-add-to-cart .wp-block-button__link {
  width: 100%;
  min-height: 38px;
  padding: 10px 12px;
  margin: auto 0 0;
  box-sizing: border-box;
  border-radius: 10px;
  background: var(--gk-primary);
  color: #fff;
  box-shadow: var(--gk-shadow-button);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.25;
  text-align: center;
  white-space: normal;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover,
.woocommerce ul.products li.product a.added_to_cart:hover,
.woocommerce-page ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .add_to_cart_button:hover,
.woocommerce-page ul.products li.product a.added_to_cart:hover,
.wc-block-grid__product-add-to-cart .wp-block-button__link:hover {
  background: var(--gk-primary-hover);
  color: #fff;
}

.woocommerce span.onsale {
  background: var(--gk-primary);
  color: #fff;
  border-radius: 999px;
  font-weight: 800;
}

.no-results,
.no-results.not-found,
.search-no-results .entry-content,
.ct-no-results,
.gk-empty-state,
.woocommerce-info,
.woocommerce-message,
.woocommerce-error,
.woocommerce-noreviews {
  border-radius: var(--gk-radius);
}

.no-results.not-found,
.search-no-results .entry-content,
.ct-no-results,
.gk-empty-state,
.woocommerce-info,
.woocommerce-message,
.woocommerce-noreviews {
  background: var(--gk-card);
  border: 1px solid var(--gk-border-soft);
  box-shadow: var(--gk-shadow);
}

.no-results.not-found,
.ct-no-results,
.gk-empty-state {
  text-align: center;
  padding: clamp(22px, 4vw, 40px);
}

.woocommerce-info,
.woocommerce-message {
  border-top-color: var(--gk-primary);
}

.woocommerce-info::before,
.woocommerce-message::before {
  color: var(--gk-primary);
}

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

.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--gk-border-soft);
  border-radius: 12px;
  background: #fff;
  color: var(--gk-primary);
  text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  border-color: var(--gk-border);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  background: var(--gk-primary);
  color: #fff;
  border-color: var(--gk-primary);
  box-shadow: var(--gk-shadow-button);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a span,
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a svg,
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a i {
  color: #fff;
  fill: currentColor;
  stroke: currentColor;
}

.woocommerce table.shop_table,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.checkout_coupon,
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review {
  border-color: var(--gk-border-soft);
  border-radius: var(--gk-radius);
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
select,
textarea,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
  border-color: var(--gk-border-soft);
  border-radius: 10px;
}

input:focus,
select:focus,
textarea:focus,
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
  border-color: var(--gk-primary);
  box-shadow: 0 0 0 3px rgba(155, 88, 246, .10);
  outline: none;
}

@media (max-width: 767px) {
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product,
  .wc-block-grid__product {
    padding: 12px;
    border-radius: 14px;
  }

  .woocommerce ul.products li.product a img,
  .woocommerce ul.products li.product img,
  .woocommerce-page ul.products li.product a img,
  .woocommerce-page ul.products li.product img,
  .wc-block-grid__product-image img {
    height: 140px;
    max-height: 140px;
    margin-bottom: 10px;
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .woocommerce-page ul.products li.product .woocommerce-loop-product__title,
  .wc-block-grid__product-title {
    font-size: 13px;
  }
}

:root {
  --gk-header-footer-bg: linear-gradient(135deg, #9B58F6 0%, #8B4BE6 100%);
  --gk-header-footer-line: rgba(234, 220, 255, .82);
  --gk-header-footer-text: #FFFFFF;
  --gk-header-footer-hover: #F7F1FF;
}

.ct-header,
.ct-header [data-row],
.ct-header [data-sticky],
header.ct-header,
#header,
#header [data-row],
[data-header*="type"] .ct-header,
[data-header*="type"] .ct-header [data-row] {
  background: var(--gk-header-footer-bg) !important;
  color: var(--gk-header-footer-text) !important;
}

.ct-header,
#header {
  border-bottom: 1px solid var(--gk-header-footer-line) !important;
  box-shadow: none;
}

.ct-header a,
.ct-header .menu a,
.ct-header .ct-header-text,
.ct-header .ct-label,
.ct-header [class*="menu"] a,
.ct-header [class*="account"] a,
.ct-header [class*="cart"] a,
.ct-header button,
.ct-header .ct-icon,
.ct-header svg,
#header a,
#header .menu a,
#header .ct-label,
#header button,
#header .ct-icon,
#header svg {
  color: var(--gk-header-footer-text) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

.ct-header a:hover,
.ct-header .menu a:hover,
.ct-header [class*="menu"] a:hover,
.ct-header button:hover,
#header a:hover,
#header .menu a:hover,
#header button:hover {
  color: var(--gk-header-footer-hover) !important;
}

.ct-header input[type="search"],
#header input[type="search"],
.ct-header .ct-search-form input,
#header .ct-search-form input {
  background: #FFFFFF !important;
  color: #1F1147 !important;
  border-color: var(--gk-header-footer-line) !important;
}

.ct-header input[type="search"]::placeholder,
#header input[type="search"]::placeholder {
  color: #64748B !important;
}

.ct-footer,
.ct-footer [data-row],
.ct-footer [data-column],
.ct-footer .ct-container,
.ct-footer .ct-footer-copyright,
.ct-footer .ct-widget,
.ct-footer .widget,
.ct-footer [class*="widget"],
.ct-footer .wp-block,
footer.ct-footer,
#footer,
#footer [data-row],
#footer [data-column],
#footer .widget,
#footer [class*="widget"],
[data-footer*="type"] .ct-footer,
[data-footer*="type"] .ct-footer [data-row] {
  background: transparent !important;
  color: var(--gk-header-footer-text) !important;
}

.ct-footer,
footer.ct-footer,
#footer,
[data-footer*="type"] .ct-footer {
  background: var(--gk-header-footer-bg) !important;
  color: var(--gk-header-footer-text) !important;
  border-top: 1px solid var(--gk-header-footer-line) !important;
}

.ct-footer [data-row] + [data-row],
#footer [data-row] + [data-row] {
  border-top: 1px solid var(--gk-header-footer-line) !important;
}

.ct-footer h1,
.ct-footer h2,
.ct-footer h3,
.ct-footer h4,
.ct-footer h5,
.ct-footer h6,
.ct-footer .widget-title,
.ct-footer p,
.ct-footer li,
.ct-footer span,
.ct-footer small,
.ct-footer strong,
.ct-footer .wp-block-heading,
.ct-footer .ct-footer-copyright,
#footer h1,
#footer h2,
#footer h3,
#footer h4,
#footer h5,
#footer h6,
#footer .widget-title,
#footer p,
#footer li,
#footer span,
#footer small,
#footer strong,
#footer .wp-block-heading,
#footer .ct-footer-copyright {
  color: var(--gk-header-footer-text) !important;
}

.ct-footer a,
.ct-footer .widget a,
.ct-footer [class*="widget"] a,
.ct-footer .menu a,
.ct-footer nav a,
#footer a,
#footer .widget a,
#footer [class*="widget"] a,
#footer .menu a,
#footer nav a {
  color: var(--gk-header-footer-text) !important;
  text-decoration-color: rgba(255, 255, 255, .55);
}

.ct-footer a:hover,
.ct-footer .widget a:hover,
.ct-footer [class*="widget"] a:hover,
.ct-footer .menu a:hover,
.ct-footer nav a:hover,
#footer a:hover,
#footer .widget a:hover,
#footer [class*="widget"] a:hover,
#footer .menu a:hover,
#footer nav a:hover {
  color: var(--gk-header-footer-hover) !important;
}

.ct-footer svg,
.ct-footer .ct-icon,
#footer svg,
#footer .ct-icon {
  color: var(--gk-header-footer-text) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

.ct-footer input,
.ct-footer textarea,
.ct-footer select,
#footer input,
#footer textarea,
#footer select {
  background: rgba(255, 255, 255, .96) !important;
  color: #1F1147 !important;
  border-color: var(--gk-header-footer-line) !important;
}

#main,
.site-main,
.ct-main,
#main-container main {
  flex-grow: 0 !important;
}

#main-container,
.site {
  min-height: auto !important;
}

.ct-footer,
footer.ct-footer,
#footer {
  margin-top: clamp(22px, 3vw, 46px) !important;
}

.elementor-element-29944a2 a.elementor-button,
.elementor-widget-button a.elementor-button[href*="/shop"],
.elementor-widget-button a.elementor-button[href$="/shop/"],
a.gk-browse-products,
a.gk-products-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 38px !important;
  padding: 10px 22px !important;
  border-radius: 10px !important;
  border: 1px solid var(--gk-primary) !important;
  background: var(--gk-primary) !important;
  color: #FFFFFF !important;
  box-shadow: var(--gk-shadow-button) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
}

.elementor-element-29944a2 a.elementor-button:hover,
.elementor-widget-button a.elementor-button[href*="/shop"]:hover,
.elementor-widget-button a.elementor-button[href$="/shop/"]:hover,
a.gk-browse-products:hover,
a.gk-products-button:hover {
  background: var(--gk-primary-hover) !important;
  border-color: var(--gk-primary-hover) !important;
  color: #FFFFFF !important;
}

.gkw-wallet-balance-meter,
.woocommerce-MyAccount-content .gkw-wallet-balance-meter {
  background: linear-gradient(180deg, #FFFFFF 0%, #F7F1FF 100%) !important;
  border: 1px solid var(--gk-border) !important;
  border-radius: 14px !important;
  box-shadow: var(--gk-shadow) !important;
  padding: clamp(16px, 2.4vw, 24px) !important;
  color: var(--gk-text) !important;
}

.gkw-wallet-balance-meter__label,
.gkw-wallet-balance-meter .gkw-wallet-balance-meter__label {
  color: var(--gk-muted) !important;
  font-weight: 700 !important;
}

.gkw-wallet-balance-meter__value,
.gkw-wallet-balance-meter .gkw-wallet-balance-meter__value,
.gkw-wallet-balance-meter .woocommerce-Price-amount,
.gkw-wallet-balance-meter .amount {
  color: var(--gk-text) !important;
  font-weight: 900 !important;
}

.gkw-wallet-balance-meter__value .amount,
.gkw-wallet-balance-meter__value .woocommerce-Price-amount {
  color: var(--gk-primary) !important;
}

.ct-drawer-canvas,
.ct-drawer-canvas .ct-panel,
.ct-panel,
.ct-panel-content,
.ct-panel-inner,
#offcanvas,
#offcanvas .ct-panel,
#offcanvas .ct-panel-content,
.ct-header .ct-panel,
.ct-header .ct-panel-content,
[data-behaviour*="side"] .ct-panel,
[data-behaviour*="modal"] .ct-panel {
  background: #FFFFFF !important;
  color: var(--gk-text) !important;
}

.ct-panel a,
.ct-panel button,
.ct-panel .ct-label,
.ct-panel .menu a,
.ct-panel .mobile-menu a,
.ct-panel .ct-menu-link,
#offcanvas a,
#offcanvas button,
#offcanvas .ct-label,
#offcanvas .menu a,
#offcanvas .mobile-menu a {
  color: var(--gk-text) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

.ct-panel a:hover,
.ct-panel button:hover,
.ct-panel .menu a:hover,
.ct-panel .mobile-menu a:hover,
.ct-panel .ct-menu-link:hover,
#offcanvas a:hover,
#offcanvas button:hover,
#offcanvas .menu a:hover,
#offcanvas .mobile-menu a:hover {
  color: var(--gk-primary) !important;
}

.ct-panel .mobile-menu li,
.ct-panel .menu li,
#offcanvas .mobile-menu li,
#offcanvas .menu li {
  border-color: var(--gk-border-soft) !important;
}

.ct-panel .ct-close-button,
#offcanvas .ct-close-button,
.ct-panel .ct-toggle-dropdown-mobile,
#offcanvas .ct-toggle-dropdown-mobile {
  background: var(--gk-primary-soft) !important;
  color: var(--gk-primary) !important;
  border-color: var(--gk-border) !important;
}

.ct-panel input[type="search"],
#offcanvas input[type="search"],
.ct-panel .ct-search-form input,
#offcanvas .ct-search-form input {
  background: #FFFFFF !important;
  color: var(--gk-text) !important;
  border: 1px solid var(--gk-border) !important;
}

@media (max-width: 767px) {
  .ct-footer,
  footer.ct-footer,
  #footer {
    margin-top: 24px !important;
  }

  .elementor-element-29944a2 a.elementor-button,
  .elementor-widget-button a.elementor-button[href*="/shop"] {
    min-height: 36px !important;
    padding: 9px 18px !important;
  }
}
