/* SupuFicha · Ficha «Pedido rápido» · Juan Gallardo by SupuDigital
   Todo bajo body #supu-ficha (el kit de Elementor y OceanWP no lo pisan). Medidas en px: OceanWP pone html a 10px. */
body #supu-ficha{--navy:#001224;--navy-2:#0b2a45;--red:#E20F1F;--red-dk:#B50D1A;--ink:#1a2330;--mute:#5d6673;--line:#e3e6ea;--soft:#f4f5f7;--ok:#1e8e3e;--ok-bg:#e7f4ea;--warn-bg:#fff6dc;--warn-line:#f0c75e;
  --ff-d:'Playfair Display',Georgia,serif;--ff-b:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;--ff-n:'DM Sans',system-ui,sans-serif;--ease:cubic-bezier(.16,1,.3,1);--sh-up:0 -12px 30px -18px rgba(0,18,36,.35);--wrap:1240px;--g:20px;
  display:block;width:100%;max-width:none;margin:0;padding:0 0 72px;background:#fff;font:400 15px/1.55 var(--ff-b);color:var(--ink);text-align:left;overflow-x:clip}
body #supu-ficha *,body #supu-ficha *::before,body #supu-ficha *::after{box-sizing:border-box;letter-spacing:normal;text-transform:none}
body #supu-ficha h1,body #supu-ficha h2,body #supu-ficha h3,body #supu-ficha h4,body #supu-ficha p,body #supu-ficha ul,body #supu-ficha ol,body #supu-ficha dl,body #supu-ficha dd,body #supu-ficha figure,body #supu-ficha fieldset,body #supu-ficha legend{margin:0;padding:0}
body #supu-ficha ul,body #supu-ficha ol{list-style:none}
body #supu-ficha li{margin:0}
body #supu-ficha li::before,body #supu-ficha li::marker{content:none}
body #supu-ficha a{color:inherit;box-shadow:none}
body #supu-ficha img{display:block;max-width:100%;height:auto;border:0;border-radius:0;box-shadow:none}
body #supu-ficha button,body #supu-ficha input{font-family:inherit;font-size:inherit;color:inherit;margin:0;letter-spacing:normal;text-transform:none;box-shadow:none;min-height:0;line-height:normal;text-shadow:none}
body #supu-ficha button{cursor:pointer;background:none;border:0;border-radius:0;padding:0;font-weight:inherit}
body #supu-ficha table{border-collapse:collapse;width:100%;margin:0;border:0}
body #supu-ficha th,body #supu-ficha td{border:0;background:none}
body #supu-ficha svg.i{width:18px;height:18px;flex:none;fill:currentColor;display:inline-block;vertical-align:middle}
body #supu-ficha :focus-visible{outline:3px solid var(--navy);outline-offset:2px;border-radius:6px}
body #supu-ficha .amount,body #supu-ficha .woocommerce-Price-amount{color:inherit;font-weight:inherit;font-size:inherit}
body #supu-ficha [hidden]{display:none!important}
body #supu-ficha .dot{color:var(--red);font-style:normal}
body #supu-ficha .num{font-variant-numeric:tabular-nums}
body #supu-ficha .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
body #supu-ficha .sf-wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--g)}

/* Avisos de WooCommerce (añadido sin JS, errores) */
body #supu-ficha .sf-notices:empty,body #supu-ficha .sf-notices .woocommerce-notices-wrapper:empty{display:none}
body #supu-ficha .sf-notices{max-width:var(--wrap);margin:0 auto;padding:16px var(--g) 0}
body #supu-ficha .woocommerce-message,body #supu-ficha .woocommerce-info,body #supu-ficha .woocommerce-error{margin:0 0 10px;padding:12px 16px;border:1px solid var(--line);border-left:4px solid var(--navy);border-radius:10px;background:var(--soft);color:var(--ink);font-size:14px;list-style:none;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;justify-content:space-between;box-shadow:none;outline:0}
body #supu-ficha .woocommerce-message::before,body #supu-ficha .woocommerce-info::before,body #supu-ficha .woocommerce-error::before{content:none;display:none}
body #supu-ficha .woocommerce-error{border-left-color:var(--red);background:#fdf1f2;display:block}
body #supu-ficha .woocommerce-message .button,body #supu-ficha .woocommerce-info .button{order:2;float:none;margin:0;padding:0;background:none;border:0;color:var(--navy);font-weight:700;font-size:14px;text-decoration:underline;text-underline-offset:3px;min-height:0}

