/*
 * Kamis Native Woo Builder
 * All rules are intentionally scoped. Nothing here targets the global site
 * header, menu or Elementor widgets outside the generated Kamis store.
 */
.kamis-native-store,
.knc-archive-page,
.knc-single-page {
  --knc-gold: #D4AF37;
  --knc-black: #1A1A1A;
  --knc-nude: #E8DCC4;
  --knc-nude-soft: #F4ECE1;
  --knc-card: #F8F8F8;
  --knc-alt: #F9F9F9;
  --knc-gray: #8A8A8A;
  --knc-white: #FFFFFF;
  --knc-line: rgba(26, 26, 26, .11);
  --knc-shadow: 0 24px 70px rgba(26, 26, 26, .10);
  --knc-shadow-strong: 0 36px 100px rgba(26, 26, 26, .16);
  --knc-ui: "Montserrat", sans-serif;
  --knc-display: "Tenor Sans", sans-serif;
  --knc-ease: cubic-bezier(.22, 1, .36, 1);
  width: 100%;
  overflow: clip;
  color: var(--knc-black);
  background: var(--knc-white);
  font-family: var(--knc-ui);
  -webkit-font-smoothing: antialiased;
}

.kamis-native-store *,
.knc-archive-page *,
.knc-single-page * { box-sizing: border-box; }

.kamis-native-store a,
.knc-archive-page a,
.knc-single-page a { color: inherit; }

.kamis-native-store .elementor-heading-title,
.knc-archive-page .elementor-heading-title,
.knc-single-page .elementor-heading-title { margin: 0; color: inherit; }

.kamis-native-store .elementor-widget-text-editor p,
.kamis-native-store .elementor-widget-text-editor ul,
.knc-archive-page .elementor-widget-text-editor p,
.knc-single-page .elementor-widget-text-editor p { margin: 0; }

.kamis-native-store .knc-shell,
.knc-archive-page .knc-shell,
.knc-single-page .knc-shell {
  width: min(calc(100% - 44px), 1480px);
  margin-inline: auto;
}

/* Store utility bar: separate from the site's global header. */
.kamis-native-store .knc-store-bar {
  min-height: 82px;
  padding: 13px max(22px, calc((100vw - 1480px) / 2));
  border-top: 4px solid var(--knc-black);
  border-bottom: 1px solid var(--knc-line);
  gap: 28px;
  background: var(--knc-white);
}

.kamis-native-store .knc-store-logo { width: 220px; flex: 0 0 220px; }
.kamis-native-store .knc-store-logo img { width: 100%; max-height: 50px; object-fit: contain; object-position: left center; }

.kamis-native-store .knc-product-search { flex: 1 1 auto; max-width: 850px; }
.kamis-native-store .knc-product-search .elementor-search-form,
.knc-archive-page .knc-product-search .elementor-search-form { width: 100%; }
.kamis-native-store .knc-product-search .elementor-search-form__container,
.knc-archive-page .knc-product-search .elementor-search-form__container,
.kamis-native-store .knc-product-search .e-search,
.knc-archive-page .knc-product-search .e-search {
  min-height: 50px;
  overflow: hidden;
  border: 1px solid var(--knc-line) !important;
  border-radius: 999px !important;
  background: var(--knc-alt) !important;
  transition: border-color .25s ease, box-shadow .25s ease;
}
.kamis-native-store .knc-product-search .elementor-search-form__container:focus-within,
.knc-archive-page .knc-product-search .elementor-search-form__container:focus-within {
  border-color: var(--knc-gold) !important;
  box-shadow: 0 0 0 4px rgba(212, 175, 55, .13);
}
.kamis-native-store .knc-product-search input[type="search"],
.knc-archive-page .knc-product-search input[type="search"] {
  min-height: 48px;
  border: 0 !important;
  padding-inline: 22px !important;
  background: transparent !important;
  color: var(--knc-black) !important;
  font-family: var(--knc-ui) !important;
  font-size: 12px !important;
  box-shadow: none !important;
}
.kamis-native-store .knc-product-search .elementor-search-form__submit,
.knc-archive-page .knc-product-search .elementor-search-form__submit {
  width: 48px;
  min-width: 48px !important;
  height: 48px;
  margin: 0;
  border: 0;
  border-radius: 50%;
  background: var(--knc-black) !important;
  color: var(--knc-white) !important;
}

.kamis-native-store .knc-menu-cart { flex: 0 0 auto; }
.kamis-native-store .knc-menu-cart .elementor-menu-cart__toggle .elementor-button,
.kamis-native-store .knc-menu-cart .elementor-menu-cart__toggle_button {
  display: grid;
  width: 50px;
  height: 50px;
  min-width: 50px;
  place-items: center;
  border: 1px solid var(--knc-line) !important;
  border-radius: 50% !important;
  padding: 0 !important;
  background: var(--knc-white) !important;
  color: var(--knc-black) !important;
  transition: .3s var(--knc-ease);
}
.kamis-native-store .knc-menu-cart .elementor-menu-cart__toggle .elementor-button:hover,
.kamis-native-store .knc-menu-cart .elementor-menu-cart__toggle_button:hover {
  border-color: var(--knc-gold) !important;
  background: var(--knc-gold) !important;
  transform: translateY(-2px);
}
.kamis-native-store .knc-menu-cart .elementor-button-icon-qty {
  background: var(--knc-gold) !important;
  color: var(--knc-black) !important;
  font-family: var(--knc-ui);
  font-size: 9px;
  font-weight: 800;
}

.kamis-native-store .knc-store-nav {
  min-height: 48px;
  gap: clamp(18px, 3.2vw, 58px);
  border-bottom: 1px solid var(--knc-line);
  padding-inline: 24px;
  background: var(--knc-white);
  overflow-x: auto;
  scrollbar-width: none;
}
.kamis-native-store .knc-store-nav::-webkit-scrollbar { display: none; }
.kamis-native-store .knc-nav-link { width: auto; flex: 0 0 auto; }
.kamis-native-store .knc-nav-link .elementor-button {
  border: 0;
  padding: 15px 0;
  background: transparent;
  color: var(--knc-black);
  font-family: var(--knc-ui);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .14em;
  white-space: nowrap;
  text-transform: uppercase;
}
.kamis-native-store .knc-nav-link .elementor-button:hover { color: var(--knc-gold); }
.kamis-native-store .knc-nav-accent .elementor-button { color: var(--knc-gold); }

/* Hero */
.kamis-native-store .knc-hero {
  position: relative;
  isolation: isolate;
  min-height: 690px;
  margin-top: 22px;
  overflow: hidden;
  border-radius: 46px;
  background: linear-gradient(118deg, var(--knc-nude-soft) 0%, var(--knc-nude) 58%, var(--knc-alt) 100%);
  box-shadow: 0 20px 70px rgba(26,26,26,.05);
}
.kamis-native-store .knc-hero::before {
  position: absolute;
  z-index: 0;
  top: -165px;
  right: 6%;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  background: var(--knc-gold);
  opacity: .74;
  content: "";
  animation: kncOrb 8s ease-in-out infinite;
}
.kamis-native-store .knc-hero::after {
  position: absolute;
  z-index: 0;
  right: -115px;
  bottom: -220px;
  width: 570px;
  height: 570px;
  border: 92px solid rgba(255,255,255,.72);
  border-radius: 50%;
  content: "";
}
.kamis-native-store .knc-hero-copy {
  position: relative;
  z-index: 4;
  width: 56%;
  justify-content: center;
  padding: clamp(58px, 6vw, 92px) 28px clamp(58px, 6vw, 92px) clamp(36px, 5vw, 72px);
}
.kamis-native-store .knc-kicker,
.knc-archive-page .knc-kicker {
  color: var(--knc-black);
  font-family: var(--knc-ui);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.kamis-native-store .knc-kicker p,
.knc-archive-page .knc-kicker p { display: flex; align-items: center; gap: 12px; }
.kamis-native-store .knc-kicker p::before,
.knc-archive-page .knc-kicker p::before {
  width: 31px;
  height: 8px;
  border-radius: 999px;
  background: var(--knc-gold);
  content: "";
}
.kamis-native-store .knc-hero-title { margin-top: 24px; max-width: 790px; }
.kamis-native-store .knc-hero-title .elementor-heading-title {
  font-family: var(--knc-ui);
  font-size: clamp(3.3rem, 5.35vw, 6.3rem);
  font-weight: 800;
  letter-spacing: -.068em;
  line-height: .9;
}
.kamis-native-store .knc-hero-subtitle { margin-top: 14px; }
.kamis-native-store .knc-hero-subtitle .elementor-heading-title {
  font-family: var(--knc-display);
  font-size: clamp(2.35rem, 3.7vw, 4.25rem);
  font-weight: 400;
  letter-spacing: -.035em;
  line-height: 1;
}
.kamis-native-store .knc-hero-lead {
  max-width: 680px;
  margin-top: 28px;
  color: rgba(26,26,26,.66);
  font-family: var(--knc-ui);
  font-size: clamp(.96rem, 1.08vw, 1.1rem);
  line-height: 1.75;
}
.kamis-native-store .knc-actions { width: auto; align-self: flex-start; gap: 12px; margin-top: 34px; }
.kamis-native-store .knc-btn { width: auto; }
.kamis-native-store .knc-btn .elementor-button,
.kamis-native-store .knc-text-button .elementor-button,
.knc-single-page .elementor-button {
  position: relative;
  isolation: isolate;
  min-height: 50px;
  overflow: hidden;
  border: 1px solid var(--knc-black);
  border-radius: 999px;
  padding: 15px 23px;
  background: var(--knc-black);
  color: var(--knc-white);
  font-family: var(--knc-ui);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  transition: .35s var(--knc-ease);
}
.kamis-native-store .knc-btn .elementor-button:hover,
.knc-single-page .elementor-button:hover { border-color: var(--knc-gold); background: var(--knc-gold); color: var(--knc-black); transform: translateY(-2px); }
.kamis-native-store .knc-btn-outline .elementor-button { background: transparent; color: var(--knc-black); }
.kamis-native-store .knc-btn-outline .elementor-button:hover { background: var(--knc-black); color: var(--knc-white); }
.kamis-native-store .knc-btn-gold .elementor-button { border-color: var(--knc-gold); background: var(--knc-gold); color: var(--knc-black); }
.kamis-native-store .knc-btn-gold .elementor-button:hover { background: var(--knc-white); }
.kamis-native-store .knc-trust-widget { margin-top: 28px; }
.kamis-native-store .knc-trust-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.kamis-native-store .knc-trust-pills span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border: 1px solid rgba(26,26,26,.12);
  border-radius: 999px;
  padding: 9px 13px;
  background: rgba(255,255,255,.55);
  font-size: 8px;
  font-weight: 700;
}
.kamis-native-store .knc-trust-pills span::before { color: var(--knc-gold); content: "✓"; font-weight: 900; }

.kamis-native-store .knc-hero-visual {
  position: relative;
  z-index: 2;
  width: 44%;
  min-height: 690px;
  align-self: stretch;
}
.kamis-native-store .knc-hero-visual::before {
  position: absolute;
  z-index: 1;
  right: 8%;
  bottom: -10%;
  width: 68%;
  height: 92%;
  border: 1px solid rgba(26,26,26,.08);
  border-radius: 52% 52% 18% 18% / 38% 38% 12% 12%;
  background: linear-gradient(160deg, rgba(255,255,255,.54), rgba(255,255,255,.08));
  box-shadow: inset 0 0 0 18px rgba(255,255,255,.14);
  content: "";
}
.kamis-native-store .knc-hero-visual::after {
  position: absolute;
  z-index: 1;
  right: 8%;
  bottom: 5%;
  color: rgba(212,175,55,.16);
  content: "K";
  font-family: var(--knc-display);
  font-size: 320px;
  line-height: .7;
}
.kamis-native-store .knc-karina {
  position: absolute;
  z-index: 4;
  right: 10%;
  bottom: -8%;
  width: auto;
  height: 112%;
  max-width: none;
}
.kamis-native-store .knc-karina .elementor-widget-container,
.kamis-native-store .knc-karina img { width: auto; height: 100%; max-width: none; object-fit: contain; object-position: center bottom; }
.kamis-native-store .knc-karina img { filter: drop-shadow(0 34px 48px rgba(26,26,26,.25)); }
.kamis-native-store .knc-float { position: absolute; z-index: 5; animation: kncFloat 6s ease-in-out infinite; }
.kamis-native-store .knc-float img { width: 100%; object-fit: contain; filter: drop-shadow(0 18px 26px rgba(26,26,26,.24)); }
.kamis-native-store .knc-float-pigment { top: 11%; left: -5%; width: 170px; transform: rotate(-7deg); }
.kamis-native-store .knc-float-machine { right: -3%; bottom: 7%; width: 185px; animation-delay: -2s; transform: rotate(7deg); }
.kamis-native-store .knc-float-lashes { left: 0; bottom: 2%; width: 150px; animation-delay: -4s; transform: rotate(-3deg); }
.kamis-native-store .knc-badge-widget { position: absolute; z-index: 8; top: 7%; right: 3%; width: 136px; }
.kamis-native-store .knc-catalog-badge {
  display: grid;
  width: 132px;
  aspect-ratio: 1;
  place-items: center;
  border: 3px solid var(--knc-black);
  border-radius: 50%;
  background: var(--knc-gold);
  box-shadow: 9px 9px 0 var(--knc-black);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .06em;
  line-height: 1.15;
  text-align: center;
  text-transform: uppercase;
  transform: rotate(7deg);
}
.kamis-native-store .knc-hero-note {
  position: absolute;
  z-index: 8;
  right: 3%;
  bottom: 5%;
  width: 290px;
  border: 1px solid rgba(26,26,26,.06);
  border-radius: 29px 29px 8px 29px;
  padding: 22px 24px;
  background: rgba(255,255,255,.92);
  box-shadow: var(--knc-shadow);
  backdrop-filter: blur(16px);
}
.kamis-native-store .knc-note-title .elementor-heading-title { font-family: var(--knc-display); font-size: 23px; font-weight: 400; line-height: 1.35; }
.kamis-native-store .knc-note-copy { margin-top: 7px; color: var(--knc-gray); font-size: 8px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }

@keyframes kncFloat { 0%, 100% { translate: 0 0; } 50% { translate: 0 -13px; } }
@keyframes kncOrb { 0%, 100% { transform: translate(0,0) scale(1); } 50% { transform: translate(-18px,18px) scale(1.04); } }

/* Marquee */
.kamis-native-store .knc-marquee {
  --knc-marquee-gap: 48px;
  width: 100%;
  margin-top: 22px;
  overflow: hidden;
  border-block: 1px solid var(--knc-line);
  background: var(--knc-white);
}
.kamis-native-store .knc-marquee-track {
  display: flex;
  width: max-content;
  gap: var(--knc-marquee-gap);
  padding: 16px 0;
  will-change: transform;
  animation: kncMarquee var(--knc-marquee-duration, 34s) linear infinite;
}
.kamis-native-store .knc-marquee-group {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: var(--knc-marquee-gap);
  min-width: max-content;
}
.kamis-native-store .knc-marquee-track span { font-size: 9px; letter-spacing: .08em; white-space: nowrap; text-transform: uppercase; }
.kamis-native-store .knc-marquee-track b { font-weight: 900; }
@keyframes kncMarquee { to { transform: translateX(calc(-50% - (var(--knc-marquee-gap) / 2))); } }

/* Sections */
.kamis-native-store .knc-section { padding-block: clamp(72px, 7vw, 112px); }
.kamis-native-store .knc-soft-section { background: var(--knc-nude-soft); }
.kamis-native-store .knc-section-head { gap: 46px; margin-bottom: clamp(38px, 5vw, 68px); }
.kamis-native-store .knc-head-left { max-width: 980px; }
.kamis-native-store .knc-section-title .elementor-heading-title,
.knc-archive-page .knc-archive-title .elementor-heading-title,
.knc-single-page .knc-related-heading .elementor-heading-title {
  font-family: var(--knc-display);
  font-size: clamp(3rem, 5vw, 6.2rem);
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: .94;
}
.kamis-native-store .knc-bold-title .elementor-heading-title { font-family: var(--knc-ui); font-weight: 800; letter-spacing: -.065em; }
.kamis-native-store .knc-section-sidecopy { max-width: 380px; color: var(--knc-gray); font-size: 12px; line-height: 1.7; }

