/* INFOCHIEF ACADEMY — In-house page refinement (2026-10-27)
   Scoped to the page main region. Does not modify header, navigation,
   footer, shared website components, or external assets. */
body.inhouse-premium main {
  --ih-ink:#123c68;
  --ih-muted:#526c87;
  --ih-line:#d8e5f3;
  --ih-tint:#f4f8fd;
  --ih-blue:#1b548b;
}
body.inhouse-premium main * { min-width:0; }

/* Hero: retain original image, overlay, and actual asset path. */
body.inhouse-premium main .about-hero { min-height:390px; }
body.inhouse-premium main .about-hero-content { padding-top:62px; padding-bottom:62px; }
body.inhouse-premium main .about-hero h1 {
  max-width:890px;
  margin:0 0 19px;
  font-size:clamp(36px,4.05vw,59px);
  line-height:1.1;
  letter-spacing:-.035em;
  text-wrap:balance;
}
body.inhouse-premium main .about-hero-lead {
  max-width:880px;
  margin:0;
  font-size:clamp(15px,1.2vw,17px);
  line-height:1.75;
  color:#f1f7ff;
}

/* Consistent sectional rhythm. */
body.inhouse-premium main .section { padding:68px 0 74px; }
body.inhouse-premium main .section-soft {
  background:linear-gradient(180deg,#f7fafe 0%,#f2f7fc 100%);
}
body.inhouse-premium main .section-head {
  align-items:end;
  gap:20px;
  margin-bottom:0;
}
body.inhouse-premium main .section-head h2 {
  margin:0;
  max-width:980px;
  font-size:clamp(28px,2.45vw,37px);
  font-weight:800;
  line-height:1.21;
  letter-spacing:-.027em;
  color:var(--ih-ink);
  text-wrap:balance;
}
/* The shared style.css sets padding:20px on each kicker; override only here. */
body.inhouse-premium main .section-kicker {
  display:block;
  padding:0;
  margin:0 0 15px;
  color:#326eab;
  font-size:12px;
  letter-spacing:.13em;
  line-height:1.4;
}
body.inhouse-premium main .inhouse-section-intro {
  max-width:1000px;
  margin:18px 0 30px;
  color:var(--ih-muted);
  font-size:16px;
  line-height:1.7;
}
body.inhouse-premium main .section-head .text-link {
  flex:none;
  color:#174d78;
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
  text-decoration:none;
}
body.inhouse-premium main .section-head .text-link:hover {color:#0876b5;text-decoration:underline;text-underline-offset:4px;}
body.inhouse-premium main .section-head .text-link:focus-visible,
body.inhouse-premium main .category-card:focus-visible {
  outline:3px solid #f4b234;outline-offset:4px;
}

/* Audience: four equally weighted, high-contrast role cards. */
body.inhouse-premium main .method-impact-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));
  background:linear-gradient(105deg,#174878 0%,#29629d 54%,#194a7f 100%);
  border-radius:18px;
  box-shadow:0 15px 30px rgba(23,71,113,.12);
}
body.inhouse-premium main .method-impact-grid>div {
  padding:31px 28px 30px;
  border-right:1px solid rgba(255,255,255,.2);
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:9px;
}
body.inhouse-premium main .method-impact-grid>div:last-child {border-right:0;}
body.inhouse-premium main .method-impact-grid strong {
  display:block;
  margin:0;
  color:#fff;
  font-size:clamp(20px,1.65vw,26px);
  font-weight:780;
  line-height:1.28;
  letter-spacing:-.02em;
}
body.inhouse-premium main .method-impact-grid span {
  margin:0;
  max-width:none;
  color:#edf5ff;
  font-size:14px;
  line-height:1.65;
}

