:root{--color-black: #0a0a0a;--color-white: #ffffff;--color-red: #e51f3f;--color-red-dark: #b71932;--color-bg: #ffffff;--color-bg-alt: oklch(.98 .004 95);--color-border: oklch(.9 .005 95);--color-border-strong: oklch(.86 .005 95);--color-border-soft: oklch(.94 .005 95);--color-text: var(--color-black);--color-text-muted: oklch(.5 .01 95);--color-text-subtle: oklch(.55 .01 95);--color-success-bg: #e8f5ea;--color-success-text: #1a7a3a;--color-info-bg: #eaf1fb;--color-info-text: #2159a8;--color-warning-bg: #fdf2e2;--color-warning-text: #b5850a;--color-danger-bg: #fbeaea;--color-danger-text: #cc2222;--color-neutral-bg: #f1f1f0;--color-neutral-text: oklch(.45 .01 95);--font-display: "Space Grotesk", "Inter", Arial, Helvetica, sans-serif;--font-body: "Inter", Arial, Helvetica, sans-serif;--fs-hero: clamp(2.5rem, 5vw, 3.5rem);--fs-h1: 1.75rem;--fs-h2: 1.25rem;--fs-h3: .95rem;--fs-body: .95rem;--fs-small: .8125rem;--fs-tiny: .6875rem;--lh-tight: 1.05;--lh-normal: 1.5;--ls-headline: .5px;--ls-label: 1px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-none: 0;--radius-full: 50%;--border-width: 1px;--container-max: 1440px;--header-height: 68px;--transition-fast: .15s ease}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);font-size:var(--fs-body);color:var(--color-text);background:var(--color-bg);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:var(--ls-headline);line-height:var(--lh-tight)}p{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer;border:none;background:none}ul{list-style:none;margin:0;padding:0}:focus-visible{outline:2px solid var(--color-red);outline-offset:2px}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-6)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:var(--fs-small);font-weight:800;letter-spacing:var(--ls-label);text-transform:uppercase;border:var(--border-width) solid transparent;border-radius:var(--radius-none);transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn--primary{background:var(--color-red);color:var(--color-white)}.btn--primary:hover{background:var(--color-red-dark);box-shadow:0 10px 24px -8px #e11b228c}.btn--dark{background:var(--color-black);color:var(--color-white)}.btn--dark:hover{background:#222;box-shadow:0 10px 24px -10px #00000073}.btn--outline{background:transparent;color:var(--color-text);border-color:var(--color-border-strong)}.btn--outline:hover{border-color:var(--color-black)}.btn--danger{background:var(--color-danger-text);color:var(--color-white)}.btn--danger:hover{background:#a81c1c;box-shadow:0 10px 24px -8px #cc22228c}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.card{background:var(--color-white);border:var(--border-width) solid var(--color-border)}.product-card{display:flex;flex-direction:column;gap:var(--space-2)}.product-card__image-wrap{position:relative;aspect-ratio:3 / 4;background:var(--color-bg-alt);overflow:hidden}.product-card__enlace-imagen{position:absolute;inset:0;display:block}.product-card__image{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.16,1,.3,1)}.product-card:hover .product-card__image{transform:scale(1.06)}.product-card__flag{position:absolute;top:var(--space-3);left:var(--space-3);padding:3px var(--space-2);background:var(--color-red);color:var(--color-white);font-size:var(--fs-tiny);font-weight:800;letter-spacing:.4px;text-transform:uppercase}.product-card__wishlist{position:absolute;top:var(--space-3);right:var(--space-3);width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--color-white);border:var(--border-width) solid var(--color-border);transition:transform var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.product-card__wishlist:hover{transform:scale(1.1);border-color:var(--color-red)}.product-card__add{position:absolute;left:0;right:0;bottom:0;padding:var(--space-3);background:var(--color-black);color:var(--color-white);font-size:var(--fs-tiny);font-weight:800;letter-spacing:.4px;text-transform:uppercase;text-align:center;transform:translateY(100%);transition:transform .28s cubic-bezier(.16,1,.3,1),background var(--transition-fast)}.product-card:hover .product-card__add,.product-card:focus-within .product-card__add{transform:translateY(0)}.product-card__add:hover{background:var(--color-red)}.product-card__add.is-added{transform:translateY(0);background:var(--color-success-text)}@media(hover:none){.product-card__add{position:static;transform:none;margin-top:var(--space-1)}}.product-card__wishlist.is-active{color:var(--color-red);border-color:var(--color-red);animation:heart-pop .38s ease}.product-card__name{font-size:var(--fs-small);font-weight:700;text-transform:uppercase;letter-spacing:.3px}.product-card__price{font-size:var(--fs-small);font-weight:700}.product-card__swatches{display:flex;gap:var(--space-2)}.swatch{width:14px;height:14px;border-radius:var(--radius-full);border:var(--border-width) solid var(--color-border-strong);transition:transform var(--transition-fast)}.product-card:hover .swatch{transform:scale(1.08)}.swatch-text{font-size:var(--fs-tiny);color:var(--color-text-muted);border:var(--border-width) solid var(--color-border);padding:1px var(--space-2);text-transform:uppercase;letter-spacing:.3px}.input{height:44px;padding:0 var(--space-4);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-none);background:var(--color-white);font-size:var(--fs-body);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input:focus{border-color:var(--color-black);box-shadow:0 0 0 3px #0a0a0a0f}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field label{font-size:var(--fs-tiny);font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--color-text-muted)}.field__password-wrap{position:relative;display:flex}.field__password-wrap .input{width:100%;padding-right:calc(var(--space-8) + var(--space-2))}.field__toggle-password{position:absolute;top:0;right:0;height:100%;width:calc(var(--space-8) + var(--space-2));display:flex;align-items:center;justify-content:center;color:var(--color-text-muted)}.field__toggle-password:hover{color:var(--color-black)}.field__toggle-password svg{width:18px;height:18px}.section-title{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-5)}.section-title__heading{font-size:var(--fs-h2)}.section-title__link{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--fs-small);font-weight:800;color:var(--color-red);letter-spacing:var(--ls-label)}.section-title__link:hover{text-decoration:underline}.accent-bar{width:26px;height:3px;background:var(--color-red);margin-top:var(--space-2)}.badge{display:inline-block;padding:3px var(--space-2);font-size:var(--fs-tiny);font-weight:800;letter-spacing:.4px;text-transform:uppercase}.badge--success{background:var(--color-success-bg);color:var(--color-success-text)}.badge--info{background:var(--color-info-bg);color:var(--color-info-text)}.badge--warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.badge--danger{background:var(--color-danger-bg);color:var(--color-danger-text)}.badge--neutral{background:var(--color-neutral-bg);color:var(--color-neutral-text)}.auth-card{max-width:460px;margin:0 auto;padding:var(--space-12) var(--space-6);min-height:calc(100vh - var(--header-height) - 44px);display:flex;flex-direction:column;justify-content:center}.auth-card__marco{border:var(--border-width) solid var(--color-border-strong);border-top:3px solid var(--color-red);background:var(--color-white);padding:var(--space-8)}.auth-card__title{font-family:var(--font-display);font-size:var(--fs-h1);line-height:var(--lh-tight);text-transform:uppercase;margin-bottom:var(--space-3)}.auth-card__texto{font-size:var(--fs-body);line-height:var(--lh-normal);color:var(--color-text-muted);margin-bottom:var(--space-6)}.auth-card__form{display:flex;flex-direction:column;gap:var(--space-5)}.auth-card__error{font-size:var(--fs-small);font-weight:700;color:var(--color-red)}.auth-card__acciones{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-6)}.auth-card__marca{width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:800;border-radius:50%;margin-bottom:var(--space-4)}.auth-card__marca--ok{background:var(--color-success-bg);color:var(--color-success-text)}.auth-card__marca--error{background:var(--color-danger-bg);color:var(--color-danger-text)}@media(max-width:640px){.auth-card{padding:var(--space-8) var(--space-4)}.auth-card__marco{padding:var(--space-6)}}.skip-link{position:absolute;top:var(--space-2);left:var(--space-2);z-index:1000;padding:var(--space-3) var(--space-5);background:var(--color-black);color:var(--color-white);font-size:var(--fs-small);font-weight:800;letter-spacing:var(--ls-label);text-transform:uppercase;transform:translateY(calc(-100% - var(--space-4)));transition:transform var(--transition-fast)}.skip-link:focus{transform:translateY(0)}.form-error{font-size:var(--fs-small);color:var(--color-red);font-weight:700}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@keyframes page-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:page-fade-in .48s cubic-bezier(.16,1,.3,1) both}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes hero-rise{0%{transform:translateY(18px)}to{transform:translateY(0)}}@keyframes ken-burns{0%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes soft-pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes heart-pop{0%{transform:scale(1)}35%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes toast-slide-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.page-enter,*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
