/* FerreImpulso 2.0.10.8 — responsive adaptive header.
 * Loaded after site.css to supersede legacy floating/hide experiments.
 * The header stays position:sticky, keeping the browser's normal scroll flow.
 */
@media (max-width:900px){
 body.fi-site .fi-header{
  position:sticky!important;top:env(safe-area-inset-top,0px)!important;
  z-index:100;transform:none!important;will-change:auto;
  transition:box-shadow .32s ease,background-color .32s ease;
  overflow:visible;
 }
 body.fi-site .fi-header.fi-scroll-compact{
  background:#fff;
  box-shadow:0 7px 22px rgba(6,59,97,.17);
 }
 body.fi-site .fi-header .fi-hr{
  transition:padding .34s cubic-bezier(.2,.75,.25,1),gap .34s ease,
   min-height .34s ease;
 }
 body.fi-site .fi-header .fi-custom-logo{
  transition:max-height .32s cubic-bezier(.2,.75,.25,1),max-width .32s ease;
 }
 body.fi-site .fi-header .fi-logo,
 body.fi-site .fi-header .fi-logo i,
 body.fi-site .fi-header .fi-logo small{
  transition:font-size .32s ease,max-width .32s ease,width .32s ease,
   height .32s ease,opacity .24s ease;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-hr{
  min-height:58px;height:58px;gap:7px;padding:5px 12px;
  display:flex;align-items:center;flex-wrap:nowrap;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-logo{
  flex:1 1 auto;min-width:0;max-width:100%;
  font-size:20px;overflow:hidden;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-logo>span{
  min-width:0;overflow:hidden;text-overflow:ellipsis;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-custom-logo{
  max-width:min(154px,38vw);max-height:39px;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-logo i{
  width:30px;height:30px;font-size:15px;flex:none;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-logo small{opacity:0;font-size:0;height:0;line-height:0;margin:0;}
 body.fi-site .fi-header.fi-scroll-compact .fi-acts{
  margin-left:auto;flex:0 0 auto;gap:0;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-acts>a:first-child{display:none;}
 body.fi-site .fi-header.fi-scroll-compact .fi-cart-link{
  display:flex;align-items:center;justify-content:center;gap:3px;
  min-width:43px;min-height:44px;position:relative;font-size:0;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-cart-label{display:none;}
 body.fi-site .fi-header.fi-scroll-compact .fi-cart-mini-icon{
  display:block!important;width:23px;height:23px;fill:none;
  stroke:var(--fi-navy);stroke-width:1.8;stroke-linecap:round;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-cart-count{
  position:absolute;top:1px;right:0;font-size:10px;min-width:18px;
  padding:3px 4px;margin:0;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-compact-search-button,
 body.fi-site .fi-header.fi-scroll-compact .fi-mobile-menu-button{
  display:grid;place-items:center;flex:0 0 43px;width:43px;height:44px;
  min-width:43px;min-height:44px;margin:0;padding:0;
  border:0;border-radius:10px;cursor:pointer;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-compact-search-button{
  color:var(--fi-navy);background:transparent;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-compact-search-button svg{
  width:22px;height:22px;fill:none;stroke:currentColor;
  stroke-width:2;stroke-linecap:round;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-mobile-menu-button{
  background:var(--fi-navy);color:#fff;font-size:20px;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-srch{
  display:none!important;
 }
 body.fi-site .fi-header.fi-scroll-compact.fi-search-open .fi-srch{
  display:flex!important;position:absolute;top:calc(100% + 3px);
  left:10px;right:10px;width:auto;min-height:53px;
  margin:0;padding:3px;flex-basis:auto;max-width:none;
  border:1px solid var(--ln);border-radius:12px;
  background:#fff;opacity:1;visibility:visible;pointer-events:auto;
  box-shadow:0 15px 28px rgba(6,59,97,.16);z-index:11;
 }
 body.fi-site .fi-header.fi-scroll-compact.fi-search-open .fi-srch input{
  min-width:0;font-size:16px!important;padding-inline:10px;
 }
 body.fi-site .fi-header.fi-scroll-compact.fi-search-open .fi-srch button{
  padding-inline:15px;border-radius:9px;
 }
 body.fi-site .fi-header .fi-mobile-menu:not([hidden]){
  display:flex;position:absolute;top:100%;left:0;right:0;
  z-index:12;max-height:min(72dvh,580px);overflow-y:auto;
  overscroll-behavior:contain;box-shadow:0 16px 27px rgba(6,59,97,.18);
  background:#fff;border-top:1px solid var(--ln);
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-mobile-menu:not([hidden]){
  position:absolute;top:100%;left:0;right:0;
 }
}
/* Phones: two rows at the top, a single row after the announcement disappears.
 * Grid row compression, rather than display toggling, gives a fluid collapse. */
@media (max-width:900px){
 body.fi-site .fi-header .fi-hr{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto auto;
  grid-template-rows:52px 53px;
  column-gap:7px!important;row-gap:8px;
  align-items:center;padding:8px 12px 9px!important;
  transition:grid-template-rows .34s cubic-bezier(.2,.75,.25,1),
   row-gap .34s ease,padding .34s ease;
 }
 body.fi-site .fi-header .fi-logo{grid-column:1;grid-row:1;min-width:0;max-width:100%;}
 body.fi-site .fi-header .fi-acts{grid-column:2;grid-row:1;margin:0!important;}
 body.fi-site .fi-header .fi-compact-search-button{
  display:grid;grid-column:3;grid-row:1;width:0;min-width:0;
  height:44px;padding:0;opacity:0;visibility:hidden;
  pointer-events:none;overflow:hidden;border:0;background:transparent;
  transition:width .3s ease,opacity .22s ease;
 }
 body.fi-site .fi-header .fi-mobile-menu-button{grid-column:4;grid-row:1;margin:0;min-width:43px;min-height:44px;}
 body.fi-site .fi-header .fi-srch{
  grid-column:1/-1;grid-row:2;min-width:0;width:100%;
  align-self:stretch;min-height:0;max-height:53px;
  margin:0!important;opacity:1;visibility:visible;
  transition:opacity .2s ease,max-height .34s ease,margin .34s ease;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-hr{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto auto auto;
  grid-template-rows:48px 0px;row-gap:0!important;
  height:auto;min-height:0;padding:5px 10px 5px!important;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-compact-search-button{
  display:grid;grid-column:3;grid-row:1;width:43px;min-width:43px;
  height:44px;opacity:1;visibility:visible;pointer-events:auto;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-srch{
  display:flex!important;grid-column:1/-1;grid-row:2;
  max-height:0!important;min-height:0!important;height:0;
  padding:0!important;margin:0!important;border:0!important;
  opacity:0;visibility:hidden;pointer-events:none;
  overflow:hidden;
 }
 body.fi-site .fi-header.fi-scroll-compact.fi-search-open .fi-srch{
  display:flex!important;grid-column:auto;grid-row:auto;
  max-height:none!important;height:auto;min-height:53px!important;
  padding:3px!important;margin:0!important;overflow:visible;
  opacity:1;visibility:visible;pointer-events:auto;
 }
}
@media(max-width:360px){
 body.fi-site .fi-header .fi-hr{column-gap:4px!important;padding-inline:8px!important;}
 body.fi-site .fi-header.fi-scroll-compact .fi-hr{column-gap:3px!important;padding-inline:7px!important;}
 body.fi-site .fi-header.fi-scroll-compact .fi-compact-search-button,
 body.fi-site .fi-header.fi-scroll-compact .fi-mobile-menu-button{
  width:40px;min-width:40px;flex-basis:40px;
 }
 body.fi-site .fi-header.fi-scroll-compact .fi-logo{font-size:clamp(14px,4.2vw,17px);gap:5px;}
 body.fi-site .fi-header.fi-scroll-compact .fi-custom-logo{max-width:100%;}
}
@media(prefers-reduced-motion:reduce){
 body.fi-site .fi-header,
 body.fi-site .fi-header .fi-hr,
 body.fi-site .fi-header .fi-logo,
 body.fi-site .fi-header .fi-custom-logo,
 body.fi-site .fi-header .fi-srch,
 body.fi-site .fi-header .fi-compact-search-button{transition:none!important;}
}
