/* Compact product overview; design editor and order controls keep their layout. */
#products .section-heading{margin:8px 0 22px}#products h1{font-size:clamp(30px,4.2vw,48px);max-width:18ch;margin-bottom:12px}#products .product-intro{color:var(--muted);margin:0;max-width:52ch}
.product-tools{padding:16px 0 12px;background:var(--paper);position:sticky;top:0;z-index:3;border-bottom:1px solid var(--line);margin-bottom:18px}.product-search{position:relative;display:block;max-width:480px}.product-search input{margin:0;border-radius:30px;padding:11px 18px 11px 42px;background:white}.product-search svg{position:absolute;left:15px;top:15px;width:20px;height:20px;pointer-events:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.product-categories{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.product-category{display:inline-flex;gap:7px;align-items:center;justify-content:center;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:24px;padding:7px 14px;font-size:14px;min-height:44px;font-weight:500}.product-category:hover{background:var(--surface)}.product-category[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:white}.category-count{font-size:12px;opacity:.8}
#productCount{font-size:13px;color:var(--muted);margin:0 0 12px}#productGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.gift-card{min-width:0}.gift-card-button{background:white;color:var(--ink);border:1px solid var(--line);padding:0;overflow:hidden;border-radius:18px;display:flex;flex-direction:column;text-align:left;width:100%;height:100%;font-weight:400;box-shadow:0 3px 12px #46372905;transition:box-shadow .15s,border-color .15s}.gift-card-button:hover{background:white;border-color:#a27055;box-shadow:0 6px 22px #46372916}.gift-visual{display:block;width:100%;height:170px;background:#f3eee6}.gift-visual img{display:block;width:100%;height:100%;object-fit:contain;padding:12px}.gift-copy{display:flex;flex-direction:column;padding:16px;flex:1;width:100%}.gift-title{font:22px/1.17 Georgia,serif;min-height:2.34em;margin-bottom:14px;overflow-wrap:break-word}.gift-prices{display:flex;flex-direction:column;gap:3px;margin-bottom:9px}.gift-price-row{display:flex;align-items:baseline;justify-content:space-between;gap:4px;font-size:12px;color:var(--muted)}.gift-price-row strong{font:600 17px/1.4 system-ui,sans-serif;color:var(--accent);white-space:nowrap}.gift-note{font-size:12px;line-height:1.45;color:var(--muted);margin-bottom:13px}.gift-action{display:block;margin-top:auto;padding-top:10px;border-top:1px solid #eee6db;font-size:14px;color:var(--accent);font-weight:650}.product-empty{padding:24px;text-align:center;border:1px dashed var(--line);border-radius:16px}.product-empty button{margin-top:8px}.product-shop-note{display:flex;justify-content:space-between;align-items:center;gap:14px;border-radius:16px;background:#eee8dc;margin-top:28px;padding:20px 24px;color:#544336}.product-shop-note p{margin:0}.product-shop-note strong{font:24px/1.2 Georgia,serif;display:block;margin-bottom:5px}.product-shop-note span{font-size:14px}
.product-dialog-open{overflow:hidden}.product-dialog{color:var(--ink);background:var(--paper);border:0;border-radius:22px;padding:0;width:min(540px,calc(100% - 32px));max-height:calc(100dvh - 40px);overscroll-behavior:contain;box-shadow:0 18px 70px #20181045}.product-dialog::backdrop{background:#251c1670}.product-dialog-inner{padding:24px;position:relative}.product-dialog-close{position:sticky;top:0;float:right;z-index:2;border-radius:50%;width:44px;height:44px;padding:0;font:28px/1 system-ui;background:white;color:var(--ink);border-color:var(--line);box-shadow:0 2px 8px #0001}.product-dialog-close:hover{background:var(--surface)}.product-dialog-image{width:100%;height:150px;object-fit:contain;background:var(--surface);border-radius:12px;margin-top:-32px;padding:10px 44px}.product-dialog-intro h2{font-size:29px;margin:20px 0 8px}.product-dialog-intro p{margin:0 0 18px}.product-dialog .product-price-overview{margin-bottom:22px}.product-dialog .product-size-note{font-size:13px;color:var(--muted)}.product-dialog-question{font-size:22px;margin:0 0 14px}.product-dialog-actions{display:grid;gap:10px}.product-option{position:relative;text-align:left;padding:13px 44px 13px 16px;background:white;color:var(--ink);border-color:var(--line);border-radius:12px}.product-option:first-child{background:var(--accent);color:white;border-color:var(--accent)}.product-option:hover{background:var(--surface);color:var(--ink)}.product-option>span:first-child{display:block;font-weight:650}.product-option small{display:block;font-size:13px;font-weight:400;opacity:.85;margin-top:3px}.product-option-arrow{position:absolute;right:17px;top:23px}.product-dialog-note{font-size:13px;color:var(--muted);text-align:center;margin:18px 0 0}
@media(max-width:1000px){#productGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){header{padding:16px 18px}main{padding:16px 16px 24px}.steps{font-size:12px;gap:20px;margin:0 0 16px}.steps span{padding-top:0}#products .eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:8px}#products h1{font-size:32px;margin-bottom:8px}#products .product-intro{font-size:14px;line-height:1.5}#products .section-heading{margin-bottom:10px}.product-tools{padding:10px 0 12px;margin-bottom:12px}.product-search{max-width:none}.product-categories{gap:6px;margin-top:10px}.product-category{font-size:12px;padding:6px 10px;gap:5px}.category-count{font-size:11px}#productGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gift-visual{height:128px}.gift-visual img{padding:10px}.gift-copy{padding:12px}.gift-title{font-size:19px;margin-bottom:10px;min-height:2.34em}.gift-price-row strong{font-size:16px}.gift-note{font-size:11px}.gift-action{font-size:13px}.gift-card-button{border-radius:14px}.product-shop-note{padding:18px;display:block}.product-shop-note strong{font-size:22px}.product-dialog{width:100%;max-height:92dvh;margin:auto 0 0;border-radius:22px 22px 0 0}.product-dialog-inner{padding:20px 20px max(20px,env(safe-area-inset-bottom))}.product-dialog-image{height:130px}.product-dialog-intro h2{font-size:26px}}
@media(max-width:350px){main{padding-inline:12px}#productGrid{gap:8px}.gift-copy{padding:10px}.gift-title{font-size:18px}.gift-visual{height:110px}.product-category{padding-inline:8px}}
@media(prefers-reduced-motion:reduce){.gift-card-button{transition:none}}

.product-photo-price{display:block;font-size:13px;color:var(--muted);margin-top:4px}.product-prices dd{white-space:normal}.gift-price-type{font-size:11px;color:var(--muted)}.gift-photo-surcharge{font-size:11px;line-height:1.4;margin-top:4px;color:var(--accent)}

/* A catalog with one design route opens directly, including without a dialog handler. */
a.gift-card-button{text-decoration:none;font-family:inherit}a.gift-card-button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
