﻿/* Accessible contrast and keyboard navigation without changing the site palette. */
.skip-link { position:fixed; top:8px; left:16px; z-index:100000; padding:12px 20px; background:#111; color:#fff; transform:translateY(-160%); border-radius:6px; }
.skip-link:focus { transform:translateY(0); }
:where(a,button,input,select,textarea,summary):focus-visible { outline:3px solid #704718; outline-offset:4px; }
main:focus { outline:none; }
.main-product-cart-btn,.main-product-cart-btn:hover,.products-more>a,.products-more>a:hover { background:#825b2c!important; color:#fff!important; }
.journal-grid .journal-card strong { color:#805b26; }
.home-faq { background:#f7f3ed; }
.home-faq .container { max-width:1100px; }
.home-faq h2 { margin-top:0; }
.home-faq details { padding:18px 0; border-bottom:1px solid #d8cfbf; }
.home-faq summary { cursor:pointer; font-weight:700; min-height:28px; }
.home-faq details p { line-height:1.8; max-width:850px; }
.home-faq p a { color:#704718; text-decoration:underline; text-underline-offset:3px; }
@media(min-width:1021px) {
 .sg-has-mega:focus-within>.sg-legacy-mega { opacity:1!important; visibility:visible!important; pointer-events:auto!important; transform:translateX(-50%) translateY(0)!important; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto!important; }
 .hero::before { animation:none!important; transform:none!important; will-change:auto; }
 .category-card,.journal-card img { transition:none!important; }
}
