/* Self-hosted fonts (Fontsource 5.3.0, SIL OFL 1.1 - see fonts/OFL-*.txt) */
@font-face{font-family:'Barlow Semi Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/barlow-semi-condensed-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Barlow Semi Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/barlow-semi-condensed-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow Semi Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/barlow-semi-condensed-latin-ext-700-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Barlow Semi Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/barlow-semi-condensed-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/barlow-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/barlow-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/barlow-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/barlow-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/barlow-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/barlow-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/barlow-latin-ext-700-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/barlow-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Merriweather';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/merriweather-latin-ext-700-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Merriweather';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/merriweather-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Size-matched fallbacks shown until (or if) the web fonts load; size-adjust measured against Arial/Liberation Sans and Times New Roman/Liberation Serif */
@font-face{font-family:'JJ Condensed Fallback';src:local('Arial'),local('ArialMT'),local('Liberation Sans'),local('Helvetica');size-adjust:80%;ascent-override:125%;descent-override:25%;line-gap-override:0%}
@font-face{font-family:'JJ Condensed Fallback';font-weight:700;src:local('Arial Bold'),local('Arial-BoldMT'),local('Liberation Sans Bold'),local('Helvetica Bold');size-adjust:80%;ascent-override:125%;descent-override:25%;line-gap-override:0%}
@font-face{font-family:'JJ Sans Fallback';src:local('Arial'),local('ArialMT'),local('Liberation Sans'),local('Helvetica');size-adjust:93%;ascent-override:107.5%;descent-override:21.5%;line-gap-override:0%}
@font-face{font-family:'JJ Sans Fallback';font-weight:700;src:local('Arial Bold'),local('Arial-BoldMT'),local('Liberation Sans Bold'),local('Helvetica Bold');size-adjust:93%;ascent-override:107.5%;descent-override:21.5%;line-gap-override:0%}
@font-face{font-family:'JJ Serif Fallback';font-weight:700;src:local('Times New Roman Bold'),local('TimesNewRomanPS-BoldMT'),local('Liberation Serif Bold');size-adjust:114%;ascent-override:86%;descent-override:23.7%;line-gap-override:0%}
body{margin:0;background:#FFFFFF}
a{color:#1F6B64}a:hover{color:#174F49}
a:focus-visible,button:focus-visible{outline:3px solid #1F6B64;outline-offset:3px}
.jj-gold{background:linear-gradient(90deg,#876F23 0%,#F0D43A 14%,#B8941E 28%,#876F23 40%,#F0D43A 55%,#B8941E 68%,#876F23 80%,#F0D43A 92%,#B8941E 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.jj-ring{border:solid transparent;background:linear-gradient(#FFFFFF,#FFFFFF) padding-box,linear-gradient(135deg,#F0D43A,#B8941E 35%,#876F23 60%,#F0D43A 80%,#B8941E) border-box}
.jj-btn-primary:hover{background:#174F49 !important;color:#FFFFFF !important}
.jj-btn-outline:hover{background:#22302B !important;color:#FFFFFF !important}
.jj-nav a{text-decoration:none}
.jj-nav a:hover{text-decoration:underline}
.jj-foot a{color:#F1F2E8;padding:10px 0}.jj-foot a:hover{color:#FFFFFF}

/* Shared components (home + category pages) */
.jj-btn{display:inline-flex;align-items:center;min-height:48px;padding:0 24px;border-radius:999px;font-weight:700;font-size:16px;text-decoration:none;box-sizing:border-box}
.jj-btn-primary.jj-btn{background:#1F6B64;color:#FFFFFF}
.jj-btn-outline.jj-btn{border:2px solid #22302B;color:#22302B}
.jj-cat-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media (min-width:600px){.jj-cat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:960px){.jj-cat-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
.jj-cat-grid>li{display:flex}
.jj-tile{position:relative;flex:1 1 auto;display:flex;flex-direction:column;border-radius:14px;overflow:hidden;border:1px solid #E4E6D8;background:#FFFFFF;color:#22302B;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}
.jj-tile:hover{color:#22302B;transform:translateY(-3px);box-shadow:0 10px 22px rgba(34,48,43,.16)}
.jj-tile:focus-visible{outline:3px solid #1F6B64;outline-offset:3px}
.jj-tile-art{aspect-ratio:1.15;display:flex;align-items:center;justify-content:center}
.jj-tile-text{padding:12px 12px 14px;display:flex;flex-direction:column;gap:2px;text-align:center}
.jj-tile-p{font-weight:700;font-size:16px;letter-spacing:.04em}
.jj-tile-s{font-size:14px;color:#4A5650}
.jj-badge{position:absolute;top:8px;right:8px;background:#FFFFFF;color:#22302B;font-size:12px;font-weight:700;letter-spacing:.02em;padding:3px 9px;border-radius:999px;line-height:1.4}
.jj-tile[aria-current="page"]{border-color:#22302B}
.jj-pages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media (min-width:900px){.jj-pages{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}}
.jj-page-card{display:flex;flex-direction:column;height:100%;background:#FFFFFF;border:1px solid #E4E6D8;border-radius:14px;overflow:hidden;color:#22302B;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}
.jj-page-card:hover{color:#22302B;transform:translateY(-3px);box-shadow:0 10px 22px rgba(34,48,43,.16)}
.jj-page-card:focus-visible{outline:3px solid #1F6B64;outline-offset:3px}
.jj-page-img{aspect-ratio:2556/3306;background:#FFFFFF;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #EEF0E4}
.jj-page-img img{width:100%;height:100%;object-fit:contain;display:block}
.jj-page-cap{padding:12px 14px 16px;display:flex;flex-direction:column;gap:4px}
.jj-page-t{font-weight:700;font-size:17px;line-height:1.3}
.jj-page-st{font-size:14px;color:#4A5650;overflow-wrap:anywhere}
.jj-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid #D3D6C6;border-radius:999px;color:#22302B;text-decoration:none;font-weight:600;font-size:15px;background:#FFFFFF;box-sizing:border-box}
.jj-chip:hover{border-color:#22302B;color:#22302B}
.jj-dot{width:12px;height:12px;border-radius:50%;flex:none}
.jj-crumb ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 8px;font-size:15px}
.jj-crumb a{display:inline-block;padding:10px 0}
.jj-crumb li[aria-current] {padding:10px 0;color:#4A5650}
.jj-lb{border:0;padding:0;margin:auto;width:min(1000px,calc(100vw - 24px));max-height:calc(100dvh - 24px);background:#FFFFFF;border-radius:14px;color:#22302B;box-sizing:border-box;overflow:hidden}
.jj-lb::backdrop{background:rgba(20,28,25,.82)}
.jj-lb-inner{display:flex;flex-direction:column;max-height:calc(100dvh - 24px);font-family:Barlow,'JJ Sans Fallback','Helvetica Neue',Arial,sans-serif}
.jj-lb-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 8px 8px 16px;border-bottom:1px solid #E4E6D8}
.jj-lb-cap{font-weight:700;font-size:16px;line-height:1.3;min-width:0}
.jj-lb-cap span{display:block;font-weight:400;font-size:14px;color:#4A5650}
.jj-lb-img{flex:1 1 auto;min-height:0;overflow:auto;background:#FFFFFF;display:flex;justify-content:center}
.jj-lb-img img{max-width:100%;height:auto;max-height:calc(100dvh - 160px);object-fit:contain;display:block}
.jj-lb-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-top:1px solid #E4E6D8}
.jj-lb button{min-width:44px;min-height:44px;border:1px solid #22302B;border-radius:999px;background:#FFFFFF;color:#22302B;font:700 15px Barlow,'JJ Sans Fallback',Arial,sans-serif;padding:0 14px;cursor:pointer}
.jj-lb button:hover{background:#22302B;color:#FFFFFF}
.jj-lb .jj-lb-count{font-size:14px;color:#4A5650}
.jj-prod-group{display:flex;flex-direction:column;gap:16px}
.jj-prod-h{margin:0;font-family:'Barlow Semi Condensed','JJ Condensed Fallback','Arial Narrow',sans-serif;font-weight:700;font-size:24px;line-height:1.15;color:#22302B;padding-bottom:8px;border-bottom:1px solid #DDE0CF}
.jj-prod-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (min-width:600px){.jj-prod-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media (min-width:960px){.jj-prod-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}}
.jj-prod-grid>li{display:flex;min-width:0}
.jj-prod-card{flex:1 1 auto;display:flex;flex-direction:column;min-width:0;background:#FFFFFF;border:1px solid #E4E6D8;border-radius:14px;overflow:hidden;color:#22302B;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}
.jj-prod-card:hover{color:#22302B;transform:translateY(-3px);box-shadow:0 10px 22px rgba(34,48,43,.16)}
.jj-prod-card:focus-visible{outline:3px solid #1F6B64;outline-offset:3px}
.jj-prod-img{display:block;aspect-ratio:1;background:#FAFAFA;border-bottom:1px solid #EEF0E4}
.jj-prod-img img{width:100%;height:100%;object-fit:contain;display:block}
.jj-prod-cap{padding:12px 14px 16px;display:flex;flex-direction:column;gap:4px;min-width:0}
.jj-prod-style{font-weight:700;font-size:17px;line-height:1.3;overflow-wrap:break-word}
.jj-prod-size{font-size:15px;line-height:1.4;color:#2F3B36;overflow-wrap:break-word}
.jj-sv{white-space:nowrap}
.jj-prod-note{font-size:14px;line-height:1.4;color:#4A5650;overflow-wrap:break-word}
@media (max-width:420px){.jj-prod-cap{padding:10px 10px 12px}.jj-prod-style{font-size:16px}.jj-prod-size{font-size:14px}.jj-prod-note{font-size:13px}}
.jj-full{border-top:1px solid #DDE0CF;padding-top:8px}
.jj-full>summary{cursor:pointer;display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:700;font-size:17px;color:#1F6B64}
.jj-full>summary:focus-visible{outline:3px solid #1F6B64;outline-offset:3px;border-radius:6px}
.jj-full-body{display:flex;flex-direction:column;gap:16px;padding-top:12px}
.jj-lb-cap .jj-lb-note{font-size:13px}
@media (prefers-reduced-motion:reduce){.jj-tile,.jj-page-card,.jj-prod-card{transition:none}.jj-tile:hover,.jj-page-card:hover,.jj-prod-card:hover{transform:none}}
