/* Classroom case study, featured project and form privacy note */
.classroom-case-hero .page-hero-image img{object-fit:cover}
.classroom-intro-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:1.3rem;align-items:start}
.classroom-intro-grid .video-card{aspect-ratio:16/9}
.classroom-intro-grid .video-card video{width:100%;height:100%;object-fit:cover}
.classroom-project-detail{background:linear-gradient(180deg,#f7fbff,#eef7fc)}
.classroom-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}
.classroom-result-card{margin:0;background:#fff;border:1px solid var(--line,#dce8f2);border-radius:26px;overflow:hidden;box-shadow:0 18px 42px rgba(7,21,43,.09)}
.classroom-result-card img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:#f2f7fb}
.classroom-result-card figcaption{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.1rem}
.classroom-result-card figcaption strong{color:#07152b}
.classroom-result-card figcaption span{color:#5b6b7c;text-align:right}
.form-privacy-note{margin:.25rem 0 0;color:#526072;font-size:.9rem;line-height:1.45}
.form-privacy-note a{color:#0879c8;text-decoration:underline;text-underline-offset:3px}
.featured-classroom-project{background:linear-gradient(135deg,#07152b,#123d70);color:#fff;border-radius:30px;padding:1.2rem;display:grid;grid-template-columns:220px minmax(0,1fr);gap:1.2rem;align-items:center;margin:0 0 1.25rem;box-shadow:0 20px 50px rgba(7,21,43,.16)}
.featured-classroom-project img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:20px}
.featured-classroom-project h2{color:#fff;margin:.2rem 0 .5rem}
.featured-classroom-project p{color:rgba(255,255,255,.84);margin:0 0 .85rem}
.featured-classroom-project .link-more{color:#fff}
.blog-article-image{margin:0 0 1.25rem;border-radius:26px;overflow:hidden;box-shadow:0 18px 45px rgba(7,21,43,.12)}
.blog-article-image img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.related-project-card{margin:1.5rem 0;padding:1.2rem;border:1px solid rgba(24,138,213,.22);border-radius:24px;background:linear-gradient(135deg,#eef8ff,#fff)}
.related-project-card h2{margin-top:0}
@media(max-width:900px){.classroom-intro-grid{grid-template-columns:1fr}.featured-classroom-project{grid-template-columns:180px minmax(0,1fr)}}
@media(max-width:640px){.classroom-gallery{grid-template-columns:1fr}.classroom-result-card figcaption{display:block}.classroom-result-card figcaption span{display:block;text-align:left;margin-top:.25rem}.featured-classroom-project{grid-template-columns:1fr}.featured-classroom-project img{max-height:220px}.classroom-case-hero .hero-actions{align-items:stretch}}

/* Keep labels and headings in separate lines throughout the public site. */
.kicker,
.section-head > .kicker,
.page-hero .kicker,
.dark-panel > .kicker,
.designer-copy > .kicker,
.signature-card .copy > .kicker,
.project-card > .kicker,
.featured-classroom-project .kicker{
  display:inline-flex;
  align-items:center;
  max-width:100%;
  margin:0 0 .85rem;
  line-height:1.2;
  white-space:normal;
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}
.section-head > h2,
.designer-copy > h2,
.signature-card .copy > h3,
.project-card > h2,
.featured-classroom-project h2{margin-top:0}
.classroom-project-promotion{padding-top:3rem;padding-bottom:3rem}

@media(max-width:760px){
  /* The call and quote controls now sit after the page instead of covering content. */
  body,
  main,
  .site-main{padding-bottom:0 !important}
  footer,
  .site-footer{padding-bottom:3rem !important}
  .mobile-sticky-cta,
  .sticky-cta{
    position:relative !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    width:min(calc(100% - 1.5rem),680px) !important;
    margin:1.25rem auto 0 !important;
    padding:.42rem !important;
    gap:.45rem !important;
    z-index:2 !important;
    border-radius:22px !important;
  }
  .mobile-sticky-cta a,
  .sticky-cta a{min-height:48px !important;border-radius:16px !important}
  .kicker,
  .section-head > .kicker,
  .page-hero .kicker,
  .dark-panel > .kicker,
  .designer-copy > .kicker,
  .signature-card .copy > .kicker,
  .project-card > .kicker,
  .featured-classroom-project .kicker{
    position:static !important;
    margin:0 0 .8rem !important;
    padding:.48rem .7rem !important;
    border-radius:14px !important;
    line-height:1.18 !important;
  }
  .section-head h2,
  .designer-copy h2{
    font-size:clamp(2rem,9.2vw,2.75rem) !important;
    line-height:1.04 !important;
    margin:0 0 .75rem !important;
  }
  .signature-card .copy h3{
    font-size:clamp(1.45rem,7vw,1.9rem) !important;
    line-height:1.06 !important;
    margin:0 0 .45rem !important;
  }
  .signature-card .copy p{font-size:.95rem !important;line-height:1.4 !important}
  .signature-card img{transform:none !important}
  .featured-classroom-project h2{line-height:1.08 !important}
  .classroom-project-promotion{padding-top:2rem;padding-bottom:2rem}
}
