.store-intro,.request-intro{padding-top:64px;padding-bottom:48px;max-width:1000px;text-align:center}.store-intro>p,.request-intro>p{max-width:720px;margin-left:auto;margin-right:auto}.store-note{font-size:14px;color:var(--muted)}.store-surface{background:#e3f1fb;padding:48px 0 64px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.product-card{min-width:0}.product-photo{width:100%;border:0;padding:0;background:#e9e4dd;aspect-ratio:4/5;position:relative;overflow:hidden;border-radius:160px 160px 24px 24px;display:block;cursor:zoom-in}.product-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.product-photo:hover img{transform:scale(1.035)}.photo-chip{position:absolute;bottom:16px;left:16px;background:#f4f8e9;border-radius:24px;padding:7px 13px;font-size:12px;font-weight:700}.product-card h2{font-size:34px;margin:22px 0 12px}.product-card p{font-size:15px}.product-card .button{width:100%}.product-card .product-description{min-height:75px}.product-card .order-note{font-size:12px;color:var(--muted);margin-top:15px}.cupcake-placeholder{cursor:default;background:repeating-conic-gradient(#c4dff2 0% 25%,#f4f8e9 0% 50%) 0 0/64px 64px;display:grid;place-items:center;border:1px solid #bdd7e8}.cupcake-placeholder>div{background:#fff5fa;width:75%;padding:30px 20px;border-radius:50%;aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;text-align:center;box-shadow:0 6px 0 #edcddd;color:var(--pink)}.cupcake-placeholder strong{font:36px/1.1 var(--retro)}.cupcake-placeholder span{font-size:13px;margin-top:18px}.shop-faq{padding-top:65px;padding-bottom:65px;text-align:center;max-width:850px}.shop-faq h2{font-size:42px}.shop-faq .fine-print{text-align:center}.gallery-thumbs{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.gallery-thumbs button{width:65px;height:76px;border:2px solid transparent;border-radius:10px;padding:0;overflow:hidden;background:#fff;cursor:pointer}.gallery-thumbs button[aria-pressed=true]{border-color:var(--pink);outline:2px solid var(--pink);outline-offset:2px}.gallery-thumbs img{width:100%;height:100%;object-fit:cover}.gallery-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:36px;align-items:center}#gallery-image{width:100%;height:min(60vh,600px);object-fit:contain;border-radius:18px;background:#f4f1ee;display:block}#gallery-dialog{width:min(1000px,calc(100% - 30px));max-height:92vh;border:0;border-radius:26px;padding:54px 30px 30px;background:var(--green-wash);color:var(--ink)}#gallery-dialog::backdrop{background:rgba(40,26,37,.68)}.gallery-close{position:absolute;right:16px;top:9px;border:0;background:transparent;color:var(--ink);font-size:32px;cursor:pointer;width:40px;height:40px}.gallery-copy h2{font-size:46px}.request-intro a:not(.button),.calendar-surface>div>p a{text-decoration:underline;text-underline-offset:3px}.request-intro>.text-link{display:inline-block;margin-bottom:30px}.form-surface,.calendar-surface{background:#e3f1fb;padding:32px 0 60px}.request-frame{width:100%;height:1620px;border:0;display:block;background:#fff;border-radius:20px}.calendar-frame{width:100%;height:680px;border:0;border-radius:20px;background:white}.availability-key{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:26px auto}.availability-key span{background:#e3f1fb;padding:10px 16px;border-radius:15px;font-size:13px}.gallery-copy p{font-size:15px}
@media(max-width:900px){.product-grid{gap:18px}.product-card h2{font-size:29px}.product-card .product-description{min-height:100px}.gallery-layout{gap:24px}}
@media(max-width:720px){.store-intro,.request-intro{padding-top:38px;padding-bottom:32px}.product-grid{grid-template-columns:1fr;gap:46px;max-width:450px;margin:auto}.product-card .product-description{min-height:0}.product-card h2{font-size:36px}.store-surface{padding-top:30px}.product-photo{aspect-ratio:1}.gallery-layout{grid-template-columns:1fr;gap:25px}#gallery-dialog{padding:50px 20px 25px}#gallery-image{height:43vh}.gallery-copy h2{font-size:36px}.shop-faq h2{font-size:36px}.request-frame{height:1850px}.calendar-frame{height:620px}.form-surface .wrap,.calendar-surface .wrap{padding-left:12px;padding-right:12px}}
/* Product-first boutique storefront. */
.shop-page .header{max-width:1440px}.shop-hero{background:#e3f1fb;position:relative;overflow:hidden;border-top:1px solid #d6e7f2}.shop-hero .wrap{max-width:1320px;padding-top:45px;padding-bottom:48px;position:relative}.shop-hero h1{font-family:var(--display);font-weight:500;font-size:clamp(48px,5vw,72px);line-height:1.02;margin-bottom:20px;color:var(--ink)}.shop-hero h1 br{display:none}.shop-hero h1 em{color:var(--pink)}.shop-hero p:not(.eyebrow){font-size:18px;line-height:1.5;margin-bottom:22px}.shop-hero .eyebrow{font-size:12px;margin-bottom:14px}.hero-stamps{position:absolute;right:60px;top:55px;transform:rotate(9deg);padding:20px;background:repeating-conic-gradient(#c4dff2 0% 25%,var(--green-wash) 0% 50%) 0 0/32px 32px;border-radius:50%;border:1px solid #afcfdf}.hero-stamps span{display:flex;align-items:center;justify-content:center;text-align:center;width:150px;height:150px;background:#fff2f8;border-radius:50%;font:28px/1.15 var(--retro);color:var(--pink)}.shop-promise{text-align:center;background:#f7cde2;color:#852346;padding:13px 20px;font:500 13px var(--display);letter-spacing:2px}.shop-promise span{padding:0 24px}.shop-page .store-surface{background:var(--green-wash);padding:48px 0 54px}.shop-page .store-surface>.wrap{max-width:1440px}.shop-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.shop-heading .eyebrow{font-size:11px;margin-bottom:10px}.shop-heading h2{font-family:var(--display);font-weight:500;font-size:38px;margin-bottom:0}.shop-heading>p{font-size:13px;color:var(--muted);margin:0 0 5px}.shop-filters{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0}.shop-filters button{background:transparent;color:var(--ink);border:1px solid #cfd8be;border-radius:30px;padding:9px 18px;cursor:pointer;font-size:14px}.shop-filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.shop-page .product-grid{gap:26px}.shop-page .product-card{background:#fffdfb;border:1px solid #e0e6d3;border-radius:22px;padding:13px 13px 20px;display:flex;flex-direction:column}.shop-page .product-card[hidden]{display:none}.shop-page .product-photo{border-radius:14px;aspect-ratio:1}.shop-page .product-photo img{object-fit:cover}.shop-page .product-tag{font-size:10px;letter-spacing:1.5px;font-weight:700;color:var(--pink);margin:20px 8px 8px}.shop-page .product-card h2{font-family:var(--display);font-weight:500;font-size:29px;line-height:1.15;margin:0 8px 12px}.shop-page .product-description{font-size:14px;min-height:70px;margin:0 8px 16px}.shop-page .product-card .button{width:calc(100% - 16px);margin:0 8px;border-radius:14px;box-shadow:0 3px 0 #93113b}.shop-page .product-card .order-note{text-align:center;font-size:11px;margin:14px 8px 0}.card-thumbs{display:flex;gap:8px;margin:0 8px 22px}.card-thumbs button{border:2px solid transparent;padding:0;background:#f5f2ef;border-radius:9px;width:47px;height:47px;overflow:hidden;cursor:pointer}.card-thumbs button[aria-pressed=true]{border-color:var(--pink)}.card-thumbs img{width:100%;height:100%;object-fit:cover}.coming-note{height:47px;margin:0 8px 22px;display:flex;align-items:center;font-size:12px!important;color:var(--muted)}.shop-order-note{font-size:13px;text-align:center;max-width:750px;margin:30px auto 0;color:var(--muted)}.shop-page .cupcake-placeholder{background:repeating-conic-gradient(#f8d4e5 0% 25%,#fff5fa 0% 50%) 0 0/58px 58px;border:0}.shop-page .cupcake-placeholder>div{box-shadow:none;background:var(--green-wash);width:70%;border:1px solid #e6ebd5}.shop-page .photo-chip{font-size:11px;left:12px;bottom:12px;background:rgba(255,255,255,.95)}.details-strip{background:#e3f1fb;padding:65px 0}.details-strip>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.details-strip h2{font-size:46px}.details-strip p{max-width:470px}.detail-photos{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-photos img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:100px 100px 20px 20px}.detail-photos img:last-child{margin-top:35px}.shop-page .shop-faq{padding-top:60px;padding-bottom:60px}.shop-page .shop-faq>.eyebrow{font-size:11px}.shop-page .shop-faq .fine-print{margin-top:35px;max-width:700px}
@media(max-width:900px){.shop-page .product-description{min-height:115px}.shop-page .product-card h2{font-size:25px}.hero-stamps{right:35px}.hero-stamps span{width:120px;height:120px;font-size:24px}.details-strip>.wrap{gap:30px}}
@media(max-width:720px){.shop-hero .wrap{padding-top:30px;padding-bottom:32px}.shop-hero h1{font-size:45px;max-width:280px}.shop-hero h1 br{display:block}.shop-hero p:not(.eyebrow){font-size:15px;max-width:225px}.hero-stamps{right:-25px;top:65px;padding:12px}.hero-stamps span{width:105px;height:105px;font-size:21px}.shop-hero .button{font-size:15px}.shop-promise{font-size:10px;letter-spacing:1px}.shop-promise span{padding:0 8px}.shop-page .store-surface{padding-top:32px}.shop-heading{align-items:start;flex-direction:column;gap:8px}.shop-heading h2{font-size:31px}.shop-heading>p{font-size:12px}.shop-filters{gap:7px;margin:20px 0}.shop-filters button{font-size:12px;padding:8px 12px}.shop-page .product-grid{max-width:470px;gap:25px}.shop-page .product-card h2{font-size:29px}.shop-page .product-description{min-height:0}.details-strip{padding:38px 0}.details-strip>.wrap{grid-template-columns:1fr;gap:30px}.details-strip h2{font-size:39px}.detail-photos{max-width:450px}.shop-page .shop-faq h2{font-size:38px}}
@media(min-width:721px){.shop-hero h1 em{margin-left:.15em}}
