
.cb-page{max-width:1140px;margin:0 auto;padding:24px 16px 60px;font-family:'Outfit',sans-serif}
.cb-hero{padding:48px 28px;border-radius:18px;background:linear-gradient(135deg,var(--colour-legacy-3a1410) 0%,var(--colour-legacy-7a2418) 60%,var(--colour-legacy-ed1c24) 100%);color:var(--colour-application-fbf8f4);text-align:center;margin-bottom:28px;box-shadow:0 10px 30px var(--colour-legacy-rgba-229-77-58-0-2)}
.cb-hero h1{font-size:2.1rem;font-weight:900;letter-spacing:-.01em;line-height:1.1;margin:0 0 14px;color:var(--colour-application-fbf8f4)}
.cb-hero .cb-sub{font-size:1rem;line-height:1.55;color:var(--colour-legacy-rgba-251-248-244-0-92);max-width:720px;margin:0 auto 18px}
.cb-hero .cb-cta{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:99px;background:var(--colour-application-fbf8f4);color:var(--colour-legacy-3a1410);font-weight:800;text-decoration:none;font-size:.95rem;transition:transform .15s}
.cb-hero .cb-cta:hover{transform:translateY(-2px)}
.cb-trust{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 18px;margin-top:16px;font-size:.82rem;color:var(--colour-legacy-rgba-251-248-244-0-85)}
.cb-trust span{display:inline-flex;align-items:center;gap:5px}

.cb-section{margin:36px 0}
.cb-section h2{font-size:1.45rem;font-weight:900;color:var(--colour-storefront-heading);margin:0 0 12px;letter-spacing:-.01em}
.cb-section h3{font-size:1.05rem;font-weight:800;color:var(--colour-storefront-heading);margin:18px 0 8px}
.cb-section p{font-size:.95rem;line-height:1.75;color:var(--colour-brand-dark);margin:0 0 14px}
.cb-section p strong{color:var(--colour-storefront-heading)}
.cb-section a{color:var(--colour-legacy-ed1c24);font-weight:700;text-decoration:none}
.cb-section a:hover{text-decoration:underline}

.cb-meta-strip{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;background:var(--colour-legacy-fff7f6);border:1px solid var(--colour-legacy-f0d8d4);border-radius:12px;padding:14px 18px;margin-bottom:8px;font-size:.85rem;color:var(--colour-legacy-3a1410);font-weight:700}
.cb-meta-strip span{display:inline-flex;align-items:center;gap:6px}

.cb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-top:18px}
.cb-card{background:var(--colour-bg-light);border:1px solid var(--colour-border-light);border-radius:14px;overflow:hidden;transition:transform .15s,box-shadow .15s;text-decoration:none;color:inherit;display:flex;flex-direction:column}
.cb-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px var(--colour-black-alpha-0-08);text-decoration:none}
.cb-card .cb-card-img{aspect-ratio:1;background:var(--colour-storefront-background);overflow:hidden;position:relative}
.cb-card .cb-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.cb-card .cb-card-body{padding:12px 14px}
.cb-card .cb-card-name{font-size:.92rem;font-weight:800;color:var(--colour-storefront-heading);margin:0 0 6px;line-height:1.3}
.cb-card .cb-card-price{font-size:.88rem;font-weight:700;color:var(--colour-legacy-ed1c24)}
.cb-card.cb-oos{opacity:.55}
.cb-card .cb-oos-tag{position:absolute;top:8px;right:8px;background:var(--colour-black-alpha-0-7);color:var(--colour-bg-light);font-size:.65rem;padding:3px 8px;border-radius:99px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}

.cb-brand-block{background:var(--colour-surface-light);border:1px solid var(--colour-border-light);border-radius:14px;padding:20px 22px;margin-bottom:18px}
.cb-brand-block h3{margin-top:0;display:flex;align-items:center;gap:10px}
.cb-brand-block .cb-brand-count{font-size:.7rem;background:var(--colour-legacy-ed1c24);color:var(--colour-bg-light);padding:3px 9px;border-radius:99px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}

.cb-dose-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.88rem}
.cb-dose-table th,.cb-dose-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--colour-border-light)}
.cb-dose-table th{background:var(--colour-legacy-3a1410);color:var(--colour-bg-light);font-weight:700}
.cb-dose-table tr:nth-child(even){background:var(--colour-surface-light)}

@media (max-width:600px){
  .cb-hero{padding:32px 18px}
  .cb-hero h1{font-size:1.55rem}
  .cb-section h2{font-size:1.2rem}
  .cb-grid{grid-template-columns:repeat(2,1fr);gap:10px}
}
