/* Homepage layout: property types, dark Featured band, browse rows, areas and closing panels. */

#exploreView .category-section{padding-top:56px}
/* Property types: a clean swipeable strip (no frosted box, no scrollbar) that snaps cards to the edge. */
#exploreView .category-strip{margin:-16px 0 0;padding:16px 0 24px;background:none;scroll-snap-type:x mandatory;scrollbar-width:none}
#exploreView .category-chip{flex:0 0 calc((100% - 70px)/8)}
#exploreView .category-strip::-webkit-scrollbar,.home-row-track::-webkit-scrollbar,.home-area-grid::-webkit-scrollbar{display:none}
#exploreView .category-chip{scroll-snap-align:start;background:#fff!important;box-shadow:0 4px 12px rgba(53,31,22,.08)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#exploreView .category-chip.active{background:#fff4ec!important}
#exploreView .category-strip *{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

/* Featured listings sit on a dark band directly after the property types. */
#exploreView #featuredSection.featured-full-bleed{width:min(1280px,calc(100% - 24px));margin:48px auto 0;padding:52px 0 40px;border-radius:36px;background:#1d1714;color:#fff}
#exploreView #featuredSection .section-heading h2{color:#fff}
#exploreView #featuredSection .section-heading p{color:#cbbfb8}
#exploreView #featuredSection .section-heading .eyebrow{background:#fbbf24;color:#1d1714;border-color:transparent}
#exploreView #featuredSection .section-heading .eyebrow::before{content:'★';margin-right:6px}
#exploreView #featuredSection .section-heading .text-btn{color:#fdba74}
#exploreView #featuredSection .featured-carousel{width:min(1220px,calc(100% - 40px));border-color:rgba(255,255,255,.08);box-shadow:none}
#exploreView #featuredSection .featured-dock-card{background:#fff!important;backdrop-filter:none!important}
#exploreView #featuredSection .featured-dock-copy strong{color:#1d1714}
#exploreView #featuredSection .featured-dock-copy small{color:#5c524d}
#exploreView #featuredSection .sh-empty{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#fff;margin:0 20px}
#exploreView #featuredSection .sh-empty h3{color:#fff}
#exploreView #featuredSection .sh-empty p{color:#cbbfb8}