/* The three stages previously inherited a black 3px border from .panel. */
body.inhouse-premium main .testimonials-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;}
body.inhouse-premium main .panel.testimonial-card {
  min-height:260px;
  padding:30px 29px 29px;
  border:1px solid var(--ih-line);
  border-top:3px solid #3b7cbc;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 27px rgba(21,66,110,.055);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
body.inhouse-premium main .panel.testimonial-card:hover {
  transform:translateY(-3px);
  border-color:#a9cbe9;
  box-shadow:0 16px 32px rgba(23,71,113,.09);
}
body.inhouse-premium main .testimonial-quote {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:66px;
  height:62px;
  border-radius:15px;
  background:linear-gradient(135deg,#eff7ff,#dcecff);
  color:#1b629e;
  font-size:29px;
  font-weight:800;
  line-height:1;
}
body.inhouse-premium main .testimonial-card h3 {
  margin:21px 0 12px;
  color:var(--ih-ink);
  font-size:21px;
  line-height:1.3;
  letter-spacing:-.02em;
  font-weight:780;
}
body.inhouse-premium main .testimonial-card>p {
  margin:0;
  color:var(--ih-muted);
  font-size:15px;
  line-height:1.75;
}

/* Six focus areas: intentionally balanced as 3 × 2 on desktop. */
body.inhouse-premium main .category-grid {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:19px;
}
body.inhouse-premium main .category-card {
  min-height:206px;
  padding:28px;
  border:1px solid var(--ih-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 9px 27px rgba(21,66,110,.045);
  transition:transform .22s ease, box-shadow .22s ease,border-color .22s ease;
}
body.inhouse-premium main .category-card:hover {
  transform:translateY(-3px);
  border-color:#9bc2e7;
  box-shadow:0 15px 34px rgba(21,66,110,.085);
}
body.inhouse-premium main .category-card .category-icon {
  width:65px;height:65px;
  display:flex;align-items:center;justify-content:center;
  border-radius:16px;
  background:linear-gradient(145deg,#f1f8ff,#dceaff);
  color:#125782;
  font-size:30px;
  font-weight:700;
  line-height:1;
  margin-bottom:22px;
}
body.inhouse-premium main .category-card strong {
  margin:0;
  color:var(--ih-ink);
  font-size:20px;
  font-weight:780;
  line-height:1.3;
}
body.inhouse-premium main .category-card small {
  margin-top:9px;
  font-size:15px;
  line-height:1.65;
  color:var(--ih-muted);
}

/* Five delivery options and five value cards. */
body.inhouse-premium main .about-ecosystem-grid {
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:17px;
}
body.inhouse-premium main .about-ecosystem-card {
  min-height:254px;
  padding:27px 24px 25px;
  border:1px solid var(--ih-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 22px rgba(21,66,110,.045);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
body.inhouse-premium main .about-ecosystem-card:hover {
  transform:translateY(-2px);
  border-color:#afcce9;
  box-shadow:0 13px 28px rgba(21,66,110,.075);
}
body.inhouse-premium main .about-ecosystem-card>span {
  display:flex;align-items:center;justify-content:center;
  width:66px;height:64px;
  margin:0 0 23px;
  border-radius:16px;
  background:linear-gradient(135deg,#edf7ff,#d9e9ff);
  color:#124b71;
  font-size:28px;font-weight:800;line-height:1;
}
body.inhouse-premium main .about-ecosystem-card strong {
  color:var(--ih-ink);
  font-size:19px;
  line-height:1.36;
  letter-spacing:-.015em;
  font-weight:780;
}
body.inhouse-premium main .about-ecosystem-card small {
  color:var(--ih-muted);
  margin-top:12px;
  font-size:14.5px;
  line-height:1.72;
}

@media(max-width:1250px){
  body.inhouse-premium main .about-ecosystem-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
  body.inhouse-premium main .method-impact-grid strong {font-size:20px;}
  body.inhouse-premium main .method-impact-grid>div {padding:25px 21px;}
}
@media(max-width:960px){
  body.inhouse-premium main .section {padding:53px 0 58px;}
  body.inhouse-premium main .method-impact-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  body.inhouse-premium main .method-impact-grid>div:nth-child(2) {border-right:0;}
  body.inhouse-premium main .method-impact-grid>div:nth-child(-n+2) {border-bottom:1px solid rgba(255,255,255,.2);}
  body.inhouse-premium main .testimonials-grid {grid-template-columns:1fr;gap:15px;}
  body.inhouse-premium main .panel.testimonial-card {min-height:0;padding:25px;}
  body.inhouse-premium main .testimonial-card h3 {margin-top:15px;}
  body.inhouse-premium main .category-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  body.inhouse-premium main .about-ecosystem-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  body.inhouse-premium main .about-ecosystem-card {min-height:220px;}
}
@media(max-width:600px){
  body.inhouse-premium main .about-hero {min-height:360px;}
  body.inhouse-premium main .about-hero-content {padding-block:45px;}
  body.inhouse-premium main .about-hero h1 {font-size:clamp(31px,8vw,38px);max-width:100%;letter-spacing:-.035em;}
  body.inhouse-premium main .about-hero-lead {font-size:14px;line-height:1.7;}
  body.inhouse-premium main .section {padding:41px 0 45px;}
  body.inhouse-premium main .section-head {align-items:start;flex-direction:column;gap:12px;}
  body.inhouse-premium main .section-head h2 {font-size:clamp(25px,7.1vw,32px);line-height:1.25;}
  body.inhouse-premium main .section-kicker {font-size:11px;margin-bottom:12px;}
  body.inhouse-premium main .inhouse-section-intro {font-size:14px;margin:14px 0 22px;line-height:1.7;}
  body.inhouse-premium main .section-head .text-link {display:inline-flex;font-size:13px;white-space:normal;}
  body.inhouse-premium main .method-impact-grid {grid-template-columns:1fr;}
  body.inhouse-premium main .method-impact-grid>div,
  body.inhouse-premium main .method-impact-grid>div:nth-child(2) {border-right:0;border-bottom:1px solid rgba(255,255,255,.2);padding:21px 23px;}
  body.inhouse-premium main .method-impact-grid>div:last-child {border-bottom:0;}
  body.inhouse-premium main .method-impact-grid strong {font-size:20px;}
  body.inhouse-premium main .method-impact-grid span {font-size:13px;}
  body.inhouse-premium main .category-grid,
  body.inhouse-premium main .about-ecosystem-grid {grid-template-columns:1fr;gap:13px;}
  body.inhouse-premium main .category-card,
  body.inhouse-premium main .about-ecosystem-card {min-height:0;padding:23px;}
  body.inhouse-premium main .category-card .category-icon,
  body.inhouse-premium main .about-ecosystem-card>span {margin-bottom:16px;width:56px;height:56px;font-size:25px;}
  body.inhouse-premium main .category-card strong,
  body.inhouse-premium main .about-ecosystem-card strong {font-size:19px;}
  body.inhouse-premium main .category-card small,
  body.inhouse-premium main .about-ecosystem-card small {font-size:14px;}
}
@media(prefers-reduced-motion:reduce){
  body.inhouse-premium main .category-card,
  body.inhouse-premium main .panel.testimonial-card,
  body.inhouse-premium main .about-ecosystem-card {transition:none;}
}
