/* Optional portrait presentation. Colors continue to come from the site builder. */
.industry-template-home.brand-portrait-editorial {
    --industry-footer: var(--industry-primary) !important;
    --industry-footer-text: var(--industry-page) !important;
}
.industry-template-home.brand-portrait-editorial #hero-slider:not(.has-full-banner) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto auto auto;
    gap: 18px 56px !important;
    align-items: center;
    min-height: 0 !important;
    padding: 48px max(28px, calc((100% - 1120px) / 2)) 52px !important;
    background: var(--industry-page) !important;
}
.brand-portrait-editorial #hero-slider:not(.has-full-banner)::after { display: none; }
.brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-content,
.brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-layout,
.brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-copy {
    display: contents !important;
}
.brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-copy > * { opacity: inherit; }
.brand-portrait-editorial #hero-slider.no-hero-text:not(.has-full-banner) .industry-hero-copy { display: none !important; }
.industry-template-home.brand-portrait-editorial #hero-slider.no-side-media:not(.has-full-banner) { grid-template-columns: minmax(0, 1fr) !important; }
.brand-portrait-editorial #hero-slider:not(.has-full-banner) > .industry-hero-media {
    position: relative !important;
    inset: auto !important;
    grid-column: 2;
    grid-row: 1 / 6;
    order: 0 !important;
    width: 100% !important;
    max-width: 460px;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1;
    justify-self: end;
    align-self: center;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .1);
    border-radius: 24px;
    background: var(--industry-soft);
    box-shadow: 0 18px 46px rgba(6, 24, 46, .1);
}
.brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-media::before,
.brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-media::after { display: none; }
.brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-media img {
    width: 100%;
    height: 100%;
    object-fit: contain !important;
    object-position: center !important;
    opacity: 1 !important;
    filter: none !important;
}
.brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-badge {
    grid-column: 1;
    grid-row: 1;
    margin: 0 !important;
    color: var(--industry-primary);
    font-size: 11px;
    line-height: 1.6;
    letter-spacing: .14em;
}
.brand-portrait-editorial #hero-slider:not(.has-full-banner) h1 {
    grid-column: 1;
    grid-row: 2;
    margin: 0 !important;
    max-width: 580px;
    font-size: clamp(38px, 4.2vw, 56px) !important;
    line-height: 1.08 !important;
    text-wrap: balance;
}
.brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-copy > p {
    grid-column: 1;
    grid-row: 3;
    max-width: 520px;
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
}
.brand-portrait-editorial #hero-slider:not(.has-full-banner) :is(.industry-hero-actions, .mokili-hero-cta-layer) {
    grid-column: 1;
    grid-row: 4;
    margin: 0 !important;
    padding: 0 !important;
}
.brand-portrait-editorial #hero-slider:not(.has-full-banner) :is(.industry-hero-actions, .mokili-hero-cta-layer) a,
.brand-portrait-editorial #hero-slider:not(.has-full-banner) :is(.industry-hero-actions, .mokili-hero-cta-layer) button {
    min-height: 48px;
    box-shadow: none;
}
.brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-features {
    grid-column: 1;
    grid-row: 5;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 0 !important;
    width: 100%;
    max-width: none;
}
.brand-portrait-editorial #hero-slider .industry-hero-feature {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 50px;
    padding: 11px 12px;
    border: 1px solid rgba(0, 0, 0, .07);
    border-radius: 10px;
    background: var(--industry-soft);
    box-shadow: none;
    overflow: visible;
}
.brand-portrait-editorial #hero-slider .industry-hero-feature i { color: var(--industry-accent); font-size: 16px; }
.brand-portrait-editorial #hero-slider .industry-hero-feature strong { font-size: 12px; line-height: 1.4; font-weight: 600; }
.brand-portrait-editorial .industry-services-section.builder-image-shape-horizontal .industry-service-card > img {
    width: 100%;
    height: 210px !important;
    object-fit: contain !important;
    background: var(--industry-primary);
}
.brand-portrait-editorial .industry-service-card,
.brand-portrait-editorial .industry-gallery-item { border-color: rgba(0, 0, 0, .09); }
.brand-portrait-editorial .industry-service-category-button { min-height: 44px; }
.brand-portrait-editorial .industry-service-description-more { text-underline-offset: 3px; }
.brand-portrait-editorial .industry-gallery-section .industry-gallery-grid img { object-fit: cover; background: var(--industry-soft); }
.brand-portrait-editorial .industry-gallery-section.builder-image-shape-portrait .industry-gallery-grid img {
    aspect-ratio: 9 / 16;
    object-position: center;
}
.brand-portrait-editorial .industry-gallery-section.builder-variant-grid .industry-gallery-grid { gap: 12px; }
.brand-portrait-editorial .industry-footer { border-top: 3px solid var(--industry-accent); }
.brand-portrait-editorial .industry-footer h3 { color: var(--industry-accent); letter-spacing: .1em; }
.brand-portrait-editorial .industry-footer a { text-underline-offset: 4px; }
.brand-portrait-editorial .industry-footer a:hover { text-decoration: underline; }
.brand-portrait-editorial .industry-footer-links a,
.brand-portrait-editorial .industry-social a { min-height: 44px; display: inline-flex; align-items: center; }
.brand-portrait-editorial .industry-footer .industry-social a { min-width: 44px; justify-content: center; }
@media (min-width: 641px) and (max-width: 1024px) {
    .industry-template-home.brand-portrait-editorial #hero-slider:not(.has-full-banner) {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        padding: 32px 28px 38px !important;
        gap: 16px 28px !important;
    }
    .brand-portrait-editorial #hero-slider:not(.has-full-banner) h1 { font-size: clamp(34px, 4.8vw, 46px) !important; }
    .brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-copy > p { font-size: 15px !important; }
}
@media (max-width: 640px) {
    .industry-template-home.brand-portrait-editorial #hero-slider:not(.has-full-banner) {
        grid-template-columns: minmax(0, 1fr) !important;
        padding: 24px 20px 30px !important;
        gap: 16px 14px !important;
    }
    .brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-badge { grid-column: 1 / -1; font-size: 10px; letter-spacing: .1em; }
    .brand-portrait-editorial #hero-slider:not(.has-full-banner) h1 {
        grid-column: 1 / -1;
        grid-row: 2;
        font-size: clamp(28px, 7.5vw, 36px) !important;
        line-height: 1.15 !important;
        align-self: center;
    }
    .brand-portrait-editorial #hero-slider:not(.has-full-banner) > .industry-hero-media {
        grid-column: 1 / -1;
        grid-row: 3;
        border-radius: 16px;
        max-width: 400px;
        justify-self: center;
        box-shadow: 0 8px 22px rgba(6, 24, 46, .08);
    }
    .brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-copy > p {
        grid-column: 1 / -1;
        grid-row: 4;
        font-size: 14px !important;
        line-height: 1.6 !important;
    }
    .brand-portrait-editorial #hero-slider:not(.has-full-banner) :is(.industry-hero-actions, .mokili-hero-cta-layer) { grid-column: 1 / -1; grid-row: 5; }
    .brand-portrait-editorial #hero-slider:not(.has-full-banner) :is(.industry-hero-actions, .mokili-hero-cta-layer) > a,
    .brand-portrait-editorial #hero-slider:not(.has-full-banner) :is(.industry-hero-actions, .mokili-hero-cta-layer) > button { width: 100%; }
    .brand-portrait-editorial #hero-slider:not(.has-full-banner) .industry-hero-features { grid-column: 1 / -1; grid-row: 6; gap: 8px !important; }
    .brand-portrait-editorial #hero-slider .industry-hero-feature { padding: 9px; min-height: 50px; gap: 7px; }
    .brand-portrait-editorial #hero-slider .industry-hero-feature strong { font-size: 11px; }
    .brand-portrait-editorial .industry-services-section.builder-image-shape-horizontal .industry-service-card > img { height: 190px !important; }
    .brand-portrait-editorial .industry-gallery-section.builder-variant-grid .industry-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
