/* ═══════════════════════════════════════
   BRAD PAYNE — EDGE HOME FINANCE
   Global Stylesheet
═══════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --navy:#1E2B5E;--navy-deep:#0D1626;--navy-mid:#2a3a7a;
  --edge-blue:#4A78B8;--edge-steel:#7B9EC4;--edge-pale:#C8D9ED;--edge-lightest:#EBF2F9;
  --marsh:#5C7A5A;--sand:#E8DCC8;--sand-light:#F5EFE4;
  --white:#fff;--off-white:#F7F9FC;--gray-light:#DDE5EF;--gray-text:#5A6B82;
  --dark:#0D1626;--green:#2E7D4F;
  --serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',sans-serif;
}
body{font-family:var(--sans);color:var(--dark);background:var(--white);line-height:1.6;font-size:16px;}
img{display:block;}
a{color:inherit;}

/* ── NAV ── */
nav{background:var(--navy-deep);display:flex;align-items:center;justify-content:space-between;padding:0 5%;height:72px;border-bottom:3px solid var(--edge-blue);position:sticky;top:0;z-index:200;}
.logo-wrap{display:flex;align-items:center;gap:14px;}
.logo-img{height:40px;background:white;padding:4px 10px;border-radius:5px;object-fit:contain;}
.logo-divider{width:1px;height:28px;background:rgba(255,255,255,.15);}
.logo-tagline{font-size:10.5px;color:var(--edge-pale);letter-spacing:1.5px;text-transform:uppercase;line-height:1.35;}
.nav-links{display:flex;gap:24px;list-style:none;align-items:center;}
.nav-links a{color:rgba(255,255,255,.7);text-decoration:none;font-size:13.5px;font-weight:400;transition:all .2s;padding:4px 0;border-bottom:2px solid transparent;}
.nav-links a:hover,.nav-links a.active{color:white;border-bottom-color:var(--edge-blue);}
.nav-cta{background:var(--edge-blue);color:white!important;padding:9px 22px;border-radius:4px;font-weight:500!important;border-bottom:none!important;}
.nav-cta:hover{background:var(--navy-mid)!important;}
.nav-hamburger{display:none;background:none;border:none;color:white;font-size:22px;cursor:pointer;}
.mobile-nav{display:none;position:fixed;top:72px;left:0;right:0;background:var(--navy-deep);z-index:199;flex-direction:column;border-top:1px solid rgba(255,255,255,.1);}
.mobile-nav.open{display:flex;}
.mobile-nav a{color:rgba(255,255,255,.8);text-decoration:none;padding:14px 5%;font-size:15px;border-bottom:1px solid rgba(255,255,255,.07);}
.mobile-nav a:hover{color:white;background:rgba(255,255,255,.05);}
.mobile-nav-cta{background:var(--edge-blue)!important;color:white!important;text-align:center;font-weight:600;}

/* ── BUTTONS ── */
.btn-primary{background:var(--edge-blue);color:white;border:none;padding:14px 30px;border-radius:4px;font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;letter-spacing:.3px;transition:all .2s;text-decoration:none;display:inline-block;}
.btn-primary:hover{background:var(--navy-mid);transform:translateY(-1px);}
.btn-ghost{background:transparent;color:white;border:1.5px solid rgba(255,255,255,.4);padding:14px 28px;border-radius:4px;font-family:var(--sans);font-size:14px;font-weight:400;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block;}
.btn-ghost:hover{border-color:white;background:rgba(255,255,255,.08);}
.btn-navy{background:var(--navy);color:white;border:none;padding:13px 28px;border-radius:4px;font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block;}
.btn-navy:hover{background:var(--edge-blue);}

/* ── SECTION HELPERS ── */
section{padding:72px 5%;}
.section-eyebrow{font-size:10.5px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--edge-blue);margin-bottom:12px;}
.section-title{font-family:var(--serif);font-size:40px;font-weight:700;color:var(--navy);line-height:1.18;margin-bottom:14px;}
.section-desc{font-size:15.5px;color:var(--gray-text);max-width:520px;line-height:1.8;font-weight:300;}

/* ── PAGE HERO ── */
.page-hero{background:var(--navy-deep);padding:72px 5%;position:relative;overflow:hidden;}
.page-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.15;}
.page-hero-content{position:relative;z-index:1;max-width:680px;}
.page-hero-content .section-eyebrow{color:var(--edge-steel);}
.page-hero-content .section-title{color:white;font-size:46px;margin-bottom:14px;}
.page-hero-content p{color:rgba(255,255,255,.6);font-size:16px;line-height:1.75;font-weight:300;}

/* ── TRUST BAR ── */
.trust-bar{background:var(--navy);padding:16px 5%;display:flex;align-items:center;justify-content:center;gap:36px;flex-wrap:wrap;}
.trust-item{display:flex;align-items:center;gap:8px;font-size:12.5px;color:rgba(255,255,255,.6);}
.trust-dot{width:5px;height:5px;border-radius:50%;background:var(--edge-blue);flex-shrink:0;}

/* ── BRAD BANNER ── */
.brad-banner{background:var(--edge-lightest);border-top:4px solid var(--edge-blue);padding:32px 5%;display:flex;align-items:center;gap:32px;}
.brad-avatar{width:90px;height:90px;border-radius:50%;border:3px solid var(--edge-blue);overflow:hidden;flex-shrink:0;background:var(--navy);}
.brad-avatar img{width:100%;height:100%;object-fit:cover;}
.brad-info h3{font-family:var(--serif);font-size:22px;font-weight:700;color:var(--navy);margin-bottom:2px;}
.brad-info p{font-size:13px;color:var(--gray-text);}
.brad-info .nmls{font-size:11.5px;color:var(--edge-blue);font-weight:500;margin-top:2px;}
.brad-quote{font-family:var(--serif);font-size:17.5px;font-style:italic;color:var(--navy-mid);line-height:1.55;flex:1;border-left:3px solid var(--edge-blue);padding-left:24px;margin-left:8px;}
.brad-contacts{display:flex;gap:10px;flex-shrink:0;flex-direction:column;}
.brad-btn{background:var(--navy);color:white;border:none;padding:10px 20px;border-radius:4px;font-family:var(--sans);font-size:13px;font-weight:500;cursor:pointer;text-align:center;text-decoration:none;display:block;transition:background .2s;white-space:nowrap;}
.brad-btn:hover{background:var(--edge-blue);}
.brad-btn.outline{background:transparent;border:1.5px solid var(--navy);color:var(--navy);}
.brad-btn.outline:hover{background:var(--navy);color:white;}

