/* Mucha & Kalma Design System · v0.3.1 */
.mk-design-system-active,
.mk-design-system-active button,
.mk-design-system-active input,
.mk-design-system-active select,
.mk-design-system-active textarea { font-family: var(--mk-font-body); }

.mk-container { width: min(100% - 32px, var(--mk-container)); margin-inline: auto; }
.mk-section { padding: calc(58px * var(--mk-density-scale)) 0; background: transparent; color: var(--mk-ink); }
.mk-section-full { width: 100vw; margin-left: calc(50% - 50vw); }
.mk-title, .mk-section h1, .mk-section h2, .mk-hero h1, .mk-cta h2 { font-family: var(--mk-font-title); color: var(--mk-black); letter-spacing: -.035em; line-height: .98; }
.mk-title { font-size: clamp(34px, 5vw, 62px); margin: 0 0 14px; }
.mk-lead { max-width: 760px; color: var(--mk-muted); font-size: clamp(17px, 2vw, 21px); line-height: 1.65; }
.mk-eyebrow { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 12px; font-size: 12px; font-weight: 760; text-transform: uppercase; letter-spacing: .16em; color: var(--mk-gold-dark); }
.mk-eyebrow::before { content: ""; width: 28px; height: 1px; background: currentColor; opacity: .8; }

.mk-grid { display: grid; gap: 22px; }
.mk-grid-2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
.mk-grid-3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
.mk-grid-4 { grid-template-columns: repeat(4, minmax(0,1fr)); }

.mk-card { background: color-mix(in srgb, var(--mk-white) 88%, var(--mk-ivory)); border: 1px solid color-mix(in srgb, var(--mk-gold) 24%, transparent); border-radius: var(--mk-radius-lg); padding: calc(28px * var(--mk-density-scale)); box-shadow: var(--mk-shadow-soft); color: var(--mk-ink); overflow: hidden; }
.mk-card h1, .mk-card h2, .mk-card h3 { font-family: var(--mk-font-title); color: var(--mk-black); letter-spacing: -.025em; line-height: 1.05; margin: 8px 0 10px; }
.mk-card p { color: var(--mk-muted); line-height: 1.65; }
.mk-card-img { width: calc(100% + 56px); max-width: none; margin: -28px -28px 22px; aspect-ratio: 16/10; object-fit: cover; display: block; }

.mk-btn, a.mk-btn, button.mk-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 12px 18px; border-radius: var(--mk-radius-pill); border: 1px solid transparent; font-family: var(--mk-font-body); font-weight: 760; line-height: 1; text-decoration: none; cursor: pointer; transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease; }
.mk-btn:hover { transform: translateY(-1px); text-decoration: none; }
.mk-btn-primary { background: var(--mk-gold); color: var(--mk-black); box-shadow: 0 12px 28px color-mix(in srgb, var(--mk-gold) 30%, transparent); }
.mk-btn-primary:hover { background: var(--mk-gold-dark); color: var(--mk-white); }
.mk-btn-ghost { background: transparent; border-color: color-mix(in srgb, var(--mk-gold) 55%, transparent); color: var(--mk-black); }
.mk-btn-ghost:hover { background: var(--mk-ivory); color: var(--mk-black); }
.mk-btn-dark { background: var(--mk-black); color: var(--mk-white); }
.mk-btn-light { background: var(--mk-white); color: var(--mk-black); border-color: color-mix(in srgb, var(--mk-black) 10%, transparent); }

