/* Named KAVUMA/ATLAS layouts over the existing approved website content schema.
   V4 retained presentation. Earlier releases and fictional showrooms stay unchanged. */
.demo-family .demo-brand{flex-shrink:0;max-width:240px;overflow-wrap:anywhere}
.demo-family .demo-brand img{width:220px;max-width:100%;height:auto;max-height:80px;object-fit:contain}
.demo-family.catalogue-site .demo-brand{background:#fff;color:#203547;padding:12px 16px;border-radius:3px}
.demo-family .demo-search{display:flex;flex:1;min-width:0;max-width:600px;background:#fff;color:#203547;border:1px solid #9aadb7}
.demo-family .demo-search input{flex:1;min-width:0;border:0;padding:12px 16px;background:transparent;color:#203547}
.demo-family .demo-search button{border:0;background:#234b5f;color:#fff;padding:12px 18px;cursor:pointer}
.demo-family .demo-catalogue-tools{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px;flex-wrap:wrap}
.demo-family .demo-prose{white-space:pre-line}
.demo-family .r2-image figcaption{font:11px/1.5 Arial,sans-serif;color:#526775;margin-top:10px}
.demo-family.field-site .field-hero .r2-image{background:transparent}
.demo-family.field-site .field-hero .r2-image img{aspect-ratio:4/5;max-height:570px;object-fit:cover}
.demo-family.field-site .field-responsibility>p{color:#dce5d7;align-self:center;font-size:18px}
.demo-family.field-site .field-responsibility h2{color:#f3f1e5}
.demo-family .field-contact{display:grid;grid-template-columns:1.2fr 1fr;gap:50px}
.demo-family .field-contact h2{font-size:clamp(32px,4vw,58px)}
.demo-family .demo-contact-actions{align-self:center;overflow-wrap:anywhere}
.demo-family .demo-contact-actions p{margin:12px 0}
.demo-family .demo-footer-name{font-size:25px;font-weight:600}
.demo-family.catalogue-site .catalogue-hero figure.r2-image{padding:0}
.demo-family.catalogue-site .catalogue-hero figure.r2-image img{max-height:520px}
.demo-family.catalogue-site .catalogue-categories{grid-template-columns:repeat(4,minmax(0,1fr))}
.demo-family.catalogue-site .catalogue-categories .r2-image{margin-top:18px}
.demo-family.catalogue-site .catalogue-categories .r2-image img{height:180px;object-fit:contain;aspect-ratio:auto}
.demo-family.catalogue-site .catalogue-categories figcaption{font-size:10px}
.demo-family.catalogue-site .catalogue-application h2{color:#fff}
.demo-family .r2-card{background:transparent}
.demo-family .r2-detail h1{font-size:clamp(32px,4vw,58px)}
@media(max-width:1000px){.demo-family .catalogue-header{flex-wrap:wrap}.demo-family .catalogue-header .demo-search{order:3;max-width:none;flex-basis:100%}.demo-family.catalogue-site .catalogue-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-family .field-header{align-items:flex-start;flex-direction:column}.demo-family .field-header nav{justify-content:flex-start}}
@media(max-width:640px){.demo-family.catalogue-site .catalogue-categories,.demo-family .field-contact{grid-template-columns:1fr}.demo-family .field-contact{gap:20px}.demo-family .demo-brand img{width:190px}.demo-family .demo-catalogue-tools{align-items:stretch}.demo-family .demo-catalogue-tools .demo-search{flex-basis:100%}.demo-family .field-hero .r2-image img{aspect-ratio:4/3;max-height:360px}.demo-family .field-project-grid{grid-template-columns:1fr}.demo-family .field-footer{grid-template-columns:1fr}.demo-family .field-footer nav{grid-column:auto}}

[data-studio-hero-image]{min-width:0;align-self:center}.field-site [data-studio-hero-image] img{width:100%;aspect-ratio:4/5;object-fit:cover}.field-site [data-studio-hero-image] .r2-image{background:transparent}.catalogue-site [data-studio-hero-image] .r2-image{padding:0}.demo-family svg{max-width:100%;height:auto}.demo-family .r2-placeholder{background:#f5f6f5;color:#53646a}.demo-family [data-studio-brand]:not([href]){display:block}@media(max-width:640px){.field-site [data-studio-hero-image] img{aspect-ratio:4/3}}

.demo-family.field-site h1,.demo-family.field-site .field-contact h2,.demo-family.field-site .field-responsibility h2{font-family:Georgia,'Times New Roman',serif;font-weight:400}

.demo-family [data-studio-hero]:not(:has([data-studio-hero-image])){grid-template-columns:1fr}.demo-family [data-studio-hero]:not(:has([data-studio-hero-image])) h1{max-width:1000px}
