
:root{--navy:#07182f;--navy2:#0d2545;--gold:#d6bd87;--cream:#f6f2ea;--text:#1b2635;--muted:#697586;--white:#fff;--border:#e6e1d7}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.65}a{color:inherit;text-decoration:none}.container{width:min(1160px,92%);margin:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:10px;top:10px;background:#fff;padding:10px;z-index:99}
.topbar{background:#050f20;color:#dfe6ef;font-size:13px}.topbar-inner{display:flex;justify-content:space-between;padding:8px 0}.top-links{display:flex;gap:22px}.top-links a:hover{color:var(--gold)}
.nav{background:rgba(7,24,47,.97);color:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(214,189,135,.18)}.nav-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px}.brand-mark{font-size:26px;font-weight:900;color:#52b947;letter-spacing:-2px}.brand-text{font-family:Georgia,serif;color:var(--gold);font-size:14px;letter-spacing:2px;line-height:1.1}.brand-text small{display:block;font:9px Arial;letter-spacing:1px;color:#d9dce2;margin-top:3px}.menu{display:flex;align-items:center;gap:27px;font-size:14px}.menu a:hover{color:var(--gold)}.nav-cta{padding:11px 17px;border:1px solid var(--gold);color:var(--gold)!important}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:28px}
.hero{min-height:680px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden;background:var(--navy)}.hero-media{position:absolute;inset:0;background:url('/images/cullinan-07.jpg') center/cover no-repeat;filter:saturate(.8)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,14,30,.92),rgba(3,14,30,.45),rgba(3,14,30,.2))}.hero-content{position:relative;z-index:2;padding:90px 0;max-width:800px}.eyebrow{color:var(--gold);font-size:12px;letter-spacing:3px;font-weight:700;margin:0 0 12px;text-transform:uppercase}.hero h1{font:clamp(46px,7vw,82px)/1.03 Georgia,serif;margin:0 0 22px;font-weight:400}.hero-sub{font-size:19px;max-width:650px;color:#eef2f6}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border:1px solid transparent;font-weight:700;cursor:pointer;transition:.2s}.btn-gold{background:var(--gold);color:#07182f}.btn-gold:hover{background:#ead7a7}.btn-outline{border-color:#fff;color:#fff}.btn-outline:hover{background:#fff;color:#07182f}.btn-dark{background:var(--navy);color:#fff}.btn-dark:hover{background:#17365f}
.stats{background:var(--gold);color:var(--navy)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stats-grid div{padding:28px 15px;text-align:center;border-right:1px solid rgba(7,24,47,.2)}.stats-grid div:last-child{border:0}.stats strong{display:block;font:34px Georgia,serif}.stats span{font-size:12px;text-transform:uppercase;letter-spacing:1px}
.section{padding:90px 0}.alt{background:var(--cream)}.dark-section{background:var(--navy);color:#fff}.section-heading{margin-bottom:38px}.section-heading.center{text-align:center}.section h2{font:42px/1.15 Georgia,serif;font-weight:400;margin:0 0 20px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split.reverse .image-card{order:0}.image-card{overflow:hidden;background:#ddd;box-shadow:0 18px 50px rgba(0,0,0,.13)}.image-card img{width:100%;display:block;aspect-ratio:1.35;object-fit:cover}.text-link{color:#8e733b;font-weight:700}.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature-card{border:1px solid rgba(214,189,135,.3);padding:30px}.feature-card span,.amenity-grid span{color:var(--gold);font-size:12px;letter-spacing:2px}.feature-card h3{font:25px Georgia,serif;font-weight:400}.check-list{padding:0;margin:0 0 28px;list-style:none}.check-list li{padding:9px 0;border-bottom:1px solid var(--border)}.check-list li:before{content:'✓';color:#a3864b;margin-right:10px}.cta{background:var(--cream);padding:60px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font:34px Georgia,serif;margin:0}
.page-hero{background:linear-gradient(120deg,var(--navy),#17365f);color:#fff;padding:90px 0}.page-hero h1{font:clamp(40px,6vw,68px) Georgia,serif;font-weight:400;margin:0 0 12px}.page-hero p:last-child{max-width:700px;color:#d8e0eb}.facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.facts-grid div{padding:25px;background:#fff;border:1px solid var(--border)}.facts-grid b{display:block;font:26px Georgia,serif;margin-bottom:8px}.facts-grid span{font-size:14px;color:var(--muted)}.amenity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.amenity-grid article{padding:28px;border:1px solid var(--border);min-height:180px}.amenity-grid h3{font:23px Georgia,serif;margin:12px 0 8px}.amenity-grid p{color:var(--muted);font-size:14px}.location-list{margin-top:28px}.location-list div{padding:15px 0;border-bottom:1px solid var(--border)}.location-list b{display:block}.location-list span{display:block;color:var(--muted)}.map-box{min-height:420px;background:radial-gradient(circle at 50% 45%,#d7c28f 0 5px,transparent 6px),linear-gradient(135deg,#e6dfcf,#c9d1d8);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.map-pin{background:var(--navy);color:var(--gold);padding:14px 18px;border-radius:50px;font-weight:800;box-shadow:0 8px 25px rgba(0,0,0,.2)}.nearby-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.nearby-grid span{background:#fff;border:1px solid var(--border);padding:15px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery-grid figure{margin:0;background:#fff;border:1px solid var(--border)}.gallery-grid img{width:100%;display:block;aspect-ratio:1.4;object-fit:cover}.gallery-grid figcaption{padding:12px;font-size:13px;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.contact-item{padding:17px 0;border-bottom:1px solid var(--border)}.contact-item b,.contact-item span,.contact-item a{display:block}.contact-item a{color:#8e733b}.lead-form{background:var(--cream);padding:32px}.lead-form label{display:block;font-size:13px;font-weight:700;margin-bottom:16px}.lead-form input,.lead-form textarea{display:block;width:100%;margin-top:7px;border:1px solid #d6d1c7;background:#fff;padding:13px;font:inherit}.lead-form textarea{resize:vertical}.notice{padding:15px 18px;margin-bottom:20px}.success{background:#e9f6ed;color:#245b35}.error{background:#fff0f0;color:#8b2c2c}
.footer{background:#050f20;color:#d8e0eb;padding:60px 0 0}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:60px}.footer h3{color:#fff;font-size:15px}.footer-grid>div>a,.footer-grid>div>span{display:block;margin:8px 0;color:#b8c3d0}.footer-brand{margin-bottom:20px}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:45px;padding:18px 0;display:flex;justify-content:space-between;font-size:12px;color:#8e9aaa}.floating-call,.floating-wa{position:fixed;right:18px;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;z-index:60;box-shadow:0 7px 20px rgba(0,0,0,.2);font-size:22px}.floating-call{bottom:85px;background:var(--navy)}.floating-wa{bottom:20px;background:#159447}
@media(max-width:900px){.menu{gap:16px}.split,.contact-grid{grid-template-columns:1fr;gap:35px}.cards-3{grid-template-columns:1fr}.facts-grid,.amenity-grid{grid-template-columns:repeat(2,1fr)}.nearby-grid{grid-template-columns:repeat(3,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.topbar-inner{display:block;text-align:center}.top-links{justify-content:center;flex-wrap:wrap;gap:8px 16px;margin-top:4px}.nav-inner{min-height:68px}.menu-toggle{display:block}.menu{position:absolute;left:0;right:0;top:100%;background:var(--navy);display:none;flex-direction:column;align-items:stretch;padding:12px 4%;border-top:1px solid rgba(255,255,255,.1)}.menu.open{display:flex}.menu a{padding:10px}.hero{min-height:600px}.hero h1{font-size:50px}.stats-grid{grid-template-columns:repeat(2,1fr)}.stats-grid div{border-bottom:1px solid rgba(7,24,47,.2)}.section{padding:65px 0}.section h2{font-size:35px}.facts-grid,.amenity-grid,.gallery-grid{grid-template-columns:1fr}.nearby-grid{grid-template-columns:repeat(2,1fr)}.cta-inner,.footer-bottom{display:block}.cta .btn{margin-top:20px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-bottom span{display:block;margin:6px 0}}


/* =========================================
   FLOATING WHATSAPP & CALL BUTTONS
   ========================================= */

.floating-wa,
.floating-call {
    position: fixed;
    bottom: 22px;
    width: 150px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border-radius: 30px;
    color: #fff;
    text-decoration: none;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: .2px;
    z-index: 9999;
    box-shadow: 0 8px 25px rgba(0,0,0,.25);
    transition: all .3s ease;
}

.floating-wa {
    left: 22px;
    background: #25D366;
}

.floating-call {
    right: 22px;
    background: #111;
    border: 1px solid rgba(255,255,255,.25);
}

.floating-wa:hover,
.floating-call:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(0,0,0,.32);
}

.floating-wa svg,
.floating-call svg {
    width: 22px;
    height: 22px;
    fill: currentColor;
}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 600px) {

    .floating-wa,
    .floating-call {
        bottom: 14px;
        width: 130px;
        height: 48px;
        font-size: 14px;
        gap: 7px;
    }

    .floating-wa {
        left: 10px;
    }

    .floating-call {
        right: 10px;
    }

    .floating-wa svg,
    .floating-call svg {
        width: 20px;
        height: 20px;
    }

}