/* ═══════════ Prix Studios — estilos base ═══════════ */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Instrument Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased;background:#0A0A10}

/* Animaciones de fondo / detalles */
@keyframes kxFloatA{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(70px,-50px) scale(1.15)}66%{transform:translate(-50px,40px) scale(.92)}}
@keyframes kxFloatB{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-80px,-30px) scale(1.2)}}
@keyframes kxDot{0%,60%,100%{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}

/* Tokens de tema */
.kx{--kx-accent:#3B50F0;--kx-accent-soft:rgba(59,80,240,.14);--bg:#0A0A10;--surface:#101018;--card:#13131D;--text:#F3F2F8;--muted:#9B98AB;--line:rgba(255,255,255,.09);--nav:rgba(10,10,16,.72);--btn-txt:#FFFFFF}
.kx[data-theme="light"]{--kx-accent-soft:rgba(59,80,240,.1);--bg:#FAFAFC;--surface:#FFFFFF;--card:#FFFFFF;--text:#17141F;--muted:#5E5A6E;--line:rgba(23,16,48,.12);--nav:rgba(250,250,252,.82)}

.kx a{color:var(--text);text-decoration:none;transition:color .2s}
.kx a:hover{color:var(--kx-accent)}
.kx details>summary{list-style:none;cursor:pointer}
.kx details>summary::-webkit-details-marker{display:none}
.kx input,.kx select,.kx textarea{font-family:'Instrument Sans',sans-serif}

/* Botón primario: leve brillo en hover */
.kx a[data-magnetic],.kx button[data-magnetic]{transition:filter .2s,transform .2s}
.kx a[data-magnetic]:hover,.kx button[data-magnetic]:hover{filter:brightness(1.12)}

/* Tarjetas de precios: elevación en hover */
.kx [data-lift]{transition:transform .25s}
.kx [data-lift]:hover{transform:translateY(-4px)}

/* Hero responsive: una sola columna en móvil */
@media (max-width:820px){
  .kx [data-hero-grid]{grid-template-columns:1fr !important}
  .kx [data-hero-grid] > div:last-child{justify-self:stretch !important;max-width:none !important}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .kx *{animation:none !important;transition:none !important}
}