/* Miga */
body #supu-ficha .sf-top{padding-top:18px}
body #supu-ficha .bc{font-size:13px;color:var(--mute)}
body #supu-ficha .bc ol{display:flex;flex-wrap:wrap;gap:4px 0}
body #supu-ficha .bc li{display:flex;align-items:center;min-width:0}
body #supu-ficha .bc li+li::before{content:"/";margin:0 8px;color:#b7bec7}
body #supu-ficha .bc a{color:var(--mute);text-decoration:none;padding:4px 0}
body #supu-ficha .bc a:hover{color:var(--navy);text-decoration:underline;text-underline-offset:3px}
body #supu-ficha .bc [aria-current]{color:var(--ink);font-weight:600}

/* Rejilla superior */
body #supu-ficha .sf-grid{display:grid;grid-template-columns:minmax(0,480px) minmax(0,1fr);grid-template-areas:"gal head" "gal buy";grid-template-rows:auto 1fr;column-gap:48px;align-items:start;margin-top:14px}
body #supu-ficha .sf-gal{grid-area:gal;position:sticky;top:20px}
body #supu-ficha .sf-head{grid-area:head}
body #supu-ficha .sf-buy{grid-area:buy;min-width:0}
body #supu-ficha .sf-main{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;aspect-ratio:1;display:grid;place-items:center}
body #supu-ficha .sf-main img{width:100%;height:100%;object-fit:contain}
body #supu-ficha .sf-th{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px}
body #supu-ficha .sf-th button{border:1.5px solid var(--line);border-radius:12px;overflow:hidden;aspect-ratio:1;background:#fff;transition:border-color .2s;padding:0;min-height:44px}
body #supu-ficha .sf-th button:hover{border-color:#9aa4b0}
body #supu-ficha .sf-th button[aria-current="true"]{border-color:var(--navy);box-shadow:0 0 0 1px var(--navy)}
body #supu-ficha .sf-th img{width:100%;height:100%;object-fit:contain}

body #supu-ficha .sf-ref{display:flex;align-items:center;gap:6px 12px;flex-wrap:wrap;font-size:13px;color:var(--mute)}
body #supu-ficha .sf-ref .br{font-weight:700;color:var(--red-dk);letter-spacing:.08em;text-transform:uppercase;font-size:12px}
body #supu-ficha .copy{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--mute);min-height:32px;padding:0 4px;border-radius:6px}
body #supu-ficha .copy:hover{color:var(--navy)}
body #supu-ficha .copy svg.i{width:15px;height:15px}
body #supu-ficha .copy.ok{color:var(--ok)}
body #supu-ficha .sf-head h1{font:700 28px/1.2 var(--ff-b);color:var(--navy);letter-spacing:-.01em;margin-top:6px;max-width:34ch;overflow-wrap:anywhere}
body #supu-ficha .sf-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
body #supu-ficha .sf-chips li{font-size:13px;padding:5px 10px;border-radius:8px;background:var(--soft);color:var(--navy);font-weight:500}
body #supu-ficha .sf-rate{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:13px;color:var(--mute);text-decoration:none;min-height:36px}
body #supu-ficha .sf-rate b{color:var(--navy)}
body #supu-ficha .stars{display:inline-flex;gap:1px;color:#f5a400}
body #supu-ficha .stars svg.i{width:15px;height:15px}

