/* Marketing layouts share the header's content width. Prose keeps a readable measure. */
.editorial-image{margin:0;min-width:0}
.editorial-image img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:14px;background:#F6F3EE}
.editorial-image figcaption{margin-top:8px;color:var(--muted);font-size:12px;line-height:1.4}
.editorial-image.visual-leather img,.editorial-image.visual-wood img,.editorial-image.visual-print img{object-fit:contain;background:var(--white)}
.editorial-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,64px);align-items:center}
.editorial-copy{min-width:0}
.page .editorial-hero h1{max-width:none;font-size:clamp(36px,4.2vw,56px);line-height:1.1}
.page .editorial-hero .lead{max-width:none;font-size:18px;line-height:1.65}
.editorial-hero .hero-image img{aspect-ratio:4/5;object-position:60% center}
.marketing-page .plat-sec{max-width:none}
.platform-layout .family-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:28px}
.platform-layout .family-cards li{padding-top:0;border:1px solid var(--border);border-radius:14px;overflow:hidden}
.family-cards .editorial-image img{border-radius:0;aspect-ratio:4/3}
.family-cards .editorial-image figcaption{padding-inline:20px}
.family-cards h3{padding:16px 20px 0}
.family-cards li>p{padding:0 20px}
.platform-layout .plat-steps{gap:20px}
.platform-layout .plat-steps li{padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--mist)}
.platform-layout .plat-sec>h2{max-width:34ch}
.platform-layout .cmp-p{max-width:76ch}
.platform-layout .faq-accordion{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px;align-items:start}
.faq-accordion details{padding:20px 0;border-top:1px solid var(--border)}
.faq-accordion summary{font-weight:600;cursor:pointer;line-height:1.55;padding-right:16px}
.faq-accordion details>div{margin-top:14px;color:var(--slate)}
.platform-more{border:1px solid var(--border);border-radius:14px;padding:24px;background:var(--mist)}
.platform-more>summary{cursor:pointer}
.platform-more>summary h2{display:inline;font-size:clamp(24px,3vw,32px);line-height:1.25}
.platform-more[open]>.cmp-scroll{margin-top:24px;background:var(--white)}
.comparison-layout .service-visual{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:48px;align-items:center}
.comparison-layout .faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px}
.contact-layout .contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.contact-form-layout{margin-top:64px}
.contact-form-layout .cform-sec{max-width:none;margin-top:0}
.cat-soon .cat-hero .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center}
.cat-soon .cat-hero .hero-copy{max-width:none}
.cat-soon .soon-box{max-width:none}
.cat-soon .soon-box>p:not(.row){max-width:70ch}
@media (max-width:1000px){.platform-layout .family-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:800px){
 .editorial-hero,.comparison-layout .service-visual,.cat-soon .cat-hero .wrap{grid-template-columns:minmax(0,1fr);gap:28px}
 .editorial-hero .hero-image img{aspect-ratio:3/2;object-position:center}
 .platform-layout .faq-accordion,.comparison-layout .faq{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:520px){
 .platform-layout .family-cards,.contact-layout .contact-grid{grid-template-columns:minmax(0,1fr)}
 .platform-more{padding:18px}
 .platform-layout .plat-steps li{padding:22px}
}
