/* ============================================================ Park Titan Hinjewadi — style.css (non-critical, async-loaded) Critical above-the-fold CSS is inlined in index.php <head> ============================================================ */ /* ---- Reveal-on-scroll (no CLS: only opacity/translate, GPU) ---- */ [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;will-change:opacity,transform} [data-reveal].in{opacity:1;transform:none} @media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}} /* ---- Layout helpers ---- */ .section{padding:72px 0} @media(max-width:767px){.section{padding:52px 0}} .section-dark{background:var(--ink);color:#eceae4} .section-paper{background:var(--paper)} .section-cta{background:linear-gradient(140deg,#1d1d1d 0%,#262017 55%,#3a2c12 100%);color:#fff} .text-light{color:#fff!important} .kicker{display:inline-block;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--gold-2);margin-bottom:.7rem} .kicker-light{color:var(--gold)} .section-title{font-size:clamp(1.7rem,3.6vw,2.7rem);margin-bottom:.6rem} .section-sub{color:var(--silver);max-width:42rem;margin:0 auto .2rem} .section-dark .section-sub,.section-cta .section-sub{color:#bdb8ad} .text-center .section-sub{margin-left:auto;margin-right:auto} p{margin:0 0 1rem} /* ---- Buttons ---- */ .btn-line{background:transparent;border:1.5px solid var(--gold);color:var(--gold-2);font-weight:700;padding:.7rem 1.3rem;border-radius:999px;cursor:pointer;transition:.2s;width:100%} .btn-line:hover{background:var(--gold);color:#1a1306} /* ---- Trust strip ---- */ .trust{background:var(--ink);color:#fff;padding:0} .trust-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center} .trust-grid>div{padding:22px 10px;border-right:1px solid rgba(255,255,255,.08)} .trust-grid>div:last-child{border-right:0} .t-n{display:block;font-family:'Fraunces',serif;font-weight:700;font-size:1.5rem;color:var(--gold)} .t-l{display:block;font-size:.8rem;color:#c9c4b9;margin-top:.2rem} @media(max-width:767px){.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-grid>div:nth-child(2){border-right:0}.trust-grid>div:nth-child(1),.trust-grid>div:nth-child(2){border-bottom:1px solid rgba(255,255,255,.08)}} /* ---- Tick list ---- */ .tick{list-style:none;padding:0;margin:0 0 1.2rem} .tick li{position:relative;padding-left:1.8rem;margin-bottom:.6rem} .tick li::before{content:"";position:absolute;left:0;top:.35em;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--gold); -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/85% no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/85% no-repeat} /* ---- About ---- */ .about-img{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.18)} .about-img img{width:100%;height:auto} /* ---- Highlight cards ---- */ .hcard{background:#1f1f1f;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:1.6rem 1.4rem;height:100%;transition:transform .25s,border-color .25s} .hcard:hover{transform:translateY(-4px);border-color:rgba(217,154,43,.5)} .hicon{width:48px;height:48px;border-radius:12px;background:rgba(217,154,43,.14);display:flex;align-items:center;justify-content:center;margin-bottom:1rem} .hicon svg{width:26px;height:26px;color:var(--gold)} .hcard h3{font-size:1.18rem;color:#fff;margin-bottom:.4rem} .hcard p{color:#b6b1a6;font-size:.93rem;margin:0} /* ---- Amenities grid ---- */ .amen-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem} .amen{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.1rem .8rem;text-align:center;transition:transform .2s,box-shadow .2s} .amen:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.08)} .amen svg{width:34px;height:34px;color:var(--gold-2);margin:0 auto .55rem} .amen span{display:block;font-size:.88rem;font-weight:600;color:var(--ink-2)} @media(max-width:991px){.amen-grid{grid-template-columns:repeat(3,1fr)}} @media(max-width:575px){.amen-grid{grid-template-columns:repeat(2,1fr)}} /* ---- Pricing ---- */ .pcard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.8rem 1.6rem;height:100%;position:relative;box-shadow:0 10px 30px rgba(0,0,0,.05)} .pcard-feat{border-color:var(--gold);box-shadow:0 18px 44px rgba(182,125,24,.18)} .ribbon{position:absolute;top:-12px;right:20px;background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#1a1306;font-size:.72rem;font-weight:700;letter-spacing:.04em;padding:.32rem .8rem;border-radius:999px} .pcard-top h3{font-size:1.4rem;margin-bottom:.2rem} .pcard-area{color:var(--silver);font-size:.9rem;margin-bottom:1rem} .pcard-price{display:flex;align-items:baseline;gap:.5rem;margin-bottom:1.1rem;padding-bottom:1.1rem;border-bottom:1px solid var(--line)} .pcard-price span{font-size:.85rem;color:var(--silver)} .pcard-price strong{font-family:'Fraunces',serif;font-size:1.8rem;color:var(--ink)} .pcard-price small{font-size:1rem;color:var(--gold-2);vertical-align:super} .price-note{font-size:.78rem;color:var(--silver)} /* ---- Gallery ---- */ .gal{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem} .gal figure{margin:0;border-radius:12px;overflow:hidden;aspect-ratio:3/2} .gal figure img{width:100%;height:100%;object-fit:cover;transition:transform .5s} .gal figure:hover img{transform:scale(1.06)} @media(max-width:991px){.gal{grid-template-columns:repeat(3,1fr)}} @media(max-width:575px){.gal{grid-template-columns:repeat(2,1fr)}} /* ---- Location ---- */ .loc-list{list-style:none;padding:0;margin:0 0 1.4rem} .loc-list li{padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.1);color:#dcd8cf;font-size:.95rem} .loc-list li span{display:inline-block;min-width:64px;color:var(--gold);font-weight:700;font-family:'Fraunces',serif} .map-wrap{border-radius:14px;overflow:hidden;aspect-ratio:16/11;box-shadow:0 18px 44px rgba(0,0,0,.3);background:#222} /* ---- FAQ ---- */ .faq{max-width:780px;margin:0 auto} .faq details{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:.7rem;overflow:hidden} .faq summary{list-style:none;cursor:pointer;padding:1.05rem 1.2rem;font-weight:600;color:var(--ink);position:relative;padding-right:2.6rem} .faq summary::-webkit-details-marker{display:none} .faq summary::after{content:"+";position:absolute;right:1.1rem;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--gold-2);transition:transform .25s;line-height:1} .faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)} .faq summary:hover{color:var(--gold-2)} .faq-a{padding:0 1.2rem 1.1rem;color:#5d5d5d;font-size:.93rem} /* ---- Contact lines ---- */ .contact-lines{display:flex;flex-direction:column;gap:.7rem;margin-top:1.2rem} .cline{display:inline-flex;align-items:center;gap:.65rem;color:#fff;font-weight:600;font-size:1.05rem} .cline svg{color:var(--gold);flex:none} .cline:hover{color:var(--gold)} /* ---- Form ---- */ .form-card{background:#fff;color:var(--ink);border-radius:16px;padding:1.8rem;box-shadow:0 24px 60px rgba(0,0,0,.25)} .form-card h3{font-size:1.4rem;margin-bottom:.2rem} .form-sub{color:var(--silver);font-size:.92rem;margin-bottom:1.2rem} .enquiry-form label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.3rem;color:var(--ink-2)} .visually-hidden-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)} .enquiry-form input,.enquiry-form select{width:100%;padding:.72rem .9rem;border:1.5px solid var(--line);border-radius:10px;font-size:.98rem;font-family:inherit;color:var(--ink);background:#fcfbf9;transition:border-color .2s,box-shadow .2s} .enquiry-form input:focus,.enquiry-form select:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 3px rgba(217,154,43,.18)} .enquiry-form input.is-invalid{border-color:#d33} .form-trust{font-size:.6rem;color:var(--silver);text-align:center;margin:.8rem 0 0; font-weight: 400;} .form-alert{background:#fdecea;color:#b3261e;border:1px solid #f5c6c2;border-radius:10px;padding:.7rem .9rem;font-size:.9rem;margin-bottom:1rem} /* ---- Footer ---- */ .pt-footer{background:#111;color:#b7b2a8;padding:48px 0 28px;font-size:.88rem} .foot-grid{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;align-items:flex-start;padding-bottom:1.6rem;border-bottom:1px solid rgba(255,255,255,.08)} .foot-logo{margin-bottom:.8rem} .foot-by{font-size:.78rem;color:#7d786f;margin:0 0 .4rem} .dev-logo{background:#fff;padding:.5rem .7rem;border-radius:8px} .foot-rera p{margin:0 0 .4rem} .foot-addr{color:#8b867c;max-width:30rem} .foot-rera a{color:var(--gold)} .foot-dis{font-size:.72rem;color:#736e65;margin:1.4rem 0 0;line-height:1.55} .foot-copy{font-size:.78rem;color:#67625a;margin:.9rem 0 0} /* ---- Mobile sticky CTA bar ---- */ .mcta-bar{display:none} @media(max-width:991px){ .mcta-bar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;left:0;right:0;bottom:0;z-index:1050;background:#161616;box-shadow:0 -4px 20px rgba(0,0,0,.3);padding-bottom:env(safe-area-inset-bottom)} .mcta{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:.6rem 0;color:#fff;font-size:.74rem;font-weight:600} .mcta svg{width:20px;height:20px} .mcta-call{background:#1f1f1f} .mcta-enq{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#1a1306} .mcta-wa{background:#1faa54} body{padding-bottom:62px} } /* ---- Floating WhatsApp (desktop/tablet) ---- */ .float-wa{position:fixed;right:18px;bottom:22px;z-index:1045;width:54px;height:54px;border-radius:50%;background:#1faa54;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(31,170,84,.45);transition:transform .2s} .float-wa:hover{transform:scale(1.08);color:#fff} @media(max-width:991px){.float-wa{display:none}} /* ---- Modal ---- */ .pt-modal{position:fixed;inset:0;z-index:1100;background:rgba(15,15,15,.72);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:1rem} .pt-modal[hidden]{display:none} .pt-modal-box{position:relative;background:#fff;border-radius:18px;max-width:420px;width:100%;padding:2rem 1.7rem 1.7rem;box-shadow:0 30px 80px rgba(0,0,0,.4);animation:modalpop .3s ease} @keyframes modalpop{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}} .pt-modal-close{position:absolute;top:.7rem;right:.9rem;background:none;border:0;font-size:1.7rem;line-height:1;color:#999;cursor:pointer} .pt-modal-close:hover{color:var(--ink)} .modal-badge{display:inline-block;background:rgba(217,154,43,.16);color:var(--gold-2);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.3rem .7rem;border-radius:999px;margin-bottom:.7rem} .pt-modal-box h3{font-size:1.5rem;margin-bottom:.25rem} .pt-modal-sub{color:var(--silver);font-size:.92rem;margin-bottom:1.1rem} .pt-modal-box .enquiry-form input {margin-bottom:.7rem} .pt-modal-box .enquiry-form select{margin-bottom:.7rem; width:50%} .modal-or{text-align:center;position:relative;margin:.3rem 0} .modal-or::before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--line)} .modal-or span{position:relative;background:#fff;padding:0 .8rem;color:var(--silver);font-size:.82rem} .btn-wa-full{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;background:#1faa54;color:#fff;font-weight:700;padding:.78rem;border-radius:999px;transition:filter .2s} .btn-wa-full:hover{filter:brightness(1.05);color:#fff} .pt-modal-trust{font-size:.78rem;color:var(--silver);text-align:center;margin:.9rem 0 0} /* ---- Utility ---- */ .w-100{width:100%} .mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mb-4{margin-bottom:1.5rem} /* ---- Floor Plans & Layout ---- */ .fp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem} .fp-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.05);display:flex;flex-direction:column} .fp-media{position:relative;aspect-ratio:600/425;overflow:hidden;background:#eee} .fp-media img{width:100%;height:100%;object-fit:cover;filter:blur(9px) brightness(.92);transform:scale(1.08)} .fp-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,22,22,.28),rgba(22,22,22,.55))} .fp-lock{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;text-align:center;padding:1rem} .fp-lock svg{width:30px;height:30px;color:var(--gold)} .fp-lock-btn{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#1a1306;font-weight:700;font-size:.92rem;padding:.7rem 1.3rem;border:0;border-radius:999px;cursor:pointer;box-shadow:0 8px 22px rgba(182,125,24,.4);transition:filter .2s,transform .2s} .fp-lock-btn:hover{filter:brightness(1.06);transform:translateY(-1px)} .fp-lock-note{color:#f0ede6;font-size:.78rem;font-weight:500;letter-spacing:.02em} .fp-body{padding:1.1rem 1.2rem 1.3rem} .fp-body h3{font-size:1.2rem;margin:0 0 .2rem} .fp-area{color:var(--silver);font-size:.86rem;margin:0 0 .8rem} .fp-price{display:flex;align-items:baseline;gap:.4rem} .fp-price span{font-size:.78rem;color:var(--silver)} .fp-price strong{font-family:'Fraunces',serif;font-size:1.35rem;color:var(--ink)} .fp-price small{color:var(--gold-2);font-size:.9rem;vertical-align:super} @media(max-width:991px){.fp-grid{grid-template-columns:repeat(2,1fr)}.fp-card:first-child{grid-column:1/-1}} @media(max-width:575px){.fp-grid{grid-template-columns:1fr}.fp-card:first-child{grid-column:auto}} .consent { display: flex; gap: 10px; align-items: flex-start; margin-top: 14px; font-size: .76rem; color: var(--silver); line-height: 1.5; } #chkbox { width: unset !important; } .reraqr{ margin-bottom: .4rem; border-radius: 4px; } .over-img { border-radius: var(--r); overflow: hidden; box-shadow: var(--shadow); position: relative; } .ai-tag { position: absolute; right: 8px; bottom: 7px; font-size: .58rem; letter-spacing: .06em; color: #fff; background: rgba(35, 20, 16, .6); padding: 3px 7px; border-radius: 6px; }