/* Commercial listings extend the existing RΞD system. */
.estate-page{--estate-rule:#d3d3d3;color:#111}
.estate-page h1,.estate-page h2,.estate-page h3,.estate-page h4{text-wrap:balance}
.estate-page h1{font-size:clamp(54px,6.8vw,96px);line-height:1.04;letter-spacing:-.035em}
.estate-page h2{font-size:clamp(34px,3.7vw,52px);line-height:1.12}
.estate-page h1 span,.estate-page h2 span{color:var(--red-blue)}
.estate-page p{font-size:16px;line-height:1.8}
.estate-page section,.estate-page figure[id],.estate-option{scroll-margin-top:110px}
.estate-page .text-link{font-size:14px;min-height:48px;gap:16px;max-width:100%}
.catalog-opening,.estate-opening{padding-top:132px;padding-bottom:58px}
.catalog-opening>div{display:grid;grid-template-columns:1.7fr 1fr;gap:60px;align-items:end}
.catalog-opening>div>p{max-width:40ch;color:#505050;padding-bottom:5px}
.estate-list{display:grid;grid-template-columns:1fr 1fr;column-gap:5vw;row-gap:66px;padding-bottom:85px}
.estate-listing{min-width:0}.estate-listing:nth-child(even){padding-top:74px}
.listing-image{display:block;overflow:hidden}.listing-image img{width:100%;height:auto;object-fit:contain}
.estate-page .media-caption,.service-page .media-caption{font-size:12px;line-height:1.6;color:#595959;margin-top:10px}
.listing-heading{display:flex;gap:16px;align-items:baseline;justify-content:space-between;margin-top:26px}
.estate-listing h2{font-size:clamp(28px,3vw,42px)}.listing-heading>span{font-size:13px;color:var(--red-cyan-text)}
.estate-listing .listing-location{margin:12px 0 4px;font-weight:500}.estate-listing>p:not(.media-caption){color:#505050}.estate-listing .text-link{margin-top:14px}
.estate-paths{display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding-block:55px 80px;border-top:1px solid var(--estate-rule)}
.estate-paths h2{font-size:38px}.estate-paths p{margin-top:20px;max-width:48ch;color:#505050}.estate-paths .text-link{margin-top:16px}.estate-page .estate-small{font-size:14px;line-height:1.75;color:#595959}.estate-small a{text-decoration:underline;text-underline-offset:4px}
.estate-location{margin-top:18px;color:#444}.estate-location span{white-space:nowrap}
.estate-hero{display:grid;grid-template-columns:1.45fr 1fr;gap:5vw;align-items:start;margin-top:40px}
.estate-hero figure img{width:100%;height:auto;object-fit:contain}.estate-intro h2{font-size:clamp(29px,2.65vw,38px)}.estate-intro>p{margin-top:22px;color:#505050}.estate-actions{display:flex;align-items:flex-start;flex-direction:column;gap:12px;margin-top:26px}
.estate-button{display:flex;justify-content:center;align-items:center;text-align:center;min-height:52px;padding:14px 22px;background:#111;color:#fff;font-size:15px;font-weight:500;line-height:1.6;border:1px solid #111}.estate-button:hover{background:#333}.estate-button:focus-visible{outline-offset:5px}
.estate-overview{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw;padding-block:18px 70px}.estate-overview h2{font-size:34px}.estate-overview p{margin-top:20px;color:#505050;max-width:40ch}.estate-overview ul{list-style:none;margin:0;padding:0}.estate-overview li{padding-block:16px;border-top:1px solid var(--estate-rule);font-size:16px;line-height:1.7}
.estate-models{background:#f7f7f7;padding-block:65px}.estate-section-head{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw;align-items:start;margin-bottom:40px}.estate-section-head p{max-width:60ch;color:#505050}.estate-section-head p+p{margin-top:14px}
.option-group+ .option-group{margin-top:52px}.option-group>h3{font-size:24px;line-height:1.3;margin-bottom:24px}
.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 5vw;align-items:start}
.estate-option{display:grid;grid-template-columns:minmax(120px,1fr) minmax(150px,1fr);gap:24px;padding-top:28px;border-top:1px solid #ccc;min-width:0}
.option-name{grid-column:1/-1}.option-name h4{font-family:var(--font-display);font-size:28px;line-height:1.2;font-weight:500;margin:0;letter-spacing:-.02em}.option-name p{font-size:14px;line-height:1.65;color:#595959;margin-top:10px}
.option-plan{min-width:0}.option-plan .media-expand{background:white;padding:12px}.option-plan img{width:100%;height:240px;object-fit:contain}.option-plan span{display:block;font-size:13px;line-height:1.5;text-decoration:underline;text-underline-offset:4px;margin-top:12px;color:var(--red-blue)}
.estate-option dl{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:20px 12px;margin:0;min-width:0;font-variant-numeric:tabular-nums}.option-area,.option-parking{grid-column:1/-1}.estate-option dt{font-size:12px;line-height:1.6;color:#595959}.estate-option dd{margin:5px 0 0;font-size:22px;line-height:1.4}.estate-option dd>small{display:block;font-size:12px;line-height:1.65;margin-top:6px;color:#595959}
.option-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 24px}.option-actions a{font-size:14px;min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:5px;color:var(--red-blue)}
.estate-option--wide .option-plan{grid-column:1/-1}.estate-option--wide dl,.estate-option--text dl{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}.estate-option--wide .option-area,.estate-option--text .option-area{grid-column:1/-1}.estate-option--wide .option-parking,.estate-option--text .option-parking{grid-column:auto}
.estate-gallery{padding-block:78px 58px}.estate-gallery h2{margin-bottom:35px}.estate-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.estate-photo-grid figure:only-child{max-width:800px;grid-column:1/-1}.estate-photo-grid img{width:100%;height:auto;object-fit:contain}.estate-photo-grid:has(.estate-photo--portrait){grid-template-columns:1.4fr 1fr;align-items:start}.estate-photo--portrait{max-width:360px;justify-self:end}.estate-gallery>.estate-small{margin-top:25px;max-width:78ch}
.media-expand{display:block;cursor:zoom-in}.media-expand:hover{outline:1px solid var(--red-blue);outline-offset:5px}
.estate-contact{padding-block:72px;background:#080808;color:#fff}.estate-contact>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.estate-contact h2{font-size:clamp(44px,4.6vw,66px)}.estate-contact h2 span{color:var(--red-cyan)}.estate-contact p{margin-top:25px;max-width:48ch;color:#ddd}.estate-contact .estate-small{color:#bbb;font-size:13px}.estate-contact :focus-visible{outline-color:var(--red-cyan)}
.option-picker label{display:block;font-size:14px;margin-bottom:12px}.option-picker select{width:100%;max-width:100%;font:inherit;font-size:16px;line-height:1.5;color:#111;background:white;border:1px solid #bbb;border-radius:0;padding:14px 10px;min-height:52px;cursor:pointer}.estate-inquiry .inquiry-context{font-size:14px;margin:20px 0}.estate-inquiry>.estate-button{background:white;border-color:white;color:#111;margin-top:14px}.estate-inquiry>.estate-button:hover{background:#e5e5e5}.estate-inquiry>.estate-button--outline{color:white;background:transparent;border-color:#666}.estate-inquiry>.estate-button--outline:hover{background:#222}
.estate-agent{margin-top:28px;padding-top:24px;border-top:1px solid #444;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.estate-agent p{margin:0;font-size:15px;line-height:1.8}.estate-agent span{font-size:13px;color:#bbb}.estate-agent a{font-size:14px;min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:5px}
.estate-related{padding-block:65px}.estate-related>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:25px}.estate-related nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:35px}.estate-related nav a{padding-block:20px;border-top:1px solid var(--estate-rule)}.estate-related nav span{font-family:var(--font-display);font-size:27px;line-height:1.2}.estate-related nav small{display:block;font-size:13px;line-height:1.7;color:#595959;margin-top:12px}.estate-owner{margin-top:30px}.estate-owner .text-link{font-weight:400}
.media-dialog{border:0;padding:20px;width:min(1100px,94vw);max-width:94vw;max-height:94dvh;color:#111;background:#fff;overflow:auto;overscroll-behavior:contain}.media-dialog::backdrop{background:#000d}.media-dialog form{display:flex;justify-content:flex-end;margin:0 0 12px}.media-dialog button{background:white;border:1px solid #aaa;min-height:44px;padding:8px 14px;font-size:14px}.media-dialog button span{font-size:24px;margin-left:12px}
.media-view{overflow:auto;max-height:calc(94dvh - 190px);overscroll-behavior:contain}.media-view img{display:block;width:100%;height:calc(94dvh - 190px);object-fit:contain}.media-view.is-zoomed img{width:auto;max-width:none;height:auto;min-width:150%;object-fit:initial}.media-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px}.media-tools p{font-size:13px;line-height:1.6;margin:0}.media-tools button{flex-shrink:0}.estate-media-open{overflow:hidden;overscroll-behavior:none}
.promotion-selection{display:grid;grid-template-columns:.8fr 1.5fr;gap:5vw;padding-block:55px 70px;border-top:1px solid #d6d6d6}.promotion-selection>div>p{margin-top:24px;color:#505050}.promotion-selection .text-link{margin-top:20px}.promotion-properties{display:grid;grid-template-columns:1fr 1fr;gap:26px}.promotion-properties img{width:100%;height:auto;object-fit:contain}.promotion-properties h3{font-size:27px;line-height:1.15;margin-top:18px}.promotion-properties p{font-size:13px;line-height:1.7;margin-top:12px;color:#595959}
@media(max-width:1000px){.catalog-opening>div{grid-template-columns:1.3fr 1fr;gap:30px}.estate-hero{grid-template-columns:1.1fr 1fr;gap:30px}.option-grid{grid-template-columns:1fr}.estate-option{grid-template-columns:1fr 1fr}.estate-option--wide .option-plan{grid-column:1}.estate-option--wide dl{grid-column:2;grid-template-columns:1fr 1fr}.estate-option--wide .option-parking{grid-column:1/-1}.option-plan img{height:270px}.estate-contact>.wrap{gap:45px}.promotion-selection{grid-template-columns:1fr}.promotion-selection>div:first-child{max-width:650px}}
@media(max-width:700px){
 .catalog-opening,.estate-opening{padding-top:112px;padding-bottom:35px}.estate-page h1{font-size:clamp(46px,11vw,68px)}.estate-page h2{font-size:36px}.catalog-opening>div{display:block}.catalog-opening>div>p{margin-top:26px;max-width:50ch}
 .estate-list{grid-template-columns:1fr;row-gap:42px;padding-bottom:55px}.estate-listing:nth-child(even){padding-top:0}.listing-heading{margin-top:22px}.estate-listing h2{font-size:34px}.estate-paths{display:block;padding-block:42px 55px}.estate-paths>div+div{margin-top:44px;padding-top:35px;border-top:1px solid var(--estate-rule)}.estate-paths h2{font-size:34px}
 .estate-location{font-size:14px!important;line-height:1.7!important}.estate-hero{display:block;margin-top:28px}.estate-intro{margin-top:28px}.estate-intro h2{font-size:30px}.estate-intro>p{margin-top:18px}.estate-actions{gap:10px;margin-top:22px}.estate-actions .estate-button{width:100%}
 .estate-overview{display:block;padding-block:15px 45px}.estate-overview h2{font-size:30px}.estate-overview p{margin-top:14px}.estate-overview ul{margin-top:25px}.estate-overview li{font-size:15px}
 .estate-models{padding-block:44px}.estate-section-head{display:block;margin-bottom:28px}.estate-section-head>p,.estate-section-head>div{margin-top:22px}.estate-page .estate-small{font-size:13px}.option-group>h3{font-size:22px;margin-top:30px}
 .option-grid{gap:32px}.estate-option{grid-template-columns:minmax(90px,.9fr) minmax(135px,1.1fr);gap:20px 16px;padding-top:24px}.option-name h4{font-size:27px}.option-name p{max-width:none}.estate-option dl{gap:16px 12px}.estate-option dt{font-size:12px}.estate-option dd{font-size:21px}.option-actions{gap:4px 20px}.option-actions a{font-size:14px}.option-plan .media-expand{padding:8px}.option-plan img{height:220px}
 .estate-option--wide .option-plan{grid-column:1/-1}.estate-option--wide dl{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}.estate-option--wide .option-parking{grid-column:auto}.estate-option--wide .option-plan img{height:auto;max-height:280px}.estate-option--wide .option-parking dt,.estate-option--text .option-parking dt{font-size:11px}
 .estate-gallery{padding-block:48px}.estate-gallery h2{font-size:32px;margin-bottom:25px}.estate-photo-grid,.estate-photo-grid:has(.estate-photo--portrait){grid-template-columns:1fr;gap:25px}.estate-photo--portrait{justify-self:start;max-width:100%}.media-dialog{padding:14px}.media-tools{align-items:start;flex-direction:column;gap:10px}.media-view,.media-view img{max-height:calc(94dvh - 230px);height:calc(94dvh - 230px)}.media-view.is-zoomed img{height:auto;max-height:none}
 .estate-contact{padding-block:48px}.estate-contact>.wrap{display:block}.estate-contact h2{font-size:44px}.estate-contact h2 span{overflow-wrap:normal}.estate-contact p{margin-top:22px}.estate-inquiry{margin-top:34px}.estate-inquiry .inquiry-context{margin-top:18px}
 .estate-related{padding-block:45px}.estate-related>div:first-child{display:block}.estate-related>div:first-child .text-link{margin-top:16px}.estate-related nav{grid-template-columns:1fr;gap:0;margin-top:25px}.estate-related nav a{padding-block:19px}.estate-related nav small{margin-top:8px}.estate-owner{margin-top:15px}
 .promotion-selection{padding-block:40px 50px}.promotion-properties{grid-template-columns:1fr;gap:32px}.promotion-properties h3{font-size:30px}
}
