.catalog-page{--catalog-ink:var(--ocean,#2e2529);--catalog-muted:var(--ocean-soft,#71646b);--catalog-accent:var(--teal,#512337);--catalog-serif:var(--font-serif,Georgia,serif);--catalog-rule:#dce5e5;color:var(--catalog-ink)}
.catalog-page[data-store=adult]{--catalog-accent:#512337;--catalog-rule:#ddd4d8}
.catalog-width{width:min(calc(100% - 2.5rem),1160px);margin-inline:auto}
.catalog-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;font-size:.85rem;color:var(--catalog-muted);padding-block:1rem 2rem}
.catalog-breadcrumbs a{min-height:44px;display:inline-flex;align-items:center;text-underline-offset:.3em}
.catalog-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-areas:"gallery heading" "gallery facts" "gallery actions";gap:1.5rem 3.5rem;align-items:start;padding-bottom:4rem}
.catalog-heading{grid-area:heading}.catalog-kicker{font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;color:var(--catalog-muted);margin:0 0 1rem}.catalog-heading h1{font-family:var(--catalog-serif);font-weight:400;font-size:clamp(2rem,3.2vw,2.8rem);line-height:1.15;letter-spacing:-.025em;margin:0 0 1rem;color:var(--catalog-ink)}
.catalog-page[data-store=adult] .catalog-heading h1{color:var(--catalog-accent)}
.catalog-lead{font-family:var(--catalog-serif);font-size:1.25rem;margin:0 0 1rem}.catalog-heading p:last-child{font-size:1rem;line-height:1.7;color:var(--catalog-muted);margin:0}
.catalog-gallery{grid-area:gallery;min-width:0}.catalog-gallery figure{margin:0}.catalog-main-image{display:block;cursor:zoom-in}.catalog-main-image img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain;aspect-ratio:1;background:#fff}
.catalog-gallery figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;color:var(--catalog-muted);font-size:.8rem;margin-top:.75rem;min-height:2rem}
.catalog-thumbnails{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.catalog-thumbnails button{width:76px;min-height:80px;padding:4px;background:#fff;border:0;border-bottom:2px solid transparent;cursor:pointer}.catalog-thumbnails img{width:68px;height:68px;object-fit:contain}.catalog-thumbnails button[aria-pressed=true]{border-bottom-color:var(--catalog-accent)}.catalog-thumbnails button:focus-visible{outline:3px solid var(--catalog-accent);outline-offset:3px}.catalog-thumbnails button:hover{background:var(--sky,#f7f5f3)}
.catalog-facts{grid-area:facts}.catalog-facts h2{font-family:inherit;font-size:1rem;letter-spacing:0;margin:0 0 .75rem;color:var(--catalog-ink)}.catalog-facts dl{margin:0}.catalog-facts dl>div{display:grid;grid-template-columns:minmax(110px,.85fr) minmax(0,1.3fr);gap:1rem;padding:.5rem 0;font-size:.9rem;line-height:1.55}.catalog-facts dt{color:var(--catalog-muted)}.catalog-facts dd{margin:0;overflow-wrap:anywhere}
.catalog-actions{grid-area:actions}.catalog-actions .button{width:100%;min-height:50px;border-radius:2px}.catalog-actions>p{font-size:.8rem;color:var(--catalog-muted);margin:.8rem 0 0}
.catalog-detail{display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;padding-block:3rem;border-top:1px solid var(--catalog-rule)}.catalog-detail h2,.catalog-faq h2,.catalog-related h2{font-family:var(--catalog-serif);font-weight:400;color:var(--catalog-ink);font-size:clamp(1.7rem,2.5vw,2.15rem);line-height:1.2;letter-spacing:-.02em;margin:0 0 1rem}.catalog-detail p{max-width:60ch;margin:0;color:var(--catalog-muted);line-height:1.8}
.catalog-faq{display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;padding-block:2rem 4rem}.catalog-faq details{border-top:1px solid var(--catalog-rule);padding:1rem 0}.catalog-faq summary{cursor:pointer;min-height:44px;display:list-item;align-content:center;line-height:1.6;padding:.3rem 0;font-weight:500}.catalog-faq details p{margin:.75rem 0 0;color:var(--catalog-muted);font-size:.95rem;line-height:1.7}
.catalog-related{border-top:1px solid var(--catalog-rule);padding-block:2.5rem 4rem}.catalog-related nav{display:flex;flex-wrap:wrap;gap:.75rem 2.5rem}.catalog-related a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:.3em}.catalog-note{font-size:.8rem;color:var(--catalog-muted);margin-top:1.5rem}
.catalog-added .product-visual{background:#fff}.catalog-added .product-visual img{object-fit:contain}.catalog-added .product-copy h2{font-size:clamp(1.85rem,3vw,2.8rem)}
.catalog-added-adult{border-top:1px solid var(--line);padding-top:3rem}.catalog-added-adult h2{font-size:clamp(2rem,3.5vw,2.8rem)}.catalog-added-adult img{aspect-ratio:1;object-fit:contain;max-height:530px}
.catalog-family-links{max-width:1160px;width:calc(100% - 2.5rem);margin:0 auto;padding:2rem 0 3rem}.catalog-family-links h2{font-family:var(--font-serif);font-size:2rem;font-weight:400}.catalog-family-links nav{display:flex;flex-wrap:wrap;gap:1rem 2.5rem}.catalog-family-links a{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:1024px){.catalog-hero{column-gap:2rem}.catalog-heading h1{font-size:2.25rem}.catalog-detail,.catalog-faq{gap:2rem}}
@media(max-width:760px){.catalog-breadcrumbs{padding-block:.5rem 1rem;font-size:.8rem}.catalog-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"heading" "gallery" "facts" "actions";gap:1.5rem;padding-bottom:2.5rem}.catalog-heading h1{font-size:2rem}.catalog-heading{max-width:38rem}.catalog-gallery{max-width:560px;width:100%;justify-self:center}.catalog-main-image img{max-height:520px}.catalog-detail,.catalog-faq{grid-template-columns:minmax(0,1fr);gap:1rem;padding-block:2rem}.catalog-facts dl>div{grid-template-columns:minmax(110px,.85fr) minmax(0,1.3fr)}.catalog-related{padding-block:2rem 3rem}.catalog-related nav{display:grid;gap:.4rem}.catalog-thumbnails{gap:.6rem}.catalog-added-adult{padding-top:2rem}}
