@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700;800&display=swap');
:root{--navy:#002e45;--deep:#00273d;--blue:#006bb2;--line:#ffffffd9;--sans:Montserrat,Arial,sans-serif;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px;background:var(--deep)}body{margin:0 auto;max-width:1920px;background:white;color:white;font:500 14px var(--sans)}h1,h2,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:.99}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #8fdbff;outline-offset:5px}img{display:block;max-width:100%}.symbols{position:absolute;width:0;height:0;overflow:hidden}.icon{width:40px;height:40px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.skip{position:fixed;top:-100px;left:15px;background:white;color:var(--navy);padding:15px;z-index:200}.skip:focus{top:10px}.anchor{position:absolute;top:0}.header{position:absolute;z-index:20;top:0;left:50%;transform:translateX(-50%);width:min(100%,1920px);display:flex;align-items:flex-start;gap:3.2%;padding:1.4% 4.2% 0}.brand{width:14.3%;flex-shrink:0;display:block}.brand img{width:100%;height:auto;object-fit:contain}.header nav{flex:1;display:flex;align-items:center;justify-content:space-between;gap:1.7%;padding-top:1.5%}.header nav a,.members{font:800 clamp(8px,.92vw,17px) var(--sans);letter-spacing:.005em;text-transform:uppercase;white-space:nowrap}.header nav a{padding:8px 0;transition:opacity .2s}.header nav a:hover{opacity:.65}.members{background:transparent;border:1px solid #fff;border-radius:999px;padding:1.2vw 2vw;display:flex;align-items:center;gap:9px;margin-left:2vw;line-height:1}.members .icon{width:1.4vw;height:1.4vw;min-width:12px;min-height:12px;fill:white;stroke-width:1}.menu-toggle{display:none}.photo-panel{position:relative;isolation:isolate;overflow:hidden}.panel-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,24,35,.86),rgba(0,24,35,.41) 38%,transparent 77%)}.hero{height:min(66.65vw,1280px);min-height:450px;border-bottom:4px solid var(--line)}.hero .panel-image{object-position:center 47%}.hero .shade{background:linear-gradient(90deg,#001b24c9 0%,#0018229c 20%,#00172124 60%,transparent 80%),linear-gradient(0deg,#001c2870,transparent 40%)}.hero-content{position:absolute;left:4.5%;bottom:5.5%;width:65%}.hero h1{font-size:clamp(44px,6.8vw,130px);line-height:.97}.hero h1 em{font-size:.91em;font-weight:400}.eyebrow{text-transform:uppercase;letter-spacing:.3em;font:700 clamp(8px,1.1vw,21px)/1.6 var(--sans)}.hero .eyebrow{margin-top:2.3vw;letter-spacing:.3em}.eyebrow b{padding:0 .55em;font-weight:400}.actions{display:flex;align-items:center;gap:2vw;flex-wrap:wrap}.hero .actions{margin-top:2vw}.button{border:1px solid transparent;border-radius:2px;padding:1.65vw 2.8vw;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.85em;font:800 clamp(8px,1.05vw,20px)/1.15 var(--sans);letter-spacing:.1em;text-transform:uppercase;transition:background .2s,transform .2s}.button span{font-size:1.45em;line-height:.6;font-weight:500}.button:hover{transform:translateY(-2px)}.blue{background:var(--blue);color:white;box-shadow:0 4px 15px #00172526}.blue:hover{background:#00568e}.outline{background:#00182525;border-color:#ffffffcc;color:white}.outline:hover{background:#ffffff1f}.white{background:#fff;color:#075080;box-shadow:0 2px 12px #001a3033}.white:hover{background:#e5f4ff}.activities{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:#fff;border-bottom:4px solid var(--line)}.activity{position:relative;overflow:hidden;isolation:isolate;height:min(37vw,710px);border:0;padding:0;background:var(--navy);text-align:center}.activity img{width:100%;height:100%;object-fit:cover;transition:filter .3s,scale .5s}.activity:hover img{scale:1.035;filter:brightness(1.08)}.activity:after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,#003b5a 0%,#003b5aea 9%,#003b5a6b 28%,transparent 56%)}.activity.tenis img{position:absolute;width:100%;height:146%;top:-22%;object-position:47% center}.activity.familia img{position:absolute;width:100%;height:161%;top:0;object-position:center top}.activity.natacion img{object-position:60% center}.activity.fitness img{object-position:44% center}.activity-caption{position:absolute;bottom:7.5%;left:0;right:0;z-index:2;display:flex;align-items:center;flex-direction:column;gap:1.8vw}.activity-caption .icon{width:4.8vw;height:4.8vw;max-width:90px;max-height:90px;stroke-width:1.5}.activity strong{font:800 clamp(11px,1.7vw,32px) var(--sans);letter-spacing:.1em;text-transform:uppercase}.facilities{position:relative;padding-bottom:9.5vw;background:white;border-bottom:4px solid white}.facility-photo{height:min(38vw,730px)}.facility-photo .panel-image{object-position:center 55%}.section-copy{position:absolute;left:4.3%;top:20%;z-index:2}.section-copy h2{font-size:clamp(32px,5.15vw,99px);line-height:.94}.section-copy .button{margin-top:2.3vw}.facility-photo .shade{background:linear-gradient(90deg,#001b2bbc,transparent 74%)}.amenities{position:absolute;bottom:1.3vw;left:2%;right:2%;height:13.5vw;max-height:260px;border-radius:3px;background:#f8fafbeF;backdrop-filter:blur(10px);box-shadow:0 12px 45px #002a4225;display:grid;grid-template-columns:repeat(6,1fr);align-items:center;padding:2vw 0;color:#194d6c}.amenities button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1.5vw;height:80%;background:transparent;border:0;border-right:1px solid #d9e0e4;padding:0 8px;transition:background .2s}.amenities button:last-child{border-right:0}.amenities button:hover{background:#e4eff5}.amenities .icon{width:4vw;height:4vw;max-width:77px;max-height:77px}.amenities span{font:800 clamp(8px,1.1vw,21px) var(--sans);text-transform:uppercase;white-space:nowrap}.events{height:min(42.3vw,812px);border-bottom:4px solid white}.events .panel-image{object-position:center 47%}.events .shade{background:linear-gradient(90deg,#001a28f0,rgba(0,24,37,.65) 30%,transparent 65%),linear-gradient(0deg,#00182335,transparent 65%)}.events .section-copy{top:29%}.events .section-copy .button{margin-top:2.5vw}.lifestyle{display:grid;grid-template-columns:47.7% 1fr;gap:4px;background:white;border-bottom:4px solid white;height:min(38vw,730px)}.nature .panel-image{object-position:47% center}.nature .shade{background:linear-gradient(90deg,#001d2c90,#001d2c25)}.nature .section-copy{left:9%;top:24%}.nature h2{font-size:clamp(32px,5.3vw,102px)}.community{display:block;position:relative;overflow:hidden;border:0;padding:0;background:var(--navy)}.community img{position:absolute;top:-75%;height:175%;width:100%;object-fit:cover;object-position:center bottom;transition:scale .6s}.community:hover img{scale:1.025}.contact{height:min(25vw,480px);min-height:200px;display:flex;justify-content:center;align-items:center;text-align:center;border-bottom:1px solid #147293}.contact .panel-image{object-position:50% 15%}.contact-shade{position:absolute;inset:0;background:#004c78df;z-index:-2}.contact-content{width:92%}.contact h2{font-size:clamp(35px,5vw,96px);line-height:1.15;letter-spacing:-.02em}.contact .eyebrow{margin-top:1.35vw;letter-spacing:.27em}.contact .actions{justify-content:center;margin-top:2.7vw}.footer{background:var(--deep);padding:2.2vw 4.3% 3.5vw}.footer-top{display:flex;gap:4.6%;align-items:center;min-height:10.3vw;padding-bottom:2.5vw;border-bottom:1px solid #126586}.footer-top .brand{width:14%}.footer nav{display:flex;justify-content:space-between;gap:1.5vw;flex:1}.footer nav a{font:800 clamp(7px,.83vw,16px) var(--sans);text-transform:uppercase;white-space:nowrap}.footer nav a:hover{color:#7bcaff}.socials{display:flex;gap:1.9vw;align-items:center}.socials button{border:0;padding:3px;background:transparent;display:flex;align-items:center;justify-content:center;min-width:24px;min-height:30px}.socials .icon{width:2.1vw;height:2.1vw;min-width:17px;min-height:17px}.facebook{font:800 clamp(22px,3vw,57px) Arial,sans-serif}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:3vw;gap:20px;font-size:clamp(8px,1.1vw,21px)}.footer-bottom a{display:flex;gap:1vw;align-items:center}.footer-bottom .icon{width:2.3vw;height:2.3vw;min-width:20px;min-height:20px}.dialog{border:0;padding:0;width:min(680px,calc(100% - 32px));color:#163b51;max-height:90svh;overflow:auto;background:#fff;border-radius:4px}.dialog::backdrop{background:#001b2bdc;backdrop-filter:blur(6px)}.dialog-close{position:absolute;top:12px;right:12px;z-index:5;border:0;background:#fff;width:40px;height:40px;font:28px Arial;color:#063b56;cursor:pointer;border-radius:50%;box-shadow:0 2px 8px #0002}.dialog-image{width:100%;height:280px;object-fit:cover}.dialog-body{padding:40px}.dialog-body h2{font-size:42px;line-height:1.1;letter-spacing:-.025em}.dialog-body .eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:16px}.dialog-body p:not(.eyebrow){font:500 14px/1.8 var(--sans);margin-top:20px;color:#526a78}.dialog-body .button{font-size:10px;padding:17px 21px;margin-top:25px;letter-spacing:.08em}.dialog-body .actions{gap:10px}.dark-outline{border-color:#075080;color:#075080;background:white}.dialog-logo{width:140px;filter:brightness(0) saturate(100%) invert(19%) sepia(26%) saturate(1483%) hue-rotate(157deg) brightness(96%);margin-bottom:30px}.lightbox{width:min(1150px,calc(100% - 30px));background:#00263c;color:#fff}.lightbox img{width:100%;height:75svh;object-fit:contain}.lightbox-bottom{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;gap:15px}.lightbox-bottom button{background:transparent;color:#fff;border:1px solid #ffffff60;padding:10px 15px;font-size:12px}.lightbox-bottom p{font-size:12px;text-align:center}body.modal-open{overflow:hidden}
@media(min-width:1920px){.header{padding:27px 80px 0}.hero-content{bottom:70px}.hero .eyebrow{margin-top:44px}.hero .actions{margin-top:38px}.facilities{padding-bottom:182px}.amenities{height:260px;bottom:25px;padding:38px 0}.button{padding:32px 54px}.section-copy .button{margin-top:44px}.footer{padding:42px 83px 67px}.footer-top{padding-bottom:48px;min-height:198px}.footer-bottom{padding-top:57px}.contact .actions{margin-top:52px}}
@media(max-width:700px){html{scroll-padding-top:15px}.header{padding:17px 22px;align-items:center;justify-content:space-between}.header .brand{width:118px}.header nav{display:none;position:absolute;top:100px;left:15px;right:15px;padding:20px;background:#00283cf5;box-shadow:0 8px 30px #0004;flex-direction:column;align-items:stretch;gap:0;border:1px solid #ffffff30;backdrop-filter:blur(14px)}.header nav.open{display:flex}.header nav a{font-size:12px;padding:12px}.members{font-size:11px;padding:14px 20px;margin:10px 0 0;justify-content:center}.members .icon{width:15px;height:15px}.menu-toggle{width:44px;height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid #ffffff80;border-radius:50%;background:#002c3c50}.menu-toggle span{width:20px;height:1.5px;background:white}.hero{height:740px;min-height:0;border-bottom-width:3px}.hero-content{left:6%;bottom:42px;width:88%}.hero h1{font-size:clamp(47px,10.8vw,70px);line-height:1.02}.hero .panel-image{object-position:58% center}.hero .shade{background:linear-gradient(90deg,#001b2bd1,#001b2b5c 70%,#001b2b30),linear-gradient(0deg,#001722b0,transparent 65%)}.hero .eyebrow{font-size:8px;letter-spacing:.24em;margin-top:24px}.hero .eyebrow b{padding:0 .3em}.hero .actions{margin-top:23px;gap:12px}.button{font-size:9px;padding:16px 20px;letter-spacing:.08em;min-height:47px}.activities{grid-template-columns:repeat(2,1fr);gap:3px;border-bottom-width:3px}.activity{height:310px}.activity-caption{gap:20px;bottom:24px}.activity-caption .icon{width:42px;height:42px}.activity strong{font-size:14px}.facilities{padding-bottom:159px;border-bottom-width:3px}.facility-photo{height:435px}.facility-photo .panel-image{object-position:61% center}.facility-photo .shade{background:linear-gradient(90deg,#001b2bc4,#001b2b28)}.section-copy{left:6%;top:17%}.section-copy h2{font-size:42px;line-height:1.02}.section-copy .button{margin-top:23px}.amenities{bottom:14px;left:4%;right:4%;height:188px;max-height:none;grid-template-columns:repeat(3,1fr);padding:10px 3px;gap:8px 0}.amenities button{gap:10px;height:75px}.amenities button:nth-child(3){border:0}.amenities .icon{width:32px;height:32px}.amenities span{font-size:8px}.events{height:500px;border-bottom-width:3px}.events .panel-image{object-position:61% center}.events .section-copy{top:30%;left:6%}.events .section-copy h2{font-size:47px}.events .section-copy .button{margin-top:23px}.events .shade{background:linear-gradient(90deg,#001b2bf0,#001b2b60 55%,transparent),linear-gradient(0deg,#00182350,transparent)}.lifestyle{grid-template-columns:1fr;height:auto;gap:3px;border-bottom-width:3px}.nature{height:380px}.nature .section-copy{top:18%;left:6%}.nature h2{font-size:44px}.community{height:340px}.community img{height:175%;top:-75%}.contact{height:300px;min-height:0}.contact h2{font-size:36px}.contact .eyebrow{font-size:8px;letter-spacing:.19em;line-height:2;margin-top:18px}.contact .actions{margin-top:25px;gap:12px}.footer{padding:28px 6% 30px}.footer-top{flex-wrap:wrap;gap:25px 30px;padding-bottom:24px}.footer-top .brand{width:120px}.footer nav{order:3;flex:1 0 100%;flex-wrap:wrap;justify-content:flex-start;gap:17px 20px}.footer nav a{font-size:8px}.socials{margin-left:auto;gap:18px}.socials .icon{width:21px;height:21px}.facebook{font-size:29px}.footer-bottom{padding-top:24px;align-items:start;flex-direction:column;gap:20px;font-size:9px;line-height:1.7}.footer-bottom .icon{width:20px;height:20px}.footer-bottom a{gap:9px}.dialog-body{padding:29px}.dialog-body h2{font-size:35px}.dialog-image{height:220px}.dialog-logo{width:120px}.lightbox img{height:65svh}.lightbox-bottom{flex-wrap:wrap;padding:12px}.lightbox-bottom p{order:-1;width:100%}}
@media(max-width:360px){.hero h1{font-size:43px}.hero .eyebrow{font-size:7px}.hero .button{padding:15px}.activity{height:270px}.contact h2{font-size:32px}.button{padding:15px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.activity.tenis img{height:156%;top:-29%}.hero:after{content:"";position:absolute;inset:0 0 auto;height:19%;background:linear-gradient(#0016236b,transparent);z-index:-1}

/* Capas fotográficas y ranking */
.panel-image{z-index:0}.shade,.contact-shade,.hero:after{z-index:1}.hero-content{z-index:2}.contact-content{position:relative;z-index:2}
.rankings{background:#f5f7f8;color:var(--navy);padding:6vw 4.5%;display:grid;grid-template-columns:38% 1fr;gap:6%;border-bottom:4px solid white}.ranking-intro .eyebrow{font-size:clamp(9px,1vw,17px);letter-spacing:.2em;color:#286685}.ranking-intro h2{font-size:clamp(38px,4.8vw,84px);margin:1.7vw 0;line-height:1.04}.ranking-description{font-size:clamp(11px,1.2vw,18px);line-height:1.8;max-width:320px;color:#527080}.ranking-intro>.icon{width:54px;height:54px;margin-top:30px;stroke-width:1.2;color:#337798}.ranking-board{background:#fff;box-shadow:0 7px 30px #002e4509;align-self:center;border:1px solid #dbe4e9}.ranking-tabs{display:flex;border-bottom:1px solid #dbe4e9}.ranking-tabs button{flex:1;background:#edf2f5;color:#476775;border:0;border-bottom:3px solid transparent;padding:22px 15px;text-transform:uppercase;font-size:clamp(10px,1.05vw,17px);font-weight:800;letter-spacing:.12em;transition:background .2s}.ranking-tabs button[aria-selected="true"]{background:var(--navy);border-bottom-color:#0b85c9;color:#fff}.ranking-tabs button:hover{background:#dcebf3;color:var(--navy)}#ranking-panel{padding:25px 28px 20px}.ranking-season{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#527080;margin-bottom:20px}.ranking-table{border-collapse:collapse;width:100%;font-size:13px}.ranking-table th{padding:12px 0;border-bottom:1px solid #dbe4e9;text-align:left;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.ranking-table th:last-child,.ranking-table td:last-child{text-align:right}.ranking-table td{padding:15px 0;border-bottom:1px solid #edf2f4}.ranking-table td:first-child{font-weight:700}.ranking-empty{text-align:center;padding:26px 0 22px;font-weight:500}.ranking-empty strong{font-family:var(--serif);font-size:30px;font-weight:400}.ranking-empty p{font-size:11px;line-height:1.8;color:#657d8b;margin-top:10px}.ranking-update{font-size:9px;color:#657d8b;margin-top:17px;line-height:1.6}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.header{gap:2.3%}.members{margin-left:.6vw;padding:1.2vw 1.6vw}.footer-top{gap:3%}.footer nav{gap:1.1vw}
@media(max-width:700px){.rankings{padding:42px 6%;grid-template-columns:1fr;gap:28px}.ranking-intro h2{margin:15px 0;font-size:42px}.ranking-description{font-size:12px}.ranking-intro>.icon{display:none}.ranking-tabs button{font-size:11px;padding:19px 12px}#ranking-panel{padding:22px 20px}.ranking-empty{padding:28px 0}.ranking-empty p{font-size:11px}.members{margin:10px 0 0;padding:14px 20px}.footer nav{gap:17px 20px}}

.ranking-player{display:flex;gap:12px;align-items:center;font-weight:600}.player-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;flex-shrink:0}.photo-demo{padding:20px 0 0;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.photo-demo[hidden]{display:none}.photo-upload{position:relative;overflow:hidden;display:inline-flex;cursor:pointer;padding:10px 13px;background:#006bb2;color:#fff;font-size:10px;font-weight:700;border-radius:2px}.photo-upload input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.photo-upload:focus-within{outline:3px solid #68b8e2;outline-offset:3px}#photo-reset{background:transparent;border:0;color:#486e82;font-size:9px;padding:10px 0;text-decoration:underline;text-underline-offset:3px}#photo-status{width:100%;font-size:10px;color:#637f8f;line-height:1.7}.ranking-tabs button[aria-selected="true"]:hover{background:#064863;color:white}.ranking-table th:first-child{width:22%}.ranking-table th:last-child{width:17%}@media(max-width:700px){.ranking-player{gap:9px;font-size:11px}.player-avatar{width:42px;height:42px}.ranking-table th{font-size:8px}}

.avatar-button{padding:0;border:0;border-radius:50%;background:transparent;position:relative}.avatar-button:hover{box-shadow:0 0 0 3px #006bb233}.avatar-button:after{content:"+";position:absolute;right:-2px;bottom:-1px;background:#006bb2;color:white;width:15px;height:15px;border-radius:50%;font:12px/15px Arial;border:1px solid white}.ranking-table tbody tr:nth-child(-n+3)>td:first-child{color:#006bb2}.ranking-board{max-height:none}#ranking-panel{max-height:690px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#7ba7bd #edf2f5}.ranking-table thead{position:sticky;top:-25px;background:#fff;z-index:1}.ranking-intro{align-self:start}.ranking-update{font-weight:600;color:#32627b}

.ranking-demo-badge{display:inline-block;margin-top:20px;padding:8px 11px;border:1px solid #b8cdd8;border-radius:2px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#426b82}.ranking-demo-badge[hidden]{display:none}
.ranking-demo-badge{display:table}.ranking-intro>.icon{display:block}@media(max-width:700px){.ranking-intro>.icon{display:none}}
