:root{--forest:#223c32;--forest2:#16271f;--forestLight:#315044;--cream:#f3f0e8;--paper:#faf8f3;--beige:#e6dfd3;--ochre:#baa17b;--muted:#657268;--line:#dcd9ce}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:#243329;font-family:"DM Sans",Arial,sans-serif;font-size:15px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.container{width:min(1140px,calc(100% - 64px));margin:auto}.site-head{height:84px;background:rgba(246,244,237,.97);padding:0 max(32px,calc((100% - 1240px)/2));display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(24,56,43,.07);backdrop-filter:blur(12px)}.brand{display:flex;flex-direction:column;align-items:center;line-height:.98;min-width:88px}.brand-top{font-size:10px;letter-spacing:.36em;color:#28463a;margin-left:.36em}.brand-bottom{font:600 31px/1 "Cormorant Garamond",serif;letter-spacing:.15em;margin-left:.15em}.nav{display:flex;gap:31px;align-items:center;font-size:12px;font-weight:600;letter-spacing:.045em}.nav>a:not(.nav-cta):hover{color:#7f8f74}.nav-cta{background:var(--forest);color:#f9f6ed;padding:12px 21px;border-radius:2px}.lang{border:0;background:transparent;color:var(--forest);font-size:11px;font-weight:700;letter-spacing:.14em;padding:9px}.hero{height:min(780px,calc(100svh - 84px));min-height:590px;position:relative;overflow:hidden;color:#fff}.hero-photo,.hero-grad{position:absolute;inset:0}.hero-photo{background:var(--forest) var(--hero) center 43%/cover no-repeat;transform:scale(1.015)}.hero-grad{background:linear-gradient(90deg,rgba(10,29,19,.68) 0%,rgba(15,29,21,.28) 62%,rgba(15,29,21,.09)),linear-gradient(0deg,rgba(0,0,0,.38),transparent 30%)}.hero-content{position:relative;padding-top:clamp(140px,18svh,210px)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.23em;color:#907e61;display:block;text-transform:uppercase}.eyebrow.light{color:#e3d5bf}.hero h1{font:400 clamp(66px,8.4vw,120px)/.93 "Cormorant Garamond",serif;letter-spacing:-.035em;max-width:800px;margin:28px 0 28px}.hero h1 em,h2 em{font-weight:400}.hero-lede{font-size:16px;font-weight:300;line-height:1.7;max-width:470px;color:#f1efeb;margin:0 0 32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--forest);color:white;border:1px solid var(--forest);padding:16px 24px;font-weight:600;letter-spacing:.04em;font-size:12px;transition:background .2s,transform .2s}.button:hover{background:#3a5a49;transform:translateY(-1px)}.light-button{background:#f5efe3;color:#24392e;border-color:#f5efe3}.light-button:hover{background:white;color:#24392e}.hero-bottom{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);display:flex;justify-content:space-between;width:min(1140px,calc(100% - 64px));font-size:10px;letter-spacing:.18em;color:rgba(255,255,255,.8)}.story{padding:112px 0 105px}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.story h2,.gallery-section h2,.book-section h2{font:400 clamp(43px,5vw,72px)/1.03 "Cormorant Garamond",serif;letter-spacing:-.022em;margin:23px 0 0;color:#244034}.story-right p{font-size:16px;line-height:1.85;color:#536259;max-width:520px;margin:0 0 41px}.stats{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:16px;padding-top:27px;border-top:1px solid #cfcfc6}.stats div{display:flex;flex-direction:column;gap:8px}.stats strong{font:500 clamp(27px,2.7vw,38px)/1 "Cormorant Garamond",serif;color:#244034;white-space:nowrap}.stats small{font-size:19px}.stats span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#6b746b}.feature{display:grid;grid-template-columns:52% 48%;background:var(--forest2);color:#fff;min-height:580px}.feature-image img{display:block;width:100%;height:100%;object-fit:cover;min-height:580px}.feature-copy{padding:100px max(48px,calc((100vw - 1170px)/2)) 85px 10%;align-self:center}.feature-copy h2{font:400 clamp(48px,5vw,77px)/.99 "Cormorant Garamond",serif;margin:25px 0 28px}.feature-copy p{color:#d8dfd9;line-height:1.9;font-size:15px;max-width:460px}.feature-amenities{display:flex;flex-wrap:wrap;gap:11px;margin-top:35px}.feature-amenities span{font-size:11px;letter-spacing:.04em;border:1px solid #6b7e6f;padding:10px 14px;color:#e0e6df}.gallery-section{padding:110px 0 125px;background:#faf8f3}.section-header{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:43px}.section-header p{max-width:350px;line-height:1.65;color:#667168}.gallery-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:260px 260px 230px;gap:14px}.gallery-grid figure{margin:0;position:relative;overflow:hidden;background:#d6d8d0}.gallery-grid figure img{height:100%;width:100%;display:block;object-fit:cover;transition:transform .45s}.gallery-grid figure:hover img{transform:scale(1.035)}.gallery-grid figcaption{position:absolute;left:18px;bottom:15px;padding:8px 12px;background:rgba(20,45,34,.78);font-size:10px;color:#fff;letter-spacing:.09em;text-transform:uppercase}.g1{grid-column:1;grid-row:1/3}.g1 img{object-position:center}.g6{grid-column:1/4;grid-row:3}.g6 img{object-position:center}.quote{background:var(--forest);text-align:center;padding:92px 20px 100px;color:#f6f2e7}.quote h2{font:400 clamp(46px,6vw,82px)/1.06 "Cormorant Garamond",serif;margin:20px auto 0;max-width:780px}.book-section{background:var(--cream);padding:110px 0 140px}.book-section .section-header{margin-bottom:48px}.booking-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:24px;align-items:start}.calendar-card,.form-card{background:var(--paper);padding:35px;border:1px solid #e4ded1;box-shadow:0 3px 24px rgba(36,59,42,.03)}.calendar-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.calendar-title p{color:#667166;font-size:12px;margin:10px 0 0;line-height:1.6}.calendar-nav{display:flex;gap:6px}.calendar-nav button{width:36px;height:36px;border:1px solid #dadace;background:white;color:var(--forest);font-size:27px;line-height:1}.calendar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:30px}.cal-month h4{font:500 27px "Cormorant Garamond",serif;margin:0 0 13px;text-align:center;color:var(--forest)}.cal-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.cal-days .dow{text-align:center;color:#99a096;font-size:10px;padding:9px 0}.cal-days .day{height:32px;width:100%;border:1px solid transparent;background:transparent;color:#364b3f;font-size:11px;border-radius:2px}.cal-days .day:hover:not(:disabled){border-color:#adb9ac;background:#f4f6f0}.cal-days .day.empty{pointer-events:none}.cal-days .day.old{color:#b8b8af}.cal-days .day.open{background:#dee9dd;color:#244b37}.cal-days .day.selected{background:#214934;color:#fff}.cal-days .day:focus-visible{outline:2px solid #b69b69;outline-offset:1px}.calendar-legend{display:flex;flex-wrap:wrap;gap:15px;border-top:1px solid #e8e4d9;margin-top:27px;padding-top:22px;font-size:11px;color:#6f786e}.calendar-legend>span{display:flex;align-items:center;gap:7px}.dot{width:11px;height:11px;border:1px solid #c4cabe;display:inline-block}.dot.free{background:#dce9db}.dot.tentative{background:#f8f7f2}.dot.selected{background:#214934}.calendar-caption{font-size:11px;color:#788176;line-height:1.7;margin-top:18px}.form-card h3{font:400 35px "Cormorant Garamond",serif;color:#264136;line-height:1;margin:16px 0}.form-card>p{font-size:12px;color:#67746a;line-height:1.75;margin-bottom:26px}.form-card form label{display:flex;flex-direction:column;gap:7px;margin-bottom:15px;font-size:11px;color:#54665b;font-weight:600}.form-card input:not([type=checkbox]),.form-card textarea{width:100%;background:#fff;border:1px solid #d6d8d0;padding:12px 13px;min-height:43px;border-radius:0;outline:none;color:#26392d;font-weight:400;font-size:13px}.form-card input:focus,.form-card textarea:focus{border-color:#35624c}.form-card textarea{resize:vertical}.input-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.submit{width:100%;margin-top:7px;min-height:52px}.form-disclaimer{font-size:11px;color:#7d857b;line-height:1.6}.form-error{color:#a33e2d;background:#fcebe6;padding:10px;font-size:12px;line-height:1.6}.trap{position:absolute!important;left:-9999px!important}.success{border-top:1px solid #d7d7cb;margin-top:22px;padding-top:30px}.success strong{font:500 30px "Cormorant Garamond",serif;color:#224b32}.success p{line-height:1.8;font-size:14px;color:#56665b}.back{color:#204d34;font-size:12px;border:0;border-bottom:1px solid #49644f;padding:6px 0;background:transparent}footer{padding:45px 0;background:#162a20;color:#d8e2d8}.footer-grid{display:flex;justify-content:space-between;align-items:end;gap:24px}.footer-logo{font:500 30px "Cormorant Garamond",serif;letter-spacing:.05em}.footer-logo em{font-style:normal;color:#cdb48c}.footer-grid p{font-size:12px;color:#bdc9be;line-height:1.7}.footer-right{text-align:right;font-size:9px;letter-spacing:.14em;color:#c8c4ac}@media(max-width:980px){.nav{gap:14px}.nav>a:not(.nav-cta){display:none}.story-grid{gap:5%}.feature{grid-template-columns:1fr 1fr}.feature-copy{padding:60px 35px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,240px)}.g6{grid-column:1/3;grid-row:4}.g1{grid-column:1;grid-row:1/3}.booking-layout{grid-template-columns:1fr}.calendar-grid{gap:30px}.hero h1{font-size:76px}}@media(max-width:650px){.container{width:min(100% - 34px,540px)}.site-head{height:72px;padding:0 16px}.brand-top{font-size:8px}.brand-bottom{font-size:26px}.nav{gap:12px}.nav-cta{padding:11px 12px;font-size:10px}.hero{height:calc(89svh - 72px);min-height:550px}.hero-content{padding-top:28svh}.hero h1{font-size:60px}.hero-lede{font-size:14px}.hero-bottom{bottom:22px;width:calc(100% - 34px);font-size:8px}.story{padding:72px 0}.story-grid{grid-template-columns:1fr;gap:32px}.story h2,.gallery-section h2,.book-section h2{font-size:49px}.story-right p{font-size:14px}.stats{grid-template-columns:repeat(4,1fr);gap:8px}.stats strong{font-size:26px}.stats small{font-size:15px}.stats span{font-size:9px}.feature{grid-template-columns:1fr}.feature-image img{height:390px;min-height:0}.feature-copy{padding:63px 24px 70px}.feature-copy h2{font-size:58px}.gallery-section{padding:72px 0}.section-header{display:block;margin-bottom:30px}.section-header p{margin-top:22px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:250px 180px 180px 190px;gap:8px}.g1{grid-column:1/3;grid-row:1}.gallery-grid figcaption{font-size:9px;left:8px;bottom:8px;padding:6px 7px}.quote{padding:70px 12px}.quote h2{font-size:51px}.book-section{padding:75px 0 90px}.calendar-card,.form-card{padding:22px}.calendar-grid{grid-template-columns:1fr;gap:21px}.calendar-grid .cal-month:nth-child(2){display:none}.cal-days .day{height:40px;font-size:13px}.form-card h3{font-size:35px}.footer-grid{display:block}.footer-right{text-align:left;margin-top:32px}}
/* Casa Nita approved-originals photo display */
.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:235px;gap:13px}
.gallery-grid figure{grid-column:auto;grid-row:auto}
.gallery-grid figure.g1{grid-column:span 2;grid-row:span 2}
.gallery-grid figure.g4{grid-column:span 2}
.gallery-grid figure.g14{grid-column:span 2}
.photo-pending{min-height:580px;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;padding:32px;background:linear-gradient(130deg,#2d4a3a,#55705c);color:#f4eddf;letter-spacing:.15em;font-size:11px;text-transform:uppercase}
.gallery-empty{grid-column:1/-1;background:#e8e5dc;text-align:center;display:flex;justify-content:center;align-items:center;padding:36px;color:#667266;min-height:200px}
@media(max-width:980px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:220px}.gallery-grid figure.g1{grid-column:span 2;grid-row:span 1}.gallery-grid figure.g4{grid-column:auto}.gallery-grid figure.g14{grid-column:span 2}}
@media(max-width:650px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:160px}.gallery-grid figure.g1,.gallery-grid figure.g14{grid-column:span 2;grid-row:span 1}.photo-pending{min-height:330px}}