/* Browse rows swipe sideways (arrows on wider screens) and are hidden when empty. */
.home-rows{display:grid;gap:56px;padding-top:64px}
.home-rows:not(:has(.home-row:not([hidden]))){display:none}
.home-row[hidden]{display:none}
.home-row .section-heading{margin-bottom:18px}
.home-row-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 60px)/4);gap:20px;overflow-x:auto;margin:-16px 0 0;padding:16px 0 24px;scroll-snap-type:x mandatory;scrollbar-width:none}
.home-row-track>.property-card{scroll-snap-align:start;min-width:0;box-shadow:0 4px 12px rgba(53,31,22,.10)!important;background-color:#fff}
/* Frosted-glass blur inside a scrolling row leaves a visible edge, so rows use solid cards. */
.home-row-track *,.home-row-track>.property-card{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

#exploreView :is(.home-row,.home-areas) .section-heading .text-btn{white-space:nowrap}

/* Explore by area */
.home-areas{padding-top:72px}
.home-areas .section-heading{margin-bottom:20px}
.home-area-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4);gap:16px;overflow-x:auto;margin:-16px 0 0;padding:16px 0 28px;scroll-snap-type:x mandatory;scrollbar-width:none}
.home-area-card{scroll-snap-align:start}
.home-scroll-controls{display:flex;align-items:center;gap:8px}
.home-scroll-controls .text-btn{margin-right:8px}
.home-scroll-arrow{width:44px;height:44px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:22px;line-height:1;display:grid;place-items:center}
.home-scroll-arrow:hover,.home-scroll-arrow:focus-visible{border-color:#f5b89a;background:#fff1e8}
.home-area-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;min-height:150px;padding:20px;border-radius:24px;overflow:hidden;text-decoration:none;color:#fff;background:linear-gradient(150deg,#f97316 0%,#d92d20 100%);box-shadow:0 14px 34px rgba(185,45,20,.18);transition:transform .18s ease,box-shadow .18s ease}
.home-area-card:nth-child(4n+2){background:linear-gradient(150deg,#b45309 0%,#7c2d12 100%)}
.home-area-card:nth-child(4n+3){background:linear-gradient(150deg,#be123c 0%,#7f1d1d 100%)}
.home-area-card:nth-child(4n+4){background:linear-gradient(150deg,#3f2a22 0%,#1d1714 100%)}
.home-area-card:hover,.home-area-card:focus-visible{transform:translateY(-3px);box-shadow:0 20px 40px rgba(185,45,20,.26)}
.home-area-card strong{font-size:22px;letter-spacing:-.5px}
.home-area-card small{font-size:14px;font-weight:700;color:rgba(255,255,255,.86)}
.home-area-pin{position:absolute;top:18px;left:18px;display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.18)}

/* How it works + features: one compact card */
.home-how{padding-top:72px}
.home-how-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:40px 44px;box-shadow:0 10px 30px rgba(53,31,22,.06)}
.home-how-card .section-heading{margin-bottom:26px}
.home-how-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.home-how-steps li{display:flex;gap:14px;align-items:flex-start}
.home-how-steps b{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#d92d20;color:#fff;font-size:18px}
.home-how-steps h3{margin:0 0 4px;font-size:19px}
.home-how-steps p{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}
.home-how-features{list-style:none;margin:28px 0 0;padding:26px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.home-how-features li{display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:16px;background:var(--cream)}
.home-how-features strong{font-size:15px}
.home-how-features span{font-size:13px;line-height:1.45;color:var(--muted)}

/* Closing panels for seekers and owners */
.home-closing{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-top:40px}
.home-closing-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:40px;border-radius:30px;color:#fff}
.home-closing-card.seeker{background:#1d1714}
.home-closing-card.provider{background:linear-gradient(110deg,rgba(150,24,14,.94) 0%,rgba(200,40,26,.82) 55%,rgba(217,45,32,.45) 100%),url('assets/home-owners.jpg') center/cover no-repeat}
.home-closing-card .eyebrow{background:rgba(255,255,255,.14);color:#fed7aa;border-color:transparent}
.home-closing-card h2{margin:0;font-size:32px;line-height:1.1;letter-spacing:-.8px;color:#fff;text-wrap:balance}
.home-closing-card p{margin:0;max-width:440px;font-size:16px;line-height:1.55;color:rgba(255,255,255,.84)}
.home-closing-btn{margin-top:auto;padding:14px 22px;border-radius:999px;background:#fff;color:#1d1714;font-weight:800;text-decoration:none}
.home-closing-btn:hover,.home-closing-btn:focus-visible{background:#fff1e8;color:#1d1714}

@media(max-width:1000px){
  .home-how-features{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home-row-track{grid-auto-columns:calc((100% - 20px)/2)}
  .home-area-grid{grid-auto-columns:calc((100% - 32px)/3)}
  #exploreView .category-chip{flex-basis:calc((100% - 40px)/5)}
}
@media(max-width:700px){
  #exploreView .category-section{padding-top:40px}
  #exploreView .category-chip{flex-basis:126px}
  #exploreView #featuredSection.featured-full-bleed{margin-top:36px;padding:28px 0 20px;border-radius:28px}
  /* Phones: keep the whole featured slide within one screen. */
  #exploreView #featuredSection .section-heading{margin-bottom:14px}
  #exploreView #featuredSection .section-heading h2{font-size:26px;line-height:1.1}
  #exploreView #featuredSection .section-heading p{display:none}
  #exploreView #featuredSection .featured-carousel{width:calc(100% - 24px)}
  #exploreView #featuredSection .featured-spotlight-media{min-height:0!important;height:210px!important}
  #exploreView #featuredSection .featured-spotlight-media img{height:100%!important;min-height:0!important}
  #exploreView #featuredSection .featured-spotlight-copy{padding:16px 18px 18px!important;justify-content:flex-start}
  #exploreView #featuredSection .featured-spotlight-copy h3{font-size:22px!important;line-height:1.15!important;letter-spacing:-.5px!important;margin:6px 0 2px!important;min-height:0!important}
  #exploreView #featuredSection .featured-spotlight-copy .eyebrow{font-size:10px;padding:5px 9px}
  #exploreView #featuredSection .featured-price{font-size:22px!important;margin:4px 0!important}
  #exploreView #featuredSection :is(.featured-desc,.featured-specs,.featured-engagement,.featured-dock-rail-wrap,.featured-dock-rail){display:none!important}
  #exploreView #featuredSection .featured-actions{margin-top:10px!important;padding-top:0!important;border-top:0!important;grid-template-columns:1fr!important}
  #exploreView #featuredSection .featured-actions .outline-btn{display:none}
  #exploreView #featuredSection .featured-actions .primary-btn{width:100%}
  .home-rows{gap:40px;padding-top:48px}
  .home-row-track{grid-auto-columns:82%;gap:14px}
  .home-areas,.home-closing,.home-how{padding-top:52px}
  .home-how-card{padding:24px 18px;border-radius:24px}
  .home-how-steps{grid-template-columns:1fr;gap:18px}
  .home-how-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px;padding-top:20px}
  .home-how-features li{padding:12px}
  .home-area-grid{grid-auto-columns:42%;gap:12px}
  .home-scroll-arrow{display:none}
  .home-area-card{min-height:124px;padding:16px;border-radius:20px}
  .home-area-card strong{font-size:18px}
  .home-area-pin{top:14px;left:14px;width:36px;height:36px}
  .home-closing{grid-template-columns:1fr;gap:14px}
  .home-closing-card{padding:28px 22px;border-radius:24px}
  .home-closing-card h2{font-size:25px}
  .home-closing-btn{align-self:stretch;text-align:center}
}

/* Phones and tablets cannot hover: cards on screen show their hover glow instead (touch-glow.js).
   :is(#exploreView,body) matches the homepage's ID-level card styles on any section. */
@media (hover:none){
  :is(#exploreView,body) :is(.category-chip,.property-card,.catalog-card,.home-area-card,.featured-dock-card,.listing-type-card){transition:border-color .45s ease,box-shadow .45s ease,background-color .45s ease,transform .25s ease}
  :is(#exploreView,body) .category-chip.in-view{background:#fff4ec!important;border-color:#ef9c73!important;box-shadow:0 0 0 2px rgba(239,156,115,.55),0 8px 20px rgba(53,31,22,.10)!important}
  :is(#exploreView,body) :is(.property-card,.catalog-card,.listing-type-card,.featured-dock-card).in-view{border-color:#ef9c73!important;box-shadow:0 0 0 2px rgba(239,156,115,.55),0 14px 34px rgba(31,38,52,.10)!important}
  :is(#exploreView,body) .home-area-card.in-view{box-shadow:0 0 0 2px rgba(255,190,160,.9),0 20px 40px rgba(185,45,20,.26)!important}
}