/* Category mosaic */
.kamis-native-store .knc-category-grid {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-rows: 145px;
  gap: 14px;
}
.kamis-native-store .knc-category-card {
  position: relative;
  isolation: isolate;
  width: auto !important;
  min-width: 0;
  overflow: hidden;
  border-radius: 30px;
  padding: 0;
  transition: transform .45s var(--knc-ease), box-shadow .45s var(--knc-ease);
}
.kamis-native-store .knc-category-card::before {
  position: absolute;
  z-index: -1;
  top: -85px;
  right: -72px;
  width: 265px;
  height: 265px;
  border: 1px solid rgba(26,26,26,.13);
  border-radius: 50%;
  content: "";
  transition: transform .55s var(--knc-ease);
}
.kamis-native-store .knc-category-card::after {
  position: absolute;
  z-index: -1;
  right: 18px;
  bottom: 18px;
  width: 84px;
  height: 24px;
  border-radius: 999px;
  background: rgba(255,255,255,.38);
  content: "";
  transform: rotate(-11deg);
}
.kamis-native-store .knc-category-card:hover { z-index: 3; box-shadow: var(--knc-shadow-strong); transform: translateY(-8px); }
.kamis-native-store .knc-category-card:hover::before { transform: scale(1.25); }
.kamis-native-store .knc-cat-brows { grid-column: span 5; grid-row: span 3; background: var(--knc-nude-soft); }
.kamis-native-store .knc-cat-lips { grid-column: span 4; grid-row: span 2; background: var(--knc-nude); }
.kamis-native-store .knc-cat-machines { grid-column: span 3; grid-row: span 2; background: var(--knc-black); color: var(--knc-white); }
.kamis-native-store .knc-cat-machines::before { border-color: rgba(255,255,255,.22); }
.kamis-native-store .knc-cat-supplies { grid-column: span 3; grid-row: span 2; background: var(--knc-card); }
.kamis-native-store .knc-cat-lashes { grid-column: span 4; grid-row: span 3; background: var(--knc-gold); }
.kamis-native-store .knc-category-image { position: absolute; z-index: -1; right: -4%; bottom: -7%; width: 68%; height: 84%; }
.kamis-native-store .knc-category-image .elementor-widget-container,
.kamis-native-store .knc-category-image img { width: 100%; height: 100%; }
.kamis-native-store .knc-category-image img { object-fit: contain; transition: transform .65s var(--knc-ease); }
.kamis-native-store .knc-category-card:hover .knc-category-image img { transform: scale(1.08) rotate(2deg); }
.kamis-native-store .knc-category-copy { position: absolute; z-index: 3; inset: auto auto 23px 24px; width: 59%; }
.kamis-native-store .knc-card-eyebrow { font-size: 7px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.kamis-native-store .knc-category-title { margin-top: 8px; }
.kamis-native-store .knc-category-title .elementor-heading-title { font-family: var(--knc-display); font-size: clamp(1.45rem, 2.5vw, 2.75rem); font-weight: 400; line-height: 1; }
.kamis-native-store .knc-category-description { display: none; }
.kamis-native-store .knc-text-button { width: auto; margin-top: 14px; }
.kamis-native-store .knc-text-button .elementor-button { min-height: 0; border: 0; border-bottom: 1px solid currentColor; border-radius: 0; padding: 0 0 5px; background: transparent; color: currentColor; font-size: 7px; }
.kamis-native-store .knc-text-button .elementor-button:hover { background: transparent; color: var(--knc-gold); transform: none; }
.kamis-native-store .knc-cat-machines .knc-text-button .elementor-button:hover { color: var(--knc-white); }

/* Native WooCommerce Products widgets */
.kamis-native-store .knc-woo-products,
.knc-archive-page .knc-archive-products,
.knc-single-page .knc-related-products { width: 100%; }
.kamis-native-store .knc-woo-products.elementor-wc-products ul.products,
.kamis-native-store .knc-woo-products ul.products,
.knc-archive-page .knc-archive-products.elementor-wc-products ul.products,
.knc-archive-page .knc-archive-products ul.products,
.knc-single-page .knc-related-products.elementor-wc-products ul.products,
.knc-single-page .knc-related-products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  margin: 0 !important;
}
.kamis-native-store .knc-woo-products ul.products::before,
.kamis-native-store .knc-woo-products ul.products::after,
.knc-archive-page .knc-archive-products ul.products::before,
.knc-archive-page .knc-archive-products ul.products::after { display: none !important; }
.kamis-native-store .knc-woo-products ul.products li.product,
.knc-archive-page .knc-archive-products ul.products li.product,
.knc-single-page .knc-related-products ul.products li.product {
  position: relative;
  isolation: isolate;
  display: flex !important;
  width: auto !important;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  margin: 0 !important;
  overflow: hidden;
  border: 1px solid var(--knc-line);
  border-radius: 27px 27px 68px 27px;
  padding: 12px 12px 18px !important;
  background: var(--knc-white);
  color: var(--knc-black);
  transition: transform .38s var(--knc-ease), box-shadow .38s var(--knc-ease), border-color .3s ease;
}
.kamis-native-store .knc-woo-products ul.products li.product:hover,
.knc-archive-page .knc-archive-products ul.products li.product:hover,
.knc-single-page .knc-related-products ul.products li.product:hover { z-index: 3; border-color: rgba(212,175,55,.55); box-shadow: var(--knc-shadow); transform: translateY(-7px); }
.kamis-native-store .knc-woo-products ul.products li.product > a.woocommerce-LoopProduct-link,
.knc-archive-page .knc-archive-products ul.products li.product > a.woocommerce-LoopProduct-link,
.knc-single-page .knc-related-products ul.products li.product > a.woocommerce-LoopProduct-link {
  display: flex;
  min-width: 0;
  min-height: 0;
  flex: 1 1 auto;
  flex-direction: column;
}
.kamis-native-store .knc-woo-products ul.products li.product img,
.knc-archive-page .knc-archive-products ul.products li.product img,
.knc-single-page .knc-related-products ul.products li.product img {
  width: 100% !important;
  aspect-ratio: 1 / 1;
  margin: 0 0 18px !important;
  border-radius: 20px 20px 54px 20px;
  padding: 24px;
  background:
    radial-gradient(circle at 92% 92%, rgba(212,175,55,.78) 0 22%, transparent 22.5%),
    repeating-linear-gradient(0deg, transparent 0 32px, rgba(26,26,26,.07) 32px 33px),
    var(--knc-nude-soft);
  object-fit: contain;
  filter: drop-shadow(0 13px 16px rgba(26,26,26,.13));
  transition: transform .55s var(--knc-ease);
}
.kamis-native-store .knc-woo-products ul.products li.product:hover img,
.knc-archive-page .knc-archive-products ul.products li.product:hover img,
.knc-single-page .knc-related-products ul.products li.product:hover img { transform: scale(1.035); }
.kamis-native-store .knc-woo-products ul.products li.product .woocommerce-loop-product__title,
.knc-archive-page .knc-archive-products ul.products li.product .woocommerce-loop-product__title,
.knc-single-page .knc-related-products ul.products li.product .woocommerce-loop-product__title {
  min-height: 42px;
  margin: 0 !important;
  padding: 0 7px !important;
  color: var(--knc-black) !important;
  font-family: var(--knc-ui) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
}
.kamis-native-store .knc-woo-products ul.products li.product .star-rating,
.knc-archive-page .knc-archive-products ul.products li.product .star-rating { margin: 8px 7px 0 !important; color: var(--knc-gold); }
.kamis-native-store .knc-woo-products ul.products li.product .price,
.knc-archive-page .knc-archive-products ul.products li.product .price,
.knc-single-page .knc-related-products ul.products li.product .price {
  display: block !important;
  margin: auto 7px 14px !important;
  padding-top: 16px;
  color: var(--knc-black) !important;
  font-family: var(--knc-display) !important;
  font-size: clamp(1.35rem, 2vw, 1.85rem) !important;
  font-weight: 400 !important;
}
.kamis-native-store .knc-woo-products ul.products li.product .price del,
.knc-archive-page .knc-archive-products ul.products li.product .price del { color: var(--knc-gray); font-size: .65em; opacity: .75; }
.kamis-native-store .knc-woo-products ul.products li.product .price ins,
.knc-archive-page .knc-archive-products ul.products li.product .price ins { color: var(--knc-black); text-decoration: none; }
.kamis-native-store .knc-woo-products ul.products li.product .button,
.knc-archive-page .knc-archive-products ul.products li.product .button,
.knc-single-page .knc-related-products ul.products li.product .button {
  position: relative !important;
  inset: auto !important;
  display: inline-flex !important;
  width: auto;
  max-width: calc(100% - 14px);
  min-height: 40px;
  flex: 0 0 auto;
  align-self: flex-start;
  align-items: center;
  justify-content: center;
  margin: 0 7px !important;
  border: 0;
  border-radius: 999px;
  padding: 11px 17px !important;
  background: var(--knc-black) !important;
  color: var(--knc-white) !important;
  font-family: var(--knc-ui) !important;
  font-size: 7px !important;
  font-weight: 800 !important;
  letter-spacing: .08em;
  line-height: 1.15 !important;
  text-align: center;
  white-space: normal;
  text-transform: uppercase;
  transform: none;
  transition: .3s var(--knc-ease);
}
.kamis-native-store .knc-woo-products ul.products li.product .button:hover,
.knc-archive-page .knc-archive-products ul.products li.product .button:hover,
.knc-single-page .knc-related-products ul.products li.product .button:hover { background: var(--knc-gold) !important; color: var(--knc-black) !important; transform: translateY(-2px); }
.kamis-native-store .knc-woo-products ul.products li.product .added_to_cart,
.knc-archive-page .knc-archive-products ul.products li.product .added_to_cart { margin: 10px 8px 0; color: var(--knc-gold); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.kamis-native-store .knc-woo-products ul.products li.product span.onsale,
.knc-archive-page .knc-archive-products ul.products li.product span.onsale {
  top: 22px !important;
  right: auto !important;
  left: 22px !important;
  z-index: 5;
  min-width: 0 !important;
  min-height: 0 !important;
  border-radius: 999px;
  padding: 8px 11px;
  background: var(--knc-white) !important;
  color: var(--knc-black) !important;
  font-size: 7px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-transform: uppercase;
}

/* Featured native products displayed as a carousel without replacing WooCommerce. */
.kamis-native-store .knc-featured-products ul.products {
  display: flex !important;
  grid-template-columns: none !important;
  gap: 16px !important;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  padding: 6px 0 20px !important;
}
.kamis-native-store .knc-featured-products ul.products::-webkit-scrollbar { display: none; }
.kamis-native-store .knc-featured-products ul.products li.product { flex: 0 0 calc((100% - 48px) / 4); scroll-snap-align: start; }
.kamis-native-store .knc-carousel-arrows { display: flex; gap: 10px; }
.kamis-native-store .knc-carousel-arrows button {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border: 1px solid var(--knc-line);
  border-radius: 50%;
  background: var(--knc-white);
  color: var(--knc-black);
  cursor: pointer;
  font-size: 19px;
  transition: .3s var(--knc-ease);
}
.kamis-native-store .knc-carousel-arrows button:hover { border-color: var(--knc-gold); background: var(--knc-gold); transform: translateY(-2px); }

/* Kamis Original */
.kamis-native-store .knc-original {
  position: relative;
  isolation: isolate;
  min-height: 690px;
  overflow: hidden;
  border-radius: 44px;
  background: var(--knc-black);
  color: var(--knc-white);
}
.kamis-native-store .knc-original::before,
.kamis-native-store .knc-original::after {
  position: absolute;
  border: 72px solid rgba(212,175,55,.23);
  border-radius: 50%;
  content: "";
}
.kamis-native-store .knc-original::before { top: -180px; left: -170px; width: 510px; height: 510px; }
.kamis-native-store .knc-original::after { right: -130px; bottom: -230px; width: 450px; height: 450px; }
.kamis-native-store .knc-original-media { position: relative; z-index: 2; width: 48%; min-height: 690px; }
.kamis-native-store .knc-original-image { position: absolute; inset: 9% 6% 8% 8%; }
.kamis-native-store .knc-original-image .elementor-widget-container,
.kamis-native-store .knc-original-image img { width: 100%; height: 100%; }
.kamis-native-store .knc-original-image img { object-fit: contain; filter: drop-shadow(0 30px 35px rgba(0,0,0,.5)); }
.kamis-native-store .knc-original-copy { position: relative; z-index: 3; width: 52%; justify-content: center; padding: clamp(46px, 6vw, 94px); }
.kamis-native-store .knc-kicker-light { color: rgba(255,255,255,.58); }
.kamis-native-store .knc-original-title .elementor-heading-title { color: var(--knc-white); font-family: var(--knc-display); font-size: clamp(3.7rem, 5.8vw, 6.7rem); font-weight: 400; line-height: .95; }
.kamis-native-store .knc-original-accent { margin-top: 6px; }
.kamis-native-store .knc-original-accent .elementor-heading-title { color: var(--knc-gold); font-family: var(--knc-ui); font-size: clamp(2.7rem, 4.2vw, 5rem); font-weight: 800; letter-spacing: -.055em; line-height: .93; }
.kamis-native-store .knc-original-description { margin-top: 25px; color: rgba(255,255,255,.58); font-size: 12px; line-height: 1.75; }
.kamis-native-store .knc-feature-widget { margin-top: 34px; }
.kamis-native-store .knc-feature-list { display: grid; grid-template-columns: 1fr 1fr; margin: 0 0 30px; padding: 0; list-style: none; }
.kamis-native-store .knc-feature-list li { border-bottom: 1px solid rgba(255,255,255,.15); padding: 16px 12px 16px 28px; font-size: 8px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.kamis-native-store .knc-feature-list li::before { margin-left: -20px; margin-right: 10px; color: var(--knc-gold); content: "✓"; }

/* Native grouped WooCommerce products as combos */
.kamis-native-store .knc-combo-products ul.products { grid-template-columns: repeat(3, minmax(0,1fr)) !important; gap: 16px !important; }
.kamis-native-store .knc-combo-products ul.products li.product { min-height: 590px; border-radius: 34px 34px 82px 34px; padding: 18px 18px 24px !important; }
.kamis-native-store .knc-combo-products ul.products li.product:nth-child(2) { border-color: var(--knc-gold); background: var(--knc-gold); }
.kamis-native-store .knc-combo-products ul.products li.product:nth-child(3) { border-color: var(--knc-black); background: var(--knc-black); color: var(--knc-white); }
.kamis-native-store .knc-combo-products ul.products li.product:nth-child(3) .woocommerce-loop-product__title,
.kamis-native-store .knc-combo-products ul.products li.product:nth-child(3) .price { color: var(--knc-white) !important; }
.kamis-native-store .knc-combo-products ul.products li.product img { aspect-ratio: 1.25 / 1; background-color: rgba(255,255,255,.52); }
.kamis-native-store .knc-combo-products ul.products li.product .woocommerce-loop-product__title { min-height: 0; margin-top: 10px !important; font-family: var(--knc-display) !important; font-size: clamp(1.65rem, 2.6vw, 2.6rem) !important; font-weight: 400 !important; }
.kamis-native-store .knc-combo-products ul.products li.product .price { font-size: 2rem !important; }
.kamis-native-store .knc-combo-products ul.products li.product:nth-child(2) .button { background: var(--knc-black) !important; }
.kamis-native-store .knc-combo-products ul.products li.product:nth-child(3) .button { background: var(--knc-gold) !important; color: var(--knc-black) !important; }

/* Catalog tabs: every panel contains the native Woo Products widget. */
.kamis-native-store .knc-catalog-toolbar {
  gap: 22px;
  margin-bottom: 28px;
  border: 1px solid var(--knc-line);
  border-radius: 30px;
  padding: 11px 13px;
  background: var(--knc-alt);
}
.kamis-native-store .knc-native-filters { flex: 1 1 auto; gap: 7px; flex-wrap: wrap; }
.kamis-native-store .knc-filter-link { width: auto; }
.kamis-native-store .knc-filter-link .elementor-button {
  min-height: 36px;
  border: 0;
  border-radius: 999px;
  padding: 11px 15px;
  background: transparent;
  color: var(--knc-black);
  font-family: var(--knc-ui);
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.kamis-native-store .knc-filter-link.is-active .elementor-button,
.kamis-native-store .knc-filter-link .elementor-button:hover { background: var(--knc-black); color: var(--knc-white); }
.kamis-native-store .knc-catalog-search { width: min(360px, 100%); flex: 0 0 360px; }
.kamis-native-store .knc-catalog-panels { width: 100%; }
.kamis-native-store .knc-catalog-panel { display: none !important; width: 100%; }
.kamis-native-store .knc-catalog-panel.is-active { display: flex !important; }
.kamis-native-store .knc-panel-footer { align-self: flex-end; margin-top: 28px; }

.kamis-native-store .woocommerce-result-count,
.knc-archive-page .woocommerce-result-count { margin: 0 0 18px !important; color: var(--knc-gray); font-family: var(--knc-ui); font-size: 11px; }
.kamis-native-store .woocommerce-ordering,
.knc-archive-page .woocommerce-ordering { margin: 0 0 18px !important; }
.kamis-native-store .woocommerce-ordering select,
.knc-archive-page .woocommerce-ordering select {
  min-height: 45px;
  border: 1px solid var(--knc-line);
  border-radius: 999px;
  padding: 0 40px 0 18px;
  background: var(--knc-white);
  color: var(--knc-black);
  font-family: var(--knc-ui);
  font-size: 11px;
}
.kamis-native-store nav.woocommerce-pagination,
.knc-archive-page nav.woocommerce-pagination { margin-top: 42px; }
.kamis-native-store nav.woocommerce-pagination ul,
.knc-archive-page nav.woocommerce-pagination ul { display: flex; justify-content: center; gap: 7px; border: 0 !important; }
.kamis-native-store nav.woocommerce-pagination ul li,
.knc-archive-page nav.woocommerce-pagination ul li { border: 0 !important; }
.kamis-native-store nav.woocommerce-pagination a,
.kamis-native-store nav.woocommerce-pagination span,
.knc-archive-page nav.woocommerce-pagination a,
.knc-archive-page nav.woocommerce-pagination span {
  display: grid !important;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid var(--knc-line);
  border-radius: 50%;
  background: var(--knc-white) !important;
  color: var(--knc-black) !important;
}
.kamis-native-store nav.woocommerce-pagination span.current,
.kamis-native-store nav.woocommerce-pagination a:hover,
.knc-archive-page nav.woocommerce-pagination span.current,
.knc-archive-page nav.woocommerce-pagination a:hover { border-color: var(--knc-gold); background: var(--knc-gold) !important; }

/* Dynamic grouped combos */
.kamis-native-store .knc-combo-child-list { display: grid; gap: 0; margin: 12px 7px 18px; border-top: 1px solid rgba(26,26,26,.14); }
.kamis-native-store .knc-combo-child { display: flex; align-items: center; justify-content: space-between; gap: 12px; border-bottom: 1px solid rgba(26,26,26,.14); padding: 10px 0; font-size: 8px; line-height: 1.4; }
.kamis-native-store .knc-combo-child span { min-width: 0; flex: 1 1 auto; }
.kamis-native-store .knc-combo-child strong { flex: 0 0 auto; font-weight: 800; }
.kamis-native-store .knc-combo-products li.product:nth-child(3) .knc-combo-child-list,
.kamis-native-store .knc-combo-products li.product:nth-child(3) .knc-combo-child { border-color: rgba(255,255,255,.18); }
.kamis-native-store .knc-combo-products li.product:nth-child(3) .knc-combo-child { color: rgba(255,255,255,.75); }
.kamis-native-store .knc-combo-products li.product .button { margin-top: auto !important; }

/* Easy to choose / receive */
.kamis-native-store .knc-benefits-section { background: var(--knc-white); }
.kamis-native-store .knc-info-grid { display: grid !important; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 14px; }
.kamis-native-store .knc-info-card { position: relative; min-width: 0; min-height: 230px; overflow: hidden; border: 1px solid var(--knc-line); border-radius: 29px 29px 70px 29px; padding: 28px; background: var(--knc-white); transition: transform .38s var(--knc-ease), border-color .3s ease, box-shadow .38s var(--knc-ease); }
.kamis-native-store .knc-info-card::after { position: absolute; right: -58px; bottom: -66px; width: 150px; height: 150px; border: 25px solid var(--knc-nude-soft); border-radius: 50%; content: ""; }
.kamis-native-store .knc-info-card:hover { border-color: var(--knc-gold); box-shadow: var(--knc-shadow); transform: translateY(-6px); }
.kamis-native-store .knc-info-icon { position: relative; z-index: 2; width: auto; align-self: flex-start; }
.kamis-native-store .knc-info-icon span { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 14px; background: var(--knc-nude-soft); color: var(--knc-gold); font-family: var(--knc-display); font-size: 19px; font-weight: 700; }
.kamis-native-store .knc-info-title { position: relative; z-index: 2; margin-top: 34px; }
.kamis-native-store .knc-info-title .elementor-heading-title { font-family: var(--knc-display); font-size: 23px; font-weight: 400; line-height: 1.12; }
.kamis-native-store .knc-info-copy { position: relative; z-index: 2; margin-top: 12px; color: var(--knc-gray); font-size: 10px; line-height: 1.7; }

/* FAQ */
.kamis-native-store .knc-faq-section { background: var(--knc-alt); }
.kamis-native-store .knc-faq-grid { gap: clamp(46px,7vw,110px); }
.kamis-native-store .knc-faq-intro { width: 42%; }
.kamis-native-store .knc-faq-copy { margin-top: 25px; }
.kamis-native-store .knc-faq-accordion { width: 58%; }
.kamis-native-store .knc-faq-accordion .elementor-accordion-item { border: 0 !important; border-bottom: 1px solid var(--knc-line) !important; background: transparent !important; }
.kamis-native-store .knc-faq-accordion .elementor-tab-title { display: flex; min-height: 64px; align-items: center; justify-content: space-between; border: 0 !important; padding: 20px 0 !important; color: var(--knc-black) !important; font-family: var(--knc-ui) !important; font-size: 12px !important; font-weight: 700 !important; }
.kamis-native-store .knc-faq-accordion .elementor-accordion-icon { display: grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; border: 1px solid var(--knc-line); border-radius: 50%; color: var(--knc-gold) !important; }
.kamis-native-store .knc-faq-accordion .elementor-tab-content { border: 0 !important; padding: 0 50px 22px 0 !important; color: var(--knc-gray); font-size: 11px; line-height: 1.75; }

/* Newsletter */
.kamis-native-store .knc-newsletter-section { padding-block: clamp(58px,6vw,88px); background: var(--knc-nude); }
.kamis-native-store .knc-newsletter-grid { gap: 50px; }
.kamis-native-store .knc-newsletter-copy { width: 62%; }
.kamis-native-store .knc-newsletter-title .elementor-heading-title { font-family: var(--knc-display); font-size: clamp(2.5rem,4.2vw,5rem); font-weight: 400; letter-spacing: -.045em; line-height: .98; }
.kamis-native-store .knc-newsletter-lead { max-width: 700px; margin-top: 18px; color: rgba(26,26,26,.62); font-size: 11px; line-height: 1.7; }
.kamis-native-store .knc-newsletter-form { width: 38%; }
.kamis-native-store .knc-newsletter-form .elementor-form-fields-wrapper { display: grid !important; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 8px; border: 1px solid rgba(26,26,26,.17); border-radius: 999px; padding: 6px; background: var(--knc-white); }
.kamis-native-store .knc-newsletter-form .elementor-field-group { width: auto !important; margin: 0 !important; padding: 0 !important; }
.kamis-native-store .knc-newsletter-form .elementor-field-type-submit { min-width: 175px; }
.kamis-native-store .knc-newsletter-form input.elementor-field { min-height: 46px; border: 0 !important; border-radius: 999px !important; padding-inline: 18px !important; background: transparent !important; color: var(--knc-black) !important; font-family: var(--knc-ui) !important; font-size: 10px !important; box-shadow: none !important; }
.kamis-native-store .knc-newsletter-form .elementor-button { width: 100%; min-height: 46px; border: 0; border-radius: 999px; padding: 13px 18px; background: var(--knc-black); color: var(--knc-white); font-family: var(--knc-ui); font-size: 7px; font-weight: 800; letter-spacing: .08em; white-space: nowrap; text-transform: uppercase; }
.kamis-native-store .knc-newsletter-form .elementor-button:hover { background: var(--knc-gold); color: var(--knc-black); }
.kamis-native-store .knc-newsletter-form .elementor-message { margin-top: 10px; font-size: 10px; }

/* Product archives */
.knc-archive-page { padding-block: 28px 100px; }
.knc-archive-page .knc-breadcrumbs { color: var(--knc-gray); font-size: 11px; }
.knc-archive-page .knc-archive-hero { margin-block: 42px 48px; }
.knc-archive-page .knc-archive-title { margin-top: 20px; }
.knc-archive-page .knc-archive-description { max-width: 760px; margin-top: 20px; color: var(--knc-gray); font-size: 13px; line-height: 1.75; }
.knc-archive-page .knc-archive-search { max-width: 540px; margin-bottom: 34px; }

/* Single product */
.knc-single-page { padding-block: 28px 100px; }
.knc-single-page .knc-breadcrumbs { margin-bottom: 35px; color: var(--knc-gray); font-size: 11px; }
.knc-single-page .knc-single-top { gap: clamp(38px, 6vw, 90px); }
.knc-single-page .knc-single-gallery { width: 54%; min-width: 0; }
.knc-single-page .knc-single-summary { width: 46%; min-width: 0; padding-top: 20px; }
.knc-single-page .knc-product-images .woocommerce-product-gallery { width: 100% !important; }
.knc-single-page .knc-product-images .woocommerce-product-gallery__wrapper { border-radius: 34px 34px 86px 34px; background: var(--knc-nude-soft); }
.knc-single-page .knc-product-images .woocommerce-product-gallery__image img { width: 100%; aspect-ratio: 1/1; padding: clamp(28px, 5vw, 72px); object-fit: contain; filter: drop-shadow(0 22px 28px rgba(26,26,26,.15)); }
.knc-single-page .knc-single-title .elementor-heading-title { font-family: var(--knc-display); font-size: clamp(2.8rem, 4.5vw, 5.4rem); font-weight: 400; letter-spacing: -.04em; line-height: .98; }
.knc-single-page .knc-single-rating { margin-top: 20px; color: var(--knc-gold); }
.knc-single-page .knc-single-price { margin-top: 20px; }
.knc-single-page .knc-single-price .price { color: var(--knc-black); font-family: var(--knc-display); font-size: clamp(2rem, 3vw, 3rem); }
.knc-single-page .knc-single-short { margin-top: 24px; color: var(--knc-gray); font-size: 13px; line-height: 1.8; }
.knc-single-page .knc-single-stock { margin-top: 20px; font-size: 11px; font-weight: 700; text-transform: uppercase; }
.knc-single-page .knc-single-add { margin-top: 28px; }
.knc-single-page .knc-single-add form.cart { display: flex; flex-wrap: wrap; gap: 12px; }
.knc-single-page .knc-single-add .quantity input { min-height: 50px; border: 1px solid var(--knc-line); border-radius: 999px; background: var(--knc-alt); }
.knc-single-page .knc-single-add .single_add_to_cart_button { min-height: 50px; border: 0; border-radius: 999px; padding-inline: 28px; background: var(--knc-black); color: var(--knc-white); font-family: var(--knc-ui); font-size: 8px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.knc-single-page .knc-single-trust-widget { margin-top: 22px; }
.knc-single-page .knc-single-trust { display: flex; flex-wrap: wrap; gap: 8px; }
.knc-single-page .knc-single-trust span { border: 1px solid var(--knc-line); border-radius: 999px; padding: 8px 11px; color: var(--knc-gray); font-size: 8px; font-weight: 700; }
.knc-single-page .knc-single-meta { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--knc-line); color: var(--knc-gray); font-size: 11px; }
.knc-single-page .knc-product-tabs { margin-top: 80px; }
.knc-single-page .knc-product-tabs .woocommerce-tabs ul.tabs { display: flex; gap: 8px; border: 0; }
.knc-single-page .knc-product-tabs .woocommerce-tabs ul.tabs li { border: 1px solid var(--knc-line); border-radius: 999px; background: var(--knc-white); }
.knc-single-page .knc-product-tabs .woocommerce-tabs ul.tabs li.active { border-color: var(--knc-gold); background: var(--knc-gold); }
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel { border-radius: 28px; padding: 36px; background: var(--knc-alt); color: var(--knc-gray); line-height: 1.8; }
.knc-single-page .knc-related-heading { margin: 90px 0 42px; }

/* Reveals are decorative only and never hide content when JS is unavailable. */
.kamis-native-store.js-knc-ready .knc-reveal { opacity: 0; transform: translateY(28px); transition: opacity .75s var(--knc-ease), transform .75s var(--knc-ease); }
.kamis-native-store.js-knc-ready .knc-reveal.is-visible { opacity: 1; transform: none; }

/* Elementor editor shows the final static layout; motion runs in Preview and frontend. */
body.elementor-editor-active .kamis-native-store .knc-reveal,
body.elementor-editor-preview .kamis-native-store .knc-reveal,
.elementor-edit-mode .kamis-native-store .knc-reveal { opacity: 1 !important; transform: none !important; }
body.elementor-editor-active .kamis-native-store .knc-marquee-track,
.elementor-edit-mode .kamis-native-store .knc-marquee-track { animation-play-state: paused; }

/* Responsive */
@media (max-width: 1180px) {
  .kamis-native-store .knc-hero-copy { width: 53%; padding-left: 42px; }
  .kamis-native-store .knc-hero-visual { width: 47%; }
  .kamis-native-store .knc-karina { right: 4%; }
  .kamis-native-store .knc-woo-products.elementor-wc-products ul.products,
  .kamis-native-store .knc-woo-products ul.products,
  .knc-archive-page .knc-archive-products ul.products,
  .knc-single-page .knc-related-products ul.products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
  .kamis-native-store .knc-featured-products ul.products li.product { flex-basis: calc((100% - 32px) / 3); }
  .kamis-native-store .knc-combo-products ul.products { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
  .kamis-native-store .knc-category-grid { grid-auto-rows: 132px; }
}

@media (max-width: 900px) {
  .kamis-native-store .knc-store-bar { display: grid !important; grid-template-columns: 160px 1fr auto; gap: 14px; }
  .kamis-native-store .knc-store-logo { width: 160px; flex-basis: 160px; }
  .kamis-native-store .knc-hero { flex-direction: column !important; min-height: 0; }
  .kamis-native-store .knc-hero-copy { width: 100%; padding: 58px 34px 30px; }
  .kamis-native-store .knc-hero-visual { width: 100%; min-height: 590px; }
  .kamis-native-store .knc-karina { right: 13%; height: 108%; }
  .kamis-native-store .knc-section-head { flex-direction: column !important; align-items: flex-start !important; }
  .kamis-native-store .knc-section-sidecopy { max-width: 620px; }
  .kamis-native-store .knc-category-grid { grid-template-columns: 1fr 1fr; grid-auto-rows: 310px; }
  .kamis-native-store .knc-category-card { grid-column: auto !important; grid-row: auto !important; }
  .kamis-native-store .knc-cat-brows { grid-column: 1 / -1 !important; }
  .kamis-native-store .knc-original { flex-direction: column !important; }
  .kamis-native-store .knc-original-media,
  .kamis-native-store .knc-original-copy { width: 100%; }
  .kamis-native-store .knc-original-media { min-height: 500px; }
  .kamis-native-store .knc-catalog-toolbar { flex-direction: column !important; align-items: stretch !important; }
  .kamis-native-store .knc-catalog-search { width: 100%; flex-basis: auto; max-width: none; }
  .kamis-native-store .knc-woo-products.elementor-wc-products ul.products,
  .kamis-native-store .knc-woo-products ul.products,
  .knc-archive-page .knc-archive-products ul.products,
  .knc-single-page .knc-related-products ul.products { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .kamis-native-store .knc-featured-products ul.products li.product { flex-basis: calc((100% - 16px) / 2); }
  .kamis-native-store .knc-combo-products ul.products { grid-template-columns: 1fr !important; }
  .kamis-native-store .knc-info-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .kamis-native-store .knc-faq-grid { flex-direction: column !important; }
  .kamis-native-store .knc-faq-intro,
  .kamis-native-store .knc-faq-accordion { width: 100%; }
  .kamis-native-store .knc-newsletter-grid { flex-direction: column !important; align-items: stretch !important; }
  .kamis-native-store .knc-newsletter-copy,
  .kamis-native-store .knc-newsletter-form { width: 100%; }
  .knc-single-page .knc-single-top { flex-direction: column !important; }
  .knc-single-page .knc-single-gallery,
  .knc-single-page .knc-single-summary { width: 100%; }
}

@media (max-width: 620px) {
  .kamis-native-store .knc-shell,
  .knc-archive-page .knc-shell,
  .knc-single-page .knc-shell { width: min(calc(100% - 24px), 1480px); }
  .kamis-native-store .knc-store-bar { grid-template-columns: 1fr auto; min-height: 70px; padding-inline: 14px; }
  .kamis-native-store .knc-store-logo { width: 148px; }
  .kamis-native-store .knc-store-bar > .knc-product-search { grid-column: 1 / -1; grid-row: 2; max-width: none; }
  .kamis-native-store .knc-store-nav { justify-content: flex-start !important; }
  .kamis-native-store .knc-hero { margin-top: 12px; border-radius: 30px; }
  .kamis-native-store .knc-hero-copy { padding: 46px 22px 22px; }
  .kamis-native-store .knc-hero-title .elementor-heading-title { font-size: 3.05rem; }
  .kamis-native-store .knc-hero-subtitle .elementor-heading-title { font-size: 2.2rem; }
  .kamis-native-store .knc-actions { width: 100%; flex-direction: column !important; }
  .kamis-native-store .knc-actions .knc-btn,
  .kamis-native-store .knc-actions .elementor-button { width: 100%; }
  .kamis-native-store .knc-trust-widget { display: none; }
  .kamis-native-store .knc-hero-visual { min-height: 490px; }
  .kamis-native-store .knc-karina { right: 4%; height: 106%; }
  .kamis-native-store .knc-float-pigment { top: 12%; left: -5%; width: 120px; }
  .kamis-native-store .knc-float-machine { right: -8%; width: 138px; }
  .kamis-native-store .knc-float-lashes { left: 0; width: 110px; }
  .kamis-native-store .knc-badge-widget { top: 4%; right: 3%; transform: scale(.77); transform-origin: top right; }
  .kamis-native-store .knc-hero-note { right: 10px; bottom: 12px; width: 235px; padding: 17px; }
  .kamis-native-store .knc-note-title .elementor-heading-title { font-size: 19px; }
  .kamis-native-store .knc-section { padding-block: 62px; }
  .kamis-native-store .knc-section-title .elementor-heading-title,
  .knc-archive-page .knc-archive-title .elementor-heading-title { font-size: 2.8rem; }
  .kamis-native-store .knc-category-grid { grid-template-columns: 1fr; grid-auto-rows: 330px; }
  .kamis-native-store .knc-category-card { grid-column: auto !important; }
  .kamis-native-store .knc-category-copy { width: 65%; }
  .kamis-native-store .knc-featured-products ul.products li.product { flex-basis: 84%; }
  .kamis-native-store .knc-woo-products.elementor-wc-products ul.products,
  .kamis-native-store .knc-woo-products ul.products,
  .knc-archive-page .knc-archive-products ul.products,
  .knc-single-page .knc-related-products ul.products { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 10px !important; }
  .kamis-native-store .knc-woo-products ul.products li.product,
  .knc-archive-page .knc-archive-products ul.products li.product,
  .knc-single-page .knc-related-products ul.products li.product { border-radius: 19px 19px 45px 19px; padding: 8px 8px 14px !important; }
  .kamis-native-store .knc-woo-products ul.products li.product img,
  .knc-archive-page .knc-archive-products ul.products li.product img,
  .knc-single-page .knc-related-products ul.products li.product img { border-radius: 14px 14px 38px 14px; padding: 12px; }
  .kamis-native-store .knc-woo-products ul.products li.product .woocommerce-loop-product__title,
  .knc-archive-page .knc-archive-products ul.products li.product .woocommerce-loop-product__title { min-height: 38px; font-size: 10px !important; }
  .kamis-native-store .knc-woo-products ul.products li.product .price,
  .knc-archive-page .knc-archive-products ul.products li.product .price { margin: 10px 5px 10px !important; padding-top: 8px; font-size: 1.2rem !important; }
  .kamis-native-store .knc-woo-products ul.products li.product .button,
  .knc-archive-page .knc-archive-products ul.products li.product .button,
  .knc-single-page .knc-related-products ul.products li.product .button { width: calc(100% - 10px); max-width: none; min-height: 40px; margin: 0 5px !important; padding: 9px 7px !important; font-size: 6.5px !important; letter-spacing: .045em; }
  .kamis-native-store .knc-info-grid { grid-template-columns: 1fr; }
  .kamis-native-store .knc-info-card { min-height: 205px; padding: 24px; }
  .kamis-native-store .knc-faq-accordion .elementor-tab-title { font-size: 11px !important; }
  .kamis-native-store .knc-newsletter-form .elementor-form-fields-wrapper { grid-template-columns: 1fr; border-radius: 24px; }
  .kamis-native-store .knc-newsletter-form .elementor-field-type-submit { min-width: 0; }
  .kamis-native-store .knc-native-filters { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
  .kamis-native-store .knc-native-filters::-webkit-scrollbar { display: none; }
  .kamis-native-store .knc-filter-link { flex: 0 0 auto; }
  .kamis-native-store .knc-original-media { min-height: 390px; }
  .kamis-native-store .knc-original-copy { padding: 38px 24px 50px; }
  .kamis-native-store .knc-feature-list { grid-template-columns: 1fr; }
  .knc-single-page .knc-product-tabs .woocommerce-Tabs-panel { padding: 24px 18px; }
}

@media (max-width: 390px) {
  .kamis-native-store .knc-woo-products.elementor-wc-products ul.products,
  .kamis-native-store .knc-woo-products ul.products,
  .knc-archive-page .knc-archive-products ul.products,
  .knc-single-page .knc-related-products ul.products { grid-template-columns: 1fr !important; }
  .kamis-native-store .knc-featured-products ul.products { display: flex !important; }
  .kamis-native-store .knc-featured-products ul.products li.product { flex-basis: 88%; }
}

@media (prefers-reduced-motion: reduce) {
  .kamis-native-store *, .knc-archive-page *, .knc-single-page * { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* ========================================================================== 
   3.3.0 — Panoramic hero + premium WooCommerce templates
   ========================================================================== */

/* Home hero: almost full viewport, central portrait and richer product orbit. */
.kamis-native-store .knc-hero-full {
  width: calc(100vw - 32px);
  max-width: none;
  min-height: clamp(720px, 79vh, 870px);
  margin: 18px calc(50% - 50vw + 16px) 0;
  border-radius: 46px;
}
.kamis-native-store .knc-hero-full .knc-hero-copy {
  width: 44%;
  padding-left: clamp(46px, 7vw, 148px);
  padding-right: clamp(20px, 2.5vw, 48px);
}
.kamis-native-store .knc-hero-full .knc-hero-visual {
  width: 56%;
  min-height: clamp(720px, 79vh, 870px);
}
.kamis-native-store .knc-hero-full::before {
  top: -220px;
  left: 2%;
  right: auto;
  width: clamp(420px, 34vw, 660px);
  height: clamp(420px, 34vw, 660px);
  opacity: .70;
}
.kamis-native-store .knc-hero-full::after {
  right: -90px;
  bottom: -280px;
  width: 690px;
  height: 690px;
  border-width: 108px;
}
.kamis-native-store .knc-hero-full .knc-hero-title { max-width: 760px; }
.kamis-native-store .knc-hero-full .knc-hero-title .elementor-heading-title {
  font-size: clamp(3.8rem, 5.15vw, 6.8rem);
}
.kamis-native-store .knc-hero-full .knc-hero-visual::before {
  right: 14%;
  bottom: -6%;
  width: 64%;
  height: 95%;
}
.kamis-native-store .knc-hero-full .knc-hero-visual::after {
  right: 12%;
  bottom: 7%;
  font-size: clamp(260px, 22vw, 410px);
}
.kamis-native-store .knc-hero-full .knc-karina {
  left: 5%;
  right: auto;
  bottom: -9%;
  height: 118%;
}
.kamis-native-store .knc-hero-full .knc-karina img {
  filter: drop-shadow(0 38px 54px rgba(26,26,26,.27));
}
.kamis-native-store .knc-hero-full .knc-float-pigment {
  top: 12%;
  left: -4%;
  width: clamp(125px, 9vw, 178px);
}
.kamis-native-store .knc-hero-full .knc-float-machine {
  right: 5%;
  bottom: 10%;
  width: clamp(125px, 9vw, 180px);
  z-index: 6;
}
.kamis-native-store .knc-hero-full .knc-float-machine-row {
  right: -5%;
  top: 42%;
  width: clamp(255px, 21vw, 410px);
  z-index: 3;
  animation-delay: -1.2s;
  transform: rotate(8deg);
  opacity: .96;
}
.kamis-native-store .knc-hero-full .knc-float-machine-kit {
  left: -8%;
  bottom: 2%;
  width: clamp(210px, 16vw, 310px);
  z-index: 3;
  animation-delay: -3.2s;
  transform: rotate(-8deg);
}
.kamis-native-store .knc-hero-full .knc-float-tools {
  right: 4%;
  bottom: -1%;
  width: clamp(120px, 8vw, 165px);
  z-index: 6;
  animation-delay: -4.1s;
  transform: rotate(9deg);
}
.kamis-native-store .knc-hero-full .knc-float-lashes {
  left: 2%;
  bottom: 0;
  width: clamp(105px, 8vw, 150px);
  z-index: 6;
}
.kamis-native-store .knc-hero-full .knc-badge-widget {
  top: 8%;
  right: 5%;
}
.kamis-native-store .knc-hero-full .knc-hero-note {
  right: 3.5%;
  bottom: 5.5%;
}

/* Premium product archive. */
.knc-archive-page {
  padding: 0 0 clamp(80px, 8vw, 130px);
  background: var(--knc-white);
}
.knc-archive-page .knc-archive-banner {
  position: relative;
  isolation: isolate;
  width: calc(100vw - 32px);
  max-width: none;
  min-height: 610px;
  margin: 18px calc(50% - 50vw + 16px) 0;
  overflow: hidden;
  border-radius: 44px;
  background:
    radial-gradient(circle at 78% 8%, rgba(212,175,55,.28), transparent 28%),
    linear-gradient(112deg, #1A1A1A 0%, #1A1A1A 57%, #2a261d 100%);
  color: var(--knc-white);
  box-shadow: var(--knc-shadow-strong);
}
.knc-archive-page .knc-archive-banner::before {
  position: absolute;
  z-index: 0;
  top: -250px;
  right: 6%;
  width: 600px;
  height: 600px;
  border: 92px solid rgba(212,175,55,.18);
  border-radius: 50%;
  content: "";
}
.knc-archive-page .knc-archive-banner::after {
  position: absolute;
  z-index: 0;
  left: -120px;
  bottom: -220px;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  background: rgba(212,175,55,.11);
  content: "";
}
.knc-archive-page .knc-archive-banner-inner {
  position: relative;
  z-index: 2;
  width: min(calc(100% - 72px), 1560px);
  min-height: 610px;
  margin-inline: auto;
}
.knc-archive-page .knc-archive-banner-copy {
  width: 58%;
  justify-content: center;
  padding: clamp(54px, 6vw, 96px) clamp(24px, 4vw, 68px);
}
.knc-archive-page .knc-breadcrumbs-light,
.knc-archive-page .knc-breadcrumbs-light a { color: rgba(255,255,255,.62); }
.knc-archive-page .knc-kicker-light { color: var(--knc-gold); margin-top: 34px; }
.knc-archive-page .knc-kicker-light p::before { background: var(--knc-gold); }
.knc-archive-page .knc-archive-banner .knc-archive-title { margin-top: 22px; }
.knc-archive-page .knc-archive-banner .knc-archive-title .elementor-heading-title {
  max-width: 940px;
  color: var(--knc-white);
  font-family: var(--knc-display);
  font-size: clamp(4rem, 6.4vw, 7.8rem);
  font-weight: 400;
  letter-spacing: -.052em;
  line-height: .9;
}
.knc-archive-page .knc-archive-banner .knc-archive-description {
  max-width: 720px;
  margin-top: 22px;
  color: rgba(255,255,255,.58);
  font-size: 13px;
  line-height: 1.8;
}
.knc-archive-page .knc-archive-banner .knc-archive-search {
  width: min(100%, 650px);
  max-width: none;
  margin: 32px 0 0;
}
.knc-archive-page .knc-archive-banner .knc-product-search .elementor-search-form__container,
.knc-archive-page .knc-archive-banner .knc-product-search .e-search {
  border-color: rgba(255,255,255,.18) !important;
  background: rgba(255,255,255,.96) !important;
}
.knc-archive-page .knc-archive-trust-widget { margin-top: 18px; }
.knc-archive-page .knc-archive-trust { display: flex; flex-wrap: wrap; gap: 8px; }
.knc-archive-page .knc-archive-trust span {
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  padding: 8px 11px;
  color: rgba(255,255,255,.55);
  font-size: 8px;
  font-weight: 700;
}
.knc-archive-page .knc-archive-trust span::before { margin-right: 6px; color: var(--knc-gold); content: "✓"; }
.knc-archive-page .knc-archive-banner-art {
  position: relative;
  width: 42%;
  min-height: 610px;
}
.knc-archive-page .knc-archive-banner-art::before {
  position: absolute;
  z-index: 1;
  inset: 7% 6% 7% 3%;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 48% 48% 18% 18% / 35% 35% 14% 14%;
  background: linear-gradient(155deg, rgba(255,255,255,.13), rgba(255,255,255,.025));
  box-shadow: inset 0 0 0 18px rgba(255,255,255,.025);
  content: "";
}
.knc-archive-page .knc-archive-art {
  position: absolute;
  z-index: 4;
  animation: kncFloat 7s ease-in-out infinite;
}
.knc-archive-page .knc-archive-art img { width: 100%; object-fit: contain; filter: drop-shadow(0 30px 38px rgba(0,0,0,.42)); }
.knc-archive-page .knc-archive-art-brows { top: 7%; left: -6%; width: 58%; transform: rotate(-5deg); }
.knc-archive-page .knc-archive-art-machines { right: -8%; bottom: 9%; width: 66%; animation-delay: -2.5s; transform: rotate(8deg); }
.knc-archive-page .knc-archive-art-lashes { left: 2%; bottom: 2%; width: 36%; animation-delay: -4.2s; transform: rotate(-6deg); }
.knc-archive-page .knc-archive-seal-widget { position: absolute; z-index: 7; top: 10%; right: 4%; width: 150px; }
.knc-archive-page .knc-archive-seal {
  display: grid;
  width: 146px;
  aspect-ratio: 1;
  place-items: center;
  border: 2px solid var(--knc-white);
  border-radius: 50%;
  background: var(--knc-gold);
  box-shadow: 10px 10px 0 rgba(255,255,255,.12);
  color: var(--knc-black);
  text-align: center;
  transform: rotate(6deg);
}
.knc-archive-page .knc-archive-seal strong { display: block; font-family: var(--knc-display); font-size: 34px; font-weight: 400; line-height: .9; }
.knc-archive-page .knc-archive-seal span { display: block; margin-top: 4px; font-size: 8px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.knc-archive-page .knc-archive-monogram-widget { position: absolute; z-index: 0; right: 0; bottom: -12%; }
.knc-archive-page .knc-archive-monogram { color: rgba(255,255,255,.025); font-family: var(--knc-display); font-size: 480px; line-height: .7; }
.knc-archive-page .knc-archive-category-nav {
  width: 100%;
  gap: 9px;
  margin: 24px 0 0;
  overflow-x: auto;
  border: 1px solid var(--knc-line);
  border-radius: 999px;
  padding: 9px;
  background: var(--knc-alt);
  scrollbar-width: none;
}
.knc-archive-page .knc-archive-category-nav::-webkit-scrollbar { display: none; }
.knc-archive-page .knc-archive-chip { width: auto; flex: 0 0 auto; }
.knc-archive-page .knc-archive-chip .elementor-button {
  min-height: 42px;
  border: 0;
  border-radius: 999px;
  padding: 12px 17px;
  background: transparent;
  color: var(--knc-black);
  font-size: 7.5px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.knc-archive-page .knc-archive-chip .elementor-button:hover,
.knc-archive-page .knc-archive-chip-active .elementor-button { background: var(--knc-black); color: var(--knc-white); }
.knc-archive-page .knc-archive-catalog-section { padding-block: clamp(70px, 7vw, 112px); }
.knc-archive-page .knc-archive-catalog-head { gap: 40px; margin-bottom: 48px; }
.knc-archive-page .knc-archive-products ul.products li.product::before {
  position: absolute;
  z-index: 3;
  top: 17px;
  left: 17px;
  border: 1px solid var(--knc-line);
  border-radius: 999px;
  padding: 7px 9px;
  background: rgba(255,255,255,.88);
  color: var(--knc-black);
  content: "KAMIS PRO";
  font-size: 6px;
  font-weight: 900;
  letter-spacing: .1em;
}
.knc-archive-page .knc-archive-products ul.products li.product:nth-child(3n+2)::before { content: "SELECCIÓN"; }
.knc-archive-page .knc-archive-products ul.products li.product:nth-child(3n)::before { content: "PRO TOOL"; }

/* Premium single product. */
.knc-single-page {
  padding: 0 0 clamp(80px, 8vw, 130px);
  background: var(--knc-white);
}
.knc-single-page .knc-single-hero {
  position: relative;
  isolation: isolate;
  width: calc(100vw - 32px);
  max-width: none;
  margin: 18px calc(50% - 50vw + 16px) 0;
  overflow: hidden;
  border-radius: 44px;
  background:
    radial-gradient(circle at 88% 9%, rgba(212,175,55,.62), transparent 26%),
    linear-gradient(118deg, var(--knc-nude-soft), var(--knc-nude));
  box-shadow: var(--knc-shadow);
}
.knc-single-page .knc-single-hero::before {
  position: absolute;
  z-index: 0;
  right: -210px;
  bottom: -260px;
  width: 650px;
  height: 650px;
  border: 105px solid rgba(255,255,255,.56);
  border-radius: 50%;
  content: "";
}
.knc-single-page .knc-single-hero::after {
  position: absolute;
  z-index: 0;
  top: -240px;
  left: -170px;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  background: rgba(212,175,55,.50);
  content: "";
}
.knc-single-page .knc-single-hero-inner {
  position: relative;
  z-index: 2;
  width: min(calc(100% - 72px), 1560px);
  min-height: 720px;
  gap: clamp(42px, 6vw, 94px);
  margin-inline: auto;
  padding-block: clamp(48px, 6vw, 86px);
}
.knc-single-page .knc-single-gallery-column { width: 56%; min-width: 0; }
.knc-single-page .knc-single-gallery-column .knc-breadcrumbs { margin: 0 0 22px; color: rgba(26,26,26,.52); font-size: 10px; }
.knc-single-page .knc-single-gallery {
  position: relative;
  width: 100%;
  overflow: hidden;
  border: 1px solid rgba(26,26,26,.07);
  border-radius: 38px 38px 110px 38px;
  padding: clamp(20px, 3vw, 42px);
  background: rgba(255,255,255,.82);
  box-shadow: 0 30px 90px rgba(26,26,26,.12);
  backdrop-filter: blur(16px);
}
.knc-single-page .knc-single-gallery::before {
  position: absolute;
  right: -95px;
  bottom: -120px;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  background: rgba(212,175,55,.72);
  content: "";
}
.knc-single-page .knc-product-images { position: relative; z-index: 2; }
.knc-single-page .knc-product-images .woocommerce-product-gallery__wrapper {
  overflow: hidden;
  border-radius: 24px 24px 76px 24px;
  background: transparent;
}
.knc-single-page .knc-product-images .woocommerce-product-gallery__image img {
  min-height: 530px;
  aspect-ratio: 1/1;
  padding: clamp(24px, 5vw, 74px);
  object-fit: contain;
  filter: drop-shadow(0 28px 34px rgba(26,26,26,.20));
}
.knc-single-page .knc-gallery-badge-widget { position: absolute; z-index: 6; top: 25px; right: 25px; width: 116px; }
.knc-single-page .knc-gallery-badge {
  display: grid;
  width: 112px;
  aspect-ratio: 1;
  place-items: center;
  border: 2px solid var(--knc-black);
  border-radius: 50%;
  background: var(--knc-gold);
  box-shadow: 8px 8px 0 var(--knc-black);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  transform: rotate(7deg);
}
.knc-single-page .knc-single-summary {
  position: relative;
  width: 44%;
  min-width: 0;
  justify-content: center;
  border-left: 1px solid rgba(26,26,26,.10);
  padding: clamp(24px, 4vw, 66px);
}
.knc-single-page .knc-single-summary::after {
  position: absolute;
  right: -16%;
  bottom: -16%;
  color: rgba(26,26,26,.035);
  content: "K";
  font-family: var(--knc-display);
  font-size: 330px;
  line-height: .7;
  pointer-events: none;
}
.knc-single-page .knc-single-title { margin-top: 22px; }
.knc-single-page .knc-single-title .elementor-heading-title {
  position: relative;
  z-index: 2;
  font-size: clamp(3.2rem, 4.6vw, 6.1rem);
  line-height: .92;
}
.knc-single-page .knc-single-rating,
.knc-single-page .knc-single-price,
.knc-single-page .knc-single-short,
.knc-single-page .knc-single-stock,
.knc-single-page .knc-single-add,
.knc-single-page .knc-single-trust-widget,
.knc-single-page .knc-single-meta { position: relative; z-index: 2; }
.knc-single-page .knc-single-price .price { font-size: clamp(2.3rem, 3.3vw, 3.8rem); }
.knc-single-page .knc-single-short { max-width: 650px; }
.knc-single-page .knc-single-add form.cart { display: block; width: 100%; }
.knc-single-page .knc-single-add form.cart::after { display: table; clear: both; content: ""; }
.knc-single-page .knc-single-add .variations,
.knc-single-page .knc-single-add .group_table { width: 100%; margin-bottom: 20px; border-collapse: separate; border-spacing: 0 9px; }
.knc-single-page .knc-single-add .variations th,
.knc-single-page .knc-single-add .group_table td { padding: 8px 4px; text-align: left; }
.knc-single-page .knc-single-add select {
  width: 100%;
  min-height: 48px;
  border: 1px solid var(--knc-line);
  border-radius: 999px;
  padding-inline: 18px;
  background: var(--knc-white);
  color: var(--knc-black);
}
.knc-single-page .knc-single-add .woocommerce-variation-add-to-cart,
.knc-single-page .knc-single-add .woocommerce-grouped-product-list-item__quantity {
  display: flex;
  align-items: center;
  gap: 12px;
}
.knc-single-page .knc-single-add .quantity { float: none; margin: 0 !important; }
.knc-single-page .knc-single-add .quantity input { width: 82px; padding-inline: 12px; text-align: center; }
.knc-single-page .knc-single-add .single_add_to_cart_button {
  min-width: 230px;
  min-height: 54px;
  border-radius: 999px;
  background: var(--knc-black) !important;
  color: var(--knc-white) !important;
}
.knc-single-page .knc-single-add .single_add_to_cart_button:hover { background: var(--knc-gold) !important; color: var(--knc-black) !important; }
.knc-single-page .knc-single-service-strip {
  width: 100%;
  border-block: 1px solid rgba(255,255,255,.12);
  background: var(--knc-black);
  color: var(--knc-white);
}
.knc-single-page .knc-single-service-grid { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)); }
.knc-single-page .knc-single-service-item { min-width: 0; border-right: 1px solid rgba(255,255,255,.11); }
.knc-single-page .knc-single-service-item:last-child { border-right: 0; }
.knc-single-page .knc-single-service { display: grid; min-height: 150px; grid-template-columns: 42px 1fr; align-items: center; gap: 14px; padding: 28px 24px; }
.knc-single-page .knc-single-service b { color: var(--knc-gold); font-family: var(--knc-display); font-size: 28px; font-weight: 400; }
.knc-single-page .knc-single-service span { color: rgba(255,255,255,.48); font-size: 10px; line-height: 1.6; }
.knc-single-page .knc-single-service strong { display: block; margin-bottom: 5px; color: var(--knc-white); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.knc-single-page .knc-single-details-section { padding-block: clamp(80px, 8vw, 130px); background: var(--knc-white); }
.knc-single-page .knc-single-details-grid { gap: clamp(42px, 7vw, 110px); }
.knc-single-page .knc-single-details-intro { position: sticky; top: 110px; width: 36%; min-width: 0; }
.knc-single-page .knc-product-tabs { width: 64%; min-width: 0; margin: 0; }
.knc-single-page .knc-product-tabs .woocommerce-tabs ul.tabs {
  flex-wrap: wrap;
  margin: 0 0 18px;
  padding: 0;
}
.knc-single-page .knc-product-tabs .woocommerce-tabs ul.tabs::before { display: none; }
.knc-single-page .knc-product-tabs .woocommerce-tabs ul.tabs li { margin: 0; padding: 0; }
.knc-single-page .knc-product-tabs .woocommerce-tabs ul.tabs li a { padding: 12px 18px; font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel {
  border: 1px solid var(--knc-line);
  border-radius: 30px 30px 80px 30px;
  padding: clamp(28px, 4vw, 56px);
  background: var(--knc-alt);
  box-shadow: 0 22px 70px rgba(26,26,26,.055);
}
.knc-single-page .knc-single-related-section { padding-block: clamp(80px, 8vw, 130px); background: var(--knc-nude-soft); }
.knc-single-page .knc-related-heading { margin: 0; }

@media (max-width: 1180px) {
  .kamis-native-store .knc-hero-full .knc-hero-copy { width: 48%; padding-left: 44px; }
  .kamis-native-store .knc-hero-full .knc-hero-visual { width: 52%; }
  .kamis-native-store .knc-hero-full .knc-karina { left: 0; height: 112%; }
  .kamis-native-store .knc-hero-full .knc-float-machine-row { right: -14%; width: 330px; }
  .kamis-native-store .knc-hero-full .knc-float-machine-kit { left: -14%; width: 230px; }
  .knc-archive-page .knc-archive-banner-copy { width: 61%; }
  .knc-archive-page .knc-archive-banner-art { width: 39%; }
  .knc-single-page .knc-single-hero-inner { gap: 38px; }
  .knc-single-page .knc-single-gallery-column { width: 54%; }
  .knc-single-page .knc-single-summary { width: 46%; padding: 30px; }
}

@media (max-width: 900px) {
  .kamis-native-store .knc-hero-full {
    width: calc(100vw - 20px);
    min-height: 0;
    margin-inline: calc(50% - 50vw + 10px);
  }
  .kamis-native-store .knc-hero-full .knc-hero-copy,
  .kamis-native-store .knc-hero-full .knc-hero-visual { width: 100%; }
  .kamis-native-store .knc-hero-full .knc-hero-copy { padding: 58px 34px 28px; }
  .kamis-native-store .knc-hero-full .knc-hero-visual { min-height: 650px; }
  .kamis-native-store .knc-hero-full .knc-karina { left: 50%; bottom: -9%; height: 110%; transform: translateX(-50%); }
  .kamis-native-store .knc-hero-full .knc-float-pigment { left: 6%; }
  .kamis-native-store .knc-hero-full .knc-float-machine-row { right: -8%; top: 44%; width: 300px; }
  .kamis-native-store .knc-hero-full .knc-float-machine-kit { left: -4%; bottom: 3%; width: 210px; }
  .kamis-native-store .knc-hero-full .knc-float-tools { right: 5%; }
  .kamis-native-store .knc-hero-full .knc-hero-note { right: 18px; bottom: 20px; }
  .knc-archive-page .knc-archive-banner,
  .knc-single-page .knc-single-hero { width: calc(100vw - 20px); margin-inline: calc(50% - 50vw + 10px); }
  .knc-archive-page .knc-archive-banner-inner { width: calc(100% - 40px); flex-direction: column !important; }
  .knc-archive-page .knc-archive-banner-copy,
  .knc-archive-page .knc-archive-banner-art { width: 100%; }
  .knc-archive-page .knc-archive-banner-art { min-height: 430px; }
  .knc-archive-page .knc-archive-art-brows { width: 48%; left: 2%; }
  .knc-archive-page .knc-archive-art-machines { width: 55%; }
  .knc-archive-page .knc-archive-seal-widget { top: 5%; }
  .knc-archive-page .knc-archive-catalog-head { flex-direction: column !important; align-items: flex-start !important; }
  .knc-single-page .knc-single-hero-inner { width: calc(100% - 40px); flex-direction: column !important; min-height: 0; }
  .knc-single-page .knc-single-gallery-column,
  .knc-single-page .knc-single-summary { width: 100%; }
  .knc-single-page .knc-single-summary { border-left: 0; border-top: 1px solid rgba(26,26,26,.1); }
  .knc-single-page .knc-single-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .knc-single-page .knc-single-service-item:nth-child(2) { border-right: 0; }
  .knc-single-page .knc-single-service-item:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.11); }
  .knc-single-page .knc-single-details-grid { flex-direction: column !important; }
  .knc-single-page .knc-single-details-intro,
  .knc-single-page .knc-product-tabs { position: static; width: 100%; }
}

@media (max-width: 620px) {
  .kamis-native-store .knc-hero-full { width: calc(100vw - 12px); margin-inline: calc(50% - 50vw + 6px); border-radius: 28px; }
  .kamis-native-store .knc-hero-full .knc-hero-copy { padding: 44px 20px 20px; }
  .kamis-native-store .knc-hero-full .knc-hero-title .elementor-heading-title { font-size: 3.15rem; }
  .kamis-native-store .knc-hero-full .knc-hero-visual { min-height: 520px; }
  .kamis-native-store .knc-hero-full .knc-karina { height: 104%; }
  .kamis-native-store .knc-hero-full .knc-float-pigment { top: 8%; left: 1%; width: 102px; }
  .kamis-native-store .knc-hero-full .knc-float-machine-row { right: -23%; top: 46%; width: 250px; }
  .kamis-native-store .knc-hero-full .knc-float-machine-kit { left: -16%; width: 180px; }
  .kamis-native-store .knc-hero-full .knc-float-machine { display: none; }
  .kamis-native-store .knc-hero-full .knc-float-tools { width: 102px; }
  .kamis-native-store .knc-hero-full .knc-float-lashes { width: 88px; }
  .kamis-native-store .knc-hero-full .knc-badge-widget { top: 6%; right: 7%; width: 96px; }
  .kamis-native-store .knc-hero-full .knc-catalog-badge { width: 92px; font-size: 7px; box-shadow: 6px 6px 0 var(--knc-black); }
  .kamis-native-store .knc-hero-full .knc-hero-note { width: 220px; padding: 16px; }
  .knc-archive-page .knc-archive-banner,
  .knc-single-page .knc-single-hero { width: calc(100vw - 12px); margin-inline: calc(50% - 50vw + 6px); border-radius: 28px; }
  .knc-archive-page .knc-archive-banner-inner,
  .knc-single-page .knc-single-hero-inner { width: calc(100% - 24px); }
  .knc-archive-page .knc-archive-banner-copy { padding: 44px 12px 20px; }
  .knc-archive-page .knc-archive-banner .knc-archive-title .elementor-heading-title { font-size: 3.45rem; }
  .knc-archive-page .knc-archive-banner-art { min-height: 340px; }
  .knc-archive-page .knc-archive-seal-widget { width: 100px; }
  .knc-archive-page .knc-archive-seal { width: 96px; }
  .knc-archive-page .knc-archive-seal strong { font-size: 25px; }
  .knc-archive-page .knc-archive-category-nav { border-radius: 22px; }
  .knc-single-page .knc-single-hero-inner { padding-block: 24px 46px; }
  .knc-single-page .knc-single-gallery { border-radius: 24px 24px 64px 24px; padding: 12px; }
  .knc-single-page .knc-product-images .woocommerce-product-gallery__image img { min-height: 340px; padding: 28px; }
  .knc-single-page .knc-gallery-badge-widget { top: 12px; right: 12px; width: 82px; }
  .knc-single-page .knc-gallery-badge { width: 78px; font-size: 6px; box-shadow: 5px 5px 0 var(--knc-black); }
  .knc-single-page .knc-single-summary { padding: 34px 12px 12px; }
  .knc-single-page .knc-single-title .elementor-heading-title { font-size: 3rem; }
  .knc-single-page .knc-single-add .woocommerce-variation-add-to-cart { align-items: stretch; flex-direction: column; }
  .knc-single-page .knc-single-add .quantity input,
  .knc-single-page .knc-single-add .single_add_to_cart_button { width: 100%; min-width: 0; }
  .knc-single-page .knc-single-service-grid { grid-template-columns: 1fr; }
  .knc-single-page .knc-single-service-item { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.11); }
  .knc-single-page .knc-single-service-item:last-child { border-bottom: 0; }
  .knc-single-page .knc-single-service { min-height: 112px; padding: 20px 8px; }
}

/* ========================================================================== 
   3.4.0 — Full-width storefront, archive and single product
   ========================================================================== */

/* Break the generated Elementor document out of boxed theme containers. */
.kamis-native-store,
.knc-archive-page,
.knc-single-page {
  --knc-wide-shell: 1840px;
  width: 100vw !important;
  max-width: none !important;
  margin-right: calc(50% - 50vw) !important;
  margin-left: calc(50% - 50vw) !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  --content-width: 100% !important;
  --width: 100% !important;
}

.kamis-native-store.e-con,
.knc-archive-page.e-con,
.knc-single-page.e-con,
.kamis-native-store > .e-con-inner,
.knc-archive-page > .e-con-inner,
.knc-single-page > .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

/* Neutralize common theme wrappers only on Kamis storefront documents. */
body.knw-store-full-width .site-main,
body.knw-store-full-width .content-area,
body.knw-store-full-width .site-content,
body.knw-store-full-width .content-layout-wrapper,
body.knw-store-full-width .main-page-wrapper,
body.knw-store-full-width .elementor-location-archive,
body.knw-store-full-width .elementor-location-single {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

/* Full-bleed bands with a wide, readable inner composition. */
.kamis-native-store .knc-shell,
.knc-archive-page .knc-shell,
.knc-single-page .knc-shell {
  width: min(calc(100% - 48px), var(--knc-wide-shell)) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

.kamis-native-store .knc-section,
.kamis-native-store .knc-marquee,
.kamis-native-store .knc-benefits-section,
.kamis-native-store .knc-faq-section,
.kamis-native-store .knc-newsletter-section,
.knc-archive-page .knc-archive-catalog-section,
.knc-single-page .knc-single-service-strip,
.knc-single-page .knc-single-details-section,
.knc-single-page .knc-single-related-section {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
}

.kamis-native-store .knc-store-bar {
  width: 100%;
  max-width: none;
  padding-inline: clamp(20px, 3vw, 58px);
}

.kamis-native-store .knc-store-nav {
  width: 100%;
  max-width: none;
  padding-inline: clamp(20px, 3vw, 58px);
}

/* Panoramic hero: very small outer gutter and Karina nearer the visual centre. */
.kamis-native-store .knc-hero-full {
  width: calc(100vw - 24px) !important;
  margin-right: calc(50% - 50vw + 12px) !important;
  margin-left: calc(50% - 50vw + 12px) !important;
}

.kamis-native-store .knc-hero-full .knc-hero-copy {
  width: 42%;
  padding-left: clamp(44px, 6.4vw, 132px);
}

.kamis-native-store .knc-hero-full .knc-hero-visual { width: 58%; }

.kamis-native-store .knc-hero-full .knc-karina {
  left: -8%;
  height: 122%;
}

/* Archive and single-product hero bands follow the same viewport geometry. */
.knc-archive-page .knc-archive-banner,
.knc-single-page .knc-single-hero {
  width: calc(100vw - 24px) !important;
  margin-right: calc(50% - 50vw + 12px) !important;
  margin-left: calc(50% - 50vw + 12px) !important;
}

.knc-archive-page .knc-archive-banner-inner,
.knc-single-page .knc-single-hero-inner {
  width: min(calc(100% - 48px), var(--knc-wide-shell)) !important;
  max-width: none !important;
}

/* Let product grids benefit from the added horizontal room. */
.kamis-native-store .knc-woo-products ul.products,
.knc-archive-page .knc-archive-products ul.products,
.knc-single-page .knc-related-products ul.products {
  width: 100% !important;
}

@media (max-width: 1180px) {
  .kamis-native-store .knc-hero-full .knc-hero-copy { width: 46%; padding-left: 42px; }
  .kamis-native-store .knc-hero-full .knc-hero-visual { width: 54%; }
  .kamis-native-store .knc-hero-full .knc-karina { left: -7%; height: 116%; }
}

@media (max-width: 900px) {
  .kamis-native-store,
  .knc-archive-page,
  .knc-single-page {
    margin-right: calc(50% - 50vw) !important;
    margin-left: calc(50% - 50vw) !important;
  }

  .kamis-native-store .knc-shell,
  .knc-archive-page .knc-shell,
  .knc-single-page .knc-shell {
    width: calc(100% - 32px) !important;
  }

  .kamis-native-store .knc-hero-full,
  .knc-archive-page .knc-archive-banner,
  .knc-single-page .knc-single-hero {
    width: calc(100vw - 16px) !important;
    margin-right: calc(50% - 50vw + 8px) !important;
    margin-left: calc(50% - 50vw + 8px) !important;
  }

  .kamis-native-store .knc-hero-full .knc-hero-copy,
  .kamis-native-store .knc-hero-full .knc-hero-visual { width: 100%; }

  .kamis-native-store .knc-hero-full .knc-karina {
    left: 50%;
    height: 110%;
    transform: translateX(-50%);
  }

  .knc-archive-page .knc-archive-banner-inner,
  .knc-single-page .knc-single-hero-inner { width: calc(100% - 32px) !important; }
}

@media (max-width: 620px) {
  .kamis-native-store .knc-shell,
  .knc-archive-page .knc-shell,
  .knc-single-page .knc-shell { width: calc(100% - 20px) !important; }

  .kamis-native-store .knc-hero-full,
  .knc-archive-page .knc-archive-banner,
  .knc-single-page .knc-single-hero {
    width: calc(100vw - 8px) !important;
    margin-right: calc(50% - 50vw + 4px) !important;
    margin-left: calc(50% - 50vw + 4px) !important;
  }

  .knc-archive-page .knc-archive-banner-inner,
  .knc-single-page .knc-single-hero-inner { width: calc(100% - 20px) !important; }
}


/* ========================================================================== 
   3.5.0 — Readable single product, icon benefits and complete related grid
   ========================================================================== */

/* Product summary typography. */
.knc-single-page .knc-single-short,
.knc-single-page .knc-single-short p {
  color: rgba(26,26,26,.70) !important;
  font-size: clamp(15px, 1.05vw, 18px) !important;
  line-height: 1.8 !important;
}
.knc-single-page .knc-single-stock,
.knc-single-page .knc-single-meta,
.knc-single-page .knc-single-meta a {
  font-size: 12px !important;
  line-height: 1.65 !important;
}
.knc-single-page .knc-single-trust { gap: 10px; }
.knc-single-page .knc-single-trust span {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  gap: 8px;
  padding: 9px 14px;
  color: rgba(26,26,26,.66);
  font-size: 10px;
}
.knc-single-page .knc-single-trust span::before {
  display: grid;
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  background: rgba(212,175,55,.18);
  color: var(--knc-gold);
  font-size: 12px;
  font-weight: 900;
}
.knc-single-page .knc-single-trust span:nth-child(1)::before { content: "✓"; }
.knc-single-page .knc-single-trust span:nth-child(2)::before { content: "↗"; }
.knc-single-page .knc-single-trust span:nth-child(3)::before { content: "✦"; }

/* Dark benefit band with clear iconography. */
.knc-single-page .knc-single-service {
  min-height: 172px;
  grid-template-columns: 58px minmax(0,1fr);
  gap: 18px;
  padding: 32px clamp(22px, 2.2vw, 38px);
}
.knc-single-page .knc-single-service b {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border: 1px solid rgba(212,175,55,.44);
  border-radius: 50%;
  background: rgba(212,175,55,.08);
  font-size: 0;
}
.knc-single-page .knc-single-service b::before {
  color: var(--knc-gold);
  font-family: var(--knc-ui);
  font-size: 20px;
  font-weight: 700;
}
.knc-single-page .knc-single-service-item:nth-child(1) b::before { content: "✦"; }
.knc-single-page .knc-single-service-item:nth-child(2) b::before { content: "✓"; }
.knc-single-page .knc-single-service-item:nth-child(3) b::before { content: "↗"; }
.knc-single-page .knc-single-service-item:nth-child(4) b::before { content: "◇"; }
.knc-single-page .knc-single-service span {
  color: rgba(255,255,255,.66);
  font-size: clamp(11px, .8vw, 13px);
  line-height: 1.65;
}
.knc-single-page .knc-single-service strong {
  margin-bottom: 7px;
  font-size: clamp(11px, .78vw, 13px);
  line-height: 1.3;
}

/* Editorial description section. */
.knc-single-page .knc-single-details-grid {
  align-items: stretch !important;
  gap: clamp(40px, 6vw, 96px);
}
.knc-single-page .knc-single-details-intro {
  width: 31%;
  padding: 18px 0;
}
.knc-single-page .knc-single-details-intro .knc-section-title .elementor-heading-title {
  font-size: clamp(3rem, 4.4vw, 5.7rem);
  line-height: .97;
}
.knc-single-page .knc-single-details-intro .knc-section-sidecopy,
.knc-single-page .knc-single-details-intro .knc-section-sidecopy p {
  max-width: 500px;
  color: rgba(26,26,26,.64);
  font-size: clamp(14px, .95vw, 17px);
  line-height: 1.8;
}
.knc-single-page .knc-detail-points {
  display: grid;
  gap: 10px;
  margin-top: 28px;
}
.knc-single-page .knc-detail-points span {
  display: flex;
  align-items: center;
  gap: 11px;
  border-bottom: 1px solid var(--knc-line);
  padding: 12px 0;
  color: var(--knc-black);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.knc-single-page .knc-detail-points span::before {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border-radius: 50%;
  background: var(--knc-gold);
  color: var(--knc-black);
  content: "✓";
  font-size: 11px;
  font-weight: 900;
}
.knc-single-page .knc-product-tabs {
  width: 69%;
  border: 1px solid var(--knc-line);
  border-radius: 38px 38px 100px 38px;
  padding: clamp(22px, 3vw, 38px);
  background: var(--knc-alt);
  box-shadow: 0 28px 90px rgba(26,26,26,.07);
}
.knc-single-page .knc-product-tabs .woocommerce-tabs ul.tabs {
  gap: 10px;
  margin-bottom: 20px;
}
.knc-single-page .knc-product-tabs .woocommerce-tabs ul.tabs li {
  border-radius: 999px;
  overflow: hidden;
}
.knc-single-page .knc-product-tabs .woocommerce-tabs ul.tabs li a {
  padding: 13px 20px;
  font-size: 9px;
}
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel {
  min-height: 300px;
  border: 0;
  border-left: 4px solid var(--knc-gold);
  border-radius: 0 24px 64px 0;
  padding: clamp(30px, 4vw, 58px);
  background: var(--knc-white);
  box-shadow: none;
}
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel > h2:first-child {
  display: none !important;
}
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel,
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel p,
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel li,
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel td,
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel th {
  color: rgba(26,26,26,.72);
  font-size: clamp(15px, 1vw, 18px) !important;
  line-height: 1.85 !important;
}
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel p { margin: 0 0 1.15em; }
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel ul,
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel ol { margin: 20px 0; padding-left: 0; list-style: none; }
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel li {
  position: relative;
  margin: 10px 0;
  padding-left: 32px;
}
.knc-single-page .knc-product-tabs .woocommerce-Tabs-panel li::before {
  position: absolute;
  top: .25em;
  left: 0;
  display: grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 50%;
  background: rgba(212,175,55,.18);
  color: var(--knc-gold);
  content: "✓";
  font-size: 9px;
  font-weight: 900;
}
.knc-single-page .knc-product-tabs table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid var(--knc-line);
  border-radius: 18px;
}
.knc-single-page .knc-product-tabs table th,
.knc-single-page .knc-product-tabs table td {
  border-bottom: 1px solid var(--knc-line);
  padding: 14px 16px;
  text-align: left;
}

/* Four genuinely populated related products. */
.knc-single-page .knc-related-products.elementor-wc-products ul.products,
.knc-single-page .knc-related-products ul.products,
.knc-single-page .related.products ul.products {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap: clamp(14px, 1.4vw, 24px) !important;
}
.knc-single-page .knc-related-products ul.products::before,
.knc-single-page .knc-related-products ul.products::after,
.knc-single-page .related.products ul.products::before,
.knc-single-page .related.products ul.products::after { display: none !important; }
.knc-single-page .knc-related-products ul.products li.product,
.knc-single-page .related.products ul.products li.product {
  width: auto !important;
  max-width: none !important;
}
.knc-single-page .knc-related-products .woocommerce-loop-product__title,
.knc-single-page .related.products .woocommerce-loop-product__title {
  min-height: 48px;
  font-size: 14px !important;
}
.knc-single-page .knc-related-products .price,
.knc-single-page .related.products .price { font-size: clamp(1.5rem, 1.8vw, 2rem) !important; }

@media (max-width: 1100px) {
  .knc-single-page .knc-single-details-intro,
  .knc-single-page .knc-product-tabs { width: 100%; }
  .knc-single-page .knc-single-details-intro { position: static; }
  .knc-single-page .knc-related-products.elementor-wc-products ul.products,
  .knc-single-page .knc-related-products ul.products,
  .knc-single-page .related.products ul.products { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}

@media (max-width: 620px) {
  .knc-single-page .knc-single-service { min-height: 0; grid-template-columns: 46px 1fr; padding: 22px 10px; }
  .knc-single-page .knc-single-service b { width: 40px; height: 40px; }
  .knc-single-page .knc-single-short,
  .knc-single-page .knc-single-short p { font-size: 15px !important; }
  .knc-single-page .knc-product-tabs { border-radius: 26px 26px 68px 26px; padding: 14px; }
  .knc-single-page .knc-product-tabs .woocommerce-Tabs-panel { min-height: 0; padding: 26px 20px; }
  .knc-single-page .knc-related-products.elementor-wc-products ul.products,
  .knc-single-page .knc-related-products ul.products,
  .knc-single-page .related.products ul.products { grid-template-columns: 1fr !important; }
}

/* ========================================================================
   PRODUCT ARCHIVE 3.6 — native Elementor + native WooCommerce filters
   Inspired by the commercial hierarchy of the supplied Velvet archive,
   translated to the Kamis premium visual system.
   ======================================================================== */
.knc-archive-page.knc-archive-velvet {
  background: var(--knc-light, #F9F9F9);
  overflow: clip;
}

.knc-archive-page.knc-archive-velvet .knc-archive-banner {
  min-height: clamp(470px, 38vw, 660px);
  margin-top: 12px;
  border-radius: 0 0 84px 84px;
  background:
    radial-gradient(circle at 82% 18%, rgba(212,175,55,.32) 0 15%, transparent 15.4%),
    radial-gradient(circle at 11% -4%, rgba(232,220,196,.24) 0 22%, transparent 22.4%),
    #1A1A1A;
}

.knc-archive-page.knc-archive-velvet .knc-archive-banner::before {
  width: 360px;
  height: 360px;
  top: -180px;
  left: -110px;
  border: 70px solid rgba(212,175,55,.18);
  background: transparent;
}

.knc-archive-page.knc-archive-velvet .knc-archive-banner-inner {
  width: min(calc(100% - 48px), 1840px);
  min-height: inherit;
  margin-inline: auto;
}

.knc-archive-page.knc-archive-velvet .knc-archive-banner-copy {
  justify-content: center;
  padding: clamp(52px, 6vw, 104px) clamp(24px, 4vw, 72px);
}

.knc-archive-page.knc-archive-velvet .knc-archive-banner .knc-archive-title .elementor-heading-title {
  max-width: 820px;
  font-size: clamp(4rem, 7.2vw, 8.4rem);
  line-height: .86;
  letter-spacing: -.055em;
}

.knc-archive-page.knc-archive-velvet .knc-archive-banner .knc-archive-description {
  max-width: 700px;
  font-size: clamp(14px, 1.05vw, 18px);
  line-height: 1.7;
}

.knc-archive-page.knc-archive-velvet .knc-archive-banner-art {
  min-height: 470px;
}

.knc-archive-page.knc-archive-velvet .knc-archive-art-brows {
  top: 9%;
  left: -2%;
  width: 58%;
}

.knc-archive-page.knc-archive-velvet .knc-archive-art-machines {
  right: -3%;
  bottom: 3%;
  width: 71%;
}

.knc-archive-page.knc-archive-velvet .knc-archive-art-lashes {
  left: 3%;
  bottom: -4%;
  width: 39%;
}

.knc-archive-page.knc-archive-velvet .knc-archive-category-nav {
  width: 100%;
  margin: 24px auto 0;
  padding: 10px;
  border: 1px solid rgba(26,26,26,.10);
  border-radius: 999px;
  background: rgba(255,255,255,.9);
  box-shadow: 0 18px 55px rgba(26,26,26,.06);
  backdrop-filter: blur(14px);
}

.knc-archive-page.knc-archive-velvet .knc-archive-chip .elementor-button {
  min-height: 44px;
  padding-inline: 22px;
  font-size: 10px;
}

.knc-archive-page.knc-archive-velvet .knc-archive-market {
  position: relative;
  padding-block: clamp(64px, 7vw, 118px);
  background:
    radial-gradient(circle at 96% 4%, rgba(212,175,55,.10) 0 11%, transparent 11.4%),
    linear-gradient(180deg, #F9F9F9 0%, #F4ECE1 100%);
}

.knc-archive-page.knc-archive-velvet .knc-archive-market-inner {
  display: grid !important;
  grid-template-columns: minmax(270px, 330px) minmax(0, 1fr);
  gap: clamp(24px, 3vw, 54px);
  align-items: start !important;
}

.knc-archive-page.knc-archive-velvet .knc-archive-filter-panel {
  position: sticky;
  z-index: 15;
  top: 110px;
  width: 100%;
  max-height: calc(100vh - 140px);
  padding: 18px;
  overflow: auto;
  border: 1px solid rgba(26,26,26,.10);
  border-radius: 34px 34px 84px 34px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 28px 70px rgba(26,26,26,.09);
  scrollbar-width: thin;
  scrollbar-color: #D4AF37 transparent;
}

.knc-archive-page.knc-archive-velvet .knc-archive-filter-panel::-webkit-scrollbar { width: 5px; }
.knc-archive-page.knc-archive-velvet .knc-archive-filter-panel::-webkit-scrollbar-thumb { border-radius: 999px; background: #D4AF37; }

.knc-archive-page.knc-archive-velvet .knc-filter-intro {
  position: relative;
  padding: 20px 18px 24px;
  border-radius: 24px 24px 58px 24px;
  background: #1A1A1A;
  color: #FFFFFF;
}

.knc-archive-page.knc-archive-velvet .knc-filter-intro .knc-kicker {
  color: #D4AF37;
  margin: 0 0 14px;
}

.knc-archive-page.knc-archive-velvet .knc-filter-intro .knc-kicker p::before { background: #D4AF37; }

.knc-archive-page.knc-archive-velvet .knc-filter-title .elementor-heading-title {
  color: #FFFFFF;
  font-family: var(--knc-display, "Tenor Sans", serif);
  font-size: clamp(2rem, 2.4vw, 3rem);
  font-weight: 400;
  line-height: 1;
}

.knc-archive-page.knc-archive-velvet .knc-filter-copy {
  margin-top: 14px;
  color: rgba(255,255,255,.64);
  font-family: var(--knc-ui, "Montserrat", sans-serif);
  font-size: 11px;
  line-height: 1.7;
}

.knc-archive-page.knc-archive-velvet .knc-filter-close { display: none; }

.knc-archive-page.knc-archive-velvet .knc-native-filter {
  margin-top: 12px;
  padding: 18px;
  border: 1px solid rgba(26,26,26,.08);
  border-radius: 22px 22px 48px 22px;
  background: #F8F8F8;
}

.knc-archive-page.knc-archive-velvet .knc-native-filter:empty { display: none; }

.knc-archive-page.knc-archive-velvet .knc-native-filter h5,
.knc-archive-page.knc-archive-velvet .knc-native-filter .widget-title,
.knc-archive-page.knc-archive-velvet .knc-native-filter h3 {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 15px;
  color: #1A1A1A;
  font-family: var(--knc-ui, "Montserrat", sans-serif);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  line-height: 1.35;
  text-transform: uppercase;
}

.knc-archive-page.knc-archive-velvet .knc-native-filter h5::before,
.knc-archive-page.knc-archive-velvet .knc-native-filter .widget-title::before,
.knc-archive-page.knc-archive-velvet .knc-native-filter h3::before {
  display: grid;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  place-items: center;
  border-radius: 50%;
  background: #E8DCC4;
  color: #1A1A1A;
  content: "✦";
  font-size: 11px;
}

.knc-archive-page.knc-archive-velvet .knc-native-price-filter h5::before,
.knc-archive-page.knc-archive-velvet .knc-native-price-filter .widget-title::before { content: "S/"; font-size: 8px; font-weight: 900; }
.knc-archive-page.knc-archive-velvet .knc-native-brand-filter h5::before,
.knc-archive-page.knc-archive-velvet .knc-native-brand-filter .widget-title::before { content: "K"; font-family: var(--knc-display); font-size: 15px; }
.knc-archive-page.knc-archive-velvet .knc-native-color-filter h5::before,
.knc-archive-page.knc-archive-velvet .knc-native-color-filter .widget-title::before { content: "◐"; font-size: 15px; }
.knc-archive-page.knc-archive-velvet .knc-native-categories-filter h5::before,
.knc-archive-page.knc-archive-velvet .knc-native-categories-filter .widget-title::before { content: "⌁"; font-size: 17px; }
.knc-archive-page.knc-archive-velvet .knc-native-rating-filter h5::before,
.knc-archive-page.knc-archive-velvet .knc-native-rating-filter .widget-title::before { content: "★"; color: #D4AF37; }

.knc-archive-page.knc-archive-velvet .woocommerce-product-search {
  position: relative;
  display: flex;
  gap: 7px;
}

.knc-archive-page.knc-archive-velvet .woocommerce-product-search input[type="search"] {
  width: 100%;
  min-width: 0;
  height: 44px;
  padding: 0 15px;
  border: 1px solid rgba(26,26,26,.10);
  border-radius: 999px;
  outline: 0;
  background: #FFFFFF;
  color: #1A1A1A;
  font-family: var(--knc-ui);
  font-size: 10px;
}

.knc-archive-page.knc-archive-velvet .woocommerce-product-search button {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 50%;
  background: #1A1A1A;
  color: transparent;
  font-size: 0;
}

.knc-archive-page.knc-archive-velvet .woocommerce-product-search button::before {
  color: #FFFFFF;
  content: "⌕";
  font-family: Arial, sans-serif;
  font-size: 20px;
}

.knc-archive-page.knc-archive-velvet .knc-native-filter ul {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.knc-archive-page.knc-archive-velvet .knc-native-filter li {
  position: relative;
  margin: 0;
  padding: 0;
}

.knc-archive-page.knc-archive-velvet .knc-native-filter li > a {
  display: flex;
  min-height: 38px;
  align-items: center;
  padding: 8px 38px 8px 12px;
  border: 1px solid transparent;
  border-radius: 12px;
  color: #1A1A1A;
  font-family: var(--knc-ui);
  font-size: 10px;
  font-weight: 600;
  line-height: 1.3;
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}

.knc-archive-page.knc-archive-velvet .knc-native-filter li > a::before {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  margin-right: 9px;
  border: 1px solid #D4AF37;
  border-radius: 50%;
  content: "";
}

.knc-archive-page.knc-archive-velvet .knc-native-filter li > a:hover,
.knc-archive-page.knc-archive-velvet .knc-native-filter li.chosen > a,
.knc-archive-page.knc-archive-velvet .knc-native-filter li.current-cat > a {
  border-color: rgba(212,175,55,.45);
  background: #F4ECE1;
  transform: translateX(3px);
}

.knc-archive-page.knc-archive-velvet .knc-native-filter li.chosen > a::before,
.knc-archive-page.knc-archive-velvet .knc-native-filter li.current-cat > a::before { background: #D4AF37; }

.knc-archive-page.knc-archive-velvet .knc-native-filter .count {
  position: absolute;
  top: 50%;
  right: 12px;
  color: #8A8A8A;
  font-family: var(--knc-ui);
  font-size: 8px;
  transform: translateY(-50%);
}

.knc-archive-page.knc-archive-velvet .knc-native-categories-filter .children {
  margin: 4px 0 4px 15px;
  padding-left: 8px;
  border-left: 1px solid #E8DCC4;
}

.knc-archive-page.knc-archive-velvet .knc-native-active-filters ul { gap: 8px; }
.knc-archive-page.knc-archive-velvet .knc-native-active-filters li > a {
  padding: 9px 12px;
  border-color: rgba(212,175,55,.35);
  background: #FFFFFF;
}
.knc-archive-page.knc-archive-velvet .knc-native-active-filters li > a::before { content: "×"; width: auto; height: auto; border: 0; color: #D4AF37; font-size: 15px; }

.knc-archive-page.knc-archive-velvet .price_slider_wrapper { padding-top: 4px; }
.knc-archive-page.knc-archive-velvet .price_slider {
  height: 5px;
  margin: 12px 5px 24px;
  border: 0;
  border-radius: 999px;
  background: #E8DCC4;
}
.knc-archive-page.knc-archive-velvet .price_slider .ui-slider-range { border-radius: 999px; background: #D4AF37; }
.knc-archive-page.knc-archive-velvet .price_slider .ui-slider-handle {
  width: 17px;
  height: 17px;
  top: -6px;
  margin-left: -8px;
  border: 4px solid #FFFFFF;
  border-radius: 50%;
  background: #1A1A1A;
  box-shadow: 0 3px 12px rgba(26,26,26,.22);
}

.knc-archive-page.knc-archive-velvet .price_slider_amount {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.knc-archive-page.knc-archive-velvet .price_slider_amount .button {
  min-height: 38px;
  padding: 0 16px;
  border: 0;
  border-radius: 999px;
  background: #1A1A1A;
  color: #FFFFFF;
  font-family: var(--knc-ui);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.knc-archive-page.knc-archive-velvet .price_label {
  color: #8A8A8A;
  font-family: var(--knc-ui);
  font-size: 9px;
}

.knc-archive-page.knc-archive-velvet .widget_rating_filter .star-rating { color: #D4AF37; }

.knc-archive-page.knc-archive-velvet .knc-archive-products-column { min-width: 0; }

.knc-archive-page.knc-archive-velvet .knc-archive-products-head {
  gap: 32px;
  margin-bottom: 36px;
  padding: 4px 4px 0;
}

.knc-archive-page.knc-archive-velvet .knc-archive-products-head .knc-head-left { max-width: 760px; }

.knc-archive-page.knc-archive-velvet .knc-archive-head-actions {
  width: min(100%, 470px);
  align-items: flex-end;
  gap: 18px;
}

.knc-archive-page.knc-archive-velvet .knc-filter-toggle { display: none; }

.knc-archive-page.knc-archive-velvet .knc-archive-products {
  padding: clamp(14px, 1.4vw, 24px);
  border: 1px solid rgba(26,26,26,.08);
  border-radius: 34px 34px 92px 34px;
  background: rgba(255,255,255,.74);
  box-shadow: 0 28px 80px rgba(26,26,26,.07);
}

.knc-archive-page.knc-archive-velvet .knc-archive-products .woocommerce-result-count {
  float: none;
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  margin: 0 0 20px !important;
  padding: 0 15px;
  border: 1px solid rgba(26,26,26,.08);
  border-radius: 999px;
  background: #F8F8F8;
  color: #8A8A8A;
  font-size: 9px;
  font-weight: 600;
}

.knc-archive-page.knc-archive-velvet .knc-archive-products .woocommerce-ordering {
  float: right;
  margin: 0 0 20px !important;
}

.knc-archive-page.knc-archive-velvet .knc-archive-products .woocommerce-ordering select {
  min-width: 220px;
  height: 38px;
  padding: 0 36px 0 14px;
  border-color: rgba(26,26,26,.10);
  background-color: #F8F8F8;
  font-size: 9px;
}

.knc-archive-page.knc-archive-velvet .knc-archive-products ul.products {
  clear: both;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(12px, 1.35vw, 22px) !important;
}

.knc-archive-page.knc-archive-velvet .knc-archive-products ul.products li.product {
  min-height: 100%;
  border: 1px solid rgba(26,26,26,.10) !important;
  border-radius: 26px 26px 72px 26px !important;
  background: #FFFFFF !important;
  box-shadow: none !important;
}

.knc-archive-page.knc-archive-velvet .knc-archive-products ul.products li.product::after {
  position: absolute;
  z-index: 0;
  right: -18%;
  bottom: -13%;
  width: 48%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: rgba(212,175,55,.10);
  content: "";
  pointer-events: none;
}

.knc-archive-page.knc-archive-velvet .knc-archive-products ul.products li.product:hover {
  border-color: rgba(212,175,55,.72) !important;
  box-shadow: 0 22px 45px rgba(26,26,26,.10) !important;
  transform: translateY(-6px);
}

.knc-archive-page.knc-archive-velvet .knc-archive-products ul.products li.product img {
  aspect-ratio: 1 / 1.05;
  border-radius: 20px 20px 58px 20px !important;
  background:
    repeating-linear-gradient(0deg, transparent 0 42px, rgba(26,26,26,.045) 42px 43px),
    #F4ECE1 !important;
  object-fit: contain;
}

.knc-archive-page.knc-archive-velvet .knc-archive-products ul.products li.product .woocommerce-loop-product__title {
  min-height: 44px;
  font-size: clamp(11px, .82vw, 14px) !important;
  line-height: 1.38 !important;
}

.knc-archive-page.knc-archive-velvet .knc-archive-products ul.products li.product .price {
  font-size: clamp(1.35rem, 1.7vw, 2rem) !important;
}

.knc-archive-page.knc-archive-velvet .knc-archive-products ul.products li.product .button {
  position: relative;
  z-index: 2;
  min-height: 42px;
  width: calc(100% - 16px);
  margin: auto 8px 8px !important;
  border-radius: 999px !important;
}

.knc-archive-page.knc-archive-velvet .knc-archive-support-strip {
  padding-block: 34px;
  background: #1A1A1A;
}

.knc-archive-page.knc-archive-velvet .knc-archive-support-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
}

.knc-archive-page.knc-archive-velvet .knc-archive-support-widget {
  padding: 12px clamp(18px, 2vw, 34px);
  border-right: 1px solid rgba(255,255,255,.12);
}
.knc-archive-page.knc-archive-velvet .knc-archive-support-widget:last-child { border-right: 0; }

.knc-archive-page.knc-archive-velvet .knc-archive-support-item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px;
  align-items: center;
}
.knc-archive-page.knc-archive-velvet .knc-archive-support-item b {
  color: #D4AF37;
  font-family: var(--knc-display);
  font-size: 28px;
  font-weight: 400;
}
.knc-archive-page.knc-archive-velvet .knc-archive-support-item span {
  color: rgba(255,255,255,.58);
  font-family: var(--knc-ui);
  font-size: 9px;
  line-height: 1.55;
}
.knc-archive-page.knc-archive-velvet .knc-archive-support-item strong {
  display: block;
  margin-bottom: 3px;
  color: #FFFFFF;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.knc-archive-page.knc-archive-velvet .knc-filter-overlay-widget,
.knc-archive-page.knc-archive-velvet .knc-filter-overlay { display: none; }

html.knc-no-scroll { overflow: hidden; }

@media (max-width: 1500px) {
  .knc-archive-page.knc-archive-velvet .knc-archive-products ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1180px) {
  .knc-archive-page.knc-archive-velvet .knc-archive-market-inner {
    grid-template-columns: minmax(240px, 280px) minmax(0, 1fr);
    gap: 24px;
  }
  .knc-archive-page.knc-archive-velvet .knc-archive-support-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .knc-archive-page.knc-archive-velvet .knc-archive-support-widget:nth-child(2) { border-right: 0; }
  .knc-archive-page.knc-archive-velvet .knc-archive-support-widget:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.12); }
}

@media (max-width: 1024px) {
  .knc-archive-page.knc-archive-velvet .knc-archive-banner-inner { width: calc(100% - 28px); }
  .knc-archive-page.knc-archive-velvet .knc-archive-category-nav { border-radius: 24px; }
  .knc-archive-page.knc-archive-velvet .knc-archive-market-inner { display: block !important; }

  .knc-archive-page.knc-archive-velvet .knc-archive-filter-panel {
    position: fixed;
    z-index: 99995;
    top: 0;
    left: 0;
    width: min(90vw, 390px);
    height: 100dvh;
    max-height: none;
    padding: 16px;
    border: 0;
    border-radius: 0 34px 34px 0;
    opacity: 0;
    transform: translateX(-105%);
    transition: transform .32s ease, opacity .32s ease;
  }

  .knc-archive-page.knc-archive-velvet .knc-archive-filter-panel.is-open {
    opacity: 1;
    transform: translateX(0);
  }

  .knc-archive-page.knc-archive-velvet .knc-filter-close { display: block; margin-top: 16px; }
  .knc-archive-page.knc-archive-velvet .knc-filter-close .elementor-button {
    width: 100%;
    min-height: 42px;
    border: 1px solid rgba(255,255,255,.35);
    border-radius: 999px;
    background: transparent;
    color: #FFFFFF;
    font-family: var(--knc-ui);
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
  }

  .knc-archive-page.knc-archive-velvet .knc-filter-toggle { display: block; }
  .knc-archive-page.knc-archive-velvet .knc-filter-toggle .elementor-button {
    min-height: 44px;
    padding: 0 20px;
    border-radius: 999px;
    background: #1A1A1A;
    color: #FFFFFF;
    font-family: var(--knc-ui);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
  }

  .knc-archive-page.knc-archive-velvet .knc-filter-overlay-widget {
    display: block;
    position: static;
  }
  .knc-archive-page.knc-archive-velvet .knc-filter-overlay {
    position: fixed;
    z-index: 99990;
    inset: 0;
    display: block;
    visibility: hidden;
    background: rgba(26,26,26,.62);
    opacity: 0;
    transition: opacity .3s ease, visibility .3s ease;
    backdrop-filter: blur(4px);
  }
  .knc-archive-page.knc-archive-velvet.knc-filters-open .knc-filter-overlay {
    visibility: visible;
    opacity: 1;
  }

  .knc-archive-page.knc-archive-velvet .knc-archive-products-head {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
  .knc-archive-page.knc-archive-velvet .knc-archive-head-actions {
    width: 100%;
    align-items: flex-start;
  }
  .knc-archive-page.knc-archive-velvet .knc-archive-products ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .knc-archive-page.knc-archive-velvet .knc-archive-banner {
    min-height: auto;
    margin: 8px;
    border-radius: 28px 28px 64px 28px;
  }
  .knc-archive-page.knc-archive-velvet .knc-archive-banner-inner { width: 100%; }
  .knc-archive-page.knc-archive-velvet .knc-archive-banner-copy { padding: 46px 18px 18px; }
  .knc-archive-page.knc-archive-velvet .knc-archive-banner .knc-archive-title .elementor-heading-title {
    font-size: clamp(3.3rem, 16vw, 5.6rem);
  }
  .knc-archive-page.knc-archive-velvet .knc-archive-banner-art { min-height: 320px; }
  .knc-archive-page.knc-archive-velvet .knc-archive-category-nav { margin-top: 12px; padding: 8px; }
  .knc-archive-page.knc-archive-velvet .knc-archive-chip .elementor-button { min-height: 38px; padding-inline: 15px; font-size: 8px; }
  .knc-archive-page.knc-archive-velvet .knc-archive-market { padding-block: 52px; }
  .knc-archive-page.knc-archive-velvet .knc-archive-products { padding: 9px; border-radius: 22px 22px 56px 22px; }
  .knc-archive-page.knc-archive-velvet .knc-archive-products .woocommerce-result-count,
  .knc-archive-page.knc-archive-velvet .knc-archive-products .woocommerce-ordering { float: none; width: 100%; }
  .knc-archive-page.knc-archive-velvet .knc-archive-products .woocommerce-ordering select { width: 100%; min-width: 0; }
  .knc-archive-page.knc-archive-velvet .knc-archive-products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .knc-archive-page.knc-archive-velvet .knc-archive-products ul.products li.product { border-radius: 18px 18px 46px 18px !important; }
  .knc-archive-page.knc-archive-velvet .knc-archive-products ul.products li.product img { border-radius: 14px 14px 42px 14px !important; }
  .knc-archive-page.knc-archive-velvet .knc-archive-products ul.products li.product .button {
    min-height: 38px;
    font-size: 7px !important;
  }
  .knc-archive-page.knc-archive-velvet .knc-archive-support-grid { grid-template-columns: 1fr; }
  .knc-archive-page.knc-archive-velvet .knc-archive-support-widget,
  .knc-archive-page.knc-archive-velvet .knc-archive-support-widget:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.12);
  }
  .knc-archive-page.knc-archive-velvet .knc-archive-support-widget:last-child { border-bottom: 0; }
}

@media (max-width: 420px) {
  .knc-archive-page.knc-archive-velvet .knc-archive-products ul.products { grid-template-columns: 1fr !important; }
  .knc-archive-page.knc-archive-velvet .knc-archive-products ul.products li.product img { aspect-ratio: 1.3 / 1; }
}

/* ========================================================================== 
   3.7.0 — Final storefront composition: full portrait, full-width mosaic,
   centered section rhythm and readable commerce actions
   ========================================================================== */

/* Keep the complete portrait visible while preserving the central focus. */
.kamis-native-store .knc-hero-full {
  min-height: clamp(720px, 78vh, 880px);
}

.kamis-native-store .knc-hero-full .knc-hero-copy {
  width: 43%;
  padding-left: clamp(42px, 5.8vw, 116px);
  padding-right: clamp(20px, 2.2vw, 42px);
}

.kamis-native-store .knc-hero-full .knc-hero-visual {
  width: 57%;
  min-height: clamp(720px, 78vh, 880px);
}

.kamis-native-store .knc-hero-full .knc-karina {
  top: auto !important;
  right: auto !important;
  bottom: -3% !important;
  left: 7% !important;
  width: auto !important;
  height: 103% !important;
  max-height: none !important;
  transform: none !important;
}

.kamis-native-store .knc-hero-full .knc-karina .elementor-widget-container,
.kamis-native-store .knc-hero-full .knc-karina img {
  width: auto !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center bottom !important;
}

/* Larger and easier-to-read main actions. */
.kamis-native-store .knc-btn .elementor-button {
  min-height: 54px;
  padding: 16px 28px;
  font-size: 10.5px;
  letter-spacing: .11em;
  line-height: 1.1;
  text-align: center;
}

.kamis-native-store .knc-trust-pills span {
  min-height: 34px;
  padding: 9px 15px;
  font-size: 9px;
}

/* The category section now uses the viewport, not the old boxed shell. */
.kamis-native-store .knc-categories-section > .e-con-inner,
.kamis-native-store .knc-categories-section .knc-shell {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: clamp(14px, 1.8vw, 34px) !important;
}

.kamis-native-store .knc-categories-section .knc-section-head {
  width: min(100%, 1500px);
  margin-right: auto;
  margin-left: auto;
}

.kamis-native-store .knc-category-grid {
  width: 100% !important;
  max-width: none !important;
  margin-inline: auto !important;
  grid-auto-rows: clamp(165px, 10.7vw, 218px);
  gap: clamp(12px, 1vw, 20px);
}

.kamis-native-store .knc-category-card {
  border-radius: clamp(24px, 2vw, 38px);
}

.kamis-native-store .knc-category-copy {
  right: auto;
  bottom: clamp(24px, 2vw, 36px);
  left: clamp(24px, 2vw, 38px);
  width: min(58%, 470px);
}

.kamis-native-store .knc-card-eyebrow {
  font-size: clamp(8.5px, .58vw, 10.5px);
  line-height: 1.45;
}

.kamis-native-store .knc-category-title .elementor-heading-title {
  font-size: clamp(1.75rem, 2.45vw, 3.15rem);
  line-height: 1.02;
}

/* Turn the tiny text link into a clear, centered touch target. */
.kamis-native-store .knc-text-button {
  width: fit-content !important;
  margin-top: 18px;
}

.kamis-native-store .knc-text-button .elementor-button {
  display: inline-flex;
  min-width: 138px;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  border: 1px solid currentColor;
  border-radius: 999px;
  padding: 11px 18px;
  background: rgba(255,255,255,.38);
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: .10em;
  line-height: 1;
  text-align: center;
}

.kamis-native-store .knc-cat-machines .knc-text-button .elementor-button {
  background: rgba(255,255,255,.08);
}

.kamis-native-store .knc-text-button .elementor-button:hover {
  border-color: var(--knc-black);
  background: var(--knc-black);
  color: var(--knc-white);
  transform: translateY(-2px);
}

.kamis-native-store .knc-cat-machines .knc-text-button .elementor-button:hover {
  border-color: var(--knc-gold);
  background: var(--knc-gold);
  color: var(--knc-black);
}

/* WooCommerce actions remain readable on all product grids. */
.kamis-native-store .knc-woo-products ul.products li.product .button,
.knc-archive-page .knc-archive-products ul.products li.product .button,
.knc-single-page .knc-related-products ul.products li.product .button {
  min-height: 44px;
  justify-content: center;
  font-size: 9px !important;
  letter-spacing: .075em;
  line-height: 1.2;
  text-align: center;
}

@media (max-width: 1180px) {
  .kamis-native-store .knc-hero-full .knc-hero-copy { width: 46%; padding-left: 38px; }
  .kamis-native-store .knc-hero-full .knc-hero-visual { width: 54%; }
  .kamis-native-store .knc-hero-full .knc-karina {
    bottom: -2% !important;
    left: 4% !important;
    height: 102% !important;
  }
  .kamis-native-store .knc-category-grid { grid-auto-rows: 154px; }
}

@media (max-width: 900px) {
  .kamis-native-store .knc-hero-full .knc-hero-copy,
  .kamis-native-store .knc-hero-full .knc-hero-visual { width: 100%; }

  .kamis-native-store .knc-hero-full .knc-hero-visual { min-height: 610px; }

  .kamis-native-store .knc-hero-full .knc-karina {
    bottom: 0 !important;
    left: 50% !important;
    height: 100% !important;
    transform: translateX(-50%) !important;
  }

  .kamis-native-store .knc-categories-section .knc-section-head {
    align-items: center !important;
    text-align: center;
  }
  .kamis-native-store .knc-categories-section .knc-head-left,
  .kamis-native-store .knc-categories-section .knc-section-sidecopy {
    max-width: 720px;
    margin-inline: auto;
  }
  .kamis-native-store .knc-categories-section .knc-kicker p { justify-content: center; }
  .kamis-native-store .knc-category-grid { grid-auto-rows: 330px; }
  .kamis-native-store .knc-category-copy { width: min(62%, 430px); }
}

@media (max-width: 620px) {
  .kamis-native-store .knc-hero-full .knc-hero-visual { min-height: 520px; }
  .kamis-native-store .knc-hero-full .knc-karina {
    bottom: 0 !important;
    height: 98% !important;
  }

  .kamis-native-store .knc-btn .elementor-button {
    width: 100%;
    min-height: 52px;
    padding: 15px 20px;
    font-size: 10px;
  }

  .kamis-native-store .knc-categories-section > .e-con-inner,
  .kamis-native-store .knc-categories-section .knc-shell {
    padding-inline: 8px !important;
  }

  .kamis-native-store .knc-category-grid {
    grid-auto-rows: 360px;
    gap: 10px;
  }

  .kamis-native-store .knc-category-copy {
    right: 20px;
    bottom: 22px;
    left: 20px;
    width: auto;
  }

  .kamis-native-store .knc-card-eyebrow { font-size: 9px; }
  .kamis-native-store .knc-category-title .elementor-heading-title { font-size: 2rem; }
  .kamis-native-store .knc-text-button .elementor-button {
    min-width: 150px;
    min-height: 42px;
    font-size: 9.5px;
  }

  .kamis-native-store .knc-woo-products ul.products li.product .button,
  .knc-archive-page .knc-archive-products ul.products li.product .button,
  .knc-single-page .knc-related-products ul.products li.product .button {
    min-height: 42px;
    padding: 10px 8px !important;
    font-size: 8px !important;
  }
}


/* ========================================================================
   3.8.0 — Editorial Header + Mega Panel + Footer
   All selectors are isolated to the imported Kamis templates.
   ======================================================================== */

.knw-editorial-header,
.knw-editorial-footer {
  --khe-black: #1A1A1A;
  --khe-gold: #D4AF37;
  --khe-nude: #E8DCC4;
  --khe-soft: #F4ECE1;
  --khe-card: #F8F8F8;
  --khe-grey: #8A8A8A;
  --khe-white: #FFFFFF;
  font-family: "Montserrat", sans-serif;
}

.knw-editorial-header {
  position: sticky;
  top: 0;
  z-index: 9998;
  width: 100%;
  background: rgba(255,255,255,.98);
  border-top: 1px solid var(--khe-black);
  border-bottom: 1px solid rgba(26,26,26,.08);
  box-shadow: 0 12px 34px rgba(26,26,26,0);
  transition: box-shadow .28s ease, background-color .28s ease;
  overflow: visible !important;
}

.admin-bar .knw-editorial-header { top: 32px; }

.knw-editorial-header:hover,
.knw-editorial-header.is-mega-open {
  box-shadow: 0 18px 48px rgba(26,26,26,.08);
}

.knw-editorial-header > .e-con-inner,
.knw-editorial-header-row > .e-con-inner {
  width: min(100% - 48px, 1680px);
  max-width: 1680px !important;
  margin-inline: auto;
}

.knw-editorial-header-row {
  min-height: 112px;
  overflow: visible !important;
}

.knw-editorial-header-row > .e-con-inner {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
  align-items: center;
  gap: 28px;
}

.knw-editorial-header-left,
.knw-editorial-tools {
  min-width: 0;
}

.knw-editorial-header-left > .e-con-inner,
.knw-editorial-tools > .e-con-inner {
  display: flex !important;
  align-items: center;
}

.knw-editorial-tools > .e-con-inner {
  justify-content: flex-end;
  gap: 24px;
}

.knw-editorial-logo-wrap {
  justify-self: center;
  width: clamp(150px, 12vw, 230px) !important;
}

.knw-editorial-logo img {
  display: block;
  width: 100% !important;
  max-width: 230px !important;
  max-height: 72px;
  object-fit: contain;
}

.knw-editorial-main-menu .elementor-nav-menu--main .elementor-nav-menu {
  display: flex;
  flex-wrap: nowrap;
  gap: clamp(18px, 2.1vw, 42px);
}

.knw-editorial-main-menu .elementor-nav-menu--main .elementor-item {
  padding: 14px 0 !important;
  color: var(--khe-black) !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: .22em;
  line-height: 1;
  text-transform: uppercase;
  transition: color .22s ease, opacity .22s ease;
}

.knw-editorial-main-menu .elementor-nav-menu--main .elementor-item:hover,
.knw-editorial-main-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
.knw-editorial-main-menu .elementor-nav-menu--main .current-menu-item > .elementor-item {
  color: var(--khe-gold) !important;
}

.knw-editorial-main-menu .sub-arrow {
  margin-left: 7px;
  color: currentColor;
  font-size: 9px;
}

.knw-editorial-search {
  width: 86px;
}

.knw-editorial-search .elementor-search-form__container {
  min-height: 40px;
  border: 0 !important;
  background: transparent !important;
}

.knw-editorial-search .elementor-search-form__input {
  width: 0;
  min-width: 0;
  padding: 0 !important;
  opacity: 0;
  transition: width .28s ease, opacity .2s ease, padding .28s ease;
}

.knw-editorial-search:hover,
.knw-editorial-search:focus-within {
  width: min(260px, 22vw);
}

.knw-editorial-search:hover .elementor-search-form__input,
.knw-editorial-search:focus-within .elementor-search-form__input {
  width: 100%;
  padding: 0 12px !important;
  opacity: 1;
}

.knw-editorial-search .elementor-search-form__submit {
  width: auto !important;
  min-width: 74px;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--khe-black) !important;
}

.knw-editorial-search .elementor-search-form__submit:before {
  content: "BUSCAR";
  margin-right: 8px;
  font-family: "Montserrat", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .22em;
}

.knw-editorial-account .elementor-button {
  padding: 12px 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--khe-black) !important;
  font-family: "Montserrat", sans-serif;
  font-size: 10px !important;
  font-weight: 700;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.knw-editorial-account .elementor-button:hover { color: var(--khe-gold) !important; }

.knw-editorial-cart .elementor-menu-cart__toggle .elementor-button {
  min-width: 58px;
  padding: 10px 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--khe-black) !important;
}

.knw-editorial-cart .elementor-menu-cart__toggle .elementor-button:before {
  content: "BOLSA";
  margin-right: 10px;
  font-family: "Montserrat", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .22em;
}

.knw-editorial-cart .elementor-menu-cart__toggle_button:hover { color: var(--khe-gold) !important; }

.knw-editorial-mega-panel {
  position: absolute !important;
  top: 100%;
  right: 0;
  left: 0;
  z-index: 30;
  width: 100%;
  padding: 0 !important;
  background: var(--khe-white);
  border-top: 1px solid rgba(26,26,26,.06);
  box-shadow: 0 28px 60px rgba(26,26,26,.12);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-12px);
  transition: opacity .28s ease, visibility .28s ease, transform .34s cubic-bezier(.22,.61,.36,1);
}

.knw-editorial-header.is-mega-open .knw-editorial-mega-panel,
.knw-editorial-mega-panel.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.knw-editorial-mega-panel > .e-con-inner,
.knw-editorial-mega-inner > .e-con-inner {
  width: min(100% - 48px, 1480px);
  max-width: 1480px !important;
  margin-inline: auto;
}

.knw-editorial-mega-inner {
  padding: 58px 0 64px !important;
}

.knw-editorial-mega-inner > .e-con-inner {
  display: grid !important;
  grid-template-columns: 270px minmax(0,1fr);
  align-items: start;
  gap: 46px;
}

.knw-editorial-mega-side {
  padding-top: 4px;
}

.knw-editorial-mega-side .elementor-heading-title,
.knw-editorial-footer .elementor-heading-title {
  font-family: "Montserrat", sans-serif;
}

.knw-editorial-mega-eyebrow .elementor-heading-title {
  color: var(--khe-grey);
  font-size: 10px !important;
  font-weight: 700;
  letter-spacing: .30em;
  text-transform: uppercase;
}

.knw-editorial-mega-side .elementor-widget-heading:not(.knw-editorial-mega-eyebrow) .elementor-heading-title {
  margin: 12px 0 22px;
  color: var(--khe-black);
  font-family: "Tenor Sans", sans-serif;
  font-size: clamp(30px, 2.7vw, 48px) !important;
  font-weight: 400;
  line-height: 1.02;
}

.knw-editorial-mega-menu .elementor-nav-menu--main .elementor-nav-menu {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.knw-editorial-mega-menu .elementor-nav-menu--main .elementor-item {
  justify-content: flex-start;
  padding: 14px 0 !important;
  border-bottom: 1px solid rgba(26,26,26,.10);
  color: var(--khe-black) !important;
  font-family: "Montserrat", sans-serif;
  font-size: 12px !important;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.knw-editorial-mega-menu .elementor-nav-menu--main .elementor-item:hover { color: var(--khe-gold) !important; }

.knw-editorial-mega-note {
  margin-top: 22px;
  color: var(--khe-grey);
  font-size: 12px;
  line-height: 1.75;
}

.knw-editorial-mega-grid > .e-con-inner,
.knw-editorial-footer-cards > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 18px;
}

.knw-mega-card,
.knw-footer-card {
  position: relative;
  min-height: 385px;
  padding: 26px !important;
  overflow: hidden;
  border-radius: 22px;
  background-color: var(--khe-soft);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  isolation: isolate;
  transition: transform .34s cubic-bezier(.22,.61,.36,1), box-shadow .34s ease;
}

.knw-mega-card:before,
.knw-footer-card:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(26,26,26,.02) 35%, rgba(26,26,26,.76) 100%);
}

.knw-mega-card:hover,
.knw-footer-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 24px 42px rgba(26,26,26,.16);
}

.knw-mega-card-services,
.knw-footer-card-services {
  background-color: #E8DCC4;
  background-image: url('../images/karina.webp');
  background-position: center 18%;
  background-size: auto 108%;
}

.knw-mega-card-products,
.knw-footer-card-products {
  background-color: #F4ECE1;
  background-image: url('../images/category-cejas.webp');
  background-size: 88% auto;
  background-position: center 38%;
}

.knw-mega-card-shop,
.knw-footer-card-shop {
  background-color: #D4AF37;
  background-image: url('../images/category-combo-brows.webp');
  background-size: 94% auto;
  background-position: center 40%;
}

.knw-mega-card-blog,
.knw-footer-card-blog {
  background-color: #1A1A1A;
  background-image: url('../images/category-pmu.webp');
  background-size: 92% auto;
  background-position: center 40%;
}

.knw-mega-card > .e-con-inner,
.knw-footer-card > .e-con-inner {
  position: relative;
  z-index: 2;
  display: flex !important;
  min-height: inherit;
  flex-direction: column;
  justify-content: flex-end;
}

.knw-mega-card-kicker .elementor-heading-title,
.knw-footer-card-kicker .elementor-heading-title {
  color: rgba(255,255,255,.72);
  font-size: 9px !important;
  font-weight: 700;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.knw-mega-card-title .elementor-heading-title,
.knw-footer-card-title .elementor-heading-title {
  margin-top: 8px;
  color: var(--khe-white);
  font-family: "Tenor Sans", sans-serif;
  font-size: clamp(26px, 2vw, 36px) !important;
  font-weight: 400;
  line-height: 1.05;
}

.knw-mega-card-link,
.knw-footer-card-link {
  position: absolute !important;
  inset: 0;
  z-index: 8;
  margin: 0 !important;
}

.knw-mega-card-link .elementor-button-wrapper,
.knw-mega-card-link .elementor-button,
.knw-footer-card-link .elementor-button-wrapper,
.knw-footer-card-link .elementor-button {
  width: 100%;
  height: 100%;
}

.knw-mega-card-link .elementor-button,
.knw-footer-card-link .elementor-button {
  display: block;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
  font-size: 0 !important;
}

/* Footer */
.knw-editorial-footer {
  width: 100%;
  overflow: hidden;
  background: var(--khe-black);
  color: rgba(255,255,255,.72);
}

.knw-editorial-footer-top {
  padding: 72px 0 42px !important;
  background: var(--khe-soft);
}

.knw-editorial-footer-top > .e-con-inner,
.knw-editorial-footer-main > .e-con-inner,
.knw-editorial-footer-bottom > .e-con-inner {
  width: min(100% - 48px, 1640px);
  max-width: 1640px !important;
  margin-inline: auto;
}

.knw-editorial-footer-intro {
  margin-bottom: 34px;
  text-align: center;
}

.knw-editorial-footer-intro .elementor-heading-title {
  color: var(--khe-black);
  font-family: "Tenor Sans", sans-serif;
  font-size: clamp(38px, 4.2vw, 72px) !important;
  font-weight: 400;
  line-height: 1;
}

.knw-editorial-footer-intro-text {
  max-width: 680px;
  margin: 14px auto 0;
  color: var(--khe-grey);
  font-size: 13px;
  line-height: 1.7;
}

.knw-footer-card { min-height: 300px; }

.knw-editorial-footer-main {
  padding: 72px 0 56px !important;
  background: var(--khe-black);
}

.knw-editorial-footer-logo {
  width: min(230px, 60vw) !important;
  margin: 0 auto 52px;
}

.knw-editorial-footer-logo img {
  width: 100% !important;
  max-height: 82px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.knw-editorial-footer-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: 1.1fr 1fr 1fr 1.25fr;
  gap: clamp(28px, 4vw, 72px);
}

.knw-editorial-footer-column-title .elementor-heading-title {
  margin-bottom: 20px;
  color: var(--khe-gold);
  font-size: 10px !important;
  font-weight: 700;
  letter-spacing: .24em;
  text-transform: uppercase;
}

.knw-editorial-footer-menu .elementor-nav-menu--main .elementor-nav-menu {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.knw-editorial-footer-menu .elementor-nav-menu--main .elementor-item {
  justify-content: flex-start;
  padding: 8px 0 !important;
  color: rgba(255,255,255,.72) !important;
  font-size: 12px !important;
  font-weight: 500;
  letter-spacing: .05em;
}

.knw-editorial-footer-menu .elementor-nav-menu--main .elementor-item:hover { color: var(--khe-gold) !important; }

.knw-editorial-footer-copy {
  color: rgba(255,255,255,.62);
  font-size: 12px;
  line-height: 1.85;
}

.knw-editorial-footer-cta .elementor-button {
  margin-top: 18px;
  padding: 15px 24px !important;
  border: 1px solid var(--khe-gold) !important;
  border-radius: 999px !important;
  background: var(--khe-gold) !important;
  color: var(--khe-black) !important;
  font-size: 10px !important;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.knw-editorial-footer-bottom {
  padding: 22px 0 !important;
  border-top: 1px solid rgba(255,255,255,.12);
}

.knw-editorial-footer-bottom > .e-con-inner {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
}

.knw-editorial-footer-legal {
  color: rgba(255,255,255,.48);
  font-size: 10px;
  letter-spacing: .08em;
}

.knw-editorial-footer-policies .elementor-nav-menu--main .elementor-nav-menu {
  display: flex;
  gap: 24px;
}

.knw-editorial-footer-policies .elementor-nav-menu--main .elementor-item {
  padding: 5px 0 !important;
  color: rgba(255,255,255,.52) !important;
  font-size: 9px !important;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
}

/* The mega content remains editable inside Elementor. */
body.elementor-editor-active .knw-editorial-header {
  position: relative;
  top: auto;
}
body.elementor-editor-active .knw-editorial-mega-panel {
  position: relative !important;
  top: auto;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: none;
  box-shadow: none;
}

@media (max-width: 1200px) {
  .knw-editorial-header-row > .e-con-inner { grid-template-columns: 1fr auto auto; }
  .knw-editorial-tools > .e-con-inner { gap: 16px; }
  .knw-editorial-search { display: none; }
  .knw-editorial-mega-inner > .e-con-inner { grid-template-columns: 220px minmax(0,1fr); gap: 28px; }
  .knw-editorial-mega-grid > .e-con-inner,
  .knw-editorial-footer-cards > .e-con-inner { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .knw-mega-card { min-height: 320px; }
}

@media (max-width: 1024px) {
  .admin-bar .knw-editorial-header { top: 46px; }
  .knw-editorial-header-row { min-height: 88px; }
  .knw-editorial-header-row > .e-con-inner {
    width: min(100% - 28px, 100%);
    grid-template-columns: 48px 1fr auto;
    gap: 14px;
  }
  .knw-editorial-header-left { grid-column: 1; }
  .knw-editorial-logo-wrap { grid-column: 2; width: 160px !important; }
  .knw-editorial-tools { grid-column: 3; }
  .knw-editorial-account { display: none; }
  .knw-editorial-cart .elementor-menu-cart__toggle .elementor-button:before { display: none; }
  .knw-editorial-main-menu .elementor-menu-toggle {
    width: 44px;
    height: 44px;
    padding: 0 !important;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--khe-black);
  }
  .knw-editorial-main-menu .elementor-nav-menu--dropdown {
    position: absolute;
    top: calc(100% + 20px);
    left: 0;
    min-width: min(340px, calc(100vw - 28px));
    border-radius: 0 0 22px 22px;
    box-shadow: 0 24px 48px rgba(26,26,26,.12);
  }
  .knw-editorial-main-menu .elementor-nav-menu--dropdown .elementor-item {
    padding: 15px 22px !important;
    font-size: 11px !important;
    letter-spacing: .12em;
  }
  .knw-editorial-mega-panel {
    position: fixed !important;
    top: 88px;
    bottom: 0;
    overflow-y: auto !important;
  }
  .admin-bar .knw-editorial-mega-panel { top: 134px; }
  .knw-editorial-mega-panel > .e-con-inner,
  .knw-editorial-mega-inner > .e-con-inner { width: min(100% - 28px, 100%); }
  .knw-editorial-mega-inner { padding: 34px 0 44px !important; }
  .knw-editorial-mega-inner > .e-con-inner { grid-template-columns: 1fr; }
  .knw-editorial-mega-side { max-width: 620px; }
  .knw-editorial-footer-grid > .e-con-inner { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 767px) {
  .knw-editorial-header-row > .e-con-inner { width: calc(100% - 20px); }
  .knw-editorial-logo-wrap { width: 132px !important; }
  .knw-editorial-cart .elementor-menu-cart__toggle .elementor-button { min-width: 42px; }
  .knw-editorial-mega-grid > .e-con-inner,
  .knw-editorial-footer-cards > .e-con-inner { grid-template-columns: 1fr; }
  .knw-mega-card { min-height: 330px; }
  .knw-footer-card { min-height: 260px; }
  .knw-editorial-footer-top > .e-con-inner,
  .knw-editorial-footer-main > .e-con-inner,
  .knw-editorial-footer-bottom > .e-con-inner { width: calc(100% - 28px); }
  .knw-editorial-footer-grid > .e-con-inner { grid-template-columns: 1fr; gap: 36px; }
  .knw-editorial-footer-bottom > .e-con-inner { flex-direction: column; align-items: flex-start; }
  .knw-editorial-footer-policies .elementor-nav-menu--main .elementor-nav-menu { flex-wrap: wrap; gap: 8px 18px; }
}

/* ========================================================================
   3.8.1 — Header compatibility patch for Elementor 4.x containers
   Some Elementor container modes render children directly inside `.e-con`
   instead of an `.e-con-inner` wrapper. These rules support both markups.
   ======================================================================== */

.knw-editorial-header-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: clamp(18px, 2vw, 32px) !important;
  width: min(calc(100% - 48px), 1680px) !important;
  max-width: 1680px !important;
  min-height: 96px;
  margin-inline: auto !important;
  padding: 0 !important;
}

.knw-editorial-header-row > .e-con-inner {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: clamp(18px, 2vw, 32px) !important;
  width: 100% !important;
  max-width: none !important;
}

.knw-editorial-header-left,
.knw-editorial-logo-wrap,
.knw-editorial-tools {
  min-width: 0 !important;
  margin: 0 !important;
}

.knw-editorial-header-left {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.knw-editorial-header-left > .e-con-inner {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
}

.knw-editorial-logo-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  justify-self: center !important;
  width: clamp(150px, 12vw, 230px) !important;
}

.knw-editorial-logo-wrap > .e-con-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
}

.knw-editorial-logo,
.knw-editorial-logo .elementor-widget-container,
.knw-editorial-logo a {
  display: block !important;
  width: 100% !important;
}

.knw-editorial-logo img {
  display: block !important;
  width: 100% !important;
  max-width: 230px !important;
  height: auto !important;
  max-height: 72px !important;
  margin-inline: auto !important;
  object-fit: contain !important;
}

.knw-editorial-tools {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: clamp(14px, 1.7vw, 28px) !important;
}

.knw-editorial-tools > .e-con-inner {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: clamp(14px, 1.7vw, 28px) !important;
  width: 100% !important;
}

.knw-editorial-tools > .elementor-element,
.knw-editorial-tools > .e-con-inner > .elementor-element {
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
}

.knw-editorial-main-menu {
  width: 100% !important;
}

.knw-editorial-main-menu .elementor-nav-menu--main,
.knw-editorial-main-menu .elementor-nav-menu--main .elementor-nav-menu {
  width: 100%;
}

.knw-editorial-search {
  width: auto !important;
  min-width: 74px;
  flex: 0 1 auto !important;
}

.knw-editorial-account,
.knw-editorial-cart {
  white-space: nowrap;
}

.knw-editorial-cart .elementor-menu-cart__toggle,
.knw-editorial-cart .elementor-menu-cart__toggle .elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Mega panel direct-container fallback. */
.knw-editorial-mega-inner {
  width: min(calc(100% - 48px), 1480px) !important;
  max-width: 1480px !important;
  margin-inline: auto !important;
}

.knw-editorial-mega-inner:not(:has(> .e-con-inner)) {
  display: grid !important;
  grid-template-columns: 270px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 46px !important;
}

.knw-editorial-mega-grid:not(:has(> .e-con-inner)),
.knw-editorial-footer-cards:not(:has(> .e-con-inner)) {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

@media (max-width: 1200px) {
  .knw-editorial-header-row,
  .knw-editorial-header-row > .e-con-inner {
    grid-template-columns: minmax(0, 1fr) auto auto !important;
  }

  .knw-editorial-mega-inner:not(:has(> .e-con-inner)) {
    grid-template-columns: 220px minmax(0, 1fr) !important;
    gap: 28px !important;
  }

  .knw-editorial-mega-grid:not(:has(> .e-con-inner)),
  .knw-editorial-footer-cards:not(:has(> .e-con-inner)) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1024px) {
  .knw-editorial-header-row,
  .knw-editorial-header-row > .e-con-inner {
    width: min(calc(100% - 28px), 100%) !important;
    min-height: 82px;
    grid-template-columns: 48px minmax(120px, 1fr) auto !important;
    gap: 12px !important;
  }

  .knw-editorial-header-left { grid-column: 1 !important; }
  .knw-editorial-logo-wrap {
    grid-column: 2 !important;
    width: min(160px, 44vw) !important;
  }
  .knw-editorial-tools { grid-column: 3 !important; }
  .knw-editorial-tools,
  .knw-editorial-tools > .e-con-inner { gap: 10px !important; }

  .knw-editorial-mega-inner,
  .knw-editorial-mega-inner:not(:has(> .e-con-inner)) {
    width: min(calc(100% - 28px), 100%) !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .knw-editorial-header-row,
  .knw-editorial-header-row > .e-con-inner {
    width: calc(100% - 20px) !important;
  }

  .knw-editorial-logo-wrap { width: min(132px, 42vw) !important; }

  .knw-editorial-mega-grid:not(:has(> .e-con-inner)),
  .knw-editorial-footer-cards:not(:has(> .e-con-inner)) {
    grid-template-columns: 1fr !important;
  }
}
