
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#161616;--navy2:#242424;--teal:#155A42;--teal2:#104632;--teal-lt:#D2D8BC;--teal-pale:#EEF2E2;
  --gold:#D2D8BC;--cream:#F3F5EA;--white:#fff;--text:#161616;--muted:#5f675c;--border:#dde2cf;
  --serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',sans-serif;
  --max:1260px;--r:12px;--r2:20px;
}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--text);background:var(--white);overflow-x:hidden;line-height:1.65}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}

/* â”€â”€ UTILITY â”€â”€ */
.container{max-width:var(--max);margin:0 auto;padding:0 2rem}
.eyebrow{font-size:.72rem;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--teal);display:block;margin-bottom:.6rem}
.btn{display:inline-flex;align-items:center;gap:8px;padding:.8rem 1.75rem;border-radius:8px;font-family:var(--sans);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}
.btn-teal{background:var(--teal);color:#fff}.btn-teal:hover{background:var(--teal2);transform:translateY(-1px)}
.btn-white{background:#fff;color:var(--navy)}.btn-white:hover{background:var(--cream)}
.btn-ghost{border:1.5px solid rgba(255,255,255,.25);color:#fff}.btn-ghost:hover{border-color:var(--teal-lt);color:var(--teal-lt)}
.btn-navy-ghost{border:1.5px solid var(--border);color:var(--navy);background:transparent}.btn-navy-ghost:hover{border-color:var(--teal);color:var(--teal)}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.reveal.vis{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}

/* â”€â”€ NAV â”€â”€ */
nav{position:fixed;inset:0 0 auto;z-index:200;background:rgba(22,22,22,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.07)}
.nav-wrap{max-width:var(--max);margin:0 auto;padding:0 2rem;height:68px;display:flex;align-items:center;justify-content:space-between}
.nav-logo{display:flex;align-items:center;gap:10px}
.nav-logo-mark{width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,var(--teal),var(--teal-lt));display:flex;align-items:center;justify-content:center}
.nav-logo-mark svg{width:18px;height:18px}
.nav-logo-text{font-family:var(--serif);font-size:1.25rem;font-weight:700;color:#fff;letter-spacing:-.3px}
.nav-logo-text em{font-style:normal;color:var(--teal-lt)}
.nav-links{display:flex;align-items:center;gap:1.6rem;list-style:none}
.nav-links a{color:rgba(255,255,255,.68);font-size:.84rem;transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:var(--teal-lt)}
.nav-right{display:flex;align-items:center;gap:.65rem}
.nav-info{color:rgba(255,255,255,.55);font-size:.8rem;border:1px solid rgba(255,255,255,.18);padding:.38rem .9rem;border-radius:6px;transition:all .2s}
.nav-info:hover{color:var(--teal-lt);border-color:var(--teal-lt)}
.nav-apply{background:var(--teal);color:#fff;font-size:.84rem;font-weight:600;padding:.45rem 1.1rem;border-radius:7px;transition:background .2s}
.nav-apply:hover{background:var(--teal2)}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px}
.hamburger span{width:22px;height:2px;background:rgba(255,255,255,.7);border-radius:2px;transition:all .3s}
.mob-menu{display:none;position:fixed;top:68px;left:0;right:0;z-index:199;background:rgba(22,22,22,.98);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.1);flex-direction:column;gap:0}
.mob-menu.open{display:flex}
.mob-menu a{color:rgba(255,255,255,.75);font-size:.95rem;padding:.9rem 2rem;border-bottom:1px solid rgba(255,255,255,.07);transition:color .2s}
.mob-menu a:hover{color:var(--teal-lt)}
.mob-apply{color:var(--teal-lt)!important;font-weight:600}

/* â”€â”€ PAGE SWITCHER â”€â”€ */
.page{display:none}.page.active{display:block}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   HOME PAGE
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

/* HERO */
.hero{min-height:100vh;background:var(--navy);display:flex;align-items:center;padding:80px 0 0;position:relative;overflow:hidden}
.hero-orb{position:absolute;border-radius:50%;pointer-events:none}
.hero-orb-1{width:640px;height:640px;background:radial-gradient(circle,rgba(21,90,66,.14) 0%,transparent 70%);top:-15%;right:-8%}
.hero-orb-2{width:400px;height:400px;background:radial-gradient(circle,rgba(210,216,188,.07) 0%,transparent 70%);bottom:5%;left:-5%}
.hero-inner{max-width:var(--max);margin:0 auto;padding:0 2rem;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;padding-bottom:80px;position:relative;z-index:1}
.hero-pill{display:inline-flex;align-items:center;gap:8px;background:rgba(21,90,66,.18);border:1px solid rgba(210,216,188,.32);color:var(--teal-lt);font-size:.72rem;font-weight:500;letter-spacing:1.2px;text-transform:uppercase;padding:6px 14px;border-radius:20px;margin-bottom:1.5rem}
.hero-pill::before{content:'';width:6px;height:6px;background:var(--teal-lt);border-radius:50%;animation:blink 2s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}
.hero h1{font-family:var(--serif);font-size:clamp(2.5rem,4.2vw,4rem);color:#fff;line-height:1.1;font-weight:700;letter-spacing:-1px;margin-bottom:1.4rem}
.hero h1 em{font-style:italic;color:var(--teal-lt)}
.hero-desc{color:rgba(255,255,255,.58);font-size:1.02rem;font-weight:300;line-height:1.8;max-width:460px;margin-bottom:2.4rem}
.hero-btns{display:flex;gap:.9rem;flex-wrap:wrap}
/* hero visual */
.hero-vis{display:flex;flex-direction:column;gap:1rem}
.hero-glass{background:rgba(255,255,255,.06);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:var(--r2);padding:1.6rem 2rem}
.hero-dots{display:flex;align-items:center;gap:.45rem;margin-bottom:1.1rem}
.hero-dot{width:8px;height:8px;border-radius:999px;border:0;background:rgba(255,255,255,.28);cursor:pointer;transition:all .2s ease}
.hero-dot.active{width:24px;background:var(--teal-lt)}
.hero-timer{margin-left:auto;padding:.25rem .55rem;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.72);font-size:.72rem;font-weight:700;line-height:1}
.hero-progress{height:4px;margin-top:1rem;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}
.hero-progress-bar{width:0%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--teal-lt))}
.hero-glass-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.1rem}
.hero-glass-hd h3{font-family:var(--serif);color:#fff;font-size:1.1rem;font-style:italic}
.badge{background:rgba(21,90,66,.25);border:1px solid rgba(210,216,188,.4);color:var(--teal-lt);font-size:.7rem;font-weight:600;letter-spacing:.8px;text-transform:uppercase;padding:4px 10px;border-radius:20px}
.svc-links{display:flex;flex-direction:column}
.svc-link{display:flex;align-items:center;justify-content:space-between;color:rgba(255,255,255,.68);font-size:.86rem;font-weight:300;padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.07);cursor:pointer;transition:color .2s}
.svc-link:last-child{border-bottom:none}
.svc-link:hover{color:var(--teal-lt)}
.svc-link .arr{opacity:0;transition:opacity .2s;font-size:.8rem}
.svc-link:hover .arr{opacity:1}
.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem}
.stat-box{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:1.2rem;text-align:center}
.stat-num{font-family:var(--serif);font-size:1.9rem;font-weight:700;color:var(--teal-lt);line-height:1}
.stat-lbl{font-size:.72rem;color:rgba(255,255,255,.42);margin-top:4px;font-weight:300}

/* TICKER */
.ticker{background:var(--teal);overflow:hidden}
.ticker-inner{display:flex;animation:scroll 32s linear infinite;width:max-content}
.ticker-inner:hover{animation-play-state:paused}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.tick-item{display:flex;align-items:center;gap:10px;padding:.72rem 2.4rem;white-space:nowrap;font-size:.8rem;font-weight:500;color:rgba(255,255,255,.88)}
.tick-dot{width:4px;height:4px;background:rgba(255,255,255,.45);border-radius:50%}

/* BENEFITS */
.benefits{background:var(--cream);padding:5rem 0}
.benefits h2{font-family:var(--serif);font-size:clamp(1.8rem,2.8vw,2.5rem);color:var(--navy);font-style:italic;margin-bottom:2.8rem}
.benefits-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1.2rem}
.ben-card{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:1.6rem 1.1rem;text-align:center;transition:all .22s;cursor:default}
.ben-card:hover{border-color:var(--teal);transform:translateY(-4px);box-shadow:0 10px 28px rgba(21,90,66,.1)}
.ben-ico{font-size:1.9rem;margin-bottom:.8rem;display:block}
.ben-card h4{font-size:.86rem;font-weight:600;color:var(--navy);margin-bottom:.35rem}
.ben-card p{font-size:.76rem;color:var(--muted);line-height:1.45;font-weight:300}

