/* Isolated homepage addition; existing pages retain their original theme. */
body.has-customer-estate .home-hero { min-height: auto; padding: 118px 0 38px; }
body.has-customer-estate .home-hero .hero__scroll { display: none; }
body.has-customer-estate .home-hero .hero__content { max-width: 940px; }
body.has-customer-estate .home-hero .hero__title { font-size: clamp(2rem,4vw,3.75rem); margin-bottom: 16px; line-height: 1.12; }
body.has-customer-estate .home-hero .hero__subtitle { max-width: 820px; margin-bottom: 22px; font-size: clamp(1rem,1.3vw,1.15rem); }
body.has-customer-estate .home-hero .home-hero__built-for { max-width: 150px; }
.customer-estate { --estate-navy:#0f2942; --estate-blue:#0c5ee2; font-family:'Plus Jakarta Sans',sans-serif; color:var(--estate-navy); background:#fff; border-bottom:1px solid #e2e8f0; padding:22px 0 24px; }
.customer-estate .container { max-width:1280px; }
.estate-heading-row { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:18px; }
.estate-heading-row h2 { font-size:clamp(1rem,1.6vw,1.3rem); font-weight:700; margin:0; line-height:1.4; }
.estate-motion { flex:none; padding:6px 9px; font:500 .75rem 'Plus Jakarta Sans',sans-serif; color:#475569; border:1px solid #cbd5e1; background:#fff; border-radius:8px; cursor:pointer; }
.estate-motion:hover { color:var(--estate-blue); border-color:var(--estate-blue); }
.estate-motion:disabled { cursor:default; }
.customer-estate :focus-visible { outline:2px solid var(--estate-blue); outline-offset:4px; }
.estate-viewport { overflow-x:auto; scrollbar-width:thin; }
.estate-track { display:flex; width:max-content; }
.estate-group { display:flex; align-items:flex-start; gap:38px; padding:0 38px 0 0; margin:0; list-style:none; }
.estate-group li { flex:0 0 auto; width:auto; margin:0; }
.estate-logo { display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:7px; width:max-content; min-width:145px; min-height:82px; color:#475569; text-decoration:none; }
.estate-logo img { display:block; max-width:145px; width:auto; height:48px; max-height:48px; object-fit:contain; }
.estate-logo-artwork { display:flex; align-items:center; justify-content:center; height:58px; width:145px; }
.estate-logo-artwork-dark { background:var(--estate-navy); padding:7px; border-radius:6px; }
.estate-logo-artwork-dark img { max-width:131px; }
.estate-logo span { font-size:10px; line-height:14px; text-align:center; white-space:nowrap; }
.estate-logo-unavailable span { font-size:12px; }
.estate-logo-pending { color:#9a3412; background:#fff7ed; font-size:11px; border:1px dashed #fdba74; border-radius:6px; }
.estate-can-scroll .estate-viewport { overflow:hidden; }
.estate-can-scroll .estate-track { animation:estate-scroll var(--estate-duration,100s) linear infinite; will-change:transform; }
.estate-can-scroll.estate-is-paused .estate-track { animation-play-state:paused; }
.estate-can-scroll.estate-is-paused .estate-viewport:focus-within { overflow-x:auto; }
@keyframes estate-scroll { to { transform:translateX(-50%); } }
.estate-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding-top:16px; margin:18px 0 0; border-top:1px solid #e2e8f0; gap:22px; }
.estate-metrics-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.estate-metric { margin:0; display:flex; flex-direction:column; }
.estate-metric dt { order:2; color:#475569; font-size:12px; line-height:1.5; }
.estate-metric dd { order:1; margin:0 0 4px; font-size:clamp(1.35rem,2.5vw,2rem); line-height:1.2; font-weight:800; letter-spacing:-.04em; font-variant-numeric:tabular-nums; white-space:nowrap; }
.estate-metric [data-processing-count] { font-size:clamp(1.1rem,2vw,1.75rem); }
.estate-metric .estate-note { order:3; color:#64748b; font-size:10px; margin-top:4px; line-height:1.4; font-weight:400; letter-spacing:0; white-space:normal; }
.estate-metric-processing .estate-note { white-space:pre-line; }
.estate-metric small { display:block; color:#64748b; font-size:10px; margin-top:4px; line-height:1.4; }
.estate-pending dd { font-size:1rem; letter-spacing:0; white-space:normal; }
@media (max-width:700px) {
  body.has-customer-estate .home-hero { padding:94px 0 25px; }
  body.has-customer-estate .home-hero .hero__subtitle { margin-bottom:16px; }
  body.has-customer-estate .home-hero .hero__actions-row { gap:14px; }
  body.has-customer-estate .home-hero .hero__actions { flex-direction:row; flex-wrap:nowrap; width:auto; gap:10px; }
  body.has-customer-estate .home-hero .hero__actions .btn { padding:10px 14px; font-size:13px; width:auto; }
  body.has-customer-estate .home-hero .home-hero__built-for { max-width:118px; }
  .customer-estate { padding:16px 0 18px; }
  .estate-heading-row { align-items:center; margin-bottom:12px; }
  .estate-group { gap:22px; padding-right:22px; }
  .estate-logo { min-width:120px; }
  .estate-logo img { max-width:120px; height:40px; }
  .estate-logo-artwork { width:120px; }
  .estate-logo-artwork-dark img { max-width:106px; }
  .estate-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 12px; }
  .estate-metric dd { font-size:1.45rem; }
  .estate-pending dd { font-size:.9rem; }
}
@media (prefers-reduced-motion:reduce) {
  .estate-can-scroll .estate-track { animation:none; transform:none; }
  .estate-can-scroll .estate-viewport { overflow-x:auto; }
  .estate-group[aria-hidden="true"] { display:none; }
}
@media (max-width:360px) {
  .estate-heading-row { align-items:flex-start; flex-direction:column; }
  .estate-metric [data-processing-count] { font-size:1rem; }
}
