@font-face{font-family:Manrope;src:url('ff2-shell-font.woff2') format('truetype');font-weight:400 600;font-display:swap}
:root{--ffg-ivory:#F7F3EB;--ffg-green:#325E4F;--ffg-deep:#203E34;--ffg-black:#070707;--ffg-gold:#C5A15A;--ffg-ink:#181A18;--ffg-rail:calc(25vw - 52px);--ffg-fade:52px;--ffg-short:26px;--ffg-page:linear-gradient(90deg,var(--ffg-green) var(--ffg-rail),#365f51 calc(var(--ffg-rail) + var(--ffg-fade)*.1),#517463 calc(var(--ffg-rail) + var(--ffg-fade)*.25),#94aa96 calc(var(--ffg-rail) + var(--ffg-fade)*.5),#dbe0d2 calc(var(--ffg-rail) + var(--ffg-fade)*.75),var(--ffg-ivory) calc(var(--ffg-rail) + var(--ffg-fade)));--ff-ui:Manrope,Arial,sans-serif}
body.ff2-system{background:var(--ffg-page);color:var(--ffg-ink);padding-bottom:0}
/* Preserve the existing Home's compositions, image treatments and commerce. */
.ff2-home{background:transparent}
body.ff2-system:not(.home) .site-main{color:var(--ffg-ink)}
.ffg-surface{position:relative;isolation:isolate;--ffg-blend:var(--ffg-short);background:none;color:var(--ffg-ivory)}
.ffg-surface:before{content:'';position:absolute;z-index:-1;inset:calc(var(--ffg-blend)/-2) 0 -6px;background:var(--ffg-target);pointer-events:none;mask-image:linear-gradient(to bottom,transparent,rgba(0,0,0,.04) calc(var(--ffg-blend)*.125),rgba(0,0,0,.15) calc(var(--ffg-blend)*.25),rgba(0,0,0,.32) calc(var(--ffg-blend)*.375),rgba(0,0,0,.5) calc(var(--ffg-blend)*.5),rgba(0,0,0,.68) calc(var(--ffg-blend)*.625),rgba(0,0,0,.85) calc(var(--ffg-blend)*.75),rgba(0,0,0,.96) calc(var(--ffg-blend)*.875),#000 var(--ffg-blend))}
.ffg-micro{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:21px;padding:0 4vw;background:var(--ffg-deep);color:var(--ffg-ivory);font:400 10px/1.6 Manrope,Arial,sans-serif}
.ffg-micro:after{content:'';position:absolute;bottom:-3px;left:0;right:0;height:3px;background:var(--ffg-deep)}
.ffg-micro nav{display:flex;align-items:center;gap:24px}.ffg-micro a{color:inherit;text-decoration:none}
body.ff2-system .ffg-micro button{min-height:21px;padding:0;border:0;border-radius:0;color:inherit!important;background:none!important;font:inherit;letter-spacing:.03em}
.ffg-header{--ffg-target:var(--ffg-green);--ffg-blend:6px;z-index:950;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:4px 4vw;min-height:52px}
.ffg-header:before{bottom:-13px;mask-image:linear-gradient(to bottom,transparent,#000 6px),linear-gradient(to top,transparent,rgba(0,0,0,.15) 6.5px,rgba(0,0,0,.5) 13px,rgba(0,0,0,.85) 19.5px,#000 26px);mask-composite:intersect}
.ffg-header a,.ffg-header summary{color:var(--ffg-ivory);text-decoration:none}.ffg-brand{display:flex;flex-direction:column;width:fit-content}.ffg-brand strong{font:600 18px/1.3 Manrope,Arial,sans-serif;letter-spacing:.02em}.ffg-brand small{font:400 10px/1.5 Manrope,Arial,sans-serif}
.ffg-desktop{display:flex;align-items:center;gap:24px;font:500 11px/1.4 Manrope,Arial,sans-serif;white-space:nowrap}.ffg-pending{opacity:.7;cursor:help}
.ffg-actions{display:flex;justify-content:flex-end;align-items:center;gap:4px}.ffg-actions>a,.ffg-actions summary{display:grid;place-items:center;min-width:36px;min-height:40px;list-style:none;cursor:pointer;font-size:20px}.ffg-actions summary::-webkit-details-marker{display:none}.ffg-actions svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.ffg-search,.ffg-menu{position:relative}.ffg-search form,.ffg-menu nav{position:absolute;right:0;top:100%;width:min(340px,calc(100vw - 32px));padding:20px;background:var(--ffg-deep);color:var(--ffg-ivory);box-shadow:0 10px 24px #0002}.ffg-search label{font-size:13px}.ffg-search form>div{display:flex;gap:8px;margin-top:10px}.ffg-search input{min-width:0;width:100%;background:var(--ffg-ivory);color:var(--ffg-ink)}
body.ff2-system .ffg-search button{min-height:40px;padding:8px 12px;border-radius:0;font-size:11px}.ffg-menu{display:none}.ffg-menu nav{display:grid;gap:16px;font-size:12px}
.ffg-footer{--ffg-target:var(--ffg-deep);z-index:1;padding:40px 5vw 35px}.ffg-columns{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px;max-width:1500px;margin:auto}.ffg-columns h2,body.ff2-system .ffg-columns h2{font:600 12px/1.5 Manrope,Arial,sans-serif;letter-spacing:.1em;color:var(--ffg-ivory);margin:0 0 20px}.ffg-columns p,.ffg-columns a{font:400 13px/1.8 Manrope,Arial,sans-serif;color:var(--ffg-ivory)}.ffg-columns nav>a{display:block;width:fit-content;padding:5px 0}.ffg-columns a{text-decoration:none}
.ffg-bottom{--ffg-target:var(--ffg-black);--ffg-blend:12px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;padding:4px 4vw;font:400 9px/1.5 Manrope,Arial,sans-serif;letter-spacing:.05em}.ffg-bottom:before{bottom:0}.ffg-bottom i{padding:0 10px;color:var(--ffg-gold)}.ffg-bottom nav{display:flex;align-items:center;gap:22px;margin-left:auto;flex-shrink:0}.ffg-bottom a{color:var(--ffg-ivory);text-decoration:none}body.ff2-system .ffg-bottom nav button{min-height:24px;padding:0;border:0;border-radius:0;background:none!important;color:var(--ffg-ivory)!important;font:inherit;letter-spacing:inherit}
.ffg-header a:hover,.ffg-micro a:hover,.ffg-footer a:hover,.ffg-bottom a:hover{color:var(--ffg-gold)}
@media(max-width:1150px){.ffg-desktop{gap:14px;font-size:10px}.ffg-header{gap:12px;padding-inline:22px}}
@media(max-width:959px){.ffg-desktop{display:none}.ffg-menu{display:block}.ffg-header{grid-template-columns:1fr auto}.ffg-micro nav{gap:12px}.ffg-columns{gap:25px}}
@media(max-width:700px){:root{--ffg-rail:10px;--ffg-fade:20px;--ffg-short:20px}.ffg-micro{padding-inline:12px;flex-wrap:wrap;justify-content:center;gap:0;font-size:9px}.ffg-micro nav{justify-content:space-between;width:100%}.ffg-header{padding:4px 12px;gap:5px}.ffg-brand strong{font-size:16px}.ffg-brand small{max-width:135px;font-size:9px}.ffg-actions{gap:0}.ffg-actions>a,.ffg-actions summary{min-width:32px}.ffg-header:before{bottom:-10px}.ffg-columns{grid-template-columns:1fr 1fr;gap:30px 20px}.ffg-footer{padding:30px 24px}.ffg-bottom{padding-inline:12px;font-size:8px;gap:6px}.ffg-bottom i{padding:0 4px}.ffg-bottom nav{gap:12px}.ffg-bottom>.ff2-footer__buy{max-width:110px!important;font-size:8px!important;padding-inline:4px!important}}
/* Contextual contrast for headings on the global canvas, without moving content. */
body.ff2-system:not(.home) .hero-section h1,body.ff2-system:not(.home) .entry-header h1{color:var(--ffg-ink)}
body.ff2-system .ct-breadcrumbs,body.ff2-system .ct-breadcrumbs a,body.ff2-system .woocommerce-breadcrumb,body.ff2-system .woocommerce-breadcrumb a{color:var(--ffg-ink)}
body.ff2-system .woocommerce-result-count{color:var(--ffg-ivory)}
body.home .ffg-header:before{mask-image:linear-gradient(to bottom,transparent,#000 6px)}
.ff2-section-heading h2,.ff2-manifesto p{background-image:linear-gradient(90deg,var(--ffg-ivory) calc(var(--ffg-rail) + var(--ffg-fade)/2),var(--ffg-ink) calc(var(--ffg-rail) + var(--ffg-fade)/2));background-attachment:fixed;background-clip:text;-webkit-background-clip:text;color:transparent!important}
@media(max-width:700px){body.ff2-system .woocommerce-result-count{color:var(--ffg-ink)}}
body.ff2-system:not(.home) .site-main :is(h1,h2,h3){color:var(--ffg-ink)}
/* Contrast belongs to the shell, not to product data or form behaviour. */
body.ff2-system:not(.home) .site-main :is(.woocommerce-form-login,.woocommerce-form-register) h2{color:var(--ffg-ink)}
/* Blocksy's empty legacy wrapper must not reserve an extra viewport below Home. */
body.ff2-system.home #main-container{min-height:0!important}
body.home .ffg-footer{background:linear-gradient(var(--ff-deep),var(--ff-deep)) top/100% 13px no-repeat}
@media(max-width:700px){body.home .ffg-footer{background-size:100% 10px}}

/* NAV1: shared navigation and approved 48px / 10px compact footer. */
.ffg-nav-group{position:relative;margin:0}
.ffg-nav-group>summary{display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer;min-height:40px;font:inherit}
.ffg-nav-group>summary::-webkit-details-marker{display:none}
.ffg-nav-group>summary:after{content:'▾';color:#C5A15A}
.ffg-nav-links{position:absolute;top:100%;left:0;min-width:200px;padding:10px 14px;background:#203E34;box-shadow:0 8px 20px #0002}
.ffg-nav-links>a{display:block;padding:11px 4px;font:500 12px/1.4 Manrope,sans-serif}
.ffg-menu .ffg-nav-links{position:static;min-width:0;padding:0 8px;box-shadow:none}
.ffg-menu .ffg-nav-group>summary{justify-content:space-between;font:500 12px/1.4 Manrope,sans-serif}
.ffg-menu nav>a{padding:10px 0}
body.ff2-system .ffg-footer.ff2-nav1-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative;z-index:20;overflow:visible;box-sizing:border-box;height:48px;min-height:48px;max-height:48px;margin:0;padding:0 4%!important;background:#070707!important;color:#F7F3EB}
.ff2-nav1-footer>.ffn-brands,.ff2-nav1-footer>.ffn-controls,.ff2-nav1-footer .ffn-menus{display:flex;align-items:center;gap:20px;margin:0}
body.ff2-system .ff2-nav1-footer :is(a,button,summary){color:#F7F3EB!important;font:500 10px/14px Manrope,sans-serif;letter-spacing:0;text-decoration:none;white-space:nowrap}
body.ff2-system .ff2-nav1-footer :is(button,summary){background:none!important;border:0;border-radius:0;padding:0;box-shadow:none;cursor:pointer}
.ff2-nav1-footer :is(.ffn-brands,.ffn-controls)>:is(a,button),.ff2-nav1-footer summary{display:flex;align-items:center;min-height:48px}
.ff2-nav1-footer details{position:relative;margin:0}
.ff2-nav1-footer summary{list-style:none;gap:7px}
.ff2-nav1-footer summary::-webkit-details-marker{display:none}
.ff2-nav1-footer summary:after{content:'▾';color:#C5A15A}
.ff2-nav1-footer details[open]>summary:after{content:'▴'}
.ff2-nav1-footer .ffn-links{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);width:190px;max-height:55vh;overflow:auto;background:#102E29;border:1px solid #C5A15A;padding:8px 12px;box-shadow:0 -8px 24px #0002}
body.ff2-system .ff2-nav1-footer .ffn-links a{display:flex;align-items:center;min-height:40px;padding:8px 4px;white-space:normal}
.ff2-nav1-footer .ffn-mobile[hidden]{display:none}
body.ff2-system .ff2-nav1-footer :is(a,button,summary):hover{color:#C5A15A!important}
.ff2-nav1-footer :is(a,button,summary):focus-visible,.ffg-nav-group :is(a,summary):focus-visible{outline:2px solid #C5A15A;outline-offset:2px}
@media(max-width:899px){body.ff2-system .ff2-nav1-footer,.ff2-nav1-footer>.ffn-brands,.ff2-nav1-footer>.ffn-controls,.ff2-nav1-footer .ffn-menus{gap:12px}}
@media(max-width:599px){
 body.ff2-system .ffg-footer.ff2-nav1-footer{padding:0 14px!important}
 .ff2-nav1-footer .ffn-mobile-panel{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);width:230px;max-height:65vh;overflow:auto;padding:12px 16px;background:#102E29;border:1px solid #C5A15A;box-shadow:0 -8px 24px #0002}
 .ff2-nav1-footer .ffn-mobile-panel .ffn-menus{display:block}
 .ff2-nav1-footer .ffn-mobile-panel .ffn-links{position:static;transform:none;width:auto;border:0;box-shadow:none;max-height:none;padding:0 8px}
 .ff2-nav1-footer .ffn-mobile-panel>:is(a,button){display:flex;align-items:center;min-height:44px}
}
/* The removed legacy mobile bar must not reserve empty space below the footer. */
body.ff2-system:has(.ff2-nav1-footer){padding-bottom:0!important}
body.ff2-system .ffg-actions>a[aria-label="Mi cuenta"]{display:grid!important}
/* Retired funnel shell rules cannot hide NAV1; commerce selectors are untouched. */
body.ff2-system.ff2-caja-mode .ffg-footer.ff2-nav1-footer{display:flex!important}
body.ff2-system.ff2-caja-mode .ff2-nav1-footer a[href]{display:flex!important}
body.ff2-system.ff2-caja-mode .ffg-top-stack .ffg-desktop>a[href],
body.ff2-system.ff2-caja-mode .ffg-top-stack .ffg-nav-links>a[href],
body.ff2-system.ff2-caja-mode .ffg-top-stack .ffg-menu nav>a[href]{display:block!important}
/* Preserve the historical #footer anchor without inheriting its legacy hide rule. */
body.ff2-system #footer.ff2-nav1-footer{display:flex!important}
