/* Interactive design preview, progressively enhanced and reduced-motion aware. */
:root{--jw-motion-ink:#166534}
.jw-motion-tools{display:flex;align-items:center;gap:9px;margin:0 auto;padding:8px 0;max-width:1220px}
.jw-motion-toggle{border:1px solid #c6c6c6;border-radius:20px;background:#fff;color:#166534;padding:8px 12px;font:700 12px Inter,Inter,sans-serif;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.jw-motion-toggle:hover{transform:translateY(-2px);background:#f5f5f5}.jw-motion-toggle:focus-visible,.jw-interactive-showcase a:focus-visible,.jw-interactive-showcase button:focus-visible{outline:3px solid #22c55e;outline-offset:3px}
.jw-reveal:not(.catalog-page){opacity:0;transform:translateY(17px);transition:opacity .55s ease,transform .55s ease}.jw-reveal.jw-visible{opacity:1;transform:none}
@keyframes jw-page-enter{from{opacity:.5;transform:translateY(8px)}to{opacity:1;transform:none}}
body.jw-enhanced main{animation:jw-page-enter .42s ease both}
a.button,button,.category-tile,.product-card,.feature-map-item{transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}
a.button:hover,.category-tile:hover,.product-card:hover,.feature-map-item:hover{transform:translateY(-3px);box-shadow:0 9px 24px #17171724}
a.button:active,button:active,.category-tile:active{transform:scale(.98)}
body.jw-enhanced .hero{isolation:isolate;overflow:hidden}body.jw-enhanced .hero:after{content:"";position:absolute;inset:-30%;z-index:-1;pointer-events:none;background:radial-gradient(circle at 72% 40%,#17171733,transparent 35%),radial-gradient(circle at 23% 67%,#17171722,transparent 42%);animation:jw-breathe 14s ease-in-out infinite alternate}@keyframes jw-breathe{to{transform:translate3d(-4%,3%,0) rotate(7deg)}}
.jw-interactive-showcase{width:min(calc(100% - 40px),1220px);margin:16px auto;padding:clamp(24px,4vw,44px);border-radius:8px;background:#f4f9f5;color:#166534;overflow:hidden;position:relative}
.jw-interactive-showcase h2{font-size:clamp(25px,3vw,38px);margin:3px 0 12px}.jw-interactive-showcase p{max-width:700px;line-height:1.55}.jw-interactive-showcase .eyebrow{color:#166534;font-weight:800;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.jw-interactive-showcase-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:24px;align-items:center}.jw-interactive-showcase-grid>*{min-width:0}
.jw-visual-stage{min-height:280px;display:grid;place-items:center;position:relative;overflow:hidden;border-radius:12px;background:radial-gradient(circle at 45% 50%,#17171766,transparent 43%),linear-gradient(135deg,#166534,#166534 60%,#166534)}
.jw-visual-stage:before{content:"";position:absolute;inset:0;opacity:.26;background:repeating-linear-gradient(125deg,transparent 0 12px,#f1f3f2 13px 14px,transparent 15px 27px);animation:jw-drift 15s linear infinite}@keyframes jw-drift{to{transform:translateX(28px)}}
.jw-visual-orb{position:relative;z-index:1;width:min(48vw,190px);height:min(48vw,190px);border-radius:50%;background:transparent;box-shadow:none;transform-style:preserve-3d;animation:jw-orbit 8s ease-in-out infinite;display:grid;place-items:center;color:#fff;font:900 67px Inter,serif;text-shadow:0 2px 7px #171717aa}@keyframes jw-orbit{50%{transform:rotateY(24deg) rotateX(-8deg) translateY(-8px)}}
.jw-visual-orb img{display:block;width:83%;height:83%;object-fit:contain;transform:translateZ(20px);filter:drop-shadow(0 5px 9px #171717a8)}.jw-showcase-controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.jw-showcase-controls button,.jw-showcase-controls a{display:inline-block;border:1px solid #e5e8e6;border-radius:7px;background:#fff;color:#166534;font:700 13px Inter,Inter,sans-serif;padding:10px 14px;text-decoration:none;cursor:pointer}.jw-showcase-controls button:hover,.jw-showcase-controls a:hover{background:#f5f5f5}
.jw-demo-note{font-size:12px;color:#636363}.jw-swipe-strip{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 0}.jw-swipe-strip span{flex:0 0 150px;scroll-snap-align:start;padding:14px;background:#fff;border-radius:7px;border:1px solid #bdbdbd;color:#1a1a1a;font-weight:700;font-size:12px}
html[data-jw-theme="dark"] body{background:#fff;color:#1a1a1a}html[data-jw-theme="dark"] .jw-interactive-showcase{background:#1a1a1a;color:#f5f5f5}html[data-jw-theme="dark"] .jw-interactive-showcase .jw-demo-note{color:#e5e5e5}html[data-jw-theme="dark"] .jw-interactive-showcase .eyebrow{color:#e5e8e6}html[data-jw-theme="dark"] .jw-motion-toggle{background:#1a1a1a;color:#f5f5f5}html[data-jw-theme="dark"] .site-header{filter:brightness(.9)}
@media(max-width:700px){.jw-interactive-showcase{width:calc(100% - 24px)}.jw-interactive-showcase-grid{grid-template-columns:minmax(0,1fr)}.jw-interactive-showcase-grid h2{overflow-wrap:anywhere}.jw-visual-stage{min-height:220px}.jw-motion-tools{padding:8px 12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.jw-reveal{opacity:1;transform:none}}
.jw-shader-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.65}
img[loading="lazy"]{background:#edf4ee}img.jw-loaded{background:transparent}
@view-transition{navigation:auto}
::view-transition-old(root){animation:180ms ease both fade-out}::view-transition-new(root){animation:260ms ease both fade-in}
@keyframes fade-out{to{opacity:0}}@keyframes fade-in{from{opacity:0}}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none!important}}

.jw-interactive-showcase.jw-motion-paused .jw-visual-orb,.jw-interactive-showcase.jw-motion-paused .jw-visual-stage:before{animation-play-state:paused}
/* Desktop-only cursor glint, purely decorative. */
.jw-cursor-glint{position:fixed;left:0;top:0;width:16px;height:16px;border:1px solid #22c55e;border-radius:50%;pointer-events:none;z-index:9999;opacity:0;transform:translate(-50%,-50%);transition:opacity .2s}
@media(pointer:coarse),(max-width:900px),(prefers-reduced-motion:reduce){.jw-cursor-glint{display:none}}

/* Progressive shimmer is only a visual wait cue for images actually loading. */
img[loading="lazy"]:not(.jw-loaded){background:linear-gradient(90deg,#e5e5e5 0,#f5faf6 45%,#e5e5e5 85%);background-size:200% 100%;animation:jw-shimmer 1.5s linear infinite}@keyframes jw-shimmer{to{background-position-x:-200%}}

/* Rich's clean-logo correction: no green panel around the official logo. */
.jw-interactive-showcase .jw-visual-stage{background:transparent;border:0}
.jw-interactive-showcase .jw-visual-stage:before,.jw-interactive-showcase .jw-shader-canvas{display:none}
.jw-interactive-showcase .jw-visual-orb{background:transparent;box-shadow:none}
.jw-interactive-showcase .jw-visual-orb img{filter:none}

.subcategory-placeholder .jw-official-placeholder-logo{display:block;width:36px;height:36px;object-fit:contain;margin:auto}
