/* Department + product-type page styles */
.dept-hero{padding:64px 0 32px;position:relative}
.dept-hero .eyebrow{color:var(--ember)}
.dept-hero h1{font-size:clamp(56px,8vw,128px);line-height:.95}
.dept-hero h1 .accent{color:var(--ember);display:block}
.dept-hero h1 .small{font-family:'Special Elite',monospace;text-transform:uppercase;font-size:.32em;letter-spacing:.18em;color:var(--pine-2);display:block;margin-top:18px;font-weight:400}
.dept-hero .lede{max-width:560px;margin-top:24px;color:var(--cream);font-size:17px;line-height:1.65}
.dept-hero .crest{display:flex;flex-direction:column;align-items:flex-end;gap:14px}
.dept-hero .crest .badge{
  width:200px;height:200px;border:2px solid var(--rule);background:var(--char-2);
  display:grid;place-items:center;
  font-family:'Stardos Stencil',sans-serif;font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);
  text-align:center;padding:20px;line-height:1.3;
}
.dept-hero-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;align-items:center}
@media(max-width:900px){.dept-hero-grid{grid-template-columns:1fr;gap:32px}.dept-hero .crest{align-items:flex-start}}

/* Section: products for this dept */
.dept-products{padding:64px 0;border-top:1px solid var(--rule)}
.dept-products .section-head h2{font-size:clamp(36px,4.5vw,64px);line-height:1}
.dept-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:0;border:1px solid var(--rule)}
.dept-product{
  display:flex;flex-direction:column;gap:14px;padding:28px;
  background:var(--char-2);border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);
  text-decoration:none;color:inherit;position:relative;transition:background .15s ease;
}
.dept-product:hover{background:#1d1812}
.dept-product:hover h3{color:var(--ember)}
.dept-product .num{font-family:'Special Elite',monospace;font-size:11px;letter-spacing:.3em;color:var(--ember);text-transform:uppercase}
.dept-product h3{font-size:22px;letter-spacing:.02em;transition:color .15s ease}
.dept-product .blurb{color:var(--cream);font-size:14px;line-height:1.6;flex:1}
.dept-product .ph-thumb{
  aspect-ratio:5/3;background:
    repeating-linear-gradient(0deg, rgba(217,179,122,0.06) 0 2px, transparent 2px 18px),
    repeating-linear-gradient(90deg, rgba(217,179,122,0.03) 0 1px, transparent 1px 4px),
    linear-gradient(180deg, #1a1410, #0c0907);
  display:grid;place-items:center;margin:-28px -28px 0 -28px;
}
.dept-product .ph-thumb .ph{
  font-family:'Special Elite',monospace;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);
  border:1px solid var(--rule);padding:8px 12px;
}
.dept-product .price-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:auto;padding-top:6px;border-top:1px dashed var(--rule)}
.dept-product .price-row .p{font-family:'Stardos Stencil',sans-serif;font-size:24px;color:var(--paper);letter-spacing:.02em}
.dept-product .price-row .arrow{font-family:'Special Elite',monospace;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--pine-2)}
.dept-product:hover .arrow{color:var(--ember)}

/* Bundles strip on dept pages */
.dept-bundles{padding:64px 0;border-top:1px solid var(--rule);background:var(--char-2)}
.bundle-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.bundle-card{
  border:1px solid var(--rule);background:var(--char);padding:28px;
  display:flex;flex-direction:column;gap:14px;text-decoration:none;color:inherit;
  position:relative;transition:border-color .2s ease, transform .2s ease;
}
.bundle-card:hover{border-color:var(--pine);transform:translateY(-2px)}
.bundle-card .lbl{font-family:'Special Elite',monospace;font-size:11px;letter-spacing:.25em;color:var(--ember);text-transform:uppercase}
.bundle-card h3{font-size:24px}
.bundle-card .items{font-family:'Special Elite',monospace;font-size:11px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;line-height:1.7;border-top:1px solid var(--rule);padding-top:12px}
.bundle-card .price-line{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-top:auto}
.bundle-card .price-line .price{font-family:'Stardos Stencil',sans-serif;font-size:32px;color:var(--ember);letter-spacing:.02em}
.bundle-card .price-line .strike{font-family:'Special Elite',monospace;font-size:13px;color:var(--muted);text-decoration:line-through;margin-right:6px}
.bundle-card .price-line .save{font-family:'Special Elite',monospace;font-size:11px;letter-spacing:.18em;color:var(--pine-2);text-transform:uppercase}

/* Tumbler color swatches */
.color-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.color-swatch{
  width:38px;height:38px;border:1px solid var(--rule);position:relative;cursor:pointer;
  transition:border-color .15s ease, transform .15s ease;
}
.color-swatch:hover{border-color:var(--pine);transform:translateY(-1px)}
.color-swatch.on{border-color:var(--ember);box-shadow:inset 0 0 0 2px var(--char)}
.color-swatch::after{content:attr(data-label);position:absolute;left:50%;top:calc(100% + 6px);transform:translateX(-50%);font-family:'Special Elite',monospace;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);white-space:nowrap;opacity:0;transition:opacity .15s}
.color-swatch:hover::after{opacity:1}

