
/* =========================================================
   IEleads site-wide inner-page layout standardization
   Phase 2 - 20260613
   Purpose: override page-level inline CSS that kept About,
   Contact, Become Partner, TechPulse, and lead pages at
   inconsistent/narrow widths. Visual only: no DLL, routes,
   controllers, or database changes.
   ========================================================= */
:root {
    --ie-standard-max: 1500px;
    --ie-standard-gutter: 64px;
    --ie-standard-gutter-mobile: 28px;
    --ie-red: #e60000;
    --ie-red-dark: #b90000;
    --ie-ink: #071228;
    --ie-line: #dfe5ee;
    --ie-bg: #f4f6fa;
    --ie-surface: #ffffff;
    --ie-shadow: 0 18px 45px rgba(15, 23, 42, 0.10);
}

/* Keep normal document flow and avoid sidebars affecting modern pages. */
html body #site .main,
html body #site #body,
html body #site #wrapper,
html body #site #wrapper .topbar,
html body #site #wrapper .table,
html body #site #wrapper .rtd,
html body #site #wrapper .right-panel,
html body #site #wrapper .inner-ltd,
html body #site #bodyContent,
html body #site article {
    box-sizing: border-box !important;
    max-width: none !important;
    width: 100% !important;
}

html body #site #wrapper .rtd,
html body #site #wrapper .right-panel,
html body #site #wrapper .inner-ltd,
html body #site article {
    float: none !important;
}

html body #site .rightsidebar,
html body #site .leftsidebar,
html body #site .ads,
html body #site .bottomads,
html body #site .bottom-ads,
html body #site .footerads,
html body #site .footer-ads,
html body #site #bottomAds,
html body #site #bottomads,
html body #site .ad-bottom,
html body #site .ads-bottom {
    display: none !important;
}

/* Remove legacy hidden title bars that still reserve height or show as empty red strips. */
html body #site #bodyContent h1.pagetitle.hide,
html body #site #bodyContent .pagetitle.hide,
html body #site #bodyContent .bannerImage.hide,
html body #site #bodyContent > h1.pagetitle.hide,
html body #site h1.pagetitle.hide,
html body #site .pagetitle.hide {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

/* Strong width override: this intentionally beats page-level inline <style> blocks. */
html body #site #bodyContent .banner_text_main,
html body #site #bodyContent > .white-block,
html body #site #bodyContent .white-block.mt10,
html body #site #bodyContent .become-partner-wrap,
html body #site #bodyContent .customers-page-shell,
html body #site #bodyContent .customer-page-shell,
html body #site #bodyContent .customer-profile-shell,
html body #site #bodyContent .partners-page-shell,
html body #site #bodyContent .partner-page-shell,
html body #site #bodyContent .partner-profile-shell,
html body #site #bodyContent .techpulse-page,
html body #site #bodyContent .tradebusiness,
html body #site #bodyContent .servicesbusiness,
html body #site #bodyContent .catalogues-page,
html body #site #bodyContent .content,
html body #site #bodyContent .lead-list,
html body #site #bodyContent .directory-listing {
    box-sizing: border-box !important;
    clear: both !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: var(--ie-standard-max) !important;
    width: calc(100% - var(--ie-standard-gutter)) !important;
}

/* Standard banner/slide size for About, Contact, and similar image-banner pages. */
html body #site #bodyContent .banner_text_main {
    border-radius: 0 !important;
    box-shadow: var(--ie-shadow) !important;
    margin-top: 32px !important;
    margin-bottom: 28px !important;
    overflow: hidden !important;
}

html body #site #bodyContent .banner_text_main img,
html body #site #bodyContent img.bannerImage {
    display: block !important;
    height: 340px !important;
    max-height: 340px !important;
    min-height: 340px !important;
    object-fit: cover !important;
    width: 100% !important;
}

html body #site #bodyContent .banner_text_main .banner-text,
html body #site #bodyContent .banner_text_main span.banner-text,
html body #site #bodyContent .bannertitle {
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 34px !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.15 !important;
    right: 12% !important;
    text-shadow: 0 3px 12px rgba(0,0,0,.35) !important;
}

