.coverit-solution { padding:var(--coverit-section-space) max(var(--coverit-gutter),calc((100% - var(--coverit-width)) / 2)) var(--coverit-section-end); border-top:1px solid var(--coverit-line); }
.coverit-solution__intro { display:grid; grid-template-columns:1fr 1fr; gap:24px 48px; margin-bottom:var(--coverit-section-space); align-items:start; }
.coverit-solution__intro h2 { margin:0; grid-row:1 / 3; }
.coverit-solution__body p { margin:0 0 1em; }
.coverit-solution__body h3 { margin:32px 0 12px; color:var(--coverit-accent); font-size:var(--coverit-section); }
.coverit-solution__body > :first-child { margin-top:0; }
.coverit-solution__intro .coverit-button { justify-self:start; margin:0; }
.coverit-content:has(> .coverit-solution) > .frame-type-text .ce-bodytext { max-width:75ch; }
.coverit-content:has(> .coverit-solution) > .frame-type-text:not(.frame-layout-1) .ce-bodytext { max-width:none; column-count:2; column-gap:48px; }
.coverit-content:has(> .coverit-solution) > .frame-type-text:not(.frame-layout-1) .ce-bodytext > p:first-child { column-span:all; max-width:75ch; margin-bottom:32px; }
.coverit-content:has(> .coverit-solution) > .frame-type-text p { break-inside:avoid; }
.coverit-content:has(> .coverit-solution) > .frame-layout-1 .ce-bodytext { column-count:1; }
.coverit-content:has(> .coverit-solution) > .frame-type-text h3 { margin:32px 0 12px; color:var(--coverit-accent); font-size:var(--coverit-section); break-after:avoid; }
main:has(.coverit-solution) .coverit-intro:has(> .coverit-hero--product:first-of-type) .coverit-page-heading h1 { font-size:clamp(34px,4vw,64px); hyphens:auto; }
.coverit-solution .coverit-reference-gallery__grid { gap:16px; }
.coverit-solution .coverit-reference-image { background:var(--coverit-surface); }
.coverit-solution .coverit-reference-image img { transition:opacity var(--coverit-hover-duration); }
.coverit-solution .coverit-reference-image:hover img { opacity:.85; }
.coverit-solution .coverit-reference-image:focus-visible { outline:2px solid var(--coverit-accent); outline-offset:3px; }
@media(max-width:767px) {
    .coverit-content:has(> .coverit-solution) > .frame-type-text:not(.frame-layout-1) .ce-bodytext { column-count:1; }
    .coverit-solution__intro { grid-template-columns:1fr; gap:24px; }
    .coverit-solution__intro h2 { grid-row:auto; }
    .coverit-solution__intro .coverit-button { justify-self:stretch; }
}
