/* ICB – Bookkeepers Workforce Pathway Program
   All styles scoped to .icb-page — fonts inherit from your site theme */

.icb-page{
  --icb-navy:#26407F;
  --icb-red:#C1303F;
  --icb-gold:#B4A03F;
  --icb-light:#F5F6F9;
  color:var(--icb-navy);
  line-height:1.7;
  max-width:1200px;
  margin:0 auto;
  padding:0 24px;
  box-sizing:border-box;
}
.icb-page *,.icb-page *::before,.icb-page *::after{box-sizing:border-box}
.icb-page h1,.icb-page h2,.icb-page h3,.icb-page p,.icb-page ul{margin:0;padding:0}
.icb-page h1,.icb-page h2,.icb-page h3{color:inherit}
.icb-page h1{font-size:clamp(2.4rem,5.4vw,4rem);font-weight:800;line-height:1.06;letter-spacing:-.03em}
.icb-page h2{font-size:clamp(1.5rem,2.6vw,1.65rem);font-weight:700;line-height:1.25;letter-spacing:-.015em}
.icb-page h3{font-size:1.1rem;font-weight:600;line-height:1.45}
.icb-page section{scroll-margin-top:90px}

/* Utilities */
.icb-page .icb-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;margin-bottom:14px}
.icb-page .icb-rule{width:62px;height:3px;background:var(--icb-gold);margin-bottom:20px}
.icb-page .icb-rule--center{margin-left:auto;margin-right:auto}

/* Button */
.icb-page .icb-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 26px;border-radius:3px;background:var(--icb-red);color:#fff !important;font-weight:600;font-size:16px;text-decoration:none !important;transition:filter .2s,transform .2s}
.icb-page .icb-btn:hover{filter:brightness(.9);transform:translateY(-1px)}
.icb-page a:focus-visible{outline:3px solid var(--icb-gold);outline-offset:4px}

/* Hero */
.icb-page .icb-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;padding:36px 0 24px}
.icb-page .icb-hero__sub{font-size:1.4rem;margin:24px 0 28px}
.icb-page .icb-hero__media{position:relative;padding-bottom:20px}
.icb-page .icb-hero__media::after{content:"";position:absolute;bottom:0;left:28px;right:0;height:4px;background:var(--icb-gold)}
.icb-page .icb-img{display:block;width:100%;height:440px;object-fit:cover;border-radius:3px;background:#e9ecf3}

/* RSVP box */
.icb-page .icb-rsvp{margin:20px 0;padding:32px 40px;background:#f8fafc;border-left:4px solid var(--icb-gold)}
.icb-page .icb-rsvp .icb-eyebrow{font-size:.95rem;font-weight:700;margin-bottom:10px}
.icb-page .icb-rsvp h2{margin-bottom:12px}
.icb-page .icb-rsvp p{margin-bottom:20px}

/* Launch panel */
.icb-page .icb-launch{margin:20px 0;padding:36px 40px;background:var(--icb-navy);color:#fff}
.icb-page .icb-launch__copy{font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.5;margin-top:16px;max-width:820px}
.icb-page .icb-launch__details{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.3)}
.icb-page .icb-launch__date{font-size:1.35rem;font-weight:700;margin-bottom:12px}
.icb-page .icb-launch__label{font-size:.75rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;margin-bottom:8px;opacity:.85}
.icb-page .icb-launch p+p{margin-top:6px}

/* Intro */
.icb-page .icb-intro{padding:24px 0;border-top:1px solid #e2e8f0}
.icb-page .icb-intro p{font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.65;max-width:900px}

/* Two column */
.icb-page .icb-two{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:24px 0}
.icb-page .icb-two p{margin-top:16px}

/* Capabilities */
.icb-page .icb-gain{padding:24px 0}
.icb-page .icb-gain h2{margin-bottom:24px}
.icb-page .icb-caps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 36px}
.icb-page .icb-cap{border-top:2px solid var(--icb-gold);padding:20px 0 8px}
.icb-page .icb-cap__num{color:var(--icb-red);font-size:.8rem;letter-spacing:.08em;margin-bottom:10px}
.icb-page .icb-cap--wide{grid-column:span 2}

/* Participants */
.icb-page .icb-who{margin:20px 0;padding:36px 40px;background:var(--icb-light)}
.icb-page .icb-who ul{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px 40px;
  margin:24px 0 0 0 !important;
  padding:0 !important;
  list-style:none !important;
}
.icb-page .icb-who li{
  display:flex !important;
  align-items:flex-start;
  gap:12px;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  line-height:1.6;
}
.icb-page .icb-who li::before{
  content:"" !important;
  position:static !important;
  flex:0 0 9px;
  width:9px !important;
  height:9px !important;
  margin-top:calc((1.6em - 9px) / 2);
  border-radius:50%;
  background:var(--icb-navy);
}
.icb-page .icb-who li::marker{content:none}

/* Acknowledgement */
.icb-page .icb-ack{padding:24px 0 36px;text-align:center}
.icb-page .icb-ack p{font-weight:600;font-size:1.1rem}

/* Tablet */
@media (max-width:1023px){
  .icb-page .icb-caps{grid-template-columns:repeat(2,1fr)}
}

/* Mobile */
@media (max-width:767px){
  .icb-page{padding:0 18px}
  .icb-page .icb-hero,
  .icb-page .icb-two,
  .icb-page .icb-launch__details,
  .icb-page .icb-who ul{grid-template-columns:1fr}
  .icb-page .icb-hero{padding:24px 0 16px;gap:24px}
  .icb-page .icb-img{height:260px}
  .icb-page .icb-two{gap:28px;padding:20px 0}
  .icb-page .icb-intro,.icb-page .icb-gain{padding:20px 0}
  .icb-page .icb-caps{grid-template-columns:1fr;gap:8px}
  .icb-page .icb-cap--wide{grid-column:auto}
  .icb-page .icb-rsvp,.icb-page .icb-launch,.icb-page .icb-who{margin:16px 0;padding:28px 24px}
  .icb-page .icb-launch__details{gap:20px}
  .icb-page .icb-who ul{gap:14px;margin-top:20px !important}
  .icb-page .icb-ack{padding:20px 0 28px}
  .icb-page .icb-btn{width:100%}
  .icb-page section{scroll-margin-top:70px}
}

@media (prefers-reduced-motion:reduce){
  .icb-page .icb-btn{transition:none}
}