.mak-pro-footer,
.mak-pro-footer *{box-sizing:border-box}
.mak-pro-footer{width:100%;background:var(--mf-bg);color:var(--mf-text);font-family:inherit;overflow:hidden;clear:both}
.mak-pro-footer a{color:inherit;text-decoration:none}
.mak-pro-footer__inner{width:100%;max-width:var(--mf-max);margin:0 auto;padding:var(--mf-pt) var(--mf-side) var(--mf-pb)}
.mak-pro-footer--full-width .mak-pro-footer__inner{max-width:none;margin:0}
.mak-pro-footer--full-width .mak-pro-footer__bottom-inner{max-width:none;margin:0}
.mak-pro-footer__location{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.85fr);gap:var(--mf-location-gap);margin-bottom:var(--mf-section-gap)}
.mak-pro-footer__map,
.mak-pro-footer__location-card{position:relative;min-height:300px;border:1px solid var(--mf-border);border-radius:var(--mf-radius);overflow:hidden;background:var(--mf-surface);box-shadow:0 18px 48px rgba(0,0,0,.14)}
.mak-pro-footer__map iframe{display:block;width:100%;height:100%;min-height:300px;border:0;filter:grayscale(.2) contrast(.96)}
.mak-pro-footer__location-card{isolation:isolate;background-image:var(--mf-location-image,linear-gradient(135deg,var(--mf-surface),var(--mf-bg)));background-size:cover;background-position:center}
.mak-pro-footer__location-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,rgba(3,24,48,.94) 0%,rgba(3,36,68,.76) 58%,rgba(3,36,68,.34) 100%)}
.mak-pro-footer__location-content{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:300px;padding:36px}
.mak-pro-footer__eyebrow{display:inline-block;margin-bottom:10px;color:var(--mf-accent);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.mak-pro-footer__location-content h3{margin:0 0 10px;color:var(--mf-heading);font-size:clamp(26px,3vw,42px);line-height:1.1}
.mak-pro-footer__location-content p{max-width:430px;margin:0 0 22px;color:var(--mf-text);font-size:var(--mf-text-size);line-height:1.65}
.mak-pro-footer__location-button,
.mak-pro-footer__cta-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;background:var(--mf-accent);color:var(--mf-accent-text)!important;transition:transform .2s ease,filter .2s ease}
.mak-pro-footer__location-button{padding:12px 18px;font-size:13px;font-weight:800}
.mak-pro-footer__location-button:hover,
.mak-pro-footer__cta-button:hover{transform:translateY(-2px);filter:brightness(1.06)}
.mak-pro-footer__cta{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:calc(var(--mf-section-gap) + 10px);padding:28px 32px;background:linear-gradient(135deg,var(--mf-surface),var(--mf-bg));border:1px solid var(--mf-border);border-radius:var(--mf-radius);box-shadow:0 18px 50px rgba(0,0,0,.16)}
.mak-pro-footer__cta-copy h3{margin:0 0 7px;color:var(--mf-heading);font-size:clamp(20px,2vw,30px);line-height:1.2;font-weight:700}
.mak-pro-footer__cta-copy p{margin:0;color:var(--mf-text);font-size:var(--mf-text-size);line-height:1.65}
.mak-pro-footer__cta-button{min-width:142px;padding:14px 22px;font-size:14px;font-weight:700;white-space:nowrap}
/*
 * Desktop layout: measure every section by its visible content, then place the
 * first section at the left edge and the final section at the right edge.
 * Flexbox distributes all remaining width equally between adjacent sections,
 * so the visible gaps are genuinely equal (not just the invisible grid cells).
 */
.mak-pro-footer__grid{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    width:100%!important;
    min-width:0!important;
    gap:var(--mf-gap)!important
}
.mak-pro-footer__grid>.mak-pro-footer__brand,
.mak-pro-footer__grid>.mak-pro-footer__office,
.mak-pro-footer__grid>.mak-pro-footer__links{
    flex:0 1 max-content!important;
    inline-size:max-content!important;
    width:max-content!important;
    min-width:0!important;
    margin:0!important
}
.mak-pro-footer__brand,.mak-pro-footer__office,.mak-pro-footer__links{min-width:0}
.mak-pro-footer__brand{max-width:min(100%,340px)}
.mak-pro-footer__office{max-width:min(100%,320px)}
.mak-pro-footer__links{max-width:min(100%,170px)}
.mak-pro-footer__logo{display:inline-flex;align-items:center;justify-content:center;margin-bottom:19px;line-height:0}
.mak-pro-footer__logo img{display:block;width:var(--mf-logo);max-width:100%;height:auto;object-fit:contain}
.mak-pro-footer__brand h2,.mak-pro-footer__office h3,.mak-pro-footer__links h3{margin:0 0 16px;color:var(--mf-heading);font-size:var(--mf-heading-size);line-height:1.35;font-weight:700}
.mak-pro-footer__brand h2{font-size:calc(var(--mf-heading-size) + 2px)}
.mak-pro-footer__brand p,.mak-pro-footer__office p,.mak-pro-footer__links a{font-size:var(--mf-text-size);line-height:1.7}
.mak-pro-footer__brand p{margin:0;color:var(--mf-muted);max-width:none}
.mak-pro-footer__office p{display:flex;flex-direction:column;gap:2px;margin:0 0 11px;color:var(--mf-text)}
.mak-pro-footer__office p span{color:var(--mf-muted);font-size:calc(var(--mf-text-size) - 2px);font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.mak-pro-footer__office .mak-pro-footer__address{display:block;color:var(--mf-muted);margin-bottom:15px}
.mak-pro-footer__office a{overflow-wrap:anywhere}
.mak-pro-footer__office a:hover,.mak-pro-footer__links a:hover{color:var(--mf-accent)}
.mak-pro-footer__links ul{list-style:none;margin:0;padding:0}
.mak-pro-footer__links li{margin:0 0 10px}
.mak-pro-footer__links a{color:var(--mf-muted);transition:color .2s ease}
.mak-pro-footer__socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.mak-pro-footer__socials a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--mf-social-border);border-radius:12px;background:var(--mf-social-bg);color:var(--mf-social-icon);transition:background .2s ease,transform .2s ease,border-color .2s ease,color .2s ease}
.mak-pro-footer__socials a:hover{background:var(--mf-accent);border-color:var(--mf-accent);color:var(--mf-accent-text);transform:translateY(-2px)}
.mak-pro-footer__bottom{background:var(--mf-bottom-bg);border-top:1px solid var(--mf-border)}
.mak-pro-footer__bottom-inner{width:100%;max-width:var(--mf-max);margin:0 auto;padding:17px var(--mf-side);display:flex;justify-content:space-between;gap:18px;color:var(--mf-muted);font-size:calc(var(--mf-text-size) - 1px);line-height:1.5}
.elementor-widget-mak_footer_widget,
.elementor-widget-mak_footer_widget .elementor-widget-container{width:100%!important;max-width:none!important}
.elementor-editor-active .elementor-widget-mak_footer_widget,
.elementor-editor-preview .elementor-widget-mak_footer_widget{width:100%!important;max-width:none!important}
.elementor-editor-active .mak-pro-footer,
.elementor-editor-preview .mak-pro-footer{display:block!important;width:100%!important;max-width:none!important;min-height:0!important}
.elementor-editor-active .mak-pro-footer__inner,
.elementor-editor-preview .mak-pro-footer__inner{width:100%!important}
.elementor-editor-active .mak-pro-footer--full-width .mak-pro-footer__inner,
.elementor-editor-preview .mak-pro-footer--full-width .mak-pro-footer__inner{max-width:none!important}
.elementor-editor-active .mak-pro-footer iframe{pointer-events:none}
@media (max-width:1199px){
.mak-pro-footer__location{grid-template-columns:1fr 1fr}
.mak-pro-footer__grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:var(--mf-gap)!important;justify-content:stretch!important}
.mak-pro-footer__grid>.mak-pro-footer__brand,
.mak-pro-footer__grid>.mak-pro-footer__office,
.mak-pro-footer__grid>.mak-pro-footer__links{width:100%!important;max-width:none!important}
.mak-pro-footer__brand{grid-column:span 1;max-width:none}
.mak-pro-footer__office,.mak-pro-footer__links{max-width:none}
}
@media (max-width:767px){
.mak-pro-footer__location{grid-template-columns:1fr}
.mak-pro-footer__map,.mak-pro-footer__map iframe,.mak-pro-footer__location-card,.mak-pro-footer__location-content{min-height:270px}
.mak-pro-footer__location-content{padding:28px}
.mak-pro-footer__cta{align-items:flex-start;flex-direction:column;padding:24px}
.mak-pro-footer__cta-button{width:100%}
.mak-pro-footer__grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:32px 24px!important}
.mak-pro-footer__brand{grid-column:1/-1}
.mak-pro-footer__bottom-inner{flex-direction:column;text-align:center;gap:6px}
}
@media (max-width:520px){
.mak-pro-footer__map,.mak-pro-footer__map iframe,.mak-pro-footer__location-card,.mak-pro-footer__location-content{min-height:235px}
.mak-pro-footer__location-content{padding:24px 20px}
.mak-pro-footer__grid{display:grid!important;grid-template-columns:1fr!important;gap:28px!important}
.mak-pro-footer__brand{grid-column:auto}
.mak-pro-footer__logo img{width:min(var(--mf-logo),180px)}
}

