.announcement{min-height:32px;padding:8px 5vw;background:var(--plum);color:#fff;text-align:center;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.site-header{position:sticky;top:0;z-index:20;min-height:78px;padding:0 5vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid rgba(66,21,43,.14);background:color-mix(in srgb,var(--cream) 88%,transparent);backdrop-filter:blur(18px)}
.main-nav{display:flex;align-items:center;gap:26px;font-weight:800;font-size:12px;text-transform:uppercase}.main-nav a{position:relative;padding:8px 0}.main-nav a::after{position:absolute;right:0;bottom:2px;left:0;height:2px;background:var(--plum);content:"";transform:scaleX(0);transform-origin:right;transition:transform 180ms cubic-bezier(.23,1,.32,1)}.main-nav a[aria-current=page]::after{transform:scaleX(1)}
.header-actions{display:flex;justify-content:flex-end;gap:10px}.icon-button{position:relative;display:grid;width:42px;height:42px;padding:0;place-items:center;border:1px solid rgba(66,21,43,.14);border-radius:50%;background:#fffdf8;color:var(--plum);cursor:pointer;transition:transform 150ms cubic-bezier(.23,1,.32,1),background-color 180ms ease}.nav-icon{width:22px;height:22px}.icon-button:active{transform:scale(.97)}.cart-count{position:absolute;top:-4px;right:-4px;display:grid;min-width:19px;height:19px;padding:0 5px;place-items:center;border:2px solid var(--cream);border-radius:999px;background:var(--pink);font-size:9px;font-weight:900}.cart-count.is-empty{display:none}
.site-footer{background:var(--plum);color:#fff;padding:64px 6vw;display:grid;grid-template-columns:1.4fr .7fr .9fr;gap:48px}.site-footer p{max-width:430px;line-height:1.6;color:rgba(255,255,255,.72)}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:13px}.footer-label{margin-bottom:6px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.note{font-size:12px;opacity:.75}.footer-signup-link{padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
@media(hover:hover) and (pointer:fine){.main-nav a:hover::after{transform:scaleX(1);transform-origin:left}.icon-button:hover{background:var(--yellow)}}
