:root{--ink:#16211c;--cream:#f3f0e8;--sand:#ddd4c4;--moss:#30483b;--line:rgba(22,33,28,.18);--white:#fff;--font:"DM Sans",sans-serif;--display:"Manrope",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}.nav{position:absolute;z-index:10;top:0;left:0;width:100%;height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;color:white;border-bottom:1px solid rgba(255,255,255,.24)}.brand{display:flex;align-items:center;gap:.65rem;font-size:.78rem;font-weight:600;letter-spacing:.16em}.brand-mark{font-size:1.7rem;line-height:1}.nav nav{display:flex;gap:2rem;font-size:.86rem}.nav nav a{opacity:.82;transition:.2s}.nav nav a:hover{opacity:1}.nav-cta{border:1px solid rgba(255,255,255,.6);padding:.72rem 1.1rem;border-radius:99px;font-size:.84rem}.menu{display:none;background:transparent;border:0}.hero{height:min(900px,100svh);min-height:680px;position:relative;color:white;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,17,14,.68) 0%,rgba(8,17,14,.3) 48%,rgba(8,17,14,.06) 72%),linear-gradient(0deg,rgba(8,17,14,.45),transparent 38%)}.hero-copy{position:absolute;left:8vw;top:50%;transform:translateY(-42%);width:min(720px,78vw)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.73rem;font-weight:600;margin:0 0 1.5rem}.eyebrow.dark{color:#53665b}.hero h1,.intro h2,.section-head h2,.included h2,.booking h2{font-family:var(--display);font-weight:400;letter-spacing:-.052em;line-height:.98;margin:0}.hero h1{font-size:clamp(3.5rem,7.4vw,7.7rem)}.hero-lead{max-width:520px;font-size:1.16rem;line-height:1.55;margin:2rem 0}.button{display:inline-flex;align-items:center;gap:2rem;padding:.85rem .9rem .85rem 1.3rem;border-radius:99px;font-size:.88rem;font-weight:500}.button span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%}.button.light{background:white;color:var(--ink)}.button.light span{background:var(--ink);color:white}.hero-foot{position:absolute;bottom:2rem;left:4vw;right:4vw;display:flex;justify-content:space-between;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.intro{padding:8rem 8vw 6rem;display:grid;grid-template-columns:1.1fr .8fr;gap:5rem}.intro h2,.included h2{font-size:clamp(2.8rem,5vw,5.6rem)}.intro-copy{padding-top:2.4rem;font-size:1.15rem;max-width:520px}.intro-copy p:first-child{font-size:1.35rem}.facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);margin-top:3rem;border-top:1px solid var(--line)}.facts div{padding:2.4rem 0;border-right:1px solid var(--line);display:flex;flex-direction:column}.facts div:not(:first-child){padding-left:2rem}.facts div:last-child{border:0}.facts strong{font-family:var(--display);font-size:3.6rem;font-weight:400;line-height:1}.facts span{margin-top:.7rem;color:#56625b}.domes{background:var(--ink);color:white;padding:8rem 4vw 4rem}.section-head{display:grid;grid-template-columns:1.2fr .7fr;align-items:end;gap:5rem;margin:0 4vw 4rem}.section-head h2{font-size:clamp(3rem,5vw,5.4rem)}.section-head>p{color:#b9c0bc;max-width:450px}.dome-grid{display:grid;grid-template-columns:repeat(3,1fr);min-height:520px;gap:1px;background:rgba(255,255,255,.16)}.dome-card{position:relative;padding:2rem;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;background-size:cover;background-position:center}.dome-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,10,7,.85),rgba(4,10,7,.05));transition:.35s}.dome-card:hover:before{background:linear-gradient(0deg,rgba(4,10,7,.76),rgba(4,10,7,.02))}.dome-card>*{position:relative}.dome-card .number{font-size:.8rem}.dome-card p{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#d0d6d2}.dome-card h3{font-family:var(--display);font-size:2.25rem;font-weight:400;margin:.3rem 0}.dome-card div>span{color:#d0d6d2}.tent{background-image:linear-gradient(130deg,#607466,#26352e)}.superior{background-image:linear-gradient(130deg,#886a48,#354035)}.suite{background-image:linear-gradient(130deg,#6b705b,#1f302a)}.fineprint{color:#8e9a93;font-size:.75rem;margin:1rem 0 0}.included{padding:8rem 8vw;display:grid;grid-template-columns:.82fr 1.18fr;gap:8rem}.included-copy>p:last-child{max-width:460px;font-size:1.08rem;margin-top:2rem;color:#4e5a53}.amenities{border-top:1px solid var(--line)}.amenities>div{display:grid;grid-template-columns:40px 1fr 1fr;gap:1rem;padding:1.5rem 0;border-bottom:1px solid var(--line);align-items:baseline}.amenities span{font-size:.75rem;color:#758078}.amenities h3{font-size:1.05rem;margin:0;font-weight:600}.amenities p{margin:0;color:#647067;font-size:.9rem}.stay{background:#c8baa5;padding:5rem 8vw}.stay-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(22,33,28,.25)}.stay-grid div{padding:2rem 1rem 0 0;display:flex;flex-direction:column}.stay-grid span{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}.stay-grid strong{font-family:var(--display);font-size:2rem;font-weight:400;margin-top:.3rem}.booking{background:var(--moss);color:white;text-align:center;padding:9rem 5vw}.booking h2{font-size:clamp(3.5rem,7vw,7rem)}.booking>p:not(.eyebrow){color:#d6ddd9;font-size:1.1rem;margin:1.8rem auto 2.3rem;max-width:520px}footer{background:#101814;color:white;padding:2rem 4vw;display:flex;justify-content:space-between;align-items:center;font-size:.8rem}footer p{color:#929d97}.menu span{display:block;width:22px;height:1px;background:#fff;margin:5px}
@media (min-width:851px) and (max-height:850px){.hero-copy{top:49%;width:min(820px,62vw)}.hero h1{font-size:clamp(4rem,8vh,5.4rem)}.hero .eyebrow{margin-bottom:.8rem}.hero-lead{margin:1.2rem 0;font-size:1.05rem}.hero-foot{bottom:1.2rem}}
@media(max-width:850px){.nav{height:76px}.nav nav,.nav-cta{display:none}.menu{display:block}.nav.open{height:auto;min-height:76px;align-items:flex-start;padding-top:1.5rem;background:#15221d;flex-wrap:wrap}.nav.open nav{display:flex;order:3;width:100%;flex-direction:column;padding:2rem 0}.hero{min-height:680px}.hero-copy{left:7vw;top:48%;width:86vw}.hero h1{font-size:clamp(3rem,15vw,3.6rem)}.hero-lead{font-size:1rem;margin:1.4rem 0}.hero-foot{font-size:.65rem}.hero-foot span:last-child{display:none}.intro{grid-template-columns:1fr;padding:6rem 7vw;gap:1.5rem}.intro-copy{padding:0}.facts{grid-template-columns:1fr;margin-top:2rem}.facts div,.facts div:not(:first-child){padding:1.4rem 0;border-right:0;border-bottom:1px solid var(--line);flex-direction:row;align-items:baseline;gap:1rem}.facts strong{font-size:2.5rem}.section-head{grid-template-columns:1fr;margin:0 3vw 3rem;gap:1.5rem}.domes{padding:6rem 4vw 3rem}.dome-grid{grid-template-columns:1fr;min-height:0}.dome-card{min-height:330px}.included{grid-template-columns:1fr;padding:6rem 7vw;gap:4rem}.amenities>div{grid-template-columns:32px 1fr}.amenities p{grid-column:2}.stay{padding:5rem 7vw}.stay-grid{grid-template-columns:1fr 1fr}.booking{padding:7rem 7vw}footer{flex-direction:column;align-items:flex-start;gap:.4rem}footer p{margin:.6rem 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.booking{padding:8rem 5vw}.booking-intro{text-align:center}.booking-intro>p:not(.eyebrow){color:#d6ddd9;font-size:1.1rem;margin:1.8rem auto 2.8rem;max-width:580px}.booking-widget{width:min(1120px,100%);min-height:160px;margin:0 auto;padding:1.25rem;background:#fff;border-radius:20px;color:var(--ink);box-shadow:0 22px 55px rgba(4,10,7,.2);text-align:left;overflow:hidden}.booking-widget iframe{max-width:100%;border:0}.booking-help{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:2.2rem}.booking-help p{margin:0;color:#d6ddd9}.booking-help .button{flex-shrink:0}
@media(max-width:850px){.booking{padding:6rem 5vw}.booking-widget{padding:.75rem;border-radius:14px;min-height:190px}.booking-help{flex-direction:column;gap:.8rem}.booking-help p{text-align:center}.booking-help .button{width:100%;justify-content:space-between}}

.nav nav .mobile-reserve{display:none}
@media(max-width:850px){.nav.open nav .mobile-reserve{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:.85rem 1.2rem;background:#69be28;color:#16211c;border-radius:99px;font-size:1rem;font-weight:600;opacity:1;text-shadow:none}}

.nav .nav-cta{position:fixed;top:20px;right:4vw;z-index:20;background:#16211c;color:#fff;text-shadow:none;box-shadow:0 4px 18px rgba(0,0,0,.18)}
.nav .nav-cta.booking-visible{visibility:hidden;pointer-events:none}
@media(max-width:850px){.nav .nav-cta.past-header{display:block;top:12px;font-size:.875rem}.nav.open .nav-cta{display:none}}

/* Real Sierra Pacífica photography */
.tent{background-image:url('deluxe.webp')}.superior{background-image:url('superior.webp')}.suite{background-image:url('suite.webp')}.dome-card{background-position:center;background-size:cover}
.gallery{padding:2rem 4vw 8rem}.gallery-head{display:grid;grid-template-columns:1.2fr .7fr;gap:5rem;align-items:end;margin:0 4vw 3.5rem}.gallery-head h2{font-family:var(--display);font-weight:400;letter-spacing:-.052em;line-height:1;font-size:clamp(2.8rem,5vw,5.4rem);margin:0}.gallery-head>p{max-width:460px;color:#56625b}.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:340px 340px;gap:1rem}.gallery-grid figure{position:relative;margin:0;overflow:hidden;background:#d7d8d1}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.gallery-grid figure:hover img{transform:scale(1.025)}.gallery-grid figcaption{position:absolute;left:1rem;bottom:1rem;background:rgba(14,24,19,.78);backdrop-filter:blur(8px);color:#fff;padding:.55rem .85rem;border-radius:99px;font-size:.78rem}.gallery-pool{grid-row:1/3}.gallery-breakfast{display:none}
@media(max-width:850px){.gallery{padding:1rem 4vw 6rem}.gallery-head{grid-template-columns:1fr;gap:1.2rem;margin:0 3vw 2.5rem}.gallery-grid{grid-template-columns:1fr;grid-template-rows:none}.gallery-grid figure{height:280px}.gallery-pool{grid-row:auto}.gallery-breakfast{display:block}.gallery-grid img{transition:none}}

.gallery-pool{grid-row:auto}
.gallery-billiards img{object-position:center 75%}

/* Stronger contrast over detailed real photography */
.hero-shade{background:linear-gradient(90deg,rgba(6,14,10,.84) 0%,rgba(6,14,10,.62) 38%,rgba(6,14,10,.22) 70%),linear-gradient(180deg,rgba(6,14,10,.58) 0%,transparent 24%),linear-gradient(0deg,rgba(6,14,10,.56),transparent 42%)}
.hero-copy{text-shadow:0 2px 22px rgba(0,0,0,.42)}.hero-lead{font-weight:500}.nav{background:linear-gradient(180deg,rgba(6,14,10,.42),transparent)}.nav a{text-shadow:0 1px 12px rgba(0,0,0,.5)}
@media(max-width:850px){.hero-shade{background:linear-gradient(90deg,rgba(6,14,10,.82),rgba(6,14,10,.4)),linear-gradient(180deg,rgba(6,14,10,.55),transparent 28%),linear-gradient(0deg,rgba(6,14,10,.58),transparent 45%)}}

.booking-actions{display:flex;justify-content:center;margin:2.8rem 0 0}.booking-primary{background:#fff;color:var(--ink);font-size:1rem;padding:1rem 1rem 1rem 1.5rem}.booking-primary span{background:#69be28;color:#fff}.booking-help{margin-top:1.5rem}
@media(max-width:850px){.booking-actions .button{width:100%;justify-content:space-between}.booking-actions{margin-top:2rem}}

.reviews{padding:8rem 8vw;background:#f3f0e8}.reviews-head{display:grid;grid-template-columns:1.15fr .7fr;gap:5rem;align-items:end;margin-bottom:3.5rem}.reviews-head h2{font-family:var(--display);font-weight:400;letter-spacing:-.052em;line-height:1;font-size:clamp(2.8rem,5vw,5.4rem);margin:0}.reviews-head>p{max-width:470px;color:#56625b}.reviews-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.review-card{min-height:260px;padding:2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.review-source{display:flex;align-items:center;gap:.65rem;color:#647067;font-size:.78rem}.google-g{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff;color:#4285f4;font-weight:700;box-shadow:0 2px 8px rgba(0,0,0,.08)}.review-card blockquote{font-family:var(--display);font-size:clamp(1.3rem,2vw,1.8rem);line-height:1.35;letter-spacing:-.025em;margin:2.5rem 0 0}.reviews-cta{display:flex;align-items:center;justify-content:flex-end;gap:1.2rem;margin-top:2rem}.reviews-cta p{margin:0;color:#56625b}.reviews-cta a{display:inline-flex;align-items:center;gap:1rem;background:var(--ink);color:#fff;padding:.9rem 1.2rem;border-radius:99px;font-size:.88rem}.reviews-cta a span{color:#69be28}
@media(max-width:850px){.reviews{padding:6rem 7vw}.reviews-head{grid-template-columns:1fr;gap:1.2rem;margin-bottom:2.5rem}.reviews-grid{grid-template-columns:1fr}.review-card{min-height:220px;padding:1.5rem}.reviews-cta{align-items:stretch;flex-direction:column;margin-top:1.5rem}.reviews-cta a{justify-content:space-between}}

/* Dome interiors */
.dome-interiors{margin:8rem 4vw 2rem;padding-top:6rem;border-top:1px solid rgba(255,255,255,.18)}.interiors-head{display:grid;grid-template-columns:1.2fr .7fr;gap:5rem;align-items:end;margin-bottom:3.5rem}.interiors-head h2{font-family:var(--display);font-size:clamp(2.9rem,5vw,5.4rem);font-weight:400;letter-spacing:-.052em;line-height:1;margin:0}.interiors-head>p{color:#b9c0bc;max-width:450px}.interior-gallery{display:block}.interior-track{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:.35rem}.interior-track::-webkit-scrollbar{display:none}.interior-photo{appearance:none;border:0;padding:0;background:#27352e;flex:0 0 min(310px,72vw);height:390px;overflow:hidden;cursor:zoom-in;scroll-snap-align:start}.interior-photo.wide{flex-basis:min(520px,82vw)}.interior-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}.interior-photo:hover img{transform:scale(1.025)}.gallery-controls{display:flex;align-items:center;justify-content:flex-end;gap:.85rem;margin-top:1rem}.gallery-controls span{margin-right:auto;color:#8e9a93;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em}.gallery-arrow{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.32);background:transparent;color:#fff;font-size:1.1rem;cursor:pointer}.gallery-arrow:hover,.gallery-arrow:focus-visible{background:#fff;color:var(--ink)}.lightbox{width:min(1100px,94vw);height:min(820px,90vh);padding:0;border:0;background:#0b120e;box-shadow:0 30px 100px rgba(0,0,0,.55)}.lightbox::backdrop{background:rgba(4,9,6,.88);backdrop-filter:blur(5px)}.lightbox img{width:100%;height:100%;object-fit:contain;display:block}.lightbox-close{position:absolute;right:1rem;top:1rem;z-index:2;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:var(--ink);font-size:1.8rem;line-height:1;cursor:pointer}
@media(max-width:850px){.dome-interiors{margin:5rem 3vw 1rem;padding-top:4rem}.interiors-head{grid-template-columns:1fr;gap:1.2rem;margin-bottom:2.5rem}.interior-photo{height:330px}.gallery-controls span{display:none}.interior-photo img{transition:none}}

/* Google Maps location link */
.location-link{display:inline-flex;width:max-content;border-bottom:1px solid rgba(22,33,28,.35);transition:border-color .2s,opacity .2s}.location-link:hover,.location-link:focus-visible{border-color:var(--ink);opacity:.72}
