/* Shared site shell. Load before route styles and production compatibility adapters. */

/* storefront shell adapter; selector and variant contracts preserved. */

#mfa-storefront .skip-link{position:fixed;top:-100px;left:20px;z-index:9999;padding:12px 20px;background:var(--ink);color:#fff}
#mfa-storefront .skip-link:focus{top:calc(12px + var(--mfa-admin))}
#mfa-storefront .site-header{height:78px;flex-shrink:0;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:36px;padding:0 var(--mfa-shell-gutter)}
#mfa-storefront .site-header::before,#mfa-storefront .site-header::after,#mfa-storefront .site-footer::before,#mfa-storefront .site-footer::after{display:none;content:none}
#mfa-storefront .wordmark{justify-self:start;white-space:nowrap;font-size:27px;font-weight:700;line-height:1;letter-spacing:-1.55px;color:var(--ink)}
#mfa-storefront .wordmark>span:first-child{font-weight:400;letter-spacing:-1.7px}
#mfa-storefront .brand-period{color:var(--mfa-color-accent)}
#mfa-storefront .site-header nav{display:flex;align-items:center;gap:32px}
#mfa-storefront .site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:70px;margin:0 var(--mfa-shell-gutter);padding:20px 0;border-top:1px solid var(--line);font-size:11px;line-height:1.5;color:var(--muted);flex-shrink:0}
#mfa-storefront .site-footer nav{display:flex;align-items:center;flex-wrap:wrap;gap:24px}
#mfa-storefront .mobile-about{display:none}
/* cart shell adapter; selector and variant contracts preserved. */

body.mfa-native-cart-view :is(.site-header, .site-footer) a,
body.mfa-native-checkout-view :is(.site-header, .site-footer) a { text-decoration: none; }
body.mfa-native-cart-view :is(.site-header, .site-footer) a:hover,
body.mfa-native-checkout-view :is(.site-header, .site-footer) a:hover,
#mfa-service-page .header-help:hover,
#mfa-order-received .header-help:hover,
#mfa-order-pay .header-help:hover { text-decoration: underline; }
body.mfa-native-cart-view .skip-link,
body.mfa-native-checkout-view .skip-link {
  position: fixed;
  top: -100px;
  left: 20px;
  z-index: 10000;
  padding: 12px 20px;
  background: var(--ink);
  color: #fff;
}
body.mfa-native-cart-view .skip-link:focus,
body.mfa-native-checkout-view .skip-link:focus { top: calc(12px + var(--mfa-admin)); }
body.mfa-native-cart-view .site-header,
body.mfa-native-checkout-view .site-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  height: 78px;
  margin: 0;
  padding: 0 var(--mfa-shell-gutter);
  background: transparent;
  border: 0;
}
body.mfa-native-cart-view .wordmark,
body.mfa-native-checkout-view .wordmark {
  color: var(--ink);
  font-size: 27px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -1.55px;
  white-space: nowrap;
  text-decoration: none;
}
body.mfa-native-cart-view .wordmark > span:first-child,
body.mfa-native-checkout-view .wordmark > span:first-child { font-weight: 400; letter-spacing: -1.7px; }
body.mfa-native-cart-view .brand-period,
body.mfa-native-checkout-view .brand-period,
#mfa-order-pay .brand-period { color: var(--mfa-color-accent); }
body.mfa-native-cart-view .header-help,
body.mfa-native-checkout-view .header-help { display: inline-flex; align-items: center; min-height: 44px; font-size: 13px; }
body.mfa-native-cart-view .site-footer,
body.mfa-native-checkout-view .site-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 70px;
  margin: 0 var(--mfa-shell-gutter);
  padding: 20px 0;
  border-top: 1px solid var(--line);
  background: transparent;
  color: var(--muted);
  font-size: 11px;
}
body.mfa-native-cart-view .site-footer > *,
body.mfa-native-checkout-view .site-footer > *,
#mfa-order-received .site-footer > *,
#mfa-order-pay .site-footer > * { margin: 0; }
body.mfa-native-cart-view .site-footer nav,
body.mfa-native-checkout-view .site-footer nav { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; }
body.mfa-native-cart-view .mobile-about,
body.mfa-native-checkout-view .mobile-about { display: none; }
/* checkout shell adapter; selector and variant contracts preserved. */

/* production-service shell adapter; selector and variant contracts preserved. */

#mfa-service-page .site-header {
    min-height: 78px;
    padding: 20px var(--mfa-shell-gutter);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    border: 0;
    background: var(--paper);
}
#mfa-service-page .wordmark,
#mfa-order-received .wordmark,
#mfa-order-pay .wordmark { font-size: 27px; font-weight: 700; line-height: 1; letter-spacing: -1.4px; text-decoration: none; white-space: nowrap; }
#mfa-service-page .wordmark span,
#mfa-order-received .wordmark span,
#mfa-order-pay .wordmark > span:first-child { font-weight: 400; }
#mfa-service-page .wordmark .brand-period,
#mfa-order-received .wordmark .brand-period { font-weight: 700; }
#mfa-service-page .header-help,
#mfa-order-received .header-help,
#mfa-order-pay .header-help { font-size: 12px; text-decoration: none; }
#mfa-service-page .site-footer { border-top: 1px solid var(--line); margin: 0; padding: 26px var(--mfa-shell-gutter); display: flex; justify-content: space-between; gap: 20px 32px; font-size: 11px; color: var(--muted); background: var(--paper); }
#mfa-service-page .site-footer nav,
#mfa-order-received .site-footer nav,
#mfa-order-pay .site-footer nav { display: flex; flex-wrap: wrap; gap: 12px 22px; }
#mfa-service-page .site-footer a,
#mfa-order-received .site-footer a,
#mfa-order-pay .site-footer a { color: var(--muted); text-decoration: none; }
#mfa-service-page .site-footer a:hover, #mfa-service-page .site-footer a[aria-current="page"],
#mfa-order-received .site-footer a:hover,
#mfa-order-pay .site-footer a:hover { color: var(--ink); text-decoration: underline; }
#mfa-service-page .skip-link { position: absolute; top: -120px; left: 16px; z-index: 99999; padding: 12px 16px; background: var(--ink); color: white; }
#mfa-service-page .skip-link:focus,
#mfa-order-received .skip-link:focus,
#mfa-order-pay .skip-link:focus { top: 40px; }
/* order-received shell adapter; selector and variant contracts preserved. */

