/* ===== Presupuesto personalizado (ficha producto con etiqueta "presupuesto") ===== */
.mf-presu{
  --bg:#faf6f1; --bg-sunk:#f3ece2; --surface:#fff; --ink:#1f1a16; --ink-soft:#574f47; --ink-mute:#8a8078;
  --line:#ece3d6; --line-strong:#d6cbba; --accent:#F3B805; --accent-hover:#d9a402; --accent-soft:#fff4cc; --accent-ink:#3d2e00;
  --nav:#2a6b5d; --nav-soft:#e3f0ec; --r-md:14px; --r-lg:22px; --r-pill:999px;
  --shadow-1:0 1px 2px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.06); --shadow-2:0 2px 4px rgba(0,0,0,.04),0 16px 40px rgba(0,0,0,.10);
  padding:28px 0 40px;
}
.mf-presu *{box-sizing:border-box;}
.mf-presu__grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:42px;align-items:start;}
@media (max-width:960px){.mf-presu__grid{grid-template-columns:1fr;gap:26px;}}

/* media */
.mf-presu__media{position:sticky;top:24px;align-self:start;}
@media (max-width:960px){.mf-presu__media{position:static;}}
.mf-presu__stage{position:relative;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-2);}
.mf-presu__main{display:block;width:100%;height:auto;object-fit:cover;}
.mf-presu__badge{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--r-pill);background:#1f1a16;color:#fff;font-size:11.5px;font-weight:800;}
.mf-presu__thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap;}
.mf-presu__thumb{width:74px;height:74px;padding:0;border:2px solid transparent;border-radius:12px;overflow:hidden;background:var(--bg-sunk);cursor:pointer;}
.mf-presu__thumb.is-active{border-color:var(--accent);}
.mf-presu__thumb img{width:100%;height:100%;object-fit:cover;display:block;}
/* fotos de referencia (galería WC + galería ACF) bajo el resumen "Qué incluye tu pedido" */
.mf-presu__ref{margin-top:16px;}
.mf-presu__ref-h{margin:0 0 10px;font-family:var(--font-heading,inherit);font-weight:800;font-size:14px;color:var(--ink);}
.mf-presu__ref-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px;}
.mf-presu__ref-photos img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--r-md);border:1px solid var(--line);display:block;}