/* ===========================================================
   v2.4.1 - Editable 12-location directory
   Scoped to the new directory so every v2.3.x legacy style remains intact.
   =========================================================== */
.mak-pro-footer .mak-pro-footer__directory {
    width: 100%;
    min-width: 0;
    color: var(--mf-text);
    background-color: transparent;
    font-family: "Roboto Condensed", "Arial Narrow", "Liberation Sans Narrow", Arial, sans-serif;
}
.mak-pro-footer .mak-pro-footer__main-offices { margin: 0; }
.mak-pro-footer .mak-pro-footer__directory-heading {
    display: flex;
    align-items: center;
    gap: 11px;
    margin: 0 0 17px;
    padding: 0;
    font-size: clamp(15px, 1.05vw, 19px);
    font-weight: 800;
    letter-spacing: .005em;
    line-height: 1.3;
    color: var(--mf-heading);
}
.mak-pro-footer .mak-pro-footer__directory-heading::before {
    content: "";
    display: block;
    flex: 0 0 4px;
    width: 4px;
    height: 20px;
    border-radius: 2px;
    background: #ff2b38;
}
.mak-pro-footer .mak-pro-footer__office-collection {
    display: grid;
    min-width: 0;
    align-items: stretch;
    column-gap: var(--mf-office-row-gap);
    row-gap: calc(var(--mf-office-row-gap) + 12px);
}
.mak-pro-footer .mak-pro-footer__office-collection--global {
    grid-template-columns: repeat(7, minmax(0, 1fr));
}
.mak-pro-footer .mak-pro-footer__office-collection--regional {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}
.mak-pro-footer .mak-pro-footer__office-card {
    display: flex;
    flex-direction: column;
    gap: 9px;
    padding: 3px var(--mf-office-card-pad) 6px;
    margin: 0;
    min-width: 0;
    height: 100%;
    border: 0;
    border-left: 1px solid rgba(175, 205, 235, .36);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow-wrap: anywhere;
}
.mak-pro-footer .mak-pro-footer__office-card-header {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    min-height: 25px;
}
.mak-pro-footer .mak-pro-footer__pin {
    display: block;
    flex: 0 0 19px;
    margin: 0;
    color: #ff2b38;
}
.mak-pro-footer .mak-pro-footer__office-card-header h3 {
    padding: 0;
    margin: 0;
    color: var(--mf-heading);
    font-size: var(--mf-office-title-size);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.01em;
    overflow-wrap: anywhere;
}
.mak-pro-footer .mak-pro-footer__office-company {
    color: var(--mf-heading);
    font-size: var(--mf-office-text-size);
    font-weight: 700;
    line-height: 1.48;
}
.mak-pro-footer .mak-pro-footer__office-address {
    font-size: var(--mf-office-text-size);
    color: var(--mf-text);
    line-height: 1.55;
    font-weight: 400;
    overflow-wrap: anywhere;
}
.mak-pro-footer .mak-pro-footer__contact-slots {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
    margin-top: 0;
    padding-top: 6px;
    min-width: 0;
}
.mak-pro-footer .mak-pro-footer__contact-slot {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: baseline;
    column-gap: 6px;
    min-height: 21px;
    line-height: 1.5;
    font-size: var(--mf-office-contact-size);
}
.mak-pro-footer .mak-pro-footer__contact-label {
    font-size: calc(var(--mf-office-contact-size) - 2px);
    letter-spacing: .005em;
    color: #ff7078;
    font-weight: 700;
    white-space: nowrap;
}
.mak-pro-footer .mak-pro-footer__contact-value,
.mak-pro-footer .mak-pro-footer__contact-value a {
    color: var(--mf-text);
    font-size: var(--mf-office-contact-size);
    font-weight: 500;
    line-height: 1.45;
    overflow-wrap: anywhere;
}
.mak-pro-footer .mak-pro-footer__contact-value a {
    text-decoration: none;
    transition: color .2s ease;
}
.mak-pro-footer .mak-pro-footer__contact-value a:hover,
.mak-pro-footer .mak-pro-footer__contact-value a:focus-visible {
    color: #ff7078;
    text-decoration: underline;
}
/* Maintain the blank alignment requested, without displaying an invented value. */
.mak-pro-footer .mak-pro-footer__contact-slot--empty {
    visibility: hidden;
}
.mak-pro-footer .mak-pro-footer__regional-footer {
    display: grid;
    grid-template-columns: minmax(155px, 220px) minmax(0, 1fr) minmax(215px, 280px);
    gap: clamp(18px, 1.4vw, 31px);
    align-items: start;
    border-top: 1px solid rgba(175, 205, 235, .45);
    padding-top: 23px;
    margin-top: 24px;
    min-width: 0;
}
.mak-pro-footer .mak-pro-footer__directory-brand {
    min-width: 0;
    width: 100%;
    max-width: none;
}
.mak-pro-footer .mak-pro-footer__directory-brand .mak-pro-footer__logo {
    margin-bottom: 13px;
}
.mak-pro-footer .mak-pro-footer__directory-brand h2 {
    font-size: var(--mf-heading-size);
    margin-bottom: 8px;
}
.mak-pro-footer .mak-pro-footer__directory-brand p {
    font-size: calc(var(--mf-text-size) - 1px);
    line-height: 1.55;
}
.mak-pro-footer .mak-pro-footer__directory-brand .mak-pro-footer__socials {
    margin-top: 19px;
}
.mak-pro-footer .mak-pro-footer__india-regional {
    min-width: 0;
    width: 100%;
}
.mak-pro-footer .mak-pro-footer__regional-heading {
    margin-bottom: 14px;
}
:where(.mak-pro-footer) .mak-pro-footer__directory-nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    width: 100%;
    min-width: 0;
    border-left: 1px solid rgba(175, 205, 235, .36);
    padding-left: 20px;
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links {
    min-width: 0;
    max-width: none;
    width: auto;
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links h3 {
    font-size: clamp(14px, 1vw, var(--mf-heading-size));
    margin-bottom: 15px;
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links li {
    margin-bottom: 12px;
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links a {
    font-size: calc(var(--mf-text-size) - 1px);
}
@media (max-width: 1899px) {
    .mak-pro-footer .mak-pro-footer__office-collection--global { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .mak-pro-footer .mak-pro-footer__regional-footer { grid-template-columns: minmax(165px, 230px) minmax(0, 1fr); }
    :where(.mak-pro-footer) .mak-pro-footer__directory-nav {
        grid-column: 1 / -1;
        border-left: 0;
        border-top: 1px solid rgba(175, 205, 235, .30);
        padding: 18px 0 0;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 1199px) {
    .mak-pro-footer .mak-pro-footer__office-collection--global { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .mak-pro-footer .mak-pro-footer__office-collection--regional { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .mak-pro-footer .mak-pro-footer__regional-footer { grid-template-columns: minmax(160px, 230px) minmax(0, 1fr); }
}
@media (max-width: 900px) {
    .mak-pro-footer .mak-pro-footer__office-collection--global,
    .mak-pro-footer .mak-pro-footer__office-collection--regional { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .mak-pro-footer .mak-pro-footer__regional-footer { grid-template-columns: 1fr; gap: 26px; }
    .mak-pro-footer .mak-pro-footer__directory-brand { display: flex; align-items: flex-start; flex-wrap: wrap; column-gap: 20px; }
    .mak-pro-footer .mak-pro-footer__directory-brand .mak-pro-footer__logo { margin-bottom: 0; }
    .mak-pro-footer .mak-pro-footer__directory-brand .mak-pro-footer__socials { width: 100%; }
    :where(.mak-pro-footer) .mak-pro-footer__directory-nav { grid-column: auto; }
}
@media (max-width: 560px) {
    .mak-pro-footer .mak-pro-footer__office-collection--global,
    .mak-pro-footer .mak-pro-footer__office-collection--regional { grid-template-columns: 1fr; gap: 17px; }
    .mak-pro-footer .mak-pro-footer__office-card { padding: 2px max(2px, calc(var(--mf-office-card-pad) - 10px)) 16px calc(var(--mf-office-card-pad) + 1px); }
    .mak-pro-footer .mak-pro-footer__directory-heading { font-size: 16px; }
    .mak-pro-footer .mak-pro-footer__office-card-header h3 { font-size: var(--mf-office-title-size); }
    .mak-pro-footer .mak-pro-footer__contact-slots { padding-top: 4px; }
    :where(.mak-pro-footer) .mak-pro-footer__directory-nav { gap: 15px; padding-top: 16px; }
    .mak-pro-footer .mak-pro-footer__regional-footer { margin-top: 16px; }
}

/* ================================================================
   v2.4.2 - Reference footer: featured HQ + overseas, India units,
   India regional offices, and full-width horizontal navigation.
   Directory-only; the original two-office footer stays untouched.
   Elementor's existing typography/color/spacing selectors are kept.
   ================================================================ */
.mak-pro-footer--global-directory {
    background-image: radial-gradient(ellipse at 12% -8%, rgba(0, 110, 191, .34), transparent 48%),
                      radial-gradient(ellipse at 90% 70%, rgba(0, 79, 151, .18), transparent 64%);
}
.mak-pro-footer .mak-pro-footer__directory {
    position: relative;
    isolation: isolate;
}
.mak-pro-footer .mak-pro-footer__directory-intro {
    position: relative;
    z-index: 0;
    padding-top: 133px;
    margin-bottom: 36px;
    min-width: 0;
}
.mak-pro-footer .mak-pro-footer__world-map {
    position: absolute;
    z-index: -1;
    top: calc(-1 * var(--mf-pt));
    right: 0;
    width: min(42vw, 680px);
    height: 196px;
    background: url('../images/world-map-dots.svg') right top / contain no-repeat;
    pointer-events: none;
    opacity: .8;
}
.mak-pro-footer .mak-pro-footer__directory-title-line {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: clamp(15px, 1.5vw, 26px);
}
.mak-pro-footer__directory-intro .mak-pro-footer__directory-heading {
    flex: 0 1 auto;
    min-width: 0;
    margin: 0;
    font-size: clamp(21px, 1.65vw, 27px);
    font-weight: 750;
    line-height: 1.25;
    white-space: normal;
}
.mak-pro-footer .mak-pro-footer__directory-heading::before {
    flex-basis: 6px;
    width: 6px;
    height: 28px;
    background: var(--mf-accent);
    border-radius: 3px;
}
.mak-pro-footer .mak-pro-footer__heading-rule {
    display: block;
    height: 1px;
    min-width: 20px;
    flex: 1 1 auto;
    background: rgba(181, 212, 236, .8);
}
.mak-pro-footer .mak-pro-footer__directory-tagline {
    flex: 0 1 auto;
    color: #f1f7ff;
    font-size: clamp(10px, .75vw, 13px);
    letter-spacing: .18em;
    line-height: 1.5;
    font-weight: 500;
    text-transform: uppercase;
    text-align: right;
    white-space: normal;
}
.mak-pro-footer .mak-pro-footer__directory-top-row {
    display: grid;
    grid-template-columns: minmax(175px, 235px) minmax(0, 1fr);
    align-items: stretch;
    min-width: 0;
    gap: 0;
}
.mak-pro-footer .mak-pro-footer__directory-top-row--no-brand {
    grid-template-columns: minmax(0, 1fr);
}
.mak-pro-footer .mak-pro-footer__directory-top-row .mak-pro-footer__directory-brand {
    align-self: start;
    padding: 0 23px 0 10px;
    max-width: none;
    width: 100%;
    min-width: 0;
    --mf-social-border: rgba(213, 231, 249, .7);
}
.mak-pro-footer .mak-pro-footer__directory-brand .mak-pro-footer__logo {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    margin-bottom: 12px;
}
.mak-pro-footer .mak-pro-footer__directory-brand .mak-pro-footer__logo img {
    width: var(--mf-logo);
    height: auto;
    max-width: 100%;
}
.mak-pro-footer .mak-pro-footer__directory-brand .mak-pro-footer__socials {
    margin-top: 21px;
    gap: 10px;
}
.mak-pro-footer .mak-pro-footer__directory-brand .mak-pro-footer__socials a {
    width: 43px;
    height: 43px;
    border-radius: 8px;
}
.mak-pro-footer .mak-pro-footer__office-collection--global {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    align-items: stretch;
}
.mak-pro-footer .mak-pro-footer__office-collection--units {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
}
.mak-pro-footer .mak-pro-footer__office-collection--regional {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0;
}
.mak-pro-footer .mak-pro-footer__office-card {
    padding: 3px var(--mf-office-card-pad) 0;
    min-height: 238px;
    gap: 14px;
    border-left-color: rgba(120, 190, 235, .55);
}
.mak-pro-footer .mak-pro-footer__office-collection--global .mak-pro-footer__office-card {
    /* The shared card padding/min-height remains Elementor-customizable. */
}
.mak-pro-footer .mak-pro-footer__office-card-header {
    gap: 9px;
    align-items: flex-start;
    min-height: 28px;
}
.mak-pro-footer .mak-pro-footer__pin {
    flex-basis: 23px;
    width: 23px;
    height: 24px;
    color: #60cefd;
}
.mak-pro-footer .mak-pro-footer__office-card-header h3 {
    font-size: var(--mf-office-title-size);
    line-height: 1.34;
    font-weight: 750;
    letter-spacing: -.01em;
}
.mak-pro-footer .mak-pro-footer__office-address {
    font-size: var(--mf-office-text-size);
    line-height: 1.56;
}
.mak-pro-footer .mak-pro-footer__contact-slots {
    margin-top: auto;
    gap: 4px;
    padding-top: 2px;
}
.mak-pro-footer .mak-pro-footer__contact-slot {
    align-items: center;
    grid-template-columns: 28px minmax(0, 1fr);
    column-gap: 7px;
    min-height: 26px;
    line-height: 1.4;
}
.mak-pro-footer .mak-pro-footer__contact-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    color: #60cefd;
    font-size: calc(var(--mf-office-contact-size) + 6px);
    font-weight: 600;
    white-space: nowrap;
}
.mak-pro-footer .mak-pro-footer__contact-label svg {
    display: block;
    flex: none;
    width: 1em;
    height: 1em;
}
.mak-pro-footer .mak-pro-footer__sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.mak-pro-footer .mak-pro-footer__contact-value,
.mak-pro-footer .mak-pro-footer__contact-value a {
    line-height: 1.48;
    font-weight: 400;
}
.mak-pro-footer .mak-pro-footer__regional-footer {
    display: grid;
    grid-template-columns: minmax(0, 37.5%) minmax(0, 62.5%);
    gap: 0;
    margin-top: 25px;
    padding-top: 31px;
    min-height: 224px;
    border-top: 1px solid rgba(129, 192, 232, .5);
}
.mak-pro-footer .mak-pro-footer__regional-footer--single {
    grid-template-columns: minmax(0, 1fr);
}
.mak-pro-footer .mak-pro-footer__india-units {
    min-width: 0;
    width: 100%;
    padding-right: 23px;
}
.mak-pro-footer .mak-pro-footer__india-regional {
    min-width: 0;
    width: 100%;
    border-left: 1px solid rgba(129, 192, 232, .5);
    padding-left: 24px;
}
.mak-pro-footer .mak-pro-footer__regional-footer--single .mak-pro-footer__india-regional {
    border-left: 0;
    padding-left: 0;
}
.mak-pro-footer .mak-pro-footer__units-heading,
.mak-pro-footer .mak-pro-footer__regional-heading {
    gap: 14px;
    margin: 0 0 23px;
    font-size: clamp(20px, 1.25vw, 24px);
    line-height: 1.3;
}
.mak-pro-footer .mak-pro-footer__units-heading::after,
.mak-pro-footer .mak-pro-footer__regional-heading::after {
    content: '';
    height: 1px;
    flex: 1 1 auto;
    min-width: 20px;
    background: rgba(129, 192, 232, .6);
}
.mak-pro-footer .mak-pro-footer__office-card--compact {
    min-height: 0;
    gap: 13px;
    padding-bottom: 0;
    padding-left: 8px;
    padding-right: 0;
    font-stretch: condensed;
}
/* Compact columns remain fully controlled by the SAME Elementor font settings. */
.mak-pro-footer .mak-pro-footer__office-card--compact .mak-pro-footer__contact-slots {
    padding-top: 0;
}
:where(.mak-pro-footer) .mak-pro-footer__directory-nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    margin-top: 34px;
    border: 0;
    border-top: 1px solid rgba(129, 192, 232, .5);
    padding: 26px 0 0;
    min-width: 0;
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links {
    width: 100%;
    min-width: 0;
    max-width: none;
    display: flex;
    align-items: flex-start;
    gap: clamp(14px, 1vw, 22px);
    padding: 0 18px;
    border-left: 0;
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links:first-child {
    padding-left: 2px;
    border-left: 0;
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links h3 {
    display: flex;
    align-items: center;
    flex: none;
    gap: 15px;
    margin: 0;
    line-height: 1.2;
    font-size: clamp(20px, 1.3vw, 23px);
    font-weight: 800;
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links h3::before {
    content: '';
    display: block;
    flex: 0 0 6px;
    width: 6px;
    height: 27px;
    background: var(--mf-accent);
    border-radius: 3px;
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links ul {
    display: flex;
    align-items: flex-start;
    flex: 1 1 auto;
    justify-content: space-between;
    min-width: 0;
    padding: 0;
    margin: 0;
    list-style: none;
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links li {
    display: block;
    flex: 0 1 auto;
    min-width: 0;
    margin: 0;
    padding: 4px clamp(7px, .8vw, 15px);
    border-left: 1px solid rgba(129, 192, 232, .55);
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links li:first-child {
    border-left: 0;
}
:where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links a {
    display: block;
    font-size: var(--mf-text-size);
    line-height: 1.55;
    color: var(--mf-text);
    white-space: normal;
}
@media (max-width: 1530px) {
    .mak-pro-footer .mak-pro-footer__directory-tagline { letter-spacing: .11em; }
    :where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links { gap: 10px; padding: 0 12px; }
    :where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links li { padding: 3px 6px; }
}
@media (max-width: 1399px) {
    .mak-pro-footer .mak-pro-footer__directory-top-row { grid-template-columns: 190px minmax(0, 1fr); }
    .mak-pro-footer .mak-pro-footer__directory-top-row--no-brand { grid-template-columns: minmax(0, 1fr); }
    .mak-pro-footer .mak-pro-footer__office-collection--global { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 23px 0; }
    .mak-pro-footer .mak-pro-footer__office-card { min-height: 190px; }
    .mak-pro-footer .mak-pro-footer__office-card--compact { min-height: 0; }
    .mak-pro-footer .mak-pro-footer__regional-footer { grid-template-columns: minmax(0, 1fr); gap: 26px; min-height: 0; }
    .mak-pro-footer .mak-pro-footer__india-units { padding-right: 0; }
    .mak-pro-footer .mak-pro-footer__india-regional { border-left: 0; padding-left: 0; }
    :where(.mak-pro-footer) .mak-pro-footer__directory-nav { grid-template-columns: minmax(0, 1fr); gap: 21px; }
    :where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links { border-left: 0; padding: 0; }
}
@media (max-width: 900px) {
    .mak-pro-footer .mak-pro-footer__directory-intro { padding-top: 85px; margin-bottom: 27px; }
    .mak-pro-footer .mak-pro-footer__world-map { width: min(80vw, 500px); opacity: .5; }
    .mak-pro-footer .mak-pro-footer__directory-title-line { flex-wrap: wrap; gap: 12px; }
    .mak-pro-footer .mak-pro-footer__directory-heading { max-width: 100%; }
    .mak-pro-footer .mak-pro-footer__heading-rule { flex-basis: 30px; }
    .mak-pro-footer .mak-pro-footer__directory-tagline { width: 100%; text-align: left; }
    .mak-pro-footer .mak-pro-footer__directory-top-row { grid-template-columns: minmax(0, 1fr); gap: 23px; }
    .mak-pro-footer .mak-pro-footer__directory-top-row .mak-pro-footer__directory-brand { display: block; padding: 0 8px; }
    .mak-pro-footer .mak-pro-footer__office-collection--global,
    .mak-pro-footer .mak-pro-footer__office-collection--regional,
    .mak-pro-footer .mak-pro-footer__office-collection--units { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 0; }
    .mak-pro-footer .mak-pro-footer__office-card { min-height: 205px; }
    .mak-pro-footer .mak-pro-footer__office-card--compact { min-height: 0; }
    :where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links ul { flex-wrap: wrap; justify-content: flex-start; row-gap: 12px; }
}
@media (max-width: 560px) {
    .mak-pro-footer .mak-pro-footer__directory-intro { padding-top: 0; margin-bottom: 22px; }
    .mak-pro-footer .mak-pro-footer__world-map { display: none; }
    .mak-pro-footer__directory-intro .mak-pro-footer__directory-heading { font-size: 19px; }
    .mak-pro-footer .mak-pro-footer__heading-rule { display: none; }
    .mak-pro-footer .mak-pro-footer__directory-tagline { font-size: 10px; }
    .mak-pro-footer .mak-pro-footer__office-collection--global,
    .mak-pro-footer .mak-pro-footer__office-collection--regional,
    .mak-pro-footer .mak-pro-footer__office-collection--units { grid-template-columns: minmax(0, 1fr); gap: 18px; }
    .mak-pro-footer .mak-pro-footer__office-card { min-height: 0; }
    .mak-pro-footer .mak-pro-footer__office-card { padding-left: var(--mf-office-card-pad); padding-bottom: 4px; }
    /* Contact margin is controlled by existing Elementor contact gap slider. */
    .mak-pro-footer .mak-pro-footer__regional-footer { margin-top: 24px; padding-top: 22px; }
    .mak-pro-footer .mak-pro-footer__units-heading,
    .mak-pro-footer .mak-pro-footer__regional-heading { margin-bottom: 19px; }
    :where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links { flex-wrap: wrap; gap: 12px; }
    :where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links h3 { width: 100%; }
    :where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links ul { width: 100%; }
    :where(.mak-pro-footer .mak-pro-footer__directory-nav) .mak-pro-footer__links li { padding: 4px 11px; }
}

/* At five columns, keep full email addresses together without overflow.
   The original quick-size variable and Elementor typography styles still win. */
@media (min-width: 1400px) {
    .mak-pro-footer__office-card--compact .mak-pro-footer__contact-value,
    .mak-pro-footer__office-card--compact .mak-pro-footer__contact-value a {
        font-size: calc(var(--mf-office-contact-size) - 2px);
    }
}

/* ================================================================
   v2.4.3 - Remove empty band above office directory when the Map
   exists, eliminate middle divider, and provide stable Elementor-
   editable spacing via CSS custom properties (no JS / layout flash).
   Directory layout only; legacy two-office layout is unchanged.
   ================================================================ */
.mak-pro-footer--global-directory {
    --mf-dir-map-gap: 12px;
    --mf-dir-intro-top: 133px;
    --mf-dir-heading-gap: 26px;
    --mf-dir-india-top-gap: 20px;
    --mf-dir-india-top-padding: 24px;
    --mf-dir-india-col-gap: 16px;
    --mf-dir-nav-gap: 19px;
    --mf-dir-regional-border-width: 1px;
    --mf-dir-regional-border-color: rgba(129,192,232,.5);
}
.mak-pro-footer--global-directory.mak-pro-footer--has-location {
    --mf-dir-heading-gap: 20px;
}
/* Match Elementor CSS variable specificity reliably even if optimization
   plugins combine stylesheets in a different order. */
.mak-pro-footer--has-location {
    --mf-dir-intro-top: 0px;
}
.mak-pro-footer--global-directory .mak-pro-footer__location,
.mak-pro-footer--global-directory .mak-pro-footer__cta {
    margin-bottom: var(--mf-dir-map-gap);
}
/* Keep this selector no more specific than native Elementor's generated
   rules, so older saved 'Space Above Global Heading' values still work. */
.mak-pro-footer .mak-pro-footer__directory-intro {
    padding-top: var(--mf-dir-intro-top, 133px) !important;
    margin-bottom: var(--mf-dir-heading-gap, 26px);
}
.mak-pro-footer--global-directory.mak-pro-footer--has-location .mak-pro-footer__world-map {
    top: 0;
    height: 124px;
    width: min(30vw, 460px);
    opacity: .28;
}
.mak-pro-footer .mak-pro-footer__regional-footer {
    /* Fractions (not percentages) leave actual room for the editable gap. */
    grid-template-columns: minmax(0, 37.5fr) minmax(0, 62.5fr);
    column-gap: var(--mf-dir-india-col-gap);
    min-height: 0;
    margin-top: var(--mf-dir-india-top-gap);
    padding-top: var(--mf-dir-india-top-padding);
}
.mak-pro-footer .mak-pro-footer__regional-footer--single {
    grid-template-columns: minmax(0, 1fr);
}
.mak-pro-footer .mak-pro-footer__india-units {
    padding-right: 0;
}
.mak-pro-footer .mak-pro-footer__india-regional {
    border-left: 0;
    padding-left: 0;
}
/* The first regional card's inherited left border can otherwise resemble
   the unwanted full-height separator even after it is switched off. */
.mak-pro-footer .mak-pro-footer__office-collection--regional > .mak-pro-footer__office-card:first-child {
    border-left: 0;
}
/* The India Units / Regional Offices divider uses the same vertical
   extent as the office-card rules, rather than running through the heading. */
.mak-pro-footer .mak-pro-footer__regional-footer--with-divider .mak-pro-footer__india-regional {
    border-left: 0;
    padding-left: 11px;
}
.mak-pro-footer .mak-pro-footer__regional-footer--with-divider .mak-pro-footer__office-collection--regional {
    position: relative;
}
.mak-pro-footer .mak-pro-footer__regional-footer--with-divider .mak-pro-footer__office-collection--regional::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: -11px;
    width: var(--mf-dir-regional-border-width);
    background-color: var(--mf-dir-regional-border-color);
    pointer-events: none;
}
.mak-pro-footer .mak-pro-footer__directory-nav {
    margin-top: var(--mf-dir-nav-gap);
}
.mak-pro-footer .mak-pro-footer__directory-nav--no-top-rule {
    border-top: none !important;
}
@media (max-width:1399px) {
    .mak-pro-footer .mak-pro-footer__regional-footer {
        grid-template-columns: minmax(0, 1fr);
        row-gap: 22px;
    }
    .mak-pro-footer .mak-pro-footer__india-regional,
    .mak-pro-footer .mak-pro-footer__regional-footer--with-divider .mak-pro-footer__india-regional {
        border-left: 0;
        padding-left: 0;
    }
    .mak-pro-footer .mak-pro-footer__regional-footer--with-divider .mak-pro-footer__office-collection--regional::before {
        display: none;
    }
}
@media (max-width:900px) {
    .mak-pro-footer--global-directory { --mf-dir-intro-top: 85px; }
    .mak-pro-footer--has-location { --mf-dir-intro-top: 0px; }
}
@media (max-width:560px) {
    .mak-pro-footer--global-directory { --mf-dir-intro-top: 0px; }
    .mak-pro-footer .mak-pro-footer__regional-footer {
        margin-top: var(--mf-dir-india-top-gap);
        padding-top: var(--mf-dir-india-top-padding);
    }
}

/* ================================================================
   v2.4.7 - Top-left MAK logo finishing only.
   Balance the logo and social row in the brand column; never let
   icon boxes crowd or clip against the neighbouring office divider.
   The existing Elementor Logo Width variable remains authoritative.
   The stacked tablet/mobile layout remains unchanged.
   ================================================================ */
@media (min-width: 901px) {
    .mak-pro-footer--global-directory .mak-pro-footer__directory-top-row .mak-pro-footer__directory-brand {
        padding-left: 14px;
        padding-right: 14px;
    }
    .mak-pro-footer--global-directory .mak-pro-footer__directory-brand .mak-pro-footer__logo {
        display: flex;
        width: 100%;
        min-width: 0;
        justify-content: center;
        align-items: center;
    }
    .mak-pro-footer--global-directory .mak-pro-footer__directory-brand .mak-pro-footer__logo img {
        display: block;
        width: var(--mf-logo);
        max-width: 100%;
        height: auto;
        object-fit: contain;
    }
    .mak-pro-footer--global-directory .mak-pro-footer__directory-brand .mak-pro-footer__socials {
        display: flex;
        width: 100%;
        max-width: 100%;
        flex-wrap: nowrap;
        justify-content: center;
        gap: 8px;
    }
    .mak-pro-footer--global-directory .mak-pro-footer__directory-brand .mak-pro-footer__socials a {
        flex: 0 1 40px;
        min-width: 0;
        width: 40px;
        height: 40px;
    }
}


/* ================================================================
   v2.4.8 - Remove unwanted gap inside top global office cards
   Keep contact details directly below the address instead of pushing
   them to the bottom of an artificial fixed-height card.
   ================================================================ */
.mak-pro-footer .mak-pro-footer__office-collection--global .mak-pro-footer__office-card {
    min-height: 0;
    height: auto;
    padding-bottom: 6px;
}
.mak-pro-footer .mak-pro-footer__office-collection--global .mak-pro-footer__contact-slots {
    margin-top: 0;
    padding-top: 2px;
}

/* ================================================================
   v2.4.9 - Align top office Phone/Mobile and Email rows to a shared
   baseline, even when an individual office lacks a telephone number.
   The empty slot occupies space but is visually hidden and non-focusable.
   Only the global office row is affected; India unit and regional cards,
   brand, and bottom navigation retain their previous layout.
   ================================================================ */
/* Kept independent of the existing India-office spacing controls. */
.mak-pro-footer--global-directory {
    --mf-top-office-align-gap: 7px;
}
.mak-pro-footer .mak-pro-footer__office-collection--global .mak-pro-footer__office-card {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    align-content: start;
    min-height: 0;
    height: 100%;
}
.mak-pro-footer .mak-pro-footer__office-collection--global .mak-pro-footer__office-card-copy {
    min-height: 0;
}
.mak-pro-footer .mak-pro-footer__office-collection--global .mak-pro-footer__contact-slots {
    margin-top: 0;
}
/* Modern browsers align the header, address and contact tracks across
   neighbours without using a fixed card height or script-driven sizing. */
@supports (grid-template-rows: subgrid) {
    @media (min-width: 1400px) {
        .mak-pro-footer .mak-pro-footer__office-collection--global {
            row-gap: var(--mf-top-office-align-gap);
        }
        .mak-pro-footer .mak-pro-footer__office-collection--global .mak-pro-footer__office-card {
            grid-row: span 3;
            grid-template-rows: subgrid;
            row-gap: var(--mf-top-office-align-gap);
        }
    }
}

@media (max-width: 560px) {
    /* A single stacked card has no neighbouring column to align with. */
    .mak-pro-footer .mak-pro-footer__office-collection--global .mak-pro-footer__contact-slot--empty {
        display: none;
    }
}

/* ================================================================
   v2.4.10 - Independent, fully Elementor-editable heading ABOVE the
   Google map + image row. No changes to directory or contact alignment.
   No delayed CSS/JS, so editor preview and frontend stay consistent.
   ================================================================ */
.mak-pro-footer .mak-pro-footer__map-section-heading {
    display: block;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    margin: 0 0 18px;
    padding: 0;
    background: transparent;
    border-radius: 0;
}
.mak-pro-footer .mak-pro-footer__map-section-heading-row {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    min-width: 0;
    gap: 12px;
}
.mak-pro-footer .mak-pro-footer__map-section-heading-text {
    margin: 0;
    padding: 0;
    min-width: 0;
    max-width: 100%;
    font-family: inherit;
    color: var(--mf-heading);
    font-size: clamp(20px, 1.7vw, 28px);
    font-weight: 750;
    line-height: 1.3;
    overflow-wrap: anywhere;
}
.mak-pro-footer .mak-pro-footer__map-section-heading-accent {
    display: block;
    flex: none;
    width: 6px;
    height: 28px;
    border-radius: 3px;
    background-color: var(--mf-accent);
}
.mak-pro-footer .mak-pro-footer__map-section-heading-rule {
    display: block;
    width: 100%;
    height: 1px;
    margin-top: 14px;
    background-color: var(--mf-border);
}
@media (max-width:767px) {
    .mak-pro-footer .mak-pro-footer__map-section-heading {
        margin-bottom: 14px;
    }
    .mak-pro-footer .mak-pro-footer__map-section-heading-text {
        font-size: 21px;
    }
}

/* ========================================================================
   v2.4.11 - Global Atlas (premium office-card design)
   Applied only when "Global Atlas" is chosen. The earlier Classic directory,
   legacy footer, Elementor-generated selectors and Google Map remain intact.
   Office text is always real, searchable HTML sourced from the repeater.
   ======================================================================== */
.mak-pro-footer--atlas {
    --mf-atlas-card-base: #092d5b;
    --mf-atlas-card-light: #154679;
    --mf-atlas-tile-base: #092a55;
    --mf-atlas-card-border: #276ba5;
    --mf-atlas-card-hover: #67c2f4;
    --mf-atlas-pin: #ff3848;
    --mf-atlas-motto-color: #d4e6fb;
    --mf-atlas-art-opacity: .38;
    --mf-atlas-card-gap: 10px;
    --mf-atlas-tile-gap: 8px;
    --mf-atlas-motto-width: 135px;
    --mf-dir-intro-top: 0px;
    --mf-dir-heading-gap: 26px;
    --mf-dir-india-top-gap: 30px;
    --mf-dir-india-top-padding: 29px;
    --mf-dir-india-col-gap: 25px;
    --mf-dir-nav-gap: 26px;
    position: relative;
    background-color: var(--mf-bg);
    background-image:
        radial-gradient(ellipse 52% 60% at 6% 0%, rgba(12,99,173,.42), transparent 70%),
        radial-gradient(ellipse 37% 65% at 100% 75%, rgba(0,113,205,.20), transparent 83%),
        linear-gradient(110deg, rgba(3,20,49,.18), rgba(13,43,83,.12) 56%,rgba(3,26,61,.22));
}
.mak-pro-footer--atlas .mak-pro-footer__directory {
    position: relative;
    z-index: 0;
    font-family: inherit;
}
.mak-pro-footer--atlas .mak-pro-footer__directory::after {
    content: '';
    position: absolute;
    z-index: -1;
    inset: -35px calc(-1 * var(--mf-side)) 0;
    pointer-events: none;
    background: repeating-linear-gradient(154deg,transparent 0,transparent 48px,rgba(109,180,232,.027) 49px,transparent 50px);
    opacity: .85;
}
.mak-pro-footer--atlas .mak-pro-footer__directory-intro {
    min-width: 0;
    margin-bottom: var(--mf-dir-heading-gap);
}
.mak-pro-footer--atlas .mak-pro-footer__world-map {
    top: -22px;
    right: -5px;
    height: 175px;
    width: min(39vw,700px);
    opacity: .62;
    filter: drop-shadow(0 0 20px rgba(19,129,212,.26));
}
.mak-pro-footer--atlas .mak-pro-footer__directory-title-line { gap: clamp(14px,1.25vw,25px); }
.mak-pro-footer--atlas .mak-pro-footer__heading-rule {
    background: linear-gradient(90deg,rgba(164,201,230,.75),rgba(90,143,199,.3));
}
.mak-pro-footer--atlas .mak-pro-footer__directory-tagline { color: #e1edfc; }
.mak-pro-footer--atlas .mak-pro-footer__directory-heading::before {
    background-color: var(--mf-accent);
    border-radius: 3px;
    box-shadow: 0 0 9px rgba(247,27,38,.2);
}
.mak-pro-footer--atlas .mak-pro-footer__directory-top-row {
    display: grid;
    align-items: stretch;
    grid-template-columns: minmax(175px,235px) minmax(0,1fr);
    column-gap: 15px;
}
.mak-pro-footer--atlas .mak-pro-footer__directory-top-row--no-brand { grid-template-columns: minmax(0,1fr); }
.mak-pro-footer--atlas .mak-pro-footer__directory-top-row--atlas-motto {
    grid-template-columns: minmax(175px,235px) minmax(0,1fr) var(--mf-atlas-motto-width);
}
.mak-pro-footer--atlas .mak-pro-footer__directory-top-row--atlas-motto.mak-pro-footer__directory-top-row--no-brand {
    grid-template-columns: minmax(0,1fr) var(--mf-atlas-motto-width);
}
.mak-pro-footer--atlas .mak-pro-footer__directory-top-row .mak-pro-footer__directory-brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 6px 13px 0;
    min-width: 0;
    text-align: center;
}
.mak-pro-footer--atlas .mak-pro-footer__directory-brand .mak-pro-footer__logo {
    width: 100%;
    margin-bottom: 8px;
    text-align: center;
    justify-content: center;
}
.mak-pro-footer--atlas .mak-pro-footer__atlas-badge {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-width: 0;
    max-width: 160px;
    margin: 0 auto 9px;
}
.mak-pro-footer--atlas .mak-pro-footer__atlas-badge img {
    display: block;
    max-width: 100%;
    max-height: 62px;
    width: auto;
    height: auto;
    object-fit: contain;
}
.mak-pro-footer--atlas .mak-pro-footer__directory-brand .mak-pro-footer__socials {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: flex-start;
    width: 100%;
    margin: auto 0 0;
    padding-top: 20px;
    gap: 8px;
    border-top: 1px solid rgba(148,202,243,.32);
}
.mak-pro-footer--atlas .mak-pro-footer__directory-brand .mak-pro-footer__socials a {
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: rgba(255,255,255,.05);
    border-color: rgba(193,221,245,.53);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--global {
    grid-template-columns: repeat(var(--mf-atlas-global-cols,4),minmax(0,1fr));
    column-gap: var(--mf-atlas-card-gap);
    row-gap: var(--mf-atlas-card-gap);
}
.mak-pro-footer--atlas .mak-pro-footer__office-card {
    position: relative;
    isolation: isolate;
    min-width: 0;
    border: 1px solid var(--mf-atlas-card-border);
    border-radius: 9px;
    background-color: var(--mf-atlas-card-base);
    background-image: linear-gradient(145deg,rgba(30,88,146,.24),transparent 64%);
    box-shadow: inset 0 1px 0 rgba(198,228,255,.065), 0 7px 22px rgba(0,15,42,.12);
    overflow: hidden;
    transition: border-color .23s ease,box-shadow .23s ease, transform .23s ease;
}
.mak-pro-footer--atlas .mak-pro-footer__office-card:hover,
.mak-pro-footer--atlas .mak-pro-footer__office-card:focus-within {
    border-color: var(--mf-atlas-card-hover);
    box-shadow: 0 8px 26px rgba(0,15,42,.25),inset 0 1px 0 rgba(198,228,255,.11);
}
.mak-pro-footer--atlas .mak-pro-footer__office-card::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: radial-gradient(ellipse 75% 75% at 100% 100%,var(--mf-atlas-card-light),transparent 80%);
    opacity: .37;
}
.mak-pro-footer--atlas .mak-pro-footer__office-card::after {
    content: '';
    position: absolute;
    z-index: 0;
    pointer-events: none;
    right: -1px;
    bottom: 0;
    width: 72%;
    height: 64%;
    background: var(--mf-atlas-office-art,none) right bottom / contain no-repeat;
    opacity: var(--mf-atlas-art-opacity);
    filter: saturate(.68);
    -webkit-mask-image: linear-gradient(90deg,transparent,black 38%);
    mask-image: linear-gradient(90deg,transparent,black 38%);
}
.mak-pro-footer--atlas-no-art .mak-pro-footer__office-card::after,
.mak-pro-footer--atlas .mak-pro-footer__office-card--atlas-none::after { display: none; }
.mak-pro-footer--atlas .mak-pro-footer__office-card--atlas-factory { --mf-atlas-office-art: url('../images/atlas-factory.svg'); }
.mak-pro-footer--atlas .mak-pro-footer__office-card--atlas-americas { --mf-atlas-office-art: url('../images/atlas-americas.svg'); }
.mak-pro-footer--atlas .mak-pro-footer__office-card--atlas-uae { --mf-atlas-office-art: url('../images/atlas-uae.svg'); }
.mak-pro-footer--atlas .mak-pro-footer__office-card--atlas-asia { --mf-atlas-office-art: url('../images/atlas-asia.svg'); }
.mak-pro-footer--atlas .mak-pro-footer__office-card--atlas-global { --mf-atlas-office-art: url('../images/atlas-global.svg'); }
/* Keep cards and hyperlinks above their decorative art layer. */
.mak-pro-footer--atlas .mak-pro-footer__office-card > :not(.mak-pro-footer__atlas-map-link) {
    position: relative;
    z-index: 1;
    min-width: 0;
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--global .mak-pro-footer__office-card {
    padding: 14px max(14px,var(--mf-office-card-pad)) 16px;
    min-height: 240px;
    gap: var(--mf-top-office-align-gap);
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--global .mak-pro-footer__office-card-header {
    padding-bottom: 5px;
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--global .mak-pro-footer__contact-slots {
    padding-top: 9px;
    border-top: 1px solid rgba(120,190,235,.22);
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--global .mak-pro-footer__office-address {
    line-height: 1.55;
}
.mak-pro-footer--atlas .mak-pro-footer__pin { color: var(--mf-atlas-pin); }
.mak-pro-footer--atlas .mak-pro-footer__contact-label { color: #e6f3ff; }
.mak-pro-footer--atlas .mak-pro-footer__contact-slot {
    min-width: 0;
    grid-template-columns: 22px minmax(0,1fr);
    gap: 7px;
    min-height: 22px;
}
.mak-pro-footer--atlas .mak-pro-footer__office-card .mak-pro-footer__contact-label svg { width: 17px; height: 17px; }
.mak-pro-footer--atlas .mak-pro-footer__contact-slot--empty { visibility: hidden; }
.mak-pro-footer--atlas .mak-pro-footer__atlas-motto {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    min-width: 0;
    padding: 24px 0 18px 10px;
    color: var(--mf-atlas-motto-color);
    text-transform: uppercase;
    letter-spacing: .25em;
    font-size: clamp(10px,.63vw,12px);
    font-weight: 650;
    line-height: 2.15;
    overflow-wrap: anywhere;
}
.mak-pro-footer--atlas .mak-pro-footer__atlas-motto::after {
    content: '';
    position: absolute;
    bottom: 11px;
    left: 10px;
    width: 44px;
    height: 3px;
    border-radius: 2px;
    background: var(--mf-accent);
}
.mak-pro-footer--atlas .mak-pro-footer__regional-footer {
    grid-template-columns: minmax(0,37.5fr) minmax(0,62.5fr);
    background: transparent;
    border-top: 1px solid rgba(105,169,221,.48);
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--units {
    grid-template-columns: repeat(var(--mf-atlas-unit-cols,3),minmax(0,1fr));
    gap: var(--mf-atlas-card-gap);
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--units .mak-pro-footer__office-card {
    min-height: 214px;
    padding: 15px max(12px,var(--mf-office-card-pad)) 14px;
    gap: 9px;
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--units .mak-pro-footer__office-card::after {
    width: 100%;
    height: 43%;
    -webkit-mask-image: linear-gradient(0deg,black,transparent 100%);
    mask-image: linear-gradient(0deg,black,transparent 100%);
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--regional {
    display: grid;
    grid-template-columns: repeat(var(--mf-atlas-regional-cols,5),minmax(0,1fr));
    gap: var(--mf-atlas-tile-gap);
    align-items: stretch;
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--regional .mak-pro-footer__office-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-height: 66px;
    padding: 9px 24px 8px 10px;
    background-color: var(--mf-atlas-tile-base);
    background-image: linear-gradient(110deg,rgba(18,68,126,.3),rgba(3,31,68,.2));
    border-radius: 8px;
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--regional .mak-pro-footer__office-card::after { display: none; }
.mak-pro-footer--atlas .mak-pro-footer__office-collection--regional .mak-pro-footer__office-card-header {
    min-height: 0;
    gap: 7px;
    align-items: center;
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--regional .mak-pro-footer__pin {
    width: 19px;
    height: 19px;
    flex-basis: 19px;
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--regional .mak-pro-footer__contact-slots {
    gap: 1px;
    padding: 0;
    margin-top: auto;
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--regional .mak-pro-footer__contact-slot {
    grid-template-columns: 16px minmax(0,1fr);
    column-gap: 5px;
    min-height: 18px;
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--regional .mak-pro-footer__contact-label svg {
    width: 13px;
    height: 13px;
}
.mak-pro-footer--atlas .mak-pro-footer__office-collection--regional .mak-pro-footer__contact-value,
.mak-pro-footer--atlas .mak-pro-footer__office-collection--regional .mak-pro-footer__contact-value a {
    line-height: 1.42;
}
.mak-pro-footer--atlas .mak-pro-footer__atlas-map-link {
    display: inline-flex;
    position: absolute;
    z-index: 2;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 33px;
    padding: 0;
    border: 0;
    background: transparent;
    appearance: none;
    font: inherit;
    cursor: pointer;
    color: #93bde8;
    border-radius: 5px;
    transition: color .2s ease, background-color .2s ease;
}
.mak-pro-footer--atlas .mak-pro-footer__atlas-map-link svg { display: block; width: 14px; height: 14px; }
.mak-pro-footer--atlas .mak-pro-footer__atlas-map-link:hover,
.mak-pro-footer--atlas .mak-pro-footer__atlas-map-link:focus-visible {
    color: #fff;
    background: rgba(77,156,218,.25);
    outline-offset: 2px;
}
.mak-pro-footer--atlas .mak-pro-footer__regional-footer--with-divider .mak-pro-footer__office-collection--regional::before {
    background-color: rgba(105,169,221,.48);
}
.mak-pro-footer--atlas .mak-pro-footer__directory-nav {
    border-top: 1px solid rgba(105,169,221,.48);
}
.mak-pro-footer--atlas .mak-pro-footer__bottom {
    background: rgba(3,21,49,.36);
    border-color: rgba(105,169,221,.4);
}
.mak-pro-footer--atlas .mak-pro-footer__bottom-inner {
    padding-top: 17px;
    padding-bottom: 17px;
    letter-spacing: .10em;
    font-size: calc(var(--mf-text-size) - 2px);
}
.mak-pro-footer--atlas .mak-pro-footer__bottom-inner > span:last-child:not(:first-child) {
    padding-left: 21px;
    border-left: 1px solid rgba(151,198,236,.52);
    text-align: right;
}
@media (max-width: 1799px) {
    .mak-pro-footer--atlas .mak-pro-footer__directory-top-row--atlas-motto { grid-template-columns: 210px minmax(0,1fr); }
    .mak-pro-footer--atlas .mak-pro-footer__directory-top-row--atlas-motto.mak-pro-footer__directory-top-row--no-brand { grid-template-columns: minmax(0,1fr); }
    .mak-pro-footer--atlas .mak-pro-footer__atlas-motto { display: none; }
}
@media (max-width: 1399px) {
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--global { grid-template-columns: repeat(min(2,var(--mf-atlas-global-cols,4)),minmax(0,1fr)); }
    .mak-pro-footer--atlas .mak-pro-footer__regional-footer { grid-template-columns: minmax(0,1fr); row-gap: 28px; }
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--units .mak-pro-footer__office-card { min-height: 190px; }
}
@media (max-width: 900px) {
    .mak-pro-footer--atlas .mak-pro-footer__directory-top-row,
    .mak-pro-footer--atlas .mak-pro-footer__directory-top-row--atlas-motto {
        grid-template-columns: minmax(0,1fr);
        row-gap: 20px;
    }
    .mak-pro-footer--atlas .mak-pro-footer__directory-top-row .mak-pro-footer__directory-brand {
        align-items: flex-start;
        justify-content: flex-start;
        text-align: left;
    }
    .mak-pro-footer--atlas .mak-pro-footer__directory-brand .mak-pro-footer__logo { justify-content: flex-start; }
    .mak-pro-footer--atlas .mak-pro-footer__directory-brand .mak-pro-footer__socials {
        margin-top: 10px;
        padding-top: 10px;
        justify-content: flex-start;
    }
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--regional {
        grid-template-columns: repeat(min(3,var(--mf-atlas-regional-cols,5)),minmax(0,1fr));
    }
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--units { grid-template-columns: repeat(min(3,var(--mf-atlas-unit-cols,3)),minmax(0,1fr)); }
}
@media (max-width: 650px) {
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--global { grid-template-columns: repeat(min(2,var(--mf-atlas-global-cols,4)),minmax(0,1fr)); }
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--units { grid-template-columns: repeat(min(2,var(--mf-atlas-unit-cols,3)),minmax(0,1fr)); }
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--regional { grid-template-columns: repeat(min(2,var(--mf-atlas-regional-cols,5)),minmax(0,1fr)); }
    .mak-pro-footer--atlas .mak-pro-footer__directory-brand .mak-pro-footer__socials { width: auto; }
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--global .mak-pro-footer__office-card { min-height: 225px; }
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--units .mak-pro-footer__office-card { min-height: 145px; }
    .mak-pro-footer--atlas .mak-pro-footer__bottom-inner > span:last-child:not(:first-child) { padding-left: 0; border: 0; text-align: center; }
}
@media (max-width: 470px) {
    .mak-pro-footer--atlas .mak-pro-footer__directory-title-line { flex-wrap: wrap; }
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--global,
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--units,
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--regional { grid-template-columns: minmax(0,1fr); }
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--global .mak-pro-footer__office-card { min-height: 0; }
    .mak-pro-footer--atlas .mak-pro-footer__office-collection--units .mak-pro-footer__office-card { min-height: 0; }
    .mak-pro-footer--atlas .mak-pro-footer__regional-footer { row-gap: 20px; }
}
@media (prefers-reduced-motion: reduce) {
    .mak-pro-footer--atlas .mak-pro-footer__office-card,
    .mak-pro-footer--atlas .mak-pro-footer__atlas-map-link { transition: none; }
}

/* v2.4.12 - Regional office address popover. Portal lives under <body>
   so Atlas cards and the footer's existing overflow rules cannot clip it. */
.mak-pro-footer__atlas-address-popover,
.mak-pro-footer__atlas-popup-style-source {
    position: fixed;
    z-index: 2147483000;
    box-sizing: border-box;
    width: min(320px, calc(100vw - 24px));
    max-width: calc(100vw - 24px);
    max-height: calc(100vh - 24px);
    overflow-y: auto;
    padding: 15px 39px 16px 17px;
    border: 1px solid rgba(148, 205, 245, .7);
    border-radius: 9px;
    background: linear-gradient(145deg, var(--mf-popup-bg-start, #173f70) 0%, var(--mf-popup-bg-end, #09284f) 100%);
    color: #e7f2ff;
    box-shadow: 0 18px 42px rgba(0, 12, 33, .42), inset 0 1px 0 rgba(255, 255, 255, .1);
    font-family: inherit;
    text-align: left;
    line-height: 1.55;
}
.mak-pro-footer__atlas-address-popover h4,
.mak-pro-footer__atlas-popup-style-source h4 {
    margin: 0 0 8px;
    color: #fff;
    font-size: 15px;
    font-weight: 750;
    line-height: 1.35;
}
.mak-pro-footer__atlas-address-popover p,
.mak-pro-footer__atlas-popup-style-source p {
    margin: 0;
    color: #d5e7f9;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.62;
    white-space: pre-line;
    overflow-wrap: anywhere;
}
.mak-pro-footer__atlas-address-close {
    display: inline-flex;
    position: absolute;
    top: 8px;
    right: 8px;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    border-radius: 5px;
    background: var(--mf-popup-close-bg, transparent);
    color: var(--mf-popup-close-color, #b5d7f5);
    font: inherit;
    font-size: 21px;
    line-height: 1;
    cursor: pointer;
}
.mak-pro-footer__atlas-address-close:hover {
    background: var(--mf-popup-close-hover-bg, rgba(255, 255, 255, .12));
    color: var(--mf-popup-close-hover-color, #fff);
}
.mak-pro-footer__atlas-address-close:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
    .mak-pro-footer__atlas-address-popover { scroll-behavior: auto; }
}

/* v2.4.13: Popup-only address option is available for individual India units
   and international Atlas cards as well as regional cards. Keep the arrow
   inside the card header, clear of contact details, with no other layout edits. */
.mak-pro-footer--atlas .mak-pro-footer__office-card--address-popup-only .mak-pro-footer__office-card-header {
    padding-right: 21px;
}
.mak-pro-footer--atlas .mak-pro-footer__office-card--address-popup-only > .mak-pro-footer__atlas-map-link {
    top: 12px;
    right: 7px;
    transform: none;
}

/* v2.4.14 - Invisible per-instance address popup style source for Elementor.
   The live popup stays in document.body to avoid clipping by office cards.
   Its computed design is transferred in JS (including responsive typography). */
.mak-pro-footer__atlas-popup-style-source {
    position: fixed !important;
    top: -10000px !important;
    left: -10000px !important;
    visibility: hidden !important;
    pointer-events: none !important;
    overflow: hidden;
}
