

@media screen and (max-width: 1149px) {

    nav > ul > li:hover > ul {
        width: 100%;
    }


    nav.menu-top a {

        font-size: 0.9em;
        letter-spacing: 2px;
    }

    nav.menu-top > ul > li > a {
        padding: 0 4px;
    }

    .banner-home-top .banner-home-top-inner {
        margin: 8px auto;
        text-align: center;

    }


    footer .section-container {
        margin: 0 10px;

    }

    section, section.columns {
        margin-left: 10px;
        margin-right: 10px;
    }

    .section-container .brand-contact-flashcard:nth-child(2) {
        margin: 20px 0 !important;
    }


}

@media screen and (min-width: 922px) and (max-width: 1025px) {


    nav.menu-top > ul > li:not(:first-child) {
        margin-left: 4px;
    }

    nav.menu-top > ul > li:not(:last-child) > a {

        padding: 0 3px;
        position: relative;

    }

}


@media screen and (max-width: 922px) {

    .section-container {

        gap: 20px;
    }

    .debug-panel {
        display: none;
        visibility: hidden;
    }

    .menu-top-wrapper {
        display: none;
        visibility: hidden;
    }

    .menu-mobile-wrapper {
        display: block;
        visibility: visible;
    }

    .menu-mobile-wrapper {
        position: sticky;
        top: 0;
        z-index: 9999;
        box-shadow: 0 10px 16px -10px rgb(0 0 0 / 50%);
        background-color: #ffffff;
        height: 60px;
        font-size: 0;
    }

    .menu-mobile-wrapper a {
        text-decoration: none;
    }

    .menu-mobile-logo {
        width: 240px;
        vertical-align: middle;
        overflow: visible;
    }

    .menu-mobile-logo img {
        display: block;
        width: 240px;
        vertical-align: middle;
        margin: 6px 0 0 10px;
        position: absolute;
        z-index: 999999;
        /*filter: drop-shadow(0px 3px 3px #006DB4);*/
    }


    .menu-mobile ul > li {

        width: 48vw;
        font-size: 16px;
        text-transform: uppercase;

    }

    .menu-mobile ul > li:first-child {
        overflow: visible;

    }

    .menu-mobile ul > li:last-child {

        text-align: center;
        margin: 0;
        color: #000000;
        float: right;
        width: 60px;
        cursor: pointer;

    }

    /*
     * simpaticogc.com 2026-10-23: the mobile menu is the logo alone (Home, Porcelain
     * and the menu icon removed at Gina's request), so the logo is ALSO the last
     * item and the rule above -- written for the menu icon -- floated it right and
     * squeezed it to 60px, cutting it off. Keep the lone logo where it was.
     */
    .menu-mobile ul > li.menu-mobile-logo:last-child {

        float: none;
        width: 240px;
        text-align: left;
        cursor: auto;

    }

    .menu-mobile ul > li:last-child .fa.fa-bars {

        font-size: 2em;
        line-height: 60px;
        vertical-align: middle;

    }


    nav.menu-mobile ul, nav.menu-mobile ul > li {

        list-style: none;
        padding: 0;
        margin: 0;
        height: 60px;
        line-height: 60px;
        vertical-align: middle;


    }


    nav.menu-mobile h2 {
        margin: 2px 0;
        font-size: 1.3em;
    }

    nav.menu-mobile ul {
        display: block;
        position: relative;
    }


    nav.menu-mobile > ul > li {
        display: inline-block;
        vertical-align: middle;
        overflow: hidden;

    }

    nav.menu-mobile.active > ul > li {

        overflow: visible;

    }

    nav.menu-mobile.active ul > li:last-child > ul {

        line-height: initial;
        height: 100vh;
        width: 100vw;
        background-color: #ffffff;
        position: absolute;
        right: 0;

    }

    nav.menu-mobile ul > li:last-child .menu-mobile-item:first-child {
        line-height: 20px;
        width: calc(100vw - 40px);
        margin: 20px 25px 0 20px;
    }

    nav.menu-mobile ul > li:last-child .menu-mobile-item {
        line-height: 20px;
        width: calc(100vw - 40px);
        margin: 10px 20px 0 20px;
        height: auto;

    }

    nav.menu-mobile ul > li:last-child a {
        line-height: 20px;
        vertical-align: middle;


    }

    nav.menu-mobile ul > li:last-child .menu-mobile-item a {
        color: #333333;
        font-weight: bold;

    }

    nav.menu-mobile ul > li:last-child .menu-mobile-submenu-option a {
        color: #777777;
        line-height: 25px;

    }

    nav.menu-mobile ul > li:last-child .menu-mobile-submenu-option ul a {
        color: #bbbbbb;
        line-height: 30px;

    }

    nav.menu-mobile ul > li:last-child .menu-mobile-submenu-option {

        display: block;
        height: auto;
    }

    nav.menu-mobile > ul > li:last-child li {

        text-align: right;

    }

    nav.menu-mobile ul > li:last-child .menu-mobile-submenu-option li, nav.menu-mobile ul > li:last-child .menu-mobile-submenu-option ul {

        line-height: initial;
        height: auto;
        width: 100%;

    }

    .language-selector ul {
        text-align: left;
        display: block;
    }

    nav.menu-mobile ul > li:last-child .language-selector ul li {
        display: inline-block;
        width: 23%;
        text-align: center;
    }

    nav.menu-mobile ul > li:last-child .language-selector ul {
        line-height: initial;
        height: auto;
        width: unset;
        background-color: initial;
        position: initial;
    }

    .watch-our-video-button {
        width: 230px
    }

}