/* ── MARKET CARDS ── */
.markets-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.market-card{background:white;border-radius:8px;border:1.5px solid var(--gray-light);padding:26px 22px;transition:all .22s;cursor:pointer;position:relative;overflow:hidden;}
.market-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--edge-blue);transform:scaleX(0);transition:transform .22s;transform-origin:left;}
.market-card:hover{box-shadow:0 6px 24px rgba(30,43,94,.1);transform:translateY(-2px);border-color:var(--edge-pale);}
.market-card:hover::after{transform:scaleX(1);}
.market-tag{font-size:9.5px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--edge-blue);background:var(--edge-lightest);padding:3px 8px;border-radius:3px;display:inline-block;margin-bottom:12px;}
.market-name{font-family:var(--serif);font-size:19px;font-weight:700;color:var(--navy);margin-bottom:7px;}
.market-desc{font-size:13px;color:var(--gray-text);line-height:1.6;}

/* ── LOAN CARDS ── */
.loans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px;}
.loan-card{border:1.5px solid var(--gray-light);border-radius:8px;padding:30px 26px;transition:all .22s;position:relative;overflow:hidden;}
.loan-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--edge-blue);transform:scaleX(0);transition:transform .22s;transform-origin:left;}
.loan-card:hover{border-color:var(--edge-pale);box-shadow:0 6px 24px rgba(30,43,94,.09);transform:translateY(-2px);}
.loan-card:hover::before{transform:scaleX(1);}
.loan-card.featured{background:var(--navy);border-color:var(--navy);}
.loan-card.featured::before{transform:scaleX(1);background:var(--edge-steel);}
.loan-badge{display:inline-block;background:var(--edge-blue);color:white;font-size:9px;font-weight:600;letter-spacing:1px;text-transform:uppercase;padding:3px 9px;border-radius:3px;margin-bottom:14px;}
.loan-name{font-family:var(--serif);font-size:21px;font-weight:700;color:var(--navy);margin-bottom:9px;}
.loan-card.featured .loan-name{color:white;}
.loan-desc{font-size:14px;color:var(--gray-text);line-height:1.65;margin-bottom:14px;}
.loan-card.featured .loan-desc{color:rgba(255,255,255,.6);}
.loan-link{font-size:13px;color:var(--edge-blue);font-weight:500;text-decoration:none;}
.loan-card.featured .loan-link{color:var(--edge-pale);}

/* ── STATS ── */
.stats-section{background:var(--navy);padding:64px 5%;}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);}
.stat-item{text-align:center;padding:28px 20px;border-right:1px solid rgba(255,255,255,.08);}
.stat-item:last-child{border-right:none;}
.stat-num{font-family:var(--serif);font-size:50px;font-weight:700;color:var(--edge-pale);line-height:1;margin-bottom:7px;}
.stat-lbl{font-size:13px;color:rgba(255,255,255,.45);}

/* ── PROCESS ── */
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:52px;position:relative;}
.process-steps::before{content:'';position:absolute;top:27px;left:12%;right:12%;height:1px;background:var(--gray-light);}
.process-step{text-align:center;padding:0 18px;}
.step-circle{width:54px;height:54px;background:var(--navy);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;position:relative;z-index:1;}
.step-num{font-family:var(--serif);font-size:20px;font-weight:700;color:var(--edge-pale);}
.step-title{font-family:var(--serif);font-size:18px;font-weight:700;color:var(--navy);margin-bottom:9px;}
.step-desc{font-size:13.5px;color:var(--gray-text);line-height:1.65;}

/* ── TESTIMONIALS ── */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px;}
.testi-card{background:white;border-radius:8px;border:1.5px solid var(--gray-light);padding:28px;}
.stars{display:flex;gap:2px;margin-bottom:14px;}
.star{color:var(--edge-blue);font-size:15px;}
.testi-quote{font-family:var(--serif);font-size:15.5px;color:var(--dark);line-height:1.72;font-style:italic;margin-bottom:18px;}
.testi-author{display:flex;align-items:center;gap:11px;}
.author-av{width:38px;height:38px;border-radius:50%;background:var(--edge-lightest);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:14px;font-weight:700;color:var(--navy-mid);flex-shrink:0;}
.author-name{font-size:13.5px;font-weight:600;color:var(--navy);line-height:1.2;}
.author-detail{font-size:11.5px;color:var(--gray-text);}

/* ── CTA SECTION ── */
.cta-section{background:var(--navy);padding:76px 5%;text-align:center;}
.cta-section .section-title{color:white;}
.cta-section .section-desc{color:rgba(255,255,255,.55);margin:0 auto 38px;}
.cta-section .section-eyebrow{color:var(--edge-steel);}
.cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

