/* Tienda de vincivo.com (28-sep-2026): sección para negocios + pedido. Oscuro por defecto como el sitio; [data-theme=light] igual que V35. */
.anchor-alias{position:relative;top:-90px;display:block;height:0}
.optional{color:#8b94a4;font-weight:400}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Para negocios */
.business{background:radial-gradient(ellipse at 110% -10%,#19349938,transparent 55%),#07080b;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.business-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:8%;align-items:center}
.business-copy .body-copy{margin-top:28px;max-width:470px}
.business-points{list-style:none;margin:32px 0 0;padding:0;display:grid;gap:16px;max-width:500px}
.business-points li{padding-left:26px;position:relative;color:#c2c8d3;line-height:1.6;font-size:15px}
.business-points li::before{content:"";position:absolute;left:0;top:.62em;width:12px;height:1px;background:var(--blue)}
.business-points strong{color:var(--text);font-weight:500}
.business-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin:36px 0 22px;color:#aeb5c3;font-size:14px}
.business-price .price-main{font-size:44px;letter-spacing:-.04em;color:var(--text);font-weight:500}
.business-note{margin-top:22px;max-width:460px}
.business-visual{margin:0}
.business-visual svg{width:100%;height:auto;display:block}
.bp-shadow{fill:#000;opacity:.45}.bp-mark{color:#e9ecf3}.bp-waves{stroke:var(--blue)}
.bp-qr{fill:#f1f0ec}.bp-qr-dots rect{fill:#0c0d11}
.bp-phone{fill:#15171d;stroke:#3a3f4b}.bp-screen{fill:#f6f5f1}.bp-g{fill:none;stroke:#355bff;stroke-width:6}
.bp-line{fill:#c9ced8}.bp-stars{stroke:#8f97a6}.bp-box{fill:none;stroke:#c9ced8;stroke-width:2}.bp-btn{fill:#355bff}

/* Pedido: cabecera */
.order{background:radial-gradient(ellipse at 50% -20%,#1d3cb033,transparent 60%),#07080b;border-bottom:1px solid var(--line)}
.order-head{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:end;margin-bottom:56px}
.order-head .eyebrow{color:#969ead;margin-bottom:28px}
.order-head .display{font-size:clamp(44px,5vw,78px)}
.order-head-side .body-copy{font-size:16px;max-width:460px;color:#c2c8d3}
.assurances{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:10px}
.assurances li{position:relative;padding-left:28px;font-size:14px;color:#aeb5c3;line-height:1.5}
.assurances li::before{content:"";position:absolute;left:0;top:.35em;width:16px;height:16px;border-radius:50%;background:#355bff22;box-shadow:inset 0 0 0 1px #355bff88}
.assurances li::after{content:"";position:absolute;left:5px;top:.62em;width:6px;height:3px;border-left:1.5px solid #9fb2ff;border-bottom:1.5px solid #9fb2ff;transform:rotate(-45deg)}
.assurances strong{color:var(--text);font-weight:500}

/* Tarjetas de producto */
.order-form{display:grid;gap:56px;min-width:0}
.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tile{position:relative;display:flex;flex-direction:column;border-radius:22px;background:linear-gradient(180deg,#12141b,#0b0c11);border:1px solid #ffffff14;overflow:hidden;transition:border-color .25s,transform .25s,box-shadow .25s}
.tile:hover{border-color:#ffffff2e;transform:translateY(-2px);box-shadow:0 24px 60px -30px #000}
.tile.in-cart{border-color:#5b7cffaa;box-shadow:0 0 0 1px #5b7cff55,0 24px 60px -30px #1d3cb0}
.tile-stage{position:relative;aspect-ratio:4/3;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 38%,#26304f 0,#141722 45%,#0c0d12 80%);overflow:hidden}
.tile-stage::after{content:"";position:absolute;left:18%;right:18%;bottom:10%;height:14%;background:radial-gradient(ellipse,#000000b0,transparent 70%);filter:blur(6px)}
.tile-img{position:relative;z-index:1;max-width:76%;max-height:78%;object-fit:contain;transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .3s}
.tile-stage-card .tile-img{max-width:72%;border-radius:4.5%/7%;transform:perspective(900px) rotateX(10deg) rotateY(-14deg) rotateZ(4deg);box-shadow:0 30px 50px -18px #000,0 0 0 1px #ffffff10}
.tile:hover .tile-stage-card .tile-img{transform:perspective(900px) rotateX(6deg) rotateY(-8deg) rotateZ(2deg) translateY(-4px)}
.tile-stage-photo .tile-img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:cover}
.tile-stage-photo::after{display:none}
.tile-stage-stand .tile-img{max-width:92%;max-height:96%}
.tile-img[hidden]{display:none}
.tile-body{display:flex;flex-direction:column;gap:14px;padding:22px 22px 24px;flex:1}
.tile-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.tile h3{margin:0;font-size:21px;font-weight:500;letter-spacing:-.025em}
.tile-price{margin:0;font-size:21px;font-weight:500;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums}
.tile-tag{margin:-6px 0 0;color:#aeb5c3;font-size:14px;line-height:1.55}
.tile-feats{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.tile-feats li{position:relative;padding-left:18px;font-size:13px;color:#9aa3b3;line-height:1.5}
.tile-feats li::before{content:"";position:absolute;left:2px;top:.62em;width:7px;height:7px;border-radius:50%;background:#355bff}
.tile-cta{margin-top:auto;padding-top:6px}
.tile-add{width:100%;min-height:50px;border-radius:999px;border:1px solid #ffffff38;background:#ffffff0a;color:var(--text);font:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s}
.tile-add:hover{background:var(--paper);color:#121316;border-color:var(--paper)}
.tile-add:focus-visible,.qty button:focus-visible,.chip input:focus-visible+span,.shop-swatch input:focus-visible+.shop-swatch-dot,.pack:has(input:focus-visible){outline:2px solid #5b7cff;outline-offset:3px}
.tile-add[hidden],.qty[hidden]{display:none}
.qty{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;border:1px solid #5b7cffaa;border-radius:999px;background:#355bff14}
.qty button{width:50px;height:50px;border:0;background:transparent;color:var(--text);font-size:21px;cursor:pointer;border-radius:999px}
.qty output{font-variant-numeric:tabular-nums;font-size:15px}
/* Acabados */
.shop-swatches{display:flex;gap:18px}
.shop-swatch{position:relative;display:flex;align-items:center;gap:9px;cursor:pointer;min-height:36px;font-size:13px;color:#aeb5c3}
.shop-swatch input{position:absolute;opacity:0;width:1px;height:1px}
.shop-swatch-dot{width:24px;height:24px;border-radius:50%;box-shadow:0 0 0 1px #ffffff40;transition:box-shadow .15s}
.shop-swatch-black{background:linear-gradient(135deg,#2b2e36,#0b0c10)}.shop-swatch-white{background:linear-gradient(135deg,#fbfaf6,#dcd9d0)}
.shop-swatch input:checked+.shop-swatch-dot{box-shadow:0 0 0 2px #07080b,0 0 0 4px var(--text)}
.shop-swatch input:checked~.shop-swatch-label{color:var(--text)}
/* Packs */
.packs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.pack{position:relative;display:flex;flex-direction:column;gap:2px;padding:12px 10px 10px;border:1px solid #ffffff26;border-radius:12px;cursor:pointer;transition:border-color .15s,background .15s}
.pack input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.pack:has(input:checked){border-color:var(--text);background:#ffffff0d}
.pack-name{font-size:12px;color:#aeb5c3}.pack-price{font-size:15px;color:var(--text);font-weight:500;font-variant-numeric:tabular-nums}
.pack-note{font-size:11px;color:#8fd3a8}
.pack-badge{position:absolute;top:-9px;right:8px;font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;background:#355bff;color:#fff;border-radius:999px;padding:2px 8px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chip span{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border:1px solid #ffffff2e;border-radius:999px;font-size:13px;color:#c2c8d3;transition:all .15s}
.chip input:checked+span{border-color:var(--text);color:var(--text);background:#ffffff12}

/* Checkout */
.checkout{display:grid;grid-template-columns:1.25fr .75fr;gap:32px;align-items:start}
.checkout-details{display:grid;gap:22px;min-width:0}
.checkout-title{margin:0;font-size:22px;font-weight:500;letter-spacing:-.025em}
.checkout-title:not(:first-child){margin-top:14px}
.details{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.delivery{display:grid;gap:10px}
.radio-row{display:flex;gap:12px;align-items:flex-start;border:1px solid #ffffff22;border-radius:14px;padding:16px;cursor:pointer;transition:border-color .15s}
.radio-row:has(input:checked){border-color:#ffffff88;background:#ffffff08}
.radio-row input{margin-top:3px;accent-color:#5b7cff;width:18px;height:18px}
.radio-row span{display:grid;gap:4px}.radio-row strong{font-weight:500;font-size:14px}.radio-row small{color:#8b94a4;font-size:12px}
.address{display:grid;gap:14px;margin-top:6px}
.address-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.checkout-summary{position:sticky;top:96px;display:grid;gap:18px;padding:26px;border-radius:22px;background:linear-gradient(180deg,#141722,#0d0f15);border:1px solid #ffffff17;box-shadow:0 30px 80px -40px #000}
.checkout-summary h3{margin:0;font-size:22px;font-weight:500;letter-spacing:-.025em}
.summary-empty{margin:0;color:#8b94a4;font-size:14px;line-height:1.5}
.summary-lines{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.summary-line{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center}
.summary-thumb{width:52px;height:52px;border-radius:12px;background:radial-gradient(ellipse at 50% 40%,#26304f,#0c0d12);display:grid;place-items:center;overflow:hidden}
.summary-thumb img{max-width:80%;max-height:80%;object-fit:contain}
.summary-text{display:grid;gap:2px;min-width:0}.summary-text strong{font-weight:500;font-size:14px}.summary-text small{font-size:12px;color:#8b94a4}
.summary-amount{font-size:14px;font-variant-numeric:tabular-nums}
.summary-total{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;margin-top:4px;font-size:18px;font-weight:500}
.checkout-summary .consent{font-size:12px}
.order-submit{width:100%;gap:12px;border-radius:999px;min-height:56px;font-size:15px}
.order-submit:disabled{opacity:.4;cursor:not-allowed}
.summary-promises{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.summary-promises li{font-size:12px;color:#8b94a4;padding-left:16px;position:relative}
.summary-promises li::before{content:"✓";position:absolute;left:0;color:#8fd3a8}
.order-form .form-status:empty{display:none}
.order-form .form-status[data-tone=error]{color:#ff9aa0}
.order-done{scroll-margin-top:100px;max-width:640px;margin:0 auto;border:1px solid #5b7cff88;border-radius:22px;padding:34px;background:linear-gradient(180deg,#141a33,#0d0f15);display:grid;gap:14px}
.order-done h3{margin:0;font-size:28px;font-weight:500;letter-spacing:-.03em}
.order-done p{margin:0;color:#c2c8d3;line-height:1.6}
.order-done-lines{list-style:none;margin:0;padding:0;display:grid;gap:8px;color:#c2c8d3}
.summary-total-line{color:var(--text);font-weight:500}

@media (max-width:1100px){.shop-grid{grid-template-columns:1fr 1fr}.tile-business{grid-column:1/-1;flex-direction:row}.tile-business .tile-stage{width:46%;aspect-ratio:auto}}
@media (max-width:900px){
 .business-grid,.order-head,.checkout{grid-template-columns:1fr;gap:40px}
 .business-visual{max-width:520px}
 .checkout-summary{position:static}
}
@media (max-width:700px){
 .shop-grid{grid-template-columns:1fr}
 .tile-business{flex-direction:column}.tile-business .tile-stage{width:auto;aspect-ratio:4/3}
 .details{grid-template-columns:1fr}
 .order-head{margin-bottom:36px}
 .order-form{gap:40px}
}

/* Claro */
[data-theme=light] .business{background:radial-gradient(ellipse at 110% -10%,#355bff14,transparent 55%),#eef0f4}
[data-theme=light] .order{background:radial-gradient(ellipse at 50% -20%,#355bff12,transparent 60%),#f4f3ef}
[data-theme=light] .business-points li,[data-theme=light] .order-head-side .body-copy,[data-theme=light] .assurances li,[data-theme=light] .tile-tag,[data-theme=light] .order-done p,[data-theme=light] .order-done-lines{color:#3d475b}
[data-theme=light] .business-points strong,[data-theme=light] .business-price .price-main,[data-theme=light] .tile-price,[data-theme=light] .assurances strong,[data-theme=light] .summary-total-line{color:#161b27}
[data-theme=light] .business-price{color:#536078}
[data-theme=light] .tile{background:#fff;border-color:#1b26331f}
[data-theme=light] .tile.in-cart{border-color:#355bff}
[data-theme=light] .tile-stage{background:radial-gradient(ellipse at 50% 38%,#ffffff 0,#eceef3 55%,#dfe2e9 100%)}
[data-theme=light] .tile-stage::after{background:radial-gradient(ellipse,#1b263340,transparent 70%)}
[data-theme=light] .tile-feats li{color:#536078}
[data-theme=light] .tile-add{border-color:#1b263340;background:#fff;color:#161b27}
[data-theme=light] .tile-add:hover{background:#161b27;color:#fff;border-color:#161b27}
[data-theme=light] .qty{background:#355bff0d}
[data-theme=light] .qty button{color:#161b27}
[data-theme=light] .shop-swatch{color:#536078}
[data-theme=light] .shop-swatch-dot{box-shadow:0 0 0 1px #1b263340}
[data-theme=light] .shop-swatch input:checked+.shop-swatch-dot{box-shadow:0 0 0 2px #fff,0 0 0 4px #161b27}
[data-theme=light] .shop-swatch input:checked~.shop-swatch-label{color:#161b27}
[data-theme=light] .pack{border-color:#1b263333}
[data-theme=light] .pack:has(input:checked){border-color:#161b27;background:#161b270a}
[data-theme=light] .pack-name{color:#536078}[data-theme=light] .pack-price{color:#161b27}[data-theme=light] .pack-note{color:#1b7a4b}
[data-theme=light] .chip span{border-color:#1b263340;color:#3d475b}
[data-theme=light] .chip input:checked+span{border-color:#161b27;color:#161b27;background:#161b270d}
[data-theme=light] .radio-row{border-color:#1b263326;background:#fff}
[data-theme=light] .radio-row:has(input:checked){border-color:#161b27}
[data-theme=light] .checkout-summary{background:#fff;border-color:#1b26331f;box-shadow:0 30px 80px -50px #1b263366}
[data-theme=light] .summary-thumb{background:radial-gradient(ellipse at 50% 40%,#fff,#e4e7ee)}
[data-theme=light] .summary-promises li::before{color:#1b7a4b}
[data-theme=light] .order-done{background:#fff;border-color:#355bff66}
[data-theme=light] .order-form .form-status[data-tone=error]{color:#b73038}
[data-theme=light] .bp-shadow{opacity:.18}
[data-theme=light] .bp-screen{fill:#fff}
