
:root {
    --ls-brand: #8A7363;
    --ls-dark: #4A3A31;
    --ls-light: #FDFCFB;
    --ls-white: #FFFFFF;
    --ls-text: #2C2825;
    --ls-muted: #66615E;
    --ls-border: #F0ECE9;
    --ls-serif: 'Playfair Display', serif;
    --ls-main: 'Inter', system-ui, sans-serif;
}

.la-sofie-section,
.la-sofie-section * {
    box-sizing: border-box;
}

.la-sofie-section {
}

.la-sofie-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

/* HEADER */
.la-sofie-header {
    position: relative;
    z-index: 50;
    width: 100%;
    padding: 22px 12%;
    background: rgba(255, 255, 255, 0.08);
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.la-sofie-header.is-absolute {
    position: absolute;
    top: 0;
    left: 0;
}

.la-sofie-header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
}

.la-sofie-logo {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: #fff;
}

.la-sofie-logo-title {
}

.la-sofie-logo-subtitle {
    margin-top: 6px;
    text-transform: uppercase;
    opacity: .8;
}

.la-sofie-nav-links {
    display: flex;
    gap: 45px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.la-sofie-nav-links a {
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    transition: opacity .3s ease, color .3s ease;
}

.la-sofie-nav-links a:hover {
    opacity: .5;
}

.la-sofie-header-actions {
    display: flex;
    align-items: center;
    gap: 30px;
}

.la-sofie-header-btn {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 24px;
    border-radius: 40px;
    border: 1px solid rgba(255,255,255,.4);
    background: transparent;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    transition: all .3s ease;
}

.la-sofie-header-icon {
    display: inline-flex;
    color: #fff;
    transition: all .3s ease;
}

/* HERO */
.la-sofie-hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    padding: 0 12%;
    background-color: #6d6d6d;
    background-size: cover;
    background-position: center;
    overflow: hidden;
}

.la-sofie-hero-content {
    width: 100%;
    max-width: 550px;
    margin-top: 40px;
}

.la-sofie-hero-title {
    margin: 0 0 25px;
    color: #fff;
}

.la-sofie-hero-desc {
    margin: 0 0 40px;
    color: rgba(255,255,255,.75);
}

.la-sofie-btn {
    width: fit-content;
    max-width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 36px;
    border-radius: 40px;
    text-decoration: none;
    text-transform: uppercase;
    transition: all .3s ease;
}

.la-sofie-hero-btn {
    background: #fff;
    color: var(--ls-brand);
}

.la-sofie-hero-line {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(to right, transparent, var(--ls-brand), transparent);
    z-index: 2;
}

.la-sofie-hero-tab {
    position: absolute;
    left: 50%;
    bottom: -15px;
    transform: translateX(-50%);
    width: 32px;
    height: 30px;
    border-radius: 2px 2px 6px 6px;
    background: linear-gradient(to bottom, rgba(138,115,99,.7), var(--ls-brand));
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 3;
}

.la-sofie-hero-tab svg {
    width: 14px;
    height: 14px;
    stroke: #fff;
}

/* COMMON */
.la-sofie-label {
    display: block;
    color: var(--ls-brand);
    text-transform: uppercase;
}

.la-sofie-title {
    margin: 0;
    color: var(--ls-text);
}

.la-sofie-text {
    color: var(--ls-muted);
}

/* SOBRE */
.la-sofie-sobre {
    padding: 120px 12%;
    background: var(--ls-light);
}

.la-sofie-sobre-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 100px;
}

.la-sofie-sobre-content {
    flex: 1;
    max-width: 500px;
}

.la-sofie-sobre-title {
    margin: 0 0 35px;
    color: var(--ls-text);
}

.la-sofie-sobre-text {
    margin: 0 0 25px;
}

.la-sofie-sobre-images {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.la-sofie-pill {
    width: 33%;
    max-width: 160px;
    aspect-ratio: 1 / 2.8;
    border-radius: 999px;
    object-fit: cover;
    background: #E6E0DB;
    box-shadow: 0 10px 30px rgba(0,0,0,.05);
}

.la-sofie-pill:nth-child(1) { transform: translateY(20px); }
.la-sofie-pill:nth-child(2) { transform: translateY(-20px); }
.la-sofie-pill:nth-child(3) { transform: translateY(20px); }

/* DIFERENCIAIS */
.la-sofie-diferenciais {
    padding: 100px 12% 140px;
    background: #fff;
    text-align: center;
}

.la-sofie-dif-header {
    max-width: 750px;
    margin: 0 auto 60px;
}

.la-sofie-dif-title {
}

.la-sofie-cards-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.la-sofie-card {
    min-height: 170px;
    padding: 25px 20px;
    border-radius: 10px;
    border: 1px solid var(--ls-border);
    background: #fff;
    text-align: left;
    display: flex;
    flex-direction: column;
    transition: all .3s ease;
}

.la-sofie-card-icon {
    display: inline-flex;
    width: fit-content;
    color: var(--ls-brand);
    transition: all .3s ease;
}

.la-sofie-card-text {
    margin: 0;
    color: var(--ls-text);
    transition: all .3s ease;
}

.la-sofie-card:hover {
    background: var(--ls-brand);
    border-color: var(--ls-brand);
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(138,115,99,.2);
}

.la-sofie-card:hover .la-sofie-card-icon,
.la-sofie-card:hover .la-sofie-card-text {
    color: #fff;
}

.la-sofie-dif-footer {
    max-width: 850px;
    margin: 0 auto;
}

.la-sofie-dif-footer-text {
    margin: 0 0 60px;
}

.la-sofie-slogan {
    margin: 0;
    color: var(--ls-text);
}

.la-sofie-slogan span {
    display: block;
    margin-top: 10px;
    color: var(--ls-brand);
}

/* LEGADO */
.la-sofie-legado {
    position: relative;
    padding: 120px 12%;
    background: radial-gradient(circle at 50% 0%, var(--ls-brand) 0%, var(--ls-dark) 80%);
    overflow: hidden;
    text-align: center;
}

.la-sofie-legado-inner {
    position: relative;
    z-index: 2;
}

.la-sofie-legado-label {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    color: #fff;
    text-transform: uppercase;
}

.la-sofie-legado-label::before,
.la-sofie-legado-label::after {
    content: '';
    width: 50px;
    height: 1px;
    background: rgba(255,255,255,.3);
}

.la-sofie-legado-title {
    margin: 0;
    color: #fff;
}

/* AMBIENTES */
.la-sofie-ambientes {
    padding: 120px 12%;
    background: #FAF6F3;
}

.la-sofie-ambientes-header {
    text-align: center;
}

.la-sofie-ambientes-title {
}

.la-sofie-feature {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.la-sofie-feature-img {
    width: 75%;
    height: 450px;
    background: #E0C7BA;
    background-size: cover;
    background-position: center;
    opacity: .85;
}

.la-sofie-feature-content {
    position: absolute;
    left: 0;
    top: 50%;
    width: 40%;
    transform: translateY(-50%);
    padding: 50px 40px;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,.8);
    background: linear-gradient(135deg, rgba(255,255,255,.65) 0%, rgba(255,255,255,.3) 100%);
    backdrop-filter: blur(16px);
    box-shadow: 0 25px 45px rgba(0,0,0,.08);
    z-index: 2;
}

.la-sofie-tag {
    display: block;
    color: #5C4E46;
    text-transform: uppercase;
}

.la-sofie-feature-title {
    margin: 0 0 20px;
    color: var(--ls-text);
}

.la-sofie-feature-text {
    margin: 0 0 30px;
    color: #5C4E46;
}

.la-sofie-outline-btn {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    padding: 10px 24px;
    border: 1px solid #5C4E46;
    border-radius: 40px;
    color: var(--ls-text);
    text-decoration: none;
    text-transform: uppercase;
    transition: all .3s ease;
}

.la-sofie-amb-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}

.la-sofie-amb-img-wrap {
    position: relative;
}

.la-sofie-amb-img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #E0C7BA;
    object-fit: cover;
    opacity: .85;
}

.la-sofie-amb-name {
    position: absolute;
    bottom: -15px;
    left: 0;
    padding: 8px 16px;
    border-radius: 6px;
    border: 1px solid rgba(255,255,255,.9);
    background: linear-gradient(135deg, rgba(255,255,255,.7), rgba(255,255,255,.4));
    backdrop-filter: blur(12px);
    color: var(--ls-text);
    white-space: nowrap;
}

.la-sofie-amb-desc {
    margin: 5px 0 0;
    color: var(--ls-muted);
}

/* ANDARES */
.la-sofie-andares {
    padding: 86px 12% 96px;
    background: #fff;
}

.la-sofie-andares-header {
    max-width: 820px;
}

.la-sofie-andares-title {
}

.la-sofie-andares-sub {
    max-width: 690px;
    margin: 0;
}

.la-sofie-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    width: fit-content;
    max-width: 100%;
    margin-top: 36px;
    padding: 18px;
    border-radius: 999px;
    border: 1px solid var(--ls-border);
    background: linear-gradient(135deg, #F9F7F5, #fff);
}

.la-sofie-tag-item {
    padding: 9px 18px;
    border-radius: 30px;
    border: 1px solid #E7DED8;
    background: #fff;
    color: var(--ls-text);
}

.la-sofie-floor {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 64px;
    padding: 30px;
    border: 1px solid var(--ls-border);
    border-radius: 28px;
    background: linear-gradient(135deg, #fff, #FDF9F7);
    box-shadow: 0 22px 55px rgba(74,58,49,.045);
}

.la-sofie-floor.reverse {
    flex-direction: row-reverse;
}

.la-sofie-floor-info {
    flex: 1;
    max-width: 460px;
}

.la-sofie-floor-title {
    position: relative;
    width: fit-content;
    display: inline-flex;
    align-items: center;
    margin: 0 0 18px;
    padding: 12px 24px 12px 48px;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(138,115,99,.14), rgba(138,115,99,.07));
    color: var(--ls-dark);
}

.la-sofie-floor-title::before {
    content: '';
    position: absolute;
    left: 16px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--ls-brand);
    box-shadow: 0 0 0 7px rgba(138,115,99,.1);
}

.la-sofie-floor-desc {
    margin: 0;
}

.la-sofie-carousel {
    position: relative;
    flex: 1;
    max-width: 520px;
    aspect-ratio: 16 / 10;
    padding: 12px;
    border-radius: 24px;
    background: #E0C7BA;
    box-shadow: 0 22px 50px rgba(74,58,49,.12);
}

.la-sofie-carousel-container {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 18px;
    background: linear-gradient(135deg, #E0C7BA, #F4EAE5);
}

.la-sofie-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity .7s ease;
}

.la-sofie-slide.active {
    opacity: 1;
    z-index: 2;
}

.la-sofie-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.la-sofie-carousel-nav {
    position: absolute;
    left: 28px;
    right: 28px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between;
    z-index: 5;
    pointer-events: none;
}

.la-sofie-carousel-btn {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255,255,255,.58);
    border-radius: 50%;
    background: rgba(255,255,255,.32);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    pointer-events: auto;
    backdrop-filter: blur(10px);
    transition: all .3s ease;
}

.la-sofie-dots {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 5;
    display: flex;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 999px;
    background: rgba(255,255,255,.28);
}

.la-sofie-dot {
    width: 7px;
    height: 7px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.55);
    cursor: pointer;
    transition: all .3s ease;
}

.la-sofie-dot.active {
    width: 20px;
    border-radius: 4px;
    background: #fff;
}

/* PLANOS */
.la-sofie-planos {
    padding: 100px 12% 160px;
    background: radial-gradient(circle at 50% 0%, var(--ls-brand) 0%, var(--ls-dark) 80%);
}

.la-sofie-planos-header {
    text-align: center;
}

.la-sofie-planos-title {
    color: #fff;
}

.la-sofie-planos-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

.la-sofie-plan-card {
    padding: 40px 30px;
    border-radius: 20px;
    border: 1px solid rgba(255,255,255,.15);
    background: linear-gradient(135deg, rgba(255,255,255,.1), rgba(255,255,255,.02));
    box-shadow: 0 20px 40px rgba(0,0,0,.2);
    transition: all .3s ease;
}

.la-sofie-plan-card:hover {
    transform: translateY(-8px);
}

.la-sofie-plan-icon {
    display: inline-flex;
    color: #fff;
    transition: all .3s ease;
}

.la-sofie-plan-name {
    margin: 0 0 12px;
    color: #fff;
}

.la-sofie-plan-badge {
    display: inline-block;
    padding: 6px 14px;
    border-radius: 30px;
    background: var(--ls-light);
    color: var(--ls-dark);
    text-transform: uppercase;
}

.la-sofie-plan-desc {
    margin: 0;
    color: rgba(255,255,255,.8);
}

.la-sofie-planos-cta {
    text-align: center;
}

.la-sofie-planos-btn {
    border: 1px solid rgba(255,255,255,.4);
    background: transparent;
    color: #fff;
    padding: 12px 36px;
}

/* INCLUSOS */
.la-sofie-inclusos {
    padding: 60px 12% 100px;
    background: var(--ls-light);
}

.la-sofie-inclusos-box {
    max-width: 950px;
    margin: 0 auto 40px;
    padding: 50px 40px;
    border-radius: 24px;
    border: 1px solid var(--ls-border);
    background: linear-gradient(135deg, #fff, #FDF9F7);
}

.la-sofie-inclusos-title {
    margin: 0 0 40px;
    text-align: center;
    color: var(--ls-text);
}

.la-sofie-inclusos-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
}

.la-sofie-incluso-item {
    flex: 1 1 calc(33.333% - 15px);
    min-width: 260px;
    max-width: 320px;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 18px 20px;
    border: 1px solid var(--ls-border);
    border-radius: 14px;
    background: #fff;
    transition: all .3s ease;
}

.la-sofie-incluso-item:hover {
    transform: translateY(-3px);
    background: var(--ls-brand);
    border-color: var(--ls-brand);
}

.la-sofie-incluso-icon {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: 10px;
    background: rgba(138,115,99,.08);
    color: var(--ls-brand);
    transition: all .3s ease;
}

.la-sofie-incluso-text {
    color: var(--ls-muted);
    transition: all .3s ease;
}

.la-sofie-incluso-item:hover .la-sofie-incluso-icon,
.la-sofie-incluso-item:hover .la-sofie-incluso-text {
    color: #fff;
}

.la-sofie-fechamento {
    max-width: 750px;
    margin: 0 auto;
    text-align: center;
}

.la-sofie-fechamento p {
    margin: 0;
    color: var(--ls-muted);
    text-transform: uppercase;
}

.la-sofie-fechamento span {
    display: block;
    margin-top: 10px;
    color: var(--ls-text);
    font-style: italic;
    text-transform: none;
}

/* LOCAL */
.la-sofie-local {
    padding: 100px 12%;
    background: #fff;
}

.la-sofie-local-wrap {
    display: flex;
    gap: 60px;
    align-items: flex-start;
}

.la-sofie-local-left,
.la-sofie-local-right {
    flex: 1;
}

.la-sofie-local-right {
    display: flex;
    flex-direction: column;
    gap: 50px;
    margin-top: 80px;
}

.la-sofie-local-title {
}

.la-sofie-local-desc {
    margin: 0 0 50px;
}

.la-sofie-map,
.la-sofie-photo {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 24px;
    background: #E6E0DB;
    box-shadow: 0 20px 40px rgba(0,0,0,.05);
}

.la-sofie-photo {
    background-size: cover;
    background-position: center;
}

.la-sofie-seal {
    position: absolute;
    top: -25px;
    right: -25px;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.28);
    border: 1px solid rgba(255, 255, 255, 0.42);
    color: var(--ls-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 12px;
    box-shadow: 0 18px 40px rgba(0,0,0,.10);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.la-sofie-info-item {
    display: flex;
    align-items: flex-start;
    gap: 18px;
}

.la-sofie-info-icon {
    display: inline-flex;
    color: var(--ls-brand);
    flex-shrink: 0;
}

.la-sofie-info-text strong {
    display: block;
    color: var(--ls-text);
}

.la-sofie-info-text span {
    color: var(--ls-muted);
}

/* CTA */
.la-sofie-cta {
    padding: 60px 12% 100px;
    background: #fff;
}

.la-sofie-cta-box {
    position: relative;
    overflow: hidden;
    padding: 100px 40px;
    border-radius: 24px;
    background-size: cover;
    background-position: center;
    text-align: center;
    box-shadow: 0 30px 60px rgba(74,58,49,.15);
}

.la-sofie-cta-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(74,58,49,.88), rgba(44,40,37,.95));
    z-index: 1;
}

.la-sofie-cta-inner {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 0 auto;
}

.la-sofie-cta-label {
    display: block;
    color: rgba(255,255,255,.7);
    text-transform: uppercase;
}

.la-sofie-cta-title {
    margin: 0 0 45px;
    color: #fff;
}

.la-sofie-cta-title em {
    color: #E0C7BA;
    font-style: italic;
}

.la-sofie-cta-btn {
    border-radius: 6px;
    background: #E0C7BA;
    color: var(--ls-dark);
}

/* FOOTER */
.la-sofie-footer {
    padding: 40px 12%;
    background: #fff;
}

.la-sofie-footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1.5fr;
    gap: 60px;
}

.la-sofie-footer-brand p,
.la-sofie-footer-contact p,
.la-sofie-footer-links a,
.la-sofie-footer-copy {
    color: var(--ls-muted);
    text-decoration: none;
}

.la-sofie-footer-title {
    margin: 0 0 30px;
    color: var(--ls-dark);
    text-transform: uppercase;
}

.la-sofie-footer-links {
    display: flex;
    flex-direction: column;
    gap: 16px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.la-sofie-footer-bottom {
    padding-top: 40px;
    border-top: 1px solid var(--ls-border);
}

/* RESPONSIVO */
@media (max-width: 1024px) {
    .la-sofie-cards-grid,
    .la-sofie-amb-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .la-sofie-planos-grid {
        grid-template-columns: 1fr;
        max-width: 460px;
        margin-left: auto;
        margin-right: auto;
    }
}

@media (max-width: 900px) {
    .la-sofie-sobre-inner,
    .la-sofie-floor,
    .la-sofie-floor.reverse,
    .la-sofie-local-wrap {
        flex-direction: column;
    }

    .la-sofie-sobre-content {
        max-width: 100%;
        text-align: center;
    }

    .la-sofie-feature {
        flex-direction: column;
        justify-content: flex-start;
    }

    .la-sofie-feature-img {
        width: 100%;
        height: 350px;
    }

    .la-sofie-feature-content {
        position: relative;
        width: 90%;
        transform: translateY(-40px);
        margin: 0 auto;
    }

    .la-sofie-local-right {
        margin-top: 0;
    }
}

@media (max-width: 768px) {
    .la-sofie-header,
    .la-sofie-hero,
    .la-sofie-sobre,
    .la-sofie-diferenciais,
    .la-sofie-legado,
    .la-sofie-ambientes,
    .la-sofie-andares,
    .la-sofie-planos,
    .la-sofie-inclusos,
    .la-sofie-local,
    .la-sofie-cta,
    .la-sofie-footer {
        padding-left: 5%;
        padding-right: 5%;
    }

    .la-sofie-header-inner {
        flex-direction: column;
        gap: 20px;
    }

    .la-sofie-nav-links {
        display: none;
    }

    .la-sofie-hero {
        padding-top: 120px;
        padding-bottom: 80px;
        min-height: 90vh;
    }

    .la-sofie-hero-title {
    }

    .la-sofie-cards-grid,
    .la-sofie-amb-grid {
        grid-template-columns: 1fr;
    }

    .la-sofie-legado-title {
    }

    .la-sofie-cta-title {
    }

    .la-sofie-footer-grid {
        grid-template-columns: 1fr;
        text-align: center;
    }
}


.la-sofie-logo-img {
    display: block;
    width: 140px;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

.la-sofie-logo-text-wrap {
    display: flex;
    flex-direction: column;
}


/* Correção geral para ícones da biblioteca do Elementor */
.la-sofie-card-icon,
.la-sofie-plan-icon,
.la-sofie-incluso-icon,
.la-sofie-info-icon,
.la-sofie-header-icon,
.la-sofie-cta-btn {
}

.la-sofie-card-icon i,
.la-sofie-plan-icon i,
.la-sofie-incluso-icon i,
.la-sofie-info-icon i,
.la-sofie-header-icon i {
    display: inline-block;
}

.la-sofie-card-icon svg,
.la-sofie-plan-icon svg,
.la-sofie-incluso-icon svg,
.la-sofie-info-icon svg,
.la-sofie-header-icon svg {
    display: block;
    width: 1em;
    height: 1em;
    fill: currentColor;
}

.la-sofie-cta-btn svg,
.la-sofie-cta-btn i {
    width: 1em;
    height: 1em;
    fill: currentColor;
}


.la-sofie-amb-video {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    background: #E0C7BA;
    opacity: .85;
}


/* Sobre - moldura cápsula real */
.la-sofie-pill-frame {
    width: 33%;
    max-width: 160px;
    aspect-ratio: 1 / 2.8;
    border-radius: 999px;
    overflow: hidden;
    background: #E6E0DB;
    box-shadow: 0 10px 30px rgba(0,0,0,.05);
    flex-shrink: 0;
}

.la-sofie-pill-frame:nth-child(1) { transform: translateY(20px); }
.la-sofie-pill-frame:nth-child(2) { transform: translateY(-20px); }
.la-sofie-pill-frame:nth-child(3) { transform: translateY(20px); }

.la-sofie-pill-frame img,
.la-sofie-pill-frame .la-sofie-pill-placeholder {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: inherit;
}

.la-sofie-pill-frame img {
    object-fit: cover;
    object-position: center;
}

.la-sofie-pill-placeholder {
    background: #E6E0DB;
}

@media (max-width: 768px) {
    .la-sofie-pill-frame {
        max-width: 120px;
    }
}


/* Glass adjustments */
.la-sofie-header .la-sofie-container {
    position: relative;
}

.la-sofie-seal {
    overflow: hidden;
}


/* Header compacto e menu mobile */
.la-sofie-header-inner {
    min-height: 58px;
}

.la-sofie-mobile-toggle {
    display: none;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255,255,255,.35);
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    color: #fff;
    align-items: center;
    justify-content: center;
    padding: 0;
    cursor: pointer;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition: all .25s ease;
}

.la-sofie-mobile-toggle span {
    display: block;
    width: 16px;
    height: 1.5px;
    background: currentColor;
    border-radius: 999px;
    position: relative;
}

.la-sofie-mobile-toggle span::before,
.la-sofie-mobile-toggle span::after {
    content: '';
    position: absolute;
    left: 0;
    width: 16px;
    height: 1.5px;
    background: currentColor;
    border-radius: 999px;
    transition: all .25s ease;
}

.la-sofie-mobile-toggle span::before {
    top: -6px;
}

.la-sofie-mobile-toggle span::after {
    top: 6px;
}

.la-sofie-header.is-open .la-sofie-mobile-toggle span {
    background: transparent;
}

.la-sofie-header.is-open .la-sofie-mobile-toggle span::before {
    top: 0;
    transform: rotate(45deg);
}

.la-sofie-header.is-open .la-sofie-mobile-toggle span::after {
    top: 0;
    transform: rotate(-45deg);
}

@media (max-width: 1024px) {
    .la-sofie-header-inner {
        min-height: 54px;
        flex-wrap: wrap;
    }

    .la-sofie-mobile-toggle {
        display: inline-flex;
    }

    .la-sofie-header nav {
        order: 5;
        width: 100%;
        display: none;
    }

    .la-sofie-header.is-open nav {
        display: block;
    }

    .la-sofie-nav-links {
        display: flex;
        flex-direction: column;
        gap: 0;
        width: 100%;
        margin-top: 14px;
        padding: 12px;
        border-radius: 18px;
        background: rgba(255,255,255,.14);
        border: 1px solid rgba(255,255,255,.22);
        backdrop-filter: blur(16px);
        -webkit-backdrop-filter: blur(16px);
    }

    .la-sofie-nav-links li {
        width: 100%;
    }

    .la-sofie-nav-links a {
        display: block;
        padding: 12px 10px;
    }

    .la-sofie-header-actions {
        margin-left: auto;
    }
}

@media (max-width: 768px) {
    .la-sofie-header-inner {
        flex-direction: row;
        gap: 12px;
    }

    .la-sofie-header-actions {
        gap: 12px;
    }

    .la-sofie-header-btn {
        display: none;
    }
}


/* V10 - correção do header mobile/tablet */
@media (max-width: 1024px) {
    .la-sofie-header {
        padding-left: 5%;
        padding-right: 5%;
    }

    .la-sofie-header-inner {
        width: 100%;
        max-width: 100%;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 12px;
    }

    .la-sofie-logo {
        order: 1;
        margin-right: auto;
        flex: 0 1 auto;
    }

    .la-sofie-mobile-toggle {
        order: 2;
        margin-left: auto;
        margin-right: 0;
        flex: 0 0 auto;
        display: inline-flex;
    }

    .la-sofie-header-actions {
        order: 3;
        display: none;
    }

    .la-sofie-header nav {
        order: 4;
        width: 100%;
        display: none;
    }

    .la-sofie-header.is-open nav {
        display: block;
    }

    .la-sofie-nav-links {
        width: 100%;
        margin-top: 10px;
    }
}

@media (max-width: 768px) {
    .la-sofie-header {
        padding-top: 12px;
        padding-bottom: 12px;
    }

    .la-sofie-logo-img {
        max-height: 38px;
        width: auto;
    }
}

/* V11 - planos e hero manual */
.la-sofie-planos-btn {
    transition: all .3s ease;
}
.la-sofie-hero {
    background-repeat: no-repeat;
}


/* V12 - shape/selo dos planos */
.la-sofie-plan-badge {
    border: 1px solid transparent;
    transition: all .3s ease;
}


/* V13 - Hero com imagem manual real */
.la-sofie-hero {
    background-repeat: no-repeat;
    background-position: var(--ls-hero-x, 50%) var(--ls-hero-y, 50%);
    background-size: var(--ls-hero-size, cover);
}


/* V14 - traço acima do ícone e shape degradê dos planos */
.la-sofie-plan-icon {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--ls-plan-line-gap, 12px);
}

