.elementor-kit-8{--e-global-color-primary:#1F1F1F;--e-global-color-secondary:#F4F4F2;--e-global-color-text:#2E2E2E;--e-global-color-accent:#C6A44F;--e-global-color-28b4a1f:#0A1A2F;--e-global-typography-primary-font-family:"Outfit";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Alexandria";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Alexandria";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Outfit";--e-global-typography-accent-font-weight:500;--e-global-typography-2bc8abf-font-family:"Alexandria";--e-global-typography-2bc8abf-font-size:0.8rem;--e-global-typography-2bc8abf-font-weight:400;--e-global-typography-2bc8abf-text-transform:none;--e-global-typography-2bc8abf-letter-spacing:-0.2px;--e-global-typography-97b962b-font-family:"Outfit";--e-global-typography-97b962b-font-size:1.7em;--e-global-typography-97b962b-font-weight:500;--e-global-typography-5157b55-font-family:"Outfit";--e-global-typography-01db390-font-family:"Outfit";--e-global-typography-01db390-font-size:0.8rem;--e-global-typography-01db390-font-weight:400;background-color:transparent;color:var( --e-global-color-text );font-family:"Alexandria", Sans-serif;font-size:16px;background-image:linear-gradient(90deg, #FFFFFF 1%, #E2E2E2 100%);}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{background-color:var( --e-global-color-text );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );color:var( --e-global-color-secondary );border-style:none;border-radius:0px 0px 0px 0px;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 h1{font-family:"Outfit", Sans-serif;font-size:2.5rem;font-weight:700;line-height:1.1rem;}.elementor-kit-8 h2{font-family:"Outfit", Sans-serif;font-size:2rem;font-weight:600;line-height:2.2rem;}.elementor-kit-8 h3{font-family:"Outfit", Sans-serif;font-size:1.5rem;font-weight:600;line-height:1.3rem;}.elementor-kit-8 h4{font-size:1.25rem;font-weight:600;}.elementor-kit-8 h5{font-size:1.1rem;font-weight:600;}.elementor-kit-8 h6{font-size:0.95rem;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:100%;}.e-con{--container-max-width:100%;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ================================================
   C-SIDE COLLECTIVE — MASTER CSS
   ================================================ */


/* ================================================
   1. GLOBAL TYPOGRAPHY & VARIABLES
   ================================================ */
:root {
  --font-display: "Outfit", system-ui, -apple-system, sans-serif;
  --font-body: "Alexandria", system-ui, -apple-system, sans-serif;
  --fs-body: 1rem;
  --cs-btn-h: 42px;
  --cs-btn-radius: 999px;
  --cs-btn-gap: 14px;
  --cs-btn-font: var(--font-body);
  --cs-btn-font-size: 16px;
  --cs-btn-font-weight: 600;
  --cs-btn-letter-spacing: 0.01em;
  --cs-btn-bg: #000;
  --cs-btn-text: #fff;
  --cs-panel-width: 450px;
  --cs-panel-bg: #fff;
  --cs-panel-shadow: -4px 0 24px rgba(13,31,60,0.12);
  --cs-overlay-bg: rgba(13,31,60,0.45);
  --cs-brand: #0A1A2F;
}

html { font-size: 16px; }
body { font-family: var(--font-body); font-size: var(--fs-body); line-height: 1.6; }
h1, .hero-title { font-family: var(--font-display); font-size: 2.5rem; font-weight: 700; line-height: 1.1; }
h2 { font-family: var(--font-display); font-size: 2rem; font-weight: 600; line-height: 1.2; }
h3 { font-family: var(--font-display); font-size: 1.5rem; font-weight: 600; line-height: 1.3; }
h4, h5, h6 { font-family: var(--font-display); font-weight: 600; }
.main-menu a { font-family: var(--font-body); font-size: 0.85rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }

@media (max-width: 767px) {
  h1, .hero-title { font-size: 2rem; }
  h2 { font-size: 1.5rem; }
  h3 { font-size: 1.25rem; }
}


/* ================================================
   2. SHARED OVERLAY
   ================================================ */
.csc-overlay {
  position: fixed; inset: 0;
  background: var(--cs-overlay-bg);
  z-index: 9998; opacity: 0; pointer-events: none;
  transition: opacity 0.25s ease;
}
.csc-overlay.active { opacity: 1; pointer-events: all; }


/* ================================================
   3. SEARCH PANEL
   ================================================ */
.elementor-element-5196623 { display: none !important; }

button.csc-search-trigger,
.elementor button.csc-search-trigger,
.e-con button.csc-search-trigger {
  background: none !important; background-color: transparent !important;
  box-shadow: none !important; border: none !important;
  border-radius: 8px !important; padding: 0 !important;
  width: 40px !important; height: 40px !important;
  cursor: pointer; color: var(--cs-brand);
  display: flex; align-items: center; justify-content: center;
  transition: background 0.15s;
}
.csc-search-trigger:hover { background: rgba(13,31,60,0.08) !important; }
.csc-search-trigger svg { width: 22px; height: 22px; stroke: var(--cs-brand); fill: none; stroke-width: 2; }

.csc-search-bar {
  position: fixed; top: 0; right: 0; bottom: 0;
  width: var(--cs-panel-width);
  background: var(--cs-panel-bg);
  z-index: 9999; display: flex; flex-direction: column;
  padding: 72px 28px 32px; gap: 16px;
  transform: translateX(100%);
  transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
  box-shadow: var(--cs-panel-shadow);
  overflow-y: auto;
}
.csc-search-bar.active { transform: translateX(0); }

.csc-close-btn {
  position: absolute; top: 0; right: 0;
  background: var(--cs-brand) !important; border: none !important;
  cursor: pointer; color: #fff;
  width: 48px; height: 48px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 0; transition: opacity 0.15s; z-index: 1;
}
.csc-close-btn:hover { opacity: 0.8 !important; }
.csc-close-btn svg { width: 20px; height: 20px; stroke: #fff; }

.csc-input-row { display: flex !important; gap: 0 !important; align-items: stretch !important; width: 100% !important; }

#cscProxyInput {
  flex: 1 !important; height: 48px !important;
  border: 1px solid rgba(13,31,60,0.2) !important;
  border-right: none !important; border-radius: 0 !important;
  padding: 0 16px !important; font-size: 15px !important;
  background: #f5f4f2 !important; color: var(--cs-brand) !important;
  outline: none !important; -webkit-appearance: none !important; min-width: 0 !important;
  font-family: var(--font-body) !important;
}
#cscProxyInput:focus { border-color: var(--cs-brand) !important; background: #fff !important; }

#cscSubmit {
  height: 48px !important; padding: 0 24px !important;
  background: var(--cs-brand) !important; color: #fff !important;
  border: none !important; border-radius: 0 !important;
  font-size: var(--cs-btn-font-size) !important; font-family: var(--cs-btn-font) !important;
  font-weight: var(--cs-btn-font-weight) !important; cursor: pointer !important;
  flex-shrink: 0 !important; letter-spacing: var(--cs-btn-letter-spacing) !important;
  transition: opacity 0.15s !important;
}
#cscSubmit:hover { opacity: 0.85 !important; }

