/* Flumart v0.8 — experiencia de ficha y minicart. Aislamiento para no alterar checkout. */
.fm-pdp{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:clamp(30px,4.3vw,72px);align-items:start;padding-top:16px;padding-bottom:60px}
.fm-pdp-gallery{min-width:0;position:sticky;top:24px}
.fm-pdp-photo-frame{border:1px solid #e2e9ed;border-radius:17px;background:#fff;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:clamp(18px,3vw,38px)}
.fm-pdp-photo-frame img{width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.fm-pdp-thumbnails{display:flex;flex-wrap:wrap;gap:11px;margin-top:15px}
.fm-pdp-thumb{display:grid;place-items:center;width:73px;height:73px;padding:8px;cursor:pointer;border:1.5px solid #dde5ea;border-radius:10px;background:#fff;transition:border-color .15s,box-shadow .15s}
.fm-pdp-thumb img{width:100%;height:100%;object-fit:contain}
.fm-pdp-thumb:is(:hover,.is-selected){border-color:#154c61;box-shadow:0 0 0 2px rgba(21,76,97,.12)}
.fm-pdp-content{min-width:0;color:#243e4b}
.fm-pdp-eyebrow{font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:800;color:#af8017;margin:3px 0 10px}
.fm-pdp-eyebrow span{padding:0 6px;color:#8a9eaa}
.fm-pdp h1{font:800 clamp(29px,2.6vw,40px)/1.13 Barlow,Inter,sans-serif;letter-spacing:-.02em;color:#173e50;margin:0 0 13px}
.fm-pdp-seller{font-size:13px;color:#728694;margin-bottom:12px}
.fm-pdp-seller a{font-weight:800;color:#176480;text-decoration:none}
.fm-pdp-seller a:hover{text-decoration:underline}
.fm-pdp-lead{font-size:13px;line-height:1.6;color:#687e89;margin:12px 0 16px}
.fm-pdp-form{border-top:1px solid #e2e9ed;padding-top:19px}
.fm-pdp-price-label{display:block;font-size:12px;font-weight:700;color:#718793;margin-bottom:5px}
.fm-pdp-price-line{display:flex;gap:13px;align-items:baseline;flex-wrap:wrap}
.fm-pdp-price-line strong{font:800 clamp(36px,3.2vw,48px)/1 Barlow,Inter,sans-serif;color:#123e54;letter-spacing:-.018em}
.fm-pdp-price-line del{font-size:15px;color:#91a1a9}
.fm-pdp-price-meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:11px;color:#6e8591;margin-top:10px}
.fm-pdp-price-meta [data-volume-badge]:not([hidden]){display:inline-flex;background:#e9f8ed;color:#19784c;border-radius:4px;padding:5px 8px;font-weight:750}
.fm-pdp-price-area{padding-bottom:18px}
.fm-pdp-variant{margin:0 0 18px}
.fm-pdp-variant .fm-variant-options{grid-template-columns:repeat(2,minmax(0,1fr))}
.fm-pdp-sku{font-size:11px;color:#728894;margin:0 0 16px}
.fm-pdp-volume{border-top:1px solid #edf1f4;border-bottom:1px solid #edf1f4;margin:0 0 20px;padding:13px 0}
.fm-pdp-volume>span{display:block;font-size:12px;font-weight:750;color:#426478;margin-bottom:9px}
.fm-pdp-tier{font-size:11px;font-weight:700;color:#54778a;background:#f6f9fa;border:1px solid #e0e9ee;padding:7px 9px;border-radius:6px}
.fm-pdp-tier.is-active{background:#f0f8f3;border-color:#aad8bb;color:#237b4b}
.fm-pdp-quantity-line{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:12px;font-weight:750;color:#294c60;margin-bottom:10px}
.fm-pdp-stock{color:#208251;font-size:12px;font-weight:700}
.fm-pdp-stock::before{content:'●';margin-right:6px;font-size:9px}
.fm-pdp-stock.is-out{color:#b94d3e}
.fm-pdp-quantity-controls{display:grid;grid-template-columns:45px 64px 45px;width:max-content;height:44px;border:1px solid #d4e0e6;border-radius:9px;overflow:hidden;margin-bottom:17px}
.fm-pdp-quantity-controls button{display:grid;place-items:center;border:0;background:#f7fafb;color:#24566d;cursor:pointer}
.fm-pdp-quantity-controls button:hover:enabled{background:#e9f3f7}
.fm-pdp-quantity-controls button:disabled{opacity:.4;cursor:not-allowed}
.fm-pdp-quantity-controls input{width:100%;min-width:0;text-align:center;font-weight:800;font-size:15px;color:#153e52;appearance:textfield;-moz-appearance:textfield;background:#fff;border:0;border-inline:1px solid #e3ebef;padding:0}
.fm-pdp-quantity-controls input::-webkit-outer-spin-button,.fm-pdp-quantity-controls input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.fm-pdp-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fm-pdp-actions button{min-height:54px;border-radius:9px;font:800 14px Inter,Arial,sans-serif;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:background-color .15s,transform .15s;white-space:nowrap}
.fm-pdp-actions button:not(:disabled):active{transform:translateY(1px)}
.fm-pdp-buy-now{border:1px solid #f3ba09;background:#f3ba09;color:#173f54}
.fm-pdp-buy-now:hover:enabled{background:#e9b006}
.fm-pdp-add-cart{border:2px solid #194f64;background:#fff;color:#194f64}
.fm-pdp-add-cart:hover:enabled{background:#f0f7fa}
.fm-pdp-actions button:disabled{opacity:.45;cursor:not-allowed}
.fm-pdp-inline-error{font-size:12px;color:#ab372a;margin:12px 0 0}
.fm-pdp-benefits{border-top:1px solid #e6edf0;margin-top:25px;padding-top:19px;display:grid;gap:13px}
.fm-pdp-benefits>div{font-size:12px;display:flex;align-items:center;gap:11px;color:#677f8c}
.fm-pdp-benefits svg{color:#2a9170;flex:none}
.fm-pdp-information{border-top:1px solid #e2e9ed;padding-top:35px;padding-bottom:38px}
.fm-pdp-information h2{font:800 clamp(24px,2.1vw,30px) Barlow,Inter,sans-serif;color:#163c4f;margin:0 0 13px}
.fm-pdp-information>p{font-size:14px;line-height:1.8;color:#607787;max-width:850px}
.fm-pdp-information .fm-spec-grid{max-width:900px}
/* Drawer */
.fm-drawer-backdrop{position:fixed;inset:0;background:rgba(12,27,35,.52);z-index:9000;backdrop-filter:blur(2px)}
.fm-drawer-backdrop[hidden]{display:none!important}
.fm-cart-drawer{position:fixed;inset:0 0 0 auto;width:min(100%,460px);z-index:9001;background:#fff;box-shadow:-12px 0 55px rgba(0,0,0,.18);display:flex;flex-direction:column;transform:translateX(105%);visibility:hidden;transition:transform .22s ease,visibility .22s;max-height:100dvh;color:#183d50}
.fm-cart-drawer.is-open{transform:translateX(0);visibility:visible}
.fm-drawer-active{overflow:hidden}
.fm-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;flex:none;border-bottom:1px solid #e2ebef}
.fm-drawer-header small{color:#aa7c0e;font-size:10px;letter-spacing:.12em;font-weight:800}
.fm-drawer-header h2{margin:3px 0 0;font:800 26px Barlow,Inter,sans-serif}
.fm-drawer-header h2 span{font:600 15px Inter,sans-serif;color:#6e8390}
.fm-drawer-close{display:grid;place-items:center;width:40px;height:40px;border-radius:9px;border:1px solid #dfe8eb;background:white;color:#173e50;font-size:29px;cursor:pointer}
.fm-drawer-close:hover{background:#f1f6f8}
.fm-drawer-content{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}
.fm-drawer-lines{overflow:auto;flex:1;padding:6px 24px 16px}
.fm-drawer-item{position:relative;display:grid;grid-template-columns:90px 1fr 24px;gap:14px;padding:18px 0;border-bottom:1px solid #e6ecef}
.fm-drawer-product-photo{background:#fff;border:1px solid #e4eaed;border-radius:9px;display:flex;align-items:center;justify-content:center;width:90px;height:90px;padding:7px}
.fm-drawer-product-photo img{width:100%;height:100%;object-fit:contain}
.fm-drawer-item-details{display:flex;flex-direction:column;gap:4px;min-width:0}
.fm-drawer-item-title{font-size:12px;font-weight:750;color:#1b4255;line-height:1.45;text-decoration:none}
.fm-drawer-item-title:hover{text-decoration:underline}
.fm-drawer-store{font-size:11px;color:#79909d}
.fm-drawer-item-details p{font-size:12px;color:#617985;margin:5px 0 0}
.fm-drawer-item-details strong{font-size:14px;color:#143e52}
.fm-drawer-alert{font-size:11px;color:#b13d35}
.fm-drawer-remove-form{align-self:start}
.fm-drawer-remove-form button{border:0;background:#f4f7f8;color:#5f7b87;border-radius:7px;cursor:pointer;font-size:19px;width:24px;height:27px}
.fm-drawer-remove-form button:hover{background:#ffebe7;color:#a42a20}
.fm-drawer-footer{border-top:1px solid #e0e8ec;padding:20px 24px 25px;background:#fff;flex:none;box-shadow:0 -6px 18px rgba(30,58,72,.04)}
.fm-drawer-totals,.fm-drawer-shipping,.fm-drawer-grand{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:11px;font-size:13px;color:#58717d}
.fm-drawer-totals strong,.fm-drawer-shipping strong{color:#254b5e;font-weight:750}
.fm-drawer-grand{border-top:1px solid #e2e9ed;padding-top:14px;margin-top:7px;color:#153e52;font-weight:800;font-size:15px}
.fm-drawer-grand strong{font:800 25px Barlow,Inter,sans-serif;color:#163e51}
.fm-drawer-footer>p{font-size:11px;color:#7c8d97;margin:0 0 17px}
.fm-drawer-checkout{min-height:50px;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:9px;background:#f3ba09;color:#1b3e4e!important;text-decoration:none;font-weight:800;font-size:14px}
.fm-drawer-checkout:hover{background:#e6b006}
.fm-drawer-view{display:block;text-align:center;margin-top:14px;color:#1c5c76;font-size:12px;font-weight:750;text-decoration:none}
.fm-drawer-empty{padding:48px 28px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;flex:1}
.fm-drawer-empty-icon{width:82px;height:82px;display:grid;place-items:center;background:#f2f7f9;border-radius:50%;color:#29566d}
.fm-drawer-empty h3{font:800 25px Barlow;margin:23px 0 5px}
.fm-drawer-empty p{max-width:260px;font-size:13px;line-height:1.6;color:#698391;margin-bottom:24px}
.fm-drawer-loading{text-align:center;padding:34px 15px;font-size:13px;color:#64818d}
.fm-toast{position:fixed;z-index:9100;bottom:26px;left:50%;transform:translateX(-50%);max-width:min(94vw,520px);padding:13px 19px;background:#173c50;border-radius:9px;color:white;font-size:12px;box-shadow:0 12px 35px #10273240}
.fm-toast[hidden]{display:none!important}
@media(max-width:850px){.fm-pdp{grid-template-columns:1fr;gap:25px}.fm-pdp-gallery{position:static}.fm-pdp-photo-frame{max-height:510px}}
@media(max-width:560px){.fm-pdp{padding-top:0;padding-bottom:40px}.fm-pdp-photo-frame{border-radius:12px;max-height:370px;padding:16px}.fm-pdp h1{font-size:29px}.fm-pdp-price-line strong{font-size:40px}.fm-pdp-actions{grid-template-columns:1fr 1fr;gap:8px}.fm-pdp-actions button{font-size:12px;min-height:51px;padding:9px 7px}.fm-pdp-add-cart svg{width:16px}.fm-pdp-variant .fm-variant-options{grid-template-columns:1fr}.fm-cart-drawer{width:100%}.fm-drawer-header,.fm-drawer-footer{padding-left:18px;padding-right:18px}.fm-drawer-lines{padding-left:18px;padding-right:18px}.fm-drawer-item{grid-template-columns:76px 1fr 24px;gap:10px}.fm-drawer-product-photo{width:76px;height:76px}}
@media(prefers-reduced-motion:reduce){.fm-cart-drawer,.fm-pdp-actions button{transition:none}}
