/* Fabrexa corporate visual system — 2026-10-10 */
:root{--fx-navy:#101b35;--fx-navy-2:#1b2b49;--fx-navy-3:#263b61;--fx-orange:#f36b32;--fx-orange-dark:#dc5721;--fx-cream:#f7f5f2;--fx-surface:#fff;--fx-muted:#6f7b91;--fx-line:#dce3ed;--fx-shadow:0 18px 50px rgba(16,27,53,.10);--bs-primary:#f36b32;--bs-primary-rgb:243,107,50}
html{scroll-behavior:smooth}body{color:var(--fx-navy);background-color:var(--fx-cream)}a{transition:color .22s ease,background-color .22s ease,border-color .22s ease,transform .22s ease}::selection{color:#fff;background:var(--fx-orange)}
.btn-primary,button.btn-primary,a.btn-primary{color:#fff!important;background:linear-gradient(135deg,var(--fx-orange),#ff7d42)!important;border-color:var(--fx-orange)!important;box-shadow:0 10px 24px rgba(243,107,50,.22)}
.btn-primary:hover,.btn-primary:focus{background:linear-gradient(135deg,var(--fx-orange-dark),var(--fx-orange))!important;border-color:var(--fx-orange-dark)!important;box-shadow:0 14px 30px rgba(243,107,50,.30)!important;transform:translateY(-1px)}
.btn-outline-primary{color:var(--fx-navy)!important;border-color:rgba(16,27,53,.28)!important}.btn-outline-primary:hover,.btn-outline-primary:focus{color:#fff!important;background:var(--fx-navy)!important;border-color:var(--fx-navy)!important}.text-primary{color:var(--fx-orange)!important}.bg-primary{background-color:var(--fx-navy)!important}.border-primary{border-color:var(--fx-orange)!important}
.form-control:focus,.form-select:focus{border-color:rgba(243,107,50,.72)!important;box-shadow:0 0 0 .22rem rgba(243,107,50,.14)!important}
.storefront-footer{color:#dfe7f3;background:linear-gradient(145deg,#0d172d 0%,#13213e 55%,#172a4b 100%)!important}.storefront-footer a:not(.btn){color:#dfe7f3}.storefront-footer a:not(.btn):hover{color:#ff986a}
.storefront-footer-accent,.storefront-footer .footer-subscribe{background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.035))!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 18px 45px rgba(4,11,25,.22)}
.storefront-newsletter-icon{color:#fff!important;background:linear-gradient(135deg,var(--fx-orange),#ff8952)!important;border-color:rgba(255,255,255,.18)!important;box-shadow:0 12px 28px rgba(243,107,50,.25)}.storefront-newsletter-kicker{color:#ff9a6d!important}
.footer-subscribe{align-items:center!important;gap:22px!important;overflow:hidden}.footer-subscribe>.row{width:100%;min-width:0;margin:0!important}.footer-subscribe .col{min-width:0}.footer-subscribe form{display:block;width:100%;min-width:0;margin:0}
.footer-subscribe .input-group{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:stretch!important;gap:10px!important;width:100%!important;min-width:0!important;flex-wrap:nowrap!important;overflow:visible!important}
.footer-subscribe .input-group>.form-control{position:static!important;z-index:auto!important;width:100%!important;min-width:0!important;height:48px!important;margin:0!important;border-radius:12px!important;border:1px solid rgba(255,255,255,.16)!important;color:#fff!important;background:rgba(255,255,255,.11)!important}
.footer-subscribe .input-group>.form-control::placeholder{color:rgba(255,255,255,.62)}
.footer-subscribe .input-group>.btn{position:static!important;z-index:auto!important;width:auto!important;min-width:138px!important;height:48px!important;margin:0!important;padding:0 22px!important;border-radius:12px!important;white-space:nowrap!important;line-height:1!important}
.footer-subscribe .storefront-newsletter-note{position:static!important;display:flex!important;align-items:center;gap:6px;width:100%;min-height:18px;margin:9px 0 0!important;padding:0!important;clear:both;color:rgba(230,237,247,.72)!important;line-height:1.45!important}
html.fx-motion .fx-reveal{opacity:0;transform:translate3d(0,22px,0);transition:opacity .62s cubic-bezier(.22,1,.36,1),transform .62s cubic-bezier(.22,1,.36,1);transition-delay:var(--fx-delay,0ms);will-change:opacity,transform}html.fx-motion .fx-reveal[data-fx-reveal="left"]{transform:translate3d(-24px,0,0)}html.fx-motion .fx-reveal[data-fx-reveal="right"]{transform:translate3d(24px,0,0)}html.fx-motion .fx-reveal.is-visible{opacity:1;transform:translate3d(0,0,0);will-change:auto}
@media (max-width:991.98px){.footer-subscribe{align-items:flex-start!important}.footer-subscribe>.row{row-gap:18px!important}}
@media (max-width:767.98px){.footer-subscribe{display:grid!important;grid-template-columns:1fr!important;gap:16px!important;padding:20px!important}.footer-subscribe .storefront-newsletter-icon{margin:0!important}.footer-subscribe .input-group{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}.footer-subscribe .input-group>.btn{width:100%!important;min-width:0!important}.footer-subscribe .storefront-newsletter-note{font-size:11px!important;white-space:normal!important;overflow-wrap:anywhere}html.fx-motion .fx-reveal[data-fx-reveal="left"],html.fx-motion .fx-reveal[data-fx-reveal="right"]{transform:translate3d(0,18px,0)}html.fx-motion .fx-reveal.is-visible{transform:translate3d(0,0,0)}}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important}html.fx-motion .fx-reveal,html.fx-motion .fx-reveal[data-fx-reveal]{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}}

@media (max-width:767.98px){.footer-subscribe .input-group{height:auto!important;min-height:0!important}}

.footer-subscribe .input-group{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}

/* Footer trust card: softer geometry and one corporate accent. */
.storefront-footer-accent{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:8px 16px!important;
  padding:16px 18px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.035))!important;
  box-shadow:0 16px 38px rgba(3,10,24,.2)!important;
  overflow:hidden!important;
}
.storefront-footer-accent-icon{
  display:grid!important;
  place-items:center!important;
  width:50px!important;
  height:50px!important;
  color:#fff!important;
  background:linear-gradient(135deg,var(--fx-orange),#ff8952)!important;
  border:1px solid rgba(255,255,255,.2)!important;
  border-radius:15px!important;
  box-shadow:0 10px 24px rgba(243,107,50,.22)!important;
}
.storefront-footer-accent>span:nth-child(2){display:grid;gap:3px;min-width:0}
.storefront-footer-accent strong{color:#fff!important;font-weight:700;letter-spacing:-.01em}
.storefront-footer-accent small{color:rgba(223,231,243,.72)!important;line-height:1.45}
.storefront-footer-accent>a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  min-height:44px!important;
  padding:11px 17px!important;
  color:#fff!important;
  background:linear-gradient(135deg,var(--fx-orange),#ff7d42)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:13px!important;
  box-shadow:0 10px 24px rgba(243,107,50,.2)!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.storefront-footer-accent>a:hover{background:linear-gradient(135deg,var(--fx-orange-dark),var(--fx-orange))!important;transform:translateY(-1px)}
.storefront-footer h3::after{background:var(--fx-orange)!important}
.storefront-footer .fa-envelope,.storefront-footer .fa-lock{color:var(--fx-orange)!important}
@media (max-width:767.98px){
  .storefront-footer-accent{grid-template-columns:48px minmax(0,1fr)!important;padding:15px!important;border-radius:18px!important;gap:9px 13px!important}
  .storefront-footer-accent-icon{width:46px!important;height:46px!important;border-radius:14px!important}
  .storefront-footer-accent>a{grid-column:1/-1;width:100%!important;margin-top:3px!important}
}


/* Fabrexa desktop utility bar: exact 55px rhythm */
@media (min-width: 992px) {
  :root {
    --fx-utility-height:55px;
  }

  .fxh-utility {
    height: var(--fx-utility-height) !important;
    min-height: var(--fx-utility-height) !important;
    box-sizing: border-box !important;
  }

  .fxh-utility__inner {
    height: calc(var(--fx-utility-height) - 1px) !important;
    min-height: calc(var(--fx-utility-height) - 1px) !important;
    align-items: center !important;
  }

  .fxh-utility__links,
  .fxh-utility__trust,
  .fxh-utility__actions {
    align-self: center;
  }
}
