/* =============================================================
   PAASHMA — editorial (grunge) INNER-PAGE component kit.
   Load AFTER editorial.css (which defines the :root tokens).
   Covers: solid header, drawer, buttons, breadcrumb, page head,
   PLP, product cards, PDP, cart, checkout, forms, account,
   empty states, tables. Same cream + ink + RED language.
   ============================================================= */

/* ---------- layout helpers ---------- */
.eb-wrap{max-width:1400px;margin:0 auto;padding:0 var(--pad)}
main{min-height:60vh}
.eb-sec{padding:clamp(28px,5vw,64px) 0}

/* ---------- SOLID HEADER (inner pages) ---------- */
.eb-header--solid{position:sticky;top:0;left:0;right:0;z-index:50;mix-blend-mode:normal;
  background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line);padding:0}
.eb-header--solid .eb-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  gap:16px;max-width:1400px;margin:0 auto;padding:16px var(--pad)}
.eb-header--solid a,.eb-header--solid button{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
.eb-nav__l{display:flex;align-items:center;gap:20px}
.eb-nav__r{display:flex;align-items:center;gap:20px;justify-content:flex-end}
.eb-nav__brand{font-family:var(--sans);font-weight:800;font-size:15px;letter-spacing:.34em;text-transform:uppercase;text-align:center;padding-left:.34em}
.eb-header--solid a:hover{color:var(--red)}
.eb-header--solid a.is-active{color:var(--red)}
.eb-burger{display:none;flex-direction:column;gap:4px;width:22px}
.eb-burger span{display:block;height:1.5px;background:var(--ink)}

/* ---------- DRAWER + OVERLAY ---------- */
.eb-overlay{position:fixed;inset:0;background:rgba(20,19,18,.5);opacity:0;visibility:hidden;transition:opacity .3s var(--ease);z-index:60}
.eb-overlay.open{opacity:1;visibility:visible}
.eb-drawer{position:fixed;top:0;left:0;bottom:0;width:min(84vw,340px);background:var(--paper);z-index:70;
  transform:translateX(-100%);transition:transform .4s var(--ease);padding:22px var(--pad);display:flex;flex-direction:column}
.eb-drawer.open{transform:none}
.eb-drawer__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.eb-drawer__head button{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.eb-drawer__link{font-family:var(--display);font-size:2rem;text-transform:uppercase;line-height:1.1;padding:8px 0}
.eb-drawer__link:hover{color:var(--red)}

/* ---------- BUTTONS ---------- */
.eb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--mono);font-size:12px;
  letter-spacing:.12em;text-transform:uppercase;padding:15px 28px;background:var(--ink);color:var(--paper);
  border:1px solid var(--ink);transition:background .25s var(--ease),color .25s var(--ease)}
.eb-btn:hover{background:var(--red);border-color:var(--red);color:#fff}
.eb-btn--red{background:var(--red);border-color:var(--red);color:#fff}
.eb-btn--red:hover{background:var(--ink);border-color:var(--ink)}
.eb-btn--ghost{background:transparent;color:var(--ink)}
.eb-btn--ghost:hover{background:var(--ink);color:var(--paper)}
.eb-btn--block{width:100%}
.eb-link{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:2px}
.eb-link:hover{color:var(--red);border-color:var(--red)}

/* ---------- BREADCRUMB ---------- */
.eb-crumb{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-60);padding:20px 0 4px}
.eb-crumb a:hover{color:var(--red)}
.eb-crumb span{margin:0 8px;color:var(--ink-30)}

/* ---------- PAGE HEAD ---------- */
.eb-phead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;
  padding:8px 0 24px;border-bottom:2px solid var(--ink);margin-bottom:28px}
.eb-phead h1{font-family:var(--display);font-size:clamp(2.6rem,9vw,7rem);line-height:.86;text-transform:uppercase;letter-spacing:-.01em}
.eb-phead .eb-phead__meta{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-60);padding-bottom:10px}
.eb-lede{font-size:clamp(15px,2vw,18px);max-width:60ch;color:var(--ink-60);margin:-8px 0 28px}