#mfa-order-received > :is(.site-header, .site-footer) {
    width: 100%;
    max-width: none;
    margin: 0;
    background: var(--paper);
}
#mfa-order-received > :is(.site-header, .site-footer)::before,
#mfa-order-received > :is(.site-header, .site-footer)::after,
#mfa-order-pay > :is(.site-header, .site-footer)::before,
#mfa-order-pay > :is(.site-header, .site-footer)::after { content: normal; }
#mfa-order-received .site-header {
    min-height: 78px;
    padding: 20px var(--mfa-shell-gutter);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    border: 0;
}
#mfa-order-received .site-footer,
#mfa-order-pay .site-footer {
    display: flex;
    justify-content: space-between;
    gap: 20px 32px;
    padding: 26px var(--mfa-shell-gutter);
    border-top: 1px solid var(--line);
    color: var(--muted);
    font-size: 11px;
}
#mfa-order-received .skip-link,
#mfa-order-pay .skip-link { position: absolute; top: -120px; left: 16px; z-index: 99999; padding: 12px 16px; background: var(--ink); color: #fff; }
/* order-pay shell adapter; selector and variant contracts preserved. */

#mfa-order-pay > :is(.site-header, .site-footer) { width: 100%; max-width: none; margin: 0; background: transparent; }
#mfa-order-pay .site-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    min-height: 78px;
    padding: 20px var(--mfa-shell-gutter);
    border: 0;
}
@media(max-width:900px){
#mfa-storefront .site-header{gap:25px}
#mfa-storefront .site-header nav{gap:24px}}
@media(max-width:600px){
#mfa-storefront .site-header{height:76px;grid-template-columns:minmax(0,1fr) auto auto;padding:0 22px;gap:23px}
#mfa-storefront .wordmark{font-size:24px;letter-spacing:-1.45px}
#mfa-storefront .wordmark>span:first-child{letter-spacing:-1.5px}
#mfa-storefront .site-header nav{gap:0}
#mfa-storefront .site-footer{min-height:86px;margin:0 22px;padding:17px 0;flex-direction:column-reverse;align-items:center;gap:13px;font-size:10px}
#mfa-storefront .site-footer nav{justify-content:center;gap:12px 18px;font-size:11px}
#mfa-storefront .mobile-about{display:inline}}
@media(max-width:359px){
#mfa-storefront .site-header{padding:0 16px;gap:15px}
#mfa-storefront .wordmark{font-size:22px}
#mfa-storefront .site-footer{margin-inline:18px}
#mfa-storefront .site-footer nav{column-gap:16px}}
@media (max-width: 700px) {
body.mfa-native-cart-view .site-header,
body.mfa-native-checkout-view .site-header { height: 74px; padding-inline: 24px; }
body.mfa-native-cart-view .wordmark,
body.mfa-native-checkout-view .wordmark,
#mfa-service-page .wordmark,
#mfa-order-received .wordmark,
#mfa-order-pay .wordmark { font-size: 24px; }
body.mfa-native-cart-view .header-help,
body.mfa-native-checkout-view .header-help { font-size: 12px; }
body.mfa-native-cart-view .site-footer,
body.mfa-native-checkout-view .site-footer { flex-direction: column-reverse; gap: 16px; margin-inline: 24px; padding-block: 19px; }
body.mfa-native-cart-view .site-footer nav,
body.mfa-native-checkout-view .site-footer nav { justify-content: center; gap: 12px 19px; }
body.mfa-native-cart-view .mobile-about,
body.mfa-native-checkout-view .mobile-about { display: inline; }}
@media (max-width: 359px) {
body.mfa-native-cart-view .site-footer,
body.mfa-native-checkout-view .site-footer { margin-inline: 20px; }}
@media (max-width: 700px) {
#mfa-service-page .site-header,
#mfa-order-received .site-header,
#mfa-order-pay .site-header { min-height: 74px; padding: 20px 24px; }
#mfa-service-page .site-footer { padding: 25px 24px; flex-direction: column-reverse; gap: 24px; }
#mfa-service-page .site-footer nav,
#mfa-order-received .site-footer nav { gap: 12px 20px; }}
@media (max-width: 359px) {
#mfa-service-page .site-header, #mfa-service-page .site-footer,
#mfa-order-received .site-header, #mfa-order-received .site-footer { padding-left: 20px; padding-right: 20px; }}
@media (max-width: 700px) {
#mfa-order-received .site-footer,
#mfa-order-pay .site-footer { flex-direction: column-reverse; gap: 24px; padding: 25px 24px; }}