.unit-container{max-width:var(--content-max,1200px);margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem)}.unit-not-found{padding:8rem 0 4rem;text-align:center}.unit-not-found h1{font-family:var(--font-heading);color:var(--forest);margin-bottom:1rem}.unit-not-found p{margin-bottom:1.5rem}.page-hero--photo{position:relative;background:var(--forest);overflow:hidden}.page-hero--photo::before{content:'';position:absolute;inset:0;background:url('/images/hillcrest_place_courtyard-1200.webp') center/cover no-repeat;opacity:0.25;z-index:0}.page-hero--photo::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(30,43,34,0.5) 0%,rgba(43,61,47,0.3) 50%,rgba(30,43,34,0.6) 100%);z-index:0}.page-hero--photo .hero-content,.page-hero--photo>.unit-container{position:relative;z-index:1}.page-hero-inner{text-align:center;padding-top:calc(var(--nav-height,64px) + 3rem);padding-bottom:3rem}html.has-specials .page-hero-inner{padding-top:calc(var(--nav-height,64px) + var(--specials-height,40px) + 3rem)}.page-hero-inner h1{color:var(--cream,#FAF6F0)}.page-hero-inner p{color:rgba(250,246,240,0.65);max-width:640px;margin:0.5rem auto 0;line-height:1.75}.unit-hero{padding:calc(var(--nav-height,64px) + 3rem) 0 3rem;color:var(--cream,#FAF6F0)}html.has-specials .unit-hero{padding-top:calc(var(--nav-height,64px) + var(--specials-height,40px) + 3rem)}.unit-hero-layout{display:grid;grid-template-columns:1fr auto;gap:2.5rem;align-items:center}.unit-hero h1{font-family:var(--font-heading);font-size:clamp(1.75rem,4vw,2.5rem);color:var(--cream,#FAF6F0);margin:0 0 0.5rem;line-height:1.2}.unit-hero-facts{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap;font-family:var(--font-body);font-size:1rem;color:rgba(250,246,240,0.7);margin-bottom:1rem}.hero-sep{opacity:0.4}.unit-hero-status{font-family:var(--font-body);font-size:1.05rem;font-weight:600}.unit-hero-status--available{color:var(--sage-muted,#A8C4A0)}.unit-hero-status--leased{color:rgba(250,246,240,0.5)}.unit-hero-special{display:inline-block;margin-top:0.5rem;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.15);color:var(--cream);font-family:var(--font-body);font-size:0.875rem;font-weight:500;padding:0.35em 0.85em;border-radius:100px}.unit-hero-notes{margin-top:0.75rem;font-family:var(--font-body);font-style:italic;color:rgba(250,246,240,0.7);font-size:0.9375rem}.unit-hero-action{text-align:center;background:rgba(0,0,0,0.2);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,0.1);border-radius:12px;padding:1.75rem;min-width:230px}.unit-hero-price{margin-bottom:1.25rem}.hero-price-amount{font-family:var(--font-heading);font-size:2.25rem;color:var(--cream);font-weight:700}.hero-price-period{font-family:var(--font-body);font-size:1rem;color:rgba(250,246,240,0.6)}.unit-hero-action .btn{display:block;width:100%;margin-top:0.5rem;text-align:center;justify-content:center}.unit-hero-action .btn:first-of-type{margin-top:0}.unit-gallery{padding:2.5rem 0 2rem;background:var(--cream,#FAF6F0)}.unit-gallery h2{font-family:var(--font-heading);color:var(--forest);font-size:1.5rem;margin:0 0 1rem}.gallery-wrap{position:relative;max-width:var(--content-max,1200px);margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem)}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:48px;height:48px;border-radius:50%;border:none;background:rgba(43,61,47,0.75);color:var(--cream,#FAF6F0);font-size:1.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.2s,opacity 0.2s;padding:0;line-height:1;box-shadow:0 2px 8px rgba(0,0,0,0.15)}.gallery-arrow:hover:not(:disabled){background:rgba(43,61,47,0.95)}.gallery-arrow:disabled{opacity:0;pointer-events:none}.gallery-arrow--left{left:clamp(0.25rem,2vw,1rem)}.gallery-arrow--right{right:clamp(0.25rem,2vw,1rem)}.gallery-strip{display:flex;flex-wrap:nowrap;gap:0.75rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:0.5rem;scrollbar-width:thin;scrollbar-color:var(--tan,#D4C5B0) transparent}.gallery-strip::-webkit-scrollbar{height:6px}.gallery-strip::-webkit-scrollbar-track{background:transparent}.gallery-strip::-webkit-scrollbar-thumb{background:var(--tan,#D4C5B0);border-radius:3px}.gallery-thumb{flex:0 0 260px;display:block;border:none;padding:0;margin:0;background:var(--cream-dark,#EDE7DD);cursor:pointer;overflow:hidden;border-radius:6px;aspect-ratio:3/2;position:relative;scroll-snap-align:start}.gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}.gallery-thumb:hover img,.gallery-thumb:focus-visible img{transform:scale(1.05)}.gallery-thumb:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.staged-badge{position:absolute;bottom:0.5rem;left:0.5rem;background:rgba(0,0,0,0.7);color:#fff;font-family:var(--font-body);font-size:0.6875rem;padding:0.2em 0.5em;border-radius:3px;pointer-events:none}.lightbox-staged-badge{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);background:rgba(0,0,0,0.7);color:#fff;font-family:var(--font-body);font-size:0.75rem;padding:0.3em 0.75em;border-radius:3px}.lightbox-staged-badge[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,0.92);display:flex;align-items:center;justify-content:center}.lightbox[hidden]{display:none}.lightbox-img-wrap{max-width:90vw;max-height:85vh;position:relative;display:flex;align-items:center;justify-content:center}.lightbox-img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:4px}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;background:none;border:none;color:rgba(255,255,255,0.8);cursor:pointer;font-size:2rem;padding:0.5rem 1rem;transition:color 0.2s;z-index:10000}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{color:#fff}.lightbox-close{top:1rem;right:1rem;font-size:2.5rem}.lightbox-prev{left:1rem;top:50%;transform:translateY(-50%);font-size:3rem}.lightbox-next{right:1rem;top:50%;transform:translateY(-50%);font-size:3rem}.lightbox-counter{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);color:rgba(255,255,255,0.7);font-family:var(--font-body);font-size:0.875rem}.unit-features{padding:3rem 0;background:#fff}.unit-features h2{font-family:var(--font-heading);color:var(--forest);font-size:1.5rem;margin-bottom:1.5rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem}.features-col h3{font-family:var(--font-body);font-size:0.8125rem;text-transform:uppercase;letter-spacing:0.08em;color:var(--text-light);margin-bottom:0.75rem}.features-col ul{list-style:none;padding:0;margin:0}.features-col li{font-family:var(--font-body);font-size:0.9375rem;color:var(--text);padding:0.4rem 0 0.4rem 1.25rem;position:relative}.features-col li::before{content:'';position:absolute;left:0;top:0.75rem;width:6px;height:6px;border-radius:50%;background:var(--sage)}.unit-details{padding:3rem 0;background:var(--cream)}.unit-details h2{font-family:var(--font-heading);color:var(--forest);font-size:1.5rem;margin-bottom:1.5rem}.details-list{max-width:600px;margin:0}.details-row{display:flex;gap:1rem;padding:0.75rem 0;border-bottom:1px solid rgba(0,0,0,0.06)}.details-row:last-child{border-bottom:none}.details-row dt{flex-shrink:0;width:110px;font-family:var(--font-body);font-size:0.8125rem;text-transform:uppercase;letter-spacing:0.06em;color:var(--text-light);padding-top:0.1rem}.details-row dd{margin:0;font-family:var(--font-body);font-size:0.9375rem;color:var(--text);line-height:1.5}.unit-diagram{padding:3rem 0;background:#fff}.unit-diagram h2{font-family:var(--font-heading);color:var(--forest);font-size:1.5rem;margin-bottom:1.5rem;text-align:center}.diagram-wrap{max-width:700px;margin:0 auto;text-align:center}.diagram-wrap img{width:100%;height:auto;border-radius:4px}.diagram-note{margin-top:1rem;text-align:center;font-family:var(--font-body);font-size:0.8125rem;color:var(--text-light)}.unit-apply-info{padding:2rem 0;background:var(--cream)}.unit-apply-info h2{font-family:var(--font-heading);color:var(--forest);font-size:1.5rem;margin-bottom:0.75rem}.apply-intro{font-family:var(--font-body);font-size:0.9375rem;color:var(--text);line-height:1.6}.apply-intro a{font-weight:600}.unit-others{padding:3rem 0;background:#fff}.unit-others h2{font-family:var(--font-heading);color:var(--forest);font-size:1.5rem;margin-bottom:1.5rem}.others-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-bottom:1.5rem}.other-unit-card{display:block;text-decoration:none;background:var(--cream);border-radius:8px;border:1px solid var(--cream-dark,#EDE7DD);overflow:hidden;transition:border-color 0.2s,box-shadow 0.2s}.other-unit-card:hover{border-color:var(--sage);box-shadow:0 2px 12px rgba(0,0,0,0.06)}.other-unit-card:not(.other-unit-card--has-photo){padding:1.25rem}.other-unit-photo{aspect-ratio:16/9;overflow:hidden;position:relative}.other-unit-photo img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}.other-unit-card:hover .other-unit-photo img{transform:scale(1.03)}.other-unit-info{padding:1rem 1.25rem 1.25rem}.other-unit-type{font-family:var(--font-heading);font-size:1.125rem;color:var(--forest);font-weight:600;margin-bottom:0.25rem}.other-unit-details{font-family:var(--font-body);font-size:0.8125rem;color:var(--text-light);margin-bottom:0.75rem}.other-unit-bottom{display:flex;justify-content:space-between;align-items:baseline}.other-unit-price{font-family:var(--font-heading);font-size:1.125rem;color:var(--forest);font-weight:700}.other-unit-date{font-family:var(--font-body);font-size:0.8125rem;color:var(--sage);font-weight:600}.other-unit-special{margin-top:0.5rem;font-family:var(--font-body);font-size:0.75rem;color:var(--terracotta-dark);font-weight:600}.others-cta{text-align:center}.unit-bottom-cta{padding:3rem 0;background:var(--forest);text-align:center}.unit-bottom-cta h2{font-family:var(--font-heading);color:var(--cream);font-size:1.5rem;margin-bottom:0.5rem}.unit-bottom-cta p{font-family:var(--font-body);color:rgba(250,246,240,0.8);font-size:0.9375rem;margin-bottom:1.5rem}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.unit-bottom-cta .btn-outline{border-color:rgba(250,246,240,0.35);color:var(--cream)}.unit-bottom-cta .btn-outline:hover{background:rgba(250,246,240,0.1);border-color:var(--cream)}.apply-cta-sub{margin-top:1rem;font-size:0.875rem;color:rgba(250,246,240,0.65)}.apply-cta-sub a{color:var(--sage-muted,#A8C4A0)}.floor-plans-page .page-hero--photo{padding:0}.fp-section{padding:3rem 0}.fp-section:nth-child(even){background:var(--cream)}.fp-section:nth-child(odd){background:#fff}.fp-header{margin-bottom:0.75rem}.fp-header h2{font-family:var(--font-heading);font-size:1.75rem;color:var(--forest);margin:0;display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap}.fp-rare-badge{display:inline-block;font-family:var(--font-body);font-size:0.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;background:var(--terracotta);color:#fff;padding:0.25em 0.6em;border-radius:3px;vertical-align:middle}.fp-meta{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap;font-family:var(--font-body);font-size:0.9375rem;color:var(--text-light);margin-top:0.25rem}.fp-price{color:var(--forest);font-weight:600}.fp-description{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--text);max-width:680px;margin:0 0 2rem 0;text-align:left}.fp-body{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start}.fp-diagram img{width:100%;height:auto;border-radius:4px}.fp-diagram--placeholder{background:var(--cream-dark);border-radius:8px;padding:3rem 2rem;text-align:center;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}.fp-diagram--placeholder p{font-family:var(--font-body);font-size:0.9375rem;color:var(--text-light);line-height:1.6}.fp-features h3{font-family:var(--font-body);font-size:0.8125rem;text-transform:uppercase;letter-spacing:0.08em;color:var(--text-light);margin:0 0 0.75rem}.fp-features h3 + .fp-feature-list + h3{margin-top:1.5rem}.fp-feature-list{list-style:none;padding:0;margin:0}.fp-feature-list li{font-family:var(--font-body);font-size:0.9375rem;color:var(--text);padding:0.35rem 0 0.35rem 1.25rem;position:relative}.fp-feature-list li::before{content:'';position:absolute;left:0;top:0.7rem;width:6px;height:6px;border-radius:50%;background:var(--sage)}.fp-available{margin-top:2.5rem}.fp-available h3{font-family:var(--font-heading);font-size:1.25rem;color:var(--forest);margin-bottom:1rem}.apply-page .page-hero--photo{padding:0}.apply-section{padding:3rem 0;background:#fff}.apply-section--alt{background:var(--cream)}.apply-section h2{font-family:var(--font-heading);color:var(--forest);font-size:1.5rem;margin-bottom:1.5rem}.apply-req-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.apply-req-card{background:var(--cream);border-radius:8px;padding:1.5rem;border:1px solid var(--cream-dark,#EDE7DD)}.apply-section--alt .apply-req-card{background:#fff}.apply-req-card h3{font-family:var(--font-body);font-size:1rem;font-weight:600;color:var(--forest);margin-bottom:0.5rem}.apply-req-card p{font-family:var(--font-body);font-size:0.9375rem;color:var(--text);line-height:1.5;margin:0}.apply-steps{max-width:680px}.apply-step{display:flex;gap:1.25rem;margin-bottom:1.75rem;align-items:flex-start}.step-num{flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:50%;background:var(--forest);color:var(--cream);font-family:var(--font-heading);font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center}.apply-step h3{font-family:var(--font-body);font-size:1rem;font-weight:600;color:var(--forest);margin:0 0 0.25rem}.apply-step p{font-family:var(--font-body);font-size:0.9375rem;color:var(--text);margin:0;line-height:1.5}@media (max-width:768px){.unit-hero-layout{grid-template-columns:1fr;gap:1.5rem}.unit-hero-action{min-width:unset;display:grid;grid-template-columns:1fr 1fr;gap:0.5rem;text-align:center}.unit-hero-price{grid-column:1 / -1;margin-bottom:0.5rem}.unit-hero-action .btn{margin-top:0}.gallery-wrap{padding:0}.gallery-strip{padding-left:clamp(1.25rem,4vw,2.5rem);padding-right:clamp(1.25rem,4vw,2.5rem)}.gallery-arrow{display:none}.gallery-thumb{flex:0 0 200px}.features-grid{grid-template-columns:1fr}.fp-body{grid-template-columns:1fr}.lightbox-prev,.lightbox-next{font-size:2rem;padding:0.5rem}.details-row{flex-direction:column;gap:0.25rem}.details-row dt{width:auto}}@media (max-width:480px){.others-grid{grid-template-columns:1fr}.gallery-thumb{flex:0 0 170px}.unit-hero-action{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.gallery-thumb img,.other-unit-photo img{transition:none}.other-unit-card{transition:none}}@media print{.unit-gallery,.lightbox,.unit-bottom-cta,.unit-others .others-cta{display:none}.unit-hero-layout{grid-template-columns:1fr}.unit-hero-action{background:none;border:1px solid #ccc;backdrop-filter:none}.other-unit-card{break-inside:avoid}.other-unit-photo{display:none}}html.time-evening .unit-gallery,html.time-night .unit-gallery{background:var(--cream)}html.time-evening .unit-details,html.time-night .unit-details{background:var(--cream)}html.time-evening .unit-apply-info,html.time-night .unit-apply-info{background:var(--cream)}html.time-evening .unit-features,html.time-night .unit-features{background:var(--cream-dark)}html.time-evening .unit-diagram,html.time-night .unit-diagram{background:var(--cream-dark)}html.time-evening .unit-others,html.time-night .unit-others{background:var(--cream-dark)}html.time-evening .fp-section:nth-child(even),html.time-night .fp-section:nth-child(even){background:var(--cream)}html.time-evening .fp-section:nth-child(odd),html.time-night .fp-section:nth-child(odd){background:var(--cream-dark)}html.time-evening .apply-section,html.time-night .apply-section{background:var(--cream-dark)}html.time-evening .apply-section--alt,html.time-night .apply-section--alt{background:var(--cream)}html.time-night .page-hero--photo{background:#2B3D2F}html.time-night .page-hero--photo::before{background:url('/images/hillcrest_place_night.webp') center/cover no-repeat;opacity:0.2}html.time-night .page-hero--photo::after{background:linear-gradient(180deg,rgba(20,30,24,0.65) 0%,rgba(26,36,32,0.45) 50%,rgba(20,30,24,0.75) 100%)}html.time-night .page-hero-inner h1{color:#FAF6F0}html.time-night .unit-hero{color:#FAF6F0}html.time-night .unit-hero h1{color:#FAF6F0}html.time-night .unit-hero-special{color:#FAF6F0}html.time-night .hero-price-amount{color:#FAF6F0}html.time-night .gallery-thumb{background:var(--cream-dark)}html.time-night .gallery-arrow{background:rgba(212,224,208,0.2);color:#FAF6F0}html.time-night .gallery-arrow:hover:not(:disabled){background:rgba(212,224,208,0.35)}html.time-night .gallery-strip{scrollbar-color:#283830 transparent}html.time-night .gallery-strip::-webkit-scrollbar-thumb{background:#283830}html.time-night .other-unit-card{background:#283830;border-color:rgba(250,246,240,0.06)}html.time-night .other-unit-card:hover{border-color:rgba(250,246,240,0.12);box-shadow:0 2px 12px rgba(0,0,0,0.3)}html.time-night .other-unit-type{color:#D4E0D0}html.time-night .other-unit-price{color:#D4E0D0}html.time-night .details-row{border-bottom-color:rgba(250,246,240,0.06)}html.time-night .fp-diagram--placeholder{background:#283830}html.time-night .fp-diagram--placeholder p{color:#9A9488}html.time-night .fp-feature-list li{background:transparent}html.time-night .apply-req-card{background:#283830;border-color:rgba(250,246,240,0.06)}html.time-night .apply-section--alt .apply-req-card{background:var(--cream-dark);border-color:rgba(250,246,240,0.06)}html.time-night .apply-req-card h3{color:#D4E0D0}html.time-night .step-num{background:#D4E0D0;color:#1A2420}html.time-night .apply-step h3{color:#D4E0D0}html.time-night .unit-bottom-cta{background:#1E2B22}html.time-night .unit-bottom-cta h2{color:#FAF6F0}html.time-night .unit-bottom-cta .btn-primary{background-color:#A85A3E}html.time-night .unit-bottom-cta .btn-primary:hover{background-color:#8B4A32}