/*=====================================
              VARIABLES
======================================*/
:root{
    --primary:#B58B47;
    --primary-dark:#8F6B32;
    --primary-light:#F3ECE1;
    --secondary:#1C2333;
    --dark:#101114;
    --text:#646A73;
    --light:#F7F6F3;
    --white:#FFFFFF;
    --border:#E4E0D8;
    --font-title:"Cormorant Garamond",serif;
    --font-text:"Manrope",sans-serif;
}
/*=====================================
                 BASE
======================================*/
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}
html{
    scroll-behavior:smooth;
}
body{
    background:var(--white);
    color:var(--text);
    font-family:var(--font-text);
}
body.MenuOpen{
    overflow:hidden;
}
a{
    color:inherit;
    text-decoration:none;
}
button{
    font:inherit;
}
.Container{
    width:min(1200px,calc(100% - 40px));
    margin:auto;
}
/*=====================================
                NAVBAR
======================================*/
.Header{
    position:fixed;
    top:0;
    left:0;
    z-index:1000;
    width:100%;
    padding:24px 0;
    border-bottom:1px solid transparent;
    transition:padding .35s ease,background .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.Header.Scrolled{
    padding:14px 0;
    background:rgba(16,17,20,.94);
    border-color:rgba(255,255,255,.1);
    box-shadow:0 14px 35px rgba(0,0,0,.14);
    backdrop-filter:blur(18px);
}
.HeaderContainer{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;
}
.Logo{
    display:flex;
    align-items:center;
    gap:12px;
    color:var(--white);
}
.LogoIcon{
    width:48px;
    height:48px;
    display:flex;
    justify-content:center;
    align-items:center;
    border:1px solid rgba(255,255,255,.42);
    font-family:var(--font-title);
    font-size:1.8rem;
    font-weight:700;
    line-height:1;
    transition:background .3s ease,border-color .3s ease,color .3s ease;
}
.Logo:hover .LogoIcon{
    background:var(--primary);
    border-color:var(--primary);
}
.LogoText{
    display:flex;
    flex-direction:column;
    line-height:1;
}
.LogoText strong{
    font-family:var(--font-title);
    font-size:1.5rem;
    font-weight:600;
}
.LogoText small{
    margin-top:5px;
    color:rgba(255,255,255,.58);
    font-size:.54rem;
    font-weight:700;
    letter-spacing:.32em;
    text-transform:uppercase;
}
.Navigation{
    display:flex;
    align-items:center;
    gap:32px;
}
.Navigation a{
    position:relative;
    color:rgba(255,255,255,.68);
    font-size:.7rem;
    font-weight:600;
    letter-spacing:.02em;
    transition:color .3s ease;
}
.Navigation a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-9px;
    width:0;
    height:1px;
    background:var(--primary);
    transition:width .3s ease;
}
.Navigation a:hover,.Navigation a.Active{
    color:var(--white);
}
.Navigation a:hover::after,.Navigation a.Active::after{
    width:100%;
}
.HeaderActions{
    display:flex;
    align-items:center;
    gap:18px;
}
.HeaderButton{
    min-height:48px;
    padding:0 20px;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:11px;
    border:1px solid rgba(255,255,255,.35);
    color:var(--white);
    font-size:.66rem;
    font-weight:700;
    transition:background .3s ease,border-color .3s ease;
}
.HeaderButton:hover{
    background:var(--primary);
    border-color:var(--primary);
}
.HeaderButton i{
    font-size:.63rem;
    transition:transform .3s ease;
}
.HeaderButton:hover i{
    transform:translateX(4px);
}
.MenuButton{
    width:44px;
    height:44px;
    display:none;
    justify-content:center;
    align-items:center;
    flex-direction:column;
    background:transparent;
    border:1px solid rgba(255,255,255,.3);
    cursor:pointer;
}
.MenuButton span{
    width:20px;
    height:1px;
    display:block;
    background:var(--white);
    transition:transform .3s ease,opacity .3s ease;
}
.MenuButton span+span{
    margin-top:5px;
}
.MenuButton.Active span:nth-child(1){
    transform:translateY(6px) rotate(45deg);
}
.MenuButton.Active span:nth-child(2){
    opacity:0;
}
.MenuButton.Active span:nth-child(3){
    transform:translateY(-6px) rotate(-45deg);
}
/*=====================================
                  HERO
======================================*/
.Hero{
    position:relative;
    min-height:860px;
    padding:210px 0 130px;
    display:flex;
    align-items:center;
    overflow:visible;
}
.HeroBackground,.HeroOverlay{
    position:absolute;
    inset:0;
}
.HeroBackground{
    overflow:hidden;
}
.HeroBackground img{
    width:100%;
    height:100%;
    object-fit:cover;
    animation:HeroZoom 18s ease-in-out infinite alternate;
}
.HeroOverlay{
    background:linear-gradient(90deg,rgba(8,9,12,.92) 0%,rgba(8,9,12,.72) 43%,rgba(8,9,12,.28) 100%);
}
.HeroContainer{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.15fr .65fr;
    align-items:end;
    gap:90px;
    padding-left: 25px;
}
.HeroContent{
    max-width:700px;
}
.HeroEyebrow{
    margin-bottom:24px;
    display:flex;
    align-items:center;
    gap:10px;
    color:#E4C99F;
    font-size:.67rem;
    font-weight:700;
    letter-spacing:.11em;
    text-transform:uppercase;
}
.HeroContent h1{
    max-width:680px;
    color:var(--white);
    font-family:var(--font-title);
    font-size:5rem;
    font-weight:600;
    line-height:.96;
}
.HeroContent>p{
    max-width:590px;
    margin-top:27px;
    color:rgba(255,255,255,.68);
    font-size:.82rem;
    line-height:1.85;
}
.HeroActions{
    margin-top:38px;
    display:flex;
    align-items:center;
    gap:16px;
}
.ButtonPrimary,.ButtonSecondary{
    min-height:55px;
    padding:0 23px;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:11px;
    font-size:.67rem;
    font-weight:800;
    transition:background .3s ease,border-color .3s ease,transform .3s ease;
}
.ButtonPrimary{
    background:var(--primary);
    color:var(--white);
}
.ButtonPrimary:hover{
    background:var(--primary-dark);
    transform:translateY(-2px);
}
.ButtonSecondary{
    border:1px solid rgba(255,255,255,.3);
    color:var(--white);
}
.ButtonSecondary:hover{
    border-color:var(--white);
    transform:translateY(-2px);
}
.HeroFeature{
    padding:29px;
    background:rgba(16,17,20,.5);
    border:1px solid rgba(255,255,255,.17);
    backdrop-filter:blur(18px);
    color:var(--white);
}
.HeroFeature>span{
    color:#E4C99F;
    font-size:.55rem;
    font-weight:700;
    letter-spacing:.13em;
    text-transform:uppercase;
}
.HeroFeature>strong{
    margin-top:13px;
    display:block;
    font-family:var(--font-title);
    font-size:1.8rem;
}
.HeroFeature>p{
    margin-top:5px;
    color:rgba(255,255,255,.55);
    font-size:.64rem;
}
.HeroFeatures{
    margin-top:23px;
    padding:18px 0;
    display:flex;
    flex-wrap:wrap;
    gap:16px;
    border-top:1px solid rgba(255,255,255,.12);
    border-bottom:1px solid rgba(255,255,255,.12);
}
.HeroFeatures span{
    color:rgba(255,255,255,.66);
    font-size:.56rem;
}
.HeroFeatures i{
    margin-right:5px;
    color:var(--primary);
}
.HeroFeature .HeroPrice{
    margin-top:18px;
    font-family:var(--font-text);
    font-size:.88rem;
}
.PropertySearch{
    position:absolute;
    left:50%;
    bottom:-50px;
    z-index:5;
    width:min(1200px,calc(100% - 40px));
    padding:19px;
    display:grid;
    grid-template-columns:repeat(4,1fr) auto;
    background:var(--white);
    box-shadow:0 24px 60px rgba(12,14,18,.17);
    transform:translateX(-50%);
}
.SearchField{
    min-width:0;
    padding:4px 22px;
    display:flex;
    flex-direction:column;
    gap:7px;
    border-right:1px solid var(--border);
}
.SearchField label{
    color:var(--text);
    font-size:.53rem;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.SearchField select{
    width:100%;
    background:transparent;
    border:none;
    outline:none;
    color:var(--dark);
    font-size:.68rem;
    font-weight:700;
    cursor:pointer;
}
.SearchButton{
    min-width:195px;
    padding:0 24px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:9px;
    background:var(--secondary);
    border:none;
    color:var(--white);
    font-size:.65rem;
    font-weight:800;
    cursor:pointer;
    transition:background .3s ease;
}
.SearchButton:hover{
    background:var(--primary);
}
.HeroScroll{
    position:absolute;
    right:28px;
    bottom:125px;
    z-index:3;
    display:flex;
    align-items:center;
    gap:10px;
    color:rgba(255,255,255,.56);
    font-size:.54rem;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
    transform:rotate(90deg);
}
.HeroScroll i{
    color:var(--primary);
}
@keyframes HeroZoom{
    from{
        transform:scale(1);
    }
    to{
        transform:scale(1.08);
    }
}
/*=====================================
                SECTIONS
======================================*/
.Section{
    padding:130px 0;
}
.SectionHeader{
    margin-bottom:55px;
    display:grid;
    grid-template-columns:1fr .65fr;
    align-items:end;
    gap:80px;
}
.SectionEyebrow{
    margin-bottom:15px;
    display:block;
    color:var(--primary);
    font-size:.62rem;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
}
.SectionHeader h2{
    max-width:680px;
    color:var(--dark);
    font-family:var(--font-title);
    font-size:3.5rem;
    font-weight:600;
    line-height:1;
}
.SectionHeader>div:last-child{
    padding-bottom:5px;
}
.SectionHeader p{
    font-size:.76rem;
    line-height:1.8;
}
.TextLink{
    margin-top:20px;
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:var(--dark);
    font-size:.65rem;
    font-weight:800;
}
.TextLink i{
    color:var(--primary);
    transition:transform .3s ease;
}
.TextLink:hover i{
    transform:translateX(5px);
}
/*=====================================
        PROPIEDADES DESTACADAS
======================================*/
.Properties{
    padding-top:170px;
    background:var(--light);
}
.PropertiesGrid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:26px;
}
.PropertyCard{
    background:var(--white);
    border:1px solid var(--border);
    transition:transform .4s ease,box-shadow .4s ease,border-color .4s ease;
}
.PropertyCard:hover{
    border-color:transparent;
    box-shadow:0 24px 55px rgba(22,24,29,.11);
    transform:translateY(-8px);
}
.PropertyImage{
    position:relative;
    height:270px;
    overflow:hidden;
}
.PropertyImage img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .7s cubic-bezier(.2,.8,.2,1);
}
.PropertyCard:hover .PropertyImage img{
    transform:scale(1.06);
}
.PropertyBadge{
    position:absolute;
    top:18px;
    left:18px;
    padding:9px 12px;
    background:var(--primary);
    color:var(--white);
    font-size:.5rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.PropertyBadgeDark{
    background:var(--secondary);
}
.PropertyFavorite{
    position:absolute;
    top:16px;
    right:16px;
    width:38px;
    height:38px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:rgba(255,255,255,.9);
    border:none;
    color:var(--dark);
    cursor:pointer;
    transition:background .3s ease,color .3s ease,transform .3s ease;
}
.PropertyFavorite:hover,.PropertyFavorite.Active{
    background:var(--primary);
    color:var(--white);
    transform:scale(1.06);
}
.PropertyPrice{
    position:absolute;
    left:18px;
    bottom:18px;
    padding:10px 13px;
    background:rgba(16,17,20,.78);
    color:var(--white);
    font-size:.62rem;
    font-weight:800;
    backdrop-filter:blur(10px);
}
.PropertyContent{
    padding:26px;
}
.PropertyLocation{
    display:flex;
    align-items:center;
    gap:7px;
    color:var(--primary-dark);
    font-size:.55rem;
    font-weight:700;
}
.PropertyContent h3{
    margin-top:12px;
    color:var(--dark);
    font-family:var(--font-title);
    font-size:1.75rem;
    font-weight:600;
    line-height:1.05;
}
.PropertyContent>p{
    margin-top:13px;
    font-size:.68rem;
    line-height:1.75;
}
.PropertyFeatures{
    margin-top:22px;
    padding:17px 0;
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    border-top:1px solid var(--border);
    border-bottom:1px solid var(--border);
}
.PropertyFeatures span{
    color:var(--text);
    font-size:.54rem;
    font-weight:600;
}
.PropertyFeatures i{
    margin-right:4px;
    color:var(--primary);
}
.PropertyLink{
    margin-top:20px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    color:var(--dark);
    font-size:.62rem;
    font-weight:800;
}
.PropertyLink i{
    color:var(--primary);
    transition:transform .3s ease;
}
.PropertyLink:hover i{
    transform:translateX(5px);
}
/*=====================================
              SOBRE ALTURA
======================================*/
.About{
    background:var(--white);
}
.AboutContainer{
    display:grid;
    grid-template-columns:.9fr 1fr;
    align-items:center;
    gap:90px;
}
.AboutImage{
    position:relative;
}
.AboutImage::before{
    content:"";
    position:absolute;
    top:-20px;
    left:-20px;
    width:58%;
    height:58%;
    border:1px solid var(--primary);
    z-index:0;
}
.AboutImage img{
    position:relative;
    z-index:1;
    width:100%;
    height:620px;
    object-fit:cover;
}
.AboutExperience{
    position:absolute;
    right:-35px;
    bottom:45px;
    z-index:2;
    width:190px;
    padding:26px;
    background:var(--secondary);
    color:var(--white);
    box-shadow:0 20px 45px rgba(16,17,20,.2);
}
.AboutExperience strong{
    display:block;
    color:var(--primary);
    font-family:var(--font-title);
    font-size:3rem;
    line-height:1;
}
.AboutExperience span{
    margin-top:8px;
    display:block;
    color:rgba(255,255,255,.66);
    font-size:.59rem;
    line-height:1.65;
}
.AboutContent h2{
    max-width:600px;
    color:var(--dark);
    font-family:var(--font-title);
    font-size:3.7rem;
    font-weight:600;
    line-height:1;
}
.AboutContent>p{
    max-width:620px;
    margin-top:20px;
    font-size:.75rem;
    line-height:1.85;
}
.AboutValues{
    margin-top:34px;
    display:grid;
    gap:22px;
}
.AboutValue{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:16px;
}
.AboutValue>span{
    width:44px;
    height:44px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:var(--primary-light);
    color:var(--primary-dark);
    font-size:.82rem;
}
.AboutValue strong{
    display:block;
    color:var(--dark);
    font-size:.72rem;
}
.AboutValue p{
    margin-top:5px;
    font-size:.64rem;
    line-height:1.7;
}
.ButtonDark{
    margin-top:34px;
    min-height:54px;
    padding:0 23px;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:11px;
    background:var(--secondary);
    color:var(--white);
    font-size:.66rem;
    font-weight:800;
    transition:background .3s ease,transform .3s ease;
}
.ButtonDark:hover{
    background:var(--primary);
    transform:translateY(-2px);
}
/*=====================================
              ESTADÍSTICAS
======================================*/
.Stats{
    padding:55px 0;
    background:var(--secondary);
}
.StatsGrid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
}
.StatItem{
    position:relative;
    padding:15px 35px;
    text-align:center;
}
.StatItem:not(:last-child){
    border-right:1px solid rgba(255,255,255,.12);
}
.StatItem strong{
    display:block;
    color:var(--primary);
    font-family:var(--font-title);
    font-size:3.2rem;
    font-weight:600;
    line-height:1;
}
.StatItem span{
    margin-top:9px;
    display:block;
    color:rgba(255,255,255,.58);
    font-size:.57rem;
    font-weight:700;
    letter-spacing:.05em;
    text-transform:uppercase;
}
/*=====================================
            PROCESO DE COMPRA
======================================*/
.Process{
    background:var(--light);
}
.ProcessGrid{
    position:relative;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}
