@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--green:#173b35;--green2:#254f46;--cream:#f5f3ed;--ink:#202b28;--muted:#69736e;--line:#e5e4dc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}.site-header{height:82px;padding:0 7%;display:flex;align-items:center;justify-content:space-between;background:#fff;position:relative;z-index:2}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:42px;height:42px;border:1px solid #b7c4bb;border-radius:50%;display:grid;place-items:center;color:var(--green);font-family:'Playfair Display',serif;font-size:17px}.brand strong,.brand small{display:block;letter-spacing:1.5px}.brand strong{font-size:12px}.brand small{font-size:8px;color:var(--muted);margin-top:4px}.site-header nav{display:flex;gap:28px;font-size:12px;color:#53615b}.site-header nav a:hover{color:#9b7950}.header-cta{font-size:11px;font-weight:700;border:1px solid #cbd2cc;border-radius:3px;padding:12px 17px}.hero{background:var(--green);min-height:500px;padding:62px 8%;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:5%;color:#fff}.eyebrow{font-size:9px;letter-spacing:2.4px;font-weight:700;color:#c6d2c9}.eyebrow.dark{color:#78877d}.hero h1,.intro h2,.property h2,.section-head h2,.feature-section h2,.location h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-1px}.hero h1{font-size:clamp(40px,4.8vw,62px);line-height:1.1;margin:20px 0}.hero h1 em{color:#d7c7a8;font-weight:500}.hero-copy p{font-size:13px;line-height:1.9;color:#d0d9d2;max-width:420px;margin-bottom:28px}.button{display:inline-flex;gap:28px;align-items:center;padding:15px 19px;font-size:11px;font-weight:700;border-radius:2px}.button-light{background:#f4f0e6;color:var(--green)}.button span{font-size:17px}.hero-photo{height:350px;overflow:hidden;border:7px solid #ffffff18;box-shadow:0 20px 45px #071d1840}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.intro{text-align:center;padding:76px 20px 38px}.intro h2,.section-head h2{font-size:40px;margin:13px 0 8px}.intro p,.section-head p{font-size:12px;color:var(--muted)}.property{padding:20px 9% 85px;display:grid;grid-template-columns:1.05fr .95fr;gap:7%;align-items:center}.property-photo{height:390px;overflow:hidden}.property-photo img{width:100%;height:100%;object-fit:cover}.property h2{font-size:40px;line-height:1.12;margin:14px 0}.property-copy p,.property li{font-size:12px;line-height:1.9;color:var(--muted)}.property ul{padding-left:18px}.gallery-section{background:#faf9f6;padding:76px 8% 90px}.section-head{text-align:center;margin-bottom:32px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery figure{margin:0;background:white;border:1px solid var(--line)}.gallery figure.wide{grid-column:span 2}.gallery img{width:100%;height:250px;display:block;object-fit:cover}.gallery figure.wide img{height:300px}.gallery figcaption{padding:12px 14px;font-size:11px;color:#53615b}.feature-section{background:var(--cream);padding:72px 10%;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.feature-section h2{font-size:39px;line-height:1.15}.muted{font-size:11px;color:var(--muted);line-height:1.8}.feature-list>div{display:flex;gap:20px;padding:15px 0;border-bottom:1px solid #deded5}.feature-list>div>span{font-size:10px;color:#9b7950}.feature-list p{margin:0}.feature-list strong,.feature-list small{display:block}.feature-list strong{font-size:12px}.feature-list small{font-size:10px;color:var(--muted);margin-top:6px}.location{background:var(--green2);color:#fff;padding:55px 10%;display:flex;align-items:center;justify-content:space-between;gap:30px}.location h2{font-size:36px;line-height:1.15;margin:14px 0}.location p{max-width:460px;color:#d3ddd5;font-size:11px;line-height:1.8}footer{padding:24px 7%;display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#77827b}.footer-brand .brand-mark{width:35px;height:35px}footer>a:last-child{color:var(--green)}
@media(max-width:700px){.site-header{height:72px;padding:0 5%}.site-header nav{display:none}.header-cta{padding:10px 12px;font-size:10px}.hero{padding:48px 7%;grid-template-columns:1fr;gap:28px}.hero-photo{height:230px}.hero h1{font-size:43px}.intro{padding:55px 18px 25px}.intro h2,.section-head h2{font-size:33px}.property{padding:10px 6% 55px;grid-template-columns:1fr;gap:24px}.property-photo{height:260px}.property h2{font-size:34px}.gallery-section{padding:55px 5%}.gallery{grid-template-columns:1fr 1fr;gap:10px}.gallery figure.wide{grid-column:span 2}.gallery img,.gallery figure.wide img{height:190px}.gallery figure.wide img{height:220px}.feature-section{padding:50px 7%;grid-template-columns:1fr;gap:14px}.feature-section h2{font-size:34px}.location{padding:45px 7%;display:block}.location h2{font-size:32px}.location .button{margin-top:15px;font-size:10px}footer{padding:20px 5%;gap:14px;flex-wrap:wrap}footer>span{order:3;width:100%}}

