/* Storefront layout: one responsive system over the original component styles. */
html{scrollbar-gutter:stable}
body{overflow-x:clip}
#app{width:100%;min-width:0}
.announcement{font-size:11px;letter-spacing:.1em;padding:10px 16px;line-height:1.4}
html[data-palette] .storefront-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);position:sticky;top:0;z-index:40;height:90px;min-height:0;max-width:none;width:100%;margin:0;padding:12px clamp(20px,4vw,72px);gap:24px;border-radius:0;border-bottom:1px solid var(--theme-border);background:color-mix(in srgb,var(--theme-card) 94%,transparent)!important;backdrop-filter:blur(14px);box-shadow:none}
.storefront-header nav{display:flex;gap:clamp(14px,2vw,28px);align-items:center;font-size:12px;font-weight:500;letter-spacing:.02em;min-width:0}
.storefront-header nav a{white-space:nowrap;line-height:1.6}
.storefront-header nav a{position:relative;padding:7px 0}.storefront-header nav a:after{content:'';position:absolute;left:0;right:100%;bottom:1px;height:2px;border-radius:99px;background:var(--theme-accent);transition:right .22s}.storefront-header nav a:hover:after,.storefront-header nav a:focus-visible:after{right:0}
.storefront-header nav a:hover{color:var(--theme-accent)}
.storefront-header>.logo{position:static!important;transform:none!important;grid-column:2;grid-row:1;justify-self:center;width:auto;height:auto;display:flex;align-items:center;gap:1px;padding:0;border:0!important;border-radius:0!important;background:none!important;font:italic 600 31px/.95 Georgia,serif;letter-spacing:-1px}
.storefront-header>.logo small{font:italic 500 20px/1 Georgia,serif;letter-spacing:.05em}
.storefront-header>.actions{grid-column:3;grid-row:1;display:flex!important;justify-content:flex-end;align-items:center;gap:10px;width:auto!important;max-width:none!important;flex-wrap:nowrap;margin:0}
.storefront-header .social-dock{display:flex;gap:8px}
html[data-palette] .storefront-header :is(.social-icon,.login-pill){position:relative;display:grid!important;place-items:center;flex-shrink:0;width:38px;height:38px;min-width:0;padding:9px;border:1px solid var(--theme-border)!important;border-radius:50%;background:transparent!important;color:var(--theme-ink);box-shadow:none}
.storefront-header :is(.social-icon,.login-pill) svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}
.storefront-header .login-pill span{display:none}
.storefront-header .cart-icon b{font-size:9px;width:17px;height:17px;min-width:17px;top:-5px;right:-4px;border:0;box-shadow:none;background:var(--theme-soft);color:var(--theme-ink)}
.language-menu{position:relative;flex-shrink:0;z-index:45}
.language-menu summary{display:flex;align-items:center;justify-content:center;gap:6px;min-width:58px;padding:12px 7px;border:1px solid var(--theme-border);border-radius:999px;list-style:none;font-size:13px;font-weight:700;cursor:pointer;background:var(--theme-card)}
.language-menu summary:after{content:'';width:5px;height:5px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg) translateY(-2px)}
.language-menu>div{border-radius:12px;min-width:80px;right:0;top:calc(100% + 8px)}
.language-menu:not([open])>div{display:none}
.language-menu button{min-height:36px}
.auth-language{position:absolute;right:24px;top:20px}
.auth-card{position:relative}
.hero{display:grid!important;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);max-width:1440px;min-height:580px;margin:24px auto 0;border-radius:28px;overflow:hidden}
.hero-copy{padding:clamp(36px,5vw,76px);min-width:0;min-height:0;align-items:flex-start;justify-content:center}
.eyebrow{font:600 10px/1.6 Arial,sans-serif;letter-spacing:.17em}
.hero h1{font:400 clamp(43px,4.5vw,68px)/1.07 Georgia,serif;letter-spacing:-.04em;margin:24px 0}
.hero h1 em{font-weight:400}
.hero-copy>p{font:14px/1.85 Arial,sans-serif;max-width:340px;margin:0 0 30px;color:var(--theme-muted)}
.hero-copy .btn{font-size:12px;padding:15px 23px;min-height:48px;border-radius:999px}
.hero-img{position:relative;min-height:580px;height:auto;min-width:0}
.hero-img img{object-fit:cover;object-position:center 30%}
.hero-tag{font-size:9px;left:22px;bottom:25px;padding:12px 18px;border-radius:999px}
.hero-slider-dots{left:auto;right:22px;transform:none}
html[data-palette] .benefits{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));max-width:1360px;min-height:132px;margin:36px auto 58px;padding:0 12px;background:transparent!important;border-radius:0;box-shadow:none;border:0;overflow:visible;gap:12px}
.benefits>div,.benefits>a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:5px 16px;padding:24px!important;border:1px solid var(--theme-border)!important;border-radius:22px!important;align-content:center;align-items:center;min-width:0;background:var(--theme-card)!important;box-shadow:0 12px 28px #0000000c}
.benefits b{font-size:13px;line-height:1.5;font-weight:600}
.benefits small{font-size:11px;line-height:1.7;margin:0;color:var(--theme-muted)}
html[data-palette] .benefits .benefit-mark{width:38px;height:38px;background:transparent;border-radius:0;color:var(--theme-accent);font-size:13px;border:1px solid var(--theme-border)}
.section{max-width:1360px;margin-inline:auto;padding:60px 28px}
.heading{gap:24px;margin-bottom:32px;align-items:flex-end}
.heading h2{font:400 clamp(30px,3.3vw,46px)/1.16 Georgia,serif;letter-spacing:-.025em}
.heading p{font-size:12px}
.category-showcase{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px!important;max-width:1360px;margin:12px auto 64px;padding:0 28px;overflow:visible;align-items:stretch}
.category-showcase>button{position:relative;display:block;min-width:0;width:100%;height:420px;margin:0;border:0;border-radius:22px;isolation:isolate;text-align:left}
.category-showcase img{display:block;width:100%;height:100%;object-fit:cover;border-radius:22px;transition:transform .4s}
.category-showcase>button:after{position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#0009);border-radius:0 0 22px 22px;content:'';z-index:1;pointer-events:none}
.category-showcase>button>span{position:absolute;left:26px;right:20px;bottom:28px;z-index:2;color:white}
.category-showcase small{font:500 9px/1.6 Arial;letter-spacing:.16em}
.category-showcase b{display:block;font:400 clamp(26px,3vw,39px)/1.2 Georgia;margin:10px 0 14px}
.category-showcase i{font:500 11px Arial;font-style:normal;letter-spacing:.03em}
.category-showcase .widget-edit{top:14px;right:14px;font-size:10px;padding:9px 13px}
#catalog .grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 22px}
#catalog .product{position:relative;min-width:0;padding:8px 8px 18px;border-radius:20px;box-shadow:none}
#catalog .photo{height:auto;aspect-ratio:3/4;border-radius:14px!important}
#catalog .photo img{border-radius:14px}
#catalog .product h3{font-size:14px;line-height:1.55;min-height:0;margin:10px 0 12px}
#catalog .product small{font-size:10px}
#catalog .product-row b{font-size:13px}
.product .quick-edit{top:16px!important;right:16px!important;padding:8px 11px;font-size:9px;box-shadow:0 3px 12px #0002}
.product .badge{max-width:calc(100% - 100px);white-space:normal}
.catalog-only #catalog{min-height:70dvh;padding-top:48px}
.catalog-only #catalog .grid{padding-bottom:30px}
.photo-search{max-width:1304px;margin:0 auto 45px;padding:26px 32px;border-radius:22px}
.site-footer.footer-refresh{border-radius:28px 28px 0 0;margin-top:60px}
.footer-intro h2{font-size:36px}
/* Shimmer is transform-based and stays inside the actual placeholder bounds. */
.skeleton{position:relative;overflow:hidden;isolation:isolate;background:var(--theme-soft);background-image:none;animation:none}
.skeleton:after{content:'';position:absolute;inset:0;transform:translateX(-110%);background:linear-gradient(100deg,transparent 10%,color-mix(in srgb,var(--theme-card) 85%,transparent) 48%,transparent 90%);animation:store-shimmer 1.65s ease-in-out infinite}
@keyframes store-shimmer{to{transform:translateX(110%)}}
.page-skeleton .sk-hero{width:100%;height:100%;min-width:0;min-height:450px}
.page-skeleton .grid,.instant-hero{min-width:0;max-width:100%}
.page-skeleton .heading .skeleton{max-width:340px}
.instant-shell{width:100%;overflow:hidden}
.instant-hero{display:grid;grid-template-columns:1fr 1fr;margin:24px auto;max-width:1440px;border-radius:28px;overflow:hidden}
.instant-hero>.sk-hero{min-width:0}
.reviews-list{margin-top:28px}
.review-detail dl{margin-top:18px}.review-detail dl dd{white-space:nowrap}
.review-detail>.btn{margin-top:18px}
.review-admin-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}
.review-admin-heading h2{font:32px Georgia}
.review-editor-modal{z-index:120;padding:20px;overflow:auto}
.review-editor{position:relative;background:var(--theme-card);color:var(--theme-ink);border:1px solid var(--theme-border);border-radius:28px;padding:32px;width:min(660px,100%);max-height:90dvh;overflow:auto;overscroll-behavior:contain}
.review-editor h2{font:32px/1.2 Georgia;margin:12px 40px 24px 0}
.review-editor .close{position:absolute;right:18px;top:18px;display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--theme-border);border-radius:50%;background:var(--theme-card);color:inherit}
.review-editor .close svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5}
.review-editor :is(input,textarea,select){width:100%;min-width:0;padding:12px 14px;border:1px solid var(--theme-border);border-radius:14px;background:var(--theme-card);color:inherit;font:14px/1.5 Arial}
.review-editor [type=submit]{width:100%;margin-top:20px}
.review-rating-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.review-image-editor{display:flex;gap:10px;margin-top:20px}.review-image-editor>div{position:relative}.review-image-editor img{width:100px;height:100px;object-fit:cover;border-radius:14px}.review-image-editor button{position:absolute;right:4px;top:4px;border:0;border-radius:50%;background:var(--theme-card);color:var(--theme-ink);width:27px;height:27px}
:is(.storefront-header,.review-editor) :focus-visible{outline:2px solid var(--theme-accent);outline-offset:3px}
.cart-panel>.success{padding:36px 20px;border-radius:25px;background:var(--theme-soft);margin-top:30px}.cart-panel>.success h3{font:32px/1.2 Georgia}.cart-panel>.success b{display:inline-block;padding:9px 15px;border-radius:999px;background:var(--theme-card);margin:14px 0}
@media(min-width:701px) and (max-width:1100px){.storefront-header nav a:nth-child(2){display:none}.storefront-header nav{gap:13px;font-size:11px}.storefront-header>.actions{gap:5px}.hero{margin:18px}.hero-copy{padding:34px}.benefits>div,.benefits>a{padding:20px 12px!important;gap:8px}.category-showcase>button{height:330px}}
@media(max-width:700px){
 html[data-palette] .storefront-header{grid-template-columns:minmax(0,1fr) auto;height:76px;padding:12px 16px;gap:10px}
 .storefront-header nav{display:none}.storefront-header>.logo{grid-column:1;justify-self:start;font-size:25px;letter-spacing:-1px}.storefront-header>.logo small{font-size:17px}
 .storefront-header>.actions{grid-column:2;gap:6px}.storefront-header .social-dock{gap:6px}
 html[data-palette] .storefront-header :is(.social-icon,.login-pill){width:33px;height:33px;padding:7px}
 html[data-palette] .storefront-header .cart-icon{display:none!important}
 .storefront-header .language-menu summary{min-width:48px;padding:9px 5px;font-size:12px}
 .announcement{font-size:9px;letter-spacing:.03em;padding:8px 10px}
 .hero{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);min-height:385px;margin:12px 12px 0;border-radius:24px}
 .hero-copy{padding:28px 18px}.hero h1{font-size:clamp(29px,6.8vw,45px);margin:16px 0;line-height:1.08}.hero-copy .eyebrow{font-size:7px;letter-spacing:.11em}
 .hero-copy>p{font-size:11px;line-height:1.75;margin-bottom:21px}.hero-copy .btn{font-size:10px;min-height:42px;padding:10px 13px;gap:7px;white-space:normal}
 .hero-img{min-height:385px;height:auto}.hero-tag{display:none}.hero-slider-dots{left:50%;right:auto;transform:translateX(-50%);bottom:16px}.hero-count{display:none}
 html[data-palette] .benefits{grid-template-columns:repeat(2,minmax(0,1fr));margin:22px 12px 32px;padding:0;min-height:0}
 .benefits>div,.benefits>a{grid-template-columns:30px minmax(0,1fr);padding:18px 10px!important;gap:4px 10px;border:1px solid var(--theme-border)!important;border-radius:17px!important;box-shadow:0 8px 18px #0000000c}
 .benefits b{font-size:11px}.benefits small{font-size:10px;line-height:1.6}html[data-palette] .benefits .benefit-mark{width:28px;height:30px;font-size:10px}
 .section{padding:36px 16px}.heading{gap:12px;margin-bottom:24px}.heading h2{font-size:32px}.heading .eyebrow{font-size:8px}.heading p{font-size:10px}
 .category-showcase{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 16px;gap:14px!important;margin:20px auto 38px;overflow:visible}
 .category-showcase>button{min-width:0;height:245px;border-radius:20px}.category-showcase>button:first-child{grid-column:1/-1;height:300px}.category-showcase img{border-radius:20px}
 .category-showcase>button>span{left:18px;bottom:22px;right:12px}.category-showcase b{font-size:27px;margin:8px 0 12px}.category-showcase small{font-size:8px}.category-showcase i{font-size:10px}
 #catalog .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 10px}#catalog .product{padding:6px 6px 14px;border-radius:18px}#catalog .product h3{font-size:12px;line-height:1.5}#catalog .product-row b{font-size:11px}
 .product .quick-edit{top:11px!important;right:11px!important;font-size:8px;padding:7px 8px}.product .badge{font-size:7px;left:8px;top:8px;max-width:calc(100% - 76px);padding:6px}
 .catalog-only #catalog{padding-top:30px}.catalog-only #catalog .grid{padding-bottom:95px}
 .photo-search{margin:0 16px 24px;padding:24px 20px;border-radius:20px}.photo-search h2{font-size:27px}
 .reviews-page-head h1{font-size:35px}.reviews-page-head p{font-size:13px;line-height:1.7}.reviews-score{margin-bottom:24px}
 .review-editor{padding:26px 20px;max-height:88dvh;border-radius:23px}.review-editor h2{font-size:29px}.review-rating-fields{grid-template-columns:1fr}.review-image-editor img{width:76px;height:76px}
 .review-admin-heading{align-items:flex-start;flex-direction:column}.review-admin-heading h2{font-size:27px}
 .site-footer.footer-refresh{margin-top:35px}.footer-intro h2{font-size:31px}
 .page-skeleton .hero{grid-template-columns:1fr 1fr}.page-skeleton .hero-copy{gap:14px}.page-skeleton .sk-hero{min-height:385px}.sk-headline{height:34px}.sk-photo{height:auto;aspect-ratio:3/4}
 .instant-hero{margin:12px;grid-template-columns:1fr 1fr}.instant-hero>.sk-stack{padding:22px;gap:15px}.instant-hero>.sk-hero{min-height:385px}
}
@media(prefers-reduced-motion:reduce){.skeleton:after{animation:none;transform:none;opacity:.3}}
.gallery-prev,.gallery-next{transition:background-color .18s,color .18s,box-shadow .18s!important;transform:translateY(-50%)!important}.gallery-prev:hover,.gallery-next:hover{transform:translateY(-50%)!important;background:var(--theme-button)!important;color:var(--theme-button-text)!important;box-shadow:0 6px 16px #0003}
.member-nav .member-logout{color:#b4232f!important;background:#fff0f0!important;border-color:#efb8bd!important}.member-nav .member-logout:hover{background:#d9323e!important;color:#fff!important}
.mobile-bottom #mobile-cart{background:transparent!important;color:var(--theme-deep-muted)!important}.mobile-bottom #mobile-cart svg{stroke:currentColor!important;fill:none!important}.mobile-bottom #mobile-cart.active,.mobile-bottom #mobile-cart:focus-visible{background:var(--theme-soft)!important;color:var(--theme-ink)!important}
html[data-palette] .benefits{background:transparent!important}
html[data-palette] .storefront-header .instagram-link{background:#fbe4eb!important;color:#b83f69!important;border-color:#edbfd0!important}.storefront-header .instagram-link:hover{background:#ef9bb9!important;color:#fff!important}
html[data-palette] .storefront-header .telegram-link{background:#e0f1fa!important;color:#1784b6!important;border-color:#b9dced!important}.storefront-header .telegram-link:hover{background:#65b9df!important;color:#fff!important}
html[data-palette] .storefront-header .cart-icon{background:#f4eadc!important;color:#72573f!important;border-color:#d8b996!important}.storefront-header .cart-icon:hover{background:#d5ad85!important;color:#fff!important}
html[data-palette] .storefront-header .login-pill{background:#efe9f9!important;color:#6e4c96!important;border-color:#d8c6eb!important}.storefront-header .login-pill:hover{background:#b998d3!important;color:#fff!important}
body:has(.cart-panel) .mobile-bottom #mobile-cart{background:var(--theme-soft)!important;color:var(--theme-ink)!important;box-shadow:inset 0 0 0 1px var(--theme-border)}