/* Standard white content blocks; keep them modern but do not over-enlarge the text. */
html body #site #bodyContent > .white-block,
html body #site #bodyContent .white-block.mt10 {
    background: var(--ie-surface) !important;
    border: 1px solid var(--ie-line) !important;
    border-left: 6px solid var(--ie-red) !important;
    border-radius: 14px !important;
    box-shadow: var(--ie-shadow) !important;
    color: var(--ie-ink) !important;
    margin-top: 0 !important;
    padding: 34px 42px !important;
}

html body #site #bodyContent .white-block h1,
html body #site #bodyContent .white-block h2,
html body #site #bodyContent .white-block h3,
html body #site #bodyContent .contact-intro-card h1,
html body #site #bodyContent .contact-intro-card h2 {
    color: var(--ie-ink) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.15 !important;
}

html body #site #bodyContent .white-block h1,
html body #site #bodyContent .white-block h2,
html body #site #bodyContent .contact-intro-card h1,
html body #site #bodyContent .contact-intro-card h2 {
    font-size: 40px !important;
    margin-bottom: 18px !important;
    margin-top: 0 !important;
}

html body #site #bodyContent .white-block p,
html body #site #bodyContent .white-block li,
html body #site #bodyContent .contact-intro-card p,
html body #site #bodyContent .contact-request-list li {
    color: #1f2d44 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 18px !important;
    line-height: 1.58 !important;
}

/* Become Partner page: align to same container and visual rhythm. */
html body #site #bodyContent .become-partner-title {
    background: linear-gradient(90deg, var(--ie-red), var(--ie-red-dark)) !important;
    border: 1px solid #ad0000 !important;
    border-radius: 9px !important;
    box-shadow: 0 10px 22px rgba(0,0,0,.20) !important;
    box-sizing: border-box !important;
    color: #fff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 34px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 32px 0 24px !important;
    min-height: 72px !important;
    padding: 18px 32px 18px 96px !important;
    width: 100% !important;
}

html body #site #bodyContent .become-partner-hero,
html body #site #bodyContent .become-partner-card {
    border-radius: 14px !important;
    box-shadow: var(--ie-shadow) !important;
}

html body #site #bodyContent .become-partner-hero {
    min-height: 300px !important;
    padding: 56px 64px !important;
}

html body #site #bodyContent .become-partner-hero h1 {
    font-size: 56px !important;
    line-height: 1.08 !important;
}

html body #site #bodyContent .become-partner-hero p {
    font-size: 24px !important;
    line-height: 1.48 !important;
    max-width: 1100px !important;
}

/* TechPulse page: remove narrow feeling and align with other inner pages. */
html body #site #bodyContent .techpulse-page {
    background: #f6f7f9 !important;
    margin-top: 32px !important;
    margin-bottom: 60px !important;
}

html body #site #bodyContent .techpulse-hero {
    border-radius: 0 !important;
    box-shadow: var(--ie-shadow) !important;
    padding: 66px 72px !important;
}

html body #site #bodyContent .techpulse-hero-inner,
html body #site #bodyContent .techpulse-section,
html body #site #bodyContent .techpulse-value-strip {
    box-sizing: border-box !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: none !important;
    width: 100% !important;
}

html body #site #bodyContent .techpulse-hero h1 {
    font-size: 68px !important;
    line-height: 1.02 !important;
}

html body #site #bodyContent .techpulse-hero p {
    font-size: 24px !important;
    line-height: 1.45 !important;
    max-width: 1120px !important;
}

html body #site #bodyContent .techpulse-section {
    padding-left: 34px !important;
    padding-right: 34px !important;
}

html body #site #bodyContent .techpulse-grid.featured,
html body #site #bodyContent .techpulse-grid.notes {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

html body #site #bodyContent .techpulse-grid.insights {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

/* Lead/category pages: align title bars, filters, and card lists to the same width. */
html body #site #bodyContent .tradebusiness,
html body #site #bodyContent .servicesbusiness,
html body #site #bodyContent .leadfilter,
html body #site #bodyContent .filtersearch,
html body #site #bodyContent .iel-filtersearch,
html body #site #bodyContent .partialcontents,
html body #site #bodyContent .leadPages,
html body #site #bodyContent .page {
    max-width: var(--ie-standard-max) !important;
}

html body #site #bodyContent h1.pagetitle:not(.hide) {
    box-sizing: border-box !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: var(--ie-standard-max) !important;
    width: calc(100% - var(--ie-standard-gutter)) !important;
}

