:root{--bg: #FAF6EE;--bg-2: #F2EBDB;--bg-3: #E8DEC7;--surface: #FFFDF8;--surface-2: #FFFFFF;--ink: #2B2418;--ink-2: #5A4A35;--ink-3: #8A7A60;--gold: #B8860B;--gold-2: #D4A435;--gold-soft: rgba(184,134,11,.1);--gold-glow: rgba(184,134,11,.18);--border: rgba(90,74,53,.18);--border-2: rgba(184,134,11,.3);--success: #2E7D32;--danger: #B71C1C;--warning: #C77700;--text: var(--ink);--muted: var(--ink-3);--gold-soft-old: var(--gold-soft);--radius: 12px;--radius-sm: 8px;--shadow-soft: 0 2px 12px rgba(90,74,53,.08);--shadow-med: 0 8px 28px rgba(90,74,53,.14);--shadow-strong:0 16px 48px rgba(90,74,53,.22);--font: "Inter", system-ui, -apple-system, sans-serif;--serif: "Cormorant Garamond", Georgia, serif;--mono: "DM Mono", "Courier New", monospace;--transition: .22s cubic-bezier(.4,0,.2,1);--focus-ring: 0 0 0 3px rgba(184,134,11,.45)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:6px}.skip-link{position:absolute;top:-40px;left:8px;background:var(--gold);color:#fff;padding:8px 14px;border-radius:6px;font-weight:600;z-index:9999;transition:top var(--transition)}.skip-link:focus{top:8px}a{color:var(--gold);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--ink)}button{font-family:inherit}img{max-width:100%;display:block}.header{display:flex;justify-content:space-between;align-items:center;padding:16px 32px;border-bottom:1px solid var(--border);background:var(--surface)}.brand{font-family:var(--serif);font-size:1.6rem;color:var(--gold)}.nav{display:flex;gap:22px;align-items:center;font-size:.92rem}.nav a.router-link-active{color:var(--gold);font-weight:600}.cart-link .badge{background:var(--gold);color:#fff;padding:2px 9px;border-radius:10px;font-size:.72rem;margin-left:4px;font-weight:700}main{max-width:1180px;margin:0 auto;padding:32px 24px}.hero{padding:48px 0;text-align:center}.hero h1{font-family:var(--serif);font-size:2.6rem;line-height:1.2;margin:0 0 14px;color:var(--ink)}.hero em{color:var(--gold);font-style:italic}.hero p{color:var(--ink-2);max-width:580px;margin:0 auto}.catalog h2{font-family:var(--serif);font-size:1.6rem;color:var(--ink);margin-bottom:18px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);box-shadow:var(--shadow-soft)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-med);border-color:var(--border-2)}.card-img{display:block;aspect-ratio:1/1;background:var(--bg-3)}.card-img img{width:100%;height:100%;object-fit:cover}.placeholder{display:flex;align-items:center;justify-content:center;font-size:3.4rem;height:100%;opacity:.35;color:var(--gold)}.card-body{padding:14px}.card-body h3{margin:0 0 6px;font-size:1rem;color:var(--ink)}.card-body .price{color:var(--gold);font-weight:700;margin:0 0 10px;font-family:var(--mono)}.btn,.btn-primary{background:var(--gold);color:#fff;border:none;padding:10px 18px;border-radius:8px;cursor:pointer;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:background var(--transition),transform var(--transition),box-shadow var(--transition);font-size:.92rem}.btn:hover,.btn-primary:hover{background:var(--gold-2);transform:translateY(-1px);box-shadow:0 4px 14px var(--gold-glow)}.btn:active,.btn-primary:active{transform:translateY(0)}.btn:disabled,.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-link{background:none;border:none;color:var(--gold);cursor:pointer;padding:0;font-weight:600}.btn-ghost{background:transparent;color:var(--ink-2);border:1px solid var(--border)}.btn-ghost:hover{background:var(--bg-2);color:var(--ink);border-color:var(--border-2)}.detalle{display:grid;grid-template-columns:1fr 1fr;gap:40px}@media (max-width: 700px){.detalle{grid-template-columns:1fr}}.detalle .img{background:var(--bg-3);border-radius:var(--radius);aspect-ratio:1/1;overflow:hidden;box-shadow:var(--shadow-soft)}.detalle .img img{width:100%;height:100%;object-fit:cover}.detalle h1{font-family:var(--serif);font-size:2.2rem;color:var(--ink);margin:0 0 8px}.detalle .price{font-size:1.5rem;color:var(--gold);font-weight:700;font-family:var(--mono)}.detalle .desc{color:var(--ink-2);line-height:1.65;font-size:.98rem}.detalle .cant{display:flex;gap:8px;align-items:center;margin:18px 0}.detalle .cant button{background:var(--surface);border:1px solid var(--border);color:var(--ink);width:36px;height:36px;border-radius:8px;cursor:pointer;font-size:1.1rem;font-weight:600;transition:background var(--transition),border-color var(--transition)}.detalle .cant button:hover{background:var(--bg-2);border-color:var(--gold)}.detalle .cant input{width:72px;text-align:center;padding:8px;background:var(--surface);border:1px solid var(--border);color:var(--ink);border-radius:8px;font-size:1rem;font-weight:600}.tabla{width:100%;border-collapse:collapse;margin-bottom:18px}.tabla th,.tabla td{padding:12px;border-bottom:1px solid var(--border);text-align:left}.tabla th{color:var(--ink-2);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;background:var(--bg-2)}.tabla td{color:var(--ink)}.tabla input{width:64px;padding:6px 8px;background:var(--surface);border:1px solid var(--border);color:var(--ink);border-radius:6px;font:inherit}.totales{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-top:2px solid var(--border);font-weight:600;font-size:1.05rem}.checkout h1{font-family:var(--serif);color:var(--ink)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}.grid2 .full{grid-column:1 / -1}.grid2 label{display:flex;flex-direction:column;font-size:.85rem;color:var(--ink-2);font-weight:500}.grid2 input,.grid2 textarea{margin-top:6px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--ink);font:inherit;transition:border-color var(--transition),box-shadow var(--transition)}.grid2 input:focus,.grid2 textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft);outline:none}.resumen{list-style:none;padding:0;margin:0 0 12px}.resumen li{padding:8px 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;color:var(--ink-2)}.total{font-size:1.25rem;color:var(--gold);text-align:right;font-weight:700;font-family:var(--mono)}.state{text-align:center;padding:48px 24px;color:var(--ink-2)}.state-err{color:var(--danger)}.confirm{text-align:center;padding:60px 24px}.confirm h1{font-family:var(--serif);color:var(--ink);font-size:2.2rem}.nosotros h1{font-family:var(--serif);color:var(--ink);font-size:2.4rem}.lead{font-size:1.15rem;color:var(--ink-2);max-width:700px;line-height:1.65}.bloques{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;margin-top:30px}.bloques h2{color:var(--ink);font-size:1.15rem;font-family:var(--serif)}.footer{margin-top:80px;padding:24px;border-top:1px solid var(--border);text-align:center;color:var(--ink-3);font-size:.85rem;background:var(--bg-2)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