/* Opciones (formato, ancho…) */
body #supu-ficha .sf-fmt{border:0;margin:18px 0 0;min-width:0}
body #supu-ficha .sf-fmt + .sf-fmt{margin-top:14px}
body #supu-ficha .sf-fmt legend{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:8px;float:none;width:auto;border:0}
body #supu-ficha .sf-fmt .opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
body #supu-ficha .sf-fmt .opts.many{grid-template-columns:repeat(3,minmax(0,1fr))}
body #supu-ficha .sf-seg{display:grid;grid-template-columns:20px auto minmax(0,1fr) auto;gap:2px 10px;align-items:center;padding:12px 14px;border:1.5px solid #d4d9df;border-radius:12px;cursor:pointer;transition:border-color .2s,background .2s;min-height:64px;margin:0;font-weight:400;background:#fff}
body #supu-ficha .sf-seg input{width:18px;height:18px;accent-color:var(--navy);margin:0;grid-column:1}
body #supu-ficha .sf-seg .sw{grid-column:2;width:40px;height:40px;border-radius:8px;object-fit:cover;border:1px solid var(--line)}
body #supu-ficha .sf-seg .sw-c{display:block;width:28px;height:28px;border-radius:50%}
body #supu-ficha .sf-seg .nm{grid-column:3;min-width:0}
body #supu-ficha .sf-seg:not(:has(.sw)) .nm{grid-column:2/4}
body #supu-ficha .sf-seg b{display:block;color:var(--navy);font-size:15px;line-height:1.25;font-weight:700}
body #supu-ficha .sf-seg small{display:block;font-size:12px;color:var(--mute);line-height:1.35}
body #supu-ficha .sf-seg em{grid-column:4;font-style:normal;font-size:12px;color:var(--mute);text-align:right;line-height:1.3}
body #supu-ficha .sf-seg em b{font-size:14px}
body #supu-ficha .sf-seg:hover{border-color:#9aa4b0}
body #supu-ficha .sf-seg:has(input:checked){border-color:var(--navy);background:#f7f9fb;box-shadow:inset 0 0 0 1px var(--navy)}
body #supu-ficha .sf-seg:has(input:focus-visible){outline:3px solid var(--navy);outline-offset:2px}
body #supu-ficha .sf-seg.na{opacity:.55;border-style:dashed}
body #supu-ficha .sf-seg.na em{color:var(--red-dk)}

/* Tabla de tramos */
body #supu-ficha .sf-tiers{margin-top:18px;border:1px solid var(--line);border-radius:16px;overflow:hidden}
body #supu-ficha .sf-tt-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 12px 12px 18px;background:var(--navy);color:#fff}
body #supu-ficha .sf-tt-head h2{font:900 20px/1.2 var(--ff-d);color:#fff}
body #supu-ficha .sf-tt-head h2 em{font-weight:400;font-style:italic}
body #supu-ficha .seg-tax{display:inline-flex;background:rgba(255,255,255,.12);border-radius:12px;padding:3px;flex:none}
body #supu-ficha .seg-tax button{min-height:44px;padding:0 12px;border-radius:9px;font-size:13px;font-weight:600;color:#dfe6ee;transition:background .2s,color .2s}
body #supu-ficha .seg-tax button[aria-pressed="true"]{background:#fff;color:var(--navy)}
body #supu-ficha .seg-tax button:focus-visible{outline-color:#fff}
body #supu-ficha .tt{font-size:15px}
body #supu-ficha .tt thead th{font-size:12px;font-weight:600;color:var(--mute);text-align:left;padding:9px 18px;background:var(--soft);letter-spacing:.04em;text-transform:uppercase}
body #supu-ficha .tt tbody tr{border-top:1px solid var(--line);position:relative;transition:background .15s}
body #supu-ficha .tt tbody tr:hover{background:#f7f9fb}
body #supu-ficha .tt th[scope="row"],body #supu-ficha .tt td{padding:6px 18px;height:58px;text-align:left;vertical-align:middle;font-weight:400}
body #supu-ficha .tt th[scope="row"] button,body #supu-ficha .tt th[scope="row"] .one{font-weight:600;color:var(--navy);min-height:44px;text-align:left;display:flex;align-items:center;gap:10px}
body #supu-ficha .tt th[scope="row"] button::before{content:"";width:18px;height:18px;border-radius:50%;border:1.5px solid #b7bec7;flex:none;box-sizing:border-box}
body #supu-ficha .tt th[scope="row"] button::after{content:"";position:absolute;inset:0}
body #supu-ficha .tt td b{color:var(--navy);font-size:17px}
body #supu-ficha .tt td{color:var(--ink);font-size:14px}
body #supu-ficha .tt td em{font-style:normal;font-weight:700;color:#fff;background:var(--red-dk);border-radius:6px;padding:1px 6px;margin-left:6px;font-size:12px;white-space:nowrap}
body #supu-ficha .tt .m{color:var(--mute)}
body #supu-ficha .tt tr.on{background:#eef2f6}
body #supu-ficha .tt tr.on th[scope="row"] button::before{border:5px solid var(--navy)}

