/* Superb Merch / Retail 20: refined high-density commerce, editorial restraint. */
:root{--sm20-ink:#122935;--sm20-text:#20323a;--sm20-muted:#65747a;--sm20-teal:#086f77;--sm20-sea:#0b8791;--sm20-sky:#e6f4f4;--sm20-border:#e8eded;--sm20-ground:#fbfaf7;--sm20-white:#fff;--sm20-shadow:0 6px 18px rgba(11,39,48,.09);--sm20-radius:12px}
body.sm20-storefront{background:#fff;color:var(--sm20-ink);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.55;margin:0}
.sm20-storefront *, .sm20-storefront *::before,.sm20-storefront *::after{box-sizing:border-box}
.sm20-storefront a{color:inherit;text-decoration:none}
.sm20-storefront button,.sm20-storefront input{font:inherit}
.sm20-storefront button{cursor:pointer}
.sm20-storefront :focus-visible{outline:3px solid var(--sm20-sea);outline-offset:3px}
.sm20-container{width:min(1320px,calc(100% - 80px));margin-inline:auto}
.sm20-site-header{background:#fff;position:relative;z-index:30;border-bottom:1px solid var(--sm20-border)}
.sm20-topline{background:#102a33;color:#e6f2f2;font-size:11px;letter-spacing:.012em}
.sm20-topline__inner{display:flex;justify-content:space-between;align-items:center;min-height:33px;gap:16px}
.sm20-topline a{color:#bde6e3;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.sm20-masthead{min-height:91px;display:grid;grid-template-columns:240px minmax(200px,550px) 240px;align-items:center;justify-content:space-between;gap:28px}
.sm20-wordmark{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-size:21px;font-weight:800;letter-spacing:-.058em;line-height:1.1;color:var(--sm20-ink)}
.sm20-wordmark img{width:43px;height:43px;object-fit:contain;display:block}
.sm20-wordmark b{color:var(--sm20-teal);font-weight:800}
.sm20-header-search{border:1px solid #e1e8e8;background:#f6f8f8;display:flex;border-radius:50px;height:46px;box-shadow:inset 0 1px 2px #25394208;max-width:550px;min-width:0}
.sm20-header-search:focus-within{background:#fff;border-color:#6bb7b9;box-shadow:0 0 0 3px #cdeceb}
.sm20-header-search input{border:0;background:transparent;outline:0!important;flex:1;min-width:0;padding:10px 17px;font-size:12px;color:var(--sm20-ink)}
.sm20-header-search input::placeholder{color:#798589;opacity:1}
.sm20-header-search button{border:0;background:var(--sm20-ink);color:white;width:46px;min-width:46px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;margin:-1px;box-shadow:0 3px 8px #0d263022}
.sm20-header-search svg,.sm20-action svg,.sm20-menu-toggle svg{display:block;width:21px;height:21px;stroke:currentColor;stroke-width:1.65;fill:none;stroke-linecap:round;stroke-linejoin:round}
.sm20-header-search-space{height:1px}
.sm20-actions{display:flex;justify-content:end;align-items:center;gap:14px}
.sm20-action{position:relative;min-width:48px;display:flex;align-items:center;flex-direction:column;gap:2px;color:var(--sm20-ink);font-size:10px;border:0;background:transparent;padding:7px 4px;line-height:1.2;border-radius:8px}
.sm20-action:hover,.sm20-menu-toggle:hover{background:#edf5f4}
.sm20-action small{position:absolute;right:-3px;top:-3px;font-size:10px;color:var(--sm20-teal)}
.sm20-mobile-search,.sm20-menu-toggle{display:none}
.sm20-nav-wrap{border-top:1px solid #f0f2f2;background:#fff}
.sm20-navigation{display:flex;justify-content:center;align-items:center;gap:clamp(22px,3.1vw,52px);min-height:49px}
.sm20-navigation>a{display:inline-flex;align-items:center;min-height:47px;padding:8px 0;color:#263940;font-size:12px;font-weight:650;position:relative;white-space:nowrap}
.sm20-navigation>a:after{content:'';position:absolute;left:0;bottom:7px;width:0;height:2px;background:var(--sm20-teal);transition:width .2s}
.sm20-navigation>a:hover:after,.sm20-navigation>a:focus-visible:after{width:100%}
.sm20-navigation__studio{color:var(--sm20-teal)!important}
.sm20-hero-frame{padding-top:22px}
.sm20-hero{min-height:510px;display:grid;grid-template-columns:46% 54%;background:#f1f1eb;border-radius:20px;overflow:hidden;position:relative;isolation:isolate}
.sm20-hero__copy{padding:clamp(45px,6.5vw,95px) 30px 54px clamp(35px,5.2vw,78px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;z-index:2}
.sm20-kicker,.sm20-eyebrow{font-weight:750;letter-spacing:.155em;text-transform:uppercase;font-size:10px;line-height:1.65;color:#1c7780}
.sm20-kicker{margin:0 0 21px}
.sm20-hero h1{font-size:clamp(48px,5.2vw,82px);max-width:570px;line-height:1.03;font-weight:760;letter-spacing:-.064em;color:var(--sm20-ink);margin:0 0 22px;text-wrap:balance}
.sm20-hero__description{font-size:15px;max-width:400px;line-height:1.85;color:#45565b;margin:0 0 29px}
.sm20-hero__actions,.sm20-studio__actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.sm20-storefront .sm20-button{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:12px 24px;border:1px solid transparent;border-radius:10px;font-size:12px;font-weight:700;line-height:1.2;letter-spacing:0;box-shadow:0 3px 9px #0e2b3719;transition:background-color .18s,box-shadow .18s,transform .18s;text-align:center;white-space:nowrap;text-decoration:none}
.sm20-storefront .sm20-button:hover{box-shadow:0 6px 15px #112c3920;transform:translateY(-1px)}
.sm20-storefront .sm20-button--primary{background:var(--sm20-ink);color:#fff;border-color:var(--sm20-ink)}
.sm20-storefront .sm20-button--primary:hover{background:#1c4754}
.sm20-storefront .sm20-button--secondary{background:rgba(255,255,255,.8);color:var(--sm20-ink);border-color:#a9b5b7}
.sm20-storefront .sm20-button--secondary:hover{background:#fff}
.sm20-hero__media{position:relative;overflow:hidden;min-height:510px}
.sm20-hero__media--photo{background:#e5ebe7}.sm20-storefront .sm20-hero__image{width:100%;height:100%;object-fit:cover;object-position:center;position:absolute;inset:0;display:block}
.sm20-hero__media--abstract{background:radial-gradient(ellipse at 68% 45%,#dbeae5 0,#c9ded8 40%,#a8c7be 78%,#a0bfb7 100%)}
.sm20-hero__composition{position:absolute;inset:0;overflow:hidden}
.sm20-hero__disc{position:absolute;width:80%;aspect-ratio:1;border-radius:50%;left:9%;top:3%;background:linear-gradient(135deg,#f8faf3,#a4c5ba);box-shadow:inset 16px -17px 60px #20585a20,0 20px 50px #184b4a0f}
.sm20-hero__block{position:absolute;left:29%;bottom:-9%;width:47%;height:85%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:linear-gradient(158deg,#17353c,#0b232d 75%);border-radius:120px 120px 12px 12px;box-shadow:22px 28px 35px #07333b3b;transform:rotate(-8deg);color:#fff}
.sm20-hero__block>span{font-size:clamp(130px,20vw,280px);font-weight:800;letter-spacing:-.15em;line-height:1}
.sm20-hero__block>small{font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin-top:16px;font-weight:600}
.sm20-hero__accent{position:absolute;right:-10%;top:-15%;width:43%;aspect-ratio:1;border:55px solid #e8f4ec7d;border-radius:50%}
.sm20-section{padding-top:76px}
.sm20-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}
.sm20-heading .sm20-eyebrow{display:block;margin-bottom:5px}
.sm20-heading h2{font-size:clamp(24px,2.4vw,36px);font-weight:750;letter-spacing:-.047em;line-height:1.2;margin:0}
.sm20-underlink{font-size:12px;color:var(--sm20-teal)!important;font-weight:700;padding-bottom:3px;border-bottom:1px solid #91bebf;white-space:nowrap}
.sm20-category-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:15px}
.sm20-category-card{display:block;min-width:0;text-align:center}
.sm20-category-card__image{background:#f4f4f1;border-radius:12px;display:block;aspect-ratio:1/1;overflow:hidden;border:1px solid #eef0ee;transition:box-shadow .2s,transform .2s}
.sm20-category-card__image img{display:block;height:100%;width:100%;object-fit:cover;transition:transform .25s}
.sm20-category-card:hover .sm20-category-card__image{box-shadow:0 9px 24px #0d343318;transform:translateY(-2px)}
.sm20-category-card:hover img{transform:scale(1.04)}
.sm20-category-card__label{display:block;font-size:13px;font-weight:680;letter-spacing:-.018em;margin-top:12px;line-height:1.4}
.sm20-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.sm20-product-card{min-width:0;position:relative;background:#fff}
.sm20-product-card__media-wrap{position:relative;background:#f6f6f3;border-radius:12px;overflow:hidden}
.sm20-product-card__image{display:block!important;aspect-ratio:4/5;overflow:hidden;background:#f5f5f3;border-radius:12px}
.sm20-product-card__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.sm20-product-card__image:hover img{transform:scale(1.028)}
.sm20-product-card__save{position:absolute;top:10px;right:10px;z-index:2}
.sm20-product-card__save .sm-wishlist-toggle{width:38px;height:38px;min-height:38px;display:grid;place-items:center;border-radius:50%;border:1px solid #ecf0ef;background:#ffffffef;box-shadow:0 2px 8px #142d3415;padding:0;font-size:20px}
.sm20-product-card__save .sm-wishlist-toggle [data-sm-wishlist-label]{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);white-space:nowrap;overflow:hidden}
.sm20-product-card__info{padding:13px 1px 0}
.sm20-product-card__category{color:#6d7b80;font-size:10px;text-transform:uppercase;font-weight:680;letter-spacing:.09em;display:block;margin-bottom:3px}
.sm20-product-card .sm20-product-card__name{font-size:14px!important;font-weight:650;letter-spacing:-.012em;line-height:1.42;margin:0 0 5px;min-height:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sm20-product-card__price{font-size:14px!important;font-weight:780;color:var(--sm20-ink)!important;margin:3px 0 11px!important;font-variant-numeric:tabular-nums}
.sm20-product-card__link{min-height:37px;border:1px solid #e4e9e8;background:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;max-width:160px;box-shadow:0 2px 7px #112c3610;font-size:11px;font-weight:690;transition:background .18s}
.sm20-product-card__link:hover{background:#f1f7f6}
.sm20-recommendations{padding-top:72px}
.sm20-studio-outer{padding-block:100px 104px}
.sm20-studio{border-radius:18px;background:#e8f3f2;display:grid;grid-template-columns:1fr 1fr;min-height:420px;overflow:hidden}
.sm20-studio__copy{padding:clamp(42px,5.3vw,78px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;z-index:1}
.sm20-studio__copy h2{font-size:clamp(39px,4vw,60px);letter-spacing:-.06em;line-height:1.08;margin:14px 0 18px;max-width:515px;text-wrap:balance}
.sm20-studio__copy p{font-size:14px;line-height:1.8;color:#445e62;max-width:430px;margin:0 0 28px}
.sm20-studio__scene{position:relative;background:radial-gradient(circle at 65% 55%,#cee5e0 0,#9ecfca 53%,#88b8b2 100%);overflow:hidden;min-height:420px}
.sm20-studio__scene:before{content:'';position:absolute;width:71%;aspect-ratio:1;border:1px solid #ffffffa8;border-radius:50%;left:16%;top:9%;box-shadow:0 0 0 50px #ffffff16,0 0 0 100px #ffffff10}
.sm20-studio__canvas{position:absolute;left:21%;top:10%;width:55%;aspect-ratio:4/5;background:#f7f6f1;border-radius:15px 15px 45px 45px;box-shadow:24px 25px 45px #245a5340;transform:rotate(-8deg);padding:18% 12%}
.sm20-studio__art{border:2px dashed #9caca5;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#183d42}
.sm20-studio__art span{font-size:clamp(29px,3.2vw,48px);font-weight:850;line-height:.95;letter-spacing:-.08em}.sm20-studio__art small{font-size:9px;letter-spacing:.08em;margin-top:13px}
.sm20-studio__tools{position:absolute;bottom:14%;right:13%;display:flex;gap:7px;background:#fff;border-radius:999px;padding:10px 12px;box-shadow:0 7px 25px #16484624}
.sm20-studio__tool{width:19px;height:19px;background:#17323c;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #cad7d5}
.sm20-studio__tool:nth-child(2){background:#03b2b9}.sm20-studio__tool:nth-child(3){background:#acb7a9}.sm20-studio__tool:nth-child(4){background:#fff}
.sm20-footer{background:#0d2831;color:#eef7f6}
.sm20-footer__upper{padding-block:64px 58px;display:grid;grid-template-columns:1.65fr 1fr 1fr 1fr;gap:clamp(25px,5vw,70px)}
.sm20-footer__identity .sm20-wordmark{color:#fff;font-size:23px}.sm20-footer__identity .sm20-wordmark b{color:#78d8d1}
.sm20-footer__identity p{font-size:13px;line-height:1.75;color:#bdcfd0;max-width:280px;margin-top:18px}
.sm20-footer nav{display:flex;flex-direction:column;gap:11px;align-items:start}
.sm20-footer nav h2{font-size:13px;color:#fff;font-weight:800;letter-spacing:.01em;margin:5px 0 10px}
.sm20-footer nav a{color:#c1d1d2;font-size:12px;line-height:1.4}.sm20-footer nav a:hover{color:#a3eee7;text-decoration:underline;text-underline-offset:3px}
.sm20-footer__lower{border-top:1px solid #ffffff26;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-block:23px;font-size:11px;color:#b5c7c9}
.sm20-search-panel{border-radius:16px;max-width:660px}.sm20-search-overlay .sm-search-overlay__bar .sm20-button{border-radius:9px;min-width:100px}
/* Reuse v18 shell for downstream templates; keep storefront coherent. */
.sm20-storefront .sm-shop__head h1,.sm20-storefront .sm-public-product h1,.sm20-storefront .sm-product__title{letter-spacing:-.045em}
.sm20-storefront .sm-shop__grid{gap:18px}
@media(max-width:1050px){.sm20-masthead{grid-template-columns:200px minmax(180px,1fr) 170px;gap:14px}.sm20-hero{min-height:440px}.sm20-hero__media{min-height:440px}.sm20-hero h1{font-size:clamp(42px,5.5vw,65px)}.sm20-category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sm20-product-grid{gap:14px}.sm20-footer__upper{grid-template-columns:1.5fr repeat(3,1fr);gap:22px}}
@media(max-width:760px){.sm20-container{width:calc(100% - 36px)}.sm20-topline__inner{justify-content:center;min-height:30px}.sm20-topline__inner a{display:none}.sm20-masthead{grid-template-columns:40px 1fr auto;min-height:66px;gap:7px}.sm20-menu-toggle{width:40px;height:44px;border:0;background:transparent;border-radius:8px;display:grid;place-items:center}.sm20-wordmark{font-size:18px}.sm20-wordmark img{width:36px;height:36px}.sm20-header-search,.sm20-header-search-space{display:none}.sm20-actions{gap:2px}.sm20-action{width:35px;min-width:35px;padding:7px 3px}.sm20-action span{display:none}.sm20-mobile-search{display:flex}.sm20-account-link{display:none}.sm20-nav-wrap{border-top:0}.sm20-navigation{position:absolute;top:100%;left:0;right:0;z-index:40;background:#fff;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:12px 18px 24px;box-shadow:0 20px 35px #11313a22}.sm-js .sm20-navigation{display:none}.sm-js .sm20-navigation.is-open{display:flex}.sm20-navigation>a{padding:14px 8px;font-size:15px;min-height:50px;border-bottom:1px solid #e9eeee}.sm20-navigation>a:after{display:none}.sm20-hero-frame{padding-top:12px}.sm20-hero{grid-template-columns:1fr;min-height:0;border-radius:15px}.sm20-hero__copy{padding:45px 25px 34px}.sm20-hero h1{font-size:clamp(45px,10.5vw,65px);max-width:490px}.sm20-hero__media{height:350px;min-height:350px}.sm20-hero__block>span{font-size:175px}.sm20-section{padding-top:55px}.sm20-heading{align-items:center}.sm20-heading h2{font-size:27px}.sm20-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sm20-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sm20-studio-outer{padding-block:70px}.sm20-studio{grid-template-columns:1fr}.sm20-studio__copy{padding:46px 30px}.sm20-studio__scene{min-height:330px}.sm20-studio__canvas{width:41%;left:30%;padding:10% 8%;top:-5%}.sm20-footer__upper{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 25px}.sm20-footer__identity{grid-column:1/-1}.sm20-footer__lower{flex-direction:column;align-items:flex-start}}
@media(max-width:420px){.sm20-container{width:calc(100% - 28px)}.sm20-wordmark{font-size:16px}.sm20-wordmark img{width:32px;height:32px}.sm20-masthead{grid-template-columns:36px 1fr auto}.sm20-actions{gap:0}.sm20-hero__copy{padding:39px 23px 30px}.sm20-hero h1{font-size:clamp(42px,12vw,55px)}.sm20-hero__description{font-size:13px}.sm20-hero__actions{gap:9px}.sm20-storefront .sm20-button{font-size:11px;padding:12px 16px;min-height:43px}.sm20-hero__media{height:275px;min-height:275px}.sm20-category-grid{gap:10px}.sm20-category-card__label{font-size:11px}.sm20-category-card__image{border-radius:9px}.sm20-heading h2{font-size:25px}.sm20-product-card .sm20-product-card__name{font-size:12px!important}.sm20-product-card__price{font-size:13px!important}.sm20-product-card__link{min-height:35px}.sm20-studio__copy{padding:38px 24px}.sm20-studio__copy h2{font-size:37px}.sm20-studio__scene{min-height:280px}.sm20-studio__canvas{width:55%;left:22%;padding:13% 10%}.sm20-footer__upper{padding-block:52px}}
@media(prefers-reduced-motion:reduce){.sm20-storefront *, .sm20-storefront *::before,.sm20-storefront *::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}}
