/* Premium interaction and usability layer. Kept separate from the layout foundation. */
:root{--ease:cubic-bezier(.22,1,.36,1);--radius-sm:3px;--focus:#bc6c3e;--danger:#c0392b}
::selection{background:#d8b895;color:#1d1713}
:focus-visible{outline:3px solid rgba(188,108,62,.7);outline-offset:4px}
html{scroll-padding-top:130px}
body{overflow-x:hidden}
.icon{display:block;width:22px;height:22px}
.page-progress{position:fixed;z-index:999;top:0;left:0;width:var(--scroll-progress,0px);height:2px;background:linear-gradient(90deg,var(--copper),var(--gold));pointer-events:none}
.site-header{transition:background .3s, box-shadow .3s}
.site-header.is-scrolled{box-shadow:0 8px 35px rgba(36,29,24,.1)}
.brand{min-width:0;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(18px,2vw,24px)}.brand a{position:relative}.brand a:after{content:"";position:absolute;right:0;bottom:-7px;left:0;height:1px;background:currentColor;transform:scaleX(.22);transition:transform .4s var(--ease)}.brand a:hover:after{transform:scaleX(1)}
.primary-nav a{position:relative;padding-block:28px}.primary-nav a:before{content:"";position:absolute;right:0;bottom:20px;left:0;height:1px;background:var(--copper);transform:scaleX(0);transform-origin:right;transition:transform .3s var(--ease)}.primary-nav a:hover:before,.primary-nav .current-menu-item>a:before{transform:scaleX(1);transform-origin:left}
.primary-nav ul{gap:clamp(14px,1.55vw,25px)}.primary-nav a{font-size:13px;white-space:nowrap}
.icon-button{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:50%;transition:background .2s, color .2s, transform .2s}.icon-button:hover{background:var(--cream);color:var(--walnut);transform:translateY(-1px)}
.menu-toggle{display:none}
.header-actions .cart-toggle{display:flex;gap:6px}.header-actions .cart-count{position:absolute;top:2px;right:0;margin:0;border:2px solid var(--paper)}
.announcement__item{animation:announcementIn .6s var(--ease)}
@keyframes announcementIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.hero{position:relative;isolation:isolate;overflow:hidden}.hero:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 78% 40%,rgba(221,181,125,.23),transparent 30%),linear-gradient(120deg,#38251c 0%,#79543b 52%,#a18165 100%)}.hero:after{content:"";position:absolute;z-index:-1;right:-8%;bottom:-35%;width:55vw;aspect-ratio:1;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 90px rgba(255,255,255,.025),0 0 0 180px rgba(255,255,255,.018)}
.hero__content>*{opacity:0;transform:translateY(24px);animation:heroIn .9s var(--ease) forwards}.hero__content>:nth-child(2){animation-delay:.08s}.hero__content>:nth-child(3){animation-delay:.16s}.hero__content>:nth-child(4){animation-delay:.24s}
@keyframes heroIn{to{opacity:1;transform:none}}

/* ──── Buttons ──── */
.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{position:relative;overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s,background .25s!important}
.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(48,31,20,.18)}
.button:active,.woocommerce a.button:active,.woocommerce button.button:active{transform:translateY(0)}

/* Hero button--light: warm glow instead of dark override */
.button--light{transition:transform .3s var(--ease),box-shadow .3s,background .3s!important,color .3s!important}
.button--light:hover{background:rgba(255,253,249,.92)!important;color:var(--walnut)!important;border-color:rgba(255,253,249,.92)!important;transform:translateY(-3px);box-shadow:0 14px 40px rgba(200,166,106,.35),0 0 0 1px rgba(255,255,255,.2)!important}
.button--light:active{transform:translateY(0);box-shadow:0 4px 12px rgba(200,166,106,.2)!important}
.button--light .icon{transition:transform .3s var(--ease)}
.button--light:hover .icon{transform:translateX(4px)}

/* button--outline hover */
.button--outline{transition:transform .25s var(--ease),box-shadow .25s,background .25s!important,border-color .25s!important}
.button--outline:hover{background:var(--ink)!important;border-color:var(--ink)!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 10px 30px rgba(36,29,24,.2)}

/* Text link hover (hero) */
.showcase-hero .text-link{position:relative;transition:color .25s}
.showcase-hero .text-link:hover{color:var(--gold)}
.showcase-hero .text-link:after{content:"";position:absolute;right:0;bottom:0;left:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.showcase-hero .text-link:hover:after{transform:scaleX(1)}

/* ──── Section & nav links ──── */
.section-heading>a,.story__copy>a{display:inline-flex;gap:8px;align-items:center;padding-bottom:3px;transition:gap .25s,color .25s}.section-heading>a:hover,.story__copy>a:hover{gap:14px;color:var(--copper)}

/* ──── Product cards ──── */
.woocommerce ul.products li.product{isolation:isolate}.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:block;overflow:hidden}.woocommerce ul.products li.product a img{will-change:transform;transition:transform .6s var(--ease),filter .5s}.woocommerce ul.products li.product:hover a img{transform:scale(1.035)}

/* ──── Sale / Discount badge — FIXED ──── */
.woocommerce ul.products li.product .onsale{
	position:absolute!important;z-index:4;
	top:12px!important;left:12px!important;right:auto!important;
	min-width:0;min-height:0;margin:0!important;
	padding:8px 14px;
	border-radius:0;
	background:linear-gradient(135deg,var(--danger,#c0392b) 0%,#e74c3c 100%);
	color:#fff;
	font:700 11px/1 var(--sans);
	letter-spacing:.08em;text-transform:uppercase;
	box-shadow:0 4px 14px rgba(192,57,43,.35);
	z-index:3;
	animation:badgePop .4s var(--ease)
}
@keyframes badgePop{from{opacity:0;transform:scale(.8) translateY(-4px)}to{opacity:1;transform:none}}

.woocommerce-loop-product__title{transition:color .2s}.woocommerce li.product:hover .woocommerce-loop-product__title{color:var(--copper)}
.quick-view{opacity:0;transform:translateY(-5px);transition:opacity .25s,transform .25s,background .2s}.woocommerce li.product:hover .quick-view{opacity:1;transform:none}.quick-view:hover{background:var(--ink);color:#fff}
.woocommerce .star-rating{font-size:12px}.woocommerce ul.products li.product .price del{color:#9a918a}.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce div.product .woocommerce-product-gallery__image{overflow:hidden;background:var(--cream)}.woocommerce div.product .summary{align-self:start;position:static}.woocommerce div.product .summary.is-sticky-ready{position:sticky;top:var(--sticky-product-offset,160px)}.woocommerce div.product .product_meta{display:grid;gap:6px;color:var(--muted);font-size:12px}.woocommerce div.product form.cart .variations select{min-height:48px;padding:0 42px 0 14px;border:1px solid var(--line);background:var(--paper)}
.woocommerce div.product .woocommerce-tabs ul.tabs a{font-size:13px;letter-spacing:.05em}.woocommerce div.product .woocommerce-tabs .panel{animation:tabIn .35s var(--ease)}@keyframes tabIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.policy-note{position:relative;border:1px solid #dfd2c3;border-left:3px solid var(--copper);box-shadow:0 8px 25px rgba(66,43,26,.04)}.policy-note span:before{content:"✓";margin-right:8px;color:var(--copper);font-weight:700}
.cart-drawer{box-shadow:-30px 0 80px rgba(20,14,10,.15);transition:transform .5s var(--ease)}.drawer-head{padding-bottom:18px}.drawer-head h2{margin:0}.drawer-head .eyebrow{margin-bottom:2px}.drawer-close{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--cream)}
.drawer-overlay{backdrop-filter:blur(4px);animation:fadeIn .25s}@keyframes fadeIn{from{opacity:0}}
.mini-cart-items li{transition:background .2s}.mini-cart-items li:hover{background:var(--cream)}
.search-panel{transform-origin:top;animation:panelIn .4s var(--ease)}@keyframes panelIn{from{opacity:0;transform:translateY(-12px)}}
.search-result{padding:8px;transition:background .2s}.search-result:hover{background:var(--cream)}
.modal{backdrop-filter:blur(7px);animation:fadeIn .25s}.modal__dialog{animation:modalIn .45s var(--ease)}@keyframes modalIn{from{opacity:0;transform:translateY(24px) scale(.985)}}.modal__close{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--cream)}
.woocommerce form .form-row label{font-size:12px;font-weight:700;letter-spacing:.03em}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{border-radius:var(--radius-sm);transition:border .2s,box-shadow .2s}.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus,.woocommerce form .form-row select:focus{outline:0;border-color:var(--copper);box-shadow:0 0 0 3px rgba(167,101,61,.12)}
.woocommerce-checkout #order_review{border-top:3px solid var(--walnut);box-shadow:0 18px 60px rgba(45,30,20,.08)}.woocommerce-checkout-payment{background:var(--cream)!important}.woocommerce-checkout-payment li{padding:9px 0}.woocommerce #payment #place_order{width:100%;min-height:56px;font-size:16px}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--copper)!important;background:var(--cream);border-radius:var(--radius-sm)}.woocommerce-message:before,.woocommerce-info:before{color:var(--copper)!important}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.is-visible{opacity:1;transform:none}
.skeleton{position:relative;overflow:hidden;background:#eee9e2}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent);transform:translateX(-100%);animation:shimmer 1.35s infinite}@keyframes shimmer{to{transform:translateX(100%)}}

/* ──── Mobile / tablet ──── */
@media(max-width:900px){
	html{scroll-padding-top:108px}
	.header-main-inner{grid-template-columns:44px minmax(0,1fr) auto;gap:12px;height:64px}
	.header-search{display:none}
	.header-nav{border:none}
	.header-nav-inner{height:0;padding:0;overflow:visible}
	.mobile-only{display:block}
	.menu-toggle{display:grid}
	.brand{justify-self:center;max-width:100%;font-size:clamp(16px,5vw,21px);letter-spacing:.07em}
	.header-actions{min-width:88px;gap:8px}
	.header-actions .icon-button{padding:8px}
	.header-actions .header-login{display:none}
	.header-actions .header-sep{display:none}
	.header-actions .cart-text{display:none}
	.primary-nav a{display:block;padding-block:6px}
	.primary-nav a:before{bottom:0}
	.hero:after{width:95vw}
	.woocommerce div.product .summary{position:static}
	.mobile-nav{box-shadow:0 -8px 30px rgba(33,24,18,.08);padding-bottom:env(safe-area-inset-bottom);height:calc(64px + env(safe-area-inset-bottom))}
	.mobile-nav .icon{width:21px;height:21px}
	.mobile-nav a,.mobile-nav button{transition:color .2s}
	.mobile-nav a:hover,.mobile-nav button:hover{color:var(--copper)}
}
@media(max-width:1120px) and (min-width:901px){
	.header-main-inner{grid-template-columns:50px minmax(0,1fr) auto}
	.header-actions{min-width:132px}
}
@media(max-width:540px){
	.hero__content>p:not(.eyebrow){font-size:16px}
	.woocommerce ul.products li.product .price{font-size:13px!important}
	.woocommerce-loop-product__title{font-size:16px!important}
	.woocommerce ul.products li.product .button{min-height:44px!important}
	.policy-note{padding:14px}
	.modal__dialog{margin-top:8vh}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
