.store-main{background:var(--paper);padding-bottom:6.5rem}
.main-nav [aria-current="page"]{color:#b91d50;border-bottom:2px solid #e91d60;padding-bottom:.35rem}
.nav-cart{border:1px solid var(--forest);background:transparent;color:var(--forest);font:700 .85rem var(--sans);letter-spacing:.02em;padding:.62rem .72rem .62rem 1rem;display:inline-flex;align-items:center;gap:.7rem;cursor:pointer;white-space:nowrap}
.nav-cart:hover{background:#f0f3ec}
.cart-count{display:grid;place-items:center;min-width:1.6rem;height:1.6rem;border-radius:50%;background:var(--forest);color:white;font-size:.75rem;padding-inline:.25rem}
.store-intro{padding-block:5rem 3.8rem}
.store-intro .eyebrow{margin-bottom:1.4rem}
.store-intro-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.65fr);align-items:end;gap:5rem}
.store-intro h1{color:var(--forest);font-size:clamp(3.7rem,6vw,6.4rem);max-width:880px;margin:0}
.store-intro h1 em{color:#d71c59}
.store-intro-aside p{font-size:1.05rem;line-height:1.75;color:#4c6258;margin:0 0 1.1rem}
.last-order-trigger{border:0;border-bottom:1px solid currentColor;background:transparent;padding:.25rem 0;color:var(--forest);font:700 .9rem var(--sans);cursor:pointer}
.last-order-trigger[hidden]{display:none}
.catalog-heading{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #b9c6bc;padding-block:1.1rem 1.5rem;color:#4a6357;font-size:.77rem;font-weight:700;letter-spacing:.15em}
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.product-card{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);min-height:320px;background:white;border:1px solid #dce3dc;overflow:hidden}
.product-preview{display:grid;place-items:center;min-height:320px;padding:2.3rem 1.25rem;overflow:hidden}
.preview-pink{background:#f7eaf0}.preview-blue{background:#e9f0f2}.preview-gold{background:#f6f0df}.preview-green{background:#edf1e9}
.product-preview img{width:auto;max-width:100%;max-height:260px;object-fit:contain;background:#fff;box-shadow:0 12px 24px #1f3b3330;border:1px solid #dce3dc}
.product-info{padding:2rem 1.8rem;display:flex;flex-direction:column;align-items:flex-start}
.product-type{font-size:.73rem;line-height:1.5;font-weight:700;letter-spacing:.13em;color:#a01f50;margin:0 0 .8rem}
.product-info h2{font-size:clamp(1.7rem,2.25vw,2.3rem);line-height:1.12;margin-bottom:1rem;color:var(--forest)}
.product-info>p:not(.product-type){font-size:.98rem;line-height:1.6;color:#54665a;margin-bottom:1.8rem}
.product-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;margin-top:auto;padding-top:1rem;border-top:1px solid #e0e7e0}
.product-price{font:700 1.04rem var(--sans);color:var(--forest)}
.add-button{border:0;background:var(--forest);color:white;padding:.73rem .9rem;font:700 .85rem var(--sans);display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;min-height:42px;text-align:left}
.add-button:hover{background:#405a48}
.add-button[disabled]{background:#e7ede7;color:#334c40;cursor:default}
.add-button span{font-size:1.25rem;line-height:.7;font-weight:400}
.store-dialog{border:0;box-shadow:0 20px 70px #172d2680;color:var(--ink);padding:0;background:var(--paper)}
.store-dialog::backdrop{background:#0c271e9c}
.cart-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(460px,100%);max-width:100%;height:100vh;height:100dvh;max-height:none;display:flex;flex-direction:column}
.cart-dialog:not([open]),.downloads-dialog:not([open]){display:none}
.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:2.1rem 2rem 1.5rem;border-bottom:1px solid #d9e2d9}
.dialog-kicker{font-size:.72rem;letter-spacing:.17em;font-weight:700;color:#a32050;margin:0 0 .6rem}
.dialog-head h2{font-size:2.6rem;line-height:1;margin:0}
.close-dialog{border:0;background:transparent;font:400 2rem/1 var(--sans);cursor:pointer;color:var(--forest);min-width:2.5rem;min-height:2.5rem}
.cart-content{padding:1.5rem 2rem;overflow:auto;flex:1}
.cart-empty{font-size:1rem;color:#53665a;line-height:1.7;margin:1rem 0}
.cart-items,.download-items{list-style:none;padding:0;margin:0}
.cart-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 0;border-bottom:1px solid #dce4da}
.cart-item img{width:70px;height:80px;object-fit:contain;background:#eef2ed;border:1px solid #dce4da}
.cart-item-info{flex:1;min-width:0}
.cart-item-info strong{display:block;font:700 1rem/1.35 var(--sans);color:var(--forest)}
.cart-item-info small{display:block;color:#627267;margin:.3rem 0 .55rem;font-size:.82rem}
.remove-item{background:none;border:0;padding:0;color:#a41d50;text-decoration:underline;font:600 .86rem var(--sans);cursor:pointer}
.cart-footer{border-top:1px solid #d9e2d9;padding:1.5rem 2rem 2rem;background:#f4f5ef}
.cart-total{display:flex;align-items:center;justify-content:space-between;font-size:1.05rem}
.cart-total strong{font-size:1.35rem}
.cart-footer p{color:#596b5e;font-size:.85rem;margin:1.1rem 0}
.checkout-button{background:var(--forest);border:0;color:white;display:flex;align-items:center;justify-content:space-between;width:100%;padding:.95rem 1.1rem;min-height:52px;font:700 .95rem var(--sans);cursor:pointer}
.checkout-button:hover:not(:disabled){background:#405a48}
.checkout-button:disabled{opacity:.45;cursor:not-allowed}
.continue-button{display:block;margin:1rem auto 0;padding:.35rem;background:transparent;border:0;color:var(--forest);text-decoration:underline;font:700 .9rem var(--sans);cursor:pointer}
.downloads-dialog{width:min(560px,calc(100% - 2rem));max-height:min(85vh,760px);margin:auto;border-radius:3px;overflow:auto;padding-bottom:1.5rem}
.downloads-intro{padding:1.4rem 2rem 0;color:#526457;line-height:1.65;margin:0}
.download-items{padding:1rem 2rem}
.download-items li{border-bottom:1px solid #dce4da}
.download-items a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;color:var(--forest);font-weight:700;text-decoration:none}
.download-items a:hover{text-decoration:underline}
.download-items a span:last-child{color:#bd1e54;font-size:.85rem;white-space:nowrap}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px){.product-card{grid-template-columns:1fr}.product-preview{min-height:260px}.product-preview img{max-height:230px}}
@media(max-width:760px){.store-intro{padding-block:3.5rem 2.5rem}.store-intro-row{grid-template-columns:1fr;gap:1.5rem}.store-intro h1{font-size:clamp(3.2rem,9vw,5rem)}.product-grid{grid-template-columns:1fr}.product-card{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.product-preview{min-height:300px}.product-preview img{max-height:240px}}
@media(max-width:600px){.product-card{grid-template-columns:1fr}.product-preview{min-height:255px;padding:1.3rem}.product-preview img{max-height:225px}.product-info{padding:1.45rem}.catalog-heading{font-size:.66rem;letter-spacing:.1em}.cart-dialog .dialog-head,.cart-content,.cart-footer{padding-left:1.3rem;padding-right:1.3rem}.downloads-dialog .dialog-head,.downloads-intro,.download-items{padding-left:1.3rem;padding-right:1.3rem}}
@media(max-width:430px){.main-nav{gap:.6rem}.main-nav a{font-size:.76rem}.nav-cart{font-size:.76rem;padding:.5rem .6rem;gap:.4rem}.store-intro h1{font-size:3.25rem}.product-bottom{flex-wrap:wrap}.add-button{width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.add-button,.nav-cart{transition:none}}

.email-label{display:block;font-weight:700;margin:18px 0 8px}#download-email{width:100%;box-sizing:border-box;border:1px solid #87988c;border-radius:10px;padding:13px;font:inherit;background:white}.form-note{font-size:.85rem!important;line-height:1.5;color:#536357}.consent-row{display:flex;gap:10px;align-items:flex-start;font-size:.86rem;line-height:1.5;margin:14px 0}.consent-row input{flex:none;margin-top:5px;accent-color:#253d31}.consent-row a{color:#253d31;text-decoration:underline}.form-error{color:#9a3229!important;font-size:.9rem!important}.bot-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#checkout:disabled{opacity:.6}.store-dialog{max-height:90dvh;overflow:auto}

.resource-details{font-size:.8rem!important;color:#536357!important;margin-top:10px!important}
