@import url('/static/css/homepages-v2/system/tokens.css');
@import url('/static/css/homepages-v2/system/themes.css');
@import url('/static/css/homepages-v2/components/nav.css');
@import url('/static/css/homepages-v2/components/loading-splash.css');
@import url('/static/css/homepages-v2/components/info-system.css');
@import url('/static/css/homepages-v2/components/footer.css');
@import url('/static/css/homepages-v2/overlays/command-palette.css');
@import url('/static/css/homepages-v2/sections/hero.css');
@import url('/static/css/homepages-v2/sections/search.css');
@import url('/static/css/homepages-v2/sections/cards.css');
@import url('/static/css/homepages-v2/sections/activity.css');
@import url('/static/css/homepages-v2/sections/insights.css');
@import url('/static/css/homepages-v2/sections/compare.css');
@import url('/static/css/homepages-v2/sections/calculators-sell.css');
@import url('/static/css/homepages-v2/sections/sell-banner.css');
@import url('/static/css/homepages-v2/sections/info/info.css');
@import url('/static/css/homepages-v2/sections/info/updates.css');
@import url('/static/css/homepages-v2/pages/home.css');
@import url('/static/css/homepages-v2/pages/agents.css');
@import url('/static/css/homepages-v2/pages/results.css');
@import url('/static/css/homepages-v2/pages/property-detail.css');
@import url('/static/css/homepages-v2/pages/services.css');
@import url('/static/css/homepages-v2/pages/calculators.css');

* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
}

html {
  -webkit-text-size-adjust: 100%;
}

body.hp-v2 {
  font-family: 'DM Sans', 'Inter', system-ui, sans-serif;
  background: var(--md-sys-color-surface);
  color: var(--md-sys-color-on-surface);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overscroll-behavior-y: contain;
  overflow-x: hidden;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

@media (max-width: 768px) {
  body.hp-v2 {
    background: linear-gradient(180deg, color-mix(in srgb, var(--md-sys-color-primary) 12%, #fff) 0%, #ffffff 400px) !important;
    background-color: #f7faf9 !important;
  }

  html[data-hp-v2-theme="oled-dark"] body.hp-v2 {
    background: #000000 !important;
    background-color: #000000 !important;
  }
}

h1,
h2,
h3,
h4,
.hp-v2-nav-brand span {
  font-family: 'Manrope', 'DM Sans', 'Inter', system-ui, sans-serif;
}

body.hp-v2 .material-symbols-rounded {
  font-family: 'Material Symbols Rounded';
  font-variation-settings:
    "FILL" var(--hp-v2-icon-fill),
    "wght" var(--hp-v2-icon-weight),
    "GRAD" var(--hp-v2-icon-grad),
    "opsz" var(--hp-v2-icon-opsz);
  text-shadow: var(--hp-v2-icon-shadow);
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
  line-height: 1;
}

body.hp-v2 .hp-v2-search-btn .material-symbols-rounded,
body.hp-v2 .hp-v2-nav-cta .material-symbols-rounded,
body.hp-v2 .hp-v2-mobile-fab .material-symbols-rounded,
body.hp-v2 .hp-v2-login-actions .primary .material-symbols-rounded {
  font-variation-settings:
    "FILL" 1,
    "wght" 560,
    "GRAD" 90,
    "opsz" 24;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.22);
}

a,
button,
input,
select,
textarea {
  -webkit-tap-highlight-color: transparent;
}

a,
button {
  touch-action: auto;
}

.hp-v2-container {
  width: min(var(--hp-v2-content-max), calc(100% - 2 * var(--hp-v2-space-4)));
  margin-inline: auto;
}

.hp-v2-chip {
  border: 1px solid var(--md-sys-color-outline);
  border-radius: 999px;
  padding: 6px 12px;
  font-size: var(--md-sys-typescale-label);
  background: var(--md-sys-color-surface-container);
  color: var(--md-sys-color-on-surface);
}

.hp-v2-card {
  background: var(--hp-v2-card-bg);
  border: 1px solid var(--hp-v2-card-border);
  border-radius: var(--md-sys-shape-corner-md);
  box-shadow: none;
}

.hp-v2-page-shell {
  flex: 1 0 auto;
}

.hp-v2-btn-secondary {
  border: 1px solid var(--hp-v2-btn-secondary-border);
  background: var(--hp-v2-btn-secondary-bg);
  color: var(--hp-v2-btn-secondary-fg);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.52);
  transition: transform .18s ease, box-shadow .2s ease, background .2s ease;
}

.hp-v2-btn-secondary:hover {
  background: var(--hp-v2-btn-secondary-hover);
  transform: translateY(-1px);
  box-shadow: 0 7px 14px rgba(7, 22, 36, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.6);
}

.hp-v2-btn-tertiary {
  border: 1px solid color-mix(in srgb, var(--md-sys-color-outline) 18%, transparent);
  background: #fff;
  color: var(--hp-v2-btn-tertiary-fg);
}

.hp-v2-btn-tertiary:hover {
  background: var(--hp-v2-btn-tertiary-hover);
  color: var(--md-sys-color-primary);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible {
  outline: 2px solid var(--md-sys-color-primary);
  outline-offset: 2px;
}

@media (max-width: 760px) {
  .hp-v2-page-shell {
    padding-bottom: calc(var(--hp-v2-mobile-bottom-nav-height) + 12px);
  }

  input,
  select,
  textarea {
    font-size: 16px !important;
  }

  a,
  button,
  input,
  select {
    min-height: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
