
.states-realty-page { --estate-gold: #c8a779; background: #0b0c0e; }
.realty-header { position: absolute; inset: 0 0 auto; background: linear-gradient(180deg,rgba(5,6,7,.7),transparent); }
.realty-hero { min-height: 760px; height: min(880px,100svh); position: relative; display: flex; align-items: center; padding: 128px clamp(24px,9vw,145px) 90px; overflow: hidden; isolation: isolate; }
.realty-hero-image,.realty-hero-shade { position:absolute; inset:0; z-index:-2; }
.realty-hero-image { background: url("../../../architecture/assets/hero.jpg") center 52%/cover; transform:scale(1.025); }
.realty-hero-shade { z-index:-1; background:linear-gradient(90deg,rgba(7,8,10,.93) 0%,rgba(7,8,10,.67) 51%,rgba(7,8,10,.16) 100%),linear-gradient(0deg,#0b0c0e 0%,transparent 28%,rgba(8,9,11,.25) 100%); }
.realty-hero-copy { max-width:680px; }
.realty-kicker { display:flex; align-items:center; gap:10px; color:#dad8d2; font-size:8px; letter-spacing:.18em; }
.realty-hero h1 { margin:38px 0 22px; font:500 clamp(64px,10vw,142px)/.9 var(--display); letter-spacing:-.09em; }
.realty-hero h1 em,.realty-value h2 em,.realty-contact h2 em { color:var(--estate-gold); font:400 1em var(--serif); }
.realty-hero-copy > p:not(.realty-kicker) { max-width:420px; color:#d3d1cb; font-size:13px; line-height:1.9; margin-bottom:28px; }
.realty-index { display:block; margin-top:65px; color:#c5b092; font-size:8px; letter-spacing:.17em; }
.realty-disclaimer { position:absolute; bottom:22px; left:clamp(24px,6vw,100px); right:clamp(24px,6vw,100px); padding:15px 0 0; border-top:1px solid rgba(255,255,255,.18); color:#d2cfc7; font-size:9px; line-height:1.6; letter-spacing:.03em; }
.realty-disclaimer strong { color:#e3c599; letter-spacing:.13em; }
.realty-search { padding-top:112px; padding-bottom:110px; background:#101115; }
.realty-search .section-heading h2,.realty-value h2,.realty-contact h2 { margin:25px 0 0; font:500 clamp(44px,6vw,78px)/1.02 var(--display); letter-spacing:-.075em; }
.realty-search .section-heading h2 em { color:var(--estate-gold); }
.search-panel { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) auto; gap:12px; align-items:end; margin:45px 0 28px; padding:20px; border:1px solid rgba(255,255,255,.14); background:#15171b; }
.search-panel label { display:grid; gap:9px; color:#a9aab0; font-size:8px; letter-spacing:.14em; text-transform:uppercase; }
.search-panel select { min-height:46px; width:100%; border:1px solid rgba(255,255,255,.19); border-radius:0; padding:0 12px; background:#101115; color:#f3f1ed; font:12px var(--sans); }
.search-panel select:focus-visible,.search-reset:focus-visible,.property-cta:focus-visible { outline:2px solid #c8a779; outline-offset:3px; }
.search-reset { min-height:46px; border:1px solid rgba(255,255,255,.24); padding:0 16px; color:#f3f1ed; background:transparent; font-size:10px; cursor:pointer; }
.search-reset:hover { border-color:var(--estate-gold); }
.results-heading { display:flex; justify-content:space-between; gap:15px; align-items:center; margin:0 2px 15px; color:#a3a5ab; font-size:9px; }
.results-heading p { margin:0; color:#eee9df; }
.results-heading span { color:#858890; font-size:7px; letter-spacing:.12em; }
.property-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.property-card { min-width:0; border:1px solid rgba(255,255,255,.1); background:#16181d; }
.property-card[hidden] { display:none; }
.property-image { height:275px; position:relative; overflow:hidden; background:#282521; }
.property-image img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .65s ease; }
.property-card:hover .property-image img { transform:scale(1.035); }
.property-image::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(0deg,rgba(7,8,10,.6),transparent); }
.property-tag { position:absolute; z-index:1; left:12px; top:12px; padding:7px 9px; background:rgba(12,13,16,.78); color:#ead3ae; font-size:7px; letter-spacing:.13em; }
.property-content { padding:20px; }
.property-meta { display:flex; justify-content:space-between; gap:8px; color:#c8a779; font-size:7px; letter-spacing:.13em; }
.property-card h3 { margin:17px 0 9px; font:500 25px/1.1 var(--display); letter-spacing:-.05em; }
.property-card p { min-height:58px; color:#a5a7ad; font-size:10px; line-height:1.8; }
.property-details { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
.property-details span { padding:7px 9px; border:1px solid rgba(255,255,255,.12); color:#b9bbc1; font-size:8px; }
.property-cta { display:flex; justify-content:space-between; padding-top:13px; border-top:1px solid rgba(255,255,255,.13); color:#e5dfd3; font-size:9px; }
.property-cta span { color:#c8a779; }
.no-results { padding:35px 0; color:#c9c7c1; text-align:center; }
.realty-credits { margin:18px 0 0; color:#80838a; font-size:8px; line-height:1.7; }
.realty-value { padding-top:110px; padding-bottom:115px; }
.realty-value-grid { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:end; margin-top:20px; }
.realty-value-grid > p { max-width:470px; margin:0 0 8px; color:#a6a8ae; font-size:12px; line-height:1.9; }
.realty-contact { padding-top:105px; padding-bottom:90px; background:radial-gradient(ellipse at 80% 50%,rgba(200,167,121,.1),transparent 44%),#121319; }
.realty-contact h2 { margin:30px 0 19px; }
.realty-contact > p { max-width:510px; color:#a6a8ae; font-size:12px; line-height:1.9; margin-bottom:25px; }
.realty-back { display:block; width:max-content; margin-top:25px; color:#c9c5bb; font-size:9px; }
.realty-back:hover { color:#c8a779; }
@media(max-width:850px) { .property-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .search-panel { grid-template-columns:repeat(2,minmax(0,1fr)); } .realty-value-grid { grid-template-columns:1fr; gap:22px; } }
@media(max-width:600px) { .realty-hero { min-height:730px; height:100svh; max-height:920px; padding:120px 24px 95px; } .realty-hero h1 { font-size:clamp(60px,16vw,95px); } .realty-hero-copy > p:not(.realty-kicker) { font-size:11px; } .realty-index { margin-top:42px; } .realty-disclaimer { left:23px; right:23px; bottom:15px; font-size:7px; } .realty-search { padding-top:77px; padding-bottom:80px; } .search-panel { grid-template-columns:1fr; margin-top:30px; padding:14px; } .results-heading { align-items:flex-start; flex-direction:column; } .property-grid { grid-template-columns:1fr; } .property-image { height:250px; } .property-card p { min-height:0; } .realty-value,.realty-contact { padding-top:78px; padding-bottom:78px; } .realty-value h2,.realty-contact h2 { font-size:49px; } }
@media(prefers-reduced-motion:reduce) { .property-image img { transition:none; } }
