/* Editorial layout for the pages linked from the public landing page. */
.marketing-detail {
  --detail-ink: #182a38;
  --detail-muted: #536573;
  --detail-line: #d9e0df;
  --detail-blue: #126f9f;
}
.marketing-detail .detail-main { background: #fff; color: var(--detail-ink); }
.marketing-detail .detail-shell { width: min(calc(100% - 3rem), 1120px); }
.marketing-detail .detail-hero {
  min-height: 0;
  padding: 1.1rem 0 4.5rem;
  background: #f2f5f3;
}
.marketing-detail .detail-hero::before,
.marketing-detail .detail-hero::after,
.marketing-detail .detail-hero__visual::before { display: none; }
.marketing-detail .detail-crumbs { margin-bottom: clamp(2.2rem, 4vw, 3.5rem); color: #697b83; }
.marketing-detail .detail-hero__grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: clamp(2rem, 5vw, 5rem);
}
.marketing-detail .detail-eyebrow,
.marketing-detail .detail-index { color: #35748f; font-size: .72rem; letter-spacing: .12em; }
.marketing-detail .detail-hero h1 {
  max-width: 650px;
  margin: .8rem 0 1rem;
  color: #172a38;
  font-size: clamp(2.5rem, 4.6vw, 4.4rem);
  line-height: 1.06;
  letter-spacing: -.04em;
}
.marketing-detail .detail-hero p { max-width: 540px; margin-bottom: 1.6rem; color: #4d626e; font-size: clamp(1rem, 1.3vw, 1.14rem); line-height: 1.55; }
.marketing-detail .detail-hero__actions { gap: 1rem 1.5rem; }
.marketing-detail .detail-button { min-height: 48px; border: 0; border-radius: .55rem; background: #126f9f; box-shadow: none; font-weight: 850; }
.marketing-detail .detail-button:hover { background: #0c5c86; box-shadow: none; transform: none; }
.marketing-detail .detail-text-link,
.marketing-detail .detail-inline-link { color: #126f9f; }
.marketing-detail .detail-photo {
  overflow: hidden;
  margin: 0;
  border: 1px solid #d1d9d7;
  border-radius: .5rem;
  background: #e4e9e6;
}
.marketing-detail .detail-photo > img { display: block; width: 100%; height: clamp(310px, 31vw, 430px); object-fit: cover; }
.marketing-detail .detail-photo--teacher > img { object-position: center 28%; }
.marketing-detail .detail-photo figcaption { padding: .72rem 1rem; background: #fff; color: #526572; font-size: .76rem; font-weight: 700; }
.marketing-detail .detail-section { padding-block: clamp(3.5rem, 5vw, 5.5rem); }
.marketing-detail .detail-section--tint { background: #f4f6f4; }
.marketing-detail .detail-section--ink { background: #1d3341; }
.marketing-detail .detail-section h2,
.marketing-detail .detail-end h2 { font-size: clamp(1.9rem, 3vw, 2.9rem); letter-spacing: -.025em; }
.marketing-detail .detail-section p { line-height: 1.6; }
.marketing-detail .detail-copy > p,
.marketing-detail .detail-heading p { font-size: 1rem; }
.marketing-detail .detail-heading { margin-bottom: 1.75rem; }
.marketing-detail .pricing-panel,
.marketing-detail .pricing-cards article,
.marketing-detail .contact-channels a,
.marketing-detail .contact-form-card { border-color: var(--detail-line); border-radius: .55rem; box-shadow: none; }
.marketing-detail .about-profile__media { transform: none; }
.marketing-detail .pricing-panel { background: #f7f9f8; }
.marketing-detail .pricing-tabs button { min-height: 80px; border-width: 1px; border-color: var(--detail-line); border-radius: .5rem; }
.marketing-detail .pricing-tabs button[aria-selected="true"] { border-color: #126f9f; background: #eaf2f5; box-shadow: none; }
.marketing-detail .pricing-cards article { min-height: 320px; }
.marketing-detail .pricing-cards .pricing-card--accent { border-color: #126f9f; background: #fff; }
.marketing-detail .pricing-cards article a,
.marketing-detail .pricing-self__buy a { border-radius: .4rem; background: #126f9f; }
.marketing-detail .pricing-self__buy { border: 1px solid var(--detail-line); border-radius: .5rem; background: #fff; }
.marketing-detail .about-profile__media iframe { border: 1px solid var(--detail-line); border-radius: .5rem; box-shadow: none; }
.marketing-detail .about-profile__media > a { right: .5rem; bottom: .5rem; border-radius: .3rem; box-shadow: none; }
.marketing-detail .about-principles { gap: 1rem; margin-top: 2rem; }
.marketing-detail .about-principles article { border-color: #7c9fb0; }
.marketing-detail .about-principles span { color: #35748f; }
.marketing-detail .contact-channels { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.marketing-detail .contact-channels a { min-height: 100px; padding: 1rem; }
.marketing-detail .contact-channels i { background: #eaf2f5; color: #126f9f; }
.marketing-detail .contact-form-card { color: var(--detail-ink); }
.marketing-detail .detail-phone-lead { background: #f4f6f4; }
.marketing-detail .detail-phone-lead__inner { display: grid; grid-template-columns: 1fr minmax(280px, 420px); gap: clamp(2rem, 6vw, 5rem); align-items: center; }
.marketing-detail .detail-phone-lead__inner h2 { margin: .6rem 0 1rem; }
.marketing-detail .detail-phone-lead__form { display: grid; gap: .7rem; padding: 1.7rem; border: 1px solid var(--detail-line); border-radius: .55rem; background: #fff; }
.marketing-detail .detail-phone-lead__form label { font-weight: 800; }
.marketing-detail .detail-phone-lead__form input { width: 100%; min-height: 48px; padding: .75rem 1rem; border: 1px solid var(--detail-line); border-radius: .4rem; background: #fff; color: var(--detail-ink); }
.marketing-detail .detail-phone-lead__form button { width: 100%; min-height: 48px; margin-top: .5rem; }
.marketing-detail .detail-phone-lead__form [data-lead-status] { min-height: 1.4em; margin: 0; font-size: .85rem; }
.marketing-detail .detail-phone-lead__form small { color: var(--detail-muted); }
.marketing-detail .detail-phone-lead__form small a,
.marketing-detail .contact-form-card p a { text-decoration: underline; }
.marketing-detail .detail-end { background: #1d3341; }
.marketing-detail .detail-end p { color: #d7e3e8; }
.marketing-detail .detail-button--light { background: #fff; color: #126f9f; }

@media (max-width: 900px) {
  .marketing-detail .detail-phone-lead__inner { grid-template-columns: 1fr; }
  .marketing-detail .detail-hero__grid { grid-template-columns: 1fr; gap: 2rem; }
  .marketing-detail .detail-hero__visual { width: min(100%, 660px); }
  .marketing-detail .detail-photo > img { height: clamp(280px, 48vw, 420px); }
  .marketing-detail .contact-channels { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .marketing-detail .detail-shell { width: min(calc(100% - 2rem), 1120px); }
  .marketing-detail .detail-hero { padding-bottom: 2.5rem; }
  .marketing-detail .detail-crumbs { margin-bottom: 2rem; }
  .marketing-detail .detail-hero h1 { font-size: clamp(2.15rem, 9vw, 3rem); }
  .marketing-detail .detail-hero__grid { gap: 1.5rem; }
  .marketing-detail .detail-photo > img { height: 275px; }
  .marketing-detail .detail-photo figcaption { font-size: .7rem; }
  .marketing-detail .detail-section { padding-block: 3rem; }
  .marketing-detail .contact-channels,
  .marketing-detail .about-principles { grid-template-columns: 1fr; }
  .marketing-detail .pricing-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .marketing-detail .pricing-tabs button { min-height: 0; padding: .7rem; font-size: .65rem; }
  .marketing-detail .pricing-tabs strong { font-size: .85rem; }
  .marketing-detail .pricing-tabs small { display: none; }
}
[data-theme="dark"] .marketing-detail .detail-main { background: #14222c; color: #f1f5f4; }
[data-theme="dark"] .marketing-detail .detail-hero,
[data-theme="dark"] .marketing-detail .detail-section--tint,
[data-theme="dark"] .marketing-detail .detail-phone-lead { background: #1b2d37; }
[data-theme="dark"] .marketing-detail .detail-phone-lead__form { background: #223843; border-color: #40545e; }
[data-theme="dark"] .marketing-detail .detail-phone-lead__form input { background: #142d46; border-color: #52718d; color: #edf7ff; }
[data-theme="dark"] .marketing-detail .detail-hero h1 { color: #f1f5f4; }
[data-theme="dark"] .marketing-detail .detail-hero p,
[data-theme="dark"] .marketing-detail .detail-section p { color: #c3d2d8; }
[data-theme="dark"] .marketing-detail .detail-photo { border-color: #40545e; background: #253b47; }
[data-theme="dark"] .marketing-detail .detail-photo figcaption,
[data-theme="dark"] .marketing-detail .pricing-cards .pricing-card--accent,
[data-theme="dark"] .marketing-detail .pricing-self__buy { background: #223843; color: #e9f2f4; border-color: #40545e; }
