*, *::before, *::after { box-sizing: border-box; }
body { color: var(--jdre-ink); font-family: var(--jdre-font-sans); font-size: var(--jdre-text-base); line-height: 1.65; }
h1, h2, h3, h4 { font-family: var(--jdre-font-serif); font-weight: 600; line-height: 1.08; letter-spacing: -.025em; text-wrap: balance; }
img { max-width: 100%; height: auto; }
:focus-visible { outline: 3px solid var(--jdre-gold-500); outline-offset: 3px; }
[id] { scroll-margin-top: 7rem; }
.jdre-p-search input:focus-visible, .jdre-p-search select:focus-visible, .jdre-buy-filter input:focus-visible, .jdre-buy-filter select:focus-visible { border-radius: .2rem; outline: 3px solid var(--jdre-gold-500) !important; outline-offset: 2px; }
::selection { color: var(--jdre-white); background: var(--jdre-green-600); }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; } }
