/**
 * The All categories page, [bollypiano_categories] (child-theme/include/bollypiano_categories.php).
 * Option A from ~/Downloads/bollypiano-categories-mockups. Same tokens and fonts as the homepage
 * (css/bollypiano_home.css). Every class is prefixed `bpc-` and selectors start `.bpc` so they
 * outrank the Elementor kit's global link and heading colors without !important.
 */
@font-face{font-family:"Fraunces";font-style:normal;font-weight:100 900;font-display:swap;src:url("fonts/fraunces.woff2") format("woff2")}
@font-face{font-family:"Hanken Grotesk";font-style:normal;font-weight:100 900;font-display:swap;src:url("fonts/hanken-grotesk.woff2") format("woff2")}

.bpc{
  --ink:#001524; --ink-soft:#33474F; --muted:#566669; --teal:#15616D; --cream-2:#FFF7EA;
  --line:rgba(0,21,36,.12);
  --gutter:clamp(20px, 6.522vw - 3.47px, 80px);
  --serif:"Fraunces",Georgia,serif;
  --sans:"Hanken Grotesk",system-ui,sans-serif;
  color:var(--ink); font-family:var(--sans); -webkit-font-smoothing:antialiased;
}
.bpc *,.bpc *::before,.bpc *::after{box-sizing:border-box}
.bpc.bpc a{text-decoration:none; color:inherit}
.bpc.bpc :is(h1,h2){font-family:var(--serif); font-weight:700; letter-spacing:-.01em; margin:0; color:inherit}
.bpc .bpc-wrap{box-sizing:content-box; max-width:1400px; margin:0 auto; padding:40px var(--gutter) 64px}

.bpc .bpc-crumb{font-size:15px; color:var(--muted)}
.bpc.bpc .bpc-crumb a{color:var(--teal); font-weight:600}
.bpc.bpc h1{font-size:44px; line-height:1.1; margin-top:10px}
.bpc .bpc-lede{margin:10px 0 0; font-size:18px; color:var(--muted)}

/* Eight columns, as the homepage row: a group of five beside a group of three, tiles the same size. */
.bpc .bpc-groups{display:grid; grid-template-columns:repeat(8,1fr); gap:36px 16px; margin-top:36px}
.bpc .bpc-group{display:grid; grid-template-columns:subgrid; grid-column:span var(--span); align-content:start}
.bpc.bpc .bpc-group h2{grid-column:1/-1; font-size:26px; line-height:1.2; margin-bottom:18px; padding-bottom:10px; border-bottom:1.5px solid var(--line)}
.bpc .bpc-tile{display:block; text-align:center; font-weight:700; font-size:15px; margin-bottom:6px}
.bpc.bpc .bpc-tile:hover{color:var(--teal)}
.bpc .bpc-tile img{display:block; width:100%; height:auto; aspect-ratio:1; border-radius:50%; object-fit:cover; margin-bottom:10px; background:var(--teal)}
.bpc .bpc-tile small{display:block; font-weight:500; color:var(--muted); font-size:13px; margin-top:2px}

.bpc .bpc-ask{grid-column:span 3; align-self:start; background:var(--cream-2); border-radius:16px; padding:22px 24px; margin-top:62px}
.bpc.bpc .bpc-ask h2{font-size:22px}
.bpc .bpc-ask p{margin:6px 0 14px; color:var(--ink-soft); font-size:15px; line-height:1.45}
.bpc.bpc .bpc-ask a{color:var(--teal); font-weight:700; margin-right:18px; white-space:nowrap}
.bpc .bpc-ask a::after{content:" \2192"}

.bpc .bpc-browse{margin-top:56px}
.bpc.bpc .bpc-browse h2{font-size:25px; margin-bottom:20px}
.bpc .bpc-browse__g{display:grid; grid-template-columns:repeat(4,1fr); gap:20px}
.bpc.bpc .bpc-browse h3{font-family:var(--sans); font-size:13px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--teal); margin:0 0 10px}
.bpc .bpc-chips{display:flex; flex-wrap:wrap; gap:8px}
.bpc .bpc-chips a{padding:7px 14px; border-radius:999px; border:1.5px solid rgba(0,21,36,.18); font-size:14px; font-weight:600; background:#fff}
.bpc.bpc .bpc-chips a:hover{border-color:var(--teal); color:var(--teal)}

@media (max-width:1024px){
  .bpc .bpc-groups{grid-template-columns:repeat(5,1fr)}
  .bpc .bpc-group,.bpc .bpc-ask{grid-column:1/-1}
  .bpc .bpc-ask{margin-top:0}
  .bpc .bpc-browse__g{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .bpc .bpc-wrap{padding-top:26px; padding-bottom:48px}
  .bpc.bpc h1{font-size:32px}
  .bpc .bpc-lede{font-size:16px}
  .bpc .bpc-groups{grid-template-columns:repeat(3,1fr); gap:28px 12px}
  .bpc.bpc .bpc-group h2{font-size:22px; margin-bottom:14px}
  /* Phones hide the line under each tile, as on the homepage. */
  .bpc .bpc-tile{font-size:13px}
  .bpc .bpc-tile small{display:none}
  .bpc .bpc-browse__g{grid-template-columns:1fr}
}
