:root{--ink:#10251c;--pine:#1d6843;--deep:#0b2117;--sand:#f1f5e9;--paper:#f9fbf4;--gold:#d5f85b;--line:rgba(16,37,28,.14);--sans:"Sora",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;min-width:320px;background:var(--sand);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}.casa-site{min-height:100vh;overflow:clip}.section-shell{width:min(calc(100% - 44px),1160px);margin-inline:auto}.eyebrow{display:flex;align-items:center;gap:10px;margin:0;color:rgba(255,255,255,.84);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.eyebrow span{width:22px;height:1px;background:var(--gold)}.eyebrow--dark{color:#68776f}.hero{position:relative;display:flex;min-height:100svh;flex-direction:column;overflow:hidden;isolation:isolate;background:#17372f;color:#fff}.hero__media,.hero__poster,.hero__video,.hero__scrim{position:absolute;inset:0;width:100%;height:100%}.hero__media{overflow:hidden;background:#17372f}.hero__poster,.hero__video{display:block;object-fit:cover;object-position:center 54%}.hero__video{opacity:.96}.hero__scrim{background:linear-gradient(180deg,rgba(7,23,18,.56),rgba(8,25,20,.08) 29%,rgba(9,25,20,.26) 51%,rgba(8,22,18,.83)),linear-gradient(90deg,rgba(9,26,21,.4),rgba(9,26,21,.16) 60%,rgba(9,26,21,.02))}.hero__header,.hero__content{position:relative;z-index:1}.hero__header{display:flex;align-items:center;justify-content:space-between;gap:16px;width:min(calc(100% - 42px),1320px);margin-inline:auto;padding-top:calc(20px + env(safe-area-inset-top))}.brand-lockup{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none}.brand-lockup__mark{display:block;width:35px;height:35px;object-fit:contain}.brand-lockup__text{display:flex;flex-direction:column;align-items:flex-start}.brand-lockup__name{font-family:"Michroma",sans-serif;font-size:clamp(11px,3.7vw,15px);font-weight:400;letter-spacing:-.035em;line-height:1.15;text-transform:uppercase}.brand-lockup__byline{margin-top:5px;font-size:8px;font-weight:600;letter-spacing:.12em}.hero__nav{display:none;align-items:center;gap:30px}.hero__nav a{color:rgba(255,255,255,.86);font-size:12px;text-decoration:none}.hero__contact{display:inline-flex;min-height:44px;align-items:center;gap:8px;padding:0 13px;border:1px solid rgba(213,248,91,.72);border-radius:999px;background:rgba(11,33,23,.52);color:#fff;font-size:12px;font-weight:700;text-decoration:none}.icon{color:var(--gold)}.hero__content{width:min(calc(100% - 48px),760px);margin-top:auto;margin-inline:max(24px,calc((100% - 1320px)/2));padding-top:clamp(120px,20svh,220px);padding-bottom:max(134px,calc(115px + env(safe-area-inset-bottom)))}.hero__eyebrow{margin-bottom:18px}.hero h1,.experience h2,.gallery-section h2,.location h2,.reserve h2{font-weight:700;letter-spacing:-.06em;line-height:.96}.hero h1{max-width:710px;margin:0;font-size:clamp(47px,12vw,82px)}h1 em,h2 em{color:var(--gold);font-style:normal}.hero__intro{max-width:395px;margin:19px 0 25px;color:rgba(255,255,255,.86);font-size:14px;line-height:1.8}.button{display:inline-flex;min-height:54px;align-items:center;justify-content:space-between;gap:16px;padding:0 20px;border-radius:4px;font-size:12px;font-weight:700;text-decoration:none}.button--light{background:var(--paper);color:var(--ink)}.hero__cta{min-width:236px}.hero__scroll{display:flex;width:fit-content;gap:9px;margin-top:24px;color:rgba(255,255,255,.78);font-size:10px;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.experience{padding-block:92px 98px}.experience__intro{max-width:720px;margin:0 auto 23px}.experience h2,.gallery-section h2,.location h2,.reserve h2{margin:12px 0 0;font-size:clamp(42px,10vw,64px)}.experience h2 em,.gallery-section h2 em,.location h2 em{color:var(--pine)}.experience__text{max-width:560px;margin:14px 0 0;color:#59685f;font-size:15px;line-height:1.65}.feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.feature-card{display:flex;min-height:78px;align-items:center;gap:10px;padding:12px 10px;border:1px solid var(--line);border-radius:4px;background:rgba(255,255,255,.48);transition:.2s}.feature-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(16,37,28,.09)}.feature-card__icon{display:inline-flex;width:37px;height:37px;flex:0 0 37px;align-items:center;justify-content:center;border-radius:12px;background:#e4f3c7;color:var(--pine);font-size:21px}.feature-card h3{margin:0;font-size:clamp(14px,3.8vw,16px);line-height:1.25}.gallery-section{padding-block:86px 90px;overflow:hidden;background:var(--paper)}.gallery-section__heading{display:flex;flex-direction:column;gap:17px;margin-bottom:28px}.gallery-section__aside{max-width:260px;margin:0;color:#78847d;font-size:14px;line-height:1.65}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.gallery-count{color:#88948c;font-size:11px;letter-spacing:.12em}.gallery-count strong{color:var(--pine);font-size:13px}.gallery-toolbar__actions{display:flex;gap:8px}.gallery-auto,.gallery-arrow{display:inline-flex;min-width:37px;height:37px;align-items:center;justify-content:center;gap:6px;padding:0 9px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.78);color:var(--ink);cursor:pointer}.gallery-auto{font-size:10px}.gallery-track{display:flex;gap:13px;overflow-x:auto;padding:0 22px 8px;margin-inline:-22px;scroll-snap-type:x mandatory;scrollbar-width:none}.gallery-track::-webkit-scrollbar{display:none}.gallery-card{position:relative;width:min(81vw,380px);height:clamp(380px,113vw,470px);flex:0 0 auto;overflow:hidden;border-radius:20px;background:#d5d9cf;scroll-snap-align:start}.gallery-card__button{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;color:#fff;text-align:left;cursor:zoom-in}.gallery-card__button img{width:100%;height:100%;object-fit:cover;transition:transform .75s}.gallery-card__button:hover img{transform:scale(1.04)}.gallery-card__shade{position:absolute;inset:30% 0 0;background:linear-gradient(180deg,transparent,rgba(8,26,19,.75))}.gallery-card__copy{position:absolute;right:20px;bottom:22px;left:20px;display:flex;flex-direction:column}.gallery-card__number{margin-bottom:11px;color:var(--gold);font-size:11px;letter-spacing:.2em}.gallery-card__copy strong{font-size:30px;line-height:1.05}.gallery-card__copy>span:last-child{margin-top:7px;color:rgba(255,255,255,.82);font-size:12px;line-height:1.55}.gallery-card__expand{position:absolute;top:15px;right:15px;display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(255,255,255,.55);border-radius:12px;background:rgba(9,25,18,.23);font-size:25px}.gallery-dots{display:flex;gap:8px;justify-content:center;margin-top:22px}.gallery-dot{width:6px;height:6px;padding:0;border:0;border-radius:999px;background:#c3c9c1;cursor:pointer}.gallery-dot--active{width:22px;background:var(--pine)}.location{display:flex;flex-direction:column;gap:34px;padding-block:72px 78px}.location__photo{position:relative;min-height:340px;overflow:hidden;border-radius:22px}.location__photo img{display:block;width:100%;height:100%;min-height:340px;object-fit:cover}.location__photo:after{position:absolute;inset:45% 0 0;background:linear-gradient(180deg,transparent,rgba(10,30,22,.58));content:""}.location__photo-note{position:absolute;z-index:1;bottom:18px;left:20px;color:#fff;font-size:22px;font-weight:600;letter-spacing:-.04em}.location__copy{max-width:500px}.location__description{max-width:410px;margin:18px 0 22px;color:#52635a;font-size:14px;line-height:1.72}.address-card{display:flex;align-items:flex-start;gap:14px;padding:17px 15px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.76);box-shadow:0 8px 24px rgba(16,37,28,.05)}.address-card__icon{display:inline-flex;width:36px;height:36px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:12px;background:#e4f3c7;color:var(--pine);font-size:21px}.address-card>div{display:flex;flex-direction:column;gap:5px}.address-card__label{color:#7b887f;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.address-card strong{font-size:22px;letter-spacing:-.045em}.address-card__note{color:#52635a;font-size:12px;line-height:1.55}.text-link{display:inline-flex;gap:9px;margin-top:19px;color:var(--pine);font-size:14px;font-weight:700;text-decoration:none}.reserve{position:relative;display:flex;min-height:520px;align-items:center;justify-content:center;overflow:hidden;border-radius:24px;background:var(--deep);color:#fff;text-align:center}.reserve__backdrop,.reserve__backdrop:after,.reserve__backdrop img{position:absolute;inset:0;width:100%;height:100%}.reserve__backdrop img{object-fit:cover;opacity:.24}.reserve__backdrop:after{background:linear-gradient(90deg,rgba(13,36,28,.84),rgba(13,36,28,.56)),linear-gradient(0deg,rgba(13,36,28,.42),transparent);content:""}.reserve__content{position:relative;z-index:1;width:min(calc(100% - 38px),670px);padding-block:74px}.reserve__content .eyebrow{justify-content:center;font-size:9px}.reserve h2{font-size:clamp(48px,12vw,78px)}.reserve__content>p:not(.eyebrow){max-width:360px;margin:16px auto 22px;color:rgba(255,255,255,.8);font-size:15px;line-height:1.65}.reserve__number{display:block;margin-top:13px;color:rgba(255,255,255,.68);font-size:11px}.site-footer{display:grid;gap:16px;padding:42px 24px 30px;background:var(--deep);color:#fff}.site-footer>p{max-width:260px;margin:0;color:rgba(255,255,255,.62);font-size:12px;line-height:1.7}.site-footer__top{color:rgba(255,255,255,.86);font-size:12px;text-decoration:none}.site-footer__copyright{color:rgba(255,255,255,.42);font-size:10px}.booking-dock{position:fixed;z-index:30;right:12px;bottom:calc(9px + env(safe-area-inset-bottom));left:12px;display:flex;min-height:68px;align-items:center;gap:11px;padding:10px 16px;border:1px solid rgba(16,37,28,.1);border-radius:20px;background:var(--gold);color:var(--deep);text-decoration:none;box-shadow:0 12px 34px rgba(8,29,21,.2)}.booking-dock__icon{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:rgba(255,255,255,.58)}.booking-dock__copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.booking-dock__copy small{color:#294332;font-size:9px;letter-spacing:.1em}.booking-dock__copy strong{font-size:20px}.booking-dock__arrow{font-size:22px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s,transform .65s}.reveal.is-visible{opacity:1;transform:none}.lightbox{position:fixed;z-index:100;inset:0;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(8,20,16,.96);color:#fff}.lightbox[hidden]{display:none}.lightbox__panel{display:flex;width:min(100%,1160px);max-height:100%;flex-direction:column}.lightbox__topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.lightbox__topline p{margin:0;color:rgba(255,255,255,.64);font-size:10px;letter-spacing:.14em}.lightbox__topline p span{color:var(--gold)}.lightbox__close,.lightbox__arrow{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;font-size:26px}.lightbox__image-wrap{position:relative;display:flex;align-items:center;justify-content:center}.lightbox__image{display:block;max-width:100%;max-height:min(73svh,790px);object-fit:contain}.lightbox__arrow{position:absolute;top:50%;transform:translateY(-50%)}.lightbox__arrow--left{left:4px}.lightbox__arrow--right{right:4px}.lightbox__caption{padding:14px 52px 5px;text-align:center}.lightbox__caption h3{margin:0;font-size:27px}.lightbox__caption p{margin:3px 0 0;color:rgba(255,255,255,.72);font-size:11px}@media(min-width:700px){.section-shell{width:min(calc(100% - 72px),1160px)}.hero__header{width:min(calc(100% - 72px),1320px);padding-top:calc(28px + env(safe-area-inset-top))}.hero__nav{display:flex}.hero__content{width:min(calc(100% - 72px),760px);margin-left:max(36px,calc((100% - 1320px)/2));padding-top:20svh;padding-bottom:100px}.experience__intro{margin-bottom:28px}.feature-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.feature-card{min-height:88px;padding:14px 16px}.gallery-section{padding-block:110px 114px}.gallery-section__heading{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:34px}.gallery-track{gap:18px;padding-inline:max(36px,calc((100vw - 1160px)/2));margin-inline:calc(-1 * max(36px,calc((100vw - 1160px)/2)))}.gallery-card{width:min(34vw,365px);height:460px}.gallery-dots{justify-content:flex-start}.location{flex-direction:row;align-items:center;gap:clamp(45px,8vw,112px);padding-block:112px}.location__photo{width:50%;min-height:520px;flex:1 1 50%}.location__photo img{min-height:520px}.location__copy{width:min(44%,480px);flex:0 1 480px}.site-footer{grid-template-columns:1fr 1fr auto;align-items:center;padding:42px max(36px,calc((100vw - 1160px)/2)) 30px}.site-footer>p{justify-self:center}.site-footer__top{justify-self:end}.site-footer__copyright{grid-column:1/-1}.booking-dock{display:none}}@media(min-width:1100px){.hero h1{font-size:clamp(82px,8vw,112px)}.gallery-card{width:350px;height:450px}}@media(max-width:380px){.hero__header{width:calc(100% - 32px)}.hero__content{width:calc(100% - 40px);margin-inline:20px}.hero h1{font-size:49px}.feature-card{gap:8px;padding-inline:8px}.feature-card h3{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
.site-footer__instagram{display:inline-block;margin-top:8px;color:var(--gold);font-size:11px;font-weight:600;text-decoration:none}.site-footer__instagram:hover{text-decoration:underline}