.mf-presu__wa{display:flex;align-items:center;gap:12px;margin-top:16px;padding:14px 16px;border:1px solid #bfe9cf;background:#eafaf0;border-radius:var(--r-lg);}
.mf-presu__wa-ic{width:38px;height:38px;flex:none;border-radius:50%;background:#25D366;color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;}
.mf-presu__wa-t{font-family:var(--font-heading,inherit);font-weight:800;font-size:14px;color:var(--ink);}
.mf-presu__wa-s{font-size:12.5px;color:var(--ink-soft);font-weight:600;line-height:1.4;}

/* panel */
.mf-presu__eyebrow{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;background:var(--accent-soft);color:var(--accent-ink);border:1px solid #f3d77f;border-radius:var(--r-pill);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.mf-presu__eyebrow::before{content:"✓";}
.mf-presu__title{font-family:var(--font-heading,inherit);font-weight:800;font-size:34px;line-height:1.06;margin:14px 0 10px;color:var(--ink);}
.mf-presu__intro{color:var(--nav);font-size:15px;line-height:1.6;margin:0 0 14px;max-width:54ch;}
.mf-presu__meta{font-size:13px;color:var(--ink-mute);font-weight:600;margin:0 0 18px;}
.mf-presu__meta strong{color:var(--ink);}
.mf-presu__sep{margin:0 8px;opacity:.5;}

/* imagenes opcionales encima del desglose */
.mf-presu__extra-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:0 0 16px;}
.mf-presu__extra-images img{width:100%;height:auto;display:block;border-radius:var(--r-md);border:1px solid var(--line);object-fit:cover;}
.mf-presu__extra-images p{margin:0;grid-column:1/-1;}
.mf-presu__extra-images:empty{display:none;}

/* summary card */
.mf-presu__summary{border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-1);overflow:hidden;background:var(--surface);}
.mf-presu__summary-h{display:flex;align-items:center;gap:9px;padding:16px 20px;border-bottom:1px solid var(--line);font-family:var(--font-heading,inherit);font-weight:800;font-size:15.5px;color:var(--ink);}
.mf-presu__dot{width:9px;height:9px;border-radius:50%;background:var(--accent);}
.mf-presu__items{padding:0;}

/* desglose pegado en la descripcion (clases .mf-ord*) */
.mf-presu__items .mf-ord__group{border:0;border-radius:0;}
.mf-presu__items .mf-ord__group + .mf-ord__group .mf-ord__figure{border-top:1px solid var(--line);}
.mf-presu__items .mf-ord__figure{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 20px;background:var(--bg-sunk);font-family:var(--font-heading,inherit);font-weight:800;font-size:14.5px;color:var(--ink);}
.mf-presu__items .mf-ord__line{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:11px 20px;border-top:1px solid var(--line);font-size:14px;}
.mf-presu__items .mf-ord__line .k,.mf-presu__items .mf-ord__line>span:first-child{color:var(--ink);font-weight:600;}
.mf-presu__items .mf-ord__line .v,.mf-presu__items .mf-ord__line>span:last-child{color:var(--ink);font-weight:800;white-space:nowrap;}
.mf-presu__items .mf-ord__line small{display:block;color:var(--ink-mute);font-size:11.5px;font-weight:600;margin-top:2px;}
/* fallback: si pegan una <ul>/<table> simple */
.mf-presu__items ul{list-style:none;margin:0;padding:0;}
.mf-presu__items li{display:flex;justify-content:space-between;gap:12px;padding:11px 20px;border-top:1px solid var(--line);font-size:14px;font-weight:600;}

.mf-presu__total{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;background:var(--ink);color:#fff;}
.mf-presu__total-l{font-family:var(--font-heading,inherit);font-weight:800;font-size:15px;}
.mf-presu__total-r{font-family:var(--font-heading,inherit);font-weight:800;font-size:19px;white-space:nowrap;}
.mf-presu__total-r .amount,.mf-presu__total-r bdi,.mf-presu__total-r .woocommerce-Price-amount{color:#fff;font-size:19px;}
@media (max-width:560px){.mf-presu__total-r,.mf-presu__total-r .amount,.mf-presu__total-r bdi,.mf-presu__total-r .woocommerce-Price-amount{font-size:17px;}}

.mf-presu__cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:18px;padding:17px 22px;border-radius:var(--r-md);background:var(--accent);color:#3d2e00;font-family:var(--font-heading,inherit);font-weight:800;font-size:17px;text-decoration:none;box-shadow:0 14px 30px rgba(243,184,5,.22);transition:background-color .15s,transform .15s;}
.mf-presu__cta:hover{background:var(--accent-hover);transform:translateY(-1px);}
.mf-presu__note{text-align:center;margin:12px 0 0;font-size:12.5px;color:var(--ink-mute);font-weight:600;}
.mf-presu__wa-link{display:block;text-align:center;margin-top:10px;font-size:13px;font-weight:800;color:var(--nav);}

/* extras opcionales ("¿Le añadimos algo más?") — solo lo que el presupuesto no incluye */
.mf-presu__addons{margin-top:18px;padding:16px;border:1px solid #f3d77f;background:var(--accent-soft);border-radius:var(--r-lg);}
.mf-presu__addons-head{display:flex;gap:12px;margin-bottom:12px;}
.mf-presu__addons-bulb{flex:none;width:34px;height:34px;border-radius:10px;background:var(--accent);color:#3d2e00;display:flex;align-items:center;justify-content:center;}
.mf-presu__addons-bulb svg{width:19px;height:19px;}
.mf-presu__addons-copy{min-width:0;}
.mf-presu__addons-t{margin:0 0 4px;font-family:var(--font-heading,inherit);font-weight:800;font-size:15.5px;color:var(--ink);display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.mf-presu__addons-opt{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--nav);background:var(--nav-soft);padding:3px 7px;border-radius:var(--r-pill);}
.mf-presu__addons-s{margin:0;font-size:12.5px;line-height:1.5;color:var(--ink-soft);font-weight:600;}
.mf-presu__addon{display:flex;align-items:center;gap:13px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);}
.mf-presu__addon + .mf-presu__addon{margin-top:10px;}
.mf-presu__addon-ic{flex:none;width:42px;height:42px;border-radius:11px;background:var(--nav-soft);color:var(--nav);display:flex;align-items:center;justify-content:center;}
.mf-presu__addon-ic svg{width:22px;height:22px;}
.mf-presu__addon-txt{flex:1;min-width:0;}
.mf-presu__addon-t{margin:0 0 2px;font-family:var(--font-heading,inherit);font-weight:800;font-size:14px;color:var(--ink);}
.mf-presu__addon-d{margin:0;font-size:12px;line-height:1.4;color:var(--ink-mute);font-weight:600;}
.mf-presu__addon-act{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right;}
.mf-presu__addon-p{font-size:12.5px;font-weight:800;color:var(--ink);white-space:nowrap;}
.mf-presu__addon-wa{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border-radius:var(--r-pill);background:#25D366;color:#fff;font-size:12.5px;font-weight:800;text-decoration:none;white-space:nowrap;transition:background-color .15s,transform .15s;}
.mf-presu__addon-wa svg{width:15px;height:15px;}
.mf-presu__addon-wa:hover{background:#1eb656;transform:translateY(-1px);}
@media (max-width:480px){
  .mf-presu__addon{flex-wrap:wrap;}
  .mf-presu__addon-act{flex-direction:row;width:100%;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:10px;margin-top:2px;}
}

@media (max-width:560px){.mf-presu__title{font-size:27px;}}