#cscResults { display: none; width: 100%; overflow-y: auto; flex: 1; margin-top: 8px; align-content: start; }
#cscResults.has-results { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 24px 16px !important; }
#cscResults.has-results::before {
  content: 'Top Results'; display: block; grid-column: 1 / -1;
  font-size: 12px; font-weight: 500; letter-spacing: 0.5px;
  color: rgba(13,31,60,0.45); padding-bottom: 12px;
  border-bottom: 1px solid rgba(13,31,60,0.08); margin-bottom: 4px;
}
.csc-result-item { display: flex !important; flex-direction: column !important; gap: 8px !important; text-decoration: none !important; color: var(--cs-brand) !important; transition: opacity 0.15s !important; }
.csc-result-item:hover { opacity: 0.7 !important; }
.csc-result-img-wrap { width: 100% !important; aspect-ratio: 3/4 !important; overflow: hidden !important; border-radius: 0 !important; background: #f0efed !important; }
.csc-result-img-wrap img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block !important; }
.csc-result-no-img { width: 100% !important; height: 100% !important; background: rgba(13,31,60,0.06) !important; }
.csc-result-title { font-size: 12px !important; font-weight: 400 !important; color: var(--cs-brand) !important; line-height: 1.4 !important; white-space: normal !important; }
.csc-result-price { font-size: 12px !important; color: var(--cs-brand) !important; font-weight: 500 !important; }
.csc-loading, .csc-no-results { font-size: 13px !important; color: rgba(13,31,60,0.4) !important; padding: 20px 0 !important; text-align: center !important; grid-column: 1 / -1 !important; }


