/* White-led presentation; packaging colors remain in the artwork and accents. */
:root { --ink:#24292b; --muted:#5b6560; --line:#e2e9df; --pale:#f5faee; }
body,.header,.hero,.how,.collection,.footer { background:#fff; color:var(--ink); }
.header { border-bottom:1px solid var(--line); }
.desktop-nav a:hover { border-color:var(--purple); }
.hero:before { background-image:radial-gradient(#6e933518 1.2px,transparent 1.4px); }
.hero .eyebrow,.hero-how { color:var(--purple); }
.hero-description { color:var(--ink); }
.hero-points { color:#486619; }
.hero-bottom { color:var(--muted); border-color:var(--line); }
.down-circle { color:var(--purple); border-color:#b7cf8e; }
.package-halo { border-color:#dcebc5; background:radial-gradient(ellipse,#eff9db 12%,#f8fcf1 55%,transparent 72%); }
.cloth-float { filter:drop-shadow(12px 24px 18px #52683730); }
.pack-ribbon svg { background:#fff; }
.pack-ribbon svg path:first-child { fill:#e5f2cc; }
.how .section-index,.collection .section-index { border-color:var(--line); }
.how .section-index>span:last-child,.collection .section-index>span:last-child { color:var(--muted); }
.how-heading h2,.collection-heading h2 { color:var(--ink); }
.how-heading h2 em,.collection-heading h2 em { color:var(--purple); text-shadow:none; -webkit-text-stroke:0; }
.how-star { color:#8dc315; }
.step { background:var(--pale); border:1px solid #dce9c9; border-radius:30px; }
.step:hover { background:#edf7dd; }
.step img { box-shadow:0 0 0 3px #d6e7ba; }
.step p { color:var(--muted); }
.sponge-section { background:#f2f9e5; border-radius:0; border-block:1px solid #e0eccb; }
.sponge-message h2 em { text-shadow:none; -webkit-text-stroke:0; }
.uses { border-top:1px solid var(--line); border-radius:0; }
.application>div { border-color:#dbe8c9; box-shadow:none; }
.application h3,.applications .application:nth-child(2n) h3 { background:#fff; color:var(--purple); border:1px solid var(--line); box-shadow:0 4px 12px #24341d08; }
.collection { border-top:1px solid var(--line); }
.collection-heading>p,.product-info p,.product-info .eyebrow { color:var(--muted); }
.product-art,.product-card:nth-child(2) .product-art,.product-card:nth-child(3) .product-art { background:#f6f9f2; border:1px solid #e0e9d8; }
.product-card:nth-child(2) .product-art { background:#edf6de; }
.product-card:nth-child(3) .product-art { background:#f2f4f3; }
.product-pill { border:1px solid var(--line); }
.product-info h3 { color:var(--purple); text-shadow:none; }
.pro { background:#f4f8ef; color:var(--ink); border-top:1px solid #dce8cd; }
.pro-copy h2 { color:var(--ink); }
.pro-copy h2>span { color:var(--purple); }
.pro-copy>p,.pro-surfaces { color:var(--muted); }
.pro-surfaces { border-color:#dce8cd; }
.pro-type { color:#6f8a3d0d; }
.footer { border-top:5px solid var(--lime); }
.footer-top>div { color:var(--ink); }
.footer-word { color:var(--purple); text-shadow:none; }
.footer-bottom { border-color:var(--line); }
.footer #motion-toggle>span { color:var(--purple); }
:focus-visible { outline:3px solid var(--purple); outline-offset:5px; }
.texture-tabs button,.circle-button,.menu-toggle { min-height:44px; }
@media(max-width:800px) {
 .hero,#mobile-nav { background:#fff; color:var(--ink); }
 #mobile-nav { border-bottom:2px solid var(--lime); box-shadow:0 12px 20px #24341d12; }
}
.product-info { flex-wrap:wrap; }
.circle-button { width:auto; height:auto; min-height:44px; padding:10px 15px; border-radius:10px; font:700 12px/1.3 'DM Sans',sans-serif; display:inline-flex; align-items:center; gap:12px; background:var(--purple); box-shadow:0 3px 0 #39106a; }
.circle-button span { font-size:22px; }
body:has(dialog[open]) { overflow:hidden; }
.dialog-close { min-width:44px; min-height:44px; }
