/* ===== Cosmo-Soil property detail — shared CSS for all city-land pages ===== */
:root { --gold:#B4905A; --gold-deep:#9c7c48; --accent:#ffcc00; --cream:#faf8f5; --ink:#2d2417; --muted:#7a7267; --serif:"Mulish",-apple-system,"Segoe UI",Roboto,sans-serif; --sans:"Mulish",-apple-system,"Segoe UI",Roboto,sans-serif; --gold-lt:#d4b483; --champagne:#f6efe3; }
.fa{padding:1%;text-align:center;text-decoration:none;background:#000;color:#fff;border-radius:50%;}
.fa:hover{opacity:.7;}
.navbar-brand{display:flex;align-items:center;height:40px;}
.navbar-brand img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:none;}}
@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
@keyframes zoomIn{from{opacity:0;transform:scale(.96);}to{opacity:1;transform:scale(1);}}
@keyframes heroShift{0%,100%{background-position:0% 50%;}50%{background-position:100% 50%;}}
.reveal{opacity:0;}.reveal.in{animation:fadeUp .7s ease forwards;}
html{scroll-behavior:smooth;}
body{background:linear-gradient(180deg,#fffdf9 0%,#faf6ee 100%);}
.prop-hero,.prop-page,.prop-hero *,.prop-page *,.prop-card,.sim-card,.prop-story,.prop-story *{font-family:"Mulish",sans-serif !important;}
.prop-hero{position:relative;overflow:hidden;color:#fff;text-align:center;background:radial-gradient(circle at 20% 20%,#6f5631 0%,transparent 55%),linear-gradient(135deg,#3a2c17 0%,#6f5631 45%,#a07c46 100%);background-size:200% 200%;animation:heroShift 14s ease infinite;padding:70px 16px 92px;}
.prop-hero::before,.prop-hero::after{content:"";position:absolute;border-radius:50%;}
.prop-hero::before{width:420px;height:420px;top:-160px;right:-90px;background:radial-gradient(circle,rgba(212,180,131,.22),transparent 70%);}
.prop-hero::after{width:320px;height:320px;bottom:-160px;left:-80px;background:radial-gradient(circle,rgba(255,204,0,.10),transparent 70%);}
.prop-hero .inner{position:relative;z-index:2;max-width:900px;margin:0 auto;animation:fadeUp .7s ease;}
.prop-hero .eyebrow{display:inline-block;background:rgba(255,255,255,.08);border:1px solid rgba(212,180,131,.5);color:var(--gold-lt);letter-spacing:3px;text-transform:uppercase;font-size:11px;font-weight:500;padding:7px 20px;border-radius:20px;margin-bottom:16px;backdrop-filter:blur(4px);animation:fadeIn 1s ease;}
.prop-hero h1{font-family:var(--serif);font-weight:600;font-size:52px;margin:0;line-height:1.15;letter-spacing:.5px;background:linear-gradient(180deg,#fff 30%,#f0dcb8 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:fadeUp .7s ease;}
.prop-hero h1::after{content:"";display:block;width:90px;height:2px;margin:18px auto 0;background:linear-gradient(90deg,transparent,var(--gold-lt),transparent);}
.prop-hero .hero-meta{display:flex;flex-wrap:wrap;gap:40px;justify-content:center;align-items:baseline;margin-top:26px;animation:fadeUp .9s ease;}
.prop-hero .hero-meta>div{position:relative;}
.prop-hero .hero-meta>div+div::before{content:"";position:absolute;left:-20px;top:6px;bottom:6px;width:1px;background:rgba(212,180,131,.4);}
.prop-hero .hero-price{font-family:var(--serif);font-weight:700;font-size:40px;color:#f5e7c8;-webkit-text-fill-color:#f5e7c8;text-shadow:0 2px 12px rgba(0,0,0,.2);}
.prop-hero .hero-price small,.prop-hero .hero-area small{letter-spacing:2px;text-transform:uppercase;font-size:10px !important;font-weight:500;opacity:.85;display:block;}
.prop-hero .hero-area{font-family:var(--serif);font-size:26px;font-weight:600;opacity:.95;}
.prop-hero .hero-loc{margin-top:14px;font-size:15px;opacity:.92;letter-spacing:1px;animation:fadeUp 1.1s ease;}
.prop-page{width:75%;max-width:75%;margin:0 auto;padding:0 0 70px;}
.prop-lift{margin-top:-56px;position:relative;z-index:3;}
.prop-status{text-align:center;padding:90px 20px;color:var(--muted);font-size:16px;}
.carousel-wrap{position:relative;border-radius:22px;overflow:hidden;background:#efe7d9;border:1px solid rgba(212,180,131,.6);box-shadow:0 30px 70px rgba(58,44,23,.28);animation:zoomIn .7s ease;}
.carousel-wrap::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 90px rgba(0,0,0,.18);border-radius:18px;}
.carousel-track{position:relative;width:100%;height:68vh;max-height:660px;min-height:320px;}
.carousel-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s ease;display:flex;align-items:center;justify-content:center;}
.carousel-slide img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;}
.carousel-slide.active{opacity:1;}
.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:52px;height:52px;border-radius:50%;border:1px solid rgba(212,180,131,.6);cursor:pointer;background:rgba(255,255,255,.85);color:#6f5631;font-size:22px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.2);backdrop-filter:blur(3px);transition:transform .2s,background .2s;}
.carousel-btn:hover{transform:translateY(-50%) scale(1.1);background:#fff;}
.carousel-btn.prev{left:16px;}.carousel-btn.next{right:16px;}
.carousel-dots{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:8px;}
.carousel-dot{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;transition:all .3s;}
.carousel-dot.active{background:var(--gold-lt);width:26px;border-radius:6px;}
.carousel-count{position:absolute;top:14px;right:16px;z-index:5;background:rgba(58,44,23,.7);color:#fff;font-size:12px;letter-spacing:1px;padding:5px 12px;border-radius:20px;}
.verified-ribbon{position:absolute;top:14px;left:16px;z-index:6;display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#1f9d55,#137a3f);color:#fff;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:7px 14px;border-radius:20px;box-shadow:0 4px 14px rgba(19,122,63,.4);}
.carousel-wrap.noimg-wrap{border-style:dashed;background:#faf6ee;box-shadow:none;}
.carousel-track.noimg-track{height:120px !important;min-height:120px !important;max-height:120px !important;}
.noimg-track .prop-noimg{font-size:15px;color:#b3a17f;letter-spacing:.5px;font-weight:600;}
.prop-noimg{display:flex;align-items:center;justify-content:center;color:#bbb;height:100%;}
.prop-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:18px 0 4px;}
.prop-badge{background:#eef8f0;color:#16a34a;font-family:var(--sans);letter-spacing:.5px;font-weight:500;text-transform:uppercase;font-size:10.5px;padding:6px 14px;border-radius:20px;border:1px solid #cdeccf;animation:fadeUp .5s ease both;}
.prop-badge.gold{background:var(--champagne);color:#8a6d3f;border-color:var(--gold-lt);}
.prop-card{position:relative;background:linear-gradient(180deg,#ffffff,#fffdf8);border:1px solid #efe3cc;border-radius:22px;padding:34px;box-shadow:0 12px 34px rgba(120,90,40,.09);margin-bottom:24px;transition:transform .3s ease,box-shadow .3s ease;}
.prop-card::before{content:"";position:absolute;top:0;left:34px;right:34px;height:2px;background:linear-gradient(90deg,transparent,var(--gold),var(--accent),transparent);opacity:.8;border-radius:3px;}
.prop-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(120,90,40,.14);border-color:var(--gold-lt);}
.prop-card h3{font-family:var(--serif);font-weight:700;font-size:26px;color:#6f5631;letter-spacing:.3px;margin:0 0 22px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #f1e7d3;padding-bottom:14px;}
.spec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.spec{position:relative;overflow:hidden;background:#fffdf8;border:1px solid #f1e7d3;border-radius:16px;padding:16px 18px;transition:transform .2s,box-shadow .2s,background .2s;}
.spec::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--gold-lt),var(--gold));opacity:0;transition:opacity .2s;}
.spec:hover::before{opacity:1;}
.spec:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(120,90,40,.14);border-color:var(--gold-lt);}
.spec .k{color:#a08c68;text-transform:uppercase;letter-spacing:1.2px;font-size:11px;margin-bottom:5px;}
.spec .v{font-family:var(--serif);font-weight:700;font-size:19px;color:#4a3b22;}
.amen-wrap{display:flex;flex-wrap:wrap;gap:8px;}
.amen{display:inline-flex;align-items:center;gap:6px;background:#fffdf8;border:1px solid #ecdfc3;color:#7a5f34;font-size:13px;font-weight:500;padding:10px 18px;border-radius:20px;letter-spacing:.3px;box-shadow:0 2px 6px rgba(120,90,40,.05);animation:fadeUp .5s ease both;transition:transform .15s,background .2s;}
.amen:hover{transform:translateY(-2px);background:var(--champagne);border-color:var(--gold-lt);}
.approval-chip{background:#f3f9f4 !important;border-color:#cdeccf !important;color:#1f7a3f !important;font-weight:600;}
.approval-chip:hover{background:#eaf6ec !important;border-color:#9fd6ab !important;}
.listed-by{display:flex;flex-wrap:wrap;align-items:center;gap:20px;background:linear-gradient(135deg,#fffdf8,#f6efe3);border:1px solid #ecdfc3;border-radius:18px;padding:26px;}
.listed-avatar{width:68px;height:68px;border-radius:50%;flex:0 0 68px;background:linear-gradient(135deg,#a07c46,#6f5631);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:26px;font-weight:800;border:3px solid var(--gold-lt);box-shadow:0 6px 16px rgba(180,144,90,.35);}
.listed-info{flex:1;min-width:200px;}
.listed-info .who{font-family:var(--serif);font-size:24px;font-weight:700;color:#4a3b22;}
.listed-info .role{color:var(--muted);letter-spacing:.5px;text-transform:uppercase;font-size:11px;margin-bottom:8px;}
.listed-contacts{display:flex;flex-direction:column;gap:4px;}
.listed-contacts a{color:var(--gold-deep);text-decoration:none;font-weight:600;font-size:15px;transition:color .2s;}
.listed-contacts a:hover{text-decoration:underline;}
.listed-cta{display:flex;gap:12px;flex-wrap:wrap;}
.btn-gold,.btn-outline{padding:13px 26px;border-radius:30px;font-weight:700;font-size:12px;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;border:none;text-decoration:none;display:inline-flex;align-items:center;gap:8px;}
.btn-gold{background:linear-gradient(135deg,#a07c46,#6f5631);color:#fff;box-shadow:0 6px 16px rgba(180,144,90,.3);transition:filter .2s,transform .1s;}
.btn-gold:hover{filter:brightness(1.08);color:#fff;}.btn-gold:active{transform:translateY(1px);}
.btn-outline{background:#fff;color:#7a5f34;border:2px solid var(--gold-lt);transition:background .2s;}
.btn-outline:hover{background:#faf5ec;}
.prop-story{background:linear-gradient(180deg,#fffefb,#f8f1e5);border:1px solid #ecdfc3;position:relative;}
.prop-story h3{font-family:var(--serif);font-size:30px;}
.prop-story p{font-family:var(--serif);font-size:19px;line-height:1.95;color:#4a3b28;letter-spacing:.2px;margin-bottom:18px;}
.prop-story p:last-child{margin-bottom:0;}
.prop-story .drop::first-letter{font-family:var(--serif);font-size:68px;font-weight:800;color:#a07c46;float:left;line-height:.82;padding:8px 14px 2px 0;}
.story-h{font-family:var(--sans);text-transform:uppercase;letter-spacing:2px;font-size:13px;font-weight:600;color:#a07c46;margin:34px 0 12px;position:relative;padding-bottom:0;}
.story-h::after{content:"";display:block;width:34px;height:2px;margin-top:8px;background:var(--gold-lt);border-radius:2px;}
.sim-head{text-align:center;margin:52px 0 28px;}
.sim-head h2{font-family:var(--serif);font-size:34px;font-weight:700;color:#4a3b22;}
.sim-head .line{width:120px;height:3px;background:linear-gradient(90deg,transparent,var(--gold-lt),transparent);margin:12px auto 0;border-radius:3px;}
.sim-rail-wrap{position:relative;}
.sim-grid{display:flex;gap:20px;overflow-x:auto;scroll-behavior:smooth;padding:6px 2px 12px;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none;}
.sim-grid::-webkit-scrollbar{display:none;height:0;}
.sim-card{position:relative;flex:0 0 260px;width:260px;scroll-snap-align:start;background:#fff;border:1px solid #efe3cc;border-radius:20px;overflow:hidden;box-shadow:0 6px 20px rgba(120,90,40,.08);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s;text-decoration:none;}
.sim-card:hover{transform:translateY(-6px);box-shadow:0 16px 34px rgba(120,90,40,.18);}
.sim-arrow{position:absolute;top:42%;transform:translateY(-50%);z-index:6;width:46px;height:46px;border-radius:50%;border:none;cursor:pointer;background:#fff;color:var(--gold-deep);font-size:22px;box-shadow:0 4px 14px rgba(0,0,0,.15);display:flex;align-items:center;justify-content:center;transition:transform .2s,background .2s;}
.sim-arrow:hover{transform:translateY(-50%) scale(1.1);background:var(--cream);}
.sim-arrow.left{left:-10px;}.sim-arrow.right{right:-10px;}
.sim-imgwrap{position:relative;height:170px;overflow:hidden;background:#f0ece4;}
.sim-imgwrap img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.sim-card:hover .sim-imgwrap img{transform:scale(1.07);}
.sim-imgwrap::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .6s ease;}
.sim-card:hover .sim-imgwrap::after{left:130%;}
.sim-match{position:absolute;top:10px;left:10px;background:linear-gradient(135deg,#a07c46,#6f5631);color:#fff;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 10px;border-radius:20px;}
.sim-body{padding:15px;display:flex;flex-direction:column;flex:1;gap:2px;}
.sim-loc{font-family:var(--serif);font-weight:700;color:var(--ink);font-size:19px;}
.sim-city{color:var(--muted);font-size:13px;margin:2px 0 8px;}
.sim-price{font-family:var(--serif);font-weight:800;color:#7a5f34;font-size:18px;margin-bottom:8px;}
.sim-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;}
.sim-tag{background:var(--cream);border:1px solid #f0e4cc;color:var(--gold-deep);font-size:11px;padding:3px 9px;border-radius:12px;}
#to-top{position:fixed;right:22px;bottom:24px;z-index:500;width:46px;height:46px;border-radius:50%;border:none;cursor:pointer;background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:#fff;font-size:20px;box-shadow:0 6px 18px rgba(180,144,90,.4);opacity:0;pointer-events:none;transition:opacity .3s,transform .2s;}
#to-top.show{opacity:1;pointer-events:auto;}#to-top:hover{transform:translateY(-3px);}
#read-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--gold),var(--accent));z-index:9999;transition:width .1s;}
@media (max-width:768px){.prop-hero h1{font-size:34px;}.prop-hero .hero-price{font-size:30px;}.prop-hero .hero-meta{gap:22px;}.prop-hero .hero-meta>div+div::before{display:none;}.spec-grid{grid-template-columns:repeat(2,1fr);}.carousel-btn{width:42px;height:42px;font-size:18px;}.sim-imgwrap{height:120px;}.prop-card{padding:22px;}.prop-story p{font-size:17px;}}