.mk-badge { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 7px 11px; border-radius: var(--mk-radius-pill); font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.mk-badge-gold { background: color-mix(in srgb, var(--mk-gold) 18%, var(--mk-white)); color: var(--mk-gold-dark); }
.mk-badge-rose { background: color-mix(in srgb, var(--mk-rose) 24%, var(--mk-white)); color: #7a4b48; }
.mk-badge-clay { background: color-mix(in srgb, var(--mk-clay) 16%, var(--mk-white)); color: var(--mk-clay); }
.mk-badge-dark { background: var(--mk-black); color: var(--mk-white); }
.mk-badge-success { background: color-mix(in srgb, var(--mk-success) 15%, var(--mk-white)); color: var(--mk-success); }
.mk-badge-warning { background: color-mix(in srgb, var(--mk-warning) 16%, var(--mk-white)); color: var(--mk-warning); }
.mk-badge-danger { background: color-mix(in srgb, var(--mk-danger) 14%, var(--mk-white)); color: var(--mk-danger); }

.mk-hero { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(280px, .95fr); gap: 34px; align-items: center; padding: clamp(36px, 7vw, 76px); border-radius: var(--mk-radius-lg); background: linear-gradient(135deg, var(--mk-ivory), var(--mk-white)); border: 1px solid color-mix(in srgb, var(--mk-gold) 20%, transparent); box-shadow: var(--mk-shadow-soft); }
.mk-hero h1 { font-size: clamp(42px, 7vw, 82px); margin: 0 0 16px; }
.mk-hero p { color: var(--mk-muted); font-size: clamp(16px, 2vw, 20px); line-height: 1.65; }
.mk-hero-media { margin: 0; border-radius: var(--mk-radius-lg); overflow: hidden; box-shadow: var(--mk-shadow-card); }
.mk-hero-media img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; }

.mk-cta { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: clamp(28px, 5vw, 48px); border-radius: var(--mk-radius-lg); background: var(--mk-black); color: var(--mk-white); box-shadow: var(--mk-shadow-card); }
.mk-cta h2 { color: var(--mk-white); margin: 0 0 8px; font-size: clamp(30px, 4vw, 52px); }
.mk-cta p { color: color-mix(in srgb, var(--mk-white) 75%, transparent); margin: 0; }
.mk-cta .mk-eyebrow { color: var(--mk-gold); }

.mk-swatch-grid { display: grid; grid-template-columns: repeat(7, minmax(0,1fr)); gap: 12px; margin: 24px 0 28px; }
.mk-swatch { border: 1px solid color-mix(in srgb, var(--mk-black) 10%, transparent); border-radius: var(--mk-radius-md); padding: 10px; background: var(--mk-white); }
.mk-swatch span { display: block; height: 54px; border-radius: 12px; margin-bottom: 8px; border: 1px solid rgba(0,0,0,.08); }
.mk-swatch strong, .mk-swatch code { display: block; font-size: 12px; color: var(--mk-muted); }

.mk-preset-shop .mk-card, .mk-preset-shop.mk-card { border-color: color-mix(in srgb, var(--mk-gold) 28%, transparent); }
.mk-preset-pets .mk-card, .mk-preset-pets.mk-card, .mk-preset-adoptions .mk-card, .mk-preset-adoptions.mk-card { border-color: color-mix(in srgb, var(--mk-rose) 28%, transparent); }
.mk-preset-arcanos .mk-card, .mk-preset-arcanos.mk-card { background: linear-gradient(145deg, #100f12, #1a1518); color: var(--mk-white); border-color: color-mix(in srgb, var(--mk-gold) 36%, transparent); }
.mk-preset-arcanos .mk-card h1, .mk-preset-arcanos .mk-card h2, .mk-preset-arcanos .mk-card h3 { color: var(--mk-white); }
.mk-preset-arcanos .mk-card p { color: rgba(255,255,255,.72); }

@media (max-width: 860px) {
  .mk-grid-2, .mk-grid-3, .mk-grid-4, .mk-hero { grid-template-columns: 1fr; }
  .mk-cta { align-items: flex-start; flex-direction: column; }
  .mk-swatch-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 640px) {
  .mk-mobile-compact .mk-section { padding: 34px 0; }
  .mk-container { width: min(100% - 22px, var(--mk-container)); }
  .mk-card { padding: 20px; border-radius: 22px; }
  .mk-card-img { width: calc(100% + 40px); margin: -20px -20px 18px; }
  .mk-hero { padding: 24px; border-radius: 24px; }
  .mk-hero h1 { font-size: clamp(36px, 12vw, 54px); }
}

/* v1.0.2 · Governance de menú y Mi cuenta WooCommerce */
body.mk-govern-main-menu .main-navigation ul,
body.mk-govern-main-menu nav ul.menu,
body.mk-govern-main-menu header .menu,
body.mk-govern-main-menu .site-header .menu,
body.mk-govern-main-menu .primary-menu,
body.mk-govern-main-menu #site-navigation ul {
  align-items: center;
  gap: clamp(10px, 1.3vw, 22px);
}
body.mk-govern-main-menu .main-navigation a,
body.mk-govern-main-menu nav ul.menu a,
body.mk-govern-main-menu header .menu a,
body.mk-govern-main-menu .site-header .menu a,
body.mk-govern-main-menu .primary-menu a,
body.mk-govern-main-menu #site-navigation a {
  font-family: var(--mk-font-body);
  font-weight: 600;
  letter-spacing: .01em;
  text-decoration: none;
  border-radius: var(--mk-radius-pill);
  padding: .48em .72em;
  transition: background .18s ease, color .18s ease, box-shadow .18s ease;
}
body.mk-govern-main-menu .main-navigation a:hover,
body.mk-govern-main-menu nav ul.menu a:hover,
body.mk-govern-main-menu header .menu a:hover,
body.mk-govern-main-menu .site-header .menu a:hover,
body.mk-govern-main-menu .primary-menu a:hover,
body.mk-govern-main-menu #site-navigation a:hover {
  background: rgba(201,163,90,.12);
  color: var(--mk-gold-dark);
  box-shadow: inset 0 0 0 1px rgba(201,163,90,.18);
}
body.mk-govern-main-menu .main-navigation .current-menu-item > a,
body.mk-govern-main-menu nav ul.menu .current-menu-item > a,
body.mk-govern-main-menu .primary-menu .current-menu-item > a {
  box-shadow: inset 0 -2px 0 var(--mk-karen-hot);
}
@media (min-width: 981px){
  body.mk-govern-main-menu .site-header,
  body.mk-govern-main-menu header.site-header,
  body.mk-govern-main-menu .main-header-bar {
    min-height: 76px;
  }
  body.mk-govern-main-menu .main-navigation ul,
  body.mk-govern-main-menu nav ul.menu,
  body.mk-govern-main-menu .primary-menu { flex-wrap: wrap; }
}
@media (max-width: 980px){
  body.mk-govern-main-menu .site-header,
  body.mk-govern-main-menu header.site-header,
  body.mk-govern-main-menu .main-header-bar {
    position: sticky;
    top: 0;
    z-index: 70;
    background: rgba(255,255,255,.94);
    backdrop-filter: blur(14px);
    border-bottom: 1px solid rgba(201,163,90,.16);
  }
  body.mk-govern-main-menu .menu-toggle,
  body.mk-govern-main-menu button.menu-toggle,
  body.mk-govern-main-menu .ast-mobile-menu-trigger-minimal {
    border-radius: 999px !important;
    min-width: 46px;
    min-height: 46px;
    display: inline-grid;
    place-items: center;
    color: var(--mk-black) !important;
    background: rgba(255,255,255,.72) !important;
    box-shadow: 0 14px 34px rgba(5,5,5,.08), inset 0 0 0 1px rgba(201,163,90,.16);
  }
}

