:root{--ink:oklch(32% .057 157);--cream:oklch(97% .018 95);--lime:oklch(90% .12 117);--taro:oklch(82% .065 309);--muted:oklch(42% .035 157);--line:oklch(76% .025 130);--display:'Arial Rounded MT Bold','Trebuchet MS',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;color:var(--ink);background:var(--cream);font-family:Arial,sans-serif;font-size:1rem;line-height:1.55}button,select{font:inherit;color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-underline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid var(--ink);outline-offset:5px}p{max-width:65ch}h1,h2,h3{font-family:var(--display);line-height:1.06;letter-spacing:-.045em;text-wrap:balance}h1{font-size:clamp(3.5rem,6.5vw,7rem);margin:20px 0 28px;font-weight:900}h2{font-size:clamp(2.25rem,4vw,4rem);margin:12px 0 24px}h3{font-size:1.65rem;margin:17px 0 6px}button{border:0}.preview-note{padding:9px 20px;text-align:center;background:var(--ink);color:var(--cream);font-size:.8rem;letter-spacing:.015em}.preview-note strong{margin-left:10px}header{min-height:105px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 5vw}.wordmark{font-family:var(--display);font-weight:900;font-size:2rem;letter-spacing:-.07em;text-decoration:none;white-space:nowrap}.wordmark span{font-size:.6em;margin-left:4px}nav{display:flex;gap:36px}nav a{text-decoration:none;font-size:.9rem;font-weight:700}nav a:hover{text-decoration:underline}.bag-button{background:transparent;border:1px solid var(--ink);border-radius:30px;padding:10px 20px;min-height:44px}.bag-button span{background:var(--ink);color:var(--cream);border-radius:100%;font-size:.8rem;padding:4px 8px;margin-left:8px}.hero{display:grid;background:var(--lime);padding:45px 5vw 55px;gap:30px;align-items:center;overflow:hidden}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:700}.hero h1 span{font-style:italic}.intro{font-size:1.25rem;line-height:1.45;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:50px;background:var(--ink);color:var(--cream);padding:14px 22px;border-radius:30px;text-decoration:none;font-size:.9rem;font-weight:700;transition:transform .2s ease-out}.button:hover{transform:translateY(-2px)}.small{font-size:.8rem;margin-top:20px}.hero-image{position:relative;margin:0;min-width:0}.hero-image img{display:block;width:100%;height:auto;aspect-ratio:1.25;object-fit:cover;border-radius:45% 45% 4px 4px}.hero-image figcaption{font-size:.7rem;margin-top:10px;line-height:1.4}.roundel{position:absolute;right:-12px;bottom:40px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;width:110px;height:110px;border:1px solid var(--ink);background:var(--taro);border-radius:50%;font-weight:900;line-height:1.05;transform:rotate(12deg);font-size:1.15rem}.pearl-strip{overflow:hidden;white-space:nowrap;background:var(--ink);color:var(--lime);padding:19px 0;font-weight:700;letter-spacing:.12em;font-size:.85rem;text-align:center}.pearl-strip span{margin:0 40px;letter-spacing:8px}.section{padding:72px 5vw}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px}.section-heading>p{font-size:.9rem;margin-bottom:25px}.collection-note{font-size:.85rem;color:var(--muted);margin:0 0 30px}.products{display:grid;gap:35px}.product{min-width:0}.product-image{display:block;width:100%;height:auto;aspect-ratio:7/8;object-fit:cover}.product-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.product-top strong{font-size:1rem;white-space:nowrap}.product>p{margin:0 0 15px;color:var(--muted);font-size:.9rem}.product details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{cursor:pointer;min-height:48px;padding:12px 0;font-weight:700;font-size:.9rem}details[open] summary{margin-bottom:10px}.size-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:15px}.size-controls label{font-size:.85rem;font-weight:700}.size-controls select{background:var(--cream);border:1px solid var(--ink);border-radius:3px;padding:10px;min-height:44px;flex:1;min-width:100px}.size-controls .button{width:100%}.product-error{color:oklch(36% .12 28);font-size:.85rem;min-height:1.5em;margin:0}.story{display:grid;background:var(--ink);color:var(--cream);gap:45px;padding:65px 7vw;align-items:center}.story p{font-size:1rem;max-width:49ch}.story .footnote{font-size:.75rem;margin-top:24px;color:var(--lime)}.story-art{min-height:300px;position:relative;display:flex;justify-content:center;align-items:flex-end}.story-art p{font-family:var(--display);font-size:2.3rem;font-weight:900;text-align:center;line-height:1.1;transform:rotate(-6deg);margin:180px 0 0;color:var(--lime)}.pearl{position:absolute;display:grid;place-items:center;width:150px;height:150px;border-radius:50%;color:var(--ink);font-weight:900;font-size:2.5rem}.p1{background:var(--lime);left:calc(50% - 140px);top:0;transform:rotate(-15deg)}.p2{background:var(--taro);left:calc(50% - 5px);top:35px;transform:rotate(12deg)}.faq{display:grid;gap:30px}.faq>div>p{font-size:.9rem}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{padding:20px 4px;font-size:1rem}.faq details p{font-size:.9rem;line-height:1.7;padding:0 4px 20px;margin:0}footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:40px 5vw;border-top:1px solid var(--line)}footer p,footer>a:last-child{font-size:.8rem}footer .wordmark{font-size:1.7rem}.bag-panel{padding:25px 5vw 40px;background:oklch(91% .025 128);border-block:1px solid var(--ink)}.bag-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.bag-heading h2{font-size:2rem;margin:12px 0}.bag-panel>p{font-size:.85rem}.bag-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.bag-row p{margin:0}.bag-row-controls{display:flex;gap:12px;align-items:center}.bag-row button{background:transparent;border:1px solid var(--ink);min-width:44px;min-height:44px;border-radius:4px}.bag-total{display:flex;justify-content:space-between;padding-top:20px}.text-button{background:transparent;text-decoration:underline;min-height:44px;padding:10px}.skip{position:absolute;top:-100px;z-index:20;background:var(--cream);padding:10px}.skip:focus{top:0}.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}[hidden]{display:none!important}@media(min-width:700px){.hero{grid-template-columns:1fr 1.05fr;gap:45px}.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.story{grid-template-columns:1fr 1fr}.faq{grid-template-columns:1fr 1.3fr;gap:60px}}@media(max-width:699px){header{min-height:88px;padding:18px 5vw;flex-wrap:wrap}.wordmark{font-size:1.8rem}nav{order:3;width:100%;justify-content:space-between;gap:10px}nav a{font-size:.8rem;min-height:35px;display:flex;align-items:center}.preview-note{font-size:.7rem}.preview-note strong{display:block;margin:0}.hero{padding-top:28px}.hero-image{margin-top:10px}.hero-image img{aspect-ratio:1.25;border-radius:35% 35% 3px 3px}.roundel{right:0;width:90px;height:90px;font-size:1rem}.section{padding-block:50px}.section-heading{display:block}.section-heading>p{margin:0 0 20px}.products{gap:40px}.story{padding-block:45px}.bag-heading h2{font-size:1.6rem}.bag-row-controls{gap:8px}footer{display:block}footer>*{display:block}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Touch controls stay usable on small screens and tablet-width collections. */
nav a{display:inline-flex;align-items:center;min-height:44px}
button:disabled{cursor:default;opacity:.55}
.bag-heading{align-items:flex-start}.bag-heading .text-button{white-space:nowrap}
.bag-row-controls button:focus-visible{outline-offset:3px}
#review-message{overflow-wrap:anywhere}
@media(min-width:700px) and (max-width:999px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:699px){nav a{min-height:44px}.size-controls select{font-size:1rem}.bag-panel .button{width:100%}}
.story-art{overflow:clip}

/* Character collection previews keep the complete tee and canonical artwork visible. */
.hero-image img{aspect-ratio:16/11;object-fit:contain;border-radius:4px}
.product-image{object-fit:contain;aspect-ratio:6/7}
.story-art{min-height:0;flex-direction:column;align-items:center;justify-content:center;gap:22px;overflow:visible}
.story-art img{display:block;width:min(100%,340px);height:auto;max-height:370px;object-fit:contain}
.story-art p{margin:0;font-size:clamp(1.9rem,3.2vw,2.8rem);transform:rotate(-4deg)}
