/**
 * Editorial Imagery & Split Layouts — Elhamd Plast
 * Scoped .ep-editorial-* classes for non-product editorial visuals.
 */

.ep-editorial-intro {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 32px;
    align-items: center;
    margin-bottom: 2rem;
}

.ep-editorial-intro__copy {
    min-width: 0;
}

.ep-editorial-intro h1 {
    font-size: clamp(1.55rem, 2.8vw, 2.3rem);
    line-height: 1.8;
    margin-top: 0;
}

.ep-editorial-figure {
    margin: 0;
    padding: 0;
    background: #F8FAFC;
    border: 1px solid #DCEAF4;
    border-radius: 18px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.ep-editorial-figure picture {
    display: block;
    width: 100%;
    line-height: 0;
}

.ep-editorial-figure img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

.ep-editorial-figure--contain img {
    object-fit: contain;
}

.ep-editorial-caption {
    font-size: 0.8rem;
    line-height: 1.8;
    color: #475569;
    background: #F8FAFC;
    border-top: 1px solid #DCEAF4;
    padding: 12px;
    margin: 0;
    text-align: start;
    font-family: inherit;
}

/* Helper class for sidebar/supporting figures */
.ep-editorial-support {
    margin: 0 0 1.25rem 0;
}

/* Catalog cover styling (used directly on <img> or optional wrapper) */
.ep-editorial-cover {
    display: block;
    width: 100%;
    height: 240px;
    max-width: 100%;
    object-fit: contain;
    background: #F8FAFC;
    border: 1px solid #DCEAF4;
    border-radius: 12px;
    margin-block-end: 16px;
    box-sizing: border-box;
}

.ep-editorial-cover img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

@media (max-width: 900px) {
    .ep-editorial-intro {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-bottom: 1.5rem;
    }

    .ep-editorial-intro__copy {
        order: 1;
    }

    .ep-editorial-intro > .ep-editorial-figure,
    .ep-editorial-intro > figure {
        order: 2;
    }
}

@media (max-width: 850px) {
    .ep-site .main-site-header .header-phone { display: none !important; }
    .ep-site .main-site-header .header-inner { padding-inline: 12px !important; gap: 12px !important; }
    .ep-site .main-site-header .header-actions { gap: 8px !important; min-width: 0 !important; flex: 0 1 auto !important; }
    .ep-site .main-site-header .brand-logo { width: 100px !important; max-width: 100px !important; height: auto !important; }
    .ep-site .main-site-header .mobile-toggle-btn { display: flex !important; flex-shrink: 0 !important; }
}

/* The shared mobile drawer must be visible when opened on marketing pages. */
.ep-site .mobile-nav-drawer.is-open { visibility: visible !important; opacity: 1 !important; }

/* Retain intrinsic image proportions in existing catalog and facility frames. */
.ep-site .ep-tech-catalog #ep-stage-img { height: auto !important; }
@media (max-width: 760px) {
    .ep-site .ep-facility-split > div:last-child { min-height: 0 !important; height: auto !important; }
    .ep-site .ep-facility-split > div:last-child img { height: auto !important; object-fit: contain !important; }
}

@media (max-width: 360px) {
    .ep-site .main-site-header .brand-logo { width: 90px !important; max-width: 90px !important; }
    .ep-site .main-site-header .header-cta-btn { font-size: 11.5px !important; padding: 8px 10px !important; gap: 6px !important; }
    .ep-site .main-site-header .header-cta-btn .btn-circle-arrow { width: 20px !important; height: 20px !important; font-size: 12px !important; }
}
