:root{--ink:#44492c;--olive:#505633;--cream:#f7f3eb;--rust:#a6532e;--line:#dad6cb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.65 Arial,sans-serif}button,input,select{font:inherit}button,a,select,input{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;gap:25px;background:var(--cream)}.brand{font:42px/1 Georgia,serif;letter-spacing:5px}.brand small{display:block;font:9px/1.5 Arial,sans-serif;letter-spacing:6px;text-align:center;margin-top:8px}nav,.head-right{display:flex;align-items:center;gap:34px}nav a{font-size:14px}.head-right{gap:18px}.head-right select{border:0;background:transparent;color:var(--ink)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 25px;border:0;border-radius:5px;font-size:14px;letter-spacing:.2px;transition:filter .2s,transform .2s}.button:hover{filter:brightness(.92);transform:translateY(-1px)}.rust{background:var(--rust);color:white}.olive{background:var(--olive);color:white}.cream{background:var(--cream);color:var(--ink)}.hero{min-height:590px;height:65vw;max-height:730px;position:relative;background:linear-gradient(90deg,rgba(12,40,43,.55),transparent 75%),url(terrace.webp) center 55%/cover;display:flex;align-items:center;color:white}.hero-copy{padding:40px 6%;max-width:790px}.eyebrow{display:block;font:11px/1.6 Arial,sans-serif;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:18px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.08;margin:0}h1{font-size:clamp(52px,6.1vw,88px);letter-spacing:-2px;max-width:650px}h2{font-size:clamp(34px,3.4vw,49px);letter-spacing:-1px}h3{font-size:28px}.hero p{font:21px/1.5 Georgia,serif;margin:25px 0 32px;max-width:420px}.photo-caption{position:absolute;bottom:22px;right:5%;font-size:9px;letter-spacing:2px;text-transform:uppercase}.booking-bar{position:relative;margin:-43px auto 0;max-width:1120px;width:88%;padding:28px 32px;background:var(--cream);border-radius:10px;box-shadow:0 8px 35px #342e241a;display:grid;grid-template-columns:1fr 1fr .75fr 1.2fr;gap:24px;align-items:end;z-index:1}label{display:block;font-size:13px;margin-bottom:6px}input[type=date],select{width:100%;background:transparent;color:var(--ink);border:1px solid #c9c5b8;border-radius:4px;padding:11px;min-height:46px}.head-right select{width:auto}#date-error{grid-column:1/-1;color:#963b25;margin:0;font-size:13px}#date-error:empty{display:none}.section{padding:100px 5%;max-width:1500px;margin:auto}.section-top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:40px}.section-top p{max-width:320px;margin:0;color:#747461}.apart-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.card img{width:100%;height:270px;object-fit:cover;border-radius:5px}.card:nth-child(2) img{object-position:80% center}.card:nth-child(3) img{object-position:30% center}.card-meta{display:flex;justify-content:space-between;gap:12px;margin:17px 0 12px;font-size:10px;letter-spacing:1.5px;text-transform:uppercase}.card p{color:#71725e;font-size:14px;min-height:46px}.card-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:12px}.text-link{border:0;background:transparent;color:var(--ink);padding:0 0 4px;border-bottom:1px solid var(--ink);font:inherit;font-size:13px;cursor:pointer}.card-price{font:24px Georgia,serif}.card-price small{font:11px Arial,sans-serif}.experience{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center;padding-top:25px}.image-wrap img{width:100%;height:560px;object-fit:cover;border-radius:150px 150px 4px 4px}.exp-copy p{color:#747461;margin:28px 0}.included{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:30px 0}.included span{font-size:13px;padding-bottom:14px;border-bottom:1px solid var(--line)}.amenities-section{background:#edece1;max-width:none}.amen-controls{display:flex;gap:20px;align-items:center;margin-bottom:30px}.amen-controls select{max-width:300px;background:var(--cream)}.amenities{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.amenity{padding:22px;border:1px solid #d5d6c6;border-radius:5px;display:flex;gap:14px;align-items:center;background:#ffffff40}.amenity .mark{font-size:20px}.amenity.off{opacity:.45}.gallery{display:grid;grid-template-columns:1.2fr 1fr;gap:25px}.gallery-item{position:relative;border:0;background:none;padding:0;text-align:left;overflow:hidden;border-radius:5px}.gallery-item img{width:100%;height:390px;object-fit:cover;display:block;transition:transform .4s}.gallery-item:hover img{transform:scale(1.035)}.gallery-item span{position:absolute;bottom:18px;left:20px;background:var(--cream);padding:8px 15px;font-size:12px}.section-top>span{font-size:11px;color:#747461}.faq-section{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:10%;padding-top:70px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:15px}summary:after{content:'+'}details[open] summary:after{content:'−'}details p{color:#747461;font-size:14px}.closing{text-align:center;background:var(--olive);color:var(--cream);padding:80px 20px}.closing h2{margin:0 auto 28px;max-width:650px}footer{padding:45px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer .brand{font-size:29px}footer p{font-size:11px;max-width:470px;color:#747461}footer>span{font-size:10px;letter-spacing:2px}dialog{border:0;border-radius:10px;padding:40px;max-width:620px;width:92%;max-height:90vh;overflow:auto;background:var(--cream);color:var(--ink);box-shadow:0 20px 100px #0005}dialog::backdrop{background:#17251fcc;backdrop-filter:blur(4px)}.close{position:absolute;right:15px;top:10px;border:0;background:none;color:var(--ink);font-size:30px}.demo-note{font-size:12px;background:#eae8dc;padding:12px;border-radius:4px}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.summary-grid div{padding:10px;background:#edece1;font-size:13px}.summary-grid small{display:block;color:#777966}.availability{font-size:12px;margin:12px 0;padding:10px;background:#e2e8d8}.availability.unavailable{background:#f1ded1;color:#873b27}fieldset{border:0;padding:0;margin:22px 0}legend{font:22px Georgia,serif;margin-bottom:16px}.extra{display:flex;gap:10px;align-items:center;padding:9px 0;font-size:12px}.extra b{margin-left:auto;font-weight:400;white-space:nowrap}.extra input{accent-color:var(--olive)}.price-line{display:flex;justify-content:space-between;padding:7px 0;font-size:13px}.price-line.total{border-top:1px solid var(--line);font:27px Georgia,serif;padding:18px 0}.wide{width:100%}button:disabled{opacity:.45;cursor:not-allowed}.success{font:27px Georgia,serif;margin:25px 0 15px}.detail-img{width:100%;height:230px;object-fit:cover;margin:20px 0;border-radius:5px}#lightbox{max-width:1100px;padding:35px 12px 12px}#large-photo{width:100%;display:block}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}:focus-visible{outline:3px solid #b87d47;outline-offset:4px}@media(max-width:900px){header{height:85px}nav{gap:17px}.head-right .button{display:none}.brand{font-size:32px}.hero{min-height:560px}.booking-bar{gap:12px;padding:22px;grid-template-columns:1fr 1fr}.apart-grid{gap:17px}.card img{height:210px}.card-bottom{align-items:start;flex-direction:column}.section{padding:70px 5%}.experience{gap:5%}.image-wrap img{height:460px}.amenities{grid-template-columns:repeat(3,1fr)}.gallery-item img{height:300px}}@media(max-width:600px){header{padding:15px 5%;height:80px;gap:12px}nav{display:none}.head-right{gap:0}.hero{height:620px;min-height:0;background-position:58% center;align-items:start}.hero-copy{padding-top:75px;background:linear-gradient(180deg,#16352b20,transparent)}h1{font-size:58px;max-width:340px}.hero p{font-size:19px;max-width:280px}.hero .eyebrow{font-size:9px}.photo-caption{bottom:55px}.booking-bar{width:90%;padding:20px;gap:14px;margin-top:-32px}.booking-bar .button{padding:10px;font-size:12px}.section-top{display:block;margin-bottom:28px}.section-top p{margin-top:20px;max-width:100%}.apart-grid{grid-template-columns:1fr;gap:40px}.card img{height:280px}.card p{min-height:0}.card-bottom{flex-direction:row;align-items:center}.experience{grid-template-columns:1fr;gap:40px}.image-wrap img{height:400px}.amenities{grid-template-columns:1fr 1fr;gap:9px}.amenity{padding:15px 12px;font-size:12px;gap:8px}.amen-controls{display:block}.gallery{grid-template-columns:1fr;gap:15px}.gallery-item img{height:290px}.faq-section{grid-template-columns:1fr;gap:25px}footer{flex-wrap:wrap}footer p{order:3}.section{padding-top:65px;padding-bottom:65px}dialog{padding:32px 22px}.extra b{font-size:10px}.extra{font-size:11px}.summary-grid{gap:6px}.section-top>span{display:block;margin-top:15px}}
