:root{--green:#176753;--green2:#4d8c73;--cream:#fffdf8;--ink:#173c3a;--line:#dce9e2}*{box-sizing:border-box}body{margin:0;background:#faf8f1;color:var(--ink);font-family:Arial,sans-serif}.shop-shell{width:min(1180px,94%);margin:auto}.shop-header{position:sticky;top:0;z-index:50;background:rgba(255,253,248,.97);border-bottom:1px solid #e5ded1;backdrop-filter:blur(10px)}.shop-nav{min-height:82px;display:flex;align-items:center;gap:26px}.shop-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--green);font-weight:900;margin-right:auto}.shop-brand img{width:52px;height:52px;border-radius:50%;object-fit:cover}.shop-links{display:flex;gap:25px}.shop-links a{text-decoration:none;color:#56635e;font-weight:700}.shop-links .active{color:var(--green)}.cart-link{background:var(--green);color:#fff!important;padding:11px 15px;border-radius:999px}.shop-hero{padding:52px 0 28px;text-align:center}.shop-hero h1{font-size:clamp(30px,5vw,54px);margin:0 0 10px;color:var(--green)}.shop-hero p{color:#66756f;max-width:700px;margin:auto;line-height:1.7}.delivery-pill{display:inline-flex;margin-top:18px;background:#eef7f1;border:1px solid #cfe3d6;padding:10px 15px;border-radius:999px;font-weight:800}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:26px 0 44px}.product-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 10px 28px rgba(38,76,61,.07);transition:.2s}.product-card:hover{transform:translateY(-4px);box-shadow:0 15px 34px rgba(38,76,61,.12)}.product-card>a{text-decoration:none;color:inherit}.product-card img{width:100%;aspect-ratio:1/1;object-fit:cover;background:#f2f2ef;display:block}.product-info{padding:17px}.product-info h2{font-size:18px;margin:0 0 8px}.price{font-size:22px;font-weight:900;color:var(--green)}.old-price{text-decoration:line-through;color:#8a9691;font-size:14px;margin-left:8px}.sale-badge{position:absolute;margin:12px;background:#c83d45;color:#fff;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800}.product-card{position:relative}.product-actions{display:flex;gap:8px;margin-top:14px}.btn{border:0;background:var(--green);color:#fff;text-decoration:none;padding:11px 14px;border-radius:12px;font-weight:800;cursor:pointer;display:inline-flex;justify-content:center;align-items:center}.btn.light{background:#edf5f1;color:var(--green)}.shop-ad{display:flex;width:100%;height:90px;border-radius:15px;overflow:hidden;margin:10px auto 28px}.shop-ad img{width:100%;height:100%;object-fit:cover}.shop-ad-placeholder{border:1px dashed #b9c9c1;align-items:center;justify-content:center;color:#87948e;background:#fff}.product-page{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;padding:38px 0}.product-main-img{width:100%;border-radius:24px;background:#fff;border:1px solid var(--line);display:block}.product-copy{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;height:max-content;position:sticky;top:105px}.product-copy h1{font-size:34px;margin:0 0 12px}.product-copy .price{font-size:30px}.field{margin:17px 0}.field label{display:block;font-weight:800;margin-bottom:7px}.field select,.field input,.checkout input,.checkout textarea{width:100%;padding:13px;border:1px solid #cdded6;border-radius:12px;background:#fff;font:inherit}.description{line-height:1.75;color:#53655e}.delivery-box{margin:20px 0;background:#eef7f1;border-radius:14px;padding:15px;line-height:1.6}.cart-page,.checkout{padding:36px 0 60px}.cart-row{display:grid;grid-template-columns:90px 1fr auto auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;margin:10px 0}.cart-row img{width:90px;height:90px;object-fit:cover;border-radius:12px}.cart-total{text-align:right;font-size:26px;font-weight:900;margin:22px 0}.checkout{max-width:760px}.checkout .box{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px}.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checkout label{font-weight:800;font-size:13px}.checkout .field{margin:0 0 14px}.success{background:#eef7f1;border:1px solid #cfe3d6;padding:24px;border-radius:20px;margin:40px auto;max-width:760px}.shop-footer{padding:35px 0 100px;text-align:center;color:#718078}.scroll-top{position:fixed;right:20px;bottom:22px;width:48px;height:48px;border:0;border-radius:50%;background:var(--green);color:#fff;font-size:22px;box-shadow:0 8px 20px #17675344;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:.2s;z-index:80}.scroll-top.show{opacity:1;pointer-events:auto;transform:none}@media(max-width:900px){.product-grid{grid-template-columns:repeat(2,1fr)}.shop-links{display:none}.product-page{grid-template-columns:1fr}.product-copy{position:static}.shop-nav{min-height:66px}.shop-brand img{width:44px;height:44px}}@media(max-width:560px){.product-grid{grid-template-columns:1fr 1fr;gap:11px}.product-info{padding:12px}.product-info h2{font-size:14px}.price{font-size:18px}.product-actions{display:block}.product-actions .btn{width:100%;font-size:12px}.product-page{padding-top:16px;gap:16px}.product-copy{padding:18px}.product-copy h1{font-size:25px}.cart-row{grid-template-columns:65px 1fr auto}.cart-row img{width:65px;height:65px}.cart-row .line-total{grid-column:2/-1}.checkout-grid{grid-template-columns:1fr}}
/* Shop refinement v2 */
.shop-layout{width:min(1540px,98%);margin:0 auto;display:grid;grid-template-columns:210px minmax(0,1180px) 210px;gap:22px;justify-content:center}.shop-center{min-width:0}.shop-side{padding-top:38px}.sticky-ads{position:sticky;top:104px;display:grid;gap:18px}.side-ad{width:200px;height:150px;border-radius:16px;overflow:hidden;display:flex;align-items:center;justify-content:center;margin:auto;border:1px dashed #c7d7cf;background:#fff;color:#8a9691;font-size:12px}.side-ad img{width:100%;height:100%;object-fit:cover}.gallery{min-width:0}.main-photo-wrap{position:relative;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden}.product-main-img{border:0;border-radius:0;aspect-ratio:1/1;object-fit:contain;cursor:zoom-in}.zoom-hint{position:absolute;right:16px;bottom:16px;width:44px;height:44px;border:1px solid #d8e4de;background:#fff;border-radius:50%;font-size:24px;color:var(--green);box-shadow:0 8px 20px #173c3a1a;cursor:pointer}.thumbs{display:flex;gap:10px;margin-top:12px;overflow:auto;padding:2px}.thumb-btn{width:76px;height:76px;border:1px solid #dbe7e1;background:#fff;border-radius:14px;padding:4px;flex:0 0 auto;cursor:pointer}.thumb-btn.active{outline:2px solid var(--green);outline-offset:1px}.thumb-btn img{width:100%;height:100%;object-fit:cover;border-radius:10px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:900;color:#6b8178;margin-bottom:8px}.price-row{display:flex;align-items:center;gap:8px;margin:8px 0 22px}.sale-pill{font-size:11px;font-weight:800;background:#fff0f0;color:#b63840;border-radius:999px;padding:6px 9px}.option-block{margin:20px 0}.option-title{font-size:13px;color:#61736c;margin-bottom:10px}.option-title b{color:var(--ink);margin-left:5px}.swatches,.size-pills{display:flex;gap:9px;flex-wrap:wrap}.swatch{width:42px;height:42px;border:1px solid #d6e0db;background:#fff;border-radius:50%;padding:4px;cursor:pointer}.swatch span{display:block;width:100%;height:100%;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px #00000012}.swatch.selected{outline:2px solid var(--green);outline-offset:2px}.size-pill{min-width:48px;height:42px;padding:0 13px;border:1px solid #d6e0db;background:#fff;border-radius:12px;font-weight:800;color:#3c5049;cursor:pointer}.size-pill.selected{background:var(--green);color:#fff;border-color:var(--green)}.buy-row{display:grid;grid-template-columns:126px 1fr;gap:10px;margin:22px 0}.qty-stepper{display:grid;grid-template-columns:38px 1fr 38px;border:1px solid #d4e0da;border-radius:13px;overflow:hidden;background:#fff}.qty-stepper button{border:0;background:#f5f8f6;font-size:20px;cursor:pointer}.qty-stepper input{width:100%;border:0;text-align:center;font:inherit;font-weight:800;-moz-appearance:textfield}.qty-stepper input::-webkit-inner-spin-button{display:none}.buy-btn{min-height:48px}.delivery-box{display:flex;justify-content:space-between;gap:12px;align-items:center}.accordions{border-top:1px solid #e4ece8;margin-top:20px}.accordions details{border-bottom:1px solid #e4ece8;padding:0}.accordions summary{list-style:none;padding:17px 2px;font-weight:900;cursor:pointer;display:flex;justify-content:space-between}.accordions summary::-webkit-details-marker{display:none}.accordions summary:after{content:'+';font-size:20px;font-weight:400}.accordions details[open] summary:after{content:'−'}.accordions details>div{padding:0 2px 18px;color:#5b6c65;line-height:1.7}.lightbox{position:fixed;inset:0;background:#0d1715e8;z-index:200;display:none;align-items:center;justify-content:center;padding:40px}.lightbox.open{display:flex}.lightbox img{max-width:min(1000px,92vw);max-height:88vh;border-radius:18px}.lightbox-close{position:fixed;right:24px;top:20px;width:48px;height:48px;border:0;border-radius:50%;background:#fff;color:#173c3a;font-size:30px;cursor:pointer}
@media(max-width:1450px){.shop-layout{grid-template-columns:1fr}.shop-side{display:none}.shop-center{width:min(1180px,94%);margin:auto}}
@media(max-width:560px){.product-copy{border-radius:18px}.buy-row{position:sticky;bottom:8px;z-index:20;background:#ffffffed;padding:8px;margin-left:-8px;margin-right:-8px;border-radius:16px;box-shadow:0 10px 30px #173c3a22}.delivery-box{display:block}.delivery-box span{display:block;margin-top:4px}.thumb-btn{width:64px;height:64px}}
/* Shop hero refinement v3 */
.shop-hero-rich{position:relative;min-height:390px;margin:28px 0 22px;padding:54px 52px;text-align:left;border:1px solid #dce9e2;border-radius:32px;overflow:hidden;background:radial-gradient(circle at 78% 20%,#dcefe4 0,transparent 28%),linear-gradient(135deg,#fffdf8 0%,#f3f8f3 52%,#eaf4ed 100%);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;box-shadow:0 18px 50px rgba(23,103,83,.08)}
.shop-hero-rich:before{content:'';position:absolute;width:320px;height:320px;border:1px solid rgba(23,103,83,.10);border-radius:50%;right:-80px;top:-110px}.shop-hero-rich:after{content:'';position:absolute;width:190px;height:190px;border:1px solid rgba(23,103,83,.08);border-radius:50%;right:120px;bottom:-100px}.hero-copy{position:relative;z-index:3}.hero-kicker{display:inline-block;font-size:11px;letter-spacing:.18em;font-weight:900;color:#4d8c73;margin-bottom:13px}.shop-hero-rich h1{font-size:clamp(36px,4.5vw,62px);line-height:1.08;text-align:left;margin:0 0 16px;max-width:690px}.shop-hero-rich p{margin:0;max-width:640px;text-align:left;font-size:17px;line-height:1.75}.hero-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:25px}.hero-meta .delivery-pill{margin:0}.hero-shop-btn{display:inline-flex;align-items:center;min-height:43px;padding:10px 15px;border-radius:999px;background:#176753;color:#fff;text-decoration:none;font-weight:900;font-size:13px}.hero-products{height:300px;position:relative;z-index:2}.hero-product{position:absolute;width:190px;aspect-ratio:1/1;background:#fff;border:1px solid #dce9e2;border-radius:26px;overflow:hidden;box-shadow:0 18px 38px rgba(23,60,58,.14)}.hero-product img{width:100%;height:100%;object-fit:cover}.hp-0{right:128px;top:8px;transform:rotate(-5deg);z-index:3}.hp-1{right:0;top:72px;transform:rotate(7deg);z-index:2}.hp-2{right:155px;bottom:-10px;transform:rotate(3deg);z-index:4;width:150px}.product-grid{scroll-margin-top:105px}
@media(max-width:900px){.shop-hero-rich{grid-template-columns:1fr;min-height:auto;padding:38px 30px}.hero-products{height:220px;margin-top:15px}.hero-product{width:150px}.hp-0{left:7%;right:auto}.hp-1{right:8%;top:40px}.hp-2{left:40%;right:auto;width:120px}.shop-hero-rich h1,.shop-hero-rich p{text-align:left}}
@media(max-width:560px){.shop-hero-rich{margin-top:14px;padding:30px 20px 24px;border-radius:24px}.shop-hero-rich h1{font-size:34px}.shop-hero-rich p{font-size:14px}.hero-products{height:170px}.hero-product{width:112px;border-radius:18px}.hp-0{left:2%}.hp-1{right:1%;top:30px}.hp-2{left:37%;width:95px;bottom:0}.hero-meta{align-items:stretch}.hero-meta>*{justify-content:center;text-align:center}}

/* V4 smooth navigation + app-like mobile shell */
html{scroll-behavior:smooth;scroll-padding-top:104px}
#products{scroll-margin-top:104px}
.mobile-tabbar{display:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.product-card,.scroll-top{transition:none!important}}
@media(max-width:900px){
 body{padding-bottom:calc(76px + env(safe-area-inset-bottom));-webkit-tap-highlight-color:transparent}
 .shop-header{top:0}.shop-nav{padding-left:12px;padding-right:12px}
 .shop-brand span{display:none}.cart-link{padding:10px 13px}
 .mobile-tabbar{position:fixed;left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));height:62px;z-index:120;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;background:rgba(255,253,248,.94);border:1px solid #dce9e2;border-radius:20px;box-shadow:0 16px 40px rgba(23,60,58,.18);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:hidden}
 .mobile-tabbar a{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:#64766f;font-size:10px;font-weight:800;position:relative}
 .mobile-tabbar a.active{color:var(--green)}.mobile-tabbar .mi{font-size:20px;line-height:1}.mobile-tabbar [data-cart-count]{position:absolute;top:5px;left:calc(50% + 8px);min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--green);color:#fff;font-size:9px;display:grid;place-items:center}
 .scroll-top{bottom:calc(84px + env(safe-area-inset-bottom))}
}

/* V6 lifestyle storefront */
.cart-icon-link{position:relative;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;text-decoration:none;box-shadow:0 8px 22px rgba(23,103,83,.18)}
.cart-svg{font-size:21px;line-height:1}.cart-badge{position:absolute;right:-5px;top:-5px;min-width:21px;height:21px;padding:0 5px;border-radius:11px;background:#fff;color:var(--green);border:2px solid var(--green);display:grid;place-items:center;font-size:10px;font-weight:900}
.catalog-head{scroll-margin-top:105px;padding:36px 2px 8px;display:flex;align-items:end;justify-content:space-between;gap:30px}.catalog-head h2{font-size:clamp(28px,3vw,42px);margin:0;color:var(--ink)}.catalog-head p{max-width:460px;margin:0 0 5px;color:#718078;line-height:1.6}
.product-grid-v6{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;padding-top:18px}.product-card-v6{border-radius:26px;background:#fffdf8;border:1px solid #e6e8df;box-shadow:0 12px 30px rgba(32,61,51,.08);overflow:hidden}.product-card-v6:hover{transform:translateY(-6px);box-shadow:0 18px 42px rgba(32,61,51,.13)}.product-card-v6 .card-photo{display:block;overflow:hidden;background:#eef1e8}.product-card-v6 .card-photo img{aspect-ratio:4/3;object-fit:cover;transition:transform .45s ease}.product-card-v6:hover .card-photo img{transform:scale(1.025)}.product-card-v6 .product-info{padding:17px 18px 16px}.product-card-v6 h2{font-size:18px;margin-bottom:7px}.product-card-v6 h2 a{text-decoration:none;color:var(--ink)}.card-price-row{min-height:31px}.product-card-v6 .price{font-size:26px}.product-card-v6 .product-actions{display:grid;grid-template-columns:1fr 48px;gap:9px;margin-top:14px}.view-link{min-height:48px;border-radius:999px;background:#f1f3ec;color:var(--green);display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:900}.view-link span{transition:transform .2s}.view-link:hover span{transform:translateX(4px)}.mini-cart{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;text-decoration:none;font-size:18px}.sale-badge{z-index:3}
.related-section{margin:26px 0 38px}.related-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:16px}.related-title h2{margin:0;font-size:30px}.carousel-arrows{display:flex;gap:8px}.carousel-arrows button{width:42px;height:42px;border-radius:50%;border:1px solid #d8e4de;background:#fff;color:var(--green);font-size:18px;cursor:pointer}.related-carousel{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 2px 10px}.related-carousel::-webkit-scrollbar{display:none}.related-card{flex:0 0 260px;scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}.related-card a{text-decoration:none;color:inherit}.related-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.related-card div{padding:13px}.related-card h3{font-size:15px;margin:0 0 5px}.related-card b{font-size:18px;color:var(--green)}
@media(max-width:1050px){.product-grid-v6{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.catalog-head{display:block;padding-top:24px}.catalog-head p{margin-top:8px}.product-grid-v6{grid-template-columns:repeat(2,1fr);gap:12px}.product-card-v6{border-radius:20px}.product-card-v6 .product-info{padding:12px}.product-card-v6 h2{font-size:14px}.product-card-v6 .price{font-size:21px}.product-card-v6 .product-actions{grid-template-columns:1fr 42px}.view-link,.mini-cart{min-height:42px;height:42px}.mini-cart{width:42px}.related-card{flex-basis:72vw}.cart-icon-link{width:43px;height:43px}}
@media(max-width:420px){.product-grid-v6{gap:9px}.product-card-v6 .product-actions{grid-template-columns:1fr}.product-card-v6 .mini-cart{display:none}.view-link{font-size:12px}.product-card-v6 .card-photo img{aspect-ratio:1/1}.product-card-v6 h2{min-height:34px}}
/* V7 approved storefront visual: lifestyle-first cards */
.product-card-v6 .card-photo img{aspect-ratio:1.16/1;object-fit:cover}
.catalog-swatches{display:flex;gap:10px;align-items:center;min-height:30px;margin:8px 0 2px}
.catalog-swatches span{width:25px;height:25px;border-radius:50%;background:var(--sw);border:1px solid rgba(23,60,58,.22);box-shadow:inset 0 0 0 2px rgba(255,255,255,.75)}
.product-card-v6 .product-actions{margin-top:10px}
@media(max-width:760px){.catalog-swatches{gap:7px;min-height:24px}.catalog-swatches span{width:20px;height:20px}.product-card-v6 .card-photo img{aspect-ratio:1/1}}

/* V11 agreed cart cleanup */
.cart-page{max-width:980px;margin:0 auto}.cart-row{grid-template-columns:96px minmax(0,1fr) auto;gap:16px;padding:16px 18px;align-items:center}.cart-row img{width:96px;height:96px}.cart-row>div:nth-child(3){display:none}.cart-row .line-total{font-size:18px;color:var(--green);white-space:nowrap}.cart-remove-btn{margin-top:10px;border:1px solid #efc7c7;background:#fff7f7;color:#a52828;border-radius:10px;padding:8px 11px;font-weight:800;cursor:pointer}.cart-remove-btn:hover{background:#a52828;color:#fff}.mini-cart-price{min-width:92px}.mini-remove{border:1px solid #efc7c7!important;background:#fff7f7!important;color:#a52828!important;border-radius:9px!important;padding:6px 8px!important;width:auto!important;height:auto!important;font-size:11px!important;font-weight:800;display:inline-flex;gap:4px;align-items:center}.mini-remove:hover{background:#a52828!important;color:#fff!important}@media(max-width:560px){.cart-row{grid-template-columns:72px minmax(0,1fr);padding:12px}.cart-row img{width:72px;height:72px}.cart-row .line-total{grid-column:2;text-align:left}.mini-remove span{display:none}}

/* V16 product gallery + social sharing visual fix */
.main-photo-wrap{display:flex;align-items:center;justify-content:center;min-height:0}
.product-main-img{width:100%;height:auto!important;max-height:720px;aspect-ratio:auto!important;object-fit:contain!important;object-position:center;display:block}
.thumb-btn img{width:100%;height:100%;object-fit:contain!important;object-position:center;background:#fff}
/* V17: full uncropped product image + complete thumbnail strip */
.main-photo-wrap{display:flex;align-items:center;justify-content:center;min-height:520px;background:#fff}
.product-main-img{width:100%!important;height:100%!important;max-height:720px!important;object-fit:contain!important;object-position:center!important}
.thumb-btn img{object-fit:contain!important}
@media(max-width:900px){.main-photo-wrap{min-height:0;aspect-ratio:1/1}.product-main-img{max-height:none!important}}


/* V18 cart UX, gallery controls, ad labels, responsive polish */
.shop-ad-placeholder{flex-direction:row;gap:10px}.shop-ad-placeholder b{font-size:11px;font-weight:800;color:#6f827a}.side-ad.shop-ad-placeholder{flex-direction:column;gap:5px}.side-ad.shop-ad-placeholder b{font-size:10px}.shop-center>.shop-ad{width:min(1400px,calc(100vw - 48px));max-width:none;aspect-ratio:1400/114;height:auto;min-height:0;margin-left:50%;transform:translateX(-50%)}.shop-center>.shop-ad img{object-fit:cover}
.gallery-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:48px;height:48px;border-radius:50%;border:1px solid #d9e6e0;background:rgba(255,255,255,.94);color:var(--green);font-size:34px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 28px rgba(23,60,58,.16);transition:transform .18s,background .18s,opacity .18s}.gallery-nav:hover{background:var(--green);color:#fff;transform:translateY(-50%) scale(1.06)}.gallery-prev{left:16px}.gallery-next{right:16px}.buy-btn.added{background:#23845f;transform:scale(.985)}.cart-toast{position:fixed;right:24px;top:100px;z-index:180;max-width:390px;display:flex;gap:12px;align-items:center;padding:15px 18px;border-radius:18px;background:#fff;color:var(--ink);border:1px solid #cfe3d6;box-shadow:0 18px 50px rgba(23,60,58,.2);opacity:0;pointer-events:none;transform:translateY(-12px) scale(.97);transition:.25s}.cart-toast.show{opacity:1;transform:none}.cart-toast-check{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e7f6ed;color:#17724f;font-size:21px;font-weight:900}.cart-toast b,.cart-toast small{display:block}.cart-toast small{margin-top:3px;color:#70817a}.cart-bump{animation:cartBump .45s ease}@keyframes cartBump{50%{transform:scale(1.16) rotate(-5deg)}}
.cart-page{max-width:1180px!important;padding-top:48px}.cart-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:24px}.cart-head h1{font-size:42px;margin:0 0 7px}.cart-head p{margin:0;color:#718078}.continue-shopping{text-decoration:none;color:var(--green);font-weight:900;padding:11px 14px;border:1px solid #d7e4de;border-radius:999px;background:#fff}.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}.cart-items-card,.cart-summary{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 10px 30px rgba(32,61,51,.06)}.cart-items-card{padding:10px}.cart-items-card .cart-row{box-shadow:none;border:0;border-bottom:1px solid #edf1ee;border-radius:0;margin:0;padding:16px}.cart-items-card .cart-row:last-child{border-bottom:0}.cart-summary{padding:24px;position:sticky;top:105px}.cart-summary>span{font-size:13px;color:#718078;font-weight:800}.cart-summary .cart-total{text-align:left;margin:8px 0 20px;font-size:34px}.checkout-btn{width:100%;min-height:52px;border-radius:14px}.cart-summary small{display:block;margin-top:14px;line-height:1.5;color:#718078}.cart-items-card>div>p{padding:35px;text-align:center;color:#718078}
@media(max-width:900px){.shop-center>.shop-ad{width:100%;min-height:0}.gallery-nav{width:42px;height:42px;font-size:29px}.gallery-prev{left:10px}.gallery-next{right:10px}.cart-toast{left:14px;right:14px;top:auto;bottom:calc(84px + env(safe-area-inset-bottom));max-width:none}.cart-layout{grid-template-columns:1fr}.cart-summary{position:static}.cart-head{align-items:flex-start}.cart-page{padding-top:26px}}
@media(max-width:560px){.gallery-nav{width:38px;height:38px;font-size:27px}.zoom-hint{width:38px;height:38px;right:10px;bottom:10px}.buy-row{grid-template-columns:112px 1fr}.buy-btn{padding-left:8px;padding-right:8px;font-size:13px}.delivery-box{display:block}.delivery-box span{display:block;margin-top:4px}.cart-head{display:block}.cart-head h1{font-size:32px}.continue-shopping{display:inline-flex;margin-top:16px}.cart-items-card{padding:5px}.cart-summary{padding:19px}.cart-page{width:94%}.cart-row{grid-template-columns:68px minmax(0,1fr)!important;gap:11px!important}.cart-row img{width:68px!important;height:68px!important}.cart-row .line-total{grid-column:2}.shop-ad-placeholder{font-size:11px}.shop-ad-placeholder b{font-size:10px}}

/* V21 — main-site footer inside shop */
.shop-site-footer{margin-top:34px;border-top:1px solid #e7dfd0;background:#faf8f1;color:#173c3a}
.shop-site-footer .shop-footer-inner{width:min(1360px,94%);margin:auto;padding:34px 0 26px;display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:38px;align-items:start}
.shop-site-footer .follow-title,.shop-site-footer .contact-title{font-weight:900;font-size:18px;margin-bottom:12px}
.shop-site-footer .shop-socials{display:flex;gap:12px}.shop-site-footer .shop-socials a{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;text-decoration:none;color:#fff;font-weight:900;font-size:20px}.shop-site-footer .fb{background:#1877f2}.shop-site-footer .ig{background:#c72d7b}.shop-site-footer .tt{background:#111}
.shop-site-footer .shop-footer-links{display:flex;gap:22px;flex-wrap:wrap}.shop-site-footer .shop-footer-links a,.shop-site-footer .shop-contact a{color:#53625b;text-decoration:none}.shop-site-footer .shop-contact{display:flex;flex-direction:column;gap:10px}.shop-site-footer .shop-contact a{font-weight:800;color:var(--green)}
.shop-site-footer .shop-credit{text-align:center;border-top:1px solid #eee5d7;padding:18px 12px 20px;color:#7a6d5d}.shop-site-footer .shop-credit a{color:#426f5c;font-weight:900;text-decoration:none}
@media(max-width:900px){.shop-site-footer .shop-footer-inner{grid-template-columns:1fr;gap:24px}.shop-center>.shop-ad{width:94vw}.shop-site-footer{padding-bottom:72px}}

/* V22 — keep 1400x114 ad fixed on hover + match main-site footer typography */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Georgian:wght@400;500;600;700&display=swap');
.shop-center>.shop-ad,.shop-center>.shop-ad:hover{transform:translateX(-50%)!important}
.shop-center>.shop-ad:hover{box-shadow:0 8px 22px rgba(23,103,83,.08)}
.shop-site-footer{font-family:'Noto Sans Georgian',sans-serif;color:#2e3c35;background:rgba(255,255,255,.45);border-top:1px solid #eadfca}
.shop-site-footer .shop-footer-inner{width:min(1120px,92%);padding:28px 0;display:flex;justify-content:space-between;gap:30px;align-items:flex-start}
.shop-site-footer .follow-title,.shop-site-footer .contact-title{font-size:18px;font-weight:700;color:#2f493e;margin:0 0 12px}
.shop-site-footer .shop-footer-links{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.shop-site-footer .shop-footer-links a,.shop-site-footer .shop-contact a{font-size:14px;color:#53625b;font-weight:400}
.shop-site-footer .shop-contact{font-size:13px;gap:8px}.shop-site-footer .shop-contact a{color:#4f8069;font-weight:700}
.shop-site-footer .shop-socials{gap:12px;flex-wrap:wrap;margin-top:12px}
.shop-site-footer .shop-credit{font-family:'Noto Sans Georgian',sans-serif;font-size:13px;text-align:center;padding:18px 12px 8px;color:#7a6d5d;border-top:0}
.shop-site-footer .shop-credit a{color:#426f5c;font-weight:800}
@media(max-width:900px){.shop-site-footer .shop-footer-inner{width:min(1120px,92%);flex-direction:column;gap:22px}.shop-site-footer .shop-footer-links{gap:12px}}


/* V27 — SHOP exact 1120 alignment: hero + wide ads + 4-product row */
@media (min-width: 901px){
  .shop-layout{
    grid-template-columns:210px minmax(0,1120px) 210px;
  }
  .shop-center{
    width:1120px;
    max-width:1120px;
    margin:0 auto;
  }
  .shop-hero-rich{
    width:1120px;
    max-width:1120px;
    min-height:390px;
    margin-left:auto;
    margin-right:auto;
  }
  .shop-center>.shop-ad,
  .shop-center>.shop-ad:hover{
    width:1120px!important;
    max-width:1120px!important;
    height:110px!important;
    aspect-ratio:auto!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
  }
  .shop-center>.shop-ad img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
  .product-grid-v6{
    width:1120px;
    max-width:1120px;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px;
    margin-left:auto;
    margin-right:auto;
  }
}
@media (max-width: 1450px) and (min-width: 901px){
  .shop-center{
    width:min(1120px,92vw);
    max-width:min(1120px,92vw);
  }
  .shop-hero-rich,
  .product-grid-v6{
    width:100%;
    max-width:100%;
  }
  .shop-center>.shop-ad,
  .shop-center>.shop-ad:hover{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    aspect-ratio:1120/110!important;
  }
}
@media (max-width:900px){
  .shop-center>.shop-ad,
  .shop-center>.shop-ad:hover{
    width:100%!important;
    height:auto!important;
    aspect-ratio:1120/110!important;
    margin-left:0!important;
    transform:none!important;
  }
}

/* V29 — SHOP header matches main site + perfectly symmetric side ads */
/* Header: same measurements/typography as the main Nateli Tvali header. */
.shop-header{
  background:rgba(255,253,248,.95);
  backdrop-filter:blur(8px);
  border-bottom:1px solid #e5ded1;
}
.shop-header .shop-shell{
  width:min(1120px,92%);
  margin-left:auto;
  margin-right:auto;
}
.shop-nav{
  min-height:78px;
  padding-left:0;
  padding-right:0;
  gap:28px;
  font-family:'Noto Sans Georgian',sans-serif;
}
.shop-brand{
  gap:10px;
  color:#173c3a;
  font-weight:700;
}
.shop-brand img{
  width:58px;
  height:58px;
  border:3px solid #fff;
}
.shop-brand span{font-size:21px;line-height:1.2}
.shop-links{gap:22px;align-items:center}
.shop-links a{
  color:#53625b;
  font-family:'Noto Sans Georgian',sans-serif;
  font-size:14px;
  font-weight:400;
}
.shop-links a.active{
  color:var(--green);
  font-weight:700;
  border-bottom:2px solid var(--green);
  padding-bottom:7px;
}
.cart-icon-link{width:48px;height:48px;flex:0 0 48px}

/* Desktop side advertising columns are mirror images of one another.
   They can never enter the 1120px centre/catalogue area. */
@media (min-width:1601px){
  .shop-layout{
    width:1584px;
    max-width:1584px;
    margin-left:auto;
    margin-right:auto;
    display:grid;
    grid-template-columns:210px 1120px 210px;
    column-gap:22px;
    justify-content:center;
    align-items:start;
  }
  .shop-center{grid-column:2;width:1120px;max-width:1120px;min-width:0}
  .shop-side{width:210px;min-width:210px;max-width:210px;padding-top:38px}
  .shop-side.left{grid-column:1;justify-self:start}
  .shop-side.right{grid-column:3;justify-self:end}
  .shop-side.left .sticky-ads,
  .shop-side.right .sticky-ads{width:210px;display:grid;justify-items:center}
  .shop-side .side-ad{width:200px;min-width:200px;max-width:200px;height:150px;margin-left:auto;margin-right:auto}
}
/* If there is not enough room for 1120 + both ad rails, hide both rails
   together so one side can never sit closer than the other. */
@media (max-width:1600px) and (min-width:901px){
  .shop-layout{grid-template-columns:minmax(0,1120px);width:min(1120px,92vw);justify-content:center}
  .shop-side{display:none!important}
  .shop-center{width:100%;max-width:1120px;margin-left:auto;margin-right:auto}
}
@media(max-width:900px){
  .shop-header .shop-shell{width:94%}
  .shop-nav{min-height:62px;gap:8px}
  .shop-brand img{width:43px;height:43px;border-width:2px}
  .shop-brand span{font-size:16px}
}

/* V31 — restore desktop 200x150 side ads and keep them symmetric */
@media (min-width:1520px){
  .shop-layout{
    width:1520px!important;
    max-width:1520px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    display:grid!important;
    grid-template-columns:200px 1120px 200px!important;
    column-gap:0!important;
    justify-content:center!important;
    align-items:start!important;
  }
  .shop-center{
    grid-column:2!important;
    width:1120px!important;
    max-width:1120px!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .shop-side{
    display:block!important;
    width:200px!important;
    min-width:200px!important;
    max-width:200px!important;
    padding-top:38px!important;
  }
  .shop-side.left{grid-column:1!important;justify-self:start!important}
  .shop-side.right{grid-column:3!important;justify-self:end!important}
  .shop-side .sticky-ads{
    width:200px!important;
    display:grid!important;
    justify-items:center!important;
  }
  .shop-side .side-ad{
    display:block!important;
    width:200px!important;
    min-width:200px!important;
    max-width:200px!important;
    height:150px!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}
@media (max-width:1519px) and (min-width:901px){
  .shop-layout{
    grid-template-columns:minmax(0,1120px)!important;
    width:min(1120px,92vw)!important;
    max-width:min(1120px,92vw)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    justify-content:center!important;
  }
  .shop-side{display:none!important}
  .shop-center{width:100%!important;max-width:1120px!important;margin-left:auto!important;margin-right:auto!important}
}

/* V32 — exact main-site header metrics + centered 200x150 ad labels */
@media (min-width:901px){
  .shop-header .shop-shell{
    width:min(1120px,92%)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .shop-nav{
    min-height:78px!important;
    padding-left:0!important;
    padding-right:0!important;
    gap:28px!important;
    align-items:center!important;
    font-family:'Noto Sans Georgian',sans-serif!important;
  }
  .shop-brand{
    gap:10px!important;
    margin-right:auto!important;
    color:#2e3c35!important;
    font-family:'Noto Sans Georgian',sans-serif!important;
    font-weight:400!important;
  }
  .shop-brand img{
    width:58px!important;
    height:58px!important;
    border-radius:50%!important;
    object-fit:cover!important;
    border:3px solid #fff!important;
  }
  .shop-brand span{
    display:block!important;
    font-size:21px!important;
    line-height:1.2!important;
    font-weight:700!important;
  }
  .shop-links{
    display:flex!important;
    align-items:center!important;
    gap:22px!important;
  }
  .shop-links a{
    font-family:'Noto Sans Georgian',sans-serif!important;
    font-size:14px!important;
    line-height:1.2!important;
    font-weight:400!important;
    color:#53625b!important;
  }
  .shop-links a.active{
    color:#176753!important;
    font-weight:700!important;
    border-bottom:2px solid #176753!important;
    padding-bottom:7px!important;
  }
}

/* Keep every empty 200x150 advertising slot visually centered. */
.shop-side .side-ad.shop-ad-placeholder{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  gap:7px!important;
  padding:14px!important;
  line-height:1.25!important;
}
.shop-side .side-ad.shop-ad-placeholder > *{
  margin:0!important;
  position:static!important;
  transform:none!important;
}
.shop-side .side-ad.shop-ad-placeholder b{
  display:block!important;
  font-size:10px!important;
  line-height:1.2!important;
}

/* V33 performance/sticky cleanup — desktop side ad rails follow scroll reliably. */
@media (min-width:1520px){
  .shop-side{
    position:sticky!important;
    top:96px!important;
    align-self:start!important;
    height:max-content!important;
    padding-top:38px!important;
  }
  .shop-side .sticky-ads{
    position:static!important;
    top:auto!important;
    display:grid!important;
    gap:18px!important;
  }
}
\n\n/* V37 — definitive desktop floating ad rails.\n   Fixed positioning intentionally follows viewport scrolling and is independent\n   from grid/parent overflow or sticky containing-block behavior. */\n@media (min-width:1560px){\n  .shop-side{\n    display:block!important;\n    position:fixed!important;\n    top:120px!important;\n    width:200px!important;\n    min-width:200px!important;\n    max-width:200px!important;\n    height:auto!important;\n    padding:0!important;\n    margin:0!important;\n    z-index:20!important;\n  }\n  .shop-side.left{\n    left:calc(50% - 780px)!important;\n    right:auto!important;\n  }\n  .shop-side.right{\n    right:calc(50% - 780px)!important;\n    left:auto!important;\n  }\n  .shop-side .sticky-ads{\n    position:static!important;\n    width:200px!important;\n    display:grid!important;\n    grid-template-columns:200px!important;\n    gap:18px!important;\n    justify-items:center!important;\n  }\n  .shop-side .side-ad{\n    display:flex!important;\n    width:200px!important;\n    min-width:200px!important;\n    max-width:200px!important;\n    height:150px!important;\n    margin:0!important;\n  }\n}\n@media (max-width:1559px){\n  .shop-side{display:none!important}\n}\n