.mcpg-loc{
    --mcpg-orange:#f58220;
    --mcpg-orange-dark:#dd6c12;
    --mcpg-text:#232323;
    --mcpg-muted:#676767;
    --mcpg-border:#e8e8e8;
    position:relative;
    left:50%;
    width:100vw;
    max-width:100vw;
    margin-left:-50vw;
    padding:30px;
    background:#fff;
    color:var(--mcpg-text);
    font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

.mcpg-loc *{
    box-sizing:border-box;
}

.mcpg-loc__inner{
    width:100%;
    max-width:1500px;
    margin:0 auto;
}

.mcpg-loc__heading{
    margin-bottom:18px;
}

.mcpg-loc__eyebrow{
    display:block;
    margin-bottom:6px;
    color:var(--mcpg-orange);
    font-size:11px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.mcpg-loc__heading h2{
    margin:0!important;
    color:var(--mcpg-text)!important;
    font-size:clamp(24px,2vw,34px)!important;
    line-height:1.15!important;
    font-weight:700!important;
    letter-spacing:-.025em!important;
}

.mcpg-loc__card{
    min-width:0;
    overflow:hidden;
    border:1px solid var(--mcpg-border);
    border-radius:12px;
    background:#fff;
    box-shadow:0 8px 26px rgba(0,0,0,.045);
    display:grid;
    grid-template-columns:minmax(0,1fr) 340px;
}

.mcpg-loc__map{
    position:relative;
    min-width:0;
    min-height:430px;
    background:#e9ecef;
}

.mcpg-loc__map iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}

.mcpg-loc__map-fallback{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:10px;
    color:#777;
}

.mcpg-loc__map-fallback svg{
    width:42px;
    height:42px;
    fill:var(--mcpg-orange);
}

.mcpg-loc__map-fallback span{
    font-size:13px;
    font-weight:700;
}

.mcpg-loc__info{
    min-width:0;
    padding:34px 30px;
    border-left:1px solid var(--mcpg-border);
    display:flex;
    flex-direction:column;
    align-items:flex-start;
}

.mcpg-loc__icon{
    width:52px;
    height:52px;
    margin-bottom:20px;
    border-radius:15px;
    background:rgba(245,130,32,.12);
    display:flex;
    align-items:center;
    justify-content:center;
}

.mcpg-loc__icon svg{
    width:27px;
    height:27px;
    fill:var(--mcpg-orange);
}

.mcpg-loc__content{
    width:100%;
}

.mcpg-loc__content>span{
    display:block;
    margin-bottom:7px;
    color:#888;
    font-size:10px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.mcpg-loc__content p{
    margin:0!important;
    color:var(--mcpg-text)!important;
    font-size:16px!important;
    line-height:1.6!important;
    font-weight:600!important;
}

.mcpg-loc__actions{
    width:100%;
    margin-top:auto;
    padding-top:28px;
    display:grid;
    gap:10px;
}

.mcpg-loc__button{
    width:100%;
    min-height:44px;
    padding:10px 14px;
    border-radius:7px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    text-decoration:none!important;
    font-size:12px;
    line-height:1.2;
    font-weight:800;
    transition:.16s ease;
}

.mcpg-loc__button svg{
    width:17px;
    height:17px;
    fill:currentColor;
}

.mcpg-loc__button--primary{
    border:1px solid var(--mcpg-orange);
    background:var(--mcpg-orange);
    color:#fff!important;
}

.mcpg-loc__button--primary:hover{
    border-color:var(--mcpg-orange-dark);
    background:var(--mcpg-orange-dark);
    color:#fff!important;
}

.mcpg-loc__button--secondary{
    border:1px solid #dedede;
    background:#fff;
    color:#333!important;
}

.mcpg-loc__button--secondary:hover{
    border-color:rgba(245,130,32,.45);
    color:var(--mcpg-orange)!important;
}

@media(max-width:950px){
    .mcpg-loc__card{
        grid-template-columns:1fr;
    }

    .mcpg-loc__map{
        min-height:380px;
    }

    .mcpg-loc__info{
        border-top:1px solid var(--mcpg-border);
        border-left:0;
    }
}

@media(max-width:700px){
    .mcpg-loc{
        padding:22px 15px;
    }

    .mcpg-loc__map{
        min-height:320px;
    }

    .mcpg-loc__info{
        padding:24px 20px;
    }

    .mcpg-loc__icon{
        width:46px;
        height:46px;
        margin-bottom:16px;
        border-radius:13px;
    }

    .mcpg-loc__content p{
        font-size:14px!important;
    }
}