/* Pedido */
body #supu-ficha .sf-order{margin-top:14px;padding:18px;border:1.5px solid var(--navy);border-radius:16px;display:grid;gap:14px}
body #supu-ficha .sf-qrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}
body #supu-ficha .sf-qrow label{flex-basis:100%;font-size:14px;font-weight:700;color:var(--navy);margin:0}
body #supu-ficha .sf-next{font-size:14px;color:var(--navy);flex:1;min-width:180px}
body #supu-ficha .sf-next b{color:var(--red-dk)}
body #supu-ficha .sf-qnote{flex-basis:100%;margin:0;font-size:13px;font-weight:600;color:var(--red-dk)}
body #supu-ficha .sf-incart{font-size:13px;color:var(--mute)}
body #supu-ficha .qty{display:inline-grid;grid-template-columns:44px 56px 44px;height:48px;border:1.5px solid #d4d9df;border-radius:10px;background:#fff;overflow:hidden;flex:none}
body #supu-ficha .qty button{display:grid;place-items:center;color:var(--navy);transition:background .2s;min-height:44px}
body #supu-ficha .qty button:hover{background:var(--soft)}
body #supu-ficha .qty button:disabled{color:#b7bec7;cursor:not-allowed;background:none}
body #supu-ficha .qty svg.i{width:16px;height:16px}
body #supu-ficha .qty input{width:100%;height:100%;border:0;border-inline:1.5px solid var(--line);border-radius:0;text-align:center;font-weight:700;font-size:16px;color:var(--navy);font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield;background:#fff;padding:0;max-width:none}
body #supu-ficha .qty input::-webkit-outer-spin-button,body #supu-ficha .qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
body #supu-ficha .qty input:focus{outline:0;background:#f7f9fb}
body #supu-ficha .qty:focus-within{border-color:var(--navy)}
body #supu-ficha .sf-sum{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding-top:14px;border-top:1px solid var(--line)}
body #supu-ficha .sf-sum .l{font-size:15px;color:var(--ink);font-variant-numeric:tabular-nums;min-width:0}
body #supu-ficha .sf-sum small{display:block;font-size:12px;color:var(--mute);font-variant-numeric:tabular-nums}
body #supu-ficha .sf-sum .r{text-align:right}
body #supu-ficha .sf-sum s{display:block;font-size:13px;color:var(--mute)}
body #supu-ficha .sf-sum b{display:block;font:700 30px/1 var(--ff-b);color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap}
body #supu-ficha .sf-sum .sv{color:var(--ok);font-weight:600;font-size:13px;margin-top:4px}
body #supu-ficha .sf-boxnudge{display:grid;gap:10px;padding:12px 14px;border:1.5px solid var(--ok);background:var(--ok-bg);border-radius:12px;font-size:14px;color:#123d1e}
body #supu-ficha .sf-boxnudge b{color:#0f3a1c}
body #supu-ficha .pay{width:100%;height:56px;border:0;border-radius:12px;background:var(--red);color:#fff;font:700 17px var(--ff-b);display:flex;align-items:center;justify-content:center;gap:10px;white-space:nowrap;text-decoration:none;box-shadow:0 14px 28px -14px rgba(226,15,31,.7);transition:background .2s,transform .15s var(--ease);padding:0 16px}
body #supu-ficha .pay:hover{background:var(--red-dk);color:#fff}
body #supu-ficha .pay:active{transform:scale(.99)}
body #supu-ficha .pay:disabled{background:#6b7480;box-shadow:none;cursor:not-allowed;color:#fff}
body #supu-ficha .pay.busy{opacity:.8;cursor:progress}
body #supu-ficha .pay svg.i{width:19px;height:19px}
body #supu-ficha .btn-line{min-height:44px;padding:0 16px;border-radius:10px;border:1.5px solid #cfd4db;background:#fff;color:var(--navy);font-weight:700;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;transition:border-color .2s,background .2s}
body #supu-ficha .btn-line:hover{border-color:var(--navy)}
body #supu-ficha .sf-boxnudge .btn-line{border-color:var(--ok);color:#0f3a1c;white-space:normal;text-align:center;padding:8px 14px}
body #supu-ficha .btn-add{min-height:44px;padding:0 14px;border-radius:10px;border:1.5px solid var(--navy);background:#fff;color:var(--navy);font-weight:700;font-size:14px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;transition:background .2s,color .2s}
body #supu-ficha .btn-add:hover{background:var(--navy);color:#fff}
body #supu-ficha .btn-add svg.i{width:15px;height:15px}
body #supu-ficha .link{font-weight:600;color:var(--navy);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
body #supu-ficha .sf-err{font-size:14px;color:var(--red-dk);font-weight:600}
body #supu-ficha .free{font-size:13px;color:var(--mute)}
body #supu-ficha .free b{color:var(--navy)}
body #supu-ficha .free .bar{display:block;margin-top:6px;height:5px;border-radius:6px;background:#e3e7ec;overflow:hidden}
body #supu-ficha .free .bar i{display:block;height:100%;width:var(--p,0%);background:var(--navy);border-radius:6px;transition:width .6s var(--ease)}
body #supu-ficha .free.ok,body #supu-ficha .free.ok b{color:var(--ok)}
body #supu-ficha .free.ok .bar i{background:var(--ok)}
body #supu-ficha .st{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45}
body #supu-ficha .st svg.i{margin-top:1px}
body #supu-ficha .st-bo{padding:12px 14px;border:1px solid var(--warn-line);background:var(--warn-bg);border-radius:12px;color:#4a3500}
body #supu-ficha .st-bo b{color:#3d2c00}
body #supu-ficha .st-out{padding:12px 14px;border:1px solid #f3c2c6;background:#fdf1f2;border-radius:12px;color:var(--ink)}
body #supu-ficha .st-out b{color:var(--red-dk)}
body #supu-ficha .trust{display:grid;gap:10px;font-size:14px;color:var(--ink)}
body #supu-ficha .trust li{display:flex;gap:10px;align-items:flex-start;line-height:1.45}
body #supu-ficha .trust svg.i{color:var(--navy);width:18px;height:18px;margin-top:1px}
body #supu-ficha .trust b{color:var(--navy);font-weight:600}
body #supu-ficha .trust .st-in svg.i,body #supu-ficha .trust .st-in b{color:var(--ok)}
body #supu-ficha .sf-trust{margin-top:18px;padding:0 4px;grid-template-columns:1fr 1fr;gap:12px 20px;font-size:13px}

