:root{--pine: #173c35;--pine-dark: #0e2b27;--cream: #f6f1e7;--paper: #fcfaf5;--sun: #f4bd4a;--ink: #1d2c29;--muted: #687872;--line: rgba(23, 60, 53, .17)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:DM Sans,sans-serif}a{color:inherit;text-decoration:none}.section-pad{padding:120px max(6vw,32px)}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:12px;font-weight:800;color:#8b7137;margin:0 0 25px}.eyebrow.light{color:#f4d995}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Playfair Display,serif;font-weight:500;letter-spacing:-.045em}h2{font-size:clamp(48px,6.4vw,92px);line-height:.96;margin-bottom:30px}h2 em,h1 em{font-weight:400;color:#b9892d}p{line-height:1.75}.nav-wrap{height:84px;padding:0 max(4vw,25px);display:flex;align-items:center;justify-content:space-between;background:#fcfaf5f0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:fixed;z-index:50;left:0;right:0;top:0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px}.brand-logo{width:48px;height:48px;border-radius:50%;object-fit:contain}.brand>span:last-child{display:flex;flex-direction:column;line-height:1}.brand b{font-size:21px;letter-spacing:.18em}.brand small{font-size:9px;text-transform:uppercase;letter-spacing:.1em;margin-top:5px;color:var(--muted)}nav{display:flex;align-items:center;gap:34px;font-size:13px;font-weight:700}nav a:hover{color:#9d7425}.nav-cta{background:var(--pine);color:#fff;padding:14px 20px;border-radius:2px}.menu-button{display:none;background:none;border:0;width:32px;cursor:pointer}.menu-button span{display:block;height:2px;background:var(--pine);margin:7px 0}.button{display:inline-flex;justify-content:space-between;align-items:center;min-width:245px;padding:18px 22px;text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:900;transition:.2s}.button:hover{transform:translateY(-2px)}.button-sun{background:var(--sun);color:#172f29}.button span{font-size:18px}.text-link{font-size:13px;font-weight:800;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:6px}.real-photo{display:block;width:100%;height:100%;object-fit:cover}.hero-scroll-container{height:250vh;position:relative}.hero-crossfade{position:sticky;top:0;height:100vh;width:100%;background:var(--pine);color:#fff;display:flex;align-items:flex-end;padding:170px max(6vw,32px) 90px;overflow:hidden;isolation:isolate}.hero-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.hero-layer .real-photo{object-position:center 55%}.night-layer{z-index:2;will-change:opacity;transition:opacity .05s linear}.hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#061b17a6,#061b174d 52%,#061b1708),linear-gradient(0deg,rgba(6,27,23,.22),transparent 50%);z-index:3;pointer-events:none}.hero-content{position:relative;z-index:4;max-width:910px;will-change:opacity,transform;transition:opacity .05s linear,transform .05s linear}.hero-crossfade h1{font-size:clamp(67px,10.5vw,150px);line-height:.78;margin:0 0 38px}.hero-crossfade h1 em{color:#f6d47f}.hero-lead{max-width:700px;font-size:20px;line-height:1.6;color:#e8eeea}.hero-actions{display:flex;align-items:center;gap:35px;margin-top:40px}.time-pill{position:absolute;top:108px;right:max(5vw,30px);z-index:5;display:flex;gap:0;border:1px solid rgba(255,255,255,.35);border-radius:100px;overflow:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.time-pill span{font-size:10px;font-weight:900;letter-spacing:.16em;padding:10px 18px;color:#ffffff73;transition:color .4s,background .4s}.time-pill span.active{color:#fff;background:#ffffff26}.scroll-hint{position:absolute;left:50%;bottom:35px;transform:translate(-50%);z-index:5;color:#fff;font-size:9px;letter-spacing:.2em;font-weight:900;text-shadow:0 2px 8px rgba(0,0,0,.5);display:flex;flex-direction:column;align-items:center;gap:8px;animation:scrollHintPulse 2s ease-in-out infinite}.scroll-hint-arrow{font-size:18px;animation:scrollHintBounce 2s ease-in-out infinite}@keyframes scrollHintPulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes scrollHintBounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.price-card{position:absolute;right:max(5vw,30px);bottom:55px;z-index:5;background:var(--sun);color:var(--pine-dark);padding:24px 30px;min-width:250px;box-shadow:0 16px 50px #0003}.price-card span,.price-card small{display:block;text-transform:uppercase;letter-spacing:.13em;font-size:9px;font-weight:900}.price-card strong{font-family:Playfair Display,serif;font-size:45px;font-weight:500;display:block;margin:2px 0}.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:10vw;align-items:end}.intro-copy>p{font-size:19px;color:var(--muted);max-width:620px}.quick-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;border-top:1px solid var(--line);margin-top:40px;padding-top:28px}.quick-stats span{font-size:11px;text-transform:uppercase;letter-spacing:.1em}.quick-stats b{font-family:Playfair Display,serif;display:block;font-size:31px;font-weight:500;color:var(--pine);letter-spacing:0}.package-section{background:var(--cream)}.section-head{max-width:880px;margin-bottom:75px}.section-head>p:last-child{color:var(--muted);font-size:18px}.feature{display:grid;grid-template-columns:1.05fr .95fr;min-height:760px;background:#fff;margin-bottom:35px}.feature-site{grid-template-columns:.9fr 1.1fr}.feature-content{padding:75px 6vw;display:flex;justify-content:center;flex-direction:column}.feature-index{font-size:10px;letter-spacing:.2em;font-weight:900;color:#9b742d;margin-bottom:28px}.feature h3,.cart-card h3{font-family:Playfair Display,serif;font-size:clamp(45px,5vw,70px);font-weight:500;line-height:.94;margin:0 0 28px}.feature-content>p{color:var(--muted);font-size:16px}.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 25px;margin-top:18px}.spec-grid span{font-size:13px;border-bottom:1px solid var(--line);padding-bottom:12px}.spec-grid i{font-style:normal;color:#b8892f;margin-right:9px}.fine-print{font-size:10px!important;line-height:1.5!important;margin-top:25px}.editable-list{padding:0;margin:22px 0 0;list-style:none}.editable-list li{border-top:1px solid var(--line);padding:21px 0}.editable-list b,.editable-list span{display:block}.editable-list b{font-family:Playfair Display,serif;font-size:21px;margin-bottom:7px}.editable-list span{font-size:13px;line-height:1.6;color:var(--muted)}.feature-image{position:relative;overflow:hidden;min-height:650px}.collage-two{display:grid;grid-template-columns:1fr 1fr}.collage-two .real-photo:first-child{object-position:center}.collage-two .real-photo:last-child{object-position:center}.site-main .real-photo{object-position:center}.gazebo-feature{background:var(--pine-dark);color:#fff;margin-bottom:35px;display:grid;grid-template-columns:.85fr 1.15fr;min-height:760px}.gazebo-copy{padding:75px 5vw;display:flex;flex-direction:column;justify-content:center}.gazebo-copy h3{font-family:Playfair Display,serif;font-size:clamp(45px,5vw,70px);font-weight:500;line-height:.96;margin:0 0 28px}.gazebo-copy h3 em{color:#f1ca72;font-weight:400}.gazebo-copy>p{color:#bfd0ca}.gazebo-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.gazebo-pills span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;border:1px solid rgba(255,255,255,.22);padding:10px 12px}.gazebo-images{display:grid;grid-template-columns:1fr 1fr;min-height:760px;overflow:hidden}.gazebo-images .real-photo{object-position:center}.cart-card{display:grid;grid-template-columns:1.2fr .8fr;background:var(--pine);color:#fff}.cart-crop{min-height:650px;overflow:hidden}.cart-crop .real-photo{transform:scale(1.08)}.cart-content{padding:70px 5vw;display:flex;flex-direction:column;justify-content:space-between}.cart-content p{color:#c3d1cc}.cart-note{font-size:12px;border-top:1px solid rgba(255,255,255,.2);padding-top:25px}.resort{background:var(--pine-dark);color:#fff;display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw}.resort-with-photos{align-items:start}.resort-heading{position:sticky;top:140px;align-self:start}.resort-heading>p:last-of-type{color:#b8cbc4;font-size:17px;max-width:530px}.official-link{display:inline-block;margin-top:22px;border-bottom:1px solid #f1ca72;padding-bottom:6px;color:#f1ca72;font-size:12px;font-weight:800}.resort-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.resort-photo-grid article{background:#173c35;overflow:hidden}.resort-photo-grid .real-photo{height:245px}.resort-photo-grid article>div{padding:25px}.resort-photo-grid h3{font-family:Playfair Display,serif;font-size:25px;font-weight:500;margin:0 0 9px}.resort-photo-grid p{color:#b8cbc4;font-size:12px;margin:0}.resort-facts{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.14);margin-top:35px;padding-top:40px}.resort-facts span{text-align:center;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.resort-facts span+span{border-left:1px solid rgba(255,255,255,.15)}.resort-facts b{font-family:Playfair Display,serif;font-size:32px;font-weight:500;display:block;text-transform:none;letter-spacing:0;color:#f3ce77}.photo-credit{grid-column:1 / -1;text-align:right;color:#829b92;font-size:9px;margin:12px 0 0}.day-section{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.day-photo{height:730px;overflow:hidden}.day-photo .real-photo{object-position:center}.day-content ol{list-style:none;padding:0;margin:0}.day-content li{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:25px 0;border-top:1px solid var(--line)}.day-content li>span{font-size:11px;color:#9b742d;letter-spacing:.1em}.day-content b{font-family:Playfair Display,serif;font-size:25px;font-weight:500}.day-content p{margin:7px 0 0;color:var(--muted);font-size:13px}.gallery{background:#e9e2d3}.row-head{display:flex;justify-content:space-between;align-items:end;max-width:none}.row-head>p{max-width:400px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-wide{grid-column:span 2}.photo-gallery button{position:relative;border:0;padding:0;background:#173c35;cursor:zoom-in;overflow:hidden;min-height:390px;text-align:left;color:#fff}.photo-gallery button .real-photo{position:absolute;top:0;right:0;bottom:0;left:0;transition:transform .5s,filter .5s}.photo-gallery button:hover .real-photo{transform:scale(1.035);filter:brightness(.8)}.photo-gallery button>span{position:absolute;left:0;right:0;bottom:0;padding:48px 22px 20px;background:linear-gradient(transparent,#051714db);display:flex;justify-content:space-between;align-items:end;gap:18px}.photo-gallery button b{font-family:Playfair Display,serif;font-size:23px;font-weight:500}.photo-gallery button small{text-align:right;opacity:.75}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#04110ff5;z-index:100;display:flex;align-items:center;justify-content:center;padding:70px 9vw}.lightbox-inner{height:100%;max-width:1100px;display:flex;flex-direction:column;align-items:center}.lightbox-inner .real-photo{object-fit:contain;min-height:0}.lightbox-inner p{width:100%;display:flex;justify-content:space-between;margin:15px 0 0;color:#fff}.lightbox-inner p span{font-size:11px;letter-spacing:.12em}.lightbox-close,.lightbox-arrow{position:absolute;border:0;background:none;color:#fff;cursor:pointer}.lightbox-close{right:25px;top:18px;font-size:40px}.lightbox-arrow{top:50%;font-size:60px;transform:translateY(-50%);padding:20px}.lightbox-arrow.prev{left:15px}.lightbox-arrow.next{right:15px}.included{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.included-copy{max-width:520px;color:var(--muted);font-size:17px}.price-breakdown>div{display:flex;justify-content:space-between;padding:22px 0;border-top:1px solid var(--line);font-size:13px}.price-breakdown>div b{color:var(--pine)}.price-breakdown .total{border-top:2px solid var(--pine);align-items:end;padding-top:35px}.price-breakdown .total span{font-family:Playfair Display,serif;font-size:25px}.price-breakdown .total b{font-family:Playfair Display,serif;font-weight:500;font-size:49px}.price-breakdown small{display:block;color:var(--muted);line-height:1.6;margin-top:20px}.contact{background:var(--pine);color:#fff;display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:center}.contact>div:first-child>p:last-child{max-width:560px;color:#bfd0ca;font-size:18px}.contact-card{background:#fff;color:var(--ink);padding:50px}.contact-card>p{font-size:10px;letter-spacing:.2em;font-weight:900;color:#9b742d}.contact-card h3{font-family:Playfair Display,serif;font-size:40px;font-weight:500}.contact-card .button,.outline-button{width:100%;margin-top:12px}.outline-button{display:block;border:1px solid var(--line);text-align:center;padding:18px;font-size:12px;font-weight:800}.contact-card small{display:block;margin-top:22px;line-height:1.5;color:var(--muted)}footer{background:#071e1b;color:#b2c2bc;padding:45px max(5vw,30px);display:flex;align-items:center;justify-content:space-between;gap:40px;font-size:10px}.footer-brand{color:#fff}footer p{margin:0;text-align:center}footer>a:last-child{text-transform:uppercase;letter-spacing:.13em;color:#fff}@media(max-width:900px){.section-pad{padding:90px 24px}.menu-button{display:block}nav{display:none;position:absolute;top:83px;left:0;right:0;background:var(--paper);padding:25px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 20px 35px #0000001f}nav.open{display:flex}nav a{padding:15px}.nav-cta{text-align:center;margin-top:8px}.hero-crossfade{padding:150px 24px 70px}.hero-crossfade h1{font-size:65px}.hero-lead{font-size:17px;max-width:510px}.price-card{position:relative;right:auto;bottom:auto;z-index:5;margin-left:auto;min-width:210px;padding:18px 22px}.hero-crossfade{display:block}.hero-content{margin-top:160px}.intro,.feature,.feature-site,.cart-card,.resort,.day-section,.included,.contact{grid-template-columns:1fr}.feature-image{min-height:540px}.feature-site .feature-content{order:2}.feature-site .feature-image{order:1}.resort-heading{position:static}.resort-photo-grid{margin-top:20px}.gazebo-feature{grid-template-columns:1fr}.gazebo-images{min-height:560px}.cart-crop{min-height:520px}.day-photo{height:560px}.row-head{display:block}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-wide{grid-column:span 2}.photo-gallery button{min-height:360px}.contact-card{padding:35px}footer{flex-direction:column;text-align:center}.quick-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){h2{font-size:50px}.nav-wrap{height:72px}.brand-logo{width:41px;height:41px}.brand small{display:none}nav{top:71px}.hero-scroll-container{height:220vh}.hero-crossfade{min-height:100vh;height:100vh;overflow:visible;padding-bottom:140px}.hero-layer .real-photo{object-position:52% center}.hero-crossfade .hero-content{margin-top:80px}.hero-crossfade h1{font-size:54px;line-height:.84}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.price-card{position:absolute;bottom:20px;right:24px;left:24px;margin:0;min-width:auto;padding:16px 20px}.price-card strong{font-size:36px}.time-pill{top:90px;right:16px}.scroll-hint{display:none}.intro{gap:30px}.quick-stats{gap:10px}.quick-stats b{font-size:25px}.quick-stats span:last-child{grid-column:1 / -1}.feature-content{padding:50px 25px}.feature-image{min-height:420px}.spec-grid,.collage-two{grid-template-columns:1fr}.collage-two .real-photo:last-child{display:none}.gazebo-images{grid-template-columns:1fr;min-height:500px}.gazebo-images .real-photo:last-child{display:none}.gazebo-copy{padding:55px 25px}.cart-crop{min-height:400px}.resort-photo-grid{grid-template-columns:1fr}.resort-photo-grid .real-photo{height:220px}.resort-facts{grid-template-columns:1fr;gap:20px}.resort-facts span+span{border-left:0}.day-photo{height:500px}.gallery-grid{grid-template-columns:1fr}.gallery-wide{grid-column:auto}.photo-gallery button,.photo-gallery button.gallery-wide{min-height:420px}.photo-gallery button>span{display:block}.photo-gallery button small{display:block;text-align:left;margin-top:5px}.price-breakdown .total b{font-size:38px}.price-breakdown .total span{font-size:18px}.quick-stats{grid-template-columns:1fr 1fr}footer p{max-width:300px}.lightbox{padding:65px 12px 35px}.lightbox-arrow{font-size:44px;background:#00000059;padding:8px}.lightbox-arrow.prev{left:4px}.lightbox-arrow.next{right:4px}}
