:root{--paper:#efe2cf;--surface:#f4e7d3;--ink:#30271f;--muted:#615141;--brown:#56331e;--brown-hover:#71482c;--cream:#e5d2b8;--line:#d4bfa3;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--radius:16px;color-scheme:light;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:32px}
*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.5}button,input,select{font:inherit;color:inherit}button,select,a{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}button:disabled{cursor:not-allowed;opacity:.5}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.14;letter-spacing:-.045em}h3{font-weight:600;line-height:1.3}em{font-weight:400}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #b87f43;outline-offset:5px}button:focus:not(:focus-visible){outline:none}[hidden]{display:none!important}.shell{width:min(1280px,calc(100% - 112px));margin-inline:auto}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-library{position:absolute;width:0;height:0;overflow:hidden}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--brown);color:#fffaf4;padding:15px 23px;border-radius:7px;font-size:14px;line-height:1.4;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:var(--brown-hover);transform:translateY(-1px)}.button-outline{background:transparent;border:1px solid var(--brown);color:var(--brown)}.button-outline:hover{color:white}.icon-button{display:inline-grid;place-items:center;background:transparent;border-radius:50%;width:44px;height:44px}.icon-button:hover{background:var(--cream)}.skip-link{position:fixed;top:-100px;left:20px;z-index:20;background:var(--surface);padding:12px}.skip-link:focus{top:10px}.eyebrow{display:block;font-size:12px;font-weight:500;letter-spacing:.19em;color:var(--brown);margin-bottom:15px}.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0;color:var(--brown)}.brand-mark{position:relative;overflow:hidden;display:block;width:36px;height:70px;background:transparent}.brand-mark img{position:absolute;width:103px;height:103px;max-width:none;left:-37px;top:-14px}.brand-wordmark{font-family:var(--serif);font-size:24px;letter-spacing:.16em;line-height:1.25;white-space:nowrap}.brand-wordmark>span{display:block;font-family:var(--sans);font-size:12px;font-weight:400;letter-spacing:.17em;margin-top:5px}.desktop-nav{display:flex;gap:34px;align-items:center;font-size:14px}.desktop-nav a{padding:12px 0;color:#615c56;position:relative}.desktop-nav a:hover{color:var(--brown)}.desktop-nav .nav-active{color:var(--brown)}.desktop-nav .nav-active:after{content:'';position:absolute;bottom:3px;left:0;right:0;margin:auto;width:18px;height:2px;background:var(--brown)}.header-cta{padding:13px 19px}.menu-button,.mobile-nav{display:none}.hero{position:relative;height:550px;margin-bottom:54px}.hero-image{position:absolute;inset:0;border-radius:17px;overflow:hidden}.hero-image>img{height:100%;object-position:center 58%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,27,21,.66),rgba(19,28,19,.20) 62%,rgba(12,20,10,.04)),linear-gradient(0deg,rgba(12,23,20,.35),transparent 40%)}.hero-content{position:relative;color:#fffdf4;padding:66px 64px}.eyebrow.light{color:#eeeadc;font-size:12px;letter-spacing:.2em}.hero h1{font-size:clamp(48px,5.2vw,76px);line-height:1.04;letter-spacing:-.045em;margin-bottom:25px}.hero h1 em{color:#f3e4cd}.hero p{color:#f0ede4;line-height:1.65;font-size:16px}.hero-link{display:inline-flex;align-items:center;gap:22px;font-size:14px;margin-top:25px;border-bottom:1px solid #e7e0d17d;padding-bottom:6px}.hero-link:hover{gap:29px}.hero-caption{position:absolute;right:36px;bottom:95px;color:#fff9ef;text-align:right;font-size:12px}.hero-caption span{display:block}.hero-caption span+span{font-size:12px;opacity:.65;margin-top:5px}.search-bar{position:absolute;z-index:2;left:32px;right:32px;bottom:-41px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px #3827150a;padding:17px;display:grid;grid-template-columns:1.1fr 1.15fr .7fr 160px;align-items:center;min-height:98px}.search-field{display:flex;align-items:center;gap:16px;text-align:left;min-width:0;background:transparent;padding:5px 23px;border-right:1px solid var(--line);height:55px}.search-field>.icon{color:var(--brown)}.search-field>span{display:block;min-width:0;flex:1}.field-label{display:block;font-size:12px;font-weight:600;letter-spacing:.12em;color:#827b70;margin-bottom:5px}.field-value{font-size:14px;white-space:nowrap}.select-wrap{position:relative;display:block}.select-wrap select{width:100%;appearance:none;background:transparent;border:0;padding-right:22px;font-size:14px;cursor:pointer;min-height:24px}.select-wrap>.icon{position:absolute;pointer-events:none;right:0;top:4px;width:16px;height:16px}.field-chevron{margin-left:auto;width:16px!important;height:16px!important}.guest-field{border-right:0}.search-button{height:58px;font-size:15px}.benefits{display:flex;align-items:center;justify-content:space-around;padding:37px 15px 34px;border-bottom:1px solid var(--line);gap:20px}.benefits>div{display:flex;align-items:center;gap:11px;font-size:13px;color:#666051}.benefits .icon{color:var(--brown);width:22px;height:22px}.benefit-divider{width:1px;height:19px;background:var(--line)}.collection{padding-top:61px;padding-bottom:67px;scroll-margin-top:25px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px}.section-heading h2{font-size:42px;margin-bottom:15px}.section-heading .eyebrow{margin-bottom:12px}.section-heading p{color:var(--muted);font-size:14px;line-height:1.6}.collection-count{text-align:right;font-size:14px;padding-bottom:5px}.collection-count small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.collection-toolbar{display:flex;align-items:center;justify-content:space-between;margin-top:30px;margin-bottom:28px;gap:14px}.filter-tabs{display:flex;gap:9px;flex-wrap:wrap}.filter{display:inline-flex;align-items:center;gap:7px;background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:30px;font-size:13px;min-height:42px;padding:10px 17px;transition:.2s}.filter .icon{width:17px;height:17px}.filter.active{color:#fffaf2;background:var(--brown);border-color:var(--brown)}.filter:hover:not(.active){border-color:#a99079}.saved-filter{display:flex;align-items:center;gap:7px;background:transparent;color:var(--muted);font-size:13px;padding:10px 0}.saved-filter .icon{width:17px;height:17px}.saved-filter>span:last-child{font-size:12px;background:var(--cream);border-radius:50%;min-width:20px;height:20px;display:grid;place-items:center}.saved-filter[aria-pressed=true]{color:var(--brown)}.search-summary{margin-bottom:20px;font-size:14px;color:#645448}.villa-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.villa-card{min-width:0}.card-photo{position:relative;height:260px;border-radius:12px;overflow:hidden;background:var(--cream)}.photo-button{width:100%;height:100%;padding:0;background:transparent;display:block;text-align:left}.photo-button img{height:100%;transition:transform .5s;object-position:center}.photo-button:hover img{transform:scale(1.045)}.card-tag{position:absolute;pointer-events:none;top:16px;left:16px;background:#f1e2cbed;color:#56331e;padding:6px 11px;border-radius:4px;font-size:12px;letter-spacing:.04em}.save-button{position:absolute;right:12px;top:12px;width:36px;height:36px;background:#f4e7d3f0;display:grid;place-items:center;border-radius:50%;color:#655340;transition:.2s}.save-button .icon{width:18px;height:18px}.save-button:hover{background:var(--surface);transform:scale(1.07)}.save-button[aria-pressed=true] .icon{fill:var(--brown);stroke:var(--brown)}.card-content{padding:20px 1px 0}.card-location{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:12px;margin-bottom:8px}.card-location .icon{width:14px;height:14px}.villa-card h3{font-size:21px;font-family:var(--serif);letter-spacing:-.025em;font-weight:400;margin-bottom:14px}.title-button{padding:0;text-align:left;background:transparent;font:inherit}.title-button:hover{color:var(--brown-hover)}.amenities{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:12px}.amenities>span{display:flex;align-items:center;gap:5px}.amenities .icon{width:16px;height:16px}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:21px;padding-top:18px;border-top:1px solid var(--line)}.price-label{display:block;font-size:12px;color:var(--muted);margin-bottom:2px}.price{font-size:16px;font-weight:600;letter-spacing:-.025em}.per-night{font-size:12px;color:var(--muted);font-weight:400;letter-spacing:0;margin-left:3px}.card-cta{display:flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid var(--line);background:transparent;border-radius:5px;color:var(--brown);font-size:12px}.card-cta:hover{background:var(--brown);color:white;border-color:var(--brown)}.card-cta .icon{width:16px;height:16px}.empty-state{text-align:center;padding:50px 20px;background:var(--cream);border-radius:12px}.empty-state>.icon{width:32px;height:32px;color:var(--brown);margin:0 auto 15px}.empty-state h3{font-family:var(--serif);font-size:28px;margin-bottom:8px;font-weight:400}.empty-state p{color:var(--muted);margin-bottom:24px}.story{display:grid;grid-template-columns:1fr 1fr;min-height:360px;background:var(--cream);border-radius:12px;overflow:hidden}.story-image{position:relative;min-height:360px}.story-image img{height:100%;position:absolute;inset:0;object-position:center 63%}.image-note{position:absolute;bottom:12px;right:14px;color:white;font-size:12px;text-shadow:0 1px 3px #0008}.story-copy{padding:49px 46px}.story h2{font-size:35px;margin-bottom:20px;line-height:1.2}.story h2 em{color:#806047}.story p{color:var(--muted);font-size:14px;line-height:1.7}.story p+p{margin-top:12px}.text-link{display:inline-flex;align-items:center;gap:16px;font-size:14px;font-weight:500;color:var(--brown);background:transparent;padding:0;border-bottom:1px solid #b8a18c;padding-bottom:5px}.story .text-link{margin-top:23px}.text-link .icon{width:18px;height:18px}.how{padding-block:72px 64px}.how .section-heading h2{font-size:38px;margin:0}.how .section-heading>p{margin-bottom:4px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:37px}.steps article{display:flex;align-items:flex-start;gap:19px;padding-top:22px;border-top:1px solid var(--line)}.step-number{font-family:var(--serif);color:#aa8769;font-size:26px;line-height:1.05;font-style:italic}.steps h3{font-size:16px;margin-bottom:9px;font-weight:500}.steps p{font-size:13px;line-height:1.65;color:var(--muted)}.demo-note{display:flex;align-items:center;gap:12px;background:var(--cream);padding:15px 19px;border-radius:7px;margin-top:34px;color:var(--muted)}.demo-note .icon{width:18px;height:18px}.demo-note p{font-size:12px;line-height:1.6}.footer{background:#decaad}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:40px}.footer-top>p{color:var(--muted);font-size:13px;line-height:1.65}.footer nav{display:flex;gap:25px;font-size:13px}.footer nav a:hover{text-decoration:underline}.back-top{border:1px solid #cbbba6;border-radius:50%;width:40px;height:40px;display:grid;place-items:center}.back-top .icon{transform:rotate(-90deg);width:18px;height:18px}.footer-bottom{border-top:1px solid #d9d0c2;padding-block:20px;display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.modal{border:1px solid var(--line);background:var(--paper);border-radius:16px;box-shadow:0 20px 100px #1c10043b;padding:30px;width:min(530px,calc(100% - 32px));max-height:calc(100dvh - 40px);color:var(--ink)}.modal::backdrop{background:#20160f99;backdrop-filter:blur(5px)}.modal[open]{animation:modal-in .2s ease-out}.modal-header{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:27px}.modal-header .eyebrow{font-size:12px;margin-bottom:10px}.modal-header h2{font-size:31px}.modal-header .icon-button{flex-shrink:0;transform:translate(10px,-10px)}.date-inputs{display:grid;grid-template-columns:1fr 1fr;gap:14px}label:has(input),.booking-label{display:block;font-size:13px;color:var(--muted)}.date-inputs input,.booking-guest{display:block;width:100%;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:13px 10px;margin-top:7px;font-size:14px;min-height:48px}.helper{font-size:12px;color:var(--muted);margin-top:19px;line-height:1.65}.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:28px}.form-error{color:#a13e2f;background:#faeee9;padding:10px;border-radius:5px;font-size:13px;margin-top:14px}.villa-modal{width:min(790px,calc(100% - 32px));padding:0}.floating-close{position:absolute;z-index:1;right:16px;top:16px;background:#f4e7d3ed}.detail-photo{height:260px;position:relative}.detail-photo>img{height:100%;object-position:center 58%}.detail-photo .card-tag{top:auto;bottom:16px}.detail-main{padding:28px 32px 32px}.detail-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:15px}.detail-heading h2{font-size:35px}.detail-heading .price{text-align:right;white-space:nowrap}.detail-heading .per-night{display:block}.detail-description{font-size:14px;line-height:1.7;color:var(--muted);margin-top:20px}.detail-main>.amenities{font-size:13px}.detail-main>.amenities .icon{width:18px;height:18px}.booking-form{margin-top:24px;padding-top:23px;border-top:1px solid var(--line)}.booking-fields{display:grid;grid-template-columns:1fr 1fr .8fr;gap:12px}.booking-fields>.date-inputs{grid-column:span 2}.booking-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px}.booking-actions>p{font-size:12px;color:var(--muted);max-width:210px}.summary-title{font-size:33px;margin-bottom:20px}.summary-row{display:flex;justify-content:space-between;gap:20px;font-size:14px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--muted)}.summary-row strong{text-align:right;font-weight:500;color:var(--ink)}.summary-row.total{font-size:18px;border-bottom:0;margin-top:8px}.summary-row.total strong{color:var(--brown)}.summary-disclaimer{font-size:12px;line-height:1.7;background:var(--cream);padding:15px;border-radius:6px;margin-top:20px;color:var(--muted)}.summary-buttons{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.summary-buttons .button{flex:1}.complete{text-align:center;padding:35px 0 10px}.complete>.icon{width:50px;height:50px;padding:12px;background:var(--cream);color:var(--brown);border-radius:50%;margin-bottom:20px}.complete h2{font-size:38px;margin-bottom:20px}.complete p{font-size:14px;line-height:1.75;color:var(--muted);max-width:400px;margin:0 auto 25px}.toast{position:fixed;z-index:50;left:50%;transform:translateX(-50%);bottom:24px;padding:14px 24px;border-radius:8px;background:var(--brown);color:#fffaf1;font-size:14px;box-shadow:0 4px 30px #20150733;width:max-content;max-width:calc(100% - 32px)}
@keyframes modal-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.hero{height:580px}.hero-content{padding-top:74px}.hero h1{font-size:78px}.card-photo{height:285px}}
@media(max-width:1150px){.shell{width:calc(100% - 64px)}.desktop-nav{gap:23px}.hero-content{padding-left:45px}.search-bar{left:23px;right:23px;grid-template-columns:1fr 1.1fr .7fr 138px;padding:14px}.search-field{padding-inline:13px;gap:10px}.search-button{padding:14px}.villa-grid{gap:20px}.card-photo{height:230px}.card-cta{font-size:0;gap:0;padding:10px}.card-cta .icon{width:18px;height:18px}.story-copy{padding:38px 30px}.story h2{font-size:31px}.footer-top{gap:25px}.footer nav{gap:18px}.footer-top>p{display:none}}
@media(max-width:850px){.shell{width:calc(100% - 40px)}.site-header{height:90px}.brand-wordmark{font-size:22px}.desktop-nav{display:none}.header-cta{margin-left:auto}.menu-button{display:grid}.mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:12px 24px 22px;border-bottom:1px solid var(--line);gap:2px}.mobile-nav a{padding:12px 0}.hero{height:590px;margin-bottom:117px}.hero-content{padding:53px 35px}.hero h1{font-size:60px}.hero-caption{bottom:95px;right:25px}.search-bar{grid-template-columns:1fr 1fr;gap:13px;bottom:-100px;left:20px;right:20px;padding:16px;min-height:171px}.search-field{height:50px;padding-inline:12px}.date-trigger{border-right:0}.guest-field{border-top:1px solid var(--line);padding-top:15px;height:59px}.search-button{height:51px}.benefits{display:grid;grid-template-columns:1fr 1fr;gap:22px 32px;justify-items:start;padding:25px 25px 34px}.benefit-divider{display:none}.benefits>div{font-size:13px}.collection{padding-top:42px}.section-heading h2{font-size:36px}.section-heading{align-items:start}.collection-count{padding-top:33px}.collection-count small{max-width:130px}.collection-toolbar{align-items:start}.filter-tabs{gap:7px}.filter{padding-inline:13px;font-size:12px}.saved-filter>span:not(:last-child){display:none}.villa-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:33px}.card-photo{height:240px}.villa-card:last-child{display:block}.card-cta{font-size:12px;gap:8px}.story{grid-template-columns:1fr 1fr}.story-copy{padding:32px 25px}.story h2{font-size:27px}.story h2 br{display:none}.story p{font-size:13px}.steps{gap:25px}.steps article{gap:14px}.how{padding-block:52px}.how .section-heading h2{font-size:33px}.how .section-heading>p{max-width:160px}.footer-top{flex-wrap:wrap}.footer nav{margin-left:auto}}
@media(max-width:600px){.shell{width:calc(100% - 32px)}.site-header{height:82px;gap:12px}.brand{gap:10px}.brand-mark{width:27px;height:56px}.brand-mark img{width:80px;height:80px;left:-29px;top:-10px}.brand-wordmark{font-size:20px;letter-spacing:.14em}.brand-wordmark>span{font-size:12px;letter-spacing:.12em}.header-cta{display:none}.hero{height:548px;margin-bottom:142px}.hero-image{border-radius:11px}.hero-image>img{object-position:61% center}.hero-shade{background:linear-gradient(90deg,#0e211ad4,#1722193b),linear-gradient(0deg,#172b1c33,transparent)}.hero-content{padding:41px 25px}.hero .eyebrow{font-size:12px;letter-spacing:.15em;margin-bottom:24px}.hero h1{font-size:clamp(39px,10.6vw,60px);line-height:1.1;margin-bottom:22px;letter-spacing:-.04em}.hero p{font-size:14px;line-height:1.65}.hero p br{display:none}.hero-link{font-size:12px;margin-top:22px}.hero-caption{bottom:143px;right:21px;font-size:12px}.hero-caption span+span{font-size:12px}.search-bar{bottom:-128px;left:13px;right:13px;padding:16px 15px;gap:0;grid-template-columns:1fr 1fr;border-radius:10px;box-shadow:0 10px 25px #3827150a}.search-field{height:68px;padding:8px 9px;gap:10px}.search-field .icon{width:20px;height:20px}.search-field .field-label{font-size:12px;letter-spacing:.08em}.search-field .field-value,.select-wrap select{font-size:13px}.location-field{grid-column:span 2;border-bottom:1px solid var(--line);border-right:0;padding-bottom:15px;height:60px}.date-trigger{border-right:1px solid var(--line);height:65px}.date-trigger .field-chevron{display:none}.guest-field{border-top:0;padding-left:17px;padding-top:8px}.search-button{grid-column:span 2;height:47px;margin-top:10px;font-size:14px}.benefits{padding:20px 4px 29px;gap:18px 10px}.benefits>div{gap:8px;font-size:12px}.benefits .icon{width:18px;height:18px}.collection{padding-top:35px;padding-bottom:38px}.section-heading{display:block}.section-heading .eyebrow{font-size:12px;margin-bottom:10px}.section-heading h2{font-size:32px;line-height:1.18;margin-bottom:11px}.section-heading p{font-size:13px;max-width:300px}.collection-count{padding-top:14px;text-align:left;display:flex;justify-content:space-between;align-items:center;font-size:12px}.collection-count small{max-width:none;margin:0;font-size:12px}.collection-toolbar{margin-top:20px;margin-bottom:22px;gap:8px}.filter-tabs{gap:7px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scrollbar-width:none;max-width:calc(100% - 40px)}.filter{white-space:nowrap;padding:9px 13px;min-height:36px;font-size:12px;flex-shrink:0;gap:6px}.filter .icon{width:14px;height:14px}.saved-filter{position:relative;min-width:34px;justify-content:center}.saved-filter>span:last-child{position:absolute;font-size:12px;width:15px;min-width:15px;height:15px;top:0;right:-1px}.villa-grid{grid-template-columns:1fr;gap:31px}.card-photo{height:265px}.card-content{padding:17px 1px 0}.villa-card h3{font-size:23px;margin-bottom:12px}.card-location{font-size:12px}.card-tag{font-size:12px;top:14px;left:14px}.amenities{font-size:12px;gap:18px}.card-bottom{padding-top:15px;margin-top:18px}.price{font-size:17px}.price-label{font-size:12px}.card-cta{font-size:12px;padding:11px 15px;gap:12px}.story{grid-template-columns:1fr;border-radius:9px}.story-image{min-height:240px}.story-copy{padding:30px 25px 34px}.story-copy .eyebrow{font-size:12px}.story h2{font-size:32px;max-width:315px}.story p{font-size:14px}.story .text-link{font-size:13px}.how{padding-block:39px}.how .section-heading h2{font-size:31px}.how .section-heading>p{max-width:none;margin-top:12px}.steps{grid-template-columns:1fr;gap:20px;margin-top:26px}.steps article{gap:19px;padding-top:20px}.steps h3{font-size:16px}.steps p{font-size:13px;max-width:300px}.step-number{font-size:27px;min-width:31px}.demo-note{align-items:start;padding:14px;margin-top:28px}.demo-note p{font-size:12px}.demo-note .icon{margin-top:2px}.footer-top{padding-block:29px;gap:24px}.footer nav{order:3;width:100%;margin:0;gap:25px;font-size:12px}.back-top{margin-left:auto}.footer-bottom{font-size:12px;padding-block:18px;gap:15px}.modal{padding:23px;max-height:calc(100dvh - 24px);border-radius:12px}.modal-header{gap:7px}.modal-header h2{font-size:28px}.modal-header .eyebrow{font-size:12px}.date-inputs{gap:10px}.date-inputs input{font-size:13px;padding:11px 8px;max-width:100%}.modal-actions .button{font-size:13px;padding:14px}.modal-actions .text-link{font-size:12px}.villa-modal{padding:0}.detail-photo{height:205px}.detail-main{padding:24px 22px}.detail-heading{align-items:start;gap:12px}.detail-heading h2{font-size:27px}.detail-heading .price{font-size:14px;padding-top:7px}.detail-heading .per-night{font-size:12px}.detail-main>.amenities{font-size:12px;gap:10px}.detail-description{font-size:13px}.booking-fields{grid-template-columns:1fr 1fr}.booking-fields>.date-inputs{grid-column:span 2}.booking-label{grid-column:span 2}.booking-guest{font-size:13px}.booking-actions{flex-direction:column;align-items:stretch;gap:17px;margin-top:18px}.booking-actions>p{max-width:none;order:2;text-align:center;font-size:12px}.summary-title{font-size:28px}.summary-row{font-size:12px}.summary-row.total{font-size:16px}.summary-buttons{flex-direction:column;align-items:stretch}.summary-buttons .text-link{align-self:center;order:2;margin-top:6px}.complete h2{font-size:32px}.complete p{font-size:13px}.toast{font-size:12px;padding:12px 18px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.hero p,.section-heading p,.story p,.steps p,.detail-description,.complete p{font-size:1rem}
.benefits>div,.filter,.saved-filter,.text-link,.hero-link,.footer nav,.booking-label,label:has(input),.form-error,.helper,.summary-disclaimer,.demo-note p,.booking-actions>p{font-size:.875rem}
.field-value,.select-wrap select,.booking-guest,.date-inputs input{font-size:.875rem}
.field-label,.search-field .field-label{font-size:.75rem;letter-spacing:.07em}
.brand-wordmark>span{font-size:8px}
.date-trigger .field-value{white-space:normal;line-height:1.3}
.summary-title,.detail-main>.eyebrow{padding-right:35px}
@media(min-width:1151px){.card-cta{font-size:.875rem}}
@media(max-width:850px){.card-cta{font-size:.875rem}.search-field{gap:10px}}
@media(max-width:600px){.hero .eyebrow{font-size:.75rem;letter-spacing:.1em;max-width:245px}.hero-content{padding-top:33px}.hero p{line-height:1.55}.hero-link{margin-top:17px}.hero-caption{display:none}.brand-wordmark>span{font-size:7px}.search-field .field-label{font-size:.75rem;line-height:1.25}.date-trigger{min-height:78px;height:auto}.guest-field{min-height:78px}.search-bar{bottom:-144px}.hero{margin-bottom:163px}.collection-toolbar{align-items:center}.filter{font-size:.875rem}.collection-count{align-items:start;gap:20px}.collection-count small{max-width:170px;text-align:right;font-size:.75rem}.modal-actions .text-link,.modal-actions .button{font-size:.875rem}.summary-row{font-size:.875rem}.footer nav{gap:21px}.field-value{font-size:.875rem!important}.steps p{font-size:1rem}.demo-note{padding:15px}.demo-note p{font-size:.875rem}.story .text-link{font-size:.875rem}.date-inputs input{font-size:1rem}.detail-main>.amenities{gap:12px}.booking-actions>p{font-size:.875rem}.card-cta{padding:10px 12px;gap:8px}}

@media(min-width:851px){.search-bar{grid-template-columns:minmax(300px,1.7fr) minmax(145px,1fr) minmax(100px,.6fr) 138px}}

.guest-field.is-custom{padding-top:0;padding-bottom:0}
.guest-field.is-custom>.icon,.guest-field.is-custom .field-label{display:none}
.guest-field .guest-count-input{display:block;width:100%;min-width:0;height:27px;margin-top:2px;padding:2px 5px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink);font-size:1rem;line-height:1.2}
.guest-field .guest-count-input[aria-invalid="true"]{border-color:#a13e2f}
.search-button{width:100%;min-width:0;white-space:nowrap;flex-wrap:nowrap;gap:8px;padding-inline:12px;align-self:center}
@media(min-width:851px){.search-button{height:55px}}
@media(min-width:601px) and (max-width:850px){.search-button{height:59px}}
@media(max-width:600px){
  .search-bar{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(94px,auto)}
  .location-field{grid-column:span 3}
  .search-button{grid-column:auto;height:78px;margin-top:0;padding:8px 4px;gap:4px;font-size:.75rem;align-self:stretch}
  .search-button .icon{width:16px;height:16px}
}

/* Match the search fields to the primary search action */
.search-field{background:var(--brown);color:#fffaf4;border-right-color:rgba(247,236,220,.24)}
.search-field>.icon,.search-field .select-wrap>.icon{color:#f0dfc9}
.search-field .field-label{color:#e6d2b8}
.search-field .field-value,.search-field .select-wrap select{color:#fffaf4}
.search-field .select-wrap select option{background:var(--surface);color:var(--ink)}
.location-field{border-bottom-color:rgba(247,236,220,.24)}
.guest-count-input{background:var(--brown)!important;color:#fffaf4!important;border-color:rgba(247,236,220,.42)!important}
.guest-count-input::placeholder{color:#e6d2b8}

/* Refined Sako Stay wordmark */
.brand{gap:14px}
.brand-wordmark{display:block;font-family:Georgia,'Times New Roman',serif;font-size:26px;font-weight:400;letter-spacing:0;line-height:1.02;transform:translateY(1px);white-space:nowrap}
.brand-wordmark>.brand-primary{display:flex;align-items:baseline;gap:.12em;margin-top:0;font-family:Georgia,'Times New Roman',serif;font-size:1em;font-weight:400;letter-spacing:0;line-height:1.08;white-space:nowrap;opacity:1;transform:scaleY(1.05);transform-origin:left center}
.brand-primary{display:flex;align-items:baseline;gap:.12em;white-space:nowrap}
.brand-primary>span{display:inline;font-family:Georgia,'Times New Roman',serif;line-height:1}
.brand-sako{font-size:1em;font-weight:600;letter-spacing:.18em}
.brand-stay{font-size:.92em;font-weight:400;letter-spacing:.16em}
.brand-tagline{display:inline-flex!important;align-items:center;margin-top:10px;padding:4px 10px 5px;background:var(--brown);border:1px solid #6d4c31;border-radius:9px;color:#f7ecdc;font-family:Arial,Helvetica,sans-serif!important;font-size:11px!important;font-weight:500!important;letter-spacing:.09em!important;line-height:1.3!important;text-transform:uppercase;white-space:nowrap;opacity:1;box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}
.footer-brand .brand-wordmark{font-size:24px}
@media(max-width:850px){.brand-wordmark{font-size:23px}.brand-tagline{font-size:10px!important;letter-spacing:.07em!important;margin-top:8px;padding:4px 9px 5px}}
@media(max-width:600px){.brand{gap:10px}.brand-wordmark{font-size:20px}.brand-primary{transform:scaleY(1.04)}.brand-sako{letter-spacing:.12em}.brand-stay{letter-spacing:.11em}.brand-tagline{font-size:10px!important;letter-spacing:.045em!important;margin-top:7px;padding:4px 8px 5px;border-radius:8px}.footer-brand .brand-wordmark{font-size:20px}}

/* Refine the compact brand mark and navigation surfaces */
.brand-mark{width:27px;height:45px;transform:translateY(1px)}
.brand-mark img{width:66px;height:66px;left:-24px;top:-8px}
.brand-tagline{margin-top:7px;padding:3px 8px 3px;border-radius:7px;font-size:9px!important;letter-spacing:.07em!important;line-height:1.15!important}
.desktop-nav{gap:8px}
.desktop-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 13px;background:var(--brown);border-radius:9px;color:#fffaf4;font-size:13px;transition:background .2s,transform .2s}
.desktop-nav a:hover{background:var(--brown-hover);color:#fffaf4;transform:translateY(-1px)}
.desktop-nav .nav-active{background:var(--brown);color:#fffaf4}
.desktop-nav .nav-active:after{display:none}
.mobile-nav a{display:block;background:var(--brown);border-radius:9px;color:#fffaf4;padding:11px 14px}
.mobile-nav a:hover{background:var(--brown-hover);color:#fffaf4}
.footer nav{gap:8px;flex-wrap:wrap}
.footer nav a{display:inline-flex;align-items:center;background:var(--brown);border-radius:9px;color:#fffaf4;padding:9px 12px}
.footer nav a:hover{background:var(--brown-hover);color:#fffaf4;text-decoration:none}

/* Give each villa price its own rounded brown badge */
.card-bottom>div:first-child{display:inline-flex;flex-direction:column;justify-content:center;background:var(--brown);border-radius:10px;padding:8px 12px;min-height:52px}
.card-bottom>div:first-child .price-label{color:#e6d2b8;margin-bottom:2px}
.card-bottom>div:first-child .price{color:#fffaf4}
.card-bottom>div:first-child .per-night{color:#e6d2b8}
.card-cta{border-radius:10px}
@media(max-width:1150px){.desktop-nav a{padding-inline:10px;font-size:12px}}
@media(max-width:600px){.brand-mark{width:22px;height:36px}.brand-mark img{width:53px;height:53px;left:-19px;top:-6px}.brand-tagline{margin-top:6px;padding:3px 7px 3px;border-radius:7px;font-size:8px!important;letter-spacing:.04em!important}.desktop-nav{gap:6px}.card-bottom>div:first-child{padding-inline:10px;min-height:50px}}

/* Separate the search controls into matching rounded cards */
.search-bar{gap:12px}
.search-field{border:1px solid rgba(247,236,220,.22);border-radius:10px;box-shadow:0 5px 14px rgba(56,39,21,.08)}
.search-button{border-radius:10px;box-shadow:0 5px 14px rgba(56,39,21,.12)}
@media(max-width:850px){.guest-field{border-top:1px solid rgba(247,236,220,.22)}}

/* Restore the earlier balanced S mark and tighten the card proportions */
.brand-mark{width:36px;height:70px;transform:none}
.brand-mark img{width:103px;height:103px;left:-37px;top:-14px}
.brand-tagline{margin-top:2px}
.search-field{height:52px;padding-block:3px}
@media(max-width:850px){.search-field{height:52px;padding-block:3px}.guest-field{height:52px;padding-top:8px}}
@media(max-width:600px){.brand-mark{width:27px;height:56px}.brand-mark img{width:80px;height:80px;left:-29px;top:-10px}.brand-tagline{margin-top:2px}.search-field{height:60px;min-height:60px;padding-block:5px}.location-field{height:58px}.date-trigger,.guest-field{height:60px;min-height:60px}.search-button{height:60px}}

/* Apply the supplied reference's clean catalogue rhythm without changing copy */
.search-bar{padding:14px;gap:12px;border-radius:14px;box-shadow:0 14px 34px rgba(56,39,21,.14)}
.search-field{box-shadow:0 3px 10px rgba(56,39,21,.08)}
.villa-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.villa-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 8px 22px rgba(56,39,21,.08)}
.card-photo{height:188px;border-radius:0}
.card-content{padding:16px 16px 18px}
.card-bottom{display:grid;grid-template-columns:1fr;align-items:stretch;gap:10px;margin-top:16px;padding-top:15px}
.card-bottom>div:first-child{width:max-content;min-width:0}
.card-cta{width:100%;justify-content:center;background:var(--brown);border-color:var(--brown);color:#fffaf4}
.card-cta:hover{background:var(--brown-hover);border-color:var(--brown-hover);color:#fffaf4}
.story{box-shadow:0 8px 22px rgba(56,39,21,.07)}
@media(max-width:1150px){.villa-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card-photo{height:200px}}
@media(max-width:850px){.villa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-photo{height:220px}.card-content{padding:15px 14px 16px}}
@media(max-width:600px){.villa-grid{grid-template-columns:1fr}.card-photo{height:265px}.card-content{padding:17px 16px 18px}.search-bar{padding:12px;gap:12px;border-radius:12px}}

/* Reference-inspired clean surfaces: keep color only on primary action */
.desktop-nav a{background:transparent;color:var(--ink);border-radius:0;padding:10px 4px}
.desktop-nav a:hover{background:transparent;color:var(--brown);transform:none}
.desktop-nav .nav-active{background:transparent;color:var(--brown)}
.desktop-nav .nav-active:after{display:block;bottom:2px;width:22px;height:2px}
.mobile-nav a{background:transparent;color:var(--ink);border-radius:0;padding:11px 0}
.mobile-nav a:hover{background:transparent;color:var(--brown)}
.brand-tagline{background:transparent;border:0;box-shadow:none;color:var(--brown);padding-inline:0}
.search-field{background:transparent;color:var(--ink);border-color:var(--line);box-shadow:none}
.search-field>.icon,.search-field .select-wrap>.icon{color:var(--brown)}
.search-field .field-label{color:var(--muted)}
.search-field .field-value,.search-field .select-wrap select{color:var(--ink)}
.guest-count-input{background:transparent!important;color:var(--ink)!important;border-color:var(--line)!important}
.guest-count-input::placeholder{color:var(--muted)}
.card-bottom>div:first-child{background:transparent;padding:0;min-height:0;border-radius:0}
.card-bottom>div:first-child .price-label{color:var(--muted)}
.card-bottom>div:first-child .price{color:var(--ink)}
.card-bottom>div:first-child .per-night{color:var(--muted)}

/* Payment and contact blocks from the supplied reference */
.payment-strip{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:28px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:28px 32px;margin-bottom:28px;box-shadow:0 8px 22px rgba(56,39,21,.06)}
.payment-copy h2{font-size:28px;margin-bottom:6px}
.payment-copy p{font-size:14px;color:var(--muted)}
.payment-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.payment-list span{display:grid;place-items:center;min-height:42px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--brown);font-size:14px;font-weight:600;letter-spacing:.02em}
.footer{background:var(--surface);border-top:1px solid var(--line)}
.footer-top{display:grid;grid-template-columns:1.35fr repeat(4,minmax(0,1fr)) auto;align-items:start;gap:28px;padding-block:44px}
.footer-brand-block>p{color:var(--muted);font-size:13px;line-height:1.65;margin-top:16px}
.footer-column h3{font-family:var(--sans);font-size:13px;font-weight:600;margin-bottom:13px;color:var(--ink)}
.footer-column nav{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.footer-column nav a,.footer-contact a,.footer-contact span,.footer-social a{display:block;background:transparent!important;color:var(--muted);border-radius:0;padding:0;font-size:13px;line-height:1.45}
.footer-column nav a:hover,.footer-contact a:hover,.footer-social a:hover{color:var(--brown);text-decoration:none}
.footer-social{display:flex;flex-direction:column;gap:8px}
.footer-social h3{margin-bottom:5px}
.footer .back-top{justify-self:end}
@media(max-width:850px){.payment-strip{grid-template-columns:1fr;padding:24px}.footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}.footer-brand-block{grid-column:1/-1}.footer .back-top{justify-self:end}}
@media(max-width:600px){.payment-strip{padding:22px 18px}.payment-copy h2{font-size:25px}.payment-list{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-top{grid-template-columns:repeat(2,minmax(0,1fr));padding-block:32px}.footer-brand-block{grid-column:1/-1}.footer-contact,.footer-social{grid-column:span 1}.footer .back-top{grid-column:2;justify-self:end}.footer-brand-block>p{font-size:12px}}

/* Tighten the wordmark, search controls, and benefit icons */
.brand-tagline{margin-top:0;transform:translateY(-1px)}
.search-bar{padding:10px 12px}
.search-field{height:50px;padding-block:1px}
.field-label{margin-bottom:2px;line-height:1.1}
.field-value,.select-wrap select{line-height:1.2}
.collection .section-heading h2{font-family:var(--sans);font-size:34px;font-weight:700;letter-spacing:-.035em;line-height:1.15}
.collection .section-heading p{font-size:15px;line-height:1.5;max-width:650px}
.benefits>div{gap:12px}
.benefit-icon{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:50%;background:var(--cream);border:1px solid var(--line);color:var(--brown)}
.benefit-icon .icon{width:22px;height:22px}
@media(max-width:850px){.search-field{height:50px;padding-block:1px}.guest-field{height:50px;padding-top:6px}}
@media(max-width:600px){.brand-tagline{transform:translateY(-1px)}.search-bar{padding:10px;gap:10px}.search-field{height:56px;min-height:56px;padding-block:4px}.location-field{height:54px;min-height:54px}.date-trigger,.guest-field{height:56px;min-height:56px}.search-button{height:56px}.collection .section-heading h2{font-size:29px}.collection .section-heading p{font-size:14px}.benefit-icon{width:40px;height:40px}.benefit-icon .icon{width:20px;height:20px}}

/* Final spacing and aligned booking cards */
.brand-primary{line-height:1.02}
.brand-tagline{margin-top:-1px;line-height:1.05!important}
.collection .section-heading h2{margin-bottom:2px}
.collection .section-heading p{margin-top:0}
.how .section-heading h2{margin-bottom:0}
.payment-list .pay-logo{font-family:var(--sans);font-style:normal;position:relative;letter-spacing:-.03em;box-shadow:0 2px 5px rgba(56,39,21,.05);padding:8px 12px}
.payment-list .pay-logo img{width:auto;max-width:116px;height:27px;object-fit:contain}
.payment-list:has(.payment-logos-reference){display:flex;align-items:center;justify-content:center}.payment-logos-reference{width:min(488px,100%);height:auto;max-height:180px;object-fit:contain;border-radius:4px}
.payment-strip:has(.payment-logos-reference){display:flex;justify-content:center;padding:18px 28px}.payment-strip:has(.payment-logos-reference) .payment-copy{display:none}.payment-logos-reference{mix-blend-mode:multiply}
.pay-bca{color:#1764a7!important;font-size:18px!important;font-weight:800!important}
.pay-mandiri{color:#174b9b!important;font-size:16px!important;font-weight:700!important}
.pay-bni{color:#f17b2a!important;font-size:18px!important;font-weight:800!important}
.pay-bri{color:#164f9d!important;font-size:18px!important;font-weight:800!important}
.pay-visa{color:#1b3f8f!important;font-size:18px!important;font-style:italic!important;font-weight:800!important}
.pay-gopay{color:#1e9fc4!important;font-size:17px!important;font-weight:800!important}
.pay-ovo{color:#5b2b88!important;font-size:18px!important;font-weight:800!important}
.pay-dana{color:#168ed0!important;font-size:17px!important;font-weight:800!important}
.pay-linkaja{color:#e53935!important;font-size:16px!important;font-weight:800!important}
.pay-mastercard{color:#2f2923!important;font-size:10px!important;font-weight:700!important;gap:0!important}
.pay-mastercard i,.pay-mastercard b{display:block;width:19px;height:19px;border-radius:50%;position:absolute;top:7px}
.pay-mastercard i{background:#eb332d;left:calc(50% - 19px)}.pay-mastercard b{background:#f5a623;left:50%;mix-blend-mode:multiply}.pay-mastercard em{font-style:normal;margin-top:20px}
.card-bottom{align-items:flex-end}.card-cta{white-space:nowrap;min-width:132px;justify-content:center}
.search-tabs{position:absolute;z-index:3;left:32px;bottom:57px;width:min(540px,calc(100% - 64px));height:46px;display:grid;grid-template-columns:repeat(3,1fr);background:transparent;border-radius:12px 12px 0 0;overflow:hidden}
.search-tab{display:flex;align-items:center;justify-content:center;gap:9px;background:transparent;color:var(--brown);font-size:14px;font-weight:600;border-right:1px solid rgba(86,51,30,.22);transition:background .2s,color .2s}
.search-tab:last-child{border-right:0}.search-tab:hover,.search-tab.active{background:#6b4328;color:#fffaf4}.search-tab .icon{width:18px;height:18px}
@media(max-width:600px){.collection .section-heading h2{margin-bottom:2px}.collection .section-heading p{margin-top:0}.card-bottom{align-items:stretch;flex-wrap:wrap}.card-bottom>div{min-width:0}.card-cta{flex:1;min-width:145px}}
@media(max-width:600px){.search-tabs{left:10px;bottom:143px;width:calc(100% - 20px);height:44px;border-radius:10px 10px 0 0}.search-tab{font-size:12px;gap:6px}.search-tab .icon{width:16px;height:16px}.search-bar{border-top-left-radius:0;border-top-right-radius:0}}

/* Warm beige canvas and controls */
:root{--paper:#ead7bc;--surface:#f1dfc7;--cream:#dcc3a3;--line:#cdb292}
body{background:var(--paper)}
.search-tabs{background:var(--cream)}
.search-tab{color:var(--brown)}

/* Refine hero scale and visually join the Villa tab to Destinasi */
.hero h1{font-size:clamp(39px,4.25vw,62px)}
.search-tabs{border-bottom-left-radius:0}
.search-bar{border-top-left-radius:0}
@media(max-width:600px){.hero h1{font-size:clamp(35px,9vw,47px)}.hero{margin-bottom:24px}.search-bar{display:none}.search-tabs{left:16px;right:16px;bottom:0;width:auto;height:58px;border-radius:12px}.search-tab{font-size:14px}.search-tab .icon{width:19px;height:19px}}
.search-tab{line-height:1;padding:0;align-items:center;justify-content:center}
.search-tab{pointer-events:none;border:1px solid rgba(86,51,30,.16);margin:4px;background:rgba(255,255,255,.18);border-radius:8px}
.search-tab:first-child{margin-left:4px}.search-tab:last-child{margin-right:4px}
.collection{padding-top:30px;padding-bottom:30px}.benefits{padding-top:24px}
@media(max-width:600px){.collection{padding-top:24px;padding-bottom:24px}.benefits{padding-top:18px}}

/* Final clean luxury polish */
.search-tabs{background:transparent;backdrop-filter:none}
.search-tab{background:rgba(86,51,30,.26);border-color:rgba(255,255,255,.42);color:#fffaf2;text-shadow:0 1px 2px rgba(31,18,10,.42);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.hero-image{background:var(--brown)}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;object-fit:cover}.hero-slide.active{opacity:1}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}
.card-slide-track{display:block;position:relative;width:100%;height:100%}.card-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.6s cubic-bezier(.22,.61,.36,1);will-change:opacity}.card-slide.active{opacity:1}@media (prefers-reduced-motion:reduce){.card-slide{transition:none}}
.hero-title-mobile{display:none}

/* Mobile: center the brand and show the useful search fields directly */
@media(max-width:600px){
  .site-header{position:relative}
  .site-header>.brand{position:absolute;left:50%;transform:translateX(-50%);z-index:2}
  .search-tabs{display:none}
  .search-bar{display:grid;bottom:-128px}
  .hero{height:480px;margin-bottom:145px}
  .hero-title-desktop{display:none}.hero-title-mobile{display:inline}
  .hero h1{font-size:clamp(34px,9.2vw,42px);line-height:1.06;letter-spacing:-.035em;max-width:330px}
  .hero-title-mobile em{display:inline-block;margin-top:3px;line-height:1.04}
  .date-trigger,.guest-field,.search-button{height:66px;min-height:66px}
  .date-trigger>span,.guest-field>span{display:flex;align-items:center;height:100%;min-width:0}
  .date-trigger .field-value,.guest-field .select-wrap select{line-height:1.2;white-space:nowrap}
  .search-button{align-self:center}
}
.brand-tagline{margin-top:-5px!important}
.how .section-heading>p,.footer-brand-block>p{display:none}

/* Direct date-range calendar */
.date-modal{width:min(440px,calc(100% - 24px));padding:24px}
.date-modal .modal-header{align-items:center;margin-bottom:12px}
.date-modal .modal-header h2{font-size:27px}
.calendar-hint,.calendar-selection{font-size:14px;line-height:1.5;color:var(--muted)}
.calendar-navigation{display:flex;align-items:center;justify-content:space-between;margin:16px 0 12px}
.calendar-navigation h3{font-size:17px;font-weight:600}
.calendar-navigation .icon-button{font-size:28px}
.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.calendar-weekdays{margin-bottom:8px;text-align:center;font-size:13px;color:var(--muted)}
.calendar-day{min-width:0;min-height:42px;padding:6px 0;border-radius:8px;background:transparent;font-size:15px}
.calendar-day:not(:disabled):hover{background:var(--cream)}
.calendar-day[aria-current="date"]{box-shadow:inset 0 0 0 1px var(--brown)}
.calendar-day.in-range{background:var(--cream);border-radius:3px}
.calendar-day.is-selected,.calendar-day.is-selected:hover{background:var(--brown);color:#fffaf4}
.calendar-day:disabled{opacity:.3;cursor:default}
.calendar-selection{min-height:22px;margin-top:16px}
.date-modal .modal-actions{margin-top:14px}
@media(max-width:400px){.date-modal{padding:16px}.date-modal .modal-header h2{font-size:24px}.calendar-day{min-height:38px}.calendar-weekdays,.calendar-days{gap:2px}}

/* Property icons and WhatsApp assistance */
.search-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
.search-tab.admin-whatsapp{pointer-events:auto}
.search-tab.admin-whatsapp:hover{background:var(--brown-hover)}

/* Keep the primary booking action visible as a brown button on every villa card. */
.card-bottom .card-cta{display:flex!important;visibility:visible!important;opacity:1!important;background:var(--brown)!important;color:#fffaf4!important;border:1px solid var(--brown)!important;border-radius:10px!important;align-items:center;justify-content:center;font-size:14px!important;gap:8px;min-height:44px}
.card-bottom .card-cta:hover{background:var(--brown-hover)!important;border-color:var(--brown-hover)!important}

/* Destination-only search in the hero. */
.search-bar{grid-template-columns:minmax(0,1fr) minmax(140px,190px);min-height:76px}
.search-bar .location-field{border-right:0}
.search-bar .search-button{grid-column:auto;margin-top:0;height:54px;align-self:center;font-size:14px;padding-inline:14px}
@media(max-width:600px){.search-bar{grid-template-columns:minmax(0,1fr) 122px;bottom:-38px;padding:10px;gap:8px;min-height:76px}.hero{margin-bottom:68px}.search-bar .location-field{grid-column:1 / 2;height:54px;min-height:54px;min-width:0;padding-inline:10px;gap:8px}.search-bar .search-button{grid-column:2 / 3;height:54px;min-height:54px;padding-inline:8px;font-size:13px;gap:5px}}

.booking-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}
.booking-option{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-radius:10px;background:var(--brown);color:#fffaf4;font-weight:600;font-size:14px}
.booking-option:hover{background:var(--brown-hover)}
.booking-option .icon{width:17px;height:17px}
.booking-link-note{margin-top:16px;color:var(--muted);font-size:13px;line-height:1.5}
@media(max-width:600px){.booking-options{grid-template-columns:1fr}.booking-option{min-height:50px}}

/* White and brown maroon brand palette. */
:root{--paper:#ffffff;--surface:#ffffff;--cream:#f8f1f2;--line:#e6d9dc;--ink:#291b20;--muted:#68545a;--brown:#65313d;--brown-hover:#804352}
.hero-shade{background:linear-gradient(90deg,rgba(48,16,27,.73),rgba(55,24,33,.28) 62%,rgba(55,24,33,.06)),linear-gradient(0deg,rgba(47,17,27,.33),transparent 40%)}
.card-tag{background:rgba(255,255,255,.94);color:var(--brown)}
.save-button{background:rgba(255,255,255,.94);color:var(--brown)}
.benefits>div,.desktop-nav a{color:var(--muted)}
.filter:hover:not(.active){border-color:var(--brown)}
.search-summary{color:var(--muted)}
.hero h1 em,.hero p,.hero-caption,.hero-link,.eyebrow.light{color:#ffffff}
.card-bottom>div:first-child .price-label,.card-bottom>div:first-child .per-night{color:var(--muted)}
.story h2 em{color:var(--brown)}

/* Logo proportions and lettering from the Sako Stay reference. */
.brand{gap:9px;color:#4e2e1f}
.brand-wordmark,.footer-brand .brand-wordmark{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;font-family:Arial,Helvetica,sans-serif;font-size:27px;line-height:.95;letter-spacing:0;transform:none}
.brand-wordmark>.brand-sako,.brand-wordmark>.brand-stay{display:block;font-family:Arial,Helvetica,sans-serif;letter-spacing:-.045em;line-height:1;transform:none;opacity:1;margin:0}
.brand-wordmark>.brand-sako{font-size:1em;font-weight:700}
.brand-wordmark>.brand-stay{font-size:1.06em;font-weight:300;letter-spacing:-.055em;margin-top:2px}
@media(max-width:850px){.brand-wordmark,.footer-brand .brand-wordmark{font-size:24px}}
@media(max-width:600px){.brand{gap:7px}.brand-wordmark,.footer-brand .brand-wordmark{font-size:21px}}

/* Use the supplied complete logo without redrawing its lettering or mark. */
.brand-logo-frame{display:block;position:relative;width:110px;height:65px;overflow:hidden;flex:none}
.brand-logo{position:absolute;max-width:none;width:138px;height:auto;left:-23px;top:-17px;mix-blend-mode:multiply}
@media(max-width:600px){.brand-logo-frame{width:90px;height:52px}.brand-logo{width:111px;left:-18px;top:-14px}}

/* Inverted chocolate and cream palette from the supplied logo. */
:root{--paper:#33150a;--surface:#422115;--cream:#502a1b;--line:#755242;--ink:#fff8ec;--muted:#d9c7b7;--brown:#fff4e4;--brown-hover:#e6d4bd;color-scheme:dark}
.brand-logo-frame{width:111px;height:65px}
.brand-logo{width:376px;left:-134px;top:-49px;mix-blend-mode:normal}
.footer{background:var(--paper)}
.footer-bottom{border-color:var(--line)}
.hero-shade{background:linear-gradient(90deg,rgba(28,11,5,.77),rgba(40,16,8,.32) 62%,rgba(40,16,8,.08)),linear-gradient(0deg,rgba(28,11,5,.36),transparent 40%)}
.hero h1 em,.hero p,.hero-caption,.hero-link,.eyebrow.light{color:var(--ink)}
.card-tag,.save-button{background:var(--brown);color:var(--paper)}
.benefits>div,.desktop-nav a{color:var(--muted)}
.button,.search-button,.booking-option,.filter.active,.card-bottom .card-cta{color:var(--paper)!important}
.button-outline{color:var(--brown)!important}
.button-outline:hover{background:var(--brown-hover);color:var(--paper)!important}
.card-bottom>div:first-child .price,.card-bottom>div:first-child .price-label,.card-bottom>div:first-child .per-night{color:var(--paper)}
.card-bottom>div:first-child .price-label,.card-bottom>div:first-child .per-night{opacity:.78}
.payment-strip:has(.payment-logos-reference){background:#fff8ec}
.modal::backdrop{background:#180802bb}
@media(max-width:600px){.brand-logo-frame{width:90px;height:52px}.brand-logo{width:304px;left:-108px;top:-40px}}

/* Cream pricing on a dark badge, including the villa details. */
.card-bottom>div:first-child{background:#422115}
.card-bottom>div:first-child .price-label,.card-bottom>div:first-child .price,.card-bottom>div:first-child .per-night,.detail-heading .price,.detail-heading .price-label,.detail-heading .per-night{color:#fff4e4;opacity:1}

/* A single persistent route to the Sako Stay admin. */
.whatsapp-chat{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:40;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 12px;border-radius:100px;background:#ffd43b;color:#33150a;box-shadow:0 8px 26px #140b08a6;font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap}
.whatsapp-chat:hover{background:#ffdf66;transform:translateY(-2px)}
.whatsapp-chat img{width:22px;height:22px;object-fit:contain;filter:brightness(0) saturate(100%) invert(8%) sepia(21%) saturate(2181%) hue-rotate(337deg) brightness(94%) contrast(98%)}
.whatsapp-chat:focus-visible{outline:3px solid #fff4e4;outline-offset:4px}
@media(max-width:600px){.whatsapp-chat{position:fixed;left:var(--mobile-chat-left,39px);right:auto;top:var(--mobile-chat-top,50vh);bottom:auto;margin:0;transform:none;min-height:44px;padding:8px 11px;font-size:12px}.whatsapp-chat:hover{transform:none}.whatsapp-chat img{width:22px;height:22px}}

/* Apartment image supplied for the upcoming collection. */
.apartment-preview{width:min(100%,390px);margin-top:24px;border-radius:12px;overflow:hidden;background:var(--surface)}
.apartment-preview img{width:100%;height:390px;object-fit:cover;object-position:center 63%}
@media(max-width:600px){.apartment-preview{width:100%;margin-top:20px}.apartment-preview img{height:330px;object-position:center 66%}}

/* Let the About copy fill its panel after removing the illustration. */
.story{grid-template-columns:1fr;min-height:0}
.story-copy{max-width:800px}

/* Mobile header: brand on the left, menu control on the right. */
@media(max-width:600px){
  .site-header{justify-content:space-between}
  .site-header>.brand{position:static;left:auto;transform:none;z-index:auto}
  .site-header>.menu-button{margin-left:auto;flex-shrink:0}
}

/* Catalog photo choices and location */
.card-thumbnails{display:flex;gap:8px;padding:10px 12px 0;overflow-x:auto;scrollbar-width:thin}.card-thumbnail{flex:0 0 calc((100% - 24px)/4);min-width:0;padding:0;border:2px solid #ad846580;border-radius:8px;background:transparent;overflow:hidden;opacity:.72}.card-thumbnail img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.card-thumbnail.active{border-color:var(--brown);opacity:1}.card-thumbnail:hover{opacity:1}.card-map-link{display:inline-flex;align-items:center;gap:7px;font-size:13px;margin:4px 0 14px;text-decoration:underline;text-underline-offset:4px}.card-map-link .icon{width:16px;height:16px}