/* ================================================
   4. CART — STYLE CONTENTS ONLY, NO POSITION OVERRIDES
   ================================================ */

/* Background and padding only — no position/width/transform */
.elementor-menu-cart__main {
  background: #fff !important;
  padding: 48px 28px 32px !important;
  box-shadow: var(--cs-panel-shadow) !important;
}

/* Close button — brand square with ✕ */
.elementor-menu-cart__close-button {
  position: absolute !important; top: 0 !important; right: 0 !important;
  background: var(--cs-brand) !important; border: none !important;
  box-shadow: none !important; cursor: pointer !important;
  width: 48px !important; height: 48px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  border-radius: 0 !important; transition: opacity 0.15s !important; padding: 0 !important;
}
.elementor-menu-cart__close-button:hover { opacity: 0.8 !important; }
.elementor-menu-cart__close-button > * { display: none !important; }
.elementor-menu-cart__close-button::before {
  content: '✕';
  color: #fff !important; font-size: 16px !important;
  font-family: Arial, sans-serif !important; line-height: 1 !important;
  display: block !important;
}

/* Product rows */
.elementor-menu-cart__product {
  display: grid !important;
  grid-template-columns: 72px 1fr auto !important;
  grid-template-rows: auto auto !important;
  column-gap: 14px !important; row-gap: 2px !important;
  padding: 14px 0 !important;
  border-bottom: 1px solid rgba(13,31,60,0.07) !important;
  align-items: start !important;
}
.elementor-menu-cart__product:last-child { border-bottom: none !important; }

.elementor-menu-cart__product-image { grid-row: 1 / 3 !important; grid-column: 1 !important; }
.elementor-menu-cart__product-image img {
  width: 72px !important; height: 72px !important;
  object-fit: cover !important; border-radius: 0 !important; display: block !important;
}

.elementor-menu-cart__product-name { grid-row: 1 !important; grid-column: 2 !important; }
.elementor-menu-cart__product-name a {
  font-size: 12px !important; font-weight: 400 !important;
  color: var(--cs-brand) !important; line-height: 1.4 !important; text-decoration: none !important;
}
.elementor-menu-cart__product-name a:hover { opacity: 0.7 !important; }

.elementor-menu-cart__product-price { grid-row: 2 !important; grid-column: 2 !important; }
.elementor-menu-cart__product-price .woocommerce-Price-amount {
  font-size: 12px !important; font-weight: 500 !important; color: var(--cs-brand) !important;
}
.elementor-menu-cart__product-price .product-quantity {
  font-size: 12px !important; color: rgba(13,31,60,0.5) !important;
}

.elementor-menu-cart__product-remove { grid-row: 1 !important; grid-column: 3 !important; }
.elementor-menu-cart__product-remove a {
  color: rgba(13,31,60,0.3) !important; font-size: 18px !important;
  text-decoration: none !important; transition: color 0.15s !important;
  display: flex !important; align-items: center !important;
}
.elementor-menu-cart__product-remove a:hover { color: var(--cs-brand) !important; }

/* Subtotal */
.elementor-menu-cart__subtotal {
  display: flex !important; justify-content: space-between !important;
  align-items: center !important; padding: 16px 0 8px !important;
  border-top: 1px solid rgba(13,31,60,0.08) !important;
  font-size: 13px !important; font-weight: 600 !important; color: var(--cs-brand) !important;
}
.elementor-menu-cart__subtotal .woocommerce-Price-amount {
  font-size: 13px !important; font-weight: 600 !important; color: var(--cs-brand) !important;
}

