*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);font-size:13px;line-height:1.5;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}
body.is-locked{overflow:hidden}
img,video,svg{max-width:100%;display:block}
img{height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,p{margin:0}
ul{list-style:none;margin:0;padding:0}
details>summary{list-style:none;cursor:pointer}
details>summary::-webkit-details-marker{display:none}
.icon{width:20px;height:20px;flex-shrink:0}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link:focus{position:fixed!important;top:8px;left:8px;width:auto;height:auto;clip:auto;z-index:999;background:#fff;padding:8px 12px}
.muted{color:var(--color-muted)}
.page-width{max-width:var(--page-width);margin:0 auto;padding:0 24px}
.page-width--narrow{max-width:860px}
.placeholder{background:var(--color-soft);fill:#c9c9c9;width:100%;height:100%}
.rte p+p{margin-top:.8em}
.rte a{text-decoration:underline}
.rte table{width:100%;border-collapse:collapse}
.rte td,.rte th{border:1px solid var(--color-border);padding:6px 8px;text-align:center}
.main{min-height:50vh}
@media (max-width:749px){.page-width{padding:0 12px}.hide-mobile{display:none!important}}
@media (min-width:750px){.hide-desktop{display:none!important}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 28px;background:var(--color-primary);color:#fff;border:1px solid var(--color-primary);border-radius:var(--radius);font-weight:700;font-size:13px;letter-spacing:.02em;transition:opacity .2s}
.btn:hover{opacity:.85}
.btn:disabled{opacity:.4;cursor:not-allowed}
.btn--outline{background:transparent;color:var(--color-primary)}
.btn--block{width:100%}
.btn--lg{min-height:52px;font-size:14px}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:36px;height:36px;position:relative}
.link-cta{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;padding-bottom:3px;border-bottom:1px solid currentColor}
.link-cta--dark{color:var(--color-text)}
.section-title{font-size:20px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.section-text{color:var(--color-muted);margin-top:4px}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}
.section-head--center{flex-direction:column;align-items:center;text-align:center}
.page-title{font-size:22px;font-weight:700;margin:24px 0 16px}
.announcement{background:var(--ann-bg);color:var(--ann-fg);font-size:11px;font-weight:600;letter-spacing:.06em;text-align:center;overflow:hidden}
.announcement__track{position:relative;height:34px}
.announcement__item{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 12px;opacity:0;transform:translateY(100%);transition:all .5s}
.announcement__item.is-active{opacity:1;transform:none}
.section-header{position:sticky;top:0;z-index:50}
.header{background:#fff;border-bottom:1px solid transparent;transition:background .3s,color .3s,border-color .3s}
.header.is-scrolled{border-color:var(--color-border)}
.header__inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:var(--header-height);padding:0 24px;max-width:1920px;margin:0 auto}
.header__left,.header__right{display:flex;align-items:center;gap:8px}
.header__right{justify-content:flex-end;gap:14px}
.header__inline-nav{display:flex;gap:22px;margin-left:16px;font-weight:600;font-size:12px;letter-spacing:.03em;text-transform:uppercase}
.header__logo{display:flex;align-items:center;justify-content:center}
.header__logo img{max-height:44px;object-fit:contain}
.logo--light{display:none}
.logo-text{font-size:26px;font-weight:700;letter-spacing:.25em;text-transform:uppercase}
.header-search{display:flex;align-items:center;border:1px solid var(--color-border);border-radius:30px;background:#fff;overflow:hidden;height:38px;box-shadow:0 2px 6px rgba(0,0,0,.06)}
.header-search input{border:0;outline:0;background:transparent;padding:0 14px;width:180px;font-size:12px;height:100%}
.header-search button{height:100%;width:44px;display:flex;align-items:center;justify-content:center;border-left:1px solid var(--color-border)}
.header-search .icon{width:18px;height:18px}
.header__search-mobile{display:none}
.header__label{font-size:12px;font-weight:500}
.cart-count{position:absolute;top:0;left:14px;min-width:16px;height:16px;border-radius:8px;background:var(--color-primary);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px}
.header--transparent:not(.is-scrolled){background:transparent;color:#fff}
.template-index .section-header:has(.header--transparent){position:fixed;left:0;right:0;top:var(--ann-offset,0px)}
.header--transparent:not(.is-scrolled) .logo--light{display:block}
.header--transparent:not(.is-scrolled).has-light-logo .logo--dark{display:none}
.header--transparent:not(.is-scrolled) .header-search{background:rgba(255,255,255,.95);color:var(--color-text)}
.header--transparent:not(.is-scrolled) .cart-count{background:#fff;color:#000}
@media (max-width:989px){.header__inner{padding:0 12px}.header-search,.header__label{display:none}.header__search-mobile{display:inline-flex}.header__right{gap:4px}.header__inline-nav{display:none}.header__logo img{max-height:34px}.logo-text{font-size:20px}}
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);opacity:0;visibility:hidden;transition:.3s;z-index:90}
.overlay.is-visible{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;bottom:0;width:min(420px,92vw);background:#fff;z-index:100;display:flex;flex-direction:column;transition:transform .35s ease;visibility:hidden}
.drawer--left{left:0;transform:translateX(-100%)}
.drawer--right{right:0;transform:translateX(100%)}
.drawer.is-open{transform:none;visibility:visible}
.drawer__head{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:64px;border-bottom:1px solid var(--color-border);flex-shrink:0}
.drawer__title{font-weight:700;font-size:15px;text-transform:uppercase;letter-spacing:.05em}
.drawer__body{flex:1;overflow-y:auto;padding:16px 20px}
.drawer__foot{padding:16px 20px;border-top:1px solid var(--color-border);display:grid;gap:10px;flex-shrink:0}
.drawer__foot--row{grid-template-columns:1fr 1fr}
.menu-drawer__banner{display:block;margin-bottom:12px;border-radius:var(--radius);overflow:hidden}
.menu-list__item{border-bottom:1px solid #f0f0f0}
.menu-list a,.menu-list summary{display:flex;align-items:center;justify-content:space-between;padding:13px 0;font-weight:600;font-size:13px}
.menu-list details[open]>summary .icon{transform:rotate(180deg)}
.menu-list .icon{width:16px;height:16px;transition:transform .2s}
.menu-list--sub{padding:0 0 10px 14px}
.menu-list--sub a,.menu-list--sub summary{padding:8px 0;font-weight:500;color:#444}
.menu-list__all{text-decoration:underline}
.menu-help{margin-top:24px;padding:16px;background:var(--color-soft);border-radius:var(--radius)}
.menu-help__title{font-weight:700;margin-bottom:8px}
.menu-help li a{display:block;padding:6px 0;color:#444}
.ship-bar{padding:12px 20px;background:var(--color-soft);font-size:12px;flex-shrink:0}
.ship-bar__track{height:4px;background:#ddd;border-radius:2px;margin-top:6px;overflow:hidden}
.ship-bar__track span{display:block;height:100%;background:var(--color-primary);width:0;transition:width .4s}
.cart-item{display:grid;grid-template-columns:84px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #f0f0f0}
.cart-item__img{background:var(--color-soft);border-radius:var(--radius);overflow:hidden;aspect-ratio:2/3}
.cart-item__img img{width:100%;height:100%;object-fit:cover}
.cart-item__title{font-weight:600;font-size:12px;line-height:1.4}
.cart-item__variant{color:var(--color-muted);font-size:11px;margin-top:2px}
.cart-item__row{display:flex;align-items:center;justify-content:space-between;margin-top:10px}
.cart-item__price s{color:var(--color-muted);font-size:11px;margin-right:6px}
.cart-item__price strong{font-size:13px}
.cart-item__remove{font-size:11px;color:var(--color-muted);text-decoration:underline;margin-top:6px}
.cart-total{display:flex;justify-content:space-between;font-size:15px}
.cart-note{font-size:11px;color:var(--color-muted)}
.qty{display:inline-flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius);height:34px}
.qty button,.qty a{width:32px;height:100%;display:flex;align-items:center;justify-content:center}
.qty .icon{width:14px;height:14px}
.qty input,.qty span{width:34px;text-align:center;border:0;outline:0;font-weight:600;-moz-appearance:textfield}
.qty input::-webkit-inner-spin-button{-webkit-appearance:none}
.cart-empty{text-align:center;padding:40px 0;color:var(--color-muted)}
.hero{position:relative;overflow:hidden;color:var(--hero-fg);background:#111}
.hero--full{height:100vh;height:100svh;min-height:520px}
.hero--large{height:85vh;min-height:460px}
.hero--medium{height:60vh;min-height:380px}
.hero--boxed{border-radius:var(--radius)}
.hero__media{position:absolute;inset:0}
.hero--auto .hero__media{position:relative}
.hero--auto{height:auto}
.hero__media::after{content:"";position:absolute;inset:0;background:#000;opacity:var(--overlay);pointer-events:none}
.hero__video,.hero__img,.hero__media video{width:100%;height:100%;object-fit:cover}
.hero__link{position:absolute;inset:0;z-index:3}
.hero__content{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;gap:12px}
.hero--align-bottom .hero__content{justify-content:flex-end;padding-bottom:64px}
.hero--align-left .hero__content{justify-content:flex-end;align-items:flex-start;text-align:left;padding:0 48px 64px}
.hero__sub{font-size:14px;font-weight:600;letter-spacing:.2em}
.hero__title{font-size:clamp(28px,5vw,64px);font-weight:700;letter-spacing:.04em;line-height:1.05;text-transform:uppercase}
.hero__text{max-width:520px;font-size:14px}
.hero .link-cta{font-size:12px;margin-top:8px}
.hero__toggle{position:absolute;right:20px;bottom:20px;z-index:4;width:36px;height:36px;border-radius:50%;background:rgba(0,0,0,.4);color:#fff;display:flex;align-items:center;justify-content:center}
.hero__toggle .icon{width:14px;height:14px}
.tiles--boxed{background:var(--tiles-bg);padding:24px 0}
.tiles .section-title{text-align:center;margin-bottom:16px}
.tiles__grid{display:grid;grid-template-columns:repeat(var(--tile-cols),1fr);gap:8px;padding:0 8px}
.tiles--boxed .tiles__grid{gap:0;padding:0 24px}
.tile{position:relative;display:block;overflow:hidden;aspect-ratio:var(--tile-ratio);background:#ddd}
.tile__img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s ease}
.tile:hover .tile__img{transform:scale(1.04)}
.tile__content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:20px;background:linear-gradient(transparent 50%,rgba(0,0,0,.15))}
.tile__content--bottom{justify-content:flex-end;padding-bottom:40px}
.tile__title{font-size:clamp(16px,2vw,28px);font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.tile__sub{font-size:11px;letter-spacing:.12em}
@media (max-width:749px){.tiles__grid{grid-template-columns:1fr 1fr}.tiles__grid>.tile:first-child:nth-last-child(odd){grid-column:1/-1}.tiles--boxed .tiles__grid{padding:0 12px}}
.slider{position:relative}
.slider__track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--per-view) - 1) * 12px) / var(--per-view));gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth}
.slider__track::-webkit-scrollbar{display:none}
.slider__track>*{scroll-snap-align:start}
.slider__btn{position:absolute;top:40%;z-index:5;width:40px;height:40px;border-radius:50%;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.12);display:flex;align-items:center;justify-content:center;transition:opacity .2s}
.slider__btn--prev{left:-12px}
.slider__btn--next{right:-12px}
.slider__btn[disabled]{opacity:0;pointer-events:none}
@media (max-width:989px){.slider__track{grid-auto-columns:calc((100% - 12px) / 2.2)}.slider__btn{display:none}.cat-slider__track{grid-auto-columns:calc((100% - 24px) / 3.4)}}
.cat-slider .section-title{text-align:center;margin-bottom:16px}
.cat-card{display:flex;flex-direction:column;gap:8px;text-align:center}
.cat-card__media{display:block;aspect-ratio:3/4;overflow:hidden;border-radius:var(--radius);background:var(--color-soft)}
.cat-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.cat-card:hover img{transform:scale(1.05)}
.cat-card__title{font-weight:600;font-size:12px}
.collection-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin-bottom:48px}