/* ALTАIR — photo hero; assets and fixed header are independent. */
:root{--altair-page:#FDF6EE;--altair-ink:#280D00;--altair-tangerine:#FF6B00}
html{background:var(--altair-page)}
body{background:var(--altair-page);color:var(--altair-ink);margin:0}
.resort-main{background:var(--altair-page);overflow:clip}
.hero{position:relative;isolation:isolate;overflow:hidden;width:100%;height:clamp(580px,42.85vw,840px);background:var(--altair-page)}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block;z-index:0}
/* Motion replaces the still only after a real decoded frame is playing. */
.hero-video{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;
 object-fit:cover;object-position:center center;pointer-events:none;opacity:0;
 transition:opacity .65s ease;will-change:opacity}
.hero-video.is-playing{opacity:1}
.hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;
 background:linear-gradient(90deg,rgba(253,246,238,.91) 0%,rgba(253,246,238,.82) 13%,rgba(253,246,238,.46) 28%,rgba(253,246,238,.04) 53%,transparent 66%);
 -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 66%,transparent 92%);
 mask-image:linear-gradient(to bottom,#000 0%,#000 66%,transparent 92%)}
.hero::after{content:"";position:absolute;z-index:5;bottom:0;left:0;right:0;height:44px;pointer-events:none;
 background:linear-gradient(to top,var(--altair-page),rgba(253,246,238,0))}
.hero-content{position:relative;z-index:3;width:min(540px,54vw);margin-left:clamp(40px,6.6vw,126px);padding-top:clamp(82px,8vw,155px)}
.hero-eyebrow{margin:0 0 18px;color:#7B3D1D;font:700 12px/1.5 Arial,Helvetica,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.hero-eyebrow-mark{color:var(--altair-tangerine);font-size:14px;margin-right:8px}
.hero h1{font:normal clamp(64px,6.8vw,118px)/.87 Georgia,"Times New Roman",serif;letter-spacing:-.065em;color:var(--altair-ink);margin:0}
.hero h1 em{font-style:normal;color:var(--altair-tangerine)}
.hero-subtitle{max-width:365px;font:400 clamp(15px,1.4vw,20px)/1.52 Arial,Helvetica,sans-serif;letter-spacing:-.012em;color:#51311E;margin:24px 0 22px}
.hero-action{display:inline-flex;align-items:center;gap:15px;border-radius:999px;padding:15px 21px;background:var(--altair-tangerine);color:white;
 font:700 14px/1 Arial,Helvetica,sans-serif;text-decoration:none;box-shadow:0 8px 24px rgba(96,35,0,.12);transition:background .2s,transform .2s}
.hero-action:hover{background:#FF8400;transform:translateY(-2px)}
.hero-action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hero-action:focus-visible{outline:3px solid var(--altair-ink);outline-offset:4px}
.hero-followthrough{height:clamp(220px,36vh,390px);background:var(--altair-page)}
/* External anchor: no rotational fulcrum or hard cut crosses the viewport. */
.palm-layer{position:absolute;z-index:6;width:clamp(225px,26vw,510px);pointer-events:none;
 --palm-x:0px;--palm-y:0px;transform:translate3d(var(--palm-x),var(--palm-y),0);will-change:transform}
.palm-left{left:calc(-1 * clamp(57px,6.8vw,140px));top:calc(-1 * clamp(66px,6vw,134px))}
.palm-right{right:calc(-1 * clamp(57px,6.8vw,140px));top:calc(-1 * clamp(66px,6vw,134px))}
.palm-frond{display:block;width:100%;height:auto;object-fit:contain;opacity:.92;filter:blur(.42px);
 -webkit-user-select:none;user-select:none;pointer-events:none;will-change:transform}
.palm-left .palm-frond{transform-origin:-29% -22%;animation:altair-palm-left 9s ease-in-out infinite alternate}
.palm-right .palm-frond{transform-origin:129% -22%;animation:altair-palm-right 10.3s ease-in-out infinite alternate}
@keyframes altair-palm-left{
 0%{transform:rotate(-2.1deg)}
 50%{transform:rotate(1.65deg)}
 100%{transform:rotate(-.6deg)}
}
@keyframes altair-palm-right{
 0%{transform:rotate(2.05deg)}
 50%{transform:rotate(-1.7deg)}
 100%{transform:rotate(.55deg)}
}
@media(max-width:1180px){
 .hero-content{width:min(470px,66vw);padding-top:clamp(84px,8vw,125px)}
 .hero h1{font-size:clamp(61px,8vw,93px)}
 .hero-shade{background:linear-gradient(90deg,rgba(253,246,238,.94) 0%,rgba(253,246,238,.78) 25%,rgba(253,246,238,.19) 57%,transparent 73%)}
}
@media(max-width:767px){
 .hero{height:clamp(620px,calc(100svh - var(--altair-header-height)),850px)}
 .hero-photo{object-position:50% center}
 .hero-shade{background:linear-gradient(to bottom,rgba(253,246,238,.93) 0%,rgba(253,246,238,.82) 22%,rgba(253,246,238,.55) 46%,rgba(253,246,238,0) 70%);
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 68%,transparent 85%);
  mask-image:linear-gradient(to bottom,#000 0%,#000 68%,transparent 85%)}
 .hero-content{width:min(calc(100% - 48px),460px);margin-left:24px;padding-top:clamp(100px,15vh,144px)}
 .hero h1{font-size:clamp(63px,12.2vw,90px)}
 .hero-eyebrow{font-size:10px;letter-spacing:.115em;margin-bottom:14px}
 .hero-subtitle{font-size:16px;max-width:320px;margin:20px 0 20px}
 .palm-layer{width:clamp(187px,47vw,290px)}
 .palm-left{left:-57px;top:-48px}
 .palm-right{right:-62px;top:-48px}
 .palm-left .palm-frond{transform-origin:-45% -32%}
 .palm-right .palm-frond{transform-origin:145% -32%}
 .hero-followthrough{height:240px}
}
@media(max-width:390px){
 .hero-content{margin-left:20px;padding-top:104px;width:calc(100% - 40px)}
 .hero h1{font-size:clamp(60px,13.5vw,70px)}
 .hero-eyebrow{font-size:9px}
 .hero-subtitle{font-size:14px;max-width:260px}
 .hero-action{font-size:12px;padding:14px 17px}
}
@media(prefers-reduced-motion:reduce){
 .hero-video{display:none!important;transition:none!important}
 .palm-layer{transform:none!important;will-change:auto}
 .palm-frond{animation:none!important;will-change:auto}
 .hero-action{transition:none}
}