/* ---------- PILLS ---------- */
.eb-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.eb-pills a{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  padding:9px 16px;border:1px solid var(--line);border-radius:100px}
.eb-pills a:hover,.eb-pills a.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}

/* ---------- PLP (filters + results) ---------- */
.eb-plp{display:grid;grid-template-columns:220px 1fr;gap:clamp(24px,4vw,56px);align-items:start;padding-bottom:80px}
.eb-filters h4{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60);margin-bottom:14px}
.eb-facet{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-top:1px solid var(--line);
  font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.eb-facet::after{content:"+";color:var(--ink-60)}
.eb-facet:hover{color:var(--red)}
.eb-results-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.eb-results-head .count{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-60)}
.eb-select{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:10px 14px;
  border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.eb-loadmore{display:flex;justify-content:center;margin-top:48px}

/* ---------- PRODUCT GRID + CARD ---------- */
.eb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,28px)}
.eb-grid--4{grid-template-columns:repeat(4,1fr)}
.eb-card{display:block;position:relative}
.eb-card__media{position:relative;aspect-ratio:3/4;background:var(--paper-2);overflow:hidden}
.eb-card__media img,.eb-card__media .ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.eb-card:hover .eb-card__media img{transform:scale(1.05)}
.eb-card__fav{position:absolute;top:12px;right:12px;z-index:2;font-size:15px;color:var(--ink)}
.eb-card__tag{position:absolute;top:12px;left:12px;z-index:2;font-family:var(--mono);font-size:10px;letter-spacing:.1em;
  text-transform:uppercase;background:var(--ink);color:var(--paper);padding:5px 9px}
.eb-card__tag--red{background:var(--red);color:#fff}
.eb-card__row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:14px 2px 0}
.eb-card__name{font-family:var(--sans);font-weight:600;font-size:14px;letter-spacing:.01em}
.eb-card__brand{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-60);padding:12px 2px 2px}
.eb-card__price{font-family:var(--mono);font-size:12px;color:var(--red);white-space:nowrap}
.ph{background:repeating-linear-gradient(45deg,var(--paper-2),var(--paper-2) 12px,#ded9cd 12px,#ded9cd 24px)}

/* ---------- PDP ---------- */
.eb-pdp{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,64px);padding:24px 0 80px;align-items:start}
.eb-pdp__gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.eb-pdp__gallery .eb-shot{aspect-ratio:3/4;background:var(--paper-2);overflow:hidden}
.eb-pdp__gallery .eb-shot:first-child{grid-column:1 / -1;aspect-ratio:1/1}
.eb-pdp__gallery img{width:100%;height:100%;object-fit:cover}
.eb-pdp__info{position:sticky;top:96px}
.eb-pdp__brand{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60)}
.eb-pdp__title{font-family:var(--display);font-size:clamp(2rem,4.5vw,3.4rem);line-height:.92;text-transform:uppercase;margin:10px 0 14px}
.eb-pdp__price{font-family:var(--mono);font-size:18px;color:var(--red);margin-bottom:22px}
.eb-pdp__desc{font-size:15px;color:var(--ink-60);max-width:52ch;margin-bottom:24px}
.eb-optlabel{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-60);margin:18px 0 10px}
.eb-swatches{display:flex;gap:8px;flex-wrap:wrap}
.eb-swatch{width:40px;height:40px;border:1px solid var(--line);cursor:pointer}
.eb-swatch:hover,.eb-swatch.is-active{outline:2px solid var(--ink);outline-offset:2px}
.eb-sizes{display:flex;gap:8px;flex-wrap:wrap}
.eb-size{min-width:48px;padding:12px 10px;text-align:center;border:1px solid var(--line);font-family:var(--mono);font-size:12px;cursor:pointer}
.eb-size:hover,.eb-size.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.eb-pdp__actions{display:flex;gap:10px;margin:26px 0}
.eb-acc{border-top:1px solid var(--line)}
.eb-acc summary{display:flex;justify-content:space-between;align-items:center;padding:16px 0;cursor:pointer;list-style:none;
  font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.eb-acc summary::-webkit-details-marker{display:none}
.eb-acc summary::after{content:"+"}
.eb-acc[open] summary::after{content:"–"}
.eb-acc p{font-size:14px;color:var(--ink-60);padding:0 0 18px;max-width:56ch}
.eb-trust{display:flex;gap:24px;flex-wrap:wrap;margin-top:22px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-60)}