/* Keep homepage full-width. Do not force the home hero into the inner-page container. */
html body#home #site #bodyContent .home-hero,
html body#home #site #bodyContent .ie-home-hero,
html body#home #site #bodyContent .home-modern-hero,
html body#home #site #bodyContent .home-modern {
    max-width: none !important;
    width: 100% !important;
}

@media (max-width: 1180px) {
    html body #site #bodyContent .banner_text_main,
    html body #site #bodyContent > .white-block,
    html body #site #bodyContent .white-block.mt10,
    html body #site #bodyContent .become-partner-wrap,
    html body #site #bodyContent .customers-page-shell,
    html body #site #bodyContent .customer-page-shell,
    html body #site #bodyContent .customer-profile-shell,
    html body #site #bodyContent .partners-page-shell,
    html body #site #bodyContent .partner-page-shell,
    html body #site #bodyContent .partner-profile-shell,
    html body #site #bodyContent .techpulse-page,
    html body #site #bodyContent .tradebusiness,
    html body #site #bodyContent .servicesbusiness,
    html body #site #bodyContent .catalogues-page,
    html body #site #bodyContent .content,
    html body #site #bodyContent .lead-list,
    html body #site #bodyContent .directory-listing,
    html body #site #bodyContent h1.pagetitle:not(.hide) {
        width: calc(100% - 40px) !important;
    }

    html body #site #bodyContent .techpulse-grid.featured,
    html body #site #bodyContent .techpulse-grid.notes,
    html body #site #bodyContent .techpulse-grid.insights {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    html body #site #bodyContent .banner_text_main,
    html body #site #bodyContent > .white-block,
    html body #site #bodyContent .white-block.mt10,
    html body #site #bodyContent .become-partner-wrap,
    html body #site #bodyContent .customers-page-shell,
    html body #site #bodyContent .customer-page-shell,
    html body #site #bodyContent .customer-profile-shell,
    html body #site #bodyContent .partners-page-shell,
    html body #site #bodyContent .partner-page-shell,
    html body #site #bodyContent .partner-profile-shell,
    html body #site #bodyContent .techpulse-page,
    html body #site #bodyContent .tradebusiness,
    html body #site #bodyContent .servicesbusiness,
    html body #site #bodyContent .catalogues-page,
    html body #site #bodyContent .content,
    html body #site #bodyContent .lead-list,
    html body #site #bodyContent .directory-listing,
    html body #site #bodyContent h1.pagetitle:not(.hide) {
        width: calc(100% - var(--ie-standard-gutter-mobile)) !important;
    }

    html body #site #bodyContent .banner_text_main img,
    html body #site #bodyContent img.bannerImage {
        height: 220px !important;
        max-height: 220px !important;
        min-height: 220px !important;
    }

    html body #site #bodyContent > .white-block,
    html body #site #bodyContent .white-block.mt10 {
        padding: 24px 22px !important;
    }

    html body #site #bodyContent .white-block h1,
    html body #site #bodyContent .white-block h2,
    html body #site #bodyContent .contact-intro-card h1,
    html body #site #bodyContent .contact-intro-card h2 {
        font-size: 30px !important;
    }

    html body #site #bodyContent .white-block p,
    html body #site #bodyContent .white-block li,
    html body #site #bodyContent .contact-intro-card p,
    html body #site #bodyContent .contact-request-list li {
        font-size: 16px !important;
    }

    html body #site #bodyContent .become-partner-title {
        font-size: 24px !important;
        padding-left: 72px !important;
    }

    html body #site #bodyContent .become-partner-hero,
    html body #site #bodyContent .techpulse-hero {
        padding: 34px 28px !important;
    }

    html body #site #bodyContent .become-partner-hero h1,
    html body #site #bodyContent .techpulse-hero h1 {
        font-size: 40px !important;
    }

    html body #site #bodyContent .become-partner-hero p,
    html body #site #bodyContent .techpulse-hero p {
        font-size: 18px !important;
    }

    html body #site #bodyContent .techpulse-grid.featured,
    html body #site #bodyContent .techpulse-grid.notes,
    html body #site #bodyContent .techpulse-grid.insights,
    html body #site #bodyContent .techpulse-value-strip {
        grid-template-columns: 1fr !important;
    }
}
