/* Four-category storefront motion. The base layout remains usable without JavaScript. */
.hero-shell{position:relative}
.hero-slides{display:grid;grid-template-areas:"slide";min-height:650px}
.hero-slide{grid-area:slide;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:55px;padding:58px 0 42px;min-width:0;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(24px);transition:opacity .65s ease,transform .65s ease,visibility .65s}
.hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;transform:none;z-index:1}
.hero-slide .hero-copy h1{font-size:clamp(52px,5.5vw,84px);white-space:normal;max-width:620px}
.hero-slide .hero-visual{min-width:0;min-height:500px}
.hero-slide .visual-frame{width:min(100%,570px);min-height:440px;overflow:visible;isolation:isolate}
.hero-slide .visual-frame img{width:112%;max-width:none;max-height:410px;object-fit:contain;z-index:1;margin-left:-6%;filter:drop-shadow(0 20px 18px rgba(10,40,45,.18));animation:float-product 5.5s ease-in-out infinite}
.visual-orbit{position:absolute;inset:8% -7%;border:1px solid rgba(16,45,55,.18);border-radius:50%;transform:rotate(-18deg);animation:orbit-sway 9s ease-in-out infinite alternate}
.hero-slide-tricycle .visual-frame{background:#dce7e1}
.hero-slide-laptops .visual-frame{background:#dce3e8}
.hero-slide-apparel .visual-frame{background:#eadbd0}
.hero-slide-tents .visual-frame{background:#e4decf}
.hero-slide-apparel .visual-frame img{width:100%;margin-left:0}
.hero-slide-tents .visual-frame img{width:108%;margin-left:-4%}
.slider-controls{position:relative;z-index:3;display:flex;align-items:center;gap:28px;border-top:1px solid rgba(16,45,55,.15);padding:18px 0 24px}
.slider-label,.rail-heading>span{font-size:11px;letter-spacing:.19em;font-weight:900;color:var(--muted)}
.slider-dots{display:flex;align-items:center;gap:6px;margin-left:auto}
.slider-dot{border:0;background:transparent;padding:13px 5px;min-width:26px}
.slider-dot span{display:block;width:18px;height:4px;background:#afbfba;border-radius:5px;transition:width .25s,background .25s}
.slider-dot.is-active span{width:32px;background:var(--teal)}
.slider-arrows,.rail-controls{display:flex;gap:8px}
.slider-arrows button,.rail-controls button{width:43px;height:43px;border:1px solid #aac2ba;border-radius:50%;background:transparent;color:var(--ink);font-size:21px;line-height:1;transition:background .2s,color .2s,transform .2s}
.slider-arrows button:hover,.rail-controls button:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}
.marquee{overflow:hidden;background:var(--ink);color:#e7efeb;padding:15px 0;white-space:nowrap}
.marquee-track{width:max-content;font-size:12px;letter-spacing:.22em;font-weight:900;animation:marquee-roll 38s linear infinite}
.marquee-track span{color:var(--orange);padding:0 34px}
.rail-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.category-rail{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#9abdb5 transparent;padding:0 0 16px}
.category-rail .category-card{flex:0 0 calc(50% - 10px);scroll-snap-align:start;min-height:530px}
.category-rail .category-card img{height:220px;flex:none}
.card-number{display:block;font-size:11px;letter-spacing:.19em;font-weight:900;margin-bottom:22px;opacity:.75}
.category-card-laptops{background:#dde5e9;color:var(--ink)}
.category-card-laptops .eyebrow,.category-card-laptops p{color:var(--teal-dark)}
.category-card-apparel{background:#67483d}
.category-card-tents{background:#d8dfd0;color:var(--ink)}
.category-card-tents .eyebrow,.category-card-tents p{color:#34594e}
.category-rail .category-card:hover img{transform:translateY(-10px) scale(1.04)}
.use-grid{grid-template-columns:repeat(4,1fr)}
.use-grid article{padding:38px 27px;min-height:245px}
.apparel-hero{background:#f4e8e0}
.apparel-hero .product-art{background:#e8cec0}
.tent-hero{background:#eef0e8}
.tent-hero .product-art{background:#d9e2cf}
.buying-guide{background:#f7f6f1}
.guide-shell{overflow:hidden;border-radius:14px;background:#102d37;box-shadow:0 30px 60px rgba(16,45,55,.13)}
.guide-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid rgba(255,255,255,.18);scrollbar-width:none}
.guide-tabs::-webkit-scrollbar{display:none}
.guide-tab{display:flex;gap:13px;align-items:center;text-align:left;min-height:80px;padding:18px 20px;border:0;border-right:1px solid rgba(255,255,255,.14);color:#c5d9d9;background:transparent;font-size:13px;font-weight:800;line-height:1.25;transition:background .25s,color .25s}
.guide-tab:last-child{border-right:0}
.guide-tab span{color:#93b9b5;font-size:11px;letter-spacing:.1em}
.guide-tab:hover,.guide-tab.is-active{background:#23565e;color:#fff}
.guide-panel{display:grid;grid-template-columns:1fr 1fr;min-height:490px}
.guide-panel[hidden]{display:none}
.guide-copy{padding:55px 58px 50px;color:#fff}
.guide-copy .eyebrow{color:#9fd8cb}
.guide-copy h3{font-size:clamp(36px,3.6vw,54px);margin:18px 0 20px;max-width:500px}
.guide-copy p{color:#d5e4e2;max-width:440px;font-size:16px;line-height:1.65}
.guide-copy ol{list-style:none;padding:0;margin:24px 0 30px;counter-reset:guide}
.guide-copy li{counter-increment:guide;border-top:1px solid rgba(255,255,255,.18);padding:11px 0;color:#f2f7f5;font-size:14px}
.guide-copy li:last-child{border-bottom:1px solid rgba(255,255,255,.18)}
.guide-copy li::before{content:"0" counter(guide);display:inline-block;width:38px;color:#9fd8cb;font-size:11px;font-weight:900;letter-spacing:.08em}
.guide-copy .button{background:var(--orange);border-color:var(--orange);color:var(--ink)}
.guide-copy .button:hover{background:#e99b5a}
.guide-image{position:relative;display:grid;place-items:center;overflow:hidden;background:#dce7e1}
.guide-image::before{content:"";position:absolute;width:80%;aspect-ratio:1;border:1px solid rgba(16,45,55,.16);border-radius:50%;transform:rotate(-17deg)}
.guide-image img{position:relative;width:108%;max-width:none;max-height:410px;object-fit:contain;filter:drop-shadow(0 22px 16px rgba(15,45,48,.14));animation:float-product 6s ease-in-out infinite}
.guide-image-label{position:absolute;top:24px;left:26px;z-index:2;color:#315962;font-size:10px;font-weight:900;letter-spacing:.15em}
.guide-panel-laptops .guide-image{background:#dce3e8}
.guide-panel-apparel .guide-image{background:#eadbd0}
.guide-panel-tents .guide-image{background:#e4decf}
.faq-section{background:#fffefa}
.faq-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;align-items:start}
.faq-grid>div:first-child{position:sticky;top:28px}
.faq-grid>div:first-child p{max-width:340px;margin-bottom:28px}
.faq-list{border-top:2px solid var(--ink)}
.faq-list details{border-bottom:1px solid var(--line);padding:0 4px}
.faq-list summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;padding:24px 0;font-size:19px;font-weight:800;line-height:1.3}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{flex:none;width:28px;height:28px;border:1px solid #b7c9c4;border-radius:50%;display:grid;place-items:center;color:var(--teal);font-size:17px;transition:transform .2s,background .2s}
.faq-list details[open] summary span{transform:rotate(45deg);background:#e6f0eb}
.faq-list details p{max-width:660px;margin:0 38px 25px 0;color:var(--ink-soft);line-height:1.7}
body.motion-ready [data-reveal]{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}
body.motion-ready [data-reveal].is-visible{opacity:1;transform:none}
@keyframes float-product{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes orbit-sway{from{transform:rotate(-18deg) scale(1)}to{transform:rotate(-9deg) scale(1.035)}}
@keyframes marquee-roll{to{transform:translateX(-50%)}}
@media(max-width:1050px){.hero-slides{min-height:590px}.hero-slide{gap:25px}.hero-slide .hero-visual{min-height:420px}.hero-slide .visual-frame{min-height:370px}.use-grid{grid-template-columns:repeat(2,1fr)}.guide-tabs{grid-template-columns:repeat(2,1fr)}.guide-tab:nth-child(2){border-right:0}.guide-tab:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.14)}.guide-copy{padding:44px 38px}.faq-grid{gap:45px}}
@media(max-width:760px){.hero-slides{min-height:830px}.hero-slide{grid-template-columns:1fr;align-content:start;gap:8px;padding:45px 0 25px}.hero-slide .hero-copy h1{font-size:clamp(45px,10vw,70px);margin:18px 0}.hero-slide .hero-lead{font-size:16px}.hero-slide .hero-note{margin-top:25px}.hero-slide .hero-visual{min-height:350px}.hero-slide .visual-frame{min-height:315px;width:86%}.hero-slide .visual-frame img{max-height:300px}.category-rail .category-card{flex-basis:min(84vw,410px);min-height:490px}.slider-controls{gap:12px}.slider-label{display:none}.slider-dots{margin-left:0}.slider-arrows{margin-left:auto}.guide-panel{grid-template-columns:1fr}.guide-copy{padding:36px 30px}.guide-image{min-height:315px}.guide-image img{max-height:290px}.faq-grid{grid-template-columns:1fr;gap:35px}.faq-grid>div:first-child{position:static}}
@media(max-width:520px){.hero-slides{min-height:810px}.hero-slide .hero-visual{min-height:300px}.hero-slide .visual-frame{min-height:265px}.hero-slide .visual-frame img{max-height:255px}.hero-slide .visual-chip{left:-14px;bottom:-10px}.category-rail .category-card{min-height:470px}.use-grid{grid-template-columns:1fr}.use-grid article{min-height:0}.slider-dot{padding-inline:3px}.slider-arrows button,.rail-controls button{width:39px;height:39px}.guide-tabs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.guide-tab,.guide-tab:nth-child(2){flex:0 0 64%;border-bottom:0;border-right:1px solid rgba(255,255,255,.14);scroll-snap-align:start;min-height:68px}.guide-copy{padding:30px 24px}.guide-copy h3{font-size:38px}.guide-image{min-height:255px}.guide-image img{max-height:240px}.faq-list summary{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-slide,.visual-frame img,.visual-orbit,.marquee-track,.guide-image img,body.motion-ready [data-reveal]{animation:none!important;transition:none!important}.hero-slide:not(.is-active){display:none}.hero-slide.is-active{opacity:1;transform:none}}