/* Solo presupuesto */
body #supu-ficha .sf-quote-only{margin-top:18px;padding:20px;border:1.5px solid var(--navy);border-radius:16px;display:grid;gap:12px}
body #supu-ficha .sf-quote-only h2{font:900 22px/1.2 var(--ff-d);color:var(--navy)}
body #supu-ficha .sf-quote-only h2 em{font-weight:400;font-style:italic}
body #supu-ficha .sf-quote-only .acts{display:grid;gap:10px}

/* Información */
body #supu-ficha .sec-h{font:900 30px/1.15 var(--ff-d);color:var(--navy);letter-spacing:-.01em;margin-bottom:18px}
body #supu-ficha .sec-h.sm{font-size:24px;margin-bottom:12px}
body #supu-ficha .sec-h em{font-weight:400;font-style:italic}
body #supu-ficha .sf-info{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:48px;margin-top:72px;align-items:start}
body #supu-ficha .spec{display:grid;border:1px solid var(--line);border-radius:14px;overflow:hidden;font-size:14px}
body #supu-ficha .spec > div{display:grid;grid-template-columns:minmax(120px,40%) minmax(0,1fr);border-top:1px solid var(--line)}
body #supu-ficha .spec > div:first-child{border-top:0}
body #supu-ficha .spec dt{padding:11px 14px;background:var(--soft);color:var(--mute);font-weight:500}
body #supu-ficha .spec dd{padding:11px 14px;color:var(--navy);font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
body #supu-ficha .sf-pdf{margin-top:14px}
body #supu-ficha .sf-desc{margin-top:36px;max-width:70ch;color:var(--ink);overflow-wrap:anywhere}
body #supu-ficha .sf-desc > :first-child{margin-top:0}
body #supu-ficha .sf-desc p,body #supu-ficha .sf-desc ul,body #supu-ficha .sf-desc ol{margin:0 0 12px}
body #supu-ficha .sf-desc ul{list-style:disc;padding-left:20px}
body #supu-ficha .sf-desc ol{list-style:decimal;padding-left:20px}
body #supu-ficha .sf-desc li{margin:0 0 4px}
body #supu-ficha .sf-desc h2,body #supu-ficha .sf-desc h3,body #supu-ficha .sf-desc h4{font:700 17px/1.3 var(--ff-b);color:var(--navy);margin:20px 0 8px}
body #supu-ficha .sf-desc h2.sec-h{font:900 24px/1.15 var(--ff-d);margin:0 0 12px}
body #supu-ficha .sf-desc a{color:var(--navy);text-decoration:underline;text-underline-offset:3px}
body #supu-ficha .sf-desc img{border-radius:10px;margin:8px 0}
body #supu-ficha .sf-desc table{font-size:14px;margin:0 0 12px}
body #supu-ficha .sf-desc td,body #supu-ficha .sf-desc th{border:1px solid var(--line);padding:6px 10px}
body #supu-ficha .sf-desc iframe{max-width:100%}
body #supu-ficha .sf-video{margin-top:36px}
body #supu-ficha .yt{position:relative;display:block;width:100%;max-width:640px;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#000;padding:0}
body #supu-ficha .yt img{width:100%;height:100%;object-fit:cover;opacity:.9}
body #supu-ficha .yt .play{position:absolute;inset:0;margin:auto;width:72px;height:52px;border-radius:14px;background:var(--red);display:grid;place-items:center;color:#fff}
body #supu-ficha .yt .play svg.i{width:26px;height:26px}
body #supu-ficha .yt:hover .play{background:var(--red-dk)}
body #supu-ficha .yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
body #supu-ficha .sf-side{display:grid;gap:16px;position:sticky;top:20px}
body #supu-ficha .xs{border:1px dashed #c3cad2;border-radius:16px;padding:18px}
body #supu-ficha .xs h2{font:700 16px/1.3 var(--ff-b);color:var(--navy)}
body #supu-ficha .xs > p{font-size:13px;color:var(--mute);margin-top:4px}
body #supu-ficha .xs ul{display:grid;gap:12px;margin-top:14px}
body #supu-ficha .xs li{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center}
body #supu-ficha .xs img{width:56px;height:56px;object-fit:contain;border:1px solid var(--line);border-radius:10px;background:#fff}
body #supu-ficha .xs a{font-size:14px;font-weight:600;color:var(--navy);text-decoration:none;line-height:1.3;display:block}
body #supu-ficha .xs a:hover{text-decoration:underline;text-underline-offset:3px}
body #supu-ficha .xs span{font-size:13px;color:var(--mute);font-variant-numeric:tabular-nums}
body #supu-ficha .xs a.btn-add{display:inline-flex;font-size:14px;font-weight:700;text-decoration:none}
body #supu-ficha .xs a.btn-add:hover{color:#fff;text-decoration:none}
body #supu-ficha .quote{background:var(--navy);color:#fff;border-radius:16px;padding:20px 22px}
body #supu-ficha .quote h2{font:700 16px/1.3 var(--ff-b);color:#fff}
body #supu-ficha .quote p{font-size:14px;color:#c9d3de;margin-top:6px}
body #supu-ficha .quote .acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
body #supu-ficha .quote a{min-height:44px;padding:0 18px;border-radius:10px;border:1.5px solid rgba(255,255,255,.55);color:#fff;font-weight:700;font-size:14px;display:inline-flex;align-items:center;gap:8px;text-decoration:none;transition:background .2s,color .2s}
body #supu-ficha .quote a:hover{background:#fff;color:var(--navy)}
body #supu-ficha .quote svg.i{width:16px;height:16px}