body.mk-govern-woo-account.woocommerce-account .woocommerce {
  max-width: min(1120px, calc(100vw - 32px));
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: clamp(18px, 3vw, 36px);
  align-items: start;
}
body.mk-govern-woo-account.woocommerce-account .woocommerce-MyAccount-navigation {
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(201,163,90,.18);
  border-radius: var(--mk-radius-lg);
  box-shadow: var(--mk-shadow-soft);
  padding: 14px;
}
body.mk-govern-woo-account.woocommerce-account .woocommerce-MyAccount-navigation ul { margin:0; padding:0; list-style:none; display:grid; gap:8px; }
body.mk-govern-woo-account.woocommerce-account .woocommerce-MyAccount-navigation a {
  display:flex; align-items:center; justify-content:space-between;
  min-height:42px; padding:10px 14px;
  border-radius: var(--mk-radius-pill);
  font-family: var(--mk-font-body); font-weight:600;
  color: var(--mk-muted); text-decoration:none;
  background: transparent;
}
body.mk-govern-woo-account.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
body.mk-govern-woo-account.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
  color: var(--mk-black);
  background: rgba(201,163,90,.13);
}
body.mk-govern-woo-account.woocommerce-account .woocommerce-MyAccount-content {
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(201,163,90,.16);
  border-radius: var(--mk-radius-lg);
  box-shadow: var(--mk-shadow-soft);
  padding: clamp(20px, 4vw, 42px);
}
@media (max-width: 760px){
  body.mk-govern-woo-account.woocommerce-account .woocommerce { display:block; max-width: calc(100vw - 24px); }
  body.mk-govern-woo-account.woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom:18px; overflow:auto; padding:10px; }
  body.mk-govern-woo-account.woocommerce-account .woocommerce-MyAccount-navigation ul { display:flex; gap:8px; min-width:max-content; }
  body.mk-govern-woo-account.woocommerce-account .woocommerce-MyAccount-navigation a { white-space:nowrap; }
}


