/* --- top nav menu hack - doesnt size to longer text --- */
@media (min-width: 768px)
{
    .col-md-2 {
        flex: 0 0 16.6666666667%;
        max-width: 42.66666667%;
    }
}

/* --- FONT SIZES --- */
.h1-large {
  font-size: 4.2em;
  line-height: 1.1em;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.h2-large {
  font-size: 4.2em;
  line-height: 1.1em;
  font-weight: 600;
  letter-spacing: -0.03em;
  margin-bottom: 0.3em;
}

.h1-hero {
    font-size: 4.0em;
    line-height: 1.1em;
    font-weight: 600;
}

.text-shadow {
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}

@media all and (max-width: 767px) {
    .h1-hero {
      font-size: 3.0em;
      line-height: 1.1em;
      font-weight: 600;
    }

    .h2-hero {
      font-size: 1.5em;
      line-height: 1.2em;
      font-weight: 300;
    }

    .h1-large {
      font-size: 3.5em;
      line-height: 1.1em;
      font-weight: 600;
    }

    .h2-large {
      font-size: 2.5em;
      line-height: 1.1em;
      font-weight: 600;
      letter-spacing: -0.03em;
      margin-bottom: 0.3em;
    }
}

.blockquotesmall {
    font-size: 1.4em;
    line-height: 1.5em;
    padding: 0;
    margin: 0;
    margin-bottom: 0px;
    border-left: 0;
}

.font-larger1 { font-size:1.5em;}
.font-larger2 { font-size:2.0em;}
.font-larger3 { font-size:3.0em;}
.font-larger4 { font-size:4.0em; line-height:1.2em;}

/* --- Box shadows --- */
.boxshadow1 {
    box-shadow: 0 0.46875rem 2.1875rem rgba(90,97,105,.1), 0 0.9375rem 1.40625rem rgba(90,97,105,.1), 0 0.25rem 0.53125rem rgba(90,97,105,.12), 0 0.125rem 0.1875rem rgba(90,97,105,.1);
}

/* ---- Section Padding -----*/

/* see .height-10 to height-100 as well as things like mt--3 in theme.css instead of these styles */

.minheight95 { min-height:95px;}
.minheight125 { min-height:125px;}
.minheight150 { min-height:150px;}
.minheight175 { min-height:175px;}
.minheight200 { min-height:200px;}
.sectionreducepad6 {
    padding-top: 6em;
    padding-bottom: 6em;
}
.sectionreducepad5 {
    padding-top: 5em;
    padding-bottom: 5em;
}
.sectionreducepad4 {
    padding-top: 4em;
    padding-bottom: 4em;
}
.sectionreducepad3 {
    padding-top: 3em;
    padding-bottom: 3em;
}
.sectionreducepad2 {
    padding-top: 2em;
    padding-bottom: 2em;
}
.sectionreducepad1 {
    padding-top: 1em;
    padding-bottom: 1em;
}

/*!---------- SPACING ----------*/

@media all and (min-device-width: 991px) {
    .mb-lg-20 {
      margin-bottom: 16px !important;
    }
}

.mr0 {
  margin-right: 0;
}
.mb0 {
  margin-bottom: 0 !important;
}
.mb8 {
  margin-bottom: 8px;
}
.mb16 {
  margin-bottom: 16px;
}
.mb24 {
  margin-bottom: 24px;
}
.mb30 {
  margin-bottom: 30px;
}
.mb32 {
  margin-bottom: 32px;
}
.mb40 {
  margin-bottom: 40px;
}
.mb48 {
  margin-bottom: 48px;
}
.mb56 {
  margin-bottom: 56px;
}
.mb64 {
  margin-bottom: 64px;
}
.mb72 {
  margin-bottom: 72px;
}
.mb80 {
  margin-bottom: 80px;
}
.mb88 {
  margin-bottom: 88px;
}
.mb96 {
  margin-bottom: 96px;
}
.mb104 {
  margin-bottom: 104px;
}
.mb112 {
  margin-bottom: 112px;
}
.mb120 {
  margin-bottom: 120px;
}
.mb160 {
  margin-bottom: 160px;
}
.mt0 {
  margin-top: 0 !important;
}
.mt8 {
  margin-top: 8px;
}
.mt16 {
  margin-top: 16px;
}
.mt24 {
  margin-top: 24px;
}
.mt32 {
  margin-top: 32px;
}
.mt40 {
  margin-top: 40px;
}
.mt48 {
  margin-top: 48px;
}
.mt56 {
  margin-top: 56px;
}
.mt64 {
  margin-top: 64px;
}
.mt72 {
  margin-top: 72px;
}
.mt80 {
  margin-top: 80px;
}
.mt88 {
  margin-top: 88px;
}
.mt96 {
  margin-top: 96px;
}
.mt104 {
  margin-top: 104px;
}
.mt112 {
  margin-top: 112px;
}
.mt120 {
  margin-top: 120px;
}
.mt160 {
  margin-top: 160px;
}
.p32 {
  padding: 0 32px;
}
.p24 {
  padding: 24px;
}
.p0 {
  padding: 0;
}
.pt0 {
  padding-top: 0;
}
.pt8 {
  padding-top: 8px;
}
.pt16 {
  padding-top: 16px;
}
.pt24 {
  padding-top: 24px;
}
.pt32 {
  padding-top: 32px;
}
.pt40 {
  padding-top: 40px;
}
.pt48 {
  padding-top: 48px;
}
.pt64 {
  padding-top: 64px;
}
.pt72 {
  padding-top: 72px;
}
.pt80 {
  padding-top: 80px;
}
.pt88 {
  padding-top: 88px;
}
.pt96 {
  padding-top: 96px;
}
.pt104 {
  padding-top: 104px;
}
.pt112 {
  padding-top: 112px;
}
.pt120 {
  padding-top: 120px;
}
.pt160 {
  padding-top: 160px;
}
.pt180 {
  padding-top: 180px;
}
.pt240 {
  padding-top: 240px;
}
.pb0 {
  padding-bottom: 0;
}
.pb8 {
  padding-bottom: 8px;
}
.pb16 {
  padding-bottom: 16px;
}
.pb24 {
  padding-bottom: 24px;
}
.pb32 {
  padding-bottom: 32px;
}
.pb40 {
  padding-bottom: 40px;
}
.pb48 {
  padding-bottom: 48px;
}
.pb56 {
  padding-bottom: 56px;
}
.pb64 {
  padding-bottom: 64px;
}
.pb72 {
  padding-bottom: 72px;
}
.pb80 {
  padding-bottom: 80px;
}
.pb88 {
  padding-bottom: 88px;
}
.pb96 {
  padding-bottom: 96px;
}
.pb104 {
  padding-bottom: 104px;
}
.pb112 {
  padding-bottom: 112px;
}
.pb120 {
  padding-bottom: 120px;
}
.pb160 {
  padding-bottom: 160px;
}
.pb180 {
  padding-bottom: 180px;
}
.pb240 {
  padding-bottom: 240px;
}
@media all and (max-width: 990px) {
  .mb-s-0 {
    margin-bottom: 0;
  }
  .mb-s-8 {
    margin-bottom: 8px;
  }
  .mb-s-16 {
    margin-bottom: 16px;
  }
  .mb-s-24 {
    margin-bottom: 24px;
  }
  .mb-s-32 {
    margin-bottom: 32px;
  }
  .mb-s-40 {
    margin-bottom: 40px;
  }
  .mb-s-48 {
    margin-bottom: 48px;
  }
  .mb-s-64 {
    margin-bottom: 64px;
  }
  .mb-s-72 {
    margin-bottom: 72px;
  }
  .mb-s-80 {
    margin-bottom: 80px;
  }
  .mb-s-88 {
    margin-bottom: 88px;
  }
  .mb-s-96 {
    margin-bottom: 96px;
  }
  .mb-s-104 {
    margin-bottom: 104px;
  }
  .mb-s-112 {
    margin-bottom: 112px;
  }
  .mb-s-120 {
    margin-bottom: 120px;
  }
}
@media all and (max-width: 990px) {
  .mb-sm-0 {
    margin-bottom: 0;
  }
  .mb-sm-8 {
    margin-bottom: 8px;
  }
  .mb-sm-16 {
    margin-bottom: 16px;
  }
  .mb-sm-24 {
    margin-bottom: 24px;
  }
  .mb-sm-32 {
    margin-bottom: 32px;
  }
  .mb-sm-40 {
    margin-bottom: 40px;
  }
  .mb-sm-48 {
    margin-bottom: 48px;
  }
  .mb-sm-64 {
    margin-bottom: 64px;
  }
  .mb-sm-72 {
    margin-bottom: 72px;
  }
  .mb-sm-80 {
    margin-bottom: 80px;
  }
  .mb-sm-88 {
    margin-bottom: 88px;
  }
  .mb-sm-96 {
    margin-bottom: 96px;
  }
  .mb-sm-104 {
    margin-bottom: 104px;
  }
  .mb-sm-112 {
    margin-bottom: 112px;
  }
  .mb-sm-120 {
    margin-bottom: 120px;
  }
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mt-sm-8 {
    margin-top: 8px;
  }
  .mt-sm-16 {
    margin-top: 16px;
  }
  .mt-sm-24 {
    margin-top: 24px;
  }
  .mt-sm-32 {
    margin-top: 32px;
  }
  .mt-sm-40 {
    margin-top: 40px;
  }
  .mt-sm-48 {
    margin-top: 48px;
  }
  .mt-sm-56 {
    margin-top: 56px;
  }
  .mt-sm-64 {
    margin-top: 64px;
  }
  .mt-sm-72 {
    margin-top: 72px;
  }
  .mt-sm-80 {
    margin-top: 80px;
  }
  .mt-sm-88 {
    margin-top: 88px;
  }
  .mt-sm-96 {
    margin-top: 96px;
  }
  .mt-sm-104 {
    margin-top: 104px;
  }
  .mt-sm-112 {
    margin-top: 112px;
  }
  .mt-sm-120 {
    margin-top: 120px;
  }
  .p0-sm {
    padding: 0;
  }
  .pt-sm-0 {
    padding-top: 0;
  }
  .pt-sm-8 {
    padding-top: 8px;
  }
  .pt-sm-16 {
    padding-top: 16px;
  }
  .pt-sm-24 {
    padding-top: 24px;
  }
  .pt-sm-32 {
    padding-top: 32px;
  }
  .pt-sm-40 {
    padding-top: 40px;
  }
  .pt-sm-48 {
    padding-top: 48px;
  }
  .pt-sm-64 {
    padding-top: 64px;
  }
  .pt-sm-72 {
    padding-top: 72px;
  }
  .pt-sm-80 {
    padding-top: 80px;
  }
  .pt-sm-88 {
    padding-top: 88px;
  }
  .pt-sm-96 {
    padding-top: 96px;
  }
  .pt-sm-104 {
    padding-top: 104px;
  }
  .pt-sm-112 {
    padding-top: 112px;
  }
  .pt-sm-120 {
    padding-top: 120px;
  }
  .pt-sm-160 {
    padding-top: 160px;
  }
  .pb-sm-0 {
    padding-bottom: 0;
  }
  .pb-sm-8 {
    padding-bottom: 8px;
  }
  .pb-sm-16 {
    padding-bottom: 16px;
  }
  .pb-sm-24 {
    padding-bottom: 24px;
  }
  .pb-sm-32 {
    padding-bottom: 32px;
  }
  .pb-sm-40 {
    padding-bottom: 40px;
  }
  .pb-sm-48 {
    padding-bottom: 48px;
  }
  .pb-sm-64 {
    padding-bottom: 64px;
  }
  .pb-sm-72 {
    padding-bottom: 72px;
  }
  .pb-sm-80 {
    padding-bottom: 80px;
  }
  .pb-sm-88 {
    padding-bottom: 88px;
  }
  .pb-sm-96 {
    padding-bottom: 96px;
  }
  .pb-sm-104 {
    padding-bottom: 104px;
  }
  .pb-sm-112 {
    padding-bottom: 112px;
  }
  .pb-sm-120 {
    padding-bottom: 120px;
  }
}

@media all and (max-width: 767px) {
  .mb-xs-0 {
    margin-bottom: 0;
  }
  .mb-xs-8 {
    margin-bottom: 8px;
  }
  .mb-xs-16 {
    margin-bottom: 16px;
  }
  .mb-xs-24 {
    margin-bottom: 24px;
  }
  .mb-xs-32 {
    margin-bottom: 32px;
  }
  .mb-xs-40 {
    margin-bottom: 40px;
  }
  .mb-xs-48 {
    margin-bottom: 48px;
  }
  .mb-xs-64 {
    margin-bottom: 64px;
  }
  .mb-xs-72 {
    margin-bottom: 72px;
  }
  .mb-xs-80 {
    margin-bottom: 80px;
  }
  .mb-xs-88 {
    margin-bottom: 88px;
  }
  .mb-xs-96 {
    margin-bottom: 96px;
  }
  .mb-xs-104 {
    margin-bottom: 104px;
  }
  .mb-xs-112 {
    margin-bottom: 112px;
  }
  .mb-xs-120 {
    margin-bottom: 120px;
  }
  .mt-xs-0 {
    margin-top: 0 !important;
  }
  .mt-xs-8 {
    margin-top: 8px;
  }
  .mt-xs-16 {
    margin-top: 16px;
  }
  .mt-xs-24 {
    margin-top: 24px;
  }
  .mt-xs-32 {
    margin-top: 32px;
  }
  .mt-xs-40 {
    margin-top: 40px;
  }
  .mt-xs-48 {
    margin-top: 48px;
  }
  .mt-xs-56 {
    margin-top: 56px;
  }
  .mt-xs-64 {
    margin-top: 64px;
  }
  .mt-xs-72 {
    margin-top: 72px;
  }
  .mt-xs-80 {
    margin-top: 80px;
  }
  .mt-xs-88 {
    margin-top: 88px;
  }
  .mt-xs-96 {
    margin-top: 96px;
  }
  .mt-xs-104 {
    margin-top: 104px;
  }
  .mt-xs-112 {
    margin-top: 112px;
  }
  .mt-xs-120 {
    margin-top: 120px;
  }
  .p0-xs {
    padding: 0;
  }
  .pt-xs-0 {
    padding-top: 0;
  }
  .pt-xs-8 {
    padding-top: 8px;
  }
  .pt-xs-16 {
    padding-top: 16px;
  }
  .pt-xs-24 {
    padding-top: 24px;
  }
  .pt-xs-32 {
    padding-top: 32px;
  }
  .pt-xs-40 {
    padding-top: 40px;
  }
  .pt-xs-48 {
    padding-top: 48px;
  }
  .pt-xs-64 {
    padding-top: 64px;
  }
  .pt-xs-72 {
    padding-top: 72px;
  }
  .pt-xs-80 {
    padding-top: 80px;
  }
  .pt-xs-88 {
    padding-top: 88px;
  }
  .pt-xs-96 {
    padding-top: 96px;
  }
  .pt-xs-104 {
    padding-top: 104px;
  }
  .pt-xs-112 {
    padding-top: 112px;
  }
  .pt-xs-120 {
    padding-top: 120px;
  }
  .pt-xs-160 {
    padding-top: 160px;
  }
  .pt-xs-180 {
    padding-top: 180px;
  }
  .pt-xs-240 {
    padding-top: 240px !important;
  }
  .pb-xs-0 {
    padding-bottom: 0;
  }
  .pb-xs-8 {
    padding-bottom: 8px;
  }
  .pb-xs-16 {
    padding-bottom: 16px;
  }
  .pb-xs-24 {
    padding-bottom: 24px;
  }
  .pb-xs-32 {
    padding-bottom: 32px;
  }
  .pb-xs-40 {
    padding-bottom: 40px;
  }
  .pb-xs-48 {
    padding-bottom: 48px;
  }
  .pb-xs-64 {
    padding-bottom: 64px;
  }
  .pb-xs-72 {
    padding-bottom: 72px;
  }
  .pb-xs-80 {
    padding-bottom: 80px;
  }
  .pb-xs-88 {
    padding-bottom: 88px;
  }
  .pb-xs-96 {
    padding-bottom: 96px;
  }
  .pb-xs-104 {
    padding-bottom: 104px;
  }
  .pb-xs-112 {
    padding-bottom: 112px;
  }
  .pb-xs-120 {
    padding-bottom: 120px;
  }
  .pb-xs-180 {
    padding-bottom: 180px;
  }
  .pb-xs-240 {
    padding-bottom: 240px !important;
  }
}

.mb-md-0 {margin-bottom:0px;}
.mb-lg-0 {margin-bottom:0px;}

/* --- RATES TABLE ITEMS --- */
.rate_container {
    border: 1px solid #E3E3E3;
}

.rate_header {
	padding:12px 0 0 0;
	border: 1px solid #e3e3e3;
  background:#353535;
}
.myrate { font-size:17px;font-weight:900;}
.rate_header h2 {
	text-align:center;
  color:#FFFFFF;
  font-weight:500;
  font-size:18px;
}
.rate_container {
	border: 1px solid #e3e3e3
}
.line_even {
	background-color:#f1f3f6;
	border: 1px solid #e3e3e3;
	border-top: none;
	padding: 15px;
	/*font-size: 12pt;*/
}
.line_odd {
	background-color:#fff;
	border: 1px solid #e3e3e3;
	border-top: none;
	padding: 15px;
	/*font-size: 12pt;*/
	text-align:center;
}
.line_even td, .line_odd td {

	border: 1px solid #e3e3e3;
	border-top: none;
	padding: 15px;
	/*font-size: 12pt;*/
	text-align:center;
}

.ratestable {padding: 5px; width:100%;}

.content-wrapper div li {
    text-indent: 0px!important;
    /* list-style: none!important; */
    border-bottom: 1px solid #eaeaea!important;
    line-height: 1.48em!important;
    list-style: inherit!important;
    list-style-type: disc!important;
    font-size:1.35em;
}

.content-wrapper li {
    margin-left: 1em;
    padding: 3px 0;
}

/* --- NAV CUSTOMIZATIONS --- */
.bar-1 .menu-horizontal > li > .dropdown__trigger,
.bar-1 .menu-horizontal > li > a {
  font-size: 1.15em;
  line-height: 2.166666666666667em;
  /*text-transform: uppercase;*/
  font-weight: 600;
  letter-spacing: .2px;
}

.captcha-large {
    transform: scale(1.00);
    -webkit-transform: scale(1.00);
    transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
}

.captcha_field {
    transform: scale(1.00);
    -webkit-transform: scale(1.00);
    transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
}


label.error {
    display: none;
    height:0px;
}
input.error, div.error, select.error, textarea.error {
    background-color:#ffd6d6;
    border: 1px solid #F23030;
    box-sizing: border-box;
}


ol.insidelist {
    list-style-type: upper-roman;
    list-style-position: inside;
}

ol.insidelist
{
    line-height: 1.0em;
}

ul.insidelist
{
    line-height: 1.0em;
}

/* Reusable Mortgage Providers subpages. Load after the existing theme CSS. */
.tmp-subpage,.tmp-dialog{--tmp-navy:#12364e;--tmp-ink:#18384b;--tmp-muted:#506572;--tmp-soft:#f3f6f5;--tmp-line:#d9e2e4;--tmp-accent:#b72731;font-family:Montserrat,Arial,sans-serif;color:var(--tmp-ink);font-size:16px;line-height:1.75;text-align:left}
.tmp-subpage *,.tmp-dialog *{box-sizing:border-box}
.tmp-subpage .tmp-container{width:calc(100% - 64px);max-width:1180px;margin:0 auto;position:relative}
.tmp-subpage h1,.tmp-subpage h2,.tmp-subpage h3,.tmp-dialog h2{font-family:inherit;font-weight:700;letter-spacing:-.035em;line-height:1.16;color:var(--tmp-ink);margin:0 0 22px;text-transform:none}
.tmp-subpage h2,.tmp-dialog h2{font-size:clamp(29px,3vw,42px)}
.tmp-subpage h3{font-size:22px;letter-spacing:-.025em;margin-bottom:12px}
.tmp-subpage p,.tmp-dialog p{font-size:16px;line-height:1.8;margin:0 0 18px;color:var(--tmp-muted);max-width:none}
.tmp-subpage a:not(.tmp-button),.tmp-dialog a{color:var(--tmp-navy);text-decoration:underline;text-underline-offset:4px;font-weight:600}
.tmp-subpage .tmp-eyebrow,.tmp-dialog .tmp-eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;line-height:1.6;margin:0 0 16px;color:var(--tmp-accent)}
.tmp-subpage .tmp-section{padding:74px 0!important}
.tmp-subpage .tmp-soft{background:var(--tmp-soft)}
.tmp-subpage .tmp-button,.tmp-dialog .tmp-button{display:inline-flex;align-items:center;justify-content:center;gap:28.8px;background:var(--tmp-accent);color:#fff;border:1px solid transparent;border-radius:7px;min-height:64.8px;padding:18px 27.6px;font:700 16.8px/1.4 Montserrat,Arial,sans-serif;letter-spacing:0;cursor:pointer;transition:background .18s,transform .18s;white-space:normal;margin:8px 0 0;text-transform:none;width:auto;height:auto;box-shadow:none}
.tmp-subpage .tmp-button:hover,.tmp-dialog .tmp-button:hover{background:#98212a;transform:translateY(-1px)}
.tmp-subpage .tmp-button span,.tmp-dialog .tmp-button span{font-size:25.2px;line-height:1}
.tmp-subpage .tmp-button-light{background:#fff;color:var(--tmp-navy)}
.tmp-subpage .tmp-button-light:hover{background:#eaf0f2}
.tmp-subpage :focus-visible,.tmp-dialog :focus-visible{outline:3px solid #319bc0;outline-offset:4px}
.tmp-subpage .tmp-hero{padding:80px 0 66px;background:radial-gradient(ellipse at 96% 5%,#325d75 0,transparent 54%),linear-gradient(120deg,#102f45,#174660);position:relative;overflow:hidden}
.tmp-subpage .tmp-hero:after{content:'';position:absolute;inset:auto 0 0;height:5px;background:linear-gradient(90deg,#b72731 0 24%,#7fa2b1 24% 100%)}
.tmp-subpage .tmp-hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:70px;align-items:center}
.tmp-subpage .tmp-hero h1{font-size:clamp(40px,4.6vw,62px);color:#fff;margin-bottom:23px;line-height:1.06;letter-spacing:-.045em}
.tmp-subpage .tmp-hero p{color:#dce8ef;max-width:550px}
.tmp-subpage .tmp-hero .tmp-eyebrow{color:#bbd4e1}
.tmp-subpage .tmp-hero .tmp-hero-lead{font-size:21px;line-height:1.5;font-weight:600;color:#fff;margin-bottom:13px}
.tmp-subpage .tmp-hero .tmp-hero-note{font-size:12px;line-height:1.6;color:#c1d3de;margin:15px 0 0}
.tmp-subpage .tmp-hero-proof{min-width:0}
.tmp-subpage .tmp-slider-frame{background:#fff;padding:10px;border-radius:16px;box-shadow:0 24px 50px #051e3340;transform:none}
.tmp-subpage .tmp-slider-frame .slider{margin:0;position:relative}
.tmp-subpage .tmp-slider-frame ul.slides{padding:0;margin:0;list-style:none}
.tmp-subpage .tmp-slider-frame .slides:not(.flickity-enabled)>li:not(:first-child){display:none}
.tmp-subpage .tmp-slider-frame .slides>li{width:100%;margin:0;list-style:none}
.tmp-subpage .tmp-slider-frame img{width:100%;height:auto;display:block;border-radius:8px;margin:0;max-width:100%}
.tmp-subpage .tmp-slider-frame .flickity-page-dots{bottom:10px}
.tmp-subpage .tmp-slider-frame .flickity-page-dots .dot{background:#12364e}
.tmp-subpage .tmp-hero .tmp-slider-note{font-size:11px;text-align:center;margin:24px 0 0;color:#c1d3de}
.tmp-subpage .tmp-trust-strip{padding:24px 0!important;border-bottom:1px solid var(--tmp-line);background:#fff}
.tmp-subpage .tmp-trust-grid{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:25px}
.tmp-subpage .tmp-trust-grid p{margin:0;border-right:1px solid var(--tmp-line);padding-right:18px;line-height:1.5}
.tmp-subpage .tmp-trust-grid p:last-child{border:0}
.tmp-subpage .tmp-trust-grid strong{display:block;font-size:13px;color:var(--tmp-ink);margin-bottom:5px}
.tmp-subpage .tmp-trust-grid span{font-size:11px;display:block}
.tmp-subpage .tmp-split{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:center}
.tmp-subpage .tmp-photo{margin:0;min-width:0;position:relative}
.tmp-subpage .tmp-photo img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:800/533;object-fit:cover;border-radius:12px;margin:0}
.tmp-subpage .tmp-photo figcaption{font-size:11px;line-height:1.6;color:var(--tmp-muted);margin:13px 0 0;padding-left:14px;border-left:3px solid var(--tmp-accent)}
.tmp-subpage .tmp-section-intro{max-width:660px;margin-bottom:35px}
.tmp-subpage .tmp-section-intro h2{margin-bottom:15px}
.tmp-subpage .tmp-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.tmp-subpage .tmp-project{padding:25px 0 0;border-top:1px solid #bdcdd3;min-width:0}
.tmp-subpage .tmp-number{font-size:12px;color:var(--tmp-accent);font-weight:700;display:block;margin-bottom:24px}
.tmp-subpage .tmp-project p{font-size:15px}
.tmp-subpage .tmp-project a{font-size:13px}
.tmp-subpage .tmp-related{font-size:13px;border-top:1px solid var(--tmp-line);padding-top:22px;margin:32px 0 0}
.tmp-subpage .tmp-process-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:88px}
.tmp-subpage .tmp-callout{border-left:3px solid var(--tmp-accent);padding:20px 22px;background:var(--tmp-soft);margin:30px 0 0}
.tmp-subpage .tmp-callout strong{font-size:15px}
.tmp-subpage .tmp-callout p{font-size:14px;margin:9px 0 0}
.tmp-subpage .tmp-steps{padding:0;margin:0;list-style:none;counter-reset:steps}
.tmp-subpage .tmp-steps li{counter-increment:steps;padding:0 0 22px 64px;position:relative;margin:0 0 22px;border-bottom:1px solid var(--tmp-line)}
.tmp-subpage .tmp-steps li:last-child{border:0;margin:0;padding-bottom:0}
.tmp-subpage .tmp-steps li:before{content:counter(steps,decimal-leading-zero);position:absolute;left:0;top:0;background:var(--tmp-soft);border:1px solid var(--tmp-line);border-radius:50%;width:40px;height:40px;display:grid;place-items:center;color:var(--tmp-navy);font-weight:700;font-size:12px}
.tmp-subpage .tmp-steps h3{font-size:20px}
.tmp-subpage .tmp-steps p{font-size:15px;margin:0}
.tmp-subpage .tmp-checklist{padding:0;list-style:none;margin:24px 0 0}
.tmp-subpage .tmp-checklist li{padding:10px 0 10px 28px;border-bottom:1px solid var(--tmp-line);position:relative;font-size:14px;color:var(--tmp-ink)}
.tmp-subpage .tmp-checklist li:before{content:'✓';position:absolute;left:0;color:#316d68;font-weight:bold}
.tmp-subpage .tmp-two-col{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:start}
.tmp-subpage .tmp-local-panel{padding:32px;border:1px solid var(--tmp-line);border-radius:12px}
.tmp-subpage .tmp-local-panel h2{font-size:29px}
.tmp-subpage .tmp-local-panel p{font-size:14px}
.tmp-subpage .tmp-resource-links{margin:22px 0}
.tmp-subpage .tmp-resource-links a{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--tmp-line);padding:13px 0;font-size:13px}
.tmp-subpage .tmp-small{font-size:12px!important;margin-bottom:0}
.tmp-subpage .tmp-faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}
.tmp-subpage .tmp-faq{border-bottom:1px solid #ccd8dc;padding:0;margin:0}
.tmp-subpage .tmp-faq:first-child{border-top:1px solid #ccd8dc}
.tmp-subpage .tmp-faq summary{position:relative;padding:22px 38px 22px 0;font-size:15px;font-weight:600;line-height:1.6;cursor:pointer;list-style:none;color:var(--tmp-ink)}
.tmp-subpage .tmp-faq summary::-webkit-details-marker{display:none}
.tmp-subpage .tmp-faq summary:after{content:'+';position:absolute;right:4px;top:18px;font-size:24px;font-weight:400;color:var(--tmp-accent)}
.tmp-subpage .tmp-faq[open] summary:after{content:'−'}
.tmp-subpage .tmp-faq p{font-size:14px;padding:0 30px 5px 0}
.tmp-subpage .tmp-close{background:var(--tmp-navy);padding-bottom:28px!important}
.tmp-subpage .tmp-close-grid{display:flex;align-items:center;justify-content:space-between;gap:36px}
.tmp-subpage .tmp-close h2{color:#fff}
.tmp-subpage .tmp-close p{color:#d1e0e8}
.tmp-subpage .tmp-close .tmp-eyebrow{color:#aecbd9}
.tmp-subpage .tmp-close .tmp-button{flex-shrink:0}
.tmp-subpage .tmp-disclosure{font-size:10px!important;line-height:1.8;margin:36px 0 0;border-top:1px solid #ffffff30;padding-top:22px;color:#bcd0dc!important}
.tmp-dialog{border:0;border-radius:16px;padding:0;width:min(620px,calc(100% - 32px));max-width:620px;max-height:calc(100dvh - 32px);margin:auto;background:#fff;box-shadow:0 30px 100px #061f4555;overflow:auto}
.tmp-modal[hidden]{display:none!important}
.tmp-modal{position:fixed;inset:0;z-index:10000;background:#071f39b8;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto}
.tmp-modal .tmp-dialog{position:relative;margin:auto;width:min(620px,100%)}
.tmp-modal:not([hidden]) .tmp-dialog{animation:tmp-in .2s ease-out}
.tmp-dialog::backdrop{background:#071f39b8;backdrop-filter:blur(4px)}
.tmp-dialog .tmp-dialog-inner{padding:38px}
.tmp-dialog h2{font-size:30px;margin-bottom:12px;padding-right:15px}
.tmp-dialog p{font-size:14px}
.tmp-dialog .tmp-dialog-close{position:absolute;right:13px;top:10px;width:40px;height:40px;min-width:0;padding:0;border:0;background:#f1f4f5;border-radius:50%;color:#173b51;font:28px/1 Arial;cursor:pointer}
.tmp-dialog label{display:block;color:var(--tmp-ink);font-size:12px;font-weight:700;margin:17px 0 6px}
.tmp-dialog label span{font-weight:400;color:var(--tmp-muted);font-size:10px}
.tmp-dialog input:not([type=hidden]),.tmp-dialog textarea{display:block;width:100%;height:auto;min-height:46px;border:1px solid #c6d3d9;border-radius:5px;padding:11px 12px;background:#fff;color:var(--tmp-ink);font:16px/1.5 Arial,sans-serif;box-shadow:none;margin:0;resize:vertical}
.tmp-dialog .tmp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.tmp-dialog .tmp-form-row>div{min-width:0}
.tmp-dialog .tmp-form-privacy{font-size:10px;line-height:1.7;margin:16px 0}
.tmp-dialog .tmp-captcha{min-height:144px}
.tmp-dialog .tmp-submit{width:100%;margin-top:0}
.tmp-dialog .tmp-form-status{font-size:13px;margin:14px 0;color:#98313a}
.tmp-dialog .tmp-form-status:empty{display:none}
.tmp-dialog .tmp-form-status[data-success]{color:#24675e;padding:15px;background:#eef7f4;border-radius:6px}
.tmp-dialog button:disabled{opacity:.65;cursor:wait;transform:none}
@keyframes tmp-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.tmp-subpage .tmp-hero-grid{gap:36px}.tmp-subpage .tmp-split,.tmp-subpage .tmp-two-col,.tmp-subpage .tmp-faq-grid,.tmp-subpage .tmp-process-grid{gap:36px}.tmp-subpage .tmp-section{padding:56px 0!important}.tmp-subpage .tmp-hero{padding:60px 0}}
@media(max-width:767px){.tmp-subpage .tmp-container{width:calc(100% - 40px)}.tmp-subpage .tmp-hero-grid,.tmp-subpage .tmp-split,.tmp-subpage .tmp-two-col,.tmp-subpage .tmp-process-grid,.tmp-subpage .tmp-faq-grid{grid-template-columns:1fr;gap:32px}.tmp-subpage .tmp-hero{padding:45px 0 38px}.tmp-subpage .tmp-hero h1{font-size:44px}.tmp-subpage .tmp-hero .tmp-hero-lead{font-size:19px}.tmp-subpage .tmp-hero-proof{max-width:480px;width:100%;margin:auto}.tmp-subpage .tmp-slider-frame{transform:none}.tmp-subpage .tmp-trust-grid{grid-template-columns:1fr;gap:13px}.tmp-subpage .tmp-trust-grid p{border:0;border-bottom:1px solid var(--tmp-line);padding:0 0 13px}.tmp-subpage .tmp-trust-grid p:last-child{padding:0}.tmp-subpage .tmp-section{padding:42px 0!important}.tmp-subpage .tmp-project-grid{grid-template-columns:1fr;gap:24px}.tmp-subpage .tmp-project{padding-top:18px}.tmp-subpage .tmp-number{margin-bottom:13px}.tmp-subpage .tmp-photo{max-width:100%}.tmp-subpage .tmp-close-grid{display:block}.tmp-subpage .tmp-close .tmp-button{margin-top:12px}.tmp-subpage .tmp-local-panel{padding:24px}.tmp-subpage .tmp-faq-grid{gap:18px}.tmp-subpage .tmp-section-intro{margin-bottom:22px}.tmp-subpage .tmp-steps li{padding-left:55px}.tmp-dialog .tmp-dialog-inner{padding:32px 22px 24px}.tmp-dialog .tmp-form-row{grid-template-columns:1fr;gap:0}.tmp-dialog h2{font-size:26px}.tmp-dialog .tmp-eyebrow{font-size:10px;padding-right:20px}}
@media(prefers-reduced-motion:reduce){.tmp-subpage .tmp-button,.tmp-dialog .tmp-button{transition:none}.tmp-modal:not([hidden]) .tmp-dialog{animation:none}}

/* Reusable sourced fact and company experience callout. */
.tmp-subpage .tmp-button,.tmp-dialog .tmp-button{max-width:100%}
.tmp-subpage section.tmp-did-you-know{padding-top:0!important}
.tmp-subpage .tmp-knowledge-panel{display:grid;grid-template-columns:1.2fr 1fr;gap:46px;align-items:center;padding:40px;background:#eaf1f5;border:1px solid #d2e0e7;border-left:5px solid var(--tmp-accent);border-radius:12px}
.tmp-subpage .tmp-knowledge-panel h2{font-size:30px;max-width:440px;margin-bottom:17px}
.tmp-subpage .tmp-knowledge-panel p{font-size:15px;margin-bottom:17px}
.tmp-subpage .tmp-knowledge-panel a{font-size:12px;line-height:1.8}
.tmp-subpage .tmp-knowledge-panel .tmp-eyebrow{font-size:11px}
.tmp-subpage .tmp-knowledge-experience{border-left:1px solid #c4d6df;padding-left:38px}
.tmp-subpage .tmp-knowledge-year{display:block;font-size:38px;font-weight:700;letter-spacing:-.04em;color:var(--tmp-navy);line-height:1.2;margin-bottom:14px}
.tmp-subpage .tmp-knowledge-experience h3{font-size:20px;margin-bottom:13px}
@media(max-width:767px){.tmp-subpage .tmp-knowledge-panel{grid-template-columns:1fr;gap:25px;padding:26px 22px}.tmp-subpage .tmp-knowledge-panel h2{font-size:27px}.tmp-subpage .tmp-knowledge-experience{border-left:0;border-top:1px solid #c4d6df;padding:25px 0 0}.tmp-subpage .tmp-knowledge-year{font-size:34px}}

.field1 {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    height: 0;
    width: 0;
    z-index: -1;
}

#search-results ul {
    list-style: none;
    padding: 0;
    margin: 0;
    margin-top:15px;
}

#search-results ul li {
  margin-bottom:10px;
}

#search-results ul li a {
    text-decoration: none;
}

#search-results ul li a:hover {
    text-decoration: underline;
}

/* The Mortgage Providers — scoped styles. Load after existing site CSS.
   Visual reference: inspected roar-features-03 (pastel, two-column need cards).
   No framework, font download, or Roar runtime is required by this stylesheet.
   Explicit component dimensions and fluid type prevent host html font sizing from shrinking this design. */

.tmp-home {
  --tmp-ink: #142341;
  --tmp-navy: #132a62;
  --tmp-blue: #16377d;
  --tmp-muted: #566077;
  --tmp-paper: #ffffff;
  --tmp-line: #d8dce7;
  --tmp-lilac: #f0effa;
  --tmp-radius: 26.4px;
  --tmp-anchor-offset: 128px; /* Match the existing sticky navigation height. */
  color: var(--tmp-ink);
  background: var(--tmp-paper);
  font-family: "Google Sans", "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  isolation: isolate;
  overflow-wrap: break-word;
  color-scheme: light;
}
.tmp-home *, .tmp-home *::before, .tmp-home *::after { box-sizing: border-box; }
.tmp-home :is(h1,h2,h3,p,figure,blockquote,ul,ol,fieldset) { margin: 0; }
.tmp-home :is(h1,h2,h3) {
  color: inherit;
  font-family: inherit;
  font-style: normal;
  font-weight: 650;
  text-transform: none;
  text-wrap: balance;
}
.tmp-home h1 { font-size: clamp(52px, 5.3vw, 91.2px); line-height: 1.02; letter-spacing: -.065em; }
.tmp-home h2 { font-size: clamp(36.8px, 4vw, 68px); line-height: 1.08; letter-spacing: -.055em; }
.tmp-home h3 { font-size: 23.2px; line-height: 1.22; letter-spacing: -.025em; }
.tmp-home p { max-width: none; }
.tmp-home a { color: inherit; text-decoration: underline; text-underline-offset: 3.2px; text-decoration-thickness: 1px; }
.tmp-home a:hover { text-decoration-thickness: 2px; }
.tmp-home :is(a,button,input,summary):focus-visible { outline: 3px solid #4169d1; outline-offset: 5px; }
.tmp-home :is(img,svg) { display: block; max-width: 100%; }
.tmp-home img { width: 100%; height: auto; margin: 0; border: 0; }
.tmp-home :is(ul,ol) { padding: 0; }
.tmp-home li { margin: 0; }
.tmp-home figcaption { font-style: normal; font-family: inherit; text-align: inherit; }
.tmp-home :is(section,footer) { display: block; position: relative; float: none; }
.tmp-home :is(section,[id]) { scroll-margin-top: var(--tmp-anchor-offset); }
.tmp-home .tmp-shell { width: min(100% - 96px, 1280px); margin-inline: auto; }
.tmp-home .tmp-section { padding: clamp(64px, 7vw, 112px) 0; }
/* The existing theme's 13-condition adjacent-section selector zeroes top padding.
   Override only that property inside this component, leaving navigation untouched. */
.tmp-home .tmp-section { padding-top: clamp(64px, 7vw, 112px) !important; }
.tmp-home .tmp-eyebrow { margin: 0 0 22.4px; font-size: 11.84px; font-weight: 700; line-height: 1.5; letter-spacing: .13em; text-transform: uppercase; }
.tmp-home .tmp-small { font-size: 13.28px; line-height: 1.65; }
.tmp-home .tmp-lead { font-size: clamp(16.8px, 1.45vw, 20px); line-height: 1.65; }
.tmp-home .tmp-dot { display: inline-block; width: 8px; height: 8px; margin-right: 8px; border-radius: 50%; background: #b31e44; }
.tmp-home .tmp-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 18.4px 26.4px; }
.tmp-home .tmp-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 22.4px;
  min-height: 54.4px; max-width: 100%; padding: 15.2px 24.8px;
  border: 1px solid transparent; border-radius: 999px;
  box-shadow: none; font: inherit; font-size: 15.04px; font-weight: 650;
  line-height: 1.35; letter-spacing: -.015em; text-transform: none;
  text-decoration: none; text-align: center; cursor: pointer;
  transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}
.tmp-home .tmp-button > span { font-size: 19.2px; flex-shrink: 0; }
.tmp-home .tmp-button--primary { background: var(--tmp-blue); color: #fff; }
.tmp-home .tmp-button--primary:hover { background: #0c2459; }
.tmp-home .tmp-button--outline { background: transparent; border-color: #7a859c; color: var(--tmp-ink); }
.tmp-home .tmp-button--outline:hover { background: #e3e4f2; }
.tmp-home .tmp-button--light { background: #ebedff; color: var(--tmp-navy); }
.tmp-home .tmp-button--light:hover { background: #fff; }
.tmp-home .tmp-text-link { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; font-size: 15.04px; font-weight: 600; }
.tmp-home .tmp-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 48px; }
.tmp-home .tmp-section-heading > div { max-width: 832px; }
.tmp-home .tmp-section-heading > p { max-width: 336px; color: var(--tmp-muted); }
.tmp-home .tmp-section-heading > a { flex-shrink: 0; }

/* 01 / Split hero with one primary action and an immediately readable trust row. */
.tmp-home .tmp-hero { padding: 51.2px 0 0; background: #f2f2fa; }
.tmp-home .tmp-hero__grid { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 56px; }
.tmp-home .tmp-hero__copy { padding-block: 24px 32px; }
.tmp-home .tmp-hero h1 span { color: #506395; }
.tmp-home .tmp-hero .tmp-lead { max-width: 560px; margin-top: 28px; color: #46516a; }
.tmp-home .tmp-hero .tmp-actions { margin-top: 32px; }
.tmp-home .tmp-hero__reassurance { margin-top: 16px; font-size: 12.8px; color: var(--tmp-muted); }
.tmp-home .tmp-hero__visual { position: relative; min-width: 0; align-self: stretch; min-height: 544px; border-radius: 32px; overflow: hidden; background: #405349; }
.tmp-home .tmp-hero__visual > img { height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: 63% center; }
.tmp-home .tmp-hero__visual::after { content: ""; position: absolute; inset: 30% 0 0; background: linear-gradient(transparent, rgba(8,20,18,.83)); }
.tmp-home .tmp-hero__visual figcaption { position: absolute; z-index: 1; left: 32px; right: 32px; bottom: 32px; color: #fff; }
.tmp-home .tmp-hero__visual figcaption > span:last-child { display: block; font-size: clamp(26.4px, 2.5vw, 38.4px); letter-spacing: -.045em; font-weight: 600; line-height: 1.13; }
.tmp-home .tmp-hero__caption-label { display: block; margin-bottom: 13.6px; font-size: 11.52px; letter-spacing: .06em; }
.tmp-home .tmp-hero__image-tag { position: absolute; z-index: 1; top: 24px; left: 24px; padding: 9.6px 15.2px; border-radius: 99px; color: var(--tmp-ink); background: #f5f4e8; font-size: 11.2px; font-weight: 600; }
.tmp-home .tmp-trust-strip { display: grid; grid-template-columns: .9fr 1fr 1.2fr; gap: 32px; list-style: none; padding: 32px 0; margin-top: 44.8px; border-top: 1px solid #d3d7e2; }
.tmp-home .tmp-trust-strip li { display: grid; align-content: start; gap: 2.4px; }
.tmp-home .tmp-trust-strip li + li { border-left: 1px solid #d3d7e2; padding-left: 32px; }
.tmp-home .tmp-trust-strip strong { font-size: 15.2px; font-weight: 650; }
.tmp-home .tmp-trust-strip :is(span,a) { color: var(--tmp-muted); font-size: 12.48px; }

/* 02 / Funding range. No counters, implied approval, or animated claims. */
.tmp-home .tmp-funding__grid { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 80px; }
.tmp-home .tmp-funding h2 { font-size: clamp(33.6px, 3.3vw, 56px); }
.tmp-home .tmp-funding h2 + p { margin-top: 24px; color: var(--tmp-muted); max-width: 608px; }
.tmp-home .tmp-funding .tmp-text-link { margin-top: 17.6px; }
.tmp-home .tmp-funding__range { padding-left: 56px; border-left: 1px solid var(--tmp-line); }
.tmp-home .tmp-funding__range .tmp-eyebrow { margin-bottom: 14.4px; }
.tmp-home .tmp-funding__number { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 16px; font-size: clamp(38.4px, 4.1vw, 70.4px); line-height: 1.08; font-weight: 600; letter-spacing: -.07em; }
.tmp-home .tmp-funding__number > span { white-space: nowrap; }
.tmp-home .tmp-funding__number .tmp-funding__to { font-size: 19.2px; font-weight: 400; letter-spacing: 0; color: var(--tmp-muted); }
.tmp-home .tmp-funding__range .tmp-small { margin-top: 20px; max-width: 432px; color: var(--tmp-muted); }

/* 03 / roar-features-03 adaptation: headline + 2 x 2 pastel, image-led grid.
   Text and images stay in normal flow, so longer copy and zoom cannot overlap. */
.tmp-home .tmp-services { background: #f1f2fb; }
.tmp-home .tmp-services h2 { max-width: 22ch; }
.tmp-home .tmp-service-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 24px; }
.tmp-home .tmp-service-card { display: flex; flex-direction: column; position: relative; min-width: 0; border: 1px solid #cdd3e3; border-radius: var(--tmp-radius); background: #e6e3f5; }
.tmp-home .tmp-service-card--lilac { background: #e8e2fa; }
.tmp-home .tmp-service-card--mint { background: #deeee6; }
.tmp-home .tmp-service-card--peach { background: #f7e5d9; }
.tmp-home .tmp-service-card--blue { background: #dfeaf7; }
.tmp-home .tmp-service-card__copy { padding: clamp(24px, 3vw, 40px); }
.tmp-home .tmp-service-card .tmp-eyebrow { margin-bottom: 16px; font-size: 11.2px; }
.tmp-home .tmp-service-card h3 { padding-right: 48px; font-size: clamp(28px, 2.65vw, 42.4px); letter-spacing: -.05em; line-height: 1.08; }
.tmp-home .tmp-service-card h3 a { text-decoration: none; }
.tmp-home .tmp-service-card h3 a::after { content: ""; position: absolute; z-index: 2; inset: 0; border-radius: var(--tmp-radius); }
.tmp-home .tmp-service-card h3 a:focus-visible { outline: 0; }
.tmp-home .tmp-service-card h3 a:focus-visible::after { outline: 3px solid #16377d; outline-offset: 5px; }
.tmp-home .tmp-card-arrow { position: absolute; top: 32px; right: 32px; display: grid; place-items: center; width: 44.8px; height: 44.8px; border: 1px solid #788399; border-radius: 50%; font-size: 22.4px; font-weight: 400; transition: background-color 160ms ease; }
.tmp-home .tmp-service-card:hover .tmp-card-arrow { color: #fff; background: var(--tmp-navy); border-color: var(--tmp-navy); }
.tmp-home .tmp-service-card__copy > p:not(.tmp-eyebrow) { max-width: 608px; margin-top: 19.2px; color: #475269; font-size: 16px; line-height: 1.6; }
.tmp-home .tmp-card-link { display: block; margin-top: 19.2px; font-size: 13.12px; font-weight: 650; text-decoration: underline; text-underline-offset: 4px; }
.tmp-home .tmp-service-card__image { margin: auto 17.6px 17.6px; border-radius: 14.4px; overflow: hidden; aspect-ratio: 2.35 / 1; background: #c9d1d6; }
.tmp-home .tmp-service-card__image img { width: 100%; height: 100%; object-fit: cover; }
.tmp-home .tmp-service-card--mint img { object-position: center 60%; }
.tmp-home .tmp-service-card--blue img { object-position: 60% 65%; }
.tmp-home .tmp-services__help { text-align: center; margin-top: 32px; color: var(--tmp-muted); font-size: 15.04px; }
.tmp-home .tmp-services__help a { color: var(--tmp-ink); }

/* 04 / The existing long service list becomes a browsable directory. */
.tmp-home .tmp-situations__grid { display: grid; grid-template-columns: .88fr 1.35fr; gap: 80px; }
.tmp-home .tmp-situations h2 { font-size: clamp(36.8px, 3.5vw, 58.4px); }
.tmp-home .tmp-situations h2 + p { margin-top: 24px; color: var(--tmp-muted); max-width: 496px; }
.tmp-home .tmp-situations .tmp-text-link { margin-top: 16px; }
.tmp-home .tmp-situation-groups { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px; }
.tmp-home .tmp-situation-groups h3 { margin-bottom: 12.8px; font-size: 17.6px; }
.tmp-home .tmp-link-list { list-style: none; border-top: 1px solid #aeb7c8; }
.tmp-home .tmp-link-list a { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 68.8px; padding: 16px 0; border-bottom: 1px solid var(--tmp-line); font-size: 14.88px; line-height: 1.45; text-decoration: none; }
.tmp-home .tmp-link-list a:hover { color: var(--tmp-blue); text-decoration: underline; }
.tmp-home .tmp-link-list a > span { flex-shrink: 0; }

/* 05 / Always visible client excerpts; no carousel or synthetic ratings. */
.tmp-home .tmp-stories { background: #edf2f0; }
.tmp-home .tmp-stories h2 { font-size: clamp(36.8px, 3.7vw, 61.6px); }
.tmp-home .tmp-quote-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.tmp-home .tmp-quote { display: flex; flex-direction: column; align-items: start; padding: 32px; min-height: 304px; background: #fff; border: 1px solid #d6dfda; border-radius: 20px; }
.tmp-home .tmp-quote__mark { font-family: Georgia, serif; color: #516d64; font-size: 60.8px; line-height: .9; }
.tmp-home .tmp-quote blockquote { border: 0; padding: 9.6px 0 25.6px; font-family: inherit; font-style: normal; font-size: 22.4px; line-height: 1.3; letter-spacing: -.035em; }
.tmp-home .tmp-quote figcaption { margin-top: auto; display: grid; gap: 4.8px; font-size: 14.08px; }
.tmp-home .tmp-quote figcaption span { color: var(--tmp-muted); font-size: 12.32px; }
.tmp-home .tmp-stories__note { margin-top: 24px; color: var(--tmp-muted); }

/* 06 / Existing media presented as a compact, readable collection. */
.tmp-home .tmp-media h2 { font-size: clamp(36.8px, 3.8vw, 64px); }
.tmp-home .tmp-video-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.tmp-home .tmp-video { text-decoration: none; min-width: 0; }
.tmp-home .tmp-video__image { position: relative; overflow: hidden; border-radius: 16px; border: 1px solid var(--tmp-line); aspect-ratio: 700/392; }
.tmp-home .tmp-video__image img { width: 100%; height: 100%; object-fit: cover; }
.tmp-home .tmp-video__play { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); display: grid; place-items: center; width: 57.6px; height: 57.6px; padding-left: 2.4px; border: 1px solid #fff; border-radius: 50%; color: #fff; background: #132a62; font-size: 16px; }
.tmp-home .tmp-video > span { display: flex; gap: 11.2px; justify-content: space-between; margin-top: 16px; font-size: 16.32px; line-height: 1.4; font-weight: 650; }
.tmp-home .tmp-video small { display: block; margin-top: 5.6px; color: var(--tmp-muted); font-size: 11.84px; }
.tmp-home .tmp-video:hover > span { text-decoration: underline; }
.tmp-home .tmp-radio { display: flex; align-items: center; justify-content: space-between; gap: 32px; margin-top: 40px; padding: 32px; background: #f4f3f8; border-radius: 19.2px; }
.tmp-home .tmp-radio .tmp-eyebrow { margin-bottom: 8px; }
.tmp-home .tmp-radio__player { width: min(100%, 464px); }
.tmp-home .tmp-radio audio { display: block; width: 100%; height: 54.4px; }
.tmp-home .tmp-radio__player > a { display: inline-block; font-size: 11.84px; margin: 4.8px 0 0 16px; }
.tmp-home .tmp-media-logos { display: flex; align-items: center; gap: 48px; margin-top: 40px; padding-top: 40px; border-top: 1px solid var(--tmp-line); }
.tmp-home .tmp-media-logos p { flex: 0 0 144px; font-size: 13.44px; font-weight: 600; }
.tmp-home .tmp-media-logos img { width: min(100%, 688px); min-width: 0; flex-shrink: 1; height: auto; }

/* 07 / Native details works without JavaScript; answers are in the HTML. */
.tmp-home .tmp-faq { background: #f5f5f8; }
.tmp-home .tmp-faq__grid { display: grid; grid-template-columns: .85fr 1.2fr; gap: 80px; }
.tmp-home .tmp-faq h2 { font-size: clamp(36.8px, 3.5vw, 59.2px); }
.tmp-home .tmp-faq .tmp-text-link { margin-top: 20.8px; }
.tmp-home .tmp-faq details { border-top: 1px solid #bcc4d1; padding: 0; }
.tmp-home .tmp-faq details:last-child { border-bottom: 1px solid #bcc4d1; }
.tmp-home .tmp-faq summary { position: relative; min-height: 72px; display: block; padding: 21.6px 40px 21.6px 0; cursor: pointer; font-size: 17.12px; font-weight: 650; line-height: 1.45; list-style: none; }
.tmp-home .tmp-faq summary::-webkit-details-marker { display: none; }
.tmp-home .tmp-faq summary::after { content: "+"; position: absolute; right: 4px; top: 17.6px; font-size: 24px; font-weight: 400; }
.tmp-home .tmp-faq details[open] > summary::after { content: "−"; }
.tmp-home .tmp-faq__answer { padding: 0 24px 24px 0; color: #4c576b; font-size: 15.36px; }
.tmp-home .tmp-faq__answer a { display: inline-block; margin-top: 16px; color: var(--tmp-blue); font-size: 13.6px; }

/* 08 / Strong closing invitation, with an explicit path to contact or apply. */
.tmp-home .tmp-contact { background: var(--tmp-navy); color: #fff; }
.tmp-home .tmp-contact__grid { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 80px; }
.tmp-home .tmp-contact .tmp-eyebrow { color: #c5d0f2; }
.tmp-home .tmp-contact h2 { font-size: clamp(44px, 4.7vw, 76.8px); }
.tmp-home .tmp-contact h2 + p { margin-top: 24px; max-width: 560px; color: #d6dff4; }
.tmp-home .tmp-contact .tmp-actions { margin-top: 32px; }
.tmp-home .tmp-contact__phone { font-size: 17.92px; font-weight: 600; }
.tmp-home .tmp-contact :is(a,button):focus-visible { outline-color: #fff; }
.tmp-home .tmp-conversation { border: 1px solid #586ea3; border-radius: var(--tmp-radius); padding: 32px; background: #1b3570; }
.tmp-home .tmp-conversation h3 { font-size: 26.4px; line-height: 1.2; max-width: 352px; }
.tmp-home .tmp-conversation ol { list-style: none; margin-top: 28px; }
.tmp-home .tmp-conversation li { display: flex; gap: 16px; padding: 17.6px 0; border-top: 1px solid #4d6495; }
.tmp-home .tmp-conversation li > span { flex-shrink: 0; font-size: 12px; padding-top: 2.4px; color: #bbc9ef; }
.tmp-home .tmp-conversation li strong { font-size: 15.52px; font-weight: 600; }
.tmp-home .tmp-conversation li p { margin-top: 4px; font-size: 13.76px; line-height: 1.6; color: #d6dff4; }
.tmp-home .tmp-conversation > a { display: block; margin-top: 17.6px; font-size: 13.28px; }

/* 09 / Newsletter form: real labels, deliberate opt-ins, preserved CMS fields. */
.tmp-home .tmp-newsletter { background: #e8ebf7; }
.tmp-home .tmp-newsletter__grid { display: grid; grid-template-columns: 1fr 1.05fr; align-items: start; gap: 80px; }
.tmp-home .tmp-newsletter h2 { font-size: clamp(35.2px, 3.7vw, 60.8px); }
.tmp-home .tmp-newsletter h2 + p { margin-top: 24px; max-width: 464px; color: #4b5670; }
.tmp-home .tmp-newsletter h2 ~ .tmp-small { margin-top: 24px; }
.tmp-home .tmp-newsletter__form { display: grid; gap: 20px; margin: 0; width: 100%; }
.tmp-home .tmp-newsletter__form label { display: block; font-size: 13.6px; font-weight: 600; margin: 0 0 6.4px; }
.tmp-home .tmp-newsletter__choices { display: flex; flex-wrap: wrap; gap: 6.4px 16px; border: 0; padding: 0; min-width: 0; }
.tmp-home .tmp-newsletter__choices legend { float: none; width: 100%; margin: 0 0 8px; padding: 0; font-size: 14.72px; font-weight: 650; color: var(--tmp-ink); }
.tmp-home .tmp-newsletter__choices label { display: inline-flex; align-items: center; gap: 9.6px; margin: 0; min-height: 44px; cursor: pointer; font-size: 12.8px; }
.tmp-home .tmp-newsletter__choices input { appearance: auto; -webkit-appearance: auto; display: inline-block; position: static; opacity: 1; width: 18.4px; height: 18.4px; margin: 0; padding: 0; accent-color: #16377d; flex-shrink: 0; }
.tmp-home .tmp-form-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.tmp-home .tmp-newsletter__form input:not([type="checkbox"]):not([type="hidden"]) { display: block; width: 100%; min-height: 51.2px; border: 1px solid #8c96ac; border-radius: 8.8px; background: #fff; padding: 12.8px 16px; color: var(--tmp-ink); font: inherit; font-size: 16px; line-height: 1.3; box-shadow: none; }
.tmp-home .tmp-newsletter__form .tmp-small { color: #49546d; font-size: 12.16px; }
.tmp-home .tmp-newsletter__form .tmp-button { justify-self: start; }
.tmp-home .tmp-newsletter__form .error { outline: 2px solid #a51c3a; outline-offset: 3px; }
.tmp-home .tmp-newsletter__form label.error { color: #93142f; outline: 0; }

/* 10 / Contact, legal identity and useful links in a clean footer. */
.tmp-home .tmp-footer { padding: 64px 0 24px; background: #fdfdfc; border-top: 1px solid #d1d6e3; font-size: 13.6px; }
.tmp-home .tmp-footer__grid { display: grid; grid-template-columns: 1.2fr 1.15fr .75fr; gap: 48px; padding-bottom: 48px; }
.tmp-home .tmp-footer__brand img { width: min(100%, 280px); height: auto; }
.tmp-home .tmp-footer__brand > p { margin-top: 22.4px; }
.tmp-home .tmp-footer__brand .tmp-small { color: var(--tmp-muted); font-size: 12px; }
.tmp-home .tmp-footer h2 { font-size: 14.4px; font-weight: 700; line-height: 1.4; letter-spacing: 0; margin: 0 0 16px; }
.tmp-home .tmp-footer ul { list-style: none; }
.tmp-home .tmp-footer li { margin-bottom: 5.6px; }
.tmp-home .tmp-footer li a { display: inline-block; min-height: 32px; padding-block: 3.2px; text-decoration: none; }
.tmp-home .tmp-footer li a:hover { text-decoration: underline; }
.tmp-home .tmp-footer address { margin: 16px 0 0; font-style: normal; color: var(--tmp-muted); }
.tmp-home .tmp-footer__bottom { display: flex; align-items: center; flex-wrap: wrap; justify-content: space-between; gap: 16px 32px; padding-top: 19.2px; border-top: 1px solid var(--tmp-line); color: var(--tmp-muted); font-size: 11.52px; }
.tmp-home .tmp-footer__bottom nav { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 17.6px; }
.tmp-home .tmp-footer__bottom a { display: inline-flex; align-items: center; min-height: 44px; }
.tmp-home .tmp-back-top { gap: 16px; }
.tmp-home .tmp-footer__credit { margin-top: 16px; color: var(--tmp-muted); font-size: 11.04px; }

/* Tablet / small desktop */
@media (max-width: 1100px) {
  .tmp-home .tmp-shell { width: min(100% - 64px,1280px); }
  .tmp-home .tmp-hero__grid { gap: 32px; }
  .tmp-home .tmp-hero__visual { min-height: 528px; }
  .tmp-home .tmp-section-heading { align-items: flex-start; }
  .tmp-home .tmp-section-heading > a { flex-shrink: 1; }
  .tmp-home .tmp-section-heading > p { max-width: 288px; }
  .tmp-home :is(.tmp-funding__grid,.tmp-situations__grid,.tmp-faq__grid,.tmp-contact__grid,.tmp-newsletter__grid) { gap: 48px; }
  .tmp-home .tmp-situations__grid { grid-template-columns: 1fr; }
  .tmp-home .tmp-situations h2 br { display: none; }
  .tmp-home .tmp-situations h2 { max-width: 24ch; }
  .tmp-home .tmp-situations h2 + p { max-width: 672px; }
  .tmp-home .tmp-quote { padding: 24px; }
  .tmp-home .tmp-footer__grid { gap: 32px; grid-template-columns: 1fr 1fr; }
  .tmp-home .tmp-footer__grid > nav { grid-column: 1/-1; }
  .tmp-home .tmp-footer__grid > nav ul { display: flex; flex-wrap: wrap; gap: 8px 27.2px; }
}

/* Phone / narrow tablet: DOM order and reading order remain the same. */
@media (max-width: 760px) {
  .tmp-home .tmp-shell { width: min(100% - 40px,640px); }
  .tmp-home .tmp-section { padding-block: 59.2px; }
  .tmp-home .tmp-section { padding-top: 59.2px !important; }
  .tmp-home h1 { font-size: clamp(48px,10vw,70.4px); }
  .tmp-home h2 { font-size: clamp(37.6px,7.8vw,52.8px); }
  .tmp-home .tmp-eyebrow { font-size: 10.88px; margin-bottom: 16px; }
  .tmp-home .tmp-hero { padding-top: 24px; }
  .tmp-home .tmp-hero__grid { grid-template-columns: 1fr; gap: 16px; }
  .tmp-home .tmp-hero__copy { padding: 16px 0; }
  .tmp-home .tmp-hero .tmp-lead { font-size: 16.64px; margin-top: 21.6px; }
  .tmp-home .tmp-hero .tmp-actions { margin-top: 24px; }
  .tmp-home .tmp-hero__visual { min-height: 0; aspect-ratio: 1.15/1; border-radius: 20px; }
  .tmp-home .tmp-hero__visual figcaption { left: 24px; right: 24px; bottom: 24px; }
  .tmp-home .tmp-hero__visual figcaption > span:last-child { font-size: 28px; }
  .tmp-home .tmp-hero__image-tag { left: 16px; top: 16px; }
  .tmp-home .tmp-trust-strip { grid-template-columns: 1fr; gap: 16px; margin-top: 32px; padding: 24px 0; }
  .tmp-home .tmp-trust-strip li + li { padding-left: 0; border: 0; }
  .tmp-home :is(.tmp-funding__grid,.tmp-faq__grid,.tmp-contact__grid,.tmp-newsletter__grid) { grid-template-columns: 1fr; gap: 40px; }
  .tmp-home .tmp-funding__range { border-left: 0; border-top: 1px solid var(--tmp-line); padding: 32px 0 0; }
  .tmp-home .tmp-funding__number { font-size: clamp(41.6px,8.4vw,57.6px); }
  .tmp-home .tmp-section-heading { display: block; margin-bottom: 32px; }
  .tmp-home .tmp-section-heading > :is(a,p) { margin-top: 24px; max-width: 100%; }
  .tmp-home .tmp-service-grid { grid-template-columns: 1fr; gap: 20px; }
  .tmp-home .tmp-service-card__copy { padding: 24px; }
  .tmp-home .tmp-service-card h3 { max-width: 22ch; font-size: 32px; }
  .tmp-home .tmp-card-arrow { right: 20.8px; top: 20.8px; width: 40px; height: 40px; }
  .tmp-home .tmp-service-card__image { aspect-ratio: 2/1; margin: auto 12.8px 12.8px; }
  .tmp-home .tmp-services__help { text-align: left; }
  .tmp-home .tmp-quote-grid { grid-template-columns: 1fr; }
  .tmp-home .tmp-quote { min-height: 0; padding: 28px; }
  .tmp-home .tmp-quote blockquote { font-size: 25.6px; }
  .tmp-home .tmp-video-grid { grid-template-columns: 1fr; gap: 32px; }
  .tmp-home .tmp-radio { display: grid; gap: 24px; padding: 22.4px; }
  .tmp-home .tmp-radio__player { width: 100%; }
  .tmp-home .tmp-media-logos { flex-direction: column; align-items: start; gap: 20px; }
  .tmp-home .tmp-media-logos p { flex: 0 1 auto; }
  .tmp-home .tmp-contact h2 { font-size: clamp(44.8px,9.8vw,67.2px); }
  .tmp-home .tmp-conversation { padding: 24px; }
  .tmp-home .tmp-footer__grid { grid-template-columns: 1fr; gap: 32px; }
  .tmp-home .tmp-footer__grid > nav ul { display: block; }
  .tmp-home .tmp-footer li a { min-height: 44px; }
  .tmp-home .tmp-footer__bottom { align-items: flex-start; flex-direction: column; gap: 9.6px; }
}
@media (max-width: 460px) {
  .tmp-home .tmp-situation-groups { grid-template-columns: 1fr; gap: 32px; }
  .tmp-home .tmp-form-row { grid-template-columns: 1fr; }
  .tmp-home .tmp-button { width: 100%; }
  .tmp-home .tmp-service-card h3 { font-size: 28.8px; }
  .tmp-home .tmp-hero .tmp-eyebrow { max-width: 26ch; }
  .tmp-home .tmp-newsletter__choices { flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  .tmp-home *, .tmp-home *::before, .tmp-home *::after { transition: none; animation: none; scroll-behavior: auto; }
}
@media (forced-colors: active) {
  .tmp-home :is(.tmp-button,.tmp-service-card,.tmp-quote,.tmp-conversation) { border: 1px solid CanvasText; }
}

/* Standalone adaptation of roar-nav-08 for The Mortgage Providers.
   Load after theme.css/custom.css. No Bootstrap, icon font, or Roar runtime required.
   Explicit px type avoids the legacy theme's changing root font size. */
.tmp-nav08 {
  --nav08-ink: #142341;
  --nav08-soft: #eff0f8;
  --nav08-line: #d8dce7;
  position: relative;
  z-index: 2000;
  width: 100%;
  padding: 16px;
  margin: 0;
  border: 0;
  background: #f2f2fa;
  color: var(--nav08-ink);
  font: 400 15px/1.5 "Google Sans", "Segoe UI", Arial, sans-serif;
  text-align: left;
  color-scheme: light;
}
.tmp-nav08[data-enhanced] { position: sticky; top: 0; }
.tmp-nav08 *, .tmp-nav08 *::before, .tmp-nav08 *::after { box-sizing: border-box; }
.tmp-nav08 [hidden] { display: none !important; }
.tmp-nav08 :is(ul,p) { margin: 0; padding: 0; }
.tmp-nav08 ul { list-style: none; }
.tmp-nav08 li { margin: 0; padding: 0; list-style: none; }
.tmp-nav08 a { color: inherit; font: inherit; text-decoration: none; opacity: 1; }
.tmp-nav08 button {
  appearance: none; display: inline-flex; align-items: center; justify-content: space-between;
  gap: 10px; min-height: 44px; margin: 0; padding: 10px 12px; border: 0;
  border-radius: 12px; background: transparent; color: inherit;
  font: inherit; font-weight: 600; line-height: 1.4; letter-spacing: 0;
  text-transform: none; box-shadow: none; cursor: pointer;
}
.tmp-nav08 :is(a,button):focus-visible { outline: 3px solid #335fc2; outline-offset: 3px; }
.tmp-nav08 :is(a,button) { -webkit-tap-highlight-color: transparent; }
.tmp-nav08 .tmp-nav08__shell { position: relative; display: block; width: min(100%,1440px); margin: 0 auto; padding: 0 20px; border: 1px solid #e4e6ee; border-radius: 24px; background: #fff; }
.tmp-nav08 .tmp-nav08__bar { position: relative; min-height: 76px; padding: 12px 0; }
.tmp-nav08 .tmp-nav08__brand { display: inline-flex; align-items: center; flex: 0 0 auto; min-height: 48px; }
.tmp-nav08 .tmp-nav08__brand img { display: block; width: 238px; max-width: 100%; height: auto; margin: 0; padding: 0; border: 0; }
.tmp-nav08 .tmp-nav08__skip { position: absolute; z-index: 5; top: 8px; left: 20px; padding: 12px 18px; border-radius: 10px; background: #fff; transform: translateY(-180%); font-weight: 600; }
.tmp-nav08 .tmp-nav08__skip:focus { transform: translateY(0); }
.tmp-nav08 .tmp-nav08__toggle, .tmp-nav08 .tmp-nav08__disclosure, .tmp-nav08 .tmp-nav08__mobile-head { display: none; }
.tmp-nav08 .tmp-nav08__toggle svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; flex: 0 0 auto; }
.tmp-nav08 .tmp-nav08__fallback-label { display: block; padding: 12px 0 4px; font-weight: 700; }
.tmp-nav08 .tmp-nav08__panel { padding: 16px 0; }
.tmp-nav08 .tmp-nav08__submenu a { display: flex; align-items: center; min-height: 44px; padding: 10px 12px; border-radius: 8px; font-size: 14px; line-height: 1.45; overflow-wrap: break-word; }
.tmp-nav08 .tmp-nav08__link { display: flex; align-items: center; min-height: 44px; padding: 10px 12px; border-radius: 12px; font-size: 14px; font-weight: 600; line-height: 1.4; }
.tmp-nav08 :is(.tmp-nav08__link,.tmp-nav08__submenu a,button):hover,
.tmp-nav08 .tmp-nav08__disclosure[aria-expanded="true"] { background: var(--nav08-soft); }
.tmp-nav08 .tmp-nav08__caret { width: 7px; height: 7px; border: solid currentColor; border-width: 0 1.5px 1.5px 0; transform: translateY(-2px) rotate(45deg); flex: 0 0 auto; }
.tmp-nav08 [aria-expanded="true"] .tmp-nav08__caret { transform: translateY(2px) rotate(225deg); }
.tmp-nav08 .tmp-nav08__apply { display: inline-flex; align-items: center; justify-content: center; gap: 20px; min-height: 44px; padding: 11px 22px; border-radius: 99px; background: #142341; color: #fff; font-size: 14px; font-weight: 650; line-height: 1.4; white-space: nowrap; }
.tmp-nav08 .tmp-nav08__apply:hover { background: #263e6a; }
.tmp-nav08 .tmp-nav08__apply span { font-size: 19px; line-height: 1; }
.tmp-nav08 .tmp-nav08__phones { margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--nav08-line); }
.tmp-nav08 .tmp-nav08__phones p { margin-bottom: 6px; color: #566077; font-size: 12px; }
.tmp-nav08 .tmp-nav08__phones a { display: block; min-height: 44px; padding-block: 10px; font-size: 14px; font-weight: 600; }
.tmp-nav08[data-enhanced] .tmp-nav08__fallback-label { display: none; }
.tmp-nav08[data-enhanced] .tmp-nav08__disclosure { display: inline-flex; font-size: 14px; }
@media (min-width: 1100px) {
  .tmp-nav08[data-enhanced] .tmp-nav08__bar { display: flex; align-items: center; }
  .tmp-nav08[data-enhanced] .tmp-nav08__panel { display: flex; align-items: center; flex: 1; min-width: 0; gap: 12px; margin-left: 20px; padding: 0; }
  .tmp-nav08[data-enhanced] .tmp-nav08__list { display: flex; align-items: center; gap: 0; }
  .tmp-nav08[data-enhanced] .tmp-nav08__item { position: relative; }
  .tmp-nav08[data-enhanced] .tmp-nav08__item--services { position: static; }
  .tmp-nav08[data-enhanced] .tmp-nav08__actions { margin-left: auto; }
  .tmp-nav08[data-enhanced] .tmp-nav08__home, .tmp-nav08[data-enhanced] .tmp-nav08__phones { display: none; }
  .tmp-nav08[data-enhanced] .tmp-nav08__submenu { position: absolute; z-index: 2; top: calc(100% + 8px); left: 0; width: 260px; padding: 14px; border: 1px solid #e5e7ed; border-radius: 16px; background: #fff; box-shadow: 0 12px 32px rgb(20 35 65 / 12%); max-height: calc(100dvh - 132px); overflow-y: auto; overscroll-behavior: contain; }
  .tmp-nav08[data-enhanced] .tmp-nav08__submenu--services { top: calc(100% + 4px); left: 50%; width: min(900px,100%); transform: translateX(-50%); }
  .tmp-nav08[data-enhanced] .tmp-nav08__submenu--services ul { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 4px 14px; }
}
@media (width < 1100px) {
  .tmp-nav08 { padding: 10px; }
  .tmp-nav08 .tmp-nav08__shell { padding: 0 14px; border-radius: 20px; }
  .tmp-nav08 .tmp-nav08__bar { min-height: 64px; padding: 8px 0; }
  .tmp-nav08 .tmp-nav08__brand img { width: clamp(160px,40vw,238px); }
  .tmp-nav08[data-enhanced] .tmp-nav08__bar { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
  .tmp-nav08[data-enhanced] .tmp-nav08__toggle { display: inline-flex; flex: 0 0 auto; padding: 10px; font-size: 14px; }
  .tmp-nav08[data-menu-open]::before { content: ""; position: fixed; inset: 0; background: rgb(12 24 45 / 45%); }
  .tmp-nav08[data-enhanced] .tmp-nav08__panel { position: fixed; z-index: 3; inset: 12px; padding: 20px; margin: 0; border: 1px solid #d8dce7; border-radius: 24px; background: #fff; max-height: calc(100dvh - 24px); overflow-y: auto; overscroll-behavior: contain; }
  .tmp-nav08[data-enhanced] .tmp-nav08__mobile-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--nav08-line); }
  .tmp-nav08[data-enhanced] .tmp-nav08__mobile-head { position: sticky; top: -20px; z-index: 1; margin-top: -20px; padding-top: 20px; background: #fff; }
  .tmp-nav08 .tmp-nav08__mobile-head p { font-size: 18px; font-weight: 650; }
  .tmp-nav08 .tmp-nav08__close { font-size: 13px; }
  .tmp-nav08 .tmp-nav08__close span { font-size: 25px; font-weight: 400; line-height: 1; }
  .tmp-nav08[data-enhanced] :is(.tmp-nav08__link,.tmp-nav08__disclosure) { width: 100%; min-height: 48px; padding: 12px; font-size: 16px; }
  .tmp-nav08 .tmp-nav08__submenu { margin: 4px 0 10px; padding: 8px; border-radius: 12px; background: #f5f5fa; }
  .tmp-nav08 .tmp-nav08__actions { margin-top: 20px; }
  .tmp-nav08 .tmp-nav08__apply { width: 100%; min-height: 48px; }
}
/* Homepage bridge: this header occupies space in normal flow. These rules undo
   only the old fixed-header offsets while this replacement header is present.
   The !important on the hero overrides the live inline padding-top:170px. */
.tmp-nav08 ~ .main-container #tmp-home { --tmp-anchor-offset: 126px; margin-top: 0; padding-top: 0; }
.tmp-nav08 ~ .main-container #tmp-home .tmp-hero { padding-top: 51.2px !important; }
@media (width < 1100px) { .tmp-nav08 ~ .main-container #tmp-home { --tmp-anchor-offset: 106px; } }
@media (max-width: 760px) { .tmp-nav08 ~ .main-container #tmp-home .tmp-hero { padding-top: 24px !important; } }
@media (forced-colors: active) { .tmp-nav08 .tmp-nav08__apply { border: 1px solid ButtonText; } }
@media (prefers-reduced-motion: reduce) { .tmp-nav08 *, .tmp-nav08 *::before, .tmp-nav08 *::after { scroll-behavior: auto; transition: none; } }
