
/* v57 — consolidated client changes: Ontario focus, new selectors, capitalisation and anti-copy polish */

html, body, body *:not(input):not(textarea):not(select):not(option) {
  -webkit-user-select: none;
  user-select: none;
}

/* Home Ontario-specific hero */
.home-site-header .home-brand img,
.home-page .site-header .brand img {
  width: min(318px, 34vw);
  max-height: 58px;
  object-fit: contain;
}
.home-hero-copy {
  top: 23.5%;
}
.home-hero-copy .home-trust-pill span { white-space: nowrap; }
.home-ontario-map {
  position: absolute;
  z-index: 5;
  right: clamp(56px, 7vw, 132px);
  bottom: clamp(48px, 8vh, 92px);
  width: min(285px, 21vw);
  height: auto;
  filter: drop-shadow(0 22px 35px rgba(5, 31, 63, .18));
  opacity: .96;
  pointer-events: none;
}
.home-proof-row { display: none !important; }

/* New mortgage options selector */
.mortgage-options-page {
  min-height: 100vh;
  background: radial-gradient(circle at 20% 10%, rgba(27,150,218,.14), transparent 30%), linear-gradient(135deg,#f7fbff 0%,#ffffff 42%,#eef6fb 100%);
  color: #102033;
  font-family: 'Roboto', Arial, sans-serif;
}
.mortgage-options-shell {
  width: min(1180px, calc(100% - 44px));
  margin: 0 auto;
  padding: 34px 0 70px;
}
.selector-logo { display:inline-flex; align-items:center; padding: 14px 18px; border-radius: 24px; background: rgba(255,255,255,.86); box-shadow:0 16px 46px rgba(10,33,61,.1); }
.selector-logo img { width: min(310px, 68vw); height:auto; display:block; }
.mortgage-options-hero { text-align:center; max-width: 840px; margin: 86px auto 42px; }
.mortgage-options-hero h1 { margin: 12px 0 18px; font-family:'Cormorant Garamond',Georgia,serif; font-size: clamp(44px, 6vw, 82px); line-height:.92; letter-spacing:-.035em; color:#111; }
.mortgage-options-hero p { margin:0 auto; max-width:720px; font-size:18px; line-height:1.65; color:#5a6674; }
.mortgage-options-grid { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:18px; }
.mortgage-option-card { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:112px; padding:24px 26px; border:1px solid rgba(15,74,118,.14); border-radius:24px; background:rgba(255,255,255,.88); color:#0d2742; text-decoration:none; box-shadow:0 18px 46px rgba(7,30,58,.08); transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.mortgage-option-card span { font-weight:800; font-size:18px; line-height:1.25; }
.mortgage-option-card i { color:#1287c4; }
.mortgage-option-card:hover { transform:translateY(-4px); box-shadow:0 24px 56px rgba(7,30,58,.14); border-color:rgba(18,135,196,.32); }

/* Work With Us referral selector */
.work-with-us-page { min-height:100vh; margin:0; background:linear-gradient(135deg,#071733 0%,#0b2a54 52%,#f8fbff 52%,#fff 100%); color:#102033; font-family:'Roboto',Arial,sans-serif; }
.referral-fullscreen { min-height:100vh; width:min(1180px,calc(100% - 44px)); margin:0 auto; padding:34px 0 60px; }
.referral-selector, .referral-form-shell { min-height: calc(100vh - 150px); display:flex; flex-direction:column; justify-content:center; }
.referral-selector { text-align:center; color:#fff; }
.referral-selector h1, .referral-form-card h1 { margin:12px 0 12px; font-family:'Cormorant Garamond',Georgia,serif; font-size:clamp(54px,8vw,108px); line-height:.88; letter-spacing:-.04em; }
.referral-selector p { color:rgba(255,255,255,.76); font-size:18px; margin:0 auto 32px; max-width:620px; line-height:1.6; }
.referral-type-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:0 auto; width:min(980px,100%); }
.referral-type-grid button { border:1px solid rgba(255,255,255,.22); border-radius:22px; padding:24px 16px; background:rgba(255,255,255,.10); color:#fff; font-size:18px; font-weight:800; cursor:pointer; box-shadow:0 18px 40px rgba(0,0,0,.14); transition:transform .18s ease, background .18s ease; }
.referral-type-grid button:hover { transform:translateY(-3px); background:rgba(255,255,255,.18); }
.referral-back { align-self:flex-start; border:0; background:transparent; color:#fff; font-weight:800; margin:0 0 16px; cursor:pointer; }
.referral-form-card { background:rgba(255,255,255,.96); border:1px solid rgba(15,74,118,.12); border-radius:32px; padding:34px; box-shadow:0 26px 70px rgba(0,0,0,.20); }
.referral-form-card h1 { color:#111; font-size:clamp(38px,5vw,72px); }
.referral-note { color:#5b6876; margin:0 0 28px; font-size:16px; }
.referral-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.referral-form-grid label { display:grid; gap:8px; color:#102033; font-size:13px; text-transform:uppercase; letter-spacing:.08em; font-weight:800; }
.referral-form-grid label.full { grid-column:1/-1; }
.referral-form-grid input, .referral-form-grid textarea { width:100%; border:1px solid #dce8f1; border-radius:16px; padding:15px 16px; font:500 16px 'Roboto',Arial,sans-serif; color:#102033; background:#fbfdff; box-sizing:border-box; }
.referral-form-grid textarea { resize:vertical; }
.referral-consent { display:flex; align-items:flex-start; gap:10px; margin:22px 0; color:#5b6876; line-height:1.55; }
.referral-consent input { margin-top:5px; }
.referral-submit { width:100%; justify-content:center; }
.referral-status { margin:14px 0 0; font-weight:700; color:#0d6f9f; }
.referral-status.error { color:#a33; }
.referral-status.success { color:#0b7a45; }

/* Questionnaire consent and final note */
.q-consent-separated { margin-top: 12px; }
.questionnaire-create-account-note i { color:#0f9f6e !important; }
.questionnaire-create-account-note strong { display:block; color:#0e2b47; margin-bottom:3px; }

/* Footer and mobile polish */
.footer-application-cta, .home-primary-cta, .primary-btn, .solid-btn, .apply-top, .book-now-btn { text-transform:none; }

@media (max-width: 980px) {
  .mortgage-options-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .referral-type-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .home-page .site-header .brand img { width:min(300px,68vw); }
  .home-hero { min-height: 980px; }
  .home-hero-copy { padding-top:118px !important; padding-bottom:440px !important; }
  .home-hero-copy h1 { font-size:clamp(50px,14vw,68px) !important; }
  .home-trust-pill { max-width:calc(100vw - 70px); margin-left:auto; margin-right:auto; overflow:hidden; }
  .home-trust-pill span { white-space:normal; }
  .home-person { left:50% !important; transform:translateX(-50%); width:min(86vw,360px) !important; opacity:.95 !important; }
  .home-ontario-map { right:22px; bottom:118px; width:min(200px,43vw); opacity:.95; }
  .mortgage-options-shell, .referral-fullscreen { width:min(100% - 34px, 680px); padding-top:22px; }
  .mortgage-options-hero { margin:54px auto 28px; }
  .mortgage-options-grid { grid-template-columns:1fr; gap:13px; }
  .mortgage-option-card { min-height:82px; padding:20px; border-radius:20px; }
  .work-with-us-page { background:linear-gradient(180deg,#071733 0%,#0b2a54 42%,#f8fbff 42%,#fff 100%); }
  .referral-selector, .referral-form-shell { min-height:auto; padding:54px 0 40px; }
  .referral-type-grid { grid-template-columns:1fr; gap:12px; }
  .referral-type-grid button { padding:19px 16px; border-radius:18px; }
  .referral-form-card { padding:24px 18px; border-radius:26px; }
  .referral-form-grid { grid-template-columns:1fr; }
}
@media (max-width: 430px) {
  .home-hero { min-height: 1010px; }
  .home-ontario-map { width:168px; right:14px; bottom:126px; }
}
