@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');:root{--ink:#183334;--sea:#164b50;--sand:#f6f2ea;--white:#fff;--muted:#6b7774}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--sand);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.7}img{display:block;width:100%;object-fit:cover}a{color:inherit;text-decoration:none}.top{height:88px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;position:relative;z-index:5}.brand{display:flex;flex-direction:column;line-height:1.25;letter-spacing:.19em;font-weight:700;font-size:18px}.brand small{font-size:9px;letter-spacing:.26em;margin-top:7px;color:#788380}.top nav{display:flex;align-items:center;gap:31px;font-size:12px;font-weight:600;letter-spacing:.05em}.top nav a:hover{color:#ad8560}.navcta{background:var(--sea);color:white;padding:12px 20px}.top nav .navcta:hover{color:white;background:#267077}.menu{display:none;border:0;background:transparent;font-size:25px}.hero{min-height:690px;height:78vh;position:relative;color:white;display:flex;align-items:center}.hero>img{position:absolute;inset:0;height:100%;object-position:center 44%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,35,39,.75),rgba(12,35,39,.23) 75%),linear-gradient(0deg,rgba(0,0,0,.3),transparent 40%)}.hero-content{position:relative;max-width:920px;margin-left:9%;padding:60px 0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.24em;color:#9a7959;margin:0 0 20px}.eyebrow.light{color:#e9d4b5}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.16}h1{font-size:clamp(52px,6.7vw,104px);letter-spacing:-.04em;margin-bottom:28px}h1 em,h2 em{font-weight:400}h2{font-size:clamp(38px,4.3vw,64px);letter-spacing:-.025em;margin-bottom:25px}h3{font-size:27px;margin:14px 0}p{font-size:15px}.hero-content>p:not(.eyebrow){font-size:18px;max-width:540px}.btn{display:inline-flex;gap:36px;align-items:center;border:0;background:#e4c7a1;color:#183334;padding:16px 25px;margin-top:22px;font:700 12px 'DM Sans',sans-serif;letter-spacing:.08em;cursor:pointer}.btn:hover{background:white}.hero-note{position:absolute;bottom:18px;right:35px;font-size:10px;opacity:.8}.section{padding:110px 8%}.intro{display:grid;grid-template-columns:1.05fr 1fr;gap:12%}.intro-copy{padding-top:35px}.intro-copy p{font-size:17px}.muted,.fine{color:#78827f;font-size:12px!important}.feature{display:grid;grid-template-columns:1fr 1fr;background:#e9e3d7}.feature-image img{height:100%;min-height:570px}.feature-copy{padding:100px 12%;align-self:center}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:36px}.amenities span{border-top:1px solid #c3bdb2;padding-top:12px;font-size:13px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px}.section-head>p{max-width:340px;color:#66716f}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:42px}.cards article{background:white}.cards img{height:310px}.cards article>div{padding:27px 28px 32px}.cards p{color:#6c7774;font-size:14px}.resort{background:linear-gradient(90deg,rgba(12,51,55,.94),rgba(12,51,55,.83)),url('assets/shore.webp') center/cover;color:white;padding:115px 8%}.resort-inner{max-width:820px}.resort p:not(.eyebrow){max-width:750px}.resort .fine{color:#d1dcda}.wellness{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.wellness img{height:530px}.dark{color:#6c7774}.gallery{text-align:center;background:#eee8dd}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:42px}.gallery-grid img{height:255px}.gallery .fine{margin-top:22px}.inquire{background:#153f43;color:white;padding:105px 8%}.inquire>p,.inquire>h2{max-width:730px}.inquire form{max-width:850px;margin-top:40px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:19px}label{display:block;font-size:12px;font-weight:600;letter-spacing:.04em;margin-bottom:18px}input,select,textarea{width:100%;border:1px solid #91a6a5;border-radius:0;background:#fff;color:#183334;font:14px 'DM Sans',sans-serif;padding:14px;margin-top:8px}textarea{resize:vertical}.inquire .fine{color:#b6c8c5}footer{background:#102e32;color:#e6ebe8;display:flex;justify-content:space-between;gap:35px;padding:48px 8%;font-size:12px}footer strong{letter-spacing:.17em}footer p{font-size:12px;color:#b9c8c5}footer>div:last-child{text-align:right}@media(max-width:900px){.top{height:74px}.menu{display:block}.top nav{display:none;position:absolute;top:74px;left:0;right:0;background:white;padding:20px 6%;flex-direction:column;align-items:stretch;gap:17px}.top nav.open{display:flex}.hero{min-height:600px;height:72vh}.hero-content{margin-left:7%;margin-right:6%}.intro,.feature,.wellness{grid-template-columns:1fr}.feature-image img{min-height:0;height:420px}.feature-copy{padding:65px 8%}.cards{grid-template-columns:1fr 1fr}.section{padding:75px 7%}.wellness img{height:390px}.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){h1{font-size:49px}.hero{min-height:590px}.hero-note{left:7%;right:7%}.intro-copy{padding-top:0}.section-head{display:block}.cards{grid-template-columns:1fr}.cards img{height:280px}.gallery-grid img{height:180px}.form-grid{grid-template-columns:1fr}footer{display:block}footer>div:last-child{text-align:left}.resort{padding:75px 7%}}