/* ---------- CART ---------- */
.eb-cart{display:grid;grid-template-columns:1fr 360px;gap:clamp(24px,4vw,56px);align-items:start;padding-bottom:80px}
.eb-line{display:grid;grid-template-columns:96px 1fr auto;gap:18px;padding:22px 0;border-top:1px solid var(--line)}
.eb-line__media{aspect-ratio:3/4;background:var(--paper-2);overflow:hidden}
.eb-line__media img{width:100%;height:100%;object-fit:cover}
.eb-line__name{font-family:var(--sans);font-weight:600;font-size:15px}
.eb-line__meta{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-60);margin-top:6px}
.eb-qty{display:inline-flex;align-items:center;border:1px solid var(--line);margin-top:12px}
.eb-qty button{width:34px;height:34px;font-size:16px}
.eb-qty span{min-width:36px;text-align:center;font-family:var(--mono);font-size:12px}
.eb-line__price{font-family:var(--mono);font-size:13px;color:var(--red);text-align:right}
.eb-remove{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-60);margin-top:12px;display:block;text-align:right}
.eb-remove:hover{color:var(--red)}
.eb-summary{border:1px solid var(--ink);padding:26px}
.eb-summary h3{font-family:var(--display);font-size:1.6rem;text-transform:uppercase;margin-bottom:18px}
.eb-summary__row{display:flex;justify-content:space-between;padding:10px 0;font-size:14px}
.eb-summary__row--total{border-top:1px solid var(--line);margin-top:8px;padding-top:16px;font-family:var(--mono);text-transform:uppercase;font-size:13px;letter-spacing:.06em}
.eb-summary__row--total b{color:var(--red);font-size:16px}

/* ---------- FORMS / CHECKOUT / AUTH ---------- */
.eb-form{display:grid;gap:16px}
.eb-field{display:grid;gap:7px}
.eb-field label{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-60)}
.eb-input{font-family:var(--sans);font-size:15px;padding:14px 14px;border:1px solid var(--line);background:var(--paper);color:var(--ink);width:100%}
.eb-input:focus{outline:none;border-color:var(--ink)}
.eb-row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.eb-checkout{display:grid;grid-template-columns:1fr 380px;gap:clamp(24px,4vw,56px);align-items:start;padding-bottom:80px}
.eb-fset{margin-bottom:30px}
.eb-fset h3{font-family:var(--display);font-size:1.5rem;text-transform:uppercase;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.eb-step{font-family:var(--mono);font-size:11px;color:var(--red);letter-spacing:.1em}

/* ---------- ACCOUNT ---------- */
.eb-account{display:grid;grid-template-columns:220px 1fr;gap:clamp(24px,4vw,56px);align-items:start;padding-bottom:80px}
.eb-account__nav a{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;
  padding:12px 0;border-top:1px solid var(--line)}
.eb-account__nav a:hover,.eb-account__nav a.is-active{color:var(--red)}
.eb-authcard{max-width:420px;margin:40px auto;border:1px solid var(--ink);padding:clamp(24px,4vw,40px)}
.eb-authcard h1{font-family:var(--display);font-size:2.4rem;text-transform:uppercase;margin-bottom:6px}
.eb-authcard p{font-size:14px;color:var(--ink-60);margin-bottom:22px}
.eb-tabs{display:flex;gap:0;margin-bottom:24px;border-bottom:1px solid var(--line)}
.eb-tabs button{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:12px 18px;border-bottom:2px solid transparent;margin-bottom:-1px}
.eb-tabs button.is-active{border-color:var(--red);color:var(--red)}

/* ---------- TABLE (orders) ---------- */
.eb-table{width:100%;border-collapse:collapse;font-size:14px}
.eb-table th{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-60);text-align:left;padding:12px 10px;border-bottom:1px solid var(--ink)}
.eb-table td{padding:16px 10px;border-bottom:1px solid var(--line)}
.eb-badge{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border:1px solid var(--line)}