.la-sofie-plan-icon::before {
    content: '';
    display: block;
    width: var(--ls-plan-line-width, 38px);
    height: var(--ls-plan-line-height, 2px);
    border-radius: 999px;
    background: var(--ls-plan-line-color, #8A7363);
}

.la-sofie-plan-badge {
    --ls-badge-grad-1: #CBB6A6;
    --ls-badge-grad-2: #A98A74;
    --ls-badge-grad-hover-1: #D7C6B9;
    --ls-badge-grad-hover-2: #B69177;
    background-image: linear-gradient(90deg, var(--ls-badge-grad-1), var(--ls-badge-grad-2));
    background-color: transparent;
}

.la-sofie-plan-card:hover .la-sofie-plan-badge {
    background-image: linear-gradient(90deg, var(--ls-badge-grad-hover-1), var(--ls-badge-grad-hover-2));
}


/* V15 - Hero com imagem em camada controlável */
.la-sofie-hero {
    background-image: none;
}

.la-sofie-hero-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

.la-sofie-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: var(--ls-hero-fit, cover);
    object-position: var(--ls-hero-x, 50%) var(--ls-hero-y, 50%);
    transform: translate(var(--ls-hero-move-x, 0px), var(--ls-hero-move-y, 0px)) scale(var(--ls-hero-scale, 1));
    transform-origin: center center;
    display: block;
}

.la-sofie-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: var(--ls-hero-overlay, transparent);
    pointer-events: none;
}

.la-sofie-hero > .la-sofie-container {
    position: relative;
    z-index: 2;
}

.la-sofie-hero-line,
.la-sofie-hero-tab {
    z-index: 3;
}


/* V18 - quebra de linha da Hero sem espaçamento duplicado */
.la-sofie-hero-title,
.la-sofie-hero-desc {
    white-space: normal;
}


/* V17 - rodapé com contatos clicáveis */
.la-sofie-footer-contact a,
.la-sofie-footer-social-link {
    color: inherit;
    text-decoration: none;
    transition: all .3s ease;
}

.la-sofie-footer-contact a:hover,
.la-sofie-footer-social-link:hover {
    color: var(--ls-brand);
}

.la-sofie-footer-social {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
}

.la-sofie-footer-social-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    border: 1px solid var(--ls-border);
    color: var(--ls-dark);
}

.la-sofie-footer-social-link svg {
    width: 1em;
    height: 1em;
    fill: currentColor;
}


/* V19 - cor editável do texto Instagram no rodapé */
.la-sofie-footer-social-text {
    color: inherit;
    text-decoration: none;
    transition: all .3s ease;
}


/* V20 - efeito vidro no subtítulo da Hero */
.la-sofie-hero-desc.is-glass {
    display: inline-block;
    max-width: 100%;
    padding: var(--ls-hero-desc-pad, 20px 24px);
    border-radius: var(--ls-hero-desc-radius, 18px);
    background: var(--ls-hero-desc-bg, rgba(74, 58, 49, 0.24));
    border: 1px solid var(--ls-hero-desc-border, rgba(255, 255, 255, 0.22));
    box-shadow: var(--ls-hero-desc-shadow, 0 18px 45px rgba(0,0,0,.10));
    backdrop-filter: blur(var(--ls-hero-desc-blur, 14px));
    -webkit-backdrop-filter: blur(var(--ls-hero-desc-blur, 14px));
}


/* V21 - respiro inferior da Hero */
.la-sofie-hero {
    padding-top: var(--ls-hero-pad-top, 0px);
    padding-bottom: var(--ls-hero-pad-bottom, 90px);
}

.la-sofie-hero-content {
    padding-top: var(--ls-hero-content-pad-top, 0px);
    padding-bottom: var(--ls-hero-content-pad-bottom, 0px);
}

.la-sofie-hero-btn {
}


/* V22 - base responsiva extra */
@media (max-width: 1024px) {
    .la-sofie-footer-grid {
        gap: 36px;
    }
}

@media (max-width: 768px) {
    .la-sofie-feature-content {
        width: 92%;
    }
}


/* V23 - efeitos clean premium ao rolar */
.la-sofie-section {
    scroll-margin-top: 90px;
}

.la-sofie-reveal {
    opacity: 0;
    transform: translateY(28px);
    filter: blur(6px);
    transition:
        opacity .9s cubic-bezier(.16, 1, .3, 1),
        transform .9s cubic-bezier(.16, 1, .3, 1),
        filter .9s cubic-bezier(.16, 1, .3, 1);
    will-change: opacity, transform, filter;
}

.la-sofie-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
}

.la-sofie-reveal-delay-1 { transition-delay: .08s; }
.la-sofie-reveal-delay-2 { transition-delay: .16s; }
.la-sofie-reveal-delay-3 { transition-delay: .24s; }
.la-sofie-reveal-delay-4 { transition-delay: .32s; }

.la-sofie-soft-line {
    position: relative;
}

.la-sofie-soft-line::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -18px;
    width: 42px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(138,115,99,.95), rgba(224,199,186,.12));
    transform-origin: left center;
    transform: scaleX(0);
    transition: transform .9s cubic-bezier(.16, 1, .3, 1);
}

.la-sofie-soft-line.is-visible::after,
.is-visible .la-sofie-soft-line::after {
    transform: scaleX(1);
}

.la-sofie-card,
.la-sofie-plan-card,
.la-sofie-incluso-item,
.la-sofie-amb-card,
.la-sofie-floor,
.la-sofie-inclusos-box,
.la-sofie-feature-content,
.la-sofie-cta-box,
.la-sofie-local .la-sofie-map,
.la-sofie-local .la-sofie-photo {
    transition:
        transform .45s cubic-bezier(.16, 1, .3, 1),
        box-shadow .45s cubic-bezier(.16, 1, .3, 1),
        border-color .45s ease,
        background .45s ease,
        opacity .45s ease;
}

.la-sofie-amb-card:hover,
.la-sofie-inclusos-box:hover,
.la-sofie-local .la-sofie-map:hover,
.la-sofie-local .la-sofie-photo:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 60px rgba(74, 58, 49, .10);
}

.la-sofie-feature-img,
.la-sofie-amb-img,
.la-sofie-amb-video,
.la-sofie-slide img,
.la-sofie-photo,
.la-sofie-pill-frame img,
.la-sofie-hero-bg img {
    transition: transform 1.1s cubic-bezier(.16, 1, .3, 1), opacity .6s ease;
}

.la-sofie-feature:hover .la-sofie-feature-img,
.la-sofie-amb-card:hover .la-sofie-amb-img,
.la-sofie-amb-card:hover .la-sofie-amb-video,
.la-sofie-photo:hover,
.la-sofie-pill-frame:hover img {
    transform: scale(1.035);
}

.la-sofie-glow {
    position: relative;
    overflow: hidden;
}

.la-sofie-glow::before {
    content: '';
    position: absolute;
    inset: -40%;
    background:
        radial-gradient(circle at 20% 20%, rgba(255,255,255,.22), transparent 28%),
        radial-gradient(circle at 80% 10%, rgba(224,199,186,.18), transparent 30%),
        radial-gradient(circle at 50% 100%, rgba(138,115,99,.13), transparent 34%);
    opacity: .7;
    pointer-events: none;
    z-index: 0;
}

.la-sofie-glow > * {
    position: relative;
    z-index: 1;
}

.la-sofie-btn,
.la-sofie-header-btn,
.la-sofie-outline-btn,
.la-sofie-planos-btn,
.la-sofie-cta-btn {
    position: relative;
    overflow: hidden;
}

.la-sofie-btn::after,
.la-sofie-header-btn::after,
.la-sofie-outline-btn::after,
.la-sofie-planos-btn::after,
.la-sofie-cta-btn::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent 0%, rgba(255,255,255,.42) 50%, transparent 100%);
    transform: translateX(-120%);
    transition: transform .7s cubic-bezier(.16, 1, .3, 1);
    pointer-events: none;
}

.la-sofie-btn:hover::after,
.la-sofie-header-btn:hover::after,
.la-sofie-outline-btn:hover::after,
.la-sofie-planos-btn:hover::after,
.la-sofie-cta-btn:hover::after {
    transform: translateX(120%);
}

.la-sofie-header {
    transition: background-color .35s ease, box-shadow .35s ease, border-color .35s ease, backdrop-filter .35s ease;
}

.la-sofie-header.is-scrolled {
    background-color: rgba(255,255,255,.16);
    box-shadow: 0 18px 45px rgba(44,40,37,.08);
    border-bottom-color: rgba(255,255,255,.28);
}

.la-sofie-hero-bg img {
    animation: laSofieHeroBreath 12s ease-in-out infinite alternate;
}

@keyframes laSofieHeroBreath {
    from {
        transform: translate(var(--ls-hero-move-x, 0px), var(--ls-hero-move-y, 0px)) scale(var(--ls-hero-scale, 1));
    }
    to {
        transform: translate(var(--ls-hero-move-x, 0px), var(--ls-hero-move-y, 0px)) scale(calc(var(--ls-hero-scale, 1) + .025));
    }
}

@media (prefers-reduced-motion: reduce) {
    .la-sofie-reveal,
    .la-sofie-card,
    .la-sofie-plan-card,
    .la-sofie-incluso-item,
    .la-sofie-amb-card,
    .la-sofie-floor,
    .la-sofie-feature-img,
    .la-sofie-amb-img,
    .la-sofie-amb-video,
    .la-sofie-slide img,
    .la-sofie-photo,
    .la-sofie-pill-frame img,
    .la-sofie-hero-bg img {
        animation: none;
        transition: none;
        transform: none;
        filter: none;
        opacity: 1;
    }
}


/* V24 - conteúdo de texto separado por dispositivo */
.la-sofie-text-tablet,
.la-sofie-text-mobile {
    display: none;
}

@media (min-width: 769px) and (max-width: 1024px) {
    .la-sofie-has-tablet .la-sofie-text-desktop {
        display: none;
    }
    .la-sofie-has-tablet .la-sofie-text-tablet {
        display: inline;
    }
}

@media (max-width: 768px) {
    .la-sofie-has-mobile .la-sofie-text-desktop,
    .la-sofie-has-mobile .la-sofie-text-tablet {
        display: none;
    }
    .la-sofie-has-mobile .la-sofie-text-mobile {
        display: inline;
    }

    .la-sofie-has-tablet:not(.la-sofie-has-mobile) .la-sofie-text-desktop {
        display: none;
    }
    .la-sofie-has-tablet:not(.la-sofie-has-mobile) .la-sofie-text-tablet {
        display: inline;
    }
}


/* V25 - remover movimento em cards específicos e corrigir imagens do Sobre */
.la-sofie-no-hover-motion,
.la-sofie-no-hover-motion:hover {
    transform: none;
}

.la-sofie-no-hover-motion:hover {
    box-shadow: none;
}

.la-sofie-no-hover-motion .la-sofie-card-icon,
.la-sofie-no-hover-motion .la-sofie-card-text,
.la-sofie-no-hover-motion:hover .la-sofie-card-icon,
.la-sofie-no-hover-motion:hover .la-sofie-card-text {
    transform: none;
}

.la-sofie-pill-frame {
    position: relative;
    overflow: hidden;
    border-radius: 999px;
    flex-shrink: 0;
}

.la-sofie-pill-frame img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center center;
    border-radius: inherit;
}

.la-sofie-pill-frame:hover img {
    transform: none;
}


/* V26 - remover efeito dos cards de Ambientes selecionados */
.la-sofie-amb-card.la-sofie-no-hover-motion,
.la-sofie-amb-card.la-sofie-no-hover-motion:hover {
    transform: none;
    box-shadow: none;
}

.la-sofie-amb-card.la-sofie-no-hover-motion:hover .la-sofie-amb-img,
.la-sofie-amb-card.la-sofie-no-hover-motion:hover .la-sofie-amb-video,
.la-sofie-amb-card.la-sofie-no-hover-motion .la-sofie-amb-img,
.la-sofie-amb-card.la-sofie-no-hover-motion .la-sofie-amb-video {
    transform: none;
}

.la-sofie-amb-card.la-sofie-no-hover-motion:hover .la-sofie-amb-name,
.la-sofie-amb-card.la-sofie-no-hover-motion .la-sofie-amb-name {
    transform: none;
}


/* V27 - hover premium nas tags de especialidades */
.la-sofie-tag-item {
    transition:
        transform var(--ls-tag-transition-speed, .35s) cubic-bezier(.16, 1, .3, 1),
        background-color var(--ls-tag-transition-speed, .35s) ease,
        color var(--ls-tag-transition-speed, .35s) ease,
        border-color var(--ls-tag-transition-speed, .35s) ease,
        box-shadow var(--ls-tag-transition-speed, .35s) ease;
    transform-origin: center center;
}

.la-sofie-tag-item:hover {
    transform: scale(var(--ls-tag-hover-scale, 1.04));
    box-shadow: 0 10px 24px rgba(44, 40, 37, 0.08);
}


/* V28 - Hero compacta premium igual referência */
.la-sofie-hero.is-compact-premium {
    min-height: var(--ls-compact-hero-height, 430px);
    padding-top: var(--ls-compact-hero-pad-top, 56px);
    padding-bottom: var(--ls-compact-hero-pad-bottom, 58px);
    align-items: center;
}

.la-sofie-hero.is-compact-premium .la-sofie-container {
    width: 100%;
}

.la-sofie-hero.is-compact-premium .la-sofie-hero-content {
    max-width: var(--ls-compact-content-width, 430px);
}

.la-sofie-hero.is-compact-premium .la-sofie-hero-title {
}

.la-sofie-hero.is-compact-premium .la-sofie-hero-desc {
    max-width: var(--ls-compact-desc-width, 420px);
}

.la-sofie-hero.is-compact-premium .la-sofie-hero-desc.is-glass {
    padding: var(--ls-compact-desc-pad, 13px 18px);
    border-radius: var(--ls-compact-desc-radius, 14px);
}

.la-sofie-hero.is-compact-premium .la-sofie-hero-btn {
    padding: var(--ls-compact-btn-pad, 12px 28px);
}

.la-sofie-hero.is-compact-premium .la-sofie-hero-bg img {
    object-fit: cover;
    object-position: var(--ls-hero-x, 50%) var(--ls-hero-y, 50%);
}

@media (max-width: 1024px) {
    .la-sofie-hero.is-compact-premium {
        min-height: var(--ls-compact-hero-height-tablet, 520px);
        padding-top: 90px;
        padding-bottom: 60px;
    }

    .la-sofie-hero.is-compact-premium .la-sofie-hero-content {
        max-width: 430px;
    }

    .la-sofie-hero.is-compact-premium .la-sofie-hero-title {
    }
}

@media (max-width: 768px) {
    .la-sofie-hero.is-compact-premium {
        min-height: var(--ls-compact-hero-height-mobile, 640px);
        padding-top: 110px;
        padding-bottom: 70px;
    }

    .la-sofie-hero.is-compact-premium .la-sofie-hero-title {
    }

    .la-sofie-hero.is-compact-premium .la-sofie-hero-desc {
    }
}


/* V29 - Hero com opção de imagem inteira sem cortar */
.la-sofie-hero.is-image-contain .la-sofie-hero-bg img {
    object-fit: contain;
    transform: translate(var(--ls-hero-move-x, 0px), var(--ls-hero-move-y, 0px)) scale(var(--ls-hero-scale, 1));
}