.ProcessGrid::before{
    content:"";
    position:absolute;
    top:50px;
    left:9%;
    right:9%;
    height:1px;
    background:var(--border);
}
.ProcessCard{
    position:relative;
    z-index:1;
    padding:30px 24px;
    background:var(--white);
    border:1px solid var(--border);
    transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;
}
.ProcessCard:hover{
    border-color:transparent;
    box-shadow:0 22px 50px rgba(22,24,29,.09);
    transform:translateY(-7px);
}
.ProcessNumber{
    display:block;
    color:var(--primary);
    font-family:var(--font-title);
    font-size:1.1rem;
    font-weight:700;
}
.ProcessIcon{
    width:58px;
    height:58px;
    margin-top:18px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:var(--secondary);
    color:var(--white);
    font-size:1rem;
    transition:background .3s ease,transform .3s ease;
}
.ProcessCard:hover .ProcessIcon{
    background:var(--primary);
    transform:rotate(-4deg) scale(1.04);
}
.ProcessCard h3{
    margin-top:24px;
    color:var(--dark);
    font-family:var(--font-title);
    font-size:1.7rem;
    font-weight:600;
    line-height:1.05;
}
.ProcessCard p{
    margin-top:13px;
    font-size:.66rem;
    line-height:1.75;
}
/*=====================================
                  ASESORES
======================================*/
.Agents{
    background:var(--white);
}
.AgentsGrid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px;
}
.AgentCard{
    background:var(--light);
    border:1px solid var(--border);
    transition:transform .4s ease,box-shadow .4s ease,border-color .4s ease;
}
.AgentCard:hover{
    border-color:transparent;
    box-shadow:0 22px 55px rgba(22,24,29,.1);
    transform:translateY(-8px);
}
.AgentImage{
    position:relative;
    height:390px;
    overflow:hidden;
}
.AgentImage img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top;
    filter:saturate(.88);
    transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .4s ease;
}
.AgentCard:hover .AgentImage img{
    transform:scale(1.05);
    filter:saturate(1);
}
.AgentImage::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 55%,rgba(12,14,18,.5) 100%);
}
.AgentSocial{
    position:absolute;
    right:18px;
    bottom:18px;
    z-index:2;
    display:flex;
    gap:8px;
    transform:translateY(12px);
    opacity:0;
    transition:opacity .35s ease,transform .35s ease;
}
.AgentCard:hover .AgentSocial{
    opacity:1;
    transform:translateY(0);
}
.AgentSocial a{
    width:38px;
    height:38px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:var(--white);
    color:var(--dark);
    font-size:.7rem;
    transition:background .3s ease,color .3s ease;
}
.AgentSocial a:hover{
    background:var(--primary);
    color:var(--white);
}
.AgentContent{
    padding:26px;
}
.AgentContent>span{
    color:var(--primary-dark);
    font-size:.54rem;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}