/* ── FORMS ── */
.form-group{margin-bottom:13px;}
.form-label{display:block;font-size:10.5px;font-weight:600;letter-spacing:.9px;text-transform:uppercase;color:var(--gray-text);margin-bottom:5px;}
.form-input,.form-select,.form-textarea{width:100%;padding:11px 13px;border:1.5px solid var(--gray-light);border-radius:4px;font-family:var(--sans);font-size:16px;color:var(--dark);background:var(--off-white);transition:border-color .2s;outline:none;-webkit-appearance:none;}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--edge-blue);background:white;}
.form-textarea{resize:vertical;min-height:90px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.form-submit{width:100%;background:var(--navy);color:white;border:none;padding:13px;border-radius:4px;font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;margin-top:6px;transition:background .2s;}
.form-submit:hover{background:var(--edge-blue);}
.form-privacy{font-size:11px;color:var(--gray-text);text-align:center;margin-top:10px;}

/* ── CALCULATOR ── */
.calc-inner{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:start;margin-top:48px;}
.calc-card{background:white;border-radius:8px;padding:36px;box-shadow:0 2px 16px rgba(30,43,94,.07);}
.calc-result{background:var(--navy);border-radius:8px;padding:32px;text-align:center;}
.calc-result-label{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:8px;}
.calc-result-num{font-family:var(--serif);font-size:54px;font-weight:700;color:var(--edge-pale);line-height:1;margin-bottom:4px;}
.calc-result-sub{font-size:12px;color:rgba(255,255,255,.3);margin-bottom:24px;}
.calc-breakdown{border-top:1px solid rgba(255,255,255,.08);padding-top:20px;}
.calc-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06);}
.calc-row:last-child{border-bottom:none;}
.calc-row-label{font-size:12.5px;color:rgba(255,255,255,.4);}
.calc-row-val{font-size:13px;font-weight:500;color:rgba(255,255,255,.75);}
.range-wrap{margin-bottom:22px;}
.range-header{display:flex;justify-content:space-between;margin-bottom:8px;}
.range-title{font-size:12px;font-weight:500;color:var(--gray-text);}
.range-val{font-size:13px;font-weight:600;color:var(--navy);}
input[type=range]{width:100%;accent-color:var(--edge-blue);cursor:pointer;}
.calc-tabs{display:flex;gap:12px;margin-bottom:32px;flex-wrap:wrap;}
.calc-tab{background:transparent;border:1.5px solid var(--navy);color:var(--navy);padding:9px 20px;border-radius:4px;font-family:var(--sans);font-size:13px;cursor:pointer;transition:all .2s;}
.calc-tab.active{background:var(--navy);color:white;}

/* ── BLOG ── */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:48px;}
.blog-card{background:white;border-radius:8px;border:1.5px solid var(--gray-light);overflow:hidden;transition:all .22s;text-decoration:none;display:block;}
.blog-card:hover{box-shadow:0 8px 28px rgba(30,43,94,.1);transform:translateY(-3px);}
.blog-card-img{height:180px;position:relative;overflow:hidden;}
.blog-card-img-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.6;}
.blog-card-img-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(13,22,38,.7) 100%);}
.blog-card-cat{position:absolute;top:14px;left:14px;background:var(--edge-blue);color:white;font-size:9.5px;font-weight:600;letter-spacing:1px;text-transform:uppercase;padding:3px 9px;border-radius:3px;}
.blog-card-body{padding:22px;}
.blog-card-date{font-size:11px;color:var(--gray-text);margin-bottom:8px;}
.blog-card-title{font-family:var(--serif);font-size:19px;font-weight:700;color:var(--navy);line-height:1.3;margin-bottom:9px;}
.blog-card-excerpt{font-size:13.5px;color:var(--gray-text);line-height:1.65;}
.blog-card-footer{padding:14px 22px;border-top:1px solid var(--gray-light);display:flex;justify-content:space-between;align-items:center;}
.blog-read-more{font-size:12.5px;color:var(--edge-blue);font-weight:500;}
.blog-read-time{font-size:11.5px;color:var(--gray-text);}

/* ── ARTICLE ── */
.article-header{background:var(--navy-deep);padding:64px 5%;position:relative;overflow:hidden;}
.article-header-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.15;}
.article-header-content{position:relative;z-index:1;max-width:780px;}
.article-cat{display:inline-block;background:var(--edge-blue);color:white;font-size:9.5px;font-weight:600;letter-spacing:1px;text-transform:uppercase;padding:3px 9px;border-radius:3px;margin-bottom:14px;text-decoration:none;}
.article-title{font-family:var(--serif);font-size:46px;font-weight:700;color:white;line-height:1.15;margin-bottom:12px;}
.article-meta{font-size:13px;color:rgba(255,255,255,.45);}
.article-body{max-width:780px;margin:0 auto;padding:56px 5%;}
.article-body p{font-size:16px;color:#3a4a5c;line-height:1.85;margin-bottom:20px;font-weight:300;}
.article-body h2{font-family:var(--serif);font-size:28px;font-weight:700;color:var(--navy);margin:36px 0 14px;}
.article-body h3{font-family:var(--serif);font-size:22px;font-weight:700;color:var(--navy);margin:28px 0 10px;}
.article-body ul{margin:0 0 18px 20px;}
.article-body li{font-size:15.5px;color:#3a4a5c;line-height:1.8;margin-bottom:6px;}
.article-body .callout{background:var(--edge-lightest);border-left:4px solid var(--edge-blue);border-radius:4px;padding:18px 22px;margin:28px 0;}
.article-body .callout p{margin:0;font-size:15px;color:var(--navy-mid);font-style:italic;}
.article-back{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;color:var(--edge-blue);font-weight:500;text-decoration:none;margin-bottom:28px;}
.article-back:hover{color:var(--navy);}
.article-cta{background:var(--navy);padding:52px 5%;text-align:center;}

/* ── REVIEWS ── */
.rating-hero{background:var(--navy-deep);padding:64px 5%;text-align:center;position:relative;overflow:hidden;}
.rating-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.12;}
.rating-hero-content{position:relative;z-index:1;}
.big-rating{font-family:var(--serif);font-size:90px;font-weight:700;color:white;line-height:1;}
.big-stars{display:flex;justify-content:center;gap:6px;font-size:28px;color:var(--edge-blue);margin:12px 0;}
.rating-count{font-size:14px;color:rgba(255,255,255,.45);}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:60px 5%;background:var(--off-white);}
.review-card{background:white;border-radius:8px;border:1.5px solid var(--gray-light);padding:28px;}
.review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px;}
.review-stars{display:flex;gap:2px;font-size:13px;color:var(--edge-blue);}
.review-date{font-size:11px;color:var(--gray-text);}
.review-text{font-family:var(--serif);font-size:15px;color:var(--dark);line-height:1.72;font-style:italic;margin-bottom:16px;}
.review-location{display:inline-block;font-size:10.5px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--edge-blue);background:var(--edge-lightest);padding:3px 8px;border-radius:3px;margin-bottom:10px;}

