
html.mhas-lang-en .mhas-lang,
html.mhas-lang-ms .mhas-lang,
html.mhas-lang-zh .mhas-lang { display: none !important; }
html.mhas-lang-en .mhas-lang-en.mhas-lang-inline,
html.mhas-lang-ms .mhas-lang-ms.mhas-lang-inline,
html.mhas-lang-zh .mhas-lang-zh.mhas-lang-inline { display: inline !important; }
html.mhas-lang-en .mhas-lang-en.mhas-lang-block,
html.mhas-lang-ms .mhas-lang-ms.mhas-lang-block,
html.mhas-lang-zh .mhas-lang-zh.mhas-lang-block { display: block !important; }

html.mhas-lang-en [data-visible-languages]:not([data-visible-languages~="en"]),
html.mhas-lang-ms [data-visible-languages]:not([data-visible-languages~="ms"]),
html.mhas-lang-zh [data-visible-languages]:not([data-visible-languages~="zh"]) { display: none !important; }

html.mhas-lang-en .langswitcher [data-lang="en"],
html.mhas-lang-ms .langswitcher [data-lang="ms"],
html.mhas-lang-zh .langswitcher [data-lang="zh"] { display: none !important; }

.portfolio_home__title h1 > .mhas-lang-block { color: inherit; }
.portfolio_home__title h1 > .mhas-lang-block span { color: #359afe; }

.page_content,
.mhas-home-slide,
.mhas-home-slide * { user-select: text; }

.page_content { min-height: 100%; position: relative; z-index: 1; }
.page_header { position: relative; z-index: 2; }
.mhas-header-content { width: 100%; }
.mhas-header-content > .mhas-lang-block { margin: 0; }

.mhas-home-slide { overflow: hidden; align-items: stretch; }
.mhas-slide-inner { width: 100%; min-width: 0; height: 100%; }
.mhas-slide-inner > .elementor,
.mhas-slide-inner > .elementor > .elementor-element { min-height: 100%; }

.sfm-social .fab,
.sfm-social .fas,
.sfm-social .far,
.sfm-social .fa-brands,
.sfm-social .fa-solid { position: relative; z-index: 2; font-size: 20px; line-height: 1; }
.sfm-social li { display: inline-block; margin: 0 7px; }

.mhas-feature-paragraph .mhas-lang-block { width: 100%; }
.sfm-content-wrapper img { max-width: 100%; height: auto; }

.mhas-site-name { display: inline-block; max-width: 240px; font-family: Montserrat, sans-serif; font-size: 20px; font-weight: 700; color: #1351d6; }
.mhas-site-name-light { color: #fff; max-width: 280px; }
.logoMain a { text-decoration: none; }

.mhas-archive-entry { padding: 2rem; border-bottom: 1px solid rgba(0,0,0,.12); }
.mhas-archive-entry h2 { margin-top: 0; }

.elementor-editor-active .page_content,
.elementor-editor-active .mhas-home-slide,
.elementor-editor-active .mhas-home-slide * { user-select: auto; }

@media (max-width: 767px) {
    .page_content { width: 100%; }
    .mhas-site-name { font-size: 15px; max-width: 170px; }
}


/* WordPress places the home iframe above the body background while retaining
 * the supplied subdued opacity animation and the original flex geometry. */
html.view-home .portfolio_home.homesection { isolation: isolate; overflow: hidden; }
html.view-home .portfolio.homesections .portfolio_home.homesection .videowrap { z-index: 0; }

/* Optional Elementor/WordPress footer selected in Theme settings. */
.mhas-site-footer { position: relative; z-index: 2; width: 100%; clear: both; }
.mhas-site-footer-inner { width: 100%; }

/* =========================================================
 * HOMEPAGE VIDEO COVER
 *
 * The source video is always assumed to be 16:9.
 * The iframe is enlarged until it covers the complete
 * 100vw × 100vh hero, then centred and cropped.
 * ======================================================= */

html.view-home .portfolio_home.homesection {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

html.view-home
.portfolio.homesections
.portfolio_home.homesection
.videowrap {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    overflow: hidden;
    z-index: 0;
}

/*
 * 16:9 cover calculation:
 *
 * 9 / 16  = 56.25vw
 * 16 / 9  = 177.7777778vh
 *
 * Wide viewport:
 *     width: 100vw
 *     height: 56.25vw
 *
 * Tall viewport:
 *     width: 177.7777778vh
 *     height: 100vh
 */
html.view-home
.portfolio.homesections
.portfolio_home.homesection
.videowrap iframe {
    position: absolute;

    top: 50%;
    left: 50%;

    width: 100vw;
    height: 56.25vw;

    min-width: 177.7777778vh;
    min-height: 100vh;

    max-width: none;
    max-height: none;

    border: 0;

    transform: translate(-50%, -50%);

    /*
     * Prevent YouTube hover controls and interaction.
     * Mouse and touch events pass through to the hero.
     */
    pointer-events: none;
}

/*
 * Keep the visible hero content above the video.
 */
html.view-home .portfolio_home__header,
html.view-home .portfolio_home__title {
    position: relative;
    z-index: 2;
}
html.view-home a.trigger {  cursor: pointer;}
.sfm-body-pushed #sfm-overlay,
body[class*="sfm-view-pushed"] #sfm-overlay {
    cursor:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M4 4L20 20M20 4L4 20' fill='none' stroke='%23ffffff' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E")
        12 12,
        crosshair !important;
}
