.layout-header-placeholder,.layout-footer-placeholder{display:block}
.site-header{position:relative;top:0;z-index:100;background:rgba(253,246,236,.96);border-bottom:1px solid rgba(232,221,192,.65);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);will-change:box-shadow;transform:translateZ(0);transition:background-color 220ms ease,border-color 220ms ease,box-shadow 260ms ease}
.site-header.is-fixed{position:fixed;left:0;right:0;top:0;transform:translateZ(0);box-shadow:0 8px 22px rgba(57,39,19,.07)}
.site-header-spacer{height:0;pointer-events:none;contain:layout style}.site-header-spacer.is-active{height:var(--header-height,80px)}
.header-main{min-height:80px;display:grid;grid-template-columns:205px 1fr minmax(270px,330px) auto;align-items:center;gap:28px}.brand{display:block;line-height:0}.brand img{width:205px;height:48px;object-fit:contain;transition:transform 320ms cubic-bezier(.22,1,.36,1)}
.main-nav{display:flex;align-items:center;gap:24px}.main-nav a{position:relative;color:var(--color-primary);font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--color-accent);transition:right 260ms ease}.main-nav a:hover{color:var(--color-accent)}.main-nav a:hover:after{right:0}
.header-search{height:42px;display:flex;align-items:center;border:1px solid var(--color-border);border-radius:999px;background:#fff;overflow:hidden}.header-search input{flex:1;min-width:0;height:100%;border:0;outline:0;padding:0 14px;color:var(--color-primary);background:transparent;font-size:12px}.header-search button{width:42px;height:100%;border:0;background:transparent;color:var(--color-primary)}.header-search button i{font-size:21px}.header-actions{display:flex;align-items:center;gap:8px}.location{display:flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--color-primary);text-align:left}.location>i{font-size:20px;color:var(--color-accent)}.location span{display:grid;line-height:1.1}.location b{font-size:11px}.location small{font-size:8px;color:#7a8589;margin-top:3px}.header-icon,.mobile-menu-toggle{position:relative;width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--color-primary)}.header-icon i{font-size:21px}.header-count{position:absolute;right:-2px;top:-3px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;border-radius:999px;background:var(--color-accent);color:#fff;font-size:9px;font-weight:700}.mobile-menu-toggle{display:none}.mobile-menu-toggle .menu-close{display:none}.mobile-menu-toggle.is-open .menu-open{display:none}.mobile-menu-toggle.is-open .menu-close{display:block}
.mobile-menu-backdrop{display:none}.mobile-menu{display:none}
.site-footer{margin-top:48px;display:grid;grid-template-columns:1.35fr .9fr .9fr .8fr 1fr 1.45fr;gap:24px;padding:30px 0 12px;border-top:1px solid rgba(232,221,192,.8);color:var(--color-primary)}.footer-brand img{width:185px;height:44px;object-fit:contain}.footer-brand p{margin:9px 0 12px;color:#718087;font-size:12px;line-height:1.35}.footer-col{display:flex;flex-direction:column;gap:6px}.footer-col>b,.subscribe>b{font-size:13px}.footer-col a,.footer-col span{font-size:11px;color:#718087;text-decoration:none;line-height:1.3}.footer-contact>a{color:var(--color-primary);font-weight:600}.footer-contact small{font-size:9px;color:#91877c}.socials{display:flex;gap:7px}.socials button{padding:0;border:0;font:inherit;cursor:pointer}.socials a,.socials button{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--color-primary);text-decoration:none;transition:transform 320ms cubic-bezier(.22,1,.36,1),background-color 260ms ease,color 260ms ease}.socials i{font-size:15px}.subscribe p{margin:6px 0 11px;color:#718087;font-size:12px;line-height:1.35}.subscribe-row{display:flex;gap:8px}.subscribe input{min-width:0;flex:1;height:42px;border:1px solid var(--color-border);border-radius:999px;background:#fff;padding:0 13px;color:var(--color-primary);font-size:11px;outline:0}.subscribe input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(15,76,89,.08)}.subscribe .btn{height:42px;padding:0 18px;font-size:11px;white-space:nowrap}.subscribe>small{display:block;margin-top:6px;color:#a09991;font-size:9px}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:18px;padding-top:14px;border-top:1px solid rgba(232,221,192,.6);color:#9a9188;font-size:10px}.footer-bottom span:last-child{display:flex;gap:18px}.footer-bottom a{color:inherit;text-decoration:none}
@media (hover:hover) and (pointer:fine){.site-footer a:hover{color:var(--color-accent)}.socials a:hover,.socials button:hover{background:var(--color-accent);color:#fff}.header-icon:hover{color:var(--color-accent);background:rgba(255,107,87,.07)}}
@media (max-width:1120px){.header-main{grid-template-columns:155px 1fr minmax(175px,210px) auto;gap:12px}.brand img{width:155px}.main-nav{gap:16px}.main-nav a{font-size:10px}.location{display:none}.site-footer{grid-template-columns:repeat(3,1fr)}}
@media (max-width:900px){.header-main{grid-template-columns:auto 1fr auto;min-height:60px}.main-nav{display:none}.header-search{grid-column:2;grid-row:1;max-width:245px;justify-self:end}.header-actions{grid-column:3;grid-row:1}.mobile-menu-toggle{display:grid}.mobile-menu{position:absolute;left:0;right:0;top:100%;display:block;background:rgba(253,246,236,.98);border-top:1px solid rgba(232,221,192,.75);box-shadow:0 20px 35px rgba(57,39,19,.12);opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity 280ms ease,transform 360ms cubic-bezier(.22,1,.36,1),visibility 0s linear 360ms}.mobile-menu.is-open{opacity:1;visibility:visible;transform:translateY(0);transition:opacity 280ms ease,transform 360ms cubic-bezier(.22,1,.36,1)}.mobile-menu-inner{display:grid;gap:10px;padding:14px 0 16px}.mobile-menu-links{display:grid;gap:3px}.mobile-menu-links a{min-height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;border-radius:11px;color:var(--color-primary);font-size:13px;font-weight:600;text-decoration:none}.mobile-menu-tools{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding-top:7px;border-top:1px solid rgba(232,221,192,.8)}.mobile-menu-tool{min-height:48px;border:1px solid rgba(232,221,192,.9);border-radius:11px;background:#fff;color:var(--color-primary);display:flex;align-items:center;gap:8px;padding:0 11px;text-align:left}.mobile-menu-tool i{font-size:19px;color:var(--color-accent)}.mobile-menu-tool small{display:block;color:#7a8589;font-size:8px;margin-top:2px}.mobile-menu-backdrop{display:block;position:fixed;inset:0;z-index:80;background:rgba(35,32,24,.16);opacity:0;pointer-events:none;transition:opacity 320ms cubic-bezier(.22,1,.36,1)}.site-header.menu-open .mobile-menu-backdrop{opacity:1;pointer-events:auto}.mobile-menu{z-index:90}.site-header{z-index:100}body.menu-open{overflow:hidden}.site-footer{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.header-main{grid-template-columns:auto 1fr auto;gap:8px}.brand img{width:137px;height:34px}.header-search{grid-column:1/-1;grid-row:2;max-width:none;width:100%;margin-bottom:2px}.header-main{padding:8px 0 9px}.header-actions{gap:3px}.header-icon{width:30px;height:30px}.header-icon i{font-size:19px}.location,.profile-toggle{display:none}.mobile-menu-tools{grid-template-columns:1fr}.mobile-menu-inner{padding-bottom:18px}.site-footer{grid-template-columns:1fr 1fr;gap:22px;margin-top:36px;padding:26px 0 12px}.footer-brand,.subscribe{grid-column:1/-1}.footer-brand p{font-size:12px}.footer-col>b,.subscribe>b{font-size:13px}.footer-col a,.footer-col span{font-size:11px}.footer-contact small,.subscribe>small{font-size:9px}.subscribe p{font-size:11px}.footer-bottom{flex-direction:column;gap:4px;font-size:10px;line-height:1.4}.footer-bottom span:last-child{gap:6px;display:grid;line-height:1.4}.footer-bottom a{line-height:1.4}}
@media (max-width:430px){.brand img{width:124px}.cart-toggle{display:grid}.mobile-menu-toggle{width:34px;height:34px}.site-footer{grid-template-columns:1fr}.footer-brand,.subscribe{grid-column:auto}}

.checkout-button{display:flex;align-items:center;justify-content:center;text-decoration:none}

/* Accessibility refinements: preserve the desktop composition while improving mobile touch targets. */
@media (max-width: 900px) {
  .main-nav a,
  .mobile-menu a,
  .footer-bottom a,
  .site-footer a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
}


/* Accessibility contrast adjustments: preserve the existing visual hierarchy. */
.footer-brand p,
.footer-col a,
.footer-col span,
.subscribe p { color: #58686d; }
.footer-contact small,
.subscribe > small,
.footer-bottom { color: #655d55; }
.location small,
.mobile-menu-tool small { color: #59676b; }
@media (max-width: 640px) {
  .footer-contact small, .subscribe > small { color: #655d55; }
}

/* Header controls keep fixed hit areas; hover never moves the layout or glyph. */
.header-icon,.mobile-menu-toggle,.header-search button,.location{transition:color 220ms ease,background-color 220ms ease,border-color 220ms ease!important;transform:none!important}
.header-icon i,.header-search button i,.location>i{width:1.25em;height:1.25em;display:inline-grid;place-items:center;transform:none!important}
.site-header-spacer{flex:0 0 auto}

/* Floating duplicate header: independent of document flow, so it cannot cause layout jumps. */
.site-header--floating{position:fixed!important;inset:0 0 auto!important;z-index:1000!important;opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(0,-105%,0)!important;box-shadow:0 8px 22px rgba(57,39,19,.07);transition:transform 380ms cubic-bezier(.22,1,.36,1),opacity 260ms ease,visibility 0s linear 380ms!important;will-change:transform,opacity}
.site-header--floating.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translate3d(0,0,0)!important;transition:transform 380ms cubic-bezier(.22,1,.36,1),opacity 260ms ease,visibility 0s!important}
.site-header--floating .site-header-spacer{display:none!important}
@media(prefers-reduced-motion:reduce){.site-header--floating,.site-header--floating.is-visible{transition:none!important}}