/* ── ABOUT ── */
.about-hero{background:var(--navy-deep);padding:80px 5%;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;position:relative;overflow:hidden;}
.about-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.12;}
.about-photo-wrap{position:relative;z-index:1;display:flex;flex-direction:column;gap:18px;}
.about-brad-img{width:100%;border-radius:8px;border:4px solid var(--edge-blue);object-fit:cover;max-height:420px;box-shadow:0 12px 40px rgba(0,0,0,.35);}
.about-family-img{width:100%;border-radius:8px;object-fit:cover;max-height:300px;box-shadow:0 8px 28px rgba(0,0,0,.25);}
.about-hero-content{position:relative;z-index:1;}
.about-tag{display:inline-block;background:var(--edge-blue);color:white;font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;padding:4px 11px;border-radius:3px;margin-bottom:16px;}
.about-body{font-size:15px;color:rgba(255,255,255,.65);line-height:1.82;font-weight:300;}
.about-body p{margin-bottom:14px;}
.about-creds{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;}
.cred-chip{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:4px;padding:8px 14px;font-size:12px;font-weight:500;color:rgba(255,255,255,.7);}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px;}
.value-card{background:white;border-radius:8px;padding:30px;border:1.5px solid var(--gray-light);}
.value-icon{font-size:28px;margin-bottom:14px;}
.value-title{font-family:var(--serif);font-size:20px;font-weight:700;color:var(--navy);margin-bottom:8px;}
.value-desc{font-size:13.5px;color:var(--gray-text);line-height:1.65;}
.about-family-section{padding:76px 5%;background:white;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.family-img-wrap img{width:100%;border-radius:8px;box-shadow:0 8px 32px rgba(30,43,94,.12);}
.about-story p{font-size:15.5px;color:var(--gray-text);line-height:1.82;font-weight:300;margin-bottom:16px;}

/* ── CONTACT ── */
.contact-layout{display:grid;grid-template-columns:1fr 1fr;min-height:500px;}
.contact-left{background:var(--navy);padding:72px 5%;position:relative;overflow:hidden;}
.contact-left-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.15;}
.contact-left-content{position:relative;z-index:1;}
.contact-left h2{font-family:var(--serif);font-size:40px;font-weight:700;color:white;margin-bottom:14px;line-height:1.15;}
.contact-left p{font-size:15px;color:rgba(255,255,255,.6);line-height:1.8;margin-bottom:28px;font-weight:300;}
.contact-info-item{display:flex;align-items:center;gap:14px;margin-bottom:18px;}
.contact-icon{width:42px;height:42px;background:rgba(255,255,255,.08);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;}
.contact-info-label{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:2px;}
.contact-info-val{font-size:15px;font-weight:500;color:white;}
.contact-family-img{width:100%;border-radius:8px;margin-top:32px;box-shadow:0 12px 40px rgba(0,0,0,.3);}
.contact-right{padding:72px 5%;background:var(--off-white);}
.contact-right h3{font-family:var(--serif);font-size:28px;font-weight:700;color:var(--navy);margin-bottom:6px;}
.contact-right .contact-sub{font-size:14px;color:var(--gray-text);margin-bottom:28px;}
.realtor-section{padding:56px 5%;background:var(--edge-lightest);border-top:4px solid var(--edge-blue);}
.realtor-inner{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.realtor-inner h2{font-family:var(--serif);font-size:34px;font-weight:700;color:var(--navy);margin-bottom:10px;}
.realtor-inner p{font-size:15px;color:var(--gray-text);line-height:1.75;margin-bottom:16px;font-weight:300;}
.realtor-perks{list-style:none;}
.realtor-perks li{font-size:14px;color:var(--gray-text);padding:7px 0;border-bottom:1px solid var(--gray-light);display:flex;align-items:center;gap:9px;}
.realtor-perks li::before{content:'→';color:var(--edge-blue);font-weight:600;}

/* ── APPLY ── */
.apply-layout{display:grid;grid-template-columns:1fr 380px;gap:44px;padding:64px 5%;background:var(--off-white);align-items:start;}
.apply-form-wrap{background:white;border-radius:8px;padding:40px;box-shadow:0 2px 16px rgba(30,43,94,.07);}
.apply-form-wrap h2{font-family:var(--serif);font-size:32px;font-weight:700;color:var(--navy);margin-bottom:6px;}
.apply-sub{font-size:14px;color:var(--gray-text);margin-bottom:30px;}
.form-section-title{font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--edge-blue);margin:22px 0 14px;padding-bottom:8px;border-bottom:1px solid var(--gray-light);}
.sidebar-brad{background:var(--navy);border-radius:8px;padding:28px;margin-bottom:20px;text-align:center;}
.sidebar-brad img{width:100px;height:100px;border-radius:50%;border:3px solid var(--edge-blue);margin:0 auto 14px;object-fit:cover;display:block;}
.sidebar-brad h3{font-family:var(--serif);font-size:20px;font-weight:700;color:white;margin-bottom:4px;}
.sidebar-brad p{font-size:12.5px;color:rgba(255,255,255,.5);}
.sidebar-brad .nmls-small{font-size:11px;color:var(--edge-steel);margin-top:4px;}
.sidebar-brad .brad-cta{display:block;background:var(--edge-blue);color:white;padding:10px;border-radius:4px;font-size:13px;font-weight:600;text-decoration:none;margin-top:18px;text-align:center;}
.sidebar-brad .brad-cta:hover{background:var(--navy-mid);}
.sidebar-reasons{background:white;border-radius:8px;padding:24px;border:1.5px solid var(--gray-light);margin-bottom:16px;}
.sidebar-reasons h4{font-family:var(--serif);font-size:16px;font-weight:700;color:var(--navy);margin-bottom:14px;}
.reason-item{display:flex;gap:10px;margin-bottom:11px;font-size:13.5px;color:var(--gray-text);line-height:1.5;}
.reason-check{color:var(--edge-blue);font-weight:700;flex-shrink:0;margin-top:1px;}
.sidebar-docs{background:var(--edge-lightest);border-radius:8px;padding:22px;}
.sidebar-docs h4{font-family:var(--serif);font-size:15px;font-weight:700;color:var(--navy);margin-bottom:12px;}
.doc-item{font-size:13px;color:var(--gray-text);padding:5px 0;border-bottom:1px solid var(--edge-pale);}
.doc-item:last-child{border-bottom:none;}

