.template-page{min-height:100vh;display:flex;flex-direction:column}header{padding:1rem 0;position:relative;z-index:10}header nav{display:flex;justify-content:space-between;align-items:center}header h1{font-size:1.5rem;margin:0}.nav-logo{height:72px;width:auto;max-width:180px;object-fit:contain;position:relative;top:8px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1));transition:transform .2s ease}.nav-logo:hover{transform:scale(1.02)}header ul{display:flex;gap:2rem;list-style:none;margin:0;padding:0}header a{text-decoration:none;font-weight:500;transition:opacity .2s}header a:hover{opacity:.7}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.hero{padding:4rem 0;text-align:center}.hero h2{font-size:2.5rem;margin:0 0 1rem}.hero p{font-size:1.25rem;margin:0 0 2rem}.hero button{padding:.75rem 2rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s}.hero button:hover{transform:translateY(-2px)}.home-hero{position:relative;min-height:400px;display:flex;align-items:center;justify-content:space-between;padding:4rem 2rem;overflow:hidden}.home-hero-overlay{position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.home-hero-content{position:relative;z-index:1;max-width:550px;color:white}.home-hero-content h2{font-size:3.5rem;margin:0 0 1rem;line-height:1.1}.home-hero-content p{font-size:1.25rem;margin:0 0 2rem;opacity:.9;line-height:1.6}.home-hero-buttons{display:flex;gap:1rem}.home-hero-buttons button{padding:1rem 2rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,opacity .2s}.home-hero-buttons button:hover{transform:translateY(-2px);opacity:.9}.home-hero-image{position:relative;z-index:1}.banner-carousel{justify-content:flex-start}.banner-carousel__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;background:rgba(255,255,255,.18);border:none;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .2s,transform .2s}.banner-carousel__arrow:hover{background:rgba(255,255,255,.32)}.banner-carousel__arrow--prev{left:1.25rem}.banner-carousel__arrow--next{right:1.25rem}.banner-carousel__dots{position:absolute;bottom:1.25rem;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:2}.banner-carousel__dot{width:10px;height:10px;border-radius:50%;border:2px solid rgba(255,255,255,.7);background:transparent;cursor:pointer;padding:0;transition:background .2s,transform .15s}.banner-carousel__dot.active{background:#fff;transform:scale(1.2)}.promo-hero{position:relative;width:100%;min-height:600px;display:flex;align-items:center;overflow:hidden;padding:3rem 0}.promo-hero-overlay{position:absolute;inset:0;opacity:1}.promo-hero-container{position:relative;z-index:1}.promo-hero-content{max-width:640px;color:white}.promo-hero-badge{display:inline-flex;align-items:center;font-weight:800;font-size:.85rem;padding:.45rem .75rem;border-radius:999px;margin-bottom:.9rem;box-shadow:0 10px 25px rgba(0,0,0,.18)}.promo-hero-title{margin:0 0 .6rem;font-size:2.4rem;line-height:1.12;letter-spacing:-.02em}.promo-hero-subtitle{margin:0 0 1.35rem;font-size:1.1rem;opacity:.95;line-height:1.55}.promo-hero-actions{display:flex;gap:.75rem;flex-wrap:wrap}.promo-hero-btn{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 1.25rem;border-radius:.9rem;font-weight:800;text-decoration:none;transition:transform .15s ease,opacity .15s ease}.promo-hero-btn:hover{transform:translateY(-2px);opacity:.95}.promo-carousel-controls{position:absolute;inset:0;pointer-events:none;z-index:2}.promo-carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:999px;border:1px solid rgba(0,0,0,.15);background:rgba(255,255,255,.82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto;transition:transform .15s ease,opacity .15s ease;opacity:.95;color:rgba(0,0,0,.8)}.promo-carousel-btn:hover{transform:translateY(-50%) scale(1.03);opacity:1}.promo-carousel-btn.prev{left:16px}.promo-carousel-btn.next{right:16px}.promo-carousel-dots{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:8px;pointer-events:auto}.promo-carousel-dot{width:10px;height:10px;border-radius:999px;border:1px solid rgba(0,0,0,.25);background:rgba(255,255,255,.75);cursor:pointer}.promo-carousel-dot.active{background:rgba(255,255,255,1)}.promo-hero--bold .promo-hero-content{max-width:920px;text-align:center;margin:0 auto}.promo-hero--bold .promo-hero-title{font-size:3rem;letter-spacing:.02em;text-transform:uppercase}.promo-hero--elegant .promo-hero-content{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:1.25rem;padding:1.75rem;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.promo-hero--artisan .promo-hero-badge{border:2px dashed rgba(255,255,255,.7)}.promo-hero--retro .promo-hero-title{letter-spacing:.01em}.promo-hero--playful .promo-hero-title{letter-spacing:-.01em}.hero-emoji{font-size:15rem;filter:drop-shadow(0 20px 40px rgba(0,0,0,.3));animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.home-categories{padding:4rem 0}.home-categories h3{font-size:2rem;margin:0 0 2rem;text-align:center}.categories-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.5rem;gap:1.5rem}.category-card{display:flex;flex-direction:column;align-items:center;padding:2rem 1.5rem;border:1px solid;border-radius:1rem;cursor:pointer;transition:transform .2s,box-shadow .2s;background:none}.category-card:hover{transform:translateY(-4px);box-shadow:0 10px 30px rgba(0,0,0,.1)}.category-icon{font-size:3.5rem;margin-bottom:1rem}.category-name{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.category-desc{font-size:.9rem}.home-carousel-section{padding:4rem 0}.carousel-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.carousel-header h3{font-size:1.75rem;margin:0 0 .5rem}.carousel-header p{margin:0;font-size:1rem}.carousel-nav{display:flex;gap:.5rem}.carousel-nav button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid;border-radius:50%;cursor:pointer;transition:all .2s}.carousel-nav button:hover{opacity:.8}.home-carousel{display:flex;gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:.5rem}.home-carousel::-webkit-scrollbar{display:none}.home-product-card{flex:0 0 260px;border:1px solid;border-radius:1rem;padding:1.5rem;scroll-snap-align:start;transition:transform .2s;position:relative;display:flex;flex-direction:column}.home-product-card:hover{transform:translateY(-4px)}.product-badge{position:absolute;top:1rem;left:1rem;padding:.35rem .75rem;border-radius:.5rem;font-size:.75rem;font-weight:600;text-transform:uppercase}.home-product-image{font-size:5rem;text-align:center;margin:1rem 0 1.5rem;position:relative}.home-product-sale-badge{position:absolute;top:0;right:0;padding:.25rem .5rem;border-radius:.25rem;font-size:.7rem;font-weight:700}.home-product-info{flex:1 1;text-align:center}.home-product-info h4{margin:0 0 .5rem;font-size:1.1rem;line-height:1.3}.home-product-cannabinoids{display:flex;justify-content:center;gap:.75rem;font-size:.75rem;font-weight:600;margin-bottom:.5rem}.home-product-price{font-size:1.25rem;font-weight:600;margin:0 0 1rem}.home-product-card button{width:100%;padding:.75rem;border:none;border-radius:.5rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s;margin-top:auto}.home-product-card button:hover{opacity:.9}.home-reviews{padding:4rem 0}.reviews-header{text-align:center;margin-bottom:3rem}.reviews-header h3{font-size:2rem;margin:0 0 .5rem}.reviews-header p{margin:0;font-size:1.1rem}.reviews-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.5rem;gap:1.5rem}.review-card{border:1px solid;border-radius:1rem;padding:1.5rem;display:flex;flex-direction:column}.review-stars{font-size:1.25rem;margin-bottom:1rem;letter-spacing:2px}.review-text{flex:1 1;font-size:.95rem;line-height:1.6;margin:0 0 1.5rem;font-style:italic}.review-author{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid rgba(0,0,0,.08)}.review-name{font-weight:600;font-size:.9rem}.review-date{font-size:.8rem}.home-cta{position:relative;padding:5rem 2rem;text-align:center;overflow:hidden}.home-cta-overlay{position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.home-cta-content{position:relative;z-index:1;max-width:600px;margin:0 auto;color:white}.cta-emoji{font-size:5rem;display:block;margin-bottom:1.5rem}.home-cta-content h3{font-size:2.5rem;margin:0 0 1rem}.home-cta-content p{font-size:1.15rem;margin:0 0 2rem;opacity:.9;line-height:1.6}.home-cta-content button{padding:1rem 2.5rem;border:none;border-radius:.5rem;font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .2s}.home-cta-content button:hover{transform:translateY(-2px)}.cta-split{display:flex;min-height:350px}.cta-split-image{flex:1 1;background-size:cover;background-position:50%;display:flex;align-items:center;justify-content:center;min-height:300px}.cta-split-image .cta-emoji{font-size:5rem}.cta-split-content{flex:1 1;display:flex;flex-direction:column;justify-content:center;padding:3rem 4rem}.cta-split-content h3{font-size:2rem;margin:0 0 1rem}.cta-split-content p{font-size:1.05rem;line-height:1.6;margin:0 0 2rem}.cta-split-content button{padding:.9rem 2rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s;align-self:flex-start}.cta-split-content button:hover{transform:translateY(-2px)}.cta-card-wrapper{padding:3rem 2rem;display:flex;justify-content:center}.cta-card{max-width:540px;width:100%;padding:3rem;border-radius:1rem;border:1px solid;box-shadow:0 4px 24px rgba(0,0,0,.08);text-align:center}.cta-card h3{font-size:1.75rem;margin:0 0 .75rem}.cta-card p{font-size:1.05rem;line-height:1.6;margin:0 0 1.5rem}.cta-card button{padding:.9rem 2rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s}.cta-card button:hover{transform:translateY(-2px)}.cta-minimal{padding:3rem 2rem;text-align:center;max-width:600px;margin:0 auto}.cta-minimal h3{font-size:2rem;margin:0 0 .75rem}.cta-minimal p{font-size:1.05rem;line-height:1.6;margin:0 0 1.5rem}.cta-minimal button{padding:.9rem 2rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s}.cta-minimal button:hover{transform:translateY(-2px)}.cta-banner-stats .home-cta-content{max-width:800px}.cta-stats-row{display:flex;justify-content:center;gap:3rem;margin-top:2.5rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.2)}.cta-stat{text-align:center;color:white}.cta-stat-value{display:block;font-size:2rem;font-weight:700;line-height:1.2}.cta-stat-label{display:block;font-size:.85rem;opacity:.8;margin-top:.25rem}@media (max-width:1024px){.home-hero{flex-direction:column;text-align:center;min-height:auto;padding:3rem 1.5rem}.home-hero-content{max-width:100%;margin-bottom:2rem}.home-hero-content h2{font-size:2.5rem}.home-hero-buttons{justify-content:center}.hero-emoji{font-size:10rem}.categories-grid,.reviews-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.home-hero-content h2{font-size:2rem}.home-hero-buttons{flex-direction:column}.home-hero-buttons button{width:100%}.hero-emoji{font-size:8rem}.categories-grid{grid-template-columns:1fr 1fr;gap:1rem}.category-card{padding:1.5rem 1rem}.category-icon{font-size:2.5rem}.reviews-grid{grid-template-columns:1fr}.home-cta-content h3{font-size:1.75rem}.cta-emoji{font-size:4rem}.cta-split{flex-direction:column}.cta-split-image{min-height:200px}.cta-split-content{padding:2rem 1.5rem}.cta-stats-row{gap:1.5rem;flex-wrap:wrap}.cta-stat-value{font-size:1.5rem}}.featured,.products-listing{padding:3rem 0;flex:1 1}.featured h3,.listing-header h2{font-size:2rem;margin:0 0 2rem}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:1.5rem;gap:1.5rem;align-items:start;align-content:start;min-width:0;overflow:hidden}.products-grid .product-card{max-width:320px}.products-grid.products-list .product-card{max-width:none}.product-card{border:1px solid;border-radius:.75rem;padding:1.5rem;transition:transform .2s;display:flex;flex-direction:column;min-height:400px}.product-card:hover{transform:translateY(-4px)}.product-image{font-size:4rem;text-align:center;margin-bottom:1rem;height:180px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:.5rem}.product-image img{width:100%;height:100%;object-fit:cover;border-radius:.5rem}.product-card h4{margin:.5rem 0;font-size:1.1rem;height:2.6em;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.product-card p{font-size:1.25rem;font-weight:600;margin:.5rem 0}.product-card button{width:100%;padding:.6rem;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;margin-top:.5rem;transition:opacity .2s}.product-card button:hover{opacity:.9}.product-cannabinoids{display:flex;gap:.5rem;margin:.5rem 0;flex-wrap:wrap;min-height:1.6rem}.cbd-badge,.thc-badge{padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600}.listing-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.listing-header h2{margin:0 0 .25rem}.view-toggle{display:flex;gap:.5rem}.view-toggle button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid;border-radius:.5rem;cursor:pointer;transition:all .2s}.view-toggle button:hover{opacity:.85}.filter-toggle-mobile{display:none;align-items:center;gap:6px;padding:8px 14px;border:2px solid;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;white-space:nowrap}.products-layout{display:grid;grid-template-columns:260px 1fr;grid-gap:2rem;gap:2rem;align-items:start}.products-layout.products-layout-reverse{grid-template-columns:1fr 260px}.products-layout.products-layout-reverse .filters-sidebar{order:2}.products-layout.products-layout-reverse .products-grid{order:1}.products-layout.products-layout-top{display:block}.products-layout.products-layout-top .filters-sidebar.filters-horizontal{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding:1rem;position:static;top:auto}.products-layout.products-layout-top .filters-sidebar.filters-horizontal .filter-section{flex:1 1;min-width:180px}.products-layout.products-layout-full{display:block}.filters-sidebar{border:1px solid;border-radius:.75rem;padding:1.5rem;height:-moz-fit-content;height:fit-content;position:-webkit-sticky;position:sticky;top:1rem}.filter-section{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.08)}.filter-section:last-of-type{border-bottom:none;margin-bottom:1rem;padding-bottom:0}.filter-section h4,.filter-section-header{margin:0 0 .75rem;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.filter-section-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0;background:none;border:none;cursor:pointer;text-align:left}.filter-section-header:hover{opacity:.7}.filter-section-header .chevron{transition:transform .2s ease}.filter-section.collapsed .filter-section-header{margin-bottom:0}.filter-section.collapsed .filter-section-header .chevron{transform:rotate(-90deg)}.filter-section-content{animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.show-more-btn{background:none;border:none;padding:.5rem 0;font-size:.85rem;font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.show-more-btn:hover{opacity:.7}.filter-search-input{width:100%;padding:.45rem .6rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;margin-bottom:.5rem;background:transparent;box-sizing:border-box}.filter-search-input:focus{outline:none;border-color:#888}.filter-brand-scroll{max-height:240px;overflow-y:auto}.filter-checkbox{display:flex;align-items:center;gap:.5rem;padding:.4rem 0;cursor:pointer;font-size:.95rem}.filter-checkbox input{width:16px;height:16px;cursor:pointer}.filter-checkbox .capitalize{text-transform:capitalize}.price-range{padding:.5rem 0}.price-range input[type=range]{width:100%;height:6px;border-radius:3px;cursor:pointer}.price-labels{display:flex;justify-content:space-between;margin-top:.5rem;font-size:.85rem}.clear-filters{width:100%;padding:.6rem;background:transparent;border:1px solid;border-radius:.5rem;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.clear-filters:hover{opacity:.8}.new-badge,.sale-badge{position:absolute;top:.75rem;right:.75rem;padding:.25rem .6rem;border-radius:.25rem;font-size:.7rem;font-weight:700;text-transform:uppercase}.product-card{position:relative}.product-meta{font-size:.85rem;margin:.25rem 0 .5rem!important;height:1.3em;line-height:1.3;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.no-products{grid-column:1/-1;text-align:center;padding:3rem;font-size:1.1rem}.product-info{display:flex;flex-direction:column;flex:1 1}.product-price{font-size:1.25rem;font-weight:600;margin:.5rem 0}.product-price-list{font-size:1.5rem;font-weight:600;margin:0;white-space:nowrap}.products-list{grid-template-columns:1fr!important;gap:.75rem}.products-list .product-card{display:flex!important;flex-direction:row!important;align-items:center;padding:.75rem 1rem;gap:1rem;min-height:auto!important;max-width:none!important;width:100%;overflow:hidden;box-sizing:border-box}.products-list .product-image{width:70px!important;height:70px!important;min-width:70px;font-size:2rem;margin-bottom:0!important;flex-shrink:0;border-radius:.5rem;overflow:hidden}.products-list .product-info{flex:1 1;gap:.15rem;min-width:0;display:flex;flex-direction:column}.products-list .product-info h4{margin:.25rem 0!important;font-size:.95rem;height:auto;-webkit-line-clamp:1;white-space:nowrap;text-overflow:ellipsis}.products-list .product-badges{margin-bottom:.25rem}.products-list .category-badge,.products-list .flower-type-badge{width:-moz-fit-content;width:fit-content;font-size:.7rem;padding:.15rem .5rem}.products-list .product-meta{margin:0!important;font-size:.8rem;height:auto}.products-list .product-cannabinoids{display:flex;flex-direction:row!important;gap:.5rem;margin:.25rem 0!important}.products-list .product-cannabinoids span{font-size:.7rem;padding:.15rem .4rem}.products-list .product-price-list{font-size:1.1rem;font-weight:600;margin:0;white-space:nowrap;text-align:right;flex-shrink:0}.products-list .product-actions{display:flex!important;flex-direction:row!important;margin-top:0!important;gap:.5rem;flex-shrink:1;min-width:0}.products-list .product-actions button{width:auto!important;padding:.5rem .75rem;font-size:.8rem;white-space:nowrap;margin-top:0!important;overflow:hidden;text-overflow:ellipsis}.products-list .new-badge,.products-list .sale-badge{top:50%;transform:translateY(-50%);left:.5rem;right:auto;font-size:.65rem;padding:.15rem .4rem}.filters select{padding:.5rem 1rem;border:1px solid;border-radius:.5rem;font-size:.95rem}.product-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem;min-height:1.75rem}.category-badge{display:inline-flex;align-items:center;padding:.3rem .75rem;font-weight:600;margin-bottom:0;line-height:1}.category-badge,.flower-type-badge{border-radius:1rem;font-size:.75rem;text-transform:uppercase}.flower-type-badge{display:inline-block;padding:.25rem .75rem;font-weight:700}.product-actions{display:flex;gap:.5rem;margin-top:auto;padding-top:1rem}.product-actions button{flex:1 1}.product-details{padding:3rem 0;flex:1 1}.categories-nav ul{scrollbar-width:thin}.categories-nav ul::-webkit-scrollbar{height:4px}.categories-nav ul::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:2px}.categories-nav a:hover{opacity:.8}.breadcrumb a:hover{text-decoration:underline!important;opacity:.8}.details-layout{display:grid;grid-template-columns:1fr 1fr;grid-gap:3rem;gap:3rem;align-items:start}.details-layout-reverse .product-gallery{order:1}.details-layout-reverse .product-info{order:0}.details-layout-stacked{grid-template-columns:1fr}.details-layout-stacked .product-gallery{max-width:600px;margin:0 auto}.product-gallery{display:flex;flex-direction:column;gap:1rem}.product-image-large{font-size:10rem;text-align:center;padding:2rem;border:1px solid;border-radius:.75rem;min-height:300px;display:flex;align-items:center;justify-content:center}.product-thumbnails{display:flex;gap:.75rem}.thumbnail{width:72px;height:72px;border:2px solid;border-radius:.5rem;font-size:2.5rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.thumbnail:hover{transform:scale(1.05)}.thumbnail.active{border-width:3px}.image-zoom-hint{position:absolute;bottom:1rem;right:1rem;background:rgba(0,0,0,.6);color:white;padding:.5rem;border-radius:50%;opacity:0;transition:opacity .2s;pointer-events:none}.product-image-large{position:relative}.product-image-large:hover .image-zoom-hint{opacity:1}.image-lightbox-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:2rem}.lightbox-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:white;cursor:pointer;padding:.5rem;opacity:.8;transition:opacity .2s;z-index:10001}.lightbox-close:hover{opacity:1}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.1);border:none;color:white;cursor:pointer;padding:1rem;border-radius:50%;opacity:.7;transition:all .2s;z-index:10001}.lightbox-nav:hover{opacity:1;background:rgba(255,255,255,.2)}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}.lightbox-content{max-width:90vw;max-height:80vh;display:flex;align-items:center;justify-content:center}.lightbox-content img{max-width:100%;max-height:80vh;object-fit:contain;border-radius:.5rem}.lightbox-counter{bottom:5rem;font-size:.9rem;opacity:.8}.lightbox-counter,.lightbox-thumbnails{position:absolute;left:50%;transform:translateX(-50%)}.lightbox-thumbnails{bottom:1rem;display:flex;gap:.5rem;padding:.5rem;background:rgba(0,0,0,.5);border-radius:.5rem;max-width:90vw;overflow-x:auto}.lightbox-thumb{width:50px;height:50px;border:2px solid transparent;border-radius:.25rem;cursor:pointer;padding:0;background:transparent;opacity:.6;transition:all .2s;flex-shrink:0}.lightbox-thumb:hover{opacity:.9}.lightbox-thumb.active{border-color:white;opacity:1}.lightbox-thumb img{width:100%;height:100%;object-fit:cover;border-radius:.15rem}@media (max-width:768px){.lightbox-nav{padding:.75rem}.lightbox-nav svg{width:24px;height:24px}.lightbox-thumbnails{gap:.25rem}.lightbox-thumb{width:40px;height:40px}}.product-info h2{margin:0 0 1rem;font-size:2rem}.product-info>p{line-height:1.6;margin-bottom:2rem}.cannabinoid-info{display:flex;align-items:center;gap:1.5rem;padding:1rem 1.5rem;border:1px solid;border-radius:.5rem;margin-bottom:2rem}.cannabinoid-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.cannabinoid-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.cannabinoid-value{font-size:1.25rem;font-weight:700}.cannabinoid-divider{width:1px;height:40px}.variations-section{margin-bottom:2rem}.variations-section h3{margin:0 0 1rem}.variations-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem}.variation-card{border:2px solid;border-radius:.5rem;padding:1rem;text-align:center;cursor:pointer;transition:transform .2s}.variation-card:hover{transform:scale(1.05)}.variation-size{font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.variation-weight{font-size:.9rem;margin-bottom:.5rem}.variation-price{font-size:1.25rem;font-weight:600;margin-bottom:.25rem}.variation-stock{font-size:.8rem}.variation-card.selected{transform:scale(1.02)}.product-details-grid .detail-item{display:flex;flex-direction:column;gap:.25rem}.product-header-info{margin-bottom:.5rem}.product-header-info .product-brand{font-size:.9rem;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:.5rem}.product-header-info h2{margin-bottom:.75rem!important}.product-header-info .category-badge{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.8rem;font-weight:500}.quantity-section{margin-bottom:2rem}.quantity-section h3{margin:0 0 .75rem}.quantity-section input{width:100px;padding:.5rem;border:1px solid;border-radius:.5rem;font-size:1rem}.add-to-cart-btn{width:100%;padding:1rem;border:none;border-radius:.5rem;font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .2s}.add-to-cart-btn:hover{transform:translateY(-2px)}.product-tabs-section{padding:2rem 0 3rem}.product-tabs-nav{display:flex;gap:0;margin-bottom:2rem}.product-tab-btn{padding:1rem 1.5rem;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:all .2s;white-space:nowrap;margin-bottom:-2px}.product-tab-btn:hover{opacity:.8}.product-tab-btn.active{border-bottom-width:3px;border-bottom-style:solid}.product-tab-content{min-height:200px}.tab-pane{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.description-tab p{max-width:900px}.specs-list{max-width:700px}.spec-row{display:grid;grid-template-columns:200px 40px 1fr;align-items:center;padding:1rem 0;grid-gap:1rem;gap:1rem}.spec-label{font-weight:500}.spec-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:rgba(0,0,0,.05);font-size:.75rem}.spec-value{font-weight:400}.availability-grid{display:flex;flex-direction:column;gap:.75rem;max-width:500px}.availability-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-radius:.5rem;border:1px solid}.availability-details{display:flex;align-items:center;gap:1.5rem}.availability-price{font-weight:600;font-size:1.1rem}.availability-stock{font-size:.9rem;font-weight:500}.review-form{padding:2rem;border-radius:.75rem;border:1px solid;max-width:700px}.review-form .form-group{margin-bottom:1.25rem}.review-form label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.9rem}.review-form input[type=email],.review-form input[type=text],.review-form textarea{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid;border-radius:.375rem;font-family:inherit;box-sizing:border-box}.review-form textarea{resize:vertical;min-height:120px}.review-form .form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.star-rating{display:flex;gap:.25rem}.star-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:0;transition:transform .1s}.star-btn:hover{transform:scale(1.2)}.checkbox-group{display:flex;align-items:flex-start;gap:.5rem}.checkbox-group input[type=checkbox]{margin-top:.25rem}.checkbox-group label{margin-bottom:0;font-weight:400;font-size:.85rem}.submit-review-btn{padding:.875rem 2rem;font-size:.9rem;font-weight:600;border:none;border-radius:.375rem;cursor:pointer;transition:all .2s;text-transform:uppercase}.submit-review-btn:hover{opacity:.9;transform:translateY(-1px)}@media (max-width:768px){.product-tabs-nav{gap:0}.product-tab-btn{padding:.75rem 1rem;font-size:.8rem}.spec-row{grid-template-columns:1fr 30px 1fr;font-size:.9rem}.review-form .form-row{grid-template-columns:1fr}.review-form{padding:1.5rem}}.related-products{padding:3rem 0}.related-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.related-header h3{margin:0;font-size:1.5rem}.carousel-controls{display:flex;gap:.5rem}.carousel-controls button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid;border-radius:50%;cursor:pointer;transition:all .2s}.carousel-controls button:hover{opacity:.8}.carousel-container{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:.5rem}.carousel-container::-webkit-scrollbar{display:none}.carousel-container .product-card{flex:0 0 280px;min-height:auto;scroll-snap-align:start}.carousel-card{flex:0 0 200px;border:1px solid;border-radius:.75rem;padding:1rem;scroll-snap-align:start;transition:transform .2s;display:flex;flex-direction:column}.carousel-card:hover{transform:translateY(-4px)}.carousel-card-image{font-size:3rem;text-align:center;margin-bottom:.75rem}.carousel-card .category-badge{margin-bottom:.5rem}.carousel-card h4{margin:.5rem 0;font-size:.95rem;line-height:1.3}.carousel-card>p{font-size:1.1rem;font-weight:600;margin:.5rem 0}.carousel-card a.carousel-card-button,.carousel-card button{width:100%;padding:.5rem;border:none;border-radius:.5rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:opacity .2s;margin-top:auto}.carousel-card a.carousel-card-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.carousel-card a.carousel-card-button:hover,.carousel-card button:hover{opacity:.9}.cart-page{padding:3rem 0;flex:1 1}.cart-page h2{margin:0 0 2rem;font-size:2rem}.cart-layout{display:grid;grid-template-columns:2fr 1fr;grid-gap:2rem;gap:2rem}.cart-layout-reverse{grid-template-columns:1fr 2fr}.cart-layout-reverse .cart-summary{order:-1}.cart-items{display:flex;flex-direction:column;gap:1rem}.cart-item{display:grid;grid-template-columns:80px 1fr auto auto auto;grid-gap:1rem;gap:1rem;align-items:center;padding:1rem;border:1px solid;border-radius:.75rem}.item-image{font-size:3rem;text-align:center}.item-details h4{margin:0 0 .25rem}.item-details p{margin:0;font-size:.9rem}.item-quantity input{width:60px;padding:.5rem;border:1px solid;border-radius:.5rem;text-align:center}.item-price{font-size:1.25rem;font-weight:600}.remove-btn{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:.5rem;transition:opacity .2s}.remove-btn:hover{opacity:.7}.cart-summary{border:1px solid;border-radius:.75rem;padding:1.5rem;height:-moz-fit-content;height:fit-content;position:-webkit-sticky;position:sticky;top:24px}.cart-summary h3{margin:0 0 1.5rem}.summary-row{display:flex;justify-content:space-between;margin-bottom:1rem}.summary-row.total{padding-top:1rem;border-top:1px solid;font-size:1.25rem;font-weight:600}.checkout-btn{width:100%;padding:1rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;margin-top:1rem;transition:transform .2s}.checkout-btn:hover{transform:translateY(-2px)}.checkout-page{padding:2rem 0 3rem;flex:1 1}.checkout-page h2{margin:0 0 1.5rem;font-size:2rem}.checkout-login-prompt{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border:1px solid;border-radius:.75rem;margin-bottom:2rem}.login-prompt-content{display:flex;align-items:center;gap:1rem}.login-icon{font-size:1.5rem}.checkout-login-prompt button{padding:.6rem 1.5rem;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;white-space:nowrap}.checkout-layout{display:grid;grid-template-columns:1fr 380px;grid-gap:2rem;gap:2rem;align-items:start}.checkout-layout.checkout-layout-reverse{grid-template-columns:380px 1fr}.checkout-layout.checkout-layout-reverse .checkout-forms{order:2}.checkout-layout.checkout-layout-reverse .checkout-summary{order:1}.checkout-forms{display:flex;flex-direction:column;gap:1.5rem}.checkout-section{border:1px solid;border-radius:.75rem;padding:1.5rem}.checkout-section h3{margin:0 0 1.25rem;font-size:1.1rem;display:flex;align-items:center;gap:.75rem}.section-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:.85rem;font-weight:600}.order-type-options{display:flex;flex-direction:column;gap:.75rem}.order-type-option{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid;border-radius:.5rem;cursor:pointer;transition:all .2s;text-align:left;width:100%}.order-type-option:hover{opacity:.9}.option-icon{font-size:1.5rem}.option-info{flex:1 1;display:flex;flex-direction:column;gap:.2rem}.option-name{font-weight:500}.option-desc{font-size:.85rem}.option-fee{font-weight:600;font-size:.9rem}.pickup-location{margin-top:1rem;padding-top:1rem;border-top:1px solid}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.form-grid.three-col{grid-template-columns:1fr 1fr 1fr}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group.full-width{grid-column:1/-1}.form-group label{font-size:.9rem}.form-group input{padding:.75rem 1rem}.form-group input:focus{outline:none;border-width:2px}.checkout-section h4{margin:0 0 1rem;font-size:1rem}.payment-options{display:flex;gap:.75rem}.payment-option{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:2px solid;border-radius:.5rem;cursor:pointer;transition:all .2s}.payment-option:hover{opacity:.9}.payment-icon{font-size:1.75rem}.payment-form{margin-top:1.25rem;display:flex;flex-direction:column;gap:1rem}.payment-info{margin-top:1.25rem;padding:1rem;border:1px solid;border-radius:.5rem}.checkout-summary{border:1px solid;border-radius:.75rem;padding:1.5rem;position:-webkit-sticky;position:sticky;top:2rem}.checkout-summary h3{margin:0 0 1.25rem;font-size:1.1rem}.summary-items{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.summary-item{display:flex;align-items:center;gap:.75rem}.summary-item .item-image{font-size:1.5rem}.summary-item .item-info{flex:1 1;display:flex;flex-direction:column;gap:.1rem}.summary-divider{border:none;border-top:1px solid;margin:1rem 0}.checkout-summary .summary-row{display:flex;justify-content:space-between;margin-bottom:.5rem}.checkout-summary .summary-row.total{margin-top:.5rem;margin-bottom:0}.place-order-btn{width:100%;padding:1rem;border:none;border-radius:.5rem;font-size:1.1rem;font-weight:600;cursor:pointer;margin-top:1.25rem;transition:transform .2s}.place-order-btn:hover{transform:translateY(-2px)}.secure-note{text-align:center;font-size:.8rem;margin:1rem 0 0;display:flex;align-items:center;justify-content:center}@media (max-width:900px){.checkout-layout{grid-template-columns:1fr}.checkout-summary{position:static}.checkout-login-prompt{flex-direction:column;gap:1rem;text-align:center}.login-prompt-content,.payment-options{flex-direction:column}.form-grid,.form-grid.three-col{grid-template-columns:1fr}}.account-page{padding:2rem 0 3rem;flex:1 1}.account-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.account-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600}.account-welcome{flex:1 1}.account-welcome h2{margin:0;font-size:1.5rem}.account-welcome p{margin:.25rem 0 0}.logout-btn{padding:.5rem 1rem;background:transparent;border:1px solid;border-radius:.5rem;font-weight:500;cursor:pointer}.account-layout{display:grid;grid-template-columns:220px 1fr;grid-gap:2rem;gap:2rem;align-items:start}.account-layout-sidebar-right{grid-template-columns:1fr 220px}.account-layout-sidebar-right .account-sidebar{order:2}.account-layout-sidebar-right .account-content{order:1}.account-layout-tabs{grid-template-columns:1fr}.account-layout-tabs .account-sidebar{display:flex;flex-direction:row;overflow-x:auto;gap:.5rem;padding:.5rem;position:static}.account-layout-tabs .account-tab{border-left:none;border-bottom:3px solid transparent;white-space:nowrap;padding:.6rem 1rem}.account-sidebar{border:1px solid;border-radius:.75rem;padding:.5rem;position:-webkit-sticky;position:sticky;top:2rem}.account-tab{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;border:none;border-left:3px solid transparent;border-radius:.5rem;background:transparent;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;text-align:left}.account-tab:hover{opacity:.8}.tab-icon{font-size:1.1rem}.account-content{min-height:400px}.account-section h3{margin:0 0 .5rem;font-size:1.5rem}.account-section h4{margin:0 0 1rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.section-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.section-header h3{margin-bottom:.25rem}.section-header p{margin:0}.add-btn{padding:.6rem 1.25rem;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;white-space:nowrap}.orders-list{display:flex;flex-direction:column;gap:1rem}.order-card{border:1px solid;border-radius:.75rem;padding:1.25rem}.order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.order-id{font-weight:600;margin-right:1rem}.order-date{font-size:.9rem}.order-status-badge{padding:.25rem .75rem;border-radius:1rem;font-size:.8rem;font-weight:500}.order-items{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(128,128,128,.2)}.order-item{font-size:.9rem;margin-bottom:.25rem}.order-footer{display:flex;justify-content:space-between;align-items:center}.order-total{font-size:.95rem}.order-actions{display:flex;gap:.5rem}.order-footer button{padding:.5rem 1rem;border:none;border-radius:.5rem;font-size:.9rem;font-weight:500;cursor:pointer}.settings-card{border:1px solid;border-radius:.75rem;padding:1.5rem}.settings-card h4{margin:0 0 1.25rem;font-size:1.1rem;text-transform:none;letter-spacing:0}.form-stack{display:flex;flex-direction:column;gap:1rem;max-width:400px}.settings-actions{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(128,128,128,.2)}.save-btn{padding:.75rem 1.5rem;border:none}.delete-btn,.save-btn{border-radius:.5rem;font-weight:500;cursor:pointer}.delete-btn{padding:.6rem 1.25rem;margin-top:1rem}.addresses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:1rem;gap:1rem}.address-card{border:2px solid;border-radius:.75rem;padding:1.25rem;position:relative}.address-card.add-new{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:180px;cursor:pointer;border-style:dashed;transition:all .2s}.address-card.add-new:hover{opacity:.7}.add-icon{font-size:2rem;margin-bottom:.5rem}.address-badge{position:absolute;top:-10px;right:1rem;padding:.2rem .6rem;border-radius:.25rem;font-size:.75rem;font-weight:600}.address-card h4{margin:0 0 .75rem;font-size:1rem;text-transform:none;letter-spacing:0}.address-card p{margin:0 0 1rem;font-size:.9rem;line-height:1.5}.address-actions{display:flex;gap:1rem}.address-actions button{background:none;border:none;font-size:.9rem;font-weight:500;cursor:pointer;padding:0}.address-actions button:hover{text-decoration:underline}@media (max-width:768px){.account-header{flex-wrap:wrap}.account-layout{grid-template-columns:1fr}.account-sidebar{position:static;display:flex;overflow-x:auto;gap:.5rem;padding:.5rem}.account-tab{white-space:nowrap;border-left:none;border-bottom:3px solid transparent}.addresses-grid{grid-template-columns:1fr}}.order-details-page{padding:2rem 0 3rem;flex:1 1}.order-details-header{border:1px solid;border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}.order-title{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.order-title h2{margin:0;font-size:1.5rem}.order-status-badge.large{padding:.35rem 1rem;font-size:.85rem}.order-details-header>p{margin:0 0 1.25rem}.order-header-actions{display:flex;gap:.75rem}.order-header-actions button{padding:.6rem 1.25rem;border:none;border-radius:.5rem;font-weight:500;cursor:pointer}.order-details-layout{display:grid;grid-template-columns:1fr 340px;grid-gap:1.5rem;gap:1.5rem;align-items:start}.order-layout-timeline-top{grid-template-columns:1fr 340px}.order-layout-timeline-top .order-timeline-section{grid-column:1/-1}.order-layout-timeline-top .order-timeline{display:flex;flex-direction:row;justify-content:space-between;gap:0}.order-layout-timeline-top .timeline-item{flex:1 1;flex-direction:column;align-items:center;text-align:center;padding-bottom:0}.order-layout-timeline-top .timeline-line{display:none}.order-layout-timeline-top .timeline-item:after{content:"";position:absolute;top:12px;left:50%;width:100%;height:2px;background-color:inherit}.order-layout-timeline-top .timeline-item:last-child:after{display:none}.order-layout-timeline-side{grid-template-columns:240px 1fr 340px}.order-layout-timeline-side .order-timeline-section{order:-1;position:-webkit-sticky;position:sticky;top:1rem}.order-details-main{display:flex;flex-direction:column;gap:1.5rem}.order-details-sidebar{display:flex;flex-direction:column;gap:1rem}.order-section{border:1px solid;border-radius:.75rem;padding:1.5rem}.order-section h3{margin:0 0 1rem;font-size:1rem;display:flex;align-items:center;gap:.5rem}.order-items-list{display:flex;flex-direction:column;gap:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(128,128,128,.2);margin-bottom:1rem}.order-item-row{display:flex;align-items:center;gap:1rem}.order-item-row .item-image{font-size:2rem}.order-item-row .item-details{flex:1 1;display:flex;flex-direction:column;gap:.2rem}.order-item-row .item-name{font-weight:500}.order-item-row .item-variation{font-size:.85rem}.order-item-row .item-qty{font-size:.9rem;min-width:30px}.order-item-row .item-price{font-weight:500;min-width:70px;text-align:right}.order-totals{display:flex;flex-direction:column;gap:.5rem}.total-row{display:flex;justify-content:space-between}.total-row.final{margin-top:.5rem;padding-top:.75rem;border-top:1px solid rgba(128,128,128,.2)}.order-timeline,.timeline-item{position:relative}.timeline-item{display:flex;align-items:flex-start;gap:1rem;padding-bottom:1.5rem}.timeline-item:last-child{padding-bottom:0}.timeline-dot{width:24px;height:24px;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center;flex-shrink:0;z-index:1}.timeline-line{position:absolute;left:11px;top:24px;width:2px;height:calc(100% - 24px)}.timeline-item:last-child .timeline-line{display:none}.timeline-content{flex:1 1;display:flex;flex-direction:column;gap:.2rem;padding-top:2px}.timeline-status{font-weight:500}.timeline-date{font-size:.85rem}.info-block{display:flex;flex-direction:column;gap:.25rem}.info-block p{margin:0;font-size:.95rem}.payment-display{gap:.75rem}.card-icon,.payment-display{display:flex;align-items:center}.card-icon{width:40px;height:40px;border-radius:.5rem;justify-content:center;font-size:1.25rem}.card-info{display:flex;flex-direction:column;gap:.1rem}.card-info span:first-child{font-weight:500}.card-info span:last-child{font-size:.85rem}.order-section.help{border-width:2px}.order-section.help button{padding:.75rem;border:none;border-radius:.5rem;font-weight:500;cursor:pointer}.order-badge-row{display:flex;flex-wrap:wrap;gap:.5rem;margin:.5rem 0 1rem}.order-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:999px;font-size:.8rem;font-weight:500}.badge-paid{background-color:#dcfce7;color:#16a34a}.badge-unpaid{background-color:#fef9c3;color:#854d0e}.order-state-banner{display:flex;align-items:flex-start;gap:1rem;border-radius:.75rem;padding:1.25rem 1.5rem;margin-bottom:1.5rem}.order-state-banner strong{display:block;margin-bottom:.2rem}.order-state-banner p{margin:0;font-size:.9rem;opacity:.85}.order-cancelled-banner{background-color:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.order-failed-banner{background-color:#fff7ed;border:1px solid #fdba74;color:#c2410c}.banner-icon{font-size:1.1rem;font-weight:700;flex-shrink:0;line-height:1.4}.order-stepper-section{margin-bottom:1.5rem}.order-stepper{display:flex;align-items:flex-start}.order-stepper-step{flex:1 1;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.order-stepper-step:before{content:"";position:absolute;top:11px;right:50%;width:100%;height:2px;background-color:var(--stepper-line,#e5e7eb)}.order-stepper-step:first-child:before{display:none}.stepper-dot{width:24px;height:24px;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center;flex-shrink:0;z-index:1;position:relative}.stepper-label{font-size:.78rem;margin-top:.5rem;line-height:1.3;max-width:90px}.stepper-label,.total-row-discount span:last-child,.total-row-refund span:last-child{font-weight:500}@media (max-width:900px){.order-details-layout,.order-layout-timeline-side{grid-template-columns:1fr}.order-layout-timeline-top .order-timeline{flex-direction:column}.order-layout-timeline-top .timeline-item{flex-direction:row;text-align:left}.order-header-actions{flex-direction:column}.order-header-actions button{width:100%}.order-stepper-step:before{top:11px}.stepper-label{font-size:.72rem;max-width:70px}}.login-page{padding:3rem 0;flex:1 1;display:flex;align-items:center;justify-content:center}.login-form-container{border:1px solid;border-radius:.75rem;padding:2.5rem;width:100%;max-width:450px}.login-form-container h2{margin:0 0 .5rem;font-size:1.75rem}.login-form-container>p{margin:0 0 2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input{width:100%;padding:.75rem;border:1px solid;border-radius:.5rem;font-size:1rem}.form-options{justify-content:space-between;margin-bottom:1.5rem}.checkbox-label,.form-options{display:flex;align-items:center}.checkbox-label{gap:.5rem;font-size:.9rem}.form-options a{font-size:.9rem;text-decoration:none}.form-options a:hover{text-decoration:underline}.login-btn{width:100%;padding:.875rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s}.login-btn:hover{transform:translateY(-2px)}.signup-link{text-align:center;margin-top:1.5rem;font-size:.9rem}.signup-link a{text-decoration:none;font-weight:600}.signup-link a:hover{text-decoration:underline}.login-links{display:flex;justify-content:center;align-items:center;gap:.75rem;margin-top:1.5rem;font-size:.9rem}.login-text-link{text-decoration:none;font-weight:500;transition:opacity .2s}.login-text-link:hover{text-decoration:underline;opacity:.8}.login-link-divider{opacity:.5}.locations-listing{padding:3rem 0;flex:1 1}.locations-listing .listing-header{margin-bottom:2rem}.locations-listing .listing-header p{margin:.5rem 0 0;font-size:1.1rem}.locations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));grid-gap:1.5rem;gap:1.5rem}.locations-grid.locations-list-view{grid-template-columns:1fr}.locations-list-view .location-card{flex-direction:row;align-items:center}.locations-list-view .location-image{font-size:2rem;flex-shrink:0}.locations-list-view .location-info{flex:1 1}.locations-list-view .location-card button{flex-shrink:0;align-self:center}.location-card{border:1px solid;border-radius:.75rem;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;transition:transform .2s}.location-card:hover{transform:translateY(-4px)}.location-image{font-size:3rem;text-align:center}.location-info h3{margin:0 0 .5rem;font-size:1.25rem}.location-address{margin:0 0 .75rem;line-height:1.5}.location-meta{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem}.location-card button{padding:.75rem;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:opacity .2s}.location-card button:hover{opacity:.9}.location-details{padding:2rem 0 3rem;flex:1 1}.back-link{background:none;border:none;font-size:.95rem;cursor:pointer;padding:0;margin-bottom:1.5rem;display:inline-block}.back-link:hover{text-decoration:underline}.location-hero{border:1px solid;border-radius:.75rem;padding:2rem;display:flex;gap:2rem;align-items:center;margin-bottom:2rem}.location-hero-image{font-size:5rem}.location-hero-info h2{margin:0 0 1rem;font-size:2rem}.location-hero-info p{margin:0;line-height:1.6}.location-map{border:1px solid;border-radius:.75rem;overflow:hidden;margin-bottom:2rem}.static-map{position:relative;height:280px}.map-bg{position:absolute;inset:0;overflow:hidden}.map-park,.map-water{position:absolute;border-radius:2px}.map-road{position:absolute;height:4px;box-shadow:0 0 0 1px rgba(0,0,0,.05)}.map-road.major{height:8px;box-shadow:0 0 0 1px rgba(0,0,0,.08)}.map-road.vertical{width:4px;height:auto}.map-block{position:absolute;border-radius:2px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.map-marker{position:absolute;transform:translate(-50%,-100%);z-index:10}.marker-pulse{position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);width:12px;height:12px;border-radius:50%;opacity:.3;animation:pulse 2s ease-out infinite}@keyframes pulse{0%{transform:translateX(-50%) scale(1);opacity:.3}to{transform:translateX(-50%) scale(3);opacity:0}}.map-overlay{position:absolute;bottom:0;left:0;right:0;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.25rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(255,255,255,.9)!important}.location-details-map-side{display:grid;grid-template-columns:1fr 1fr;grid-gap:2rem;gap:2rem;align-items:stretch}.location-details-map-side .location-map{margin-bottom:0}.location-details-map-side .location-map .static-map{height:100%}.location-details-map-side .location-grid{grid-template-columns:1fr}.location-details-map-bottom .static-map,.location-details-map-top .static-map{height:400px}.location-details-info-only .location-grid,.location-details-map-bottom .location-grid,.location-details-map-top .location-grid{grid-template-columns:1fr 1fr}.location-details-map-bottom .location-map{margin-bottom:0;margin-top:2rem}.location-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:1.5rem;gap:1.5rem}.location-section{border:1px solid;border-radius:.75rem;padding:1.5rem}.location-section h3{margin:0 0 1rem;font-size:1.1rem;display:flex;align-items:center;gap:.5rem}.section-icon{font-size:1.25rem}.section-content p{margin:0 0 1rem;line-height:1.6}.section-content button{padding:.6rem 1.25rem;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:opacity .2s}.section-content button:hover{opacity:.9}.hours-list{list-style:none;margin:0;padding:0}.hours-list li{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid rgba(0,0,0,.05)}.hours-list li:last-child{border-bottom:none}.address-contact{display:flex;flex-direction:column;gap:1.25rem}.address-contact-row{display:flex;gap:2rem}.address-contact-block{flex:1 1;min-width:0}.address-contact-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.address-contact p{margin:0;line-height:1.6}.contact-info{display:flex;flex-direction:column;gap:.4rem}.contact-info a{text-decoration:none;font-size:1rem}.contact-info a:hover{text-decoration:underline}.directions-btn{display:inline-flex;align-items:center;justify-content:center;padding:.6rem 1.25rem;border:none;border-radius:.5rem;font-weight:600;font-size:.9rem;cursor:pointer;text-decoration:none;transition:opacity .2s;align-self:flex-start}.directions-btn:hover{opacity:.9}.methods-list{list-style:none;margin:0;padding:0}.methods-list li{display:flex;gap:1rem;padding:.75rem 0;border-bottom:1px solid rgba(0,0,0,.05)}.methods-list li:last-child{border-bottom:none}.method-icon{font-size:1.5rem}.methods-list li div{display:flex;flex-direction:column;gap:.25rem}.methods-list li div span{font-size:.9rem}.search-bar{margin:0;width:220px}.search-bar-container{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid;border-radius:.5rem;transition:all .2s;min-width:200px}.search-bar-container.focused{box-shadow:0 0 0 2px rgba(var(--primary-rgb,59,130,246),.2)}.search-bar-container .search-icon{flex-shrink:0}.search-bar-container input{flex:1 1;border:none;background:none;font-size:.9rem;outline:none;min-width:0}.search-bar-container input::placeholder{color:inherit;opacity:.5}.search-clear{display:flex;align-items:center;justify-content:center;padding:0;border:none;background:none;cursor:pointer;opacity:.6;transition:opacity .2s}.search-clear:hover{opacity:1}.search-bar{position:relative}.search-suggestions{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;border:1px solid;border-radius:.5rem;overflow:hidden;z-index:100;max-height:300px;overflow-y:auto}.search-suggestion-item{display:flex;align-items:center;padding:.75rem 1rem;cursor:pointer;transition:background-color .15s}.search-suggestion-item:hover{background-color:rgba(0,0,0,.05)!important}.search-suggestion-item .suggestion-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.header-controls{display:flex;align-items:center;gap:1rem}.location-selector{position:relative}.location-selector-trigger{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid;border-radius:.5rem;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;background:none;text-transform:none}.location-selector-trigger:hover{opacity:.8}.location-selector-trigger .location-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-dropdown-backdrop{position:fixed;inset:0;z-index:99}.location-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:250px;border:.5px solid;border-radius:.75rem;overflow:hidden;z-index:100;box-shadow:0 4px 20px rgba(0,0,0,.15)}.location-dropdown-header{padding:.75rem 1rem;font-size:.8rem;font-weight:600;text-transform:none;letter-spacing:.5px;border-bottom:1px solid rgba(0,0,0,.08)}.location-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;border:none;background:none;cursor:pointer;transition:background-color .2s;text-align:left}.location-option:hover{background-color:rgba(0,0,0,.05)}.location-option-info{display:flex;flex-direction:column;gap:.25rem}.location-option-name{font-weight:500;font-size:.95rem;text-transform:none}.location-option-address{font-size:.8rem;text-transform:none}footer{margin-top:auto;padding:1.5rem 0}footer p{margin:0;text-align:center}.site-footer{margin-top:auto;padding:3rem 0 0}.footer-content{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:2rem;gap:2rem;margin-bottom:2rem}.footer-section h4{margin:0 0 1rem;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.footer-hours{list-style:none;margin:0;padding:0}.footer-hours li{display:flex;justify-content:space-between;padding:.25rem 0;font-size:.85rem}.footer-hours li span:first-child{min-width:40px}.footer-today{margin:.75rem 0 0;font-size:.85rem;font-weight:500}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin-bottom:.5rem}.footer-links a{text-decoration:none;font-size:.9rem;transition:opacity .2s}.footer-links a:hover{opacity:.7;text-decoration:underline}.footer-contact{font-size:.9rem;line-height:1.6}.footer-contact p{margin:0 0 .25rem;text-align:left}.footer-social{display:flex;gap:1rem}.footer-social a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;transition:all .2s}.footer-social a:hover{opacity:.7;transform:translateY(-2px)}.footer-bottom{padding:1.5rem 0;text-align:center}.footer-bottom p{margin:0 0 .75rem;font-size:.85rem}.footer-legal{display:flex;justify-content:center;align-items:center;gap:.5rem;flex-wrap:wrap}.footer-legal a{text-decoration:none;font-size:.85rem;transition:opacity .2s}.footer-legal a:hover{opacity:.7;text-decoration:underline}.footer-legal-divider{opacity:.5}.footer-compliance{margin-top:1rem;text-align:center;font-size:.75rem}.footer-compliance-item{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.25rem}.footer-compliance-seal{max-height:80px;width:auto}@media (max-width:900px){.footer-content{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.footer-content{grid-template-columns:1fr;text-align:center}.footer-hours li{justify-content:center;gap:1rem}.footer-contact p{text-align:center}.footer-social{justify-content:center}}@media (max-width:900px){.products-layout{grid-template-columns:1fr}.filters-sidebar{display:none;position:static;width:100%;min-width:auto;max-height:none}.filters-sidebar.open{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:1rem;gap:1rem}.filter-toggle-mobile{display:flex}.listing-header{flex-wrap:wrap;gap:.75rem}.listing-header>div:not(.view-toggle){width:100%;order:-1}.filter-section{margin-bottom:0;padding-bottom:0;border-bottom:none}.clear-filters{grid-column:1/-1}}@media (max-width:768px){.products-grid .product-card{max-width:none}.products-list .product-card{display:grid!important;grid-template-columns:64px 1fr auto!important;grid-template-rows:auto auto!important;grid-gap:0 .75rem!important;gap:0 .75rem!important;padding:.5rem .75rem!important;align-items:center!important;overflow:hidden}.products-list .product-image{grid-row:1;grid-column:1;width:64px!important;height:64px!important;min-width:unset!important;border-radius:.5rem!important}.products-list .product-info{grid-row:1;grid-column:2;min-width:0;gap:.1rem;overflow:hidden}.products-list .product-info h4{font-size:.85rem!important;margin:0!important;overflow:hidden;text-overflow:ellipsis}.products-list .product-badges,.products-list .product-cannabinoids,.products-list .product-meta{display:none!important}.products-list .product-price-list{grid-row:1;grid-column:3;min-width:unset!important;font-size:.95rem;text-align:right;margin:0}.products-list .product-actions{grid-row:2;grid-column:1/-1;display:flex!important;padding-top:.4rem;margin-top:.25rem;border-top:1px solid rgba(0,0,0,.06)}.products-list .product-actions button{flex:1 1;padding:.35rem .5rem!important;font-size:.75rem!important}.products-list .new-badge,.products-list .sale-badge{font-size:.55rem!important;padding:.1rem .3rem!important}.cart-layout,.details-layout{grid-template-columns:1fr}.product-image-large{font-size:8rem;min-height:250px}.product-thumbnails{justify-content:center}.thumbnail{width:60px;height:60px;font-size:2rem}.variations-grid{grid-template-columns:1fr}.cart-item{grid-template-columns:60px 1fr;gap:.75rem}.item-price,.item-quantity{grid-column:2}.location-hero{flex-direction:column;text-align:center}.location-details-map-side{grid-template-columns:1fr}.location-details-map-side .location-map .static-map{height:280px}.location-details-map-bottom .static-map,.location-details-map-top .static-map{height:250px}.location-details-info-only .location-grid,.location-details-map-bottom .location-grid,.location-details-map-top .location-grid{grid-template-columns:1fr}}.faq-hero{padding:4rem 2rem;text-align:center;color:white}.faq-hero-content h2{margin:0 0 .75rem;font-size:2.5rem}.faq-hero-content p{margin:0;font-size:1.15rem;opacity:.9}.faq-content{padding:3rem 0;flex:1 1}.faq-quick-links{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding:1rem 1.5rem;border:1px solid;border-radius:.75rem;margin-bottom:2.5rem}.faq-quick-links span{font-size:.9rem}.faq-quick-links a{text-decoration:none;font-weight:500;font-size:.9rem;transition:opacity .2s}.faq-quick-links a:hover{opacity:.7}.faq-category{margin-bottom:2.5rem;scroll-margin-top:2rem}.faq-category-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}.faq-category-icon{font-size:1.75rem}.faq-category-header h3{margin:0;font-size:1.5rem}.faq-items{display:flex;flex-direction:column;gap:.75rem}.faq-item{border:1px solid;border-radius:.75rem;overflow:hidden;transition:box-shadow .2s}.faq-item.open{box-shadow:0 4px 12px rgba(0,0,0,.08)}.faq-question{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;padding:1.25rem;border:none;background:none;cursor:pointer;text-align:left;font-size:1rem;font-weight:500;transition:opacity .2s}.faq-question:hover{opacity:.8}.faq-toggle{width:28px;height:28px;border-radius:50%;border:1px solid;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:500;flex-shrink:0;transition:all .2s}.faq-answer{padding:0 1.25rem 1.25rem;line-height:1.7;font-size:.95rem}.faq-contact{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2rem;border:2px solid;border-radius:.75rem;margin-top:2rem}.faq-contact-content{display:flex;align-items:center;gap:1.25rem}.faq-contact-icon{font-size:2.5rem}.faq-contact-content h4{margin:0 0 .25rem;font-size:1.1rem}.faq-contact-content p{margin:0;font-size:.95rem}.faq-contact-actions{display:flex;gap:.75rem}.faq-contact-actions button{padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;cursor:pointer;transition:transform .2s}.faq-contact-actions button:hover{transform:translateY(-2px)}@media (max-width:768px){.faq-hero-content h2{font-size:2rem}.faq-quick-links{flex-direction:column;align-items:flex-start}.faq-contact{text-align:center}.faq-contact,.faq-contact-actions,.faq-contact-content{flex-direction:column}.faq-contact-actions,.faq-contact-actions button{width:100%}}.faq-category-two-col{margin-bottom:3rem;scroll-margin-top:2rem}.faq-category-header-two-col{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border:1px solid;border-radius:.75rem;margin-bottom:1.5rem}.faq-category-header-two-col .faq-category-icon{font-size:1.5rem}.faq-category-header-two-col h3{margin:0;font-size:1.25rem}.faq-two-col-grid{display:flex;flex-direction:column;gap:1rem}.faq-two-col-item{display:grid;grid-template-columns:1fr 1.5fr;grid-gap:2rem;gap:2rem;padding:1.5rem;border:1px solid;border-radius:.75rem;transition:box-shadow .2s}.faq-two-col-item:hover{box-shadow:0 4px 12px rgba(0,0,0,.08)}.faq-two-col-question{font-size:1rem;font-weight:600;line-height:1.5}.faq-two-col-answer{font-size:.95rem;line-height:1.7}@media (max-width:768px){.faq-two-col-item{grid-template-columns:1fr;gap:1rem}.faq-two-col-question{padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.1)}}.faq-flat-list{display:flex;flex-direction:column;gap:1.25rem}.faq-flat-item{display:flex;gap:1.5rem;padding:1.5rem;border:1px solid;border-radius:.75rem;transition:box-shadow .2s}.faq-flat-item:hover{box-shadow:0 4px 12px rgba(0,0,0,.08)}.faq-flat-number{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;flex-shrink:0}.faq-flat-content{flex:1 1;min-width:0}.faq-flat-category{display:inline-flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:500;margin-bottom:.5rem}.faq-flat-question{margin:0 0 .75rem;font-size:1.1rem;font-weight:600;line-height:1.4}.faq-flat-answer{margin:0;font-size:.95rem;line-height:1.7}@media (max-width:600px){.faq-flat-item{flex-direction:column;gap:1rem}.faq-flat-number{width:36px;height:36px;font-size:.9rem}}.about-hero{padding:4rem 2rem;text-align:center;color:white}.about-hero-content h1{margin:0 0 .75rem;font-size:2.5rem;font-weight:700}.about-hero-content p{font-size:1.15rem;opacity:.9;max-width:600px;margin:0 auto}.about-mission{padding:4rem 0}.about-mission-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:3rem;gap:3rem;align-items:center}.about-mission-image{border-radius:1rem;overflow:hidden;border:1px solid;aspect-ratio:4/3}.about-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:5rem;background:linear-gradient(135deg,rgba(0,0,0,.02),rgba(0,0,0,.05))}.about-mission-content h2{margin:0 0 1rem;font-size:1.75rem;font-weight:700;line-height:1.3}.about-mission-content p{margin:0 0 1.5rem;font-size:1rem;line-height:1.7}.about-highlights{list-style:none;padding:0;margin:0 0 1.5rem}.about-highlights li{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;font-size:.95rem}.highlight-check{font-weight:600;flex-shrink:0}.about-cta-btn{padding:.875rem 2rem;font-size:1rem;font-weight:600;border:none;border-radius:.5rem;cursor:pointer;transition:all .2s}.about-cta-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.about-cta-btn.outline:hover{background-color:rgba(0,0,0,.05)!important}.about-tagline{padding:4rem 0}.about-tagline-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:3rem;gap:3rem;align-items:start}.about-tagline-content{padding:2rem 0}.about-tagline-content h2{margin:0 0 1rem;font-size:2rem;font-weight:700}.about-tagline-content p{margin:0 0 1.5rem;font-size:1.1rem;line-height:1.6}.about-story-box{padding:2rem;border-radius:1rem;border:1px solid}.about-story-box h3{margin:0 0 1rem;font-size:1.25rem;font-weight:600}.about-story-box p{margin:0 0 1rem;font-size:.95rem;line-height:1.7}.about-story-box p:last-child{margin-bottom:0}.about-features{padding:4rem 0}.about-features-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.5rem;gap:1.5rem}.about-feature-card{padding:1.5rem;border-radius:1rem;border:1px solid;text-align:center;transition:transform .2s,box-shadow .2s}.about-feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.1)}.about-feature-icon{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.75rem;margin:0 auto 1rem}.about-feature-card h4{margin:0 0 .5rem;font-size:1rem;font-weight:600}.about-feature-card p{margin:0;font-size:.875rem;line-height:1.5}@media (max-width:900px){.about-mission-grid,.about-tagline-grid{grid-template-columns:1fr;gap:2rem}.about-features-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.about-hero-content h1{font-size:2rem}.about-features-grid{grid-template-columns:1fr}.about-feature-card{display:flex;align-items:center;text-align:left;gap:1rem}.about-feature-icon{margin:0;flex-shrink:0}.about-feature-card h4,.about-feature-card p{text-align:left}}.legal-hero{padding:4rem 0;text-align:center;color:white}.legal-hero-content h2{font-size:2.5rem;margin:0 0 .5rem;font-weight:700}.legal-hero-content p{font-size:1rem;margin:0;opacity:.9}.legal-content{padding:3rem 0;flex:1 1}.legal-document{background:white;border-radius:12px;padding:3rem;border:1px solid;max-width:900px;margin:0 auto}.legal-section{margin-bottom:2rem}.legal-section:last-child{margin-bottom:0}.legal-section h3{font-size:1.25rem;font-weight:600;margin:0 0 1rem}.legal-section p{font-size:1rem;line-height:1.7;margin:0 0 1rem}.legal-section p:last-child{margin-bottom:0}.legal-section ul{margin:0 0 1rem;padding-left:1.5rem}.legal-section ul:last-child{margin-bottom:0}.legal-section li{font-size:1rem;line-height:1.7;margin-bottom:.5rem}.legal-section li:last-child{margin-bottom:0}.legal-section strong{font-weight:600}@media (max-width:768px){.legal-hero-content h2{font-size:2rem}.legal-document{padding:1.5rem;border-radius:8px}.legal-section h3{font-size:1.125rem}}.delivery-hero{padding:4rem 0;text-align:center;color:white}.delivery-hero-content h2{font-size:2.5rem;margin:0 0 .5rem;font-weight:700}.delivery-hero-content p{font-size:1.125rem;margin:0;opacity:.9}.delivery-options{padding:4rem 0}.delivery-options-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.5rem;gap:1.5rem}.delivery-option-card{padding:2rem;border-radius:12px;border:1px solid;text-align:center}.delivery-option-icon{font-size:3rem;margin-bottom:1rem}.delivery-option-card h3{font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.delivery-option-desc{font-size:.9rem;margin:0 0 1.5rem;line-height:1.5}.delivery-option-details{list-style:none;padding:0;margin:0;text-align:left}.delivery-option-details li{font-size:.875rem;margin-bottom:.5rem;display:flex;align-items:flex-start;gap:.5rem}.delivery-option-details .check-icon{font-weight:700;flex-shrink:0}.delivery-how-it-works{padding:4rem 0}.delivery-how-it-works h2{text-align:center;font-size:2rem;margin:0 0 3rem}.delivery-steps{display:flex;justify-content:center;align-items:flex-start;gap:2rem}.delivery-step{flex:1 1;max-width:280px;text-align:center}.delivery-step-number{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;margin:0 auto 1rem}.delivery-step h4{font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.delivery-step p{font-size:.9rem;margin:0;line-height:1.5}.delivery-step-arrow{font-size:2rem;margin-top:.5rem}.delivery-faqs{padding:4rem 0}.delivery-faqs h2{text-align:center;font-size:2rem;margin:0 0 2rem}.delivery-faq-list{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1.5rem;gap:1.5rem;max-width:1000px;margin:0 auto}.delivery-faq-item{padding:1.5rem;border-radius:12px;border:1px solid}.delivery-faq-item h4{font-size:1rem;font-weight:600;margin:0 0 .75rem}.delivery-faq-item p{font-size:.9rem;margin:0;line-height:1.6}.delivery-contact{padding:4rem 0}.delivery-contact-content{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2rem;border-radius:12px;border:1px solid}.delivery-contact-text h3{font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.delivery-contact-text p{font-size:1rem;margin:0;line-height:1.5}.delivery-contact-actions{display:flex;gap:1rem;flex-shrink:0}.delivery-contact-actions button{padding:.875rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.delivery-contact-actions button:hover{transform:translateY(-2px)}@media (max-width:1024px){.delivery-options-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.delivery-hero-content h2{font-size:2rem}.delivery-options-grid{grid-template-columns:1fr}.delivery-steps{flex-direction:column;align-items:center}.delivery-step-arrow{transform:rotate(90deg);margin:0}.delivery-faq-list{grid-template-columns:1fr}.delivery-contact-content{flex-direction:column;text-align:center}.delivery-contact-actions{flex-direction:column;width:100%}.delivery-contact-actions button{width:100%}}.delivery-options-list{padding:4rem 0}.delivery-list-item{display:flex;align-items:flex-start;gap:2rem;padding:2rem;border-radius:12px;border:1px solid;margin-bottom:1.5rem;position:relative}.delivery-list-icon{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0}.delivery-list-content{flex:1 1}.delivery-list-header h3{font-size:1.25rem;font-weight:600;margin:0 0 .25rem}.delivery-list-header p{font-size:.95rem;margin:0 0 1rem}.delivery-list-details{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.5rem;gap:.5rem}.delivery-list-details li{font-size:.9rem;display:flex;align-items:center;gap:.5rem}.delivery-list-number{position:absolute;top:1.5rem;right:2rem;font-size:3rem;font-weight:700;opacity:.3}@media (max-width:768px){.delivery-list-item{flex-direction:column;gap:1rem}.delivery-list-details{grid-template-columns:1fr}.delivery-list-number{display:none}}.delivery-comparison{padding:4rem 0}.comparison-table-wrapper{border-radius:12px;border:1px solid;padding:1.5rem;overflow-x:auto;margin-bottom:2rem}.comparison-table{width:100%;border-collapse:collapse;min-width:600px}.comparison-table td,.comparison-table th{padding:1rem;text-align:center;vertical-align:middle}.comparison-table thead th{padding-bottom:1.5rem}.comparison-header-icon{display:block;font-size:2rem;margin-bottom:.5rem}.comparison-table thead th span:last-child{display:block;font-size:.9rem;font-weight:600}.comparison-table tbody tr{border-top:1px solid}.comparison-table tbody td:first-child{text-align:left;font-weight:500}.comparison-note{text-align:center;font-size:.85rem;margin:1rem 0 0}.comparison-details{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1rem;gap:1rem}.comparison-detail-card{padding:1.25rem;border-radius:12px;border:1px solid}.comparison-detail-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.comparison-detail-icon{font-size:1.5rem}.comparison-detail-header h4{font-size:1rem;font-weight:600;margin:0}.comparison-detail-card p{font-size:.85rem;margin:0;line-height:1.5}@media (max-width:1024px){.comparison-details{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.comparison-details{grid-template-columns:1fr}}.home-categories-large{padding:4rem 0}.home-categories-large h3{text-align:center;font-size:2rem;margin:0 0 2rem}.categories-grid-large{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.5rem;gap:1.5rem}.category-card-large{display:flex;flex-direction:column;align-items:center;padding:2.5rem 2rem;border-radius:16px;border:1px solid;cursor:pointer;transition:all .2s ease;text-align:center;background:none}.category-card-large:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.12)}.category-icon-large{font-size:4rem;margin-bottom:1.25rem}.category-name-large{font-size:1.25rem;font-weight:600;display:block;margin-bottom:.5rem}.category-desc-large{font-size:.9rem;display:block;margin-bottom:1rem;line-height:1.4}.category-browse{font-size:.9rem;font-weight:600}@media (max-width:1024px){.categories-grid-large{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.categories-grid-large{grid-template-columns:1fr}.category-card-large{padding:2rem 1.5rem}.category-icon-large{font-size:3rem}}.home-products-grid-section{padding:4rem 0}.home-products-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.home-products-header h3{font-size:1.75rem;font-weight:600;margin:0}.home-products-header button{background:none;border:none;font-size:1rem;font-weight:600;cursor:pointer;padding:0}.home-products-header button:hover{text-decoration:underline}.home-products-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.5rem;gap:1.5rem}.home-grid-product{border-radius:12px;border:1px solid;overflow:hidden;transition:all .2s ease}.home-grid-product:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.08)}.home-grid-product-image{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:3rem;overflow:hidden}.home-grid-product-image img{width:100%;height:100%;object-fit:cover}.home-grid-product-info{padding:1rem}.home-grid-product-info h4{font-size:1rem;font-weight:600;margin:0 0 .5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-grid-product-info p{font-size:1.125rem;font-weight:700;margin:0}.home-grid-product button{width:100%;padding:.875rem;border:none;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .2s}.home-grid-product button:hover{opacity:.9}@media (max-width:1024px){.home-products-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.home-products-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.home-products-grid{grid-template-columns:1fr}.view-toggle{display:none}}.minimal-hero{padding:6rem 0}.minimal-hero-content{text-align:center;max-width:600px;margin:0 auto}.minimal-hero-content h2{font-size:3rem;font-weight:700;margin:0 0 1rem}.minimal-hero-content p{font-size:1.25rem;margin:0 0 2rem;line-height:1.5}.minimal-hero-content button{padding:1rem 2.5rem;border:none;border-radius:8px;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .2s}.minimal-hero-content button:hover{transform:translateY(-2px)}@media (max-width:768px){.minimal-hero{padding:4rem 0}.minimal-hero-content h2{font-size:2rem}.minimal-hero-content p{font-size:1rem}}.default-nav{display:flex;justify-content:space-between;align-items:center}.header-location-row{display:none}.hamburger-btn{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:8px;background:none;border:none;cursor:pointer;z-index:101}.hamburger-line{display:block;width:22px;height:2px;border-radius:2px;transition:all .3s ease}.hamburger-btn .hamburger-line:first-child.open{transform:rotate(45deg) translate(5px,5px)}.hamburger-btn .hamburger-line:nth-child(2).open{opacity:0}.hamburger-btn .hamburger-line:nth-child(3).open{transform:rotate(-45deg) translate(5px,-5px)}.mobile-nav-toggle{display:none}.mobile-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);opacity:0;visibility:hidden;transition:all .3s ease;z-index:998}.mobile-overlay.open{opacity:1;visibility:visible}.mobile-sidebar{position:fixed;top:0;left:0;width:280px;max-width:85vw;height:100vh;transform:translateX(-100%);transition:transform .3s ease;z-index:999;overflow-y:auto}.mobile-sidebar.open{transform:translateX(0)}.mobile-sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid rgba(0,0,0,.1)}.mobile-sidebar-logo{height:40px;width:auto;max-width:140px;object-fit:contain}.mobile-close-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:none;cursor:pointer;border-radius:50%;transition:background-color .2s}.mobile-close-btn:hover{background-color:rgba(0,0,0,.05)}.mobile-sidebar-nav ul{list-style:none;margin:0;padding:.5rem 0}.mobile-sidebar-nav{width:100%}.mobile-nav-horizontal{display:flex;flex-direction:column;gap:0;padding:0;list-style:none;margin:0;width:100%}.mobile-nav-horizontal li{width:100%;display:block}.mobile-nav-horizontal li a{display:block;width:100%;padding:1rem 1.5rem;text-decoration:none;font-weight:500;font-size:1rem;border-radius:0;transition:all .2s;border-left:3px solid transparent;box-sizing:border-box}.mobile-nav-horizontal li a:hover{background-color:rgba(0,0,0,.05)}.mobile-nav-horizontal li a.active{border-left-color:currentColor;background-color:rgba(0,0,0,.03)}.mobile-sidebar-nav li a{display:block;padding:1rem 1.25rem;text-decoration:none;font-weight:500;font-size:1rem;transition:all .2s}.mobile-sidebar-nav li a:hover{background-color:rgba(0,0,0,.03)}.logo-link{display:flex;align-items:center}.mobile-sidebar-logo-link{text-decoration:none}.header-icon-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:none;cursor:pointer;border-radius:50%;transition:background-color .2s;position:relative}.header-icon-btn:hover{background-color:rgba(0,0,0,.05)}.cart-badge{position:absolute;top:2px;right:2px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font-size:.7rem;font-weight:600;display:flex;align-items:center;justify-content:center}.account-dropdown-wrapper,.account-icon-btn{position:relative}.account-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;border-radius:8px;border:1px solid;padding:.5rem 0;z-index:1000}.account-dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;text-decoration:none;font-size:.875rem;font-weight:500;transition:background-color .15s}.account-dropdown-item:hover{background-color:rgba(0,0,0,.05)}.account-dropdown-item svg{flex-shrink:0}.account-dropdown-divider{height:1px;border-top:1px solid;margin:.5rem 0}.search-expanded-overlay{position:fixed;top:0;left:0;right:0;padding:1rem;transform:translateY(-100%);transition:transform .3s ease;z-index:1000;box-shadow:0 4px 20px rgba(0,0,0,.15)}.search-expanded-overlay.open{transform:translateY(0)}.search-expanded-container{display:flex;align-items:center;gap:1rem;max-width:600px;margin:0 auto}.search-expanded-container .search-bar{flex:1 1;width:100%!important}.search-close-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:none;cursor:pointer;border-radius:50%;flex-shrink:0}.search-close-btn:hover{background-color:rgba(0,0,0,.05)}.desktop-only{display:block}.header-controls-desktop{display:flex;align-items:center;gap:.75rem}.header-controls-mobile{display:none}.desktop-nav{display:flex}@media (max-width:900px){.mobile-nav-toggle{display:block}.hamburger-btn{display:flex}.desktop-nav,.desktop-only{display:none!important}.header-controls-desktop{display:none}.header-controls-mobile{display:flex}.header-controls{gap:.25rem}.default-nav{gap:.5rem}header h1{font-size:1.25rem}.nav-logo{height:48px;max-width:120px}.boutique-nav{gap:.5rem}.boutique-nav,.editorial-header-top{flex-wrap:wrap}.editorial-header-main h1{font-size:2rem}.compact-nav{gap:.5rem}.plantlife-nav{flex-wrap:wrap;gap:.5rem}.plantlife-nav h1{font-size:1.25rem}}@media (max-width:480px){.header-location-row{padding:.5rem 0}.location-selector-trigger{padding:.4rem .6rem;font-size:.85rem}.location-selector-trigger .location-name{max-width:100px}header h1{font-size:1.1rem}.nav-logo{height:40px;max-width:100px}.mobile-sidebar{width:260px}}.blog-content{padding:3rem 0;min-height:60vh}.blog-header{text-align:center;margin-bottom:2.5rem}.blog-header h1{font-size:2rem;margin:0 0 .5rem;font-weight:700}.blog-header p{font-size:1.1rem;margin:0}.blog-list{display:flex;flex-direction:column;gap:2rem;max-width:800px;margin:0 auto}.blog-card{border:1px solid;border-radius:.75rem;overflow:hidden;transition:transform .2s,box-shadow .2s}.blog-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.blog-card-image{width:100%;height:280px;overflow:hidden}.blog-card-image img{width:100%;height:100%;object-fit:cover}.blog-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem}.blog-card-body{padding:1.5rem}.blog-card-meta{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.blog-date{font-size:.85rem}.blog-category{font-size:.75rem;font-weight:600;padding:.2rem .6rem;border-radius:1rem}.blog-card-body h2{font-size:1.4rem;margin:0 0 .75rem;font-weight:600}.blog-card-body p{font-size:.95rem;line-height:1.6;margin:0 0 1rem}.blog-read-more{font-weight:600;text-decoration:none;font-size:.9rem;cursor:pointer}.blog-read-more:hover{text-decoration:underline}@media (max-width:768px){.blog-card-image{height:200px}.blog-card-body{padding:1rem}.blog-card-body h2{font-size:1.2rem}}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem}.blog-grid-card{border:1px solid;border-radius:.75rem;overflow:hidden;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}.blog-grid-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.blog-grid-card-image{width:100%;height:180px;overflow:hidden}.blog-grid-card-image img{width:100%;height:100%;object-fit:cover}.blog-grid-card-body{padding:1.25rem;flex:1 1;display:flex;flex-direction:column}.blog-grid-card-body h2{font-size:1.1rem;margin:0 0 .5rem;font-weight:600;line-height:1.3}.blog-grid-card-body p{font-size:.85rem;line-height:1.5;margin:0 0 .75rem;flex:1 1}.blog-layout-grid .blog-list{max-width:none}@media (max-width:900px){.blog-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.blog-grid{grid-template-columns:1fr}}.blog-detail-content{padding:3rem 0;min-height:60vh}.blog-detail-breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.9rem}.blog-detail-breadcrumb a{text-decoration:none;font-weight:500}.blog-detail-breadcrumb a:hover{text-decoration:underline}.blog-detail-meta{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.blog-detail-layout-top{max-width:800px;margin:0 auto}.blog-detail-featured-image{width:100%;height:400px;border-radius:.75rem;overflow:hidden;margin-bottom:2rem}.blog-detail-featured-image img{width:100%;height:100%;object-fit:cover}.blog-detail-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:4rem;border-radius:.75rem}.blog-detail-body h1{font-size:2rem;font-weight:700;margin:0 0 1.5rem;line-height:1.3}.blog-detail-content-body{font-size:1.05rem;line-height:1.8}.blog-detail-content-body p{margin:0 0 1rem}.blog-detail-layout-side{display:grid;grid-template-columns:1fr 1fr;grid-gap:2.5rem;gap:2.5rem;max-width:1000px;margin:0 auto;align-items:start}.blog-detail-side-image{width:100%;border-radius:.75rem;overflow:hidden;position:-webkit-sticky;position:sticky;top:2rem}.blog-detail-side-image img{width:100%;height:auto;min-height:300px;object-fit:cover}.blog-detail-side-image .blog-detail-image-placeholder{min-height:400px}.blog-detail-side-content h1{font-size:1.75rem;font-weight:700;margin:0 0 1.5rem;line-height:1.3}.blog-detail-back{margin-top:3rem;padding-top:2rem;border-top:1px solid}.blog-detail-back button{background:none;border:2px solid;border-radius:.5rem;padding:.6rem 1.2rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .2s}.blog-detail-back button:hover{opacity:.8}@media (max-width:768px){.blog-detail-featured-image{height:250px}.blog-detail-layout-side{grid-template-columns:1fr;gap:1.5rem}.blog-detail-side-image{position:static}.blog-detail-body h1,.blog-detail-side-content h1{font-size:1.5rem}}