/* Bounded desktop canvas; the garden remains visible between and outside panels. */
.app-shell{max-width:1560px;width:calc(100% - 64px);grid-template-columns:220px minmax(0,1fr);gap:20px 24px;margin:24px auto}
body:before{filter:none;background-position:center;inset:0;height:100lvh}
.app-shell>.sidebar,.main-panel,.site-footer{background:linear-gradient(130deg,#edf9f3ed,#e4f3f5e8);border:1px solid #ffffffeb;box-shadow:inset 0 1px 0 #fff,0 10px 30px #173e4220}
.app-shell>.sidebar{padding:12px;height:calc(100svh - 48px);max-height:calc(100svh - 48px);overflow:visible;display:flex;flex-direction:column;min-height:0}
.sidebar .side-link{font-size:1.05rem;padding:12px;min-height:52px;gap:10px}.side-promo{flex:1;min-height:230px;max-height:380px;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;overflow:visible;background-position:center}.side-promo p{margin:10px 0;font-size:1.3rem;line-height:1.25}.side-promo>svg{width:40px;height:40px;flex:none}.side-promo small{line-height:1.45}.drawer-service{flex:none}
.main-panel{padding:22px}.content-page{padding:0}.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.product-card{border-radius:18px;padding:10px;min-width:0}.product-card h3{font-size:1rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;align-self:start}.product-card .primary{font-size:1rem;padding:10px 6px}.product-card .product-price{font-size:1.3rem;display:flex;flex-wrap:wrap;align-items:baseline;gap:7px}.product-price del{font-size:.76em;font-weight:400;color:#527073}.product-card .pack-choices,.product-card .card-icons{display:none}.product-card{grid-row:span 4}.product-card>.product-price{grid-row:3}.product-card>.primary,.product-card>.card-open{grid-row:4}.product-image-link{border-radius:12px;overflow:hidden}.product-image-link img{object-fit:cover;object-position:center}.card-open{display:none}
.product-page-layout{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:22px}.product-detail{grid-template-columns:minmax(200px,.85fr) minmax(0,1.15fr);gap:22px}.product-detail h1{font-size:1.55rem;line-height:1.25;margin:8px 0 14px}.detail-photo{border:0;border-radius:16px;max-width:360px}.detail-photo img{object-fit:cover}.detail-meta{font-size:.85rem;overflow-wrap:anywhere}.buy-panel{gap:18px;flex-wrap:wrap;padding:14px;max-width:480px}.buy-panel>.primary{margin-left:0;flex:0 1 auto}.buy-panel .product-price{font-size:1.75rem}.delivery-link{display:flex;align-items:center;gap:8px}.delivery-link svg{width:24px;height:24px;flex:none;vertical-align:middle}.trait-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0}.trait-tile{padding:8px;font-size:.9rem;flex-direction:row;text-align:left;gap:8px;align-items:center;justify-content:flex-start}.trait-tile .trait-art{width:52px;height:52px;padding:0;background:none;border:0;box-shadow:none}.trait-art svg,.trait-tile .trait-art svg{display:block;margin:0!important;width:100%;height:100%;flex:none}.detail-description{padding-top:18px;margin-top:20px}.detail-description h2{font-size:1.3rem}.detail-description .rich-text{line-height:1.7;max-width:68ch}.pack-choices{gap:6px}.pack-choice{flex:0 1 auto;min-width:90px;padding:8px 10px;font-size:.95rem}
.recommendations{border-left:1px solid #99bfc05c;padding-left:18px;align-self:start}.recommendations h2{font-size:1.05rem;margin:0 0 14px}.recommendation{display:grid;gap:6px;margin-bottom:18px;font-size:.95rem;line-height:1.35}.recommendation img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.recommendation span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recommendation strong{font-size:1.1rem}
.category-branch{position:relative}.category-flyout{display:none;position:absolute;left:calc(100% - 2px);top:0;z-index:60;width:260px;padding:14px;background:#f0f8f3;border:1px solid white;border-radius:18px;box-shadow:0 10px 30px #193d4230}.category-branch:hover>.category-flyout,.category-branch:focus-within>.category-flyout{display:grid;gap:6px}.category-flyout a{padding:9px 12px;min-height:44px;border-radius:10px}.category-flyout a:hover{background:#d6ece5}.category-thumb{display:none}.category-tiles{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 16px}.category-tile{padding:8px 14px;min-height:44px;font-size:1rem}.category-tile small{display:none}.visual-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0 24px}.visual-category{background:#ffffff9c;border:1px solid white;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;gap:10px;padding:8px;text-align:center;font-weight:600;line-height:1.3}.visual-category img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.visual-category span{padding:0 4px 8px}.lifecycle-filter{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.lifecycle-filter a{padding:8px 12px;border:1px solid #81b7b8;border-radius:30px;min-height:44px}.lifecycle-filter a[aria-current]{background:#087f8d;color:white}.filter-row{flex-wrap:wrap;gap:10px}.filter-row label{display:flex;align-items:center;gap:8px}.filter-row select{max-width:100%}
.promo-carousel{position:relative;margin:0 0 24px;border-radius:20px;overflow:hidden;border:1px solid white;background:#e2efe0}.promo-slide{position:relative;min-height:260px;padding:28px 30px;isolation:isolate;display:flex;align-items:center}.promo-slide[hidden]{display:none}.promo-slide>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.promo-slide:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f4f8eaf5 0%,#eff7e8c9 38%,transparent 74%);z-index:-1}.promo-copy{max-width:52%;color:#153e3c}.promo-copy h1,.promo-copy h2{font-size:1.8rem;line-height:1.18;margin:0 0 12px}.promo-copy p{line-height:1.5;margin:0 0 15px}.promo-copy a{display:inline-flex;padding:9px 16px;border-radius:25px;background:#087f8d;color:white;font-weight:600;min-height:44px;align-items:center}.promo-caption{font-size:.9rem;font-weight:600}.carousel-controls{display:flex;justify-content:center;gap:6px;padding:7px;background:#f0f8f0c9}.carousel-controls button{min-height:36px;min-width:36px;border:0;border-radius:30px;background:transparent;color:#174b51}.carousel-controls button[aria-pressed=true]{background:#087f8d;color:#fff}.carousel-controls .carousel-pause{margin-left:12px;min-width:75px}.mobile-catalog,.shortcuts{display:none}.footer-links{display:flex;flex-wrap:wrap;gap:10px;width:100%;padding-top:12px;border-top:1px solid #aacbca}.footer-links a,.footer-links span{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:#ffffff80;border-radius:10px;min-height:44px}.site-footer{flex-wrap:wrap}.site-footer nav{flex-wrap:wrap}.sale-note{background:#f8eab8;padding:10px 14px;border-radius:12px;color:#54431d}.mobile-bottom a[hidden]{display:none}.mobile-bottom{grid-template-columns:repeat(3,1fr)}
html[data-theme=night] .main-panel,html[data-theme=night] .app-shell>.sidebar,html[data-theme=night] .site-footer{background:linear-gradient(130deg,#153338f5,#19393ef0);border-color:#487074;box-shadow:inset 0 1px 0 #7eaaaa22,0 10px 30px #0003}
html[data-theme=night] .category-flyout{background:#193b40;border-color:#487074}html[data-theme=night] .category-flyout a:hover,html[data-theme=night] .visual-category,html[data-theme=night] .footer-links a,html[data-theme=night] .footer-links span{background:#24494d;color:#e7f2ed;border-color:#456b6f}html[data-theme=night] .product-price del{color:#abc6c5}html[data-theme=night] .promo-slide:before{background:linear-gradient(90deg,#102d30f7,#183a36cf 45%,#15332b44)}html[data-theme=night] .promo-copy{color:#f2f5e9}html[data-theme=night] .promo-slide>img{filter:brightness(.7)}html[data-theme=night] .carousel-controls{background:#1b3c40}html[data-theme=night] .carousel-controls button{color:#d9eeee}html[data-theme=night] .sale-note{background:#51462a;color:#fff1c0}
@media(max-height:780px) and (min-width:761px){.app-shell>.sidebar{overflow:auto}.side-promo{min-height:210px;flex:none}.side-promo>svg{display:none}.category-flyout{position:static;width:auto}.sidebar .side-link{min-height:46px;padding:8px 12px}}
@media(max-width:1300px){.app-shell{width:calc(100% - 40px);grid-template-columns:200px minmax(0,1fr);gap:18px}.product-page-layout{grid-template-columns:minmax(0,1fr)}.recommendations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;border-left:0;border-top:1px solid #99bfc05c;padding:18px 0 0}.recommendations h2{grid-column:1/-1}.recommendation img{aspect-ratio:4/3}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-detail{grid-template-columns:minmax(190px,.8fr) minmax(0,1fr)}}
@media(max-width:1000px){.app-shell{grid-template-columns:180px minmax(0,1fr);width:calc(100% - 28px);gap:14px}.main-panel{padding:16px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-detail{grid-template-columns:minmax(0,1fr)}.visual-categories{grid-template-columns:repeat(3,minmax(0,1fr))}.promo-slide{padding:24px;min-height:260px}.promo-copy{max-width:65%}.promo-copy h1,.promo-copy h2{font-size:1.5rem}}
@media(max-width:760px){.app-shell{display:block;width:calc(100% - 16px);margin:8px auto}.main-panel{padding:12px;margin-top:12px;border-radius:20px}.header-row{gap:3px}.header-row>.brand{gap:3px}.header-row>.brand span{font-size:clamp(15px,4vw,20px)}.header-row>.brand img{width:20px}.header-row .icon-button,.search-toggle{width:40px;height:44px;min-width:40px}.header-row .header-actions{gap:2px}.search-shell{flex-basis:40px;min-width:40px}.header-row .header-actions #theme-toggle{font-size:24px;order:3}.font-control{order:2}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}.product-card{padding:7px;row-gap:8px;border-radius:16px;grid-row:span 4}.product-card>h3{font-size:.94rem;line-height:1.3;-webkit-line-clamp:2;min-height:2.6em}.product-card>.product-price{font-size:1.1rem;text-align:left;justify-content:flex-start;padding:0}.product-card>.primary{display:none}.product-card>.card-open{display:flex;justify-content:center;align-items:center;min-height:44px;border-radius:11px;padding:6px 3px;background:#087f8d;color:white;font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden}.product-card>.product-image-link{aspect-ratio:4/5}.sample-label{font-size:.65rem;padding:3px 5px;left:5px;top:5px}.section-heading{gap:8px;align-items:center}.section-heading h2{font-size:1.2rem}.section-heading .text-link{font-size:.9rem}.product-detail h1{font-size:1.4rem}.detail-photo{max-width:340px}.detail-description{padding-top:14px}.product-page-layout{gap:12px}.recommendations{grid-template-columns:repeat(2,minmax(0,1fr))}.recommendation:last-child{display:none}.buy-panel{gap:12px}.trait-tile{font-size:.9rem}.pack-choice{min-width:88px}.visual-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.visual-category{font-size:.95rem}.lifecycle-filter{gap:5px}.lifecycle-filter a{font-size:.88rem;padding:8px}.filter-row{font-size:.9rem}.filter-row label{width:100%}.filter-row select{flex:1;min-width:0}.category-tiles{gap:6px}.category-tile{font-size:.9rem;padding:7px 10px}.promo-slide{min-height:240px;padding:18px}.promo-copy{max-width:80%}.promo-copy h1,.promo-copy h2{font-size:1.4rem}.promo-copy p{font-size:.95rem}.promo-slide:before{background:linear-gradient(90deg,#f4f8eaf5,#eff7e8d9 55%,#eff7e845)}.promo-carousel{margin-bottom:18px}.carousel-controls{padding:4px}.app-shell>.sidebar{width:min(94vw,420px);height:100svh;max-height:100svh;padding:16px;overflow:auto;z-index:100;display:block}.sidebar .side-promo{display:none}.category-flyout{display:none!important}.category-thumb{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.sidebar #category-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sidebar #category-nav .side-link{display:flex;flex-direction:column;align-items:stretch;padding:8px;gap:8px;font-size:1rem;text-align:center;border-radius:16px}.sidebar #category-nav .side-link svg{display:none}.sidebar .drawer-heading{margin-bottom:15px}.drawer-service{margin-top:18px}.mobile-bottom{display:grid;padding:4px 6px max(4px,env(safe-area-inset-bottom));min-height:62px}.mobile-bottom a{gap:1px;min-width:0;padding:3px;font-size:14px}.mobile-bottom svg{width:25px;height:25px}.mobile-bottom span{font-size:14px;line-height:20px;white-space:nowrap}.site-footer{margin-bottom:85px}.footer-tagline{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.promo-slide{animation:none}}
.sidebar .category-flyout{display:none}
@media(min-width:761px){.app-shell>.sidebar{z-index:60}}