/* ── AI CHAT ── */
.ai-chat-section{background:var(--navy-deep);padding:56px 5%;position:relative;overflow:hidden;}
.ai-chat-inner{position:relative;z-index:1;max-width:760px;margin:0 auto;text-align:center;}
.ai-chat-inner .section-eyebrow{color:var(--edge-steel);}
.ai-chat-inner .section-title{color:white;font-size:34px;margin-bottom:10px;}
.ai-chat-inner > p{color:rgba(255,255,255,.55);font-size:15px;margin-bottom:28px;line-height:1.7;}
.ai-chat-box{background:rgba(255,255,255,.05);border:1.5px solid rgba(255,255,255,.12);border-radius:10px;padding:24px;text-align:left;}
.ai-chat-messages{min-height:120px;max-height:340px;overflow-y:auto;margin-bottom:16px;display:flex;flex-direction:column;gap:14px;}
.ai-msg{display:flex;gap:10px;align-items:flex-start;}
.ai-msg-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;}
.ai-msg-avatar.brad{background:var(--edge-blue);color:white;font-family:var(--serif);}
.ai-msg-avatar.user{background:rgba(255,255,255,.15);color:rgba(255,255,255,.8);}
.ai-msg-bubble{background:rgba(255,255,255,.08);border-radius:8px;padding:12px 15px;font-size:14px;color:rgba(255,255,255,.85);line-height:1.65;max-width:600px;}
.ai-msg-bubble.brad{background:var(--edge-blue);color:white;}
.ai-typing-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.5);animation:typingPulse 1.2s infinite;display:inline-block;margin:0 2px;}
.ai-typing-dot:nth-child(2){animation-delay:.2s;}
.ai-typing-dot:nth-child(3){animation-delay:.4s;}
@keyframes typingPulse{0%,80%,100%{transform:scale(1);opacity:.5;}40%{transform:scale(1.3);opacity:1;}}
.ai-input-row{display:flex;gap:10px;}
.ai-input{flex:1;background:rgba(255,255,255,.08);border:1.5px solid rgba(255,255,255,.15);border-radius:6px;padding:12px 15px;color:white;font-family:var(--sans);font-size:14px;outline:none;transition:border-color .2s;}
.ai-input::placeholder{color:rgba(255,255,255,.3);}
.ai-input:focus{border-color:var(--edge-blue);}
.ai-send-btn{background:var(--edge-blue);color:white;border:none;padding:12px 22px;border-radius:6px;font-family:var(--sans);font-size:13px;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap;}
.ai-send-btn:hover{background:var(--navy-mid);}
.ai-send-btn:disabled{opacity:.5;cursor:not-allowed;}
.ai-suggestions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;}
.ai-suggestion{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:6px 14px;font-size:12.5px;color:rgba(255,255,255,.65);cursor:pointer;transition:all .2s;}
.ai-suggestion:hover{background:rgba(74,120,184,.3);border-color:var(--edge-blue);color:white;}
.ai-disclaimer{font-size:11px;color:rgba(255,255,255,.25);text-align:center;margin-top:12px;}

/* ── FOOTER ── */
footer{background:#0A0F1E;color:rgba(255,255,255,.45);padding:52px 5% 28px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:44px;margin-bottom:36px;}
.footer-logo{height:30px;margin-bottom:14px;background:white;padding:4px 8px;border-radius:4px;object-fit:contain;}
.footer-brand-desc{font-size:13px;line-height:1.75;max-width:240px;}
.footer-col-title{font-size:10.5px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:14px;}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:9px;}
.footer-links a{color:rgba(255,255,255,.38);text-decoration:none;font-size:13px;transition:color .2s;}
.footer-links a:hover{color:var(--edge-pale);}
.footer-bottom{border-top:1px solid rgba(255,255,255,.07);padding-top:22px;display:flex;justify-content:space-between;font-size:11.5px;align-items:center;flex-wrap:wrap;gap:12px;}
.footer-bottom-links{display:flex;gap:18px;}
.footer-bottom-links a{color:rgba(255,255,255,.28);text-decoration:none;font-size:11.5px;}
.disclaimer{font-size:10.5px;color:rgba(255,255,255,.25);line-height:1.65;margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.05);}

/* ── PHOTO STRIP ── */
.photo-strip{display:grid;grid-template-columns:repeat(5,1fr);height:220px;overflow:hidden;}
.photo-strip-item{position:relative;overflow:hidden;}
.photo-strip-item-bg{position:absolute;inset:0;background-size:cover;background-position:center;}
.photo-strip-item-overlay{position:absolute;inset:0;background:rgba(13,22,38,.25);}

/* ── LIFESTYLE ── */
.lifestyle-inner{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;}
.lifestyle-photos{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:12px;height:420px;}
.lifestyle-photo{border-radius:10px;background-size:cover;background-position:center;}

