:root{--bg:#f7f3ee;--card:#ede8e0;--border:#ddd5c8;--ink:#2c1a0e;--secondary:#6b4f3a;--muted:#a08878;--orange:#d4622a;--orange-tint:#fbf0e8;--green:#2d6a4f;--green-tint:#e3ede7;--white:#fff;--rule:#e2dace;--font:"Plus Jakarta Sans", sans-serif;--mono:"Inconsolata", monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{flex-direction:column;min-height:100%;display:flex}a{color:inherit;text-decoration:none}button{font-family:inherit}img{max-width:100%;display:block}.eyebrow{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--orange);font-size:12px;font-weight:700}.card-hard{background:var(--card);border:2px solid var(--ink);box-shadow:6px 6px 0 var(--ink);border-radius:20px}.app-card{background:var(--white);border:1.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:20px}.stripe{background:repeating-linear-gradient(135deg, var(--card) 0, var(--card) 5px, var(--border) 5px, var(--border) 10px)}.grid-bg{background-color:var(--ink);background-image:linear-gradient(#f7f3ee0f 1px,#0000 1px),linear-gradient(90deg,#f7f3ee0f 1px,#0000 1px);background-size:36px 36px}.btn{background:var(--orange);color:var(--white);font-family:var(--font);letter-spacing:-.01em;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);cursor:pointer;border-radius:14px;padding:15px 30px;font-size:16px;font-weight:800;transition:transform 60ms,box-shadow 60ms;display:inline-block}.btn:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.container{width:100%;max-width:1080px;margin:0 auto;padding:0 24px}.catalog{--catalog-orange-ink:#a54c20;--catalog-orange-fill:#b85220;--catalog-orange-soft:#ebb894;--catalog-touch:44px;--catalog-section:48px;--catalog-duration:.12s;background:var(--bg);width:100%;color:var(--ink);font-family:var(--font);flex:1;font-size:15px;font-weight:500;line-height:1.55}.catalog-tone-cleanse{--catalog-phase:#4a90c4;--catalog-phase-tint:#e9f2f8}.catalog-tone-condition{--catalog-phase:#9b87d4;--catalog-phase-tint:#f3f1fa}.catalog-tone-treat{--catalog-phase:#6aaf8b;--catalog-phase-tint:#edf5f1}.catalog-tone-style{--catalog-phase:#c4677a;--catalog-phase-tint:#f8edef}.catalog-tone-seal{--catalog-phase:#c4954a;--catalog-phase-tint:#f8f2e9}.catalog :focus-visible{outline:3px solid var(--orange);outline-offset:2px}.catalog-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:22px;height:22px;display:block}.catalog-visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.catalog-page{max-width:1080px;margin:0 auto;padding:22px 20px 64px}.catalog-detail{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:36px;margin-top:24px;display:grid}.catalog-detail-art{aspect-ratio:1;background:var(--card);border:1px solid var(--border);color:var(--secondary);border-radius:16px;place-items:center;display:grid;overflow:hidden}.catalog-detail-art img{object-fit:contain;width:100%;height:100%}.catalog-detail-phase{color:var(--secondary);margin-top:16px;font-weight:700}.catalog-detail-description{white-space:pre-line;overflow-wrap:anywhere;max-width:60ch;margin-top:24px}.catalog-detail-actions{margin-top:32px}.catalog-form-page{max-width:680px}.catalog-request-form{gap:8px;margin-top:28px;display:grid}.catalog-request-form label{margin-top:14px;font-weight:700}.catalog-request-form input{border:2px solid var(--ink);width:100%;min-height:48px;color:var(--ink);font:inherit;background:#fff;border-radius:10px;padding:10px 14px}.catalog-request-form input:disabled{opacity:.7}.catalog-optional,.catalog-form-help{color:var(--secondary);font-weight:500}.catalog-form-error{color:#862e22;border:2px solid #9b3f30;border-radius:8px;padding:12px}.catalog-request-form .catalog-actions{margin-top:20px}@media (width<=720px){.catalog-detail{grid-template-columns:1fr;gap:24px}.catalog-detail-art{width:100%;max-width:480px}}.catalog-title{letter-spacing:-.033em;overflow-wrap:anywhere;font-size:33px;font-weight:800;line-height:1.15}.catalog-deck{max-width:56ch;color:var(--secondary);margin-top:8px}.catalog-crumb{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;font-size:13px;font-weight:700;display:flex}.catalog-crumb a{color:var(--catalog-orange-ink);border-bottom:2px solid var(--orange)}.catalog-crumb .catalog-icon{width:14px;height:14px;color:var(--muted)}.catalog-crumb b{color:var(--secondary);overflow-wrap:anywhere;font-weight:700}.catalog-status{min-height:19px;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--secondary);margin-top:12px;font-size:12.5px;font-weight:700;display:block}.catalog-searchbox{background:var(--white);border:2px solid var(--ink);max-width:640px;box-shadow:3px 3px 0 var(--ink);border-radius:16px;margin-top:24px}.catalog-search{align-items:center;gap:12px;height:58px;padding:0 7px 0 14px;display:flex}.catalog-search>.catalog-icon{width:21px;height:21px;color:var(--secondary)}.catalog-search input{min-width:0;height:44px;color:inherit;font:inherit;background:0 0;border:none;flex:1;font-size:16px}.catalog-search input::placeholder{color:var(--secondary)}.catalog-search button{width:var(--catalog-touch);height:var(--catalog-touch);background:var(--catalog-orange-fill);color:var(--white);cursor:pointer;border:none;border-radius:11px;flex-shrink:0;place-items:center;display:grid}.catalog-search button:disabled{cursor:not-allowed;opacity:.55}.catalog-request-line{color:var(--catalog-orange-ink);margin-top:14px;font-size:13.5px;font-weight:700}.catalog-request-line a{border-bottom:2px solid var(--orange)}.catalog-phase{margin-top:var(--catalog-section);border-top:2px solid var(--ink);padding-top:20px;scroll-margin-top:24px}.catalog-phase-number{font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--secondary);margin-bottom:7px;font-size:11px;font-weight:700;display:block}.catalog-phase-name{letter-spacing:-.028em;align-items:center;gap:10px;font-size:24px;font-weight:800;display:flex}.catalog-phase-name i{background:var(--catalog-phase);border-radius:3px;flex-shrink:0;width:12px;height:12px;display:block}.catalog-phase-blurb{max-width:58ch;color:var(--secondary);margin-top:8px}.catalog-categories{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px;display:grid}.catalog-category{aspect-ratio:1;background:var(--white);border:2px solid var(--ink);min-width:0;box-shadow:3px 3px 0 var(--ink);transition:box-shadow var(--catalog-duration), transform var(--catalog-duration);border-radius:16px;flex-direction:column;padding:12px;display:flex}.catalog-category:hover{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.catalog-category-art{background:var(--catalog-phase-tint);border-radius:10px;flex:1;min-height:24px;margin-bottom:10px}.catalog-category-name{letter-spacing:-.012em;overflow-wrap:anywhere;font-size:13.5px;font-weight:800;line-height:1.25}.catalog-category-count{font-family:var(--mono);color:var(--secondary);margin-top:3px;font-size:12px;font-weight:700}.catalog-controls{flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px;display:flex}.catalog-chip{min-height:var(--catalog-touch);background:var(--white);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);color:inherit;cursor:pointer;transition:box-shadow var(--catalog-duration), transform var(--catalog-duration);border-radius:14px;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:700;display:inline-flex}.catalog-chip:active{box-shadow:1px 1px 0 var(--ink);transform:translate(1px,1px)}.catalog-chip .catalog-icon{width:18px;height:18px}.catalog-chip-count{background:var(--catalog-orange-fill);min-width:22px;height:22px;color:var(--white);font-family:var(--mono);border-radius:999px;place-items:center;padding:0 6px;font-size:12px;font-weight:700;display:inline-grid}.catalog-applied{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.catalog-tag{min-height:var(--catalog-touch);background:var(--orange-tint);border:2px solid var(--catalog-orange-soft);color:var(--catalog-orange-ink);border-radius:999px;align-items:center;gap:4px;padding-left:12px;font-size:13px;font-weight:700;display:inline-flex}.catalog-tag a{border-radius:999px;place-items:center;width:40px;height:40px;display:grid}.catalog-tag .catalog-icon{width:14px;height:14px}.catalog-clear{min-height:var(--catalog-touch);color:var(--catalog-orange-ink);text-decoration:underline;-webkit-text-decoration-color:var(--orange);text-decoration-color:var(--orange);text-underline-offset:4px;align-items:center;padding:0 4px;font-size:13px;font-weight:700;text-decoration-thickness:2px;display:inline-flex}.catalog-list{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:28px;display:grid}.catalog-row{background:var(--white);border:2px solid var(--ink);min-width:0;box-shadow:3px 3px 0 var(--ink);transition:box-shadow var(--catalog-duration), transform var(--catalog-duration);border-radius:16px;align-items:flex-start;gap:14px;padding:14px;display:flex;position:relative}.catalog-row:hover{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.catalog-row:has(.catalog-row-link:focus-visible){outline:3px solid var(--orange);outline-offset:2px}.catalog-thumb{background:var(--card);border-radius:10px;flex-shrink:0;place-items:center;width:104px;height:104px;display:grid;overflow:hidden}.catalog-thumb img{object-fit:contain;width:100%;height:100%;display:block}.catalog-no-image{color:var(--secondary);flex-direction:column;align-items:center;gap:5px;display:flex}.catalog-no-image .catalog-icon{width:24px;height:24px}.catalog-no-image span{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.catalog-row-body{flex:1;min-width:0}.catalog-row-brand{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--secondary);overflow-wrap:anywhere;margin-bottom:3px;font-size:11px;font-weight:700;display:block}.catalog .catalog-row-link:focus-visible{outline:none}.catalog-row-link:after{content:"";border-radius:16px;position:absolute;inset:0}.catalog-row-name{letter-spacing:-.018em;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:15.5px;font-weight:800;line-height:1.3;display:-webkit-box;overflow:hidden}.catalog-row-meta{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.catalog-pill{border:1px solid var(--catalog-phase);background:var(--catalog-phase-tint);border-radius:999px;align-items:center;min-height:26px;padding:0 10px;font-size:13px;font-weight:700;display:inline-flex}.catalog-row-description{color:var(--secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-top:10px;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.catalog-skeleton-category{aspect-ratio:1;background:var(--card);border:2px solid var(--border);border-radius:16px}.catalog-skeleton-row{background:var(--white);border:2px solid var(--border);border-radius:16px;gap:14px;padding:14px;display:flex}.catalog-skeleton-block{background:var(--card);border-radius:10px}.catalog-skeleton-thumb{flex-shrink:0;width:96px;height:96px}.catalog-skeleton-lines{flex:1}.catalog-skeleton-line{border-radius:4px;height:10px;margin-bottom:9px}.catalog-w35{width:35%}.catalog-w60{width:60%}.catalog-w85{width:85%}.catalog-w95{width:95%}@media (prefers-reduced-motion:no-preference){.catalog-skeleton-category,.catalog-skeleton-block{animation:1.4s ease-in-out infinite catalog-pulse}@keyframes catalog-pulse{0%,to{opacity:1}50%{opacity:.55}}}.catalog-panel{margin-top:var(--catalog-section);background:var(--card);border:2px solid var(--ink);text-align:center;border-radius:16px;padding:32px 24px}.catalog-panel-icon{background:var(--white);border:2px solid var(--ink);width:56px;height:56px;color:var(--secondary);border-radius:16px;place-items:center;margin:0 auto 16px;display:grid}.catalog-panel-icon .catalog-icon{width:26px;height:26px}.catalog-panel h2{letter-spacing:-.025em;font-size:20px;font-weight:800}.catalog-panel>p{max-width:46ch;color:var(--secondary);margin:8px auto 0}.catalog-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px;display:flex}.catalog-btn{min-height:var(--catalog-touch);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);cursor:pointer;transition:box-shadow var(--catalog-duration), transform var(--catalog-duration);border-radius:14px;justify-content:center;align-items:center;padding:0 20px;font-size:15px;font-weight:700;display:inline-flex}.catalog-btn:active{box-shadow:1px 1px 0 var(--ink);transform:translate(1px,1px)}.catalog-btn-primary{background:var(--catalog-orange-fill);color:var(--white)}.catalog-btn-secondary{background:var(--white);color:var(--ink)}.catalog-request{text-align:left;max-width:420px;margin:20px auto 0}.catalog-request label{margin-bottom:6px;font-size:13px;font-weight:700;display:block}.catalog-request input{width:100%;min-height:var(--catalog-touch);background:var(--white);border:2px solid var(--ink);color:inherit;font:inherit;border-radius:14px;padding:0 12px;font-size:16px}.catalog-pagination{margin-top:var(--catalog-section);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.catalog-pagination a,.catalog-pagination span{min-width:var(--catalog-touch);min-height:var(--catalog-touch);border-radius:14px;place-items:center;padding:0 12px;font-size:14px;font-weight:700;display:inline-grid}.catalog-pagination a{background:var(--white);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink)}.catalog-pagination a:active{box-shadow:1px 1px 0 var(--ink);transform:translate(1px,1px)}.catalog-pagination [aria-current=page]{background:var(--catalog-orange-fill);border:2px solid var(--ink);color:var(--white)}.catalog-pagination .catalog-page-gap{min-width:auto;color:var(--secondary);padding:0 4px}body:has(.catalog-sheet[open]){overflow:hidden}.catalog-sheet{overscroll-behavior:contain;background:var(--bg);border:none;border-top:2px solid var(--ink);width:100%;max-width:100%;max-height:88dvh;color:var(--ink);border-radius:24px 24px 0 0;margin:auto 0 0;padding:0;position:fixed;overflow-y:auto}.catalog-sheet::backdrop{background:#2c1a0e80}.catalog-sheet-inner{padding:16px 20px calc(16px + env(safe-area-inset-bottom,0px))}.catalog-sheet-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.catalog-sheet-top h2{letter-spacing:-.025em;font-size:20px;font-weight:800}.catalog-sheet-close{width:var(--catalog-touch);height:var(--catalog-touch);border:2px solid var(--border);color:inherit;cursor:pointer;background:0 0;border-radius:11px;flex-shrink:0;place-items:center;display:grid}.catalog-sheet-close .catalog-icon{width:19px;height:19px}.catalog-filter-group{margin-top:28px}.catalog-filter-title{letter-spacing:.02em;margin-bottom:10px;font-size:13px;font-weight:700;display:block}.catalog-filter-note{color:var(--secondary);margin:-6px 0 10px;font-size:13px}.catalog-options{flex-wrap:wrap;gap:8px;display:flex}.catalog-option{min-height:var(--catalog-touch);background:var(--white);border:2px solid var(--ink);color:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:700;display:inline-flex}.catalog-option[aria-pressed=true]{background:var(--orange-tint);border-color:var(--catalog-orange-ink);color:var(--catalog-orange-ink)}.catalog-option i{background:var(--catalog-phase);border-radius:2px;width:9px;height:9px;display:block}.catalog-sheet-foot{background:var(--bg);border-top:2px solid var(--ink);gap:10px;margin-top:28px;padding-top:16px;display:flex;position:sticky;bottom:0}.catalog-sheet-foot .catalog-btn-primary{flex:1}@media (width>=720px){.catalog-categories{grid-template-columns:repeat(5,1fr)}.catalog-list{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-sheet{border-top:none;border-left:2px solid var(--ink);border-radius:24px 0 0 24px;width:420px;height:100dvh;max-height:none;margin:0 0 0 auto}}@media (width<=380px){.catalog-thumb{width:80px;height:80px}}@media (prefers-reduced-motion:reduce){.catalog-category,.catalog-row,.catalog-chip,.catalog-btn{transition:none}}
