/* Surveylet V10 — continuous articles, continuous Features, and institution width. */

/* Align the always-visible institution references with Home's other content
   (the V9 featured block had full-bleed width outside the usual gutters). */
body[data-route="/"] main .fluent-prototype .cal-home-featured-institutions {
  box-sizing:border-box !important;
  width:calc(100% - 2 * var(--fluent-gutter, 56px)) !important;
  max-width:none !important;
  margin:24px auto 20px !important;
  padding:24px 0 30px !important;
}

/* All regular individual blog articles: read in ordinary document order,
   with chapter headings above the text. Exclude V5's explicitly redesigned
   Real-Time Delphi landing page (which retains its approved topic navigation). */
body[data-kind="article"] main .cal-blog-article:not(.fluent-prototype) > :is(.cal-wrap,.cal-guide-wrap,.cal-check-wrap,.cal-hybrid-wrap,.cal-lc-wrap,.cal-ram-wrap) {
  width:100% !important; max-width:1150px !important;
  margin-inline:auto !important;
  padding-inline:clamp(20px,4vw,58px) !important;
}
body[data-kind="article"] main .cal-blog-article:not(.fluent-prototype) section[data-layout]:not([data-layout="hero"]):not([data-layout="cta"]) {
  display:block !important;
  grid-template-columns:none !important;
  width:100% !important; max-width:1020px !important;
  margin:0 auto !important;
  padding:clamp(26px,3.4vw,44px) 0 !important;
  border:0 !important;
  border-bottom:1px solid #e3eaf0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:#fff !important;
  color:#243d56 !important;
}
body[data-kind="article"] main .cal-blog-article:not(.fluent-prototype) section[data-chapter]::before {
  content:none !important; display:none !important;
}
body[data-kind="article"] main .cal-blog-article:not(.fluent-prototype) section[data-layout] > :is(h2,h3) {
  position:static !important; inset:auto !important;
  display:block !important; grid-column:auto !important; grid-row:auto !important;
  max-width:none !important; padding:0 !important; border:0 !important;
  margin:0 0 18px !important;
  color:#203953 !important;
  font-size:clamp(24px,2.5vw,32px) !important;
  line-height:1.25 !important;
}
body[data-kind="article"] main .cal-blog-article:not(.fluent-prototype) section[data-layout] > :is(h2,h3)::before {
  content:none !important; display:none !important;
}
body[data-kind="article"] main .cal-blog-article:not(.fluent-prototype) section[data-layout]:not([data-layout="hero"]):not([data-layout="cta"]) > :not(h2):not(h3) {
  grid-column:auto !important; grid-row:auto !important;
  max-width:100% !important;
}
body[data-kind="article"] main .cal-blog-article:not(.fluent-prototype) section[data-layout]:not([data-layout="hero"]):not([data-layout="cta"]) > :is(p,.cal-intro),
body[data-kind="article"] main .cal-blog-article:not(.fluent-prototype) section[data-layout]:not([data-layout="hero"]):not([data-layout="cta"]) .article-copy :is(p,li) {
  color:#506479 !important;
  line-height:1.75 !important;
}
body[data-kind="article"] main .cal-blog-article:not(.fluent-prototype) :is(.article-copy,.cal-table-wrap,.design-grid) {min-width:0;}
body[data-kind="article"] main .cal-blog-article:not(.fluent-prototype) :is(table,pre,code,img,video,iframe) {max-width:100%;}
body[data-kind="article"] main .cal-blog-article:not(.fluent-prototype) :is(.cal-table-wrap,[class*="table-wrap"]) {overflow-x:auto;}

/* Features is a single, scrollable page. Its sections are no longer put in
   tab panels by the V10 script. Preserve functional grids/cards inside each
   section but remove sticky left headings and the oversized chapter markers. */