/* MORTGAGES SECTION */
.mort-section{background:#fff;padding:6rem 0}
.split{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.visual-panel{background:var(--navy);border-radius:var(--r2);overflow:hidden;position:relative;min-height:500px;display:flex;flex-direction:column;justify-content:flex-end;padding:2.5rem}
.visual-panel::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 20%,rgba(21,90,66,.22) 0%,transparent 60%)}
.visual-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:2rem}
.v-box{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:1rem;text-align:center}
.v-box span{font-size:1.6rem;display:block;margin-bottom:4px}
.v-box p{font-size:.72rem;color:rgba(255,255,255,.5);font-weight:300}
.visual-caption{position:relative;z-index:1;font-family:var(--serif);font-size:1.55rem;font-style:italic;color:#fff;line-height:1.3}
.visual-caption strong{color:var(--teal-lt);font-weight:400}
.split-content .eyebrow{margin-bottom:.5rem}
.split-content h2{font-family:var(--serif);font-size:clamp(1.9rem,2.8vw,2.8rem);color:var(--navy);font-weight:700;line-height:1.15;margin-bottom:.9rem;letter-spacing:-.3px}
.split-content .lead{color:var(--muted);font-size:.96rem;font-weight:300;line-height:1.75;margin-bottom:1.8rem;max-width:420px}
.svc-list{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1.8rem}
.svc-row{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1.1rem;border-radius:10px;background:var(--cream);border:1px solid var(--border);cursor:pointer;transition:all .2s;font-size:.88rem;font-weight:400;color:var(--navy)}
.svc-row:hover{background:var(--teal-pale);border-color:var(--teal);color:var(--teal);transform:translateX(4px)}
.svc-row .sico{font-size:1.05rem}
.svc-arr{color:var(--teal);opacity:0;transition:opacity .2s;font-size:.85rem}
.svc-row:hover .svc-arr{opacity:1}

/* CALCULATOR BANNER */
.calc-banner{background:var(--navy);padding:4.5rem 0}
.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:4.5rem;align-items:center}
.calc-left h2{font-family:var(--serif);font-size:clamp(1.7rem,2.5vw,2.2rem);font-style:italic;color:#fff;margin-bottom:.8rem}
.calc-left p{color:rgba(255,255,255,.52);font-size:.9rem;font-weight:300;line-height:1.7;margin-bottom:2rem}
.calc-box{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--r2);padding:2rem}
.cfield{margin-bottom:1.2rem}
.cfield label{display:block;font-size:.76rem;color:rgba(255,255,255,.48);margin-bottom:5px;font-weight:400}
.cfield .cval{font-size:1.05rem;font-weight:600;color:var(--teal-lt);font-family:var(--serif)}
input[type=range]{width:100%;accent-color:var(--teal-lt);cursor:pointer;margin-top:3px}
.freq-wrap{display:flex;gap:.45rem;margin-top:5px;flex-wrap:wrap}
.fbtn{font-family:var(--sans);font-size:.76rem;padding:5px 11px;border-radius:6px;cursor:pointer;border:1px solid rgba(255,255,255,.2);background:transparent;color:rgba(255,255,255,.55);transition:all .18s}
.fbtn.active{background:var(--teal-lt);border-color:var(--teal-lt);color:var(--navy);font-weight:600}
.calc-result{background:linear-gradient(135deg,var(--teal),#104632);border-radius:var(--r);padding:1.25rem 1.5rem;text-align:center;margin-top:1.4rem}
.calc-result-num{font-family:var(--serif);font-size:2.1rem;font-weight:700;color:#fff}
.calc-result-lbl{font-size:.78rem;color:rgba(255,255,255,.72);margin-top:2px}

/* COMMERCIAL */
.comm-section{background:var(--cream);padding:6rem 0}
.comm-panel{background:var(--navy);border-radius:var(--r2);padding:2.8rem;position:relative;overflow:hidden}
.comm-panel::after{content:'';position:absolute;bottom:-30px;right:-30px;width:200px;height:200px;background:radial-gradient(circle,rgba(210,216,188,.18) 0%,transparent 70%)}
.comm-panel h3{font-family:var(--serif);font-size:1.45rem;font-style:italic;color:#fff;margin-bottom:.75rem;position:relative;z-index:1}
.comm-panel p{color:rgba(255,255,255,.5);font-size:.88rem;font-weight:300;line-height:1.7;position:relative;z-index:1;margin-bottom:1.8rem}
.comm-stats{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;position:relative;z-index:1}
.comm-stat{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);border-radius:12px;padding:1.1rem}
.comm-stat-num{font-family:var(--serif);font-size:1.7rem;font-style:italic;color:var(--teal-lt)}
.comm-stat-lbl{font-size:.73rem;color:rgba(255,255,255,.42);margin-top:3px;font-weight:300}

/* TESTIMONIALS */
.testi-section{background:#fff;padding:6rem 0}
.testi-hd{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:2.8rem;flex-wrap:wrap;gap:1.5rem}
.testi-hd h2{font-family:var(--serif);font-size:clamp(1.9rem,2.8vw,2.6rem);color:var(--navy);font-style:italic}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.testi-card{background:var(--cream);border:1px solid var(--border);border-radius:var(--r2);padding:1.9rem;display:flex;flex-direction:column;transition:all .22s}
.testi-card:hover{border-color:var(--teal);box-shadow:0 8px 28px rgba(21,90,66,.09)}
.stars{color:var(--gold);font-size:.82rem;font-weight:700;letter-spacing:0;margin-bottom:.9rem}
.testi-q{font-size:.88rem;color:var(--text);line-height:1.72;font-weight:300;flex:1;font-style:italic}
.testi-author{margin-top:1.4rem;display:flex;align-items:center;gap:12px}
.testi-av{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--navy));display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:.95rem;color:#fff;font-weight:700;flex-shrink:0}
.testi-name{font-size:.85rem;font-weight:600;color:var(--navy)}
.testi-role{font-size:.75rem;color:var(--muted);font-weight:300}
.testi-cta{text-align:center;margin-top:2.5rem}

/* TEAM */
.team-section{background:var(--cream);padding:6rem 0}
.team-hd{max-width:540px;margin-bottom:3rem}
.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;max-width:720px}
.team-card{background:#fff;border:1px solid var(--border);border-radius:var(--r2);padding:2rem;display:flex;gap:1.4rem;align-items:flex-start;transition:all .22s}
.team-card:hover{border-color:var(--teal);box-shadow:0 6px 24px rgba(21,90,66,.09)}
.team-av{width:60px;height:60px;border-radius:14px;background:linear-gradient(135deg,var(--navy),var(--teal));display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:1.4rem;color:#fff;font-weight:700;flex-shrink:0}
.team-card h4{font-family:var(--serif);font-size:1.1rem;color:var(--navy);margin-bottom:.2rem}
.team-card .role{font-size:.78rem;color:var(--teal);font-weight:500;text-transform:uppercase;letter-spacing:.8px;margin-bottom:.6rem}
.team-card .contact a{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--muted);margin-bottom:.25rem;transition:color .2s}
.team-card .contact a:hover{color:var(--teal)}

/* INSURANCE */
.ins-section{background:var(--navy);padding:6rem 0;position:relative;overflow:hidden}
.ins-section::before{content:'';position:absolute;top:0;right:0;width:55%;height:100%;background:radial-gradient(ellipse at top right,rgba(21,90,66,.12) 0%,transparent 55%);pointer-events:none}
.ins-inner{position:relative;z-index:1}
.ins-header{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:2.8rem}
.ins-header h2{font-family:var(--serif);font-size:clamp(1.9rem,2.8vw,2.8rem);color:#fff;font-style:italic;line-height:1.2}
.ins-header .sub{color:rgba(255,255,255,.52);font-size:.92rem;font-weight:300;line-height:1.72}
.ins-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}
.ins-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:var(--r);padding:1.7rem 1.2rem;cursor:pointer;transition:all .22s;display:block}
.ins-card:hover{background:rgba(21,90,66,.14);border-color:rgba(210,216,188,.38);transform:translateY(-3px)}
.ins-ico{width:46px;height:46px;border-radius:12px;background:rgba(21,90,66,.2);border:1px solid rgba(210,216,188,.18);display:flex;align-items:center;justify-content:center;font-size:1.35rem;margin-bottom:.9rem}
.ins-card h4{font-family:var(--serif);font-size:.98rem;color:#fff;font-style:italic;margin-bottom:.45rem}
.ins-card p{font-size:.78rem;color:rgba(255,255,255,.42);font-weight:300;line-height:1.5}
.ins-more{display:flex;align-items:center;gap:6px;color:var(--teal-lt);font-size:.76rem;font-weight:500;margin-top:1.1rem}

/* HOW WE HELP */
.how-section{background:#fff;padding:6rem 0}
.how-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.steps-v{display:flex;flex-direction:column;gap:0;position:relative}
.steps-v::before{content:'';position:absolute;left:22px;top:28px;bottom:28px;width:2px;background:linear-gradient(to bottom,var(--teal),transparent)}
.step-v{display:flex;gap:1.4rem;padding:1.4rem 0}
.step-num{width:44px;height:44px;border-radius:12px;background:var(--navy);border:2px solid var(--teal);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:1rem;font-weight:700;color:var(--teal-lt);flex-shrink:0}
.step-v h4{font-size:.95rem;font-weight:600;color:var(--navy);margin-bottom:.35rem}
.step-v p{font-size:.84rem;color:var(--muted);font-weight:300;line-height:1.62}
.why-panel{background:var(--cream);border-radius:var(--r2);padding:2.2rem}
.why-panel h3{font-family:var(--serif);font-size:1.35rem;font-style:italic;color:var(--navy);margin-bottom:1.4rem}
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.why-card{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:1.2rem;transition:all .2s}
.why-card:hover{border-color:var(--teal)}
.why-card span{font-size:1.4rem;display:block;margin-bottom:.6rem}
.why-card h4{font-size:.84rem;font-weight:600;color:var(--navy);margin-bottom:.28rem}
.why-card p{font-size:.76rem;color:var(--muted);font-weight:300;line-height:1.48}

/* BLOG */
.blog-section{background:var(--cream);padding:6rem 0}
.blog-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.8rem;flex-wrap:wrap;gap:1rem}
.blog-hd h2{font-family:var(--serif);font-size:clamp(1.8rem,2.5vw,2.4rem);color:var(--navy);font-style:italic}
.blog-all{color:var(--teal);font-size:.86rem;font-weight:500;display:flex;align-items:center;gap:5px;transition:gap .2s}
.blog-all:hover{gap:9px}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.blog-card{background:#fff;border:1px solid var(--border);border-radius:var(--r2);overflow:hidden;transition:all .22s}
.blog-card:hover{border-color:var(--teal);box-shadow:0 8px 28px rgba(21,90,66,.1);transform:translateY(-3px)}
.blog-thumb{height:158px;display:flex;align-items:center;justify-content:center;font-size:2.8rem}
.bt1{background:linear-gradient(135deg,#161616,#155A42)}.bt2{background:linear-gradient(135deg,#155A42,#104632)}.bt3{background:linear-gradient(135deg,#161616,#155A42)}
.blog-body{padding:1.4rem}
.blog-cat{font-size:.7rem;font-weight:600;color:var(--teal);letter-spacing:1px;text-transform:uppercase;margin-bottom:.5rem;display:block}
.blog-card h3{font-family:var(--serif);font-size:1rem;color:var(--navy);line-height:1.38;margin-bottom:.5rem;font-style:italic}
.blog-card p{font-size:.8rem;color:var(--muted);line-height:1.55;font-weight:300;margin-bottom:.9rem}
.blog-read{color:var(--teal);font-size:.8rem;font-weight:500;display:flex;align-items:center;gap:4px;transition:gap .2s}
.blog-read:hover{gap:8px}
.blog-meta-row{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap;font-size:.76rem;color:var(--muted);margin-bottom:1rem}
.blog-feature-band{background:#fff;padding:4.5rem 0 1rem}
.blog-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.blog-feature-card{display:block;background:#fff;border:1px solid var(--border);border-radius:var(--r2);overflow:hidden;transition:all .22s}
.blog-feature-card:hover{border-color:var(--teal);box-shadow:0 8px 28px rgba(21,90,66,.1);transform:translateY(-3px)}
.blog-feature-thumb{height:220px;display:flex;align-items:center;justify-content:center;font-size:4rem}
.blog-feature-body{padding:1.5rem}
.blog-feature-body h2{font-family:var(--serif);font-size:1.35rem;color:var(--navy);font-style:italic;line-height:1.3;margin-bottom:.6rem}
.blog-feature-body p{font-size:.88rem;color:var(--muted);line-height:1.65;font-weight:300;margin-bottom:1rem}
.blog-empty{background:#fff;border:1px dashed var(--border);border-radius:var(--r2);padding:2rem;text-align:center}
.blog-empty h3{font-family:var(--serif);font-size:1.4rem;color:var(--navy);font-style:italic;margin-bottom:.5rem}
.blog-empty p{font-size:.9rem;color:var(--muted)}
.blog-post-hero{display:grid;grid-template-columns:1.4fr .8fr;gap:2rem;align-items:center}
.blog-post-hero-card{min-height:280px;border-radius:var(--r2);display:flex;align-items:center;justify-content:center;font-size:5rem}
.blog-post-hero-meta{display:flex;gap:.9rem;flex-wrap:wrap;color:rgba(255,255,255,.58);font-size:.82rem}
.blog-post-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr);gap:2rem}
.blog-post-article{background:#fff;border:1px solid var(--border);border-radius:var(--r2);padding:2.2rem}
.blog-post-content h2{font-family:var(--serif);font-size:1.6rem;font-style:italic;color:var(--navy);margin:1.8rem 0 .7rem}
.blog-post-content h3{font-size:1.06rem;color:var(--navy);margin:1.4rem 0 .55rem}
.blog-post-content p{font-size:.95rem;line-height:1.85;color:var(--text);font-weight:300;margin-bottom:1rem}
.blog-post-content ul,.blog-post-content ol{padding-left:1.2rem;margin:0 0 1rem}
.blog-post-content li{margin-bottom:.5rem;color:var(--text)}
.blog-post-tags{display:flex;gap:.6rem;flex-wrap:wrap;padding-top:1rem;margin-top:1.2rem;border-top:1px solid var(--border)}
.blog-related-list{display:flex;flex-direction:column;gap:.8rem}
.blog-related-item{display:flex;flex-direction:column;gap:.2rem;padding:.9rem 1rem;background:#fff;border:1px solid var(--border);border-radius:12px;transition:border-color .2s,transform .2s}
.blog-related-item:hover{border-color:var(--teal);transform:translateX(3px)}
.blog-related-item strong{font-size:.88rem;color:var(--navy)}
.blog-related-item span{font-size:.76rem;color:var(--muted)}

/* NEWSLETTER */
.nl-section{background:var(--teal);padding:4.2rem 0}
.nl-inner{max-width:580px;margin:0 auto;text-align:center;padding:0 2rem}
.nl-inner h2{font-family:var(--serif);font-size:1.9rem;font-style:italic;color:#fff;margin-bottom:.5rem}
.nl-inner p{color:rgba(255,255,255,.78);font-size:.92rem;font-weight:300;margin-bottom:1.8rem}
.nl-form{display:flex;gap:.65rem}
.nl-form input{flex:1;padding:.8rem 1.1rem;border:none;border-radius:8px;font-family:var(--sans);font-size:.88rem;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);color:#fff;outline:none;transition:border-color .2s}
.nl-form input::placeholder{color:rgba(255,255,255,.5)}
.nl-form input:focus{border-color:rgba(255,255,255,.6)}
.nl-form button{background:var(--navy);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:8px;font-family:var(--sans);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}
.nl-form button:hover{background:var(--navy2)}

/* FOOTER */
footer{background:var(--navy);padding:4rem 0 2rem}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.08)}
.footer-brand .fl{display:flex;align-items:center;gap:10px;margin-bottom:1.2rem}
.footer-brand p{color:rgba(255,255,255,.42);font-size:.82rem;font-weight:300;line-height:1.7;max-width:290px;margin-bottom:1rem}
.fsp{display:inline-block;border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.38);font-size:.7rem;padding:3px 9px;border-radius:4px}
.footer-col h5{font-family:var(--serif);color:#fff;font-size:.96rem;font-style:italic;margin-bottom:1.1rem}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.5rem}
.footer-col li a{color:rgba(255,255,255,.42);font-size:.82rem;transition:color .2s}
.footer-col li a:hover{color:var(--teal-lt)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:1.8rem}
.footer-bottom p{font-size:.78rem;color:rgba(255,255,255,.28)}
.social-row{display:flex;gap:.6rem}
.social-btn{width:34px;height:34px;border-radius:8px;border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.42);font-size:.72rem;font-weight:700;transition:all .2s}
.social-btn:hover{border-color:var(--teal-lt);color:var(--teal-lt)}

/* CTA BAND */
.cta-band{background:linear-gradient(135deg,var(--teal),#104632);padding:4rem 0;text-align:center}
.cta-band h2{font-family:var(--serif);font-size:clamp(1.8rem,2.8vw,2.5rem);color:#fff;font-style:italic;margin-bottom:.7rem}
.cta-band p{color:rgba(255,255,255,.78);font-size:.96rem;font-weight:300;max-width:480px;margin:0 auto 2.2rem}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   INNER PAGES
â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
.inner-hero{background:var(--navy);padding:110px 0 60px;position:relative;overflow:hidden}
.inner-hero::before{content:'';position:absolute;top:-20%;right:-10%;width:58%;height:140%;background:radial-gradient(ellipse at center,rgba(21,90,66,.13) 0%,transparent 68%);pointer-events:none}
.inner-hero-inner{max-width:var(--max);margin:0 auto;padding:0 2rem;position:relative;z-index:1}
.breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:1.4rem}
.breadcrumb a,.breadcrumb span{font-size:.78rem;color:rgba(255,255,255,.38)}
.breadcrumb a{transition:color .2s}.breadcrumb a:hover{color:var(--teal-lt)}
.breadcrumb .sep{color:rgba(255,255,255,.18)}
.breadcrumb .cur{color:rgba(255,255,255,.6)}
.inner-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.inner-hero h1{font-family:var(--serif);font-size:clamp(2.1rem,3.5vw,3.4rem);color:#fff;font-weight:700;line-height:1.12;letter-spacing:-.8px;margin-bottom:1.2rem}
.inner-hero h1 em{font-style:italic;color:var(--teal-lt)}
.inner-hero-desc{color:rgba(255,255,255,.58);font-size:1rem;font-weight:300;line-height:1.78;max-width:500px;margin-bottom:2.2rem}
.tag-row{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:1.8rem}
.ptag{background:rgba(21,90,66,.15);border:1px solid rgba(210,216,188,.25);color:var(--teal-lt);font-size:.75rem;font-weight:500;padding:4px 11px;border-radius:20px}
.why-box{background:rgba(255,255,255,.06);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:var(--r2);padding:1.9rem}
.why-box h3{font-family:var(--serif);color:#fff;font-size:1.05rem;font-style:italic;margin-bottom:1.2rem}
.why-list{list-style:none;display:flex;flex-direction:column;gap:.6rem}
.why-list li{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.68);font-size:.84rem;font-weight:300}
.why-list li::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--teal-lt);flex-shrink:0}

/* inner content */
.inner-content{padding:5.5rem 0;background:#fff}
.inner-grid{display:grid;grid-template-columns:1fr 1fr;gap:4.5rem;align-items:start}
.checklist{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.8rem}
.check-item{display:flex;align-items:flex-start;gap:12px;padding:.9rem 1.1rem;background:var(--cream);border:1px solid var(--border);border-radius:10px;transition:border-color .2s}
.check-item:hover{border-color:var(--teal)}
.check-ico{width:22px;height:22px;border-radius:6px;background:var(--teal-pale);border:1.5px solid rgba(21,90,66,.25);display:flex;align-items:center;justify-content:center;font-size:.72rem;color:var(--teal);flex-shrink:0;margin-top:1px}
.check-item h4{font-size:.87rem;font-weight:600;color:var(--navy);margin-bottom:2px}
.check-item p{font-size:.79rem;color:var(--muted);font-weight:300;line-height:1.42}
.sticky-panel{position:sticky;top:84px}
.dark-box{background:var(--navy);border-radius:var(--r2);padding:2.2rem;margin-bottom:1.4rem}
.dark-box h3{font-family:var(--serif);color:#fff;font-style:italic;font-size:1.3rem;margin-bottom:.9rem}
.dark-box p{color:rgba(255,255,255,.52);font-size:.86rem;font-weight:300;line-height:1.68;margin-bottom:1.5rem}
.dark-box ul{list-style:none;display:flex;flex-direction:column;gap:.55rem;margin-bottom:1.7rem}
.dark-box ul li{display:flex;align-items:center;gap:9px;color:rgba(255,255,255,.68);font-size:.84rem;font-weight:300}
.dark-box ul li::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--teal-lt);flex-shrink:0}
.enquiry-form{background:var(--cream);border:1px solid var(--border);border-radius:var(--r2);padding:2.2rem}
.enquiry-form h3{font-family:var(--serif);font-size:1.2rem;font-style:italic;color:var(--navy);margin-bottom:1.4rem}
.form-row{margin-bottom:1.1rem}
.form-row label{display:block;font-size:.76rem;font-weight:600;color:var(--navy);text-transform:uppercase;letter-spacing:.3px;margin-bottom:5px}
.form-row input,.form-row select,.form-row textarea{width:100%;padding:.7rem 1rem;border:1.5px solid var(--border);border-radius:8px;font-family:var(--sans);font-size:.88rem;color:var(--text);background:#fff;transition:border-color .2s;outline:none}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--teal)}
.form-row textarea{min-height:90px;resize:vertical}
.form-2{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}

/* inner steps */
.inner-steps{padding:5rem 0;background:var(--cream)}
.inner-steps h2{font-family:var(--serif);font-size:clamp(1.7rem,2.5vw,2.3rem);color:var(--navy);font-style:italic;margin-bottom:2.4rem}

/* faq */
.faq-section{padding:5rem 0;background:#fff}
.faq-section h2{font-family:var(--serif);font-size:clamp(1.7rem,2.5vw,2.3rem);color:var(--navy);font-style:italic;margin-bottom:2.2rem}
.faq{max-width:700px}
.faq-item{border-bottom:1px solid var(--border)}
.faq-q{display:flex;align-items:center;justify-content:space-between;padding:1.2rem 0;cursor:pointer;font-weight:500;font-size:.92rem;color:var(--navy);transition:color .2s}
.faq-q:hover{color:var(--teal)}
.faq-ico{width:22px;height:22px;border-radius:6px;background:var(--teal-pale);border:1px solid rgba(21,90,66,.2);display:flex;align-items:center;justify-content:center;font-size:.82rem;color:var(--teal);flex-shrink:0;transition:all .3s}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease,padding .35s ease}
.faq-a.open{max-height:220px;padding-bottom:1.2rem}
.faq-a p{font-size:.86rem;color:var(--muted);line-height:1.7;font-weight:300}

/* contact page */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:4.5rem;align-items:start}
.contact-info{display:flex;flex-direction:column;gap:1.3rem}
.cinfo-card{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:1.4rem;display:flex;align-items:flex-start;gap:1rem}
.cinfo-ico{width:42px;height:42px;border-radius:10px;background:var(--teal-pale);border:1.5px solid rgba(21,90,66,.2);display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex-shrink:0}
.cinfo-card h4{font-size:.87rem;font-weight:600;color:var(--navy);margin-bottom:.22rem}
.cinfo-card p,.cinfo-card a{font-size:.84rem;color:var(--muted);font-weight:300;line-height:1.55}
.cinfo-card a{transition:color .2s}.cinfo-card a:hover{color:var(--teal)}

/* calculators page */
.calc-tabs{display:flex;gap:.65rem;margin-bottom:2.8rem;flex-wrap:wrap}
.ctab{padding:.55rem 1.4rem;border-radius:8px;border:1.5px solid var(--border);background:transparent;font-family:var(--sans);font-size:.86rem;font-weight:500;color:var(--muted);cursor:pointer;transition:all .2s}
.ctab.active{background:var(--navy);border-color:var(--navy);color:#fff}
.cpanel{display:none}.cpanel.active{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}
.cbox{background:#fff;border:1px solid var(--border);border-radius:var(--r2);padding:2.4rem}
.cbox h3{font-family:var(--serif);font-size:1.3rem;font-style:italic;color:var(--navy);margin-bottom:.45rem}
.cbox .sub{color:var(--muted);font-size:.84rem;font-weight:300;margin-bottom:2rem}
.cf{margin-bottom:1.4rem}
.cf label{display:block;font-size:.76rem;font-weight:600;color:var(--navy);text-transform:uppercase;letter-spacing:.3px;margin-bottom:5px}
.cf .cv{font-size:1rem;font-weight:600;color:var(--teal)}
.cf input[type=range]{width:100%;accent-color:var(--teal);cursor:pointer;margin-top:3px}
.cf select,.cf input[type=number]{width:100%;padding:.7rem 1rem;border:1.5px solid var(--border);border-radius:8px;font-family:var(--sans);font-size:.88rem;color:var(--text);outline:none;transition:border-color .2s}
.cf select:focus,.cf input[type=number]:focus{border-color:var(--teal)}
.res-panel{background:var(--navy);border-radius:var(--r2);padding:2.4rem}
.res-panel h3{font-family:var(--serif);color:#fff;font-style:italic;margin-bottom:1.8rem;font-size:1.1rem}
.res-row{display:flex;justify-content:space-between;align-items:center;padding:.9rem 0;border-bottom:1px solid rgba(255,255,255,.08)}
.res-row:last-child{border-bottom:none}
.res-lbl{font-size:.82rem;color:rgba(255,255,255,.5);font-weight:300}
.res-val{font-family:var(--serif);font-size:1.25rem;font-weight:700;color:var(--teal-lt)}
.c-ffreq{display:flex;gap:.45rem;margin-top:5px;flex-wrap:wrap}
.c-fbtn{font-family:var(--sans);font-size:.76rem;padding:5px 12px;border-radius:6px;cursor:pointer;border:1.5px solid var(--border);background:transparent;color:var(--muted);transition:all .18s}
.c-fbtn.active{background:var(--navy);border-color:var(--navy);color:#fff;font-weight:600}
.cdisclaim{font-size:.73rem;color:var(--muted);margin-top:1.4rem;padding-top:1.4rem;border-top:1px solid var(--border);line-height:1.6}

/* RESPONSIVE */
@media(max-width:1024px){.benefits-grid{grid-template-columns:repeat(3,1fr)}.ins-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:1024px){.blog-feature-grid,.blog-post-layout,.blog-post-hero{grid-template-columns:1fr}}
@media(max-width:900px){
  .hero-inner,.split,.calc-grid,.comm-section .split,.ins-header,.how-grid,.inner-hero-grid,.inner-grid,.contact-grid,.cpanel.active{grid-template-columns:1fr}
  .hero-vis,.ins-grid{display:none}
  .testi-grid,.blog-grid{grid-template-columns:1fr 1fr}
  .blog-feature-grid{grid-template-columns:1fr}
  .nav-links,.nav-right{display:none}
  .hamburger{display:flex}
  .team-grid{grid-template-columns:1fr}
  .benefits-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .testi-grid,.blog-grid,.footer-grid,.why-grid,.comm-stats,.form-2,.benefits-grid{grid-template-columns:1fr}
  .nl-form{flex-direction:column}
  .stats-row{grid-template-columns:1fr 1fr}
}

/* Standalone page extras */
.footer-brand .fl{display:flex;align-items:center;gap:10px;margin-bottom:1.2rem}
.footer-brand p{color:rgba(255,255,255,.42);font-size:.82rem;font-weight:300;line-height:1.7;max-width:290px;margin-bottom:1rem}
.fsp{display:inline-block;border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.38);font-size:.7rem;padding:3px 9px;border-radius:4px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.08)}
.footer-col h5{font-family:var(--serif);color:#fff;font-size:.96rem;font-style:italic;margin-bottom:1.1rem}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.5rem}
.footer-col li a{color:rgba(255,255,255,.42);font-size:.82rem;transition:color .2s}
.footer-col li a:hover{color:var(--teal-lt)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:1.8rem}
.footer-bottom p{font-size:.78rem;color:rgba(255,255,255,.28)}
.social-row{display:flex;gap:.6rem}
.social-btn{width:34px;height:34px;border-radius:8px;border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.42);text-decoration:none;font-size:.72rem;font-weight:700;transition:all .2s}
.social-btn:hover{border-color:var(--teal-lt);color:var(--teal-lt)}
footer{background:var(--navy);padding:4rem 0 2rem}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr}}

/* Finnovo CodeIgniter redesign layer */
:root{
  --ink:#132018;
  --forest:#16372b;
  --deep:#102842;
  --fern:#227a57;
  --mint:#dff2e9;
  --sage:#edf5ef;
  --linen:#fbf7ef;
  --paper:#fffdf8;
  --clay:#b88655;
  --mist:#e7ece8;
  --shadow:0 18px 50px rgba(19,32,24,.1);
  --shadow-soft:0 10px 28px rgba(19,32,24,.08);
  --max:1180px;
  --r:8px;
  --r2:8px;
}

html{background:var(--paper)}
body{
  color:var(--ink);
  background:
    linear-gradient(180deg,rgba(251,247,239,.72),rgba(255,253,248,1) 520px),
    var(--paper);
  font-size:16px;
  letter-spacing:0;
}

a,button,input,select,textarea{font:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(34,122,87,.35);
  outline-offset:3px;
}

.container,.nav-wrap,.hero-inner,.inner-hero-inner{max-width:var(--max)}
.eyebrow{
  color:var(--fern);
  font-size:.72rem;
  letter-spacing:1.1px;
  font-weight:800;
}

.btn{
  border-radius:6px;
  padding:.82rem 1.2rem;
  min-height:44px;
  font-weight:800;
  letter-spacing:0;
  box-shadow:none;
}
.btn-teal{
  color:#fff;
  background:var(--forest);
  border:1px solid var(--forest);
}
.btn-teal:hover{
  background:var(--fern);
  border-color:var(--fern);
  transform:translateY(-1px);
}
.btn-white{
  color:var(--forest);
  background:var(--paper);
  border:1px solid rgba(22,55,43,.18);
}
.btn-ghost,.btn-navy-ghost{
  color:var(--forest);
  background:rgba(255,253,248,.76);
  border:1px solid rgba(22,55,43,.2);
}
.btn-ghost:hover,.btn-navy-ghost:hover{
  color:var(--forest);
  border-color:var(--forest);
  background:#fff;
}

nav{
  background:rgba(255,253,248,.9);
  border-bottom:1px solid rgba(22,55,43,.11);
  box-shadow:0 12px 34px rgba(19,32,24,.07);
}
.nav-wrap{height:74px}
.nav-logo-mark{
  width:36px;
  height:36px;
  border-radius:8px;
  background:var(--forest);
}
.nav-logo-text{color:var(--forest);font-size:1.28rem}
.nav-logo-text em{color:var(--fern)}
.nav-links{gap:1.2rem}
.nav-links a{
  color:rgba(19,32,24,.64);
  font-size:.82rem;
  font-weight:800;
  padding:.55rem 0;
}
.nav-links a:hover,.nav-links a.active{color:var(--forest)}
.nav-info{
  color:var(--forest);
  background:rgba(237,245,239,.75);
  border:1px solid rgba(22,55,43,.14);
  border-radius:6px;
  font-weight:700;
}
.nav-info:hover{color:var(--fern);border-color:rgba(34,122,87,.4)}
.nav-apply{
  background:var(--forest);
  border-radius:6px;
  font-weight:800;
}
.nav-apply:hover{background:var(--fern)}
.hamburger span{background:var(--forest)}
.mob-menu{
  top:74px;
  background:rgba(255,253,248,.98);
  border-bottom:1px solid rgba(22,55,43,.12);
}
.mob-menu a{
  color:rgba(19,32,24,.75);
  border-bottom:1px solid rgba(22,55,43,.09);
  font-weight:700;
}
.mob-menu a:hover,.mob-apply{color:var(--fern)!important}

.hero{
  min-height:92vh;
  padding:112px 0 34px;
  background:
    linear-gradient(90deg,rgba(255,253,248,.98) 0%,rgba(255,253,248,.9) 41%,rgba(255,253,248,.16) 68%,rgba(255,253,248,.08) 100%);
  align-items:center;
}
.hero-orb{display:none}
.hero-inner{
  grid-template-columns:minmax(0,.92fr) minmax(360px,.62fr);
  gap:2.25rem;
  align-items:center;
  padding-bottom:3.4rem;
}
.hero-pill{
  color:var(--forest);
  background:rgba(223,242,233,.92);
  border:1px solid rgba(34,122,87,.22);
  border-radius:999px;
  padding:7px 13px;
  letter-spacing:1px;
}
.hero-pill::before{background:var(--fern);animation:none}
.hero h1{
  color:var(--forest);
  font-size:clamp(2.7rem,5.2vw,5.35rem);
  line-height:.98;
  letter-spacing:0;
  max-width:740px;
}
.hero h1 em{color:var(--fern)}
.hero-desc{
  color:rgba(19,32,24,.72);
  font-size:1.06rem;
  line-height:1.72;
  max-width:560px;
  margin-bottom:1.8rem;
}
.hero-vis{
  gap:.9rem;
  align-self:end;
}
.hero-glass,.stat-box{
  background:rgba(255,253,248,.86);
  border:1px solid rgba(22,55,43,.12);
  box-shadow:var(--shadow-soft);
  backdrop-filter:blur(14px);
}
.hero-glass{padding:1.35rem}
.hero-glass-hd h3{color:var(--forest);font-size:1.18rem}
.badge{
  color:var(--fern);
  background:rgba(223,242,233,.86);
  border-color:rgba(34,122,87,.2);
}
.svc-link{
  color:rgba(19,32,24,.7);
  border-bottom:1px solid rgba(22,55,43,.09);
  font-weight:650;
}
.svc-link:hover{color:var(--fern)}
.svc-link .arr{opacity:1;color:var(--fern)}
.stats-row{gap:.75rem}
.stat-box{padding:1rem}
.stat-num{color:var(--forest);font-size:1.72rem}
.stat-lbl{color:rgba(19,32,24,.56);font-weight:700}

.ticker{
  background:var(--forest);
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
}
.tick-item{
  color:rgba(255,255,255,.88);
  font-weight:800;
}

.benefits,.comm-section,.blog-section,.inner-steps{
  background:var(--linen);
}
.mort-section,.testi-section,.how-section,.faq-section,.inner-content{
  background:var(--paper);
}
.ins-section,.calc-banner,.cta-band{
  background:var(--forest);
}
.ins-section::before,.inner-hero::before,.comm-panel::after{display:none}

.benefits,.mort-section,.comm-section,.testi-section,.team-section,.ins-section,.how-section,.blog-section,.inner-content,.inner-steps,.faq-section{
  padding:5.8rem 0;
}
.benefits h2,.split-content h2,.testi-hd h2,.ins-header h2,.blog-hd h2,.inner-steps h2,.faq-section h2,.cta-band h2{
  color:var(--forest);
  font-style:normal;
  letter-spacing:0;
}
.ins-header h2,.cta-band h2{color:#fff}
.split-content .lead,.ins-header .sub,.blog-card p,.blog-feature-body p,.check-item p,.step-v p,.why-card p,.faq-a p{
  color:rgba(19,32,24,.67);
}
.ins-header .sub{color:rgba(255,255,255,.72)}

.ben-card,.blog-card,.blog-feature-card,.testi-card,.team-card,.why-card,.check-item,.cinfo-card,.cbox,.blog-post-article,.blog-related-item,.blog-empty{
  border-radius:8px;
  border:1px solid rgba(22,55,43,.12);
  background:rgba(255,253,248,.94);
  box-shadow:0 1px 0 rgba(22,55,43,.03);
}
.ben-card:hover,.blog-card:hover,.blog-feature-card:hover,.testi-card:hover,.team-card:hover,.why-card:hover,.check-item:hover,.cinfo-card:hover,.blog-related-item:hover{
  border-color:rgba(34,122,87,.38);
  box-shadow:var(--shadow-soft);
}
.ben-card{
  text-align:left;
  min-height:178px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
.ben-ico,.ins-ico,.cinfo-ico{
  width:42px;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:8px;
  background:var(--sage);
  border:1px solid rgba(34,122,87,.14);
  margin-bottom:.9rem;
}

.visual-panel,.comm-panel,.dark-box,.res-panel,.why-panel,.calc-box{
  border-radius:8px;
  background:var(--forest);
  border:1px solid rgba(255,255,255,.09);
  box-shadow:var(--shadow);
}
.visual-panel{
  min-height:460px;
  background:
    linear-gradient(180deg,rgba(22,55,43,.04),rgba(22,55,43,.92));
}
.visual-panel::before{display:none}
.v-box{
  background:rgba(255,253,248,.12);
  border-color:rgba(255,255,255,.16);
}
.visual-caption strong,.comm-stat-num,.res-val,.cfield .cval,.inner-hero h1 em{color:var(--mint)}
.svc-row{
  background:var(--sage);
  border-color:rgba(22,55,43,.11);
  border-radius:8px;
  font-weight:800;
}
.svc-row:hover{
  background:var(--mint);
  border-color:rgba(34,122,87,.36);
  color:var(--forest);
}

.calc-grid,.split,.how-grid,.inner-grid,.contact-grid,.cpanel.active{
  gap:3rem;
}
.calc-left h2,.calc-left p{color:#fff}
.calc-left p{color:rgba(255,255,255,.7)}
.fbtn,.c-fbtn{
  border-radius:6px;
  font-weight:800;
}
.fbtn.active,.c-fbtn.active{
  color:var(--forest);
  background:var(--mint);
  border-color:var(--mint);
}
.calc-result{
  background:var(--paper);
  border-radius:8px;
}
.calc-result-num{color:var(--forest)}
.calc-result-lbl{color:rgba(19,32,24,.6);font-weight:700}

.ins-grid{gap:1rem}
.ins-card{
  border-radius:8px;
  background:rgba(255,253,248,.08);
  border-color:rgba(255,255,255,.12);
}
.ins-card:hover{
  background:rgba(255,253,248,.13);
  border-color:rgba(223,242,233,.45);
}
.ins-card h4{font-style:normal}
.ins-more{color:var(--mint);font-weight:800}

.inner-hero{
  background:
    linear-gradient(90deg,rgba(22,55,43,.93),rgba(22,55,43,.72));
  padding:122px 0 70px;
}
.breadcrumb a,.breadcrumb span{color:rgba(255,255,255,.6)}
.breadcrumb .cur{color:#fff}
.inner-hero h1{
  color:#fff;
  letter-spacing:0;
  font-size:clamp(2.35rem,4.4vw,4.45rem);
}
.inner-hero-desc{color:rgba(255,255,255,.77)}
.ptag{
  color:#fff;
  background:rgba(255,255,255,.13);
  border-color:rgba(255,255,255,.18);
}
.why-box{
  background:rgba(255,253,248,.11);
  border-color:rgba(255,255,255,.16);
}
.why-list li::before,.dark-box ul li::before{color:var(--mint)}

.blog-thumb,.blog-feature-thumb,.blog-post-hero-card{
  background:
    linear-gradient(180deg,rgba(22,55,43,.05),rgba(22,55,43,.72))!important;
  color:#fff;
}
.blog-cat,.blog-all,.blog-read{color:var(--fern);font-weight:800}
.blog-card h3,.blog-feature-body h2,.blog-post-content h2,.blog-post-content h3,.blog-empty h3,.enquiry-form h3,.dark-box h3,.why-panel h3,.cbox h3,.res-panel h3{
  color:var(--forest);
  font-style:normal;
}
.dark-box h3,.res-panel h3{color:#fff}
.blog-post-layout{align-items:start}
.blog-post-article{box-shadow:var(--shadow-soft)}
.blog-post-content p{color:rgba(19,32,24,.76)}
.blog-related-item:hover{transform:none}

.nl-section{background:var(--forest)}
.nl-form input{
  border-radius:6px;
  background:rgba(255,255,255,.1);
}
.nl-form button{
  border-radius:6px;
  background:var(--mint);
  color:var(--forest);
}

.enquiry-form{
  background:rgba(255,253,248,.96)!important;
  border-color:rgba(22,55,43,.12);
  border-radius:8px;
  box-shadow:var(--shadow-soft);
}
.form-row input,.form-row select,.form-row textarea,.cf select,.cf input[type=number]{
  border-radius:6px;
  border-color:rgba(22,55,43,.16);
  background:#fff;
}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus,.cf select:focus,.cf input[type=number]:focus{
  border-color:var(--fern);
  box-shadow:0 0 0 4px rgba(34,122,87,.1);
}
.ctab{
  border-radius:6px;
  background:#fff;
  font-weight:800;
}
.ctab.active{
  background:var(--forest);
  border-color:var(--forest);
}
.res-panel{background:var(--forest)}

footer{
  background:var(--ink);
  border-top:1px solid rgba(255,255,255,.08);
}
.footer-col h5{font-style:normal}
.footer-brand p,.footer-col li a,.footer-bottom p,.social-btn,.fsp{
  color:rgba(255,255,255,.58);
}
.social-btn{border-radius:6px}
.social-btn:hover,.footer-col li a:hover{color:var(--mint);border-color:var(--mint)}

@media(max-width:1024px){
  .hero{
    background:
      linear-gradient(180deg,rgba(255,253,248,.98),rgba(255,253,248,.82));
  }
  .hero-inner{grid-template-columns:1fr}
  .hero-vis{max-width:620px}
  .benefits-grid,.ins-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:900px){
  .nav-wrap{height:68px}
  .mob-menu{top:68px}
  .hero{padding-top:104px;min-height:auto}
  .hero-inner{padding-bottom:2.5rem}
  .nav-links,.nav-right{display:none}
  .hamburger{display:flex}
  .split,.calc-grid,.how-grid,.inner-grid,.contact-grid,.cpanel.active,.inner-hero-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:600px){
  .container,.hero-inner,.inner-hero-inner,.nav-wrap{padding-left:1.1rem;padding-right:1.1rem}
  .hero h1{font-size:2.75rem}
  .hero-vis{display:none}
  .benefits-grid,.ins-grid,.blog-grid,.testi-grid,.team-grid,.why-grid,.stats-row,.form-2{
    grid-template-columns:1fr;
  }
  .nl-form,.hero-btns{flex-direction:column}
  .btn,.nl-form button{width:100%;justify-content:center}
}

/* Premium reusable icon system */
.fi{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1em;
  height:1em;
  color:currentColor;
  flex-shrink:0;
  vertical-align:-.14em;
}
.fi svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.85;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.brand-icon{
  width:19px;
  height:19px;
  color:#fff;
}
.text-icon{
  width:1.05em;
  height:1.05em;
  margin-right:.42rem;
  color:var(--fern);
}
.tick-icon{
  width:18px;
  height:18px;
  color:var(--mint);
}
.tick-item .text-icon{
  color:var(--mint);
  margin-right:0;
}
.ben-ico.fi,.ins-ico.fi,.cinfo-ico.fi,.check-ico.fi,.sico.fi,.icon-card__icon{
  margin-right:0;
}
.ben-ico .fi,.ins-ico .fi,.cinfo-ico .fi{
  width:24px;
  height:24px;
}
.ben-ico,
.ins-ico,
.cinfo-ico,
.check-ico{
  color:var(--forest);
}
.check-ico.fi{
  width:24px;
  height:24px;
  border-radius:7px;
}
.sico .fi,.sico.fi{
  width:20px;
  height:20px;
  color:var(--fern);
}
.hero{
  background:
    radial-gradient(circle at 74% 30%,rgba(223,242,233,.96) 0 12%,transparent 13%),
    radial-gradient(circle at 84% 54%,rgba(34,122,87,.14) 0 11%,transparent 12%),
    radial-gradient(circle at 68% 70%,rgba(184,134,85,.18) 0 10%,transparent 11%),
    linear-gradient(90deg,rgba(255,253,248,.99) 0%,rgba(255,253,248,.96) 45%,rgba(255,253,248,.7) 72%,rgba(255,253,248,.92) 100%);
}
.hero::after{
  content:"";
  position:absolute;
  right:max(2rem,calc((100vw - var(--max))/2));
  top:150px;
  width:min(430px,34vw);
  aspect-ratio:1;
  border:1px solid rgba(22,55,43,.12);
  border-radius:8px;
  background:
    linear-gradient(135deg,rgba(255,253,248,.88),rgba(237,245,239,.84)),
    radial-gradient(circle at 30% 28%,rgba(34,122,87,.18),transparent 22%),
    radial-gradient(circle at 70% 70%,rgba(184,134,85,.16),transparent 24%);
  box-shadow:var(--shadow);
  z-index:0;
}
.hero::before{
  content:"";
  position:absolute;
  right:calc(max(2rem,calc((100vw - var(--max))/2)) + 52px);
  top:205px;
  width:min(315px,25vw);
  aspect-ratio:1;
  background:
    linear-gradient(var(--forest),var(--forest)) 50% 12%/42px 2px no-repeat,
    linear-gradient(var(--forest),var(--forest)) 50% 88%/42px 2px no-repeat,
    linear-gradient(var(--forest),var(--forest)) 12% 50%/2px 42px no-repeat,
    linear-gradient(var(--forest),var(--forest)) 88% 50%/2px 42px no-repeat,
    radial-gradient(circle at 50% 16%,var(--forest) 0 18px,transparent 19px),
    radial-gradient(circle at 84% 50%,var(--fern) 0 18px,transparent 19px),
    radial-gradient(circle at 50% 84%,var(--clay) 0 18px,transparent 19px),
    radial-gradient(circle at 16% 50%,var(--deep) 0 18px,transparent 19px),
    radial-gradient(circle at 50% 50%,rgba(255,253,248,.96) 0 56px,transparent 57px);
  border:1px solid rgba(22,55,43,.14);
  border-radius:999px;
  z-index:0;
}
.hero-inner{z-index:1}
.visual-panel{
  background:
    linear-gradient(180deg,rgba(22,55,43,.08),rgba(22,55,43,.96)),
    radial-gradient(circle at 72% 22%,rgba(223,242,233,.26),transparent 32%),
    var(--forest);
}
.inner-hero{
  background:
    linear-gradient(90deg,rgba(22,55,43,.95),rgba(22,55,43,.78)),
    radial-gradient(circle at 82% 38%,rgba(223,242,233,.18),transparent 24%),
    radial-gradient(circle at 68% 74%,rgba(184,134,85,.18),transparent 24%),
    var(--forest);
}
.blog-thumb,.blog-feature-thumb,.blog-post-hero-card{
  background:
    radial-gradient(circle at 30% 25%,rgba(223,242,233,.2),transparent 28%),
    linear-gradient(135deg,var(--forest),#214836)!important;
}
.blog-thumb .text-icon,.blog-feature-thumb .text-icon,.blog-post-hero-card .text-icon{
  width:64px;
  height:64px;
  margin:0;
  color:var(--mint);
}
.blog-feature-thumb .text-icon,.blog-post-hero-card .text-icon{
  width:82px;
  height:82px;
}
.icon-card{
  display:block;
  border:1px solid rgba(22,55,43,.12);
  border-radius:8px;
  background:rgba(255,253,248,.94);
  padding:1.4rem;
  color:var(--ink);
  transition:border-color .2s,box-shadow .2s,transform .2s;
}
.icon-card:hover{
  border-color:rgba(34,122,87,.38);
  box-shadow:var(--shadow-soft);
  transform:translateY(-2px);
}
.icon-card__icon{
  width:42px;
  height:42px;
  border-radius:8px;
  color:var(--forest);
  background:var(--sage);
  border:1px solid rgba(34,122,87,.14);
  padding:9px;
  margin-bottom:.9rem;
}
.icon-card h3{
  color:var(--forest);
  font-size:1rem;
  margin-bottom:.35rem;
}
.icon-card p{
  color:rgba(19,32,24,.67);
  font-size:.86rem;
  line-height:1.58;
}
@media(max-width:1024px){
  .hero::after,.hero::before{opacity:.18}
}
@media(max-width:700px){
  .hero::after,.hero::before{display:none}
}
/* Icon cleanup for nested reusable icons */
.tick-item .fi,
.sico .fi,
.ben-ico .fi,
.ins-ico .fi,
.cinfo-ico .fi,
.why-card > span .fi,
.blog-thumb .fi,
.blog-feature-thumb .fi,
.blog-post-hero-card .fi{
  margin-right:0;
}
h4 .text-icon{
  vertical-align:-.18em;
}
.check-item h4{
  display:flex;
  align-items:center;
  gap:.46rem;
}
.check-item h4 .text-icon{
  margin-right:0;
}

/* Blue-grey palette layer */
:root{
  --ink:#111827;
  --forest:#16283f;
  --deep:#10243a;
  --fern:#3e6f96;
  --mint:#dbe8f2;
  --sage:#eef3f7;
  --linen:#f2f4f6;
  --paper:#f8fafc;
  --clay:#8fa5b8;
  --mist:#d7e0e8;
  --shadow:0 18px 50px rgba(17,24,39,.1);
  --shadow-soft:0 10px 28px rgba(17,24,39,.08);
}

body{
  color:var(--ink);
  background:
    linear-gradient(180deg,rgba(242,244,246,.9),rgba(248,250,252,1) 540px),
    var(--paper);
}

nav{
  background:rgba(248,250,252,.92);
  border-bottom-color:rgba(22,40,63,.12);
}

.nav-logo-mark,
.nav-apply,
.btn-teal,
.ctab.active,
.c-fbtn.active{
  background:var(--forest);
  border-color:var(--forest);
}

.nav-logo-text,
.nav-info,
.nav-links a:hover,
.nav-links a.active,
.hero h1,
.hero-glass-hd h3,
.stat-num,
.benefits h2,
.split-content h2,
.testi-hd h2,
.blog-hd h2,
.blog-card h3,
.blog-feature-body h2,
.blog-post-content h2,
.blog-post-content h3,
.enquiry-form h3,
.dark-box h3,
.why-panel h3,
.cbox h3,
.res-panel h3,
.faq-section h2,
.inner-steps h2,
.check-item h4,
.cinfo-card h4,
.faq-q{
  color:var(--forest);
}

.nav-logo-text em,
.hero h1 em,
.eyebrow,
.blog-cat,
.blog-all,
.blog-read,
.svc-arr,
.cf .cv{
  color:var(--fern);
}

.nav-apply,
.btn-teal,
.ctab.active,
.c-fbtn.active{
  color:#fff;
}

.nav-apply:hover,
.btn-teal:hover{
  background:var(--fern);
  border-color:var(--fern);
}

.hero{
  background:
    radial-gradient(circle at 74% 30%,rgba(219,232,242,.96) 0 12%,transparent 13%),
    radial-gradient(circle at 84% 54%,rgba(62,111,150,.14) 0 11%,transparent 12%),
    radial-gradient(circle at 68% 70%,rgba(143,165,184,.18) 0 10%,transparent 11%),
    linear-gradient(90deg,rgba(248,250,252,.99) 0%,rgba(248,250,252,.96) 45%,rgba(238,243,247,.74) 72%,rgba(248,250,252,.92) 100%);
}

.hero-pill,
.badge{
  color:var(--forest);
  background:rgba(219,232,242,.9);
  border-color:rgba(62,111,150,.24);
}

.hero-desc,
.split-content .lead,
.blog-card p,
.blog-feature-body p,
.check-item p,
.step-v p,
.why-card p,
.faq-a p,
.cbox .sub,
.cdisclaim,
.cinfo-card p,
.cinfo-card a{
  color:rgba(17,24,39,.66);
}

.hero-glass,
.stat-box,
.ben-card,
.blog-card,
.blog-feature-card,
.testi-card,
.team-card,
.why-card,
.check-item,
.cinfo-card,
.cbox,
.blog-post-article,
.blog-related-item,
.blog-empty,
.enquiry-form,
.icon-card{
  background:rgba(248,250,252,.96);
  border-color:rgba(22,40,63,.12);
}

.benefits,
.comm-section,
.blog-section,
.inner-steps{
  background:var(--linen);
}

.mort-section,
.testi-section,
.how-section,
.faq-section,
.inner-content{
  background:var(--paper);
}

.visual-panel,
.comm-panel,
.dark-box,
.res-panel,
.why-panel,
.calc-box,
.ins-section,
.calc-banner,
.cta-band{
  background:var(--forest);
}

.visual-panel{
  background:
    linear-gradient(180deg,rgba(22,40,63,.08),rgba(22,40,63,.96)),
    radial-gradient(circle at 72% 22%,rgba(219,232,242,.24),transparent 32%),
    var(--forest);
}

.inner-hero{
  background:
    linear-gradient(90deg,rgba(22,40,63,.95),rgba(22,40,63,.78)),
    radial-gradient(circle at 82% 38%,rgba(219,232,242,.16),transparent 24%),
    radial-gradient(circle at 68% 74%,rgba(143,165,184,.18),transparent 24%),
    var(--forest);
}

.blog-thumb,
.blog-feature-thumb,
.blog-post-hero-card{
  background:
    radial-gradient(circle at 30% 25%,rgba(219,232,242,.2),transparent 28%),
    linear-gradient(135deg,var(--forest),#274463)!important;
}

.ticker{
  background:var(--forest);
}

.tick-item .text-icon,
.tick-item,
.visual-caption strong,
.comm-stat-num,
.res-val,
.inner-hero h1 em,
.ins-more,
.footer-col li a:hover,
.social-btn:hover{
  color:var(--mint);
}

.ben-ico,
.ins-ico,
.cinfo-ico,
.check-ico,
.icon-card__icon{
  color:var(--forest);
  background:var(--mint);
  border-color:rgba(62,111,150,.16);
}

.svc-row{
  background:#fff;
  border-color:rgba(22,40,63,.12);
}

.svc-row:hover{
  background:var(--sage);
  border-color:rgba(62,111,150,.32);
  color:var(--forest);
}

.calc-result,
.fbtn.active{
  background:var(--mint);
}

.calc-result-num,
.calc-result-lbl,
.fbtn.active{
  color:var(--forest);
}

.form-row input,
.form-row select,
.form-row textarea,
.cf select,
.cf input[type=number]{
  background:#fff;
  border-color:rgba(22,40,63,.16);
}

.form-row input:focus,
.form-row select:focus,
.form-row textarea:focus,
.cf select:focus,
.cf input[type=number]:focus{
  border-color:var(--fern);
  box-shadow:0 0 0 4px rgba(62,111,150,.1);
}

footer{
  background:#111827;
}

.footer-brand .nav-logo-text{
  color:#fff;
}

@media(max-width:1024px){
  .hero{
    background:
      linear-gradient(180deg,rgba(248,250,252,.99),rgba(238,243,247,.86));
  }
}

/* Reduce true white: light-grey surfaces with the blue-grey palette */
:root{
  --surface:#eef2f6;
  --surface-soft:#f5f7f9;
}

html,
body,
main{
  background:var(--surface);
}

nav{
  background:rgba(245,247,249,.94);
}

.hero{
  background:
    radial-gradient(circle at 74% 30%,rgba(219,232,242,.96) 0 12%,transparent 13%),
    radial-gradient(circle at 84% 54%,rgba(62,111,150,.14) 0 11%,transparent 12%),
    radial-gradient(circle at 68% 70%,rgba(143,165,184,.18) 0 10%,transparent 11%),
    linear-gradient(90deg,var(--surface-soft) 0%,var(--surface-soft) 45%,var(--surface) 72%,var(--surface-soft) 100%);
}

.mort-section,
.testi-section,
.how-section,
.faq-section,
.inner-content,
.blog-section{
  background:var(--surface-soft);
}

.benefits,
.comm-section,
.inner-steps,
.blog-feature-band{
  background:var(--surface);
}

.hero-glass,
.stat-box,
.ben-card,
.blog-card,
.blog-feature-card,
.testi-card,
.team-card,
.why-card,
.check-item,
.cinfo-card,
.cbox,
.blog-post-article,
.blog-related-item,
.blog-empty,
.enquiry-form,
.icon-card,
.svc-row,
.calc-box,
.form-row input,
.form-row select,
.form-row textarea,
.cf select,
.cf input[type=number]{
  background:var(--surface-soft);
}

.btn-white,
.btn-ghost,
.btn-navy-ghost,
.nav-info{
  background:var(--surface-soft);
}

.hero-pill,
.badge,
.calc-result,
.fbtn.active{
  background:var(--mint);
}

@media(max-width:1024px){
  .hero{
    background:linear-gradient(180deg,var(--surface-soft),var(--surface));
  }
}

/* Mortgage help section spacing */
.mort-section{
  padding-top:7.5rem;
  padding-bottom:5.5rem;
  scroll-margin-top:88px;
}

.mort-section .split{
  align-items:start;
}

.mort-section .visual-panel{
  min-height:460px;
  padding:2.4rem;
}

.mort-section .split-content{
  padding-top:.1rem;
}

.mort-section .split-content .eyebrow{
  margin-bottom:.65rem;
}

.mort-section .split-content h2{
  margin-bottom:1rem;
}

.mort-section .svc-list{
  gap:.55rem;
}

.mort-section .svc-row{
  min-height:56px;
}

@media(max-width:1024px){
  .mort-section{
    padding-top:4.5rem;
  }

  .mort-section .visual-panel{
    min-height:390px;
  }
}

/* Final client-approved palette - must remain last */
:root{
  --soil:#161616;
  --forest:#155A42;
  --olive:#D2D8BC;
  --navy:#161616;
  --navy2:#242424;
  --teal:#155A42;
  --teal2:#104632;
  --teal-lt:#D2D8BC;
  --teal-pale:#EEF2E2;
  --gold:#D2D8BC;
  --cream:#F3F5EA;
  --text:#161616;
  --muted:#5f675c;
  --border:#dde2cf;
  --aqua:#D2D8BC;
  --cyan:#155A42;
  --blue:#155A42;
  --deep-blue:#161616;
  --navy-blue:#161616;
  --ink:#161616;
  --deep:#161616;
  --fern:#155A42;
  --mint:#D2D8BC;
  --sage:#EEF2E2;
  --linen:#F3F5EA;
  --paper:#FAFBF6;
  --clay:#155A42;
  --mist:#dde2cf;
  --surface:#F3F5EA;
  --surface-soft:#FAFBF6;
  --shadow:0 18px 50px rgba(22,22,22,.1);
  --shadow-soft:0 10px 28px rgba(22,22,22,.08);
}

html,
body,
main{
  background:var(--surface);
}

body{
  color:var(--soil);
}

nav{
  background:rgba(250,251,246,.94);
  border-bottom-color:rgba(22,22,22,.12);
}

.nav-logo-mark,
.nav-apply,
.btn-teal,
.ctab.active,
.c-fbtn.active{
  background:var(--soil);
  border-color:var(--soil);
}

.nav-apply:hover,
.btn-teal:hover{
  background:var(--forest);
  border-color:var(--forest);
}

.hero{
  background:
    radial-gradient(circle at 74% 30%,rgba(210,216,188,.72) 0 12%,transparent 13%),
    radial-gradient(circle at 84% 54%,rgba(21,90,66,.18) 0 11%,transparent 12%),
    linear-gradient(90deg,rgba(250,251,246,.99) 0%,rgba(250,251,246,.96) 45%,rgba(243,245,234,.78) 72%,rgba(250,251,246,.92) 100%);
}

.hero::before,
.hero::after{
  border-color:rgba(22,22,22,.12);
  background:
    linear-gradient(135deg,rgba(250,251,246,.88),rgba(238,242,226,.84)),
    radial-gradient(circle at 30% 28%,rgba(21,90,66,.16),transparent 22%),
    radial-gradient(circle at 70% 70%,rgba(210,216,188,.4),transparent 24%);
}

.hero h1,
.hero-glass-hd h3,
.nav-logo-text,
.nav-info,
.nav-links a,
.stat-num,
.benefits h2,
.split-content h2,
.testi-hd h2,
.blog-hd h2,
.blog-card h3,
.blog-feature-body h2,
.blog-post-content h2,
.blog-post-content h3,
.enquiry-form h3,
.dark-box h3,
.why-panel h3,
.cbox h3,
.res-panel h3,
.faq-section h2,
.inner-steps h2,
.check-item h4,
.cinfo-card h4,
.faq-q{
  color:var(--soil);
}

.hero h1 em,
.nav-logo-text em,
.nav-links a:hover,
.nav-links a.active,
.eyebrow,
.blog-cat,
.blog-all,
.blog-read,
.svc-arr,
.cf .cv{
  color:var(--forest);
}

.hero-pill,
.badge,
.calc-result,
.fbtn.active,
.ben-ico,
.ins-ico,
.cinfo-ico,
.check-ico,
.icon-card__icon{
  color:var(--soil);
  background:var(--olive);
  border-color:rgba(21,90,66,.18);
}

.hero-glass,
.stat-box,
.ben-card,
.blog-card,
.blog-feature-card,
.testi-card,
.team-card,
.why-card,
.check-item,
.cinfo-card,
.cbox,
.blog-post-article,
.blog-related-item,
.blog-empty,
.enquiry-form,
.icon-card,
.svc-row,
.calc-box,
.form-row input,
.form-row select,
.form-row textarea,
.cf select,
.cf input[type=number]{
  background:var(--surface-soft);
  border-color:rgba(21,90,66,.15);
}

.benefits,
.comm-section,
.inner-steps,
.blog-feature-band{
  background:var(--surface);
}

.mort-section,
.testi-section,
.how-section,
.faq-section,
.inner-content,
.blog-section{
  background:var(--surface-soft);
}

.visual-panel,
.comm-panel,
.dark-box,
.res-panel,
.why-panel,
.calc-banner,
.ins-section,
.cta-band{
  background:var(--soil);
}

.visual-panel{
  background:
    linear-gradient(180deg,rgba(21,90,66,.08),rgba(22,22,22,.94)),
    radial-gradient(circle at 72% 22%,rgba(210,216,188,.24),transparent 32%),
    var(--soil);
}

.comm-panel{
  background:
    linear-gradient(160deg,rgba(21,90,66,.28),transparent 34%),
    var(--soil);
}

.inner-hero{
  background:
    linear-gradient(90deg,rgba(22,22,22,.96),rgba(21,90,66,.82)),
    radial-gradient(circle at 82% 38%,rgba(210,216,188,.18),transparent 24%),
    radial-gradient(circle at 68% 74%,rgba(21,90,66,.18),transparent 24%),
    var(--soil);
}

.ticker,
footer{
  background:var(--soil);
}

.blog-thumb,
.blog-feature-thumb,
.blog-post-hero-card{
  background:
    radial-gradient(circle at 30% 25%,rgba(210,216,188,.2),transparent 28%),
    linear-gradient(135deg,var(--soil),var(--forest))!important;
}

.tick-item,
.tick-item .text-icon,
.visual-caption strong,
.comm-stat-num,
.res-val,
.inner-hero h1 em,
.ins-more,
.footer-col li a:hover,
.social-btn:hover{
  color:var(--olive);
}

.split-content .lead,
.blog-card p,
.blog-feature-body p,
.check-item p,
.step-v p,
.why-card p,
.faq-a p,
.cbox .sub,
.cdisclaim,
.cinfo-card p,
.cinfo-card a,
.hero-desc,
.svc-link,
.stat-lbl{
  color:rgba(22,22,22,.68)!important;
}

.svc-row:hover,
a[style*="border:1px solid var(--border)"]:hover,
a[style*="background:#fff;border:1px solid var(--border)"]:hover,
a[style*="background:var(--cream);border:1px solid var(--border)"]:hover{
  background:var(--teal-pale)!important;
  border-color:var(--forest)!important;
  color:var(--soil)!important;
}

.ben-card:hover,
.testi-card:hover,
.team-card:hover,
.why-card:hover,
.blog-card:hover,
.blog-feature-card:hover,
.blog-related-item:hover,
.check-item:hover{
  border-color:var(--forest)!important;
  box-shadow:0 10px 28px rgba(22,22,22,.1)!important;
}

span[style*="color:var(--teal)"],
a[style*="color:var(--teal)"],
div[style*="color:var(--teal)"]{
  color:var(--forest)!important;
}

.calc-box .cfield .cval,
.cbox .cf .cv,
.calc-result-num{
  color:var(--soil)!important;
}

.calc-box input[type=range],
.cbox input[type=range]{
  accent-color:var(--forest)!important;
}

.calc-box .fbtn.active,
.cbox .c-fbtn.active{
  background:var(--soil)!important;
  border-color:var(--soil)!important;
}

.form-row input:focus,
.form-row select:focus,
.form-row textarea:focus,
.cf select:focus,
.cf input[type=number]:focus{
  border-color:var(--forest);
  box-shadow:0 0 0 4px rgba(21,90,66,.14);
}

@media(max-width:1024px){
  .hero{
    background:linear-gradient(180deg,var(--surface-soft),var(--surface));
  }
}

/* Mortgage help section spacing - final override */
.mort-section{
  padding-top:7.5rem;
  padding-bottom:5.5rem;
  scroll-margin-top:88px;
}

.mort-section .split{
  align-items:start;
}

.mort-section .visual-panel{
  min-height:460px;
  padding:2.4rem;
}

.mort-section .split-content{
  padding-top:.1rem;
}

.mort-section .split-content .eyebrow{
  margin-bottom:.65rem;
}

.mort-section .split-content h2{
  margin-bottom:1rem;
}

.mort-section .svc-list{
  gap:.55rem;
}

.mort-section .svc-row{
  min-height:56px;
}

@media(max-width:1024px){
  .mort-section{
    padding-top:4.5rem;
  }

  .mort-section .visual-panel{
    min-height:390px;
  }
}

/* Final client-approved palette */
:root{
  --navy:#161616;
  --soil:#161616;
  --navy2:#242424;
  --teal:#155A42;
  --forest:#155A42;
  --teal2:#104632;
  --teal-lt:#D2D8BC;
  --olive:#D2D8BC;
  --teal-pale:#EEF2E2;
  --gold:#D2D8BC;
  --cream:#F3F5EA;
  --text:#161616;
  --muted:#5f675c;
  --border:#dde2cf;
  --aqua:#D2D8BC;
  --cyan:#D2D8BC;
  --blue:#155A42;
  --deep-blue:#161616;
  --navy-blue:#161616;
  --ink:#161616;
  --deep:#161616;
  --fern:#155A42;
  --mint:#D2D8BC;
  --sage:#EEF2E2;
  --linen:#F3F5EA;
  --paper:#FAFBF6;
  --clay:#155A42;
  --mist:#dde2cf;
  --surface:#F3F5EA;
  --surface-soft:#FAFBF6;
  --shadow:0 18px 50px rgba(22,22,22,.1);
  --shadow-soft:0 10px 28px rgba(22,22,22,.08);
}

body{
  color:var(--soil);
  background:var(--surface-soft);
}

nav{
  background:rgba(250,251,246,.94);
  border-bottom-color:rgba(22,22,22,.12);
}

.nav-logo-mark,
.nav-apply,
.btn-teal,
.ctab.active,
.c-fbtn.active{
  background:var(--soil);
  border-color:var(--soil);
}

.nav-apply:hover,
.btn-teal:hover{
  background:var(--forest);
  border-color:var(--forest);
}

.hero{
  background:
    radial-gradient(circle at 74% 30%,rgba(210,216,188,.72) 0 12%,transparent 13%),
    radial-gradient(circle at 84% 54%,rgba(21,90,66,.18) 0 11%,transparent 12%),
    linear-gradient(90deg,rgba(250,251,246,.99) 0%,rgba(250,251,246,.96) 45%,rgba(243,245,234,.78) 72%,rgba(250,251,246,.92) 100%);
}

.hero::before,
.hero::after{
  border-color:rgba(22,22,22,.12);
  background:
    linear-gradient(135deg,rgba(250,251,246,.88),rgba(238,242,226,.84)),
    radial-gradient(circle at 30% 28%,rgba(21,90,66,.16),transparent 22%),
    radial-gradient(circle at 70% 70%,rgba(210,216,188,.4),transparent 24%);
}

.hero h1,
.hero-glass-hd h3,
.nav-logo-text,
.nav-info,
.nav-links a,
.stat-num,
.benefits h2,
.split-content h2,
.testi-hd h2,
.blog-hd h2,
.blog-card h3,
.blog-feature-body h2,
.blog-post-content h2,
.blog-post-content h3,
.enquiry-form h3,
.dark-box h3,
.why-panel h3,
.cbox h3,
.res-panel h3,
.faq-section h2,
.inner-steps h2,
.check-item h4,
.cinfo-card h4,
.faq-q{
  color:var(--soil);
}

.hero h1 em,
.nav-logo-text em,
.nav-links a:hover,
.nav-links a.active,
.eyebrow,
.blog-cat,
.blog-all,
.blog-read,
.svc-arr,
.cf .cv{
  color:var(--forest);
}

.hero-pill,
.badge,
.calc-result,
.fbtn.active,
.ben-ico,
.ins-ico,
.cinfo-ico,
.check-ico,
.icon-card__icon{
  color:var(--soil);
  background:var(--olive);
  border-color:rgba(21,90,66,.18);
}

.hero-glass,
.stat-box,
.ben-card,
.blog-card,
.blog-feature-card,
.testi-card,
.team-card,
.why-card,
.check-item,
.cinfo-card,
.cbox,
.blog-post-article,
.blog-related-item,
.blog-empty,
.enquiry-form,
.icon-card,
.svc-row,
.calc-box,
.form-row input,
.form-row select,
.form-row textarea,
.cf select,
.cf input[type=number]{
  background:var(--surface-soft);
  border-color:rgba(21,90,66,.15);
}

.visual-panel,
.comm-panel,
.dark-box,
.res-panel,
.why-panel,
.calc-banner,
.ins-section,
.cta-band{
  background:var(--soil);
}

.visual-panel{
  background:
    linear-gradient(180deg,rgba(21,90,66,.08),rgba(22,22,22,.94)),
    radial-gradient(circle at 72% 22%,rgba(210,216,188,.24),transparent 32%),
    var(--soil);
}

.comm-panel{
  background:
    linear-gradient(160deg,rgba(21,90,66,.28),transparent 34%),
    var(--soil);
}

.inner-hero{
  background:
    linear-gradient(90deg,rgba(22,22,22,.96),rgba(21,90,66,.82)),
    radial-gradient(circle at 82% 38%,rgba(210,216,188,.18),transparent 24%),
    radial-gradient(circle at 68% 74%,rgba(21,90,66,.18),transparent 24%),
    var(--soil);
}

.ticker,
footer{
  background:var(--soil);
}

.blog-thumb,
.blog-feature-thumb,
.blog-post-hero-card{
  background:
    radial-gradient(circle at 30% 25%,rgba(210,216,188,.2),transparent 28%),
    linear-gradient(135deg,var(--soil),var(--forest))!important;
}

.tick-item,
.tick-item .text-icon,
.visual-caption strong,
.comm-stat-num,
.res-val,
.inner-hero h1 em,
.ins-more,
.footer-col li a:hover,
.social-btn:hover{
  color:var(--olive);
}

.split-content .lead,
.blog-card p,
.blog-feature-body p,
.check-item p,
.step-v p,
.why-card p,
.faq-a p,
.cbox .sub,
.cdisclaim,
.cinfo-card p,
.cinfo-card a,
.hero-desc,
.svc-link,
.stat-lbl{
  color:rgba(22,22,22,.68)!important;
}

.svc-row:hover,
a[style*="border:1px solid var(--border)"]:hover,
a[style*="background:#fff;border:1px solid var(--border)"]:hover,
a[style*="background:var(--cream);border:1px solid var(--border)"]:hover{
  background:var(--teal-pale)!important;
  border-color:var(--forest)!important;
  color:var(--soil)!important;
}

.ben-card:hover,
.testi-card:hover,
.team-card:hover,
.why-card:hover,
.blog-card:hover,
.blog-feature-card:hover,
.blog-related-item:hover,
.check-item:hover{
  border-color:var(--forest)!important;
  box-shadow:0 10px 28px rgba(22,22,22,.1)!important;
}

.calc-box input[type=range],
.cbox input[type=range]{
  accent-color:var(--forest)!important;
}

.form-row input:focus,
.form-row select:focus,
.form-row textarea:focus,
.cf select:focus,
.cf input[type=number]:focus{
  border-color:var(--forest);
  box-shadow:0 0 0 4px rgba(21,90,66,.14);
}

@media(max-width:1024px){
  .hero{
    background:linear-gradient(180deg,var(--surface-soft),var(--surface));
  }
}
/* Final client-approved palette - must remain last */
:root{
  --soil:#161616;
  --forest:#155A42;
  --olive:#D2D8BC;
  --navy:#161616;
  --navy2:#242424;
  --teal:#155A42;
  --teal2:#104632;
  --teal-lt:#D2D8BC;
  --teal-pale:#EEF2E2;
  --gold:#D2D8BC;
  --cream:#F3F5EA;
  --text:#161616;
  --muted:#5f675c;
  --border:#dde2cf;
  --aqua:#D2D8BC;
  --cyan:#155A42;
  --blue:#155A42;
  --deep-blue:#161616;
  --navy-blue:#161616;
  --ink:#161616;
  --deep:#161616;
  --fern:#155A42;
  --mint:#D2D8BC;
  --sage:#EEF2E2;
  --linen:#F3F5EA;
  --paper:#FAFBF6;
  --clay:#155A42;
  --mist:#dde2cf;
  --surface:#F3F5EA;
  --surface-soft:#FAFBF6;
}

html,
body,
main{
  background:var(--surface);
}

body{
  color:var(--soil);
}

nav{
  background:rgba(250,251,246,.94);
  border-bottom-color:rgba(22,22,22,.12);
}

.nav-logo-mark,
.nav-apply,
.btn-teal,
.ctab.active,
.c-fbtn.active{
  background:var(--soil);
  border-color:var(--soil);
}

.nav-apply:hover,
.btn-teal:hover{
  background:var(--forest);
  border-color:var(--forest);
}

.hero{
  background:
    radial-gradient(circle at 74% 30%,rgba(210,216,188,.72) 0 12%,transparent 13%),
    radial-gradient(circle at 84% 54%,rgba(21,90,66,.18) 0 11%,transparent 12%),
    linear-gradient(90deg,rgba(250,251,246,.99) 0%,rgba(250,251,246,.96) 45%,rgba(243,245,234,.78) 72%,rgba(250,251,246,.92) 100%);
}

.hero::before,
.hero::after{
  border-color:rgba(22,22,22,.12);
  background:
    linear-gradient(135deg,rgba(250,251,246,.88),rgba(238,242,226,.84)),
    radial-gradient(circle at 30% 28%,rgba(21,90,66,.16),transparent 22%),
    radial-gradient(circle at 70% 70%,rgba(210,216,188,.4),transparent 24%);
}

.hero h1,
.hero-glass-hd h3,
.nav-logo-text,
.nav-info,
.nav-links a,
.stat-num,
.benefits h2,
.split-content h2,
.testi-hd h2,
.blog-hd h2,
.blog-card h3,
.blog-feature-body h2,
.blog-post-content h2,
.blog-post-content h3,
.enquiry-form h3,
.dark-box h3,
.why-panel h3,
.cbox h3,
.res-panel h3,
.faq-section h2,
.inner-steps h2,
.check-item h4,
.cinfo-card h4,
.faq-q{
  color:var(--soil);
}

.hero h1 em,
.nav-logo-text em,
.nav-links a:hover,
.nav-links a.active,
.eyebrow,
.blog-cat,
.blog-all,
.blog-read,
.svc-arr,
.cf .cv{
  color:var(--forest);
}

.hero-pill,
.badge,
.calc-result,
.fbtn.active,
.ben-ico,
.ins-ico,
.cinfo-ico,
.check-ico,
.icon-card__icon{
  color:var(--soil);
  background:var(--olive);
  border-color:rgba(21,90,66,.18);
}

.hero-glass,
.stat-box,
.ben-card,
.blog-card,
.blog-feature-card,
.testi-card,
.team-card,
.why-card,
.check-item,
.cinfo-card,
.cbox,
.blog-post-article,
.blog-related-item,
.blog-empty,
.enquiry-form,
.icon-card,
.svc-row,
.calc-box,
.form-row input,
.form-row select,
.form-row textarea,
.cf select,
.cf input[type=number]{
  background:var(--surface-soft);
  border-color:rgba(21,90,66,.15);
}

.benefits,
.comm-section,
.inner-steps,
.blog-feature-band{
  background:var(--surface);
}

.mort-section,
.testi-section,
.how-section,
.faq-section,
.inner-content,
.blog-section{
  background:var(--surface-soft);
}

.visual-panel,
.comm-panel,
.dark-box,
.res-panel,
.why-panel,
.calc-banner,
.ins-section,
.cta-band{
  background:var(--soil);
}

.visual-panel{
  background:
    linear-gradient(180deg,rgba(21,90,66,.08),rgba(22,22,22,.94)),
    radial-gradient(circle at 72% 22%,rgba(210,216,188,.24),transparent 32%),
    var(--soil);
}

.comm-panel{
  background:
    linear-gradient(160deg,rgba(21,90,66,.28),transparent 34%),
    var(--soil);
}

.inner-hero{
  background:
    linear-gradient(90deg,rgba(22,22,22,.96),rgba(21,90,66,.82)),
    radial-gradient(circle at 82% 38%,rgba(210,216,188,.18),transparent 24%),
    radial-gradient(circle at 68% 74%,rgba(21,90,66,.18),transparent 24%),
    var(--soil);
}

.ticker,
footer{
  background:var(--soil);
}

.blog-thumb,
.blog-feature-thumb,
.blog-post-hero-card{
  background:
    radial-gradient(circle at 30% 25%,rgba(210,216,188,.2),transparent 28%),
    linear-gradient(135deg,var(--soil),var(--forest))!important;
}

.tick-item,
.tick-item .text-icon,
.visual-caption strong,
.comm-stat-num,
.res-val,
.inner-hero h1 em,
.ins-more,
.footer-col li a:hover,
.social-btn:hover{
  color:var(--olive);
}

.split-content .lead,
.blog-card p,
.blog-feature-body p,
.check-item p,
.step-v p,
.why-card p,
.faq-a p,
.cbox .sub,
.cdisclaim,
.cinfo-card p,
.cinfo-card a,
.hero-desc,
.svc-link,
.stat-lbl{
  color:rgba(22,22,22,.68)!important;
}

.svc-row:hover,
a[style*="border:1px solid var(--border)"]:hover,
a[style*="background:#fff;border:1px solid var(--border)"]:hover,
a[style*="background:var(--cream);border:1px solid var(--border)"]:hover{
  background:var(--teal-pale)!important;
  border-color:var(--forest)!important;
  color:var(--soil)!important;
}

.ben-card:hover,
.testi-card:hover,
.team-card:hover,
.why-card:hover,
.blog-card:hover,
.blog-feature-card:hover,
.blog-related-item:hover,
.check-item:hover{
  border-color:var(--forest)!important;
  box-shadow:0 10px 28px rgba(22,22,22,.1)!important;
}

span[style*="color:var(--teal)"],
a[style*="color:var(--teal)"],
div[style*="color:var(--teal)"]{
  color:var(--forest)!important;
}

.calc-box .cfield .cval,
.cbox .cf .cv,
.calc-result-num{
  color:var(--soil)!important;
}

.calc-box input[type=range],
.cbox input[type=range]{
  accent-color:var(--forest)!important;
}

.calc-box .fbtn.active,
.cbox .c-fbtn.active{
  background:var(--soil)!important;
  border-color:var(--soil)!important;
}

.form-row input:focus,
.form-row select:focus,
.form-row textarea:focus,
.cf select:focus,
.cf input[type=number]:focus{
  border-color:var(--forest);
  box-shadow:0 0 0 4px rgba(21,90,66,.14);
}

/* Mortgage help section spacing */
.mort-section{
  padding-top:7.5rem;
  padding-bottom:5.5rem;
  scroll-margin-top:88px;
}

.mort-section .split{
  align-items:start;
}

.mort-section .visual-panel{
  min-height:460px;
  padding:2.4rem;
}

.mort-section .split-content{
  padding-top:.1rem;
}

.mort-section .split-content .eyebrow{
  margin-bottom:.65rem;
}

.mort-section .split-content h2{
  margin-bottom:1rem;
}

.mort-section .svc-list{
  gap:.55rem;
}

.mort-section .svc-row{
  min-height:56px;
}

@media(max-width:1024px){
  .hero{
    background:linear-gradient(180deg,var(--surface-soft),var(--surface));
  }

  .mort-section{
    padding-top:4.5rem;
  }

  .mort-section .visual-panel{
    min-height:390px;
  }
}

/* Client palette previews */
body.palette-forest{
  --surface:#155A42;
  --surface-soft:#155A42;
  --paper:#D2D8BC;
  --cream:#D2D8BC;
  --teal-pale:#D2D8BC;
  --border:rgba(210,216,188,.42);
  --muted:rgba(210,216,188,.78);
}

body.palette-forest nav{
  background:rgba(22,22,22,.96);
  border-bottom-color:rgba(210,216,188,.18);
}

body.palette-forest .nav-logo-text,
body.palette-forest .nav-info,
body.palette-forest .nav-links a{
  color:var(--olive);
}

body.palette-forest .hero{
  background:
    radial-gradient(circle at 78% 24%,rgba(210,216,188,.28) 0 13%,transparent 14%),
    radial-gradient(circle at 86% 60%,rgba(22,22,22,.16) 0 10%,transparent 11%),
    linear-gradient(100deg,var(--forest) 0%,var(--forest) 56%,#104632 100%);
}

body.palette-forest .hero h1,
body.palette-forest .hero-desc,
body.palette-forest .hero-pill,
body.palette-forest .hero h1 em{
  color:var(--olive);
}

body.palette-forest .hero-pill,
body.palette-forest .badge{
  background:rgba(210,216,188,.18);
  border-color:rgba(210,216,188,.4);
}

body.palette-forest .hero-glass,
body.palette-forest .stat-box{
  background:rgba(210,216,188,.96);
  border-color:rgba(210,216,188,.55);
}

body.palette-forest .nav-logo-mark,
body.palette-forest .nav-apply,
body.palette-forest .btn-teal,
body.palette-forest .ctab.active,
body.palette-forest .c-fbtn.active{
  background:var(--soil);
  border-color:var(--soil);
  color:var(--olive);
}

body.palette-forest .btn-ghost,
body.palette-forest .btn-navy-ghost,
body.palette-forest .nav-info{
  background:rgba(210,216,188,.08);
  border-color:rgba(210,216,188,.4);
  color:var(--olive);
}

body.palette-forest .benefits,
body.palette-forest .mort-section,
body.palette-forest .comm-section,
body.palette-forest .testi-section,
body.palette-forest .team-section,
body.palette-forest .how-section,
body.palette-forest .blog-section,
body.palette-forest .blog-feature-band,
body.palette-forest .inner-content,
body.palette-forest .inner-steps,
body.palette-forest .faq-section{
  background:var(--forest);
}

body.palette-forest .benefits h2,
body.palette-forest .split-content h2,
body.palette-forest .testi-hd h2,
body.palette-forest .blog-hd h2,
body.palette-forest .inner-steps h2,
body.palette-forest .faq-section h2,
body.palette-forest .eyebrow{
  color:var(--olive);
}

body.palette-forest .split-content .lead,
body.palette-forest .blog-card p,
body.palette-forest .blog-feature-body p,
body.palette-forest .check-item p,
body.palette-forest .step-v p,
body.palette-forest .why-card p,
body.palette-forest .faq-a p,
body.palette-forest .cinfo-card p,
body.palette-forest .cinfo-card a{
  color:rgba(210,216,188,.82)!important;
}

body.palette-forest .hero-glass-hd h3,
body.palette-forest .stat-num,
body.palette-forest .ben-card h4,
body.palette-forest .blog-card h3,
body.palette-forest .blog-feature-body h2,
body.palette-forest .check-item h4,
body.palette-forest .cinfo-card h4,
body.palette-forest .faq-q,
body.palette-forest .svc-row{
  color:var(--soil);
}

body.palette-forest .hero-glass,
body.palette-forest .stat-box,
body.palette-forest .ben-card,
body.palette-forest .blog-card,
body.palette-forest .blog-feature-card,
body.palette-forest .testi-card,
body.palette-forest .team-card,
body.palette-forest .why-card,
body.palette-forest .check-item,
body.palette-forest .cinfo-card,
body.palette-forest .cbox,
body.palette-forest .blog-post-article,
body.palette-forest .blog-related-item,
body.palette-forest .blog-empty,
body.palette-forest .enquiry-form,
body.palette-forest .icon-card,
body.palette-forest .svc-row,
body.palette-forest .calc-box{
  background:var(--olive);
  border-color:rgba(22,22,22,.16);
}

body.palette-forest .benefits-grid{
  align-items:stretch;
}

body.palette-forest .ben-card{
  min-height:0;
  padding:1.45rem 1.15rem;
  text-align:left;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}

body.palette-forest .ben-ico{
  color:var(--forest);
  background:rgba(21,90,66,.08);
  border-color:rgba(21,90,66,.2);
  margin-bottom:1rem;
}

body.palette-forest .ben-card h4{
  color:var(--soil);
  font-size:.9rem;
  line-height:1.35;
  margin-bottom:.65rem;
}

body.palette-forest .ben-card p{
  display:block;
  color:rgba(22,22,22,.78)!important;
  font-size:.8rem;
  line-height:1.55;
  font-weight:400;
  margin:0;
}

body.palette-forest .ticker,
body.palette-forest footer,
body.palette-forest .visual-panel,
body.palette-forest .comm-panel,
body.palette-forest .dark-box,
body.palette-forest .res-panel,
body.palette-forest .why-panel,
body.palette-forest .calc-banner,
body.palette-forest .ins-section,
body.palette-forest .cta-band{
  background:var(--soil);
}

body.palette-forest .visual-panel{
  background:
    linear-gradient(180deg,rgba(21,90,66,.12),rgba(22,22,22,.94)),
    radial-gradient(circle at 72% 22%,rgba(210,216,188,.24),transparent 32%),
    var(--soil);
}

body.palette-forest .visual-caption,
body.palette-forest .visual-caption strong,
body.palette-forest .comm-stat-num,
body.palette-forest .res-val,
body.palette-forest .footer-col li a:hover,
body.palette-forest .social-btn:hover{
  color:var(--olive);
}

body.palette-soil{
  --surface:#161616;
  --surface-soft:#161616;
  --paper:#D2D8BC;
  --cream:#D2D8BC;
  --teal-pale:#D2D8BC;
  --border:rgba(210,216,188,.28);
  --muted:rgba(210,216,188,.72);
  background:
    radial-gradient(circle at 18% 18%,rgba(21,90,66,.38),transparent 34%),
    radial-gradient(circle at 82% 30%,rgba(210,216,188,.12),transparent 26%),
    linear-gradient(135deg,#161616 0%,#1b211d 48%,#161616 100%);
}

body.palette-soil main{
  background:
    radial-gradient(circle at 12% 20%,rgba(21,90,66,.26),transparent 32%),
    radial-gradient(circle at 88% 46%,rgba(210,216,188,.1),transparent 30%),
    linear-gradient(135deg,#161616 0%,#1b211d 52%,#161616 100%);
}

body.palette-soil nav{
  background:rgba(22,22,22,.96);
  border-bottom-color:rgba(210,216,188,.18);
}

body.palette-soil .nav-logo-text,
body.palette-soil .nav-info,
body.palette-soil .nav-links a{
  color:var(--olive);
}

body.palette-soil .hero{
  background:
    radial-gradient(circle at 76% 26%,rgba(210,216,188,.22) 0 14%,transparent 15%),
    radial-gradient(circle at 86% 58%,rgba(21,90,66,.42) 0 12%,transparent 13%),
    linear-gradient(100deg,#161616 0%,#1b211d 46%,#155A42 100%);
}

body.palette-soil .hero h1,
body.palette-soil .hero-desc,
body.palette-soil .hero h1 em,
body.palette-soil .hero-pill{
  color:var(--olive);
}

body.palette-soil .hero-glass,
body.palette-soil .stat-box{
  background:rgba(210,216,188,.94);
  border-color:rgba(210,216,188,.34);
}

body.palette-soil .btn-ghost,
body.palette-soil .btn-navy-ghost,
body.palette-soil .nav-info{
  background:rgba(210,216,188,.08);
  border-color:rgba(210,216,188,.38);
  color:var(--olive);
}

body.palette-soil .nav-logo-mark,
body.palette-soil .nav-apply,
body.palette-soil .btn-teal,
body.palette-soil .ctab.active,
body.palette-soil .c-fbtn.active{
  background:var(--forest);
  border-color:var(--forest);
  color:var(--olive);
}

body.palette-soil .nav-apply:hover,
body.palette-soil .btn-teal:hover{
  background:var(--olive);
  border-color:var(--olive);
  color:var(--soil);
}

body.palette-soil .hero-pill,
body.palette-soil .badge,
body.palette-soil .calc-result,
body.palette-soil .fbtn.active,
body.palette-soil .ben-ico,
body.palette-soil .ins-ico,
body.palette-soil .cinfo-ico,
body.palette-soil .check-ico,
body.palette-soil .icon-card__icon{
  background:var(--forest);
  color:var(--olive);
  border-color:rgba(210,216,188,.18);
}

body.palette-soil .benefits,
body.palette-soil .mort-section,
body.palette-soil .comm-section,
body.palette-soil .testi-section,
body.palette-soil .team-section,
body.palette-soil .ins-section,
body.palette-soil .how-section,
body.palette-soil .blog-section,
body.palette-soil .blog-feature-band,
body.palette-soil .inner-content,
body.palette-soil .inner-steps,
body.palette-soil .faq-section,
body.palette-soil .calc-banner,
body.palette-soil .cta-band,
body.palette-soil footer{
  background:
    radial-gradient(circle at 16% 16%,rgba(21,90,66,.24),transparent 30%),
    radial-gradient(circle at 86% 58%,rgba(210,216,188,.08),transparent 28%),
    linear-gradient(135deg,#161616 0%,#1b211d 55%,#161616 100%);
}

body.palette-soil .benefits h2,
body.palette-soil .split-content h2,
body.palette-soil .testi-hd h2,
body.palette-soil .blog-hd h2,
body.palette-soil .inner-steps h2,
body.palette-soil .faq-section h2,
body.palette-soil .eyebrow{
  color:var(--olive);
}

body.palette-soil .hero-glass-hd h3,
body.palette-soil .stat-num,
body.palette-soil .ben-card h4,
body.palette-soil .blog-card h3,
body.palette-soil .blog-feature-body h2,
body.palette-soil .check-item h4,
body.palette-soil .cinfo-card h4,
body.palette-soil .faq-q,
body.palette-soil .svc-row{
  color:var(--soil);
}

body.palette-soil .split-content .lead,
body.palette-soil .blog-card p,
body.palette-soil .blog-feature-body p,
body.palette-soil .check-item p,
body.palette-soil .step-v p,
body.palette-soil .why-card p,
body.palette-soil .faq-a p,
body.palette-soil .cinfo-card p,
body.palette-soil .cinfo-card a{
  color:rgba(210,216,188,.78)!important;
}

body.palette-soil .hero-glass,
body.palette-soil .stat-box,
body.palette-soil .ben-card,
body.palette-soil .blog-card,
body.palette-soil .blog-feature-card,
body.palette-soil .testi-card,
body.palette-soil .team-card,
body.palette-soil .why-card,
body.palette-soil .check-item,
body.palette-soil .cinfo-card,
body.palette-soil .cbox,
body.palette-soil .blog-post-article,
body.palette-soil .blog-related-item,
body.palette-soil .blog-empty,
body.palette-soil .enquiry-form,
body.palette-soil .icon-card,
body.palette-soil .svc-row,
body.palette-soil .calc-box{
  background:var(--olive);
  border-color:rgba(210,216,188,.22);
}

body.palette-soil .ben-card{
  text-align:left;
}

body.palette-soil .ben-card p{
  color:rgba(22,22,22,.74)!important;
  font-weight:400;
}

body.palette-soil .ticker,
body.palette-soil footer,
body.palette-soil .visual-panel,
body.palette-soil .comm-panel,
body.palette-soil .dark-box,
body.palette-soil .res-panel,
body.palette-soil .why-panel,
body.palette-soil .calc-banner,
body.palette-soil .ins-section,
body.palette-soil .cta-band{
  background:
    radial-gradient(circle at 20% 18%,rgba(21,90,66,.26),transparent 30%),
    linear-gradient(135deg,#161616 0%,#1b211d 58%,#161616 100%);
}

body.palette-soil .visual-panel{
  background:
    linear-gradient(180deg,rgba(21,90,66,.14),rgba(22,22,22,.94)),
    radial-gradient(circle at 72% 22%,rgba(210,216,188,.18),transparent 32%),
    var(--soil);
}

body.palette-soil .visual-caption,
body.palette-soil .visual-caption strong,
body.palette-soil .comm-stat-num,
body.palette-soil .res-val,
body.palette-soil .footer-col li a:hover,
body.palette-soil .social-btn:hover{
  color:var(--olive);
}

body.palette-olive{
  --surface:#D2D8BC;
  --surface-soft:#D2D8BC;
  --paper:#D2D8BC;
  --cream:#D2D8BC;
  --teal-pale:#E7EBD8;
  --border:rgba(22,22,22,.22);
  --muted:#4e5548;
}

body.palette-olive nav{
  background:rgba(210,216,188,.95);
  border-bottom-color:rgba(22,22,22,.14);
}

body.palette-olive .nav-logo-text,
body.palette-olive .nav-info,
body.palette-olive .nav-links a{
  color:var(--soil);
}

body.palette-olive .hero{
  background:
    radial-gradient(circle at 76% 28%,rgba(21,90,66,.16) 0 12%,transparent 13%),
    radial-gradient(circle at 86% 58%,rgba(22,22,22,.12) 0 11%,transparent 12%),
    linear-gradient(100deg,var(--olive) 0%,var(--olive) 62%,#e2e6d0 100%);
}

body.palette-olive .nav-logo-mark,
body.palette-olive .nav-apply,
body.palette-olive .btn-teal,
body.palette-olive .ctab.active,
body.palette-olive .c-fbtn.active{
  background:var(--forest);
  border-color:var(--forest);
  color:var(--olive);
}

body.palette-olive .btn-ghost,
body.palette-olive .btn-navy-ghost,
body.palette-olive .nav-info{
  background:rgba(22,22,22,.04);
  border-color:rgba(22,22,22,.2);
  color:var(--soil);
}

body.palette-olive .hero h1,
body.palette-olive .hero-glass-hd h3,
body.palette-olive .nav-logo-text,
body.palette-olive .nav-info,
body.palette-olive .nav-links a,
body.palette-olive .stat-num,
body.palette-olive .benefits h2,
body.palette-olive .split-content h2,
body.palette-olive .testi-hd h2,
body.palette-olive .blog-hd h2,
body.palette-olive .blog-card h3,
body.palette-olive .blog-feature-body h2,
body.palette-olive .check-item h4,
body.palette-olive .cinfo-card h4,
body.palette-olive .faq-q{
  color:var(--soil);
}

body.palette-olive .hero h1 em,
body.palette-olive .nav-logo-text em,
body.palette-olive .nav-links a:hover,
body.palette-olive .nav-links a.active,
body.palette-olive .eyebrow,
body.palette-olive .blog-cat,
body.palette-olive .blog-all,
body.palette-olive .blog-read,
body.palette-olive .svc-arr,
body.palette-olive .cf .cv{
  color:var(--forest);
}

body.palette-olive .hero-desc,
body.palette-olive .split-content .lead,
body.palette-olive .blog-card p,
body.palette-olive .blog-feature-body p,
body.palette-olive .check-item p,
body.palette-olive .step-v p,
body.palette-olive .why-card p,
body.palette-olive .faq-a p,
body.palette-olive .cinfo-card p,
body.palette-olive .cinfo-card a{
  color:rgba(22,22,22,.72)!important;
}

body.palette-olive .hero-pill,
body.palette-olive .badge,
body.palette-olive .calc-result,
body.palette-olive .fbtn.active,
body.palette-olive .ben-ico,
body.palette-olive .ins-ico,
body.palette-olive .cinfo-ico,
body.palette-olive .check-ico,
body.palette-olive .icon-card__icon{
  background:var(--soil);
  color:var(--olive);
  border-color:rgba(22,22,22,.16);
}

body.palette-olive .benefits,
body.palette-olive .mort-section,
body.palette-olive .comm-section,
body.palette-olive .testi-section,
body.palette-olive .team-section,
body.palette-olive .how-section,
body.palette-olive .blog-section,
body.palette-olive .blog-feature-band,
body.palette-olive .inner-content,
body.palette-olive .inner-steps,
body.palette-olive .faq-section{
  background:var(--olive);
}

body.palette-olive .hero-glass,
body.palette-olive .stat-box,
body.palette-olive .ben-card,
body.palette-olive .blog-card,
body.palette-olive .blog-feature-card,
body.palette-olive .testi-card,
body.palette-olive .team-card,
body.palette-olive .why-card,
body.palette-olive .check-item,
body.palette-olive .cinfo-card,
body.palette-olive .cbox,
body.palette-olive .blog-post-article,
body.palette-olive .blog-related-item,
body.palette-olive .blog-empty,
body.palette-olive .enquiry-form,
body.palette-olive .icon-card,
body.palette-olive .svc-row,
body.palette-olive .calc-box{
  background:rgba(250,251,246,.55);
  border-color:rgba(22,22,22,.16);
}

body.palette-olive .ben-card{
  text-align:left;
}

body.palette-olive .ben-card p{
  color:rgba(22,22,22,.72)!important;
  font-weight:400;
}

body.palette-olive .visual-panel,
body.palette-olive .comm-panel,
body.palette-olive .dark-box,
body.palette-olive .res-panel,
body.palette-olive .why-panel,
body.palette-olive .calc-banner,
body.palette-olive .ins-section,
body.palette-olive .cta-band{
  background:var(--forest);
}

body.palette-olive .ticker,
body.palette-olive footer{
  background:var(--soil);
}

body.palette-olive .visual-panel{
  background:
    linear-gradient(180deg,rgba(21,90,66,.08),rgba(21,90,66,.94)),
    radial-gradient(circle at 72% 22%,rgba(210,216,188,.22),transparent 32%),
    var(--forest);
}

body.palette-olive .visual-caption,
body.palette-olive .visual-caption strong,
body.palette-olive .comm-stat-num,
body.palette-olive .res-val,
body.palette-olive .footer-col li a:hover,
body.palette-olive .social-btn:hover{
  color:var(--olive);
}

/* Soil option readability pass */
body.palette-soil{
  color:var(--olive);
}

body.palette-soil .hero h1,
body.palette-soil .hero h1 em,
body.palette-soil .hero-desc,
body.palette-soil .hero-pill,
body.palette-soil .benefits h2,
body.palette-soil .split-content h2,
body.palette-soil .testi-hd h2,
body.palette-soil .blog-hd h2,
body.palette-soil .ins-header h2,
body.palette-soil .calc-left h2,
body.palette-soil .inner-steps h2,
body.palette-soil .faq-section h2,
body.palette-soil .cta-band h2,
body.palette-soil .eyebrow{
  color:var(--olive)!important;
}

body.palette-soil .hero-desc,
body.palette-soil .split-content .lead,
body.palette-soil .calc-left p,
body.palette-soil .ins-header .sub,
body.palette-soil .cta-band p,
body.palette-soil .inner-hero-desc,
body.palette-soil .breadcrumb a,
body.palette-soil .breadcrumb span{
  color:rgba(210,216,188,.88)!important;
}

body.palette-soil .hero-glass,
body.palette-soil .stat-box,
body.palette-soil .ben-card,
body.palette-soil .blog-card,
body.palette-soil .blog-feature-card,
body.palette-soil .testi-card,
body.palette-soil .team-card,
body.palette-soil .why-card,
body.palette-soil .check-item,
body.palette-soil .cinfo-card,
body.palette-soil .cbox,
body.palette-soil .blog-post-article,
body.palette-soil .blog-related-item,
body.palette-soil .blog-empty,
body.palette-soil .enquiry-form,
body.palette-soil .icon-card,
body.palette-soil .svc-row,
body.palette-soil .calc-box,
body.palette-soil .form-row input,
body.palette-soil .form-row select,
body.palette-soil .form-row textarea,
body.palette-soil .cf select,
body.palette-soil .cf input[type=number]{
  background:var(--olive)!important;
  color:var(--soil)!important;
  border-color:rgba(210,216,188,.28)!important;
}

body.palette-soil .hero-glass h3,
body.palette-soil .stat-num,
body.palette-soil .ben-card h4,
body.palette-soil .blog-card h3,
body.palette-soil .blog-feature-body h2,
body.palette-soil .blog-post-content h2,
body.palette-soil .blog-post-content h3,
body.palette-soil .team-card h4,
body.palette-soil .why-card h4,
body.palette-soil .check-item h4,
body.palette-soil .cinfo-card h4,
body.palette-soil .cbox h3,
body.palette-soil .enquiry-form h3,
body.palette-soil .faq-q,
body.palette-soil .svc-row,
body.palette-soil .blog-related-item strong{
  color:var(--soil)!important;
}

body.palette-soil .hero-glass p,
body.palette-soil .stat-lbl,
body.palette-soil .ben-card p,
body.palette-soil .blog-card p,
body.palette-soil .blog-feature-body p,
body.palette-soil .blog-post-content p,
body.palette-soil .blog-post-content li,
body.palette-soil .blog-meta-row,
body.palette-soil .testi-q,
body.palette-soil .testi-role,
body.palette-soil .team-card .role,
body.palette-soil .team-card .contact a,
body.palette-soil .why-card p,
body.palette-soil .check-item p,
body.palette-soil .step-v p,
body.palette-soil .faq-a p,
body.palette-soil .cdisclaim,
body.palette-soil .cbox .sub,
body.palette-soil .cinfo-card p,
body.palette-soil .cinfo-card a,
body.palette-soil .form-row label,
body.palette-soil .cf label,
body.palette-soil .blog-related-item span{
  color:rgba(22,22,22,.76)!important;
}

body.palette-soil .blog-cat,
body.palette-soil .blog-all,
body.palette-soil .blog-read,
body.palette-soil .svc-arr,
body.palette-soil .cf .cv,
body.palette-soil .team-card .role{
  color:var(--forest)!important;
}

body.palette-soil .visual-panel,
body.palette-soil .comm-panel,
body.palette-soil .dark-box,
body.palette-soil .res-panel,
body.palette-soil .why-panel,
body.palette-soil .calc-banner,
body.palette-soil .ins-section,
body.palette-soil .cta-band,
body.palette-soil footer{
  color:var(--olive)!important;
}

body.palette-soil .visual-panel h3,
body.palette-soil .visual-caption,
body.palette-soil .visual-caption strong,
body.palette-soil .comm-panel h3,
body.palette-soil .dark-box h3,
body.palette-soil .res-panel h3,
body.palette-soil .calc-left h2,
body.palette-soil .ins-header h2,
body.palette-soil .cta-band h2,
body.palette-soil .footer-col h5{
  color:var(--olive)!important;
}

body.palette-soil .visual-panel p,
body.palette-soil .comm-panel p,
body.palette-soil .comm-stat-lbl,
body.palette-soil .dark-box p,
body.palette-soil .dark-box li,
body.palette-soil .res-lbl,
body.palette-soil .calc-left p,
body.palette-soil .cfield label,
body.palette-soil .ins-header .sub,
body.palette-soil .ins-card p,
body.palette-soil .cta-band p,
body.palette-soil .footer-brand p,
body.palette-soil .footer-col li a,
body.palette-soil .footer-bottom p{
  color:rgba(210,216,188,.78)!important;
}

body.palette-soil .v-box,
body.palette-soil .comm-stat,
body.palette-soil .ins-card{
  background:rgba(210,216,188,.08)!important;
  border-color:rgba(210,216,188,.18)!important;
}

body.palette-soil .v-box p,
body.palette-soil .ins-card h4{
  color:var(--olive)!important;
}

body.palette-soil .fi,
body.palette-soil .fi svg{
  color:inherit!important;
  stroke:currentColor!important;
}

body.palette-soil .nav-logo-mark,
body.palette-soil .nav-logo-mark .fi,
body.palette-soil .nav-logo-mark svg,
body.palette-soil .nav-apply,
body.palette-soil .btn-teal{
  color:var(--olive)!important;
}

body.palette-soil .ben-ico,
body.palette-soil .ben-ico.fi,
body.palette-soil .cinfo-ico,
body.palette-soil .cinfo-ico.fi,
body.palette-soil .check-ico,
body.palette-soil .check-ico.fi,
body.palette-soil .icon-card__icon{
  background:rgba(21,90,66,.12)!important;
  border-color:rgba(21,90,66,.24)!important;
  color:var(--forest)!important;
}

body.palette-soil .svc-row .sico,
body.palette-soil .svc-row .sico.fi,
body.palette-soil .svc-row .text-icon,
body.palette-soil .blog-read .fi,
body.palette-soil .blog-all .fi{
  color:var(--forest)!important;
}

body.palette-soil .tick-item .fi,
body.palette-soil .tick-item .text-icon,
body.palette-soil .visual-panel .fi,
body.palette-soil .visual-panel .text-icon,
body.palette-soil .comm-panel .fi,
body.palette-soil .dark-box .fi,
body.palette-soil .ins-card .fi,
body.palette-soil .ins-card .text-icon,
body.palette-soil footer .fi{
  color:var(--olive)!important;
}

body.palette-soil .v-box{
  color:var(--olive)!important;
}

/* Responsive layout stabilization
   Keeps the approved visual design while correcting wide viewport and browser
   zoom-out compression caused by the older 1180px layout cap. */
:root{
  --layout-max:1760px;
  --layout-gutter:clamp(1.25rem,4vw,5.5rem);
  --section-y:clamp(4.5rem,6vw,7rem);
  --section-y-compact:clamp(3.75rem,5vw,5.75rem);
}

.container,
.nav-wrap,
.hero-inner,
.inner-hero-inner{
  width:min(calc(100% - (var(--layout-gutter) * 2)),var(--layout-max));
  max-width:none;
  margin-left:auto;
  margin-right:auto;
  padding-left:0;
  padding-right:0;
}

nav{
  min-height:clamp(72px,4.5vw,86px);
}

.nav-wrap{
  height:clamp(72px,4.5vw,86px);
  gap:clamp(1rem,2vw,2.25rem);
}

.nav-logo-mark{
  width:clamp(36px,2.4vw,42px);
  height:clamp(36px,2.4vw,42px);
}

.nav-logo-text{
  font-size:clamp(1.25rem,1.1vw,1.48rem);
}

.nav-links{
  gap:clamp(1rem,1.4vw,1.8rem);
}

.nav-links a,
.nav-apply{
  font-size:clamp(.84rem,.62vw,.96rem);
}

.nav-info{
  font-size:clamp(.8rem,.58vw,.92rem);
}

.hero{
  min-height:clamp(620px,82svh,900px);
  padding-top:clamp(96px,10vh,132px);
  padding-bottom:clamp(2rem,4vh,4rem);
  align-items:flex-start;
}

.hero-inner{
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
  gap:clamp(2.5rem,5vw,7rem);
  padding-bottom:0;
  align-items:center;
  margin-top:clamp(.25rem,1.75vh,1.75rem);
}

.hero h1{
  font-size:clamp(3rem,4.65vw,6.15rem);
  max-width:clamp(680px,48vw,900px);
}

.hero-desc{
  width:min(100%,660px);
  max-width:none;
  font-size:clamp(1.02rem,.82vw,1.18rem);
  margin-bottom:clamp(1.7rem,2.4vw,2.45rem);
}

.hero-vis{
  width:100%;
  max-width:680px;
  min-width:0;
  justify-self:end;
  align-self:center;
}

.hero-glass{
  padding:clamp(1.35rem,1.8vw,2.15rem);
}

.svc-link{
  font-size:clamp(.88rem,.68vw,1rem);
  padding:clamp(.58rem,.72vw,.78rem) 0;
}

.stats-row{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.stat-box{
  min-height:clamp(104px,7.2vw,132px);
  padding:clamp(1rem,1.4vw,1.45rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.stat-num{
  font-size:clamp(1.85rem,2vw,2.55rem);
}

.stat-lbl{
  font-size:clamp(.74rem,.58vw,.88rem);
}

.hero::after{
  right:max(var(--layout-gutter),calc((100vw - var(--layout-max)) / 2 + var(--layout-gutter)));
  top:clamp(108px,13vh,164px);
  width:clamp(390px,28vw,560px);
}

.hero::before{
  right:calc(max(var(--layout-gutter),calc((100vw - var(--layout-max)) / 2 + var(--layout-gutter))) + clamp(44px,4vw,78px));
  top:clamp(164px,20vh,232px);
  width:clamp(280px,20vw,410px);
}

.benefits,
.mort-section,
.comm-section,
.testi-section,
.team-section,
.ins-section,
.how-section,
.blog-section,
.inner-content,
.inner-steps,
.faq-section{
  padding-top:var(--section-y);
  padding-bottom:var(--section-y);
}

.calc-banner,
.cta-band,
.nl-section{
  padding-top:var(--section-y-compact);
  padding-bottom:var(--section-y-compact);
}

.mort-section{
  padding-top:var(--section-y);
  padding-bottom:var(--section-y-compact);
}

.split,
.calc-grid,
.how-grid,
.inner-grid,
.contact-grid,
.cpanel.active{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(2.5rem,4vw,6rem);
}

.benefits-grid{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:clamp(1rem,1.25vw,1.5rem);
}

.ben-card{
  min-height:clamp(176px,12vw,230px);
  padding:clamp(1.35rem,1.35vw,1.85rem);
}

.testi-grid,
.blog-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(1.25rem,1.45vw,1.8rem);
}

.testi-card,
.blog-body,
.team-card,
.why-panel,
.calc-box,
.comm-panel{
  padding:clamp(1.55rem,1.8vw,2.35rem);
}

.ins-header{
  grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);
  gap:clamp(2rem,3.8vw,5rem);
}

.ins-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:clamp(1rem,1.15vw,1.45rem);
}

.ins-card{
  min-height:clamp(210px,13vw,260px);
  padding:clamp(1.35rem,1.45vw,1.85rem);
}

.visual-panel{
  min-height:clamp(460px,31vw,620px);
  padding:clamp(2rem,2.4vw,3rem);
}

.split-content .lead,
.calc-left p,
.ins-header .sub,
.cta-band p{
  max-width:640px;
}

@media(min-width:1920px){
  :root{
    --layout-max:1840px;
  }
}

@media(max-width:1200px){
  :root{
    --layout-gutter:clamp(1.25rem,3.2vw,2.5rem);
  }

  .hero-inner{
    grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);
    gap:clamp(2rem,3.5vw,3.75rem);
  }

  .benefits-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .ins-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:1024px){
  .hero{
    min-height:auto;
    padding-top:clamp(104px,12vw,128px);
  }

  .hero-inner,
  .split,
  .calc-grid,
  .how-grid,
  .inner-grid,
  .contact-grid,
  .cpanel.active,
  .ins-header{
    grid-template-columns:1fr;
  }

  .hero-vis{
    justify-self:start;
    max-width:680px;
  }
}

@media(max-width:900px){
  .nav-wrap{
    height:68px;
  }

  .mob-menu{
    top:68px;
  }

  .testi-grid,
  .blog-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:700px){
  :root{
    --layout-gutter:1.1rem;
  }

  .hero h1{
    font-size:clamp(2.55rem,13vw,3.25rem);
  }

  .benefits-grid,
  .ins-grid,
  .blog-grid,
  .testi-grid,
  .team-grid,
  .why-grid,
  .stats-row,
  .form-2{
    grid-template-columns:1fr;
  }
}

/* Calculator contrast repair */
.calc-banner .calc-left .eyebrow{
  color:rgba(210,216,188,.82)!important;
}

.calc-banner .calc-left h2,
.calc-banner .calc-left p{
  color:#fff!important;
}

.calc-banner .calc-left p{
  color:rgba(255,255,255,.78)!important;
}

.calc-banner .calc-box{
  background:rgba(250,251,246,.68)!important;
  border-color:rgba(255,255,255,.28)!important;
  color:var(--soil)!important;
}

.calc-banner .cfield label{
  color:rgba(22,22,22,.7)!important;
  font-weight:700;
}

.calc-banner .cfield .cval{
  color:var(--soil)!important;
}

.calc-banner input[type=range]{
  accent-color:var(--forest)!important;
}

.calc-banner .fbtn{
  color:rgba(22,22,22,.74)!important;
  border-color:rgba(22,22,22,.18)!important;
  background:rgba(250,251,246,.2)!important;
}

.calc-banner .fbtn.active{
  background:var(--soil)!important;
  border-color:var(--soil)!important;
  color:var(--olive)!important;
}

.calc-banner .calc-result{
  background:linear-gradient(135deg,var(--soil),var(--forest))!important;
  border:1px solid rgba(255,255,255,.14);
}

.calc-banner .calc-result-num{
  color:#fff!important;
}

.calc-banner .calc-result-lbl{
  color:rgba(255,255,255,.78)!important;
}

/* Mortgage visual icon repair */
.visual-panel .v-box{
  color:var(--olive)!important;
}

.visual-panel .v-box span{
  display:flex;
  justify-content:center;
  align-items:center;
  margin-bottom:.7rem;
}

.visual-panel .v-box .fi,
.visual-panel .v-box .text-icon,
.visual-panel .v-box svg{
  color:var(--olive)!important;
  stroke:currentColor!important;
}

.visual-panel .v-box .text-icon{
  width:1.55rem;
  height:1.55rem;
  margin:0!important;
  opacity:1;
}

.visual-panel .v-box p{
  color:rgba(210,216,188,.9)!important;
  font-weight:700;
}

/* Blog image rendering fix: use real images over the existing gradient fallback. */
.blog-thumb-image{
  position:relative;
  overflow:hidden;
}

.blog-thumb-image img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:1;
}

.blog-thumb-image .text-icon{
  position:relative;
  z-index:0;
}

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

/* Website fixes */
.nav-apply,
.mob-apply{
  display:none!important;
}

.mort-section .split{
  align-items:center!important;
}

.inner-hero .btn-ghost{
  color:#fff!important;
  border-color:rgba(255,255,255,.52)!important;
  background:rgba(255,255,255,.1)!important;
}

.inner-hero .btn-ghost:hover{
  color:var(--teal-lt)!important;
  border-color:var(--teal-lt)!important;
  background:rgba(255,255,255,.16)!important;
}

.inner-hero .btn.btn-ghost,
.inner-hero a.btn-ghost[href*="calculators"]{
  color:#fff!important;
  border:1.5px solid rgba(255,255,255,.58)!important;
  background:rgba(255,255,255,.12)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.16);
}

.inner-hero .btn.btn-ghost:hover,
.inner-hero a.btn-ghost[href*="calculators"]:hover{
  color:var(--teal-lt)!important;
  border-color:var(--teal-lt)!important;
  background:rgba(255,255,255,.18)!important;
}

.calc-banner .calc-left .btn{
  background:#fff!important;
  color:var(--soil)!important;
  border:1px solid rgba(255,255,255,.75);
  box-shadow:0 14px 32px rgba(0,0,0,.22);
}

.calc-banner .calc-left .btn:hover{
  background:var(--olive)!important;
  color:var(--soil)!important;
}

.calc-banner .calc-box .svc-row{
  display:grid!important;
  grid-template-columns:2.5rem minmax(0,1fr) auto;
  gap:1rem;
  justify-content:normal!important;
  text-align:left;
}

.calc-banner .calc-box .svc-row > span:nth-child(2){
  min-width:0;
}

.scenario-panel{
  grid-column:1 / -1;
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--r2);
  padding:clamp(1.4rem,2vw,2.2rem);
}

.scenario-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:1rem;
  margin-bottom:1.1rem;
}

.scenario-head h3{
  font-family:var(--serif);
  font-size:1.25rem;
  font-style:italic;
  color:var(--navy);
  margin-bottom:.3rem;
}

.scenario-head p{
  color:var(--muted);
  font-size:.85rem;
  font-weight:300;
  line-height:1.55;
}

.scenario-table-wrap{
  overflow-x:auto;
}

.scenario-table{
  width:100%;
  border-collapse:collapse;
  min-width:760px;
}

.scenario-table th,
.scenario-table td{
  padding:.8rem .75rem;
  border-bottom:1px solid var(--border);
  text-align:left;
  font-size:.84rem;
  color:var(--text);
}

.scenario-table th{
  color:var(--teal);
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.scenario-table small{
  color:var(--muted);
}

.scenario-empty{
  color:var(--muted)!important;
  text-align:center!important;
  font-weight:300;
}

.scenario-remove{
  border:1px solid var(--border);
  border-radius:7px;
  background:#fff;
  color:var(--muted);
  cursor:pointer;
  font-family:var(--sans);
  font-size:.76rem;
  padding:.45rem .7rem;
}

.scenario-remove:hover{
  border-color:var(--teal);
  color:var(--teal);
}

@media(max-width:700px){
  .scenario-head{
    flex-direction:column;
  }
}

/* Full Finnovo Finance logo */
.nav-logo{
  gap:10px!important;
}

.nav-logo-mark{
  width:46px!important;
  height:46px!important;
  border-radius:12px!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  flex:0 0 46px!important;
}

.footer-brand .nav-logo-mark{
  width:48px!important;
  height:48px!important;
  flex-basis:48px!important;
}

.nav-logo-text{
  display:inline-block!important;
}

.nav-logo-img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

@media(max-width:640px){
  .nav-logo-mark{
    width:42px!important;
    height:42px!important;
    flex-basis:42px!important;
  }

  .footer-brand .nav-logo-mark{
    width:44px!important;
    height:44px!important;
    flex-basis:44px!important;
  }
}

.mort-section .visual-caption{
  width:100%;
  text-align:center!important;
}

.about-team-section{background:var(--cream);padding:5.5rem 0}
.about-team-inner{max-width:840px;margin:0 auto}
.about-team-head{margin-bottom:2.8rem}
.about-team-head h2{font-family:var(--serif);font-size:clamp(2rem,3vw,2.8rem);font-style:italic;color:var(--navy);line-height:1.15;margin-bottom:.9rem}
.about-team-head p{color:var(--muted);font-size:.98rem;font-weight:300;line-height:1.7}
.about-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.8rem}
.about-team-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:2.25rem 2.1rem;display:flex;align-items:flex-start;gap:1.45rem;min-height:226px;box-shadow:0 10px 28px rgba(21,90,66,.04);transition:border-color .2s,box-shadow .2s,transform .2s}
.about-team-card:hover{border-color:rgba(21,90,66,.35);box-shadow:0 16px 36px rgba(21,90,66,.08);transform:translateY(-2px)}
.about-team-photo{width:76px;height:76px;border-radius:50%;background:var(--teal-pale);border:3px solid var(--teal-pale);overflow:hidden;flex:0 0 76px}
.about-team-photo img{width:100%;height:100%;object-fit:cover}
.about-team-details{min-width:0}
.about-team-details h3{font-family:var(--serif);font-size:1.16rem;color:var(--navy);line-height:1.25;margin-bottom:.25rem}
.about-team-role{font-size:.78rem;color:var(--teal);font-weight:600;text-transform:uppercase;letter-spacing:.8px;margin-bottom:.32rem}
.about-team-specialty{font-size:.83rem;color:var(--teal);font-weight:500;line-height:1.55;margin-bottom:.85rem}
.about-team-contact{display:flex;flex-direction:column;gap:.38rem}
.about-team-contact a{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.82rem;line-height:1.35;transition:color .2s}
.about-team-contact a:hover{color:var(--teal)}
.about-team-contact .text-icon{color:var(--teal);flex:0 0 auto}
@media (max-width:760px){
  .about-team-section{padding:4.5rem 0}
  .about-team-grid{grid-template-columns:1fr}
  .about-team-card{min-height:0}
}
@media (max-width:460px){
  .about-team-card{padding:1.6rem;gap:1rem}
  .about-team-photo{width:64px;height:64px;flex-basis:64px}
.about-team-contact a{font-size:.78rem}
}

/* Calculators page theme repair */
.calculators-workbench{
  background:linear-gradient(180deg,var(--cream) 0%,#fff 100%);
  padding:5rem 0;
}

.calculators-workbench .calc-tabs{
  background:rgba(255,255,255,.68);
  border:1px solid var(--border);
  border-radius:14px;
  padding:.45rem;
  width:max-content;
  max-width:100%;
}

/* Mortgage detail process and FAQ row */
@media(min-width:901px){
  .inner-steps.mortgage-process-row,
  .inner-steps.mortgage-process-row + .faq-section{
    float:left;
    width:50%;
    background:#fff;
    padding:5rem 0 5.5rem;
  }

  .inner-steps.mortgage-process-row .container{
    width:100%;
    max-width:590px;
    margin:0 0 0 auto;
    padding-left:2rem;
    padding-right:2.5rem;
  }

  .inner-steps.mortgage-process-row + .faq-section .container{
    width:100%;
    max-width:590px;
    margin:0 auto 0 0;
    padding-left:2.5rem;
    padding-right:2rem;
  }

  .inner-steps.mortgage-process-row .steps-v,
  .inner-steps.mortgage-process-row + .faq-section .faq{
    max-width:none!important;
  }

  .inner-steps.mortgage-process-row + .faq-section + .cta-band{
    clear:both;
  }
}

.calculators-workbench .ctab{
  background:transparent;
  border-color:transparent;
  color:var(--muted);
}

.calculators-workbench .ctab.active{
  background:var(--teal)!important;
  border-color:var(--teal)!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(21,90,66,.16);
}

.calculators-workbench .cbox{
  background:#fff!important;
  border-color:var(--border)!important;
  box-shadow:0 12px 30px rgba(21,90,66,.05);
}

.calculators-workbench .cbox h3,
.calculators-workbench .scenario-head h3{
  color:var(--navy)!important;
}

.calculators-workbench .cbox .sub,
.calculators-workbench .cf label,
.calculators-workbench .cdisclaim,
.calculators-workbench .scenario-head p{
  color:var(--muted)!important;
}

.calculators-workbench .cf .cv{
  color:var(--teal)!important;
}

.calculators-workbench input[type=range]{
  accent-color:var(--teal)!important;
}

.calculators-workbench .c-fbtn{
  background:#fff!important;
  border-color:var(--border)!important;
  color:var(--muted)!important;
}

.calculators-workbench .c-fbtn.active{
  background:var(--teal)!important;
  border-color:var(--teal)!important;
  color:#fff!important;
}

.calculators-workbench .res-panel{
  background:linear-gradient(145deg,var(--navy),var(--teal2))!important;
  border:1px solid rgba(210,216,188,.18);
  box-shadow:0 18px 42px rgba(21,90,66,.13);
}

.calculators-workbench .res-panel h3{
  color:#fff!important;
}

.calculators-workbench .res-lbl{
  color:rgba(255,255,255,.66)!important;
}

.calculators-workbench .res-val{
  color:var(--teal-lt)!important;
}

.calculators-workbench .scenario-panel{
  background:linear-gradient(180deg,#fff,var(--teal-pale));
  border-color:rgba(21,90,66,.18);
  box-shadow:0 14px 34px rgba(21,90,66,.06);
}

.calculators-workbench .scenario-table-wrap{
  background:#fff;
  border:1px solid var(--border);
  border-radius:12px;
}

.calculators-workbench .scenario-table th{
  background:var(--teal-pale);
  color:var(--teal)!important;
}

.calculators-workbench .scenario-table td{
  color:var(--text)!important;
}

.calculators-workbench .scenario-empty{
  color:var(--muted)!important;
}

.calculators-workbench .scenario-remove:hover{
  background:var(--teal-pale);
}

@media(max-width:700px){
  .calculators-workbench{padding:4rem 0}
  .calculators-workbench .calc-tabs{width:100%}
}

/* Service detail alignment */
@media(min-width:901px){
  .inner-content .inner-grid{
    align-items:start;
  }

    .inner-content .sticky-panel{
      margin-top:clamp(11rem,12vw,12.2rem);
  }
}

@media(max-width:900px){
  .inner-content .sticky-panel{
    margin-top:0;
  }
}

/* Design lab: route-based visual directions for client review */
body.design-lab{
  --dl-bg:#f7f4ec;
  --dl-soft:#fffaf1;
  --dl-surface:#ffffff;
  --dl-ink:#17211d;
  --dl-muted:#4f5d55;
  --dl-accent:#155a42;
  --dl-accent-dark:#0f4633;
  --dl-accent-2:#d2d8bc;
  --dl-highlight:#eff5dc;
  --dl-dark:#17211d;
  --dl-border:#d8dfcd;
  --dl-radius:16px;
  --dl-radius-lg:26px;
  --dl-shadow:0 18px 48px rgba(19,35,30,.10);
  --navy:var(--dl-ink);
  --navy2:var(--dl-dark);
  --text:var(--dl-ink);
  --muted:var(--dl-muted);
  --teal:var(--dl-accent);
  --teal2:var(--dl-accent-dark);
  --teal-pale:var(--dl-highlight);
  --teal-lt:var(--dl-accent-2);
  --gold:var(--dl-accent-2);
  --cream:var(--dl-bg);
  --border:var(--dl-border);
  background:var(--dl-bg);
  color:var(--dl-ink);
}

body.theme-showcase{--dl-bg:#f7f8f2;--dl-soft:#ffffff;--dl-surface:#ffffff;--dl-ink:#17211d;--dl-muted:#46564d;--dl-accent:#155a42;--dl-accent-dark:#0e4431;--dl-accent-2:#b8c48f;--dl-highlight:#eef4df;--dl-dark:#17211d;--dl-border:#d6dfca;--dl-radius:18px;--dl-radius-lg:30px}
body.theme-coastal{--dl-bg:#eef8fb;--dl-soft:#f8fdff;--dl-surface:#ffffff;--dl-ink:#10263a;--dl-muted:#3b5666;--dl-accent:#0f6680;--dl-accent-dark:#0a4d63;--dl-accent-2:#9fd3df;--dl-highlight:#e4f4f7;--dl-dark:#10263a;--dl-border:#b8d9e3;--dl-radius:14px;--dl-radius-lg:22px}
body.theme-sunrise{--dl-bg:#fff6e8;--dl-soft:#fffaf2;--dl-surface:#ffffff;--dl-ink:#2a1c12;--dl-muted:#5c4936;--dl-accent:#a95318;--dl-accent-dark:#7c3c10;--dl-accent-2:#f3b35f;--dl-highlight:#fff0d6;--dl-dark:#2a1c12;--dl-border:#e8c493;--dl-radius:22px;--dl-radius-lg:34px}
body.theme-terracotta{--dl-bg:#fff3ed;--dl-soft:#fff9f5;--dl-surface:#ffffff;--dl-ink:#2c1b17;--dl-muted:#5f433a;--dl-accent:#a34831;--dl-accent-dark:#7c3424;--dl-accent-2:#e6a489;--dl-highlight:#ffe7dd;--dl-dark:#2c1b17;--dl-border:#e1b4a4;--dl-radius:10px;--dl-radius-lg:18px}
body.theme-emerald{--dl-bg:#eff8f0;--dl-soft:#fbfdf9;--dl-surface:#ffffff;--dl-ink:#142a20;--dl-muted:#3f594b;--dl-accent:#237348;--dl-accent-dark:#185538;--dl-accent-2:#9fd5b5;--dl-highlight:#e2f4e9;--dl-dark:#142a20;--dl-border:#b9d9c5;--dl-radius:18px;--dl-radius-lg:28px}
body.theme-indigo{--dl-bg:#f2f4ff;--dl-soft:#fbfbff;--dl-surface:#ffffff;--dl-ink:#151d3b;--dl-muted:#434d70;--dl-accent:#334a9a;--dl-accent-dark:#263775;--dl-accent-2:#b9c4ff;--dl-highlight:#e7ebff;--dl-dark:#151d3b;--dl-border:#c7cff0;--dl-radius:14px;--dl-radius-lg:24px}
body.theme-copper{--dl-bg:#fff5ed;--dl-soft:#fffaf6;--dl-surface:#ffffff;--dl-ink:#291d17;--dl-muted:#5d4a3e;--dl-accent:#8d4c23;--dl-accent-dark:#693819;--dl-accent-2:#d89a66;--dl-highlight:#ffe9da;--dl-dark:#291d17;--dl-border:#d9b293;--dl-radius:8px;--dl-radius-lg:16px}
body.theme-slateblue{--dl-bg:#f0f4f7;--dl-soft:#f9fbfc;--dl-surface:#ffffff;--dl-ink:#182331;--dl-muted:#405263;--dl-accent:#3e5f84;--dl-accent-dark:#2e4764;--dl-accent-2:#abc4dd;--dl-highlight:#e5eef5;--dl-dark:#182331;--dl-border:#c1d0dc;--dl-radius:6px;--dl-radius-lg:14px}
body.theme-executive{--dl-bg:#f6f2e8;--dl-soft:#fffaf0;--dl-surface:#ffffff;--dl-ink:#211b12;--dl-muted:#524630;--dl-accent:#7b530d;--dl-accent-dark:#5c3c08;--dl-accent-2:#d5af57;--dl-highlight:#fbefd1;--dl-dark:#211b12;--dl-border:#d8bd7c;--dl-radius:8px;--dl-radius-lg:12px}
body.theme-steel{--dl-bg:#f1f5f6;--dl-soft:#fbfcfd;--dl-surface:#ffffff;--dl-ink:#18252b;--dl-muted:#3f5057;--dl-accent:#426270;--dl-accent-dark:#304a55;--dl-accent-2:#9fb7bf;--dl-highlight:#e5eef1;--dl-dark:#18252b;--dl-border:#c2d0d5;--dl-radius:4px;--dl-radius-lg:10px}
body.theme-charcoal-gold{--dl-bg:#f5f1e8;--dl-soft:#fffbf2;--dl-surface:#ffffff;--dl-ink:#1e1d19;--dl-muted:#515044;--dl-accent:#856116;--dl-accent-dark:#63470d;--dl-accent-2:#d2b35c;--dl-highlight:#f7edcf;--dl-dark:#1e1d19;--dl-border:#d3bf82;--dl-radius:2px;--dl-radius-lg:8px}
body.theme-graphite-lime{--dl-bg:#f3f6ef;--dl-soft:#fcfef8;--dl-surface:#ffffff;--dl-ink:#1d231e;--dl-muted:#485145;--dl-accent:#526f1d;--dl-accent-dark:#3d5315;--dl-accent-2:#b8d26a;--dl-highlight:#edf5d8;--dl-dark:#1d231e;--dl-border:#c4d39d;--dl-radius:12px;--dl-radius-lg:20px}
body.theme-navy-cyan{--dl-bg:#eef7fa;--dl-soft:#f8fdff;--dl-surface:#ffffff;--dl-ink:#0f2431;--dl-muted:#385565;--dl-accent:#08738a;--dl-accent-dark:#07566a;--dl-accent-2:#8bd6e4;--dl-highlight:#ddf4f8;--dl-dark:#0f2431;--dl-border:#acd7df;--dl-radius:10px;--dl-radius-lg:18px}
body.theme-ink-sage{--dl-bg:#f1f6ef;--dl-soft:#fbfdf8;--dl-surface:#ffffff;--dl-ink:#18221c;--dl-muted:#445346;--dl-accent:#456f4d;--dl-accent-dark:#334f39;--dl-accent-2:#a8c6a8;--dl-highlight:#e6f1e4;--dl-dark:#18221c;--dl-border:#bccfbb;--dl-radius:18px;--dl-radius-lg:26px}
body.theme-plum{--dl-bg:#fff3f8;--dl-soft:#fffafd;--dl-surface:#ffffff;--dl-ink:#25172a;--dl-muted:#554054;--dl-accent:#763050;--dl-accent-dark:#5b223d;--dl-accent-2:#e4a7c4;--dl-highlight:#fae4ef;--dl-dark:#25172a;--dl-border:#d9abc1;--dl-radius:24px;--dl-radius-lg:36px}
body.theme-rose{--dl-bg:#fff4f4;--dl-soft:#fffafa;--dl-surface:#ffffff;--dl-ink:#2a171b;--dl-muted:#594044;--dl-accent:#994156;--dl-accent-dark:#733040;--dl-accent-2:#e6a5b2;--dl-highlight:#ffe5eb;--dl-dark:#2a171b;--dl-border:#dfb1bb;--dl-radius:22px;--dl-radius-lg:34px}
body.theme-aubergine{--dl-bg:#f8f1fa;--dl-soft:#fef9ff;--dl-surface:#ffffff;--dl-ink:#24162d;--dl-muted:#50405a;--dl-accent:#6d3a78;--dl-accent-dark:#512a5a;--dl-accent-2:#c9a1d2;--dl-highlight:#f1e2f4;--dl-dark:#24162d;--dl-border:#d2b6da;--dl-radius:14px;--dl-radius-lg:22px}
body.theme-aqua{--dl-bg:#edf9f8;--dl-soft:#f8ffff;--dl-surface:#ffffff;--dl-ink:#0e292b;--dl-muted:#365b5f;--dl-accent:#08747a;--dl-accent-dark:#07585d;--dl-accent-2:#8bd9d9;--dl-highlight:#dcf5f4;--dl-dark:#0e292b;--dl-border:#a9d9d8;--dl-radius:26px;--dl-radius-lg:40px}
body.theme-violet{--dl-bg:#f5f1ff;--dl-soft:#fbf9ff;--dl-surface:#ffffff;--dl-ink:#211936;--dl-muted:#4e4567;--dl-accent:#5c4392;--dl-accent-dark:#44316e;--dl-accent-2:#c4b1f0;--dl-highlight:#ede5ff;--dl-dark:#211936;--dl-border:#cbbce8;--dl-radius:18px;--dl-radius-lg:28px}
body.theme-deep-teal{--dl-bg:#edf7f4;--dl-soft:#fbfffd;--dl-surface:#ffffff;--dl-ink:#102620;--dl-muted:#38534c;--dl-accent:#0d6d5b;--dl-accent-dark:#0a5144;--dl-accent-2:#91d3c5;--dl-highlight:#dff3ee;--dl-dark:#102620;--dl-border:#aad7cd;--dl-radius:12px;--dl-radius-lg:22px}
body.theme-burgundy{--dl-bg:#fff2f1;--dl-soft:#fff9f8;--dl-surface:#ffffff;--dl-ink:#2b1617;--dl-muted:#5c3e40;--dl-accent:#84343a;--dl-accent-dark:#64272c;--dl-accent-2:#dc9ba0;--dl-highlight:#ffe2e4;--dl-dark:#2b1617;--dl-border:#d9a9ad;--dl-radius:10px;--dl-radius-lg:18px}
body.theme-warm-gray{--dl-bg:#f6f3ef;--dl-soft:#fffdf9;--dl-surface:#ffffff;--dl-ink:#24211e;--dl-muted:#55504a;--dl-accent:#6d6254;--dl-accent-dark:#50483e;--dl-accent-2:#c7b9a7;--dl-highlight:#eee7de;--dl-dark:#24211e;--dl-border:#cec2b5;--dl-radius:16px;--dl-radius-lg:24px}
body.theme-cobalt{--dl-bg:#eef4ff;--dl-soft:#f8fbff;--dl-surface:#ffffff;--dl-ink:#10203c;--dl-muted:#3b4d6e;--dl-accent:#1f58a8;--dl-accent-dark:#173f7b;--dl-accent-2:#9bbef4;--dl-highlight:#e0ecff;--dl-dark:#10203c;--dl-border:#b4c9ea;--dl-radius:12px;--dl-radius-lg:20px}
body.theme-process-blue{--dl-bg:#f1f6ff;--dl-soft:#fbfdff;--dl-surface:#ffffff;--dl-ink:#13223d;--dl-muted:#415475;--dl-accent:#25508f;--dl-accent-dark:#1b3b6d;--dl-accent-2:#aec8f6;--dl-highlight:#e6efff;--dl-dark:#13223d;--dl-border:#bdceed;--dl-radius:20px;--dl-radius-lg:30px}
body.theme-dashboard{--dl-bg:#f4f6f7;--dl-soft:#fbfbfb;--dl-surface:#ffffff;--dl-ink:#171b20;--dl-muted:#48515a;--dl-accent:#2f5662;--dl-accent-dark:#243f49;--dl-accent-2:#b7c9cf;--dl-highlight:#e8eff1;--dl-dark:#171b20;--dl-border:#c4ccd1;--dl-radius:10px;--dl-radius-lg:18px}
body.theme-editorial{--dl-bg:#faf4ee;--dl-soft:#fffaf5;--dl-surface:#ffffff;--dl-ink:#201a17;--dl-muted:#554940;--dl-accent:#8d4f2b;--dl-accent-dark:#6a3a1f;--dl-accent-2:#d8ad77;--dl-highlight:#f7ead9;--dl-dark:#201a17;--dl-border:#d8b991;--dl-radius:4px;--dl-radius-lg:10px}
body.theme-article{--dl-bg:#f7f3ec;--dl-soft:#fffdf8;--dl-surface:#ffffff;--dl-ink:#1f1b16;--dl-muted:#514a40;--dl-accent:#735328;--dl-accent-dark:#553d1d;--dl-accent-2:#c8a876;--dl-highlight:#f2e8d5;--dl-dark:#1f1b16;--dl-border:#d2bd9b;--dl-radius:8px;--dl-radius-lg:16px}
body.theme-human{--dl-bg:#f2f8f2;--dl-soft:#fbfdf9;--dl-surface:#ffffff;--dl-ink:#17251c;--dl-muted:#405246;--dl-accent:#386b4e;--dl-accent-dark:#2a5039;--dl-accent-2:#a8cbaa;--dl-highlight:#e3f1e4;--dl-dark:#17251c;--dl-border:#b8cfbb;--dl-radius:24px;--dl-radius-lg:36px}
body.theme-coral{--dl-bg:#fff4ef;--dl-soft:#fffaf7;--dl-surface:#ffffff;--dl-ink:#2b1b17;--dl-muted:#60463d;--dl-accent:#9a432d;--dl-accent-dark:#75311f;--dl-accent-2:#e6aa8e;--dl-highlight:#ffe6db;--dl-dark:#2b1b17;--dl-border:#dfb49f;--dl-radius:18px;--dl-radius-lg:28px}
body.theme-document{--dl-bg:#f4f7f9;--dl-soft:#fbfcfd;--dl-surface:#ffffff;--dl-ink:#17212d;--dl-muted:#425160;--dl-accent:#3f5e76;--dl-accent-dark:#2f4659;--dl-accent-2:#b5c7d4;--dl-highlight:#e6eef4;--dl-dark:#17212d;--dl-border:#bdcad4;--dl-radius:6px;--dl-radius-lg:12px}

body.design-lab nav{
  background:rgba(255,255,255,.94);
  border-bottom:1px solid var(--dl-border);
  box-shadow:0 8px 26px rgba(20,28,34,.08);
}
body.design-lab .nav-links a,
body.design-lab .nav-info{color:var(--dl-muted)}
body.design-lab nav .nav-logo-text{color:var(--dl-ink)!important}
body.design-lab nav .nav-logo-text em{color:var(--dl-accent)!important}
body.design-lab .nav-links a:hover,
body.design-lab .nav-links a.active,
body.design-lab .nav-info:hover{color:var(--dl-accent)}
body.design-lab .nav-info{border-color:var(--dl-border);background:rgba(255,255,255,.66)}
body.design-lab .mob-menu{background:#fff;border-color:var(--dl-border)}
body.design-lab .mob-menu a{color:var(--dl-ink);border-bottom-color:var(--dl-border)}
body.design-lab .btn{border-radius:calc(var(--dl-radius) - 4px);box-shadow:none}
body.design-lab .btn-teal,
body.design-lab .nav-apply,
body.design-lab .ctab.active,
body.design-lab .c-fbtn.active{
  background:var(--dl-accent)!important;
  color:#fff!important;
  border-color:var(--dl-accent)!important;
}
body.design-lab .btn-teal:hover,
body.design-lab .nav-apply:hover{background:var(--dl-accent-dark)!important}
body.design-lab .btn-white{color:var(--dl-dark)!important;background:#fff!important;border:1px solid rgba(255,255,255,.8)}
body.design-lab .btn-ghost,
body.design-lab .btn-navy-ghost{
  background:rgba(255,255,255,.1);
  color:#fff;
  border-color:rgba(255,255,255,.54);
}
body.design-lab .inner-hero{
  background:
    radial-gradient(circle at 86% 18%,rgba(21,90,66,.10),transparent 30%),
    radial-gradient(circle at 10% 88%,rgba(184,196,143,.18),transparent 28%),
    linear-gradient(180deg,#fff 0%,var(--dl-bg) 100%);
  padding:120px 0 76px;
  border-bottom:1px solid var(--dl-border);
}
body.design-lab .inner-hero::before{
  display:none;
}

body.design-lab .inner-hero::after{
  display:none;
}
body.design-lab .inner-hero h1,
body.design-lab .breadcrumb,
body.design-lab .breadcrumb a,
body.design-lab .breadcrumb span{
  color:var(--dl-ink)!important;
}

body.design-lab .inner-hero h1 em{
  color:var(--dl-accent)!important;
}

body.design-lab .inner-hero-desc,
body.design-lab .inner-hero p{
  color:var(--dl-muted)!important;
}

body.design-lab .inner-hero .btn-ghost,
body.design-lab .inner-hero .btn-navy-ghost{
  background:#fff!important;
  color:var(--dl-ink)!important;
  border-color:var(--dl-border)!important;
}

body.design-lab .inner-hero .btn-ghost:hover,
body.design-lab .inner-hero .btn-navy-ghost:hover{
  color:var(--dl-accent)!important;
  border-color:var(--dl-accent)!important;
}

body.design-lab .inner-hero-desc{opacity:1;font-weight:400}
body.design-lab .breadcrumb{
  background:#fff;
  border:1px solid var(--dl-border);
  border-radius:999px;
  padding:.45rem .8rem;
  width:max-content;
  max-width:100%;
  margin-bottom:1.2rem;
  box-shadow:0 10px 26px rgba(21,90,66,.08);
}

body.design-lab .cta-band h2,
body.design-lab footer h5,
body.design-lab .visual-panel h3,
body.design-lab .visual-caption,
body.design-lab .comm-panel h3,
body.design-lab .dark-box h3,
body.design-lab .res-panel h3,
body.design-lab .calc-left h2,
body.design-lab .ins-header h2,
body.design-lab .ins-card h4{
  color:#fff!important;
}

body.design-lab section[style*="background:var(--cream)"],
body.design-lab section[style*="background:#fff"],
body.design-lab .benefits,
body.design-lab .comm-section,
body.design-lab .team-section,
body.design-lab .about-team-section,
body.design-lab .how-section,
body.design-lab .blog-section,
body.design-lab .blog-feature-band,
body.design-lab .inner-content,
body.design-lab .inner-steps,
body.design-lab .faq-section,
body.design-lab .calculators-workbench{
  background:linear-gradient(180deg,var(--dl-bg),var(--dl-soft))!important;
}
body.design-lab .mort-section,
body.design-lab .testi-section{background:var(--dl-surface)!important}
body.design-lab .ben-card,
body.design-lab .blog-card,
body.design-lab .blog-feature-card,
body.design-lab .testi-card,
body.design-lab .team-card,
body.design-lab .about-team-card,
body.design-lab .why-card,
body.design-lab .check-item,
body.design-lab .cinfo-card,
body.design-lab .cbox,
body.design-lab .blog-post-article,
body.design-lab .blog-related-item,
body.design-lab .blog-empty,
body.design-lab .enquiry-form,
body.design-lab .icon-card,
body.design-lab .svc-row,
body.design-lab .calc-box,
body.design-lab .scenario-panel,
body.design-lab .info-card,
body.design-lab a[style*="background:var(--cream)"],
body.design-lab .ins-card[style]{
  background:var(--dl-surface)!important;
  border:1.5px solid var(--dl-border)!important;
  border-radius:var(--dl-radius)!important;
  box-shadow:var(--dl-shadow);
}
body.design-lab h1,
body.design-lab h2,
body.design-lab h3,
body.design-lab h4,
body.design-lab .split-content h2,
body.design-lab .ben-card h4,
body.design-lab .blog-card h3,
body.design-lab .blog-feature-body h2,
body.design-lab .about-team-details h3,
body.design-lab .faq-q,
body.design-lab .cbox h3,
body.design-lab .disc-section h3,
body.design-lab .pp-section h3{color:var(--dl-ink)!important}
body.design-lab p,
body.design-lab li,
body.design-lab small,
body.design-lab .lead,
body.design-lab .sub,
body.design-lab .ben-card p,
body.design-lab .blog-card p,
body.design-lab .blog-feature-body p,
body.design-lab .testi-q,
body.design-lab .testi-role,
body.design-lab .why-card p,
body.design-lab .step-v p,
body.design-lab .check-item p,
body.design-lab .cinfo-card p,
body.design-lab .cinfo-card a,
body.design-lab .blog-post-content p,
body.design-lab .blog-post-content li,
body.design-lab .about-team-contact a,
body.design-lab .disc-section p,
body.design-lab .disc-section li,
body.design-lab .pp-section p,
body.design-lab .pp-section li,
body.design-lab .form-row label,
body.design-lab .cf label,
body.design-lab .cdisclaim{color:var(--dl-muted)!important}
body.design-lab .eyebrow,
body.design-lab .blog-cat,
body.design-lab .blog-all,
body.design-lab .blog-read,
body.design-lab .svc-arr,
body.design-lab .cf .cv,
body.design-lab .about-team-role,
body.design-lab .about-team-specialty,
body.design-lab .about-team-contact .text-icon,
body.design-lab .team-card .role{color:var(--dl-accent)!important}
body.design-lab .fi svg{stroke:currentColor}
body.design-lab .visual-panel,
body.design-lab .comm-panel,
body.design-lab .dark-box,
body.design-lab .res-panel,
body.design-lab .why-panel,
body.design-lab .calc-banner,
body.design-lab .ins-section,
body.design-lab .cta-band,
body.design-lab footer{
  background:linear-gradient(135deg,var(--dl-dark),var(--dl-accent))!important;
  border-radius:0;
}
body.design-lab .visual-panel h3,
body.design-lab .visual-caption,
body.design-lab .comm-panel h3,
body.design-lab .dark-box h3,
body.design-lab .res-panel h3,
body.design-lab .calc-left h2,
body.design-lab .ins-header h2,
body.design-lab .cta-band h2,
body.design-lab footer h5,
body.design-lab .ins-card h4{color:#fff!important}
body.design-lab .visual-panel p,
body.design-lab .v-box p,
body.design-lab .comm-panel p,
body.design-lab .comm-stat-lbl,
body.design-lab .dark-box p,
body.design-lab .dark-box li,
body.design-lab .res-lbl,
body.design-lab .calc-left p,
body.design-lab .cfield label,
body.design-lab .ins-header .sub,
body.design-lab .ins-card p,
body.design-lab .cta-band p,
body.design-lab .footer-brand p,
body.design-lab .footer-col li a,
body.design-lab .footer-bottom p{color:rgba(255,255,255,.86)!important}
body.design-lab .ins-card[style*="background:#fff"] h4{
  color:var(--dl-ink)!important;
  opacity:1!important;
  visibility:visible!important;
}
body.design-lab .ins-card[style*="background:#fff"] p{
  color:var(--dl-muted)!important;
  opacity:1!important;
  visibility:visible!important;
}
body.design-lab .ins-card[style*="background:#fff"] .ins-more{
  color:var(--dl-accent)!important;
  opacity:1!important;
  visibility:visible!important;
}
body.design-lab .visual-caption strong,
body.design-lab .comm-stat-num,
body.design-lab .res-val,
body.design-lab .stat-num{color:#fff!important}
body.design-lab .comm-stat,
body.design-lab .v-box,
body.design-lab .ins-card{
  background:rgba(255,255,255,.1)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:calc(var(--dl-radius) - 2px)!important;
}
body.design-lab .ticker{background:var(--dl-accent)!important}
body.design-lab .bt1,
body.design-lab .bt2,
body.design-lab .bt3,
body.design-lab .blog-feature-thumb,
body.design-lab .blog-post-hero-card{background:linear-gradient(135deg,var(--dl-dark),var(--dl-accent))!important}
body.design-lab input,
body.design-lab select,
body.design-lab textarea,
body.design-lab .cf input[type=number],
body.design-lab .cf select{
  background:#fff!important;
  border-color:var(--dl-border)!important;
  color:var(--dl-ink)!important;
  border-radius:calc(var(--dl-radius) - 6px)!important;
}
body.design-lab input:focus,
body.design-lab select:focus,
body.design-lab textarea:focus{
  outline:2px solid var(--dl-accent-2);
  border-color:var(--dl-accent)!important;
}

body.page-home .hero{
  background:linear-gradient(180deg,#fff 0%,var(--dl-bg) 100%);
  padding-top:96px;
}
body.page-home .hero::before{
  display:none;
}
body.page-home .hero-orb{display:none}
body.page-home .hero h1,
body.page-home .hero-glass-hd h3{color:var(--dl-ink)!important}
body.page-home .hero h1 em,
body.page-home .stat-num,
body.page-home .svc-link:hover{color:var(--dl-accent)!important}
body.page-home .hero-desc,
body.page-home .stat-lbl{color:var(--dl-muted)!important}
body.page-home .hero-glass,
body.page-home .stat-box{
  background:#fff!important;
  border:1.5px solid var(--dl-border)!important;
  box-shadow:var(--dl-shadow);
}
body.page-home .svc-link{color:var(--dl-ink);border-bottom-color:var(--dl-border)}
body.page-home .btn-ghost{color:var(--dl-ink);border-color:var(--dl-border);background:#fff}
body.page-home .hero-inner{position:relative;z-index:1}

body.group-mortgage .inner-hero-inner,
body.group-commercial .inner-hero-inner,
body.group-insurance .inner-hero-inner{display:grid;grid-template-columns:minmax(0,1fr);gap:1.2rem}
body.group-mortgage .inner-hero{clip-path:polygon(0 0,100% 0,100% 92%,0 100%)}
body.group-commercial .inner-hero{border-bottom:6px solid var(--dl-accent-2)}
body.group-commercial .svc-row{border-left:5px solid var(--dl-accent)!important}
body.group-insurance .inner-hero{border-bottom-left-radius:42px;border-bottom-right-radius:42px}
body.group-insurance .ins-grid .ins-card{border-radius:var(--dl-radius-lg)!important}
body.page-calculators .calculators-workbench{background:var(--dl-bg)!important}
body.page-calculators .cpanel.active{align-items:stretch}
body.page-calculators .cbox,
body.page-calculators .scenario-panel{box-shadow:0 12px 36px rgba(23,27,32,.09)!important}
body.page-calculators .res-panel{background:linear-gradient(160deg,#111820,var(--dl-accent))!important}
body.page-blog .blog-feature-grid,
body.page-blog .blog-grid{gap:1.8rem}
body.group-blog .inner-hero{text-align:left}
body.group-blog .blog-post-article{font-size:1.02rem;line-height:1.85}
body.page-about .about-team-card{align-items:center}
body.page-about .about-team-photo{border-radius:20px}
body.page-contact .contact-grid{align-items:start}
body.page-contact .enquiry-form{border-top:5px solid var(--dl-accent)!important}
body.group-info .info-card,
body.group-info .disc-highlight{border-left:5px solid var(--dl-accent)!important}

@media(min-width:901px){
  body.design-lab .inner-hero-inner{
    width:min(calc(100% - (var(--layout-gutter) * 2)),var(--layout-max));
    max-width:none;
  }
  body.page-commercial .split,
  body.page-insurance .ins-header,
  body.page-how-we-help .how-grid{gap:4rem}
  body.group-commercial .inner-content .inner-grid,
  body.group-insurance .inner-content .inner-grid,
  body.group-mortgage .inner-content .inner-grid{grid-template-columns:minmax(0,1.12fr) minmax(300px,.58fr)}
}

@media(max-width:900px){
  body.design-lab .nav-wrap{height:64px}
  body.design-lab .inner-hero{padding:96px 0 54px}
  body.design-lab .inner-hero::before,
  body.design-lab .inner-hero::after{display:none}
  body.design-lab .breadcrumb{width:auto}
  body.design-lab .hero-inner,
  body.design-lab .split,
  body.design-lab .calc-grid,
  body.design-lab .ins-header,
  body.design-lab .how-grid,
  body.design-lab .inner-grid,
  body.design-lab .contact-grid,
  body.design-lab .cpanel.active{grid-template-columns:1fr!important}
  body.group-mortgage .inner-hero{clip-path:none}
}

@media(max-width:600px){
  body.design-lab .container,
  body.design-lab .hero-inner,
  body.design-lab .inner-hero-inner,
  body.design-lab .nav-wrap{padding-left:1.1rem;padding-right:1.1rem}
  body.design-lab .inner-hero h1,
  body.design-lab .hero h1{font-size:clamp(2.05rem,11vw,3rem)}
  body.design-lab .btn{width:100%;justify-content:center}
  body.design-lab .hero-btns{width:100%}
  body.design-lab .stats-row{grid-template-columns:1fr}
  body.design-lab .benefits-grid,
  body.design-lab .blog-grid,
  body.design-lab .testi-grid,
  body.design-lab .footer-grid,
  body.design-lab .why-grid,
  body.design-lab .comm-stats{grid-template-columns:1fr!important}
  body.design-lab .about-team-card{flex-direction:column}
}

/* Fresh page concepts: Commercial and Insurance */
body.page-commercial{
  --dl-bg:#f4f7f6;
  --dl-soft:#ffffff;
  --dl-surface:#ffffff;
  --dl-ink:#111b22;
  --dl-muted:#435563;
  --dl-accent:#0b6b68;
  --dl-accent-dark:#084c4b;
  --dl-accent-2:#b8d878;
  --dl-highlight:#e7f3ef;
  --dl-dark:#111b22;
  --dl-border:#c7d9d4;
  --dl-radius:12px;
  --dl-radius-lg:22px;
  --dl-shadow:0 18px 42px rgba(11,38,42,.10);
}

body.page-commercial .inner-hero{
  min-height:520px;
  display:flex;
  align-items:center;
  background:
    linear-gradient(90deg,rgba(17,27,34,.92) 0%,rgba(17,27,34,.82) 48%,rgba(11,107,104,.64) 100%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 1px,transparent 1px 84px),
    repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0 1px,transparent 1px 84px)!important;
  border-bottom:0!important;
  overflow:hidden;
}

body.page-commercial .inner-hero::after{
  content:'';
  position:absolute;
  right:clamp(1.2rem,8vw,8rem);
  bottom:-72px;
  width:clamp(250px,30vw,430px);
  aspect-ratio:1;
  border:1px solid rgba(255,255,255,.18);
  border-radius:26px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.04)),
    linear-gradient(90deg,transparent 19%,rgba(184,216,120,.35) 20% 21%,transparent 22% 39%,rgba(184,216,120,.3) 40% 41%,transparent 42% 59%,rgba(184,216,120,.24) 60% 61%,transparent 62%);
  box-shadow:0 30px 90px rgba(0,0,0,.22);
  transform:rotate(-6deg);
  pointer-events:none;
}

body.page-commercial .inner-hero-inner{
  max-width:1120px;
  padding-top:1rem;
  position:relative;
  z-index:1;
}

body.page-commercial .inner-hero h1{
  max-width:760px;
  font-size:clamp(2.8rem,5vw,5rem);
  line-height:1.02;
  letter-spacing:0;
}

body.page-commercial .inner-hero h1 em{
  color:var(--dl-accent-2)!important;
}

body.page-commercial .inner-hero-desc{
  max-width:620px;
  font-size:1.04rem;
  line-height:1.82;
}

body.page-commercial .inner-hero .btn{
  width:max-content;
  background:var(--dl-accent-2)!important;
  color:#142017!important;
  border-color:var(--dl-accent-2)!important;
  font-weight:700;
}

body.page-commercial section[style*="background:var(--cream)"]{
  padding:6.5rem 0!important;
  background:
    linear-gradient(180deg,#f4f7f6 0%,#fff 100%)!important;
}

body.page-commercial .split{
  align-items:stretch;
  gap:clamp(2rem,5vw,5.2rem);
}

body.page-commercial .split-content{
  background:#fff;
  border:1px solid var(--dl-border);
  border-radius:24px;
  padding:clamp(1.7rem,3vw,2.6rem);
  box-shadow:var(--dl-shadow);
}

body.page-commercial .split-content h2{
  font-style:normal!important;
  letter-spacing:0;
}

body.page-commercial .split-content .lead{
  max-width:560px;
  font-size:1rem;
  color:var(--dl-muted)!important;
}

.commercial-tile-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
  margin:1.8rem 0 1.8rem;
}

.commercial-tile{
  min-height:218px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.75rem;
  padding:1.45rem;
  background:#fff;
  border:1px solid var(--dl-border);
  border-radius:24px;
  color:var(--dl-ink);
  box-shadow:0 16px 42px rgba(16,70,57,.10);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease;
}

.commercial-tile:hover{
  transform:translateY(-5px);
  border-color:var(--dl-accent);
  background:#f8fbfa;
  box-shadow:0 24px 60px rgba(16,70,57,.16);
}

.commercial-tile-icon{
  width:48px;
  height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:var(--dl-highlight);
  color:var(--dl-accent);
}

.commercial-tile h3{
  font-family:var(--serif);
  font-size:1.08rem;
  line-height:1.2;
  font-style:italic;
  color:var(--dl-ink);
}

.commercial-tile p{
  font-size:.82rem;
  line-height:1.55;
  color:var(--dl-muted);
  font-weight:300;
}

.commercial-tile-more{
  margin-top:auto;
  padding-top:.65rem;
  color:var(--dl-accent);
  font-size:.8rem;
  font-weight:600;
}

body.page-commercial .svc-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.85rem;
}

body.page-commercial .svc-row{
  min-height:96px;
  align-items:flex-start;
  justify-content:flex-start;
  gap:.85rem;
  background:#f8fbfa!important;
  border:1px solid var(--dl-border)!important;
  border-left:4px solid var(--dl-accent)!important;
  border-radius:14px!important;
  padding:1rem!important;
  color:var(--dl-ink)!important;
  box-shadow:none!important;
}

body.page-commercial .svc-row:hover{
  background:var(--dl-highlight)!important;
  border-color:var(--dl-accent)!important;
  color:var(--dl-accent-dark)!important;
  transform:translateY(-2px);
}

body.page-commercial .svc-row .sico{
  width:38px;
  height:38px;
  border-radius:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--dl-accent);
  color:#fff!important;
  flex:0 0 auto;
}

body.page-commercial .svc-row .svc-arr{
  margin-left:auto;
  color:var(--dl-accent)!important;
  opacity:1;
}

body.page-commercial .comm-panel{
  min-height:100%;
  border-radius:26px!important;
  padding:clamp(2rem,4vw,3.2rem)!important;
  background:
    radial-gradient(circle at 85% 14%,rgba(184,216,120,.28),transparent 28%),
    linear-gradient(150deg,#111b22,#0b6b68)!important;
  box-shadow:0 24px 70px rgba(11,38,42,.2);
}

body.page-commercial .comm-panel h3{
  font-size:clamp(1.6rem,3vw,2.2rem);
  font-style:normal!important;
}

body.page-commercial .comm-panel p{
  color:rgba(255,255,255,.84)!important;
}

body.page-commercial .comm-stat{
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(255,255,255,.22)!important;
  border-radius:16px!important;
}

body.page-commercial .comm-stat-num{
  color:var(--dl-accent-2)!important;
  font-style:normal!important;
}

body.page-commercial .cta-band{
  background:linear-gradient(135deg,#111b22,#0b6b68)!important;
  padding:5rem 0!important;
}

body.page-insurance{
  --dl-bg:#fff7f7;
  --dl-soft:#fffdfb;
  --dl-surface:#ffffff;
  --dl-ink:#241725;
  --dl-muted:#59465a;
  --dl-accent:#8d315b;
  --dl-accent-dark:#652141;
  --dl-accent-2:#f1b993;
  --dl-highlight:#fde8ef;
  --dl-dark:#241725;
  --dl-border:#e6bdca;
  --dl-radius:20px;
  --dl-radius-lg:34px;
  --dl-shadow:0 18px 46px rgba(92,37,66,.11);
}

body.page-insurance .inner-hero{
  min-height:560px;
  display:flex;
  align-items:center;
  background:
    radial-gradient(circle at 78% 18%,rgba(241,185,147,.46),transparent 25%),
    radial-gradient(circle at 88% 74%,rgba(141,49,91,.30),transparent 24%),
    linear-gradient(135deg,#241725 0%,#652141 56%,#8d315b 100%)!important;
  border-bottom-left-radius:64px!important;
  border-bottom-right-radius:64px!important;
  overflow:hidden;
}

body.page-insurance .inner-hero::after{
  content:'';
  position:absolute;
  right:clamp(1rem,7vw,7rem);
  bottom:clamp(1rem,6vw,4rem);
  width:clamp(220px,28vw,390px);
  aspect-ratio:1.12;
  border-radius:40px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.20),rgba(255,255,255,.05)),
    radial-gradient(circle at 50% 42%,rgba(255,255,255,.20),transparent 27%);
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 28px 80px rgba(0,0,0,.22);
  pointer-events:none;
}

body.page-insurance .inner-hero-inner{
  position:relative;
  z-index:1;
}

body.page-insurance .inner-hero h1{
  max-width:850px;
  font-size:clamp(2.45rem,4.8vw,4.7rem);
  line-height:1.04;
}

body.page-insurance .inner-hero h1 em{
  color:var(--dl-accent-2)!important;
}

body.page-insurance .inner-hero-desc{
  max-width:640px;
  font-size:1.04rem;
  line-height:1.82;
}

body.page-insurance section[style*="background:var(--cream)"]{
  padding:6.4rem 0!important;
  background:
    linear-gradient(180deg,#fff7f7 0%,#fffdfb 100%)!important;
}

body.page-insurance section[style*="background:var(--cream)"] .container{
  max-width:1180px;
}

body.page-insurance section[style*="background:var(--cream)"] h2{
  font-style:normal!important;
  max-width:680px;
  margin-bottom:2.6rem!important;
}

body.page-insurance .ins-grid{
  gap:1.1rem!important;
}

body.page-insurance .ins-card{
  min-height:248px;
  position:relative;
  overflow:hidden;
  display:flex!important;
  flex-direction:column;
  padding:1.45rem!important;
  background:#fff!important;
  border:1.5px solid var(--dl-border)!important;
  border-radius:26px!important;
  box-shadow:var(--dl-shadow)!important;
}

body.page-insurance .ins-card::after{
  content:'';
  position:absolute;
  inset:auto -36px -42px auto;
  width:120px;
  height:120px;
  border-radius:50%;
  background:var(--dl-highlight);
  transition:transform .22s ease;
}

body.page-insurance .ins-card:hover{
  transform:translateY(-4px);
  border-color:var(--dl-accent)!important;
  box-shadow:0 22px 54px rgba(92,37,66,.16)!important;
}

body.page-insurance .ins-card:hover::after{
  transform:scale(1.18);
}

body.page-insurance .ins-ico{
  width:52px;
  height:52px;
  border-radius:18px;
  background:linear-gradient(135deg,var(--dl-accent),var(--dl-accent-dark))!important;
  color:#fff!important;
  border:0!important;
  position:relative;
  z-index:1;
}

body.page-insurance .ins-card h4{
  color:var(--dl-ink)!important;
  font-style:normal!important;
  font-size:1.05rem;
  line-height:1.25;
  position:relative;
  z-index:1;
}

body.page-insurance .ins-card p{
  color:var(--dl-muted)!important;
  font-size:.84rem;
  line-height:1.62;
  position:relative;
  z-index:1;
}

body.page-insurance .ins-more{
  margin-top:auto;
  color:var(--dl-accent)!important;
  font-weight:700;
  position:relative;
  z-index:1;
}

body.page-insurance .cta-band{
  background:
    radial-gradient(circle at 78% 20%,rgba(241,185,147,.34),transparent 26%),
    linear-gradient(135deg,#241725,#8d315b)!important;
  padding:5.2rem 0!important;
}

@media(min-width:901px){
  body.page-commercial .inner-hero-inner,
  body.page-insurance .inner-hero-inner{
    padding-right:clamp(18rem,34vw,30rem);
  }

  body.page-insurance .ins-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }

  body.page-insurance .ins-card:nth-child(1),
  body.page-insurance .ins-card:nth-child(5){
    grid-column:span 2;
  }
}

@media(max-width:900px){
  body.page-commercial .inner-hero,
  body.page-insurance .inner-hero{
    min-height:auto;
    padding:104px 0 64px;
  }

  body.page-commercial .inner-hero::after,
  body.page-insurance .inner-hero::after{
    opacity:.32;
    right:-80px;
    bottom:-80px;
  }

  body.page-commercial .svc-list,
  .commercial-tile-grid{
    grid-template-columns:1fr;
  }

  body.page-commercial .split-content,
  body.page-commercial .comm-panel{
    min-height:0;
  }
}

@media(max-width:600px){
  body.page-commercial .inner-hero,
  body.page-insurance .inner-hero{
    padding-top:92px;
  }

  body.page-commercial .inner-hero .btn,
  body.page-insurance .inner-hero .btn{
    width:100%;
    justify-content:center;
  }

  body.page-insurance .ins-card{
    min-height:0;
  }
}

body.design-lab.page-insurance .ins-card,
body.page-insurance .ins-card{
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
  padding:1.35rem!important;
  background:#fff!important;
  border:1.5px solid rgba(18,99,71,.18)!important;
  border-radius:18px!important;
  box-shadow:0 12px 32px rgba(23,27,32,.08)!important;
}

body.design-lab.page-insurance .ins-card h4,
body.page-insurance .ins-card h4{
  display:block!important;
  margin:.95rem 0 .45rem!important;
  color:#17231f!important;
  font-size:1.06rem!important;
  line-height:1.25!important;
  font-style:normal!important;
  opacity:1!important;
  visibility:visible!important;
}

body.design-lab.page-insurance .ins-card p,
body.page-insurance .ins-card p{
  display:block!important;
  margin:0 0 1rem!important;
  color:#42544d!important;
  font-size:.9rem!important;
  line-height:1.58!important;
  opacity:1!important;
  visibility:visible!important;
}

body.design-lab.page-insurance .ins-more,
body.page-insurance .ins-more{
  display:block!important;
  margin-top:auto!important;
  color:#126347!important;
  font-size:.92rem!important;
  font-weight:900!important;
  opacity:1!important;
  visibility:visible!important;
}

body.design-lab.page-insurance .ins-ico,
body.page-insurance .ins-ico{
  background:#dce6c9!important;
  border:1.5px solid rgba(18,99,71,.18)!important;
  color:#126347!important;
}

@media(max-width:700px){
  body.page-insurance section[style*="background:var(--cream)"]{
    padding:3.25rem 0!important;
  }

  body.page-insurance section[style*="background:var(--cream)"] .container{
    padding-left:1rem!important;
    padding-right:1rem!important;
  }

  body.page-insurance section[style*="background:var(--cream)"] h2{
    margin-bottom:1.45rem!important;
  }

  body.page-insurance .ins-grid{
    grid-template-columns:1fr!important;
    gap:.9rem!important;
  }

  body.design-lab.page-insurance .ins-card,
  body.page-insurance .ins-card{
    min-height:0!important;
    padding:1.2rem!important;
    border-radius:16px!important;
  }
}

/* Full-site structural concepts beyond color-only themes */
body.page-home .hero{
  min-height:calc(100vh - 8px);
  align-items:center;
  background:
    linear-gradient(90deg,#ffffff 0%,#ffffff 52%,var(--dl-highlight) 52%,var(--dl-highlight) 100%)!important;
}

body.page-home .hero-inner{
  gap:clamp(2rem,5vw,5rem);
  align-items:center;
}

body.page-home .hero h1{
  font-size:clamp(3rem,6vw,6rem);
  line-height:.96;
  max-width:760px;
}

body.page-home .hero-desc{
  max-width:620px;
  font-size:1.02rem;
}

body.page-home .hero-glass{
  border-radius:28px!important;
  padding:clamp(1.4rem,2.5vw,2.4rem)!important;
  transform:rotate(-1deg);
}

body.page-home .hero-dots{
  margin-bottom:1rem;
}

body.page-home .hero-dot{
  background:rgba(18,99,71,.22);
}

body.page-home .hero-dot.active{
  background:var(--dl-accent);
}

body.page-home .hero-timer{
  background:var(--dl-highlight);
  border-color:var(--dl-border);
  color:var(--dl-accent);
}

body.page-home .hero-progress{
  background:rgba(18,99,71,.1);
}

body.page-home .hero-progress-bar{
  background:linear-gradient(90deg,var(--dl-accent),#8aa875);
}

body.page-home .hero-glass::before{
  content:'Services';
  display:block;
  width:max-content;
  margin-bottom:1rem;
  padding:.35rem .7rem;
  border-radius:999px;
  background:var(--dl-highlight);
  color:var(--dl-accent);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.page-home .stats-row{
  transform:translateX(-1rem);
}

body.page-home .benefits-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

body.page-home .ben-card{
  text-align:left;
  min-height:188px;
}

body.page-home .mort-section .visual-panel{
  border-radius:30px;
}

body.page-mortgages{
  --dl-bg:#eef8fb;
  --dl-soft:#ffffff;
  --dl-accent:#0f6680;
  --dl-accent-dark:#0a4d63;
  --dl-accent-2:#ffc857;
  --dl-highlight:#e2f5f8;
  --dl-border:#b5d8e2;
  --dl-radius:18px;
  --dl-radius-lg:30px;
}

body.page-mortgages .inner-hero{
  min-height:500px;
  display:flex;
  align-items:center;
  background:
    linear-gradient(120deg,rgba(16,38,58,.96),rgba(15,102,128,.82)),
    linear-gradient(90deg,rgba(255,255,255,.12) 0 1px,transparent 1px 72px)!important;
}

body.page-mortgages .inner-hero-inner{
  width:min(calc(100% - (var(--layout-gutter) * 2)),var(--layout-max))!important;
  max-width:none!important;
  margin:0 auto!important;
}

body.page-mortgages .inner-hero h1{
  max-width:940px;
  font-size:clamp(2.8rem,5vw,5.2rem);
  line-height:1.02;
}

body.page-mortgages .inner-hero-desc{
  max-width:620px;
}

body.page-mortgages section[style*="background:var(--cream)"]{
  padding:6.5rem 0!important;
}

body.page-mortgages section[style*="background:var(--cream)"] .container > div[style*="display:grid"]{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:1.2rem!important;
}

body.page-mortgages section[style*="background:var(--cream)"] a[style*="background:var(--cream)"]{
  min-height:250px;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 16px 42px rgba(15,70,88,.11)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}

body.page-mortgages section[style*="background:var(--cream)"] a[style*="background:var(--cream)"]:hover{
  transform:translateY(-6px)!important;
  box-shadow:0 24px 60px rgba(15,70,88,.18)!important;
}

body.page-mortgages section[style*="background:var(--cream)"] a[style*="background:var(--cream)"] > div:first-child{
  padding:2rem!important;
}

body.page-mortgages section[style*="background:var(--cream)"] a[style*="background:var(--cream)"] .text-icon{
  width:48px;
  height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:var(--dl-highlight);
  color:var(--dl-accent);
}

body.group-mortgage:not(.page-mortgages) .inner-hero{
  min-height:470px;
  background:
    linear-gradient(135deg,var(--dl-dark),var(--dl-accent))!important;
}

body.group-mortgage:not(.page-mortgages) .inner-content{
  padding-top:6rem!important;
}

body.group-mortgage:not(.page-mortgages) .inner-grid{
  gap:clamp(2rem,4vw,4rem);
}

body.group-mortgage:not(.page-mortgages) .check-item,
body.group-mortgage:not(.page-mortgages) .sticky-panel,
body.group-commercial:not(.page-commercial) .check-item,
body.group-commercial:not(.page-commercial) .sticky-panel,
body.group-insurance:not(.page-insurance) .check-item,
body.group-insurance:not(.page-insurance) .sticky-panel{
  border-radius:22px!important;
}

body.group-mortgage:not(.page-mortgages) .sticky-panel,
body.group-commercial:not(.page-commercial) .sticky-panel,
body.group-insurance:not(.page-insurance) .sticky-panel{
  position:sticky;
  top:96px;
  background:linear-gradient(180deg,#fff,var(--dl-highlight))!important;
  border:1.5px solid var(--dl-border)!important;
  box-shadow:var(--dl-shadow);
}

body.group-mortgage:not(.page-mortgages) .steps-v,
body.group-commercial:not(.page-commercial) .steps-v,
body.group-insurance:not(.page-insurance) .steps-v{
  background:#fff;
  border:1px solid var(--dl-border);
  border-radius:28px;
  padding:1.2rem 1.6rem;
  box-shadow:var(--dl-shadow);
}

body.group-mortgage:not(.page-mortgages) .faq,
body.group-commercial:not(.page-commercial) .faq,
body.group-insurance:not(.page-insurance) .faq{
  background:#fff;
  border:1px solid var(--dl-border);
  border-radius:28px;
  padding:.8rem;
  box-shadow:var(--dl-shadow);
}

body.page-how-we-help{
  --dl-bg:#f1f6ff;
  --dl-accent:#25508f;
  --dl-accent-dark:#18386a;
  --dl-accent-2:#a8c8ff;
  --dl-highlight:#e4edff;
  --dl-radius:18px;
  --dl-radius-lg:32px;
}

body.page-how-we-help .inner-hero{
  text-align:center;
  background:
    linear-gradient(135deg,#13223d,#25508f)!important;
}

body.page-how-we-help .inner-hero-inner{
  max-width:820px;
}

body.page-how-we-help .breadcrumb{
  margin-left:auto;
  margin-right:auto;
}

body.page-how-we-help section[style*="background:#fff"]{
  padding:6.5rem 0!important;
}

body.page-how-we-help .how-grid{
  align-items:stretch;
}

body.page-how-we-help .steps-v{
  background:#fff;
  border:1px solid var(--dl-border);
  border-radius:32px;
  padding:1.4rem 2rem;
  box-shadow:var(--dl-shadow);
}

body.page-how-we-help .step-v{
  padding:1.6rem 0;
}

body.page-how-we-help .step-num{
  background:var(--dl-accent);
  color:#fff;
  border-color:var(--dl-accent-2);
}

body.page-how-we-help .why-panel{
  border-radius:32px!important;
  padding:clamp(1.6rem,3vw,2.6rem)!important;
  background:linear-gradient(180deg,#fff,var(--dl-highlight))!important;
}

body.page-how-we-help .why-grid{
  gap:1rem;
}

body.page-calculators{
  --dl-bg:#f4f6f7;
  --dl-accent:#2f5662;
  --dl-accent-dark:#1f3b44;
  --dl-accent-2:#9ec2cc;
  --dl-highlight:#e5eef1;
  --dl-radius:10px;
  --dl-radius-lg:20px;
}

body.page-calculators .inner-hero{
  min-height:420px;
  background:
    linear-gradient(90deg,#111820,#2f5662)!important;
}

body.page-calculators .calculators-workbench{
  padding:5.5rem 0!important;
  background:#f4f6f7!important;
}

body.page-calculators .calc-tabs{
  width:100%;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-radius:18px;
  background:#fff;
  box-shadow:var(--dl-shadow);
}

body.page-calculators .ctab{
  min-height:54px;
  border-radius:12px;
  font-weight:700;
}

body.page-calculators .cpanel.active{
  gap:1.2rem!important;
}

body.page-calculators .cbox,
body.page-calculators .res-panel,
body.page-calculators .scenario-panel{
  border-radius:22px!important;
}

body.page-calculators .res-panel{
  min-height:100%;
}

.calculators-workbench .cbox,
.calculators-workbench .res-panel,
.calculators-workbench .scenario-panel,
.calculators-workbench .scenario-head,
.calculators-workbench .calc-toolbar{
  min-width:0!important;
}

body.page-calculators .cbox,
body.page-calculators .res-panel,
body.page-calculators .scenario-panel,
body.page-calculators .scenario-head,
body.page-calculators .calc-toolbar{
  min-width:0;
}

@media(max-width:900px){
  .calculators-workbench .cpanel.active,
  body.page-calculators .cpanel.active{
    grid-template-columns:minmax(0,1fr)!important;
    gap:1rem!important;
  }

  .calculators-workbench .cbox,
  .calculators-workbench .res-panel,
  .calculators-workbench .scenario-panel,
  body.page-calculators .cbox,
  body.page-calculators .res-panel,
  body.page-calculators .scenario-panel{
    width:100%!important;
    max-width:100%!important;
  }

  .calculators-workbench .scenario-panel{
    overflow:hidden!important;
  }

  .calculators-workbench .scenario-table-wrap,
  body.page-calculators .scenario-table-wrap{
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
  }

  .calculators-workbench .scenario-table,
  body.page-calculators .scenario-table{
    min-width:640px!important;
  }
}

body.page-blog{
  --dl-bg:#faf4ee;
  --dl-accent:#8d4f2b;
  --dl-accent-dark:#63371f;
  --dl-accent-2:#d8ad77;
  --dl-highlight:#f6e6d3;
  --dl-radius:6px;
  --dl-radius-lg:14px;
}

body.page-blog .inner-hero,
body.group-blog .inner-hero{
  background:
    linear-gradient(135deg,#201a17,#8d4f2b)!important;
}

body.page-blog .blog-feature-band{
  padding-top:5.4rem!important;
}

body.page-blog .blog-feature-grid{
  grid-template-columns:1.2fr .9fr .9fr;
}

body.page-blog .blog-feature-card,
body.page-blog .blog-card{
  border-radius:10px!important;
  box-shadow:0 14px 36px rgba(96,58,33,.12)!important;
}

body.page-blog .blog-feature-thumb,
body.page-blog .blog-thumb{
  min-height:210px;
}

body.group-blog .blog-post-layout{
  gap:2.4rem;
}

body.group-blog .blog-post-article{
  border-radius:14px!important;
  padding:clamp(1.5rem,3vw,3rem)!important;
}

body.group-blog .blog-related-item{
  border-radius:10px!important;
}

body.page-about{
  --dl-bg:#f2f8f2;
  --dl-accent:#386b4e;
  --dl-accent-dark:#254a34;
  --dl-accent-2:#a8cbaa;
  --dl-highlight:#e4f1e4;
  --dl-radius:24px;
  --dl-radius-lg:38px;
}

body.page-about .inner-hero{
  min-height:470px;
  text-align:center;
  background:
    linear-gradient(135deg,#17251c,#386b4e)!important;
}

body.page-about .inner-hero-inner{
  max-width:860px;
}

body.page-about .breadcrumb{
  margin-left:auto;
  margin-right:auto;
}

body.page-about .about-team-section{
  padding:6.5rem 0!important;
}

body.page-about .about-team-inner{
  max-width:1020px;
}

body.page-about .about-team-head{
  text-align:center;
  max-width:620px;
  margin:0 auto 2.8rem;
}

body.page-about .about-team-card{
  border-radius:30px!important;
  padding:2rem!important;
  min-height:260px;
  flex-direction:column;
}

body.page-about .about-team-photo{
  width:96px;
  height:96px;
  flex-basis:96px;
}

body.page-contact{
  --dl-bg:#fff4ef;
  --dl-accent:#9a432d;
  --dl-accent-dark:#6f2d1d;
  --dl-accent-2:#e6aa8e;
  --dl-highlight:#ffe6db;
  --dl-radius:18px;
  --dl-radius-lg:30px;
}

body.page-contact .inner-hero{
  min-height:430px;
  background:
    linear-gradient(135deg,#2b1b17,#9a432d)!important;
}

body.page-contact .contact-grid{
  gap:clamp(2rem,5vw,4.5rem);
}

body.page-contact .enquiry-form{
  border-radius:28px!important;
  padding:clamp(1.4rem,3vw,2.4rem)!important;
  box-shadow:var(--dl-shadow)!important;
}

body.page-contact .cinfo-card{
  border-radius:22px!important;
}

body.page-contact .form-2{
  gap:1rem;
}

body.group-info{
  --dl-bg:#f4f7f9;
  --dl-accent:#3f5e76;
  --dl-accent-dark:#2a4053;
  --dl-accent-2:#b5c7d4;
  --dl-highlight:#e6eef4;
  --dl-radius:8px;
  --dl-radius-lg:16px;
}

body.group-info .inner-hero{
  min-height:380px;
  background:linear-gradient(135deg,#17212d,#3f5e76)!important;
}

body.group-info section[style*="background:var(--cream)"]{
  padding:5.5rem 0!important;
}

body.group-info .info-card{
  border-radius:14px!important;
  background:#fff!important;
}

body.group-info .disc-section,
body.group-info .pp-section{
  background:#fff;
  border:1px solid var(--dl-border);
  border-radius:14px;
  padding:1.4rem 1.5rem;
  box-shadow:0 10px 28px rgba(39,58,75,.06);
}

@media(min-width:901px){
  body.page-home .hero-inner{
    grid-template-columns:minmax(0,1.05fr) minmax(420px,.82fr);
  }

  body.page-contact .contact-grid{
    grid-template-columns:minmax(320px,.72fr) minmax(0,1fr);
  }
}

@media(max-width:1024px){
  body.page-mortgages section[style*="background:var(--cream)"] .container > div[style*="display:grid"],
  body.page-blog .blog-feature-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:700px){
  body.page-home .hero{
    background:linear-gradient(180deg,#fff 0%,var(--dl-highlight) 100%)!important;
  }

  body.page-home .hero-glass{
    transform:none;
  }

  body.page-home .stats-row{
    transform:none;
  }

  body.page-home .benefits-grid,
  body.page-mortgages section[style*="background:var(--cream)"] .container > div[style*="display:grid"],
  body.page-blog .blog-feature-grid,
  body.page-calculators .calc-tabs{
    grid-template-columns:1fr!important;
  }

  body.group-mortgage:not(.page-mortgages) .sticky-panel,
  body.group-commercial:not(.page-commercial) .sticky-panel,
  body.group-insurance:not(.page-insurance) .sticky-panel{
    position:static;
  }

  body.group-info .disc-section,
  body.group-info .pp-section{
    padding:1.1rem;
  }
}

/* Home newsletter visibility repair */
body.page-home .nl-section{
  background:linear-gradient(135deg,#155a42,#0f4633)!important;
}

body.page-home .nl-inner h2{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.18);
}

body.page-home .nl-inner p{
  color:rgba(255,255,255,.88)!important;
}

body.page-home .nl-form input{
  background:#fff!important;
  border:1px solid rgba(255,255,255,.78)!important;
  color:#17211d!important;
  box-shadow:0 10px 28px rgba(0,0,0,.14);
}

body.page-home .nl-form input::placeholder{
  color:#627066!important;
}

body.page-home .nl-form input:focus{
  border-color:#d2d8bc!important;
  outline:2px solid rgba(210,216,188,.45);
}

body.page-home .nl-form button{
  background:#f2f5e5!important;
  color:#0f4633!important;
  border:1px solid #d2d8bc!important;
  box-shadow:0 10px 24px rgba(0,0,0,.12);
}

body.page-home .nl-form button:hover{
  background:#fff!important;
  color:#155a42!important;
}

/* Home responsive repair */
body.page-home{
  overflow-x:hidden;
}

body.page-home .hero,
body.page-home .benefits,
body.page-home .mort-section,
body.page-home .calc-banner,
body.page-home .comm-section,
body.page-home .testi-section,
body.page-home .team-section,
body.page-home .ins-section,
body.page-home .how-section,
body.page-home .blog-section,
body.page-home .nl-section{
  overflow:hidden;
}

@media(max-width:1180px){
  body.page-home .hero{
    min-height:auto;
    padding-top:96px;
  }

  body.page-home .hero-inner{
    gap:2.4rem;
    padding-bottom:4rem;
  }

  body.page-home .hero h1{
    font-size:clamp(2.75rem,6.8vw,4.8rem);
  }

  body.page-home .benefits-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:900px){
  body.page-home .hero{
    background:linear-gradient(180deg,#fff 0%,var(--dl-highlight) 100%)!important;
    padding-top:86px;
  }

  body.page-home .hero-inner{
    grid-template-columns:1fr!important;
    gap:1.8rem;
    padding-bottom:3.4rem;
  }

  body.page-home .hero h1{
    max-width:720px;
    font-size:clamp(2.45rem,9vw,4rem);
  }

  body.page-home .hero-desc{
    max-width:680px;
  }

  body.page-home .hero-vis{
    width:100%;
    max-width:680px;
  }

  body.page-home .hero-glass{
    transform:none;
    border-radius:22px!important;
  }

  body.page-home .stats-row{
    transform:none;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  body.page-home .benefits-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  body.page-home .ben-card{
    min-height:0;
  }

  body.page-home .split,
  body.page-home .calc-grid,
  body.page-home .ins-header,
  body.page-home .how-grid{
    grid-template-columns:1fr!important;
    gap:2rem!important;
  }

  body.page-home .visual-panel{
    min-height:360px;
  }

  body.page-home .ins-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:640px){
  body.page-home .container,
  body.page-home .hero-inner,
  body.page-home .nav-wrap{
    padding-left:1rem!important;
    padding-right:1rem!important;
  }

  body.page-home .hero{
    padding-top:78px;
  }

  body.page-home .hero h1{
    font-size:clamp(2.15rem,12vw,3.1rem)!important;
    line-height:1.03;
    overflow-wrap:normal;
  }

  body.page-home .hero-desc{
    font-size:.94rem;
    line-height:1.7;
  }

  body.page-home .hero-btns,
  body.page-home .nl-form{
    flex-direction:column!important;
    width:100%;
  }

  body.page-home .btn,
  body.page-home .nl-form button{
    width:100%;
    justify-content:center;
  }

  body.page-home .hero-glass{
    padding:1.1rem!important;
    border-radius:18px!important;
  }

  body.page-home .hero-glass-hd{
    align-items:flex-start;
    gap:.75rem;
    flex-direction:column;
  }

  body.page-home .svc-link{
    gap:.8rem;
    align-items:flex-start;
    line-height:1.35;
  }

  body.page-home .stats-row,
  body.page-home .benefits-grid,
  body.page-home .blog-grid,
  body.page-home .testi-grid,
  body.page-home .team-grid,
  body.page-home .why-grid,
  body.page-home .comm-stats,
  body.page-home .ins-grid{
    grid-template-columns:1fr!important;
  }

  body.page-home .visual-panel{
    min-height:320px;
    padding:1.25rem!important;
    border-radius:20px!important;
  }

  body.page-home .visual-grid{
    grid-template-columns:1fr 1fr;
    gap:.55rem;
  }

  body.page-home .calc-box,
  body.page-home .comm-panel,
  body.page-home .why-panel{
    padding:1.2rem!important;
    border-radius:18px!important;
  }

  body.page-home .nl-section{
    padding-top:3.4rem!important;
    padding-bottom:3.4rem!important;
  }

  body.page-home .nl-inner{
    padding:0 1rem;
  }

  body.page-home .nl-inner h2{
    font-size:1.7rem;
  }

  body.page-home .nl-inner p{
    font-size:.9rem;
    line-height:1.6;
  }
}

@media(max-width:420px){
  body.page-home .hero h1{
    font-size:2.05rem!important;
  }

  body.page-home .hero-glass::before{
    margin-bottom:.75rem;
  }

body.page-home .visual-grid{
    grid-template-columns:1fr;
  }
}

/* Mortgage page dark green theme only; preserves existing layout and content */
body.mortgage-dark-page{
  --navy:#161616;
  --teal:#155A42;
  --teal2:#0f3528;
  --teal-lt:#D2D8BC;
  --teal-pale:#EEF2E2;
  --cream:#D2D8BC;
  --text:#161616;
  --muted:#4f554b;
  --border:rgba(22,22,22,.16);
  background:#0f3528;
  color:#161616;
}

body.mortgage-dark-page nav,
body.mortgage-dark-page .mob-menu{
  background:#0f3528;
  border-color:rgba(210,216,188,.22);
}

body.mortgage-dark-page .nav-links a,
body.mortgage-dark-page .nav-logo-text,
body.mortgage-dark-page .mob-menu a{
  color:#fff;
}

body.mortgage-dark-page .nav-info{
  background:transparent!important;
  border-color:rgba(210,216,188,.55)!important;
  color:#D2D8BC!important;
}

body.mortgage-dark-page .nav-links a:hover,
body.mortgage-dark-page .nav-links a.active,
body.mortgage-dark-page .nav-info:hover{
  color:#D2D8BC;
}

body.mortgage-dark-page .inner-hero{
  background:#0f3528!important;
}

body.mortgage-dark-page .breadcrumb,
body.mortgage-dark-page .breadcrumb a,
body.mortgage-dark-page .breadcrumb span,
body.mortgage-dark-page .inner-hero h1,
body.mortgage-dark-page .inner-hero-desc{
  color:#fff!important;
}

body.mortgage-dark-page .inner-hero h1 em{
  color:#D2D8BC!important;
}

body.mortgage-dark-page .btn-teal,
body.mortgage-dark-page .btn-white{
  background:#D2D8BC!important;
  border-color:#D2D8BC!important;
  color:#0f3528!important;
}

body.mortgage-dark-page .btn-ghost{
  background:transparent!important;
  border-color:rgba(210,216,188,.7)!important;
  color:#fff!important;
}

body.mortgage-dark-page section[style*="background:var(--cream)"]{
  background:#D2D8BC!important;
}

body.mortgage-dark-page section[style*="background:var(--cream)"] .eyebrow{
  color:#155A42!important;
}

body.mortgage-dark-page section[style*="background:var(--cream)"] h2{
  color:#161616!important;
}

body.mortgage-dark-page section[style*="background:var(--cream)"] a[style*="background:var(--cream)"]{
  background:#EEF2E2!important;
  border-color:rgba(22,22,22,.16)!important;
}

body.mortgage-dark-page section[style*="background:var(--cream)"] h3,
body.mortgage-dark-page section[style*="background:var(--cream)"] p,
body.mortgage-dark-page section[style*="background:var(--cream)"] span[style*="color:var(--teal)"]{
  color:#161616!important;
}

body.mortgage-dark-page section[style*="background:var(--cream)"] p{
  color:#4f554b!important;
}

body.mortgage-dark-page section[style*="background:var(--cream)"] .text-icon,
body.mortgage-dark-page section[style*="background:var(--cream)"] span[style*="color:var(--teal)"]{
  color:#155A42!important;
}

body.mortgage-dark-page section[style*="background:var(--cream)"] a[style*="background:var(--cream)"] > div:last-child{
  background:#D2D8BC!important;
  border-top-color:rgba(22,22,22,.14)!important;
}

body.mortgage-dark-page .cta-band,
body.mortgage-dark-page footer{
  background:#161616!important;
}

body.mortgage-dark-page .cta-band h2,
body.mortgage-dark-page .cta-band p,
body.mortgage-dark-page footer h5,
body.mortgage-dark-page .footer-brand p,
body.mortgage-dark-page .footer-col li a,
body.mortgage-dark-page .footer-bottom p{
  color:#f7fbf4!important;
}

/* Commercial page theme only; preserves existing layout, structure, and content */
body.commercial-theme-page{
  --navy:#161616;
  --navy2:#1f211a;
  --teal:#155A42;
  --teal2:#104632;
  --teal-lt:#D2D8BC;
  --teal-pale:#E7EBD8;
  --gold:#D2D8BC;
  --cream:#D2D8BC;
  --white:#fff;
  --text:#161616;
  --muted:#4f554b;
  --border:rgba(22,22,22,.16);
  background:#D2D8BC;
  color:#161616;
}

body.commercial-theme-page nav,
body.commercial-theme-page .mob-menu{
  background:rgba(22,22,22,.97);
  border-color:rgba(210,216,188,.18);
}

body.commercial-theme-page .nav-logo-text,
body.commercial-theme-page .nav-info,
body.commercial-theme-page .nav-links a,
body.commercial-theme-page .mob-menu a{
  color:rgba(255,255,255,.78);
}

body.commercial-theme-page .nav-links a:hover,
body.commercial-theme-page .nav-links a.active,
body.commercial-theme-page .nav-info:hover,
body.commercial-theme-page .mob-menu a:hover{
  color:#D2D8BC;
}

body.commercial-theme-page .nav-logo-text em{
  color:#D2D8BC;
}

body.commercial-theme-page .nav-logo-mark{
  background:linear-gradient(135deg,#155A42,#D2D8BC);
}

body.commercial-theme-page .inner-hero{
  background:#161616!important;
}

body.commercial-theme-page .inner-hero::before{
  background:radial-gradient(ellipse at center,rgba(21,90,66,.2) 0%,transparent 68%);
}

body.commercial-theme-page .breadcrumb,
body.commercial-theme-page .breadcrumb a,
body.commercial-theme-page .breadcrumb span,
body.commercial-theme-page .inner-hero h1,
body.commercial-theme-page .inner-hero-desc{
  color:#fff!important;
}

body.commercial-theme-page .inner-hero h1 em{
  color:#D2D8BC!important;
}

body.commercial-theme-page .btn-teal{
  background:#155A42!important;
  color:#fff!important;
  border-color:#155A42!important;
}

body.commercial-theme-page .btn-teal:hover{
  background:#104632!important;
  color:#fff!important;
}

body.commercial-theme-page section[style*="background:var(--cream)"]{
  background:#D2D8BC!important;
}

body.commercial-theme-page .split-content h2,
body.commercial-theme-page section[style*="background:var(--cream)"] h2{
  color:#161616!important;
}

body.commercial-theme-page .split-content .lead{
  color:#4f554b!important;
}

body.commercial-theme-page .eyebrow,
body.commercial-theme-page .svc-arr{
  color:#155A42!important;
}

body.commercial-theme-page .svc-row{
  background:#E7EBD8!important;
  border-color:rgba(22,22,22,.16)!important;
  color:#161616!important;
}

body.commercial-theme-page .svc-row:hover{
  background:#EEF2E2!important;
  border-color:#155A42!important;
  color:#155A42!important;
}

body.commercial-theme-page .comm-panel{
  background:#161616!important;
}

body.commercial-theme-page .comm-panel::after{
  background:radial-gradient(circle,rgba(21,90,66,.24) 0%,transparent 70%);
}

body.commercial-theme-page .comm-panel h3{
  color:#fff!important;
}

body.commercial-theme-page .comm-panel p{
  color:rgba(255,255,255,.68)!important;
}

body.commercial-theme-page .comm-stat{
  background:rgba(255,255,255,.06);
  border-color:rgba(210,216,188,.18);
}

body.commercial-theme-page .comm-stat-num{
  color:#D2D8BC!important;
}

body.commercial-theme-page .comm-stat-lbl{
  color:rgba(255,255,255,.58);
}

body.commercial-theme-page .cta-band{
  background:linear-gradient(135deg,#155A42,#161616)!important;
}

body.commercial-theme-page .btn-white{
  background:#D2D8BC!important;
  color:#161616!important;
}

body.commercial-theme-page footer{
  background:#161616!important;
}

body.commercial-theme-page .footer-col li a:hover,
body.commercial-theme-page .social-btn:hover{
  color:#D2D8BC!important;
}

.calc-input-row,
.calc-term-inputs{
  display:grid;
  gap:.65rem;
  margin-top:.7rem;
}

.calc-input-row{
  grid-template-columns:minmax(150px,220px);
}

.calc-term-inputs{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.calc-number-field{
  display:flex;
  align-items:center;
  min-height:44px;
  overflow:hidden;
  border:1.5px solid var(--dl-border,var(--border));
  border-radius:10px;
  background:#fff;
  color:var(--dl-ink,var(--text));
  box-shadow:0 8px 18px rgba(23,27,32,.05);
}

.calc-number-field span{
  display:flex;
  align-items:center;
  align-self:stretch;
  padding:0 .85rem;
  background:var(--dl-soft,var(--cream));
  border-right:1px solid var(--dl-border,var(--border));
  color:var(--dl-muted,var(--muted));
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.02em;
  white-space:nowrap;
}

.calc-number-field input[type=number]{
  width:100%!important;
  min-width:0;
  height:44px;
  padding:.65rem .8rem!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:var(--dl-ink,var(--text))!important;
  font:700 .92rem var(--sans);
  outline:none;
}

.calc-number-field input[type=number]:focus{
  outline:2px solid var(--dl-accent-2,rgba(29,158,117,.2));
  outline-offset:-2px;
}

.calc-number-field input[type=number] + span{
  border-right:0;
  border-left:1px solid var(--dl-border,var(--border));
}

@media(max-width:520px){
  .calc-input-row,
  .calc-term-inputs{
    grid-template-columns:1fr;
  }
}

body.design-lab .calculators-workbench .calc-input-row,
body.design-lab .calculators-workbench .calc-term-inputs{
  display:grid!important;
  gap:.7rem!important;
  margin-top:.8rem!important;
}

body.design-lab .calculators-workbench .calc-input-row{
  grid-template-columns:minmax(160px,230px)!important;
}

body.design-lab .calculators-workbench .calc-term-inputs{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

body.design-lab .calculators-workbench .calc-number-field{
  display:flex!important;
  align-items:center!important;
  min-height:46px!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1.5px solid rgba(189,205,174,.95)!important;
  border-radius:12px!important;
  box-shadow:0 12px 24px rgba(23,27,32,.07)!important;
}

body.design-lab .calculators-workbench .calc-number-field span{
  display:flex!important;
  align-items:center!important;
  align-self:stretch!important;
  padding:0 .9rem!important;
  background:linear-gradient(180deg,#f3f8e8,#e6efd8)!important;
  border-right:1px solid rgba(189,205,174,.95)!important;
  color:#126347!important;
  font-size:.76rem!important;
  font-weight:800!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
}

body.design-lab .calculators-workbench .calc-number-field input[type=number]{
  width:100%!important;
  min-width:0!important;
  height:46px!important;
  padding:.65rem .85rem!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:#17231f!important;
  font:800 .94rem var(--sans)!important;
  box-shadow:none!important;
  outline:none!important;
}

body.design-lab .calculators-workbench .calc-number-field input[type=number]:focus{
  outline:2px solid rgba(18,99,71,.18)!important;
  outline-offset:-2px!important;
}

body.design-lab .calculators-workbench .calc-number-field input[type=number] + span{
  border-right:0!important;
  border-left:1px solid rgba(189,205,174,.95)!important;
}

/* Shared alignment guardrail for inner pages */
@media(min-width:901px){
  body.page-commercial .inner-hero-inner,
  body.page-how-we-help .inner-hero-inner,
  body.page-about .inner-hero-inner,
  body.page-insurance section[style*="background:var(--cream)"] .container,
  body.page-about .about-team-inner{
    width:min(calc(100% - (var(--layout-gutter) * 2)),var(--layout-max))!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body.page-how-we-help .inner-hero,
  body.page-about .inner-hero{
    text-align:left!important;
  }

  body.page-how-we-help .breadcrumb,
  body.page-about .breadcrumb{
    margin-left:0!important;
    margin-right:0!important;
  }
}

.calc-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:2rem;
}

.calc-toolbar .calc-tabs{
  margin-bottom:0!important;
}

.calc-print-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  min-height:42px;
  padding:.7rem 1.05rem;
  border:1.5px solid var(--dl-border,var(--border));
  border-radius:10px;
  background:#fff;
  color:var(--dl-ink,var(--text));
  font:800 .84rem var(--sans);
  cursor:pointer;
  box-shadow:0 10px 24px rgba(23,27,32,.06);
  transition:all .18s ease;
  white-space:nowrap;
}

.calc-print-btn:hover{
  border-color:var(--dl-accent,var(--teal));
  color:var(--dl-accent,var(--teal));
  transform:translateY(-1px);
}

body.design-lab .calculators-workbench .calc-print-btn{
  border-color:rgba(189,205,174,.95)!important;
  background:#fff!important;
  color:#126347!important;
}

.calc-pdf-header{
  display:none;
}

.calc-print-panel{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
  margin-top:2rem;
  padding:1.25rem 1.4rem;
  border:1.5px solid rgba(189,205,174,.95);
  border-radius:16px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(244,249,235,.94)),
    #fff;
  box-shadow:0 18px 42px rgba(23,27,32,.08);
}

.calc-print-copy{
  min-width:0;
}

.calc-print-kicker{
  display:inline-block;
  margin-bottom:.35rem;
  color:#126347;
  font:900 .68rem var(--sans);
  letter-spacing:.08em;
  text-transform:uppercase;
}

.calc-print-copy h3{
  margin:0 0 .28rem;
  color:var(--dl-ink,var(--navy));
  font-family:var(--serif);
  font-size:1.28rem;
  font-style:italic;
  line-height:1.15;
}

.calc-print-copy p{
  margin:0;
  color:var(--dl-muted,var(--muted));
  font-size:.9rem;
  line-height:1.55;
}

.calc-print-btn-large{
  min-height:48px;
  padding:.85rem 1.25rem;
  border-color:#126347!important;
  background:#126347!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(18,99,71,.18)!important;
}

.calc-print-btn-large:hover{
  background:#0d4b35!important;
  color:#fff!important;
}

@media(max-width:760px){
  .calc-toolbar{
    align-items:stretch;
    flex-direction:column;
  }
  .calc-print-panel{
    align-items:stretch;
    flex-direction:column;
    padding:1.15rem;
  }
  .calc-print-btn{
    width:100%;
  }
}

@media print{
  @page{
    size:A4;
    margin:12mm;
  }

  *{
    box-shadow:none!important;
    text-shadow:none!important;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }

  html,
  body{
    width:auto!important;
    min-height:0!important;
    background:#fff!important;
    color:#17231f!important;
    font-size:10.5pt!important;
    line-height:1.45!important;
  }

  nav,
  .mob-menu,
  .inner-hero,
  footer,
  .calc-tabs,
  .calc-print-panel,
  .calc-print-btn,
  .off-print-btn,
  .hamburger,
  .scenario-remove,
  .btn,
  .cf input[type=range]{
    display:none!important;
  }

  .calculators-workbench,
  body.design-lab .calculators-workbench{
    display:block!important;
    padding:0!important;
    background:#fff!important;
  }

  .calculators-workbench .container{
    max-width:none!important;
    width:100%!important;
    padding:0!important;
  }

  .calc-pdf-header{
    display:flex!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
    gap:18pt!important;
    margin:0 0 13pt!important;
    padding:0 0 9pt!important;
    border-bottom:2pt solid #126347!important;
  }

  .calc-pdf-header span{
    display:block!important;
    margin:0 0 2pt!important;
    color:#126347!important;
    font:800 8pt var(--sans)!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
  }

  .calc-pdf-header h2{
    margin:0!important;
    color:#17231f!important;
    font:700 20pt/1.05 var(--serif)!important;
  }

  .calc-pdf-header p{
    margin:0!important;
    color:#59645f!important;
    font:700 8.5pt var(--sans)!important;
    white-space:nowrap!important;
  }

  .cpanel{
    display:none!important;
  }

  .cpanel.active{
    display:grid!important;
    grid-template-columns:1.05fr .95fr!important;
    gap:10pt!important;
    align-items:start!important;
  }

  #cp-repay.cpanel.active .scenario-panel{
    grid-column:1 / -1!important;
  }

  .cbox,
  .res-panel,
  .scenario-panel,
  body.design-lab .cbox,
  body.design-lab .res-panel,
  body.design-lab .scenario-panel{
    break-inside:avoid!important;
    page-break-inside:avoid!important;
    margin:0!important;
    padding:12pt!important;
    border:1pt solid #d4dec6!important;
    border-radius:8pt!important;
    background:#fff!important;
    color:#17231f!important;
  }

  .cbox h3,
  .res-panel h3,
  .scenario-panel h3,
  body.design-lab .cbox h3,
  body.design-lab .res-panel h3,
  body.design-lab .scenario-panel h3{
    margin:0 0 8pt!important;
    color:#17231f!important;
    font:700 14pt/1.15 var(--serif)!important;
  }

  .cbox .sub,
  .scenario-head p,
  .cdisclaim,
  body.design-lab .cbox .sub,
  body.design-lab .scenario-head p,
  body.design-lab .cdisclaim{
    margin:0 0 8pt!important;
    color:#59645f!important;
    font-size:8.5pt!important;
  }

  .cf{
    margin:0 0 8pt!important;
    padding:0 0 7pt!important;
    border-bottom:1pt solid #eef2e8!important;
  }

  .cf:last-of-type{
    border-bottom:0!important;
  }

  .cf label,
  body.design-lab .cf label{
    display:block!important;
    margin:0 0 4pt!important;
    color:#59645f!important;
    font:800 7.5pt var(--sans)!important;
    letter-spacing:.05em!important;
    text-transform:uppercase!important;
  }

  .cf .cv,
  body.design-lab .cf .cv{
    color:#126347!important;
    font-weight:900!important;
  }

  .calc-input-row,
  .calc-term-inputs,
  body.design-lab .calculators-workbench .calc-input-row,
  body.design-lab .calculators-workbench .calc-term-inputs{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:6pt!important;
    margin-top:0!important;
  }

  .calc-input-row{
    grid-template-columns:1fr!important;
  }

  .calc-number-field,
  body.design-lab .calculators-workbench .calc-number-field{
    min-height:0!important;
    border:1pt solid #d4dec6!important;
    border-radius:6pt!important;
    background:#f8fbf3!important;
  }

  .calc-number-field span,
  body.design-lab .calculators-workbench .calc-number-field span{
    padding:5pt 6pt!important;
    background:#eef4e5!important;
    color:#126347!important;
    font-size:7.5pt!important;
  }

  .calc-number-field input[type=number],
  body.design-lab .calculators-workbench .calc-number-field input[type=number]{
    height:auto!important;
    padding:5pt 6pt!important;
    background:#fff!important;
    color:#17231f!important;
    font:800 9pt var(--sans)!important;
  }

  .c-ffreq{
    display:flex!important;
    gap:5pt!important;
    flex-wrap:wrap!important;
  }

  .c-fbtn{
    padding:4pt 7pt!important;
    border:1pt solid #d4dec6!important;
    border-radius:999pt!important;
    background:#fff!important;
    color:#59645f!important;
    font:800 7.5pt var(--sans)!important;
  }

  .c-fbtn.active{
    background:#126347!important;
    border-color:#126347!important;
    color:#fff!important;
  }

  .res-panel{
    border-top:4pt solid #126347!important;
  }

  .res-row{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:10pt!important;
    padding:7pt 0!important;
    border-bottom:1pt solid #eef2e8!important;
  }

  .res-row:last-of-type{
    border-bottom:0!important;
  }

  .res-lbl,
  body.design-lab .res-lbl{
    color:#59645f!important;
    font:800 8pt var(--sans)!important;
  }

  .res-val,
  body.design-lab .res-val{
    color:#126347!important;
    font:900 12pt var(--sans)!important;
    text-align:right!important;
  }

  .scenario-panel{
    margin-top:10pt!important;
  }

  .scenario-head{
    display:block!important;
    margin-bottom:8pt!important;
  }

  .scenario-table-wrap{
    overflow:visible!important;
  }

  .scenario-table{
    width:100%!important;
    border-collapse:collapse!important;
    font-size:7.5pt!important;
  }

  .scenario-table th,
  .scenario-table td{
    padding:6pt 5pt!important;
    border:1pt solid #d4dec6!important;
    color:#17231f!important;
    text-align:left!important;
  }

  .scenario-table th{
    background:#eef4e5!important;
    color:#126347!important;
    font-weight:900!important;
  }

  .scenario-empty{
    color:#59645f!important;
    text-align:center!important;
  }
}

@media(max-width:520px){
  body.design-lab .calculators-workbench .calc-input-row,
  body.design-lab .calculators-workbench .calc-term-inputs{
    grid-template-columns:1fr!important;
  }
}

/* Sitewide header polish */
body.design-lab nav{
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid rgba(189,205,174,.72)!important;
  box-shadow:0 10px 28px rgba(18,31,25,.06)!important;
}

body.design-lab .nav-wrap{
  width:min(calc(100% - (var(--layout-gutter) * 2)),var(--layout-max))!important;
  height:82px!important;
  margin:0 auto!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(190px,240px) minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:clamp(1.2rem,2.4vw,3rem)!important;
}

body.design-lab nav .nav-logo{
  min-width:0!important;
  width:clamp(180px,14vw,220px)!important;
  display:flex!important;
  align-items:center!important;
  justify-self:start!important;
  text-decoration:none!important;
}

body.design-lab nav .nav-logo-mark{
  width:clamp(180px,14vw,220px)!important;
  height:66px!important;
  flex:0 0 clamp(180px,14vw,220px)!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}

body.design-lab nav .nav-logo-img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:left center!important;
}

body.design-lab nav .nav-logo-text{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
}

body.design-lab .nav-links{
  justify-content:center!important;
  min-width:0!important;
  gap:clamp(.85rem,1.25vw,1.55rem)!important;
}

body.design-lab .nav-links a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
  color:#2f3d36!important;
  font-size:clamp(.78rem,.68vw,.88rem)!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
}

body.design-lab .nav-links a:hover,
body.design-lab .nav-links a.active{
  color:#126347!important;
}

body.design-lab .nav-right{
  justify-self:end!important;
}

body.design-lab .nav-info{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  padding:.55rem .9rem!important;
  color:#24372f!important;
  background:#fff!important;
  border:1px solid rgba(189,205,174,.95)!important;
  border-radius:6px!important;
  font-size:.78rem!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
}

body.design-lab .hamburger{
  justify-self:end!important;
  width:42px!important;
  height:42px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(189,205,174,.88)!important;
  border-radius:8px!important;
  background:#fff!important;
}

body.design-lab .hamburger span{
  background:#126347!important;
}

body.design-lab .mob-menu{
  top:82px!important;
  background:rgba(255,255,255,.98)!important;
  border-bottom:1px solid rgba(189,205,174,.78)!important;
  box-shadow:0 22px 44px rgba(18,31,25,.08)!important;
}

body.design-lab .mob-menu a{
  color:#24372f!important;
  font-weight:800!important;
  border-bottom:1px solid rgba(189,205,174,.56)!important;
}

body.design-lab .mob-menu a:hover{
  color:#126347!important;
}

@media(max-width:1180px){
  body.design-lab .nav-wrap{
    grid-template-columns:minmax(170px,205px) minmax(0,1fr) auto!important;
    gap:1rem!important;
  }

  body.design-lab .nav-links{
    gap:.8rem!important;
  }

  body.design-lab .nav-links a{
    font-size:.76rem!important;
  }
}

@media(max-width:900px){
  body.design-lab .nav-wrap{
    height:82px!important;
    grid-template-columns:auto auto!important;
  }

  body.design-lab nav .nav-logo,
  body.design-lab nav .nav-logo-mark{
    width:178px!important;
  }

  body.design-lab nav .nav-logo-mark{
    height:66px!important;
    flex-basis:178px!important;
  }
}

@media(max-width:600px){
  body.design-lab .nav-wrap{
    width:calc(100% - 2rem)!important;
    padding:0!important;
  }

  body.design-lab nav .nav-logo,
  body.design-lab nav .nav-logo-mark{
    width:170px!important;
  }

body.design-lab nav .nav-logo-mark{
    height:64px!important;
    flex-basis:170px!important;
  }
}

body.design-lab.theme-showcase .ins-grid > .ins-card[style*="background:#fff"] > h4,
body.design-lab.theme-showcase .ins-grid > .ins-card[style*="background: #fff"] > h4{
  color:var(--navy)!important;
  opacity:1!important;
  visibility:visible!important;
}

body.design-lab.theme-showcase .ins-grid > .ins-card[style*="background:#fff"] > p,
body.design-lab.theme-showcase .ins-grid > .ins-card[style*="background: #fff"] > p{
  color:var(--muted)!important;
  opacity:1!important;
  visibility:visible!important;
}

body.design-lab.theme-showcase .ins-grid > .ins-card[style*="background:#fff"] > .ins-more,
body.design-lab.theme-showcase .ins-grid > .ins-card[style*="background: #fff"] > .ins-more{
  color:var(--teal)!important;
  opacity:1!important;
  visibility:visible!important;
}

body.design-lab nav .nav-logo,
body.design-lab .footer-brand .fl{
  width:auto!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:.7rem!important;
}

body.design-lab nav .nav-logo-mark,
body.design-lab .footer-brand .nav-logo-mark{
  width:42px!important;
  height:42px!important;
  flex:0 0 42px!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}

body.design-lab nav .nav-logo-img,
body.design-lab .footer-brand .nav-logo-img{
  width:42px!important;
  height:42px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center!important;
}

body.design-lab nav .nav-logo-text,
body.design-lab .footer-brand .nav-logo-text{
  position:static!important;
  width:auto!important;
  height:auto!important;
  overflow:visible!important;
  clip:auto!important;
  white-space:nowrap!important;
  font-family:var(--serif)!important;
  font-size:1.34rem!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:-.3px!important;
  color:var(--dl-ink)!important;
}

body.design-lab nav .nav-logo-text em,
body.design-lab .footer-brand .nav-logo-text em{
  color:var(--dl-ink)!important;
  font-style:normal!important;
}

@media(max-width:900px){
  body.design-lab nav .nav-logo{
    width:auto!important;
  }

  body.design-lab nav .nav-logo-mark{
    width:40px!important;
    height:40px!important;
    flex-basis:40px!important;
  }

  body.design-lab nav .nav-logo-img{
    width:40px!important;
    height:40px!important;
  }
}

@media(min-width:901px){
  .inner-steps.mortgage-process-row,
  .inner-steps.mortgage-process-row + .faq-section{
    background:transparent!important;
  }
}