/* Footer buttons */
.elementor-menu-cart__footer-buttons {
  display: flex !important; flex-direction: column !important;
  gap: 10px !important; padding-top: 8px !important;
}
.elementor-menu-cart__footer-buttons .elementor-button {
  display: flex !important; align-items: center !important; justify-content: center !important;
  height: var(--cs-btn-h) !important; border-radius: 0 !important;
  font-family: var(--cs-btn-font) !important; font-size: 15px !important;
  font-weight: var(--cs-btn-font-weight) !important;
  text-decoration: none !important; transition: opacity 0.15s !important;
  border: none !important; width: 100% !important; padding: 0 !important; box-shadow: none !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart {
  background: rgba(13,31,60,0.08) !important; color: var(--cs-brand) !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--checkout {
  background: var(--cs-brand) !important; color: #fff !important;
}
.elementor-menu-cart__footer-buttons .elementor-button:hover { opacity: 0.8 !important; }


/* ================================================
   5. WOOCOMMERCE SHOP
   ================================================ */
.woocommerce-ordering { position: relative; }
.woocommerce-ordering select {
  appearance: none; -webkit-appearance: none; -moz-appearance: none;
  background-color: #F7F7F5; border: 1px solid #DADADA; border-radius: 6px;
  padding: 10px 35px 10px 14px; font-size: 15px; color: #1A1A1A;
  cursor: pointer; outline: none;
  background-image: url("data:image/svg+xml;utf8,<svg fill='%231A1A1A' height='12' width='12' xmlns='http://www.w3.org/2000/svg'><path d='M2 4l4 4 4-4'/></svg>");
  background-repeat: no-repeat; background-position: right 12px center;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: var(--font-display); font-size: 1rem; font-weight: 600; line-height: 1.3; color: #1f1f1f !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title:hover { color: #C6A44F !important; }
.woocommerce ul.products li.product .price { font-family: var(--font-display); font-size: 0.95rem; font-weight: 500; }
.woocommerce ul.products li.product a.button {
  background-color: rgb(233,230,237) !important; border: 1px solid rgb(200,198,205) !important;
  color: #000 !important; padding: 12px 18px !important; border-radius: 999px !important;
  font-size: 12px !important; line-height: 1 !important; box-shadow: none !important;
  text-transform: none !important; transition: all 0.15s ease-in-out; font-weight: 400;
}
.woocommerce ul.products li.product a.button:hover { background-color: rgb(210,208,215) !important; border-color: rgb(180,178,185) !important; color: #000 !important; }


/* ================================================
   6. PRODUCT GALLERY THUMBNAILS
   ================================================ */
.woocommerce-product-gallery .flex-control-thumbs { display: flex !important; flex-wrap: wrap; gap: 10px; margin: 16px 0 0 0 !important; padding: 0 !important; list-style: none; }
.woocommerce-product-gallery .flex-control-thumbs li { margin: 0 !important; padding: 0 !important; flex: 0 0 calc(15% - 10px); max-width: calc(15% - 10px); aspect-ratio: 1/1; }
.woocommerce-product-gallery .flex-control-thumbs li img { width: 80%; height: 80%; object-fit: cover; border-radius: 8px; display: block; }
.woocommerce-product-gallery .flex-control-thumbs li img.flex-active { outline: 0; }
.woocommerce-product-gallery .flex-control-thumbs li img:hover { transform: translateY(-2px); transition: transform 0.25s ease; }
@media (max-width: 1024px) {
  .woocommerce-product-gallery .flex-control-thumbs li { flex: 0 0 calc(33.333% - 10px); max-width: calc(33.333% - 10px); }
}
@media (max-width: 767px) {
  .woocommerce-product-gallery .flex-control-thumbs { gap: 8px; }
  .woocommerce-product-gallery .flex-control-thumbs li { flex: 0 0 calc(25% - 8px); max-width: calc(25% - 8px); }
}


/* ================================================
   7. SINGLE PRODUCT
   ================================================ */
.woocommerce div.product .woocommerce-variation-price .price,
.woocommerce div.product .woocommerce-variation-price .price .woocommerce-Price-amount { color: #C6A44F !important; font-family: inherit !important; font-size: 1.1rem !important; font-weight: 400 !important; line-height: 1.4 !important; }
.woocommerce div.product .woocommerce-variation-price { margin-bottom: 1.2em !important; display: block !important; }
.single_add_to_cart_button:disabled, .single_add_to_cart_button.disabled,
.cside-buy-now:disabled, .cside-buy-now.disabled { background: #1f1f1f80 !important; border: 0 !important; cursor: not-allowed !important; }
.single-product button.cside-buy-now { display: none !important; visibility: hidden !important; height: 0 !important; margin: 0 !important; padding: 0 !important; }
.single-product button.single_add_to_cart_button {
  width: 100% !important; height: var(--cs-btn-h) !important; border-radius: var(--cs-btn-radius) !important;
  background: var(--cs-btn-bg) !important; color: var(--cs-btn-text) !important;
  font-family: var(--cs-btn-font) !important; font-size: var(--cs-btn-font-size) !important;
  font-weight: var(--cs-btn-font-weight) !important; letter-spacing: var(--cs-btn-letter-spacing) !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
}
.single-product .woocommerce-variation-add-to-cart { display: flex !important; flex-direction: column !important; gap: var(--cs-btn-gap) !important; }
.single-product .woocommerce-variation-add-to-cart > input[type="hidden"],
.single-product .woocommerce-variation-add-to-cart wc-order-attribution-inputs,
.single-product .woocommerce-variation-add-to-cart .wc-stripe-clear { display: none !important; }
.single-product .wc-stripe-product-checkout-container { order: -1 !important; width: 100% !important; }
.single-product .wc_stripe_product_payment_methods { display: flex !important; flex-direction: column !important; gap: var(--cs-btn-gap) !important; margin: 0 !important; padding: 0 !important; }
.single-product .wc_stripe_product_payment_methods li { width: 100% !important; max-width: 100% !important; margin: 0 !important; }
.single-product #wc-stripe-applepay-container,
.single-product .apple-pay-button { width: 100% !important; height: var(--cs-btn-h) !important; min-height: var(--cs-btn-h) !important; border-radius: var(--cs-btn-radius) !important; }
.single-product #wc-stripe-applepay-container { display: flex !important; align-items: center !important; justify-content: center !important; padding: 0 !important; }
.single-product #wc-stripe-applepay-container .apple-pay-button { margin: 0 !important; line-height: var(--cs-btn-h) !important; }
.single-product .payment_method_stripe_googlepay,
.single-product .payment_method_stripe_googlepay .payment-box,
.single-product #wc-stripe-googlepay-container,
.single-product .wc-stripe-googlepay-product-container,
.single-product .gpay-button-fill,
.single-product .gpay-button-container,
.single-product .gpay-card-info-container,
.single-product .gpay-card-info-container-fill,
.single-product .gpay-card-info-iframe { width: 100% !important; max-width: none !important; height: var(--cs-btn-h) !important; min-height: var(--cs-btn-h) !important; border-radius: var(--cs-btn-radius) !important; margin: 0 !important; padding: 0 !important; }
.single-product #wc-stripe-googlepay-container,
.single-product .wc-stripe-googlepay-product-container { display: flex !important; align-items: center !important; justify-content: center !important; }
.single-product #wc-stripe-googlepay-container #gpay-button-online-api-id { width: 100% !important; height: var(--cs-btn-h) !important; min-height: var(--cs-btn-h) !important; border-radius: var(--cs-btn-radius) !important; display: flex !important; align-items: center !important; justify-content: center !important; padding: 0 !important; line-height: 1 !important; background-position: center !important; background-repeat: no-repeat !important; background-size: auto 55% !important; }


/* ================================================
   8. VARIATION SIZE PILLS
   ================================================ */
.variations_form select[name^="attribute_"] { display: none !important; }
.variation-buttons { display: flex; flex-wrap: wrap; gap: 3px; margin-top: 8px; }
.variation-buttons .elementor-button { display: inline-block; padding: 7px 15px; border-radius: 999px; font-size: 12px; cursor: pointer; white-space: nowrap; background: #000; color: #fff; border: 1px solid #fff; }
.variation-buttons .elementor-button.active { background: #fff !important; color: #000 !important; border-color: #000 !important; }


/* ================================================
   9. STICKY PRODUCT LAYOUT
   ================================================ */
.cs-wrapper { position: relative; display: flex; align-items: flex-start; gap: 60px; overflow: visible; max-width: 1200px; margin: 0 auto; padding: 100px 0; }
.cs-left { position: sticky; top: 100px; width: 35%; align-self: flex-start; z-index: 10; }
.cs-right { width: 65%; display: flex; flex-direction: column; gap: 60px; }
@media (max-width: 900px) {
  .cs-wrapper { flex-direction: column; }
  .cs-left { position: static; width: 100%; margin-bottom: 40px; }
  .cs-right { width: 100%; }
}

.elementor-menu-cart__close-button-custom {
  position: absolute !important; top: 0 !important; right: 10 !important; left: auto !important;
  background: var(--cs-brand) !important;
  width: 48px !important; height: 48px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  cursor: pointer !important; z-index: 1 !important;
}
.elementor-menu-cart__close-button-custom svg {
  width: 20px !important; height: 20px !important;
}
.elementor-menu-cart__main {
  width: 450px !important;
  min-width: 450px !important;
}

.csc-cart-title {
  font-family: var(--font-display) !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  color: var(--cs-brand) !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
}


/* ================================================
   10. RESPONSIVE
   ================================================ */
@media (max-width: 768px) {
  .csc-search-bar { width: 90% !important; }
}/* End custom CSS */