
/* GPT Taste pass */
.taste-home{overflow-x:hidden;width:100%;max-width:100%;background:var(--paper)}
.hero--taste{grid-template-columns:minmax(0,1fr);align-items:end;min-height:112dvh;padding-bottom:clamp(2rem,5vw,4rem)}
.hero--taste .hero__media{background:linear-gradient(90deg,color-mix(in oklch,var(--blue-950) 92%,transparent) 0%,color-mix(in oklch,var(--blue-950) 72%,transparent) 48%,color-mix(in oklch,var(--blue-950) 30%,transparent) 100%),url('images/hero.webp') center/cover;filter:contrast(1.08) saturate(.92)}
.hero__wash{position:absolute;inset:auto -10vw -18vw auto;width:65vw;height:65vw;border-radius:999px;background:radial-gradient(circle,color-mix(in oklch,var(--red-650) 26%,transparent),transparent 62%);filter:blur(28px);opacity:.75;pointer-events:none}
.hero__content--wide{max-width:1180px;padding-bottom:clamp(8rem,14vw,15rem)}
.hero__content--wide h1{max-width:1180px;font-size:clamp(3rem,6.4vw,7.4rem);line-height:.9;letter-spacing:-.08em;text-wrap:balance}
.hero__content--wide .hero__lede{max-width:760px;font-size:clamp(1.08rem,1.55vw,1.36rem)}
.search-card--floating{position:absolute;right:clamp(1rem,4vw,5rem);bottom:clamp(1rem,5vw,4rem);width:min(410px,calc(100% - 2rem));margin:0;backdrop-filter:blur(18px)}
.taste-chapter{padding:clamp(6rem,12vw,12rem) clamp(1rem,5vw,6rem)}
.intro-statement{background:var(--paper);display:grid;place-items:center;text-align:center}
.intro-statement p{font-family:Gabarito,Afacad,sans-serif;font-size:clamp(2.2rem,5.4vw,6.4rem);line-height:.98;letter-spacing:-.065em;max-width:1220px;margin:0;color:var(--blue-950)}
.intro-statement .word{opacity:.18;display:inline-block;transition:opacity 300ms var(--ease-out),transform 300ms var(--ease-out)}
.intro-statement .word.is-lit{opacity:1;transform:translateY(-2px)}
.section-heading--wide{grid-template-columns:minmax(0,1fr) minmax(300px,.48fr);max-width:1320px;margin-inline:auto;margin-bottom:clamp(2.5rem,5vw,5rem)}
.section-heading--wide h2{max-width:980px;text-wrap:balance}
.housing-bento{background:linear-gradient(180deg,var(--paper),var(--blue-100))}
.bento-grid{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(250px,auto);grid-auto-flow:dense;gap:1px;background:color-mix(in oklch,var(--blue-950) 16%,transparent);border:1px solid color-mix(in oklch,var(--blue-950) 16%,transparent)}
.bento-card{position:relative;overflow:hidden;min-height:250px;background:var(--paper);padding:clamp(1.3rem,3vw,2.5rem);display:flex;flex-direction:column;justify-content:space-between;color:var(--blue-950)}
.bento-card--large{grid-column:span 2;grid-row:span 2;min-height:560px;padding:0;color:var(--white)}
.bento-card--large img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.08);transition:transform 900ms var(--ease-out)}
.bento-card--large:hover img{transform:scale(1.055)}
.bento-card--large:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,color-mix(in oklch,var(--blue-950) 92%,transparent),color-mix(in oklch,var(--blue-950) 12%,transparent))}
.bento-card--large div{position:relative;z-index:2;margin-top:auto;padding:clamp(1.5rem,4vw,3rem)}
.bento-card h3{font-family:Gabarito,Afacad,sans-serif;font-size:clamp(1.8rem,3vw,3.6rem);line-height:.95;letter-spacing:-.055em;margin:0 0 1rem;max-width:11ch}
.bento-card p,.bento-card span{margin:0;color:color-mix(in oklch,currentColor 72%,transparent);max-width:58ch}
.bento-card a{width:max-content;margin-top:1.25rem;font-weight:900;border-bottom:1px solid currentColor;padding-bottom:.18rem}
.bento-card--stat strong{font-family:Gabarito,Afacad,sans-serif;font-size:clamp(3rem,5vw,6rem);line-height:.85;letter-spacing:-.08em;color:var(--red-650)}
.bento-card--wide{grid-column:span 2;background:var(--white)}
.bento-card--dark{background:var(--blue-950);color:var(--white)}
.accordion-chapter{background:var(--paper)}
.accordion-strip{display:flex;gap:1px;min-height:640px;max-width:1320px;margin:0 auto;background:var(--line);border:1px solid var(--line);overflow:hidden;border-radius:36px}
.accordion-panel{position:relative;flex:1;min-width:0;display:flex;align-items:flex-end;overflow:hidden;transition:flex 700ms var(--ease-out)}
.accordion-panel:hover,.accordion-panel.is-active{flex:2.6}
.accordion-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,color-mix(in oklch,var(--blue-950) 88%,transparent),color-mix(in oklch,var(--blue-950) 18%,transparent)),var(--bg) center/cover;transition:transform 900ms var(--ease-out),filter 900ms var(--ease-out);filter:saturate(.86) contrast(1.08)}
.accordion-panel:hover:before{transform:scale(1.05);filter:saturate(1) contrast(1.12)}
.accordion-panel div{position:relative;z-index:2;padding:clamp(1.3rem,3vw,2.6rem);color:var(--white);width:min(420px,100%)}
.accordion-panel h3{font-family:Gabarito,Afacad,sans-serif;font-size:clamp(2rem,4vw,4.8rem);line-height:.9;letter-spacing:-.07em;margin:0 0 .75rem;writing-mode:vertical-rl;transform:rotate(180deg);transition:writing-mode 300ms var(--ease-out),transform 300ms var(--ease-out)}
.accordion-panel:hover h3,.accordion-panel.is-active h3{writing-mode:horizontal-tb;transform:none}
.accordion-panel p{opacity:0;max-width:360px;margin:0;color:color-mix(in oklch,var(--white) 72%,transparent);transition:opacity 300ms var(--ease-out)}
.accordion-panel:hover p,.accordion-panel.is-active p{opacity:1}
.featured--taste{background:radial-gradient(circle at 70% 10%,color-mix(in oklch,var(--red-650) 16%,transparent),transparent 34%),var(--blue-950)}
.property-stack{max-width:1180px;margin:0 auto;display:grid;gap:clamp(1.5rem,4vw,4rem)}
.property-slide{position:sticky;top:7rem;min-height:560px;border-radius:38px;overflow:hidden;background:var(--blue-900);box-shadow:0 30px 90px color-mix(in oklch,var(--ink) 38%,transparent);transform-origin:center center}
.property-slide:nth-child(2){top:8.5rem}.property-slide:nth-child(3){top:10rem}
.property-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.08);transition:transform 900ms var(--ease-out)}
.property-slide:hover img{transform:scale(1.045)}
.property-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in oklch,var(--blue-950) 90%,transparent),color-mix(in oklch,var(--blue-950) 18%,transparent))}
.property-slide div{position:absolute;z-index:2;left:clamp(1.5rem,5vw,4rem);bottom:clamp(1.5rem,5vw,4rem);max-width:620px;color:var(--white)}
.property-slide span{color:var(--red-650);text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:900}
.property-slide h3{font-family:Gabarito,Afacad,sans-serif;font-size:clamp(3rem,6vw,7rem);line-height:.85;letter-spacing:-.08em;margin:.4rem 0 1rem}
.property-slide p{font-size:1.14rem;color:color-mix(in oklch,var(--white) 72%,transparent);max-width:560px}
.closing-cta--taste{padding-block:clamp(7rem,14vw,14rem);background:radial-gradient(circle at 18% 20%,color-mix(in oklch,var(--red-650) 16%,transparent),transparent 32%),linear-gradient(180deg,var(--paper),var(--blue-100))}
.closing-cta--taste h2{max-width:1120px;text-wrap:balance}
@media(max-width:980px){.hero--taste{min-height:auto}.hero__content--wide{padding-top:9rem;padding-bottom:22rem}.search-card--floating{left:1rem;right:1rem}.section-heading--wide,.bento-grid{grid-template-columns:1fr}.bento-card,.bento-card--large,.bento-card--wide{grid-column:auto;grid-row:auto}.accordion-strip{display:grid;min-height:auto;border-radius:26px}.accordion-panel,.accordion-panel:hover,.accordion-panel.is-active{flex:auto;min-height:320px}.accordion-panel h3{writing-mode:horizontal-tb;transform:none}.accordion-panel p{opacity:1}.property-slide{position:relative;top:auto!important;min-height:480px}}
@media(max-width:620px){.hero__content--wide h1{font-size:clamp(2.9rem,15vw,4.2rem);line-height:.92}.hero__content--wide{padding-bottom:24rem}.intro-statement p{font-size:clamp(2rem,12vw,3.8rem)}.taste-chapter{padding-block:5rem}.bento-card--large{min-height:520px}.accordion-panel{min-height:360px}.property-slide{min-height:440px;border-radius:28px}.property-slide:after{background:linear-gradient(0deg,color-mix(in oklch,var(--blue-950) 90%,transparent),color-mix(in oklch,var(--blue-950) 20%,transparent))}.property-slide h3{font-size:clamp(2.7rem,14vw,4.2rem)}}
@media(max-width:620px){.hero__content--wide h1{font-size:clamp(2.28rem,11vw,3.25rem);line-height:.94;max-width:12ch}.hero__lede{font-size:1rem}.search-card--floating{bottom:1rem}.hero__content--wide{padding-bottom:25rem}}

/* Critique-driven UX fixes */
.button--owner{background:var(--white);color:var(--blue-950);border:1px solid color-mix(in oklch,var(--white) 42%,transparent)}
.button--owner:hover{background:var(--blue-100);transform:translateY(-2px)}
.button--light{color:var(--blue-950);background:var(--white);border-color:var(--line)}
.search-card--floating{width:min(460px,calc(100% - 2rem))}
.search-card__help{margin:.1rem 0 0;color:var(--muted);font-size:.9rem;line-height:1.35}
.owner-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.property-facts{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 1rem;padding:0;list-style:none}
.property-facts li{border:1px solid color-mix(in oklch,var(--white) 28%,transparent);background:color-mix(in oklch,var(--blue-950) 42%,transparent);color:color-mix(in oklch,var(--white) 86%,transparent);border-radius:999px;padding:.38rem .65rem;font-size:.78rem;font-weight:800;letter-spacing:.01em}
@media(max-width:620px){.owner-actions,.hero__actions{display:grid;width:100%}.owner-actions .button{width:100%}.search-card--floating{width:auto}.property-facts li{font-size:.74rem}.property-slide p{font-size:1rem}}