/* SOUL: the approved lobby palette carries through every desktop chapter. */
.soul-dark{background:#171d21;color:#eeeae1;--line:rgba(238,234,225,.22)}
.soul-dark .soul-overview,.soul-dark .garden-notes,.soul-dark .apartments,.soul-dark .gallery-scene,.soul-dark .questions{background:#171d21;color:#eeeae1}
.soul-dark .garden-notes,.soul-dark .gallery-scene{background:#1c2327}
.soul-dark .scene h2 em{color:#b9a582}
.soul-dark .project-facts dt,.soul-dark .overview-image figcaption,.soul-dark .snapshot-note,.soul-dark .lot-head,.soul-dark .lot-date,.soul-dark .lot-card dt,.soul-dark .faq-list p{color:#b9bdb8}
.soul-dark .quiet-list li:before{color:#b9a582}
.soul-dark .catalog-filters{background:#1b2226;border-color:#4b5356}
.soul-dark .rooms button{border-color:#596164}
.soul-dark .rooms button[aria-pressed=true]{background:#b9a582;border-color:#b9a582;color:#171d21}
.soul-dark .filter-bottom select{color:#eeeae1}.soul-dark .filter-bottom option{background:#1b2226;color:#eeeae1}
.soul-dark .dual-range input::-webkit-slider-thumb{background:#c9b58e;border-color:#1b2226;box-shadow:0 0 0 1px #c9b58e}
.soul-dark .lot-card{background:#1c2428;border-color:#4b5356}
.lot-plan{display:block;width:100%;height:245px;margin:20px 0 22px;padding:14px;background:#e7e7df;position:relative;overflow:hidden}
.lot-plan img{width:100%;height:100%;object-fit:contain;display:block}
.lot-plan>span{position:absolute;right:10px;bottom:8px;background:#e7e7df;color:#333b3e;font-size:11px;padding:4px 6px}
.soul-dark .plan-missing{background:#273034;color:#b9bdb8}.soul-dark .plan-missing span{color:#d7d9cf}
.soul-dark .lot-card .text-action:hover{color:#c9b58e}
.soul-dark .dialog:not(.lightbox){background:#1c2428;color:#eeeae1}
.soul-dark .contact-dialog>.close{background:#1c2428}
.soul-dark .contact-dialog [data-lead-submit]{background:#eeeae1;color:#171d21}
.soul-dark .selected-lot{border-color:#596164}.soul-dark .selection-id{color:#b9bdb8}
.selected-plan{width:160px;height:145px;object-fit:contain;background:#e7e7df;padding:10px;float:left;margin:0 20px 10px 0}
.selected-lot:after{content:'';display:block;clear:both}
.soul-dark .black-atlas-lead-success{--lead-success-background:#1c2428;--lead-success-color:#eeeae1;--lead-success-button-background:#eeeae1;--lead-success-button-color:#171d21}
.soul-dark .final-contact{min-height:880px;padding-top:105px;padding-bottom:65px}
.soul-dark .contact-image{object-position:center center}
.soul-dark .final-copy{width:42%;max-width:535px}
.soul-dark .final-copy h2{font-size:clamp(48px,4.4vw,68px)}
.soul-dark .project-footer{padding:36px 6vw 25px;background:#11181c}
.soul-dark .footer-intro{padding-bottom:25px;gap:25px}
.soul-dark .footer-brand{font-size:20px}
.footer-project{font-size:12px;letter-spacing:.08em;color:#b9bdb8}
.soul-dark .footer-groups{grid-template-columns:repeat(3,1fr);gap:0 35px;padding:20px 0}
.soul-dark .footer-groups details{padding:14px 0;border-bottom:1px solid #394246}
.soul-dark .footer-groups summary{display:flex;justify-content:space-between;align-items:center;min-height:20px}
.soul-dark .footer-groups summary:after{content:'+';font-size:17px;color:#b9a582}
.soul-dark .footer-groups details[open] summary:after{content:'−'}
.soul-dark .footer-groups nav{margin:16px 0 5px;gap:11px;font-size:12px}
.soul-dark .footer-legal{padding-top:18px;line-height:1.65}
@media(max-width:700px){.soul-dark .final-contact{padding:360px 24px 65px;min-height:0}.soul-dark .final-copy{width:100%;max-width:none}.soul-dark .contact-image{height:430px;object-position:27% center}.soul-dark .final-contact:after{top:300px;height:150px}.soul-dark .footer-intro{grid-template-columns:1fr auto;gap:20px}.footer-project{display:none}.soul-dark .footer-groups{grid-template-columns:1fr;gap:0}.soul-dark .project-footer{padding:32px 24px 24px}.selected-plan{width:105px;height:115px;margin-right:12px}.lot-plan{height:220px}}
.plan-view>img{background:#e7e7df;padding:22px}.plan-view>p{text-align:center;margin-top:16px;font-size:13px}.soul-dark .lightbox.plan-view{max-width:940px}
/* Desktop refinement: plans are the primary content. */
.soul-dark .apartments .heading-row{margin-bottom:30px}.soul-dark .apartments .snapshot-note{margin:0 0 20px}
.soul-dark .catalog-filters{display:grid;grid-template-columns:1.1fr 1.6fr;gap:12px 28px;padding:18px 22px}
.soul-dark .rooms{margin:0}.soul-dark .rooms legend{margin-bottom:10px}.soul-dark .rooms>div{gap:5px}.soul-dark .rooms button{min-height:32px;padding:0 10px;font-size:11px}
.soul-dark .ranges{gap:22px}.soul-dark .range-values{margin:7px 0 0;font-size:13px}.soul-dark .dual-range,.soul-dark .dual-range input{height:24px}
.soul-dark .filter-bottom{grid-column:1/-1;margin:0;border-top:1px solid var(--line);padding-top:8px}.soul-dark .filter-bottom select{padding:5px;font-size:12px}.soul-dark .filter-bottom button{font-size:11px}
.soul-dark .catalog-toolbar{margin:18px 0 14px}.soul-dark .lot-card{flex-basis:calc((100% - 20px)/2);padding:20px;scroll-snap-stop:always}
.soul-dark .lot-plan{height:460px;margin:12px 0 16px;padding:20px}.soul-dark .lot-card h3{font-size:28px;display:inline-block;margin:0 16px 0 0}.soul-dark .lot-price{display:inline-block;font-size:20px}.soul-dark .lot-date{margin-top:5px}
.soul-dark .lot-card dl{grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.soul-dark .lot-card dd{font-size:12px;margin-top:5px}.soul-dark .lot-card dt{font-size:9px}.soul-dark .lot-card .text-action{padding:12px 0 0}
.soul-dark .map-toggle{left:50%;top:50%;transform:translate(-50%,-50%);min-height:52px;padding:0 26px;box-shadow:0 5px 30px #0005}.soul-dark .map-active .map-toggle{left:16px;top:16px;transform:none;min-height:36px;padding:0 14px}.map-shell:not(.map-active) #soul-map{cursor:pointer}
.map-marker svg,.poi-icon svg{width:21px;height:21px}.poi-icon{display:grid;place-items:center;color:#c3ae86}
.soul-dark .questions{padding-top:110px;padding-bottom:110px}.soul-dark .faq-layout{grid-template-columns:1fr 1fr;gap:6vw;align-items:center}.faq-image{height:720px;overflow:hidden}.faq-image img{object-fit:cover}.faq-list h2{margin-bottom:40px}.soul-dark .faq-list summary{padding-top:22px;padding-bottom:22px}
.soul-dark .footer-intro{padding-bottom:28px;align-items:start}.footer-contacts{display:grid;gap:10px}.footer-contacts>span{font-size:11px;color:#b9bdb8}.footer-contacts>a{font-size:23px;letter-spacing:.025em}.footer-contacts>button{font-size:12px;text-align:left;text-decoration:underline;text-underline-offset:4px}
.soul-dark .footer-groups{grid-template-columns:repeat(5,1fr);gap:24px 28px;padding:28px 0}.soul-dark .footer-groups details{border:0;padding:0}.soul-dark .footer-groups summary:after{display:none}.soul-dark .footer-groups nav{font-size:11px;gap:8px;margin-top:13px}.soul-dark .footer-groups summary{cursor:default}
@media(max-width:1100px){.soul-dark .catalog-filters{grid-template-columns:1fr}.soul-dark .lot-plan{height:400px}.soul-dark .footer-groups{grid-template-columns:repeat(3,1fr)}.faq-image{height:650px}.soul-dark .faq-layout{gap:4vw}.soul-dark .faq-list h2{font-size:52px}}
@media(max-width:700px){.soul-dark .ranges{grid-template-columns:repeat(3,1fr);gap:12px}.soul-dark .catalog-filters{padding:15px}.soul-dark .range-group>span{font-size:8px}.soul-dark .filter-bottom{display:flex;gap:15px}.soul-dark .filter-bottom>label{display:block;font-size:9px}.soul-dark .filter-bottom button{margin:0}.soul-dark .lot-card{flex-basis:94%;padding:16px}.soul-dark .lot-plan{height:350px}.soul-dark .lot-card dl{grid-template-columns:1fr 1fr}.soul-dark .faq-layout{grid-template-columns:1fr}.faq-image{height:430px}.soul-dark .questions{padding:65px 24px}.soul-dark .footer-groups{grid-template-columns:1fr 1fr}.soul-dark .footer-intro{display:grid;grid-template-columns:1fr}.footer-contacts>a{font-size:21px}}
