.apartment-gallery-section{border:1px solid rgba(38,48,36,.14);border-radius:30px;padding:clamp(22px,4vw,34px);background:rgba(255,255,255,.44)}.apartment-gallery-header{max-width:760px;margin-bottom:26px}.apartment-gallery-eyebrow{margin:0 0 12px;letter-spacing:.2em;text-transform:uppercase;font-size:12px;font-weight:800;color:#53603f}.apartment-gallery-header h2{margin:0;font-size:clamp(32px,4vw,48px);line-height:1.05;font-family:Georgia,Times New Roman,serif;font-weight:400;color:#263024}.apartment-gallery-header p{margin:14px 0 0;max-width:680px;font-size:16px;line-height:1.7;color:#334034}.apartment-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.apartment-gallery-item{position:relative;min-height:240px;overflow:hidden;border-radius:24px;background:rgba(83,96,63,.12)}.apartment-gallery-item-large{grid-column:span 2;grid-row:span 2;min-height:494px}.apartment-gallery-item img{width:100%;height:100%;min-height:inherit;display:block;object-fit:cover;transition:transform .24s ease}.apartment-gallery-item:hover img{transform:scale(1.025)}.apartment-gallery-item figcaption{position:absolute;left:14px;right:14px;bottom:14px;width:fit-content;max-width:calc(100% - 28px);border-radius:999px;padding:8px 12px;background:rgba(24,32,26,.78);color:#fffaf0;font-size:12px;font-weight:800;line-height:1.2}@media (max-width:860px){.apartment-gallery-section{border-radius:26px;padding:22px}.apartment-gallery-grid{grid-template-columns:1fr}.apartment-gallery-item,.apartment-gallery-item-large{grid-column:auto;grid-row:auto;min-height:260px}.apartment-gallery-item figcaption{border-radius:18px}}.apartment-detail-page{min-height:100vh;overflow-x:hidden;background:#f4f1e8;color:#243026;padding:42px 20px 72px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.apartment-detail-inner{max-width:1180px;margin:0 auto;display:grid;gap:28px}.apartment-back-link{color:#53603f;text-decoration:none;font-weight:800}.apartment-hero-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);overflow:hidden;border:1px solid rgba(38,48,36,.14);border-radius:32px;background:rgba(255,255,255,.46)}.apartment-hero-image{min-height:440px;background-size:cover;background-position:50%}.apartment-hero-content{min-width:0;padding:clamp(28px,4vw,48px);display:flex;flex-direction:column;justify-content:center}.apartment-eyebrow,.apartment-progress-eyebrow{margin:0 0 16px;letter-spacing:.2em;text-transform:uppercase;font-size:12px;font-weight:800;color:#53603f}.apartment-hero-content h1{margin:0;max-width:100%;font-size:clamp(38px,4.1vw,58px);line-height:1;font-weight:400;font-family:Georgia,Times New Roman,serif;color:#263024;overflow-wrap:break-word}.apartment-meta{margin:18px 0 0;font-size:17px;font-weight:800;color:#53603f}.apartment-copy{margin:22px 0 0;max-width:560px;font-size:17px;line-height:1.7;color:#334034}.apartment-primary-button{display:inline-flex;align-items:center;justify-content:center;width:fit-content;max-width:100%;box-sizing:border-box;margin-top:28px;padding:14px 22px;border-radius:999px;background:#53603f;color:#fffaf0;font-weight:800;text-align:center;text-decoration:none}.apartment-progress{border:1px solid rgba(38,48,36,.14);border-radius:26px;padding:28px;background:rgba(255,255,255,.42);display:grid;gap:26px}.apartment-content-card h2,.apartment-progress h2{margin:0;font-size:32px;font-family:Georgia,Times New Roman,serif;font-weight:400;color:#263024}.apartment-progress-timeline{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0}.apartment-progress-timeline:before{content:"";position:absolute;left:7%;right:7%;top:7px;height:2px;background:rgba(83,96,63,.22)}.apartment-progress-item{position:relative;display:grid;justify-items:center;gap:12px;text-align:center;color:#53603f;font-size:13px;line-height:1.35}.apartment-progress-dot{position:relative;z-index:1;width:16px;height:16px;border-radius:999px;border:2px solid rgba(83,96,63,.35);background:#f4f1e8}.apartment-progress-item-done .apartment-progress-dot{background:#53603f;border-color:#53603f}.apartment-progress-item-active .apartment-progress-dot{background:#d8a84d;border-color:#d8a84d;box-shadow:0 0 0 6px rgba(216,168,77,.16)}.apartment-progress-item-open{opacity:.62}.apartment-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:18px}.apartment-content-card,.apartment-info-card{border:1px solid rgba(38,48,36,.14);border-radius:24px;padding:24px;background:rgba(255,255,255,.42)}.apartment-info-card p{margin:0;color:#53603f;font-weight:800}.apartment-info-card strong{display:block;margin-top:10px;font-size:24px;color:#263024}.apartment-content-card{border-radius:26px;padding:30px}.apartment-content-card ul{padding-left:20px;line-height:1.8;font-size:17px;color:#334034}.apartment-content-card p{line-height:1.7;color:#334034;max-width:780px}@media (max-width:860px){.apartment-detail-page{padding:22px 14px 56px}.apartment-detail-inner{gap:20px}.apartment-hero-card{grid-template-columns:1fr;border-radius:26px}.apartment-hero-image{min-height:280px}.apartment-hero-content{padding:28px 22px 30px}.apartment-hero-content h1{font-size:clamp(34px,12vw,48px)}.apartment-copy{font-size:16px}.apartment-progress{padding:24px 20px}.apartment-content-card h2,.apartment-progress h2{font-size:28px}.apartment-progress-timeline{grid-template-columns:1fr;gap:0}.apartment-progress-timeline:before{left:7px;right:auto;top:8px;bottom:8px;width:2px;height:auto}.apartment-progress-item{min-height:42px;grid-template-columns:16px 1fr;justify-items:start;align-items:start;gap:14px;text-align:left;font-size:14px}}.apartment-pricing-block{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 22px;margin-top:12px;padding-top:22px;border-top:1px solid rgba(38,48,36,.13)}.apartment-pricing-block>div{display:grid;gap:5px}.apartment-pricing-label{font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#53603f}.apartment-pricing-block strong{font-size:15px;color:#263024}.apartment-pricing-block p{grid-column:1/-1;margin:0;font-size:15px;line-height:1.5;color:rgba(51,64,52,.72)}@media (max-width:640px){.apartment-pricing-block{grid-template-columns:1fr}}.apartment-availability-badge{display:inline-flex;align-items:center;width:fit-content;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;background:rgba(83,96,63,.12);color:#53603f}.apartment-availability-available{background:rgba(83,96,63,.16);color:#53603f}.apartment-availability-reserved{background:rgba(180,83,9,.13);color:#92400e}.apartment-availability-hidden,.apartment-availability-rented{background:rgba(55,65,81,.12);color:#374151}.apartment-availability-draft,.apartment-availability-planned{background:rgba(83,96,63,.12);color:#53603f}.apartment-listing-empty{margin:0;padding:28px;border:1px dashed rgba(38,48,36,.22);border-radius:24px;color:rgba(51,64,52,.72);background:rgba(255,255,255,.42)}.apartment-listing-action{display:inline-flex;align-items:center;justify-content:center;width:fit-content;margin-top:2px;padding:13px 20px;border-radius:999px;background:#53603f;color:#fffaf0;font-size:14px;font-weight:800;text-decoration:none}.apartment-card-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(22px,4vw,34px)}.apartment-card-link{display:block;height:100%;color:inherit;text-decoration:none}.apartment-card{height:100%;min-height:330px;border:1px solid rgba(38,48,36,.14);border-radius:28px;background:rgba(255,255,255,.46);box-shadow:none;overflow:hidden;transition:transform .18s ease,border-color .18s ease,background .18s ease}.apartment-card-link:hover .apartment-card{transform:translateY(-3px);border-color:rgba(83,96,63,.34);background:rgba(255,255,255,.64)}.apartment-card-content{display:flex;min-height:330px;flex-direction:column;padding:clamp(24px,3vw,34px)}.apartment-card-meta{margin:0 0 18px;font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#53603f}.apartment-card h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(31px,3.1vw,42px);font-weight:400;line-height:1.05;letter-spacing:-.035em;color:#263024}.apartment-card-description{max-width:520px;margin:18px 0 0;color:#334034;font-size:16px;line-height:1.72}.apartment-card-extra{display:grid;gap:17px;margin-top:auto;padding-top:30px}@media (max-width:840px){.apartment-card-list{grid-template-columns:1fr}}@media (max-width:640px){.apartment-card{min-height:300px;border-radius:24px}.apartment-card-content{min-height:300px;padding:22px}}.apartment-card-media{aspect-ratio:16/10;overflow:hidden;border-bottom:1px solid rgba(38,48,36,.12);background:#d8dac7}.apartment-card-media img{display:block;width:100%;height:100%;object-fit:cover}.apartment-layout-shell{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:72px 0 96px}.apartment-layout-hero{margin-bottom:56px}.apartment-layout-eyebrow{margin:0 0 14px;font-size:.78rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(20,83,45,.86)}.apartment-layout-hero h1{max-width:900px;margin:0;font-size:clamp(2.4rem,5vw,5.25rem);line-height:.95;letter-spacing:-.06em}.apartment-layout-subtitle{max-width:760px;margin:24px 0 0;font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.55;color:rgba(17,24,39,.72)}.apartment-layout-content{display:grid;gap:48px}.apartment-layout-section{border-top:1px solid rgba(17,24,39,.12);padding-top:32px}.apartment-layout-section-header{display:grid;gap:12px;margin-bottom:24px}.apartment-layout-section-header h2{margin:0;font-size:clamp(1.6rem,3vw,2.65rem);line-height:1;letter-spacing:-.04em}.apartment-layout-section-header p{max-width:720px;margin:0;color:rgba(17,24,39,.68);line-height:1.6}.apartment-layout-section-body{min-width:0}.apartment-layout-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.apartment-layout-grid>*{grid-column:span 4}@media (max-width:900px){.apartment-layout-shell{width:min(100% - 24px,1120px);padding:48px 0 72px}.apartment-layout-grid>*{grid-column:span 6}}@media (max-width:640px){.apartment-layout-grid{grid-template-columns:1fr}.apartment-layout-grid>*{grid-column:auto}}