.shop-page {padding-bottom:0}.shop-page h1,.shop-page h2,.shop-page h3{font-family:Georgia,serif}.shop-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:5vw;padding:5rem 5vw;background:#ecefdf;align-items:center}.shop-hero h1{font-size:clamp(2.8rem,5vw,5.2rem);letter-spacing:-.055em}.shop-hero h1 em{color:var(--leaf);font-style:normal}.shop-hero p{max-width:39rem}.shop-hero-art{position:relative;background:white;border-radius:45% 45% 1.5rem 1.5rem;padding:2rem}.shop-hero-art img{width:100%;aspect-ratio:1;object-fit:contain}.shop-hero-art span{display:block;text-align:center;font-size:.85rem}.shop-hero-art strong{font-family:Georgia,serif;font-size:1.5rem}.shop-small{font-size:.83rem;line-height:1.55;color:#52655d}.shop-hero .shop-small{margin-top:1rem}.shop-trust{display:flex;justify-content:space-between;gap:1rem;padding:1.3rem 5vw;border-bottom:1px solid var(--line);font-size:.8rem;font-weight:700}.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 20rem;gap:3rem;padding:4rem 5vw;align-items:start}.shop-layout h2{font-size:2.4rem}.shop-filters{display:flex;gap:1rem}.shop-filters label{flex:1;min-width:0;font-size:.8rem;font-weight:700}.shop-filters input,.shop-filters select{width:100%;margin-top:.4rem;padding:.85rem;border:1px solid var(--line);border-radius:.5rem;background:white;color:var(--ink);font:inherit;min-height:46px}.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.product-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:1rem;overflow:hidden;background:#fff}.product-image{display:flex;align-items:center;justify-content:center;background:#fff;aspect-ratio:1;padding:1rem}.product-image img{width:100%;height:100%;object-fit:contain}.product-image-placeholder{color:var(--leaf);font-family:Georgia,serif;text-align:center;padding:1rem}.product-copy{padding:1rem;display:flex;flex-direction:column;flex:1}.product-copy .eyebrow{font-size:.6rem;margin-bottom:.6rem}.product-copy h3{font-size:1.3rem;line-height:1.2;margin-bottom:.4rem}.product-copy .pack{font-size:.82rem;color:#53665e}.product-description{font-size:.82rem;line-height:1.5}.product-bottom{margin-top:auto}.product-price{display:block;font-size:1.35rem;margin:.7rem 0 .1rem}.price-caption{font-size:.7rem;color:#52655d;display:block;margin-bottom:.8rem}.product-copy button{width:100%;font-size:.83rem;min-height:44px;padding:.6rem}.shop-basket{position:sticky;top:7rem;background:var(--cream);padding:1.5rem;border:1px solid var(--line);border-radius:1rem}.shop-basket .button{width:100%}.shop-basket .eyebrow{font-size:.7rem}.basket-line{border-bottom:1px solid var(--line);padding:.8rem 0}.basket-line strong{font-size:.87rem;display:block}.basket-line small{display:block}.quantity-controls{display:flex;gap:.7rem;align-items:center;margin-top:.5rem}.quantity-controls button{width:36px;height:36px;background:white;border:1px solid var(--line);border-radius:.4rem;font-size:1rem;color:var(--ink)}.quantity-controls .remove-item{width:auto;font-size:.72rem;margin-left:auto}.basket-total{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0}.basket-total span{font-size:.85rem}.button:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.shop-explainer{display:grid;grid-template-columns:1fr 1fr;gap:6vw;background:var(--mint)}dialog{border:1px solid var(--line);border-radius:1.3rem;padding:2rem;max-width:36rem;width:calc(100% - 2rem);max-height:85vh;overflow:auto;color:var(--ink);background:var(--paper)}dialog::backdrop{background:rgba(9,34,29,.6)}dialog h2{font-size:2.2rem}.dialog-close{float:right;border:0;background:transparent;font-size:2rem;color:var(--ink);cursor:pointer;min-width:44px;min-height:44px}.preview-line{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--line);font-size:.9rem}#basket-count{margin-left:.5rem}.shop-page :focus-visible{outline:3px solid #22674c;outline-offset:4px}
.goal-section{padding:4rem 5vw;background:var(--mint);scroll-margin-top:6rem}.goal-intro{max-width:48rem}.goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin:2rem 0}.goal-card{background:var(--paper);border:1px solid var(--line);border-radius:1.2rem;padding:1.6rem;scroll-margin-top:6rem;min-width:0}.goal-card h3{font-size:1.55rem;line-height:1.25}.goal-card p{font-size:.95rem;line-height:1.65}.goal-card details{border-top:1px solid var(--line);padding:1rem 0}.goal-card summary{cursor:pointer;font-weight:600;min-height:2rem}.goal-card a{overflow-wrap:anywhere}.goal-link,.product-learn{display:block;font-weight:600;margin:.7rem 0;line-height:1.5}.product-learn{font-size:.85rem}.goal-card:target{outline:3px solid #22674c;outline-offset:4px}
.pack-selector{display:block;font-size:.85rem;margin:.6rem 0}.pack-selector select{display:block;width:100%;padding:.65rem;margin-top:.3rem;border:1px solid var(--line);border-radius:.5rem;background:var(--paper);color:var(--ink);font:inherit}#your-routine .button{margin:.3rem .3rem .3rem 0;white-space:normal}
@media(max-width:650px){.goal-grid{grid-template-columns:1fr}.goal-section{padding:3rem 5vw}}
@media(max-width:1200px){.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-layout{gap:1.5rem;grid-template-columns:minmax(0,1fr) 18rem}}
@media(max-width:800px){.shop-layout,.shop-hero,.shop-explainer{grid-template-columns:1fr}.shop-basket{position:static}.shop-hero{padding-top:3rem}.shop-hero-art{max-width:26rem;justify-self:center;width:100%}.shop-trust{flex-wrap:wrap}.shop-layout{padding:3rem 5vw}.shop-filters{flex-direction:column}}
@media(max-width:460px){.shop-grid{gap:.6rem}.product-copy{padding:.7rem}.product-copy h3{font-size:1.15rem}.product-image{padding:.5rem}.product-copy button{font-size:.73rem}.product-description{font-size:.76rem}.shop-hero h1{font-size:2.9rem}}
