
    :root { color-scheme: light; --navy:#102535; --navy2:#193346; --green:#a4cf39; --ink:#152b38; --muted:#55707b; --pale:#f4f6f1; --line:#d8e0db; --white:#fff; --site-header-scroll-offset:5.75rem; font-family: Inter, "Avenir Next", Avenir, system-ui, sans-serif; }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; scroll-padding-top:var(--site-header-scroll-offset); }
    body { margin:0; color:var(--ink); background:var(--white); font-size:16px; line-height:1.55; }
    a { color:inherit; text-decoration:none; }
    a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible { outline:3px solid var(--green); outline-offset:4px; }
    img { max-width:100%; display:block; }
    .container { width:min(100% - 48px, 1180px); margin-inline:auto; }
    /* Header chrome uses physical LTR so logo/CTA placement matches EN on RTL pages (e.g. /he/). */
    .site-header { background:var(--navy); color:white; position:sticky; top:0; z-index:20; overflow:visible; direction:ltr; }
    .header-inner { display:flex; align-items:center; justify-content:flex-start; gap:24px; min-height:90px; flex-wrap:nowrap; }
    .brand { display:inline-flex; align-items:center; flex:none; }
    .brand-logo { display:block; width:144px; height:auto; background:transparent; transform:translateX(calc(-96 / 578 * 100%)); }
    .nav { display:flex; gap:34px; align-items:center; font-size:14px; font-weight:600; flex:none; }
    .nav--mobile { display:none; }
    .nav a:not(.nav-cta) { opacity:.84; transition:opacity .2s; }
    .nav a:hover { opacity:1; }
    .nav .nav-page-link[aria-current="page"] {
      opacity:1;
      text-decoration:underline;
      text-decoration-color:var(--green);
      text-decoration-thickness:2px;
      text-underline-offset:0.32em;
      text-decoration-skip-ink:none;
    }
    .nav-cta { padding:11px 20px; border:1px solid #6a8390; border-radius:100px; background:transparent; color:white; font:inherit; cursor:pointer; white-space:nowrap; flex-shrink:0; transition:background .2s, border-color .2s; }
    .nav-cta:hover { background:#ffffff16; border-color:var(--green); }
    .hero { background:var(--navy); color:white; padding:34px 0 94px; overflow:hidden; }
    .hero-grid { display:grid; grid-template-columns:.94fr 1.06fr; align-items:center; gap:5%; }
    .hero-copy { padding:35px 0 38px; position:relative; z-index:1; }
    .eyebrow { display:flex; align-items:center; justify-content:flex-start; gap:11px; color:var(--green); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.18em; }
    .eyebrow::before { content:""; flex:none; width:28px; height:2px; background:currentColor; }
    h1,h2,h3,p { margin-top:0; }
    h1 { font-size:clamp(3rem, 5.5vw, 5.45rem); line-height:1.07; letter-spacing:-.058em; font-weight:650; margin:28px 0 23px; max-width:640px; }
    h1 em { font-style:normal; color:var(--green); }
    .hero-copy > p { color:#c2d1d7; font-size:clamp(1.05rem,1.5vw,1.21rem); max-width:495px; line-height:1.7; margin-bottom:33px; }
    .hero-copy > .btn { display:flex; width:fit-content; margin-inline:auto; }
    .btn { display:inline-flex; align-items:center; justify-content:center; gap:17px; border-radius:100px; font-size:15px; font-weight:750; padding:15px 22px; min-height:54px; transition:transform .2s, background .2s; }
    .btn:hover { transform:translateY(-2px); }
    .btn-primary { background:var(--green); color:#162c30; }
    .btn-primary:hover { background:#b4dd49; }
    .arrow { font-size:20px; line-height:1; font-weight:400; }
    .hero-image-wrap { height:575px; border-radius:230px 230px 12px 12px; position:relative; margin-top:20px; background:#62777e; overflow:hidden; }
    .hero-image-wrap::before { content:""; position:absolute; inset:-18px -18px 18px 18px; border:1px solid rgba(164,207,57,.65); border-radius:230px 230px 12px 12px; pointer-events:none; }
    .hero-picture { display:block; width:100%; height:100%; border-radius:inherit; overflow:hidden; }
    .hero-image { width:100%; height:100%; object-fit:cover; border-radius:inherit; }
    .hero-caption { position:absolute; inset-inline-start:0; bottom:25px; background:white; color:var(--ink); padding:19px 24px; box-shadow:0 14px 40px #071c2b30; border-inline-start:5px solid var(--green); max-width:min(245px, calc(100% - 16px)); }
    .hero-caption strong { display:block; font-size:16px; line-height:1.3; }
    .hero-caption span { display:block; font-size:12px; color:var(--muted); letter-spacing:.04em; margin-top:4px; }
    .intro-strip { background:#eaf0e5; border-bottom:1px solid #dce6d6; }
    .intro-inner { padding:24px 0; display:flex; align-items:center; justify-content:space-between; gap:28px; }
    .intro-inner p { margin:0; font-size:15px; font-weight:650; }
    .intro-inner span { color:#60717a; font-size:14px; }
    section { scroll-margin-top:var(--site-header-scroll-offset); }
    .section-pad { padding:105px 0; }
    .section-kicker { color:#5d8b20; text-transform:uppercase; letter-spacing:.17em; font-size:12px; font-weight:800; margin-bottom:17px; }
    h2 { font-size:clamp(2.2rem,4.2vw,3.8rem); line-height:1.14; letter-spacing:-.047em; font-weight:650; }
    .section-head { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:43px; }
    .section-head h2 { max-width:650px; margin-bottom:0; }
    .section-head > p { max-width:330px; color:var(--muted); margin-bottom:5px; font-size:16px; }
    .cards { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
    .card { background:var(--pale); padding:31px; min-height:250px; display:flex; flex-direction:column; border-top:3px solid transparent; transition:border-color .2s, transform .2s; }
    .card[data-inquiry] { cursor:pointer; }
    .card[data-inquiry]:hover { border-color:var(--green); transform:translateY(-3px); }
    .card[data-inquiry]:focus-visible { outline:3px solid var(--green); outline-offset:4px; border-color:var(--green); }
    .card-number { color:#669123; font-size:13px; font-weight:800; letter-spacing:.13em; }
    .card h3 { font-size:25px; letter-spacing:-.025em; line-height:1.24; margin:36px 0 13px; }
    .card p { margin:0; color:var(--muted); font-size:15px; line-height:1.65; }
    .services-action { display:flex; justify-content:center; margin-top:38px; text-align:center; }
    .mortgage-journey { margin-top:46px; padding-top:40px; border-top:1px solid #d5e0db; min-width:0; max-width:100%; }
    .mortgage-journey > h3 { margin:0 0 30px; font-size:clamp(24px,2.4vw,30px); letter-spacing:-.025em; line-height:1.25; max-width:100%; }
    .journey-steps { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 22px; counter-reset:journey-step; min-width:0; }
    .journey-step { margin:0; min-width:0; }
    .journey-step__title { margin:0 0 10px; font-size:17px; font-weight:700; line-height:1.4; letter-spacing:-.01em; overflow-wrap:break-word; }
    .journey-step__num { color:#669123; font-weight:800; }
    .journey-step p { margin:0; color:var(--muted); font-size:15px; line-height:1.65; max-width:100%; overflow-wrap:break-word; }
    .mortgage-journey__footnote { margin:32px 0 0; color:var(--muted); font-size:15px; line-height:1.65; max-width:100%; overflow-wrap:break-word; }
    .mortgage-journey__footnote em { display:inline; font-style:italic; }
    .mortgage-journey__footnote a { display:inline; color:var(--navy); font-weight:650; font-style:normal; text-decoration:underline; text-underline-offset:3px; }
    .mortgage-journey__footnote a:hover { color:#1a4a5c; }
    #services.section-pad { padding-top:52px; padding-bottom:38px; }
    #about.section-pad { padding-top:52px; padding-bottom:38px; }
    .about { background:#eaf0ed; }
    .about-grid { display:grid; grid-template-columns:.88fr 1.12fr; gap:11%; align-items:stretch; }
    .portrait-area { display:flex; justify-content:center; align-items:center; align-self:stretch; min-height:0; }
    .portrait-stack { display:flex; flex-direction:column; align-items:center; gap:32px; width:min(100%,370px); }
    .portrait-brx { width:100%; display:flex; justify-content:center; text-align:center; }
    .portrait-brx .btn { max-width:100%; text-align:center; line-height:1.35; }
    .portrait-bubble { width:100%; aspect-ratio:1; overflow:hidden; border:8px solid var(--green); border-radius:50%; box-shadow:18px 18px 0 rgba(16,37,53,.09); background:var(--navy2); }
    .portrait-bubble picture { display:block; width:100%; height:100%; }
    .portrait-bubble img { width:100%; height:100%; object-fit:cover; object-position:center 10%; }
    .about-copy h2 { margin-bottom:24px; }
    .about-copy p { color:#4f6770; font-size:17px; line-height:1.75; max-width:550px; }
    .about-points { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:34px; }
    .about-points div { border-top:1px solid #bbc9c3; padding-top:15px; font-size:14px; font-weight:700; line-height:1.5; }
    .contact { background:var(--navy); color:white; padding:64px 0 45px; overflow-x:clip; }
    .contact-grid { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:clamp(28px,4vw,55px); padding-bottom:8px; min-width:0; width:100%; }
    .contact-intro { flex:1 1 280px; min-width:0; max-width:580px; text-align:start; }
    .contact-grid .section-kicker { color:var(--green); }
    .contact h2 { max-width:680px; margin:0 0 19px; }
    .contact-intro__copy { display:flex; flex-direction:column; gap:1.05em; }
    .contact-intro__copy p { color:#bed0d7; max-width:none; margin:0; font-size:17px; line-height:1.65; overflow-wrap:anywhere; }
    .contact-note { background:#1e3d4a; border-inline-start:4px solid var(--green); padding:23px 27px; flex:0 1 370px; min-width:min(100%,260px); max-width:370px; margin-inline-start:auto; align-self:center; color:#e6eeef; font-size:15px; text-align:start; box-sizing:border-box; }
    .contact-note strong { display:block; color:white; margin-bottom:4px; }
    .contact-note__lead { margin:0; line-height:1.45; max-width:100%; }
    .contact-note__layout { display:flex; flex-direction:column; align-items:stretch; gap:22px; min-width:0; max-width:100%; }
    .contact-note__links { min-width:0; max-width:100%; }
    .contact-note__qr { display:flex; flex-direction:column; align-items:center; text-align:center; min-width:0; padding-top:2px; flex:0 0 auto; }
    .contact-note__qr-divider { display:none; }
    .contact-note__qr-stack { display:flex; flex-direction:column; align-items:center; gap:10px; min-width:0; max-width:100%; text-align:center; }
    .contact-note__qr-heading { margin:0; color:#fff; font-weight:750; font-size:14px; line-height:1.35; max-width:15rem; overflow-wrap:anywhere; text-wrap:balance; }
    .contact-note__qr-image-link { display:block; line-height:0; flex:none; }
    .contact-note__qr-image { display:block; width:120px; height:120px; max-width:100%; object-fit:contain; }
    .contact-note__qr-text-link { color:var(--green); font-weight:750; text-decoration:none; overflow-wrap:anywhere; max-width:15rem; }
    .contact-note__qr-text { text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:from-font; }
    /* Side-by-side when the intro/card grid leaves ~534px+ for the card (1180px container cap). */
    @media (min-width:1200px) {
      .contact-note__layout { flex-direction:row; align-items:stretch; gap:14px; }
      .contact-note__links { flex:0 1 auto; width:max-content; max-width:100%; min-width:0; }
      .contact-note__lead { width:19rem; max-width:100%; }
      .contact-links { width:max-content; max-width:100%; }
      .contact-note__links .contact-link { max-width:none; overflow-wrap:normal; white-space:nowrap; }
      .contact-note__links .contact-link__text { min-width:auto; }
      .contact-note__qr { display:grid; grid-template-columns:1px minmax(0,max-content); column-gap:14px; flex:0 0 auto; align-self:stretch; align-items:center; justify-items:center; width:max-content; min-width:7.75rem; max-width:10.75rem; padding-top:0; border-inline-start:0; padding-inline-start:0; }
      .contact-note__qr-divider { display:block; grid-column:1; grid-row:1; align-self:stretch; width:1px; background:#46606c; margin-block:0; justify-self:stretch; }
      .contact-note__qr-stack { grid-column:2; grid-row:1; justify-self:center; align-self:center; width:max-content; max-width:100%; }
      .contact-note__qr-heading { max-width:100%; overflow-wrap:anywhere; }
      .contact-note__qr-text-link { max-width:100%; white-space:nowrap; overflow-wrap:normal; }
    }
    @media (min-width:701px) {
      .contact-grid { display:grid; grid-template-columns:580px minmax(0,1fr); align-items:stretch; justify-content:start; column-gap:clamp(28px,4vw,55px); row-gap:0; }
      .contact-intro { flex:none; max-width:580px; width:100%; min-width:0; align-self:start; }
      .contact-note { flex:none; min-width:0; width:max-content; max-width:100%; margin-inline-start:0; align-self:center; justify-self:end; box-sizing:border-box; }
      .contact-note .contact-link { max-width:none; }
    }
    .contact-link { display:inline-flex; align-items:center; gap:9px; max-width:100%; text-decoration:none; overflow-wrap:anywhere; text-align:start; }
    .contact-links { display:flex; align-items:flex-start; flex-direction:column; gap:11px; margin-top:18px; }
    .contact-links .contact-link { color:var(--green); font-weight:750; }
    .contact-link__icon { flex:none; width:21px; height:21px; }
    .contact-link__text { min-width:0; text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:from-font; }
    .contact-link:hover .contact-link__text, .contact-link:focus-visible .contact-link__text { text-decoration:underline; }
    .site-footer { border-top:1px solid #46606c; padding-top:31px; display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; column-gap:16px; direction:ltr; font-size:13px; color:#a9bdc5; min-width:0; width:100%; max-width:100%; }
    .footer-affiliation { justify-self:start; min-width:0; }
    .footer-affiliation img { width:95px; max-width:100%; height:auto; display:block; }
    .site-footer > a[href*="netlify.com"] { justify-self:start; }
    body.contact-open { overflow:hidden; overscroll-behavior:none; }
    body.contact-open .site-header, body.contact-open main { pointer-events:none; touch-action:none; }
    .contact-dialog { --dialog-edge:max(12px, env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px)); width:min(720px, calc(100% - 2 * var(--dialog-edge) - 16px)); max-height:min(900px, calc(100dvh - 16px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px))); margin:auto; padding:0; border:0; border-radius:20px; background:white; color:var(--ink); box-shadow:0 32px 90px #081a27a8; overflow:hidden; }
    .contact-dialog[open] { display:flex; flex-direction:column; height:auto; max-height:inherit; }
    .contact-dialog::backdrop { background:#071b29c9; }
    .dialog-head {
      --dialog-close-size:39px;
      --dialog-head-gap:12px;
      position:relative;
      flex-shrink:0;
      z-index:2;
      display:flex;
      flex-direction:column;
      align-items:stretch;
      padding:29px 35px 12px;
      background:white;
      border-radius:20px 20px 0 0;
      direction:ltr;
    }
    .dialog-head-top {
      display:grid;
      grid-template-columns:minmax(0,1fr) var(--dialog-close-size);
      column-gap:var(--dialog-head-gap);
      align-items:start;
      width:100%;
    }
    .dialog-head-top .section-kicker { margin:0; text-align:start; min-width:0; }
    [dir="rtl"] .dialog-head-top .section-kicker { direction:rtl; }
    .dialog-head h2 {
      width:100%;
      margin:10px 0 0;
      padding:0;
      font-size:clamp(2rem,4vw,2.75rem);
      line-height:1.14;
      text-align:center;
      text-wrap:balance;
    }
    [dir="rtl"] .dialog-head h2 { direction:rtl; }
    .dialog-close {
      grid-column:2;
      grid-row:1;
      position:relative;
      display:grid;
      place-items:center;
      width:var(--dialog-close-size);
      height:var(--dialog-close-size);
      margin:0;
      border:1px solid var(--line);
      border-radius:50%;
      background:white;
      color:var(--navy);
      font-size:23px;
      line-height:1;
      cursor:pointer;
      flex-shrink:0;
    }
    .dialog-close:hover { background:var(--pale); }
    .dialog-body { flex:1 1 auto; min-height:0; overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; overflow-anchor:none; padding:10px 35px 26px; scrollbar-width:thin; scrollbar-color:#aab9b7 transparent; scrollbar-gutter:stable; }
    .dialog-intro { color:#34505c; font-size:17px; font-weight:600; line-height:1.5; text-align:center; margin:10px auto 12px; }
    .dialog-contact-links { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px 22px; padding:12px 0 21px; border-bottom:1px solid var(--line); font-size:14px; font-weight:700; text-align:center; }
    .dialog-contact-links .contact-link--dialog { color:#315c22; font-weight:700; font-size:14px; text-decoration:none; overflow-wrap:anywhere; }
    .dialog-contact-links .contact-link--dialog .contact-link__text { text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:from-font; }
    .inquiry-form { padding-top:23px; }
    .form-grid { display:grid; grid-template-columns:1fr 1fr; gap:17px; }
    .field { display:flex; flex-direction:column; gap:6px; font-size:14px; font-weight:700; }
    .field-hint { color:var(--muted); font-size:12px; font-weight:400; line-height:1.4; }
    .field-error, .choice-error { display:none; color:#a52d27; font-size:12px; font-weight:650; line-height:1.4; }
    .field input, .field textarea { width:100%; min-height:46px; border:1px solid #b7c7cb; border-radius:9px; padding:10px 13px; background:white; color:var(--ink); font-family:inherit; font-size:16px; line-height:1.45; }
    .inquiry-form .field textarea { min-height:96px; max-height:min(40dvh, 220px); resize:vertical; }
    .journey-inquiry-refresh { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; margin:0 0 8px; padding:8px 10px; border-radius:8px; background:#f4f8f1; border:1px solid #c5d9b8; font-size:12px; line-height:1.4; color:#34505c; }
    .journey-inquiry-refresh[hidden] { display:none !important; }
    .journey-inquiry-refresh-btn { min-height:36px; padding:6px 12px; font-size:12px; }
    .journey-inquiry-refresh-note { flex:1 1 12rem; font-weight:500; }
    .field input:focus, .field textarea:focus { border-color:#598522; }
    .field input.touched:invalid, .field textarea.touched:invalid, .inquiry-form.show-errors .field input:invalid, .inquiry-form.show-errors .field textarea:invalid { border-color:#b42318; background:#fff7f5; }
    .field input.touched:invalid ~ .field-error, .field textarea.touched:invalid ~ .field-error, .inquiry-form.show-errors .field input:invalid ~ .field-error, .inquiry-form.show-errors .field textarea:invalid ~ .field-error { display:block; }
    .field input.touched:invalid ~ .field-hint, .inquiry-form.show-errors .field input:invalid ~ .field-hint { display:none; }
    .form-section { border:0; margin:23px 0 0; padding:0; min-width:0; }
    .form-section legend { font-size:14px; font-weight:800; padding:0; margin-bottom:12px; }
    .choice-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--line); border-radius:10px; overflow:hidden; }
    .choice { position:relative; display:flex; align-items:center; justify-content:center; min-height:48px; padding:7px 9px; border-right:1px solid var(--line); cursor:pointer; text-align:center; font-size:13px; font-weight:650; line-height:1.25; touch-action:manipulation; }
    .choice:last-child { border-right:0; }
    .choice:has(input:checked) { background:#e9f3dc; color:#284b1c; }
    .choice:has(input:focus-visible) { outline:3px solid #5d8b20; outline-offset:-3px; }
    .choice input { position:absolute; inset:0; width:100%; height:100%; margin:0; opacity:0; cursor:pointer; z-index:1; }
    .inquiry-form.show-errors .form-section:has(input:invalid) .choice-grid { border-color:#b42318; }
    .inquiry-form.show-errors .form-section:has(input:invalid) .choice-error { display:block; margin-top:7px; }
    .buyer-question { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:23px; padding:17px 0 0; border-top:1px solid var(--line); }
    .buyer-question[hidden] { display:none; }
    .buyer-title { font-size:14px; font-weight:800; }
    .switch-control { display:inline-flex; align-items:center; gap:8px; flex:none; cursor:pointer; color:var(--muted); font-size:14px; font-weight:700; touch-action:manipulation; }
    .switch-input-wrap { position:relative; display:inline-flex; flex:none; }
    .switch-input-wrap input { position:absolute; inset:0; width:100%; height:100%; margin:0; opacity:0; cursor:pointer; z-index:1; }
    .switch-input-wrap .switch-track { pointer-events:none; }
    .switch-track { display:inline-flex; align-items:center; width:48px; height:27px; padding:3px; border-radius:30px; background:#aebdbb; transition:background .18s; }
    .switch-thumb { width:21px; height:21px; border-radius:50%; background:white; box-shadow:0 1px 3px #10253550; transition:transform .18s; }
    .switch-control input:checked + .switch-track { background:#5f8e27; }
    .switch-control input:checked + .switch-track .switch-thumb { transform:translateX(21px); }
    .switch-control input:focus-visible + .switch-track { outline:3px solid #5d8b20; outline-offset:3px; }
    .switch-control:has(input:not(:checked)) .switch-no, .switch-control:has(input:checked) .switch-yes { color:var(--ink); }
    .message-field { margin-top:23px; }
    .form-help { color:var(--muted); font-size:12px; line-height:1.5; margin:7px 0 21px; }
    .form-submit { border:0; cursor:pointer; font-family:inherit; }
    .honeypot { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); clip-path:inset(50%); white-space:nowrap; border:0; inset-inline-start:0; top:0; }
    .inquiry-form { position:relative; }
    @media(max-width:850px) {
      .hero-grid { gap:5%; }
      .hero-image-wrap { height:460px; }
      .about-grid { gap:7%; }
      .portrait-stack { width:min(100%,330px); }
      .journey-steps { grid-template-columns:1fr; gap:22px; }
    }
    @media (min-width: 961px) {
      .header-inner {
        gap:14px;
      }
      .nav--primary {
        margin-inline-start:0;
        gap:22px;
      }
      .lang-switch {
        margin-inline-start:auto;
      }
    }
    @media (min-width: 701px) {
      .hero {
        padding:38px 0;
      }
      .hero-grid {
        align-items:start;
      }
      .hero-copy {
        padding:0;
      }
    }
    /* One-row header needs about 833px (Hebrew labels). Below that, use the two-row header. */
    @media (max-width: 960px) {
      :root { --site-header-scroll-offset:10.5rem; }
      .header-inner {
        min-height:72px;
        padding-top:12px;
        gap:8px 10px;
        display:grid;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        grid-template-areas:"top top" "mobile mobile";
        align-items:center;
        position:relative;
      }
      .header-inner .brand {
        margin-inline-end:0;
        grid-area:top;
        justify-self:start;
        z-index:2;
        max-width:46%;
      }
      .brand-logo { width:min(144px, 34vw); max-width:100%; height:auto; transform:none; }
      .nav--primary { display:none; }
      .nav--mobile {
        display:flex;
        grid-area:mobile;
        grid-column:1 / -1;
        justify-content:center;
        align-items:center;
        align-content:center;
        flex-wrap:wrap;
        column-gap:12px;
        row-gap:3px;
        width:100%;
        padding:4px 4px 8px;
        font-size:14px;
        line-height:1.35;
        font-weight:600;
        border-top:1px solid #2a4555;
        margin-top:2px;
      }
      .nav--mobile .nav-page-link {
        opacity:.92;
        white-space:normal;
        text-align:center;
        padding:3px 8px;
        display:inline-flex;
        align-items:center;
        justify-content:center;
      }
      .nav--mobile .nav-page-link[aria-current="page"] {
        opacity:1;
      }
      .lang-switch {
        grid-area:top;
        grid-column:1 / -1;
        justify-self:center;
        align-self:center;
        z-index:3;
        max-width:min(100%, calc(100vw - 24px));
        margin-inline-start:0;
        pointer-events:none;
      }
      .lang-switch__details,
      .lang-switch__toggle { pointer-events:auto; }
      .lang-switch__menu { z-index:30; }
      .nav-cta {
        grid-area:top;
        justify-self:end;
        z-index:2;
        padding:9px 12px;
        font-size:13px;
        max-width:46%;
      }
    }
    @media(max-width:700px) {
      .container { width:min(100% - 36px, 1180px); }
      .hero { padding:0 0 62px; }
      .hero-grid { grid-template-columns:1fr; row-gap:0; }
      .hero-copy { padding:14px 0 0; text-align:center; }
      .hero-copy h1,
      .hero-copy > p { margin-inline:auto; }
      h1 { max-width:530px; }
      .hero-image-wrap { height:min(92vw,470px); margin:38px 0 0; margin-inline-end:14px; border-radius:160px 160px 10px 10px; }
      .hero-image-wrap::before { border-radius:inherit; inset:-12px -12px 12px 12px; }
      .hero-caption { bottom:14px; padding:13px 17px; inset-inline-start:0; }
      .intro-inner { display:block; }
      .dialog-head { padding:23px 21px 10px; --dialog-head-gap:10px; }
      .dialog-body { padding:7px 21px 26px; }
      .form-grid { grid-template-columns:1fr; gap:13px; }
      .dialog-contact-links { flex-direction:column; }
      .section-pad { padding:75px 0; }
      #services.section-pad { padding-top:38px; padding-bottom:38px; }
      #about.section-pad { padding-top:38px; padding-bottom:28px; }
      .section-head { display:block; margin-bottom:29px; }
      .section-head > p { margin-top:16px; max-width:500px; }
      .cards { grid-template-columns:1fr; gap:12px; }
      .card { min-height:auto; padding:25px; }
      .card h3 { margin:22px 0 8px; }
      .mortgage-journey { margin-top:36px; padding-top:32px; }
      .mortgage-journey > h3 { margin-bottom:22px; font-size:24px; }
      .journey-steps { grid-template-columns:1fr; gap:22px; }
      .mortgage-journey__footnote { margin-top:26px; }
      .about-grid { grid-template-columns:1fr; gap:36px; }
      .about-copy { order:1; }
      .portrait-area { order:2; align-self:auto; padding:0 8px 0 0; }
      .portrait-stack { width:min(78vw,350px); gap:28px; }
      .portrait-brx .btn { width:100%; }
      .contact { padding:52px 0 35px; }
      .contact-grid { display:block; padding-bottom:8px; }
      .contact-intro { flex:none; max-width:none; text-align:start; }
      .contact-note { margin-top:35px; margin-inline-start:0; min-width:0; max-width:none; flex:none; align-self:stretch; }
    }
    @media(max-width:430px) {
      .header-inner { min-height:68px; gap:6px 8px; }
      .brand-logo { width:min(108px, 30vw); }
      .nav-cta { padding:8px 10px; font-size:12px; }
      .lang-switch__toggle { min-height:30px; padding:5px 8px 5px 9px; font-size:11px; }
    }
    /* RU hero label: 12px / 0.18em is 256px; 320px phones have 245px beside the line. */
    @media (max-width: 360px) {
      html[lang="ru"] .hero-copy .eyebrow {
        text-align: start;
        white-space: nowrap;
        letter-spacing: 0.12em;
      }
    }
    @media(max-width:550px) { .choice-grid { grid-template-columns:1fr 1fr; } .choice:nth-child(2) { border-right:0; } .choice:nth-child(-n+2) { border-bottom:1px solid var(--line); } }
    @media(max-width:390px) { .buyer-question { align-items:flex-start; flex-direction:column; gap:10px; } }
    @media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .btn,.card { transition:none; } }
  
.lang-switch {
  position:relative;
  z-index:5;
  display:block;
  width:max-content;
  max-width:100%;
  flex:none;
  direction:ltr;
}
.lang-switch__details { position:relative; direction:ltr; width:max-content; }
.lang-switch__toggle {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:3.5rem;
  min-height:32px;
  padding:5px 9px 5px 10px;
  border:1px solid transparent;
  border-radius:100px;
  background:var(--navy);
  color:#fff;
  font:inherit;
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
  line-height:1;
  cursor:pointer;
  list-style:none;
  touch-action:manipulation;
  transition:border-color .2s, background .2s;
}
.lang-switch__toggle::-webkit-details-marker { display:none; }
.lang-switch__toggle::marker { content:none; }
.lang-switch__toggle:hover { border-color:var(--green); background:#ffffff14; }
.lang-switch__details[open] > .lang-switch__toggle { border-color:var(--green); background:#ffffff14; }
.lang-switch__toggle:focus-visible { outline:3px solid var(--green); outline-offset:4px; }
.lang-switch__code { color:var(--green); }
.lang-switch__caret {
  display:inline-block;
  width:.42em;
  height:.42em;
  margin-top:-.2em;
  border-right:1.5px solid #d5e2e8;
  border-bottom:1.5px solid #d5e2e8;
  transform:rotate(45deg);
}
.lang-switch__details[open] > .lang-switch__toggle .lang-switch__caret {
  margin-top:.15em;
  transform:rotate(225deg);
}
.lang-switch__details:not([open]) > .lang-switch__menu { display:none; }
.lang-switch__details[open] > .lang-switch__menu {
  display:flex;
  flex-direction:column;
  gap:2px;
}
.lang-switch__menu {
  position:absolute;
  z-index:30;
  top:calc(100% + 8px);
  left:50%;
  transform:translateX(-50%);
  width:max-content;
  min-width:11rem;
  max-width:calc(100vw - 16px);
  margin:0;
  padding:6px;
  list-style:none;
  background:#102535;
  border:1px solid #6a8390;
  border-radius:14px;
  box-shadow:0 16px 40px #071c2b73;
}
.lang-switch__menu .lang-option {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:44px;
  padding:8px 12px;
  border-radius:9px;
  color:#fff;
  font-size:14px;
  font-weight:650;
  letter-spacing:0;
  line-height:1.2;
  white-space:nowrap;
  opacity:1;
  touch-action:manipulation;
}
.lang-switch__menu .lang-option:hover { background:#ffffff14; }
.lang-switch__menu .lang-option:focus-visible { outline:3px solid var(--green); outline-offset:-3px; background:#ffffff14; }
.lang-switch__menu .lang-option[aria-current="true"] {
  color:var(--green);
  background:#ffffff12;
  font-weight:750;
}
.lang-switch__name { direction:ltr; unicode-bidi:isolate; }
.lang-switch__menu .lang-option[lang="he"] .lang-switch__name { direction:rtl; }
.lang-switch__mark { flex:none; width:1em; text-align:center; font-size:13px; }
html[lang="he"] body { font-family: Heebo, Inter, "Avenir Next", Avenir, system-ui, sans-serif; }
[dir="rtl"] .choice { border-right:0; border-left:1px solid var(--line); }
[dir="rtl"] .choice:last-child { border-left:0; }
[dir="rtl"] .switch-control input:checked + .switch-track .switch-thumb { transform:translateX(-21px); }
[dir="rtl"] .portrait-bubble { box-shadow:-18px 18px 0 rgba(16,37,53,.09); }
.ltr-isolate { direction:ltr; unicode-bidi:isolate; }
.footer-privacy { margin:0; justify-self:end; text-align:end; min-width:0; overflow-wrap:break-word; hyphens:none; font-size:17px; line-height:1.55; }
.footer-privacy a { color:var(--green); font-size:17px; font-weight:700; line-height:1.55; text-decoration:underline; text-decoration-color:var(--green); text-underline-offset:.2em; }
.footer-privacy a:hover { color:var(--green); }
.footer-privacy a:focus-visible { outline:3px solid var(--green); outline-offset:4px; }
@media (max-width: 700px) {
  .footer-privacy,
  .footer-privacy a {
    font-size:13px;
    line-height:1.35;
  }
}
.form-privacy { margin:14px 0 16px; font-size:14px; line-height:1.5; }
.form-privacy__title { font-weight:750; margin:0 0 6px; }
.form-privacy p { margin:0 0 8px; }
.form-privacy a { font-weight:700; text-decoration:underline; text-underline-offset:.15em; }
.form-privacy__consent { display:flex; align-items:flex-start; gap:10px; margin:10px 0 0; cursor:pointer; }
.form-privacy__consent input { width:1.15rem; height:1.15rem; margin-top:.2rem; flex:none; }
.form-privacy__error { display:none; color:#a52d27; font-size:12px; font-weight:650; line-height:1.4; margin:6px 0 0; padding-inline-start:1.7rem; }
.inquiry-form.show-errors .form-privacy__consent:has(input:invalid) { outline:2px solid #b42318; outline-offset:3px; border-radius:6px; }
.inquiry-form.show-errors .form-privacy__consent:has(input:invalid) + .form-privacy__error { display:block; }
.planner-share { margin:0 0 14px; padding:12px; border:1px solid var(--line); border-radius:10px; background:#f7faf6; }
.planner-share__option { display:flex; align-items:flex-start; gap:10px; font-weight:650; }
.planner-share__option input { width:1.15rem; height:1.15rem; margin-top:.15rem; flex:none; }
.planner-share__help, .planner-share__empty { margin:4px 0 10px; color:var(--muted); font-size:13px; }
.planner-share__preview-label { margin:0 0 6px; font-weight:700; }
.planner-share pre { white-space:pre-wrap; margin:0 0 8px; font:13px/1.45 inherit; background:#fff; border:1px solid var(--line); border-radius:8px; padding:10px; max-height:180px; overflow:auto; }
.privacy-page .privacy-hero { background:var(--navy); color:#fff; padding:32px 0 28px; }
.privacy-page .privacy-hero h1 { color:#fff; max-width:min(18ch, 100%); overflow-wrap:break-word; }
.privacy-page .privacy-updated { color:#c5d5dc; margin:0; }
.privacy-page .privacy-body { padding:8px 0 48px; }
.privacy-page .privacy-body h2 { font-size:clamp(1.35rem, 2vw, 1.7rem); margin:1.7rem 0 .45rem; }
.privacy-page .privacy-body p { margin:0 0 .75rem; max-width:68ch; }
.privacy-page .privacy-site-footer { background:var(--navy); padding:28px 0 36px; }
.privacy-page .privacy-site-footer .site-footer { border-top:none; padding-top:0; }
.footer-regulatory { grid-column:1 / -1; margin-top:16px; padding-top:14px; border-top:1px solid #46606c; direction:ltr; text-align:left; unicode-bidi:isolate; min-width:0; font-size:13px; line-height:1.45; color:#d5e2e8; }
.site-footer .footer-regulatory p,
.contact .footer-regulatory p { max-width:none; margin:0 0 4px; color:#d5e2e8; font-size:13px; line-height:1.45; text-align:left; direction:ltr; }
.footer-licences { margin-bottom:0; min-width:0; max-width:100%; }
.footer-licences-label { margin-bottom:6px; }
.footer-licences__list { display:flex; flex-wrap:wrap; align-items:baseline; row-gap:0.45em; max-width:100%; min-width:0; unicode-bidi:isolate; }
.footer-licence { display:inline; white-space:nowrap; direction:ltr; unicode-bidi:isolate; }
.footer-licence-sep { unicode-bidi:isolate; white-space:pre; }
@media (max-width:700px) {
  .footer-regulatory,
  .site-footer .footer-regulatory p,
  .contact .footer-regulatory p { font-size:12px; line-height:1.5; }
  .footer-licences-label { margin-bottom:5px; }
}