body[data-route="/features"] main .fluent-prototype .fluent-tabs-shell {display:none !important;}
body[data-route="/features"] main .fluent-prototype > .cal-wrap > section:not(.cal-hero):not(.cal-cta) {
  display:block !important; grid-template-columns:none !important;
  box-sizing:border-box !important;
  width:100% !important; max-width:none !important;
  margin:0 !important;
  padding:clamp(28px,3.7vw,48px) var(--fluent-gutter,56px) !important;
  border:0 !important; border-bottom:1px solid #e4ebf2 !important;
  border-radius:0 !important; box-shadow:none !important;
  background:#fff !important; color:#263d52 !important;
}
body[data-route="/features"] main .fluent-prototype > .cal-wrap > section:not(.cal-hero):not(.cal-cta) > :is(h2,h3) {
  position:static !important; inset:auto !important;
  display:block !important; grid-column:auto !important; grid-row:auto !important;
  width:auto !important; max-width:1100px !important;
  padding:0 !important; margin:0 0 20px !important;
  color:#203953 !important; font-size:clamp(24px,2.5vw,34px) !important;
  line-height:1.25 !important;
}
body[data-route="/features"] main .fluent-prototype > .cal-wrap > section:not(.cal-hero):not(.cal-cta) > :is(h2,h3)::before,
body[data-route="/features"] main .fluent-prototype section[data-chapter]::before {
  content:none !important; display:none !important;
}
body[data-route="/features"] main .fluent-prototype > .cal-wrap > section:not(.cal-hero):not(.cal-cta) > :not(h2):not(h3) {
  grid-column:auto !important; grid-row:auto !important;
  max-width:100% !important;
}
body[data-route="/features"] main .fluent-prototype > .cal-wrap > section:not(.cal-hero):not(.cal-cta) :is(p,li,span):not([class*="badge"]):not([class*="eyebrow"]) {
  color:#506479;
}
/* Keep the repaired six-step workflow from V5 when panels are removed. */
body[data-route="/features"] main .fluent-prototype section[data-layout="timeline"] .design-steps {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:16px !important;
  margin-top:22px !important;
  counter-reset:calstep;
}
body[data-route="/features"] main .fluent-prototype section[data-layout="timeline"] .design-step {
  position:relative !important; display:block !important;
  min-width:0 !important; min-height:165px !important;
  padding:62px 21px 20px !important;
  border:1px solid #e0e7ee !important; border-radius:9px !important;
  background:#f8fafc !important; box-shadow:none !important;
  color:#253d52 !important;
}
body[data-route="/features"] main .fluent-prototype section[data-layout="timeline"] .design-step::before {
  content:counter(calstep) !important; counter-increment:calstep;
  position:absolute !important; top:18px !important; left:21px !important;
  width:29px !important; height:29px !important;
  display:grid !important; place-items:center !important;
  border:0 !important; border-radius:7px !important; transform:none !important;
  background:#e4f1fc !important; color:#0c609e !important;
  font-size:14px !important; line-height:1 !important; font-weight:700 !important;
}
body[data-route="/features"] main .fluent-prototype section[data-layout="timeline"] .design-step::after,
body[data-route="/features"] main .fluent-prototype section[data-layout="timeline"] :is(.ds-step-ring,.ds-steps-chart) {
  content:none !important; display:none !important;
}
body[data-route="/features"] main .fluent-prototype section[data-layout="timeline"] .design-step strong {
  display:block !important; color:#203953 !important; font-size:16px !important;
  line-height:1.4 !important; margin-bottom:9px !important;
}
body[data-route="/features"] main .fluent-prototype section[data-layout="timeline"] .design-step :is(p,li,span) {
  color:#506479 !important; font-size:14px !important; line-height:1.55 !important;
}
@media(max-width:920px){
  body[data-route="/features"] main .fluent-prototype section[data-layout="timeline"] .design-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:620px){
  body[data-route="/features"] main .fluent-prototype section[data-layout="timeline"] .design-steps{grid-template-columns:1fr!important;}
  body[data-route="/"] main .fluent-prototype .cal-home-featured-institutions{padding-block:20px!important;}
}
