/* ========================================================================== 
   NESA Base Theme 1.0.0
   Neutral presentation layer intended for project-specific child themes.
============================================================================= */

body {
    background: var(--theme-background, #f7f9fa);
}

body.page-home {
    background: var(--theme-background, #f7f9fa);
}

body.page-home .nesa-hero {
    min-height: clamp(620px, 78vh, 820px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

body.page-home .nesa-hero__content {
    position: relative;
    max-width: 880px;
}

body.page-home .nesa-hero h1 {
    text-wrap: balance;
    text-shadow: 0 12px 34px rgba(0, 0, 0, 0.28);
}

body.page-home .nesa-hero p {
    max-width: 740px;
    color: rgba(255, 255, 255, 0.84);
}

body.page-home .nesa-trust,
body.page-home .nesa-split,
body.page-home .nesa-actuality-grid {
    padding-top: clamp(72px, 8vw, 112px);
    padding-bottom: clamp(72px, 8vw, 112px);
}

body.page-home .nesa-trust__head h2,
body.page-home .nesa-split__content h2,
body.page-home .nesa-actuality-grid__head h2,
body.page-home .nesa-cta h2 {
    text-wrap: balance;
}

body.page-home .nesa-split__media img {
    min-height: 420px;
    object-fit: cover;
    border-radius: var(--theme-card-radius, 18px);
}

body.page-home .nesa-actuality-card {
    border-radius: var(--theme-card-radius, 18px);
    box-shadow: 0 18px 52px rgba(20, 28, 40, 0.07);
}

body.page-home .nesa-cta {
    min-height: 540px;
}

body.page-home .nesa-cta__overlay {
    background: linear-gradient(
        90deg,
        rgba(8, 18, 23, 0.92) 0%,
        rgba(8, 18, 23, 0.62) 56%,
        rgba(8, 18, 23, 0.14) 100%
    );
}

@media (max-width: 700px) {
    body.page-home .nesa-hero {
        min-height: 640px;
    }

    body.page-home .nesa-split__media img {
        min-height: 340px;
    }

    body.page-home .nesa-cta {
        min-height: 590px;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

.site-logo--text span,.footer-brand-name{font-weight:800;letter-spacing:-.02em}.site-logo--text span{font-size:20px}

/* NESA CMS 3.1.8 — frontend mobile viewport guard */
html{max-width:100%;overflow-x:clip}body{width:100%;max-width:100%;overflow-x:hidden}@supports (overflow:clip){body{overflow-x:clip}}main,.site-header,.site-footer,.section,.container,.container-wide{min-width:0;max-width:100%}img,video,canvas,iframe,svg{max-width:100%}@media(max-width:1100px){.mobile-nav{max-width:100vw;box-sizing:border-box}.mobile-nav *,.mainbar-inner>*,.footer-grid>*{min-width:0}}@media(max-width:700px){.nesa-popup,.nesa-popup__dialog,.nesa-google-map,.nesa-google-map__frame,.nesa-google-map__embed{max-width:100vw}.nesa-popup__close{right:0}.nesa-google-map__overlay-wrap{max-width:calc(100% - 28px)}}
