@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--forest:#143c31;--forest2:#0e2e27;--deep:#0a241e;--gold:#c7a36b;--gold2:#e1c38d;--ink:#1b302a;--muted:#6e7a72;--cream:#f7f7f2;--paper:#fff;--line:#e4e9e4;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans','Manrope',Arial,sans-serif;--shadow:0 18px 60px rgba(13,39,28,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:white;color:var(--ink);font:15px/1.7 var(--sans);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{line-height:1.15}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}h2{font-size:clamp(34px,4.2vw,57px)}h3{font-weight:600}.container{width:min(1180px,calc(100% - 60px));margin:auto}.top-strip{background:var(--deep);color:#d9e6dd;font-size:11px;letter-spacing:.045em}.top-strip-inner{display:flex;justify-content:space-between;align-items:center;min-height:34px}.top-strip-inner>div{display:flex;gap:27px}.top-strip a{display:inline-flex;align-items:center;gap:6px;transition:color .2s}.top-strip a:hover{color:var(--gold2)}.gold-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold);margin-right:7px;vertical-align:middle}.site-header{position:relative;z-index:50;background:#fff;box-shadow:0 1px 0 #e8eae5}.header-inner{height:90px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:center;gap:11px;min-width:124px;width:124px;flex:0 0 124px}.brand-mark{height:45px;width:45px;border:1px solid var(--gold);background:var(--forest);display:flex;align-items:center;justify-content:center;color:#e8c996;position:relative}.brand-mark span{font-family:var(--serif);font-size:31px;line-height:1}.brand-mark i{position:absolute;inset:4px;border:1px solid rgba(225,195,141,.36)}.brand-copy{display:flex;flex-direction:column;line-height:1.12;letter-spacing:.12em}.brand-copy strong{font:700 22px/1.1 var(--sans);letter-spacing:.14em;color:var(--forest)}.brand-copy small{font-size:9px;letter-spacing:.22em;font-weight:700;color:#79877e;margin-top:4px}.site-nav{display:flex;align-items:center;gap:26px}.site-nav a{font-size:12px;font-weight:700;color:#50615a;position:relative;transition:color .2s}.site-nav a:hover,.site-nav a.active{color:var(--forest)}.site-nav a.active:after{content:'';position:absolute;bottom:-9px;left:0;width:100%;height:2px;background:var(--gold)}.header-cta{display:inline-flex;align-items:center;gap:16px;background:var(--forest);padding:14px 18px;color:white;font-weight:700;font-size:12px;white-space:nowrap;transition:background .2s}.header-cta:hover{background:#28634d}.menu-toggle{display:none;background:none;border:0;color:var(--forest)}.hero{height:min(710px,75vw);min-height:600px;position:relative;background:#173f35 var(--hero) center/cover no-repeat;color:#fff;overflow:hidden}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,33,26,.94) 0%,rgba(11,42,32,.82) 42%,rgba(11,42,32,.22) 100%),linear-gradient(0deg,rgba(8,32,24,.3),transparent 55%)}.hero:after{content:'';position:absolute;right:7%;top:10%;width:290px;height:290px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 160px rgba(255,255,255,.025);pointer-events:none}.hero-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;height:100%}.hero-copy{max-width:690px;padding:30px 0 105px}.eyebrow{color:#9a855d;font-weight:800;font-size:11px;letter-spacing:.19em;text-transform:uppercase;margin-bottom:20px;display:flex;align-items:center;gap:12px}.eyebrow.light{color:var(--gold2)}.gold-line{width:33px;height:1px;background:var(--gold2)}.hero h1{font-size:clamp(54px,6.4vw,94px);line-height:1.02;max-width:750px;margin-bottom:26px}.hero-copy>p{font-size:17px;line-height:1.9;max-width:530px;color:#e1eae4;margin-bottom:31px}.hero-actions{display:flex;align-items:center;gap:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:17px 26px;font-weight:800;font-size:12px;letter-spacing:.015em;border:1px solid transparent;transition:transform .2s,background .2s,color .2s;line-height:1.3}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#102d23}.btn-gold:hover{background:var(--gold2)}.btn-dark{background:var(--forest);color:white}.btn-dark:hover{background:#235844}.btn-outline-light{border-color:#91a99a;color:white;background:transparent}.btn-outline-light:hover{background:white;color:var(--forest)}.hero-text-link{display:inline-flex;align-items:center;gap:10px;color:white;font-weight:700;font-size:12px}.hero-text-link:hover{color:var(--gold2)}.hero-side-note{display:flex;align-items:center;gap:17px;transform:rotate(-90deg) translateX(50%);transform-origin:center;position:absolute;right:-93px;top:41%;font-size:11px;letter-spacing:.18em;color:#c9d7ce}.hero-side-note i{width:65px;height:1px;background:var(--gold)}.hero-side-note small{font-size:10px}.hero-scroll{position:absolute;z-index:2;bottom:78px;left:calc((100% - min(1180px,100% - 60px))/2);font-size:10px;letter-spacing:.16em;color:#d6e5db}.hero-scroll span{font-size:20px;margin-left:16px}.search-panel{position:relative;z-index:5;margin:-46px auto 0;background:white;box-shadow:var(--shadow);padding:20px;display:grid;grid-template-columns:1.1fr 1.5fr 1.25fr 1.2fr auto;align-items:center;gap:18px;min-height:100px}.search-panel-intro{padding-left:10px;display:flex;flex-direction:column;gap:1px}.search-panel-intro .eyebrow{margin:0;font-size:9px}.search-panel-intro strong{font:400 21px var(--serif)}.search-panel label{display:flex;flex-direction:column;gap:5px;border-left:1px solid #e8ede8;padding-left:18px}.search-panel label span{font-size:9px;letter-spacing:.1em;font-weight:800;color:#89958d}.search-panel input,.search-panel select{width:100%;border:0;outline:none;background:transparent;color:#52645b;font-size:12px;padding:4px 0;min-width:0}.search-panel button{height:59px;width:65px;border:0;background:var(--forest);color:white;display:flex;align-items:center;justify-content:center}.search-panel button span{display:none}.section{padding:104px 0}.intro-section{padding-top:132px}.intro-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:110px;align-items:center}.intro-images{height:500px;position:relative}.intro-main-img{height:450px;width:85%;object-fit:cover;filter:saturate(.72)}.intro-small-img{position:absolute;right:0;bottom:0;width:45%;height:235px;object-fit:cover;border:10px solid white}.intro-stamp{position:absolute;top:50px;right:-24px;width:115px;height:115px;background:var(--gold);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--forest);transform:rotate(13deg)}.intro-stamp span{font-size:9px;letter-spacing:.14em;font-weight:800}.intro-stamp strong{font:37px var(--serif);line-height:1.1}.intro-content h2{margin-bottom:23px}.intro-content>p,.about-layout p{color:var(--muted);font-size:15px;line-height:1.95}.intro-features{margin:33px 0;display:grid;gap:20px}.intro-features>div{display:flex;gap:14px;align-items:flex-start}.intro-features>div>span{background:#e8efe9;color:var(--forest);width:34px;height:34px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.intro-features strong{display:block;font-size:14px}.intro-features small{display:block;color:#85918a;line-height:1.6;margin-top:3px}.text-link{display:inline-flex;align-items:center;gap:15px;color:var(--forest);font-size:12px;font-weight:800;border-bottom:1px solid var(--gold);padding-bottom:8px}.text-link:hover{color:#a78552}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:44px}.section-heading h2{margin-bottom:12px;max-width:700px}.section-heading p{color:var(--muted);margin:0;max-width:590px}.section-heading .eyebrow{margin-bottom:13px}.section-heading .text-link{white-space:nowrap;margin-bottom:12px}.projects-section{background:var(--cream)}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.project-card{height:470px;position:relative;display:block;overflow:hidden;background:var(--forest)}.project-card>img{height:100%;width:100%;object-fit:cover;transition:transform .6s;filter:saturate(.8)}.project-card:hover>img{transform:scale(1.055)}.project-card-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,31,22,.92),rgba(4,31,22,.04) 70%)}.project-card-top{position:absolute;left:30px;top:30px;padding:8px 13px;background:#fff;color:#1b493a;font-size:9px;letter-spacing:.13em;font-weight:800}.project-card-bottom{position:absolute;left:32px;right:28px;bottom:29px;display:flex;justify-content:space-between;align-items:end;gap:20px;color:white}.project-card-location{display:flex;align-items:center;gap:5px;color:var(--gold2);font-size:11px}.project-card-bottom h3{font:400 38px/1.2 var(--serif);margin:8px 0}.project-card-bottom p{font-size:12px;color:#d2ded4;max-width:340px;margin:0}.circle-arrow{height:45px;width:45px;border:1px solid #ffffffa8;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.listings-section{background:#fff}.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.property-card{border:1px solid var(--line);background:white;transition:box-shadow .25s,transform .25s}.property-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.property-photo{height:235px;position:relative;display:block;overflow:hidden;background:#e6ece7}.property-photo img{height:100%;width:100%;object-fit:cover;transition:transform .4s}.property-card:hover .property-photo img{transform:scale(1.06)}.property-pill{position:absolute;left:18px;top:17px;background:#fff;color:var(--forest);font-size:10px;font-weight:800;padding:6px 13px}.property-body{padding:24px}.property-type{font-size:11px;color:#b18b58;font-weight:800}.property-type span{padding:0 5px;color:#bcc6bd}.property-body h3{font:400 24px/1.3 var(--serif);margin:11px 0 9px}.property-body h3 a:hover{color:#a88350}.property-location{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);margin-bottom:18px}.property-bottom{border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;align-items:center}.property-bottom strong{font-size:19px;color:var(--forest)}.property-bottom a{color:var(--forest)}.empty-listings{display:grid;grid-template-columns:1.1fr 1fr;gap:0;min-height:320px;background:#f2f5f0}.empty-listings>div{padding:45px 55px;align-self:center}.empty-listings h3{font:400 36px var(--serif);margin-bottom:13px}.empty-listings p{color:var(--muted);margin-bottom:25px}.empty-listings img{height:100%;width:100%;object-fit:cover}.amenities-section{background:var(--cream)}.amenities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.amenity-card{padding:37px 33px;background:white;border:1px solid #edf0ea;min-height:220px;transition:transform .2s}.amenity-card:hover{transform:translateY(-4px)}.amenity-icon{color:var(--forest);margin-bottom:24px}.amenity-card h3{font:400 23px var(--serif);margin-bottom:9px}.amenity-card p{color:var(--muted);font-size:13px;line-height:1.8;margin:0}.statement-section{background:var(--forest);padding:95px 0;color:white;overflow:hidden}.statement-grid{display:grid;grid-template-columns:1fr .93fr;align-items:center;gap:110px}.statement-grid h2{font-size:clamp(38px,4.4vw,62px);max-width:570px}.statement-grid p{color:#c7d7ce;margin:22px 0 30px;max-width:480px}.statement-image{position:relative}.statement-image img{height:390px;width:100%;object-fit:cover}.statement-image:before{content:'';position:absolute;inset:-20px 20px 20px -20px;border:1px solid rgba(224,194,140,.45);pointer-events:none}.statement-image span{position:absolute;bottom:18px;left:18px;background:var(--gold);padding:7px 14px;font-size:9px;letter-spacing:.15em;font-weight:800;color:var(--forest)}.block-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.block-card{position:relative;display:block;height:265px;overflow:hidden;background:#dbe5db}.block-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0c2e26dd,transparent 65%)}.block-card img{height:100%;width:100%;object-fit:cover;transition:transform .4s}.block-card:hover img{transform:scale(1.07)}.block-card>div{position:absolute;bottom:22px;left:24px;z-index:1;color:white}.block-card>div span{font-size:10px;letter-spacing:.15em;color:var(--gold2)}.block-card h3{font:400 30px var(--serif);margin:4px 0 0}.block-card i{position:absolute;z-index:1;bottom:26px;right:24px;color:white}.gallery-section{background:var(--cream)}.gallery-home-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:215px 215px;gap:13px}.gallery-home-grid a{position:relative;overflow:hidden;background:#e3e9df}.gallery-home-grid a:first-child{grid-row:span 2}.gallery-home-grid a img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery-home-grid a:hover img{transform:scale(1.06)}.gallery-home-grid a:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#09271f8a)}.gallery-home-grid a span{position:absolute;bottom:15px;left:17px;color:white;font-weight:700;z-index:1;font-size:12px}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.news-card{border:1px solid var(--line);display:block}.news-card img{width:100%;height:215px;object-fit:cover}.news-card>div{padding:24px}.news-card span{font-size:10px;letter-spacing:.1em;color:#b48d5a;font-weight:800}.news-card h3{font:400 25px/1.3 var(--serif);margin:10px 0}.news-card p{color:var(--muted);font-size:13px;margin:0}.contact-band{background:var(--deep);color:white;padding:75px 0}.contact-band-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.contact-band h2{margin:0 0 10px;font-size:46px}.contact-band p{color:#bfd1c7;margin:0}.site-footer{background:#071d17;color:#b4c8bc;padding:77px 0 0}.footer-top{display:grid;grid-template-columns:2.1fr 1fr 1fr 1.25fr;gap:65px;padding-bottom:65px}.brand-light .brand-copy strong{color:#fff}.brand-light .brand-copy small{color:#b9c4b9}.footer-intro p{max-width:280px;font-size:13px;line-height:1.85;margin:26px 0}.footer-contact-link{display:inline-flex;align-items:center;gap:10px;color:var(--gold2);font-size:12px;font-weight:700}.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:11px}.footer-col h4{font-size:12px;color:#fff;margin:5px 0 14px}.footer-col a,.footer-col span{font-size:12px;line-height:1.8;overflow-wrap:anywhere}.footer-col a:hover{color:var(--gold2)}.footer-bottom{border-top:1px solid #234037;padding:23px 0;display:flex;justify-content:space-between;gap:20px;font-size:11px}.floating-whatsapp{position:fixed;right:24px;bottom:24px;width:55px;height:55px;border-radius:50%;background:#1ba75c;color:white;z-index:70;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px #114e2b66;transition:transform .2s}.floating-whatsapp:hover{transform:scale(1.08)}.flash{padding:13px 30px;text-align:center;font-size:13px;background:#e5f4e8;color:#25633a}.flash.error{background:#fce8e5;color:#9c332c}.page-banner{background:var(--forest);color:white;padding:94px 0 73px;position:relative;overflow:hidden}.page-banner:after{content:'JPC';position:absolute;right:3%;top:-90px;font:300 300px var(--serif);color:#ffffff08;pointer-events:none}.page-banner .container{position:relative;z-index:1}.page-banner h1{font-size:clamp(48px,6vw,78px);margin:0 0 14px;max-width:900px}.page-banner p{color:#c4d5ca;max-width:650px}.breadcrumbs{display:flex;align-items:center;gap:13px;color:#b3c8ba;font-size:11px;margin-top:25px}.breadcrumbs a{color:var(--gold2)}.detail-hero{background:linear-gradient(90deg,#09261ee8,#0a2b2280),var(--detail-image) center/cover;padding:145px 0 125px;color:white}.detail-hero h1{font-size:clamp(50px,6vw,85px);margin-bottom:15px}.detail-hero p{display:flex;align-items:center;gap:6px;color:#e0eae1}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:75px;align-items:start}.detail-main>h2{font-size:42px;max-width:650px}.rich-text{white-space:normal;color:#6e7c72;font-size:15px;line-height:2;overflow-wrap:anywhere}.detail-feature-strip{display:flex;flex-wrap:wrap;gap:18px;border-block:1px solid var(--line);padding:22px 0;margin:38px 0;color:var(--forest);font-size:12px;font-weight:700}.detail-feature-strip span{display:flex;align-items:center;gap:8px}.subsection-title{font:400 32px var(--serif);margin:45px 0 22px}.detail-main .block-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-main .block-card{height:220px}.detail-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.detail-gallery img{width:100%;height:150px;object-fit:cover}.detail-aside{position:sticky;top:25px}.inquiry-form{background:#f7f8f4;padding:33px}.inquiry-form h3{font:400 32px var(--serif);margin:0 0 8px}.inquiry-form p{color:var(--muted);font-size:12px;margin-bottom:22px}.inquiry-form label{display:block;font-size:11px;font-weight:800;color:#576c5f;letter-spacing:.02em;margin-bottom:15px}.inquiry-form label span{color:#b47451}.inquiry-form input,.inquiry-form textarea{width:100%;background:white;border:1px solid #dfe7de;border-radius:0;padding:12px 13px;margin-top:6px;color:var(--ink);outline:none;font-size:13px;transition:border-color .2s}.inquiry-form input:focus,.inquiry-form textarea:focus{border-color:#789d87}.inquiry-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.inquiry-form button{width:100%;margin-top:7px}.inquiry-form>small{display:block;font-size:10px;color:#88988b;margin-top:15px;text-align:center}.honeypot{position:absolute!important;left:-99999px!important;height:0!important;overflow:hidden!important}.aside-whatsapp{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;margin-top:13px;border:1px solid var(--forest);color:var(--forest);font-weight:800;font-size:12px}.listing-filter{display:grid;grid-template-columns:1.3fr 1.1fr 1fr 1fr auto;gap:15px;padding:25px;background:var(--cream);align-items:end}.listing-filter label{font-size:10px;font-weight:800;letter-spacing:.08em;color:#738579}.listing-filter input,.listing-filter select{display:block;margin-top:7px;width:100%;border:1px solid #dfe5dd;padding:12px;background:white;outline:none;color:#344a3e;font-size:12px;min-height:45px}.listing-filter button{min-height:45px;padding:13px 18px}.listing-result-head{display:flex;justify-content:space-between;align-items:center;margin:40px 0 22px}.listing-result-head h2{font-size:34px;margin:0}.listing-result-head span{font-size:12px;color:var(--muted)}.empty-state{text-align:center;background:#f4f7f3;padding:65px 25px;color:#65766a;margin:20px 0}.empty-state h3{font:400 32px var(--serif);color:var(--forest)}.empty-state p{max-width:500px;margin:0 auto 22px}.property-detail-image{height:520px;position:relative;background:#e5ece7;margin-bottom:48px}.property-detail-image img{width:100%;height:100%;object-fit:cover}.property-detail-image span{position:absolute;top:22px;left:22px;background:var(--forest);color:white;padding:8px 16px;font-size:12px}.property-price-row{display:flex;align-items:start;justify-content:space-between;gap:25px}.property-price-row h2{font-size:40px;margin-bottom:10px}.property-price-row p{display:flex;gap:7px;align-items:center;color:var(--muted)}.property-price-row>strong{font-size:23px;white-space:nowrap;color:var(--forest)}.property-specs{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:30px 0}.property-specs>div{background:#f6f8f5;padding:20px}.property-specs small{display:block;font-size:10px;color:#89978b;letter-spacing:.1em;font-weight:800}.property-specs strong{display:block;font-size:14px;margin-top:8px}.disclaimer{font-size:12px;color:#7f8b82;margin-top:25px}.block-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.block-list-card{border:1px solid var(--line)}.block-list-card img{width:100%;height:260px;object-fit:cover}.block-list-card>div{padding:30px}.block-list-card h2{font-size:34px}.block-list-card p{color:var(--muted)}.gallery-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:35px}.gallery-tabs a{padding:10px 21px;background:#f3f6f2;color:var(--forest);font-size:12px;font-weight:700}.gallery-tabs a.active,.gallery-tabs a:hover{background:var(--forest);color:white}.gallery-full-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-tile{height:290px;position:relative;overflow:hidden}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery-tile:hover img{transform:scale(1.05)}.gallery-tile span{position:absolute;bottom:0;left:0;right:0;padding:18px;background:linear-gradient(transparent,#0b3027dc);color:white;display:flex;justify-content:space-between;align-items:center;font-size:13px}.article-detail{max-width:820px}.article-detail>img{width:100%;height:430px;object-fit:cover;margin-bottom:40px}.article-detail h2{font-size:44px}.article-lead{font-size:18px;color:#4b6457}.article-detail .rich-text{margin:30px 0}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.about-image{position:relative}.about-image img{height:510px;width:100%;object-fit:cover}.about-image span{position:absolute;bottom:0;left:0;background:var(--gold);padding:13px 24px;font-size:11px;font-weight:800;letter-spacing:.1em}.about-layout h2{margin-bottom:24px}.about-checks{display:grid;grid-template-columns:repeat(2,1fr);gap:17px;margin:30px 0}.about-checks span{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700}.about-checks svg{color:#4d8b5b}.values-section{background:var(--cream)}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.values-grid>div{padding:38px;background:white}.values-grid span{font:400 48px var(--serif);color:#c5ad84}.values-grid h3{font:400 28px var(--serif);margin:16px 0 8px}.values-grid p{font-size:13px;color:var(--muted);margin:0}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:105px;align-items:start}.contact-info h2{font-size:52px}.contact-info>p{color:var(--muted);margin:25px 0 45px}.contact-detail{display:flex;gap:20px;align-items:flex-start;border-bottom:1px solid var(--line);padding:20px 0}.contact-detail>svg{color:#ad8a57}.contact-detail small{display:block;color:#7d9081;font-size:10px;letter-spacing:.13em;font-weight:800;margin-bottom:5px}.contact-detail a,.contact-detail span{display:block;font-size:16px;font-weight:600;overflow-wrap:anywhere}.contact-info .btn{margin-top:30px}.contact-form-panel .inquiry-form{padding:40px}.policy-content{max-width:790px}.policy-content h2{font-size:36px}.policy-content p{color:var(--muted);line-height:2}.policy-content a{text-decoration:underline}.thanks-page{text-align:center;padding:125px 0 140px}.thanks-page .eyebrow{justify-content:center}.thanks-page h1{font-size:55px}.thanks-page p{color:var(--muted);max-width:520px;margin:0 auto 25px}.thanks-icon{width:70px;height:70px;background:#e6f3e9;color:#257b43;display:flex;align-items:center;justify-content:center;border-radius:50%;margin:0 auto 22px}
@media(max-width:1120px){.site-nav{gap:15px}.site-nav a{font-size:11px}.brand{min-width:165px}.brand-copy strong{font-size:18px}.brand-copy small{font-size:8px}.header-cta{padding:12px}.intro-grid,.statement-grid,.contact-grid,.about-layout{gap:60px}.detail-layout{gap:40px;grid-template-columns:minmax(0,1fr) 340px}}
@media(max-width:900px){.top-strip-inner>span{display:none}.top-strip-inner{justify-content:flex-end}.header-inner{height:75px}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:17px 30px 25px;box-shadow:0 15px 30px #0e302015;gap:0}.site-nav.open{display:flex}.site-nav a{font-size:14px;padding:11px 0;border-bottom:1px solid var(--line)}.site-nav a.active:after{display:none}.menu-toggle{display:block}.header-cta{margin-left:auto}.hero{min-height:580px;height:650px}.hero-copy{max-width:610px}.hero-side-note{display:none}.search-panel{grid-template-columns:repeat(2,1fr)}.search-panel-intro{grid-column:span 2}.search-panel button{width:100%}.intro-grid,.statement-grid,.about-layout{gap:35px}.intro-images{height:430px}.intro-main-img{height:390px}.intro-small-img{height:180px}.amenities-grid{grid-template-columns:repeat(2,1fr)}.property-grid{grid-template-columns:repeat(2,1fr)}.footer-top{gap:35px;grid-template-columns:1.5fr 1fr 1fr}.footer-col:last-child{grid-column:2/span 2}.detail-layout{grid-template-columns:1fr}.detail-aside{position:static;max-width:650px}.listing-filter{grid-template-columns:repeat(2,1fr)}.listing-filter button{width:100%}.contact-grid{grid-template-columns:1fr}.gallery-full-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.container{width:min(100% - 34px,1180px)}.top-strip-inner{min-height:30px}.top-strip-inner>div{gap:16px}.top-strip{font-size:10px}.header-inner{height:72px}.brand{min-width:0}.brand-mark{height:39px;width:39px}.brand-mark span{font-size:27px}.brand-copy strong{font-size:18px}.brand-copy small{font-size:7px}.header-cta{display:none}.hero{height:auto;min-height:630px}.hero-inner{align-items:flex-start;padding-top:96px}.hero-copy{padding:0 0 135px}.hero h1{font-size:clamp(50px,11vw,70px);max-width:520px}.hero-copy>p{font-size:14px;line-height:1.85}.hero-actions{gap:16px;flex-wrap:wrap}.btn{padding:15px 19px;gap:12px}.hero-text-link{font-size:11px}.hero-scroll{bottom:70px;left:17px}.search-panel{margin-top:-40px;padding:20px 18px;gap:14px;grid-template-columns:1fr 1fr}.search-panel-intro{grid-column:span 2}.search-panel label{border-left:0;padding-left:0}.search-panel label:nth-of-type(1){grid-column:span 2}.search-panel button{height:46px;grid-column:span 2;gap:10px}.search-panel button span{display:inline}.section{padding:72px 0}.intro-section{padding-top:100px}.intro-grid,.statement-grid,.about-layout{grid-template-columns:1fr;gap:35px}.intro-images{height:330px}.intro-main-img{height:300px;width:85%}.intro-small-img{height:140px;width:47%;border-width:6px}.intro-stamp{right:0;top:18px;width:83px;height:83px}.intro-stamp strong{font-size:26px}.intro-stamp span{font-size:7px}.intro-content h2,.section-heading h2{font-size:39px}.section-heading{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:30px}.section-heading .text-link{margin:0}.project-grid,.property-grid,.block-grid,.block-list-grid,.news-grid,.amenities-grid,.values-grid{grid-template-columns:1fr}.project-card{height:395px}.project-card-bottom h3{font-size:33px}.project-card-bottom{left:23px;right:20px;bottom:23px}.project-card-top{left:22px;top:22px}.empty-listings{grid-template-columns:1fr}.empty-listings>div{padding:35px 28px}.empty-listings img{height:190px}.amenity-card{min-height:0;padding:25px}.statement-section{padding:75px 0}.statement-grid{gap:45px}.statement-grid h2{font-size:43px}.statement-image img{height:260px}.statement-image:before{display:none}.block-card{height:250px}.gallery-home-grid{grid-template-columns:1fr 1fr;grid-template-rows:230px 160px}.gallery-home-grid a:first-child{grid-column:span 2;grid-row:auto}.contact-band{padding:62px 0}.contact-band-inner{align-items:flex-start;flex-direction:column}.contact-band h2{font-size:39px}.footer-top{grid-template-columns:1fr 1fr;gap:32px}.footer-intro{grid-column:span 2}.footer-col:last-child{grid-column:span 2}.footer-bottom{flex-direction:column;gap:6px}.page-banner{padding:75px 0 58px}.page-banner h1{font-size:52px}.detail-hero{padding:95px 0}.detail-hero h1{font-size:55px}.detail-main>h2{font-size:35px}.detail-main .block-grid{grid-template-columns:1fr}.detail-gallery{grid-template-columns:repeat(2,1fr)}.detail-gallery img{height:140px}.inquiry-form{padding:24px}.inquiry-form .form-grid{grid-template-columns:1fr;gap:0}.listing-filter{grid-template-columns:1fr}.listing-result-head h2{font-size:30px}.property-detail-image{height:285px}.property-price-row{flex-direction:column}.property-price-row h2{font-size:33px}.gallery-full-grid{grid-template-columns:1fr}.gallery-tile{height:275px}.article-detail>img{height:240px}.article-detail h2{font-size:35px}.about-image img{height:340px}.contact-info h2{font-size:42px}.contact-form-panel .inquiry-form{padding:25px}.thanks-page{padding:90px 0}.thanks-page h1{font-size:44px}.floating-whatsapp{width:50px;height:50px;right:16px;bottom:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.table-responsive{overflow-x:auto}.plans-table{width:100%;border-collapse:collapse;min-width:550px}.plans-table th{text-align:left;padding:15px;background:#e8efe8;color:#4e6556;font-size:11px}.plans-table td{padding:16px;border-bottom:1px solid var(--line);font-size:12px}.plans-table td strong,.plans-table td small{display:block}.plans-table td small{color:var(--muted)}.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.plan-card{border:1px solid var(--line);padding:30px;background:#fbfcf9}.plan-card h2{font-size:31px;margin-bottom:8px}.plan-card>p{color:var(--muted);font-size:13px}.plan-total{background:var(--forest);color:white;padding:20px;margin:22px 0}.plan-total small{display:block;color:var(--gold2);font-size:10px;letter-spacing:.12em}.plan-total strong{font-size:25px}.plan-row{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}.plan-notes{margin:18px 0;color:var(--muted)}.plan-card .btn{width:100%}@media(max-width:900px){.plans-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.plans-grid{grid-template-columns:1fr}}

.brand-logo-img{display:block;width:124px;height:82px;max-height:82px;object-fit:contain;object-position:left center;flex-shrink:0}.brand-light{width:178px;min-width:178px;flex:0 0 178px;padding:7px;background:#fff;border-radius:3px}.brand-light .brand-logo-img{width:164px;height:112px;max-height:112px;object-position:center}.footer-intro .brand{margin-bottom:20px}@media(max-width:1120px){.brand{min-width:112px;width:112px;flex-basis:112px}.brand-logo-img{width:112px;height:76px}}@media(max-width:640px){.brand{min-width:96px;width:96px;flex-basis:96px}.brand-logo-img{width:96px;height:65px;max-height:65px}.brand-light{width:160px;min-width:160px;flex-basis:160px}.brand-light .brand-logo-img{width:146px;height:100px}}

/* JOIYA HOMEPAGE V2 — Safari Garden reference sections */
.safari-stats-section{padding:76px 0 84px;background:#f6f7f2}
.safari-stats-intro,.location-top,.location-connectivity-head,.community-gallery-head,.landmark-heading{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:32px}
.safari-stats-intro h2,.location-top h2,.community-gallery-head h2,.landmark-heading h2{margin:0;max-width:780px;font-size:clamp(36px,4.4vw,64px);color:#123d2e}
.safari-stats-intro>p,.location-top>p,.location-connectivity-head>p,.landmark-heading>p{max-width:315px;font-size:13px;line-height:1.8;color:#6b7d72;margin:0}
.safari-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #d6ded5;border-bottom:1px solid #d6ded5}
.safari-stat{text-align:center;padding:50px 20px 45px;position:relative}
.safari-stat+.safari-stat:before{content:"";height:48%;width:1px;background:#d6ded5;position:absolute;left:0;top:26%}
.safari-stat strong{display:block;font:500 clamp(45px,5.8vw,80px)/1.15 var(--sans);letter-spacing:-.055em;color:#173d31;font-variant-numeric:tabular-nums}
.safari-stat strong::first-letter{letter-spacing:-.06em}
.safari-stat span{display:block;margin-top:13px;color:#5a6d61;font-size:clamp(13px,1.6vw,18px)}
.safari-reference-note{font-size:11px;color:#738276;line-height:1.7;margin:20px 0 0;max-width:1000px}
.safari-location-section{background:#f8f9f5}
.safari-map-card{padding:20px;background:#fff;border:1px solid #e6eae4;box-shadow:0 12px 36px #0a241e0a}
.safari-map-card a{display:block;position:relative;overflow:hidden}
.safari-map-card img{width:100%;max-height:590px;object-fit:contain;object-position:center;background:white}
.map-open-label{position:absolute;bottom:14px;right:14px;background:#153d32;color:#fff;padding:10px 15px;font-size:11px;font-weight:700;display:flex;gap:9px;align-items:center}
.location-connectivity-head{margin:56px 0 24px}
.location-connectivity-head h3{font:400 clamp(28px,3.2vw,42px)/1.2 var(--serif);margin:0}
.location-connectivity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.location-connectivity-item{background:white;border:1px solid #e5ebe3;padding:23px 22px;display:flex;align-items:flex-start;gap:16px;min-height:112px}
.location-connectivity-icon{width:42px;height:42px;min-width:42px;display:grid;place-items:center;background:#f5f3eb;color:#ad8b4f;border-radius:50%}
.location-connectivity-item h4{font-size:15px;font-weight:700;line-height:1.35;margin:2px 0 7px;color:#183b30}
.location-connectivity-item p{font-size:12px;color:#6d7e74;line-height:1.5;margin:0}
.community-gallery-section{background:#fff}
.community-gallery-head{margin-bottom:34px}
.community-gallery-actions{display:flex;align-items:center;gap:24px;white-space:nowrap}
.slider-buttons{display:flex;gap:8px}
.slider-arrow{width:42px;height:42px;border:1px solid #cdd9d0;background:#fff;color:#194535;font-size:22px;display:grid;place-items:center;transition:background .2s,color .2s}
.slider-arrow:hover,.slider-arrow:focus-visible{background:#164536;color:#fff}
.community-gallery-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#a6b9ac #eef2ee;padding-bottom:12px;overscroll-behavior-x:contain}
.community-photo-card{flex:0 0 calc((100% - 40px)/3);min-width:0;scroll-snap-align:start;position:relative;background:#eaf0e8;overflow:hidden;aspect-ratio:0.79}
.community-photo-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.community-photo-card:hover img{transform:scale(1.04)}
.community-photo-card:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#062f23c7);pointer-events:none}
.community-photo-caption{position:absolute;bottom:23px;left:23px;right:20px;color:white;z-index:1}
.community-photo-caption span{font-size:9px;letter-spacing:.16em;color:#f4dfae;font-weight:800}
.community-photo-caption h3{font:400 28px/1.2 var(--serif);margin:7px 0 0}
.landmark-section{background:#f5f7f2}
.landmark-heading{margin-bottom:30px}
.landmark-showcase{background:#fff;border:1px solid #e4eae3;padding:34px 36px 22px;box-shadow:0 16px 48px #0c302211}
.landmark-main{min-height:310px}
.landmark-slide{display:grid;grid-template-columns:1.2fr .9fr;gap:35px;align-items:center;min-height:310px}
.landmark-slide[hidden]{display:none!important}
.landmark-image{height:290px;background:#f8faf7;overflow:hidden;display:grid;place-items:center}
.landmark-image img{width:100%;height:100%;object-fit:contain;object-position:center}
.landmark-content{padding:15px 20px}
.landmark-index{font-size:11px;color:#ae8c50;letter-spacing:.16em;font-weight:800}
.landmark-content h3{font:400 clamp(30px,4vw,53px)/1.1 var(--serif);margin:13px 0 20px;color:#133c2d}
.landmark-time{display:inline-flex;align-items:center;gap:10px;background:#164c36;color:#fff;font-size:13px;font-weight:700;padding:12px 17px}
.landmark-content>p{font-size:13px;max-width:330px;color:#6e7f73;line-height:1.75;margin:23px 0 0}
.landmark-route{position:relative;margin:26px 0 8px;padding:18px 0 4px}
.landmark-route-track{position:absolute;left:0;right:0;top:16px;height:90px;pointer-events:none}
.landmark-route-track svg{height:100%;width:100%;fill:none;stroke:#9baba0;stroke-width:1.4;opacity:.9}
.landmark-dots{display:flex;align-items:start;justify-content:space-between;position:relative;z-index:1;gap:7px}
.landmark-dot{display:flex;align-items:center;flex-direction:column;gap:13px;min-width:0;width:19%;border:0;background:transparent;color:#51665a;font:700 11px/1.3 var(--sans);padding:12px 4px;cursor:pointer;text-align:center}
.dot-circle{width:16px;height:16px;background:#b9d1b6;border:3px solid #235b35;border-radius:50%;box-shadow:0 0 0 4px #fff;transition:transform .2s,background .2s}
.landmark-dot.is-active .dot-circle{transform:scale(1.25);background:#80d24c;box-shadow:0 0 0 5px #dfeee0}
.landmark-dot.is-active{color:#0d3d2b}
.landmark-dot:focus-visible{outline:2px solid #a8884c;outline-offset:2px}
.landmark-controls{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e5ece5;margin-top:16px;padding-top:19px;color:#718274;font-size:12px}
.landmark-control{background:transparent;border:1px solid #cddad0;color:#204d3c;padding:10px 15px;font:700 12px var(--sans)}
.landmark-control:hover{background:#143d31;color:#fff}
.homepage-inquiry-section{background:#133b2e;color:#fff}
.homepage-inquiry-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}
.homepage-inquiry-intro{padding-top:42px}
.homepage-inquiry-intro h2{font-size:clamp(38px,4.7vw,62px);color:white}
.homepage-inquiry-intro>p{max-width:440px;color:#d5e5da;line-height:1.85;font-size:15px}
.homepage-inquiry-contact{display:flex;flex-direction:column;gap:15px;margin-top:38px}
.homepage-inquiry-contact span{display:flex;align-items:center;gap:13px;color:#f4db9e;font-size:13px;overflow-wrap:anywhere}
.homepage-inquiry-panel{background:white;color:#173c2f;padding:14px}
.homepage-inquiry-panel .inquiry-form{border:0;box-shadow:none}
.footer-social-row{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #284b3d;padding:26px 0}
.footer-social-row>div:first-child{display:flex;flex-direction:column;gap:3px}
.footer-social-row strong{font-size:14px;color:white}
.footer-social-row span{font-size:11px;color:#a6bdb0}
.footer-social-links{display:flex;align-items:center;gap:12px}
.footer-social-links a,.footer-social-links .social-unset{display:grid;place-items:center;width:42px;height:42px;border:1px solid #6b927e;border-radius:50%;color:#fff;background:#244e3c;transition:background .2s}
.footer-social-links a:hover{background:#bc9b63;color:#0c3025}
.footer-social-links .social-unset{opacity:.5;cursor:default}
@media(max-width:900px){.safari-stats-intro,.location-top,.location-connectivity-head,.community-gallery-head,.landmark-heading{align-items:start;flex-direction:column;gap:15px}.location-connectivity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.community-photo-card{flex-basis:calc((100% - 20px)/2)}.homepage-inquiry-grid{gap:35px}.landmark-slide{grid-template-columns:1fr 1fr;gap:10px}}
@media(max-width:640px){
 .safari-stats-section{padding:58px 0}.safari-stats-grid{grid-template-columns:1fr 1fr}.safari-stat{padding:28px 10px}.safari-stat:last-child{grid-column:1/-1;border-top:1px solid #d6ded5}.safari-stat:nth-child(3):before{display:none}.safari-stat strong{font-size:clamp(35px,10vw,51px)}.safari-stat span{font-size:12px;margin-top:7px}
 .safari-stats-intro h2,.location-top h2,.community-gallery-head h2,.landmark-heading h2{font-size:clamp(32px,9vw,44px)}
 .safari-map-card{padding:7px}.safari-map-card img{max-height:none}.map-open-label{position:static;justify-content:center}
 .location-connectivity-head{margin:35px 0 20px}.location-connectivity-grid{grid-template-columns:1fr;gap:9px}.location-connectivity-item{padding:16px;min-height:82px}.location-connectivity-icon{width:38px;height:38px;min-width:38px}.location-connectivity-item h4{font-size:14px}
 .community-gallery-head{gap:22px}.community-gallery-actions{width:100%;justify-content:space-between}.community-photo-card{flex-basis:83%;aspect-ratio:.78}.community-photo-caption h3{font-size:26px}.community-gallery-track{gap:12px}
 .landmark-showcase{padding:14px 14px 16px}.landmark-main{min-height:0}.landmark-slide{grid-template-columns:1fr;gap:0;min-height:0}.landmark-image{height:190px}.landmark-content{padding:17px 7px}.landmark-content h3{font-size:32px;margin:7px 0 14px}.landmark-content>p{margin:12px 0 0}.landmark-route{padding-top:5px}.landmark-route-track{display:none}.landmark-dots{overflow-x:auto;justify-content:flex-start;gap:4px;scrollbar-width:thin}.landmark-dot{flex:0 0 95px;font-size:10px}.landmark-controls{margin-top:5px}.landmark-control{padding:9px}
 .homepage-inquiry-grid{grid-template-columns:1fr;gap:26px}.homepage-inquiry-intro{padding-top:0}.homepage-inquiry-intro h2{font-size:39px}.homepage-inquiry-panel{padding:6px}
 .footer-social-row{align-items:flex-start;flex-direction:column;gap:15px}.footer-social-links a,.footer-social-links .social-unset{width:45px;height:45px}
 .amenities-grid{gap:12px}.amenity-card{padding:20px 19px;min-height:0}.amenity-icon{margin-bottom:12px}.amenity-card h3{font-size:22px}.amenity-card p{font-size:12px;line-height:1.65}
 .floating-whatsapp{width:47px;height:47px;bottom:calc(15px + env(safe-area-inset-bottom,0px));right:14px;box-shadow:0 8px 20px #114e2b55}
}
@media(prefers-reduced-motion:reduce){.community-gallery-track{scroll-behavior:auto}}


/* V3 — supplied Safari Garden project photography and mobile destination carousel */
.community-gallery-subtitle{color:#6e7a72;font-size:14px;line-height:1.7;margin:12px 0 0;max-width:560px}
.community-photo-card{aspect-ratio:4/5;border:1px solid #e5e9e2}
.community-photo-card img{object-fit:cover;object-position:center}
.community-photo-caption{left:18px;right:18px;bottom:18px}
.community-photo-caption h3{font-size:25px}
.landmark-showcase{max-width:900px;margin:0 auto;padding:28px 34px 20px;border-radius:2px}
.landmark-main{min-height:0}
.landmark-slide{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:0;text-align:center}
.landmark-content{padding:0;text-align:center}
.landmark-index{font-size:10px;letter-spacing:.15em}
.landmark-content h3{font:500 clamp(29px,4vw,43px)/1.15 var(--sans);letter-spacing:-.04em;margin:8px 0 0;color:#164333}
.landmark-image{width:min(100%,700px);height:250px;overflow:visible;background:transparent;margin:0 auto}
.landmark-image img{width:100%;height:100%;object-fit:contain;object-position:center}
.landmark-help-row{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:-2px}
.landmark-help-row strong{font-size:16px;font-weight:700;color:#26352e}
.landmark-whatsapp{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:#20c66b;color:white;box-shadow:0 8px 22px #20c66b33;transition:transform .2s,box-shadow .2s}
.landmark-whatsapp:hover{transform:translateY(-2px);box-shadow:0 10px 26px #20c66b55}
.landmark-time{margin:4px auto 0;display:inline-flex;align-items:center;gap:9px;border-radius:7px;background:#0d4b32;color:white;padding:10px 16px;font-size:12px;font-weight:700;min-height:38px}
.landmark-time svg{color:#9dd56b}
.landmark-route{margin:20px 0 4px;padding:12px 0 0}
.landmark-route-track{top:0;height:74px}
.landmark-route-track svg{stroke:#9da99f;stroke-width:1.15}
.landmark-dots{align-items:flex-start}
.landmark-dot{font-size:10px;line-height:1.35;gap:9px;color:#496255}
.dot-circle{width:14px;height:14px;background:#82c86b;border:2px solid #165331}
.landmark-dot.is-active .dot-circle{background:#20c66b;box-shadow:0 0 0 4px #e1f2e2}
.landmark-controls{margin-top:10px}
@media(max-width:640px){
 .community-photo-card{flex-basis:83%;aspect-ratio:4/5}
 .community-photo-caption{left:15px;right:15px;bottom:15px}
 .community-photo-caption h3{font-size:23px}
 .landmark-showcase{padding:16px 12px 14px}
 .landmark-slide{gap:8px}
 .landmark-content h3{font-size:30px;margin-top:6px}
 .landmark-image{height:190px;width:100%}
 .landmark-help-row{gap:10px}
 .landmark-help-row strong{font-size:14px}
 .landmark-whatsapp{width:39px;height:39px}
 .landmark-time{margin-top:2px;padding:9px 14px}
 .landmark-route{margin-top:14px;padding-top:4px}
 .landmark-route-track{display:none}
 .landmark-dots{overflow-x:auto;justify-content:flex-start;gap:3px;padding:4px 2px 9px;scrollbar-width:thin}
 .landmark-dot{flex:0 0 76px;font-size:9px;padding:6px 2px;gap:8px}
 .landmark-dot .dot-circle{width:13px;height:13px}
 .landmark-controls{margin-top:5px;padding-top:12px}
}


/* Full-install refinement: dedicated amenities page and balanced feature grid */
.amenities-page-intro{max-width:720px;margin:0 auto 34px;text-align:center;color:var(--muted);line-height:1.8}
.amenities-page .amenities-grid{margin-bottom:28px}
@media(min-width:1101px){
 .amenities-section .amenities-grid>.amenity-card:last-child:nth-child(3n+1){grid-column:2}
}

/* ================================================================
   V4 POLISH — Animated statistics, auto destination tour, gallery
   ================================================================ */
.safari-stats-section{position:relative;overflow:hidden;background:linear-gradient(135deg,#f8faf5 0%,#f1f5ed 100%);padding:86px 0 78px}
.safari-stats-section::before{content:"";position:absolute;right:-200px;top:-190px;width:510px;height:510px;border:1px solid #c5d4c755;border-radius:50%;pointer-events:none}
.safari-stats-intro{position:relative;z-index:1;margin-bottom:42px}
.safari-stats-intro h2{max-width:670px;letter-spacing:-.025em;line-height:1.08}
.safari-stats-intro>p{max-width:295px}
.safari-stats-grid{position:relative;z-index:1;border-color:#cdd9ce;grid-template-columns:repeat(3,minmax(0,1fr))}
.safari-stat{padding:49px 16px 42px}
.safari-stat strong{font-size:clamp(47px,5.6vw,76px);font-weight:500;white-space:nowrap;line-height:1.12;font-variant-numeric:tabular-nums}
.safari-stat span{font-size:clamp(12px,1.5vw,17px);line-height:1.45}
.safari-stats-section .safari-reference-note{margin-top:20px}
.amenity-card{transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.amenity-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px #0e39220d;border-color:#cbd8cb}
.amenity-card p{max-width:350px}
.motion-reveal{opacity:1;transform:none;transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms)}
.motion-reveal.reveal-pending:not(.is-revealed){opacity:0;transform:translateY(22px)}
.motion-reveal.is-revealed{opacity:1;transform:translateY(0)}

/* Landmark slides switch themselves every few seconds, without scrolling. */
.landmark-section{background:#f5f8f3}
.landmark-showcase{position:relative;overflow:hidden;max-width:980px;border-radius:12px;border-color:#dfe9de;box-shadow:0 22px 60px #0c302211;padding:35px 45px 23px}
.landmark-autoplay-progress{position:absolute;top:0;left:0;right:0;height:3px;background:#e6ede4;overflow:hidden}
.landmark-autoplay-progress>span{display:block;width:0;height:100%;background:linear-gradient(90deg,#b99655,#1e6847)}
.landmark-showcase.is-running .landmark-autoplay-progress>span{animation:landmark-timer 5.2s linear forwards}
@keyframes landmark-timer{from{width:0}to{width:100%}}
.landmark-slide{display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;min-height:0;animation:landmark-slide-in .7s cubic-bezier(.18,.78,.23,1) both}
.landmark-slide[hidden]{display:none!important}
@keyframes landmark-slide-in{from{opacity:0;transform:translateX(22px)}to{opacity:1;transform:translateX(0)}}
.landmark-content{padding:6px 0 8px}
.landmark-index{font-size:10px;letter-spacing:.18em}
.landmark-content h3{font-family:var(--serif);font-weight:400;letter-spacing:-.025em;font-size:clamp(32px,4vw,48px);line-height:1.13;margin:10px 0 14px}
.landmark-time{border-radius:100px;margin:0 auto 9px;padding:9px 17px;background:#eff6ed;color:#1c6042;border:1px solid #dce9da;min-height:0;box-shadow:none;font-size:12px}
.landmark-time svg{color:#b08e4b}
.landmark-image{width:100%;max-width:760px;height:clamp(190px,28vw,320px);margin:3px auto 0;display:grid;place-items:center;overflow:hidden;background:transparent}
.landmark-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:drop-shadow(0 9px 12px #14291c0b)}
.landmark-help-row{display:flex;align-items:center;justify-content:center;gap:13px;margin:10px auto 2px;flex-wrap:wrap}
.landmark-help-row>span{font-size:13px;color:#65796b}
.landmark-whatsapp{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:auto;height:auto;padding:11px 17px;border-radius:50px;background:#154b37;color:white;box-shadow:none;text-decoration:none;font-size:12px;font-weight:700}
.landmark-whatsapp:hover{background:#24684b;box-shadow:0 8px 22px #154b3726}
.landmark-route{margin:28px 0 8px;padding-top:14px}
.landmark-route-track{top:2px;height:90px}
.landmark-dot{transition:color .2s ease}
.landmark-dot.is-active .dot-circle{background:#39c779;border-color:#14553a;box-shadow:0 0 0 5px #e1f4e5}
.landmark-controls{margin-top:18px;padding-top:15px}
.landmark-controls-middle{display:flex;align-items:center;gap:17px;color:#60766a;font-size:12px;font-weight:700;letter-spacing:.08em}
.landmark-play-toggle{background:none;border:0;color:#164d37;font:700 12px var(--sans);text-decoration:underline;text-underline-offset:4px;cursor:pointer;padding:8px}
.landmark-play-toggle:focus-visible,.autoplay-toggle:focus-visible{outline:2px solid #bd9b62;outline-offset:4px}
.landmark-control{border-radius:6px;cursor:pointer}

/* Community cards advance automatically and can still be swiped. */
.community-gallery-section{overflow:hidden;background:#fff;padding-bottom:82px}
.community-gallery-head{align-items:flex-end}
.community-gallery-head h2{max-width:720px;line-height:1.07}
.community-gallery-track{gap:16px;padding:4px 0 12px;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory;scroll-padding:0}
.community-gallery-track::-webkit-scrollbar{display:none}
.community-photo-card{flex:0 0 calc((100% - 32px)/3);aspect-ratio:4/5;border:0;border-radius:7px;box-shadow:0 10px 24px #0e39220d}
.community-photo-card img{object-position:center}
.community-photo-card:after{inset:35% 0 0;background:linear-gradient(transparent,#052c22d9)}
.community-photo-caption{left:22px;right:20px;bottom:22px}
.community-photo-caption h3{font-size:clamp(22px,2.4vw,30px);line-height:1.15}
.community-gallery-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:16px}
.community-gallery-progress{flex:1;height:3px;max-width:650px;background:#e7ede7;overflow:hidden;border-radius:3px}
.community-gallery-progress span{display:block;height:100%;width:5%;background:#b89858;transition:width .65s ease}
.community-gallery-status{display:flex;align-items:center;gap:18px;white-space:nowrap}
.community-gallery-status>span{color:#254f3a;font-size:12px;letter-spacing:.08em;font-weight:800;font-variant-numeric:tabular-nums}
.autoplay-toggle{border:0;background:none;color:#315b45;display:inline-flex;align-items:center;gap:7px;font:700 11px var(--sans);cursor:pointer;padding:8px 0}
.community-gallery-section .safari-reference-note{margin-top:12px}

@media(max-width:900px){
 .landmark-showcase{padding:28px 24px 20px}
 .community-photo-card{flex-basis:calc((100% - 16px)/2)}
}
@media(max-width:640px){
 .safari-stats-section{padding:65px 0 61px}
 .safari-stats-intro{margin-bottom:26px}
 .safari-stats-intro h2{font-size:clamp(34px,8.7vw,46px);line-height:1.12}
 .safari-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .safari-stat{padding:27px 5px 25px}
 .safari-stat strong{font-size:clamp(34px,9.2vw,49px);letter-spacing:-.06em}
 .safari-stat span{font-size:12px;margin-top:7px}
 .safari-stat:last-child{padding:30px 5px 28px}
 .safari-stat:last-child strong{font-size:clamp(42px,10vw,55px)}
 .safari-stats-section .safari-reference-note{font-size:10px}
 .amenity-card{padding:24px 22px 26px;min-height:0}
 .amenity-card h3{font-size:clamp(22px,6vw,27px);line-height:1.23}
 .amenity-card p{font-size:13px;line-height:1.7}
 .landmark-heading{margin-bottom:25px}
 .landmark-showcase{padding:26px 16px 16px;border-radius:9px}
 .landmark-content{padding:4px 0 7px}
 .landmark-content h3{font-size:clamp(29px,7.8vw,40px);margin:8px 0 12px}
 .landmark-index{font-size:9px;letter-spacing:.12em}
 .landmark-image{height:210px;max-width:100%;margin:4px auto 0}
 .landmark-help-row{margin-top:10px;gap:10px}
 .landmark-help-row>span{font-size:12px}
 .landmark-whatsapp{padding:10px 14px;font-size:11px}
 .landmark-time{padding:8px 13px;font-size:11px}
 .landmark-route{margin:18px 0 4px;padding-top:4px}
 .landmark-dots{gap:3px;padding:5px 1px 9px;scrollbar-width:none}
 .landmark-dot{flex:0 0 77px;font-size:10px;gap:8px}
 .landmark-controls{margin-top:8px;gap:4px;padding-top:13px}
 .landmark-control{padding:10px 9px;font-size:11px}
 .landmark-controls-middle{gap:4px;flex-direction:column;font-size:11px}
 .landmark-play-toggle{font-size:11px;padding:3px 6px}
 .community-gallery-section{padding-bottom:60px}
 .community-gallery-head{gap:17px}
 .community-gallery-actions{gap:10px}
 .community-photo-card{flex-basis:78%;aspect-ratio:4/5;border-radius:5px}
 .community-gallery-track{gap:12px}
 .community-photo-caption{left:16px;right:14px;bottom:18px}
 .community-photo-caption h3{font-size:25px}
 .community-gallery-footer{gap:12px;margin-top:12px}
 .community-gallery-status{gap:10px}
 .autoplay-toggle{font-size:10px}
 .autoplay-toggle svg{display:none}
}
@media(prefers-reduced-motion:reduce){
 .motion-reveal{opacity:1!important;transform:none!important;transition:none!important}
 .landmark-slide{animation:none!important}
 .landmark-showcase.is-running .landmark-autoplay-progress>span{animation:none!important}
 .community-gallery-track{scroll-behavior:auto!important}
 .community-gallery-progress span{transition:none!important}
}

/* Keep every destination visible on mobile, including the curved route. */
@media(max-width:640px){
 .landmark-route{min-height:105px;margin:17px 0 3px;padding:0 0 2px}
 .landmark-route-track{display:block;top:4px;height:66px;opacity:.8}
 .landmark-dots{display:flex;overflow:visible;gap:0;align-items:flex-start;justify-content:space-between;padding:0}
 .landmark-dot{flex:1 1 20%;width:20%;min-width:0;padding:4px 1px;gap:7px;font-size:9px;line-height:1.25;overflow-wrap:anywhere}
 .landmark-dot:nth-child(1){margin-top:18px}
 .landmark-dot:nth-child(2){margin-top:0}
 .landmark-dot:nth-child(3){margin-top:20px}
 .landmark-dot:nth-child(4){margin-top:38px}
 .landmark-dot:nth-child(5){margin-top:4px}
}


/* V5 — Founder & Owner profile. Works on desktop and mobile. */
.founder-teaser{background:#f3f6f1;padding:95px 0}
.founder-teaser-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:center;gap:clamp(45px,8vw,120px)}
.founder-teaser-photo{position:relative;max-width:470px;aspect-ratio:4/4.3;overflow:hidden;background:radial-gradient(circle at 50% 33%,#faf9f4 0%,#eaf0e8 58%,#d7e2d5 100%)}
.founder-teaser-photo img{width:100%;height:100%;object-fit:contain;object-position:center bottom;transform:scale(1.035);transform-origin:center bottom;filter:drop-shadow(0 16px 24px rgba(25,55,41,.08))}
.founder-photo-caption{position:absolute;bottom:20px;left:20px;background:#fff;padding:10px 15px;color:#194533;font-size:10px;font-weight:800;letter-spacing:.15em}
.founder-teaser-content h2{font-size:clamp(40px,5vw,66px);max-width:600px;margin-bottom:22px}
.founder-teaser-content p{max-width:520px;color:#667b6f;font-size:16px;line-height:1.9;margin-bottom:32px}
.founder-teaser-content p strong{color:#193d30}
.founder-profile-section{background:#f5f7f2;padding:95px 0 110px;overflow:hidden}
.founder-profile-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:clamp(45px,6vw,100px);align-items:center}
.founder-profile-copy{min-width:0}
.founder-profile-copy .eyebrow{margin-bottom:13px}
.founder-profile-kicker{color:#7a887c;font-size:11px;font-weight:700;letter-spacing:.14em;margin-bottom:24px}
.founder-profile-copy h1{font-family:var(--sans);font-weight:800;letter-spacing:-.055em;line-height:1.05;color:#1d2b22;font-size:clamp(47px,5.1vw,78px);margin:0 0 22px}
.founder-name-row{display:flex;align-items:center;gap:17px;margin:0 0 27px}
.founder-name-rule{width:44px;height:2px;background:#b59559;flex:0 0 44px}
.founder-name-row h2{font:400 clamp(24px,2.6vw,34px)/1.25 var(--serif);margin:0;color:#194c36}
.founder-bio{color:#5c7167;font-size:clamp(15px,1.35vw,18px);line-height:1.95;max-width:660px;margin-bottom:29px}
.founder-contact-heading{color:#99805b;letter-spacing:.15em;font-size:10px;font-weight:800;margin-bottom:15px}
.founder-contact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 19px;max-width:650px}
.founder-contact{display:inline-flex;align-items:center;gap:10px;min-width:0;color:#142f25;font-size:clamp(12px,1.15vw,16px);font-weight:700;overflow-wrap:anywhere;transition:color .2s}
.founder-contact:hover{color:#ad8953}
.founder-contact-icon{flex:0 0 43px;width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:#e6ede5;color:#245d3c}
.founder-email{grid-column:1/-1}
.founder-cta{margin-top:34px}
.founder-profile-visual{position:relative;min-width:0}
.founder-profile-visual:before{content:'';position:absolute;inset:32px -22px -22px 22px;border:1px solid #c5ab7d;pointer-events:none}
.founder-profile-frame{height:clamp(450px,48vw,650px);position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 38%,#faf9f4 0%,#eaf0e8 58%,#d3dfd1 100%)}
.founder-profile-frame:before{content:"";position:absolute;left:9%;top:12%;width:82%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(176,145,85,.25);background:radial-gradient(circle,rgba(255,255,255,.33),transparent 70%);pointer-events:none}
.founder-profile-frame img{position:relative;width:100%;height:100%;object-fit:contain;object-position:center bottom;transform:scale(1.075);transform-origin:center bottom;filter:drop-shadow(0 16px 24px rgba(25,55,41,.08));transition:transform .7s ease}
.founder-profile-frame:hover img{transform:scale(1.095)}
.founder-profile-photo-footer{display:flex;justify-content:space-between;gap:15px;padding-top:20px;color:#537163;font-size:10px;font-weight:800;letter-spacing:.12em}
.founder-values-section{background:white;text-align:center;padding:95px 0}
.founder-values-head{max-width:750px;margin:auto}
.founder-values-head .eyebrow{justify-content:center}
.founder-values-head h2{font-size:clamp(36px,4.3vw,58px);margin-bottom:15px}
.founder-values-head p{color:#718078;font-size:16px}
.founder-values-actions{display:flex;align-items:center;justify-content:center;gap:32px;margin-top:35px;flex-wrap:wrap}
.about-founder-link{margin-top:25px}
.founder-admin-photo{width:220px!important;max-height:240px;object-fit:cover;object-position:center top}
@media(max-width:1100px) and (min-width:901px){.site-nav{gap:11px}.site-nav a{font-size:10px}.header-inner{gap:12px}}
@media(max-width:900px){.founder-teaser-grid{grid-template-columns:1fr 1fr;gap:34px}.founder-profile-grid{grid-template-columns:1fr 1fr;gap:32px}.founder-contact-list{grid-template-columns:1fr}.founder-email{grid-column:auto}.founder-profile-copy h1{font-size:clamp(43px,6vw,60px)}}
@media(max-width:700px){.founder-teaser{padding:60px 0}.founder-teaser-grid{grid-template-columns:1fr;gap:32px}.founder-teaser-photo{max-width:100%;aspect-ratio:5/4}.founder-teaser-content h2{font-size:42px}.founder-profile-section{padding:55px 0 75px}.founder-profile-grid{grid-template-columns:1fr;gap:35px}.founder-profile-copy h1{font-size:clamp(44px,11vw,61px)}.founder-profile-visual{order:-1;margin:0 12px 0 0}.founder-profile-frame{height:clamp(340px,100vw,530px)}.founder-profile-visual:before{inset:15px -13px -13px 13px}.founder-profile-photo-footer{font-size:9px;flex-wrap:wrap}.founder-contact-list{grid-template-columns:1fr 1fr}.founder-email{grid-column:1/-1}.founder-values-section{padding:70px 0}}
@media(max-width:440px){.founder-contact-list{grid-template-columns:1fr}.founder-email{grid-column:auto}.founder-contact{font-size:14px}.founder-profile-copy h1{font-size:43px}.founder-profile-frame{height:390px}.founder-values-actions{flex-direction:column;gap:22px}.founder-profile-photo-footer{letter-spacing:.05em}}
@media(prefers-reduced-motion:reduce){.founder-profile-frame img{transition:none}.founder-profile-frame:hover img{transform:none}}

/* V6 professional founder photo: retain full head and shoulders at narrow widths. */
@media(max-width:440px){.founder-profile-frame img{transform:scale(1.045)}.founder-profile-frame:hover img{transform:scale(1.065)}}


/* ================================================================
   V9 PREMIUM INTERACTIVE AMENITY CARDS
   White by default; tap/click to select individual emerald cards.
   The selection is a visual highlight only (no page navigation).
   ================================================================ */
.amenities-section{background:#f7f8f5}
.amenities-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
}
button.amenity-card{
  -webkit-appearance:none;appearance:none;
  width:100%;min-width:0;min-height:320px;
  position:relative;isolation:isolate;overflow:hidden;
  display:flex;flex-direction:column;align-items:flex-start;
  padding:31px 29px 30px;
  border:1px solid #e5ebe5;border-radius:17px;
  background:linear-gradient(155deg,#fff 12%,#fbfcfa 100%);
  box-shadow:0 7px 24px rgba(16,52,39,.045),0 2px 0 rgba(19,57,43,.045);
  text-align:left;color:#173f33;font:inherit;
  cursor:pointer;touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  transition:transform .35s cubic-bezier(.22,1,.36,1),
    box-shadow .35s ease,border-color .35s ease,color .35s ease;
}
button.amenity-card::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(137deg,#326c63 0%,#285a53 54%,#1b453c 100%);
  opacity:0;transition:opacity .42s ease;
}
button.amenity-card::after{
  content:"";position:absolute;left:29px;right:29px;bottom:0;height:3px;
  background:linear-gradient(90deg,#d6b57e,#f3e4b8);
  border-radius:5px 5px 0 0;transform:scaleX(0);transform-origin:left;
  transition:transform .38s cubic-bezier(.22,1,.36,1);
}
button.amenity-card:hover{
  transform:translateY(-5px);border-color:#c4d9ce;
  box-shadow:0 20px 46px rgba(12,55,40,.11);
}
button.amenity-card:active{transform:translateY(-1px) scale(.993)}
button.amenity-card:focus-visible{
  outline:3px solid #c4a66f;outline-offset:4px;
}
button.amenity-card .amenity-icon{
  width:70px;height:70px;flex:0 0 70px;
  display:grid;place-items:center;margin:0 0 48px;
  background:#eaf1eb;border:1px solid #e1ebe3;
  border-radius:14px;color:#245748;
  transition:background .36s ease,color .36s ease,border-color .36s ease,transform .36s ease;
}
button.amenity-card .amenity-icon svg{width:31px;height:31px;stroke-width:1.6}
button.amenity-card .amenity-card-body{
  display:flex;flex-direction:column;align-items:flex-start;
  gap:11px;width:100%;margin-top:auto;
}
button.amenity-card .amenity-title{
  display:block;color:#163e33;
  font-family:var(--sans);font-size:clamp(21px,2vw,25px);
  font-weight:700;line-height:1.29;letter-spacing:-.035em;
  transition:color .35s ease;
}
button.amenity-card .amenity-description{
  display:block;color:#697b72;
  font-size:14px;line-height:1.75;font-weight:400;
  max-width:35ch;transition:color .35s ease;
}
button.amenity-card .amenity-state{
  position:absolute;top:33px;right:28px;
  width:28px;height:28px;display:grid;place-items:center;
  border:1px solid #d9e7dd;border-radius:50%;
  color:#50796a;font:500 22px/1 var(--sans);
  transition:background .35s ease,color .35s ease,border-color .35s ease,transform .35s ease;
}
button.amenity-card .amenity-state::before{content:"+";transform:translateY(-1px)}
button.amenity-card:hover .amenity-icon{transform:translateY(-3px)}
button.amenity-card.is-selected,
button.amenity-card[aria-pressed="true"]{
  border-color:#285c51;color:#fff;
  box-shadow:0 18px 38px rgba(22,65,52,.18),0 3px 0 #164539;
}
button.amenity-card.is-selected::before,
button.amenity-card[aria-pressed="true"]::before{opacity:1}
button.amenity-card.is-selected::after,
button.amenity-card[aria-pressed="true"]::after{transform:scaleX(1)}
button.amenity-card.is-selected .amenity-icon,
button.amenity-card[aria-pressed="true"] .amenity-icon{
  color:#f7f3e6;background:#104a3a;border-color:#477b6b;
}
button.amenity-card.is-selected .amenity-title,
button.amenity-card[aria-pressed="true"] .amenity-title{color:#fff}
button.amenity-card.is-selected .amenity-description,
button.amenity-card[aria-pressed="true"] .amenity-description{color:#e8f1eb}
button.amenity-card.is-selected .amenity-state,
button.amenity-card[aria-pressed="true"] .amenity-state{
  background:#f0e5c9;border-color:#f0e5c9;color:#1d4b3c;transform:rotate(0deg)
}
button.amenity-card.is-selected .amenity-state::before,
button.amenity-card[aria-pressed="true"] .amenity-state::before{
  content:"✓";font-size:15px;font-weight:800;transform:none
}
@media(max-width:900px){
  .amenities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
  button.amenity-card{min-height:300px;padding:28px 25px}
}
@media(max-width:640px){
  .amenities-grid{grid-template-columns:1fr;gap:16px}
  button.amenity-card{min-height:290px;padding:27px 26px 29px;border-radius:15px}
  button.amenity-card .amenity-icon{width:64px;height:64px;flex-basis:64px;margin-bottom:48px;border-radius:12px}
  button.amenity-card .amenity-icon svg{width:29px;height:29px}
  button.amenity-card .amenity-title{font-size:clamp(21px,5.7vw,25px)}
  button.amenity-card .amenity-description{font-size:14px;line-height:1.7}
  button.amenity-card .amenity-state{top:29px;right:26px}
  button.amenity-card::after{left:26px;right:26px}
}
@media(prefers-reduced-motion:reduce){
  button.amenity-card,button.amenity-card::before,button.amenity-card::after,
  button.amenity-card .amenity-icon,button.amenity-card .amenity-title,
  button.amenity-card .amenity-description,button.amenity-card .amenity-state{
    transition:none!important;
  }
}

/* Homepage promotional popup */
.jpc-popup-backdrop{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(8,20,16,.76);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.jpc-popup-card{position:relative;width:min(620px,calc(100vw - 36px));max-height:calc(100dvh - 44px);display:flex;flex-direction:column;align-items:center;padding:0;background:#f7f7f2;border:1px solid #c7a36b;box-shadow:0 24px 80px rgba(0,0,0,.38);overflow:hidden}
.jpc-popup-card img{display:block;width:100%;height:auto;max-height:calc(100dvh - 92px);object-fit:contain}
.jpc-popup-close{position:absolute;z-index:2;top:10px;right:10px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(199,163,107,.8);border-radius:50%;background:#143c31;color:#fff;font:400 33px/1 Arial,sans-serif;box-shadow:0 3px 14px rgba(0,0,0,.28);transition:background .18s,transform .18s}
.jpc-popup-close:hover{background:#0e2e27;transform:scale(1.06)}
.jpc-popup-close:focus-visible{outline:3px solid #e1c38d;outline-offset:3px}
.jpc-popup-caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){.jpc-popup-backdrop{padding:12px}.jpc-popup-card{width:min(100%,calc(100vw - 24px));max-height:calc(100dvh - 24px)}.jpc-popup-card img{max-height:calc(100dvh - 24px)}.jpc-popup-close{top:8px;right:8px;width:38px;height:38px;font-size:30px}}
@media(prefers-reduced-motion:no-preference){.jpc-popup-card{animation:jpc-popup-in .22s ease-out}@keyframes jpc-popup-in{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}}


/* JPC branded social buttons: dimensional, platform-coloured and keyboard accessible. */
.jpc-social-link{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:50px;height:50px;padding:0 13px;border:1px solid rgba(255,255,255,.25);border-radius:15px;color:#fff!important;box-shadow:0 6px 0 rgba(0,0,0,.24),0 12px 22px rgba(0,0,0,.22),inset 0 1px 1px rgba(255,255,255,.38);transform:translateY(0);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.jpc-social-link svg{display:block;filter:drop-shadow(0 2px 2px rgba(0,0,0,.28))}
.jpc-social-link span{font-size:11px;font-weight:800;letter-spacing:.02em}
.jpc-social-link:hover{transform:translateY(-3px);box-shadow:0 9px 0 rgba(0,0,0,.2),0 17px 25px rgba(0,0,0,.26),inset 0 1px 1px rgba(255,255,255,.42);filter:brightness(1.08)}
.jpc-social-link:active{transform:translateY(2px);box-shadow:0 2px 0 rgba(0,0,0,.25),0 5px 10px rgba(0,0,0,.2)}
.jpc-social-instagram{background:linear-gradient(145deg,#833ab4 0%,#c13584 38%,#e1306c 64%,#f77737 100%);border-color:#f8b6c6}
.jpc-social-tiktok{background:linear-gradient(145deg,#292929,#050505 70%);border-color:#343434;box-shadow:0 6px 0 #090909,0 12px 22px rgba(0,0,0,.25),inset 0 1px 1px rgba(255,255,255,.28)}
.jpc-social-tiktok svg{filter:drop-shadow(2px 1px 0 #25f4ee) drop-shadow(-2px -1px 0 #fe2c55)}
.jpc-social-facebook{background:linear-gradient(145deg,#4593ff,#0861d5 65%,#0649a7);border-color:#80b6ff}
.footer-social-links{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.footer-social-links .jpc-social-link{min-width:48px;height:46px;border-radius:13px}
.footer-phone-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0}
.footer-phone-row>a:first-child{font-weight:700;color:#fff;font-size:12px}
.footer-phone-row .footer-wa-mini{font-size:10px;font-weight:800;color:#b7d8bf;border:1px solid #426b55;padding:5px 8px;border-radius:20px;white-space:nowrap}
.footer-phone-row .footer-wa-mini:hover{background:#1f6547;color:#fff}
.footer-contact-col>h4{margin-bottom:13px}
.jpc-safari-feature{background:linear-gradient(180deg,#f6f7f1,#fff);padding-top:88px;padding-bottom:88px}
.jpc-feature-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:30px}
.jpc-feature-heading>div{max-width:820px}
.jpc-feature-heading h2{font:400 clamp(34px,4vw,52px)/1.12 var(--serif);color:var(--forest);margin:8px 0 14px}
.jpc-feature-heading p{max-width:780px;color:#68796f;line-height:1.8;margin:0}
.jpc-feature-heading>.btn{flex:none}
.jpc-safari-poster-link{display:block;overflow:hidden;border:1px solid #c7a36b;border-radius:18px;background:#0d3026;box-shadow:0 22px 55px rgba(16,53,40,.15)}
.jpc-safari-poster-link img{display:block;width:100%;height:auto;transition:transform .35s ease}
.jpc-safari-poster-link:hover img{transform:scale(1.012)}
.jpc-office-section{background:#f2f5f0;padding-top:90px;padding-bottom:90px}
.jpc-office-heading{max-width:850px;margin:0 auto 32px;text-align:center}
.jpc-office-heading h2{font:400 clamp(36px,4vw,54px)/1.12 var(--serif);color:var(--forest);margin:8px 0 14px}
.jpc-office-heading p{color:#6d7e74;line-height:1.8;margin:0 auto;max-width:700px}
.jpc-office-image-wrap{overflow:hidden;border:1px solid #c7a36b;border-radius:20px;background:#0b211c;box-shadow:0 25px 65px rgba(8,35,25,.22)}
.jpc-office-image-wrap img{display:block;width:100%;height:auto;object-fit:cover}
.jpc-office-contact-panel{margin-top:25px;padding:30px;background:linear-gradient(135deg,#0e3027,#194b39 65%,#0b2a22);border:1px solid #c7a36b;border-radius:18px;box-shadow:0 18px 40px rgba(9,40,28,.16);color:#fff}
.jpc-office-contact-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}
.jpc-office-contact-title span,.jpc-office-socials>span{font-size:10px;letter-spacing:.17em;font-weight:800;color:#d8bd8d}
.jpc-office-contact-title strong{font:400 24px var(--serif);color:#fff}
.jpc-office-phone-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.jpc-office-phone-card{display:grid;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 16px;background:rgba(255,255,255,.07);border:1px solid rgba(218,190,143,.28);border-radius:12px}
.jpc-phone-index{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#f0d8a8,#b78d4f);color:#17382b;font-size:11px;font-weight:900;box-shadow:0 3px 0 #8e6b38}
.jpc-office-phone-card>strong{font-size:15px;letter-spacing:.02em;white-space:nowrap}
.jpc-office-phone-card>div{display:flex;gap:7px}
.jpc-office-phone-card>div>a{display:inline-flex;align-items:center;gap:5px;padding:8px 10px;border-radius:8px;font-size:10px;font-weight:800;white-space:nowrap}
.jpc-call-action{background:#f2dfb9;color:#18392c}
.jpc-wa-action{background:#1dba69;color:#fff}
.jpc-office-socials{display:flex;align-items:center;gap:13px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.15);margin-top:24px;padding-top:22px}
.jpc-office-socials>span{margin-right:7px}
.contact-detail-numbers{align-items:flex-start}
.contact-number-list{display:grid;gap:10px;margin-top:10px}
.contact-number-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;background:#f5f7f2;border:1px solid #e3e9df}
.contact-number-row strong{font-size:14px;color:var(--forest);white-space:nowrap}
.contact-number-row span{display:flex;gap:8px}
.contact-number-row a{font-size:11px!important;font-weight:800!important;color:var(--forest);border:1px solid #b8cbbd;padding:6px 9px;border-radius:18px;white-space:nowrap}
.contact-number-row a:last-child{background:#1bbf68;border-color:#1bbf68;color:white}
@media(max-width:800px){.jpc-office-phone-grid{grid-template-columns:1fr}.jpc-office-phone-card{grid-template-columns:32px minmax(0,1fr)}.jpc-office-phone-card>div{grid-column:2}.jpc-feature-heading{align-items:flex-start;flex-direction:column}.jpc-office-contact-title{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.jpc-safari-feature,.jpc-office-section{padding:64px 0}.jpc-safari-poster-link,.jpc-office-image-wrap{border-radius:12px}.jpc-office-contact-panel{padding:19px 15px}.jpc-office-phone-card{gap:9px;padding:12px}.jpc-office-phone-card>strong{font-size:13px}.jpc-office-phone-card>div>a{padding:8px 9px}.jpc-office-socials{gap:10px}.footer-phone-row{justify-content:flex-start;gap:12px}.contact-number-row{align-items:flex-start;flex-direction:column;gap:8px}}


/* FINAL POLISH — clear footer socials, floating WhatsApp clearance and office map */
.site-footer{position:relative;padding-bottom:78px}
.footer-social-row{display:grid;grid-template-columns:minmax(190px,1fr) auto;align-items:center;gap:28px;padding:30px 0;border-top:1px solid rgba(199,163,107,.28)}
.footer-social-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.footer-social-row .footer-social-copy strong{display:block;color:#fff;font-size:16px;line-height:1.3;font-weight:800}
.footer-social-row .footer-social-copy span{display:block;color:#b8cabe;font-size:13px;line-height:1.5}
.footer-social-links{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap;min-width:0}
.footer-social-links .jpc-social-link{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:10px;width:auto;min-width:145px;height:54px;padding:0 17px;border-radius:14px;white-space:nowrap;overflow:visible}
.footer-social-links .jpc-social-link svg{width:23px;height:23px;flex:0 0 23px}
.footer-social-links .jpc-social-link span{display:inline-block;margin:0;padding:0;color:#fff;font-size:12px;line-height:1.2;font-weight:800;white-space:nowrap;position:static;transform:none}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:19px 90px 0 0;border-top:1px solid rgba(199,163,107,.2)}
.footer-bottom>span{font-size:12px;line-height:1.6;color:#b8cabe}
.footer-bottom>span:last-child{text-align:right}
.footer-contact-col .footer-address-link{display:flex;align-items:flex-start;gap:7px;margin-top:14px;color:#c8d8cf;font-size:11px;line-height:1.6;max-width:250px}
.footer-contact-col .footer-address-link svg{flex:0 0 14px;color:#d9b77b;margin-top:2px}
.footer-contact-col .footer-address-link span{display:inline;color:#d9b77b;text-decoration:underline;text-underline-offset:3px}
.jpc-office-map-card,.contact-office-map{margin-top:28px}
.jpc-office-map-card{padding:28px;background:#fff;border:1px solid #e1e8df;border-radius:18px;box-shadow:0 18px 48px rgba(13,39,28,.08)}
.jpc-office-map-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}
.jpc-office-map-heading .eyebrow{margin:0 0 7px;font-size:10px}
.jpc-office-map-heading h3{margin:0 0 6px;color:#143c31;font:400 clamp(26px,3vw,36px)/1.15 var(--serif)}
.jpc-office-map-heading p{margin:0;color:#65786d;font-size:14px;line-height:1.6}
.jpc-map-directions{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex:0 0 auto;padding:13px 18px;border-radius:9px;background:#143c31;color:#fff;font-size:12px;font-weight:800;box-shadow:0 4px 0 #0b2a21,0 10px 20px rgba(13,39,28,.14)}
.jpc-map-directions:hover{background:#205541;transform:translateY(-1px)}
.jpc-office-map-frame{position:relative;width:100%;height:420px;overflow:hidden;border-radius:12px;background:#e8eee8;border:1px solid #dce5dc}
.jpc-office-map-frame iframe{display:block;width:100%;height:100%;border:0}
.contact-office-map{margin-top:58px}
.contact-office-map .jpc-office-map-heading{padding:0 0 16px}
.floating-whatsapp{z-index:90;right:24px;bottom:24px;box-shadow:0 10px 28px rgba(17,78,43,.3)}
@media(max-width:900px){.footer-social-row{grid-template-columns:1fr;gap:18px;align-items:start}.footer-social-links{justify-content:flex-start}.footer-bottom{padding-right:86px}}
@media(max-width:640px){
 .site-footer{padding-bottom:92px}
 .footer-social-row{padding:24px 0;gap:16px}
 .footer-social-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:9px}
 .footer-social-links .jpc-social-link{width:100%;min-width:0;height:48px;padding:0 7px;gap:6px;border-radius:11px}
 .footer-social-links .jpc-social-link svg{width:19px;height:19px;flex-basis:19px}
 .footer-social-links .jpc-social-link span{font-size:10px}
 .footer-bottom{align-items:flex-start;flex-direction:column;gap:7px;padding:16px 78px 0 0}
 .footer-bottom>span:last-child{text-align:left}
 .jpc-office-map-card{padding:17px 13px;border-radius:13px}
 .jpc-office-map-heading{align-items:flex-start;flex-direction:column;gap:14px}
 .jpc-office-map-heading p{font-size:12px}
 .jpc-office-map-frame{height:330px;border-radius:9px}
 .contact-office-map{margin-top:38px}
 .floating-whatsapp{right:16px;bottom:16px;width:50px;height:50px}
}

/* YouTube social button */
.jpc-social-youtube{background:linear-gradient(145deg,#ff5555,#e62117 62%,#b90f18);border-color:#ff9a9a}


/* JPC FOOTER FINAL FIX v14 — 4 social platforms, clean address and responsive layout */
.site-footer{position:relative;isolation:isolate;padding-bottom:112px;overflow:visible}
.site-footer .footer-top{min-width:0;align-items:start}
.site-footer .footer-col{min-width:0}
.site-footer .footer-contact-col{min-width:0;width:100%}
.site-footer .footer-email-link{display:block;max-width:100%;overflow-wrap:anywhere;word-break:break-word;line-height:1.6}
.site-footer .footer-address-block{display:flex;flex-direction:column;align-items:flex-start;gap:9px;width:100%;max-width:100%;margin-top:12px}
.site-footer .footer-address-link{display:grid!important;grid-template-columns:17px minmax(0,1fr);align-items:start;column-gap:9px;width:100%;max-width:100%!important;margin:0!important;text-decoration:none!important;font-size:12px!important;line-height:1.65!important;overflow-wrap:anywhere;word-break:normal}
.site-footer .footer-address-link svg{width:15px;height:15px;flex:0 0 15px;margin-top:3px;color:#d9b77b}
.site-footer .footer-address-link .footer-address-text{display:block!important;min-width:0;color:#c8d8cf!important;text-decoration:none!important;font-size:12px!important;line-height:1.65!important;overflow-wrap:anywhere;word-break:normal}
.site-footer .footer-directions-link{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;width:max-content;max-width:100%;padding:7px 11px;border:1px solid rgba(217,183,123,.55);border-radius:7px;color:#e1c38d!important;background:rgba(255,255,255,.045);font-size:11px!important;font-weight:800;line-height:1.3!important;white-space:nowrap;text-decoration:none!important}
.site-footer .footer-directions-link svg{width:13px;height:13px;flex:0 0 13px}
.site-footer .footer-social-row{display:grid!important;grid-template-columns:minmax(170px,1fr) auto;align-items:center;gap:24px;width:100%;min-width:0}
.site-footer .footer-social-copy{min-width:0}
.site-footer .footer-social-links{display:grid!important;grid-template-columns:repeat(4,minmax(118px,1fr));align-items:stretch;justify-content:stretch;gap:10px;width:auto;min-width:0}
.site-footer .footer-social-links .jpc-social-link{display:inline-flex!important;flex:initial!important;align-items:center;justify-content:center;width:100%!important;min-width:0!important;height:52px!important;max-width:none;padding:0 10px!important;gap:8px!important;border-radius:12px;white-space:nowrap}
.site-footer .footer-social-links .jpc-social-link svg{display:block;width:21px!important;height:21px!important;flex:0 0 21px!important}
.site-footer .footer-social-links .jpc-social-link span{display:inline-block!important;position:static!important;transform:none!important;margin:0!important;padding:0!important;font-size:11px!important;line-height:1.2!important;font-weight:800!important;color:#fff!important;white-space:nowrap!important}
.site-footer .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-width:0;padding:18px 100px 0 0!important}
.site-footer .footer-bottom>span{min-width:0;line-height:1.6}
.site-footer .footer-bottom>span:last-child{text-align:right}
.site-footer .floating-whatsapp{z-index:80;right:20px;bottom:20px}
@media(max-width:1050px){
 .site-footer .footer-top{grid-template-columns:1.3fr 1fr;gap:30px}
 .site-footer .footer-contact-col{grid-column:1/-1}
 .site-footer .footer-social-row{grid-template-columns:1fr;gap:16px}
 .site-footer .footer-social-links{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}
}
@media(max-width:700px){
 .site-footer{padding-bottom:104px}
 .site-footer .footer-top{grid-template-columns:1fr 1fr;gap:25px 18px}
 .site-footer .footer-intro{grid-column:1/-1}
 .site-footer .footer-col:last-child{grid-column:1/-1}
 .site-footer .footer-contact-col{grid-column:1/-1}
 .site-footer .footer-social-row{grid-template-columns:1fr;gap:15px;padding:23px 0}
 .site-footer .footer-social-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}
 .site-footer .footer-social-links .jpc-social-link{height:50px!important;padding:0 8px!important}
 .site-footer .footer-social-links .jpc-social-link span{font-size:11px!important}
 .site-footer .footer-bottom{align-items:flex-start;flex-direction:column;gap:7px;padding:16px 76px 0 0!important}
 .site-footer .footer-bottom>span:last-child{text-align:left}
 .site-footer .floating-whatsapp{right:14px;bottom:14px;width:49px;height:49px}
}
@media(max-width:380px){
 .site-footer .footer-social-links{grid-template-columns:1fr 1fr}
 .site-footer .footer-social-links .jpc-social-link{gap:5px!important}
 .site-footer .footer-social-links .jpc-social-link span{font-size:10px!important}
}

/* JPC mobile contact and WhatsApp repair v15 */
.floating-whatsapp{display:grid;place-items:center;line-height:0}
.floating-whatsapp svg{display:block;width:27px;height:27px;flex:0 0 27px}
.footer-wa-mini,.jpc-wa-action,.contact-number-row a:last-child{display:inline-flex;align-items:center;justify-content:center;gap:6px}
.jpc-wa-action svg,.contact-number-row a:last-child svg{width:16px;height:16px;flex:0 0 16px}
.site-footer .footer-address-block{align-items:flex-start!important;width:100%!important;max-width:100%!important}
.site-footer .footer-address-link{display:grid!important;grid-template-columns:17px minmax(0,1fr)!important;width:100%!important;max-width:100%!important}
.site-footer .footer-directions-link{width:max-content!important;max-width:100%!important;align-self:flex-start!important;white-space:nowrap!important;overflow:visible!important;word-break:normal!important;writing-mode:horizontal-tb!important}
.site-footer .footer-social-links{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:700px){
 .site-footer .footer-contact-col{grid-column:1/-1!important;width:100%!important;min-width:0!important}
 .site-footer .footer-address-block{display:flex!important;flex-direction:column!important;align-items:flex-start!important;width:100%!important}
 .site-footer .footer-directions-link{display:inline-flex!important;min-width:max-content!important;margin:0!important;padding:8px 12px!important}
 .site-footer .footer-social-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important}
 .site-footer .footer-social-links .jpc-social-link{min-width:0!important;width:100%!important}
 .jpc-office-map-frame{height:300px}
}
