:root{--blue:#1a25ab;--navy:#101c52;--soft:#f7f8ff;--line:#dfe2f2;--muted:#687085;--green:#168853;--white:#fff;--radius:14px}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--soft);color:var(--navy);font-family:Arial,"Helvetica Neue",Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.hidden{display:none!important}
    .header{position:sticky;top:0;z-index:30;height:78px;padding:0 clamp(18px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
    .logo{display:block;width:168px;height:auto}.nav{display:flex;align-items:center;gap:28px}.nav a,.nav button{border:0;background:none;text-decoration:none;font-size:14px;font-weight:800}.nav a:hover,.nav button:hover{color:var(--blue)}
    .cart-button{min-height:44px;padding:0 17px;display:flex;align-items:center;gap:8px;border:0;border-radius:8px;background:var(--blue);color:#fff;font-weight:900}.cart-count{min-width:21px;height:21px;padding:0 5px;display:inline-grid;place-items:center;border-radius:20px;background:#fff;color:var(--blue);font-size:12px}
    .hero{min-height:490px;padding:clamp(64px,9vw,112px) clamp(20px,8vw,120px) 70px;position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 320px;align-items:end;gap:70px;background:var(--blue);color:#fff}.hero:after{content:"S";position:absolute;right:-20px;top:-240px;color:rgba(255,255,255,.04);font-size:690px;line-height:1;font-weight:900}.hero-copy,.hero-note{position:relative;z-index:1}.eyebrow{margin:0 0 18px;display:flex;align-items:center;gap:9px;font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.eyebrow:before{content:"";width:26px;height:3px;background:#aeb4ff}.hero h1{max-width:820px;margin:0;font-size:clamp(48px,7vw,92px);line-height:.94;letter-spacing:-.06em;font-weight:900}.hero h1 span{font-weight:300}.hero-copy>p{max-width:640px;margin:26px 0 0;color:rgba(255,255,255,.78);font-size:17px;line-height:1.65}.hero-actions{margin-top:28px;display:flex;align-items:center;gap:20px}.hero-actions a{padding:14px 18px;border-radius:7px;background:#fff;color:var(--blue);text-decoration:none;font-size:14px;font-weight:900}.live{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.75);font-size:13px}.live:before{content:"";width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.16)}.hero-note{padding:22px 0 0 22px;border-top:1px solid rgba(255,255,255,.25)}.hero-note strong{font-size:18px}.hero-note p{margin:8px 0 0;color:rgba(255,255,255,.67);font-size:13px;line-height:1.6}
    .catalog{padding:clamp(64px,8vw,108px) clamp(16px,5vw,72px)}.section-head{margin-bottom:38px;display:flex;align-items:end;justify-content:space-between;gap:28px}.section-head h2{margin:0;font-size:clamp(38px,5vw,58px);letter-spacing:-.04em}.section-head>p{max-width:430px;margin:0;color:var(--muted);font-size:15px;line-height:1.6}.blue-eyebrow{color:var(--blue)}
    .products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 16px 46px rgba(16,28,82,.07);transition:.22s;scroll-margin-top:92px}.card:hover{transform:translateY(-4px);box-shadow:0 22px 56px rgba(16,28,82,.12)}.visual{position:relative;aspect-ratio:1/.82;overflow:hidden}.visual img{width:100%;height:100%;object-fit:cover}.stock{position:absolute;left:14px;top:14px;padding:7px 10px;border-radius:5px;background:rgba(255,255,255,.93);color:#216b47;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.stock.out{color:#a3261d}.share{position:absolute;right:14px;top:14px;width:37px;height:37px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:var(--navy);font-weight:900}.body{padding:22px}.origin{color:var(--blue);font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.body h3{margin:8px 0 5px;font-size:26px;letter-spacing:-.03em}.process{margin:0;color:var(--muted);font-size:13px}.notes{min-height:58px;margin:16px 0;display:flex;flex-wrap:wrap;align-content:flex-start;gap:6px}.notes span{padding:6px 9px;border:1px solid var(--line);border-radius:4px;background:#f6f7ff;color:#4f586b;font-size:11px}.controls{padding-top:16px;display:grid;grid-template-columns:1.2fr .8fr;gap:12px;border-top:1px solid var(--line)}.grind{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px}.grind>label{flex:1 1 150px}.grind-tag{flex-basis:100%;display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.grind-tag svg{flex:none}.cart-top small svg{vertical-align:-3px;margin-right:4px}label{display:grid;gap:7px;color:#596276;font-size:12px;font-weight:800}select,input,textarea{width:100%;border:1px solid #d8dcf0;border-radius:7px;background:#fff;color:var(--navy);outline:none}select,input{height:41px;padding:0 11px}textarea{min-height:76px;padding:10px;resize:vertical}select:focus,input:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,37,171,.1)}.qty{height:41px;display:grid;grid-template-columns:34px 1fr 34px;border:1px solid #d8dcf0;border-radius:7px}.qty button{border:0;background:none;color:var(--navy);font-weight:900}.qty span{display:grid;place-items:center;font-weight:900}.card-foot{margin-top:20px;display:flex;align-items:end;justify-content:space-between;gap:12px}.price{display:grid;gap:4px}.price small{color:var(--muted);font-size:11px}.price strong{font-size:21px}.add{min-height:43px;padding:0 15px;border:0;border-radius:7px;background:var(--blue);color:#fff;font-size:13px;font-weight:900}.add:disabled{background:#d8dbe7;color:#7d8495;cursor:not-allowed}
    .steps{padding:74px clamp(20px,6vw,90px);display:grid;grid-template-columns:.75fr 1.45fr;gap:7vw;background:var(--navy);color:#fff}.steps h2{margin:0;font-size:clamp(38px,5vw,58px);letter-spacing:-.04em}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.step{position:relative}.step>b{position:absolute;right:0;top:-10px;color:rgba(255,255,255,.12);font-size:52px}.step .icon{display:block;margin-bottom:22px;color:#aeb4ff;font-size:25px}.step h3{margin:0;font-size:21px}.step p{margin:9px 0 0;color:rgba(255,255,255,.62);font-size:13px;line-height:1.6}.delivery{padding:34px clamp(20px,8vw,120px);display:flex;justify-content:center;gap:60px;background:#eceeff}.delivery>div{display:flex;gap:13px;align-items:center}.delivery b{display:block;color:var(--blue);font-size:15px}.delivery small{display:block;margin-top:4px;color:var(--muted)}.footer{padding:35px clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fff;color:var(--muted);font-size:13px}.footer img{width:145px}.footer a{color:var(--blue);font-weight:900;text-decoration:none}.footer-links{display:flex;align-items:center;gap:18px}.footer-admin{color:var(--muted)!important;font-weight:700!important;font-size:12px!important}
    .overlay{position:fixed;inset:0;z-index:50;background:rgba(9,16,45,.55);opacity:0;pointer-events:none;transition:.22s}.overlay.open{opacity:1;pointer-events:auto}.drawer{position:absolute;right:0;top:0;width:min(100%,510px);height:100%;display:flex;flex-direction:column;background:#fff;transform:translateX(100%);transition:.25s}.overlay.open .drawer{transform:none}.drawer-head{padding:22px 24px;display:flex;align-items:start;justify-content:space-between;border-bottom:1px solid var(--line)}.drawer-head h2{margin:0;font-size:26px}.drawer-head p{margin:4px 0 0;color:var(--muted);font-size:13px}.close{width:38px;height:38px;border:0;border-radius:50%;background:#eef0ff;color:var(--navy);font-size:22px}.drawer-body{padding:20px 24px 30px;overflow:auto}.empty{min-height:65vh;display:grid;place-content:center;text-align:center}.empty .bag{width:64px;height:64px;margin:auto;display:grid;place-items:center;border-radius:50%;background:#eef0ff;color:var(--blue);font-size:26px}.empty h3{margin:18px 0 7px}.empty p{max-width:300px;margin:0;color:var(--muted);font-size:14px;line-height:1.6}.cart-list{display:grid;gap:12px}.cart-row{padding-bottom:12px;display:grid;grid-template-columns:68px 1fr;gap:12px;border-bottom:1px solid var(--line)}.cart-row img{width:68px;height:76px;object-fit:cover;border-radius:7px}.cart-top,.cart-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.cart-top strong{font-size:14px}.cart-top small{display:block;margin-top:4px;color:var(--muted)}.remove{border:0;background:none;color:#8b91a0;font-size:17px}.cart-bottom{margin-top:12px}.cart-mini{height:29px;width:88px;display:grid;grid-template-columns:28px 1fr 28px;border:1px solid var(--line);border-radius:5px}.cart-mini button{border:0;background:none;font-weight:900}.cart-mini span{display:grid;place-items:center;font-size:12px;font-weight:900}.total{margin:18px 0 22px;display:flex;align-items:baseline;justify-content:space-between}.total span{font-weight:900}.total strong{color:var(--blue);font-size:25px}.form{padding-top:20px;border-top:2px solid var(--blue)}.form-title{margin:18px 0 12px;display:flex;align-items:center;gap:9px;font-size:17px}.form-title:first-child{margin-top:0}.form-title span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:var(--blue);color:#fff;font-size:11px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.full{grid-column:1/-1}.error{margin:14px 0 0;padding:10px;border-radius:6px;background:#fde8e6;color:#9b261e;font-size:13px;font-weight:800}.checkout{width:100%;min-height:52px;margin-top:18px;border:0;border-radius:8px;background:var(--green);color:#fff;font-weight:900}.legal{margin:9px 0 0;color:var(--muted);text-align:center;font-size:11px;line-height:1.5}.mobile-cart{display:none}
    @media(max-width:930px){.nav{display:none}.hero{grid-template-columns:1fr}.hero-note{display:none}.products{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:1fr}.section-head{align-items:start;flex-direction:column}}
    @media(max-width:650px){.header{height:70px;padding:0 14px}.logo{width:132px}.cart-button{width:44px;padding:0;justify-content:center}.cart-button .cart-label{display:none}.hero{min-height:500px;padding:70px 20px 54px;align-items:start}.hero h1{font-size:clamp(50px,15vw,68px)}.hero-copy>p{font-size:15px}.hero-actions{align-items:start;flex-direction:column}.catalog{padding:62px 14px 80px}.products{grid-template-columns:1fr}.card:hover{transform:none}.steps{padding:58px 20px}.step-grid{grid-template-columns:1fr;gap:38px}.delivery{align-items:start;flex-direction:column;gap:25px}.footer{padding:34px 20px 80px;align-items:start;flex-direction:column}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.mobile-cart.visible{position:fixed;left:10px;right:10px;bottom:10px;z-index:40;min-height:56px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;border:0;border-radius:9px;background:var(--blue);color:#fff;font-size:12px;font-weight:900;box-shadow:0 9px 25px rgba(16,28,82,.28)}}

/* Placeholders cuando un producto todavía no tiene foto cargada */
.visual-vacia{width:100%;height:100%;background:linear-gradient(135deg,#eef0fb,#e2e5f5)}
.cart-img-vacia{width:68px;height:76px;border-radius:7px;background:linear-gradient(135deg,#eef0fb,#e2e5f5)}
.carga-error{grid-column:1/-1;padding:40px 0;text-align:center;color:var(--muted)}

/* Combos / promo por cantidad */
.promo-badge{position:absolute;left:14px;bottom:14px;padding:6px 9px;border-radius:5px;background:var(--green);color:#fff;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.promo-fila{display:flex;align-items:baseline;justify-content:space-between;margin:14px 0 -4px;color:var(--green);font-weight:800;font-size:13px}
.promo-fila strong{font-size:14px}
.specs{margin:12px 0 0;display:flex;flex-wrap:wrap;gap:6px 18px}.specs div{display:flex;gap:6px;align-items:baseline;font-size:12px}.specs dt{color:var(--muted);font-weight:700}.specs dd{margin:0;color:var(--navy);font-weight:800}