/* KRN Designer v1.0.9 · Canvas spacing contract: Designer define, Canvas aplica */
body.mk-canvas-space-governor{--mk-ds-canvas-space-mode:1;}
body.mk-canvas-space-balanced{--mk-canvas-header-content-gap:clamp(14px,2.2vw,28px);}
body.mk-canvas-space-compact{--mk-canvas-header-content-gap:clamp(8px,1.4vw,18px);}
body.mk-canvas-space-soft{--mk-canvas-header-content-gap:clamp(18px,2.8vw,36px);}


/* KRN Designer v1.1.1 · NoFreeze + viewport-fit inspector */
html body.mk-ds-freeze-native,
html body.mk-ds-inspecting,
html body.krn-inspector-active{
  overflow:auto!important;
  position:static!important;
  height:auto!important;
  min-height:100%!important;
}

#mk-ds-inspector-shield,
#mk-ds-inspector-shield.is-active{
  pointer-events:none!important;
  background:transparent!important;
}

#mk-ds-inspector-dock,
#mk-ds-element-editor{
  max-width:calc(100vw - 24px)!important;
}

#mk-ds-element-editor:not(.is-minimized){
  max-height:min(62dvh, 620px)!important;
  overflow:auto!important;
}

@media(max-width:680px){
  #mk-ds-element-editor:not(.is-minimized){
    left:8px!important;
    right:74px!important;
    width:auto!important;
    max-height:56dvh!important;
  }
}


/* KRN Designer v1.2.0 · CareNoe NoFreeze + Floating Coordination */
html body.mk-ds-freeze-native,
html body.mk-ds-inspecting,
html body.krn-inspector-active{
  overflow:auto!important;
  position:static!important;
  height:auto!important;
  min-height:100%!important;
}

#mk-ds-inspector-shield,
#mk-ds-inspector-shield.is-active{
  pointer-events:none!important;
  background:transparent!important;
}

#mk-ds-element-editor:not(.is-minimized){
  width:min(640px, calc(100vw - 24px))!important;
  max-height:min(62dvh, 620px)!important;
  overflow:auto!important;
  border-radius:24px!important;
}

#mk-ds-element-editor .mkds-editor-actions [data-save],
#mk-ds-element-editor button[data-save]{
  display:none!important;
}

#mk-ds-element-editor .mkds-editor-actions{
  grid-template-columns:1fr 1fr!important;
}

#mk-ds-element-editor .mkds-editor-actions button{
  min-width:0!important;
  white-space:normal!important;
}

body.mkds-mobile-editing #wpadminbar{
  transform:translateY(-110%)!important;
  pointer-events:none!important;
  opacity:0!important;
}

html.mkds-mobile-editing{
  margin-top:0!important;
}

