/* ===== Usavent: menu [usv_menu] y ficha de maquina [usv_ficha] ===== */
.usvm,.usvf{font-family:Montserrat,system-ui,sans-serif;color:#1f2a16}
.usvm *,.usvf *{box-sizing:border-box}
.usvm a,.usvf a{text-decoration:none}
.usvm .u-wrap,.usvf .u-wrap{max-width:1280px;margin:0 auto;padding:0 40px}

/* ---------- MENU ---------- */
.usvm{position:relative;z-index:9995}
.usvm .u-hdr{position:relative;background:#fff;border-bottom:1px solid #e6e9df;box-shadow:0 6px 20px rgba(31,42,22,.05)}
.usvm .u-hdr-in{height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.usvm .u-logo{height:32px;width:auto;display:block}
.usvm .u-nav{display:flex;align-items:center;gap:8px}
.usvm .u-nav a,.usvm .u-nav button{position:relative;display:inline-flex;align-items:center;gap:6px;height:48px;padding:0 18px;margin:0;border-radius:12px;border:0;background:transparent;box-shadow:none;font:600 17px Montserrat,sans-serif;line-height:1;color:#1f2a16;cursor:pointer;text-transform:none;letter-spacing:0}
.usvm .u-nav a:hover,.usvm .u-nav button:hover,.usvm .u-nav .is-open{background:#f2f5ec;color:#1f2a16}
.usvm .u-nav .is-on::after{content:"";position:absolute;left:18px;right:18px;bottom:4px;height:3px;border-radius:2px;background:#a6c236}
.usvm .u-nav svg{transition:transform .25s}
.usvm .u-nav .is-open svg{transform:rotate(180deg)}
.usvm .u-call{display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 24px 0 8px;border-radius:999px;background:#4e6a31;color:#fff;font-size:17px;font-weight:700;box-shadow:0 8px 20px rgba(78,106,49,.25);white-space:nowrap}
.usvm .u-call:hover{background:#3f5727;color:#fff}
.usvm .u-call i{width:38px;height:38px;border-radius:50%;background:#dcdb21;display:flex;align-items:center;justify-content:center;color:#1f2a16}
.usvm .u-mega{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid #e6e9df;box-shadow:0 30px 60px rgba(31,42,22,.16);border-radius:0 0 24px 24px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .25s,transform .25s,visibility .25s}
.usvm .u-mega.is-open{opacity:1;visibility:visible;transform:none}
.usvm .u-mega-g{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:26px 0 18px}
.usvm .u-mt{display:flex;align-items:center;gap:16px;padding:12px;border-radius:16px;border:1px solid #e3e7da;color:#1f2a16;transition:border-color .2s,background .2s}
.usvm .u-mt:hover{border-color:#4e6a31;background:#f7f9f2;color:#1f2a16}
.usvm .u-mt img{width:72px;height:72px;object-fit:contain;background:#fff;border-radius:12px;flex-shrink:0}
.usvm .u-mt b{display:block;font-size:17px;font-weight:700}
.usvm .u-mt span{font-size:14px;color:#4e6a31;font-weight:600}
.usvm .u-mega-f{display:flex;justify-content:space-between;align-items:center;padding:16px 0 24px;border-top:1px solid #eef1e7;font-size:16px;color:#4a5540}
.usvm .u-mega-f a{font-weight:700;color:#4e6a31}
.usvm .m-acts{display:none;gap:8px}
.usvm .m-ic{width:46px;height:46px;margin:0;border-radius:12px;border:1px solid #d5dbc9;background:#fff;color:#1f2a16;display:flex;align-items:center;justify-content:center;padding:0;box-shadow:none;cursor:pointer}
.usvm .m-ic.g{background:#4e6a31;border-color:#4e6a31;color:#fff;border-radius:50%}
.usvm .m-menu{position:fixed;inset:0;z-index:99999;background:#fff;display:flex;flex-direction:column;transform:translateX(100%);visibility:hidden;transition:transform .4s cubic-bezier(.2,.7,.2,1),visibility .4s}
.usvm .m-menu.is-open{transform:none;visibility:visible}
.usvm .m-menu-h{height:64px;padding:0 12px 0 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e6e9df;flex-shrink:0}
.usvm .m-menu-h .u-logo{height:24px}
.usvm .m-menu-b{padding:18px 16px 24px;overflow-y:auto;flex-grow:1;display:flex;flex-direction:column}
.usvm .m-lnk{display:flex;align-items:center;justify-content:space-between;height:58px;padding:0 4px;border-bottom:1px solid #eef1e7;font-size:20px;font-weight:700;color:#1f2a16}
.usvm .m-lbl{margin:20px 0 12px;font-size:14px;font-weight:800;letter-spacing:.12em;color:#4e6a31;text-transform:uppercase}
.usvm .m-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.usvm .m-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;border:1px solid #e3e7da;border-radius:16px;color:#1f2a16;font-size:15px;font-weight:700;text-align:center;line-height:1.2}
.usvm .m-tile img{width:64px;height:52px;object-fit:contain}
.usvm .m-menu-f{margin-top:auto;padding-top:18px;display:flex;flex-direction:column;gap:10px}
.usvm .m-menu-f p{margin:0;text-align:center;font-size:15px;color:#4a5540}
.usvm .u-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:58px;border-radius:16px;font:700 18px Montserrat,sans-serif;background:#4e6a31;color:#fff}
@media (max-width:1024px){
 .usvm .u-wrap{padding:0 24px}
 .usvm .u-nav a,.usvm .u-nav button{padding:0 12px;font-size:16px}
 .usvm .u-call{font-size:0;gap:0;padding:0 8px}
 .usvm .u-mega-g{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:767px){
 .usvm .u-wrap{padding:0 12px 0 16px}
 .usvm .u-hdr-in{height:64px}
 .usvm .u-logo{height:24px}
 .usvm .u-nav,.usvm .u-call,.usvm .u-mega{display:none}
 .usvm .m-acts{display:flex}
}
body.usvm-lock{overflow:hidden}

/* ---------- FICHA ---------- */
.usvf{padding-bottom:20px}
.usvf .u-crumb{padding:26px 0 18px;font-size:15px;color:#5b6650;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.usvf .u-crumb a{color:#5b6650}
.usvf .u-crumb a:hover{color:#4e6a31}
.usvf .u-crumb b{color:#1f2a16}
.usvf .u-prod{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:48px;align-items:start}
.usvf .u-gal-m{position:relative;aspect-ratio:4/3;border-radius:22px;overflow:hidden;background:#eef1e7}
.usvf .u-track{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}
.usvf .u-track::-webkit-scrollbar{display:none}
.usvf .u-track img{width:100%;height:100%;flex:0 0 100%;object-fit:cover;scroll-snap-align:start;display:block;margin:0;border-radius:0}
.usvf .u-track img.fit{object-fit:contain}
.usvf .u-cnt{position:absolute;right:16px;bottom:16px;padding:8px 14px;border-radius:999px;background:rgba(31,42,22,.78);color:#fff;font-size:15px;font-weight:700;pointer-events:none}
.usvf .u-arr{position:absolute;top:50%;width:54px;height:54px;margin:-27px 0 0;padding:0;border-radius:50%;border:0;background:#fff;color:#1f2a16;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(0,0,0,.18);cursor:pointer}
.usvf .u-arr:hover{background:#f2f5ec;color:#1f2a16}
.usvf .u-arr.l{left:16px}.usvf .u-arr.r{right:16px}
.usvf .u-zoom{position:absolute;top:16px;right:16px;display:inline-flex;align-items:center;gap:8px;height:42px;margin:0;padding:0 16px;border-radius:999px;border:0;background:#fff;font:700 14px Montserrat,sans-serif;color:#1f2a16;box-shadow:0 6px 16px rgba(0,0,0,.14);cursor:pointer;text-transform:none}
.usvf .u-zoom:hover{background:#f2f5ec;color:#1f2a16}
.usvf .u-dots{display:none}
.usvf .u-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}
.usvf .u-th{aspect-ratio:4/3;border-radius:14px;overflow:hidden;border:3px solid transparent;padding:0;margin:0;background:#eef1e7;cursor:pointer;box-shadow:none}
.usvf .u-th img{width:100%;height:100%;object-fit:cover;display:block}
.usvf .u-th.on{border-color:#4e6a31}
.usvf .u-info{border:1px solid #e3e7da;border-radius:24px;padding:34px 36px;background:#fff;box-shadow:0 20px 50px rgba(31,42,22,.07)}
.usvf .u-chips{display:flex;gap:10px;flex-wrap:wrap}
.usvf .u-chip{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:4px 14px;border-radius:999px;background:#eef3e2;color:#3c5326;font-size:15px;font-weight:700}
.usvf .u-chip.y{background:#dcdb21;color:#1f2a16}
.usvf h1.u-h1{margin:16px 0 6px;padding:0;font-family:Montserrat,sans-serif;font-size:46px;line-height:1.08;font-weight:800;letter-spacing:-.01em;color:#1f2a16;text-transform:none}
.usvf .u-sub{margin:0;font-size:18px;color:#4a5540;line-height:1.45}
.usvf .u-specs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0 18px}
.usvf .u-sp{display:flex;align-items:center;gap:14px;padding:18px;border-radius:18px;background:#f4f6ef}
.usvf .u-sp i{width:52px;height:52px;border-radius:14px;background:#4e6a31;color:#dcdb21;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.usvf .u-sp small{display:block;font-size:14px;font-weight:700;color:#5b6650;text-transform:uppercase;letter-spacing:.06em}
.usvf .u-sp b{display:block;font-size:30px;font-weight:800;line-height:1.1}
.usvf .u-inc{font-size:16px;font-weight:700;color:#4a5540;margin:0 0 10px}
.usvf .u-inc-l{display:flex;gap:10px;flex-wrap:wrap}
.usvf .u-tag{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:6px 16px;border-radius:12px;border:1.5px solid #d5dbc9;font-size:16px;font-weight:600}
.usvf .u-tag svg{color:#4e6a31;flex-shrink:0}
.usvf .u-more{margin:18px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:16px;color:#4a5540}
.usvf .u-more li{margin:0}
.usvf .u-more b{color:#1f2a16}
.usvf .u-price{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:24px 0 18px;padding:20px 22px;border-radius:18px;border:2px dashed #c9d3b6;background:#fbfcf8}
.usvf .u-price small{display:block;font-size:14px;font-weight:700;color:#5b6650;text-transform:uppercase;letter-spacing:.06em}
.usvf .u-price b{display:block;font-size:28px;font-weight:800}
.usvf .u-price p{margin:0;max-width:230px;font-size:15px;color:#4a5540;line-height:1.4;text-align:right}
.usvf .u-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:64px;border-radius:16px;font:700 19px Montserrat,sans-serif;border:0;cursor:pointer}
.usvf .u-btn.p{background:#4e6a31;color:#fff;box-shadow:0 12px 26px rgba(78,106,49,.28)}
.usvf .u-btn.p:hover{background:#3f5727;color:#fff}
.usvf .u-btn.s{margin-top:12px;background:#fff;color:#1f2a16;border:2px solid #1f2a16;height:60px}
.usvf .u-btn.s:hover{background:#1f2a16;color:#fff}
.usvf .u-loc{display:flex;align-items:flex-start;gap:10px;margin-top:18px;font-size:15px;color:#4a5540;line-height:1.45}
.usvf .u-loc svg{color:#4e6a31;flex-shrink:0}
.usvf .u-loc a{font-weight:700;color:#4e6a31;text-decoration:underline;white-space:nowrap}
.usvf .u-sec{margin-top:72px;scroll-margin-top:30px}
.usvf .u-h2{margin:0 0 6px;padding:0;font-family:Montserrat,sans-serif;font-size:34px;font-weight:800;color:#1f2a16;line-height:1.2}
.usvf .u-lead{margin:0 0 24px;font-size:18px;color:#4a5540}
.usvf .u-two{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:48px;align-items:start}
.usvf .u-formw{border-radius:24px;background:#f4f6ef;padding:26px 34px 30px}
.usvf .u-formw .wpforms-container{margin:0 !important}
.usvf .u-formw .wpforms-field{padding:10px 0 !important}
.usvf .u-formw .wpforms-field-label{position:static !important;clip:auto !important;clip-path:none !important;width:auto !important;height:auto !important;overflow:visible !important;margin:0 0 8px !important;font-family:Montserrat,sans-serif !important;font-size:16px !important;font-weight:700 !important;color:#1f2a16 !important;display:block !important}
.usvf .u-formw input[type=text],.usvf .u-formw input[type=email],.usvf .u-formw input[type=tel],.usvf .u-formw input[type=number],.usvf .u-formw textarea{width:100% !important;max-width:100% !important;height:56px !important;border-radius:12px !important;border:1.5px solid #cfd6c2 !important;background:#fff !important;padding:0 16px !important;font:500 17px Montserrat,sans-serif !important;color:#1f2a16 !important;box-shadow:none !important}
.usvf .u-formw textarea{height:120px !important;padding:14px 16px !important;line-height:1.4 !important}
.usvf .u-formw input:focus,.usvf .u-formw textarea:focus{outline:3px solid rgba(166,194,54,.5) !important;border-color:#4e6a31 !important}
.usvf .u-formw button[type=submit]{width:100% !important;height:60px !important;border-radius:16px !important;border:0 !important;background:#4e6a31 !important;color:#fff !important;font:700 19px Montserrat,sans-serif !important;cursor:pointer}
.usvf .u-formw button[type=submit]:hover{background:#3f5727 !important}
.usvf .u-steps{display:flex;flex-direction:column;gap:14px}
.usvf .u-st{display:flex;gap:16px;padding:20px;border:1px solid #e3e7da;border-radius:18px;background:#fff}
.usvf .u-st i{width:46px;height:46px;border-radius:12px;background:#4e6a31;color:#dcdb21;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:800;font-size:20px;flex-shrink:0}
.usvf .u-st b{display:block;font-size:18px;margin-bottom:4px}
.usvf .u-st span{font-size:16px;color:#4a5540;line-height:1.45}
.usvf .u-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.usvf .u-card{background:#fff;border:1px solid #e3e7da;border-radius:18px;overflow:hidden;color:#1f2a16;display:flex;flex-direction:column;transition:transform .28s,box-shadow .28s}
.usvf .u-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(46,64,26,.18);color:#1f2a16}
.usvf .u-card-ph{position:relative;aspect-ratio:4/3;overflow:hidden;background:#e9ece3}
.usvf .u-card-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.usvf .u-card:hover .u-card-ph img{transform:scale(1.06)}
.usvf .u-yr{position:absolute;top:12px;left:12px;padding:6px 12px;border-radius:999px;background:#dcdb21;font-size:13px;font-weight:800;color:#1f2a16}
.usvf .u-card-b{padding:16px 18px 18px;display:flex;flex-direction:column;gap:10px;flex-grow:1}
.usvf .u-card-b b{font-size:19px;font-weight:800;line-height:1.2}
.usvf .u-card-b span{display:inline-flex;align-items:center;gap:6px;font-size:15px;color:#4a5540;font-weight:600}
.usvf .u-card-b em{font-style:normal;margin-top:auto;display:flex;align-items:center;justify-content:center;height:46px;border-radius:12px;background:#4e6a31;color:#fff;font-weight:700;font-size:16px}
.usvf-lb{position:fixed;inset:0;z-index:99999;background:rgba(15,20,10,.92);display:none;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}
.usvf-lb.is-open{display:flex}
.usvf-lb img{max-width:100%;max-height:100%;border-radius:12px;object-fit:contain}
.usvf-lb button{position:absolute;top:16px;right:16px;width:52px;height:52px;border-radius:50%;border:0;background:#fff;color:#1f2a16;font-size:28px;line-height:1;cursor:pointer;padding:0}
@media (max-width:1024px){
 .usvf .u-wrap{padding:0 24px}
 .usvf .u-prod,.usvf .u-two{grid-template-columns:1fr;gap:32px}
 .usvf .u-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
 .usvf .u-wrap{padding:0 16px}
 .usvf .u-crumb{padding:14px 0 12px;font-size:13px;gap:6px}
 .usvf .u-prod{gap:0}
 .usvf .u-gal{margin:0 -16px}
 .usvf .u-gal-m{border-radius:0}
 .usvf .u-arr,.usvf .u-thumbs{display:none}
 .usvf .u-zoom{top:auto;bottom:12px;left:12px;right:auto;height:38px;font-size:13px;padding:0 12px}
 .usvf .u-cnt{bottom:auto;top:12px;right:12px;font-size:14px;padding:6px 12px}
 .usvf .u-dots{display:flex;justify-content:center;gap:8px;margin-top:12px}
 .usvf .u-dots i{width:9px;height:9px;border-radius:5px;background:#cfd6c2;transition:width .25s,background .25s}
 .usvf .u-dots i.on{background:#4e6a31;width:24px}
 .usvf .u-info{border:0;box-shadow:none;padding:16px 0 0;border-radius:0}
 .usvf h1.u-h1{font-size:34px;margin-top:14px}
 .usvf .u-sub{font-size:16px}
 .usvf .u-specs{gap:10px;margin:18px 0 16px}
 .usvf .u-sp{padding:14px;gap:10px;border-radius:16px}
 .usvf .u-sp i{width:42px;height:42px;border-radius:12px}
 .usvf .u-sp small{font-size:12px}
 .usvf .u-sp b{font-size:24px}
 .usvf .u-price{flex-direction:column;align-items:flex-start;gap:6px;padding:16px 18px}
 .usvf .u-price p{text-align:left;max-width:none}
 .usvf .u-btn{font-size:18px}
 .usvf .u-sec{margin-top:44px}
 .usvf .u-h2{font-size:26px}
 .usvf .u-lead{font-size:16px;margin-bottom:18px}
 .usvf .u-formw{padding:18px 18px 22px;border-radius:20px}
 .usvf .u-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -16px;padding:0 16px 8px;scrollbar-width:none}
 .usvf .u-cards::-webkit-scrollbar{display:none}
 .usvf .u-card{flex:0 0 262px;scroll-snap-align:start}
}

/* v1.1: tarjetas de Año y Horas mas compactas */
.usvf .u-specs{gap:12px;margin:20px 0 16px}
.usvf .u-sp{padding:12px 14px;gap:12px;border-radius:14px;min-width:0}
.usvf .u-sp i{width:42px;height:42px;border-radius:11px}
.usvf .u-sp i svg{width:22px;height:22px}
.usvf .u-sp small{font-size:12px}
.usvf .u-sp b{font-size:22px;white-space:nowrap}
@media (max-width:767px){
 .usvf .u-sp{padding:10px 12px;gap:10px}
 .usvf .u-sp i{width:36px;height:36px;border-radius:10px}
 .usvf .u-sp i svg{width:19px;height:19px}
 .usvf .u-sp small{font-size:11px}
 .usvf .u-sp b{font-size:19px}
}

/* v1.2: precio siempre en bloque (no se parte en lineas) */
.usvf .u-price{flex-direction:column;align-items:flex-start;gap:6px;padding:16px 20px}
.usvf .u-price b{white-space:nowrap;font-size:26px}
.usvf .u-price p{text-align:left;max-width:none}