/* ═══════════════════════════════════════
   MOBILE RESPONSIVE
═══════════════════════════════════════ */
@media (max-width:768px){
  nav{height:auto;flex-direction:column;padding:12px 5%;gap:0;}
  .logo-wrap{width:100%;}
  .logo-tagline,.logo-divider{display:none;}
  .logo-img{height:30px;}
  .nav-links{display:none;}
  .nav-hamburger{display:block;position:absolute;top:18px;right:5%;}
  .brad-banner{flex-direction:column;text-align:center;gap:14px;padding:22px 5%;}
  .brad-quote{border-left:none;border-top:3px solid var(--edge-blue);padding:14px 0 0;margin:0;font-size:15px;}
  .brad-contacts{flex-direction:row;justify-content:center;width:100%;}
  .brad-btn{flex:1;text-align:center;}
  .trust-bar{flex-direction:column;gap:8px;padding:14px 5%;text-align:center;}
  section{padding:44px 5%;}
  .section-title{font-size:26px;}
  .hero-left{padding:40px 5% 28px;text-align:center;}
  .hero h1{font-size:32px;}
  .markets-grid{grid-template-columns:1fr 1fr;gap:12px;}
  .loans-grid{grid-template-columns:1fr;}
  .stats-grid{grid-template-columns:1fr 1fr;}
  .stat-item{border-right:none;border-bottom:1px solid rgba(255,255,255,.08);padding:16px;}
  .calc-inner{grid-template-columns:1fr;}
  .process-steps{grid-template-columns:1fr 1fr;gap:24px;}
  .process-steps::before{display:none;}
  .testi-grid{grid-template-columns:1fr;}
  .cta-actions{flex-direction:column;align-items:center;}
  .cta-actions .btn-primary,.cta-actions .btn-ghost{width:100%;max-width:300px;text-align:center;}
  .about-hero{grid-template-columns:1fr;padding:44px 5%;gap:24px;}
  .values-grid{grid-template-columns:1fr;}
  .about-family-section{grid-template-columns:1fr;padding:44px 5%;}
  .page-hero{padding:44px 5%;}
  .page-hero-content .section-title{font-size:28px;}
  .rating-hero{padding:44px 5%;}
  .big-rating{font-size:60px;}
  .reviews-grid{grid-template-columns:1fr;padding:36px 5%;}
  .apply-layout{grid-template-columns:1fr;padding:28px 5%;}
  .apply-sidebar{order:-1;}
  .contact-layout{grid-template-columns:1fr;}
  .contact-left,.contact-right{padding:40px 5%;}
  .realtor-section{padding:40px 5%;}
  .realtor-inner{grid-template-columns:1fr;}
  .blog-grid{grid-template-columns:1fr;}
  .article-title{font-size:28px;}
  .article-body{padding:32px 5%;}
  .lifestyle-inner{grid-template-columns:1fr;}
  .lifestyle-photos{height:260px;}
  .photo-strip{grid-template-columns:repeat(5,160px);overflow-x:auto;height:160px;}
  footer{padding:40px 5% 24px;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:24px;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .form-row{grid-template-columns:1fr;}
  .ai-input-row{flex-direction:column;}
  .ai-send-btn{width:100%;}
}
@media (max-width:480px){
  .section-title{font-size:22px;}
  .markets-grid,.process-steps,.stats-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .hero h1{font-size:26px;}
  .big-rating{font-size:48px;}
}

/* ═══════════════════════════════════════
   COMPREHENSIVE MOBILE OVERHAUL v2
   — Replaces & extends existing @media blocks
═══════════════════════════════════════ */

/* ── NAV: Fix sticky height so mobile-nav top offset stays correct ── */
@media (max-width:900px){
  nav{height:62px;padding:0 16px;flex-wrap:nowrap;}
  .logo-img{height:34px;}
  .logo-tagline,.logo-divider{display:none;}
  .nav-links{display:none;}
  .nav-hamburger{display:block;}
  .mobile-nav{top:62px;}
  .nav-phone{display:none;}
}

/* ── GLOBAL SPACING ── */
@media (max-width:768px){
  /* Base text */
  body{font-size:15px;}
  /* Section padding */
  section,
  .stats-section,
  .ai-chat-section,
  .cta-section{padding:44px 16px;}
  /* Section titles */
  .section-title{font-size:24px;line-height:1.22;}
  .section-desc{font-size:14.5px;}

  /* ── NAV ── */
  nav{height:62px;padding:0 16px;}
  .logo-img{height:34px;}
  .nav-phone{display:none;}
  .mobile-nav{top:62px;}
  .mobile-nav a{padding:15px 20px;font-size:15.5px;}
  .mobile-nav-phone{font-size:15.5px;padding:15px 20px;margin:8px 16px;border-radius:8px;}

  /* ── TRUST BAR ── */
  .trust-bar{padding:12px 16px;gap:10px;font-size:12px;}
  .trust-item{font-size:11.5px;}

  /* ── BRAD BANNER ── */
  .brad-banner{flex-direction:column;text-align:center;gap:16px;padding:24px 16px;}
  .brad-info h3{font-size:20px;}
  .brad-quote{border-left:none;border-top:3px solid var(--edge-blue);padding:14px 0 0;margin:0;font-size:15px;}
  .brad-contacts{flex-direction:row;justify-content:center;flex-wrap:wrap;gap:10px;width:100%;}
  .brad-btn{flex:1;min-width:130px;text-align:center;padding:12px 16px;font-size:14px;}

  /* ── HERO ── */
  .hero{flex-direction:column;}
  .hero-left{padding:36px 16px 28px;text-align:center;}
  .hero h1{font-size:28px;line-height:1.2;}
  .hero-sub{font-size:14.5px;}
  .hero-actions{justify-content:center;flex-wrap:wrap;gap:10px;}
  .hero-actions .btn-primary,
  .hero-actions .btn-ghost{width:100%;max-width:320px;text-align:center;padding:14px;}
  .hero-badges{justify-content:center;flex-wrap:wrap;gap:10px;}
  .hero-right{min-height:240px;}

  /* ── PAGE HERO ── */
  .page-hero{padding:40px 16px;}
  .page-hero-content .section-title{font-size:26px;}
  .page-hero-content p{font-size:14.5px;}

  /* ── MARKETS ── */
  .markets-grid{grid-template-columns:1fr 1fr;gap:12px;padding:0;}
  .market-card{padding:18px 16px;}
  .market-name{font-size:16px;}
  .market-desc{font-size:12.5px;}

  /* ── LOANS ── */
  .loans-grid{grid-template-columns:1fr;gap:16px;margin-top:32px;}
  .loan-card{padding:24px 20px;}

  /* ── STATS ── */
  .stats-grid{grid-template-columns:1fr 1fr;}
  .stat-item{border-right:none;border-bottom:1px solid rgba(255,255,255,.08);padding:20px 12px;}
  .stat-item:nth-child(odd){border-right:1px solid rgba(255,255,255,.08);}
  .stat-num{font-size:38px;}
  .stat-lbl{font-size:12px;}

  /* ── PROCESS ── */
  .process-steps{grid-template-columns:1fr 1fr;gap:28px;margin-top:36px;}
  .process-steps::before{display:none;}
  .process-step{padding:0 8px;}
  .step-title{font-size:16px;}
  .step-desc{font-size:13px;}

  /* ── TESTIMONIALS ── */
  .testi-grid{grid-template-columns:1fr;gap:16px;margin-top:32px;}
  .testi-quote{font-size:14.5px;}

  /* ── CTA SECTION ── */
  .cta-section .section-title{font-size:26px;}
  .cta-actions{flex-direction:column;align-items:center;gap:12px;}
  .cta-actions .btn-primary,
  .cta-actions .btn-ghost{width:100%;max-width:320px;text-align:center;padding:14px;}

  /* ── FORMS ── */
  .form-input,.form-select,.form-textarea{font-size:16px;padding:13px 14px;}
  .form-row{grid-template-columns:1fr;}
  .form-submit{padding:15px;font-size:15px;}

  /* ── CALCULATOR ── */
  .calc-inner{grid-template-columns:1fr;gap:24px;margin-top:28px;}
  .calc-card{padding:24px 16px;}
  .calc-result{padding:24px 16px;}
  .calc-result-num{font-size:40px;}
  .calc-tabs{gap:8px;margin-bottom:24px;}
  .calc-tab{padding:8px 14px;font-size:12.5px;}

  /* ── BLOG ── */
  .blog-grid{grid-template-columns:1fr;gap:18px;margin-top:32px;}
  .blog-card-body{padding:18px;}
  .blog-card-title{font-size:17px;}

  /* ── ARTICLE HEADER ── */
  .article-header{padding:40px 16px;}
  .article-title{font-size:26px;}
  .article-back{padding:14px 16px;}
  .article-body{padding:28px 16px 40px;}
  .article-body p{font-size:15px;line-height:1.78;}
  .article-body h2{font-size:22px;margin:28px 0 12px;}
  .article-body h3{font-size:19px;}
  .article-body li{font-size:14.5px;}
  .article-body .callout{padding:14px 16px;}
  .article-cta{padding:40px 16px;}
  .article-cta h2{font-size:24px;}

  /* ── REVIEWS ── */
  .rating-hero{padding:40px 16px;}
  .big-rating{font-size:56px;}
  .big-stars{font-size:22px;}
  .reviews-grid{grid-template-columns:1fr;padding:32px 16px;gap:16px;}
  .review-card{padding:22px;}

  /* ── ABOUT ── */
  .about-hero{grid-template-columns:1fr;padding:40px 16px;gap:24px;}
  .about-hero-content .section-title{font-size:26px;}
  .about-body{font-size:14px;}
  .about-creds{gap:8px;}
  .cred-chip{font-size:11px;padding:7px 12px;}
  .values-grid{grid-template-columns:1fr;gap:16px;margin-top:32px;}
  .value-card{padding:22px;}
  .about-family-section{grid-template-columns:1fr;padding:40px 16px;gap:32px;}
  .about-story p{font-size:14.5px;}

  /* ── CONTACT ── */
  .contact-layout{grid-template-columns:1fr;}
  .contact-left,.contact-right{padding:40px 16px;}
  .contact-left h2{font-size:28px;}
  .realtor-section{padding:40px 16px;}
  .realtor-inner{grid-template-columns:1fr;gap:28px;}
  .realtor-inner h2{font-size:26px;}

  /* ── APPLY ── */
  .apply-layout{grid-template-columns:1fr;padding:24px 16px;gap:24px;}
  .apply-form-wrap{padding:24px 16px;}
  .apply-form-wrap h2{font-size:24px;}
  .apply-sidebar{order:-1;}
  .sidebar-brad{padding:22px 16px;}

  /* ── AI CHAT ── */
  .ai-chat-inner .section-title{font-size:24px;}
  .ai-chat-inner > p{font-size:14px;}
  .ai-chat-box{padding:16px;}
  .ai-input-row{flex-direction:column;gap:8px;}
  .ai-send-btn{width:100%;padding:13px;}
  .ai-suggestions{gap:6px;}
  .ai-suggestion{font-size:12px;padding:6px 12px;}

  /* ── LIFESTYLE ── */
  .lifestyle-inner{grid-template-columns:1fr;gap:28px;}
  .lifestyle-photos{height:240px;}

  /* ── PHOTO STRIP ── */
  .photo-strip{grid-template-columns:repeat(5,140px);overflow-x:auto;height:150px;}

  /* ── FOOTER ── */
  footer{padding:36px 16px 24px;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:24px;}
  .footer-brand-desc{max-width:100%;}
  .footer-bottom{flex-direction:column;text-align:center;gap:10px;}
  .disclaimer{font-size:10px;}
}

/* ── VERY SMALL SCREENS (<420px) ── */
@media (max-width:420px){
  body{font-size:14.5px;}
  .section-title{font-size:22px;}
  .hero h1{font-size:24px;}
  .markets-grid{grid-template-columns:1fr;}
  .process-steps{grid-template-columns:1fr;}
  .stats-grid{grid-template-columns:1fr 1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .big-rating{font-size:44px;}
  .article-title{font-size:22px;}
  .about-hero-content .section-title{font-size:22px;}
  .contact-left h2{font-size:24px;}
  .calc-result-num{font-size:34px;}
  .btn-primary,.btn-ghost,.btn-navy{padding:13px 20px;font-size:13.5px;}
}

/* ── TOUCH TARGETS: ensure all tappable things are at least 44px ── */
@media (max-width:768px){
  .brad-btn,
  .btn-primary,
  .btn-ghost,
  .btn-navy,
  .mobile-nav a,
  .mobile-nav-cta,
  .mobile-nav-phone,
  .form-submit,
  .ai-send-btn,
  .calc-tab{min-height:44px;display:flex;align-items:center;justify-content:center;}
  .nav-hamburger{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;}
  /* Inline-block buttons keep working */
  a.btn-primary,a.btn-ghost,a.btn-navy{display:inline-flex;align-items:center;justify-content:center;}
}

/* ═══════════════════════════════════════
   INLINE LAYOUT FIX — hero & loan cards
   (These were inline styles; now class-based so media queries work)
═══════════════════════════════════════ */

/* ── Homepage hero grid ── */
.hero-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  min-height: 600px;
  position: relative;
  overflow: hidden;
}

/* ── Hero right panel (rate quote form) ── */
.hero-form-panel {
  background: rgba(255,255,255,.97);
  padding: 48px 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 1;
  border-left: 4px solid var(--edge-blue);
}

/* ── Loan cards grid ── */
.loan-cards-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}