/* ---------- EMPTY STATE / CONFIRMATION ---------- */
.eb-empty{text-align:center;padding:clamp(60px,12vw,160px) var(--pad)}
.eb-empty h1{font-family:var(--display);font-size:clamp(2.4rem,8vw,6rem);text-transform:uppercase;line-height:.9;margin-bottom:14px}
.eb-empty p{color:var(--ink-60);margin-bottom:26px}
.eb-confirm{text-align:center;max-width:640px;margin:0 auto;padding:clamp(48px,9vw,120px) var(--pad)}
.eb-confirm .eb-step{font-size:12px;margin-bottom:14px;display:block}
.eb-confirm h1{font-family:var(--display);font-size:clamp(2.6rem,9vw,6.5rem);text-transform:uppercase;line-height:.86;margin-bottom:18px}
.eb-confirm__box{border:1px solid var(--ink);padding:24px;text-align:left;margin:28px 0;font-size:14px}

/* ---------- PRODUCT SHOWCASE (single-view hero PDP) ---------- */
.eb-showcase{position:relative;display:grid;grid-template-columns:.92fr 1.16fr .72fr;gap:clamp(20px,3vw,52px);align-items:center;
  padding:clamp(20px,3vw,44px) 0 clamp(36px,5vw,72px);min-height:calc(100vh - 64px)}
.eb-showcase::before,.eb-showcase::after{content:"";position:absolute;border-radius:50%;background:var(--paper-2);z-index:0;opacity:.6}
.eb-showcase::before{width:min(30vw,380px);height:min(30vw,380px);left:-8%;top:0}
.eb-showcase::after{width:min(26vw,320px);height:min(26vw,320px);right:-6%;bottom:-4%}
.eb-showcase > *{position:relative;z-index:1}
.eb-sc__cat{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-60)}
.eb-sc__title{font-family:var(--display);font-size:clamp(2.6rem,6.5vw,5.4rem);line-height:.9;text-transform:uppercase;letter-spacing:-.01em;margin:6px 0 8px}
.eb-sc__tagline{font-family:var(--sans);font-weight:600;font-size:15px;color:var(--ink);margin-bottom:18px}
.eb-sc__desc{font-size:14px;line-height:1.7;color:var(--ink-60);max-width:44ch;margin-bottom:26px}
.eb-sc__price{display:flex;align-items:baseline;gap:12px;margin-bottom:22px}
.eb-sc__price .now{font-family:var(--display);font-size:clamp(2.2rem,4vw,3rem);color:var(--red);line-height:1}
.eb-sc__price .was{font-family:var(--mono);font-size:15px;color:var(--ink-30);text-decoration:line-through}
.eb-sc__scroll{display:flex;align-items:center;gap:16px;margin-top:clamp(28px,5vw,56px)}
.eb-sc__scroll .avatar{width:64px;height:56px;border-radius:10px;overflow:hidden;background:var(--paper-2);flex:0 0 auto}
.eb-sc__scroll .avatar img{width:100%;height:100%;object-fit:cover}
.eb-sc__scroll .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-60);border-right:1px solid var(--line);padding-right:14px}
.eb-sc__squiggle{color:var(--red);width:70px;flex:0 0 auto}

