
  :root{
  --co-paper:#f7f2e7; --co-paper-deep:#efe6d4; --co-card:#fffdf7;
  --co-ink:#2e2a24; --co-soft:#6f6a5e; --co-faint:#8a8478;
  --co-line:#e2d9c4; --co-slate:#2b2b2e; --co-slate-deep:#1d1d20;
  --co-bark:#8a5a2b; --co-bark-soft:#f0e6d8;
  --co-toolbar-bg:rgba(247,242,231,.94);
  --co-shadow-card:0 1px 2px rgba(46,42,36,.06),0 10px 28px -18px rgba(46,42,36,.35);
  --co-shadow-lift:0 2px 4px rgba(46,42,36,.08),0 18px 38px -18px rgba(46,42,36,.45);
  --co-overlay:rgba(20,19,17,.92);
}.coasters-page *{box-sizing:border-box}.coasters-page{margin:0;background:var(--co-paper);color:var(--co-ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}.coasters-page h1, .coasters-page h2, .coasters-page h3, .coasters-page p, .coasters-page ul, .coasters-page figure{margin:0}.coasters-page ul{padding:0;list-style:none}.coasters-page img{display:block;max-width:100%}.coasters-page button{font:inherit;cursor:pointer;color:inherit}.coasters-page input{font:inherit}.coasters-page :focus-visible{outline:2px solid var(--co-bark);outline-offset:2px}.coasters-page .wrap{max-width:1240px;margin:0 auto;padding:0 24px}.coasters-page /* brand bar */
  .brandbar{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:20px 0 16px;border-bottom:1px solid var(--co-line)}.coasters-page .brandbar .brand{font-family:Georgia,serif;font-weight:800;font-size:1.06rem}.coasters-page .brandbar .brand span{color:var(--co-bark)}.coasters-page .brandbar .place{font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--co-soft);text-align:right;white-space:nowrap}.coasters-page /* intro */
  .intro{padding:40px 0 8px;max-width:760px}.coasters-page .intro h1{font-family:Georgia,serif;font-weight:800;font-size:clamp(2rem,4.4vw,3.1rem);line-height:1.06;letter-spacing:-.01em;margin-bottom:14px}.coasters-page .intro h1 em{font-style:italic;font-weight:500;color:var(--co-bark)}.coasters-page .intro .lede{font-size:1.05rem;color:var(--co-soft);max-width:38rem}.coasters-page .intro .lede strong{color:var(--co-ink)}.coasters-page .specs{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.coasters-page .specs li{border:1px solid var(--co-line);background:var(--co-card);border-radius:999px;padding:6px 14px;font-size:.85rem;font-weight:600}.coasters-page .specs li b{color:var(--co-bark)}.coasters-page /* collection overview */
  .overview{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:30px 0 6px}.coasters-page .ov-card{display:flex;gap:16px;align-items:center;text-align:left;background:var(--co-card);border:1px solid var(--co-line);border-radius:12px;padding:14px;box-shadow:var(--co-shadow-card);transition:box-shadow .2s ease,transform .2s ease;width:100%}.coasters-page .ov-card:hover{box-shadow:var(--co-shadow-lift);transform:translateY(-2px)}.coasters-page .ov-card .thumb{width:96px;height:96px;flex:0 0 96px;border-radius:8px;overflow:hidden;background:var(--co-paper-deep)}.coasters-page .ov-card .thumb img{width:100%;height:100%;object-fit:cover}.coasters-page .ov-card .ov-name{font-family:Georgia,serif;font-weight:800;font-size:1.2rem;line-height:1.2}.coasters-page .ov-card .ov-count{font-size:.88rem;color:var(--co-soft);margin-top:3px}.coasters-page .ov-card .ov-sub{font-size:.8rem;color:var(--co-faint);margin-top:2px}.coasters-page /* toolbar */
  .toolbar{position:sticky;top:0;z-index:40;background:var(--co-toolbar-bg);backdrop-filter:blur(8px);border-top:1px solid var(--co-line);border-bottom:1px solid var(--co-line);margin-top:28px;padding:13px 0}.coasters-page .toolbar .row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.coasters-page .toolbar .row + .row{margin-top:10px}.coasters-page .chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.coasters-page .chip{border:1px solid var(--co-line);background:var(--co-card);border-radius:999px;padding:7px 15px;font-size:.88rem;font-weight:600}.coasters-page .chip:hover{border-color:var(--co-faint)}.coasters-page .chip[aria-pressed="true"]{background:var(--co-slate);border-color:var(--co-slate);color:#f5f4f2}.coasters-page .chip .n{font-weight:400;opacity:.65;font-size:.8rem;margin-left:4px}.coasters-page .row-label{font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--co-faint);white-space:nowrap}.coasters-page .seg{display:inline-flex;border:1px solid var(--co-line);border-radius:999px;background:var(--co-card);padding:3px;gap:2px}.coasters-page .seg button{border:0;background:none;border-radius:999px;padding:6px 16px;font-size:.88rem;font-weight:600;display:inline-flex;align-items:center;gap:7px}.coasters-page .seg button svg{width:14px;height:14px}.coasters-page .seg button[aria-pressed="true"]{background:var(--co-slate);color:#f5f4f2}.coasters-page .search{margin-left:auto;position:relative}.coasters-page .search input{font-size:.92rem;width:230px;max-width:64vw;padding:9px 14px 9px 38px;border:1px solid var(--co-line);border-radius:999px;background:var(--co-card);color:var(--co-ink)}.coasters-page .search input::placeholder{color:var(--co-faint)}.coasters-page .search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--co-faint);pointer-events:none}.coasters-page .count{font-size:.88rem;color:var(--co-soft);font-weight:500;white-space:nowrap}.coasters-page #setRow{display:none}.coasters-page #setRow.show{display:flex}.coasters-page /* grid */
  .group-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:36px 0 16px}.coasters-page .group-head h2{font-family:Georgia,serif;font-weight:800;font-size:clamp(1.4rem,2.6vw,1.8rem)}.coasters-page .group-head .gcount{font-size:.88rem;color:var(--co-soft);white-space:nowrap}.coasters-page .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;list-style:none}.coasters-page .card{background:var(--co-card);border:1px solid var(--co-line);border-radius:10px;overflow:hidden;box-shadow:var(--co-shadow-card);transition:box-shadow .2s ease,transform .2s ease}.coasters-page .card:hover{box-shadow:var(--co-shadow-lift);transform:translateY(-2px)}.coasters-page .card button.tile{display:block;width:100%;padding:0;border:0;background:none;text-align:left}.coasters-page .card .media{display:block;position:relative;aspect-ratio:1/1;background:var(--co-paper-deep)}.coasters-page .card .media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.coasters-page .card .meta{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:11px 14px 12px}.coasters-page .card .meta .name{font-family:Georgia,serif;font-weight:700;font-size:.98rem;white-space:nowrap}.coasters-page .card .meta .tags{font-size:.75rem;color:var(--co-faint);font-weight:500;text-align:right;white-space:nowrap}.coasters-page .empty{display:none;text-align:center;padding:56px 20px 64px;color:var(--co-soft)}.coasters-page .empty.show{display:block}.coasters-page .empty .big{font-family:Georgia,serif;font-size:1.3rem;font-weight:700;color:var(--co-ink);margin-bottom:8px}.coasters-page .empty p{margin:0 auto;max-width:30rem}.coasters-page .empty button{margin-top:16px;border:1px solid var(--co-line);background:var(--co-card);border-radius:999px;padding:8px 18px;font-weight:600;font-size:.9rem}.coasters-page /* notes */
  .notes{border-top:1px solid var(--co-line);margin-top:52px;padding:40px 0 4px}.coasters-page .notes h2{font-family:Georgia,serif;font-weight:800;font-size:clamp(1.4rem,2.8vw,1.9rem);margin-bottom:8px}.coasters-page .notes .intro-p{color:var(--co-soft);max-width:44rem;margin-bottom:28px}.coasters-page .notes .cols{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.coasters-page .notes h3{font-family:Georgia,serif;font-size:1.02rem;font-weight:700;margin-bottom:8px;padding-top:14px;border-top:3px solid var(--co-slate)}.coasters-page .notes .cols p{color:var(--co-soft);font-size:.94rem}.coasters-page .notes .cols p + p{margin-top:10px}.coasters-page footer{margin-top:48px;background:var(--co-slate);color:#d9d7d2}.coasters-page footer .wrap{padding-top:32px;padding-bottom:36px}.coasters-page footer .fbrand{font-family:Georgia,serif;font-weight:800;color:#f5f4f2;font-size:1.05rem;margin-bottom:6px}.coasters-page footer p{font-size:.88rem;color:#b9b6ae;max-width:48rem}.coasters-page footer p + p{margin-top:8px}.coasters-page footer a{color:#e8c48f}.coasters-page /* lightbox */
  .lightbox{position:fixed;inset:0;z-index:100;background:var(--co-overlay);display:none;flex-direction:column}.coasters-page .lightbox.open{display:flex}.coasters-page .lb-top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 20px;color:#f5f4f2}.coasters-page .lb-title{font-family:Georgia,serif;font-weight:800;font-size:1.15rem;min-width:0}.coasters-page .lb-title .lb-sub{display:block;font-family:"Archivo",sans-serif;font-weight:500;font-size:.82rem;color:#b9b6ae;margin-top:2px;word-break:break-all}.coasters-page .lb-close{flex:0 0 auto;width:42px;height:42px;border-radius:50%;border:1px solid rgba(245,244,242,.35);background:none;color:#f5f4f2;font-size:1.25rem;line-height:1}.coasters-page .lb-body{flex:1;display:flex;align-items:safe center;justify-content:center;gap:14px;padding:0 14px;min-height:0;overflow-y:auto}.coasters-page .lb-nav{flex:0 0 auto;width:44px;height:44px;border-radius:50%;border:1px solid rgba(245,244,242,.35);background:rgba(245,244,242,.08);color:#f5f4f2;display:flex;align-items:center;justify-content:center}.coasters-page .lb-nav svg{width:20px;height:20px}.coasters-page .lb-nav:disabled{opacity:.3;cursor:default}.coasters-page .lb-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;width:min(560px,100%);min-width:0;flex:0 1 auto;min-height:0}.coasters-page .lb-fig{background:#26241f;border:1px solid rgba(245,244,242,.18);border-radius:12px;padding:12px;min-width:0}.coasters-page .lb-fig .lb-media{aspect-ratio:1/1;border-radius:6px;overflow:hidden;background:#eceae5}.coasters-page .lb-fig img{width:100%;height:100%;object-fit:cover}.coasters-page .lb-fig figcaption{display:flex;justify-content:space-between;gap:10px;padding:10px 2px 2px;color:#d9d7d2;font-size:.82rem;min-width:0}.coasters-page .lb-fig figcaption .fname{font-weight:600;color:#f5f4f2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1 1 auto}.coasters-page .lb-fig figcaption .fshape{color:#b9b6ae;white-space:nowrap;flex:0 0 auto}.coasters-page .lb-counter{text-align:center;color:#b9b6ae;font-size:.85rem;padding:12px 0 18px}.coasters-page @media (max-width:860px){
    .overview{grid-template-columns:1fr}.coasters-page .ov-card .thumb{width:80px;height:80px;flex-basis:80px}.coasters-page .notes .cols{grid-template-columns:1fr}.coasters-page .grid{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:14px}.coasters-page .card .meta{flex-direction:column;align-items:flex-start;gap:1px}.coasters-page .card .meta .name{white-space:normal}.coasters-page .card .meta .tags{white-space:normal;text-align:left}.coasters-page .search{margin-left:0;width:100%}.coasters-page .search input{width:100%;max-width:none}.coasters-page .lb-pair{gap:10px;width:100%}.coasters-page .lb-fig{padding:8px}.coasters-page .lb-fig figcaption{flex-direction:column;gap:1px;font-size:.72rem}.coasters-page .lb-body{gap:8px;padding:0 8px}.coasters-page .lb-nav{width:34px;height:34px;flex-basis:34px}.coasters-page .lb-title{font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coasters-page .lb-title .lb-sub{white-space:normal}.coasters-page .brandbar .place{display:none}
  }.coasters-page @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto}.coasters-page .card, .coasters-page .ov-card{transition:none}
  }

.coasters-page .product-desc { max-width: 760px; margin-top: 1.6rem; }
.coasters-page .product-desc p { margin: 0 0 0.8rem; }