/* ── Mobile overrides ── */
@media (max-width: 768px) {
  /* Stack hero vertically, show form below content */
  .hero-grid {
    display: flex !important;
    flex-direction: column !important;
    min-height: auto !important;
  }

  /* Hero left text section */
  .hero-grid .hero-left {
    padding: 40px 20px 32px !important;
    text-align: center;
  }

  /* Hero h1 */
  .hero-grid .hero-left h1 {
    font-size: 32px !important;
  }

  /* Hero buttons */
  .hero-grid .hero-left > div > a {
    display: block;
    text-align: center;
  }

  /* Stats row inside hero */
  .hero-grid .hero-left > div:last-child {
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
  }

  /* Form panel goes below hero text, full width */
  .hero-form-panel {
    padding: 32px 20px !important;
    border-left: none !important;
    border-top: 4px solid var(--edge-blue);
  }

  /* Loan cards → single column */
  .loan-cards-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 420px) {
  .hero-grid .hero-left h1 {
    font-size: 26px !important;
  }
  .hero-form-panel {
    padding: 24px 16px !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE NAV PHONE — visible in header bar
═══════════════════════════════════════ */

/* Hidden on desktop — only appears in mobile nav bar */
.nav-phone-mobile {
  display: none;
}

/* Show on mobile, between logo and hamburger */
@media (max-width: 900px) {
  nav {
    /* Three-zone layout: logo | phone | hamburger */
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0;
  }

  .nav-phone-mobile {
    display: flex;
    align-items: center;
    color: #ffffff;
    font-weight: 700;
    font-size: 13px;
    text-decoration: none;
    white-space: nowrap;
    gap: 5px;
    padding: 8px 10px;
    border-radius: 6px;
    background: rgba(74,120,184,0.25);
    border: 1.5px solid rgba(255,255,255,0.25);
    flex: 1;
    justify-content: center;
    margin: 0 10px;
    letter-spacing: 0.2px;
  }

  .nav-phone-mobile:hover,
  .nav-phone-mobile:active {
    background: var(--edge-blue);
    border-color: var(--edge-blue);
  }

  /* Keep existing desktop pill hidden on mobile */
  .nav-phone {
    display: none !important;
  }

  /* Logo doesn't shrink */
  .logo-wrap {
    flex-shrink: 0;
  }

  /* Hamburger doesn't shrink */
  .nav-hamburger {
    flex-shrink: 0;
  }
}

/* Very small screens — tighten the phone label */
@media (max-width: 380px) {
  .nav-phone-mobile {
    font-size: 12px;
    padding: 7px 7px;
    margin: 0 6px;
  }
}

/* ═══════════════════════════════════════
   HEADER FINAL FIX — 05/11/2026
   Desktop: consistent Home-style header on every page.
   Mobile: Blog-style header with centered phone number.
═══════════════════════════════════════ */

/* Desktop header baseline */
@media (min-width: 901px) {
  nav {
    height: 72px !important;
    min-height: 72px !important;
    padding: 0 5% !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 28px !important;
    position: sticky !important;
    top: 0 !important;
    width: 100% !important;
    overflow: visible !important;
  }

  .logo-wrap {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    width: auto !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
  }

  .logo-img {
    height: 40px !important;
    width: auto !important;
    display: block !important;
  }

  .logo-divider { display: block !important; }
  .logo-tagline { display: block !important; }

  .nav-links {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 24px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    white-space: nowrap !important;
  }

  .nav-phone {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    position: static !important;
    transform: none !important;
    margin-left: 0 !important;
    color: #fff !important;
    text-decoration: none !important;
  }

  .nav-phone-mobile,
  .nav-hamburger,
  .mobile-nav {
    display: none !important;
  }
}

/* Tablet/phone header */
@media (max-width: 900px) {
  nav {
    height: 62px !important;
    min-height: 62px !important;
    padding: 0 16px !important;
    display: grid !important;
    grid-template-columns: 76px 1fr 48px !important;
    align-items: center !important;
    gap: 0 !important;
    position: sticky !important;
    top: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  .logo-wrap {
    grid-column: 1 !important;
    width: auto !important;
    min-width: 0 !important;
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    flex: none !important;
  }

  .logo-img {
    height: 34px !important;
    width: auto !important;
    max-width: 72px !important;
    display: block !important;
    padding: 4px 8px !important;
  }

  .logo-divider,
  .logo-tagline,
  .nav-links,
  .nav-phone {
    display: none !important;
  }

  .nav-phone-mobile {
    grid-column: 2 !important;
    justify-self: center !important;
    align-self: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: min(100%, 230px) !important;
    max-width: 230px !important;
    min-width: 0 !important;
    height: 36px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border-radius: 6px !important;
    background: rgba(74,120,184,0.25) !important;
    border: 1.5px solid rgba(255,255,255,0.25) !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.15px !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    position: static !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  .nav-hamburger {
    grid-column: 3 !important;
    justify-self: end !important;
    align-self: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: static !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .mobile-nav {
    top: 62px !important;
  }

  .mobile-nav-phone {
    display: flex !important;
    justify-content: center !important;
    text-align: center !important;
  }
}

@media (max-width: 380px) {
  nav {
    grid-template-columns: 66px 1fr 44px !important;
    padding: 0 10px !important;
  }

  .logo-img {
    max-width: 62px !important;
    height: 32px !important;
    padding: 4px 6px !important;
  }

  .nav-phone-mobile {
    width: min(100%, 190px) !important;
    max-width: 190px !important;
    font-size: 12.5px !important;
    padding: 0 8px !important;
  }
}


/* ABOUT PAGE IMAGE FIX - desktop and mobile-safe */
.about-hero{
  grid-template-columns:minmax(0, 0.95fr) minmax(0, 1.05fr);
  align-items:center;
}
.about-photo-wrap{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  align-items:stretch;
}
.about-brad-img,
.about-family-img{
  display:block;
  width:100%;
  height:420px;
  max-height:none;
  object-fit:cover;
  border-radius:10px;
}
.about-brad-img{
  object-position:center center;
}
.about-family-img{
  object-position:center 38%;
}
.family-img-wrap{
  width:100%;
  overflow:hidden;
  border-radius:10px;
  box-shadow:0 8px 32px rgba(30,43,94,.12);
}
.family-img-wrap img{
  display:block;
  width:100%;
  height:500px;
  object-fit:cover;
  object-position:center 36%;
  border-radius:0;
  box-shadow:none;
}
@media (max-width: 1000px){
  .about-photo-wrap{grid-template-columns:1fr;}
  .about-brad-img,.about-family-img{height:auto;max-height:none;object-fit:contain;}
}
@media (max-width: 768px){
  .about-hero{grid-template-columns:1fr;}
  .family-img-wrap img{height:auto;object-fit:contain;}
}