.la-sofie-hero.is-image-contain .la-sofie-hero-bg {
    background: var(--ls-hero-empty-bg, #6d6d6d);
}

.la-sofie-hero.is-compact-premium.is-image-contain {
    min-height: var(--ls-compact-hero-height, 390px);
}

.la-sofie-hero.is-compact-premium.is-image-contain .la-sofie-hero-content {
    max-width: var(--ls-compact-content-width, 360px);
}

.la-sofie-hero.is-compact-premium.is-image-contain .la-sofie-hero-title {
}

.la-sofie-hero.is-compact-premium.is-image-contain .la-sofie-hero-desc {
    max-width: var(--ls-compact-desc-width, 330px);
}

.la-sofie-hero.is-compact-premium.is-image-contain .la-sofie-hero-desc.is-glass {
    padding: var(--ls-compact-desc-pad, 10px 14px);
}

.la-sofie-hero.is-compact-premium.is-image-contain .la-sofie-hero-btn {
    padding: var(--ls-compact-btn-pad, 10px 24px);
}


/* V30 - Hero sem corte real: imagem por largura total */
.la-sofie-hero.is-image-width .la-sofie-hero-bg {
    background: var(--ls-hero-empty-bg, #6d6d6d);
    overflow: hidden;
}

.la-sofie-hero.is-image-width .la-sofie-hero-bg img {
    width: var(--ls-hero-image-width, 100%);
    height: auto;
    min-width: 100%;
    min-height: auto;
    max-width: none;
    object-fit: unset;
    object-position: unset;
    position: absolute;
    left: var(--ls-hero-img-left, 50%);
    top: var(--ls-hero-img-top, 50%);
    transform: translate(-50%, -50%) scale(var(--ls-hero-width-scale, 1));
    animation: none;
}

.la-sofie-hero.is-image-width.is-compact-premium {
    min-height: var(--ls-compact-hero-height, 420px);
}

.la-sofie-hero.is-image-width .la-sofie-hero-content {
    position: relative;
    z-index: 2;
}


/* V31 - Hero respeitando proporção 16:9 da imagem */
.la-sofie-hero.is-hero-16x9 {
    aspect-ratio: 16 / 9;
    min-height: auto;
    height: auto;
    padding-top: 0;
    padding-bottom: 0;
    align-items: center;
}

.la-sofie-hero.is-hero-16x9 .la-sofie-hero-bg img {
    width: 100%;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    object-position: var(--ls-hero-x, 50%) var(--ls-hero-y, 50%);
    position: static;
    transform: scale(var(--ls-hero-scale, 1));
}

.la-sofie-hero.is-hero-16x9 .la-sofie-hero-content {
    max-width: var(--ls-compact-content-width, 430px);
}

.la-sofie-hero.is-hero-16x9 .la-sofie-hero-title {
}

.la-sofie-hero.is-hero-16x9 .la-sofie-hero-desc {
    max-width: var(--ls-compact-desc-width, 420px);
}

.la-sofie-hero.is-hero-16x9 .la-sofie-hero-btn {
}

@media (max-width: 1024px) {
    .la-sofie-hero.is-hero-16x9 {
        aspect-ratio: auto;
        min-height: 620px;
    }

    .la-sofie-hero.is-hero-16x9 .la-sofie-hero-bg img {
        object-fit: cover;
    }
}

@media (max-width: 768px) {
    .la-sofie-hero.is-hero-16x9 {
        min-height: 680px;
    }
}


/* V32 - organização do painel Elementor sem impacto visual no frontend */

/* V33 - painel organizado por elemento: título, subtítulo, botão, cards, imagens e espaçamentos */

/* V35 - tamanho de fonte explícito dentro de cada elemento do painel */


/* V36 - prioridade para controles de tamanho de fonte do Elementor */
.elementor-widget-la_sofie_hero .la-sofie-hero-title,
.elementor-widget-la_sofie_hero .la-sofie-hero-desc,
.elementor-widget-la_sofie_hero .la-sofie-hero-btn,
.elementor-widget-la_sofie_sobre .la-sofie-sobre-title,
.elementor-widget-la_sofie_sobre .la-sofie-sobre-text,
.elementor-widget-la_sofie_planos .la-sofie-planos-title,
.elementor-widget-la_sofie_planos .la-sofie-plan-name,
.elementor-widget-la_sofie_planos .la-sofie-plan-badge,
.elementor-widget-la_sofie_planos .la-sofie-plan-desc,
.elementor-widget-la_sofie_ambientes .la-sofie-ambientes-title,
.elementor-widget-la_sofie_ambientes .la-sofie-feature-title,
.elementor-widget-la_sofie_ambientes .la-sofie-feature-text,
.elementor-widget-la_sofie_ambientes .la-sofie-amb-name,
.elementor-widget-la_sofie_ambientes .la-sofie-amb-desc,
.elementor-widget-la_sofie_andares .la-sofie-andares-title,
.elementor-widget-la_sofie_andares .la-sofie-andares-sub,
.elementor-widget-la_sofie_andares .la-sofie-tag-item,
.elementor-widget-la_sofie_localizacao .la-sofie-local-title,
.elementor-widget-la_sofie_localizacao .la-sofie-local-desc,
.elementor-widget-la_sofie_cta .la-sofie-cta-title,
.elementor-widget-la_sofie_cta .la-sofie-cta-btn,
.elementor-widget-la_sofie_footer .la-sofie-footer a,
.elementor-widget-la_sofie_footer .la-sofie-footer p {
    text-size-adjust: 100%;
}


/* V37 - quebras de linha e controles de fonte funcionais */
.la-sofie-text-desktop,
.la-sofie-text-tablet,
.la-sofie-text-mobile {
    white-space: normal;
}

.la-sofie-hero-title br,
.la-sofie-hero-desc br,
.la-sofie-title br,
.la-sofie-text br,
.la-sofie-card-text br,
.la-sofie-plan-desc br,
.la-sofie-amb-desc br,
.la-sofie-feature-text br,
.la-sofie-footer br {
    display: block;
    content: "";
}

/* Quando modo compacto estiver ativo, aceitar variáveis dos controles comuns */
.la-sofie-hero.is-compact-premium .la-sofie-hero-title {
}

.la-sofie-hero.is-compact-premium .la-sofie-hero-desc {
}

.la-sofie-hero.is-compact-premium .la-sofie-hero-btn {
}


/* V38 - Hero limpa: opções técnicas ocultas, padrão premium aplicado automaticamente */
.la-sofie-hero.is-hero-16x9.is-compact-premium {
    overflow: hidden;
}


/* V39 - correção de hierarquia tipográfica e ornamentação base */

/* SOBRE */
.la-sofie-sobre {
    padding-top: clamp(80px, 9vw, 120px);
    padding-bottom: clamp(80px, 9vw, 120px);
}

.la-sofie-sobre-inner {
    align-items: center;
    gap: clamp(54px, 8vw, 110px);
}

.la-sofie-sobre-content {
    max-width: 460px;
}

.la-sofie-sobre .la-sofie-label {
}

.la-sofie-sobre-title {
}

.la-sofie-sobre-text {
}

.la-sofie-sobre-images {
    align-items: center;
    justify-content: center;
}

.la-sofie-pill-frame {
    width: clamp(112px, 11vw, 156px);
    max-width: clamp(112px, 11vw, 156px);
    aspect-ratio: 1 / 2.55;
    box-shadow: 0 18px 45px rgba(74, 58, 49, .08);
}

/* DIFERENCIAIS */
.la-sofie-diferenciais {
    padding-top: clamp(78px, 8vw, 110px);
    padding-bottom: clamp(78px, 8vw, 110px);
}

.la-sofie-dif-header {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
}

.la-sofie-dif-title {
}

.la-sofie-cards-grid {
    gap: clamp(18px, 2vw, 24px);
}

.la-sofie-card {
    min-height: 148px;
    padding: clamp(26px, 2.5vw, 34px) clamp(22px, 2vw, 30px);
    border-radius: 10px;
}

.la-sofie-card-icon,
.la-sofie-card-icon svg {
    width: 22px;
    height: 22px;
}

.la-sofie-card-text {
}

.la-sofie-dif-footer {
    max-width: 740px;
    margin: clamp(58px, 6vw, 78px) auto 0;
}

.la-sofie-dif-footer-text {
}

.la-sofie-slogan {
    margin-top: 30px;
}

.la-sofie-slogan span {
    display: block;
}

/* Responsivo: evitar texto esmagado */
@media (max-width: 1024px) {
    .la-sofie-sobre-inner {
        gap: 58px;
    }

    .la-sofie-card {
        min-height: 138px;
    }
}

@media (max-width: 768px) {
    .la-sofie-sobre-content {
        max-width: 100%;
    }

    .la-sofie-sobre-title,
    .la-sofie-dif-title {
    }

    .la-sofie-sobre-text,
    .la-sofie-card-text,
    .la-sofie-dif-footer-text {
    }

    .la-sofie-pill-frame {
        width: 31%;
        max-width: 118px;
    }

    .la-sofie-card {
        padding: 26px 22px;
    }
}


/* V40 - painel limpo e controle de espaçamento lateral */
.la-sofie-section > .la-sofie-container {
    max-width: var(--ls-container-max, 1180px);
    padding-left: var(--ls-container-pad-x, 24px);
    padding-right: var(--ls-container-pad-x, 24px);
}

.la-sofie-hero .la-sofie-container {
    max-width: var(--ls-hero-container-max, 1180px);
    padding-left: var(--ls-hero-pad-x, 24px);
    padding-right: var(--ls-hero-pad-x, 24px);
}

.la-sofie-hero-content {
    margin-left: var(--ls-hero-content-offset-x, 0px);
}

.la-sofie-sobre-content,
.la-sofie-dif-header,
.la-sofie-ambientes-header,
.la-sofie-andares-header,
.la-sofie-planos-header,
.la-sofie-local-left,
.la-sofie-cta-inner {
    max-width: var(--ls-text-block-max, unset);
}

@media (max-width: 768px) {
    .la-sofie-section > .la-sofie-container {
        padding-left: var(--ls-container-pad-x-mobile, 20px);
        padding-right: var(--ls-container-pad-x-mobile, 20px);
    }

    .la-sofie-hero .la-sofie-container {
        padding-left: var(--ls-hero-pad-x-mobile, 20px);
        padding-right: var(--ls-hero-pad-x-mobile, 20px);
    }
}


/* V41 - remover definitivamente efeito dos cards de Ambientes */
.la-sofie-amb-card,
.la-sofie-amb-card:hover {
    transform: none;
}

.la-sofie-amb-card:hover {
    box-shadow: none;
}

.la-sofie-amb-card .la-sofie-amb-img,
.la-sofie-amb-card .la-sofie-amb-video,
.la-sofie-amb-card:hover .la-sofie-amb-img,
.la-sofie-amb-card:hover .la-sofie-amb-video {
    transform: none;
}

.la-sofie-amb-card .la-sofie-amb-name,
.la-sofie-amb-card:hover .la-sofie-amb-name {
    transform: none;
}

/* Só volta o movimento se ativar manualmente no widget */
.la-sofie-amb-card.la-sofie-enable-hover-motion {
    transition:
        transform .45s cubic-bezier(.16, 1, .3, 1),
        box-shadow .45s cubic-bezier(.16, 1, .3, 1);
}

.la-sofie-amb-card.la-sofie-enable-hover-motion:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 60px rgba(74, 58, 49, .10);
}

.la-sofie-amb-card.la-sofie-enable-hover-motion:hover .la-sofie-amb-img,
.la-sofie-amb-card.la-sofie-enable-hover-motion:hover .la-sofie-amb-video {
    transform: scale(1.035);
}


/* V43 - Inclusos: ajuste somente dos textos, sem mudar estrutura */
.la-sofie-inclusos-title {
    color: #2C2825;
}

.la-sofie-incluso-text {
    color: #4F4945;
}

.la-sofie-fechamento,
.la-sofie-fechamento p {
    text-transform: uppercase;
    color: #8A7363;
}

.la-sofie-fechamento span {
    display: block;
    margin-top: 10px;
    text-transform: none;
    font-style: italic;
    color: #4A3A31;
}

@media (max-width: 768px) {
    .la-sofie-inclusos-title {
    }

    .la-sofie-incluso-text {
    }

    .la-sofie-fechamento span {
    }
}


/* V45 - Inclusos: fontes separadas no fechamento */
.la-sofie-fechamento,
.la-sofie-fechamento p {
    text-transform: uppercase;
    font-style: normal;
    color: #8A7363;
}

.la-sofie-fechamento span {
    display: block;
    margin-top: 10px;
    text-transform: none;
    font-style: italic;
    color: #4A3A31;
}


/* V46 - Inclusos: fechamento com duas fontes realmente separadas */
.la-sofie-fechamento {
    text-align: center;
}

.la-sofie-fechamento,
.la-sofie-fechamento p {
    font-style: normal;
}

/* Texto superior: primeiro span ou classe explícita */
.la-sofie-fechamento .la-sofie-fechamento-top,
.la-sofie-fechamento > span:first-child,
.la-sofie-fechamento p > span:first-child {
    display: block;
    text-transform: uppercase;
    font-style: normal;
    color: #8A7363;
    margin: 0;
}

/* Destaque: apenas último span ou classe explícita */
.la-sofie-fechamento .la-sofie-fechamento-destaque,
.la-sofie-fechamento > span:last-child,
.la-sofie-fechamento p > span:last-child {
    display: block;
    margin-top: 10px;
    text-transform: none;
    font-style: italic;
    color: #4A3A31;
}

/* Cancela regra antiga que deixava todos os spans serifados */
.la-sofie-fechamento span:not(.la-sofie-fechamento-destaque):not(:last-child) {
    font-style: normal;
}


/* V47 - Hero recriada do zero conforme referência */
.la-sofie-hero.v47-clean {
    position: relative;
    min-height: 760px;
    overflow: hidden;
    display: block;
    background: #d7cec4;
    --ls-hero-left-overlay: rgba(87, 62, 42, 0.34);
    --ls-hero-right-overlay: rgba(87, 62, 42, 0.04);
    --ls-hero-pos-x: 58%;
    --ls-hero-pos-y: 50%;
    --ls-hero-img-scale: 1;
}
.la-sofie-hero.v47-clean .la-sofie-hero-bg,
.la-sofie-hero.v47-clean .la-sofie-hero-overlay {
    position: absolute;
    inset: 0;
}
.la-sofie-hero.v47-clean .la-sofie-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: var(--ls-hero-pos-x) var(--ls-hero-pos-y);
    transform: scale(var(--ls-hero-img-scale));
    transform-origin: center center;
}
.la-sofie-hero.v47-clean .la-sofie-hero-overlay {
    background: linear-gradient(90deg, var(--ls-hero-left-overlay) 0%, rgba(87,62,42,0.16) 22%, var(--ls-hero-right-overlay) 62%, rgba(87,62,42,0.02) 100%);
    pointer-events: none;
}
.la-sofie-hero.v47-clean .la-sofie-container {
    position: relative;
    z-index: 2;
    min-height: inherit;
    max-width: 1180px;
    margin: 0 auto;
    padding: 32px;
    display: flex;
    align-items: center;
}
.la-sofie-hero.v47-clean .la-sofie-hero-content {
    width: 100%;
    max-width: 430px;
}
.la-sofie-hero.v47-clean .la-sofie-hero-title {
    margin: 0 0 18px;
    color: #fff;
}
.la-sofie-hero.v47-clean .la-sofie-hero-desc-box {
    max-width: 270px;
    margin: 0 0 14px;
    padding: 10px 14px;
    background: rgba(255,255,255,0.10);
    border: 1px solid rgba(255,255,255,0.28);
    border-radius: 12px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.15);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.la-sofie-hero.v47-clean .la-sofie-hero-desc {
    margin: 0;
    color: #fff;
}
.la-sofie-hero.v47-clean .la-sofie-hero-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    color: #8A7363;
    border: 1px solid transparent;
    text-decoration: none;
    text-transform: uppercase;
    padding: 11px 26px;
    border-radius: 22px;
    transition: all .28s ease;
}
.la-sofie-hero.v47-clean .la-sofie-hero-btn:hover {
    background: #F5F1EC;
    color: #8A7363;
    transform: translateY(-1px);
}
@media (max-width: 1024px) {
    .la-sofie-hero.v47-clean {
        min-height: 620px;
    }
    .la-sofie-hero.v47-clean .la-sofie-container {
        padding: 28px;
    }
}
@media (max-width: 767px) {
    .la-sofie-hero.v47-clean {
        min-height: 520px;
    }
    .la-sofie-hero.v47-clean .la-sofie-container {
        padding: 20px;
        align-items: center;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-content {
        max-width: 100%;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-title {
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-desc-box {
        max-width: 100%;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-desc {
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-btn {
    }
}


/* V48 - CTA recriada para cor do bloco e tamanho funcionarem */
.la-sofie-cta.v48-clean {
    padding: 60px 0;
    background: #fff;
}
.la-sofie-cta.v48-clean .la-sofie-container {
    max-width: 1240px;
    margin: 0 auto;
    padding-left: 24px;
    padding-right: 24px;
}
.la-sofie-cta.v48-clean .la-sofie-cta-box {
    position: relative;
    overflow: hidden;
    max-width: 960px;
    min-height: 420px;
    margin: 0 auto;
    padding: 70px 40px;
    border-radius: 26px;
    background-color: #5A4B43;
    background-size: cover;
    background-position: center;
    text-align: center;
    box-shadow: 0 30px 60px rgba(74,58,49,.10);
}
.la-sofie-cta.v48-clean .la-sofie-cta-overlay {
    position: absolute;
    inset: 0;
    background: rgba(63,48,41,0.84);
    z-index: 1;
}
.la-sofie-cta.v48-clean .la-sofie-cta-inner {
    position: relative;
    z-index: 2;
    max-width: 760px;
    margin: 0 auto;
    min-height: inherit;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.la-sofie-cta.v48-clean .la-sofie-cta-label {
    display: block;
    color: rgba(255,255,255,.78);
    text-transform: uppercase;
}
.la-sofie-cta.v48-clean .la-sofie-cta-title {
    margin: 0 0 34px;
    color: #fff;
}
.la-sofie-cta.v48-clean .la-sofie-cta-title em {
    color: #E7C7B7;
    font-style: italic;
}
.la-sofie-cta.v48-clean .la-sofie-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border-radius: 8px;
    background: #D9C3B6;
    color: #fff;
    border: 1px solid transparent;
    text-decoration: none;
    text-transform: uppercase;
    padding: 15px 34px;
    transition: all .28s ease;
}
.la-sofie-cta.v48-clean .la-sofie-cta-btn svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
}
.la-sofie-cta.v48-clean .la-sofie-cta-btn:hover {
    background: #E4D2C8;
    color: #fff;
    transform: translateY(-1px);
}
@media (max-width: 767px) {
    .la-sofie-cta.v48-clean {
        padding: 44px 0;
    }
    .la-sofie-cta.v48-clean .la-sofie-container {
        padding-left: 18px;
        padding-right: 18px;
    }
    .la-sofie-cta.v48-clean .la-sofie-cta-box {
        min-height: 320px;
        padding: 44px 20px;
        border-radius: 20px;
    }
    .la-sofie-cta.v48-clean .la-sofie-cta-title {
    }
    .la-sofie-cta.v48-clean .la-sofie-cta-btn {
        width: 100%;
        padding: 14px 20px;
    }
}


/* =========================================================
   V56 CLEAN STABLE RESET
   Base visual estável para parar os bugs de estrutura.
   Preserva conteúdo/cores editadas no Elementor quando possível.
   ========================================================= */

:root{
    --ls-page-bg: #F7F5F2;
    --ls-section-bg: #F7F5F2;
    --ls-card-bg: #FFFFFF;
    --ls-soft-bg: #EFE9E4;
    --ls-text-main: #2F2A27;
    --ls-text-muted: #766D66;
    --ls-accent-soft: #A98F7D;
    --ls-border-soft: rgba(80, 66, 56, .13);
    --ls-shadow-soft: 0 24px 70px rgba(74, 58, 49, .06);
    --ls-container: 1120px;
}

.elementor-widget-la_sofie_header,
.elementor-widget-la_sofie_hero,
.elementor-widget-la_sofie_sobre,
.elementor-widget-la_sofie_diferenciais,
.elementor-widget-la_sofie_legado,
.elementor-widget-la_sofie_ambientes,
.elementor-widget-la_sofie_andares,
.elementor-widget-la_sofie_planos,
.elementor-widget-la_sofie_inclusos,
.elementor-widget-la_sofie_localizacao,
.elementor-widget-la_sofie_cta,
.elementor-widget-la_sofie_footer{
    width: 100%;
}

.la-sofie-section{
    box-sizing: border-box;
}

.la-sofie-container,
.la-sofie-header-inner,
.la-sofie-sobre-inner,
.la-sofie-local-wrap{
    box-sizing: border-box;
}

.la-sofie-section > .la-sofie-container,
.la-sofie-header-inner,
.la-sofie-sobre-inner,
.la-sofie-local-wrap,
.la-sofie-footer > .la-sofie-container{
    width: 100%;
    max-width: var(--ls-container);
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

/* HEADER */
.la-sofie-header{
    padding: 16px 0;
    background: rgba(255,255,255,.13);
    border-bottom: 1px solid rgba(255,255,255,.20);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}
.la-sofie-header-inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.la-sofie-nav-links{
    display: flex;
    align-items: center;
    gap: clamp(18px, 2.4vw, 34px);
}
.la-sofie-logo-title{
}
.la-sofie-logo-subtitle{
}

/* HERO */
.la-sofie-hero.v47-clean{
    min-height: clamp(620px, 47vw, 760px);
    background-color: #6d6d6d;
    --ls-hero-pos-x: 58%;
    --ls-hero-pos-y: 50%;
    --ls-hero-img-scale: 1;
}
.la-sofie-hero.v47-clean .la-sofie-container{
    max-width: var(--ls-container);
    padding-left: 24px;
    padding-right: 24px;
    align-items: center;
}
.la-sofie-hero.v47-clean .la-sofie-hero-content{
    max-width: 430px;
    margin-left: 0;
    transform: none;
}
.la-sofie-hero.v47-clean .la-sofie-hero-title{
}
.la-sofie-hero.v47-clean .la-sofie-hero-desc-box{
    max-width: 390px;
    padding: 14px 18px;
    border-radius: 16px;
}
.la-sofie-hero.v47-clean .la-sofie-hero-desc{
}
.la-sofie-hero.v47-clean .la-sofie-hero-btn{
    padding: 14px 30px;
    border-radius: 999px;
}

/* SOBRE */
.la-sofie-sobre{
    padding: clamp(86px, 8vw, 118px) 0;
    background: var(--ls-page-bg);
}
.la-sofie-sobre-inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(56px, 7vw, 100px);
}
.la-sofie-sobre-content{
    flex: 0 0 44%;
    max-width: 455px;
}
.la-sofie-sobre .la-sofie-label,
.la-sofie-local .la-sofie-label{
    display: block;
    text-transform: uppercase;
    color: var(--ls-accent-soft);
}
.la-sofie-sobre-title{
    margin: 0 0 28px;
}
.la-sofie-sobre-text{
    margin: 0 0 18px;
    color: var(--ls-text-muted);
}
.la-sofie-sobre-images{
    flex: 0 0 44%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 20px;
}
.la-sofie-pill{
    width: 30%;
    max-width: 132px;
    aspect-ratio: 1 / 2.45;
    border-radius: 999px;
    object-fit: cover;
}
.la-sofie-pill:nth-child(1){ transform: translateY(18px); }
.la-sofie-pill:nth-child(2){ transform: translateY(-18px); }
.la-sofie-pill:nth-child(3){ transform: translateY(18px); }

/* DIFERENCIAIS */
.la-sofie-diferenciais{
    padding: clamp(88px, 8vw, 116px) 0 clamp(98px, 9vw, 132px);
    background: var(--ls-page-bg);
    text-align: center;
}
.la-sofie-dif-header{
    max-width: 840px;
    margin: 0 auto 48px;
}
.la-sofie-dif-title{
    margin: 0;
    color: var(--ls-text-main);
}
.la-sofie-cards-grid{
    max-width: 1020px;
    margin: 0 auto 64px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}
.la-sofie-card{
    min-height: 146px;
    padding: 24px 20px 20px;
    border-radius: 11px;
    border: 1px solid var(--ls-border-soft);
    background: #fff;
    box-shadow: none;
    transform: none;
    text-align: left;
}
.la-sofie-card:hover{
    background: #fff;
    border-color: var(--ls-border-soft);
    box-shadow: none;
    transform: none;
}
.la-sofie-card-icon,
.la-sofie-card:hover .la-sofie-card-icon{
    color: #9B8577;
}
.la-sofie-card-text,
.la-sofie-card:hover .la-sofie-card-text{
    color: #403A36;
}
.la-sofie-dif-footer{
    max-width: 920px;
    margin: 0 auto;
}
.la-sofie-dif-footer-text{
    max-width: 850px;
    margin: 0 auto 52px;
    color: #918781;
}
.la-sofie-slogan{
    margin: 0 auto;
    color: var(--ls-text-main);
}
.la-sofie-slogan span{
    display: block;
    margin-top: 10px;
    color: #8E7768;
}

/* LEGADO */
.la-sofie-legado{
    padding: clamp(68px, 6vw, 92px) 0;
    background: #A18C7D;
    text-align: center;
}
.la-sofie-legado-label{
}
.la-sofie-legado-title{
}

/* AMBIENTES */
.la-sofie-ambientes{
    padding: clamp(86px, 8vw, 116px) 0;
    background: var(--ls-page-bg);
}
.la-sofie-ambientes-header{
    max-width: 760px;
    margin: 0 auto 54px;
    text-align: center;
}
.la-sofie-ambientes-title{
}
.la-sofie-feature{
    max-width: 980px;
    margin: 0 auto 56px;
    min-height: 390px;
}
.la-sofie-feature-img{
    width: 74%;
    height: 390px;
    border-radius: 4px;
}
.la-sofie-feature-content{
    width: 36%;
    max-width: 360px;
    padding: 36px 30px;
    border-radius: 12px;
}
.la-sofie-amb-grid{
    max-width: 980px;
    margin: 0 auto;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}
.la-sofie-amb-card,
.la-sofie-amb-card:hover{
    transform: none;
    box-shadow: none;
}

/* ANDARES */
.la-sofie-andares{
    padding: clamp(84px, 8vw, 112px) 0;
    background: var(--ls-page-bg);
}
.la-sofie-andares-header{
    max-width: 650px;
    margin: 0 0 38px;
}
.la-sofie-andares-title{
}
.la-sofie-tags{
    margin-top: 26px;
}
.la-sofie-floor{
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
    gap: 34px;
    padding: 24px;
    border-radius: 24px;
    box-shadow: 0 18px 50px rgba(74,58,49,.045);
}
.la-sofie-carousel{
    max-width: 490px;
}

/* PLANOS */
.la-sofie-planos{
    padding: clamp(82px, 7vw, 108px) 0;
    background: #5A4B43;
}
.la-sofie-planos-header{
}
.la-sofie-planos-title{
}
.la-sofie-planos-grid{
    max-width: 960px;
    margin: 0 auto 32px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}
.la-sofie-plan-card{
    padding: 28px 24px;
    border-radius: 16px;
    transform: none;
}
.la-sofie-plan-card:hover{
    transform: none;
}

/* INCLUSOS */
.la-sofie-inclusos{
    background: var(--ls-page-bg);
    padding: clamp(78px, 7vw, 110px) 0 clamp(94px, 8vw, 124px);
}
.la-sofie-inclusos-box{
    max-width: 1020px;
    margin: 0 auto 54px;
    padding: 52px 42px 50px;
    border-radius: 32px;
    border: 1px solid #E7DFD9;
    background: #F8F7F5;
    box-shadow: none;
}
.la-sofie-inclusos-title{
    margin: 0 0 38px;
    color: var(--ls-text-main);
    text-align: center;
}
.la-sofie-inclusos-grid{
    justify-content: center;
    gap: 16px 18px;
    max-width: 930px;
    margin: 0 auto;
}
.la-sofie-incluso-item{
    flex: 0 0 280px;
    min-width: 280px;
    max-width: 280px;
    min-height: 82px;
    padding: 18px 20px;
    gap: 16px;
    border-radius: 16px;
    border: 1px solid #E6DED8;
    background: #F5F3F1;
    transform: none;
}
.la-sofie-incluso-item:hover{
    transform: none;
    background: #F5F3F1;
    border-color: #E6DED8;
}
.la-sofie-incluso-icon{
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: #ECE8E5;
    color: #9A8373;
}
.la-sofie-incluso-text,
.la-sofie-incluso-item:hover .la-sofie-incluso-text{
    color: #736A64;
}
.la-sofie-fechamento{
    max-width: 980px;
    margin: 0 auto;
    text-align: center;
}
.la-sofie-fechamento p{
    margin: 0;
    color: #7E756F;
    text-transform: uppercase;
}
.la-sofie-fechamento span{
    display: block;
    margin-top: 14px;
    color: var(--ls-text-main);
    font-style: italic;
}

/* LOCALIZAÇÃO */
.la-sofie-local{
    background: var(--ls-page-bg);
    padding: clamp(86px, 8vw, 116px) 0;
}
.la-sofie-local-wrap{
    align-items: flex-start;
    gap: 58px;
}
.la-sofie-local-left{
    flex: 0 0 46%;
    max-width: 470px;
}
.la-sofie-local-right{
    flex: 0 0 46%;
    max-width: 488px;
    margin-top: 74px;
    gap: 30px;
}
.la-sofie-local-title{
    margin: 0 0 20px;
    color: var(--ls-text-main);
}
.la-sofie-local-desc{
    margin: 0 0 34px;
    color: var(--ls-text-muted);
}
.la-sofie-map{
    aspect-ratio: 1.24 / 1;
    border-radius: 20px;
    box-shadow: none;
    background: #EDE9E5;
}
.la-sofie-photo{
    aspect-ratio: 1.35 / 1;
    border-radius: 24px;
    border: 1.5px solid #A48367;
    box-shadow: none;
}
.la-sofie-seal{
    display: none;
}
.la-sofie-info-item{
    gap: 16px;
}
.la-sofie-info-icon{
    color: #A48367;
}
.la-sofie-info-text strong{
    color: var(--ls-text-main);
}
.la-sofie-info-text span{
    color: var(--ls-text-muted);
}

/* CTA */
.la-sofie-cta.v48-clean{
    padding: clamp(70px, 7vw, 96px) 0;
    background: var(--ls-page-bg);
}
.la-sofie-cta.v48-clean .la-sofie-cta-box{
    max-width: 820px;
    min-height: 270px;
    padding: 46px 34px;
    border-radius: 16px;
}
.la-sofie-cta.v48-clean .la-sofie-cta-title{
}

/* FOOTER */
.la-sofie-footer{
    padding: 46px 0 34px;
    background: var(--ls-page-bg);
}
.la-sofie-footer-grid{
}

/* TABLET */
@media (max-width: 1024px){
    :root{ --ls-container: 860px; }

    .la-sofie-section > .la-sofie-container,
    .la-sofie-header-inner,
    .la-sofie-sobre-inner,
    .la-sofie-local-wrap,
    .la-sofie-footer > .la-sofie-container{
        padding-left: 26px;
        padding-right: 26px;
    }

    .la-sofie-hero.v47-clean{
        min-height: 520px;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-content{
        max-width: 300px;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-title{
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-desc-box{
        max-width: 270px;
    }

    .la-sofie-sobre-inner{
        gap: 36px;
    }
    .la-sofie-sobre-content{
        flex: 0 0 48%;
    }
    .la-sofie-sobre-images{
        flex: 0 0 42%;
        gap: 12px;
    }
    .la-sofie-pill{
        max-width: 78px;
    }

    .la-sofie-cards-grid{
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: 700px;
    }
    .la-sofie-amb-grid{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .la-sofie-planos-grid{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .la-sofie-incluso-item{
        flex: 1 1 calc(50% - 18px);
        min-width: 0;
        max-width: none;
    }
    .la-sofie-local-wrap{
        gap: 28px;
    }
}

/* MOBILE */
@media (max-width: 767px){
    :root{ --ls-container: 430px; }

    .la-sofie-section > .la-sofie-container,
    .la-sofie-header-inner,
    .la-sofie-sobre-inner,
    .la-sofie-local-wrap,
    .la-sofie-footer > .la-sofie-container{
        padding-left: 18px;
        padding-right: 18px;
    }

    .la-sofie-header{
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .la-sofie-hero.v47-clean{
        min-height: 560px;
        --ls-hero-pos-x: 72%;
    }
    .la-sofie-hero.v47-clean .la-sofie-container{
        align-items: flex-start;
        padding-top: 34px;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-content{
        max-width: 185px;
        width: 52%;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-title{
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-desc-box{
        max-width: 165px;
        padding: 8px 9px;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-desc{
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-btn{
        padding: 8px 14px;
    }

    .la-sofie-sobre,
    .la-sofie-diferenciais,
    .la-sofie-ambientes,
    .la-sofie-andares,
    .la-sofie-planos,
    .la-sofie-inclusos,
    .la-sofie-local,
    .la-sofie-cta.v48-clean{
        padding-top: 48px;
        padding-bottom: 54px;
    }

    .la-sofie-sobre-inner{
        flex-direction: row;
        gap: 18px;
        align-items: flex-start;
    }
    .la-sofie-sobre-content{
        flex: 0 0 52%;
        max-width: 180px;
    }
    .la-sofie-sobre-images{
        flex: 0 0 40%;
        gap: 7px;
    }
    .la-sofie-pill{
        max-width: 42px;
    }

    .la-sofie-dif-title,
    .la-sofie-sobre-title,
    .la-sofie-ambientes-title,
    .la-sofie-andares-title,
    .la-sofie-planos-title,
    .la-sofie-local-title{
    }

    .la-sofie-cards-grid{
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
    .la-sofie-card{
        min-height: 92px;
        padding: 12px 10px;
    }
    .la-sofie-card-icon{
    }
    .la-sofie-card-text{
    }
    .la-sofie-slogan{
    }

    .la-sofie-feature{
        display: block;
        min-height: 0;
    }
    .la-sofie-feature-img{
        width: 100%;
        height: 190px;
    }
    .la-sofie-feature-content{
        position: relative;
        left: 10px;
        width: 165px;
        margin-top: -126px;
        transform: none;
        padding: 14px 12px;
    }
    .la-sofie-amb-grid{
        grid-template-columns: 1fr;
    }

    .la-sofie-floor,
    .la-sofie-floor.reverse{
        flex-direction: column;
        margin-left: auto;
        margin-right: auto;
        padding: 14px;
    }
    .la-sofie-floor-info,
    .la-sofie-carousel{
        width: 100%;
        max-width: none;
    }

    .la-sofie-planos-grid{
        grid-template-columns: 1fr;
        max-width: 290px;
    }

    .la-sofie-inclusos-box{
        padding: 24px 16px;
        border-radius: 18px;
    }
    .la-sofie-incluso-item{
        flex: 1 1 100%;
        min-width: 100%;
        max-width: 100%;
        min-height: 0;
        padding: 12px 12px;
    }
    .la-sofie-fechamento span{
    }

    .la-sofie-local-wrap{
        flex-direction: column;
        gap: 18px;
    }
    .la-sofie-local-left,
    .la-sofie-local-right{
        flex: none;
        width: 100%;
        max-width: none;
        margin-top: 0;
    }
    .la-sofie-map,
    .la-sofie-photo{
        aspect-ratio: 1 / 1;
        border-radius: 14px;
    }

    .la-sofie-cta.v48-clean .la-sofie-cta-box{
        max-width: 100%;
        min-height: 180px;
        padding: 24px 18px;
        border-radius: 12px;
    }
}


/* V57 - ajuste fino SOMENTE da tipografia/estrutura textual de Diferenciais */
@media (min-width: 1025px) {
  .la-sofie-diferenciais {
    padding-top: 92px;
    padding-bottom: 118px;
  }
  .la-sofie-dif-header {
    max-width: 760px;
    margin: 0 auto 44px;
  }
  .la-sofie-dif-title {
    max-width: 700px;
    margin: 0 auto;
    color: #332d29;
    text-align: center;
    text-wrap: balance;
  }
  .la-sofie-cards-grid {
  }
  .la-sofie-dif-footer {
    max-width: 840px;
    margin: 0 auto;
    text-align: center;
  }
  .la-sofie-dif-footer-text {
    max-width: 820px;
    margin: 0 auto 56px;
    color: #9a918b;
    text-align: center;
    text-wrap: balance;
  }
  .la-sofie-slogan {
    max-width: 760px;
    margin: 0 auto;
    color: #2f2a27;
    text-align: center;
    text-wrap: balance;
  }
  .la-sofie-slogan span {
    margin-top: 8px;
    color: #8e7768;
  }
}

@media (max-width: 1024px) and (min-width: 768px) {
  .la-sofie-dif-header { max-width: 560px; }
  .la-sofie-dif-title {
    text-align: center;
  }
  .la-sofie-dif-footer-text {
    max-width: 620px;
    text-align: center;
  }
  .la-sofie-slogan {
    max-width: 620px;
    text-align: center;
  }
  .la-sofie-slogan span { }
}

@media (max-width: 767px) {
  .la-sofie-dif-header {
    max-width: 290px;
  }
  .la-sofie-dif-title {
    text-align: center;
  }
  .la-sofie-dif-footer-text {
    max-width: 300px;
    text-align: center;
  }
  .la-sofie-slogan {
    max-width: 300px;
    text-align: center;
  }
  .la-sofie-slogan span {
  }
}


/* V58 - DIFERENCIAIS travado igual referência. Usa seletor com ID para ganhar dos controles antigos. */
@media (min-width: 1025px) {
    body .elementor .elementor-widget-la_sofie_diferenciais #diferenciais.la-sofie-diferenciais,
    body #diferenciais.la-sofie-diferenciais,
    body .la-sofie-dif-locked-v58 {
        background: #F7F6F4;
        padding: 92px 0 118px;
        text-align: center;
    }

    body #diferenciais.la-sofie-diferenciais > .la-sofie-container,
    body .la-sofie-dif-locked-v58 > .la-sofie-container {
        max-width: 1120px;
        width: 100%;
        margin: 0 auto;
        padding-left: 24px;
        padding-right: 24px;
    }

    body #diferenciais .la-sofie-dif-header,
    body .la-sofie-dif-locked-v58 .la-sofie-dif-header {
        max-width: 820px;
        margin: 0 auto 50px;
        padding: 0;
        text-align: center;
    }

    body #diferenciais .la-sofie-dif-title,
    body #diferenciais h2.la-sofie-dif-title,
    body .la-sofie-dif-locked-v58 .la-sofie-dif-title,
    body .la-sofie-dif-locked-v58 h2.la-sofie-dif-title {
        display: block;
        max-width: 760px;
        margin: 0 auto;
        padding: 0;
        color: #332D29;
        text-align: center;
        text-transform: none;
        text-decoration: none;
        white-space: normal;
    }

    body #diferenciais .la-sofie-cards-grid,
    body .la-sofie-dif-locked-v58 .la-sofie-cards-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 18px;
        max-width: 1020px;
        margin: 0 auto 66px;
        padding: 0;
    }

    body #diferenciais .la-sofie-card,
    body .la-sofie-dif-locked-v58 .la-sofie-card {
        min-height: 146px;
        padding: 24px 20px 20px;
        border-radius: 11px;
        border: 1px solid rgba(80,66,56,.13);
        background: #FFFFFF;
        box-shadow: none;
        transform: none;
        text-align: left;
    }

    body #diferenciais .la-sofie-card:hover,
    body .la-sofie-dif-locked-v58 .la-sofie-card:hover {
        background: #FFFFFF;
        border-color: rgba(80,66,56,.13);
        box-shadow: none;
        transform: none;
    }

    body #diferenciais .la-sofie-card-icon,
    body #diferenciais .la-sofie-card:hover .la-sofie-card-icon,
    body .la-sofie-dif-locked-v58 .la-sofie-card-icon,
    body .la-sofie-dif-locked-v58 .la-sofie-card:hover .la-sofie-card-icon {
        color: #9B8577;
        width: 22px;
        height: 22px;
    }

    body #diferenciais .la-sofie-card-text,
    body #diferenciais .la-sofie-card:hover .la-sofie-card-text,
    body .la-sofie-dif-locked-v58 .la-sofie-card-text,
    body .la-sofie-dif-locked-v58 .la-sofie-card:hover .la-sofie-card-text {
        color: #403A36;
        text-align: left;
    }

    body #diferenciais .la-sofie-dif-footer,
    body .la-sofie-dif-locked-v58 .la-sofie-dif-footer {
        max-width: 900px;
        margin: 0 auto;
        padding: 0;
        text-align: center;
    }

    body #diferenciais .la-sofie-dif-footer-text,
    body .la-sofie-dif-locked-v58 .la-sofie-dif-footer-text {
        display: block;
        max-width: 850px;
        margin: 0 auto 54px;
        padding: 0;
        color: #918781;
        text-align: center;
        text-transform: none;
        white-space: normal;
    }

    body #diferenciais .la-sofie-slogan,
    body .la-sofie-dif-locked-v58 .la-sofie-slogan {
        display: block;
        max-width: 820px;
        margin: 0 auto;
        padding: 0;
        color: #2F2A27;
        text-align: center;
        text-transform: none;
        white-space: normal;
    }

    body #diferenciais .la-sofie-slogan span,
    body .la-sofie-dif-locked-v58 .la-sofie-slogan span {
        display: block;
        margin-top: 8px;
        color: #8E7768;
        text-align: center;
    }
}

/* tablet/mobile mantém hierarquia sem quebrar */
@media (max-width: 1024px) and (min-width: 768px) {
    body #diferenciais .la-sofie-dif-title,
    body .la-sofie-dif-locked-v58 .la-sofie-dif-title {
        text-align: center;
    }
    body #diferenciais .la-sofie-dif-footer-text,
    body .la-sofie-dif-locked-v58 .la-sofie-dif-footer-text {
        text-align: center;
        max-width: 640px;
    }
    body #diferenciais .la-sofie-slogan,
    body #diferenciais .la-sofie-slogan span,
    body .la-sofie-dif-locked-v58 .la-sofie-slogan,
    body .la-sofie-dif-locked-v58 .la-sofie-slogan span {
        text-align: center;
    }
}

@media (max-width: 767px) {
    body #diferenciais .la-sofie-dif-title,
    body .la-sofie-dif-locked-v58 .la-sofie-dif-title {
        text-align: center;
    }
    body #diferenciais .la-sofie-dif-footer-text,
    body .la-sofie-dif-locked-v58 .la-sofie-dif-footer-text {
        max-width: 300px;
        text-align: center;
    }
    body #diferenciais .la-sofie-slogan,
    body #diferenciais .la-sofie-slogan span,
    body .la-sofie-dif-locked-v58 .la-sofie-slogan,
    body .la-sofie-dif-locked-v58 .la-sofie-slogan span {
        text-align: center;
    }
}

/* V59 - layout de diferenciais rigidamente travado */
@media (min-width:1025px){
 body #diferenciais .la-sofie-dif-header{max-width:820px;margin:0 auto 50px;text-align:center;}
 body #diferenciais .la-sofie-cards-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:1020px;margin:0 auto 66px;}
 body #diferenciais .la-sofie-dif-footer{max-width:900px;margin:0 auto;text-align:center;}
}


/* V60 - Diferenciais recriada com classes próprias, sem herdar controles antigos */
.v60-dif,
#diferenciais.v60-dif {
    background: #F7F6F4;
    padding: 92px 0 118px;
    margin: 0;
    text-align: center;
    box-sizing: border-box;
}

.v60-dif * {
    box-sizing: border-box;
}

.v60-dif-container {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
}

.v60-dif-header {
    max-width: 820px;
    margin: 0 auto 50px;
    padding: 0;
    text-align: center;
}

.v60-dif-title {
    display: block;
    max-width: 780px;
    margin: 0 auto;
    padding: 0;
    color: #332D29;
    text-align: center;
    text-transform: none;
}

.v60-dif-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    max-width: 1020px;
    margin: 0 auto 66px;
    padding: 0;
}

.v60-dif-card {
    min-height: 146px;
    padding: 24px 20px 20px;
    border-radius: 11px;
    border: 1px solid rgba(80, 66, 56, .13);
    background: #FFFFFF;
    box-shadow: none;
    transform: none;
    text-align: left;
}

.v60-dif-card:hover {
    background: #FFFFFF;
    box-shadow: none;
    transform: none;
}

.v60-dif-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    margin: 0 0 20px;
    color: #9B8577;
}

.v60-dif-icon svg,
.v60-dif-icon i {
    width: 20px;
    height: 20px;
    color: #9B8577;
    fill: none;
    stroke: currentColor;
}

.v60-dif-card-text {
    margin: 0;
    padding: 0;
    color: #403A36;
    text-align: left;
}

.v60-dif-footer {
    max-width: 900px;
    margin: 0 auto;
    padding: 0;
    text-align: center;
}

.v60-dif-support {
    display: block;
    max-width: 850px;
    margin: 0 auto 54px;
    padding: 0;
    color: #918781;
    text-align: center;
}

.v60-dif-slogan {
    display: block;
    max-width: 820px;
    margin: 0 auto;
    padding: 0;
    text-align: center;
}

.v60-dif-slogan-light {
    display: block;
    margin: 0;
    color: #2F2A27;
    text-align: center;
}

.v60-dif-slogan-bold {
    display: block;
    margin-top: 8px;
    color: #8E7768;
    text-align: center;
}

@media (max-width: 1024px) {
    .v60-dif {
        padding: 64px 0 78px;
    }
    .v60-dif-container {
        max-width: 860px;
        padding: 0 26px;
    }
    .v60-dif-title {
    }
    .v60-dif-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: 700px;
    }
    .v60-dif-support {
        max-width: 620px;
    }
    .v60-dif-slogan-light,
    .v60-dif-slogan-bold {
    }
}

@media (max-width: 767px) {
    .v60-dif {
        padding: 48px 0 56px;
    }
    .v60-dif-container {
        max-width: 430px;
        padding: 0 18px;
    }
    .v60-dif-header {
    }
    .v60-dif-title {
    }
    .v60-dif-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        max-width: 100%;
    }
    .v60-dif-card {
        min-height: 92px;
        padding: 12px 10px;
    }
    .v60-dif-icon {
        width: 16px;
        height: 16px;
    }
    .v60-dif-icon svg,
    .v60-dif-icon i {
        width: 14px;
        height: 14px;
    }
    .v60-dif-card-text {
    }
    .v60-dif-support {
        max-width: 300px;
    }
    .v60-dif-slogan-light,
    .v60-dif-slogan-bold {
    }
}


/* V61 - liberação dos controles de tipografia do Elementor.
   Layout continua estruturado; tamanho/altura/peso/fonte voltam a obedecer os sliders. */
.v60-dif-title,
.v60-dif-support,
.v60-dif-slogan,
.v60-dif-slogan-light,
.v60-dif-slogan-bold,
.la-sofie-title,
.la-sofie-text,
.la-sofie-card-text,
.la-sofie-slogan,
.la-sofie-hero-title,
.la-sofie-hero-desc,
.la-sofie-sobre-title,
.la-sofie-sobre-text,
.la-sofie-ambientes-title,
.la-sofie-feature-title,
.la-sofie-feature-text,
.la-sofie-andares-title,
.la-sofie-planos-title,
.la-sofie-inclusos-title,
.la-sofie-incluso-text,
.la-sofie-fechamento,
.la-sofie-fechamento p,
.la-sofie-fechamento span,
.la-sofie-local-title,
.la-sofie-local-desc,
.la-sofie-info-text strong,
.la-sofie-info-text span,
.la-sofie-cta-title {
    text-rendering: geometricPrecision;
}


/* V62 - todos os controles do Elementor liberados.
   Não usar aqui. O Elementor precisa vencer o CSS base. */
.elementor-widget-la_sofie_header *,
.elementor-widget-la_sofie_hero *,
.elementor-widget-la_sofie_sobre *,
.elementor-widget-la_sofie_diferenciais *,
.elementor-widget-la_sofie_legado *,
.elementor-widget-la_sofie_ambientes *,
.elementor-widget-la_sofie_andares *,
.elementor-widget-la_sofie_planos *,
.elementor-widget-la_sofie_inclusos *,
.elementor-widget-la_sofie_localizacao *,
.elementor-widget-la_sofie_cta *,
.elementor-widget-la_sofie_footer * {
    box-sizing: border-box;
}

/* Mantém base visual, mas deixa tamanho/espaçamento/fonte livres para controles */
.la-sofie-section > .la-sofie-container,
.la-sofie-header-inner,
.la-sofie-sobre-inner,
.la-sofie-local-wrap,
.la-sofie-footer > .la-sofie-container {
    width: 100%;
}

/* Diferenciais recriado: sem travar controles antigos */
.v60-dif-title,
.v60-dif-support,
.v60-dif-slogan-light,
.v60-dif-slogan-bold,
.v60-dif-card-text {
    text-rendering: geometricPrecision;
}


/* V64 - controles reconectados: classes antigas + novas no markup.
   Não travar tipografia aqui; os campos numéricos do Elementor controlam. */
#diferenciais .v60-dif-title,
#diferenciais .v60-dif-support,
#diferenciais .v60-dif-slogan,
#diferenciais .v60-dif-slogan-light,
#diferenciais .v60-dif-slogan-bold,
#diferenciais .v60-dif-card-text {
    text-align: inherit;
}

@media (min-width:1025px){
    #diferenciais .v60-dif-title {
        max-width: 780px;
        margin: 0 auto;
        text-align: center;
    }
    #diferenciais .v60-dif-support {
        max-width: 850px;
        margin: 0 auto 54px;
        text-align: center;
    }
    #diferenciais .v60-dif-slogan {
        max-width: 820px;
        margin: 0 auto;
        text-align: center;
    }
    #diferenciais .v60-dif-slogan-light,
    #diferenciais .v60-dif-slogan-bold {
        display: block;
        text-align: center;
    }
}


/* V65 - todos os controles liberados.
   Sem prioridade forçada e sem tipografia fixa no CSS base.
   Elementor deve controlar tamanho, altura da linha, peso, espaçamento e afins. */

.la-sofie-section,
.la-sofie-section *,
.v60-dif,
.v60-dif * {
    box-sizing: border-box;
}

.la-sofie-section > .la-sofie-container,
.la-sofie-header-inner,
.la-sofie-sobre-inner,
.la-sofie-local-wrap,
.la-sofie-footer > .la-sofie-container,
.v60-dif-container {
    width: 100%;
}

/* Diferenciais: estrutura preservada, tipografia livre */
#diferenciais.v60-dif {
    text-align: center;
}

#diferenciais .v60-dif-title,
#diferenciais .v60-dif-support,
#diferenciais .v60-dif-slogan,
#diferenciais .v60-dif-slogan-light,
#diferenciais .v60-dif-slogan-bold {
    text-align: center;
}

#diferenciais .v60-dif-card,
#diferenciais .v60-dif-card-text {
    text-align: left;
}


/* V66 - texto único em todas as seções.
   Tablet/mobile usam o mesmo texto principal. Enter continua quebrando linha. */
.la-sofie-title br,
.la-sofie-text br,
.la-sofie-card-text br,
.la-sofie-hero-title br,
.la-sofie-hero-desc br,
.la-sofie-sobre-title br,
.la-sofie-sobre-text br,
.la-sofie-dif-title br,
.la-sofie-dif-footer-text br,
.la-sofie-slogan br,
.v60-dif-title br,
.v60-dif-support br,
.v60-dif-slogan br,
.la-sofie-feature-title br,
.la-sofie-feature-text br,
.la-sofie-andares-title br,
.la-sofie-planos-title br,
.la-sofie-plan-name br,
.la-sofie-plan-desc br,
.la-sofie-inclusos-title br,
.la-sofie-incluso-text br,
.la-sofie-fechamento br,
.la-sofie-local-title br,
.la-sofie-local-desc br,
.la-sofie-info-text br,
.la-sofie-cta-title br,
.la-sofie-footer br {
    display: block;
}


/* V67 - controles no padrão Hero:
   tamanho em número, altura da linha e separação entre letras por elemento. */


/* V68 - painel de texto padronizado no estilo Hero.
   Tipografia é pelo Group Control; fonte/peso antigos ficam ocultos. */


/* V69 - Tipografia sem conflito:
   O Group Typography não controla tamanho, altura da linha ou espaçamento de letras.
   Esses valores ficam apenas nos campos separados. */







/* V72 - Tipografia completa.
   Tamanho, altura da linha e espaçamento entre letras ficam dentro do controle Tipografia.
   Controles separados foram ocultados para evitar conflito. */


/* V74 - controles de texto separados.
   Cada texto importante ganhou classe própria e Tipografia própria.
   Assim um texto não muda junto com outro. */


/* V75 - ajustes sem apagar alterações feitas no Elementor */

/* Ícones: garante que Font Awesome/SVG apareçam sem travar as cores */
.la-sofie-card-icon,
.la-sofie-plan-icon,
.la-sofie-incluso-icon,
.la-sofie-info-icon,
.la-sofie-footer-social-link,
.la-sofie-header-icon,
.la-sofie-feature-icon,
.la-sofie-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.la-sofie-card-icon svg,
.la-sofie-plan-icon svg,
.la-sofie-incluso-icon svg,
.la-sofie-info-icon svg,
.la-sofie-footer-social-link svg,
.la-sofie-header-icon svg,
.la-sofie-feature-icon svg,
.la-sofie-icon svg {
    display: block;
    width: 1em;
    height: 1em;
    fill: currentColor;
    stroke: currentColor;
}

.la-sofie-card-icon i,
.la-sofie-plan-icon i,
.la-sofie-incluso-icon i,
.la-sofie-info-icon i,
.la-sofie-footer-social-link i,
.la-sofie-header-icon i,
.la-sofie-feature-icon i,
.la-sofie-icon i {
    display: inline-block;
    line-height: 1;
    color: currentColor;
}

/* Sobre: imagens preenchendo a moldura/pílula */
.la-sofie-sobre-images,
.sobre-imagens {
    align-items: center;
}

.la-sofie-pill-frame,
.la-sofie-pill,
.img-pilula {
    overflow: hidden;
    border-radius: 999px;
}

.la-sofie-pill-frame img,
.la-sofie-pill img,
.img-pilula,
.la-sofie-sobre-images img,
.sobre-imagens img {
    width: 100%;
    height: 100%;
    min-height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Rodapé: classe específica para navegação */
.la-sofie-footer-links a,
.ls-footer-link {
    display: inline-block;
}



/* V84 - sem duplicação de controles.
   Mantém uma única seção "Tipografia dos textos".
   Dentro de cada texto: Cor, Degradê e Tipografia.
   Cards/botões/formas ficam separados em uma única seção.
*/
.la-sofie-header{display:block;visibility:visible;opacity:1;z-index:9999;}
.la-sofie-header-inner{display:flex;align-items:center;justify-content:space-between;}
.la-sofie-card-icon,.la-sofie-plan-icon,.la-sofie-incluso-icon,.la-sofie-info-icon,.la-sofie-header-icon,.la-sofie-footer-social-link{display:inline-flex;align-items:center;justify-content:center;}
.la-sofie-card-icon svg,.la-sofie-plan-icon svg,.la-sofie-incluso-icon svg,.la-sofie-info-icon svg,.la-sofie-header-icon svg,.la-sofie-footer-social-link svg{width:1em;height:1em;fill:currentColor;stroke:currentColor;}
.la-sofie-pill-frame,.la-sofie-pill,.img-pilula{overflow:hidden;border-radius:999px;}
.la-sofie-pill-frame img,.la-sofie-pill img,.img-pilula,.la-sofie-sobre-images img,.sobre-imagens img{width:100%;height:100%;min-height:100%;object-fit:cover;object-position:center;display:block;}


/* V85 - cor sólida OU degradê.
   Evita o bug de texto cortado: a cor sólida desliga background-clip/text-fill do degradê.
   O degradê só aplica quando "Tipo de cor" estiver em Degradê. */

.elementor-widget-container [class*="ls-"] {
    text-decoration-skip-ink: auto;
}

.ls-dif-slogan1,
.ls-dif-slogan2,
.ls-inc-close-high,
.ls-inc-close-top,
.la-sofie-fechamento-destaque,
.la-sofie-fechamento-top {
    overflow: visible !important;
}

/* Espaçamento volta a obedecer o controle de Espaço abaixo */
.la-sofie-title,
.la-sofie-text,
.la-sofie-label,
.la-sofie-card-text,
.la-sofie-hero-title,
.la-sofie-hero-desc,
.la-sofie-sobre-title,
.la-sofie-sobre-text,
.la-sofie-dif-title,
.la-sofie-dif-footer-text,
.la-sofie-slogan,
.v60-dif-title,
.v60-dif-support,
.v60-dif-slogan-light,
.v60-dif-slogan-bold,
.la-sofie-feature-title,
.la-sofie-feature-text,
.la-sofie-amb-desc,
.la-sofie-andares-title,
.la-sofie-andares-sub,
.la-sofie-floor-title,
.la-sofie-floor-desc,
.la-sofie-planos-title,
.la-sofie-plan-name,
.la-sofie-plan-desc,
.la-sofie-inclusos-title,
.la-sofie-incluso-text,
.la-sofie-fechamento-top,
.la-sofie-fechamento-destaque,
.la-sofie-local-title,
.la-sofie-local-desc,
.la-sofie-cta-title,
.la-sofie-footer-title {
    overflow: visible !important;
}


/* V86 - cor/degradê por modo real.
   Os controles agora só gravam variáveis; o Tipo de cor decide sozinho se aplica cor sólida ou degradê. */
[class*="ls-"] {
    text-decoration-skip-ink: auto;
}

.ls-dif-slogan1,
.ls-dif-slogan2,
.ls-inc-close-high,
.ls-inc-close-top,
.la-sofie-fechamento-destaque,
.la-sofie-fechamento-top,
.la-sofie-title,
.la-sofie-text,
.la-sofie-label,
.la-sofie-card-text {
    overflow: visible !important;
}


/* V87 - ajustes finais pontuais, sem padrão de cor para não sobrescrever o Elementor */

/* Header: fundo controlável mesmo em modo absoluto */
.la-sofie-header {
    background-clip: padding-box;
}

/* Botões: não forçar traçado automático */
.la-sofie-btn,
.la-sofie-header-btn,
.la-sofie-hero-btn,
.la-sofie-outline-btn,
.la-sofie-planos-btn,
.la-sofie-cta-btn,
.la-sofie-local-btn {
    box-shadow: none;
}

/* Inclusos: zoom suave nos itens */
.la-sofie-incluso-item {
    transition: transform .25s ease, background-color .25s ease, border-color .25s ease, color .25s ease, box-shadow .25s ease;
}
.la-sofie-incluso-item:hover:not(.la-sofie-no-hover-motion) {
    transform: scale(1.025);
}

/* Andares: respiro entre os containers, controlável também pelo Elementor */
.la-sofie-floor + .la-sofie-floor {
    margin-top: 28px;
}

/* Ambientes: tags e nomes dos cards aceitam espaçamento */
.ls-amb-feature-tag,
.ls-amb-card-name,
.la-sofie-amb-name {
    display: inline-block;
}

/* CTA: overlay em degradê quando escolher as duas cores */
.la-sofie-cta-box {
    --ls-cta-overlay-start: transparent;
    --ls-cta-overlay-end: transparent;
}
.la-sofie-cta-box .la-sofie-cta-overlay {
    background: linear-gradient(135deg, var(--ls-cta-overlay-start), var(--ls-cta-overlay-end)) !important;
}

/* Ícones obedecem cor */
.la-sofie-header-icon,
.la-sofie-card-icon,
.la-sofie-plan-icon,
.la-sofie-incluso-icon,
.la-sofie-info-icon,
.la-sofie-footer-social-link {
    color: inherit;
}
.la-sofie-header-icon svg,
.la-sofie-card-icon svg,
.la-sofie-plan-icon svg,
.la-sofie-incluso-icon svg,
.la-sofie-info-icon svg,
.la-sofie-footer-social-link svg {
    fill: currentColor;
    stroke: currentColor;
}

/* V89 - Planos: removida duplicação de cores do Selo/turno. */


/* V90 - remove brilho/efeito automático de TODOS os botões.
   Não define cor padrão nova; só libera o Elementor para controlar cor, fundo e hover. */

.la-sofie-btn,
.la-sofie-header-btn,
.ls-header-button,
.la-sofie-hero-btn,
.ls-hero-btn,
.la-sofie-outline-btn,
.ls-amb-button,
.la-sofie-planos-btn,
.ls-plan-btn,
.btn-plano-central,
.la-sofie-cta-btn,
.ls-cta-btn,
.la-sofie-local-btn,
.la-sofie-footer .la-sofie-btn,
.la-sofie-footer a[class*="btn"] {
    position: relative;
    overflow: hidden;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    text-shadow: none !important;
}

.la-sofie-btn::before,
.la-sofie-btn::after,
.la-sofie-header-btn::before,
.la-sofie-header-btn::after,
.ls-header-button::before,
.ls-header-button::after,
.la-sofie-hero-btn::before,
.la-sofie-hero-btn::after,
.ls-hero-btn::before,
.ls-hero-btn::after,
.la-sofie-outline-btn::before,
.la-sofie-outline-btn::after,
.ls-amb-button::before,
.ls-amb-button::after,
.la-sofie-planos-btn::before,
.la-sofie-planos-btn::after,
.ls-plan-btn::before,
.ls-plan-btn::after,
.btn-plano-central::before,
.btn-plano-central::after,
.la-sofie-cta-btn::before,
.la-sofie-cta-btn::after,
.ls-cta-btn::before,
.ls-cta-btn::after,
.la-sofie-local-btn::before,
.la-sofie-local-btn::after,
.la-sofie-footer .la-sofie-btn::before,
.la-sofie-footer .la-sofie-btn::after,
.la-sofie-footer a[class*="btn"]::before,
.la-sofie-footer a[class*="btn"]::after {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    background: none !important;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    animation: none !important;
    transform: none !important;
    pointer-events: none !important;
}

.la-sofie-btn:hover,
.la-sofie-header-btn:hover,
.ls-header-button:hover,
.la-sofie-hero-btn:hover,
.ls-hero-btn:hover,
.la-sofie-outline-btn:hover,
.ls-amb-button:hover,
.la-sofie-planos-btn:hover,
.ls-plan-btn:hover,
.btn-plano-central:hover,
.la-sofie-cta-btn:hover,
.ls-cta-btn:hover,
.la-sofie-local-btn:hover,
.la-sofie-footer .la-sofie-btn:hover,
.la-sofie-footer a[class*="btn"]:hover {
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    text-shadow: none !important;
}


/* V91 - Ambientes: espaço abaixo dos nomes dos cards */
.ls-amb-card-name,
.la-sofie-amb-name {
    display: inline-block;
}


/* V92 - limpeza de duplicações e espaçamento acima dos nomes dos cards em Ambientes.
   Controles repetidos de botão/ícone/hover foram removidos do painel.
   Botões continuam sem brilho automático. */

.ls-amb-card-name,
.la-sofie-amb-name {
    display: inline-block;
}

.la-sofie-btn,
.la-sofie-header-btn,
.ls-header-button,
.la-sofie-hero-btn,
.ls-hero-btn,
.la-sofie-outline-btn,
.ls-amb-button,
.la-sofie-planos-btn,
.ls-plan-btn,
.btn-plano-central,
.la-sofie-cta-btn,
.ls-cta-btn,
.la-sofie-local-btn {
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    text-shadow: none !important;
}

.la-sofie-btn::before,
.la-sofie-btn::after,
.la-sofie-header-btn::before,
.la-sofie-header-btn::after,
.ls-header-button::before,
.ls-header-button::after,
.la-sofie-hero-btn::before,
.la-sofie-hero-btn::after,
.ls-hero-btn::before,
.ls-hero-btn::after,
.la-sofie-outline-btn::before,
.la-sofie-outline-btn::after,
.ls-amb-button::before,
.ls-amb-button::after,
.la-sofie-planos-btn::before,
.la-sofie-planos-btn::after,
.ls-plan-btn::before,
.ls-plan-btn::after,
.btn-plano-central::before,
.btn-plano-central::after,
.la-sofie-cta-btn::before,
.la-sofie-cta-btn::after,
.ls-cta-btn::before,
.ls-cta-btn::after,
.la-sofie-local-btn::before,
.la-sofie-local-btn::after {
    content: none !important;
    display: none !important;
    background: none !important;
    box-shadow: none !important;
    animation: none !important;
}


/* V93 - Ambientes: espaço acima agora é da descrição dos cards */
.ls-amb-card-desc,
.la-sofie-amb-desc {
    display: block;
}


/* V94 - cores corrigidas: cor sólida funciona como padrão; degradê só entra quando Tipo de cor = Degradê. */
.ls-header-button{
    background: var(--header_button_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--header_button_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--header_button_v74-mode-clip, border-box) !important;
    color: var(--header_button_v74-mode-color, var(--header_button_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--header_button_v74-mode-fill, var(--header_button_v74-solid, currentColor)) !important;
}
.la-sofie-header-btn{
    background: var(--header_button_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--header_button_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--header_button_v74-mode-clip, border-box) !important;
    color: var(--header_button_v74-mode-color, var(--header_button_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--header_button_v74-mode-fill, var(--header_button_v74-solid, currentColor)) !important;
}
.ls-header-menu-link{
    background: var(--header_menu_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--header_menu_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--header_menu_v74-mode-clip, border-box) !important;
    color: var(--header_menu_v74-mode-color, var(--header_menu_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--header_menu_v74-mode-fill, var(--header_menu_v74-solid, currentColor)) !important;
}
.la-sofie-nav-links a{
    background: var(--header_menu_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--header_menu_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--header_menu_v74-mode-clip, border-box) !important;
    color: var(--header_menu_v74-mode-color, var(--header_menu_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--header_menu_v74-mode-fill, var(--header_menu_v74-solid, currentColor)) !important;
}
.ls-header-logo-subtitle{
    background: var(--header_logo_sub_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--header_logo_sub_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--header_logo_sub_v74-mode-clip, border-box) !important;
    color: var(--header_logo_sub_v74-mode-color, var(--header_logo_sub_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--header_logo_sub_v74-mode-fill, var(--header_logo_sub_v74-solid, currentColor)) !important;
}
.la-sofie-logo-subtitle{
    background: var(--header_logo_sub_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--header_logo_sub_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--header_logo_sub_v74-mode-clip, border-box) !important;
    color: var(--header_logo_sub_v74-mode-color, var(--header_logo_sub_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--header_logo_sub_v74-mode-fill, var(--header_logo_sub_v74-solid, currentColor)) !important;
}
.ls-header-logo-title{
    background: var(--header_logo_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--header_logo_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--header_logo_title_v74-mode-clip, border-box) !important;
    color: var(--header_logo_title_v74-mode-color, var(--header_logo_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--header_logo_title_v74-mode-fill, var(--header_logo_title_v74-solid, currentColor)) !important;
}
.la-sofie-logo-title{
    background: var(--header_logo_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--header_logo_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--header_logo_title_v74-mode-clip, border-box) !important;
    color: var(--header_logo_title_v74-mode-color, var(--header_logo_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--header_logo_title_v74-mode-fill, var(--header_logo_title_v74-solid, currentColor)) !important;
}
.ls-sobre-p2{
    background: var(--sobre_p2_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--sobre_p2_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--sobre_p2_v74-mode-clip, border-box) !important;
    color: var(--sobre_p2_v74-mode-color, var(--sobre_p2_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--sobre_p2_v74-mode-fill, var(--sobre_p2_v74-solid, currentColor)) !important;
}
.ls-sobre-p1{
    background: var(--sobre_p1_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--sobre_p1_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--sobre_p1_v74-mode-clip, border-box) !important;
    color: var(--sobre_p1_v74-mode-color, var(--sobre_p1_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--sobre_p1_v74-mode-fill, var(--sobre_p1_v74-solid, currentColor)) !important;
}
.ls-sobre-title{
    background: var(--sobre_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--sobre_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--sobre_title_v74-mode-clip, border-box) !important;
    color: var(--sobre_title_v74-mode-color, var(--sobre_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--sobre_title_v74-mode-fill, var(--sobre_title_v74-solid, currentColor)) !important;
}
.la-sofie-sobre-title{
    background: var(--sobre_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--sobre_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--sobre_title_v74-mode-clip, border-box) !important;
    color: var(--sobre_title_v74-mode-color, var(--sobre_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--sobre_title_v74-mode-fill, var(--sobre_title_v74-solid, currentColor)) !important;
}
.ls-sobre-label{
    background: var(--sobre_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--sobre_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--sobre_label_v74-mode-clip, border-box) !important;
    color: var(--sobre_label_v74-mode-color, var(--sobre_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--sobre_label_v74-mode-fill, var(--sobre_label_v74-solid, currentColor)) !important;
}
.la-sofie-label{
    background: var(--sobre_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--sobre_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--sobre_label_v74-mode-clip, border-box) !important;
    color: var(--sobre_label_v74-mode-color, var(--sobre_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--sobre_label_v74-mode-fill, var(--sobre_label_v74-solid, currentColor)) !important;
}
.ls-dif-slogan2{
    background: var(--dif_slogan2_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_slogan2_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_slogan2_v74-mode-clip, border-box) !important;
    color: var(--dif_slogan2_v74-mode-color, var(--dif_slogan2_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_slogan2_v74-mode-fill, var(--dif_slogan2_v74-solid, currentColor)) !important;
}
.v60-dif-slogan-bold{
    background: var(--dif_slogan2_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_slogan2_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_slogan2_v74-mode-clip, border-box) !important;
    color: var(--dif_slogan2_v74-mode-color, var(--dif_slogan2_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_slogan2_v74-mode-fill, var(--dif_slogan2_v74-solid, currentColor)) !important;
}
.ls-dif-slogan1{
    background: var(--dif_slogan1_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_slogan1_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_slogan1_v74-mode-clip, border-box) !important;
    color: var(--dif_slogan1_v74-mode-color, var(--dif_slogan1_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_slogan1_v74-mode-fill, var(--dif_slogan1_v74-solid, currentColor)) !important;
}
.v60-dif-slogan-light{
    background: var(--dif_slogan1_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_slogan1_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_slogan1_v74-mode-clip, border-box) !important;
    color: var(--dif_slogan1_v74-mode-color, var(--dif_slogan1_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_slogan1_v74-mode-fill, var(--dif_slogan1_v74-solid, currentColor)) !important;
}
.ls-dif-footer{
    background: var(--dif_footer_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_footer_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_footer_v74-mode-clip, border-box) !important;
    color: var(--dif_footer_v74-mode-color, var(--dif_footer_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_footer_v74-mode-fill, var(--dif_footer_v74-solid, currentColor)) !important;
}
.la-sofie-dif-footer-text{
    background: var(--dif_footer_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_footer_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_footer_v74-mode-clip, border-box) !important;
    color: var(--dif_footer_v74-mode-color, var(--dif_footer_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_footer_v74-mode-fill, var(--dif_footer_v74-solid, currentColor)) !important;
}
.v60-dif-support{
    background: var(--dif_footer_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_footer_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_footer_v74-mode-clip, border-box) !important;
    color: var(--dif_footer_v74-mode-color, var(--dif_footer_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_footer_v74-mode-fill, var(--dif_footer_v74-solid, currentColor)) !important;
}
.ls-dif-card-text{
    background: var(--dif_card_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_card_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_card_v74-mode-clip, border-box) !important;
    color: var(--dif_card_v74-mode-color, var(--dif_card_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_card_v74-mode-fill, var(--dif_card_v74-solid, currentColor)) !important;
}
.la-sofie-card-text{
    background: var(--dif_card_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_card_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_card_v74-mode-clip, border-box) !important;
    color: var(--dif_card_v74-mode-color, var(--dif_card_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_card_v74-mode-fill, var(--dif_card_v74-solid, currentColor)) !important;
}
.v60-dif-card-text{
    background: var(--dif_card_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_card_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_card_v74-mode-clip, border-box) !important;
    color: var(--dif_card_v74-mode-color, var(--dif_card_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_card_v74-mode-fill, var(--dif_card_v74-solid, currentColor)) !important;
}
.ls-dif-title{
    background: var(--dif_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_title_v74-mode-clip, border-box) !important;
    color: var(--dif_title_v74-mode-color, var(--dif_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_title_v74-mode-fill, var(--dif_title_v74-solid, currentColor)) !important;
}
.la-sofie-dif-title{
    background: var(--dif_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_title_v74-mode-clip, border-box) !important;
    color: var(--dif_title_v74-mode-color, var(--dif_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_title_v74-mode-fill, var(--dif_title_v74-solid, currentColor)) !important;
}
.v60-dif-title{
    background: var(--dif_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--dif_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--dif_title_v74-mode-clip, border-box) !important;
    color: var(--dif_title_v74-mode-color, var(--dif_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--dif_title_v74-mode-fill, var(--dif_title_v74-solid, currentColor)) !important;
}
.ls-legado-title{
    background: var(--legado_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--legado_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--legado_title_v74-mode-clip, border-box) !important;
    color: var(--legado_title_v74-mode-color, var(--legado_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--legado_title_v74-mode-fill, var(--legado_title_v74-solid, currentColor)) !important;
}
.la-sofie-legado-title{
    background: var(--legado_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--legado_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--legado_title_v74-mode-clip, border-box) !important;
    color: var(--legado_title_v74-mode-color, var(--legado_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--legado_title_v74-mode-fill, var(--legado_title_v74-solid, currentColor)) !important;
}
.ls-legado-label{
    background: var(--legado_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--legado_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--legado_label_v74-mode-clip, border-box) !important;
    color: var(--legado_label_v74-mode-color, var(--legado_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--legado_label_v74-mode-fill, var(--legado_label_v74-solid, currentColor)) !important;
}
.la-sofie-legado-label{
    background: var(--legado_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--legado_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--legado_label_v74-mode-clip, border-box) !important;
    color: var(--legado_label_v74-mode-color, var(--legado_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--legado_label_v74-mode-fill, var(--legado_label_v74-solid, currentColor)) !important;
}
.ls-amb-card-desc{
    background: var(--amb_card_desc_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_card_desc_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_card_desc_v74-mode-clip, border-box) !important;
    color: var(--amb_card_desc_v74-mode-color, var(--amb_card_desc_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_card_desc_v74-mode-fill, var(--amb_card_desc_v74-solid, currentColor)) !important;
}
.la-sofie-amb-desc{
    background: var(--amb_card_desc_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_card_desc_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_card_desc_v74-mode-clip, border-box) !important;
    color: var(--amb_card_desc_v74-mode-color, var(--amb_card_desc_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_card_desc_v74-mode-fill, var(--amb_card_desc_v74-solid, currentColor)) !important;
}
.ls-amb-card-name{
    background: var(--amb_card_name_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_card_name_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_card_name_v74-mode-clip, border-box) !important;
    color: var(--amb_card_name_v74-mode-color, var(--amb_card_name_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_card_name_v74-mode-fill, var(--amb_card_name_v74-solid, currentColor)) !important;
}
.la-sofie-amb-name{
    background: var(--amb_card_name_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_card_name_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_card_name_v74-mode-clip, border-box) !important;
    color: var(--amb_card_name_v74-mode-color, var(--amb_card_name_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_card_name_v74-mode-fill, var(--amb_card_name_v74-solid, currentColor)) !important;
}
.ls-amb-button{
    background: var(--amb_button_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_button_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_button_v74-mode-clip, border-box) !important;
    color: var(--amb_button_v74-mode-color, var(--amb_button_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_button_v74-mode-fill, var(--amb_button_v74-solid, currentColor)) !important;
}
.la-sofie-outline-btn{
    background: var(--amb_button_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_button_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_button_v74-mode-clip, border-box) !important;
    color: var(--amb_button_v74-mode-color, var(--amb_button_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_button_v74-mode-fill, var(--amb_button_v74-solid, currentColor)) !important;
}
.ls-amb-feature-text{
    background: var(--amb_feature_text_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_feature_text_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_feature_text_v74-mode-clip, border-box) !important;
    color: var(--amb_feature_text_v74-mode-color, var(--amb_feature_text_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_feature_text_v74-mode-fill, var(--amb_feature_text_v74-solid, currentColor)) !important;
}
.la-sofie-feature-text{
    background: var(--amb_feature_text_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_feature_text_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_feature_text_v74-mode-clip, border-box) !important;
    color: var(--amb_feature_text_v74-mode-color, var(--amb_feature_text_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_feature_text_v74-mode-fill, var(--amb_feature_text_v74-solid, currentColor)) !important;
}
.ls-amb-feature-title{
    background: var(--amb_feature_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_feature_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_feature_title_v74-mode-clip, border-box) !important;
    color: var(--amb_feature_title_v74-mode-color, var(--amb_feature_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_feature_title_v74-mode-fill, var(--amb_feature_title_v74-solid, currentColor)) !important;
}
.la-sofie-feature-title{
    background: var(--amb_feature_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_feature_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_feature_title_v74-mode-clip, border-box) !important;
    color: var(--amb_feature_title_v74-mode-color, var(--amb_feature_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_feature_title_v74-mode-fill, var(--amb_feature_title_v74-solid, currentColor)) !important;
}
.ls-amb-feature-tag{
    background: var(--amb_feature_tag_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_feature_tag_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_feature_tag_v74-mode-clip, border-box) !important;
    color: var(--amb_feature_tag_v74-mode-color, var(--amb_feature_tag_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_feature_tag_v74-mode-fill, var(--amb_feature_tag_v74-solid, currentColor)) !important;
}
.la-sofie-tag{
    background: var(--amb_feature_tag_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_feature_tag_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_feature_tag_v74-mode-clip, border-box) !important;
    color: var(--amb_feature_tag_v74-mode-color, var(--amb_feature_tag_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_feature_tag_v74-mode-fill, var(--amb_feature_tag_v74-solid, currentColor)) !important;
}
.ls-amb-title{
    background: var(--amb_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_title_v74-mode-clip, border-box) !important;
    color: var(--amb_title_v74-mode-color, var(--amb_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_title_v74-mode-fill, var(--amb_title_v74-solid, currentColor)) !important;
}
.la-sofie-ambientes-title{
    background: var(--amb_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_title_v74-mode-clip, border-box) !important;
    color: var(--amb_title_v74-mode-color, var(--amb_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_title_v74-mode-fill, var(--amb_title_v74-solid, currentColor)) !important;
}
.ls-amb-label{
    background: var(--amb_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_label_v74-mode-clip, border-box) !important;
    color: var(--amb_label_v74-mode-color, var(--amb_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_label_v74-mode-fill, var(--amb_label_v74-solid, currentColor)) !important;
}
.la-sofie-label{
    background: var(--amb_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--amb_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--amb_label_v74-mode-clip, border-box) !important;
    color: var(--amb_label_v74-mode-color, var(--amb_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--amb_label_v74-mode-fill, var(--amb_label_v74-solid, currentColor)) !important;
}
.ls-and-floor-desc{
    background: var(--and_floor_desc_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_floor_desc_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_floor_desc_v74-mode-clip, border-box) !important;
    color: var(--and_floor_desc_v74-mode-color, var(--and_floor_desc_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_floor_desc_v74-mode-fill, var(--and_floor_desc_v74-solid, currentColor)) !important;
}
.la-sofie-floor-desc{
    background: var(--and_floor_desc_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_floor_desc_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_floor_desc_v74-mode-clip, border-box) !important;
    color: var(--and_floor_desc_v74-mode-color, var(--and_floor_desc_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_floor_desc_v74-mode-fill, var(--and_floor_desc_v74-solid, currentColor)) !important;
}
.ls-and-floor-title{
    background: var(--and_floor_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_floor_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_floor_title_v74-mode-clip, border-box) !important;
    color: var(--and_floor_title_v74-mode-color, var(--and_floor_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_floor_title_v74-mode-fill, var(--and_floor_title_v74-solid, currentColor)) !important;
}
.la-sofie-floor-title{
    background: var(--and_floor_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_floor_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_floor_title_v74-mode-clip, border-box) !important;
    color: var(--and_floor_title_v74-mode-color, var(--and_floor_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_floor_title_v74-mode-fill, var(--and_floor_title_v74-solid, currentColor)) !important;
}
.ls-and-tag{
    background: var(--and_tag_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_tag_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_tag_v74-mode-clip, border-box) !important;
    color: var(--and_tag_v74-mode-color, var(--and_tag_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_tag_v74-mode-fill, var(--and_tag_v74-solid, currentColor)) !important;
}
.la-sofie-tag-item{
    background: var(--and_tag_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_tag_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_tag_v74-mode-clip, border-box) !important;
    color: var(--and_tag_v74-mode-color, var(--and_tag_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_tag_v74-mode-fill, var(--and_tag_v74-solid, currentColor)) !important;
}
.ls-and-sub{
    background: var(--and_sub_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_sub_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_sub_v74-mode-clip, border-box) !important;
    color: var(--and_sub_v74-mode-color, var(--and_sub_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_sub_v74-mode-fill, var(--and_sub_v74-solid, currentColor)) !important;
}
.la-sofie-andares-sub{
    background: var(--and_sub_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_sub_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_sub_v74-mode-clip, border-box) !important;
    color: var(--and_sub_v74-mode-color, var(--and_sub_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_sub_v74-mode-fill, var(--and_sub_v74-solid, currentColor)) !important;
}
.ls-and-title{
    background: var(--and_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_title_v74-mode-clip, border-box) !important;
    color: var(--and_title_v74-mode-color, var(--and_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_title_v74-mode-fill, var(--and_title_v74-solid, currentColor)) !important;
}
.la-sofie-andares-title{
    background: var(--and_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_title_v74-mode-clip, border-box) !important;
    color: var(--and_title_v74-mode-color, var(--and_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_title_v74-mode-fill, var(--and_title_v74-solid, currentColor)) !important;
}
.ls-and-label{
    background: var(--and_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_label_v74-mode-clip, border-box) !important;
    color: var(--and_label_v74-mode-color, var(--and_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_label_v74-mode-fill, var(--and_label_v74-solid, currentColor)) !important;
}
.la-sofie-label{
    background: var(--and_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--and_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--and_label_v74-mode-clip, border-box) !important;
    color: var(--and_label_v74-mode-color, var(--and_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--and_label_v74-mode-fill, var(--and_label_v74-solid, currentColor)) !important;
}
.ls-plan-btn{
    background: var(--plan_btn_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--plan_btn_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--plan_btn_v74-mode-clip, border-box) !important;
    color: var(--plan_btn_v74-mode-color, var(--plan_btn_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--plan_btn_v74-mode-fill, var(--plan_btn_v74-solid, currentColor)) !important;
}
.la-sofie-planos-btn{
    background: var(--plan_btn_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--plan_btn_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--plan_btn_v74-mode-clip, border-box) !important;
    color: var(--plan_btn_v74-mode-color, var(--plan_btn_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--plan_btn_v74-mode-fill, var(--plan_btn_v74-solid, currentColor)) !important;
}
.ls-plan-desc{
    background: var(--plan_desc_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--plan_desc_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--plan_desc_v74-mode-clip, border-box) !important;
    color: var(--plan_desc_v74-mode-color, var(--plan_desc_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--plan_desc_v74-mode-fill, var(--plan_desc_v74-solid, currentColor)) !important;
}
.la-sofie-plan-desc{
    background: var(--plan_desc_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--plan_desc_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--plan_desc_v74-mode-clip, border-box) !important;
    color: var(--plan_desc_v74-mode-color, var(--plan_desc_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--plan_desc_v74-mode-fill, var(--plan_desc_v74-solid, currentColor)) !important;
}
.ls-plan-badge{
    background: var(--plan_badge_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--plan_badge_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--plan_badge_v74-mode-clip, border-box) !important;
    color: var(--plan_badge_v74-mode-color, var(--plan_badge_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--plan_badge_v74-mode-fill, var(--plan_badge_v74-solid, currentColor)) !important;
}
.la-sofie-plan-badge{
    background: var(--plan_badge_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--plan_badge_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--plan_badge_v74-mode-clip, border-box) !important;
    color: var(--plan_badge_v74-mode-color, var(--plan_badge_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--plan_badge_v74-mode-fill, var(--plan_badge_v74-solid, currentColor)) !important;
}
.ls-plan-name{
    background: var(--plan_name_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--plan_name_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--plan_name_v74-mode-clip, border-box) !important;
    color: var(--plan_name_v74-mode-color, var(--plan_name_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--plan_name_v74-mode-fill, var(--plan_name_v74-solid, currentColor)) !important;
}
.la-sofie-plan-name{
    background: var(--plan_name_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--plan_name_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--plan_name_v74-mode-clip, border-box) !important;
    color: var(--plan_name_v74-mode-color, var(--plan_name_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--plan_name_v74-mode-fill, var(--plan_name_v74-solid, currentColor)) !important;
}
.ls-plan-title{
    background: var(--plan_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--plan_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--plan_title_v74-mode-clip, border-box) !important;
    color: var(--plan_title_v74-mode-color, var(--plan_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--plan_title_v74-mode-fill, var(--plan_title_v74-solid, currentColor)) !important;
}
.la-sofie-planos-title{
    background: var(--plan_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--plan_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--plan_title_v74-mode-clip, border-box) !important;
    color: var(--plan_title_v74-mode-color, var(--plan_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--plan_title_v74-mode-fill, var(--plan_title_v74-solid, currentColor)) !important;
}
.ls-inc-close-high{
    background: var(--inc_close_high_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--inc_close_high_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--inc_close_high_v74-mode-clip, border-box) !important;
    color: var(--inc_close_high_v74-mode-color, var(--inc_close_high_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--inc_close_high_v74-mode-fill, var(--inc_close_high_v74-solid, currentColor)) !important;
}
.la-sofie-fechamento-destaque{
    background: var(--inc_close_high_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--inc_close_high_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--inc_close_high_v74-mode-clip, border-box) !important;
    color: var(--inc_close_high_v74-mode-color, var(--inc_close_high_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--inc_close_high_v74-mode-fill, var(--inc_close_high_v74-solid, currentColor)) !important;
}
.ls-inc-close-top{
    background: var(--inc_close_top_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--inc_close_top_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--inc_close_top_v74-mode-clip, border-box) !important;
    color: var(--inc_close_top_v74-mode-color, var(--inc_close_top_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--inc_close_top_v74-mode-fill, var(--inc_close_top_v74-solid, currentColor)) !important;
}
.la-sofie-fechamento-top{
    background: var(--inc_close_top_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--inc_close_top_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--inc_close_top_v74-mode-clip, border-box) !important;
    color: var(--inc_close_top_v74-mode-color, var(--inc_close_top_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--inc_close_top_v74-mode-fill, var(--inc_close_top_v74-solid, currentColor)) !important;
}
.ls-inc-item-text{
    background: var(--inc_item_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--inc_item_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--inc_item_v74-mode-clip, border-box) !important;
    color: var(--inc_item_v74-mode-color, var(--inc_item_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--inc_item_v74-mode-fill, var(--inc_item_v74-solid, currentColor)) !important;
}
.la-sofie-incluso-text{
    background: var(--inc_item_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--inc_item_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--inc_item_v74-mode-clip, border-box) !important;
    color: var(--inc_item_v74-mode-color, var(--inc_item_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--inc_item_v74-mode-fill, var(--inc_item_v74-solid, currentColor)) !important;
}
.ls-inc-title{
    background: var(--inc_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--inc_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--inc_title_v74-mode-clip, border-box) !important;
    color: var(--inc_title_v74-mode-color, var(--inc_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--inc_title_v74-mode-fill, var(--inc_title_v74-solid, currentColor)) !important;
}
.la-sofie-inclusos-title{
    background: var(--inc_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--inc_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--inc_title_v74-mode-clip, border-box) !important;
    color: var(--inc_title_v74-mode-color, var(--inc_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--inc_title_v74-mode-fill, var(--inc_title_v74-solid, currentColor)) !important;
}
.ls-loc-hours-text{
    background: var(--loc_hours_text_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_hours_text_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_hours_text_v74-mode-clip, border-box) !important;
    color: var(--loc_hours_text_v74-mode-color, var(--loc_hours_text_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_hours_text_v74-mode-fill, var(--loc_hours_text_v74-solid, currentColor)) !important;
}
.ls-loc-hours-title{
    background: var(--loc_hours_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_hours_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_hours_title_v74-mode-clip, border-box) !important;
    color: var(--loc_hours_title_v74-mode-color, var(--loc_hours_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_hours_title_v74-mode-fill, var(--loc_hours_title_v74-solid, currentColor)) !important;
}
.ls-loc-addr-text{
    background: var(--loc_addr_text_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_addr_text_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_addr_text_v74-mode-clip, border-box) !important;
    color: var(--loc_addr_text_v74-mode-color, var(--loc_addr_text_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_addr_text_v74-mode-fill, var(--loc_addr_text_v74-solid, currentColor)) !important;
}
.ls-loc-addr-title{
    background: var(--loc_addr_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_addr_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_addr_title_v74-mode-clip, border-box) !important;
    color: var(--loc_addr_title_v74-mode-color, var(--loc_addr_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_addr_title_v74-mode-fill, var(--loc_addr_title_v74-solid, currentColor)) !important;
}
.ls-loc-seal{
    background: var(--loc_seal_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_seal_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_seal_v74-mode-clip, border-box) !important;
    color: var(--loc_seal_v74-mode-color, var(--loc_seal_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_seal_v74-mode-fill, var(--loc_seal_v74-solid, currentColor)) !important;
}
.la-sofie-seal{
    background: var(--loc_seal_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_seal_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_seal_v74-mode-clip, border-box) !important;
    color: var(--loc_seal_v74-mode-color, var(--loc_seal_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_seal_v74-mode-fill, var(--loc_seal_v74-solid, currentColor)) !important;
}
.ls-loc-desc{
    background: var(--loc_desc_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_desc_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_desc_v74-mode-clip, border-box) !important;
    color: var(--loc_desc_v74-mode-color, var(--loc_desc_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_desc_v74-mode-fill, var(--loc_desc_v74-solid, currentColor)) !important;
}
.la-sofie-local-desc{
    background: var(--loc_desc_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_desc_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_desc_v74-mode-clip, border-box) !important;
    color: var(--loc_desc_v74-mode-color, var(--loc_desc_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_desc_v74-mode-fill, var(--loc_desc_v74-solid, currentColor)) !important;
}
.ls-loc-title{
    background: var(--loc_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_title_v74-mode-clip, border-box) !important;
    color: var(--loc_title_v74-mode-color, var(--loc_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_title_v74-mode-fill, var(--loc_title_v74-solid, currentColor)) !important;
}
.la-sofie-local-title{
    background: var(--loc_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_title_v74-mode-clip, border-box) !important;
    color: var(--loc_title_v74-mode-color, var(--loc_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_title_v74-mode-fill, var(--loc_title_v74-solid, currentColor)) !important;
}
.ls-loc-label{
    background: var(--loc_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_label_v74-mode-clip, border-box) !important;
    color: var(--loc_label_v74-mode-color, var(--loc_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_label_v74-mode-fill, var(--loc_label_v74-solid, currentColor)) !important;
}
.la-sofie-label{
    background: var(--loc_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--loc_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--loc_label_v74-mode-clip, border-box) !important;
    color: var(--loc_label_v74-mode-color, var(--loc_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--loc_label_v74-mode-fill, var(--loc_label_v74-solid, currentColor)) !important;
}
.ls-cta-btn{
    background: var(--cta_btn_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--cta_btn_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--cta_btn_v74-mode-clip, border-box) !important;
    color: var(--cta_btn_v74-mode-color, var(--cta_btn_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--cta_btn_v74-mode-fill, var(--cta_btn_v74-solid, currentColor)) !important;
}
.la-sofie-cta-btn{
    background: var(--cta_btn_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--cta_btn_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--cta_btn_v74-mode-clip, border-box) !important;
    color: var(--cta_btn_v74-mode-color, var(--cta_btn_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--cta_btn_v74-mode-fill, var(--cta_btn_v74-solid, currentColor)) !important;
}
.ls-cta-highlight{
    background: var(--cta_highlight_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--cta_highlight_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--cta_highlight_v74-mode-clip, border-box) !important;
    color: var(--cta_highlight_v74-mode-color, var(--cta_highlight_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--cta_highlight_v74-mode-fill, var(--cta_highlight_v74-solid, currentColor)) !important;
}
.la-sofie-cta-title em{
    background: var(--cta_highlight_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--cta_highlight_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--cta_highlight_v74-mode-clip, border-box) !important;
    color: var(--cta_highlight_v74-mode-color, var(--cta_highlight_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--cta_highlight_v74-mode-fill, var(--cta_highlight_v74-solid, currentColor)) !important;
}
.ls-cta-title{
    background: var(--cta_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--cta_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--cta_title_v74-mode-clip, border-box) !important;
    color: var(--cta_title_v74-mode-color, var(--cta_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--cta_title_v74-mode-fill, var(--cta_title_v74-solid, currentColor)) !important;
}
.la-sofie-cta-title{
    background: var(--cta_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--cta_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--cta_title_v74-mode-clip, border-box) !important;
    color: var(--cta_title_v74-mode-color, var(--cta_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--cta_title_v74-mode-fill, var(--cta_title_v74-solid, currentColor)) !important;
}
.ls-cta-label{
    background: var(--cta_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--cta_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--cta_label_v74-mode-clip, border-box) !important;
    color: var(--cta_label_v74-mode-color, var(--cta_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--cta_label_v74-mode-fill, var(--cta_label_v74-solid, currentColor)) !important;
}
.la-sofie-cta-label{
    background: var(--cta_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--cta_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--cta_label_v74-mode-clip, border-box) !important;
    color: var(--cta_label_v74-mode-color, var(--cta_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--cta_label_v74-mode-fill, var(--cta_label_v74-solid, currentColor)) !important;
}
.ls-footer-copy{
    background: var(--footer_copy_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_copy_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_copy_v74-mode-clip, border-box) !important;
    color: var(--footer_copy_v74-mode-color, var(--footer_copy_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_copy_v74-mode-fill, var(--footer_copy_v74-solid, currentColor)) !important;
}
.la-sofie-footer-copy{
    background: var(--footer_copy_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_copy_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_copy_v74-mode-clip, border-box) !important;
    color: var(--footer_copy_v74-mode-color, var(--footer_copy_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_copy_v74-mode-fill, var(--footer_copy_v74-solid, currentColor)) !important;
}
.ls-footer-contact-text{
    background: var(--footer_contact_text_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_contact_text_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_contact_text_v74-mode-clip, border-box) !important;
    color: var(--footer_contact_text_v74-mode-color, var(--footer_contact_text_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_contact_text_v74-mode-fill, var(--footer_contact_text_v74-solid, currentColor)) !important;
}
.la-sofie-footer-contact a{
    background: var(--footer_contact_text_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_contact_text_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_contact_text_v74-mode-clip, border-box) !important;
    color: var(--footer_contact_text_v74-mode-color, var(--footer_contact_text_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_contact_text_v74-mode-fill, var(--footer_contact_text_v74-solid, currentColor)) !important;
}
.ls-footer-contact-label{
    background: var(--footer_contact_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_contact_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_contact_label_v74-mode-clip, border-box) !important;
    color: var(--footer_contact_label_v74-mode-color, var(--footer_contact_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_contact_label_v74-mode-fill, var(--footer_contact_label_v74-solid, currentColor)) !important;
}
.la-sofie-footer-contact strong{
    background: var(--footer_contact_label_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_contact_label_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_contact_label_v74-mode-clip, border-box) !important;
    color: var(--footer_contact_label_v74-mode-color, var(--footer_contact_label_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_contact_label_v74-mode-fill, var(--footer_contact_label_v74-solid, currentColor)) !important;
}
.ls-footer-link{
    background: var(--footer_links_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_links_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_links_v74-mode-clip, border-box) !important;
    color: var(--footer_links_v74-mode-color, var(--footer_links_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_links_v74-mode-fill, var(--footer_links_v74-solid, currentColor)) !important;
}
.la-sofie-footer-links a{
    background: var(--footer_links_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_links_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_links_v74-mode-clip, border-box) !important;
    color: var(--footer_links_v74-mode-color, var(--footer_links_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_links_v74-mode-fill, var(--footer_links_v74-solid, currentColor)) !important;
}
.ls-footer-title{
    background: var(--footer_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_title_v74-mode-clip, border-box) !important;
    color: var(--footer_title_v74-mode-color, var(--footer_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_title_v74-mode-fill, var(--footer_title_v74-solid, currentColor)) !important;
}
.la-sofie-footer-title{
    background: var(--footer_title_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_title_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_title_v74-mode-clip, border-box) !important;
    color: var(--footer_title_v74-mode-color, var(--footer_title_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_title_v74-mode-fill, var(--footer_title_v74-solid, currentColor)) !important;
}
.ls-footer-social-text{
    background: var(--footer_social_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_social_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_social_v74-mode-clip, border-box) !important;
    color: var(--footer_social_v74-mode-color, var(--footer_social_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_social_v74-mode-fill, var(--footer_social_v74-solid, currentColor)) !important;
}
.la-sofie-footer-social-text{
    background: var(--footer_social_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_social_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_social_v74-mode-clip, border-box) !important;
    color: var(--footer_social_v74-mode-color, var(--footer_social_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_social_v74-mode-fill, var(--footer_social_v74-solid, currentColor)) !important;
}
.ls-footer-desc{
    background: var(--footer_desc_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_desc_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_desc_v74-mode-clip, border-box) !important;
    color: var(--footer_desc_v74-mode-color, var(--footer_desc_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_desc_v74-mode-fill, var(--footer_desc_v74-solid, currentColor)) !important;
}
.la-sofie-footer-brand p{
    background: var(--footer_desc_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_desc_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_desc_v74-mode-clip, border-box) !important;
    color: var(--footer_desc_v74-mode-color, var(--footer_desc_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_desc_v74-mode-fill, var(--footer_desc_v74-solid, currentColor)) !important;
}
.ls-footer-logo{
    background: var(--footer_logo_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_logo_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_logo_v74-mode-clip, border-box) !important;
    color: var(--footer_logo_v74-mode-color, var(--footer_logo_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_logo_v74-mode-fill, var(--footer_logo_v74-solid, currentColor)) !important;
}
.la-sofie-logo-title{
    background: var(--footer_logo_v74-mode-bg, none) !important;
    -webkit-background-clip: var(--footer_logo_v74-mode-webkit-clip, initial) !important;
    background-clip: var(--footer_logo_v74-mode-clip, border-box) !important;
    color: var(--footer_logo_v74-mode-color, var(--footer_logo_v74-solid, currentColor)) !important;
    -webkit-text-fill-color: var(--footer_logo_v74-mode-fill, var(--footer_logo_v74-solid, currentColor)) !important;
}

/* Evita cortes quando usa cor/degradê em textos maiores */
.la-sofie-title,
.la-sofie-text,
.la-sofie-label,
.la-sofie-card-text,
.la-sofie-fechamento-top,
.la-sofie-fechamento-destaque,
.ls-dif-slogan1,
.ls-dif-slogan2,
.ls-inc-close-top,
.ls-inc-close-high {
    overflow: visible !important;
}


/* V95 - Planos: espaço acima do texto selo/turno */
.ls-plan-badge,
.la-sofie-plan-badge {
    display: inline-block;
}


/* V96 - correção responsiva das imagens em tablet/mobile.
   Não muda textos/cores. Só estabiliza proporção, preenchimento e overflow das imagens. */

/* Regra geral para imagens do plugin */
.la-sofie-section img {
    max-width: 100%;
}

/* Hero: imagem sempre cobre a área sem distorcer */
.la-sofie-hero-bg,
.la-sofie-hero-bg picture {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.la-sofie-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Sobre: mantém as imagens dentro das pílulas/molduras */
.la-sofie-sobre-images,
.sobre-imagens {
    min-width: 0;
}

.la-sofie-pill-frame,
.la-sofie-pill,
.img-pilula,
.la-sofie-sobre-img,
.sobre-img {
    overflow: hidden;
    max-width: 100%;
}

.la-sofie-pill-frame img,
.la-sofie-pill img,
.img-pilula img,
.la-sofie-sobre-img img,
.sobre-img img,
.la-sofie-sobre-images img,
.sobre-imagens img {
    width: 100%;
    height: 100%;
    min-height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Ambientes/cards: evita imagem estourar no responsivo */
.la-sofie-amb-card,
.la-sofie-feature-image,
.la-sofie-feature-media,
.la-sofie-amb-image,
.la-sofie-amb-img {
    overflow: hidden;
}

.la-sofie-amb-card img,
.la-sofie-feature-image img,
.la-sofie-feature-media img,
.la-sofie-amb-image img,
.la-sofie-amb-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Localização: foto responsiva sem deformar */
.la-sofie-photo,
.la-sofie-local-photo,
.la-sofie-location-photo {
    overflow: hidden;
}

.la-sofie-photo img,
.la-sofie-local-photo img,
.la-sofie-location-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Tablet */
@media (max-width: 1024px) {
    .la-sofie-sobre-inner,
    .la-sofie-feature-grid,
    .la-sofie-local-grid {
        align-items: center;
    }

    .la-sofie-sobre-images,
    .sobre-imagens {
        width: 100%;
        max-width: 520px;
        margin-left: auto;
        margin-right: auto;
    }

    .la-sofie-pill-frame,
    .la-sofie-pill,
    .la-sofie-sobre-img,
    .sobre-img {
        width: 100%;
    }

    .la-sofie-pill-frame img,
    .la-sofie-pill img,
    .la-sofie-sobre-img img,
    .sobre-img img,
    .la-sofie-sobre-images img,
    .sobre-imagens img {
        object-fit: cover;
        object-position: center;
    }

    .la-sofie-feature-image,
    .la-sofie-feature-media,
    .la-sofie-amb-image,
    .la-sofie-amb-img,
    .la-sofie-photo,
    .la-sofie-local-photo {
        width: 100%;
    }
}

/* Mobile */
@media (max-width: 767px) {
    /* Hero mobile */
    .la-sofie-hero-bg img {
        object-fit: cover;
        object-position: center;
    }

    /* Sobre mobile: empilha e impede corte estranho */
    .la-sofie-sobre-images,
    .sobre-imagens {
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
        overflow: visible;
    }

    .la-sofie-pill-frame,
    .la-sofie-pill,
    .la-sofie-sobre-img,
    .sobre-img {
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }

    .la-sofie-pill-frame img,
    .la-sofie-pill img,
    .img-pilula img,
    .la-sofie-sobre-img img,
    .sobre-img img,
    .la-sofie-sobre-images img,
    .sobre-imagens img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        display: block;
    }

    /* Quando a imagem estiver solta no mobile, mantém proporção saudável */
    .la-sofie-sobre-images > img,
    .sobre-imagens > img {
        height: auto;
        aspect-ratio: 16 / 9;
        object-fit: cover;
    }

    /* Ambientes mobile */
    .la-sofie-amb-card img,
    .la-sofie-feature-image img,
    .la-sofie-feature-media img,
    .la-sofie-amb-image img,
    .la-sofie-amb-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    /* Localização mobile */
    .la-sofie-photo img,
    .la-sofie-local-photo img,
    .la-sofie-location-photo img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }
}


/* V97 - Planos: espaço abaixo do selo/turno */
.ls-plan-badge,
.la-sofie-plan-badge {
    display: inline-block;
}


/* V98 - Tablet: mapa e imagem da Localização lado a lado, mesmo tamanho */
@media (min-width: 768px) and (max-width: 1024px) {
    .la-sofie-local-grid,
    .la-sofie-location-grid,
    .localizacao-grid,
    .local-grid {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        align-items: stretch !important;
        gap: 24px !important;
    }

    .la-sofie-local-map,
    .la-sofie-map,
    .localizacao-map,
    .local-map,
    .la-sofie-photo,
    .la-sofie-local-photo,
    .la-sofie-location-photo,
    .localizacao-photo,
    .local-photo {
        width: 100% !important;
        height: 360px !important;
        min-height: 360px !important;
        max-height: 360px !important;
        overflow: hidden !important;
        align-self: stretch !important;
    }

    .la-sofie-local-map iframe,
    .la-sofie-map iframe,
    .localizacao-map iframe,
    .local-map iframe,
    .la-sofie-photo img,
    .la-sofie-local-photo img,
    .la-sofie-location-photo img,
    .localizacao-photo img,
    .local-photo img {
        width: 100% !important;
        height: 100% !important;
        min-height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
    }
}

/* Mobile continua empilhado */
@media (max-width: 767px) {
    .la-sofie-local-grid,
    .la-sofie-location-grid,
    .localizacao-grid,
    .local-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    .la-sofie-local-map,
    .la-sofie-map,
    .localizacao-map,
    .local-map,
    .la-sofie-photo,
    .la-sofie-local-photo,
    .la-sofie-location-photo,
    .localizacao-photo,
    .local-photo {
        width: 100% !important;
        height: auto;
        max-height: none;
    }
}


/* V99 - hero mobile refinada */
@media (max-width: 767px){
    .la-sofie-hero.v47-clean{
        min-height: 640px !important;
        --ls-hero-pos-x: 78%;
        --ls-hero-pos-y: 50%;
        --ls-hero-left-overlay: rgba(82, 60, 42, 0.62);
        --ls-hero-right-overlay: rgba(82, 60, 42, 0.08);
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-overlay{
        background: linear-gradient(90deg, rgba(82,60,42,.72) 0%, rgba(82,60,42,.48) 24%, rgba(82,60,42,.14) 58%, rgba(82,60,42,.04) 100%) !important;
    }
    .la-sofie-hero.v47-clean .la-sofie-container{
        min-height: inherit;
        align-items: flex-start !important;
        padding: 74px 18px 28px !important;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-content{
        width: min(50vw, 210px) !important;
        max-width: 210px !important;
        margin-left: 0 !important;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-title{
        font-size: clamp(19px, 7vw, 31px) ;
        line-height: 1.08 ;
        letter-spacing: -0.03em ;
        margin-bottom: 16px !important;
        text-wrap: balance;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-desc-box{
        max-width: 165px !important;
        padding: 10px 10px !important;
        border-radius: 14px !important;
        margin-bottom: 16px !important;
        background: rgba(255,255,255,.12) !important;
        border-color: rgba(255,255,255,.24) !important;
        box-shadow: 0 10px 28px rgba(0,0,0,.08) !important;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-desc{
        font-size: 9.7px ;
        line-height: 1.35 ;
        letter-spacing: 0 ;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-btn{
        min-height: 0 !important;
        padding: 10px 15px !important;
        font-size: 10.5px ;
        line-height: 1.15 ;
        border-radius: 18px !important;
        width: auto !important;
        max-width: 155px;
        white-space: normal;
        text-align: left;
        justify-content: flex-start;
    }
}

@media (max-width: 390px){
    .la-sofie-hero.v47-clean{
        min-height: 620px !important;
        --ls-hero-pos-x: 80%;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-content{
        width: min(52vw, 195px) !important;
        max-width: 195px !important;
    }
    .la-sofie-hero.v47-clean .la-sofie-hero-title{
        font-size: clamp(18px, 6.7vw, 28px) ;
    }
}


/* V100 - Ambientes destaque mais retangular no tablet */
@media (min-width: 768px) and (max-width: 1024px){
    .la-sofie-feature{
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        min-height: 340px !important;
        max-width: 920px;
        margin: 0 auto 48px !important;
    }
    .la-sofie-feature-img{
        width: 74% !important;
        height: 320px !important;
        border-radius: 6px !important;
    }
    .la-sofie-feature-content{
        position: absolute !important;
        left: 18px !important;
        top: 50% !important;
        width: 48% !important;
        max-width: 390px !important;
        min-height: 0 !important;
        transform: translateY(-50%) !important;
        margin: 0 !important;
        padding: 26px 24px !important;
        border-radius: 10px !important;
        box-shadow: 0 18px 34px rgba(0,0,0,.08) !important;
    }
    .la-sofie-feature-title{
        margin-bottom: 12px !important;
    }
    .la-sofie-feature-text{
        margin-bottom: 18px !important;
    }
}


/* V101 - Sobre reorganizado no mobile e tablet estreito */
@media (max-width: 820px){
    .la-sofie-sobre-inner{
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 24px !important;
    }
    .la-sofie-sobre-content{
        flex: none !important;
        width: 100% !important;
        max-width: 100% !important;
        order: 1 !important;
    }
    .la-sofie-sobre-images,
    .sobre-imagens{
        flex: none !important;
        width: 100% !important;
        max-width: 100% !important;
        order: 2 !important;
        display: flex !important;
        justify-content: center !important;
        align-items: flex-start !important;
        gap: 12px !important;
        margin-top: 4px !important;
        overflow: visible !important;
    }
    .la-sofie-pill-frame,
    .la-sofie-pill,
    .img-pilula,
    .la-sofie-sobre-img,
    .sobre-img{
        flex: 0 1 31% !important;
        width: 31% !important;
        max-width: 110px !important;
        aspect-ratio: 1 / 2.3 !important;
        border-radius: 999px !important;
        overflow: hidden !important;
    }
    .la-sofie-pill-frame:nth-child(1),
    .la-sofie-pill:nth-child(1),
    .img-pilula:nth-child(1),
    .la-sofie-sobre-img:nth-child(1),
    .sobre-img:nth-child(1){ transform: translateY(10px) !important; }

    .la-sofie-pill-frame:nth-child(2),
    .la-sofie-pill:nth-child(2),
    .img-pilula:nth-child(2),
    .la-sofie-sobre-img:nth-child(2),
    .sobre-img:nth-child(2){ transform: translateY(0) !important; }

    .la-sofie-pill-frame:nth-child(3),
    .la-sofie-pill:nth-child(3),
    .img-pilula:nth-child(3),
    .la-sofie-sobre-img:nth-child(3),
    .sobre-img:nth-child(3){ transform: translateY(10px) !important; }

    .la-sofie-pill-frame img,
    .la-sofie-pill img,
    .img-pilula img,
    .la-sofie-sobre-img img,
    .sobre-img img,
    .la-sofie-sobre-images img,
    .sobre-imagens img{
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
    }
}


/* V102 - Andares tablet: imagens/carrossel visível */
@media (min-width: 768px) and (max-width: 1024px) {
    .la-sofie-andares,
    .elementor-widget-la_sofie_andares {
        overflow: visible !important;
    }

    .la-sofie-andares .la-sofie-carousel,
    .la-sofie-andares .la-sofie-carousel-track,
    .la-sofie-andares .swiper,
    .la-sofie-andares .swiper-wrapper,
    .la-sofie-andares .swiper-slide,
    .la-sofie-andares .slick-list,
    .la-sofie-andares .slick-track,
    .la-sofie-andares .la-sofie-floor,
    .la-sofie-andares .la-sofie-floor-media,
    .la-sofie-andares .la-sofie-floor-img,
    .la-sofie-andares .la-sofie-floor-image {
        visibility: visible !important;
        opacity: 1 !important;
        display: block;
    }

    .la-sofie-andares .la-sofie-floor,
    .la-sofie-andares .swiper-slide,
    .la-sofie-andares .slick-slide {
        min-height: auto !important;
        overflow: visible !important;
    }

    .la-sofie-andares .la-sofie-floor-media,
    .la-sofie-andares .la-sofie-floor-img,
    .la-sofie-andares .la-sofie-floor-image {
        width: 100% !important;
        min-height: 240px !important;
        height: 240px !important;
        overflow: hidden !important;
        border-radius: 14px !important;
    }

    .la-sofie-andares .la-sofie-floor-media img,
    .la-sofie-andares .la-sofie-floor-img img,
    .la-sofie-andares .la-sofie-floor-image img,
    .la-sofie-andares img {
        max-width: 100% !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .la-sofie-andares .la-sofie-carousel-btn,
    .la-sofie-andares .swiper-button-prev,
    .la-sofie-andares .swiper-button-next,
    .la-sofie-andares .slick-prev,
    .la-sofie-andares .slick-next {
        display: inline-flex !important;
        opacity: 1 !important;
        visibility: visible !important;
        z-index: 5 !important;
    }
}

/* V102 - Rodapé organizado em tablet */
@media (min-width: 768px) and (max-width: 1024px) {
    .la-sofie-footer {
        padding-top: 56px !important;
        padding-bottom: 34px !important;
    }

    .la-sofie-footer > .la-sofie-container,
    .la-sofie-footer .la-sofie-container,
    .la-sofie-footer-grid,
    .la-sofie-footer-inner {
        display: grid !important;
        grid-template-columns: 1.15fr 1fr 1fr 1fr !important;
        gap: 26px !important;
        align-items: start !important;
    }

    .la-sofie-footer-brand,
    .la-sofie-footer-col,
    .la-sofie-footer-nav,
    .la-sofie-footer-contact {
        min-width: 0 !important;
        text-align: left !important;
    }

    .la-sofie-footer-title,
    .ls-footer-title {
        margin-bottom: 14px !important;
        line-height: 1.2 ;
    }

    .la-sofie-footer-links,
    .la-sofie-footer-contact {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        align-items: flex-start !important;
    }

    .la-sofie-footer-links a,
    .ls-footer-link,
    .la-sofie-footer-contact a,
    .ls-footer-contact-text {
        display: inline-block !important;
        line-height: 1.55 ;
        word-break: normal !important;
        overflow-wrap: anywhere !important;
    }

    .la-sofie-footer-copy,
    .ls-footer-copy {
        grid-column: 1 / -1 !important;
        margin-top: 26px !important;
        padding-top: 20px !important;
        text-align: center !important;
        border-top: 1px solid rgba(0,0,0,.08);
    }
}

/* V102 - Rodapé organizado em mobile */
@media (max-width: 767px) {
    .la-sofie-footer {
        padding-top: 48px !important;
        padding-bottom: 28px !important;
    }

    .la-sofie-footer > .la-sofie-container,
    .la-sofie-footer .la-sofie-container,
    .la-sofie-footer-grid,
    .la-sofie-footer-inner {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 28px !important;
        align-items: start !important;
        text-align: center !important;
    }

    .la-sofie-footer-brand,
    .la-sofie-footer-col,
    .la-sofie-footer-nav,
    .la-sofie-footer-contact {
        width: 100% !important;
        max-width: 360px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    .la-sofie-footer-logo,
    .ls-footer-logo,
    .la-sofie-footer-brand .la-sofie-logo-title {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .la-sofie-footer-brand p,
    .ls-footer-desc {
        max-width: 320px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        line-height: 1.6 ;
    }

    .la-sofie-footer-title,
    .ls-footer-title {
        margin-bottom: 12px !important;
        line-height: 1.2 ;
        text-align: center !important;
    }

    .la-sofie-footer-links,
    .la-sofie-footer-contact {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 8px !important;
    }

    .la-sofie-footer-links a,
    .ls-footer-link,
    .la-sofie-footer-contact a,
    .ls-footer-contact-text {
        display: inline-block !important;
        line-height: 1.55 ;
        text-align: center !important;
        word-break: normal !important;
        overflow-wrap: anywhere !important;
    }

    .la-sofie-footer-social,
    .la-sofie-footer-social-link {
        justify-content: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .la-sofie-footer-copy,
    .ls-footer-copy {
        width: 100% !important;
        margin-top: 10px !important;
        padding-top: 20px !important;
        text-align: center !important;
        border-top: 1px solid rgba(0,0,0,.08);
        line-height: 1.5 ;
    }
}


/* V103 - Ambientes destaque mais elegante no mobile */
@media (max-width: 767px){
    .la-sofie-feature{
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        min-height: auto !important;
        margin-bottom: 28px !important;
        overflow: visible !important;
    }

    .la-sofie-feature-img{
        width: 100% !important;
        height: 220px !important;
        min-height: 220px !important;
        border-radius: 18px !important;
        overflow: hidden !important;
    }

    .la-sofie-feature-img img{
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
    }

    .la-sofie-feature-content{
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        transform: none !important;
        width: calc(100% - 28px) !important;
        max-width: 320px !important;
        margin: -34px auto 0 !important;
        padding: 24px 22px 22px !important;
        border-radius: 22px !important;
        box-shadow: 0 18px 38px rgba(0,0,0,.10) !important;
        z-index: 2 !important;
    }

    .la-sofie-feature-tag{
        display: block !important;
        margin-bottom: 10px !important;
        font-size: 11px ;
        line-height: 1.3 ;
        letter-spacing: 0.12em ;
    }

    .la-sofie-feature-title{
        font-size: clamp(22px, 7vw, 30px) ;
        line-height: 1.08 ;
        margin-bottom: 10px !important;
    }

    .la-sofie-feature-text{
        font-size: 15px ;
        line-height: 1.58 ;
        margin-bottom: 18px !important;
    }

    .la-sofie-feature-content .la-sofie-btn,
    .la-sofie-feature-content .la-sofie-btn-outline,
    .la-sofie-feature-content .btn-outline-dark{
        min-height: 0 !important;
        padding: 12px 22px !important;
        border-radius: 999px !important;
        font-size: 12px ;
        line-height: 1.2 ;
    }
}


/* V104 - correção: tipografia do Elementor volta a mandar.
   Removido !important de font-size/line-height/letter-spacing/font-weight/font-family do CSS do plugin.
   Assim os controles de Tipografia conseguem alterar tamanho dos textos novamente. */

/* Evita que CSS de layout trave tamanho de texto */
.elementor-widget-la_sofie_header .la-sofie-logo-title,
.elementor-widget-la_sofie_header .la-sofie-logo-subtitle,
.elementor-widget-la_sofie_header .la-sofie-nav-links a,
.elementor-widget-la_sofie_header .la-sofie-header-btn,
.elementor-widget-la_sofie_hero .la-sofie-hero-title,
.elementor-widget-la_sofie_hero .la-sofie-hero-desc,
.elementor-widget-la_sofie_hero .la-sofie-hero-btn,
.elementor-widget-la_sofie_sobre .la-sofie-label,
.elementor-widget-la_sofie_sobre .la-sofie-sobre-title,
.elementor-widget-la_sofie_sobre .la-sofie-sobre-text,
.elementor-widget-la_sofie_diferenciais .la-sofie-dif-title,
.elementor-widget-la_sofie_diferenciais .la-sofie-card-text,
.elementor-widget-la_sofie_diferenciais .la-sofie-dif-footer-text,
.elementor-widget-la_sofie_diferenciais .v60-dif-slogan-light,
.elementor-widget-la_sofie_diferenciais .v60-dif-slogan-bold,
.elementor-widget-la_sofie_ambientes .la-sofie-label,
.elementor-widget-la_sofie_ambientes .la-sofie-ambientes-title,
.elementor-widget-la_sofie_ambientes .la-sofie-tag,
.elementor-widget-la_sofie_ambientes .la-sofie-feature-title,
.elementor-widget-la_sofie_ambientes .la-sofie-feature-text,
.elementor-widget-la_sofie_ambientes .la-sofie-amb-name,
.elementor-widget-la_sofie_ambientes .la-sofie-amb-desc,
.elementor-widget-la_sofie_andares .la-sofie-label,
.elementor-widget-la_sofie_andares .la-sofie-andares-title,
.elementor-widget-la_sofie_andares .la-sofie-andares-sub,
.elementor-widget-la_sofie_andares .la-sofie-tag-item,
.elementor-widget-la_sofie_andares .la-sofie-floor-title,
.elementor-widget-la_sofie_andares .la-sofie-floor-desc,
.elementor-widget-la_sofie_planos .la-sofie-planos-title,
.elementor-widget-la_sofie_planos .la-sofie-plan-name,
.elementor-widget-la_sofie_planos .la-sofie-plan-badge,
.elementor-widget-la_sofie_planos .la-sofie-plan-desc,
.elementor-widget-la_sofie_planos .la-sofie-planos-btn,
.elementor-widget-la_sofie_inclusos .la-sofie-inclusos-title,
.elementor-widget-la_sofie_inclusos .la-sofie-incluso-text,
.elementor-widget-la_sofie_inclusos .la-sofie-fechamento-top,
.elementor-widget-la_sofie_inclusos .la-sofie-fechamento-destaque,
.elementor-widget-la_sofie_localizacao .la-sofie-label,
.elementor-widget-la_sofie_localizacao .la-sofie-local-title,
.elementor-widget-la_sofie_localizacao .la-sofie-local-desc,
.elementor-widget-la_sofie_localizacao .la-sofie-seal,
.elementor-widget-la_sofie_cta .la-sofie-cta-label,
.elementor-widget-la_sofie_cta .la-sofie-cta-title,
.elementor-widget-la_sofie_cta .la-sofie-cta-title em,
.elementor-widget-la_sofie_cta .la-sofie-cta-btn,
.elementor-widget-la_sofie_footer .la-sofie-logo-title,
.elementor-widget-la_sofie_footer .ls-footer-desc,
.elementor-widget-la_sofie_footer .la-sofie-footer-social-text,
.elementor-widget-la_sofie_footer .la-sofie-footer-title,
.elementor-widget-la_sofie_footer .la-sofie-footer-links a,
.elementor-widget-la_sofie_footer .la-sofie-footer-contact strong,
.elementor-widget-la_sofie_footer .la-sofie-footer-contact a,
.elementor-widget-la_sofie_footer .la-sofie-footer-copy {
    text-size-adjust: 100%;
}


/* V105 - Rodapé tablet/mobile corrigido de verdade.
   Evita colunas apertadas, texto quebrado letra por letra e blocos sobrepostos. */

/* Tablet: 2 colunas limpas */
@media (min-width: 768px) and (max-width: 1024px) {
    .la-sofie-footer {
        padding: 54px 0 30px !important;
        overflow: hidden !important;
    }

    .la-sofie-footer > .la-sofie-container {
        display: grid !important;
        grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) !important;
        gap: 34px 44px !important;
        align-items: start !important;
        width: 100% !important;
        max-width: 720px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 28px !important;
        padding-right: 28px !important;
    }

    .la-sofie-footer-brand,
    .la-sofie-footer-col,
    .la-sofie-footer-nav,
    .la-sofie-footer-contact,
    .la-sofie-footer-section {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        text-align: left !important;
        grid-column: auto !important;
    }

    .la-sofie-footer-brand {
        grid-column: 1 / 2 !important;
        grid-row: 1 / span 2 !important;
    }

    .la-sofie-footer-brand p,
    .ls-footer-desc {
        max-width: 260px !important;
        line-height: 1.55 !important;
    }

    .la-sofie-footer-title,
    .ls-footer-title {
        display: block !important;
        width: 100% !important;
        margin: 0 0 12px !important;
        line-height: 1.2 !important;
        text-align: left !important;
        white-space: normal !important;
    }

    .la-sofie-footer-links,
    .la-sofie-footer-contact {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .la-sofie-footer-links a,
    .ls-footer-link,
    .la-sofie-footer-contact a,
    .ls-footer-contact-text,
    .la-sofie-footer-contact strong,
    .ls-footer-contact-label {
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        line-height: 1.45 !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        hyphens: none !important;
        text-align: left !important;
    }

    .la-sofie-footer-social,
    .la-sofie-footer-social-link {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }

    .la-sofie-footer-copy,
    .ls-footer-copy {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        margin-top: 16px !important;
        padding-top: 20px !important;
        border-top: 1px solid rgba(0,0,0,.08) !important;
        text-align: center !important;
        line-height: 1.45 !important;
    }
}

/* Mobile e tablet estreito: 1 coluna, tudo centralizado e sem quebra feia */
@media (max-width: 767px) {
    .la-sofie-footer {
        padding: 46px 0 26px !important;
        overflow: hidden !important;
    }

    .la-sofie-footer > .la-sofie-container {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 26px !important;
        width: 100% !important;
        max-width: 420px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
        text-align: center !important;
    }

    .la-sofie-footer-brand,
    .la-sofie-footer-col,
    .la-sofie-footer-nav,
    .la-sofie-footer-contact,
    .la-sofie-footer-section {
        width: 100% !important;
        max-width: 340px !important;
        min-width: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    .la-sofie-footer-brand p,
    .ls-footer-desc {
        max-width: 300px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        line-height: 1.58 !important;
        text-align: center !important;
    }

    .la-sofie-footer-title,
    .ls-footer-title {
        display: block !important;
        width: 100% !important;
        margin: 0 0 10px !important;
        line-height: 1.2 !important;
        text-align: center !important;
        white-space: normal !important;
    }

    .la-sofie-footer-links,
    .la-sofie-footer-contact {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 7px !important;
        width: 100% !important;
    }

    .la-sofie-footer-links a,
    .ls-footer-link,
    .la-sofie-footer-contact a,
    .ls-footer-contact-text,
    .la-sofie-footer-contact strong,
    .ls-footer-contact-label {
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        line-height: 1.45 !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        hyphens: none !important;
        text-align: center !important;
    }

    .la-sofie-footer-social,
    .la-sofie-footer-social-link {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .la-sofie-footer-copy,
    .ls-footer-copy {
        width: 100% !important;
        max-width: 340px !important;
        margin: 4px auto 0 !important;
        padding-top: 18px !important;
        border-top: 1px solid rgba(0,0,0,.08) !important;
        text-align: center !important;
        line-height: 1.45 !important;
    }
}

/* Ajuste extra para telas tipo tablet em preview estreito */
@media (min-width: 600px) and (max-width: 767px) {
    .la-sofie-footer > .la-sofie-container {
        max-width: 560px !important;
    }

    .la-sofie-footer-brand,
    .la-sofie-footer-col,
    .la-sofie-footer-nav,
    .la-sofie-footer-contact,
    .la-sofie-footer-section {
        max-width: 420px !important;
    }
}


/* V106 - Footer mobile: Instagram centralizado corretamente */
@media (max-width: 767px) {
    .la-sofie-footer-social,
    .la-sofie-footer-social-link,
    .la-sofie-footer .la-sofie-footer-social,
    .la-sofie-footer .la-sofie-footer-social-link {
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 12px !important;
        width: auto !important;
        max-width: fit-content !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
        white-space: nowrap !important;
    }

    .la-sofie-footer-social .la-sofie-social-icon,
    .la-sofie-footer-social-link .la-sofie-social-icon,
    .la-sofie-footer .la-sofie-social-icon {
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    .la-sofie-footer-social .la-sofie-footer-social-text,
    .la-sofie-footer-social-link .la-sofie-footer-social-text,
    .la-sofie-footer .la-sofie-footer-social-text {
        display: inline-block !important;
        flex: 0 0 auto !important;
        width: auto !important;
        margin: 0 !important;
        line-height: 1.3 !important;
        text-align: center !important;
        white-space: nowrap !important;
    }
}


/* V107 - botão da Localização incluído na correção geral de botões */
.la-sofie-local-btn,
.la-sofie-local-button,
.la-sofie-localizacao-btn,
.la-sofie-location-btn,
.la-sofie-local .la-sofie-btn,
.la-sofie-localizacao .la-sofie-btn,
.la-sofie-local-wrap .la-sofie-btn,
.la-sofie-local-right .la-sofie-btn,
.la-sofie-local-info .la-sofie-btn {
    position: relative;
    overflow: hidden;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    text-shadow: none !important;
}

.la-sofie-local-btn::before,
.la-sofie-local-btn::after,
.la-sofie-local-button::before,
.la-sofie-local-button::after,
.la-sofie-localizacao-btn::before,
.la-sofie-localizacao-btn::after,
.la-sofie-location-btn::before,
.la-sofie-location-btn::after,
.la-sofie-local .la-sofie-btn::before,
.la-sofie-local .la-sofie-btn::after,
.la-sofie-localizacao .la-sofie-btn::before,
.la-sofie-localizacao .la-sofie-btn::after,
.la-sofie-local-wrap .la-sofie-btn::before,
.la-sofie-local-wrap .la-sofie-btn::after,
.la-sofie-local-right .la-sofie-btn::before,
.la-sofie-local-right .la-sofie-btn::after,
.la-sofie-local-info .la-sofie-btn::before,
.la-sofie-local-info .la-sofie-btn::after {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    background: none !important;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    animation: none !important;
    transform: none !important;
    pointer-events: none !important;
}

.la-sofie-local-btn:hover,
.la-sofie-local-button:hover,
.la-sofie-localizacao-btn:hover,
.la-sofie-location-btn:hover,
.la-sofie-local .la-sofie-btn:hover,
.la-sofie-localizacao .la-sofie-btn:hover,
.la-sofie-local-wrap .la-sofie-btn:hover,
.la-sofie-local-right .la-sofie-btn:hover,
.la-sofie-local-info .la-sofie-btn:hover {
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    text-shadow: none !important;
}


/* V109 - Rodapé tablet seguro: sem grid rígido bugado */
@media (min-width: 768px) and (max-width: 1024px) {
    .la-sofie-footer {
        padding: 48px 0 28px !important;
        overflow: hidden !important;
    }

    .la-sofie-footer > .la-sofie-container {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        gap: 30px 34px !important;
        width: 100% !important;
        max-width: 860px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 28px !important;
        padding-right: 28px !important;
        box-sizing: border-box !important;
    }

    .la-sofie-footer-brand,
    .la-sofie-footer-col,
    .la-sofie-footer-nav,
    .la-sofie-footer-contact,
    .la-sofie-footer-section {
        flex: 1 1 180px !important;
        width: auto !important;
        min-width: 160px !important;
        max-width: 240px !important;
        margin: 0 !important;
        text-align: left !important;
    }

    .la-sofie-footer-brand {
        flex-basis: 230px !important;
        max-width: 260px !important;
    }

    .la-sofie-footer-brand p,
    .ls-footer-desc {
        max-width: 230px !important;
        line-height: 1.55 !important;
        margin: 0 !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
    }

    .la-sofie-footer-title,
    .ls-footer-title {
        display: block !important;
        margin: 0 0 12px !important;
        line-height: 1.2 !important;
        text-align: left !important;
        white-space: normal !important;
    }

    .la-sofie-footer-links,
    .la-sofie-footer-contact {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .la-sofie-footer-links a,
    .ls-footer-link,
    .la-sofie-footer-contact a,
    .ls-footer-contact-text,
    .la-sofie-footer-contact strong,
    .ls-footer-contact-label {
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        line-height: 1.45 !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        hyphens: none !important;
        text-align: left !important;
    }

    .la-sofie-footer-copy,
    .ls-footer-copy {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: none !important;
        margin-top: 10px !important;
        padding-top: 18px !important;
        border-top: 1px solid rgba(0,0,0,.08) !important;
        text-align: left !important;
        line-height: 1.45 !important;
    }
}

/* V109 - Mobile mantém a versão centralizada que estava boa */
@media (max-width: 767px) {
    .la-sofie-footer > .la-sofie-container {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 26px !important;
        text-align: center !important;
        max-width: 420px !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .la-sofie-footer-brand,
    .la-sofie-footer-col,
    .la-sofie-footer-nav,
    .la-sofie-footer-contact,
    .la-sofie-footer-section {
        width: 100% !important;
        max-width: 340px !important;
        min-width: 0 !important;
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .la-sofie-footer-title,
    .ls-footer-title,
    .la-sofie-footer-brand p,
    .ls-footer-desc,
    .la-sofie-footer-links a,
    .ls-footer-link,
    .la-sofie-footer-contact a,
    .ls-footer-contact-text,
    .la-sofie-footer-contact strong,
    .ls-footer-contact-label {
        text-align: center !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        hyphens: none !important;
    }

    .la-sofie-footer-links,
    .la-sofie-footer-contact {
        align-items: center !important;
    }

    .la-sofie-footer-copy,
    .ls-footer-copy {
        width: 100% !important;
        max-width: 340px !important;
        text-align: center !important;
    }
}

/* V109 - Botão da Localização sem brilho e com seletores completos */
.la-sofie-local-btn,
.la-sofie-local-button,
.la-sofie-localizacao-btn,
.la-sofie-location-btn,
.la-sofie-local .la-sofie-btn,
.la-sofie-localizacao .la-sofie-btn,
.la-sofie-local-wrap .la-sofie-btn,
.la-sofie-local-right .la-sofie-btn,
.la-sofie-local-info .la-sofie-btn {
    position: relative;
    overflow: hidden;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    text-shadow: none !important;
}

.la-sofie-local-btn::before,
.la-sofie-local-btn::after,
.la-sofie-local-button::before,
.la-sofie-local-button::after,
.la-sofie-localizacao-btn::before,
.la-sofie-localizacao-btn::after,
.la-sofie-location-btn::before,
.la-sofie-location-btn::after,
.la-sofie-local .la-sofie-btn::before,
.la-sofie-local .la-sofie-btn::after,
.la-sofie-localizacao .la-sofie-btn::before,
.la-sofie-localizacao .la-sofie-btn::after,
.la-sofie-local-wrap .la-sofie-btn::before,
.la-sofie-local-wrap .la-sofie-btn::after,
.la-sofie-local-right .la-sofie-btn::before,
.la-sofie-local-right .la-sofie-btn::after,
.la-sofie-local-info .la-sofie-btn::before,
.la-sofie-local-info .la-sofie-btn::after {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    background: none !important;
    box-shadow: none !important;
    filter: none !important;
    animation: none !important;
    transform: none !important;
}


/* V110 - Localização: botão desktop corrigido */
.la-sofie-localizacao-cta,
.la-sofie-local-btn,
.la-sofie-local-button,
.la-sofie-localizacao-btn,
.la-sofie-location-btn,
.la-sofie-local .la-sofie-btn,
.la-sofie-localizacao .la-sofie-btn,
.la-sofie-local-wrap .la-sofie-btn,
.la-sofie-local-right .la-sofie-btn,
.la-sofie-local-info .la-sofie-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 14px !important;
    min-width: 190px !important;
    min-height: 52px !important;
    padding: 14px 18px 14px 26px !important;
    border-radius: 999px !important;
    border: 1px solid transparent;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    text-shadow: none !important;
}

/* círculo da seta do botão da localização */
.la-sofie-localizacao-cta .la-sofie-btn-icon,
.la-sofie-localizacao-cta .btn-icon,
.la-sofie-localizacao-cta .icon,
.la-sofie-localizacao-cta svg,
.la-sofie-local-btn .la-sofie-btn-icon,
.la-sofie-local-btn .btn-icon,
.la-sofie-local-btn .icon,
.la-sofie-local-btn svg,
.la-sofie-local-button .la-sofie-btn-icon,
.la-sofie-local-button .btn-icon,
.la-sofie-local-button .icon,
.la-sofie-local-button svg,
.la-sofie-local .la-sofie-btn .la-sofie-btn-icon,
.la-sofie-local .la-sofie-btn .btn-icon,
.la-sofie-local .la-sofie-btn .icon,
.la-sofie-local .la-sofie-btn svg,
.la-sofie-local-wrap .la-sofie-btn .la-sofie-btn-icon,
.la-sofie-local-wrap .la-sofie-btn .btn-icon,
.la-sofie-local-wrap .la-sofie-btn .icon,
.la-sofie-local-wrap .la-sofie-btn svg,
.la-sofie-local-right .la-sofie-btn .la-sofie-btn-icon,
.la-sofie-local-right .la-sofie-btn .btn-icon,
.la-sofie-local-right .la-sofie-btn .icon,
.la-sofie-local-right .la-sofie-btn svg {
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    max-width: 34px !important;
    max-height: 34px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* caso a seta seja só span/i sem classe clara */
.la-sofie-localizacao-cta > span:last-child:not(:first-child),
.la-sofie-local-btn > span:last-child:not(:first-child),
.la-sofie-local-button > span:last-child:not(:first-child),
.la-sofie-local .la-sofie-btn > span:last-child:not(:first-child),
.la-sofie-local-wrap .la-sofie-btn > span:last-child:not(:first-child),
.la-sofie-local-right .la-sofie-btn > span:last-child:not(:first-child) {
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Mobile/tablet: não deixa o botão ficar miúdo */
@media (max-width: 1024px) {
    .la-sofie-localizacao-cta,
    .la-sofie-local-btn,
    .la-sofie-local-button,
    .la-sofie-localizacao-btn,
    .la-sofie-location-btn,
    .la-sofie-local .la-sofie-btn,
    .la-sofie-localizacao .la-sofie-btn,
    .la-sofie-local-wrap .la-sofie-btn,
    .la-sofie-local-right .la-sofie-btn,
    .la-sofie-local-info .la-sofie-btn {
        min-width: 178px !important;
        min-height: 50px !important;
        padding: 13px 17px 13px 24px !important;
    }
}


/* V111 - Localização: botão real renderizado e visível */
.la-sofie-localizacao-cta,
.la-sofie-local-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 14px !important;
    width: fit-content !important;
    min-width: 190px !important;
    min-height: 52px !important;
    margin-top: 30px !important;
    padding: 14px 12px 14px 26px !important;
    border-radius: 999px !important;
    border: 1px solid transparent;
    text-decoration: none !important;
    text-transform: uppercase;
    white-space: nowrap !important;
    line-height: 1 !important;
    background-image: none !important;
    box-shadow: none !important;
}

.la-sofie-local-btn-text {
    display: inline-block !important;
    line-height: 1 !important;
}

.la-sofie-local-btn-arrow {
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255,255,255,.9);
    color: inherit;
    line-height: 1 !important;
    font-size: 16px;
}

.la-sofie-localizacao-cta::before,
.la-sofie-localizacao-cta::after,
.la-sofie-local-btn::before,
.la-sofie-local-btn::after {
    content: none !important;
    display: none !important;
}

@media (max-width: 1024px) {
    .la-sofie-localizacao-cta,
    .la-sofie-local-btn {
        min-width: 178px !important;
        min-height: 50px !important;
        margin-top: 24px !important;
        padding: 13px 11px 13px 24px !important;
    }
}

@media (max-width: 767px) {
    .la-sofie-localizacao-cta,
    .la-sofie-local-btn {
        margin-left: auto !important;
        margin-right: auto !important;
    }
}


/* V112 - Localização: botão estruturado + infos separadas */
.elementor-widget-la_sofie_localizacao .la-sofie-local-right > div:last-child{
    width:100%;
}
.elementor-widget-la_sofie_localizacao .la-sofie-info-item{
    display:flex !important;
    align-items:flex-start !important;
    gap:14px !important;
    margin:0 !important;
}
.elementor-widget-la_sofie_localizacao .la-sofie-info-item + .la-sofie-info-item{
    margin-top:18px !important;
}
.elementor-widget-la_sofie_localizacao .la-sofie-info-icon{
    flex:0 0 22px !important;
    width:22px !important;
    margin-top:2px !important;
    line-height:1 !important;
}
.elementor-widget-la_sofie_localizacao .la-sofie-info-icon i,
.elementor-widget-la_sofie_localizacao .la-sofie-info-icon svg{
    width:22px !important;
    height:22px !important;
}
.elementor-widget-la_sofie_localizacao .la-sofie-info-text{
    display:flex !important;
    flex-direction:column !important;
    gap:4px !important;
}
.elementor-widget-la_sofie_localizacao .la-sofie-info-text strong,
.elementor-widget-la_sofie_localizacao .ls-loc-addr-title,
.elementor-widget-la_sofie_localizacao .ls-loc-hours-title{
    display:block !important;
    margin:0 0 4px 0 !important;
    line-height:1.2 !important;
}
.elementor-widget-la_sofie_localizacao .la-sofie-info-text span,
.elementor-widget-la_sofie_localizacao .ls-loc-addr-text,
.elementor-widget-la_sofie_localizacao .ls-loc-hours-text{
    display:block !important;
    margin:0 !important;
    line-height:1.55 !important;
}

.elementor-widget-la_sofie_localizacao .la-sofie-localizacao-cta,
.elementor-widget-la_sofie_localizacao .la-sofie-local-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;
    margin-top:26px !important;
    padding:7px 8px 7px 22px !important;
    min-height:48px !important;
    min-width:210px !important;
    width:auto !important;
    border-radius:999px !important;
    border:1px solid #b99c85 !important;
    background:#b99c85 !important;
    color:#ffffff !important;
    text-decoration:none !important;
    box-shadow:none !important;
    text-transform:uppercase !important;
    line-height:1 !important;
    overflow:hidden !important;
}
.elementor-widget-la_sofie_localizacao .la-sofie-localizacao-cta:hover,
.elementor-widget-la_sofie_localizacao .la-sofie-local-btn:hover{
    transform:translateY(-1px) !important;
}
.elementor-widget-la_sofie_localizacao .la-sofie-local-btn-text{
    display:inline-block !important;
    font-family:'Poppins', sans-serif !important;
    font-size:12px !important;
    font-weight:500 !important;
    letter-spacing:.08em !important;
    line-height:1 !important;
    color:inherit !important;
    white-space:nowrap !important;
}
.elementor-widget-la_sofie_localizacao .la-sofie-local-btn-arrow{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 32px !important;
    width:32px !important;
    height:32px !important;
    border-radius:50% !important;
    background:#ffffff !important;
    color:#6f5848 !important;
    font-size:15px !important;
    font-weight:600 !important;
    line-height:1 !important;
}
.elementor-widget-la_sofie_localizacao .la-sofie-localizacao-cta::before,
.elementor-widget-la_sofie_localizacao .la-sofie-localizacao-cta::after,
.elementor-widget-la_sofie_localizacao .la-sofie-local-btn::before,
.elementor-widget-la_sofie_localizacao .la-sofie-local-btn::after{
    content:none !important;
    display:none !important;
}

@media (max-width: 1024px){
  .elementor-widget-la_sofie_localizacao .la-sofie-localizacao-cta,
  .elementor-widget-la_sofie_localizacao .la-sofie-local-btn{
      min-width:198px !important;
      min-height:46px !important;
      padding:7px 8px 7px 20px !important;
      margin-top:24px !important;
  }
}

@media (max-width: 767px){
  .elementor-widget-la_sofie_localizacao .la-sofie-localizacao-cta,
  .elementor-widget-la_sofie_localizacao .la-sofie-local-btn{
      margin-left:0 !important;
      margin-right:0 !important;
  }
}