/* Relacionados */
body #supu-ficha .sf-rel{margin-top:64px}
body #supu-ficha .rel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
body #supu-ficha .pc{border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;grid-template-rows:auto 1fr auto;gap:10px;background:#fff;position:relative}
body #supu-ficha .pc img{width:100%;aspect-ratio:1;object-fit:contain;background:#fff}
body #supu-ficha .pc a.nm{font-size:14px;font-weight:600;color:var(--navy);line-height:1.35;text-decoration:none}
body #supu-ficha .pc a.nm::after{content:"";position:absolute;inset:0}
body #supu-ficha .pc a.nm:hover{text-decoration:underline;text-underline-offset:3px}
body #supu-ficha .pc .pr{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:13px;color:var(--mute)}
body #supu-ficha .pc .pr b{font-size:16px;color:var(--navy);font-variant-numeric:tabular-nums}

/* Aviso «añadido» (si no hay MiniSupu) */
body #supu-ficha .toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,140%);z-index:99999;width:min(460px,calc(100% - 32px));background:var(--navy);color:#fff;border-radius:14px;padding:14px 16px;display:flex;gap:12px;align-items:center;justify-content:space-between;font-size:14px;box-shadow:0 20px 40px -12px rgba(0,18,36,.5);transition:transform .35s var(--ease);visibility:hidden}
body #supu-ficha .toast.on{transform:translate(-50%,0);visibility:visible}
body #supu-ficha .toast svg.i{color:#7fd89a}
body #supu-ficha .toast span{flex:1}
body #supu-ficha .toast a{color:#fff;font-weight:700;white-space:nowrap;text-underline-offset:3px;padding:10px 0}

