/* Purchase comparison and enquiry improvements. */
section[id],#apartment-prices,#building{scroll-margin-top:100px}
.purchase-section{padding:44px 0;background:#ebece6;border-bottom:1px solid var(--line)}
.purchase-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.purchase-option+ .purchase-option{border-left:1px solid #cccec4;padding-left:48px}
.purchase-option h2{font-size:1.65rem;margin:0 0 12px}.purchase-option p{color:var(--slate);margin-bottom:16px;max-width:54ch}
.text-link{display:inline-flex;gap:10px;align-items:center;color:var(--sea-deep);font-weight:600;text-decoration:underline;text-underline-offset:5px;font-size:.9rem}
#residences .lead{margin-top:18px!important}.price-list{max-width:none;margin-top:48px}.purchase-note{color:var(--slate);margin:12px 0 20px}
.unit-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0 32px}
.unit-card{border:1px solid var(--line);border-radius:18px;background:var(--paper);padding:30px;display:flex;flex-direction:column}
.unit-top{display:flex;gap:16px;align-items:center}.unit-top h3{font-size:1.45rem}.unit-number{color:var(--sea);font-size:.78rem;letter-spacing:.1em;border:1px solid #cad5db;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;flex-shrink:0}
.unit-price{font-size:1.8rem;font-weight:600;margin:22px 0}.unit-price s{color:var(--mist);font-size:.95rem;font-weight:400;margin-right:8px}
.unit-facts{margin-bottom:24px}.unit-facts>div{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:10px 0;font-size:.87rem}.unit-facts dt{color:var(--slate);max-width:70%}.unit-facts dd{font-weight:600;white-space:nowrap}.unit-facts .interior{border:0;padding-top:0}.unit-facts .interior dd{font-size:1.2rem;color:var(--sea-deep)}
.unit-actions{margin-top:auto;display:flex;align-items:flex-start;gap:18px;flex-direction:column}.unit-actions .btn{font-size:.86rem;padding:12px 20px}
.building-offer{background:#eaf0f2;border:1px solid #cbd8dd;border-radius:18px;padding:32px;display:grid;grid-template-columns:1fr 2fr;gap:32px;margin:36px 0 0}.building-offer h3{font-size:1.6rem}.building-price{font-size:1.8rem;font-weight:600;margin:14px 0}.building-offer .btn{margin-top:22px}.building-offer p{color:var(--slate)}
.form-field{display:flex;flex-direction:column;gap:6px;min-width:0}.form-field span,.field-label{font-size:.84rem;font-weight:600}.field-label{margin-bottom:-8px}form select{width:100%;padding:14px 16px;font:inherit;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink)}
:focus-visible{outline:3px solid #287caf;outline-offset:4px}.unit-card a:focus-visible{outline-offset:5px}
@media(max-width:680px){.purchase-grid,.unit-grid,.building-offer{grid-template-columns:1fr}.purchase-grid{gap:26px}.purchase-option+ .purchase-option{border-left:0;border-top:1px solid #cccec4;padding:26px 0 0}.purchase-section{padding:32px 0}.unit-card,.building-offer{padding:24px}.building-offer{gap:12px}.unit-price{font-size:1.65rem}.unit-actions .btn{width:100%;justify-content:center}.unit-grid{gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.price-list{border:0;border-radius:0;overflow:visible}.price-head{padding:0;font-size:1.7rem;border:0}.price-offer{border-radius:10px}.purchase-note{max-width:65ch}.unit-grid{margin-top:28px}
.area-table .area-row{min-width:720px;grid-template-columns:1.5fr repeat(5,1fr)} @media(max-width:680px){body.comparing .wa-fab,body.comparing .vva-fab{visibility:hidden;pointer-events:none}}
.plan-preview{margin:0 0 24px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}.plan-preview summary{padding:14px 16px;font-size:.88rem;font-weight:600;cursor:pointer;color:var(--sea-deep)}.plan-preview img{width:100%;height:auto;object-fit:contain}.plan-preview p{padding:12px 16px;font-size:.78rem;color:var(--slate)}.plan-preview>.text-link{margin:0 16px 16px}.gal a{position:relative}.photo-caption{position:absolute;bottom:0;left:0;right:0;padding:28px 12px 12px;background:linear-gradient(transparent,rgba(0,0,0,.78));color:#fff;font-size:.75rem;line-height:1.4;pointer-events:none}.lb img{max-height:80vh}.lb .viewer-caption{position:absolute;bottom:18px;left:5%;right:5%;text-align:center;color:white;font-size:.85rem}.lb:focus{outline:none}

.document-preview{width:100%;height:130px;object-fit:contain;background:white;border:1px solid var(--line);border-radius:6px;margin:0 0 14px}
