.hero{background:radial-gradient(ellipse at 15% 15%,#28596b66,transparent 60%),linear-gradient(120deg,#102a3a,#16465c)}.yellow{background:linear-gradient(110deg,#f0d7a5,#d6b779);box-shadow:0 0 24px #e6c78f20,0 8px 24px #00000016}.yellow:hover{box-shadow:0 0 36px #e6c78f35,0 12px 30px #0000001c}.rating{background:linear-gradient(130deg,#73bec215,#d8c29810);border-color:#cbdcc64a;box-shadow:inset 0 1px 0 #ffffff14,0 0 32px #81d4db0a}.feature{background:linear-gradient(140deg,#fffefa,#f0f6f4);border-color:#ceded8}.feature:hover{border-color:#73a7a5;box-shadow:0 0 25px #62aaa815,0 12px 25px #152c390a}.gallery-section{background:linear-gradient(135deg,#eaf3f0,#eef3f5)}.booking-section{background:radial-gradient(ellipse at 80% 0%,#e2f0ed,transparent 60%),#f4f2ec}.booking-card{border-color:#c2d5cc;box-shadow:0 0 45px #70b4aa12,0 18px 48px #182d3a09}.range-calendar{background:radial-gradient(ellipse at 100% 0%,#e7f4f166,transparent 60%),linear-gradient(140deg,#fffefa,#f8f6ef);box-shadow:inset 0 1px 0 #ffffff,0 8px 30px #6faea60a}.calendar-day.in-range,.calendar-day.range-preview{background:#dceee7}.calendar-day.is-selected{background:linear-gradient(135deg,#164d5b,#183345);color:#f7dfb6;box-shadow:0 0 16px #21888318}.booking-summary{background:linear-gradient(105deg,#e5f0ea,#f0eddf);border:1px solid #d5e2d7}.contacts{background:radial-gradient(ellipse at 85% 40%,#25627966,transparent 60%),linear-gradient(110deg,#122f40,#1c4e60)}.contact-details{background:linear-gradient(130deg,#94d8d910,#cfb7850c);border-color:#b9dace42;box-shadow:inset 0 1px 0 #ffffff12,0 0 55px #4baba811,0 20px 50px #00000016}.contact-details .button{background:linear-gradient(105deg,#f0d7a5,#d6b779);box-shadow:0 0 24px #e6c78f20}
.hero-photo img{animation:none}.button,.feature,.review{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease}.button:hover,.feature:hover,.review:hover{transform:translateY(-2px)}.button:before{display:none}.gallery img{transition:transform .4s ease,filter .4s ease}.gallery button:hover img{transform:scale(1.02)}@media(prefers-reduced-motion:no-preference){.reveal-pending{transform:translateY(10px)}.reveal-ready{transition:opacity .45s ease,transform .45s ease;transition-delay:0ms}.reveal-visible{transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.reveal-pending{transform:none;opacity:1}}
.premium-footer{display:block;position:relative;padding:65px 5% 0;background:radial-gradient(ellipse at 5% 0%,#22526544,transparent 55%),#0d2533;color:#c6d2d6;border-top:1px solid #b8b18c45;font-size:14px}.footer-main{display:grid;grid-template-columns:1.35fr .85fr 1.1fr 1.1fr;gap:45px;padding-bottom:55px}.premium-footer .brand{color:#f2e8d5;font-size:52px;font-weight:500;letter-spacing:-2px;display:inline-block}.premium-footer .brand span{color:#bea779;font-size:10px;letter-spacing:2px;margin-top:16px;line-height:1.7}.footer-brand-block p,.footer-contact p{font-size:14px;line-height:1.85;margin:22px 0;color:#aebfc5}.premium-footer h3{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:1.8px;color:#cdb788;margin:9px 0 26px}.footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.footer-nav h3{margin-bottom:12px}.premium-footer a{transition:color .2s ease,border-color .2s ease,background .2s ease}.premium-footer a:hover{color:#f4deb2;text-decoration:none}.footer-nav a{padding:2px 0}.footer-location address{font-style:normal;font-size:14px;line-height:1.9;margin-bottom:22px}.footer-location>a{display:inline-block;font-size:14px;color:#d8c398;padding:5px 0;border-bottom:1px solid #cfb78540}.footer-contact .footer-phone{font-size:clamp(16px,1.6vw,23px);font-weight:500;letter-spacing:-.5px;white-space:nowrap;color:#f0e3ca}.footer-book{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:13px 17px;border-radius:6px;background:linear-gradient(120deg,#e4d0a51a,#6aafb10b);border:1px solid #cfb78555;color:#e4d0a5;box-shadow:inset 0 1px 0 #ffffff0b,0 0 25px #cfb78507}.footer-book:hover{background:#cfb78515;border-color:#cfb78599}.footer-social{display:inline-flex;gap:28px;align-items:center;border:1px solid #aebfc536;padding:10px 15px;border-radius:6px;font-size:13px}.footer-bottom{border-top:1px solid #aebfc522;padding:25px 0;display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:12px;color:#9aafb8}.footer-top{display:flex;align-items:center;gap:16px;color:#d8c398}.footer-top span{border:1px solid #cfb78540;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:16px}@media(max-width:1050px){.footer-main{grid-template-columns:1fr 1fr;gap:40px 65px}.footer-contact .footer-phone{font-size:22px}}@media(max-width:700px){.premium-footer{padding:45px 6% 0}.footer-main{grid-template-columns:1fr 1fr;gap:35px 20px;padding-bottom:38px}.footer-brand-block{grid-column:1/-1}.premium-footer .brand{width:auto;font-size:46px}.footer-contact{grid-column:1/-1;padding:25px 22px;border:1px solid #aebfc52b;border-radius:8px;background:#ffffff03}.premium-footer h3{margin-top:0;margin-bottom:19px}.footer-nav h3{margin-bottom:5px}.footer-main a,.footer-location address{font-size:14px}.footer-contact .footer-phone{font-size:24px}.footer-bottom{flex-wrap:wrap;gap:12px}.footer-bottom>span:nth-child(2){display:none}.footer-brand-block p{margin:20px 0}.footer-nav{gap:10px}.footer-location address{line-height:1.8}}
.hero .eyebrow{position:relative;overflow:hidden;isolation:isolate}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .hero .eyebrow{transition:transform .35s cubic-bezier(.22,.61,.36,1),border-color .35s ease,box-shadow .35s ease,background-color .35s ease,color .35s ease}
  .hero .eyebrow:after{content:'';position:absolute;inset:-20% -80%;z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent 38%,#ead2a51f 50%,transparent 62%);transform:translateX(-65%);opacity:0;transition:transform .7s ease,opacity .35s ease}
  .hero .eyebrow:hover{transform:translateY(-2px);border-color:#dfc49099;background-color:#e5c7940a;color:#f1dfbb;box-shadow:inset 0 1px 0 #ffffff10,0 0 24px #e5c79419}
  .hero .eyebrow:hover:after{transform:translateX(65%);opacity:1}
}
.hero-actions .text-link{position:relative;display:inline-flex;align-items:center;gap:6px;border-bottom-color:transparent;isolation:isolate}
.hero-actions .text-link:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,#d7bb86,#f4dfb6,#d7bb86);transform-origin:left;transform:scaleX(.72);opacity:.6;pointer-events:none}
.hero-actions .text-link:before{content:'';position:absolute;inset:-10px -14px;border-radius:12px;z-index:-1;background:radial-gradient(ellipse,#e7c79224,transparent 72%);opacity:0;pointer-events:none}
.hero-actions .text-link:focus-visible{color:#fff0d2;text-shadow:0 0 16px #f2d6a066}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .hero-actions .text-link{transition:color .35s ease,text-shadow .35s ease}
  .hero-actions .text-link:before,.hero-actions .text-link:after{transition:opacity .4s ease,transform .4s cubic-bezier(.22,.61,.36,1)}
  .hero-actions .text-link span{display:inline-block;transition:transform .35s cubic-bezier(.22,.61,.36,1)}
  .hero-actions .text-link:hover{color:#fff0d2;text-shadow:0 0 16px #f2d6a066}
  .hero-actions .text-link:hover:before{opacity:1}
  .hero-actions .text-link:hover:after{transform:scaleX(1);opacity:1}
  .hero-actions .text-link:hover span{transform:translateY(3px)}
}