.btn-outline{background:transparent;color:white;border:1px solid rgba(255,255,255,.75);margin-left:12px}.btn-outline:hover{background:white;color:var(--ink)}.extended{background:#faf8f3}.extended-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;margin-top:40px}.extended-grid h3{font-size:31px}.soft-panel{background:#eae3d7;padding:36px}.groups{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;background:#eee8dd}.groups-photo img{height:470px}.groups-copy .fine{margin-top:18px}.booking-actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 28px}.booking-actions .btn{margin:0}.booking-actions .btn-outline{margin-left:0}@media(max-width:900px){.groups,.extended-grid{grid-template-columns:1fr}.groups-photo img{height:350px}}@media(max-width:600px){.hero .btn-outline{margin-left:0}.booking-actions{flex-direction:column;align-items:flex-start}}

/* Villa Raytondo Unit 1306 accommodation features */
.property-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:35px 0 42px}.property-stats span{border-top:1px solid #c5bcb0;padding-top:15px;font-size:13px}.property-stats strong{font-family:Georgia,serif;font-size:36px;font-weight:400;margin-right:10px}.suite-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.suite-grid article{background:white}.suite-grid img{height:340px}.suite-grid article>div{padding:32px}.suite-grid article p:not(.eyebrow){color:#687370}.living-feature,.kitchen-feature{display:grid;grid-template-columns:1.1fr .9fr;gap:7%;align-items:center;margin-top:70px}.living-feature img,.kitchen-feature img{height:430px}.kitchen-feature{grid-template-columns:.9fr 1.1fr}.suites{background:#f7f3ec}#suites,#residence,#gallery,#experiences,#wellness,#extended,#groups{scroll-margin-top:30px}@media(max-width:900px){.top nav{gap:13px;font-size:11px}.suite-grid,.living-feature,.kitchen-feature{grid-template-columns:1fr}.living-feature img,.kitchen-feature img{height:330px}.kitchen-feature img{grid-row:1}.property-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.suite-grid img{height:240px}.property-stats strong{font-size:29px}.living-feature,.kitchen-feature{margin-top:45px}}

/* Villa Raytondo V4 brand & photography */
:root{--ink:#091f45;--sea:#123d71;--sand:#f7f8f9;--muted:#5f6e7c}
body{color:var(--ink);background:#faf9f7}.top{height:96px;padding:0 3.4%;position:sticky;top:0;box-shadow:0 2px 18px #081d3612}.brand{width:206px;min-width:180px}.brand img{width:100%;height:75px;object-fit:contain}.top nav{gap:17px;font-size:11px}.navcta{background:#0a2452}.hero-shade{background:linear-gradient(90deg,rgba(4,22,49,.79),rgba(5,24,54,.1) 78%),linear-gradient(0deg,rgba(4,22,49,.22),transparent 55%)}.hero{height:80vh;min-height:650px}.hero-content{max-width:940px}.eyebrow{color:#4778b9}.eyebrow.light{color:#d6e8ff}.btn{background:#c7dbf6;color:#091f45}.btn:hover{background:white}.navcta:hover{background:#29558b!important}.suite-grid img{height:385px}.community{background:#f2f5f8}.community-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px}.community-grid article{background:white;padding-bottom:22px}.community-grid img{height:260px}.community-grid h3,.community-grid p{margin-left:24px;margin-right:24px}.community-grid p{color:#5f6e7c}.gallery{text-align:left;background:#eaf0f7}.gallery-head{align-items:end}.gallery-controls{display:flex;gap:10px;flex-wrap:wrap;margin:36px 0 28px}.filter{border:1px solid #b7c9df;background:transparent;color:#143a6c;padding:11px 17px;cursor:pointer;font:600 12px 'DM Sans',sans-serif}.filter.active,.filter:hover{background:#0c2b58;color:white}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.photo-card{margin:0;background:#fff;overflow:hidden}.photo-open{display:block;padding:0;width:100%;border:0;background:none;cursor:zoom-in}.photo-card img{width:100%;height:210px;transition:transform .35s}.photo-open:hover img{transform:scale(1.045)}.photo-card figcaption{font-size:12px;color:#30475e;padding:12px 14px;min-height:55px}.photo-card[hidden]{display:none}.gallery .fine{text-align:left}.footer-logo{width:220px;max-width:100%;height:auto;mix-blend-mode:screen;background:#fff;padding:6px;border-radius:2px}footer{background:#071a38}.inquire{background:#0b2a58}.resort{background:linear-gradient(90deg,rgba(5,25,58,.94),rgba(5,25,58,.7)),url('assets/beach.webp') center/cover}#lightbox{position:fixed;max-width:min(96vw,1200px);width:96vw;max-height:94vh;border:0;padding:48px 55px 20px;background:#071a38;color:white;box-shadow:0 10px 70px #0008}#lightbox::backdrop{background:#030c1be0}#lightbox img{max-height:72vh;width:100%;object-fit:contain}#lightbox button{position:absolute;border:0;background:#fff;color:#071a38;cursor:pointer;font-size:28px;line-height:1;padding:7px 14px}#lightbox .lightbox-close{top:9px;right:9px}#lightbox .lightbox-prev{top:45%;left:8px}#lightbox .lightbox-next{top:45%;right:8px}#lightbox .lightbox-caption{text-align:center;font-size:13px;margin:12px 0 0;color:#d6e8ff}@media(max-width:1200px){.top nav{gap:10px;font-size:10px}.brand{width:170px;min-width:150px}.photo-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.top{height:80px}.top nav{top:80px}.community-grid{grid-template-columns:1fr 1fr}.photo-grid{grid-template-columns:repeat(2,1fr)}.brand img{height:68px}}@media(max-width:600px){.hero{min-height:620px}.hero-content{padding-top:65px}.community-grid{grid-template-columns:1fr}.photo-grid{gap:10px}.photo-card img{height:145px}.photo-card figcaption{font-size:11px;padding:9px;min-height:58px}.gallery-controls{gap:6px}.filter{padding:9px 10px;font-size:11px}#lightbox{padding:48px 32px 18px}#lightbox button{padding:6px 9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo-card img{transition:none}}

/* V4.3: recognizable identity and discoverable neighboring-resort information */
.hero-logo-link{display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.96);border-radius:12px;padding:10px 17px;margin-bottom:19px;box-shadow:0 10px 30px rgba(0,0,0,.17);max-width:min(330px,72vw)}
.hero-logo{display:block;width:100%;max-width:290px;height:auto;max-height:142px;object-fit:contain}
#villa-del-palmar{scroll-margin-top:85px}
@media(max-width:600px){.hero-logo-link{max-width:210px;padding:7px 12px;margin-bottom:12px}.hero-logo{max-height:90px}}

/* V4.5: TPC Danzante Bay feature */
.golf-spotlight{background:#f2f6f7;padding-top:clamp(60px,7vw,110px);padding-bottom:clamp(60px,7vw,110px)}
.golf-spotlight-inner{max-width:1320px;margin:auto;display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:clamp(24px,5vw,84px)}
.golf-spotlight-copy h2{font-size:clamp(2.3rem,4.3vw,4.6rem);line-height:1.06;margin:16px 0 26px}
.golf-spotlight-copy p{line-height:1.75;margin:0 0 17px}
.golf-spotlight-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0}
.golf-spotlight-photos img{width:100%;height:430px;object-fit:cover;border-radius:3px}
.golf-spotlight-photos img:nth-child(2){margin-top:40px;height:390px}
.golf-link{display:inline-block;margin-top:14px;padding:14px 23px;background:#123e59;color:#fff;text-decoration:none;letter-spacing:.02em}
.golf-link:hover{background:#1b6688}
@media(max-width:850px){.golf-spotlight-inner{grid-template-columns:1fr}.golf-spotlight-photos img{height:300px}.golf-spotlight-photos img:nth-child(2){height:270px;margin-top:25px}}