.AgentContent h3{
    margin-top:9px;
    color:var(--dark);
    font-family:var(--font-title);
    font-size:1.9rem;
    font-weight:600;
}
.AgentContent p{
    margin-top:12px;
    font-size:.66rem;
    line-height:1.75;
}
.AgentContent>a{
    margin-top:20px;
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--dark);
    font-size:.61rem;
    font-weight:800;
}
.AgentContent>a i{
    color:var(--primary);
    transition:transform .3s ease;
}
.AgentContent>a:hover i{
    transform:translateX(5px);
}
/*=====================================
                  GALERÍA
======================================*/
.Gallery{
    background:var(--secondary);
}
.GalleryHeader{
    max-width:760px;
    margin-bottom:52px;
}
.GalleryHeader .SectionEyebrow{
    color:#D7B77C;
}
.GalleryHeader h2{
    color:var(--white);
    font-family:var(--font-title);
    font-size:3.7rem;
    font-weight:600;
    line-height:1;
}
.GalleryHeader p{
    max-width:620px;
    margin-top:20px;
    color:rgba(255,255,255,.58);
    font-size:.75rem;
    line-height:1.8;
}
.GalleryGrid{
    display:grid;
    grid-template-columns:1.1fr .9fr .9fr;
    grid-template-rows:300px 300px;
    gap:18px;
}
.GalleryItem{
    position:relative;
    display:block;
    overflow:hidden;
}
.GalleryItemLarge{
    grid-row:1/3;
}
.GalleryItemWide{
    grid-column:2/4;
}
.GalleryItem img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .5s ease;
}
.GalleryItem::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 35%,rgba(8,10,15,.82) 100%);
    transition:background .4s ease;
}
.GalleryItem:hover::after{
    background:linear-gradient(180deg,rgba(8,10,15,.08) 20%,rgba(8,10,15,.9) 100%);
}
.GalleryItem:hover img{
    transform:scale(1.06);
    filter:saturate(1.08);
}
.GalleryOverlay{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:2;
    padding:28px;
    color:var(--white);
}
.GalleryOverlay span{
    display:block;
    color:#D7B77C;
    font-size:.52rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.GalleryOverlay strong{
    max-width:310px;
    margin-top:8px;
    display:block;
    font-family:var(--font-title);
    font-size:1.65rem;
    font-weight:600;
    line-height:1.05;
}
.GalleryOverlay i{
    position:absolute;
    right:28px;
    bottom:30px;
    color:#D7B77C;
    font-size:.75rem;
    transition:transform .3s ease;
}
.GalleryItem:hover .GalleryOverlay i{
    transform:translateX(6px);
}
/*=====================================
            INVERSIÓN INMOBILIARIA
======================================*/
.Investment{
    background:var(--light);
    overflow:hidden;
}
.InvestmentContainer{
    display:grid;
    grid-template-columns:.9fr 1fr;
    align-items:center;
    gap:90px;
}
.InvestmentContent h2{
    max-width:640px;
    color:var(--dark);
    font-family:var(--font-title);
    font-size:3.7rem;
    font-weight:600;
    line-height:1;
}
.InvestmentContent>p{
    max-width:610px;
    margin-top:22px;
    font-size:.75rem;
    line-height:1.85;
}
.InvestmentBenefits{
    margin-top:34px;
    display:grid;
    gap:22px;
}
.InvestmentBenefit{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:16px;
}
.InvestmentBenefit>span{
    width:46px;
    height:46px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:var(--white);
    border:1px solid var(--border);
    color:var(--primary-dark);
    font-size:.8rem;
}
.InvestmentBenefit strong{
    display:block;
    color:var(--dark);
    font-size:.71rem;
}
.InvestmentBenefit p{
    margin-top:5px;
    font-size:.63rem;
    line-height:1.7;
}
.InvestmentButton{
    margin-top:36px;
}
.InvestmentVisual{
    position:relative;
    min-height:610px;
}
.InvestmentImage{
    position:absolute;
    inset:0 0 0 60px;
    overflow:hidden;
}
.InvestmentImage::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg,transparent 50%,rgba(12,14,18,.34) 100%);
}
.InvestmentImage img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s ease;
}
.InvestmentVisual:hover .InvestmentImage img{
    transform:scale(1.04);
}
.InvestmentCard{
    position:absolute;
    left:0;
    bottom:42px;
    z-index:2;
    width:290px;
    padding:30px;
    background:var(--secondary);
    color:var(--white);
    box-shadow:0 28px 65px rgba(16,17,20,.2);
}
.InvestmentCard>span{
    color:#D7B77C;
    font-size:.52rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.InvestmentCard>strong{
    margin-top:12px;
    display:block;
    font-family:var(--font-title);
    font-size:2.4rem;
    font-weight:600;
}
.InvestmentCard>p{
    margin-top:8px;
    color:rgba(255,255,255,.57);
    font-size:.62rem;
    line-height:1.7;
}
.InvestmentCardData{
    margin-top:24px;
    padding-top:20px;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
    border-top:1px solid rgba(255,255,255,.12);
}
.InvestmentCardData small{
    display:block;
    color:rgba(255,255,255,.47);
    font-size:.48rem;
    line-height:1.5;
    text-transform:uppercase;
}
.InvestmentCardData b{
    margin-top:7px;
    display:block;
    color:var(--primary);
    font-family:var(--font-title);
    font-size:1.35rem;
    font-weight:600;
}
/*=====================================
              TESTIMONIOS
======================================*/
.Testimonials{
    background:var(--white);
    overflow:hidden;
}
.TestimonialsContainer{
    display:grid;
    grid-template-columns:.75fr 1fr;
    align-items:center;
    gap:95px;
}
.TestimonialsIntro h2{
    max-width:520px;
    color:var(--dark);
    font-family:var(--font-title);
    font-size:3.7rem;
    font-weight:600;
    line-height:1;
}
.TestimonialsIntro>p{
    max-width:500px;
    margin-top:22px;
    font-size:.74rem;
    line-height:1.85;
}
.TestimonialsControls{
    margin-top:34px;
    display:flex;
    gap:10px;
}
.TestimonialButton{
    width:48px;
    height:48px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:transparent;
    border:1px solid var(--border);
    color:var(--dark);
    cursor:pointer;
    transition:background .3s ease,border-color .3s ease,color .3s ease;
}
.TestimonialButton:hover{
    background:var(--secondary);
    border-color:var(--secondary);
    color:var(--white);
}
.TestimonialsSlider{
    position:relative;
    min-height:430px;
}
.TestimonialCard{
    position:absolute;
    inset:0;
    padding:48px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    background:var(--light);
    border:1px solid var(--border);
    opacity:0;
    visibility:hidden;
    transform:translateX(35px);
    transition:opacity .5s ease,visibility .5s ease,transform .5s ease;
}
.TestimonialCard.Active{
    position:relative;
    opacity:1;
    visibility:visible;
    transform:translateX(0);
}
.TestimonialQuote{
    position:absolute;
    top:32px;
    right:38px;
    color:rgba(181,139,71,.16);
    font-size:4.5rem;
}
.TestimonialStars{
    display:flex;
    gap:5px;
    color:var(--primary);
    font-size:.65rem;
}
.TestimonialCard blockquote{
    position:relative;
    z-index:1;
    max-width:680px;
    margin-top:25px;
    color:var(--dark);
    font-family:var(--font-title);
    font-size:2rem;
    font-weight:600;
    line-height:1.25;
}
.TestimonialAuthor{
    margin-top:34px;
    padding-top:26px;
    display:flex;
    align-items:center;
    gap:15px;
    border-top:1px solid var(--border);
}
.TestimonialAuthor img{
    width:58px;
    height:58px;
    object-fit:cover;
    border-radius:50%;
}
.TestimonialAuthor strong{
    display:block;
    color:var(--dark);
    font-size:.7rem;
}
.TestimonialAuthor span{
    margin-top:5px;
    display:block;
    color:var(--text);
    font-size:.55rem;
}
.TestimonialDots{
    position:absolute;
    right:30px;
    bottom:24px;
    z-index:4;
    display:flex;
    gap:7px;
}
.TestimonialDot{
    width:7px;
    height:7px;
    padding:0;
    background:#D6D1C8;
    border:none;
    border-radius:50%;
    cursor:pointer;
    transition:background .3s ease,transform .3s ease;
}
.TestimonialDot.Active{
    background:var(--primary);
    transform:scale(1.35);
}
/*=====================================
                  CONTACTO
======================================*/
.Contact{
    position:relative;
    background:var(--secondary);
    overflow:hidden;
}
.Contact::before{
    content:"";
    position:absolute;
    top:-160px;
    left:-160px;
    width:420px;
    height:420px;
    border:1px solid rgba(181,139,71,.18);
    border-radius:50%;
}
.ContactContainer{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:.8fr 1fr;
    align-items:center;
    gap:90px;
}
.ContactInfo .SectionEyebrow{
    color:#D7B77C;
}
.ContactInfo h2{
    max-width:560px;
    color:var(--white);
    font-family:var(--font-title);
    font-size:3.7rem;
    font-weight:600;
    line-height:1;
}
.ContactInfo>p{
    max-width:540px;
    margin-top:22px;
    color:rgba(255,255,255,.58);
    font-size:.74rem;
    line-height:1.85;
}
.ContactDetails{
    margin-top:38px;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:22px;
}
.ContactDetail{
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:center;
    gap:14px;
}
.ContactDetail>span{
    width:44px;
    height:44px;
    display:flex;
    justify-content:center;
    align-items:center;
    border:1px solid rgba(255,255,255,.15);
    color:var(--primary);
}
.ContactDetail small{
    display:block;
    color:rgba(255,255,255,.42);
    font-size:.49rem;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.ContactDetail strong{
    margin-top:5px;
    display:block;
    color:var(--white);
    font-size:.61rem;
    font-weight:600;
}
.ContactSocial{
    margin-top:38px;
    padding-top:28px;
    display:flex;
    align-items:center;
    gap:18px;
    border-top:1px solid rgba(255,255,255,.1);
}
.ContactSocial>span{
    color:rgba(255,255,255,.45);
    font-size:.53rem;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
}
.ContactSocial>div{
    display:flex;
    gap:8px;
}
.ContactSocial a{
    width:36px;
    height:36px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:rgba(255,255,255,.06);
    color:var(--white);
    font-size:.65rem;
    transition:background .3s ease,color .3s ease;
}
.ContactSocial a:hover{
    background:var(--primary);
    color:var(--white);
}
.ContactPanel{
    padding:45px;
    background:var(--white);
    box-shadow:0 30px 70px rgba(0,0,0,.2);
}
.FormHeader>span{
    color:var(--primary-dark);
    font-size:.53rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.FormHeader h3{
    max-width:500px;
    margin-top:10px;
    color:var(--dark);
    font-family:var(--font-title);
    font-size:2.3rem;
    font-weight:600;
    line-height:1.05;
}
.FormGrid{
    margin-top:30px;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
}
.FormGroup{
    display:flex;
    flex-direction:column;
    gap:8px;
}
.FormGroupFull{
    grid-column:1/-1;
}
.FormGroup label{
    color:var(--dark);
    font-size:.53rem;
    font-weight:800;
    letter-spacing:.05em;
    text-transform:uppercase;
}
.FormGroup input,.FormGroup select,.FormGroup textarea{
    width:100%;
    padding:14px 0;
    background:transparent;
    border:none;
    border-bottom:1px solid var(--border);
    outline:none;
    color:var(--dark);
    font-family:var(--font-text);
    font-size:.66rem;
    transition:border-color .3s ease;
}
.FormGroup input:focus,.FormGroup select:focus,.FormGroup textarea:focus{
    border-color:var(--primary);
}
.FormGroup textarea{
    resize:vertical;
}
.FormConsent{
    margin-top:22px;
    display:flex;
    align-items:flex-start;
    gap:10px;
    cursor:pointer;
}
.FormConsent input{
    margin-top:3px;
    accent-color:var(--primary);
}
.FormConsent span{
    color:var(--text);
    font-size:.55rem;
    line-height:1.65;
}
.ContactButton{
    width:100%;
    min-height:56px;
    margin-top:24px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    background:var(--secondary);
    border:none;
    color:var(--white);
    font-family:var(--font-text);
    font-size:.65rem;
    font-weight:800;
    cursor:pointer;
    transition:background .3s ease,transform .3s ease;
}
.ContactButton:hover{
    background:var(--primary);
    transform:translateY(-2px);
}
.ContactButton:disabled{
    cursor:not-allowed;
    opacity:.75;
}
.FormMessage{
    min-height:18px;
    margin-top:14px;
    color:var(--primary-dark);
    font-size:.58rem;
    font-weight:700;
    text-align:center;
}
/*=====================================
                  FOOTER
======================================*/
.Footer{
    background:#0C1018;
    color:var(--white);
}
.FooterTop{
    padding-top:85px;
    padding-bottom:70px;
    display:grid;
    grid-template-columns:1.4fr .65fr .85fr 1fr;
    gap:65px;
}
.FooterLogo{
    width:max-content;
    color:var(--white);
}
.FooterBrand>p{
    max-width:360px;
    margin-top:24px;
    color:rgba(255,255,255,.46);
    font-size:.65rem;
    line-height:1.85;
}
.FooterSocial{
    margin-top:27px;
    display:flex;
    gap:9px;
}
.FooterSocial a{
    width:38px;
    height:38px;
    display:flex;
    justify-content:center;
    align-items:center;
    border:1px solid rgba(255,255,255,.12);
    color:rgba(255,255,255,.7);
    font-size:.67rem;
    transition:background .3s ease,border-color .3s ease,color .3s ease;
}
.FooterSocial a:hover{
    background:var(--primary);
    border-color:var(--primary);
    color:var(--white);
}
.FooterColumn h3{
    margin-bottom:24px;
    color:var(--white);
    font-family:var(--font-title);
    font-size:1.35rem;
    font-weight:600;
}
.FooterColumn nav{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
}
.FooterColumn nav a{
    position:relative;
    color:rgba(255,255,255,.48);
    font-size:.6rem;
    transition:color .3s ease,transform .3s ease;
}
.FooterColumn nav a:hover{
    color:var(--primary);
    transform:translateX(4px);
}
.FooterContact{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:15px;
}
.FooterContact h3{
    margin-bottom:9px;
}
.FooterContact a,.FooterContact p{
    display:grid;
    grid-template-columns:18px 1fr;
    gap:9px;
    color:rgba(255,255,255,.48);
    font-size:.58rem;
    line-height:1.65;
    transition:color .3s ease;
}
.FooterContact a:hover{
    color:var(--primary);
}
.FooterContact i{
    margin-top:2px;
    color:var(--primary);
}
.FooterBottom{
    min-height:80px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:25px;
    border-top:1px solid rgba(255,255,255,.09);
}
.FooterBottom p,.FooterBottom a{
    color:rgba(255,255,255,.35);
    font-size:.52rem;
}
.FooterBottom>div{
    display:flex;
    gap:24px;
}
.FooterBottom a{
    transition:color .3s ease;
}
.FooterBottom a:hover{
    color:var(--primary);
}
.DemoNotice{
    padding:16px 0;
    background:#080B11;
    border-top:1px solid rgba(255,255,255,.06);
}
.DemoNotice p{
    color:rgba(255,255,255,.32);
    font-size:.51rem;
    line-height:1.7;
    text-align:center;
}
.DemoNotice a{
    color:var(--primary);
    font-weight:700;
    transition:color .3s ease;
}
.DemoNotice a:hover{
    color:#D7B77C;
}
/*=====================================
          BOTONES FLOTANTES
======================================*/
.FloatingActions{
    position:fixed;
    right:24px;
    bottom:24px;
    z-index:20;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:10px;
}
.WhatsAppButton{
    min-height:48px;
    padding:0 18px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:9px;
    background:#25D366;
    border-radius:30px;
    color:var(--white);
    box-shadow:0 12px 30px rgba(0,0,0,.18);
    font-size:.61rem;
    font-weight:800;
    transition:transform .3s ease,box-shadow .3s ease,background .3s ease;
}
.WhatsAppButton i{
    font-size:1.05rem;
}
.WhatsAppButton:hover{
    background:#1EBE5D;
    box-shadow:0 16px 38px rgba(0,0,0,.24);
    transform:translateY(-3px);
}
.ScrollTop{
    width:46px;
    height:46px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:var(--primary);
    border:none;
    border-radius:50%;
    color:var(--white);
    box-shadow:0 12px 30px rgba(0,0,0,.18);
    cursor:pointer;
    opacity:0;
    visibility:hidden;
    transform:translateY(15px);
    transition:opacity .3s ease,visibility .3s ease,transform .3s ease,background .3s ease;
}
.ScrollTop.Show{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}
.ScrollTop:hover{
    background:var(--primary-dark);
    transform:translateY(-3px);
}
/*=====================================
              RESPONSIVE
======================================*/
@media(max-width:950px){
    .Navigation{
        position:absolute;
        top:100%;
        left:20px;
        right:20px;
        padding:18px;
        flex-direction:column;
        align-items:stretch;
        gap:4px;
        background:var(--white);
        border:1px solid var(--border);
        box-shadow:0 25px 55px rgba(10,12,16,.18);
        opacity:0;
        visibility:hidden;
        transform:translateY(-12px);
        transition:opacity .3s ease,visibility .3s ease,transform .3s ease;
    }
    .Navigation.Active{
        opacity:1;
        visibility:visible;
        transform:translateY(0);
    }
    .Navigation a{
        padding:14px 15px;
        color:var(--dark);
    }
    .Navigation a::after{
        display:none;
    }
    .Navigation a:hover,.Navigation a.Active{
        background:var(--primary-light);
        color:var(--primary-dark);
    }
    .MenuButton{
        display:flex;
    }
}
@media(max-width:600px){
    .Container{
        width:min(100% - 28px,1200px);
    }
    .Header{
        padding:16px 0;
    }
    .Header.Scrolled{
        padding:11px 0;
    }
    .LogoIcon{
        width:42px;
        height:42px;
        font-size:1.55rem;
    }
    .LogoText strong{
        font-size:1.35rem;
    }
    .HeaderButton{
        display:none;
    }
    .Navigation{
        left:14px;
        right:14px;
    }
}
    @media(max-width:1050px){
    .HeroContainer{
        grid-template-columns:1fr .6fr;
        gap:50px;
    }
    .HeroContent h1{
        font-size:4.3rem;
    }
    .PropertySearch{
        grid-template-columns:repeat(2,1fr);
        gap:14px;
    }
    .SearchField{
        padding:11px 15px;
        border:1px solid var(--border);
    }
    .SearchButton{
        min-height:55px;
        grid-column:1/-1;
    }
}
@media(max-width:850px){
    .Hero{
        min-height:auto;
        padding:170px 0 180px;
    }
    .HeroContainer{
        grid-template-columns:1fr;
    }
    .HeroFeature{
        max-width:430px;
    }
    .HeroContent h1{
        font-size:4rem;
    }
    .HeroScroll{
        display:none;
    }
}
@media(max-width:600px){
    .Hero{
        padding:145px 0 325px;
    }
    .HeroContent h1{
        font-size:3.1rem;
    }
    .HeroContent>p{
        font-size:.74rem;
    }
    .HeroActions{
        align-items:stretch;
        flex-direction:column;
    }
    .ButtonPrimary,.ButtonSecondary{
        width:100%;
    }
    .HeroFeature{
        padding:23px;
    }
    .PropertySearch{
        bottom:-265px;
        width:calc(100% - 28px);
        grid-template-columns:1fr;
    }
    .SearchButton{
        grid-column:auto;
    }
}
@media(max-width:1050px){
    .SectionHeader{
        gap:50px;
    }
    .PropertiesGrid{
        grid-template-columns:repeat(2,1fr);
    }
    .PropertyCard:last-child{
        grid-column:1/-1;
        width:calc(50% - 13px);
        justify-self:center;
    }
}
@media(max-width:750px){
    .Section{
        padding:100px 0;
    }
    .Properties{
        padding-top:340px;
    }
    .SectionHeader{
        grid-template-columns:1fr;
        gap:22px;
    }
    .SectionHeader h2{
        font-size:3rem;
    }
}
@media(max-width:600px){
    .PropertiesGrid{
        grid-template-columns:1fr;
    }
    .PropertyCard:last-child{
        grid-column:auto;
        width:100%;
    }
    .PropertyImage{
        height:245px;
    }
    .SectionHeader h2{
        font-size:2.65rem;
    }
}
@media(max-width:1050px){
    .AboutContainer{
        gap:55px;
    }
    .AboutImage img{
        height:560px;
    }
    .AboutExperience{
        right:-20px;
    }
    .AboutContent h2{
        font-size:3.3rem;
    }
}
@media(max-width:850px){
    .AboutContainer{
        grid-template-columns:1fr;
    }
    .AboutImage{
        max-width:620px;
    }
    .AboutExperience{
        right:20px;
    }
    .StatsGrid{
        grid-template-columns:repeat(2,1fr);
    }
    .StatItem:nth-child(2){
        border-right:none;
    }
    .StatItem:nth-child(-n+2){
        border-bottom:1px solid rgba(255,255,255,.12);
    }
}
@media(max-width:600px){
    .AboutImage::before{
        top:-12px;
        left:-12px;
    }
    .AboutImage img{
        height:460px;
    }
    .AboutExperience{
        right:12px;
        bottom:20px;
        width:165px;
        padding:21px;
    }
    .AboutExperience strong{
        font-size:2.5rem;
    }
    .AboutContent h2{
        font-size:2.8rem;
    }
    .ButtonDark{
        width:100%;
        text-align:center;
    }
    .Stats{
        padding:35px 0;
    }
    .StatsGrid{
        grid-template-columns:1fr;
    }
    .StatItem{
        padding:25px 15px;
        border-right:none!important;
        border-bottom:1px solid rgba(255,255,255,.12);
    }
    .StatItem:last-child{
        border-bottom:none;
    }
}
@media(max-width:1050px){
    .ProcessGrid{
        grid-template-columns:repeat(2,1fr);
    }
    .ProcessGrid::before{
        display:none;
    }
}
@media(max-width:600px){
    .ProcessGrid{
        grid-template-columns:1fr;
    }
}
@media(max-width:1050px){
    .AgentsGrid{
        grid-template-columns:repeat(2,1fr);
    }
    .AgentCard:last-child{
        grid-column:1/-1;
        width:calc(50% - 14px);
        justify-self:center;
    }
}
@media(max-width:700px){
    .AgentsGrid{
        grid-template-columns:1fr;
    }
    .AgentCard:last-child{
        grid-column:auto;
        width:100%;
    }
    .AgentImage{
        height:420px;
    }
    .AgentSocial{
        opacity:1;
        transform:none;
    }
}
@media(max-width:480px){
    .AgentImage{
        height:350px;
    }
}
@media(max-width:1000px){
    .GalleryGrid{
        grid-template-columns:repeat(2,1fr);
        grid-template-rows:360px 260px 300px;
    }
    .GalleryItemLarge{
        grid-column:1/2;
        grid-row:1/3;
    }
    .GalleryItemWide{
        grid-column:1/3;
    }
}
@media(max-width:700px){
    .GalleryHeader h2{
        font-size:3rem;
    }
    .GalleryGrid{
        grid-template-columns:1fr;
        grid-template-rows:none;
    }
    .GalleryItem,.GalleryItemLarge,.GalleryItemWide{
        grid-column:auto;
        grid-row:auto;
        height:320px;
    }
}
@media(max-width:480px){
    .GalleryHeader h2{
        font-size:2.65rem;
    }
    .GalleryItem,.GalleryItemLarge,.GalleryItemWide{
        height:270px;
    }
    .GalleryOverlay{
        padding:22px;
    }
    .GalleryOverlay strong{
        font-size:1.45rem;
    }
    .GalleryOverlay i{
        right:22px;
        bottom:24px;
    }
}
@media(max-width:1050px){
    .InvestmentContainer{
        gap:55px;
    }
    .InvestmentContent h2{
        font-size:3.25rem;
    }
    .InvestmentVisual{
        min-height:550px;
    }
}
@media(max-width:850px){
    .InvestmentContainer{
        grid-template-columns:1fr;
    }
    .InvestmentVisual{
        min-height:580px;
    }
    .InvestmentImage{
        left:45px;
    }
}
@media(max-width:600px){
    .InvestmentContent h2{
        font-size:2.8rem;
    }
    .InvestmentButton{
        width:100%;
        text-align:center;
    }
    .InvestmentVisual{
        min-height:520px;
    }
    .InvestmentImage{
        inset:0;
    }
    .InvestmentCard{
        left:14px;
        bottom:18px;
        width:calc(100% - 28px);
        padding:24px;
    }
}
@media(max-width:420px){
    .InvestmentVisual{
        min-height:470px;
    }
    .InvestmentCard>strong{
        font-size:2rem;
    }
}
@media(max-width:1000px){
    .TestimonialsContainer{
        gap:55px;
    }
    .TestimonialsIntro h2{
        font-size:3.25rem;
    }
    .TestimonialCard{
        padding:40px;
    }
    .TestimonialCard blockquote{
        font-size:1.75rem;
    }
}
@media(max-width:800px){
    .TestimonialsContainer{
        grid-template-columns:1fr;
    }
    .TestimonialsIntro{
        max-width:620px;
    }
    .TestimonialsSlider{
        min-height:390px;
    }
}
@media(max-width:600px){
    .TestimonialsIntro h2{
        font-size:2.8rem;
    }
    .TestimonialsControls{
        display:none;
    }
    .TestimonialsSlider{
        min-height:450px;
    }
    .TestimonialCard{
        padding:34px 25px 70px;
    }
    .TestimonialQuote{
        top:24px;
        right:25px;
        font-size:3.5rem;
    }
    .TestimonialCard blockquote{
        font-size:1.55rem;
    }
    .TestimonialDots{
        right:25px;
        bottom:28px;
    }
}
@media(max-width:1050px){
    .ContactContainer{
        gap:55px;
    }
    .ContactInfo h2{
        font-size:3.25rem;
    }
    .ContactPanel{
        padding:38px;
    }
}
@media(max-width:850px){
    .ContactContainer{
        grid-template-columns:1fr;
    }
    .ContactInfo{
        max-width:680px;
    }
}
@media(max-width:600px){
    .ContactInfo h2{
        font-size:2.8rem;
    }
    .ContactDetails{
        grid-template-columns:1fr;
    }
    .ContactPanel{
        padding:30px 22px;
    }
    .FormHeader h3{
        font-size:2rem;
    }
    .FormGrid{
        grid-template-columns:1fr;
    }
    .FormGroupFull{
        grid-column:auto;
    }
}
@media(max-width:1050px){
    .FooterTop{
        grid-template-columns:1.2fr repeat(2,1fr);
    }
    .FooterContact{
        grid-column:1/-1;
        display:grid;
        grid-template-columns:repeat(2,1fr);
    }
    .FooterContact h3{
        grid-column:1/-1;
    }
}
@media(max-width:700px){
    .FooterTop{
        padding-top:70px;
        padding-bottom:55px;
        grid-template-columns:repeat(2,1fr);
        gap:45px;
    }
    .FooterBrand{
        grid-column:1/-1;
    }
    .FooterContact{
        grid-template-columns:1fr;
    }
    .FooterContact h3{
        grid-column:auto;
    }
    .FooterBottom{
        padding:25px 0;
        flex-direction:column;
        justify-content:center;
        text-align:center;
    }
}
@media(max-width:480px){
    .FooterTop{
        grid-template-columns:1fr;
    }
    .FooterBrand{
        grid-column:auto;
    }
    .FooterBottom>div{
        flex-direction:column;
        gap:10px;
    }
    .FloatingActions{
        right:15px;
        bottom:15px;
    }
    .WhatsAppButton{
        width:48px;
        padding:0;
        border-radius:50%;
    }
    .WhatsAppButton span{
        display:none;
    }
}