:root{--navy:#1b2a4a;--navy-light:#2a3d6b;--gold:#b8962e;--gold-light:#d4af50;--cream:#f5f0e8;--cream-dark:#ede7d9;--white:#fff;--text-dark:#1a1a2e;--text-muted:#6b6b7d;--border:#d6cfc4;--success:#2d6a4f;--font-serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--font-sans:"Montserrat","Segoe UI",Arial,sans-serif;--shadow-sm:0 2px 8px rgba(27,42,74,.08);--shadow-md:0 4px 20px rgba(27,42,74,.12);--shadow-lg:0 8px 40px rgba(27,42,74,.18);--radius:12px;--radius-lg:20px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--text-dark);background:var(--white);line-height:1.6;font-size:16px}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}h1,h2,h3,h4{font-weight:600;line-height:1.2}.serif,h1,h2,h3,h4{font-family:var(--font-serif)}.sans{font-family:var(--font-sans)}.container{max-width:1200px;margin:0 auto;padding:0 24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 32px;border-radius:var(--radius);font-family:var(--font-sans);font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:none;transition:all .25s ease}.btn-primary{background:var(--navy);color:var(--white);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--navy-light);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-gold{background:var(--gold);color:var(--white);box-shadow:var(--shadow-sm)}.btn-gold:hover{background:var(--gold-light);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--navy);border:2px solid var(--navy)}.btn-outline:hover{background:var(--navy);color:var(--white)}.btn-ghost{background:hsla(0,0%,100%,.15);color:var(--white);border:1px solid hsla(0,0%,100%,.4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-ghost:hover{background:hsla(0,0%,100%,.25)}.section{padding:80px 0}.section-sm{padding:48px 0}.gold-divider{width:60px;height:2px;background:var(--gold);margin:16px auto 0}.gold-divider-left{margin:16px 0 0}.badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.badge-gold{background:var(--cream-dark);color:var(--gold);border:1px solid var(--gold)}.badge-navy{background:var(--navy);color:var(--white)}.card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border);overflow:hidden;transition:box-shadow .25s ease,transform .25s ease}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}input,select,textarea{font-family:var(--font-sans);font-size:15px;padding:12px 16px;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--white);color:var(--text-dark);width:100%;transition:border-color .2s;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--navy)}label{display:block;font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:var(--navy);border-radius:3px}.text-gold{color:var(--gold)}.text-navy{color:var(--navy)}.text-muted{color:var(--text-muted)}.text-center{text-align:center}.bg-cream{background:var(--cream)}.bg-navy{background:var(--navy);color:var(--white)}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mt-32{margin-top:32px}.mt-48{margin-top:48px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.mb-32{margin-bottom:32px}.gap-8{gap:8px}.gap-16{gap:16px}.gap-24{gap:24px}.grid-2{grid-template-columns:repeat(2,1fr);grid-gap:24px}.grid-2,.grid-3{display:grid;gap:24px}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:24px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.w-full{width:100%}@media (max-width:768px){.grid-2,.grid-3{grid-template-columns:1fr}.section{padding:56px 0}h1{font-size:clamp(2rem,8vw,3.5rem)}}.reveal{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.reveal.revealed{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.card-glass{background:hsla(0,0%,100%,.95);border-radius:var(--radius-lg);border:1px solid rgba(184,150,46,.12);overflow:hidden;transition:box-shadow .4s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1),border-color .4s ease;position:relative}.card-glass:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(184,150,46,.04),transparent 60%);opacity:0;transition:opacity .4s ease;pointer-events:none;z-index:0}.card-glass:hover{box-shadow:0 20px 60px rgba(27,42,74,.18),0 0 0 1px rgba(184,150,46,.25),0 0 30px rgba(184,150,46,.08);transform:translateY(-8px);border-color:rgba(184,150,46,.3)}.card-glass:hover:before{opacity:1}.card-glass img{transition:transform .6s cubic-bezier(.22,1,.36,1)}.card-glass:hover img{transform:scale(1.06)}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes heroFadeIn{0%{opacity:0}to{opacity:1}}.hero-reveal{animation:heroFadeUp .9s cubic-bezier(.22,1,.36,1) both}.hero-reveal-1{animation-delay:.1s}.hero-reveal-2{animation-delay:.3s}.hero-reveal-3{animation-delay:.5s}.hero-reveal-4{animation-delay:.7s}.hero-reveal-5{animation-delay:.9s}.hero-reveal-6{animation-delay:1.1s}@keyframes auroraMove1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(60px,-40px) scale(1.15)}66%{transform:translate(-40px,30px) scale(.9)}}@keyframes auroraMove2{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-50px,60px) scale(1.1)}66%{transform:translate(70px,-20px) scale(.95)}}@keyframes auroraMove3{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,50px) scale(1.2)}}@keyframes goldShimmer{0%{background-position:-200%}to{background-position:200%}}.gold-shimmer{background:linear-gradient(90deg,#b8962e,#d4af50 40%,#f0d070 50%,#d4af50 60%,#b8962e);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:goldShimmer 4s linear infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes twinkle{0%{opacity:.2;transform:scale(.8)}to{opacity:1;transform:scale(1.3)}}@keyframes pulseRing{0%{transform:scale(.9);opacity:.6}to{transform:scale(1.4);opacity:0}}.btn-gold{position:relative;overflow:hidden}.btn-gold:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);transform:translateX(-100%);transition:transform .5s ease}.btn-gold:hover:after{transform:translateX(100%)}.btn-gold:hover{box-shadow:0 0 30px rgba(184,150,46,.4),0 4px 20px rgba(27,42,74,.2)}.apt-card-link:hover .card-cta-btn{box-shadow:0 0 0 6px rgba(184,150,46,.18);transform:scale(1.12)}.apt-card-link:hover .card-overlay{opacity:1!important}.search-bar-form{display:flex;align-items:center;background:hsla(0,0%,100%,.1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(184,150,46,.4);border-radius:60px;padding:10px 10px 10px 28px;max-width:860px;margin:0 auto;box-shadow:0 8px 32px rgba(0,0,0,.3),inset 0 0 0 1px rgba(184,150,46,.15)}.search-field{display:flex;flex-direction:column;gap:2px;flex:1 1;min-width:0;padding:6px 12px;text-align:left}.search-field-label{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:hsla(37,39%,94%,.55)}.search-input,.search-select{background:transparent!important;border:none!important;outline:none!important;color:#f5f0e8!important;font-size:14px;font-weight:500;padding:0!important;width:100%;cursor:pointer;font-family:var(--font-sans)}.search-select option{background:#1b2a4a;color:#f5f0e8}.search-input::-webkit-calendar-picker-indicator{filter:invert(1) opacity(.5);cursor:pointer}.search-divider{width:1px;height:36px;background:rgba(184,150,46,.3);flex-shrink:0}.guests-btn{width:28px;height:28px;border-radius:50%;border:1.5px solid rgba(184,150,46,.6);background:transparent;color:#b8962e;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;font-weight:300}.guests-btn:hover{background:rgba(184,150,46,.2);border-color:#b8962e}.search-submit-btn{display:flex;align-items:center;gap:8px;background:#b8962e;color:#fff;border:none;border-radius:50px;padding:14px 28px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .2s,box-shadow .2s,transform .2s;font-family:var(--font-sans)}.search-submit-btn:hover{background:#d4af50;box-shadow:0 0 20px rgba(184,150,46,.4);transform:scale(1.02)}@media (max-width:768px){.search-bar-form{flex-direction:column;border-radius:20px;padding:20px;gap:16px;align-items:stretch}.search-field{padding:0}.search-divider{width:100%;height:1px}.search-submit-btn{justify-content:center;padding:16px}}@keyframes pageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-transition{animation:pageEnter .45s cubic-bezier(.22,1,.36,1) backwards}.route-progress{position:fixed;top:0;left:0;height:3px;z-index:10000;background:linear-gradient(90deg,#b8962e,#f0d070);box-shadow:0 0 10px rgba(184,150,46,.6);transition:width .3s ease,opacity .3s ease}.wa-float{position:fixed;right:20px;bottom:20px;z-index:900;display:flex;align-items:center;gap:10px;background:#25d366;color:#fff;border-radius:40px;padding:14px;box-shadow:0 6px 24px rgba(37,211,102,.4);transition:transform .25s ease,box-shadow .25s ease,padding .25s ease}.wa-float:hover{transform:translateY(-3px);box-shadow:0 10px 32px rgba(37,211,102,.5)}.wa-float .wa-label{max-width:0;overflow:hidden;white-space:nowrap;font-size:14px;font-weight:600;transition:max-width .35s ease}.wa-float:hover .wa-label{max-width:240px}.wa-float:before{content:"";position:absolute;inset:0;border-radius:40px;border:2px solid #25d366;animation:pulseRing 2.2s ease-out infinite;pointer-events:none}@media (max-width:768px){.wa-float{right:14px;bottom:14px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero-video{display:none}}