@font-face{font-family:Poppins;src:url(/assets/fonts/poppins-regular.woff2) format("woff2");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Poppins;src:url(/assets/fonts/poppins-bold.woff2) format("woff2");font-display:swap;font-style:normal;font-weight:700}@font-face{font-family:Fjalla One;src:url(/assets/fonts/fjalla-one.woff2) format("woff2");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Playball;src:url(/assets/fonts/playball.woff2) format("woff2");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:FontAwesome;src:url(/assets/fonts/fontawesome.woff2) format("woff2");font-display:block;font-style:normal;font-weight:400}:root{color:#111;background:#fff;font-family:Poppins,Arial,sans-serif;font-synthesis:none;line-height:1.55;text-rendering:optimizeLegibility;--black: #050505;--charcoal: #262626;--gray: #aaa9a8;--cream: #f7f5f1;--blue: #1877f2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;-webkit-font-smoothing:antialiased}body.menu-is-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit}p{margin:0 0 1.1rem}h1,h2,h3{margin-top:0}.fa{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:400;line-height:1}.page-width{width:min(1120px,calc(100% - 48px));margin-inline:auto}.site-header{align-items:center;background:#000;color:#fff;display:grid;gap:32px;grid-template-columns:180px 1fr auto;height:128px;padding:14px max(24px,calc((100vw - 1240px)/2));position:sticky;top:0;z-index:50}.brand{align-items:center;display:flex;height:100%;justify-content:center}.brand img{height:92px;object-fit:contain;width:150px}.desktop-nav{align-items:center;display:flex;gap:clamp(20px,2.1vw,36px);justify-content:center}.desktop-nav a{border-bottom:2px solid transparent;color:#fff;font-size:14px;padding:8px 0;text-decoration:none;white-space:nowrap}.desktop-nav a:hover,.desktop-nav a:focus-visible,.desktop-nav a.active{border-color:#fff}.button-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#000;border:2px solid #000;border-radius:0;color:#fff;cursor:pointer;display:inline-block;font-family:Fjalla One,Impact,sans-serif;font-size:17px;letter-spacing:.01em;min-width:180px;padding:14px 22px;text-align:center;text-decoration:none;transition:background .2s ease,color .2s ease}.site-header>.button-link{background:#fff;border-color:#fff;color:#000;min-width:220px}.button-link:hover,.button-link:focus-visible,.button-link--light,.site-header>.button-link:hover,.site-header>.button-link:focus-visible{background:#fff;color:#000}.button-link--light:hover,.button-link--light:focus-visible{background:transparent;color:#fff}.menu-toggle,.mobile-drawer,.menu-scrim{display:none}.home-hero{align-items:center;background-image:linear-gradient(#0000008c,#0000008c),url(/assets/images/aerial-resort.jpg);background-position:center 11%;background-size:cover;color:#fff;display:flex;justify-content:center;min-height:800px;padding:72px 24px;text-align:center}.hero-content{max-width:1010px}.hero-content h1,.internal-hero h1{font-family:Playball,Georgia,cursive;font-size:clamp(68px,8.8vw,130px);font-weight:400;line-height:.84;margin-bottom:42px;text-wrap:balance}.hero-content p{font-size:15px;line-height:1.65;margin:0 auto 34px;max-width:960px}.internal-hero{align-items:center;background-image:linear-gradient(#00000085,#00000085),url(/assets/images/aerial-resort.jpg);background-position:center 11%;background-size:cover;color:#fff;display:flex;justify-content:center;min-height:480px;padding:52px 0;text-align:left}.internal-hero h1{font-size:clamp(72px,9.2vw,130px);margin:0;max-width:900px}.internal-hero--with-copy{align-items:flex-start;min-height:690px}.internal-hero--with-copy h1{margin-bottom:26px}.internal-hero--with-copy p{font-size:16px;line-height:1.55;max-width:1120px}.overview-section{background:#cdcdcd}.section{padding:78px 0}.section--white{background:#fff;color:#101010}.section--cream{background:var(--cream);color:#101010}.section--gray{background:var(--gray);color:#111}.section--charcoal{background:var(--charcoal);color:#fff}.section--black{background:#000;color:#fff}.heading h2,.contact-cta h2{font-family:Fjalla One,Impact,sans-serif;font-size:clamp(34px,4vw,54px);font-weight:400;line-height:1.15;margin-bottom:24px;text-wrap:balance}.heading.center,.center{text-align:center}.narrow{margin-inline:auto;max-width:980px}.narrow p:last-child,.feature-card p:last-child,.text-card p:last-child,.detail-card p:last-child{margin-bottom:0}.card-grid,.detail-grid{display:grid;gap:20px;margin-top:34px}.card-grid--2,.detail-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.card-grid--3,.detail-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.text-card,.detail-card,.feature-card{background:#fff;color:#111;padding:30px 28px}.text-card h3,.detail-card h3,.membership-columns h3,.contact-methods h3{font-family:Fjalla One,Impact,sans-serif;font-size:25px;font-weight:400;line-height:1.2;margin-bottom:18px}.text-card p,.detail-card p{font-size:14px;line-height:1.65}.split-section>.page-width,.two-column{align-items:stretch;display:grid;gap:54px;grid-template-columns:repeat(2,minmax(0,1fr))}.split-section img,.two-column>img{height:100%;max-height:540px;min-height:360px;object-fit:cover;width:100%}.split-copy,.two-column>div{align-self:center}.icon-grid,.contact-methods,.membership-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:34px}.icon-grid>div,.membership-columns>div,.contact-methods>article{border-bottom:1px solid #777;border-right:1px solid #777;padding:34px 28px;text-align:center}.icon-grid>div:nth-child(3n),.membership-columns>div:last-child,.contact-methods>article:last-child{border-right:0}.icon-grid>div:nth-last-child(-n+3){border-bottom:0}.icon-grid .fa,.contact-methods .fa{font-size:40px;margin-bottom:16px}.feature-card{max-width:670px;padding:48px}.check-list{list-style:none;margin:20px 0 0;padding:0}.check-list.columns-2{column-gap:50px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.check-list li{align-items:flex-start;display:flex;gap:13px;margin-bottom:17px}.check-list .fa{flex:0 0 auto;font-size:20px;margin-top:2px}.detail-card .check-list{margin-top:0}.detail-card .check-list li{font-size:14px}.steps{display:grid;gap:22px;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:36px 0 0;padding:0}.steps li span{border:2px solid #fff;border-radius:50%;display:grid;font-family:Fjalla One;font-size:24px;height:54px;margin-bottom:18px;place-items:center;width:54px}.faq-list{background:#fff;border:1px solid #ddd;color:#111;margin-top:28px}.faq-list details+details{border-top:1px solid #d5d5d5}.faq-list summary{align-items:center;cursor:pointer;display:flex;font-size:15px;font-weight:700;justify-content:space-between;list-style:none;min-height:52px;padding:14px 20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:20px;font-weight:400;transition:transform .2s ease}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{padding:0 20px 18px}.cta-wrap{padding:46px 0}.contact-cta{background:#000;color:#fff;padding:56px 40px;text-align:center}.contact-cta p{margin-inline:auto;max-width:850px}.contact-cta a:not(.button-link){color:#fff}.contact-form{align-self:start;background:#fff;padding:38px}.contact-form label{display:block;font-weight:700;margin-bottom:18px}.contact-form input,.contact-form textarea{background:#fff;border:1px solid #777;border-radius:0;color:#111;display:block;font:inherit;margin-top:7px;padding:12px 14px;width:100%}.contact-form textarea{resize:vertical}.form-note,.form-status{font-size:12px;margin:12px 0 0}.site-footer{background:#000;color:#fff}.footer-main{display:grid;gap:42px;grid-template-columns:1.15fr 1.55fr .8fr .9fr;padding-block:60px}.site-footer h3{font-size:17px;margin-bottom:16px}.site-footer p,.site-footer a{font-size:13px}.footer-brand{text-align:center}.footer-brand img{height:145px;margin:0 auto 18px;object-fit:contain;width:190px}.footer-nav{display:flex;flex-direction:column;gap:10px}.site-footer a{color:#fff;text-decoration:none}.site-footer a:hover,.site-footer a:focus-visible{text-decoration:underline}.social-button{align-items:center;background:var(--blue);border-radius:50%;color:#fff!important;display:inline-flex;font-size:24px!important;height:42px;justify-content:center;text-decoration:none!important;width:42px}.copyright{border-top:1px solid #8a8a8a;font-size:13px;padding:18px 20px;text-align:center}@media(max-width:1100px){.site-header{gap:18px;grid-template-columns:140px 1fr auto}.desktop-nav{gap:16px}.desktop-nav a{font-size:12px}.site-header>.button-link{min-width:175px;padding-inline:15px}.footer-main{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:850px){.page-width{width:min(100% - 34px,680px)}.site-header{grid-template-columns:1fr auto;height:112px;padding:10px 20px}.brand{justify-content:flex-start}.brand img{height:86px;width:130px}.desktop-nav,.site-header>.button-link{display:none}.menu-toggle{align-items:center;background:transparent;border:0;color:#fff;cursor:pointer;display:flex;font-size:34px;height:56px;justify-content:center;width:56px}.menu-scrim{background:#000000a6;display:block;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none;position:fixed;transition:opacity .2s ease;z-index:59}.menu-scrim.is-open{opacity:1;pointer-events:auto}.mobile-drawer{background:#000;color:#fff;display:block;height:100dvh;max-width:480px;overflow-y:auto;position:fixed;right:0;top:0;transform:translate(102%);transition:transform .25s ease;width:80vw;z-index:60}.mobile-drawer.is-open{transform:translate(0)}.drawer-top{align-items:center;border-bottom:1px solid #5f5f5f;display:flex;justify-content:space-between;min-height:124px;padding:18px 28px}.drawer-top img{height:82px;object-fit:contain;width:125px}.drawer-top button{background:transparent;border:0;color:#fff;cursor:pointer;font-size:38px;padding:10px}.mobile-drawer nav{display:flex;flex-direction:column;gap:26px;padding:42px 58px}.mobile-drawer nav a{color:#fff;font-size:clamp(18px,4.5vw,27px);text-decoration:none}.drawer-contact{padding:20px 58px 60px}.drawer-contact h2{font-size:26px}.drawer-contact a{color:#fff;overflow-wrap:anywhere}.home-hero{min-height:650px}.hero-content h1{font-size:clamp(54px,15vw,92px)}.internal-hero{min-height:350px}.internal-hero h1{font-size:clamp(52px,13vw,82px)}.card-grid--3,.card-grid--4,.detail-grid--3,.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.split-section>.page-width,.two-column,.text-only{grid-template-columns:1fr}.two-column>img{order:-1}.split-section img,.two-column>img{max-height:470px}}@media(max-width:560px){body{font-size:14px}.section{padding:54px 0}.home-hero{background-position:54% center;min-height:620px;padding:54px 20px}.hero-content h1{font-size:clamp(50px,16.5vw,72px);margin-bottom:30px}.hero-content p{font-size:13px}.heading h2,.contact-cta h2{font-size:34px}.card-grid--2,.card-grid--3,.card-grid--4,.detail-grid--2,.detail-grid--3,.steps,.icon-grid,.membership-columns,.contact-methods,.check-list.columns-2,.footer-main{grid-template-columns:1fr}.icon-grid>div,.membership-columns>div,.contact-methods>article{border-bottom:1px solid #777;border-right:0}.icon-grid>div:nth-last-child(-n+3){border-bottom:1px solid #777}.icon-grid>div:last-child,.membership-columns>div:last-child,.contact-methods>article:last-child{border-bottom:0}.text-card,.detail-card,.feature-card,.contact-form{padding:28px 24px}.contact-cta{padding:42px 24px}.footer-main{text-align:center}.footer-nav{align-items:center}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}


/* Contact page: preserve the original resort form composition while using our own PHP endpoint. */
.contact-feature {
  background-image: linear-gradient(rgba(0, 0, 0, .48), rgba(0, 0, 0, .48)), url("/assets/images/resort-sign.jpg");
  background-position: center 48%;
  background-size: cover;
  padding: 98px 0;
}
.contact-feature > .page-width { width: min(1380px, calc(100% - 96px)); }
.contact-feature-grid { align-items: stretch; display: grid; gap: 54px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.contact-feature-copy,
.contact-feature .contact-form { background: #000; color: #fff; min-height: 412px; padding: 46px 48px 34px; }
.contact-feature-copy .heading h2,
.contact-feature .contact-form > h2 { color: #fff; font-family: "Fjalla One", Impact, sans-serif; font-size: clamp(42px, 3.6vw, 56px); font-weight: 400; line-height: 1.08; margin: 0 0 30px; }
.contact-feature-copy p { font-size: 16px; line-height: 1.38; margin: 0; max-width: 590px; }
.contact-feature .contact-form { align-self: stretch; }
.contact-form-grid { display: grid; gap: 14px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.contact-feature .contact-form label { color: #fff; display: block; font-size: 16px; font-weight: 400; line-height: 1.3; margin: 0; }
.required-mark { color: #ff2d2d; margin-left: 2px; }
.contact-feature .contact-form input,
.contact-feature .contact-form textarea { background: #111; border: 2px solid #e7e7e7; color: #fff; margin-top: 6px; min-height: 35px; padding: 6px 9px; }
.contact-feature .contact-form textarea { height: 70px; min-height: 70px; }
.contact-feature .message-field { margin-top: 17px !important; }
.contact-form-actions { align-items: center; display: flex; gap: 18px; justify-content: flex-end; margin-top: 20px; }
.contact-feature .contact-form .button-link { background: #fff; border-color: #fff; color: #000; font-size: 14px; min-width: 104px; padding: 9px 18px; }
.contact-feature .contact-form .button-link:disabled { cursor: wait; opacity: .65; }
.contact-feature .form-status { color: #fff; flex: 1 1 auto; font-size: 13px; line-height: 1.35; margin: 0; }
.contact-feature .form-status.is-success { color: #b9f6c4; }
.contact-feature .form-status.is-error { color: #ffb1b1; }
.contact-hp { height: 1px !important; left: -10000px !important; overflow: hidden !important; position: absolute !important; top: auto !important; width: 1px !important; }
@media (max-width: 900px) {
  .contact-feature { padding: 64px 0; }
  .contact-feature > .page-width { width: min(1120px, calc(100% - 48px)); }
  .contact-feature-grid { gap: 28px; grid-template-columns: 1fr; }
  .contact-feature-copy,
  .contact-feature .contact-form { min-height: 0; }
}
@media (max-width: 560px) {
  .contact-feature-copy,
  .contact-feature .contact-form { padding: 32px 24px; }
  .contact-form-grid { grid-template-columns: 1fr; }
  .contact-form-actions { align-items: stretch; flex-direction: column; }
  .contact-feature .contact-form .button-link { width: 100%; }
}
