@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Montserrat:wght@200;300;400;500&display=swap";
@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Montserrat:wght@200;300;400;500;600&display=swap";
.video-landing{-webkit-user-select:none;user-select:none;background:#000;width:100vw;height:100vh;position:relative;overflow:hidden}.video-background{object-fit:cover;z-index:1;opacity:0;min-width:100%;min-height:100vh;animation:1.5s ease-out .3s forwards videoFadeIn;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes videoFadeIn{0%{opacity:0;transform:translate(-50%,-50%)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.video-overlay{z-index:2;pointer-events:none;background:linear-gradient(#0000004d 0%,#0003 40%,#0006 70%,#000c 100%);position:absolute;inset:0}.video-poster-overlay{z-index:10;background:#000;justify-content:center;align-items:center;transition:opacity 1.2s ease-out,visibility 1.2s ease-out;display:flex;position:absolute;inset:0}.video-poster-overlay.hidden{opacity:0;visibility:hidden}.poster-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.video-branding{padding:48px 56px;padding-bottom:calc(48px + env(safe-area-inset-bottom,20px));z-index:3;opacity:0;transition:opacity 1s ease-out,transform 1s ease-out;position:absolute;bottom:0;left:0;transform:translateY(20px)}.video-branding.visible{opacity:1;transform:translateY(0)}.branding-line{background:linear-gradient(90deg,#ffd700e6,#daa52099);width:60px;height:2px;margin-bottom:20px;animation:1.2s ease-out .8s backwards lineExpand}@keyframes lineExpand{0%{opacity:0;width:0}to{opacity:1;width:60px}}.branding-name{letter-spacing:.02em;color:#fff;text-shadow:0 4px 20px #00000080;background:linear-gradient(135deg,#fff 0%,#f5f5f5 50%,#e8e8e8 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-family:Playfair Display,Georgia,serif;font-size:clamp(2.5rem,5vw,4rem);font-weight:600;animation:3s ease-in-out infinite textShimmer}@keyframes textShimmer{0%,to{background-position:0%}50%{background-position:100%}}.branding-tagline{letter-spacing:.15em;text-transform:uppercase;color:#ffffffd9;text-shadow:0 2px 10px #0006;margin:12px 0 0;font-family:Montserrat,Helvetica Neue,sans-serif;font-size:clamp(.9rem,1.2vw,1.1rem);font-weight:300}.scroll-indicator{padding:40px;padding-bottom:calc(40px + env(safe-area-inset-bottom,20px));z-index:3;opacity:0;flex-direction:column;align-items:center;gap:12px;transition:opacity 1s ease-out 1.5s;display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.scroll-indicator.visible{opacity:1}.scroll-icon{border:2px solid #ffffff80;border-radius:20px;width:28px;height:44px;animation:2s infinite scrollBounce;position:relative}.scroll-dot{background:#fffc;border-radius:4px;width:4px;height:8px;animation:2s infinite scrollDot;position:absolute;top:8px;left:50%;transform:translate(-50%)}@keyframes scrollBounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes scrollDot{0%{opacity:1;transform:translate(-50%)translateY(0)}50%{opacity:.5;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.scroll-text{letter-spacing:.12em;text-transform:uppercase;color:#ffffffb3;text-shadow:0 2px 8px #0000004d;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:300}@media (max-width:850px){.video-branding{padding:32px 28px;bottom:25%}.branding-line{width:50px;margin-bottom:16px}.branding-name{font-size:clamp(2rem,8vw,3rem)}.branding-tagline{letter-spacing:.12em;font-size:clamp(.7rem,2.5vw,.9rem)}.scroll-indicator{padding:24px;padding-bottom:calc(24px + env(safe-area-inset-bottom,20px));display:flex}.scroll-icon{width:24px;height:38px}.scroll-text{font-size:.65rem}}@media (max-width:480px){.video-branding{padding:24px 20px;bottom:25%}.branding-name{font-size:clamp(1.8rem,10vw,2.5rem)}.branding-tagline{margin-top:8px;font-size:.7rem}}@media (hover:hover){.video-branding:hover .branding-name{animation:1.5s ease-in-out infinite textShimmer}.scroll-indicator:hover .scroll-icon{border-color:#fffc}.scroll-indicator:hover .scroll-dot{background:#ffd700e6}}
.luxury-hero{background:linear-gradient(#fff 0%,#fafafa 100%);min-height:100vh;padding:120px 24px 80px;position:relative;overflow:hidden}.luxury-hero:before{content:"";pointer-events:none;background-image:radial-gradient(circle at 20% 30%,#ffd70005 0%,#0000 50%),radial-gradient(circle at 80% 70%,#daa52008 0%,#0000 50%);position:absolute;inset:0}.luxury-hero-container{z-index:1;grid-template-columns:1fr 1fr;align-items:center;gap:80px;max-width:1280px;margin:0 auto;display:grid;position:relative}.luxury-hero-content{opacity:0;transition:opacity .8s ease-out,transform .8s ease-out;transform:translateY(30px)}.luxury-hero-content.visible{opacity:1;transform:translateY(0)}.luxury-badge{background:#ffd70014;border:1px solid #daa52033;border-radius:999px;align-items:center;gap:8px;margin-bottom:24px;padding:8px 16px;display:inline-flex}.luxury-badge-dot{background:linear-gradient(135deg,gold,#daa520);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.luxury-badge-text{letter-spacing:.1em;text-transform:uppercase;color:#b8860b;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:500}.luxury-hero-title{letter-spacing:-.02em;color:#1a1a1a;margin-bottom:24px;font-family:Playfair Display,serif;font-size:clamp(2.5rem,5vw,3.75rem);font-weight:600;line-height:1.2}.luxury-hero-highlight{background:linear-gradient(135deg,#b8860b 0%,#daa520 50%,gold 100%);-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;background-clip:text;animation:4s infinite gradientShift;display:block}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}.luxury-hero-description{color:#4a4a4a;max-width:540px;margin-bottom:32px;font-family:Montserrat,sans-serif;font-size:1.125rem;font-weight:300;line-height:1.8}.luxury-tagline{background:linear-gradient(135deg,#ffd7000f,#daa52008);border-left:3px solid #daa520;border-radius:8px;align-items:center;gap:12px;max-width:540px;margin-bottom:48px;padding:16px 20px;display:flex}.luxury-tagline-icon{flex-shrink:0;font-size:1.5rem}.luxury-tagline p{color:#2a2a2a;margin:0;font-family:Montserrat,sans-serif;font-size:.95rem;font-weight:400;line-height:1.6}.luxury-tagline strong{color:#b8860b;font-weight:600}.luxury-features{flex-direction:column;gap:24px;margin-bottom:48px;display:flex}.luxury-feature{align-items:flex-start;gap:16px;display:flex}.luxury-feature-icon{color:#b8860b;background:linear-gradient(135deg,#ffd7001a,#daa5200d);border:1px solid #daa52033;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.luxury-feature-content h3{color:#1a1a1a;margin:0 0 4px;font-family:Montserrat,sans-serif;font-size:1rem;font-weight:600}.luxury-feature-content p{color:#6a6a6a;margin:0;font-family:Montserrat,sans-serif;font-size:.9rem;font-weight:300}.luxury-hero-actions{flex-wrap:wrap;gap:16px;display:flex}.luxury-btn-primary,.luxury-btn-secondary{cursor:pointer;letter-spacing:.02em;border:none;border-radius:8px;padding:16px 32px;font-family:Montserrat,sans-serif;font-size:.95rem;font-weight:500;transition:all .3s}.luxury-btn-primary{color:#fff;background:linear-gradient(135deg,#b8860b 0%,#daa520 100%);box-shadow:0 4px 16px #b8860b4d}.luxury-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 24px #b8860b66}.luxury-btn-secondary{color:#1a1a1a;background:0 0;border:1px solid #e0e0e0}.luxury-btn-secondary:hover{background:#fafafa;border-color:#b8860b}.luxury-hero-visual{opacity:0;height:600px;transition:opacity .8s ease-out .2s,transform .8s ease-out .2s;position:relative;transform:translateY(30px)}.luxury-hero-visual.visible{opacity:1;transform:translateY(0)}.luxury-image-stack{width:100%;height:100%;position:relative}.luxury-image{border-radius:16px;transition:transform .4s;position:absolute;overflow:hidden;box-shadow:0 24px 48px #0000001f}.luxury-image-1{z-index:2;width:70%;height:80%;top:0;right:0}.luxury-image-2{z-index:1;width:60%;height:70%;bottom:0;left:0}.luxury-image:hover{transform:scale(1.02)}.luxury-image-placeholder{background:#2a2a2a;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.luxury-image-photo{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .4s}.luxury-accent-card{z-index:3;background:linear-gradient(135deg,#fff 0%,#fafafa 100%);border:1px solid #daa5204d;border-radius:16px;min-width:180px;padding:24px;animation:6s ease-in-out infinite float;position:absolute;top:50%;left:10%;transform:translateY(-50%);box-shadow:0 16px 40px #00000026}@keyframes float{0%,to{transform:translateY(-50%)translate(0)}50%{transform:translateY(-50%)translate(10px)}}.luxury-accent-icon{margin-bottom:12px;font-size:2rem}.luxury-accent-rating{color:#1a1a1a;margin-bottom:4px;font-family:Playfair Display,serif;font-size:2.5rem;font-weight:600;line-height:1}.luxury-accent-label{color:#b8860b;margin-bottom:8px;font-family:Montserrat,sans-serif;font-size:.9rem;font-weight:500}.luxury-accent-reviews{color:#6a6a6a;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:300}@media (max-width:968px){.luxury-hero-container{grid-template-columns:1fr;gap:60px}.luxury-hero-visual{height:500px}.luxury-accent-card{top:auto;bottom:20px;left:50%;transform:translate(-50%)}}@media (max-width:768px){.luxury-hero{min-height:90vh;padding:100px 20px 60px}.luxury-hero-container{gap:40px}.luxury-hero-title{margin-bottom:20px;font-size:2.25rem;line-height:1.1}.luxury-hero-description{max-width:100%;margin-bottom:32px;font-size:1rem;line-height:1.6}.luxury-features{gap:20px;margin-bottom:32px}.luxury-feature{gap:12px}.luxury-feature-icon{border-radius:10px;width:40px;height:40px}.luxury-feature-content h3{font-size:.95rem}.luxury-feature-content p{font-size:.85rem}.luxury-hero-actions{flex-direction:column;gap:12px}.luxury-btn-primary,.luxury-btn-secondary{text-align:center;width:100%;padding:14px 24px;font-size:.9rem}.luxury-hero-visual{order:-1;height:400px}.luxury-image-1,.luxury-image-2{width:85%;height:60%}.luxury-accent-card{min-width:160px;padding:20px;bottom:10px}.luxury-accent-rating{font-size:2rem}.luxury-accent-icon{font-size:1.5rem}}@media (max-width:480px){.luxury-hero{padding:90px 16px 50px}.luxury-hero-title{font-size:1.875rem}.luxury-hero-description{font-size:.95rem}.luxury-badge{margin-bottom:16px;padding:6px 12px}.luxury-badge-text{font-size:.7rem}.luxury-hero-visual{height:350px}.luxury-image-1,.luxury-image-2{width:90%;height:55%}.luxury-accent-card{min-width:140px;padding:16px}.luxury-accent-rating{font-size:1.75rem}.luxury-btn-primary,.luxury-btn-secondary{padding:12px 20px;font-size:.85rem}}
.luxury-rooms{background:linear-gradient(#fafafa 0%,#fff 100%);min-height:100vh;padding:100px 24px;position:relative;overflow:hidden}.luxury-rooms-container{max-width:1280px;margin:0 auto}.luxury-rooms-header{text-align:center;opacity:0;max-width:720px;margin:0 auto 80px;transition:opacity .8s ease-out,transform .8s ease-out;transform:translateY(30px)}.luxury-rooms-header.visible{opacity:1;transform:translateY(0)}.section-badge{background:#ffd70014;border:1px solid #daa52033;border-radius:999px;align-items:center;gap:8px;margin-bottom:24px;padding:8px 16px;display:inline-flex}.section-badge-dot{background:linear-gradient(135deg,gold,#daa520);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}.section-badge-text{letter-spacing:.1em;text-transform:uppercase;color:#b8860b;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:500}.section-title{letter-spacing:-.02em;color:#1a1a1a;margin-bottom:20px;font-family:Playfair Display,serif;font-size:clamp(2.25rem,4vw,3.25rem);font-weight:600;line-height:1.2}.section-title-highlight{background:linear-gradient(135deg,#b8860b 0%,#daa520 50%,gold 100%);-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;background-clip:text;animation:4s infinite gradientShift;display:block}.section-description{color:#4a4a4a;font-family:Montserrat,sans-serif;font-size:1.125rem;font-weight:300;line-height:1.8}.rooms-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:32px;margin-top:60px;display:grid}.room-card{opacity:0;background:linear-gradient(135deg,#fff 0%,#fafafa 100%);border:1px solid #daa52026;border-radius:20px;padding:40px 32px;transition:all .4s;position:relative;overflow:hidden;transform:translateY(30px)}.room-card:before{content:"";transform-origin:0;background:linear-gradient(90deg,#b8860b,#daa520,gold);height:4px;transition:transform .5s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.room-card:hover:before{transform:scaleX(1)}.room-card.visible{opacity:1;transform:translateY(0)}.room-card:hover{border-color:#daa5204d;transform:translateY(-8px);box-shadow:0 20px 40px #b8860b26}.room-card-icon{filter:drop-shadow(0 4px 8px #b8860b33);margin-bottom:24px;font-size:3rem}.room-card-title{color:#1a1a1a;margin-bottom:16px;font-family:Playfair Display,serif;font-size:1.75rem;font-weight:600}.room-card-description{color:#4a4a4a;margin-bottom:24px;font-family:Montserrat,sans-serif;font-size:1rem;font-weight:300;line-height:1.7}.room-card-features{margin:0 0 32px;padding:0;list-style:none}.room-card-features li{color:#2a2a2a;align-items:center;gap:10px;padding:8px 0;font-family:Montserrat,sans-serif;font-size:.9rem;font-weight:400;display:flex}.room-card-features li svg{color:#b8860b;flex-shrink:0}.room-card-btn{color:#b8860b;cursor:pointer;letter-spacing:.02em;background:0 0;border:1.5px solid #b8860b;border-radius:8px;width:100%;padding:14px 24px;font-family:Montserrat,sans-serif;font-size:.95rem;font-weight:500;transition:all .3s}.room-card-btn:hover{color:#fff;background:linear-gradient(135deg,#b8860b 0%,#daa520 100%);border-color:#0000;transform:translateY(-2px);box-shadow:0 4px 16px #b8860b4d}@media (max-width:968px){.luxury-rooms{padding:80px 20px}.luxury-rooms-header{margin-bottom:60px}.rooms-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.room-card{padding:32px 24px}}@media (max-width:768px){.luxury-rooms{min-height:auto;padding:60px 20px}.luxury-rooms-container{max-width:100%}.luxury-rooms-header{max-width:100%;margin-bottom:40px}.section-title{margin-bottom:16px;font-size:2rem;line-height:1.1}.section-description{font-size:1rem;line-height:1.6}.section-badge{margin-bottom:16px;padding:6px 12px}.section-badge-text{font-size:.7rem}.rooms-grid{grid-template-columns:1fr;gap:20px;margin-top:40px}.room-card{border-radius:16px;padding:28px 20px}.room-card-icon{margin-bottom:20px;font-size:2.5rem}.room-card-title{margin-bottom:12px;font-size:1.5rem}.room-card-description{margin-bottom:20px;font-size:.95rem;line-height:1.6}.room-card-features{margin-bottom:24px}.room-card-features li{gap:8px;padding:6px 0;font-size:.85rem}.room-card-btn{padding:12px 20px;font-size:.9rem}}@media (max-width:480px){.luxury-rooms{padding:50px 16px}.section-title{font-size:1.75rem}.section-description{font-size:.95rem}.room-card{padding:24px 16px}.room-card-icon{margin-bottom:16px;font-size:2rem}.room-card-title{font-size:1.375rem}.room-card-description{margin-bottom:16px;font-size:.9rem}.room-card-btn{padding:10px 16px;font-size:.85rem}}
.luxury-amenities{color:#fff;background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);min-height:100vh;padding:100px 24px;position:relative;overflow:hidden}.luxury-amenities:before{content:"";pointer-events:none;background-image:radial-gradient(circle at 20% 30%,#ffd7000d 0%,#0000 50%),radial-gradient(circle at 80% 70%,#daa52014 0%,#0000 50%);animation:20s ease-in-out infinite subtleShift;position:absolute;inset:0}@keyframes subtleShift{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.luxury-amenities-container{z-index:1;max-width:1280px;margin:0 auto;position:relative}.luxury-amenities-header{text-align:center;opacity:0;max-width:720px;margin:0 auto 80px;transition:opacity .8s ease-out,transform .8s ease-out;transform:translateY(30px)}.luxury-amenities-header.visible{opacity:1;transform:translateY(0)}.luxury-amenities .section-title{color:#fff}.luxury-amenities .section-description{color:#fffc}.amenities-grid{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(3,1fr);gap:24px;width:100%;max-width:1200px;margin-top:60px;margin-left:auto;margin-right:auto;display:grid}.amenity-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;opacity:0;background:linear-gradient(135deg,#ffffff0d 0%,#ffffff05 100%);border:1px solid #ffffff1a;border-radius:16px;padding:32px 24px;transition:all .4s;position:relative;overflow:hidden;transform:translateY(30px)}.amenity-card:before{content:"";background:linear-gradient(90deg,#0000,gold,#0000);height:2px;transition:transform .5s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.amenity-card:hover:before{transform:scaleX(1)}.amenity-card.visible{opacity:1;transform:translateY(0)}.amenity-card:hover{background:linear-gradient(135deg,#ffd7001a 0%,#daa5200d 100%);border-color:#ffd7004d;transform:translateY(-8px);box-shadow:0 16px 40px #ffd70026}.amenity-icon{color:gold;justify-content:center;align-items:center;margin-bottom:20px;transition:transform .3s;display:flex}.amenity-card:hover .amenity-icon{transform:scale(1.1)}.amenity-title{color:#fff;margin-bottom:12px;font-family:Playfair Display,serif;font-size:1.25rem;font-weight:600}.amenity-description{color:#ffffffb3;font-family:Montserrat,sans-serif;font-size:.95rem;font-weight:300;line-height:1.6}@media (max-width:968px){.luxury-amenities{padding:80px 20px}.luxury-amenities-header{margin-bottom:60px}.amenities-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-template-rows:unset;gap:20px;margin-top:40px}.amenity-card{padding:28px 20px}}@media (max-width:768px){.luxury-amenities{min-height:auto;padding:60px 20px}.luxury-amenities-container{max-width:100%}.luxury-amenities-header{max-width:100%;margin-bottom:40px}.section-title{margin-bottom:16px;font-size:2rem;line-height:1.1}.section-description{font-size:1rem;line-height:1.6}.section-badge{margin-bottom:16px;padding:6px 12px}.section-badge-text{font-size:.7rem}.amenities-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:32px}.amenity-card{text-align:center;border-radius:12px;padding:24px 16px}.amenity-icon{margin-bottom:16px;transform:scale(.9)}.amenity-card:hover .amenity-icon{transform:scale(1)}.amenity-title{margin-bottom:8px;font-size:1.125rem}.amenity-description{font-size:.85rem;line-height:1.5}}@media (max-width:480px){.luxury-amenities{padding:50px 16px}.section-title{font-size:1.75rem}.section-description{font-size:.95rem}.amenities-grid{grid-template-columns:1fr;gap:12px}.amenity-card{padding:20px 16px}.amenity-icon{margin-bottom:12px;transform:scale(.8)}.amenity-card:hover .amenity-icon{transform:scale(.9)}.amenity-title{font-size:1rem}.amenity-description{font-size:.8rem}}
.luxury-location{background:linear-gradient(#fff 0%,#f8f8f8 100%);min-height:100vh;padding:100px 24px;position:relative}.luxury-location-container{max-width:1280px;margin:0 auto}.luxury-location-header{text-align:center;opacity:0;max-width:720px;margin:0 auto 80px;transition:opacity .8s ease-out,transform .8s ease-out;transform:translateY(30px)}.luxury-location-header.visible{opacity:1;transform:translateY(0)}.location-content{grid-template-columns:1fr 1fr;align-items:start;gap:60px;display:grid}.attractions-list{opacity:0;transition:opacity .8s ease-out,transform .8s ease-out;transform:translate(-30px)}.attractions-list.visible{opacity:1;transform:translate(0)}.attractions-title{color:#1a1a1a;margin-bottom:32px;font-family:Playfair Display,serif;font-size:1.75rem;font-weight:600}.attraction-item{opacity:0;background:#fff;border:1px solid #e8e8e8;border-radius:16px;gap:16px;margin-bottom:16px;padding:24px;transition:all .4s;display:flex;transform:translate(-20px)}.attraction-item.visible{opacity:1;transform:translate(0)}.attraction-item.highlight{background:linear-gradient(135deg,#fffef0 0%,#fefde8 100%);border-color:#daa5204d;box-shadow:0 4px 16px #ffd7001a}.attraction-item:hover{border-color:#daa52066;transform:translate(8px);box-shadow:0 8px 24px #00000014}.attraction-icon{filter:drop-shadow(0 2px 4px #0000001a);flex-shrink:0;font-size:2rem}.attraction-details{flex:1}.attraction-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.attraction-name{color:#1a1a1a;margin:0;font-family:Playfair Display,serif;font-size:1.25rem;font-weight:600}.attraction-distance{color:#b8860b;white-space:nowrap;background:#ffd70026;border-radius:999px;padding:4px 12px;font-family:Montserrat,sans-serif;font-size:.85rem;font-weight:600}.attraction-description{color:#4a4a4a;margin:0;font-family:Montserrat,sans-serif;font-size:.95rem;font-weight:300;line-height:1.6}.location-map{opacity:0;transition:opacity .8s ease-out .3s,transform .8s ease-out .3s;transform:translate(30px)}.location-map.visible{opacity:1;transform:translate(0)}.map-card{background:#fff;border:1px solid #e8e8e8;border-radius:24px;transition:all .3s;position:sticky;top:120px;overflow:hidden;box-shadow:0 24px 48px #00000014}.map-card:hover{transform:translateY(-4px);box-shadow:0 32px 64px #0000001f}.map-header{background:linear-gradient(135deg,#fafafa 0%,#fff 100%);border-bottom:1px solid #f0f0f0;align-items:center;gap:16px;padding:32px 32px 24px;display:flex}.map-icon{color:#b8860b;background:linear-gradient(135deg,#ffd7001a 0%,#b8860b1a 100%);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex;box-shadow:0 4px 12px #b8860b26}.map-title{color:#1a1a1a;margin:0 0 4px;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600;line-height:1.2}.map-subtitle{color:#6a6a6a;margin:0;font-family:Montserrat,sans-serif;font-size:.9rem;font-weight:400}.map-container{background:linear-gradient(135deg,#f5f5f5 0%,#e8e8e8 100%);width:100%;height:400px;position:relative}.map-container iframe{filter:grayscale(0%)contrast(1.05)brightness(.98);transition:filter .3s;display:block}.map-card:hover .map-container iframe{filter:grayscale(0%)contrast(1.1)brightness()}.map-footer{background:linear-gradient(135deg,#fafafa 0%,#fff 100%);border-top:1px solid #f0f0f0;padding:24px 32px}.map-link{color:#b8860b;background:linear-gradient(135deg,#ffd7001a 0%,#b8860b1a 100%);border:1px solid #b8860b33;border-radius:12px;align-items:center;gap:10px;padding:14px 28px;font-family:Montserrat,sans-serif;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.map-link:hover{color:#fff;background:linear-gradient(135deg,#b8860b 0%,#daa520 100%);transform:translate(4px);box-shadow:0 4px 16px #b8860b4d}.map-link svg{width:18px;height:18px;transition:transform .3s}.map-link:hover svg{transform:translate(2px)translateY(-2px)}@media (max-width:968px){.luxury-location{padding:80px 20px}.luxury-location-header{margin-bottom:60px}.location-content{grid-template-columns:1fr;gap:40px}.map-card{position:static}.attractions-title{margin-bottom:24px;font-size:1.5rem}.attraction-item{margin-bottom:12px;padding:20px}.map-container{height:350px}}@media (max-width:768px){.luxury-location{min-height:auto;padding:60px 20px}.luxury-location-container{max-width:100%}.luxury-location-header{max-width:100%;margin-bottom:40px}.section-title{margin-bottom:16px;font-size:2rem;line-height:1.1}.section-description{font-size:1rem;line-height:1.6}.section-badge{margin-bottom:16px;padding:6px 12px}.section-badge-text{font-size:.7rem}.location-content{gap:32px}.attractions-title{margin-bottom:20px;font-size:1.375rem}.attraction-item{border-radius:12px;gap:12px;margin-bottom:12px;padding:16px}.attraction-icon{font-size:1.5rem}.attraction-header{flex-direction:column;align-items:flex-start;gap:6px}.attraction-name{font-size:1.125rem}.attraction-distance{padding:3px 10px;font-size:.75rem}.attraction-description{font-size:.85rem;line-height:1.5}.map-card{border-radius:16px;overflow:hidden}.map-header{gap:12px;padding:20px 16px 16px}.map-icon{border-radius:12px;width:44px;height:44px}.map-title{font-size:1.25rem}.map-subtitle{font-size:.85rem}.map-container{height:280px}.map-footer{padding:16px}.map-link{justify-content:center;width:100%;padding:12px 20px;font-size:.9rem}}@media (max-width:480px){.luxury-location{padding:50px 16px}.section-title{font-size:1.75rem}.section-description{font-size:.95rem}.attractions-title{margin-bottom:16px;font-size:1.25rem}.attraction-item{gap:10px;padding:14px}.attraction-icon{font-size:1.25rem}.attraction-name{font-size:1rem}.attraction-description{font-size:.8rem}.map-header{gap:10px;padding:16px 12px 12px}.map-icon{width:40px;height:40px}.map-title{font-size:1.125rem}.map-subtitle{font-size:.8rem}.map-container{height:240px}.map-footer{padding:12px}.map-link{padding:10px 16px;font-size:.85rem}}
.hero{height:100vh}.hero-content{flex-direction:column;justify-content:center;display:flex}.hero-grid{grid-template-columns:1.1fr 1fr;align-items:stretch;max-width:1200px;height:100%;margin:0 auto;padding:40px 0 0;display:grid}.hero-content h1 span{font-weight:500}.hero-content h1 .muted{color:#9ca3af}.btn-primary{color:#fff;cursor:pointer;background:#000;border:none;border-radius:999px;padding:.85rem 1.75rem;font-size:.95rem;font-weight:500;transition:background .2s,transform .15s}.btn-primary:hover{background:#111;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{color:#000;cursor:pointer;background:0 0;border:1px solid #e5e7eb;border-radius:999px;padding:.85rem 1.75rem;font-size:.95rem;font-weight:500;transition:border-color .2s,background .2s}.btn-secondary:hover{background:#f9fafb;border-color:#d1d5db}button:focus-visible{outline-offset:3px;outline:2px solid #000}.hero-illustration{justify-content:center;align-items:center;max-width:600px;display:flex}.hero-illustration img{max-width:100%;height:auto;display:block}.hero-gif{object-fit:contain;z-index:2;background:0 0;width:100%;max-width:600px;height:auto;display:block;position:relative}@media (max-width:1400px){.hero-title{font-size:40px}}@media (max-width:1200px){.hero-title{font-size:36px}}@media (max-width:1024px){.hero-title{font-size:32px}}@media (max-width:900px){.hero{height:auto;min-height:auto;padding:96px 0 48px}.hero-grid{grid-template-columns:1fr}.hero-content{order:1}.hero-illustration{order:2}.hero-content{padding-top:clamp(48px,8vh,80px)}.hero-gif{max-width:92%;margin:0 auto;display:block}.hero-title{font-size:32px}.hero-content h1{margin:0 15px;font-size:1.9rem!important}.hero-content p{margin:0 15px}.hero-actions{margin:0 15px;align-items:start!important}}@media (max-width:640px){.hero{padding:72px 0}.hero-title{font-size:28px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-video{width:auto;max-height:calc(100vh - 220px)}.hero-content h1{margin-bottom:.2rem}.hero-content p{margin-bottom:.8rem}.hero-actions{gap:0}.hero-grid{align-items:start}.hero-content{flex-direction:column;justify-content:center;width:100%;min-height:calc(60vh - 40px);padding-top:clamp(40px,7vh,64px);display:flex}.hero-content h1 br{display:none}@media (max-width:420px){.hero-content h1{font-size:1.8rem;line-height:1.18}}}.hero-visual{position:relative;overflow:hidden}.hero-visual:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle at 10% 0,#2563ff12,#0000 55%),radial-gradient(circle at 80% 20%,#2563ff17,#0000 55%);position:absolute;inset:-120px}.hero-badge-row{align-items:center;gap:8px;margin-bottom:12px;display:flex}.badge{text-transform:uppercase;letter-spacing:.16em;border:1px solid #0000;border-radius:999px;padding:5px 10px;font-size:11px}.badge-soft{background:var(--accent-soft);border-color:#2563ff2e}.badge-dot{background:#999;border-radius:999px;width:4px;height:4px}.badge-text{text-transform:uppercase;letter-spacing:.16em;color:#777;font-size:11px}.hero-title-accent{display:block}.hero-subtitle{color:#3a3a3a;max-width:540px;margin-bottom:22px;font-size:28px;font-weight:400;line-height:1.6}.hero-trust-row{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.hero-trust-label{color:#777;font-size:12px}.hero-trust-tags{flex-wrap:wrap;gap:6px;display:flex}.pill-small{background:#fff;border:1px solid #dfdfdf;border-radius:999px;padding:5px 9px;font-size:11px}.hero-right{min-height:260px;position:relative}.floating-card{background:linear-gradient(#fff,#fff) padding-box padding-box,linear-gradient(135deg,#111,#555) border-box;border:1px solid #0000;border-radius:22px;max-width:280px;padding:18px 18px 16px;animation:8s ease-in-out infinite float;position:absolute;right:0;box-shadow:0 18px 40px #0000001f}.floating-card.primary{top:0}.floating-card.secondary{animation-delay:-4s;bottom:0;right:40px}@keyframes heroFadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-content h1{letter-spacing:-.02em;color:#000;opacity:0;margin-bottom:1rem;font-family:Roboto,system-ui,-apple-system,Segoe UI,Helvetica Neue,Arial;font-size:2.1rem;font-weight:500;line-height:1.3;animation:.8s cubic-bezier(.2,.8,.2,1) forwards heroFadeInUp}.hero-content p{color:#6b7280;opacity:0;margin-bottom:2.9rem;font-size:1rem;line-height:1.7;animation:.8s cubic-bezier(.2,.8,.2,1) .2s forwards heroFadeInUp}.hero-actions{opacity:0;align-items:center;gap:1rem;animation:.8s cubic-bezier(.2,.8,.2,1) .4s forwards heroFadeInUp;display:flex}.hero-right{opacity:0;justify-content:center;align-items:center;height:100%;animation:1s cubic-bezier(.2,.8,.2,1) .6s forwards heroFadeInUp;display:flex}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.floating-label{text-transform:uppercase;letter-spacing:.16em;color:#bbb;margin-bottom:10px;font-size:11px}.floating-list{color:#333;margin:0;padding-left:18px;font-size:13px}.floating-list li+li{margin-top:3px}.floating-metric-title{text-transform:uppercase;letter-spacing:.16em;color:#bbb;margin-bottom:6px;font-size:12px}.floating-metric-value{margin-bottom:6px;font-size:15px;font-weight:600}.floating-metric-footnote{color:#555;margin:0;font-size:12px}@media (max-width:960px){.hero-grid{grid-template-columns:1fr}.hero-right{min-height:230px;margin-top:20px}}@media (max-width:1100px){.floating-card{max-width:240px}}@media (max-width:640px){.hero{padding:64px 0 40px}.floating-card{max-width:100%;margin-bottom:12px;position:relative;right:auto}.floating-card.secondary{right:auto}}@media (max-width:768px){.hero-content h1,.hero-content p,.hero-actions,.hero-right{opacity:1!important;animation:none!important;transform:none!important}}
