/* Fit content to the existing wide canvas, independently of viewport width. */
.hero{grid-template-columns:minmax(0,1.095fr) minmax(0,1fr);height:auto;max-height:none;align-items:center}
.hero-copy{container-type:inline-size;min-width:0;padding-block:clamp(40px,4vw,82px)}
.hero h1{font-size:max(var(--text-caption),clamp(28px,6.4cqw,64px));line-height:1.25;letter-spacing:-.025em;max-width:100%}
.hero h1 em{height:auto;min-height:1.25em;white-space:nowrap;max-width:100%}
.hero .lead{font-size:max(var(--text-caption),clamp(16px,2.4cqw,21px));line-height:1.45;max-width:36em;margin-top:clamp(26px,4.6cqw,45px)}
.hero .actions{margin-top:clamp(28px,5cqw,48px);gap:clamp(12px,2.4cqw,24px)}
.hero .btn{font-size:max(var(--text-caption),clamp(14px,2.3cqw,20px));min-height:clamp(64px,10cqw,94px);padding:18px 16px;min-width:0}
.hero .montage-card{display:block;width:100%;height:auto!important;aspect-ratio:4/3;overflow:hidden;background:#f6f6f4;cursor:default}
.hero .montage-card>img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;pointer-events:none}
.portfolio-image{display:block;aspect-ratio:4/3;height:auto!important;cursor:zoom-in;background:#f5f5f3}
.portfolio-image>img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.concept-full{display:block;width:100%;height:auto;border-radius:10px}
#contentDialog.concept-dialog{max-width:1500px;width:calc(100% - 32px)}
.portfolio-heading h2 span{white-space:normal}
@media(max-width:800px){.hero{grid-template-columns:minmax(0,1fr);gap:28px;min-height:0}.hero-copy{padding:36px 20px 0}.hero h1{font-size:max(var(--text-caption),clamp(24px,6.4cqw,43px))}.hero .lead{font-size:16px}.hero .btn{font-size:14px;min-height:62px}.hero .actions{flex-wrap:wrap}.hero .actions .btn{flex:1 1 160px}}