.eb-sc__stage{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative}
.eb-sc__aster{position:absolute;top:2%;right:8%;color:var(--red);font-size:34px;line-height:1;z-index:2}
.eb-sc__img{width:100%;max-width:460px;aspect-ratio:4/5;object-fit:contain;filter:drop-shadow(0 30px 34px rgba(20,19,18,.22))}
.eb-sc__img.ph{aspect-ratio:4/5;border-radius:12px}
.eb-sc__swatches{display:flex;gap:12px;margin-top:22px}
.eb-sc__swatch{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);cursor:pointer}
.eb-sc__swatch.is-active{outline:2px solid var(--ink);outline-offset:2px}

.eb-sc__right{display:flex;flex-direction:column;gap:20px}
.eb-sc__thumbs{display:flex;flex-direction:column;gap:12px;align-items:flex-end}
.eb-sc__thumbs a{width:64px;height:64px;border-radius:10px;overflow:hidden;background:var(--paper-2);border:1px solid var(--line)}
.eb-sc__thumbs img{width:100%;height:100%;object-fit:cover}
.eb-sc__review{text-align:right;border-top:1px solid var(--line);padding-top:16px}
.eb-sc__review b{font-family:var(--display);font-size:1.3rem;text-transform:uppercase;display:block}
.eb-sc__review p{font-size:13px;color:var(--ink-60);line-height:1.6;margin-top:6px}
.eb-sc__review a{color:var(--red);font-weight:600}
.eb-sc__rating{display:flex;align-items:center;justify-content:flex-end;gap:12px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-60)}
.eb-sc__rating b{font-family:var(--display);font-size:1.4rem;color:var(--ink)}
.eb-sc__rating .star{color:var(--red)}
.eb-sc__rating .bar{flex:1;max-width:60px;height:1px;background:var(--ink)}
.eb-sc__social{display:flex;justify-content:flex-end;gap:14px}
.eb-sc__social a{color:var(--ink)}
.eb-sc__social a:hover{color:var(--red)}
@media(max-width:960px){
  .eb-showcase{grid-template-columns:1fr;text-align:center;min-height:auto;padding:16px 0 44px;gap:30px}
  .eb-showcase::before,.eb-showcase::after{display:none}     /* blobs caused overflow/clutter on mobile */
  .eb-sc__stage{order:-1}                                    /* product image leads on mobile */
  .eb-sc__title{font-size:clamp(2.4rem,11vw,3.6rem)}
  .eb-sc__desc{margin:0 auto 22px;max-width:38ch}
  .eb-sc__price,.eb-sc__scroll{justify-content:center}
  .eb-sc__scroll{display:none}                               /* desktop hero cue — hide on mobile */
  .eb-sc__aster{right:4%}
  .eb-sc__img{max-width:min(82vw,400px)}
  .eb-sc__right{align-items:center;gap:22px}
  .eb-sc__thumbs{flex-direction:row;justify-content:center}
  .eb-sc__review{text-align:center;max-width:44ch;margin:0 auto}
  .eb-sc__rating,.eb-sc__social{justify-content:center}
}
@media(max-width:520px){
  .eb-sc__title{font-size:clamp(2.2rem,12vw,3rem)}
  .eb-sc__price .now{font-size:2rem}
}

/* ---------- MOBILE ---------- */
@media(max-width:960px){
  .eb-plp{grid-template-columns:1fr}
  .eb-filters{display:flex;gap:8px;overflow-x:auto;padding-bottom:10px}
  .eb-filters h4{display:none}
  .eb-facet{border:1px solid var(--line);border-radius:100px;padding:9px 14px;white-space:nowrap}
  .eb-facet::after{content:""}
  .eb-pdp{grid-template-columns:1fr}
  .eb-pdp__info{position:static}
  .eb-cart,.eb-checkout,.eb-account{grid-template-columns:1fr}
}
@media(max-width:860px){
  .eb-header--solid .eb-nav{grid-template-columns:auto 1fr auto}
  .eb-burger{display:flex}
  .eb-nav__l a,.eb-nav__r a:not([data-bag-count]){display:none}
  .eb-nav__r a[data-bag-count]{display:inline}
  .eb-grid,.eb-grid--4{grid-template-columns:repeat(2,1fr)}
  .eb-row2{grid-template-columns:1fr}
}
