.preset-storefront{padding-block:48px 64px;border-top:1px solid var(--border-color)}
.preset-feature-heading{margin-bottom:24px}
.preset-feature-heading h2{font-size:34px;line-height:1.2;font-weight:500;letter-spacing:-.6px;margin:0 0 8px}
.preset-feature-heading p{margin:0;color:var(--text-sec)}
#featuredDesignCards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:20px}
.preset-feature-card{display:block;background:#f3f5f2;border:1px solid #e7eae5;border-radius:6px;overflow:hidden;color:inherit;text-decoration:none}
.preset-feature-card:hover{color:inherit;border-color:#4f8b7b}
.preset-feature-card.is-selected{border-color:#4f8b7b;box-shadow:0 0 0 2px #4f8b7b}
.preset-feature-card:focus-visible{outline:3px solid #4f8b7b;outline-offset:4px}
.preset-feature-card>img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.preset-heading{margin:56px 0 30px}
.preset-heading h2{font-size:34px;line-height:1.2;font-weight:500;margin:0 0 10px;letter-spacing:-.6px}
/* Keep keyboard focus at the opened content without outlining a noninteractive title. */
.preset-heading h2:focus{outline:none}
.preset-heading>p:last-child{margin:0;color:var(--text-sec)}
.preset-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:60px;align-items:start}
.preset-gallery{position:sticky;top:24px;background:#f5f6f3;border-radius:6px;overflow:hidden}
.preset-mockup{position:relative;aspect-ratio:1;width:100%;isolation:isolate}
.preset-mockup img{pointer-events:none;user-select:none}
.preset-base{position:absolute;width:100%;height:100%;object-fit:contain}
.preset-artwork{position:absolute;height:auto}
.preset-mockup.is-loading{opacity:.3}
.preset-product-title{font-size:26px;line-height:1.2;font-weight:500;margin:0 0 8px}
.preset-price{font-size:21px;margin:0}
.preset-size{font-size:12px;color:var(--text-sec);margin:8px 0 28px}
.preset-fieldset{border:0;padding:0;margin:0 0 26px;min-width:0}
.preset-fieldset legend{font-size:14px;font-weight:600;padding:0;margin-bottom:12px}
.preset-options{display:flex;flex-wrap:wrap;gap:8px}
.preset-option{border:1px solid #d7d7d7;background:white;border-radius:3px;color:#232323;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 13px;font-size:13px}
.preset-option:hover{border-color:#626b64}
.preset-option[aria-pressed=true]{border:2px solid #4f8b7b;padding:8px 12px;background:#f3f8f5;box-shadow:0 0 0 1px #4f8b7b}
.preset-status{font-size:13px;color:#a62424;margin:0 0 10px}
.preset-status:empty{display:none}
.preset-retry{background:none;border:0;text-decoration:underline;padding:0 0 16px}
.preset-cart-button{background:var(--brand-green);color:white;min-height:50px;font-size:15px;font-weight:600;border:0;width:100%;border-radius:3px}
.preset-cart-button:hover{background:var(--brand-green-hover)}
.preset-cart-button:disabled{opacity:.5;cursor:wait}
.preset-shipping{font-size:12px;color:#666;line-height:1.6;margin:14px 0 22px}
.preset-details{border-top:1px solid #ddd;padding:16px 0;font-size:13px}
.preset-details summary{cursor:pointer;font-weight:500}
.preset-details ul{padding-left:18px;color:#666}
@media(max-width:680px){
  .preset-storefront{padding-block:28px 40px}
  .preset-feature-heading{margin-bottom:18px}
  .preset-feature-heading h2{font-size:28px}
  .preset-feature-heading p{font-size:13px}
  #featuredDesignCards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .preset-heading{margin:24px 0 12px}
  .preset-heading h2{font-size:24px;margin-bottom:4px}
  .preset-heading>p:last-child{font-size:13px;line-height:1.3}
  .preset-layout{display:flex;flex-direction:column;align-items:stretch;gap:8px}
  .preset-gallery{border-radius:0}
  .preset-gallery>.preset-mockup{width:var(--mobile-preview-height);max-width:100%}
  .preset-product-title{font-size:20px;margin-bottom:2px}
  .preset-price{font-size:18px;line-height:1.3;margin-bottom:8px}
  .preset-size{display:none}
  .preset-fieldset{margin-bottom:6px}
  .preset-fieldset legend{font-size:13px;line-height:1.3;margin-bottom:4px}
  .preset-options{gap:6px}
  .preset-option{font-size:12px;padding:9px 10px}
  .preset-option[aria-pressed=true]{padding:8px 9px}
  .preset-shipping{margin:10px 0 12px}
  .preset-details{padding:12px 0}
}