@media screen and (min-width: 769px) {
    .show-mobile {
        display: none;
        visibility: hidden;

    }

}



@media screen and (max-width: 768px) {


    .show-desktop {
        display: none;
        visibility: hidden;

    }

    .who-we-service .who-we-service-stat {

        min-width: 34%;

    }

    section .section-container {

        gap: 30px;

    }

    .section-container .brand-flashcard:nth-child(2) {


    }

    .section-container .brand-flashcard .brand-flashcard-button {
        display: inline-block;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;

    }

    .section-container .brand-flashcard {

        min-width: 34%;
    }

    .brand-wide-banner {
        display: none;
        visibility: hidden;
    }

}

@media screen and (max-width: 400px) {

    .section-container {

        gap: 20px;
        flex-direction: column;
    }

    /*
     * THE CARDS FILL THE ROW ON A PHONE.
     *
     * Fernando, 2026-09-04: "the images could be wider ... one per row, full
     * width -- leave a little space on the sides, like you do when looking at
     * porcelain colors (very wide but small margins on the sides)".
     *
     * The site ALREADY does this above 400px: .section-container is a
     * wrapping row there and `.section-container > div { flex: 1 }` stretches
     * each card to fill it -- a 430px screen gives a 410px card with a 10px
     * gutter, which is exactly what was asked for.
     *
     * The rule directly above turns that row into a COLUMN, and in a column
     * `flex: 1` governs height, not width. So the card falls back to its
     * hardcoded `width: 200px` from global.css and sits centered with 95px
     * wasted on either side of a 390px phone -- while the same card on a
     * 412px phone is already full width. The break is at the breakpoint.
     *
     * width:100% restores the >400px behavior below 400px. min-width is
     * cleared as well: it is 200px, harmless at these sizes, but it would
     * silently win on anything narrower than that.
     */
    .texture-colorscard,
    .texture-woodscard {
        width: 100%;
        min-width: 0;
    }

    .brand-flashcard-text {
        display: none;
    }

    .brand-flashcard{
        width: 300px;
    }

}
/*
 * simpaticogc.com v2 (2026-10-28): About Us, Contact Us and Project Gallery on phones, as a second row under the logo
 * (Fernando's request). The bar was the logo alone since 2026-10-23 at Gina's request, so the menu icon she had
 * removed does not come back; the three words simply sit under the logo. The jumps land below the taller bar.
 * The selectors outrank the older rules above, which were written for a one-row bar whose last item was an icon.
 */
@media screen and (max-width: 1149px) {

    .menu-mobile-wrapper {
        height: auto;
    }

    nav.menu-mobile ul {
        display: flex;
        flex-wrap: wrap;
        height: auto;
    }

    nav.menu-mobile ul > li.menu-mobile-logo {
        flex: 0 0 100%;
        width: 100%;
    }

    nav.menu-mobile ul > li.menu-mobile-item:not(.menu-mobile-logo) {
        flex: 1 1 30%;          /* a basis of 0 "fits" beside the full-width logo and never wraps */
        width: auto;
        float: none;
        height: auto;           /* "GALERÍA DE PROYECTOS" wraps on a phone: the row grows with it (final review #4) */
        line-height: 1.25;
        margin: 0;
        font-size: 12px;
        letter-spacing: 0.06em;
        text-align: center;
        border-top: 1px solid #eeeeee;
        cursor: pointer;
    }

    nav.menu-mobile ul > li.menu-mobile-item:not(.menu-mobile-logo) a {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 36px;
        padding: 4px 4px;
        line-height: 1.25;      /* an older last-child rule gave the last link 20px */
        color: #222222;
    }

    /* The sticky bar is taller here (logo + a row of links, 105px): jumps from the menu are offset by it ONCE.
       A scroll-margin on the targets used to come on top of html's scroll-padding, landing ~100px low (2026-10-29). */
    html {
        scroll-padding-top: 113px;
    }

}