/* Barra fija móvil (solo con JS) */
body #supu-ficha .sf-mbar{display:none}

@media (max-width:960px){
  body #supu-ficha{--g:16px;padding-bottom:24px}
  body #supu-ficha .sf-top{padding-top:12px}
  body #supu-ficha .sf-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "gal" "buy";grid-template-rows:auto;row-gap:16px;margin-top:6px}
  body #supu-ficha .sf-gal{position:static}
  body #supu-ficha .sf-main{aspect-ratio:4/3}
  body #supu-ficha .sf-th{grid-template-columns:repeat(auto-fill,60px)}
  body #supu-ficha .sf-head h1{font-size:22px}
  body #supu-ficha .sf-chips li{font-size:12px;padding:4px 8px}
  body #supu-ficha .sf-fmt{margin-top:0}
  body #supu-ficha .sf-fmt .opts.many{grid-template-columns:repeat(2,minmax(0,1fr))}
  body #supu-ficha .tt th[scope="row"],body #supu-ficha .tt td{padding:6px 12px}
  body #supu-ficha .tt thead th{padding:9px 12px}
  body #supu-ficha .tt td em{display:inline-block;margin:2px 0 0}
  body #supu-ficha .sf-tt-head{padding-left:14px}
  body #supu-ficha .sf-tt-head h2{font-size:18px}
  body #supu-ficha .sf-trust{grid-template-columns:1fr}
  body #supu-ficha .sf-info{grid-template-columns:minmax(0,1fr);gap:32px;margin-top:48px}
  body #supu-ficha .sf-side{position:static}
  body #supu-ficha .sec-h{font-size:26px}
  body #supu-ficha .rel{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  body #supu-ficha .sf-rel{margin-top:48px}
  body #supu-ficha.sf-js .sf-mbar{display:grid;grid-template-columns:auto minmax(0,1fr);position:fixed;left:0;right:0;bottom:0;z-index:9990;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);box-shadow:var(--sh-up);transition:transform .25s var(--ease)}
  body #supu-ficha .sf-mbar.off{transform:translateY(110%);visibility:hidden}
  body #supu-ficha .sf-mbar .qty{grid-template-columns:40px 44px 40px;height:50px}
  body #supu-ficha .sf-mbar .pay{height:50px;font-size:16px;padding:0 14px;min-width:0}
  body #supu-ficha .sf-mbar .pay span.num{font-weight:700}
  body #supu-ficha.sf-js{padding-bottom:84px}
  body #supu-ficha .toast{bottom:92px}
}
@media (max-width:420px){
  body #supu-ficha .sf-seg{grid-template-columns:20px auto minmax(0,1fr)}
  body #supu-ficha .sf-seg em{grid-column:3;text-align:left}
  body #supu-ficha .sf-seg:not(:has(.sw)) em{grid-column:2/4}
  body #supu-ficha .tt .por{display:none}
  body #supu-ficha .sf-sum b{font-size:26px}
}
@media (prefers-reduced-motion:reduce){
  body #supu-ficha *{transition:none!important;animation:none!important}
}
/* Con la barra móvil visible, el botón de la Asesora IA (supubot) sube para no taparla. */
@media (max-width:960px){
  body.supuficha .supubot-fab{transition:bottom .25s cubic-bezier(.16,1,.3,1)}
  body.supuficha.sf-bar-on .supubot-fab{bottom:calc(84px + env(safe-area-inset-bottom))!important}
}
/* Reseñas Woo (pie de la web) desborda en móvil: su rejilla usa 1fr. Arreglo acotado a esta ficha. */
@media (max-width:600px){body.supuficha .mrg-spotlight-shell{grid-template-columns:minmax(0,1fr)}}