/* Wood swatches */
.wood-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.wood-card{padding:14px;border:1px solid var(--rule);background:var(--smoke);cursor:pointer;text-align:center;transition:border-color .15s ease}
.wood-card:hover{border-color:var(--pine)}
.wood-card.on{border-color:var(--ember);background:rgba(199,122,44,.08)}
.wood-card .wlbl{font-family:'Stardos Stencil',sans-serif;font-size:14px;letter-spacing:.04em;color:var(--paper);text-transform:uppercase}
.wood-card .wprice{font-family:'Special Elite',monospace;font-size:13px;color:var(--pine-2);margin-top:4px}

/* Pack picker (stickers) */
.pack-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pack-card{padding:18px 14px;border:1px solid var(--rule);background:var(--smoke);cursor:pointer;text-align:center;transition:border-color .15s ease}
.pack-card:hover{border-color:var(--pine)}
.pack-card.on{border-color:var(--ember);background:rgba(199,122,44,.08)}
.pack-card .pqty{font-family:'Stardos Stencil',sans-serif;font-size:22px;letter-spacing:.02em;color:var(--paper)}
.pack-card .plbl{font-family:'Special Elite',monospace;font-size:10px;letter-spacing:.2em;color:var(--muted);text-transform:uppercase;margin-top:2px}
.pack-card .pprice{font-family:'Special Elite',monospace;font-size:13px;color:var(--pine-2);margin-top:6px}

/* Department picker (on product-type pages) */
.dept-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:6px}
@media(max-width:560px){.dept-picker{grid-template-columns:repeat(2,1fr)}}
.dept-pick{padding:16px 14px;border:1px solid var(--rule);background:var(--smoke);cursor:pointer;text-align:center;transition:border-color .15s ease}
.dept-pick:hover{border-color:var(--pine)}
.dept-pick.on{border-color:var(--ember);background:rgba(199,122,44,.08)}
.dept-pick .dlbl{font-family:'Stardos Stencil',sans-serif;font-size:14px;letter-spacing:.04em;color:var(--paper);text-transform:uppercase}
.dept-pick .dline{font-family:'Special Elite',monospace;font-size:10px;letter-spacing:.18em;color:var(--muted);text-transform:uppercase;margin-top:4px}

/* Bundle "what's inside" section */
.bundle-includes{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0;border:1px solid var(--rule);margin-top:20px}
.include-card{padding:24px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--char-2);position:relative}
.include-card .step{font-family:'Special Elite',monospace;font-size:10px;letter-spacing:.3em;color:var(--ember);text-transform:uppercase}
.include-card h4{font-family:'Stardos Stencil',sans-serif;font-size:18px;letter-spacing:.02em;color:var(--paper);text-transform:uppercase;margin-top:6px}
.include-card p{color:var(--cream);font-size:13px;line-height:1.55;margin-top:8px}
.include-card .v{font-family:'Special Elite',monospace;font-size:12px;letter-spacing:.1em;color:var(--pine-2);text-transform:uppercase;margin-top:10px;padding-top:10px;border-top:1px dashed var(--rule)}

/* Product-type hero */
.type-hero{padding:64px 0 32px}
.type-hero h1{font-size:clamp(48px,7vw,96px)}
.type-hero h1 .accent{color:var(--ember);display:block}
.type-hero .lede{max-width:600px;margin-top:24px;font-size:17px;line-height:1.65;color:var(--cream)}

.product-config{padding:48px 0;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
@media(max-width:900px){.product-config{grid-template-columns:1fr}}
.product-config .opts{display:flex;flex-direction:column;gap:24px}
.product-config .opt-block label{font-family:'Special Elite',monospace;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:8px}
.product-config .opt-block input[type=text]{width:100%;padding:12px 14px;background:var(--smoke);border:1px solid var(--rule);color:var(--cream);font-family:'Special Elite',monospace;font-size:13px}
.product-config .opt-block input[type=text]:focus{outline:none;border-color:var(--ember)}
.product-config .price-final{padding:20px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:baseline;gap:18px}
.product-config .price-final .pf{font-family:'Stardos Stencil',sans-serif;font-size:48px;color:var(--paper);letter-spacing:.02em}
.product-config .price-final .pf-sub{font-family:'Special Elite',monospace;font-size:11px;letter-spacing:.18em;color:var(--muted);text-transform:uppercase}
.product-config .ph-large{
  aspect-ratio:1/1;border:1px solid var(--rule);padding:24px;
  background:linear-gradient(180deg, #1b1612, #0c0a08);
  display:grid;place-items:center;position:relative;
}
.product-config .ph-large::before{content:"";position:absolute;top:10px;left:10px;right:10px;bottom:10px;border:1px dashed rgba(217,179,122,.18);pointer-events:none}
.product-config .ph-large .ph-stamp{font-family:'Special Elite',monospace;font-size:11px;letter-spacing:.3em;color:var(--muted);text-transform:uppercase;border:1px solid var(--rule);padding:14px 20px}
.product-config .ph-large .ph-title{font-family:'Stardos Stencil',sans-serif;font-size:26px;color:var(--pine-2);text-transform:uppercase;text-align:center;margin-top:14px;letter-spacing:.04em}