/* AR Rahman Semi-D details */
.price-strip{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:22px;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.price-strip strong{font-size:25px;color:var(--green)}.price-strip strong small{font-size:12px;font-weight:500}.price-strip span{font-size:11px;color:var(--muted)}.rules-section{padding:70px 10%;background:#fff}.rules-section h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:38px;margin:14px 0 25px}.rules-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.rules-grid>div{border:1px solid var(--line);padding:22px 17px;min-height:105px}.rules-grid b,.rules-grid strong,.rules-grid small{display:block}.rules-grid b{font-size:12px}.rules-grid strong{font-size:22px;margin-top:12px;color:var(--green)}.rules-grid small{font-size:11px;margin-top:12px;color:var(--muted)}.location{align-items:stretch}.location>div:first-child{max-width:480px}.location .button{margin-top:14px}.booking{background:#ffffff12;border:1px solid #ffffff35;padding:27px;min-width:300px;max-width:400px;width:100%}.booking h3{font-family:'Playfair Display',Georgia,serif;font-size:37px;font-weight:500;margin:12px 0}.booking h3 small{font-family:'DM Sans',Arial,sans-serif;font-size:13px}.booking p{margin-bottom:17px}.booking .booking-button,.booking .booking-alt{display:flex;justify-content:space-between;width:100%;margin:10px 0}.booking .booking-alt{border:1px solid #ffffff90;color:#fff}.phone-links{display:flex;gap:15px;flex-wrap:wrap;font-size:10px;text-decoration:underline;margin-top:17px;color:#e2e8e2}@media(max-width:700px){.rules-section{padding:48px 7%}.rules-section h2{font-size:31px}.rules-grid{grid-template-columns:1fr 1fr}.rules-grid>div{padding:16px 12px}.booking{margin-top:28px;min-width:0;max-width:none}.location .button{margin-top:10px}}

/* Semi-D platform booking buttons */
.platform-booking{margin-top:22px;padding-top:17px;border-top:1px solid #ffffff45}.platform-booking .platform-label{font-size:10px;letter-spacing:1.3px;font-weight:700;color:#e2e8e2;margin:0 0 12px}.platform-booking .platform-button{display:flex;justify-content:center;width:100%;margin:9px 0;font-size:12px;border-radius:3px}.airbnb-button{background:#ff5a5f;color:white}.bookingcom-button{background:#fff;color:#003b95}

/* Brand-styled booking links — Semi-D only */
.platform-booking .platform-button{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;min-height:64px;text-align:left;border-radius:6px;font-size:12px;transition:filter .15s ease,transform .15s ease}
.platform-booking .platform-button:hover{filter:brightness(1.08);transform:translateY(-1px)}
.platform-brand{display:flex;align-items:center;gap:5px;flex:0 0 44%;font-weight:700;font-size:23px;letter-spacing:-1px;white-space:nowrap;line-height:1}
.airbnb-symbol{font-size:27px;line-height:.8;font-family:Arial,sans-serif;font-weight:400;transform:translateY(-2px)}
.booking-brand{font-size:20px;letter-spacing:-.8px}
.booking-dot{color:#9cc8ff}
.platform-action{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;border-left:1px solid #ffffff75;min-height:30px;padding-left:12px;font-size:11px;line-height:1.45;font-weight:700}
.airbnb-button{background:#ff5a5f;color:#fff}
.bookingcom-button{background:#123d91;color:#fff}
@media(max-width:420px){.platform-booking .platform-button{padding:13px 11px;gap:8px}.platform-brand{font-size:20px;flex-basis:42%}.booking-brand{font-size:17px}.platform-action{font-size:10px;padding-left:8px}.airbnb-symbol{font-size:22px}}

/* Improved legibility across desktop and mobile */
.site-header nav{font-size:15px}.header-cta{font-size:14px}.brand strong{font-size:14px}.brand small{font-size:10px}
.eyebrow{font-size:12px;letter-spacing:2px}
.hero-copy p{font-size:17px;line-height:1.75;max-width:560px}
.button{font-size:15px;line-height:1.4;gap:14px}
.intro p,.section-head p{font-size:16px;line-height:1.7}
.property-copy p,.property li{font-size:16px;line-height:1.75}
.gallery figcaption{font-size:14px;line-height:1.5}
.muted{font-size:15px}.feature-list strong{font-size:16px}.feature-list small{font-size:14px;line-height:1.6}.feature-list>div>span{font-size:13px}
.price-strip span{font-size:14px}.price-strip strong small{font-size:14px}
.rules-grid b{font-size:15px}.rules-grid small{font-size:14px}
.location p{font-size:15px;line-height:1.7}
.booking p{font-size:15px;line-height:1.7}.booking .booking-button,.booking .booking-alt{font-size:15px;line-height:1.4}.phone-links{font-size:13px;line-height:1.6}
footer{font-size:12px}
@media(max-width:700px){.header-cta{font-size:12px}.hero-copy p{font-size:16px}.hero h1{font-size:clamp(34px,9vw,43px)}.intro h2,.section-head h2{font-size:clamp(29px,7vw,35px)}.property h2,.feature-section h2,.location h2{font-size:clamp(29px,7vw,36px)}.button,.location .button{font-size:14px}.property-copy p,.property li{font-size:15px}.feature-list small{font-size:13px}.booking .booking-button,.booking .booking-alt{font-size:14px}.booking{padding:20px}}

/* Google Maps Satellite for Semi-D */
.satellite-section{padding:64px 10% 76px;background:#faf9f6}.satellite-heading{text-align:center;max-width:650px;margin:0 auto 26px}.satellite-heading h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(30px,3.5vw,42px);font-weight:500;margin:12px 0}.satellite-heading p{font-size:16px;line-height:1.75;color:var(--muted)}.satellite-frame{overflow:hidden;border-radius:8px;border:1px solid var(--line);box-shadow:0 12px 30px #173b3517}.satellite-frame iframe{display:block;width:100%;height:430px;border:0}.satellite-note{font-size:13px;line-height:1.6;color:var(--muted);margin-top:12px}@media(max-width:700px){.satellite-section{padding:48px 6%}.satellite-frame iframe{height:320px}.satellite-heading p{font-size:15px}}
