.hp-archive{padding-block:58px 84px}
.hp-archive-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:70px;align-items:end;padding-bottom:38px;border-bottom:1px solid var(--line);margin-bottom:28px}
.hp-archive-head h1{font-size:clamp(42px,5.3vw,68px);line-height:1.04;letter-spacing:-.055em;margin:14px 0 0;max-width:820px}
.hp-archive-head p{margin:0;color:var(--muted);font-size:15px;line-height:1.85;max-width:580px}
.hp-archive-features{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:#fff;margin:0 0 42px}
.hp-archive-features>div{padding:22px 22px 24px;border-right:1px solid var(--line);min-height:145px}
.hp-archive-features>div:last-child{border-right:0}
.hp-archive-features strong{display:block;font-size:10px;letter-spacing:1.4px;color:var(--wine);margin-bottom:25px}
.hp-archive-features span{display:block;font-size:14px;font-weight:650;margin-bottom:7px}
.hp-archive-features small{display:block;color:var(--muted);font-size:11px;line-height:1.6}
.hp-filter-shell{background:#eef1eb;border-radius:18px;padding:28px;margin-bottom:40px}
.hp-filter-intro{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:22px}
.hp-filter-intro h2{font-size:28px;margin:8px 0 0;letter-spacing:-.035em}
.hp-filters{display:grid;grid-template-columns:1fr 1fr 1.05fr .82fr .95fr auto;gap:12px;align-items:end}
.hp-filters label span{display:block;font-size:9px;letter-spacing:1.3px;text-transform:uppercase;margin-bottom:7px;color:#66716a}
.hp-filters select{width:100%;height:48px;border:1px solid #d3d9d2;border-radius:10px;background:#fff;padding:0 12px;color:var(--ink);font-size:12px}
.hp-filter-actions{display:flex;align-items:center;gap:12px}
.hp-filters button{height:48px;border:0;border-radius:10px;background:var(--wine);color:#fff;padding:0 20px;font-size:11px;font-weight:650;white-space:nowrap;box-shadow:0 8px 24px rgba(34,62,49,.12)}
.hp-reset{font-size:10px;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.hp-results-head{display:flex;justify-content:space-between;gap:20px;padding-bottom:16px;margin-bottom:24px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.hp-grid,.hp-home-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 28px}
.hp-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}
.hp-card:hover{transform:translateY(-3px);box-shadow:0 16px 35px rgba(22,35,28,.08);border-color:#d4dbd4}
.hp-card-media{display:block;aspect-ratio:1.48;overflow:hidden;background:#edf1eb}
.hp-card-media>img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.hp-card-media:hover>img{transform:scale(1.025)}
.hp-card-body{padding:20px 21px 22px}
.hp-eyebrow{display:block;color:var(--wine);font-size:9px;letter-spacing:1.25px;text-transform:uppercase;font-weight:650}
.hp-card h2{font-size:24px;line-height:1.2;margin:10px 0 13px;letter-spacing:-.04em}
.hp-facts{display:flex;flex-wrap:wrap;gap:7px 14px;color:var(--muted);font-size:11px;margin-bottom:18px}
.hp-facts span+span:before{content:'·';margin-right:14px;color:#aeb7af}
.hp-card-link{display:inline-flex;gap:18px;align-items:center;font-size:10px;padding-bottom:3px;border-bottom:1px solid #b4c0b7}
.hp-house-art{position:relative;display:flex!important;width:100%;height:100%;align-items:flex-end;justify-content:center;padding:18px;background:linear-gradient(160deg,#e5ebe4,#f5f0e6);overflow:hidden}
.hp-house-roof{position:absolute;width:62%;height:34%;top:20%;left:19%;background:#657a68;clip-path:polygon(50% 0,100% 88%,86% 88%,86% 100%,14% 100%,14% 88%,0 88%)}
.hp-house-body{position:absolute;width:52%;height:38%;left:24%;bottom:18%;background:#fff;border:1px solid #d9ddd7;display:grid;grid-template-columns:repeat(3,1fr);gap:9%;padding:9%}
.hp-house-body i{display:block;background:#cdd8d0;border:1px solid #b7c5ba}
.hp-house-art small{position:relative;z-index:2;background:#ffffffea;border-radius:999px;padding:6px 10px;font-size:9px;letter-spacing:.5px}
.hp-home{padding-block:62px 68px}
.hp-archive-note{margin-top:48px}
.hp-disclaimer{background:#f4f4ef;border:1px solid #e0e4dc;border-left:4px solid var(--wine);border-radius:12px;padding:18px 20px;font-size:12px;line-height:1.75;color:#566057}
.hp-disclaimer strong{color:var(--ink)}
.hp-empty{padding:55px 0 20px;max-width:680px}
.hp-empty h2{font-size:34px;margin:10px 0 12px}
.hp-empty p{color:var(--muted)}

.hp-single{padding-bottom:30px}
.hp-single-head{max-width:1120px;padding-top:42px}
.hp-single-labels{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hp-style-label{display:inline-flex;padding:6px 10px;border:1px solid var(--line);border-radius:999px;font-size:9px;color:var(--muted)}
.hp-single-head h1{font-size:clamp(42px,5.3vw,68px);line-height:1.05;letter-spacing:-.055em;margin:14px 0 18px;max-width:1000px}
.hp-lead{max-width:780px;font-size:17px;color:var(--muted);line-height:1.75}
.hp-hero-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(310px,.68fr);gap:28px;align-items:stretch;margin-top:22px}
.hp-hero-media{min-height:500px;background:#edf1eb;border-radius:18px;overflow:hidden}
.hp-hero-media>img,.hp-hero-media>.hp-house-art{width:100%;height:100%;object-fit:cover}
.hp-spec-card{border:1px solid var(--line);border-radius:18px;padding:28px;background:#fff}
.hp-spec-card h2{font-size:25px;margin:9px 0 6px}
.hp-spec-card dl{margin:18px 0 20px}
.hp-spec-card dl div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-top:1px solid var(--line)}
.hp-spec-card dt{font-size:11px;color:var(--muted)}
.hp-spec-card dd{margin:0;font-size:12px;font-weight:650;text-align:right}
.hp-spec-back{display:inline-flex;font-size:10px;border-bottom:1px solid #b4c0b7;padding-bottom:3px}
.hp-included{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-top:28px}
.hp-included>div{background:#fff;padding:24px 25px 26px}
.hp-included span{display:block;color:var(--wine);font-size:9px;letter-spacing:1.2px;margin-bottom:20px}
.hp-included strong{display:block;font-size:15px;margin-bottom:7px}
.hp-included p{margin:0;color:var(--muted);font-size:11px;line-height:1.65}
.hp-plan-section{padding-block:62px}
.hp-plan-section>header{max-width:720px;margin-bottom:26px}
.hp-plan-section>header h2{font-size:38px;margin:10px 0 10px}
.hp-plan-section>header p{color:var(--muted);font-size:13px}
.hp-plan-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.72fr);gap:30px;align-items:start}
.hp-plan-media{border:1px solid var(--line);border-radius:16px;padding:20px;background:#fbfbf8}
.hp-plan-media img{width:100%;height:auto;border-radius:8px}
.hp-plan-media figcaption{font-size:10px;color:var(--muted);margin-top:13px}
.hp-scheme{min-height:520px;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(105px,1fr);gap:5px;padding:5px;background:#cfd6cf;border-radius:8px;overflow:hidden}
.hp-zone{background:#fff;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;font-size:11px}
.hp-living{grid-column:span 3;grid-row:span 2;background:#efe8da}
.hp-bed{background:#edf2ed}
.hp-bath{background:#e6edf0}
.hp-circ{background:#f2f2ee}
.hp-room-table-wrap{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}
.hp-room-table{width:100%;border-collapse:collapse;font-size:12px}
.hp-room-table thead{background:#f3f5f1}
.hp-room-table th,.hp-room-table td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left}
.hp-room-table tr:last-child td{border-bottom:0}
.hp-room-table th:last-child,.hp-room-table td:last-child{text-align:right}
.hp-copy-grid{display:grid;grid-template-columns:minmax(0,760px) minmax(280px,1fr);gap:54px;align-items:start;padding-block:8px 60px}
.hp-copy{font-size:17px;line-height:1.85}
.hp-copy h2{font-size:31px;margin-top:38px}
.hp-copy h2:first-child{margin-top:0}
.hp-copy ul{padding-left:22px}
.hp-copy-grid>aside{display:grid;gap:14px}
.hp-side-note{background:#eef1eb;border-radius:14px;padding:20px}
.hp-side-note p{margin:10px 0 0;color:#526057;font-size:12px;line-height:1.75}
.hp-gallery{padding-block:20px 55px}
.hp-gallery header h2{font-size:34px;margin-top:10px}
.hp-gallery>div{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hp-gallery img{width:100%;height:320px;object-fit:cover;border-radius:14px}
.hp-related{padding-block:42px 72px}

@media(max-width:1180px){
  .hp-filters{grid-template-columns:repeat(3,1fr)}
  .hp-filter-actions{grid-column:span 3}
}
@media(max-width:1000px){
  .hp-archive-head{grid-template-columns:1fr;gap:20px}
  .hp-archive-features{grid-template-columns:repeat(2,1fr)}
  .hp-archive-features>div:nth-child(2){border-right:0}
  .hp-archive-features>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .hp-hero-grid,.hp-plan-layout,.hp-copy-grid{grid-template-columns:1fr}
  .hp-hero-media{min-height:420px}
  .hp-copy-grid>aside{max-width:680px}
  .hp-scheme{min-height:440px}
}
@media(max-width:820px){
  .hp-grid,.hp-home-grid{grid-template-columns:repeat(2,1fr)}
  .hp-card h2{font-size:22px}
  .hp-gallery>div{grid-template-columns:repeat(2,1fr)}
  .hp-included{grid-template-columns:1fr}
}
@media(max-width:640px){
  .hp-filters{grid-template-columns:1fr 1fr}
  .hp-filter-actions{grid-column:1/-1}
}
@media(max-width:540px){
  .hp-archive{padding-block:34px 52px}
  .hp-archive-head h1{font-size:40px}
  .hp-archive-features{grid-template-columns:1fr}
  .hp-archive-features>div{border-right:0;border-bottom:1px solid var(--line);min-height:0}
  .hp-archive-features>div:last-child{border-bottom:0}
  .hp-filter-shell{padding:18px;border-radius:14px}
  .hp-filter-intro{display:block}
  .hp-filters{grid-template-columns:1fr}
  .hp-filter-actions{grid-column:auto;align-items:stretch;flex-direction:column}
  .hp-filters button{width:100%}
  .hp-results-head{align-items:flex-start;flex-direction:column;gap:4px}
  .hp-grid,.hp-home-grid{grid-template-columns:1fr;gap:26px}
  .hp-card h2{font-size:26px}
  .hp-home{padding-block:42px}
  .hp-single-head{padding-top:28px}
  .hp-single-head h1{font-size:40px}
  .hp-lead{font-size:15px}
  .hp-hero-grid{margin-top:10px}
  .hp-hero-media{min-height:300px;border-radius:14px}
  .hp-spec-card{padding:20px;border-radius:14px}
  .hp-included{margin-top:20px}
  .hp-plan-section{padding-block:42px}
  .hp-plan-section>header h2{font-size:31px}
  .hp-plan-media{padding:10px}
  .hp-scheme{min-height:390px;grid-template-columns:repeat(2,1fr)}
  .hp-living{grid-column:span 2}
  .hp-copy{font-size:16px}
  .hp-copy h2{font-size:28px}
  .hp-gallery>div{grid-template-columns:1fr}
  .hp-gallery img{height:auto}
}

/* CP-001 / premium model content */
.plan-intro-card{margin:0 0 36px;padding:28px;border:1px solid var(--line);border-radius:16px;background:#f5f6f2}
.plan-intro-copy{font-size:18px!important;line-height:1.75!important;margin:0 0 22px!important;color:#39443c}
.plan-detail-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.plan-detail-strip>div{background:#fff;padding:14px 16px}
.plan-detail-strip span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1.1px;color:var(--muted);margin-bottom:5px}
.plan-detail-strip strong{font-size:16px;font-weight:650}
.plan-disclaimer{margin:32px 0;padding:18px 20px;border-left:4px solid var(--wine);background:#f4f4ef;border-radius:0 12px 12px 0;font-size:13px;line-height:1.75;color:#566057}
.plan-disclaimer strong{display:block;color:var(--ink);margin-bottom:4px}
.plan-catalog-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:36px 0 8px;padding:20px 0;border-block:1px solid var(--line);font-size:13px}
.plan-catalog-cta a{font-size:11px;font-weight:650;text-decoration:none!important;white-space:nowrap}
@media(max-width:640px){.plan-intro-card{padding:20px}.plan-detail-strip{grid-template-columns:repeat(2,1fr)}.plan-catalog-cta{align-items:flex-start;flex-direction:column}}
