/* SFP Premium Shop v2.0 — self-contained shop-only styling */
#sfp-shop-v2{--blue:#1596d2;--navy:#0a131c;--steel:#172632;--muted:#aab9c5;width:100%;overflow:hidden;background:#101820;color:#fff;font-family:inherit}
#sfp-shop-v2 *,#sfp-shop-v2 *:before,#sfp-shop-v2 *:after{box-sizing:border-box}
#sfp-shop-v2 .sfp-shell{width:min(100%,1320px);margin:0 auto;padding:0 35px}
#sfp-shop-v2 h1,#sfp-shop-v2 h2,#sfp-shop-v2 h3{font-family:inherit;font-weight:900;line-height:1.04;letter-spacing:-.04em;margin:0}
#sfp-shop-v2 h2{font-size:clamp(35px,4.4vw,64px)}
#sfp-shop-v2 h2 span,#sfp-shop-v2 h1 span{color:var(--blue)}
#sfp-shop-v2 p{line-height:1.65;margin:0 0 18px}
#sfp-shop-v2 a{text-decoration:none}
#sfp-shop-v2 a:focus-visible{outline:3px solid #7ad9ff;outline-offset:4px}
#sfp-shop-v2 .sfp-overline{font-size:11px;font-weight:900;letter-spacing:.22em;color:var(--blue);margin-bottom:18px}
#sfp-shop-v2 .sfp-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:35px}
#sfp-shop-v2 .sfp-heading>p{max-width:345px;color:#b6c4cf;font-size:16px;margin:0}
#sfp-shop-v2 .sfp-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:53px;padding:16px 27px;border-radius:3px;background:var(--blue);color:#fff;font-size:12px;letter-spacing:.06em;font-weight:900;transition:transform .2s,background .2s}
#sfp-shop-v2 .sfp-button:hover{background:#087eb6;color:#fff;transform:translateY(-3px)}
#sfp-shop-v2 .sfp-button-ghost{background:transparent;border:1px solid #b8c7d2}
#sfp-shop-v2 .sfp-button-ghost:hover{background:#fff;color:#14232d}
/* Hero */
#sfp-shop-v2 .sfp-shop-hero{position:relative;min-height:670px;background-image:linear-gradient(90deg,rgba(3,9,15,.91),rgba(3,9,15,.68) 47%,rgba(3,9,15,.19)),var(--sfp-hero-image);background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:center}
#sfp-shop-v2 .sfp-shop-hero-inner{width:100%;padding-top:110px;padding-bottom:112px}
#sfp-shop-v2 .sfp-shop-hero h1{font-size:clamp(51px,7vw,100px);color:#fff;margin:0 0 24px}
#sfp-shop-v2 .sfp-hero-desc{color:#e3eaf0;max-width:560px;font-size:19px;margin:0 0 33px}
#sfp-shop-v2 .sfp-hero-actions{display:flex;flex-wrap:wrap;gap:13px}
#sfp-shop-v2 .sfp-hero-ribbon{position:absolute;bottom:0;left:0;right:0;text-align:center;padding:21px 15px;background:rgba(3,9,15,.7);border-top:1px solid rgba(255,255,255,.17);color:#dbe6ef;font-size:10px;font-weight:900;letter-spacing:.2em}
#sfp-shop-v2 .sfp-hero-ribbon span{color:var(--blue);margin:0 19px}
/* Water-inspired industrial section: gradients only, no image dependency */
#sfp-shop-v2 .sfp-shop-categories{padding:100px 0 110px;background:radial-gradient(ellipse at 85% 10%,rgba(10,94,134,.24),transparent 50%),repeating-radial-gradient(ellipse at 65% 100%,rgba(111,191,221,.035) 0,rgba(111,191,221,.035) 1px,transparent 2px,transparent 38px),linear-gradient(150deg,#0a1219,#142630 60%,#0b151e)}
#sfp-shop-v2 .sfp-categories-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
#sfp-shop-v2 .sfp-cat-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid rgba(255,255,255,.13);background:#17232d;color:#fff;transition:transform .25s,border-color .25s}
#sfp-shop-v2 .sfp-cat-card:hover{transform:translateY(-6px);border-color:var(--blue)}
#sfp-shop-v2 .sfp-cat-img{height:245px;background:#f1f3f4;padding:14px;display:flex;align-items:center;justify-content:center;overflow:hidden}
#sfp-shop-v2 .sfp-cat-img img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .35s}
#sfp-shop-v2 .sfp-cat-card:hover .sfp-cat-img img{transform:scale(1.045)}
#sfp-shop-v2 .sfp-cat-info{padding:22px 20px 25px;flex:1;display:flex;flex-direction:column;align-items:start}
#sfp-shop-v2 .sfp-cat-index{font-size:10px;font-weight:900;letter-spacing:.16em;color:#77d1fa}
#sfp-shop-v2 .sfp-cat-info h3{font-size:22px;color:#fff;margin:12px 0 22px;overflow-wrap:anywhere}
#sfp-shop-v2 .sfp-cat-cta{color:#dbe9f2;font-size:11px;letter-spacing:.09em;font-weight:900;margin-top:auto}
/* Product sections */
#sfp-shop-v2 .sfp-featured-products,#sfp-shop-v2 .sfp-all-products{padding:100px 0;background:#edf2f5;color:#12212c}
#sfp-shop-v2 .sfp-all-products{background:#f6f8fa}
#sfp-shop-v2 .sfp-featured-products .sfp-heading>p,#sfp-shop-v2 .sfp-all-products .sfp-heading>p{color:#516571}
#sfp-shop-v2 .sfp-products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}
#sfp-shop-v2 .sfp-product{background:#fff;border:1px solid #d9e2e9;display:flex;flex-direction:column;min-width:0}
#sfp-shop-v2 .sfp-product-image{height:250px;padding:18px;background:#f3f5f6;display:flex;justify-content:center;align-items:center}
#sfp-shop-v2 .sfp-product-image img{width:100%;height:100%;object-fit:contain}
#sfp-shop-v2 .sfp-product-body{padding:22px;display:flex;flex-direction:column;flex:1;gap:15px}
#sfp-shop-v2 .sfp-product h3{font-size:18px;line-height:1.3;letter-spacing:-.01em}
#sfp-shop-v2 .sfp-product h3 a{color:#162633}
#sfp-shop-v2 .sfp-product h3 a:hover{color:#087eb6}
#sfp-shop-v2 .sfp-price{font-size:17px;font-weight:800;color:#152c3d;margin-top:auto}
#sfp-shop-v2 .sfp-price del{color:#778b9b;font-weight:400}
#sfp-shop-v2 .sfp-product-link{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #e3eaf0;padding-top:15px;font-size:11px;font-weight:900;letter-spacing:.08em;color:#087eb6}
/* Quick Draw */
#sfp-shop-v2 .sfp-quickdraw-section{padding:115px 0;background:#101b24}
#sfp-shop-v2 .sfp-spotlight-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:65px}
#sfp-shop-v2 .sfp-spotlight-gallery{display:grid;grid-template-columns:1fr 1fr;gap:13px}
#sfp-shop-v2 .sfp-spotlight-img{height:410px;background:#e9eef1;padding:20px;display:flex;align-items:center;justify-content:center}
#sfp-shop-v2 .sfp-spotlight-img img{width:100%;height:100%;object-fit:contain}
#sfp-shop-v2 .sfp-spotlight-copy h2{margin-bottom:19px}
#sfp-shop-v2 .sfp-spotlight-copy h3{color:#74d0fa;font-size:20px;margin-bottom:20px}
#sfp-shop-v2 .sfp-spotlight-copy>p:not(.sfp-overline){color:#c0ceda;font-size:17px}
#sfp-shop-v2 .sfp-bullet{padding:15px 0;border-top:1px solid #344654;font-size:13px;letter-spacing:.04em;font-weight:800}
#sfp-shop-v2 .sfp-bullet:before{content:'•';color:var(--blue);margin-right:13px}
#sfp-shop-v2 .sfp-spotlight-copy .sfp-button{margin-top:25px}
/* Smoker spotlight */
#sfp-shop-v2 .sfp-smoker-section{padding:100px 0 115px;background:linear-gradient(145deg,#0f2230,#0b151d 66%)}
#sfp-shop-v2 .sfp-smoker-gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:30px}
#sfp-shop-v2 .sfp-smoker-gallery>div{background:#edf2f5;padding:15px;min-height:370px}
#sfp-shop-v2 .sfp-smoker-gallery img{width:100%;height:370px;object-fit:contain;display:block}
#sfp-shop-v2 .sfp-pagination{margin-top:42px}
#sfp-shop-v2 .sfp-pagination ul{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:9px;padding:0;margin:0}
#sfp-shop-v2 .sfp-pagination a,#sfp-shop-v2 .sfp-pagination span{display:block;min-width:43px;padding:12px 16px;text-align:center;border:1px solid #c7d5dd;color:#102530;font-weight:800;background:#fff}
#sfp-shop-v2 .sfp-pagination .current{background:#087eb6;color:#fff;border-color:#087eb6}
#sfp-shop-v2 .sfp-shop-end{text-align:center;padding:100px 0 120px;background:radial-gradient(circle at 50% 0,#19455d,#0a121a 68%)}
#sfp-shop-v2 .sfp-shop-end h2{font-size:clamp(48px,5.5vw,82px);margin-bottom:29px}
@media(max-width:1050px){#sfp-shop-v2 .sfp-categories-grid,#sfp-shop-v2 .sfp-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#sfp-shop-v2 .sfp-spotlight-grid{grid-template-columns:1fr;gap:35px}}
@media(max-width:700px){#sfp-shop-v2 .sfp-shell{padding:0 20px}#sfp-shop-v2 .sfp-shop-hero{min-height:670px;background-position:56% center}#sfp-shop-v2 .sfp-shop-hero-inner{padding-top:90px;padding-bottom:100px}#sfp-shop-v2 .sfp-shop-hero h1{font-size:clamp(42px,11vw,66px)}#sfp-shop-v2 .sfp-hero-desc{font-size:16px}#sfp-shop-v2 .sfp-heading{display:block}#sfp-shop-v2 .sfp-heading>p{margin-top:15px}#sfp-shop-v2 .sfp-shop-categories,#sfp-shop-v2 .sfp-featured-products,#sfp-shop-v2 .sfp-all-products,#sfp-shop-v2 .sfp-quickdraw-section,#sfp-shop-v2 .sfp-smoker-section{padding:66px 0}#sfp-shop-v2 .sfp-spotlight-img{height:250px}#sfp-shop-v2 .sfp-smoker-gallery{grid-template-columns:1fr}#sfp-shop-v2 .sfp-smoker-gallery>div,#sfp-shop-v2 .sfp-smoker-gallery img{height:290px;min-height:290px}#sfp-shop-v2 .sfp-hero-ribbon{font-size:9px}#sfp-shop-v2 .sfp-hero-ribbon span{margin:0 7px}}
@media(max-width:450px){#sfp-shop-v2 .sfp-categories-grid,#sfp-shop-v2 .sfp-products-grid{grid-template-columns:1fr}#sfp-shop-v2 .sfp-cat-img{height:275px}#sfp-shop-v2 .sfp-spotlight-img{height:190px;padding:10px}#sfp-shop-v2 .sfp-hero-actions .sfp-button{width:100%}#sfp-shop-v2 .sfp-hero-ribbon{line-height:1.9}#sfp-shop-v2 .sfp-product-image{height:300px}}
@media(prefers-reduced-motion:reduce){#sfp-shop-v2 *,#sfp-shop-v2 *:before,#sfp-shop-v2 *:after{transition:none!important;scroll-behavior:auto!important}}

/* v2.1: distinct actions and anchored product pagination */
#sfp-shop-v2 #sfp-all-products{scroll-margin-top:30px}
#sfp-shop-v2 .sfp-product-body .sfp-quick-add{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#117fae;color:#fff;border:0;padding:12px 14px;font-size:12px;font-weight:900;letter-spacing:.06em;line-height:1.3;text-decoration:none;transition:background .2s ease}
#sfp-shop-v2 .sfp-product-body .sfp-quick-add:hover,#sfp-shop-v2 .sfp-product-body .sfp-quick-add:focus-visible{background:#075a83;color:#fff}
#sfp-shop-v2 .sfp-product-body .sfp-quick-add.loading{opacity:.65;pointer-events:none}
#sfp-shop-v2 .sfp-product-body .added_to_cart{display:block;color:#086a9b;font-weight:800;font-size:12px}
#sfp-shop-v2 .sfp-pagination .current{pointer-events:none}

/* v2.2: native dark promotional artwork, without pale letterboxing */
#sfp-shop-v2 .sfp-smoker-gallery{align-items:stretch;gap:18px}
#sfp-shop-v2 .sfp-smoker-gallery>div{background:#070b10;padding:0;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid #263c4a}
#sfp-shop-v2 .sfp-smoker-gallery img{display:block;width:100%;height:auto;max-height:490px;object-fit:contain;margin:0 auto}
#sfp-shop-v2 #sfp-live-products.is-loading{opacity:.48;pointer-events:none}
#sfp-shop-v2 #sfp-all-products{scroll-margin-top:90px}
@media(max-width:700px){#sfp-shop-v2 .sfp-smoker-gallery>div{min-height:0;height:auto}#sfp-shop-v2 .sfp-smoker-gallery img{height:auto;max-height:none}}

/* v2.4: streamlined Smoker Craft / Starcraft split feature */
#sfp-shop-v2 .sfp-smoker-section{padding:78px 0;background:linear-gradient(122deg,#0b151d 0%,#102532 100%)}
#sfp-shop-v2 .sfp-smoker-split{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);align-items:center;gap:clamp(28px,4vw,70px)}
#sfp-shop-v2 .sfp-smoker-copy h2{font-size:clamp(38px,4.15vw,62px);line-height:1.02;margin:0 0 17px}
#sfp-shop-v2 .sfp-smoker-subhead{font-size:12px;font-weight:900;letter-spacing:.15em;color:#79d2fc;margin:0 0 18px}
#sfp-shop-v2 .sfp-smoker-description{max-width:455px;color:#c5d2dc;font-size:16px;line-height:1.7;margin-bottom:28px}
#sfp-shop-v2 .sfp-smoker-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;align-items:stretch}
#sfp-shop-v2 .sfp-smoker-gallery .sfp-smoker-art{margin:0;min-width:0;background:#070b10;border:1px solid #284150;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:0;min-height:0}
#sfp-shop-v2 .sfp-smoker-gallery .sfp-smoker-art img{display:block;width:100%;height:auto;max-height:350px;object-fit:contain;margin:0}
@media(max-width:950px){#sfp-shop-v2 .sfp-smoker-split{grid-template-columns:1fr;gap:34px}#sfp-shop-v2 .sfp-smoker-description{max-width:640px}#sfp-shop-v2 .sfp-smoker-gallery .sfp-smoker-art img{max-height:390px}}
@media(max-width:700px){#sfp-shop-v2 .sfp-smoker-section{padding:60px 0}#sfp-shop-v2 .sfp-smoker-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}#sfp-shop-v2 .sfp-smoker-gallery .sfp-smoker-art{min-height:0;height:auto}#sfp-shop-v2 .sfp-smoker-gallery .sfp-smoker-art img{height:auto;max-height:300px}}
@media(max-width:420px){#sfp-shop-v2 .sfp-smoker-gallery{grid-template-columns:1fr}#sfp-shop-v2 .sfp-smoker-gallery .sfp-smoker-art img{max-height:340px}}
