*,*::before,*::after{
box-sizing:border-box}

@font-face{
font-family:'AlbraDisplay';src:url(../fonts/AlbraSansTRIAL-Regular.otf) format('opentype')}

@font-face{
font-family:'RobotoMed';src:url(../fonts/Roboto-Medium.ttf) format('truetype')}

@font-face{
font-family:'AWConqueror';src:url(../fonts/AWConqueror.otf) format('truetype')}

.site-preloader{
position:fixed;inset:0;background:#0a0a0a;z-index:99999;display:flex;align-items:center;justify-content:center;opacity:1;visibility:visible;transition:opacity .5s ease,visibility .5s ease}

.site-preloader.is-hidden{
opacity:0;visibility:hidden}

.site-preloader-inner{
display:flex;align-items:center;justify-content:center}

.site-preloader-inner img{
display:block;width:min(280px, 52vw);height:auto;animation:preloaderPulse 1.8s ease-in-out infinite}

@keyframes preloaderPulse{
0%{
opacity:.72;transform:scale(1)}

50%{
opacity:1;transform:scale(1.03)}

100%{
opacity:.72;transform:scale(1)}

}

html{
scroll-behavior:smooth}

section[id]{
scroll-margin-top:110px}

.section-flash{
animation:sectionFlash 0.9s ease}

@keyframes sectionFlash{
0%{
filter:brightness(1.12);transform:translateY(8px)}

100%{
filter:brightness(1);transform:translateY(0)}

}

body{
margin:0;background:#0a0a0a;color:#f3eadf;font-family:AWConqueror,serif}

img{
max-width:100%;display:block}

a{
text-decoration:none}

section[id]{
scroll-margin-top:120px}

:root{
--bg-black:#000000;--text-main:#f2e6d8;--text-soft:rgba(242, 230, 216, 0.92);--text-menu:rgba(255, 245, 235, 0.9);--line-soft:rgba(255, 255, 255, 0.28);--header-height:108px;--header-pad-x:48px;--menu-size:18px;--menu-gap:46px;--hero-title-min:56px;--hero-title-fluid:7.1vw;--hero-title-max:108px;--hero-sub-min:32px;--hero-sub-fluid:3vw;--hero-sub-max:48px;--transition:0.3s ease;--z-header:50;--z-mobile:80}

.site-header{
position:absolute;top:0;left:0;width:100%;z-index:var(--z-header);padding:34px 64px 0;padding-right:72px}

.header-wrap{
display:grid;grid-template-columns:auto 1fr auto;align-items:start;column-gap:48px}

.site-logo{
display:inline-flex;align-items:center;justify-content:flex-start;max-width:300px}

.site-logo img{
width:300px;height:auto}

.main-nav{
display:flex;justify-content:center;gap:clamp(20px, 4vw, 60px);align-items:flex-start;padding-top:8px}

.nav-link{
position:relative;font-family:AWConqueror,serif;font-size:var(--menu-size);line-height:1;color:var(--text-menu);font-weight:400;transition:opacity var(--transition),color var(--transition)}

.nav-link:hover{
opacity:.75}

.nav-link::after{
content:"";position:absolute;left:0;bottom:-8px;width:100%;height:1px;background:rgb(255 255 255 / .65);transform:scaleX(0);transform-origin:center;transition:transform var(--transition)}

.nav-link:hover::after,.nav-link.active::after{
transform:scaleX(1)}

.header-cta{
margin-top:0;align-self:start;display:inline-flex;align-items:center;justify-content:center;min-width:116px;height:48px;padding:0 22px;border:1px solid rgb(255 255 255 / .5);border-radius:10px;color:var(--text-menu);font-family:AWConqueror,serif;font-size:18px;line-height:1;transition:background var(--transition),border-color var(--transition),opacity var(--transition)}

.header-cta:hover{
background:rgb(255 255 255 / .08);border-color:rgb(255 255 255 / .75)}

.menu-toggle{
display:none;border:0;background:#fff0;width:44px;height:44px;padding:0;cursor:pointer}

.menu-toggle span{
display:block;width:24px;height:1.5px;background:#fff;margin:5px auto}

.hero-section{
position:relative;min-height:110vh;min-height:110svh;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#000}

.hero-bg{
position:absolute;inset:0;background-image:url(../../img/bghero.webp);background-size:cover;background-position:center center;background-repeat:no-repeat;transform:scale(1.015)}

.hero-overlay{
position:absolute;inset:0;pointer-events:none}

.hero-overlay-top{
background:linear-gradient(to bottom,rgb(0 0 0 / .24) 0%,rgb(0 0 0 / .1) 18%,rgb(0 0 0 / .04) 36%,rgb(0 0 0 / .08) 58%,rgb(0 0 0 / .18) 100%)}

.hero-overlay-bottom{
background:linear-gradient(to bottom,#fff0 74%,rgb(0 0 0 / .18) 84%,rgb(0 0 0 / .54) 99%,rgb(0 0 0 / .9) 100%)}

.hero-content{
position:relative;z-index:2;text-align:center;width:100%;max-width:1200px;padding:100px 24px 118px}

.hero-title{
margin:0;font-family:AWConqueror,serif;color:var(--text-main);font-weight:400;line-height:1.2;letter-spacing:.035em;font-size:clamp(var(--hero-title-min), var(--hero-title-fluid), var(--hero-title-max));text-transform:uppercase;text-wrap:balance}

.hero-subtitle{
font-family:AlbraDisplay,serif;margin:10px 0 0;color:var(--text-soft);font-size:clamp(var(--hero-sub-min), var(--hero-sub-fluid), var(--hero-sub-max));line-height:1.02;font-style:italic;font-weight:400;margin-top:10px}

.mobile-menu{
position:fixed;inset:0;z-index:var(--z-mobile);background:rgb(0 0 0 / .96);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--transition),visibility var(--transition)}

.mobile-menu.open{
opacity:1;visibility:visible;pointer-events:auto}

.mobile-menu-inner{
position:relative;width:100%;height:100%;padding:100px 24px 40px;display:flex;align-items:center;justify-content:center}

.mobile-close{
position:absolute;top:28px;right:22px;background:#fff0;border:0;color:#fff;font-size:40px;line-height:1;cursor:pointer}

.mobile-nav{
display:flex;flex-direction:column;align-items:center;gap:24px}

.mobile-link{
color:#fff;font-family:AWConqueror,serif;font-size:24px;line-height:1.1}

.mobile-link-cta{
border:1px solid rgb(255 255 255 / .55);border-radius:10px;padding:12px 24px;margin-top:8px}

body.menu-open{
overflow:hidden}

@media (max-width:1399px){
:root{
--header-pad-x:32px;--menu-gap:34px;--menu-size:17px;--hero-title-max:100px}

.site-logo img{
width:250px}

.hero-content{
max-width:1100px;padding-top:205px}

}

@media (max-width:1199px){
:root{
--header-height:92px;--header-pad-x:24px;--hero-title-min:50px;--hero-title-fluid:8vw;--hero-title-max:84px;--hero-sub-min:20px;--hero-sub-fluid:2.8vw;--hero-sub-max:32px}

.site-header{
padding:28px 24px 0}

.header-wrap{
grid-template-columns:auto auto;justify-content:space-between;align-items:center}

.main-nav,.header-cta{
display:none}

.menu-toggle{
display:inline-block}

.site-logo img{
width:220px}

.hero-content{
max-width:900px;padding:185px 24px 100px}

.hero-title{
line-height:.93;letter-spacing:-.03em}

.hero-subtitle{
margin-top:10px;line-height:1.04}

}

@media (max-width:767px){
.site-header{
padding:20px 20px 0}

.site-logo img{
width:180px}

.hero-section{
min-height:100svh}

.hero-bg{
background-position:center center;transform:scale(1.02)}

.hero-content{
padding:165px 20px 88px;max-width:680px}

.hero-title{
font-size:clamp(42px, 11vw, 64px);line-height:.95;letter-spacing:-.022em}

.hero-subtitle{
margin-top:9px;font-size:clamp(18px, 5vw, 26px);line-height:1.06}

}

@media (max-width:479px){
:root{
--hero-title-min:38px;--hero-title-max:54px;--hero-sub-min:17px;--hero-sub-max:22px}

.site-header{
padding-left:16px;padding-right:16px}

.site-logo img{
width:156px}

.hero-content{
padding:150px 16px 74px}

.hero-title{
line-height:.97}

.hero-subtitle{
margin-top:8px}

.mobile-link{
font-size:21px}

}

.proyecto-section{
background:#000;padding:120px 0 110px}

.proyecto-container{
width:min(1500px, calc(100% - 72px));margin:0 auto}

.proyecto-row{
display:flex;align-items:center;justify-content:space-between}

.proyecto-row-top{
margin-bottom:78px}

.proyecto-row-bottom{
margin-bottom:0}

.proyecto-top-copy{
width:48%;max-width:700px;padding-right:30px}

.proyecto-top-image{
width:68%;display:flex;justify-content:flex-end}

.proyecto-top-image img{
width:70%;height:auto;display:block}

.proyecto-bottom-image{
width:58%}

.proyecto-bottom-image img{
width:80%;height:auto;display:block}

.proyecto-bottom-copy{
width:42%;max-width:520px;padding-left:10px}

.proyecto-title{
margin:0 0 26px;font-family:'AWConqueror',serif;font-size:clamp(42px, 4.0vw, 68px);line-height:.98;letter-spacing:0em;color:#fff;font-weight:100;text-transform:uppercase}

.proyecto-desc{
margin:0 0 42px;max-width:620px;font-family:'AWConqueror',serif;font-size:18px;line-height:1.45;color:#fff;font-weight:400}

.proyecto-features{
display:flex;align-items:flex-start;justify-content:flex-start;gap:10px;max-width:640px}

.feature-item{
width:214px;text-align:center}

.feature-icon{
width:48px;height:48px;margin:0 auto 14px;border:1px solid rgb(255 255 255 / .34);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}

.feature-icon i{
font-size:17px;line-height:1}

.feature-item p{
margin:0;font-family:'AWConqueror',serif;font-size:18px;line-height:1.35;color:#fff;font-weight:400;font-style:italic}

.feature-item em{
font-style:italic}

.proyecto-quote{
margin:0 0 10px;font-family:'AWConqueror',serif;font-size:clamp(18px, 2.0vw, 34px);line-height:1.17;letter-spacing:-.01em;color:#fff;font-weight:100;text-transform:uppercase}

.proyecto-hashtag{
margin:0;font-family:'AlbraDisplay',serif;font-size:clamp(22px, 2vw, 34px);line-height:1.1;color:#fff;font-style:italic;font-weight:400}

@media (max-width:991px){
.proyecto-container{
width:min(100%, calc(100% - 40px))}

.proyecto-row{
flex-direction:column;align-items:flex-start}

.proyecto-row-top,.proyecto-row-bottom{
gap:38px;margin-bottom:56px}

.proyecto-top-copy,.proyecto-top-image,.proyecto-bottom-image,.proyecto-bottom-copy{
width:100%;max-width:100%;padding:0;margin-top:-30px}

.proyecto-top-image,.proyecto-bottom-image{
justify-content:flex-start}

.proyecto-top-image img,.proyecto-bottom-image img{
max-width:100%}

.proyecto-features{
flex-wrap:wrap;gap:24px 18px;max-width:100%}

.feature-item{
width:calc(33.333% - 12px)}

}

@media (max-width:767px){
.proyecto-section{
padding:80px 0;padding-left:20px;padding-right:20px}

.proyecto-container{
width:min(100%, calc(100% - 32px))}

.proyecto-title{
font-size:clamp(38px, 10vw, 56px);margin-bottom:20px;text-align:center}

.proyecto-desc{
font-size:18px;font-family:AWConqueror;margin-bottom:80px;font-weight:100}

.proyecto-features{
flex-direction:column;gap:18px}

.feature-item{
width:100%;display:grid;grid-template-columns:48px 1fr;gap:14px;text-align:left;align-items:start}

.feature-icon{
width:70px;height:70px;margin:0 auto 14px;border:1px solid rgb(255 255 255 / .34);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}

.feature-icon img{
width:40%}

.feature-item p{
font-size:20px;padding-top:6px;font-family:AlbraDisplay}

.proyecto-quote{
font-size:clamp(20px, 6vw, 32px);font-weight:100}

.proyecto-hashtag{
font-size:clamp(20px, 5.3vw, 28px)}

}

.proyecto-layout{
display:block}

@media (max-width:767px){
.proyecto-layout{
display:flex;flex-direction:column}

.proyecto-row-top{
order:1}

.proyecto-row-bottom{
order:2}

.proyecto-row-top,.proyecto-row-bottom{
display:contents}

.proyecto-top-copy{
order:1}

.proyecto-top-image{
order:2}

.proyecto-top-image img{
width:100%;margin-bottom:50px}

.proyecto-bottom-copy{
order:3;margin-bottom:40px}

.proyecto-bottom-image{
order:4}

.proyecto-bottom-image img{
width:100%}

.feature-item{
display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:40px}

.feature-icon{
margin:0 0 10px}

.feature-item p{
padding-top:0}

}

.proyecto-hashtag{
margin-bottom:40px}

}

.lifestyle-section{
position:relative;background:#000}

.lifestyle-slider{
position:relative;width:100%;min-height:100vh;overflow:hidden}

.lifestyle-slider .swiper-slide{
position:relative;min-height:100vh}

.lifestyle-bg{
position:absolute;inset:0;background-size:cover;background-repeat:no-repeat;background-position:center center}

.patio-bg {
  background-image: url('../../img/sliders/patio2.webp');  }

.patio-bg1 {
  background-image: url('../../img/sliders/patio1.webp');  }

.lifestyle-overlay{
position:absolute;inset:0;background:linear-gradient(to bottom,rgb(0 0 0 / .45) 0%,rgb(48 25 10 / .18) 26%,rgb(0 0 0 / .08) 55%,rgb(0 0 0 / .14) 100%);pointer-events:none}

.lifestyle-inner{
position:relative;z-index:2;min-height:100vh;width:min(1600px, calc(100% - 96px));margin:0 auto;padding:78px 0 110px;display:grid;grid-template-columns:1.15fr 0.95fr;column-gap:20px;align-items:start}

.cafe-inner{
	padding-top:30px;	}

.inner-rooftop{
	padding-top:30px;	}

.inner-override{
	padding-top:30px;	}

.lifestyle-left{
max-width:760px}

.lifestyle-title{
margin:0 0 22px;font-family:'AWConqueror',serif;font-size:clamp(48px, 5.2vw, 98px);line-height:.95;letter-spacing:0em;color:#fff;margin-top:20px;font-weight:100;text-transform:uppercase}

.lifestyle-practical{
	font-size: clamp(60px, 7.5vw, 82px);}

.lifestyle-desc{
margin:0;max-width:760px;font-family:'AWConqueror',serif;font-size:clamp(20px, 1.7vw, 42px);line-height:1.25;color:#fff;font-weight:100}

.lifestyle-desc em{
font-style:italic}

.lifestyle-right{
padding-top:18px}

.lifestyle-list{
width:100%}

.wellness-list{
	width:90%;	padding-left:10%;}

.list-override{
	width:90%;	padding-left:10%;}

.lifestyle-item{
padding:18px 0 18px;border-bottom:1px solid rgb(255 255 255 / .28);font-family:'AWConqueror',serif;font-size:clamp(18px, 1.10vw, 34px);line-height:1.25;color:#fff;font-weight:400}

.lifestyle-item:first-child{
border-top:1px solid rgb(255 255 255 / .28)}

.lifestyle-nav{
position:absolute;right:52px;bottom:34px;z-index:5;display:flex;gap:14px}

.lifestyle-prev,.lifestyle-next{
width:52px;height:52px;border:0;border-radius:50%;background:rgb(255 255 255 / .95);color:#2b241f;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .25s ease,background .25s ease,opacity .25s ease}

.lifestyle-prev span,.lifestyle-next span{
font-size:16px;line-height:1}

.lifestyle-prev:hover,.lifestyle-next:hover{
transform:translateY(-1px);background:#fff}

.lifestyle-right p{
font-family:AlbraDisplay;font-size:clamp(8px, 3.8vw, 3px);text-align:right}

.lifestyle-rightx p{
font-family:AlbraDisplay;font-size:clamp(8px, 3.8vw, 34px);text-align:right}

@media (max-width:991px){
.lifestyle-inner{
width:min(100%, calc(100% - 48px));grid-template-columns:1fr;row-gap:34px;padding:90px 0 120px}

.lifestyle-left,.lifestyle-right{
max-width:100%}

.lifestyle-rightx{
max-width:100%}

.lifestyle-right{
padding-top:0;margin-top:250px}

.lifestyle-rightx{
padding-top:0;margin-top:-255px}

.lifestyle-title{
font-size:clamp(46px, 9vw, 82px)}

.lifestyle-desc{
font-size:clamp(22px, 4vw, 34px);max-width:700px}

.lifestyle-rightx{
margin-top:-280px}

.overide-rightx{
	margin-top:-280px;}

.overide-rightx1{
	margin-top:-300px;}

.lifestyle-rightx p{
font-family:'AWConqueror',serif;font-size:clamp(12px, 4.6vw, 22px);text-align:left;}

.lifestyle-item{
font-size:clamp(18px, 2.8vw, 28px)}

.lifestyle-nav{
right:24px;bottom:24px}

}


@media (max-width:767px){
	
	.overide-rightx{
	margin-top:-310px;}

.overide-rightx1{
	margin-top:-340px;}
	
	
.lifestyle-slider,.lifestyle-slider .swiper-slide{
min-height:100svh}

.lifestyle-bg{
background-position:center center; }

  .patio-bg {
    background-position: calc(100% + 290px) center;  }

      .patio-bg1 {
    background-position: calc(100% + 290px) center;  }
	
	.roof-bg {
    background-position: calc(100% + 270px) center;  }
	
	.roof-bg1 {
    background-position: calc(100% + 300px) center;  }

      .lobby-bg {
    background-position: calc(100% + 405px) center;  }

      .lobby-bg1 {
    background-position: calc(100% + 290px) center;  }

    .lifestyle-inner{
width:min(100%, calc(100% - 32px));padding:18px 0 110px;row-gap:28px}

.lifestyle-title{
margin-bottom:18px;font-size:clamp(30px, 12vw, 62px);line-height:.98}

.lifestyle-desc{
font-size:clamp(12px, 4.6vw, 22px);line-height:1.3}

.lifestyle-item{
padding:14px 0;font-size:clamp(16px, 4.3vw, 22px);line-height:1.3}

.lifestyle-nav{
right:16px;bottom:18px;gap:10px}

.lifestyle-prev,.lifestyle-next{
width:46px;height:46px}

.lifestyle-prev span,.lifestyle-next span{
font-size:24px}

}


@media (max-width:512px){
	
	.overide-rightx{
	margin-top:-320px;}

.overide-rightx1{
	margin-top:-350px;}
}

@media (max-width:402px){
	
	.overide-rightx{
	margin-top:-290px;}

.overide-rightx1{
	margin-top:-290px;}
}


.inversion-section{
position:relative;min-height:150vh;color:#fff;overflow:hidden}

.inversion-bg{
position:absolute;inset:0;background-image:url(../../img/inteligente.webp);background-size:cover;background-repeat:no-repeat;background-position:right top}

.inversion-container{
position:relative;z-index:2;width:min(1400px, calc(100% - 80px));padding-left:50px;padding-top:50px}

.inversion-content{
max-width:620px;margin-bottom:180px}

.inversion-title{
font-family:'AWConqueror';font-size:clamp(44px, 4.5vw, 92px);line-height:.95;letter-spacing:-.03em;margin-bottom:30px;font-weight:100}

.inversion-desc{
font-family:'AWConqueror';font-size:22px;line-height:1.5;margin-bottom:20px}

.inversion-block{
margin-bottom:24px}

.inversion-sub{
font-family:'AWConqueror';font-size:46px;margin-bottom:4px;padding:0;line-height:1.2}

.inversion-highlight{
font-family:'AWConqueror';font-size:22px;line-height:1}

.inversion-small{
font-family:'AWConqueror'; font-size:22px;margin:30px 0}

.inversion-btn{
display:inline-block;padding:12px 22px;border:1px solid rgb(255 255 255 / .6);border-radius:8px;color:#fff;text-decoration:none;transition:0.3s;margin-top:20px;margin-bottom:20px}

.inversion-btn:hover{
background:rgb(255 255 255 / .1)}

.inversion-mobile-image img{
display:none}

@media (max-width:1376px){
.inversion-bg{
background-image:url(../../img/inteligente1376.webp);background-size:cover;background-repeat:no-repeat;background-position:right top}

}

@media (max-width:991px){
.inversion-section{
min-height:100svh;background:linear-gradient(to bottom,#012c54 0%,#014a75 65%,#016a93 100%)}

.inversion-bg{
background-image:none;background-position:center center}

.inversion-overlay{
background:linear-gradient(to bottom,rgb(0 0 0 / .7),rgb(0 0 0 / .4),rgb(0 0 0 / .2))}

.inversion-container{
width:calc(100% - 32px);padding-left:30px;padding-right:30px}

.inversion-content{
max-width:100%}

.inversion-title{
font-size:clamp(30px, 8vw, 48px)}

.inversion-btn{
width:100%;text-align:center;margin:0 auto}

.inversion-mobile-image img{
display:block;width:100%;max-width:100%;height:auto;margin-top:-140px}

}

.hotspots-section{
background:#0a0a0a;padding:110px 0 120px}

.hotspots-container{
width:min(1440px, calc(100% - 80px));margin:0 auto}

.hotspots-head{
max-width:980px;margin:0 auto 70px;text-align:center}

.hotspots-title{
margin:0 0 22px;font-family:'AWConqueror',serif;font-size:clamp(30px, 2.8vw, 60px);line-height:1.12;letter-spacing:-.02em;color:#fff;font-weight:100;text-transform:uppercase}

.hotspots-desc{
margin:0 auto;max-width:900px;font-family:'AWConqueror',serif;font-size:clamp(22px, 1.1vw, 28px);line-height:1.4;color:#fff;font-weight:100}

.hotspots-grid{
display:grid;grid-template-columns:0.92fr 0.81fr 0.81fr 0.92fr;grid-template-rows:320px 280px;column-gap:34px;row-gap:42px;grid-template-areas:"gastronomia social social tradicion" "arte comercio walkability tradicion";align-items:stretch}

.hotspot-gastronomia{
grid-area:gastronomia}

.hotspot-social{
grid-area:social}

.hotspot-tradicion{
grid-area:tradicion}

.hotspot-arte{
grid-area:arte}

.hotspot-comercio{
grid-area:comercio}

.hotspot-walkability{
grid-area:walkability}

.hotspot-card{
position:relative;display:block;overflow:hidden;background:#111;text-decoration:none;min-width:0;height:100%}

.hotspot-card img{
display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}

.hotspot-card::after{
content:"";position:absolute;inset:0;background:linear-gradient(to top,rgb(0 0 0 / .58) 0%,rgb(0 0 0 / .18) 45%,rgb(0 0 0 / .03) 100%);pointer-events:none}

.hotspot-card:hover img{
transform:scale(1.03)}

.hotspot-label{
position:absolute;left:26px;bottom:22px;z-index:2;font-family:'AWConqueror',serif;font-size:clamp(20px, 1.55vw, 34px);line-height:1.15;color:#fff;font-style:italic;font-weight:400; font-family:AlbraDisplay;}

@media (max-width:991px){
.hotspots-container{
width:min(100%, calc(100% - 40px))}

.hotspots-head{
margin-bottom:48px}

.hotspots-grid{
grid-template-columns:1fr 1fr;grid-template-rows:auto;grid-template-areas:"gastronomia social" "tradicion tradicion" "arte comercio" "walkability walkability";gap:22px}

.hotspot-card{
aspect-ratio:16 / 11;height:auto}

.hotspot-tradicion,.hotspot-walkability{
aspect-ratio:16 / 9}

}

@media (max-width:767px){
.hotspots-section{
padding:80px 0}

.hotspots-container{
width:min(100%, calc(100% - 32px))}

.hotspots-head{
margin-bottom:34px}

.hotspots-title{
font-size:clamp(34px, 8.5vw, 48px);line-height:1.12}

.hotspots-desc{
font-size:clamp(16px, 4.3vw, 22px);line-height:1.35}

.hotspots-grid{
grid-template-columns:1fr;grid-template-areas:none;grid-template-rows:auto;gap:18px}

.hotspot-gastronomia,.hotspot-social,.hotspot-tradicion,.hotspot-arte,.hotspot-comercio,.hotspot-walkability{
grid-area:auto;display:block;width:100%}

.hotspot-card{
aspect-ratio:16 / 11;height:auto}

.hotspot-tradicion{
aspect-ratio:16 / 14}

.hotspot-label{
left:18px;bottom:18px;font-size:clamp(18px, 5vw, 24px)}

}

.ubicacion-section{
background:#000;color:#fff}

.ubicacion-hero{
position:relative;min-height:760px;overflow:hidden}

.ubicacion-bg{
position:absolute;inset:0;background-image:url(../../img/ubicacion.webp);background-size:cover;background-repeat:no-repeat;background-position:center center}

.ubicacion-overlay{
position:absolute;inset:0;background:linear-gradient(to top,rgb(0 0 0 / .55) 0%,rgb(0 0 0 / .18) 28%,rgb(0 0 0 / .06) 55%,rgb(0 0 0 / .04) 100%)}

.ubicacion-hero-content{
position:relative;z-index:2;width:min(1440px, calc(100% - 92px));margin:0 auto;padding:505px 0 58px}

.ubicacion-title{
margin:0 0 18px;font-family:'AWConqueror',serif;font-size:clamp(58px, 5vw, 96px);line-height:.95;letter-spacing:-.035em;color:#fff;font-weight:400;text-transform:uppercase}

.ubicacion-desc{
margin:0;max-width:700px;font-family:'AWConqueror',serif;font-size:clamp(20px, 1.5vw, 34px);line-height:1.35;color:#fff;font-weight:400}

.ubicacion-info{
background:#0a0a0a;padding:46px 0 58px}

.ubicacion-info-grid{
width:min(1440px, calc(100% - 92px));margin:0 auto;display:grid;grid-template-columns:1.1fr 1fr 1fr 1.2fr;column-gap:38px}

.ubicacion-item{
position:relative;padding:0 22px 0 0}

.ubicacion-item:not(:last-child)::after{
content:"";position:absolute;top:0;right:-19px;width:1px;height:168px;background:rgb(255 255 255 / .22)}

.ubicacion-item-title{
margin:0 0 18px;font-family:'AWConqueror',serif;font-size:clamp(16px, 1.4vw, 34px);line-height:1.1;color:#fff;font-weight:400;text-transform:uppercase}

.ubicacion-item-body p{
margin:0 0 18px;font-family:'AWConqueror',serif;font-size:clamp(17px, 1.1vw, 23px);line-height:1.45;color:#fff;font-weight:100}

.ubicacion-item-body p:last-child{
margin-bottom:0}

@media (max-width:991px){
.ubicacion-hero{
min-height:620px}

.ubicacion-hero-content,.ubicacion-info-grid{
width:min(100%, calc(100% - 48px))}

.ubicacion-hero-content{
padding-top:390px;padding-bottom:42px}

.ubicacion-info-grid{
grid-template-columns:1fr 1fr;row-gap:34px}

.ubicacion-item:not(:last-child)::after{
display:none}

.ubicacion-item{
padding-right:0}

}

@media (max-width:767px){
.ubicacion-hero{
min-height:120vh}

.ubicacion-hero-content{
padding-top:115vh}

.ubicacion-bg{
background-position:center bottom;background-image:url(../../img/mobileubic2.webp)}

.ubicacion-hero-content{
width:min(100%, calc(100% - 32px));padding:725px 0 34px}

.ubicacion-title{
margin-bottom:14px;font-size:clamp(40px, 10vw, 58px);line-height:.97}

.ubicacion-desc{
max-width:100%;font-size:clamp(18px, 4.5vw, 24px);line-height:1.35}

.ubicacion-info{
padding:28px 0 44px}

.ubicacion-info-grid{
width:min(100%, calc(100% - 32px));grid-template-columns:1fr;gap:0}

.ubicacion-item{
padding:0 0 28px;margin-bottom:28px;border-bottom:1px solid rgb(255 255 255 / .28)}

.ubicacion-item:last-child{
margin-bottom:0;padding-bottom:0;border-bottom:0}

.ubicacion-item-title{
margin-bottom:12px;font-size:clamp(22px, 7vw, 38px);line-height:1.1}

.ubicacion-item-body p{
margin-bottom:14px;font-size:clamp(16px, 4.3vw, 22px);line-height:1.45}

}

.modelos-section{
background:#0a0a0a;padding:90px 0 110px;color:#fff}

.modelos-container{
width:min(1440px, calc(100% - 84px));margin:0 auto}

.modelos-head{
margin-bottom:42px}

.modelos-title{
margin:0;font-family:'AWConqueror',serif;font-size:clamp(40px, 4vw, 82px);line-height:.95;letter-spacing:-.035em;color:#fff;font-weight:100;text-transform:uppercase}

.modelo-card{
display:grid;grid-template-columns:1.1fr 0.9fr;column-gap:70px;align-items:start}

.modelo-visual{
position:relative}

.modelo-stage{
position:relative;background:#0a0a0a;overflow:hidden}

.modelo-stage::before{
content:"";display:block;padding-top:79%}

.modelo-panel{
position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility .3s ease}

.modelo-panel.is-active{
opacity:1;visibility:visible;pointer-events:auto}

.modelo-panel img,.modelo-panel iframe{
display:block;width:100%;height:100%;object-fit:cover}

.modelo-tabs{
position:absolute;left:50%;bottom:28px;transform:translateX(-50%);z-index:5;display:inline-flex;align-items:center;padding:4px;border-radius:20px;background:rgb(120 105 92 / .55);backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);border:1px solid rgb(255 255 255 / .18);gap:4px}

.modelo-tab{
min-width:128px;height:46px;padding:0 18px;border:0;border-radius:16px;background:#fff0;color:#fff;font-family:'AWConqueror',serif;font-size:16px;line-height:1;cursor:pointer;transition:background .25s ease,color .25s ease,opacity .25s ease}

.modelo-tab:hover{
opacity:.88}

.modelo-tab.is-active{
background:#f3f0ea;color:#2c2723}

.modelo-info{
padding-top:8px}

.modelo-name{
margin:0 0 18px;font-family:'AWConqueror',serif;font-size:clamp(26px, 2.6vw, 40px);line-height:1;color:#fff;font-weight:400;text-transform:uppercase}

.modelo-size{
margin:0 0 70px;font-family:'AlbraDisplay',serif;font-size:clamp(26px, 2.6vw, 40px);line-height:1;color:#fff;font-style:italic;font-weight:400}

.modelo-features{
border-top:1px solid rgb(255 255 255 / .18)}

.modelo-feature-row{
display:grid;grid-template-columns:1fr 1fr;column-gap:40px;padding:26px 0;border-bottom:1px solid rgb(255 255 255 / .18)}

.modelo-feature{
font-family:'AWConqueror',serif;font-size:clamp(18px, 1.0vw, 28px);line-height:1.3;color:#fff;font-weight:100}

.modelo-card-reverse{
grid-template-columns:0.9fr 1.1fr}

.modelo-card-reverse .modelo-info{
order:1}

.modelo-card-reverse .modelo-visual{
order:2}

.modelos-cta-section{
background:#0a0a0a;padding:90px 0 110px}

.modelos-cta-container{
width:min(1440px, calc(100% - 84px));margin:0 auto;display:flex;justify-content:flex-end}

.modelos-cta-title{
margin:0;font-family:'AWConqueror',serif;font-size:clamp(48px, 4.0vw, 90px);line-height:.95;letter-spacing:-.035em;color:#fff;font-weight:400;text-transform:uppercase;text-align:right}

@media (max-width:991px){
.modelos-container{
width:min(100%, calc(100% - 40px))}

.modelo-card{
grid-template-columns:1fr;row-gap:40px}

.modelo-info{
padding-top:0}

.modelo-size{
margin-bottom:40px}

}

@media (max-width:767px){
.modelos-section{
padding:70px 0 90px}

.modelos-container{
width:min(100%, calc(100% - 32px))}

.modelos-head{
margin-bottom:28px}

.modelos-title{
font-size:clamp(38px, 10vw, 58px);line-height:.98}

.modelo-stage::before{
padding-top:95%}

.modelo-tabs{
bottom:16px;width:calc(100% - 24px);max-width:380px}

.modelo-tab{
min-width:0;flex:1 1 0%;font-size:15px;height:42px;padding:0 10px}

.modelo-name{
font-size:clamp(28px, 8vw, 42px);margin-bottom:12px}

.modelo-size{
font-size:clamp(28px, 7vw, 40px);margin-bottom:30px}

.modelo-feature-row{
grid-template-columns:1fr;row-gap:14px;padding:20px 0}

.modelo-feature{
font-size:clamp(17px, 4.4vw, 22px)}

}

@media (max-width:767px){
.modelos-cta-section{
padding:60px 0 80px}

.modelos-cta-container{
width:min(100%, calc(100% - 32px));justify-content:center}

.modelos-cta-title{
font-size:clamp(38px, 10vw, 58px);text-align:center}

}

.desarrollador-section{
background:#000;color:#fff}

.galeria-block{
position:relative;width:100%;overflow:hidden}

.galeria-grid{
display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:160px;gap:0;width:100%;transition:max-height .7s ease;overflow:hidden}

.galeria-item{
position:relative;display:block;overflow:hidden;background:#111}

.galeria-item img{
display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}

.galeria-item:hover img{
transform:scale(1.03)}

.galeria-grid.is-collapsed{
max-height:1400px}

.galeria-grid.is-collapsed .item-1{
grid-column:1 / span 6;grid-row:1 / span 3}

.galeria-grid.is-collapsed .item-2{
grid-column:1 / span 3;grid-row:4 / span 4}

.galeria-grid.is-collapsed .item-3{
grid-column:4 / span 3;grid-row:4 / span 4}

.galeria-grid.is-collapsed .item-4{
grid-column:1 / span 2;grid-row:8 / span 2}

.galeria-grid.is-collapsed .item-5{
grid-column:3 / span 2;grid-row:8 / span 2}

.galeria-grid.is-collapsed .item-6{
grid-column:5 / span 2;grid-row:8 / span 2}

.galeria-grid.is-collapsed .item-7,.galeria-grid.is-collapsed .item-8,.galeria-grid.is-collapsed .item-9,.galeria-grid.is-collapsed .item-10,.galeria-grid.is-collapsed .item-11,.galeria-grid.is-collapsed .item-12,.galeria-grid.is-collapsed .item-13,.galeria-grid.is-collapsed .item-14,.galeria-grid.is-collapsed .item-15,.galeria-grid.is-collapsed .item-16,.galeria-grid.is-collapsed .item-17,.galeria-grid.is-collapsed .item-18,.galeria-grid.is-collapsed .item-19,.galeria-grid.is-collapsed .item-20,.galeria-grid.is-collapsed .item-21{
display:none}

.galeria-grid.is-expanded{
max-height:5000px}

.galeria-grid.is-expanded .item-1{
grid-column:1 / span 6;grid-row:auto / span 3}

.galeria-grid.is-expanded .item-2{
grid-column:1 / span 3;grid-row:auto / span 4}

.galeria-grid.is-expanded .item-3{
grid-column:4 / span 3;grid-row:auto / span 4}

.galeria-grid.is-expanded .item-4,.galeria-grid.is-expanded .item-5,.galeria-grid.is-expanded .item-6{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-4{
grid-column:1 / span 2}

.galeria-grid.is-expanded .item-5{
grid-column:3 / span 2}

.galeria-grid.is-expanded .item-6{
grid-column:5 / span 2}

.galeria-grid.is-expanded .item-7{
grid-column:1 / span 6;grid-row:auto / span 3}

.galeria-grid.is-expanded .item-8,.galeria-grid.is-expanded .item-9{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-8{
grid-column:1 / span 3}

.galeria-grid.is-expanded .item-9{
grid-column:4 / span 3}

.galeria-grid.is-expanded .item-10,.galeria-grid.is-expanded .item-11{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-10{
grid-column:1 / span 3}

.galeria-grid.is-expanded .item-11{
grid-column:4 / span 3}

.galeria-grid.is-expanded .item-12{
grid-column:1 / span 6;grid-row:auto / span 3}

.galeria-grid.is-expanded .item-13,.galeria-grid.is-expanded .item-14,.galeria-grid.is-expanded .item-15{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-13{
grid-column:1 / span 2}

.galeria-grid.is-expanded .item-14{
grid-column:3 / span 2}

.galeria-grid.is-expanded .item-15{
grid-column:5 / span 2}

.galeria-grid.is-expanded .item-16{
grid-column:1 / span 6;grid-row:auto / span 3}

.galeria-grid.is-expanded .item-17,.galeria-grid.is-expanded .item-18{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-17{
grid-column:1 / span 3}

.galeria-grid.is-expanded .item-18{
grid-column:4 / span 3}

.galeria-grid.is-expanded .item-19,.galeria-grid.is-expanded .item-20,.galeria-grid.is-expanded .item-21{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-19{
grid-column:1 / span 2}

.galeria-grid.is-expanded .item-20{
grid-column:3 / span 2}

.galeria-grid.is-expanded .item-21{
grid-column:5 / span 2}

.galeria-fade{
position:absolute;left:0;right:0;bottom:0;height:200px;z-index:3;pointer-events:none;background:linear-gradient(to bottom,#fff0 0%,rgb(0 0 0 / .72) 55%,rgb(0 0 0) 100%)}

.galeria-block.is-expanded .galeria-fade{
display:none}

.galeria-toggle-wrap{
position:absolute;left:50%;bottom:34px;transform:translateX(-50%);z-index:4}

.galeria-toggle-btn{
min-width:170px;height:42px;padding:0 22px;border:1px solid rgb(255 255 255 / .45);border-radius:10px;background:rgb(0 0 0 / .3);color:#fff;font-family:'AWConqueror',serif;font-size:13px;line-height:1;cursor:pointer;transition:background .25s ease,border-color .25s ease,opacity .25s ease}

.galeria-toggle-btn:hover{
background:rgb(255 255 255 / .08);border-color:rgb(255 255 255 / .65)}

.desarrollador-info{
position:relative;min-height:260px;background:#000;overflow:hidden}

.desarrollador-info-bg{
position:absolute;inset:0}

.desarrollador-info-content{
position:relative;z-index:2;width:min(1440px, calc(100% - 84px));margin:0 auto;padding:72px 0 60px;text-align:center}

.desarrollador-title{
margin:0 0 16px;font-family:'AWConqueror',serif;font-size:clamp(28px, 2.5vw, 54px);line-height:1.05;letter-spacing:-.02em;color:#fff;font-weight:400;text-transform:uppercase}

.desarrollador-text{
margin:0 auto;max-width:920px;font-family:'AWConqueror',serif;font-size:clamp(14px, 1vw, 19px);line-height:1.45;color:#fff;font-weight:400}

@media (max-width:767px){
.galeria-grid{
grid-template-columns:repeat(2,1fr);grid-auto-rows:120px}

.galeria-grid.is-collapsed{
max-height:980px}

.galeria-grid.is-collapsed .item-1{
grid-column:1 / span 2;grid-row:1 / span 3}

.galeria-grid.is-collapsed .item-2{
grid-column:1;grid-row:4 / span 3}

.galeria-grid.is-collapsed .item-3{
grid-column:2;grid-row:4 / span 3}

.galeria-grid.is-collapsed .item-4{
grid-column:1;grid-row:7 / span 2}

.galeria-grid.is-collapsed .item-5{
grid-column:2;grid-row:7 / span 2}

.galeria-grid.is-collapsed .item-6{
grid-column:1 / span 2;grid-row:9 / span 3}

.galeria-grid.is-expanded .item-1{
grid-column:1 / span 2;grid-row:auto / span 3}

.galeria-grid.is-expanded .item-2,.galeria-grid.is-expanded .item-3{
grid-row:auto / span 3}

.galeria-grid.is-expanded .item-2{
grid-column:1}

.galeria-grid.is-expanded .item-3{
grid-column:2}

.galeria-grid.is-expanded .item-4,.galeria-grid.is-expanded .item-5{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-4{
grid-column:1}

.galeria-grid.is-expanded .item-5{
grid-column:2}

.galeria-grid.is-expanded .item-6{
grid-column:1 / span 2;grid-row:auto / span 3}

.galeria-grid.is-expanded .item-7,.galeria-grid.is-expanded .item-8{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-7{
grid-column:1}

.galeria-grid.is-expanded .item-8{
grid-column:2}

.galeria-grid.is-expanded .item-9,.galeria-grid.is-expanded .item-10{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-9{
grid-column:1}

.galeria-grid.is-expanded .item-10{
grid-column:2}

.galeria-grid.is-expanded .item-11{
grid-column:1 / span 2;grid-row:auto / span 3}

.galeria-grid.is-expanded .item-12,.galeria-grid.is-expanded .item-13{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-12{
grid-column:1}

.galeria-grid.is-expanded .item-13{
grid-column:2}

.galeria-grid.is-expanded .item-14,.galeria-grid.is-expanded .item-15{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-14{
grid-column:1}

.galeria-grid.is-expanded .item-15{
grid-column:2}

.galeria-grid.is-expanded .item-16{
grid-column:1 / span 2;grid-row:auto / span 3}

.galeria-grid.is-expanded .item-17,.galeria-grid.is-expanded .item-18{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-17{
grid-column:1}

.galeria-grid.is-expanded .item-18{
grid-column:2}

.galeria-grid.is-expanded .item-19,.galeria-grid.is-expanded .item-20,.galeria-grid.is-expanded .item-21{
grid-row:auto / span 2}

.galeria-grid.is-expanded .item-19{
grid-column:1}

.galeria-grid.is-expanded .item-20{
grid-column:2}

.galeria-grid.is-expanded .item-21{
grid-column:1 / span 2}

.galeria-fade{
height:120px}

.galeria-toggle-wrap{
bottom:18px}

.galeria-toggle-btn{
width:122px;height:50px;font-size:20px;padding:0 12px;border-radius:7px}

.desarrollador-info{
min-height:auto}

.desarrollador-info-content{
width:min(100%, calc(100% - 32px));padding:42px 0 40px}

.desarrollador-title{
font-size:clamp(38px, 9.5vw, 90px);margin-bottom:10px}

.desarrollador-text{
	margin-top:30px;font-size:clamp(26px, 4.2vw, 30px);line-height:1.45}

}

.contacto-hero-section{
background:#000;color:#fff}

.contacto-hero-image{
width:100%;overflow:hidden;background:#111}

.contacto-hero-image img{
display:block;width:100%;height:auto}

.contacto-hero-content{
background:#000;padding:78px 0 88px}

.contacto-hero-inner{
width:min(1200px, calc(100% - 84px));margin:0 auto;text-align:center}

.contacto-hero-title{
margin:0 0 18px;font-family:'AWConqueror',serif;font-size:clamp(28px, 2.5vw, 55px);line-height:1.06;letter-spacing:-.025em;color:#fff;font-weight:400;text-transform:uppercase; }

.contacto-hero-subtitle{
margin:0 0 22px;font-family:'AlbraDisplay',serif;font-size:clamp(24px, 2.1vw, 44px);line-height:1.05;color:#fff;font-style:italic;font-weight:400}

.contacto-hero-text{
margin:0 0 34px;font-family:'AWConqueror',serif;font-size:clamp(14px, 1.0vw, 20px);line-height:1.4;color:#fff;font-weight:100}

.contacto-wa-btn{
display:inline-flex;align-items:center;justify-content:center;gap:12px;min-width:220px;height:58px;padding:0 26px;border:1px solid rgb(255 255 255 / .42);border-radius:10px;background:#fff0;color:#fff;text-decoration:none;transition:background .25s ease,border-color .25s ease,transform .25s ease}

.contacto-wa-btn:hover{
background:rgb(255 255 255 / .08);border-color:rgb(255 255 255 / .62);transform:translateY(-1px);text-decoration:none;color:#fff}

.contacto-wa-btn-text{
font-family:'AWConqueror',serif;font-size:18px;line-height:1;color:#fff}

.contacto-wa-btn-icon{
display:inline-flex;align-items:center;justify-content:center;font-size:22px;line-height:1;color:#fff}

@media (max-width:767px){
.contacto-hero-content{
padding:52px 0 64px}

.contacto-hero-inner{
width:min(100%, calc(100% - 32px))}

.contacto-hero-title{
font-size:clamp(22px, 6vw, 36px);line-height:1.45;margin-bottom:14px}

.contacto-hero-subtitle{
font-size:clamp(22px, 5.5vw, 32px);margin-bottom:24px; margin-top:24px;}

.contacto-hero-text{
font-size:clamp(20px, 4.8vw, 24px);margin-bottom:26px}

.contacto-wa-btn{
min-width:190px;height:52px;padding:0 20px;gap:10px; width:90%;}

.contacto-wa-btn-text{
font-size:17px}

.contacto-wa-btn-icon{
font-size:20px}

}

.contacto-mapa-section{
width:90%;margin:0 auto}

.contacto-mapa-wrapper{
position:relative;width:100%;overflow:hidden;aspect-ratio:16 / 6;background:#111}

.contacto-mapa-wrapper iframe{
position:absolute;inset:0;width:100%;height:100%;border:0;display:block}

.contacto-mapa-wrapper::after{
content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,rgb(0 0 0 / .08),rgb(0 0 0 / .2))}

@media (max-width:767px){
.contacto-mapa-wrapper{
aspect-ratio:4 / 3}

}

.footer-logos{
background:#000;padding:80px 0}

.footer-logos-inner{
width:min(1200px, calc(100% - 80px));margin:0 auto;display:flex;justify-content:center;align-items:center}

.footer-logos-inner img{
max-width:100%;width:700px;height:auto;display:block;opacity:.9}

@media (max-width:767px){
.footer-logos{
padding:50px 0}

.footer-logos-inner{
width:calc(100% - 32px)}

.footer-logos-inner img{
width:100%;max-width:420px}

}

.scroll-top-btn{
position:fixed;right:28px;bottom:28px;width:46px;height:46px;border-radius:50%;border:1px solid rgb(255 255 255 / .35);background:rgb(0 0 0 / .55);color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:all .35s ease;z-index:999;backdrop-filter:blur(4px)}

.scroll-top-btn.show{
opacity:1;visibility:visible;transform:translateY(0)}

.scroll-top-btn:hover{
background:rgb(255 255 255 / .12);border-color:rgb(255 255 255 / .6)}

.site-preloader.skip-preloader {
 display: none;}

.preloader-already-seen #sitePreloader {
display: none !important;}

@media (max-width:602px){
	.lifestyle-practical{
	font-size: clamp(37px, 9vw, 60px);}

	}

@media (max-width: 767px) {
  .modelo-card,  .modelo-card-reverse {
    display: grid;    grid-template-columns: 1fr;    row-gap: 28px;    align-items: start;  }

  .modelo-card .modelo-visual,  .modelo-card .modelo-info,  .modelo-card-reverse .modelo-visual,  .modelo-card-reverse .modelo-info {
    order: initial;    width: 100%;    max-width: 100%;  }

  /* forzar SIEMPRE visual arriba y texto abajo */  .modelo-card .modelo-visual,  .modelo-card-reverse .modelo-visual {
    order: 1;  }

  .modelo-card .modelo-info,  .modelo-card-reverse .modelo-info {
    order: 2;    padding-top: 0;  }

  /* si el bloque invertido tenía proporción distinta en desktop, aquí la neutralizamos */  .modelo-card-reverse {
    grid-template-columns: 1fr;  }

  /* opcional: separar mejor cada modelo */  .modelo-card,  .modelo-card-reverse {
    margin-top: 70px !important;  }

    .modelo-feature-row {
    display: grid;    grid-template-columns: 1fr 1fr;    gap: 12px 18px;  }

  .modelo-feature {
    font-size: clamp(14px, 3.6vw, 16px);    line-height: 1.35;  }

   .galeria-toggle-wrap {
    width: 100%;    display: flex;    justify-content: center;  }

  .galeria-toggle-btn {
    width: 80% !important;    max-width: none !important;    min-width: 0 !important;    display: block;	font-size:16px;  }

    .hotspotcont{
	  margin: 0 auto;	  width:83%;  }

}

/* =========================   HERO SWIPER========================= */.hero-swiper {
  position: relative;  overflow: hidden;}

.hero-swiper .swiper-wrapper,.hero-swiper .swiper-slide {
  height: 100%;}

.hero-slide {
  position: relative;  min-height: inherit;  display: flex;  align-items: center;  justify-content: center;  overflow: hidden;}

.hero-slide .hero-bg,.hero-slide .hero-overlay,.hero-slide .hero-content {
  position: absolute;}

.hero-slide .hero-bg,.hero-slide .hero-overlay {
  inset: 0;}

.hero-slide .hero-content {
  position: relative;  inset: auto;  z-index: 3;}

/* opcional: un ligero zoom para dar vida */.hero-swiper .swiper-slide-active .hero-bg {
  animation: heroZoom 7s ease forwards;}

@keyframes heroZoom {
  0% {
    transform: scale(1.02);  }

  100% {
    transform: scale(1.08);  }

}

.hero-swiper {
  height: 110vh;  height: 110svh;}

.hero-swiper .swiper-slide {
  position: relative;  display: flex;  align-items: center;  justify-content: center;  min-height: 110vh;  min-height: 110svh;}

/* =========================================   HERO SWIPER FIX (NO ROMPE TU CSS ACTUAL)========================================= *//* contenedor principal */.hero-swiper {
  position: relative;  height: 110vh;  height: 110svh;  overflow: hidden;}

/* wrapper swiper */.hero-swiper .swiper-wrapper {
  height: 100%;}

/* cada slide */.hero-swiper .swiper-slide {
  position: relative;  display: flex;  align-items: center;  justify-content: center;  min-height: 110vh;  min-height: 110svh;  overflow: hidden;}

/* fondo (respeta tu hero original) */.hero-slide .hero-bg {
  position: absolute;  inset: 0;  width: 100%;  height: 100%;  background-size: cover;  background-position: center;  z-index: 1;}

/* overlays siguen igual pero aseguramos stacking */.hero-slide .hero-overlay {
  position: absolute;  inset: 0;  z-index: 2;}

/* contenido */.hero-slide .hero-content {
  position: relative;  z-index: 3;  width: 100%;}

/* =========================================   EFECTO FADE + SUAVIDAD========================================= */.hero-swiper .swiper-slide {
  opacity: 0 !important;  transition: opacity 1.2s ease;}

.hero-swiper .swiper-slide-active {
  opacity: 1 !important;}

/* =========================================   OPCIONAL: MICRO ZOOM PREMIUM   (quítalo si no te gusta)========================================= */.hero-swiper .swiper-slide-active .hero-bg {
  animation: heroZoom 6s ease forwards;}

@keyframes heroZoom {
  0% {
    transform: scale(1.02);  }

  100% {
    transform: scale(1.08);  }

}

/* =========================================   MOBILE AJUSTE (IMPORTANTE)========================================= */@media (max-width: 767px) {
  .hero-swiper,  .hero-swiper .swiper-slide {
    min-height: 90vh;  }

  .hero-slide .hero-content {
    padding-top: 120px;    padding-bottom: 80px;  }

}

/* =========================================   HERO SWIPER PREMIUM========================================= */.hero-swiper {
  position: relative;  min-height: 110vh;  min-height: 110svh;  overflow: hidden;}

.hero-swiper .swiper-wrapper {
  height: 100%;}

.hero-swiper .swiper-slide {
  position: relative;  min-height: 110vh;  min-height: 110svh;  display: flex;  align-items: center;  justify-content: center;  overflow: hidden;}

.hero-slide .hero-bg {
  position: absolute;  inset: 0;  width: 100%;  height: 100%;  z-index: 1;  background-size: cover;  background-repeat: no-repeat;  background-position: center center;  transform: scale(1.02);  will-change: transform, opacity;}

.hero-slide .hero-overlay {
  position: absolute;  inset: 0;  z-index: 2;}

.hero-slide .hero-content {
  position: relative;  z-index: 3;  width: 100%;}

/* entrada de texto */.hero-slide .hero-title,.hero-slide .hero-subtitle {
  opacity: 0;  transform: translateY(22px);  transition: opacity .8s ease, transform .8s ease;}

.hero-swiper .swiper-slide-active .hero-title,.hero-swiper .swiper-slide-active .hero-subtitle {
  opacity: 1;  transform: translateY(0);}

.hero-swiper .swiper-slide-active .hero-title {
  transition-delay: .25s;}

.hero-swiper .swiper-slide-active .hero-subtitle {
  transition-delay: .42s;}

/* zoom suave cinematográfico */.hero-swiper .swiper-slide-active .hero-bg {
  animation: heroZoomSlow 6.2s ease forwards;}

@keyframes heroZoomSlow {
  0% {
    transform: scale(1.02);  }

  100% {
    transform: scale(1.08);  }

}

/* fade más limpio */.hero-swiper .swiper-slide {
  backface-visibility: hidden;  -webkit-backface-visibility: hidden;}

/* mobile */@media (max-width: 767px) {
  .hero-swiper,  .hero-swiper .swiper-slide {
    min-height: 100svh;  }

  .hero-slide .hero-content {
    padding-top: 165px;    padding-bottom: 88px;  }

  .hero-slide .hero-bg {
    background-position: center center;  }

}

/* =========================================   CONTACTO HERO SWIPER FIX========================================= *//* el swiper reemplaza la imagen superior */.contacto-hero-image.contacto-hero-swiper {
  position: relative;  width: 100%;  overflow: hidden;  background: #111;  aspect-ratio: 18 / 10;}

.contacto-hero-swiper .swiper-wrapper,.contacto-hero-swiper .swiper-slide {
  width: 100%;  height: 100%;}

.contacto-hero-swiper .swiper-slide {
  position: relative;}

.contacto-hero-bg {
  position: absolute;  inset: 0;  width: 100%;  height: 100%;  background-size: cover;  background-position: center center;  background-repeat: no-repeat;}

/* móvil */@media (max-width: 767px) {
  .contacto-hero-image.contacto-hero-swiper {
    aspect-ratio: 4 / 3;  }

}

/* =========================================   TEXTO ESQUINA HERO CONTACTO========================================= */.contacto-hero-caption {
  position: absolute;  bottom: 24px;  right: 28px;  font-family: 'AlbraDisplay', serif;  font-size: clamp(16px, 1.3vw, 24px);  color: #fff;  letter-spacing: 0.04em;  line-height: 1.2;  z-index: 2;  /* opcional para que no se pierda en fondos claros */  text-shadow: 0 2px 12px rgba(0,0,0,0.45);}

@media (max-width: 767px) {
  .contacto-hero-caption {
    bottom: 14px;    right: 16px;    font-size: clamp(14px, 4vw, 18px);  }

}

/* =========================================   HERO NAV========================================= */.hero-nav {
  position: absolute;  left: 50%;  bottom: 100px;  transform: translateX(-50%);  z-index: 6;  display: flex;  gap: 12px;}

.hero-prev,.hero-next {
  width: 46px;  height: 46px;  border: 1px solid rgba(255,255,255,0.32);  border-radius: 50%;  background: rgba(255,255,255,0.08);  color: #fff;  display: inline-flex;  align-items: center;  justify-content: center;  cursor: pointer;  transition: background .25s ease, border-color .25s ease, transform .25s ease, opacity .25s ease;  backdrop-filter: blur(4px);  -webkit-backdrop-filter: blur(4px);}

.hero-prev,.hero-next {
  background: rgba(0,0,0,0.14);  border: 1px solid rgba(255,255,255,0.22);}

.hero-prev i,.hero-next i {
  font-size: 14px;  line-height: 1;}

.hero-prev:hover,.hero-next:hover {
  background: rgba(255,255,255,0.14);  border-color: rgba(255,255,255,0.52);  transform: translateY(-1px);}

.hero-prev:active,.hero-next:active {
  transform: translateY(0);}

@media (max-width: 767px) {
  .hero-nav {
    bottom: 18px;    gap: 10px;  }

  .hero-prev,  .hero-next {
    width: 40px;    height: 40px;  }

  .hero-prev i,  .hero-next i {
    font-size: 12px;  }

}

