/* Real company photographs: preserve complete groups and tall equipment. */
.cdc-company-photo {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    border-radius: 7px;
}
.cdc-company-photo .cdc-company-img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: var(--cdc-photo-ratio);
    min-height: 0;
    border-radius: 7px;
}
.cdc-company-photo figcaption {
    position: static;
    padding: .75rem 0 .25rem;
    background: transparent;
    color: inherit;
    font-size: .9375rem;
    line-height: 1.5;
}
.cdc-company-home {
    display: grid;
    gap: 1.5rem;
    min-width: 0;
}
.cdc-company-home .cdc-company-photo--panorama .cdc-company-img {
    aspect-ratio: var(--cdc-photo-ratio);
    object-fit: contain;
}
.cdc-company-home > :last-child .cdc-company-img {
    aspect-ratio: 16 / 9;
    object-fit: cover;
}
.cdc-company-intro {
    background: var(--soft, #f5f4f1);
}
.cdc-company-intro h2 {
    max-width: 1000px;
    font-size: clamp(2.1rem, 4.5vw, 4rem);
    line-height: 1.12;
}
.cdc-company-intro p:not(.eyebrow) {
    max-width: 850px;
    font-size: 1.125rem;
}
.cdc-company-intro .cdc-company-photo {
    max-width: 1100px;
    margin-top: 2rem;
}
.cdc-company-intro .cdc-company-img {
    max-width: 937px;
    margin-inline: auto;
}
.cdc-company-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
    align-items: start;
    gap: 1.5rem;
    margin-top: 2rem;
}
.cdc-company-gallery .cdc-company-img {
    aspect-ratio: 4 / 3;
    object-fit: contain;
    background: #ecebe7;
}
.immersive-band .cdc-company-photo--portrait .cdc-company-img {
    height: auto;
    aspect-ratio: var(--cdc-photo-ratio);
    min-height: 0;
    max-height: 600px;
    object-fit: contain;
}
.cdc-company-method {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(1.5rem, 4vw, 3.5rem);
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid var(--line, #d6d3ce);
}
.cdc-company-method .cdc-company-img {
    max-height: 440px;
    object-fit: contain;
}
.cdc-company-method h3 {
    font-size: clamp(1.4rem, 2.5vw, 2rem);
}
.cdc-company-method .text-link {
    display: inline-block;
    margin-top: .5rem;
}
@media (max-width: 700px) {
    .cdc-company-gallery,
    .cdc-company-method {
        grid-template-columns: minmax(0, 1fr);
    }
    .cdc-company-gallery .cdc-company-img {
        aspect-ratio: var(--cdc-photo-ratio);
        max-height: 480px;
    }
    .cdc-company-intro h2 {
        overflow-wrap: break-word;
    }
}

.home-company-section.section.soft { background: #101c17; }
