/* One compact campaign frame plus the live Sothing catalog. */
.sothing-v104-home{width:min(1210px,calc(100% - 40px));margin:22px auto 38px;color:#22475e;font-size:16px;line-height:1.7}
.sothing-v104-home *{box-sizing:border-box}
.sothing-v104-home h1,.sothing-v104-home h2,.sothing-v104-home h3,.sothing-v104-home p{margin:0;text-transform:none;letter-spacing:0}
.sothing-v104-home a{color:inherit;text-decoration:none}
.sothing-v104-home a:focus-visible,.sothing-v104-home button:focus-visible{outline:3px solid #00a8d7;outline-offset:4px}
.sothing-v104-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sothing-v104-offer{padding:15px 24px;border:1px solid #bcdce9;border-radius:14px;background:linear-gradient(110deg,#f3fbff,#e5f5fd);margin-bottom:18px}
.sothing-v104-offer p{display:flex;align-items:center;justify-content:center;column-gap:18px;row-gap:4px;flex-wrap:wrap;color:#285b75;font-size:23px;font-weight:600;line-height:1.5}
.sothing-v104-offer strong{display:inline-flex;align-items:center;gap:12px;color:#1b789f;font-size:25px;font-weight:700;line-height:1.2}
.sothing-v104-offer b{font-size:46px;line-height:1.15;color:#087fb4;font-weight:750}
.sothing-v104-carousel{border:1px solid #bcdce9;border-radius:18px;background:#f5fbfe;overflow:hidden;box-shadow:0 6px 20px #245e7808}
.sothing-v104-slide[hidden]{display:none!important}
.sothing-v104-slide-link{display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:20px;min-height:390px;padding:20px 24px 16px 35px;background:linear-gradient(105deg,#f5fbfe 0%,#f5fbfe 47%,#eaf5fc 100%)}
.sothing-v104-slide-copy{min-width:0;padding:5px 0 10px}
.sothing-v104-model{display:inline-flex;align-items:center;min-height:30px;padding:4px 10px;border:1px solid #b7dce9;border-radius:7px;background:#fff;color:#2e6c88;font-size:16px;font-weight:700;line-height:1.5;letter-spacing:.04em;margin-bottom:14px}
.sothing-v104-slide-copy h2{font-size:clamp(34px,3.3vw,44px);line-height:1.4;font-weight:700;color:#224b64;margin-bottom:16px;max-width:520px}
.sothing-v104-slide-copy p{font-size:18px;line-height:1.85;color:#4f6e80;max-width:480px;margin-bottom:21px}
.sothing-v104-product-hint{display:inline-flex;align-items:center;gap:18px;color:#1e739b;font-size:16px;font-weight:600;line-height:1.7}
.sothing-v104-slide-link:hover .sothing-v104-product-hint{color:#0d5e86}
.sothing-v104-slide-media{min-width:0;display:flex;align-items:center;justify-content:center;height:350px;border-radius:12px;overflow:hidden;background:#e7f2fa}
.sothing-v104-slide-media img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center}
.sothing-v104-carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:55px;padding:5px 24px 10px 34px;background:#f5fbfe}
.sothing-v104-carousel-controls[hidden]{display:none!important}
.sothing-v104-carousel-arrows{display:flex;gap:7px}
.sothing-v104-carousel-arrows button{display:grid;place-items:center;width:38px;height:38px;min-height:38px;margin:0;padding:8px;border:1px solid #c6dfe9;border-radius:9px;background:#fff;color:#376c85;box-shadow:none;line-height:1;letter-spacing:0}
.sothing-v104-carousel-arrows svg{width:20px;height:20px}
.sothing-v104-carousel-dots{display:flex;align-items:center;gap:1px}
.sothing-v104-carousel-dots button{display:grid;place-items:center;width:32px;height:38px;min-height:38px;margin:0;padding:0;border:0;background:none;box-shadow:none;line-height:1}
.sothing-v104-carousel-dots button span{display:block;width:8px;height:8px;border-radius:8px;background:#b3cedc;transition:width .16s,background-color .16s}
.sothing-v104-carousel-dots button[aria-pressed="true"] span{width:25px;background:#2a8cb4}
.sothing-v104-home .sothing-v104-carousel-pause{display:inline-flex;align-items:center;gap:8px;min-height:38px;min-width:104px;margin:0;padding:7px 10px;border:1px solid #c6dfe9;border-radius:9px;background:#fff;color:#537a8e;box-shadow:none;font-size:12px;font-weight:500;line-height:1.5;letter-spacing:0;text-transform:none}
.sothing-v104-carousel-pause [data-home-pause-symbol]{font-size:15px;font-weight:700;line-height:1}
.sothing-v104-home .sothing-v104-carousel-arrows button:hover,.sothing-v104-home .sothing-v104-carousel-pause:hover{background:#e8f5fc;border-color:#8ebbd0}
.sothing-v104-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:18px}
.sothing-v104-heading>div{min-width:0}
.sothing-v104-heading>div>span{display:block;color:#3685a3;font-size:12px;line-height:1.6;font-weight:700;letter-spacing:.08em;margin-bottom:6px}
.sothing-v104-heading h2{font-size:clamp(24px,2.6vw,31px);line-height:1.5;font-weight:700;color:#22475e}
.sothing-v104-heading p{font-size:16px;line-height:1.8;color:#526d7e;margin-top:6px}
.sothing-v104-catalog{padding:25px 24px 24px;border:1px solid #c7e0eb;border-radius:17px;background:#fff;margin-top:25px}
.sothing-v104-catalog>.sothing-v104-heading{padding-bottom:18px;border-bottom:1px solid #deedf4}
.sothing-v104-home .sothing-v104-view-all{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:44px;padding:9px 16px;border:1px solid #a5cadc;border-radius:9px;background:#f3fafe;color:#235d7c;font-size:15px;font-weight:600;line-height:1.6;white-space:normal;flex:none;text-align:center}
.sothing-v104-home .sothing-v104-view-all:hover{background:#e7f4fc;border-color:#71a9c3}
.sothing-v104-category-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:23px}
.sothing-v104-category-nav>a{min-width:0;display:flex;align-items:center;gap:9px;padding:10px;border:1px solid #d6e7ef;border-radius:10px;background:#f7fbfe;min-height:76px}
.sothing-v104-category-nav>a:hover{background:#eef7fc;border-color:#8fbed3}
.sothing-v104-category-nav img,.sothing-v104-category-fallback{display:block;width:52px;height:52px;object-fit:contain;background:#fff;border-radius:7px;flex:none}
.sothing-v104-category-fallback{display:grid;place-items:center;color:#5696b1}
.sothing-v104-category-fallback svg{width:33px;height:33px}
.sothing-v104-category-nav>a>span:not(.sothing-v104-category-fallback){font-size:15px;font-weight:600;line-height:1.65;min-width:0;flex:1}
.sothing-v104-category-nav b{font-size:16px;font-weight:400;color:#6b97ab;flex:none}
.sothing-v104-home .sothing-v104-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 16px;margin:0}
.sothing-v104-home .sothing-v104-product-grid .product-card{min-width:0;border:1px solid #d7e7f0;border-radius:12px;overflow:hidden;background:white;display:flex;flex-direction:column;align-self:stretch;box-shadow:none}
.sothing-v104-home .sothing-v104-product-grid .product-photo{height:auto;aspect-ratio:1;flex:none;padding:0;position:relative;overflow:hidden;background:#fff}
.sothing-v104-home .sothing-v104-product-grid .product-photo>a{display:flex;width:100%;height:100%;align-items:center;justify-content:center;position:absolute;inset:0}
.sothing-v104-home .sothing-v104-product-grid .product-photo img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.sothing-v104-home .sothing-v104-product-grid .product-photo a:hover img{transform:none}
.sothing-v104-home .sothing-v104-product-grid .product-info{padding:14px;display:flex;flex-direction:column;flex:1;min-width:0}
.sothing-v104-home .sothing-v104-product-grid .brand{display:block;font-size:12px;font-weight:600;line-height:1.5;color:#628496;margin-bottom:5px}
.sothing-v104-home .sothing-v104-product-grid h3{font-size:16px;line-height:1.65;font-weight:600;color:#22475e;min-height:53px;margin:0 0 7px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sothing-v104-home .sothing-v104-product-grid h3 a{color:#22475e}
.sothing-v104-home .sothing-v104-product-grid .product-subtitle:empty{display:none}
.sothing-v104-home .sothing-v104-product-grid .product-subtitle{font-size:14px;line-height:1.65;color:#698392;margin:0 0 9px}
.sothing-v104-home .sothing-v104-product-grid .stock.warranty-badge{font-size:13px;line-height:1.65;padding:7px 9px;min-height:38px;background:#f0f8fc;border:1px solid #d5e7f0;border-left:3px solid #50a6c9;border-radius:6px;color:#426c82}
.sothing-v104-home .sothing-v104-product-grid .product-buy{display:flex;align-items:flex-end;justify-content:space-between;gap:9px;margin-top:auto;padding-top:15px;border-top:1px solid #e6eff4}
.sothing-v104-home .sothing-v104-product-grid .price{font-size:23px;line-height:1.35;font-weight:700;color:#1a78ac}
.sothing-v104-home .sothing-v104-product-grid .vat{font-size:12px;line-height:1.65;color:#718692}
.sothing-v104-home .sothing-v104-product-grid .home-price-offer:empty{display:none}
.sothing-v104-home .sothing-v104-product-grid .add-cart{margin:0;min-height:44px;min-width:44px;width:auto;padding:9px;border:1px solid #c0ddec;border-radius:9px;background:#edf7fd;color:#246782;display:inline-flex;align-items:center;justify-content:center;font-size:13px;line-height:1.5}
.sothing-v104-home .sothing-v104-product-grid .add-cart:disabled{background:#f3f6f8;border-color:#e0e7eb;color:#738591;opacity:1}
.sothing-v104-home .sothing-v104-product-grid .home-cart-label{display:none}
.sothing-v104-home .sothing-v104-product-grid .wish{height:44px;width:44px;min-height:44px;min-width:44px;margin:0;position:absolute;z-index:2;right:7px;top:7px;border:1px solid #d4e6ee;background:#ffffffed;color:#49788f;border-radius:50%;padding:0;display:grid;place-items:center;font-size:24px;line-height:1}
.sothing-v104-catalog-more{display:flex;justify-content:center;margin-top:24px}
.sothing-v104-empty{grid-column:1/-1;text-align:center;padding:35px 20px;color:#4f6e80;border:1px dashed #bed9e6;border-radius:12px;background:#f8fcfe}
.sothing-v104-empty h3{font-size:22px;font-weight:600;color:#315a71;margin-bottom:9px}
.sothing-v104-empty a{display:inline-flex;margin-top:16px;border:1px solid #b7d4e3;border-radius:8px;padding:9px 16px;color:#206c93;min-height:44px;align-items:center}
@media(max-width:1020px){.sothing-v104-home{width:calc(100% - 34px)}.sothing-v104-slide-link{grid-template-columns:1fr 1fr;gap:16px;min-height:350px;padding:20px 20px 12px 24px}.sothing-v104-slide-copy h2{font-size:35px}.sothing-v104-slide-copy p{font-size:18px;line-height:1.8}.sothing-v104-slide-media{height:310px}.sothing-v104-carousel-controls{padding-left:24px;padding-right:20px}.sothing-v104-category-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.sothing-v104-home .sothing-v104-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sothing-v104-catalog{padding:22px 19px}.sothing-v104-offer p{font-size:21px;gap:14px}.sothing-v104-offer b{font-size:42px}}
@media(max-width:760px){.sothing-v104-slide-link{padding:22px 20px 12px;gap:18px;grid-template-columns:1fr;min-height:0}.sothing-v104-slide-copy{padding:0}.sothing-v104-slide-copy h2{font-size:30px;line-height:1.45;max-width:none;margin-bottom:11px}.sothing-v104-slide-copy p{font-size:18px;max-width:none;margin-bottom:13px}.sothing-v104-model{margin-bottom:11px}.sothing-v104-slide-media{height:auto;aspect-ratio:4/3;max-height:none}.sothing-v104-slide-media img{height:auto;max-height:none;aspect-ratio:4/3;object-fit:contain}.sothing-v104-carousel-controls{padding:5px 20px 12px}.sothing-v104-heading{align-items:flex-start;flex-wrap:wrap;gap:13px}.sothing-v104-home .sothing-v104-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 12px}.sothing-v104-home .sothing-v104-product-grid .product-info{padding:12px}.sothing-v104-home .sothing-v104-product-grid .price{font-size:22px}.sothing-v104-heading h2{font-size:26px}}
@media(max-width:500px){.sothing-v104-home{width:calc(100% - 28px);margin:16px auto 28px}.sothing-v104-offer{padding:12px 14px;border-radius:11px;margin-bottom:14px}.sothing-v104-offer p{column-gap:11px;row-gap:3px;font-size:18px}.sothing-v104-offer strong{font-size:20px;gap:8px}.sothing-v104-offer b{font-size:38px}.sothing-v104-offer p>span:last-child{flex-basis:100%;text-align:center;font-size:17px}.sothing-v104-carousel{border-radius:13px}.sothing-v104-slide-link{padding:19px 15px 10px;gap:16px}.sothing-v104-model{font-size:15px;padding:4px 9px;min-height:32px}.sothing-v104-slide-copy h2{font-size:27px;line-height:1.5;margin-bottom:10px}.sothing-v104-slide-copy p{font-size:18px;line-height:1.85;margin-bottom:12px}.sothing-v104-product-hint{font-size:15px;gap:13px}.sothing-v104-slide-media{border-radius:9px}.sothing-v104-carousel-controls{padding:5px 14px 11px;gap:6px}.sothing-v104-carousel-arrows{gap:5px}.sothing-v104-carousel-arrows button{height:38px;width:35px;min-width:35px;padding:7px}.sothing-v104-carousel-dots button{width:27px}.sothing-v104-home .sothing-v104-carousel-pause{min-width:98px;font-size:11px;gap:6px;padding:7px 8px}.sothing-v104-catalog{padding:18px 12px;border-radius:13px;margin-top:21px}.sothing-v104-catalog>.sothing-v104-heading{padding-bottom:15px}.sothing-v104-heading h2{font-size:24px}.sothing-v104-heading>div>span{font-size:11px;margin-bottom:4px}.sothing-v104-heading p{font-size:15px}.sothing-v104-catalog>.sothing-v104-heading .sothing-v104-view-all{display:none}.sothing-v104-category-nav{gap:8px;margin-bottom:18px}.sothing-v104-category-nav>a{padding:7px;min-height:73px;gap:6px;border-radius:8px}.sothing-v104-category-nav img,.sothing-v104-category-fallback{width:37px;height:44px}.sothing-v104-category-nav>a>span:not(.sothing-v104-category-fallback){font-size:14px;line-height:1.7}.sothing-v104-category-nav b{display:none}.sothing-v104-home .sothing-v104-product-grid{gap:13px 10px}.sothing-v104-home .sothing-v104-product-grid .product-info{padding:10px}.sothing-v104-home .sothing-v104-product-grid h3{font-size:15px;line-height:1.7;min-height:52px}.sothing-v104-home .sothing-v104-product-grid .stock.warranty-badge{font-size:12px;line-height:1.65;padding:6px;min-height:35px;border-left-width:2px}.sothing-v104-home .sothing-v104-product-grid .price{font-size:21px}.sothing-v104-home .sothing-v104-product-grid .vat{font-size:11px}.sothing-v104-home .sothing-v104-product-grid .product-buy{gap:4px;padding-top:12px}.sothing-v104-home .sothing-v104-product-grid .add-cart{font-size:12px;padding:8px}.sothing-v104-catalog-more{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.sothing-v104-carousel-dots button span{transition:none}}

/* Clear touch targets, including narrow phones. */
.sothing-v104-home .sothing-v104-carousel-arrows button,.sothing-v104-home .sothing-v104-carousel-dots button,.sothing-v104-home .sothing-v104-carousel-pause{min-width:44px;min-height:44px;height:44px}
@media(max-width:390px){.sothing-v104-carousel-controls{display:grid;grid-template-columns:1fr auto;column-gap:10px;row-gap:0}.sothing-v104-carousel-arrows{grid-column:1;grid-row:1}.sothing-v104-home .sothing-v104-carousel-pause{grid-column:2;grid-row:1}.sothing-v104-carousel-dots{grid-column:1/-1;grid-row:2;justify-content:center}}