[data-krn-floating]{
  --krn-safe-bottom: calc(18px + env(safe-area-inset-bottom, 0px));
  --krn-safe-side: calc(14px + env(safe-area-inset-left, 0px));
}

[data-krn-floating="qr-button"]{
  max-width:calc(100vw - 120px)!important;
  z-index:9997!important;
}

[data-krn-floating="whatsapp"]{
  z-index:9998!important;
}

[data-krn-floating="karen-bubble"]{
  z-index:9999!important;
}

[data-krn-floating="scroll-top"]{
  z-index:9996!important;
}

.mkds-singleton-modal,
.mk-karen-diagnostic,
.karen-canvas-diagnostic,
.mkds-canvas-diagnostic{
  position:fixed!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(92vw, 720px)!important;
  max-height:min(82dvh, 720px)!important;
  overflow:auto!important;
  z-index:2147482500!important;
}

.mk-karen-tabs,
.karen-ayuda-tabs,
.mkds-karen-tabs,
[data-karen-tabs]{
  display:flex!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  gap:8px!important;
  white-space:nowrap!important;
  scrollbar-width:none!important;
}

.mk-karen-tabs::-webkit-scrollbar,
.karen-ayuda-tabs::-webkit-scrollbar,
.mkds-karen-tabs::-webkit-scrollbar,
[data-karen-tabs]::-webkit-scrollbar{
  display:none!important;
}

@media(max-width:782px){
  #mk-ds-element-editor:not(.is-minimized){
    left:8px!important;
    right:78px!important;
    width:auto!important;
    bottom:calc(82px + env(safe-area-inset-bottom, 0px))!important;
    max-height:54dvh!important;
  }

  #mk-ds-element-editor .mkds-editor-grid{
    grid-template-columns:1fr!important;
  }

  #mk-ds-inspector-dock{
    right:8px!important;
    bottom:calc(90px + env(safe-area-inset-bottom, 0px))!important;
    max-height:calc(100dvh - 180px)!important;
    overflow:auto!important;
  }

  .mkds-singleton-modal,
  .mk-karen-diagnostic,
  .karen-canvas-diagnostic,
  .mkds-canvas-diagnostic{
    top:50%!important;
    width:min(92vw, 560px)!important;
    max-height:78dvh!important;
    border-radius:24px!important;
  }
}


