/* Catalogue and detailed cases use the approved Home 12-column grid.
   No typography, chart data, image or behavior changes. */
.cases-layout { --cases-layout-columns:repeat(12,minmax(0,1fr)); --cases-layout-gap:32px; }
.cases-layout main .container,
.cases-layout .site-footer.container,
.cases-layout .footer.container { width:calc(100% - 96px); max-width:1440px; }
.cases-layout .cases-layout__hero,
.cases-layout .cases-layout__catalogue-hero,
.cases-layout .cases-layout__facts,
.cases-layout .cases-layout__highlights,
.cases-layout .cases-layout__comparisons,
.cases-layout .cases-layout__cards,
.cases-layout .cases-layout__story,
.cases-layout .cases-layout__footer {
  display:grid;
  grid-template-columns:var(--cases-layout-columns);
  column-gap:var(--cases-layout-gap);
}
.cases-layout .cases-layout__hero > .case-hero__description,
.cases-layout .cases-layout__catalogue-hero > p { grid-column:1 / 9; }
.cases-layout .cases-layout__hero > .case-hero__jump,
.cases-layout .cases-layout__catalogue-hero > .hero-scroll { grid-column:9 / -1; justify-self:end; }
.cases-layout .cases-layout__facts > .case-facts__item { grid-column:span 3; }
.cases-layout .cases-layout__highlights > .case-metric,
.cases-layout .cases-layout__comparisons > .case-chart,
.cases-layout .cases-layout__cards > .case-card { grid-column:span 6; }
.cases-layout .cases-layout__highlights.case-highlights--single > .case-metric,
.cases-layout .cases-layout__comparisons.case-comparisons--single > .case-chart,
.cases-layout .cases-layout__cards.complete > .case-card:last-child { grid-column:1 / -1; }
.cases-layout .cases-layout__highlights.case-highlights--triple > .case-metric,
.cases-layout .cases-layout__comparisons.case-comparisons--triple > .case-chart { grid-column:span 4; }
.cases-layout .cases-layout__story > .case-toc { grid-column:1 / 5; }
.cases-layout .cases-layout__story > .case-story__content { grid-column:5 / -1; }
.cases-layout .cases-layout__footer > * { grid-column:span 4; }
.cases-layout .contact-with-form > .cases-layout__contact,
.cases-layout .contact-section--with-form > .cases-layout__contact {
  display:grid;
  grid-template-columns:var(--cases-layout-columns);
  grid-template-areas:none;
  column-gap:var(--cases-layout-gap);
}
.cases-layout .cases-layout__contact > .cases-layout__intro { grid-area:auto; grid-column:1 / 7; grid-row:1; }
.cases-layout .cases-layout__contact > .cases-layout__direct { grid-area:auto; grid-column:1 / 7; grid-row:2; }
.cases-layout .cases-layout__contact > .cases-layout__form { grid-area:auto; grid-column:7 / -1; grid-row:1 / 3; max-width:none; }
@media(min-width:1100px) {
  .cases-layout .case-hero__title--contained { max-width:calc((200% - var(--cases-layout-gap)) / 3); }
}
@media(min-width:801px) {
  .cases-layout .cases-layout__filters { display:grid; grid-template-columns:var(--cases-layout-columns); column-gap:var(--cases-layout-gap); }
  .cases-layout .cases-layout__filters > .service-tabs { grid-column:1 / 9; }
  .cases-layout .cases-layout__filters > .search { grid-column:9 / -1; width:100%; justify-self:end; }
}
@media(max-width:1200px) {
  .cases-layout .cases-layout__comparisons.case-comparisons--triple > .case-chart { grid-column:1 / -1; }
}
@media(max-width:1100px) {
  .cases-layout main .container,
  .cases-layout .site-footer.container,
  .cases-layout .footer.container { width:calc(100% - 64px); }
}
@media(max-width:900px) {
  .cases-layout .cases-layout__highlights.case-highlights--triple > .case-metric { grid-column:1 / -1; }
  .cases-layout .contact-with-form > .cases-layout__contact,
  .cases-layout .contact-section--with-form > .cases-layout__contact { grid-template-columns:minmax(0,1fr); }
  .cases-layout .cases-layout__contact > .cases-layout__intro { grid-column:1; grid-row:1; }
  .cases-layout .cases-layout__contact > .cases-layout__form { grid-column:1; grid-row:2; }
  .cases-layout .cases-layout__contact > .cases-layout__direct { grid-column:1; grid-row:3; }
}
@media(max-width:800px) {
  .cases-layout { --cases-layout-gap:24px; }
  .cases-layout main .container,
  .cases-layout .site-footer.container,
  .cases-layout .footer.container { width:calc(100% - 48px); }
  .cases-layout .cases-layout__story { display:block; }
  .cases-layout .cases-layout__facts,
  .cases-layout .cases-layout__footer { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cases-layout .cases-layout__facts > .case-facts__item { grid-column:span 1; }
  .cases-layout .cases-layout__footer > :is(.site-footer__copyright,.footer-copyright) { grid-column:1 / -1; }
  .cases-layout .cases-layout__footer > :is(.site-footer__company,.footer-company) { grid-column:1; }
  .cases-layout .cases-layout__footer > :is(.site-footer__documents,.footer-documents) { grid-column:2; }
}
@media(max-width:600px) {
  .cases-layout { --cases-layout-gap:20px; }
  .cases-layout main .container,
  .cases-layout .site-footer.container,
  .cases-layout .footer.container { width:calc(100% - 40px); }
  .cases-layout .cases-layout__hero,
  .cases-layout .cases-layout__catalogue-hero,
  .cases-layout .cases-layout__highlights,
  .cases-layout .cases-layout__comparisons,
  .cases-layout .cases-layout__cards,
  .cases-layout .cases-layout__footer { grid-template-columns:minmax(0,1fr); }
  .cases-layout .cases-layout__hero > .case-hero__description,
  .cases-layout .cases-layout__hero > .case-hero__jump,
  .cases-layout .cases-layout__catalogue-hero > p,
  .cases-layout .cases-layout__catalogue-hero > .hero-scroll,
  .cases-layout .cases-layout__highlights > .case-metric,
  .cases-layout .cases-layout__comparisons > .case-chart,
  .cases-layout .cases-layout__cards > .case-card,
  .cases-layout .cases-layout__highlights.case-highlights--single > .case-metric,
  .cases-layout .cases-layout__comparisons.case-comparisons--single > .case-chart,
  .cases-layout .cases-layout__highlights.case-highlights--triple > .case-metric,
  .cases-layout .cases-layout__comparisons.case-comparisons--triple > .case-chart,
  .cases-layout .cases-layout__cards.complete > .case-card:last-child,
  .cases-layout .cases-layout__footer > :is(.site-footer__copyright,.footer-copyright),
  .cases-layout .cases-layout__footer > :is(.site-footer__company,.footer-company),
  .cases-layout .cases-layout__footer > :is(.site-footer__documents,.footer-documents) { grid-column:1; }
  .cases-layout .cases-layout__hero > .case-hero__jump,
  .cases-layout .cases-layout__catalogue-hero > .hero-scroll { justify-self:stretch; }
}
