:root{--ink:#183d32;--paper:#fafaf7;--muted:#59675f;--line:#d6ded7;--accent:#bdce91}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}button,a,summary{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #af7b21;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1}h2{font-size:clamp(2.3rem,4vw,4rem);letter-spacing:-.04em}h3{font-size:2rem}em{font-weight:400}p{max-width:65ch}.eyebrow{font-size:.78rem;letter-spacing:.19em;line-height:1.6;font-weight:600;margin-bottom:22px}.section{padding:95px max(6vw,24px)}header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:var(--paper);border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;font-size:3rem;line-height:.7;letter-spacing:-.09em;display:inline-flex;flex-direction:column;align-items:center}.brand span{font-family:Arial,sans-serif;letter-spacing:.3em;font-size:.6rem;margin-top:14px;padding-left:5px}nav{display:flex;gap:34px;font-size:.9rem}nav a:hover{border-bottom:1px solid}.location{font-size:.75rem;letter-spacing:.12em}.hero{height:min(760px,76vw);min-height:565px;position:relative;color:white;overflow:hidden;margin:0 20px}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 55%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,28,22,.78),rgba(10,28,22,.1) 80%),linear-gradient(0deg,rgba(10,28,22,.3),transparent 40%)}.hero-copy{position:absolute;left:5vw;top:50%;transform:translateY(-50%)}h1{font-size:clamp(3.5rem,6.1vw,6.5rem);letter-spacing:-.045em;line-height:1.02;margin-bottom:25px}.hero-copy>p:not(.eyebrow){font-size:1rem;line-height:1.8}.button{display:inline-flex;align-items:center;gap:50px;padding:14px 23px;margin-top:28px;border:1px solid #ffffff9c;font-size:.9rem}.button:hover{background:white;color:var(--ink)}.hero-caption{position:absolute;bottom:27px;left:5vw;right:5vw;display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.13em}.intro{display:grid;grid-template-columns:1fr 2fr;gap:50px;border-bottom:1px solid var(--line)}.intro h2{font-size:clamp(2.2rem,3.4vw,3.5rem);margin-bottom:28px}.intro p:not(.eyebrow){color:var(--muted);max-width:720px}.section-heading{display:flex;justify-content:space-between;gap:35px;align-items:flex-end;margin-bottom:50px}.section-heading>p{font-size:.95rem;color:var(--muted);padding-bottom:4px}.collection-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.collection-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;padding:22px 0;display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-family:Georgia,serif;font-size:1.6rem;text-align:left}.collection-tabs button+button{padding-left:30px}.collection-tabs button[aria-selected=true]{border-bottom-color:var(--ink);color:var(--ink)}.collection-tabs span{font: .75rem Arial,sans-serif;letter-spacing:.1em;padding-right:30px}.collection-intro{display:flex;gap:40px;justify-content:space-between;padding:34px 0}.collection-intro h3{font-size:1.6rem;min-width:30%}.collection-intro p{color:var(--muted);font-size:.95rem;max-width:690px}.villa-options{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px}.villa-options button{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:30px;padding:10px 20px;font-size:.88rem}.villa-options button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.villa-options button:hover{box-shadow:0 0 0 1px var(--ink)}.villa-view{display:grid;grid-template-columns:1.4fr 1fr;gap:55px;align-items:start}.photo-button{display:block;width:100%;border:0;padding:0;background:#e4e8e1;position:relative}.photo-button>img{width:100%;height:470px;object-fit:cover;display:block}.enlarge{position:absolute;bottom:18px;left:20px;padding:7px 13px;color:white;background:#183d32dd;font-size:.78rem}.gallery-controls{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;margin:14px 0;gap:12px}.gallery-controls>div{display:flex;align-items:center;gap:14px;white-space:nowrap}.gallery-controls button,dialog button{width:40px;height:40px;border:1px solid var(--line);background:transparent;color:inherit;font-size:1.1rem}.thumbnails{display:flex;gap:8px;overflow:auto;padding:3px 2px 7px}.thumbnails button{width:70px;height:52px;flex-shrink:0;padding:0;border:2px solid transparent;background:none;opacity:.6}.thumbnails button[aria-pressed=true]{border-color:var(--ink);opacity:1}.thumbnails img{width:100%;height:100%;object-fit:cover}.villa-info{padding:15px 0}.villa-info .eyebrow{margin-bottom:15px}.villa-info h3{font-size:3rem;letter-spacing:-.03em;margin-bottom:22px}.villa-info>p:not(.eyebrow){color:var(--muted);font-size:.97rem}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin:28px 0}.stats div{display:flex;flex-direction:column-reverse}.stats dt{font-size:.76rem;color:var(--muted);margin-top:7px}.stats dd{margin:0;font-family:Georgia,serif;font-size:1.8rem;line-height:1.1}.features{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.features span{font-size:.8rem;background:#e8ede6;padding:5px 10px}.villa-info details{border-top:1px solid var(--line)}summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;list-style:none;font-size:.93rem;padding:19px 0}summary::-webkit-details-marker{display:none}summary span{font-size:1.2rem;line-height:1}details[open]>summary span{transform:rotate(45deg)}details p{color:var(--muted);font-size:.9rem;padding-bottom:20px}#villa-areas p{margin-bottom:8px;padding-bottom:0}#villa-areas{padding-bottom:20px}.collection-note{margin-top:28px;padding:20px 26px;background:#edf0e9;color:var(--muted);font-size:.9rem}.approach{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:white;margin:0 20px}.approach-image img{width:100%;height:100%;min-height:650px;object-fit:cover}.approach-copy{padding:80px 6vw}.approach-copy h2{font-size:clamp(2.4rem,3.5vw,4rem);margin-bottom:35px}.approach-copy p:not(.eyebrow){color:#dbe3dc;font-size:.95rem;margin-top:22px}.signature{font-family:Georgia,serif;font-style:italic;font-size:1.5rem;padding-top:30px;margin-top:30px;border-top:1px solid #ffffff40;color:var(--accent)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.service-grid article{border-top:1px solid var(--ink);padding-top:24px}.service-number{font-size:.8rem;color:var(--muted)}.service-grid h3{font-size:2.2rem;margin:35px 0 25px}.service-grid p{font-size:.95rem;color:var(--muted)}.service-grid details{border-top:1px solid var(--line);margin-top:27px}.care{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:70px;padding-bottom:85px}.care h2{font-size:2.8rem;margin-bottom:25px}.care>div>p:not(.eyebrow){color:var(--muted);font-size:.9rem}.care-list{border-top:1px solid var(--line)}.care-list details{border-bottom:1px solid var(--line)}.care-list summary{padding:23px 0}footer{padding:50px 6vw;background:var(--ink);color:white;display:flex;justify-content:space-between;align-items:center;gap:30px}footer p,footer>a:last-child{font-size:.8rem}dialog{padding:60px 24px 25px;background:#12271f;color:white;border:0;width:min(1250px,96vw);max-height:95vh}dialog::backdrop{background:#09150ee8}dialog img{display:block;max-width:100%;width:100%;max-height:70vh;object-fit:contain}dialog p{text-align:center;max-width:none;margin-top:15px;font-size:.9rem}#close-lightbox{position:absolute;right:24px;top:12px;width:auto;height:35px;padding:0 12px;font-size:.9rem}dialog>div{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:12px}.skip{position:absolute;left:20px;top:-100px;z-index:10;padding:12px;background:white}.skip:focus{top:10px}@media(min-width:1600px){main,header,footer{max-width:1800px;margin-left:auto;margin-right:auto}}@media(max-width:1000px){.location{display:none}.villa-view{gap:30px;grid-template-columns:1.15fr 1fr}.photo-button>img{height:420px}.stats{gap:8px}.stats dd{font-size:1.5rem}.approach-copy{padding:55px 5vw}.approach-image img{min-height:580px}.service-grid{gap:25px}footer p{max-width:35ch}}@media(max-width:700px){header{height:85px;padding:0 22px}.brand{font-size:2.5rem}nav{gap:16px;font-size:.78rem}nav a:nth-child(2){display:none}.hero{margin:0 10px;height:620px;min-height:0}.hero-copy{left:25px;right:20px}.hero-copy h1{font-size:3.5rem}.hero-caption{left:25px;right:25px;font-size:.68rem}.hero-caption span:last-child{display:none}.hero-shade{background:linear-gradient(90deg,#0a1c16b8,#0a1c1630)}.section{padding:60px 24px}.intro{grid-template-columns:1fr;gap:8px}.intro h2{font-size:2.2rem}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:22px}.collection-tabs button{font-size:1.25rem}.collection-tabs button+button{padding-left:15px}.collection-tabs span{display:none}.collection-intro{display:block;padding:25px 0}.collection-intro h3{margin-bottom:16px}.villa-options{gap:8px}.villa-options button{padding:9px 14px;font-size:.8rem}.villa-view{grid-template-columns:1fr;gap:22px}.photo-button>img{height:350px}.villa-info{padding:0}.villa-info h3{font-size:2.7rem}.stats dd{font-size:2rem}.approach{grid-template-columns:1fr;margin:0 10px}.approach-image img{min-height:0;height:350px;display:block}.approach-copy{padding:45px 26px}.service-grid{grid-template-columns:1fr;gap:35px}.service-grid h3{margin:18px 0;font-size:2rem}.service-grid h3 br{display:none}.care{grid-template-columns:1fr;gap:30px}.care h2{font-size:2.4rem}footer{flex-wrap:wrap;padding:40px 24px}footer p{order:3;max-width:none;width:100%;padding-top:20px;border-top:1px solid #ffffff40}.thumbnails button{width:60px}.gallery-controls>span{font-size:.76rem}dialog{padding:55px 12px 20px}dialog img{max-height:62vh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}} 
.villa-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px 25px}.villa-card>div{position:relative;overflow:hidden}.villa-card img{width:100%;height:260px;object-fit:cover;display:block;transition:transform .3s}.villa-card:hover img{transform:scale(1.035)}.villa-card>div>span{position:absolute;left:12px;bottom:12px;background:#183d32e8;color:white;padding:4px 10px;font-size:.75rem}.villa-card .eyebrow{margin:22px 0 10px;font-size:.72rem}.villa-card h3{font-size:1.9rem;display:flex;justify-content:space-between;gap:10px}.villa-card h3 span{font-family:Arial;font-size:1.2rem}.villa-card>p:last-child{font-size:.85rem;margin-top:13px;color:var(--muted)}.rate-note{font-size:.85rem;color:var(--muted);line-height:1.6;margin-top:22px}.header-enquiry{font-size:.88rem;border-bottom:1px solid var(--ink)}.villa-page-heading{padding-top:40px;padding-bottom:50px}.back-link{display:inline-block;font-size:.85rem;color:var(--muted);margin-bottom:35px}.villa-page-heading h1{font-size:clamp(3.5rem,7vw,6rem)}.villa-page-heading>p:last-child{font-size:1.05rem;color:var(--muted);max-width:780px}.villa-page-heading .eyebrow{margin-bottom:18px}.villa-cover{margin:0 20px}.villa-cover img{height:min(650px,60vw);min-height:320px;width:100%;object-fit:cover;display:block}.detail-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:80px}.detail-layout details{border-top:1px solid var(--line)}.rate-card{background:#e9eee6;padding:35px;align-self:start}.rate-grid{display:grid;gap:22px}.rate-grid>div{display:flex;flex-direction:column;gap:8px}.rate-grid span{font-size:.88rem;color:var(--muted)}.rate-grid strong{font-family:Georgia,serif;font-weight:400;font-size:2rem;line-height:1.1}.whatsapp{display:block;text-align:center;background:var(--ink);color:white;padding:15px;margin-top:28px;font-size:.95rem}.whatsapp:hover{background:#275444}.contact-number{text-align:center;color:var(--muted);font-size:.85rem;margin-top:12px}.photo-section{padding-top:0}.gallery-note{font-size:.9rem;color:var(--muted);margin:20px 0 30px;max-width:850px}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.gallery-tile{border:0;padding:0;background:transparent;text-align:left;color:var(--ink)}.gallery-tile img{width:100%;height:390px;object-fit:cover;display:block}.gallery-tile span{display:block;font-size:.85rem;padding:12px 0}.more-villas{border-top:1px solid var(--line);padding-top:60px}.more-villas>div{display:flex;flex-wrap:wrap;gap:15px;margin-top:30px}.more-villas a{border:1px solid var(--line);padding:12px 22px;font-size:.9rem}.more-villas a:hover{background:var(--ink);color:white}@media(max-width:1000px){.villa-card-grid{grid-template-columns:1fr 1fr}.detail-layout{gap:35px}.gallery-tile img{height:300px}.rate-card{padding:25px}}@media(max-width:700px){.villa-card-grid{grid-template-columns:1fr;gap:36px}.villa-card img{height:300px}.detail-layout{grid-template-columns:1fr;gap:32px}.photo-grid{grid-template-columns:1fr;gap:15px}.gallery-tile img{height:310px}.villa-cover{margin:0 10px}.villa-page-heading{padding-top:25px}.header-enquiry{font-size:.76rem}header nav{gap:12px}header nav a:last-child{display:none}.rate-grid{grid-template-columns:1fr 1fr;gap:14px}.rate-grid strong{font-size:1.45rem}.villa-page-heading h1{font-size:3.5rem}.photo-section{padding-top:0}.more-villas h2{font-size:2.4rem}}@media(prefers-reduced-motion:reduce){.villa-card img{transition:none}}

/* Original Kawa Projects artwork, preserved without alteration. */
header{height:140px;background:#fff}.brand{display:inline-flex;flex-shrink:0;line-height:1;letter-spacing:normal}.brand-logo{display:block;width:130px;height:130px;object-fit:contain;background:#fff}footer .brand-logo{width:145px;height:145px}html{scroll-padding-top:30px}@media(max-width:700px){header{height:112px;padding-left:12px;padding-right:18px}.brand-logo{width:106px;height:106px}header nav{gap:10px}footer .brand-logo{width:125px;height:125px}}

/* The people behind Kawa. */
.team{background:#edf0e9;border-top:1px solid var(--line)}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 28px}.team-member img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 25%;background:#e0e5dd}.team-member h3{font-size:2rem;margin:20px 0 8px}.team-member p{font-size:.88rem;color:var(--muted)}.team-closing{margin-top:45px;padding-top:25px;border-top:1px solid var(--line);color:var(--muted);font-size:.95rem;max-width:none}@media(max-width:1000px){header nav{gap:18px}}@media(max-width:700px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px}.team-member h3{font-size:1.6rem;margin-top:14px}.team-member p{font-size:.78rem}.team-closing{margin-top:30px}header nav a[href$="#services"]{display:none}header nav a.team-nav{display:inline}header nav{gap:12px}.header-enquiry{font-size:.72rem}}

.team-group+.team-group{margin-top:55px;padding-top:35px;border-top:1px solid var(--line)}.team-group-title{font-size:1.8rem;margin-bottom:25px}.team-management{grid-template-columns:repeat(4,minmax(0,1fr))}.team-housekeeping{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}.team-security{grid-template-columns:repeat(3,minmax(0,1fr));max-width:960px}.team-portrait{position:relative;overflow:hidden;aspect-ratio:var(--portrait-ratio);background:#e0e5dd}.team-member .team-portrait img{position:absolute;width:var(--photo-width);height:var(--photo-height);left:var(--photo-left);top:var(--photo-top);max-width:none;aspect-ratio:auto;object-fit:fill}.team-member p{font-size:1rem}@media(max-width:1000px){.team-housekeeping{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.team-management,.team-housekeeping,.team-security{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px}.team-group-title{font-size:1.6rem}.team-member p{font-size:.9rem}}

.team-housekeeping .team-direct-photo{aspect-ratio:347/464;object-fit:cover;object-position:center top}.team-security .team-direct-photo{aspect-ratio:326/463;object-fit:cover;object-position:center top}

.team-housekeeping-names{margin-top:22px;font-size:1.1rem;line-height:1.7;color:var(--ink)}

/* Staff access stays visible in desktop and mobile navigation. */
header nav{align-items:center}
header nav a.staff-login{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border:1px solid var(--ink);white-space:nowrap;font-size:.875rem}
header nav a.staff-login:hover{background:var(--ink);color:#fff}
@media(max-width:950px){header{display:grid;grid-template-columns:auto 1fr;height:auto;padding:0 22px 18px;gap:0 16px}header>.brand{grid-column:1;grid-row:1;justify-self:start}header>.header-enquiry,header>.location{grid-column:2;grid-row:1;justify-self:end}header nav{grid-column:1/-1;grid-row:2;justify-content:center;flex-wrap:wrap;gap:10px 18px;font-size:.875rem}header nav a{white-space:nowrap}}

header nav a.book-cleaning{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border:1px solid var(--ink);background:var(--ink);color:#fff;white-space:nowrap;font-size:.875rem}header nav a.book-cleaning:hover{background:#275444}

header nav a.nami-login{display:inline-flex;gap:7px}header nav a.nami-login svg{flex-shrink:0}