/* KRN Designer v1.2.1 · menú y flotantes homologados */
body.mk-ds-govern-main-menu .site-header nav a,
body.mk-ds-govern-main-menu header nav a,
body.mk-ds-govern-main-menu .main-navigation a,
body.mk-ds-govern-main-menu .menu a{
  transition:background .18s ease,color .18s ease,box-shadow .18s ease!important;
  border-radius:999px!important;
}
body.mk-ds-govern-main-menu .site-header nav a:hover,
body.mk-ds-govern-main-menu header nav a:hover,
body.mk-ds-govern-main-menu .main-navigation a:hover,
body.mk-ds-govern-main-menu .menu a:hover{
  background:rgba(201,163,90,.10)!important;
  color:#050505!important;
}
body.mk-ds-govern-woo-account .woocommerce-MyAccount-navigation ul{display:grid;gap:10px!important;list-style:none!important;padding:0!important;}
body.mk-ds-govern-woo-account .woocommerce-MyAccount-navigation a{display:flex!important;align-items:center!important;min-height:44px!important;border-radius:16px!important;padding:10px 14px!important;text-decoration:none!important;background:#fff!important;border:1px solid rgba(201,163,90,.25)!important;}

/* v1.2.7 · Ayúdalos/Woo Account bridge */
body.mkds-my-account-governed .mkay-v300-portal{margin-top:0!important}
body.mkds-my-account-governed .mkay-v300-portal-tabs{margin-top:0!important}


/* KRN Designer v1.2.9 · gobierna acciones Canvas sin degradado Karen en frontend M&K */
body.mk-govern-canvas-menu-actions .kc-header .kc-action,
body.mk-govern-canvas-menu-actions .kc-header .kc-menu-toggle{
  background:#fffdf8!important;color:var(--mk-ink,#171717)!important;border:1px solid rgba(201,163,90,.28)!important;box-shadow:0 10px 24px rgba(31,24,16,.06)!important;
}
body.mk-govern-canvas-menu-actions .kc-header .kc-action:hover,
body.mk-govern-canvas-menu-actions .kc-header .kc-menu-toggle:hover{background:#090706!important;color:#fff!important;}
body.mk-govern-canvas-menu-actions .kc-menu-icon{color:var(--mk-gold,#c9a35a)!important;}
body.mk-govern-canvas-menu-actions .kc-mobile-menu a{border-radius:18px!important;}


/* KRN Designer v1.2.11 · M&K menu neutral en frontend Canvas */
body.karen-canvas.mk-govern-main-menu .main-navigation .current-menu-item > a,
body.karen-canvas.mk-govern-main-menu nav ul.menu .current-menu-item > a,
body.karen-canvas.mk-govern-main-menu .primary-menu .current-menu-item > a,
body.karen-canvas.mk-ds-govern-main-menu .site-header nav a:hover,
body.karen-canvas.mk-ds-govern-main-menu header nav a:hover,
body.karen-canvas.mk-ds-govern-main-menu .main-navigation a:hover,
body.karen-canvas.mk-ds-govern-main-menu .menu a:hover{
  color:#9f7a32!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:inset 0 -2px 0 #c9a35a!important;
}
body.karen-canvas.mk-govern-main-menu .main-navigation a:hover,
body.karen-canvas.mk-govern-main-menu nav ul.menu a:hover,
body.karen-canvas.mk-govern-main-menu header .menu a:hover,
body.karen-canvas.mk-govern-main-menu .site-header .menu a:hover,
body.karen-canvas.mk-govern-main-menu .primary-menu a:hover,
body.karen-canvas.mk-govern-main-menu #site-navigation a:hover{
  background:rgba(201,163,90,.10)!important;
  color:#9f7a32!important;
  box-shadow:inset 0 0 0 1px rgba(201,163,90,.18)!important;
}
body.karen-canvas.mk-govern-canvas-menu-actions .kc-header .kc-action,
body.karen-canvas.mk-govern-canvas-menu-actions .kc-header .kc-menu-toggle{
  background:#fffdf8!important;
  background-image:none!important;
  color:#171717!important;
  border-color:rgba(201,163,90,.26)!important;
}
body.karen-canvas.mk-govern-canvas-menu-actions .kc-header .kc-action:hover,
body.karen-canvas.mk-govern-canvas-menu-actions .kc-header .kc-menu-toggle:hover{
  background:#090706!important;
  background-image:none!important;
  color:#fff!important;
}
body:not(.krn-inspector-active):not(.mk-ds-inspecting):not(.mkds-canvas-convert-active) .mk-ds-inspector-hover,
body:not(.krn-inspector-active):not(.mk-ds-inspecting):not(.mkds-canvas-convert-active) .mk-ds-inspector-picked,
body:not(.krn-inspector-active):not(.mk-ds-inspecting):not(.mkds-canvas-convert-active) [data-mkds-outline],
body:not(.krn-inspector-active):not(.mk-ds-inspecting):not(.mkds-canvas-convert-active) [data-karen-canvas="header"],
body:not(.krn-inspector-active):not(.mk-ds-inspecting):not(.mkds-canvas-convert-active) [data-karen-canvas="main"]{
  outline:0!important;
}


/* KRAFT / Designer v1.2.13 · KANVAS R1 tokens */
body.karen-canvas .mk-ds-panel,
body.karen-canvas .mk-ds-card,
body.karen-canvas [data-mkds-panel]{border-radius:24px;}
body.karen-canvas .mk-ds-inspector-badge{z-index:2147483100;}
html[data-kpulse-profile="eco"] body.karen-canvas .mk-ds-panel,
html[data-kpulse-profile="eco"] body.karen-canvas .mk-ds-card{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}
