
:root{
  --navy:#071d2c;
  --navy-2:#0d2d43;
  --blue:#176fa9;
  --blue-2:#2d8bc1;
  --green:#2e7d4f;
  --gold:#c69b45;
  --ink:#172536;
  --muted:#627080;
  --line:#dce4ea;
  --mist:#f5f8fa;
  --white:#ffffff;
  --shadow:0 18px 55px rgba(7,29,44,.12);
  --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.topbar{background:var(--navy);color:#dce8ef;font-size:.92rem}
.topbar .container{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:9px 0}
.topbar-links{display:flex;gap:18px;flex-wrap:wrap}
.topbar a:hover{text-decoration:underline}
.header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(7,29,44,.08)}
.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;min-width:max-content}
.brand-mark{width:44px;height:44px;border-radius:12px;background:linear-gradient(145deg,var(--navy),var(--blue));position:relative;overflow:hidden;box-shadow:0 7px 20px rgba(7,29,44,.18)}
.brand-mark:before,.brand-mark:after{content:"";position:absolute;background:white;opacity:.94;transform:rotate(-45deg);border-radius:2px}
.brand-mark:before{width:41px;height:5px;left:6px;top:15px}
.brand-mark:after{width:28px;height:5px;left:19px;top:25px}
.brand-name{font-weight:800;letter-spacing:-.02em;font-size:1.12rem;color:var(--navy);line-height:1.05}
.brand-sub{font-size:.78rem;color:var(--blue);font-weight:800;text-transform:uppercase;letter-spacing:.13em;margin-top:4px}
.nav-links{display:flex;align-items:center;gap:24px;font-size:.93rem;font-weight:700;color:#334457}
.nav-links a{padding:29px 0;position:relative}
.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:19px;height:2px;background:var(--blue);transform:scaleX(0);transition:.2s}
.nav-links a:hover:after,.nav-links a.active:after{transform:scaleX(1)}
.nav-actions{display:flex;align-items:center;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 19px;border-radius:9px;font-weight:800;font-size:.92rem;border:1px solid transparent;transition:.2s;cursor:pointer}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--blue);color:white;box-shadow:0 8px 24px rgba(23,111,169,.2)}
.btn-primary:hover{background:#0e5f97}
.btn-outline{border-color:#b9c9d3;color:var(--navy);background:#fff}
.btn-outline:hover{border-color:var(--blue);color:var(--blue)}
.btn-dark{background:var(--navy);color:#fff}
.menu-btn{display:none;border:0;background:none;font-size:1.55rem;color:var(--navy);cursor:pointer}
.hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#071d2c 0%,#0e314a 56%,#0a4669 100%);color:white}
.hero:before{content:"";position:absolute;inset:auto -10% -45% 35%;height:100%;background:radial-gradient(circle at center,rgba(95,181,223,.3),transparent 63%);transform:rotate(-7deg)}
.hero-grid{min-height:610px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:55px;position:relative}
.eyebrow{color:#75c4ea;font-weight:800;text-transform:uppercase;letter-spacing:.13em;font-size:.78rem}
.hero h1{font-size:clamp(3.1rem,6vw,5.7rem);line-height:.93;letter-spacing:-.055em;margin:14px 0 22px;max-width:720px}
.hero h1 span{color:#8ed7f4}
.hero-copy{font-size:1.13rem;max-width:690px;color:#e2edf3}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 22px}
.hero .btn{padding:15px 22px}
.hero-note{font-size:.93rem;color:#bcd0dc;display:flex;gap:12px;align-items:center}
.hero-note .dot{width:8px;height:8px;border-radius:50%;background:#78d0a0;box-shadow:0 0 0 7px rgba(120,208,160,.11)}
.portrait-wrap{align-self:end;display:flex;justify-content:center;position:relative}
.portrait-card{width:min(470px,100%);border-radius:190px 190px 26px 26px;overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 32px 80px rgba(0,0,0,.28);background:#132f43}
.portrait-card img{width:100%;height:560px;object-fit:cover;object-position:center 15%}
.hero-id{position:absolute;right:0;bottom:38px;background:rgba(7,29,44,.86);padding:14px 18px;border:1px solid rgba(255,255,255,.15);border-radius:12px;backdrop-filter:blur(8px)}
.hero-id strong{display:block;font-size:1.02rem}.hero-id span{font-size:.85rem;color:#c7d8e2}
.trust-strip{border-bottom:1px solid var(--line);background:white}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.trust-item{padding:20px 22px;border-right:1px solid var(--line)}
.trust-item:last-child{border-right:0}
.trust-item strong{display:block;color:var(--navy);font-size:.98rem}.trust-item span{font-size:.85rem;color:var(--muted)}
.section{padding:86px 0}
.section-tight{padding:62px 0}
.section-alt{background:var(--mist)}
.section-dark{background:var(--navy);color:white}
.section-head{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:38px}
.section-head h2,.page-hero h1{font-size:clamp(2.1rem,4vw,3.55rem);line-height:1.03;letter-spacing:-.04em;margin:8px 0 0;color:var(--navy)}
.section-dark .section-head h2{color:#fff}
.section-head p{max-width:650px;color:var(--muted);margin:0}
.section-dark .section-head p{color:#b9ced9}
.kicker{font-size:.78rem;text-transform:uppercase;letter-spacing:.15em;font-weight:900;color:var(--blue)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 7px 28px rgba(7,29,44,.05)}
.card h3{margin:8px 0 8px;color:var(--navy);font-size:1.18rem}
.card p{margin:0;color:var(--muted)}
.card .icon{width:46px;height:46px;border-radius:14px;background:#e9f5fb;color:var(--blue);display:grid;place-items:center;font-weight:900;font-size:1.2rem}
.specialty{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.specialty .card{padding:23px 20px}
.specialty .card h3{font-size:1rem}
.specialty .card p{font-size:.88rem}
.statement{background:var(--navy);color:white;border-radius:26px;padding:42px;display:grid;grid-template-columns:1.15fr .85fr;gap:35px;align-items:center;box-shadow:var(--shadow)}
.statement h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.02;letter-spacing:-.04em;margin:0 0 16px}.statement p{color:#c6d8e3;margin:0}
.statement .highlight{color:#81cde9}
.checks{display:grid;gap:12px}.check{display:flex;gap:12px;align-items:flex-start;color:#e6f0f5}.check:before{content:"✓";width:25px;height:25px;border-radius:50%;background:#164c6b;display:grid;place-items:center;color:#8dd9f3;font-weight:900;flex:0 0 auto}
.process{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;counter-reset:step}
.step{position:relative;padding:33px 28px 28px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.step:before{counter-increment:step;content:counter(step);position:absolute;top:-18px;left:28px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:white;font-weight:900;box-shadow:0 6px 18px rgba(23,111,169,.25)}
.step h3{color:var(--navy);margin:10px 0 7px}.step p{margin:0;color:var(--muted)}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.review{border:1px solid var(--line);border-radius:var(--radius);padding:27px;background:white;display:flex;flex-direction:column;min-height:290px}
.review .stars{color:#e0a328;letter-spacing:.08em;font-size:1.08rem}.review blockquote{margin:14px 0 20px;font-size:.98rem;color:#344457;flex:1}.review footer{border:0;padding:0;background:none;color:var(--navy)}.review footer strong{display:block}.review footer span{font-size:.82rem;color:var(--muted)}
.awards{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.badges{display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap}.badges img{max-height:145px;width:auto;object-fit:contain}.badges .aime{max-width:320px;max-height:100px}
.profile{display:grid;grid-template-columns:.75fr 1.25fr;gap:48px;align-items:center}
.profile-photo{border-radius:28px;overflow:hidden;box-shadow:var(--shadow);background:#eee}.profile-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top}
.profile h2{font-size:clamp(2.2rem,4vw,3.45rem);line-height:1.02;letter-spacing:-.04em;color:var(--navy);margin:10px 0 20px}.profile p{color:#526273}
.personal-tags{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0}.tag{padding:7px 11px;background:#eaf3f8;color:#315a72;border-radius:999px;font-size:.82rem;font-weight:700}
.page-hero{background:linear-gradient(120deg,#eef6fa,#fff);border-bottom:1px solid var(--line);padding:70px 0}.page-hero p{max-width:760px;color:var(--muted);font-size:1.08rem}
.page-hero .eyebrow{color:var(--blue)}
.copy{max-width:860px}.copy h2{color:var(--navy);margin-top:36px}.copy p,.copy li{color:#526273}
.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.program{padding:25px;border:1px solid var(--line);border-radius:16px;background:#fff}.program h3{margin:0 0 8px;color:var(--navy)}.program p{margin:0;color:var(--muted);font-size:.94rem}
.cta{background:linear-gradient(120deg,var(--navy),#0a3d5b);border-radius:24px;padding:40px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:28px}.cta h2{margin:0 0 8px;font-size:2rem}.cta p{margin:0;color:#c5d9e4}.cta .btn-outline{border-color:#6e91a6;color:white;background:transparent}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-card{border:1px solid var(--line);border-radius:var(--radius);padding:30px;background:#fff}.contact-card h2{color:var(--navy);margin-top:0}.contact-list{display:grid;gap:14px}.contact-row{display:flex;gap:14px}.contact-row strong{display:block;color:var(--navy)}.contact-row span,.contact-row a{color:var(--muted)}
.faq{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;border:0;background:none;padding:22px 0;display:flex;justify-content:space-between;gap:20px;text-align:left;color:var(--navy);font-weight:800;cursor:pointer}.faq-a{display:none;padding:0 0 22px;color:var(--muted);max-width:900px}.faq-item.open .faq-a{display:block}.faq-item.open .faq-q span:last-child{transform:rotate(45deg)}
.site-footer{background:#031923;color:#9cb0ba;margin-top:80px;padding:38px 0 28px}.footer-top{border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13);padding:28px 0;display:grid;grid-template-columns:115px 1fr;gap:28px;align-items:center}.footer-eho{width:95px;filter:invert(1);opacity:.78}.footer-links{display:flex;gap:16px;flex-wrap:wrap;font-weight:700;color:#c7d6dd}.footer-meta{margin-top:12px;color:#8da4af}.footer-legal{text-align:center;padding:28px 0 12px;font-size:.9rem;line-height:1.6}.footer-legal p{margin:0 auto 17px;max-width:1120px}.footer-badges{display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap;margin:18px 0 4px}.footer-badges img{height:86px;width:auto;object-fit:contain}.footer-badges img:first-child{height:95px}
.excel-mark{display:flex;align-items:center;gap:14px;margin-top:22px}.excel-mark img{width:180px;height:auto;opacity:.88}.excel-mark span{font-size:.87rem;color:#6d7c8a}
.small{font-size:.82rem;color:var(--muted)}
.list-clean{padding-left:18px}.list-clean li{margin-bottom:8px}
@media(max-width:1050px){.nav-links{gap:16px}.nav-actions .btn-outline{display:none}.specialty{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr .8fr}.portrait-card img{height:500px}}
@media(max-width:850px){.menu-btn{display:block}.nav-links{position:absolute;top:100%;left:0;right:0;background:#fff;display:none;flex-direction:column;align-items:flex-start;padding:18px 24px 26px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.nav-links.open{display:flex}.nav-links a{padding:7px 0}.nav-links a:after{bottom:1px}.nav-actions .btn-primary{display:none}.hero-grid{grid-template-columns:1fr;min-height:auto;padding-top:70px}.portrait-wrap{margin-top:-8px}.portrait-card{max-width:480px}.hero-id{right:8%;bottom:22px}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.grid-3,.review-grid,.process,.program-grid{grid-template-columns:1fr}.specialty{grid-template-columns:repeat(2,1fr)}.statement,.awards,.profile,.contact-grid{grid-template-columns:1fr}.profile-photo{max-width:480px}.footer-top{grid-template-columns:1fr;text-align:center}.footer-eho{margin:auto}.footer-links{justify-content:center}.excel-mark{justify-content:center}}
@media(max-width:560px){.container{width:min(100% - 28px,1180px)}.topbar .container{align-items:flex-start}.topbar-links{gap:8px 14px}.topbar-links span:nth-child(3){display:none}.brand-sub{display:none}.hero-grid{padding-top:54px}.hero h1{font-size:3rem}.hero-copy{font-size:1rem}.portrait-card img{height:440px}.hero-id{position:static;margin:-66px 15px 18px;z-index:2}.trust-grid{grid-template-columns:1fr}.trust-item{border-right:0!important;border-bottom:1px solid var(--line)!important}.specialty{grid-template-columns:1fr}.section{padding:65px 0}.section-head{align-items:flex-start;flex-direction:column}.statement{padding:30px}.cta{align-items:flex-start;flex-direction:column}.footer-badges img{height:72px}.footer-badges img:first-child{height:82px}}

/* Requested homepage revision */
.home-topbar .container{justify-content:space-between}.top-brand{color:#fff;font-size:1rem;letter-spacing:.02em}.top-right{margin-left:auto;justify-content:flex-end}.phil-brand{display:flex;flex-direction:column;line-height:1;color:var(--navy);min-width:165px}.phil-brand strong{font-family:Georgia,serif;font-size:1.5rem;font-style:italic}.phil-brand span{font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;font-weight:800;margin-top:6px;color:#405566}
.ref-hero{min-height:520px;position:relative;background:linear-gradient(#dcecf3 0 42%,#668c99 42% 58%,#123a4c 58% 100%);overflow:hidden}.ref-hero:before{display:none}.mountains{position:absolute;inset:0;background:linear-gradient(150deg,transparent 0 25%,rgba(48,78,89,.55) 25% 35%,transparent 35% 42%,rgba(230,238,239,.9) 42% 45%,rgba(54,82,92,.9) 45% 56%,transparent 56%),linear-gradient(to bottom,transparent 0 58%,rgba(17,66,83,.8) 58% 100%);clip-path:polygon(0 100%,0 61%,12% 50%,20% 63%,31% 32%,40% 57%,52% 24%,61% 58%,72% 38%,83% 65%,92% 48%,100% 60%,100% 100%)}.ref-grid{min-height:520px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;position:relative;z-index:2}.ref-copy h1{font-size:clamp(3.4rem,6.4vw,6rem);line-height:.9;letter-spacing:-.055em;margin:0 0 22px;text-shadow:0 2px 15px rgba(0,0,0,.22)}.ref-copy p{font-size:1.15rem;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.5)}.ref-copy .btn{border-radius:3px;font-size:.8rem;letter-spacing:.05em}.ref-talk{color:#fff!important;border-color:#fff!important;background:rgba(7,29,44,.3)!important}.ref-photo{align-self:end;justify-self:end;width:min(465px,100%);position:relative}.ref-photo img{height:485px;width:100%;object-fit:cover;object-position:center 10%;border-radius:190px 190px 0 0;box-shadow:0 25px 55px rgba(0,0,0,.22)}.ref-id{position:absolute;right:0;bottom:22px;background:rgba(7,29,44,.82);padding:11px 15px;border-radius:7px}.ref-id strong,.ref-id span{display:block}.ref-id span{font-size:.78rem;color:#c6d9e3}.ref-specialties{background:#fff;border-bottom:1px solid var(--line)}.ref-specialty-grid{display:grid;grid-template-columns:repeat(5,1fr);padding:17px 0;text-align:center}.ref-specialty-grid div{padding:3px 15px;border-right:1px solid var(--line);font-size:.82rem;line-height:1.35;font-weight:800;color:#21415a}.ref-specialty-grid div:last-child{border-right:0}.clear-path{padding:68px 0;background:#f6f8f8}.clear-grid{display:grid;grid-template-columns:1.08fr .92fr;box-shadow:0 10px 36px rgba(7,29,44,.08)}.path-left{background:#0d2735;color:#fff;padding:46px 52px}.path-right{background:#fff;padding:46px 52px;color:#4d5c68}.path-left h2,.path-right h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.1rem);line-height:1.03;margin:0 0 12px}.path-left>p{color:#c3d1d8}.path-step{display:grid;grid-template-columns:38px 1fr;gap:16px;margin:24px 0}.path-step>b{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;border:1px solid #8aa2ad}.path-step strong{display:block}.path-step p{margin:3px 0 0;color:#c0ced5;font-size:.88rem}.path-right h2{color:#183a52}.path-right p{font-family:Georgia,serif;line-height:1.75}.text-link{display:inline-block;margin-top:8px;color:#234e6b;font-weight:900;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em}
@media(max-width:900px){.ref-grid{grid-template-columns:1fr .75fr}.ref-photo img{height:430px}.clear-grid{grid-template-columns:1fr}}@media(max-width:700px){.home-topbar .container{flex-direction:column;gap:6px}.top-right{margin-left:0;justify-content:flex-start}.ref-grid{grid-template-columns:1fr;padding-top:42px}.ref-photo{justify-self:center;width:min(400px,90%)}.ref-photo img{height:420px}.ref-specialty-grid{grid-template-columns:repeat(2,1fr)}.ref-specialty-grid div{border-bottom:1px solid var(--line)}.ref-specialty-grid div:nth-child(even){border-right:0}.ref-specialty-grid div:last-child{grid-column:1/-1}.path-left,.path-right{padding:34px 28px}}


/* ============================================================
   HOME PAGE VISUAL CORRECTION - closely follows supplied mockup
   ============================================================ */

.reference-header{
  background:#fff;
  border-bottom:1px solid #d8e0e7;
  position:sticky;
  top:0;
  z-index:40;
}
.reference-nav{
  min-height:84px;
  display:grid;
  grid-template-columns:320px 1fr auto auto;
  gap:20px;
  align-items:center;
}
.reference-brand img{
  width:300px;
  height:auto;
  display:block;
}
.reference-nav-links{
  justify-self:center;
  display:flex;
  gap:29px;
  align-items:center;
  white-space:nowrap;
  font-size:.86rem;
}
.reference-nav-links a{
  padding:30px 0;
}
.header-apply{
  border-radius:0;
  padding:31px 24px;
  margin-right:-20px;
  letter-spacing:.05em;
}

.reference-photo-hero{
  position:relative;
  min-height:420px;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(5,30,48,.98) 0%,rgba(5,30,48,.88) 31%,rgba(5,30,48,.35) 53%,rgba(5,30,48,.08) 74%,rgba(5,30,48,.18) 100%),
    url("../images/reference-mountain-hero.jpg") center center/cover no-repeat;
  color:#fff;
}
.reference-hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,rgba(0,0,0,.02),rgba(0,0,0,.12));
  pointer-events:none;
}
.reference-photo-grid{
  min-height:420px;
  display:grid;
  grid-template-columns:1.08fr .92fr;
  position:relative;
  z-index:2;
}
.reference-hero-copy{
  padding:48px 0 30px;
  max-width:690px;
  align-self:center;
}
.reference-hero-copy h1{
  font-size:clamp(3.2rem,5.3vw,5.1rem);
  line-height:.98;
  letter-spacing:-.055em;
  margin:0 0 11px;
  color:#fff;
  text-shadow:0 2px 14px rgba(0,0,0,.22);
}
.reference-hero-copy h2{
  font-size:1.08rem;
  margin:0 0 16px;
  color:#18a5ea;
  letter-spacing:.035em;
  font-weight:900;
}
.reference-hero-copy p{
  margin:0;
  max-width:545px;
  color:#f2f6f8;
  font-size:1rem;
  line-height:1.55;
  text-shadow:0 1px 8px rgba(0,0,0,.35);
}
.reference-buttons{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
  margin-top:25px;
}
.reference-buttons .btn{
  border-radius:3px;
  padding:14px 25px;
  font-size:.84rem;
  letter-spacing:.02em;
}
.hero-outline{
  border:2px solid rgba(255,255,255,.95);
  color:#fff;
  background:rgba(7,29,44,.28);
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:800;
}
.reference-trustline{
  margin-top:24px;
  display:flex;
  gap:9px;
  align-items:center;
  font-size:.9rem;
  color:#f1f4f6;
}

.reference-person{
  position:relative;
  align-self:end;
  justify-self:end;
  width:min(560px,100%);
  height:420px;
  overflow:visible;
}
.reference-person img{
  position:absolute;
  right:35px;
  bottom:-20px;
  width:420px;
  height:auto;
  max-width:none;
  filter:drop-shadow(0 20px 28px rgba(0,0,0,.28));
}
.reference-person-label{
  position:absolute;
  right:-4px;
  bottom:53px;
  display:flex;
  flex-direction:column;
  padding:11px 15px;
  background:rgba(5,30,48,.72);
  border-left:2px solid #31a8df;
  border-radius:2px;
  backdrop-filter:blur(5px);
  text-align:left;
}
.reference-person-label strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.45rem;
  font-style:italic;
  font-weight:500;
  line-height:1.1;
}
.reference-person-label span{
  font-size:.82rem;
  line-height:1.35;
  color:#eef4f7;
}

.reference-options{
  background:#fff;
  border-bottom:1px solid #d8e1e8;
}
.reference-broker-message{
  text-align:center;
  padding:19px 0 14px;
}
.reference-broker-message h2{
  margin:0;
  font-size:1.4rem;
  color:#09233a;
  letter-spacing:-.02em;
}
.reference-broker-message h2 span{
  color:#1474b4;
}
.reference-broker-message p{
  margin:3px 0 0;
  font-size:.86rem;
  color:#5d6a77;
}
.reference-option-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  padding:8px 0 24px;
}
.reference-option{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:13px;
  align-items:start;
  padding:6px 21px;
  border-right:1px solid #dce3e9;
}
.reference-option:last-child{
  border-right:0;
}
.reference-icon{
  width:43px;
  height:43px;
  display:grid;
  place-items:center;
  font-size:1.7rem;
  color:#0e4977;
  font-weight:900;
}
.reference-option strong{
  display:block;
  color:#0d2941;
  font-size:.87rem;
  margin-bottom:2px;
}
.reference-option p{
  margin:0;
  color:#536273;
  font-size:.77rem;
  line-height:1.45;
}

.reference-lower{
  background:#f7f8f8;
  padding:0;
}
.reference-lower-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:280px;
}
.reference-process{
  background:#fff;
  padding:34px 43px 30px;
  border-right:1px solid #dfe5e8;
}
.reference-about{
  background:#fff;
  padding:34px 48px 30px;
}
.reference-small-label{
  color:#176fa9;
  font-weight:900;
  font-size:.72rem;
  letter-spacing:.13em;
}
.reference-process h2,
.reference-about h2{
  margin:4px 0 19px;
  color:#0e2a43;
  font-size:1.65rem;
  line-height:1.07;
  letter-spacing:-.025em;
}
.reference-process h2 span{
  color:#1476b9;
}
.reference-steps{
  display:grid;
  grid-template-columns:1fr 58px 1fr 58px 1fr;
  align-items:start;
  gap:5px;
}
.reference-step{
  text-align:center;
}
.step-num{
  width:43px;
  height:43px;
  margin:0 auto 9px;
  border-radius:50%;
  background:#1977b8;
  color:#fff;
  display:grid;
  place-items:center;
  font-weight:900;
  font-size:1.05rem;
}
.reference-step strong{
  color:#102b43;
  font-size:.93rem;
}
.reference-step p{
  margin:5px auto 0;
  max-width:180px;
  color:#566574;
  font-size:.76rem;
  line-height:1.45;
}
.step-line{
  height:1px;
  background:#bec9d1;
  margin-top:21px;
}
.reference-about p{
  margin:0 0 12px;
  color:#536273;
  font-size:.88rem;
  line-height:1.55;
}
.reference-script{
  color:#176fa9!important;
  font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:1.38rem!important;
  line-height:1.1!important;
  margin:12px 0 14px!important;
  transform:rotate(-1deg);
}
.reference-about .btn{
  border-radius:3px;
  font-size:.8rem;
  padding:11px 18px;
}

@media(max-width:1180px){
  .reference-nav{
    grid-template-columns:270px 1fr auto auto;
  }
  .reference-brand img{width:255px}
  .reference-nav-links{gap:18px;font-size:.8rem}
  .reference-person img{right:20px;width:390px}
  .reference-option{padding:6px 12px}
}

@media(max-width:940px){
  .reference-nav{
    grid-template-columns:1fr auto auto;
  }
  .reference-nav-links{
    position:absolute;
    left:0; right:0; top:100%;
    display:none;
    background:#fff;
    padding:18px 24px 25px;
    flex-direction:column;
    align-items:flex-start;
    box-shadow:0 15px 30px rgba(7,29,44,.12);
  }
  .reference-nav-links.open{display:flex}
  .reference-nav-links a{padding:6px 0}
  .header-apply{margin-right:0;padding:13px 18px;border-radius:6px}
  .menu-btn{display:block}
  .reference-photo-grid{grid-template-columns:1fr .72fr}
  .reference-person img{right:-10px;width:365px}
  .reference-person-label{display:none}
  .reference-option-grid{grid-template-columns:repeat(2,1fr)}
  .reference-option{border-bottom:1px solid #e1e6ea}
  .reference-option:nth-child(even){border-right:0}
  .reference-option:last-child{grid-column:1/-1}
  .reference-lower-grid{grid-template-columns:1fr}
  .reference-process{border-right:0;border-bottom:1px solid #dfe5e8}
}

@media(max-width:680px){
  .reference-brand img{width:225px}
  .header-apply{display:none}
  .reference-photo-hero{
    min-height:auto;
    background-position:center center;
  }
  .reference-photo-grid{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .reference-hero-copy{
    padding:48px 0 18px;
  }
  .reference-hero-copy h1{
    font-size:3.3rem;
  }
  .reference-hero-copy h2{
    font-size:.92rem;
  }
  .reference-person{
    width:100%;
    height:340px;
    justify-self:center;
  }
  .reference-person img{
    width:340px;
    right:50%;
    transform:translateX(50%);
    bottom:-18px;
  }
  .reference-option-grid{grid-template-columns:1fr}
  .reference-option{
    border-right:0;
  }
  .reference-option:last-child{grid-column:auto}
  .reference-broker-message h2{font-size:1.18rem}
  .reference-steps{
    grid-template-columns:1fr;
    gap:18px;
  }
  .step-line{display:none}
  .reference-process,.reference-about{padding:31px 26px}
}

/* FINAL approved homepage visual */
.approved-home-top{position:relative;width:100%;max-width:1536px;margin:0 auto;background:#fff;line-height:0}
.approved-home-top>img{display:block;width:100%;height:auto}
.hotspot{position:absolute;display:block;z-index:6;background:transparent}
.hotspot:focus{outline:3px solid #25a5e6;outline-offset:2px}
.hs-phone{left:50.7%;top:0%;width:9.2%;height:4.4%}
.hs-email{left:60.5%;top:0%;width:11.8%;height:4.4%}
.hs-nmls{left:79.2%;top:0%;width:10%;height:4.4%}
.hs-apply{left:89.2%;top:0%;width:9.7%;height:4.4%}
.hs-home{left:37.7%;top:4.5%;width:5.2%;height:7.5%}
.hs-buy{left:43.5%;top:4.5%;width:7.5%;height:7.5%}
.hs-refi{left:52%;top:4.5%;width:7.8%;height:7.5%}
.hs-options{left:60.7%;top:4.5%;width:8.9%;height:7.5%}
.hs-about{left:71.7%;top:4.5%;width:7.8%;height:7.5%}
.hs-resources{left:80.4%;top:4.5%;width:8.4%;height:7.5%}
.hs-contact{left:89.2%;top:4.5%;width:7.8%;height:7.5%}
.hs-start{left:4.7%;top:40.1%;width:16.2%;height:5.5%}
.hs-talk{left:22.2%;top:40.1%;width:13%;height:5.5%}
.hs-more{left:56.2%;top:93.1%;width:13%;height:4.5%}

.homepage-lower{margin-top:0}
body:has(.approved-home-top)>.topbar,body:has(.approved-home-top)>.header{display:none!important}
@media(max-width:760px){
  .approved-home-top{overflow-x:auto;max-width:none}
  .approved-home-top>img{width:1100px;max-width:none}
}

/* Shared blue + white banners for every subpage — 2026-09-04 */
.site-shared-topbar{background:#06345f;color:#fff;font-family:Inter,Arial,sans-serif}
.site-shared-inner{width:min(1460px,calc(100% - 48px));margin:0 auto}
.site-shared-topbar .site-shared-inner{height:45px;display:flex;align-items:center;justify-content:space-between}
.shared-wordmark{font-family:"Brush Script MT","Segoe Script",cursive;color:#fff;font-size:1.55rem;line-height:1;white-space:nowrap}
.shared-contact{display:flex;align-items:center;gap:24px;font-size:.77rem;white-space:nowrap}
.shared-contact a,.shared-contact span{color:#fff}
.shared-apply{align-self:stretch;display:flex!important;align-items:center;padding:0 25px;background:#087dc8;font-weight:900;letter-spacing:.04em;margin-right:-24px}
.site-shared-whitebar{background:#fff;border-bottom:1px solid #d9e1e7}
.shared-nav-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.shared-phil-brand{display:flex;align-items:center;gap:11px;color:#092c50;line-height:1}
.shared-phil-brand>span:last-child{display:flex;flex-direction:column}
.shared-phil-brand strong{font-size:1.6rem;letter-spacing:-.025em}
.shared-phil-brand small{font-size:.75rem;letter-spacing:.14em;color:#087bc6;font-weight:900;margin-top:5px}
.shared-mountain{font-size:2.8rem;color:#0b416d;line-height:.7;transform:scaleX(1.45)}
.shared-nav{display:flex;align-items:center;gap:25px;font-size:.72rem;font-weight:800;white-space:nowrap}
.shared-nav a{color:#0c2946;padding:31px 0 27px}
.shared-nav a:hover{color:#087bc6}
@media(max-width:1180px){
 .shared-contact{gap:12px;font-size:.68rem}
 .shared-nav{gap:13px;font-size:.65rem}
 .shared-phil-brand strong{font-size:1.35rem}
}
@media(max-width:850px){
 .site-shared-topbar .site-shared-inner{height:auto;min-height:45px;padding:8px 0;align-items:flex-start;gap:8px}
 .shared-contact{flex-wrap:wrap;justify-content:flex-end}
 .shared-apply{align-self:auto;padding:6px 10px;margin-right:0}
 .shared-nav-inner{height:auto;padding:13px 0;align-items:flex-start;flex-direction:column}
 .shared-nav{flex-wrap:wrap;gap:7px 17px}
 .shared-nav a{padding:4px 0}
}
@media(max-width:600px){
 .site-shared-inner{width:min(100% - 28px,1460px)}
 .site-shared-topbar .site-shared-inner{flex-direction:column}
 .shared-contact{justify-content:flex-start}
}
