@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;700&display=swap');
:root{--navy:#15234c;--gold:#bc9d5f;--light:#f6f3ee;--ink:#15234c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--navy);color:white;font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 5.7%;position:relative;z-index:2}nav{display:flex;align-items:center;gap:40px;font-size:14px}.brand{display:flex;align-items:center;gap:0;font-family:Georgia,serif;letter-spacing:6px;font-size:27px}.brand span{color:var(--gold)}.brand i{display:block;width:26px;height:29px;border:1.5px solid var(--gold);margin-right:23px;position:relative}.brand i:after{content:'';position:absolute;width:26px;height:29px;border:1.5px solid var(--gold);left:10px;top:-10px}.outline{border:1px solid var(--gold);background:transparent;color:inherit}nav .outline{padding:13px 27px}#menu{display:none}.hero{min-height:494px;position:relative;display:flex;align-items:center;overflow:hidden;padding:30px 5.7% 68px}.hero-copy{z-index:1;position:relative;width:63%}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;margin:0;letter-spacing:-1.5px}h1{font-size:clamp(42px,4.9vw,76px);line-height:1.06}em{color:var(--gold);font-style:normal}.hero p{font-size:21px;line-height:1.5;margin:29px 0 34px}.actions{display:flex;gap:24px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;font-size:14px;font-weight:500;padding:16px 25px;cursor:pointer;min-height:50px;border-radius:0}.button b{font-size:21px;font-weight:400}.gold{background:var(--gold);border:1px solid var(--gold);color:var(--navy)}.dark{background:var(--navy);border:1px solid var(--navy);color:white}.button:hover{transform:translateY(-2px);filter:brightness(1.08)}.hero-art{position:absolute;width:49%;height:100%;right:0;bottom:0;background:url('architecture.png') center/cover}.hero-art:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--navy),transparent 25%)}.square{position:absolute;border:1.5px solid var(--gold);width:100px;height:100px}.s1{left:15%;top:17%}.s2{left:0;bottom:10%;width:118px;height:118px}.s3{left:5%;top:47%;width:38px;height:38px;background:var(--gold);border:0}.light{background:var(--light);color:var(--ink)}section{scroll-margin-top:0}.label{text-transform:uppercase;letter-spacing:2px;font-size:12px;color:#bc9d5f;margin-bottom:18px}h2{font-size:clamp(32px,3.25vw,49px);line-height:1.18}.services{padding:58px 5.7%;display:grid;grid-template-columns:42% 58%;gap:0}.service-row{border-bottom:1px solid #daceba}.service-row:last-child{border:0}.service-row summary{list-style:none;display:grid;grid-template-columns:40px 1.2fr 1.25fr 18px;align-items:center;gap:16px;padding:21px 0;cursor:pointer}.service-row summary::-webkit-details-marker{display:none}.number{color:#bc9d5f;font-size:17px}.service-name{font-family:Georgia,serif;font-size:19px}.service-desc{font-size:12px;line-height:1.5;color:#626267}.arrow{color:#bc9d5f;font-size:21px}.detail{font-size:14px;line-height:1.7;margin:0 24px 24px 56px;color:#535660}.service-row[open] .arrow{transform:rotate(90deg)}.approach{padding:61px 5.7%;display:grid;grid-template-columns:35% 65%;gap:0}.approach .label{color:#bc9d5f}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:29px}.steps span{border:1px solid var(--gold);display:inline-flex;width:52px;height:49px;align-items:center;justify-content:center;color:#bc9d5f;font-family:Georgia,serif;font-size:22px;margin-bottom:20px}.steps h3{font-size:25px;letter-spacing:-.5px}.steps p{font-size:14px;line-height:1.6;margin:10px 0 0}.about{display:grid;grid-template-columns:57% 43%;padding:50px 5.7%;gap:0;align-items:center}.about p{max-width:550px;font-size:16px;line-height:1.6;color:#555963;margin:20px 0 26px}.about-art{height:300px;margin-left:60px;position:relative}.about-art img{height:100%;width:100%;object-fit:cover;object-position:70% 60%}.about-art .square{left:-55px;top:16px;width:110px;height:120px}.contact{background:var(--gold);color:var(--ink);padding:39px 5.7%;display:flex;justify-content:space-between;align-items:center;gap:30px}.contact h2{font-size:38px}footer{padding:38px 5.7% 23px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-top .brand{font-size:23px}.footer-top nav{gap:28px;font-size:12px}.footer-top>a:last-child{font-size:12px;border-left:1px solid var(--gold);padding-left:30px}.footer-bottom{display:flex;justify-content:space-between;font-size:11px;color:#b7bec9;margin-top:37px}dialog{border:1px solid #bc9d5f;background:var(--light);color:var(--ink);max-width:540px;width:calc(100% - 32px);padding:40px;max-height:90vh}dialog::backdrop{background:#08101bd9;backdrop-filter:blur(5px)}dialog h2{font-size:37px}dialog p{font-size:14px;line-height:1.6}.close{float:right;border:0;background:none;font-size:30px;cursor:pointer}form{display:grid;gap:15px}label{display:grid;gap:7px;font-size:12px}input,select,textarea{width:100%;padding:11px;border:1px solid #bcb4a7;background:white;color:var(--ink);border-radius:0}small{color:#646464;font-size:11px;line-height:1.5}
@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero{min-height:630px}}@media(max-width:1000px){nav{gap:22px}.brand{font-size:22px}.hero-copy{width:70%}.hero p{font-size:18px}.hero-art{width:44%}.services{grid-template-columns:38% 62%}.service-row summary{grid-template-columns:28px 1fr 18px;gap:12px}.service-desc{display:none}.steps{gap:18px}.approach{grid-template-columns:32% 68%}.footer-top nav{display:none}.contact h2{font-size:31px}}
@media(max-width:650px){header{height:90px;padding:0 7%}.brand{font-size:21px;letter-spacing:4px}#menu{display:block;border:1px solid #bc9d5f;background:transparent;color:white;padding:8px 12px;font-size:12px}header nav{display:none;position:absolute;left:0;top:90px;width:100%;background:var(--navy);padding:25px 7%;flex-direction:column;align-items:flex-start;box-shadow:0 14px 20px #0004}header nav.open{display:flex}.hero{padding:32px 7% 0;display:block}.hero-copy{width:100%}h1{font-size:43px}.hero p{font-size:18px;margin:23px 0 28px}.actions{gap:13px;flex-direction:column;align-items:stretch;max-width:360px}.button{font-size:13px;padding:14px 20px}.hero-art{position:relative;width:100%;height:245px;margin-top:34px;background-position:center 42%}.hero-art:before{background:linear-gradient(180deg,var(--navy),transparent 22%)}.s1{width:75px;height:75px;left:17%;top:12%}.s2{width:60px;height:60px;bottom:8%}.s3{width:23px;height:23px;top:48%}.services,.approach,.about{display:block;padding:43px 7%}h2{font-size:36px}.services h2 br{display:none}.service-list{margin-top:24px}.service-name{font-size:19px}.service-row summary{padding:22px 0}.steps{margin-top:32px;grid-template-columns:1fr 1fr;gap:27px}.steps p{font-size:13px}.steps h3{font-size:23px}.about-art{margin:34px 0 0 25px;height:230px}.about-art .square{left:-25px;width:75px;height:85px}.about p{font-size:15px}.contact{display:block;padding:35px 7%}.contact h2{font-size:34px;margin-bottom:24px}.footer-top{align-items:flex-start;flex-direction:column;gap:28px}.footer-top>a:last-child{padding-left:0;border:0}.footer-bottom{gap:20px;line-height:1.6}footer{padding:35px 7% 25px}dialog{padding:27px}dialog h2{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{min-height:100vh;display:flex;flex-direction:column}main{flex:1}header nav a[aria-current=page]{color:var(--gold);text-decoration:underline;text-underline-offset:9px;text-decoration-thickness:1px}.page-content>section{min-height:calc(100vh - 245px);align-content:center;padding-top:85px;padding-bottom:85px}.page-content h1{font-size:clamp(36px,3.5vw,54px);line-height:1.16}.page-services .services{grid-template-columns:40% 60%;gap:0}.page-services .service-desc{font-size:14px}.page-approach .approach{display:block}.page-approach .steps{margin-top:55px;gap:50px;max-width:1100px}.page-approach .steps p{font-size:17px;max-width:220px}.page-approach .steps h3{font-size:32px}.page-about .about-art{height:390px}.contact-page{min-height:calc(100vh - 245px);padding:65px 7%;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.contact-page h1{font-size:clamp(38px,4vw,60px);line-height:1.15}.contact-page p{font-size:17px;line-height:1.7;color:#555963}.contact-form h2{font-size:32px}.contact-form form{margin-top:25px}.route-index .hero{min-height:calc(100vh - 245px)}.route-index .hero-art{width:48%}.brand{gap:0}.contact-form small{display:block}
@media(max-width:650px){.page-content>section{padding-top:45px;padding-bottom:45px}.page-content h1{font-size:38px}.page-approach .steps{gap:30px;margin-top:35px}.page-approach .steps p{font-size:14px}.page-approach .steps h3{font-size:26px}.page-about .about-art{height:250px}.contact-page{display:block;padding:40px 7%}.contact-form{margin-top:40px}.route-index .hero-art{width:100%}.route-index .hero{min-height:0}.page-services .service-desc{display:none}}

/* Plain editorial layouts */
.route-index .hero{justify-content:center;text-align:center;padding:80px 7%;min-height:calc(100vh - 245px)}
.route-index .hero-copy{width:100%;max-width:1050px}
.route-index h1{font-size:clamp(46px,6.2vw,92px);line-height:1.08}
.route-index .hero p{font-size:22px;margin:32px 0 38px}
.route-index .actions{justify-content:center}
.page-about .about{display:block;min-height:calc(100vh - 245px);padding:85px 10%;}
.page-about .about>div{max-width:1000px;margin:0 auto}
.page-about h1{font-size:clamp(40px,5.1vw,74px);line-height:1.15}
.page-about p{max-width:740px;font-size:20px;line-height:1.75;margin:30px 0 34px}
@media(max-width:650px){.route-index .hero{padding:65px 7%;min-height:calc(100svh - 240px)}.route-index h1{font-size:43px}.route-index .hero p{font-size:18px}.route-index .actions{margin:0 auto}.page-about .about{padding:55px 7%}.page-about h1{font-size:39px}.page-about p{font-size:17px}}
.expanded-footer{background:#15234c;padding:65px 7% 30px}.footer-columns{display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:8%;padding-bottom:45px}.footer-intro .brand{font-size:27px}.footer-intro>p{max-width:480px;font-size:16px;line-height:1.9;color:#bac3d6;margin:26px 0}.contact-details{margin:28px 0 0}.contact-details>div{display:flex;gap:15px;min-height:36px;align-items:baseline}.contact-details dt{color:var(--gold);font-size:14px}.contact-details dd{margin:0;min-width:150px;min-height:20px}.footer-links{display:flex;flex-direction:column;gap:19px;align-items:flex-start}.footer-links h2{font-family:'DM Sans',Arial,sans-serif;font-size:14px;letter-spacing:3px;color:var(--gold);font-weight:600;margin:0 0 8px}.footer-links a{color:#bac3d6;font-size:15px;line-height:1.5}.footer-links a:hover,.expanded-footer .footer-bottom a:hover{color:white}.expanded-footer .footer-bottom{border-top:1px solid #ffffff24;padding-top:26px;margin-top:0;font-size:13px;color:#a7b3cc}.expanded-footer .footer-bottom>div{display:flex;gap:30px}.pending-page{min-height:52vh;padding:80px 10%}.pending-page h1{font-size:50px}
@media(max-width:750px){.expanded-footer{padding:45px 7% 25px}.footer-columns{grid-template-columns:1fr 1fr;gap:35px;padding-bottom:35px}.footer-intro{grid-column:1/-1}.footer-links{gap:16px}.footer-links a{font-size:13px}.footer-links h2{font-size:12px;letter-spacing:2px}.expanded-footer .footer-bottom{flex-direction:column;gap:20px;font-size:11px}.footer-intro>p{font-size:15px}.pending-page{padding:55px 7%}}

.route-index .hero{isolation:isolate;min-height:690px;border-bottom:1px solid #bc9d5f20}.flow-art{position:absolute;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(ellipse at 16% 72%,#2e547538,transparent 45%),radial-gradient(ellipse at 87% 22%,#6a573020,transparent 40%)}.flow-art svg{position:absolute;width:115%;height:115%;left:-7%;top:-7%;opacity:.7;animation:flow-drift 18s ease-in-out infinite alternate}.flow-art:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,#15234cd9 0%,#15234c70 40%,transparent 75%)}.flow-orb{position:absolute;display:block;width:6px;height:6px;background:#bc9d5f;border-radius:50%;box-shadow:0 0 22px #bc9d5f99;opacity:.65;animation:orb-float 10s ease-in-out infinite alternate}.orb-one{left:14%;top:45%}.orb-two{right:15%;top:26%;width:4px;height:4px;animation-delay:-5s}.route-index .hero-copy{padding:20px 0}.route-index h1 em{position:relative}.route-index .actions .gold{box-shadow:0 5px 30px #bc9d5f15}.route-index .button{transition:transform .2s,box-shadow .2s}.route-index .button:hover{box-shadow:0 8px 30px #bc9d5f30}.route-index .hero p{color:#d7dce5}@keyframes flow-drift{from{transform:translate(-1%,-1%) rotate(-2deg)}to{transform:translate(1%,2%) rotate(2deg)}}@keyframes orb-float{to{transform:translate(25px,-35px);opacity:.3}}@media(max-width:650px){.route-index .hero{min-height:650px}.flow-art svg{width:200%;left:-50%;opacity:.6}.orb-one{left:6%;top:20%}.orb-two{right:5%;top:62%}}@media(prefers-reduced-motion:reduce){.flow-art svg,.flow-orb{animation:none}}

.contact-details dd{color:#bac3d6;font-size:14px;line-height:1.8}.contact-details>div{margin-bottom:9px}.contact-details dt{min-width:47px}.contact-details dd a:hover{color:white}
.services-intro{padding:65px 7% 50px}.services-intro h1{font-size:clamp(40px,4.8vw,70px);line-height:1.15}.service-features{padding:0 7% 50px}.service-feature{display:grid;grid-template-columns:40% 60%;padding:48px 0;border-top:1px solid #daceba;scroll-margin-top:25px}.service-title{display:flex;gap:25px;padding-right:45px;align-items:baseline}.service-title .number{font-size:18px;flex-shrink:0}.service-title h2{font-size:32px;line-height:1.2;letter-spacing:-.7px}.service-body p{font-size:17px;line-height:1.8;color:#555963;margin:0 0 25px;max-width:740px}.service-body ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:17px 25px}.service-body li{font-size:14px;line-height:1.6;padding-left:20px;position:relative}.service-body li:before{content:'✓';position:absolute;left:0;color:#bc9d5f}.services-cta{padding:80px 7%;text-align:center;border-top:1px solid #daceba}.services-cta h2{font-size:clamp(32px,3.7vw,53px)}.services-cta p{color:#555963;font-size:18px;line-height:1.8;margin:24px auto 32px;max-width:850px}.services-cta .actions{justify-content:center}@media(max-width:750px){.services-intro{padding:45px 7% 35px}.services-intro h1{font-size:39px}.service-feature{display:block;padding:32px 0}.service-title{padding:0;gap:18px;margin-bottom:20px}.service-title h2{font-size:29px}.service-body p{font-size:15px}.service-body ul{grid-template-columns:1fr;gap:12px}.service-body li{font-size:14px}.services-cta{padding:50px 7%}.services-cta p{font-size:16px}.services-cta .actions{align-items:stretch;max-width:360px;margin:auto}}

.contact-page{gap:8%;padding:65px 7%;grid-template-columns:1fr 1.15fr}.contact-intro>p{max-width:470px}.contact-direct{margin-top:38px}.contact-direct h2{font-family:'DM Sans',Arial,sans-serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;margin:25px 0 10px;color:#bc9d5f}.contact-direct a{font-size:18px}.contact-direct p{font-size:15px;line-height:1.8;margin-top:0}.contact-card{padding:38px;background:#fff;border:1px solid #dbdce1;box-shadow:0 5px 15px #15234c09}.contact-card>h2{font-size:32px;margin-bottom:28px}.contact-card form{gap:12px}.contact-card label{font-size:12px;font-weight:600;letter-spacing:2px;margin-top:8px}.contact-card input,.contact-card select,.contact-card textarea{padding:16px;background:#faf9f7;border-color:#d4d8e0;font-size:15px}.contact-card textarea{resize:vertical;min-height:160px}.contact-card button{justify-content:center;margin-top:12px}.contact-card small{margin:12px 0;line-height:1.8}.prefer-email{border-top:1px solid #d4d8e0;margin-top:28px;padding-top:28px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:13px}.prefer-email h3{font-family:'DM Sans',Arial,sans-serif;font-size:12px;letter-spacing:2px;font-weight:600;margin-bottom:12px}.prefer-email a:hover,.contact-direct a:hover{text-decoration:underline}#contact-status{font-size:13px;background:#f6f3ee;padding:14px;line-height:1.7}@media(max-width:650px){.contact-page{display:block;padding:40px 7%}.contact-card{padding:25px;margin-top:35px}.contact-card>h2{font-size:28px}.prefer-email{flex-direction:column;align-items:flex-start}.contact-direct a{font-size:17px}}

/* Reference-style service cards */
.route-services .services-intro{background:#fff;padding-bottom:45px}.route-services .service-features{background:#fff;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;padding:0 7% 75px}.route-services .service-feature{display:flex;flex-direction:column;margin:0;padding:32px 27px;background:#faf9f7;border:1px solid #d4d8e0;box-shadow:0 3px 7px #15234c10;scroll-margin-top:25px;transition:border-color .2s,box-shadow .2s,transform .2s}.route-services .service-feature:first-child{border:2px solid var(--gold);padding:31px 26px}.route-services .service-feature:hover{border-color:var(--gold);box-shadow:0 8px 22px #15234c12;transform:translateY(-3px)}.route-services .service-title{display:block;padding:0;margin:0;position:relative}.service-icon{width:62px;height:62px;background:#0e162b;color:var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:27px}.service-icon svg{width:35px;height:35px}.route-services .service-title .number{position:absolute;right:0;top:20px;font-size:13px;color:#bc9d5f}.route-services .service-title h2{font-family:'DM Sans',Arial,sans-serif;font-size:21px;font-weight:600;line-height:1.35;letter-spacing:-.3px;margin-bottom:20px}.route-services .service-body{display:flex;flex-direction:column;flex:1}.route-services .service-body p{font-size:14px;line-height:1.85;margin:0 0 24px}.route-services .service-body ul{display:grid;grid-template-columns:1fr;gap:11px;margin-top:auto;padding-top:20px;border-top:1px solid #e1ddd4}.route-services .service-body li{font-size:13px;line-height:1.65}.route-services .services-cta{background:#faf9f7}@media(max-width:1000px){.route-services .service-features{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.route-services .service-features{grid-template-columns:1fr;gap:22px;padding-bottom:45px}.route-services .service-feature{padding:28px}.route-services .service-feature:first-child{padding:27px}.route-services .service-title h2{font-size:22px}.route-services .service-body p{font-size:15px}.route-services .service-body li{font-size:14px}}
.home-services,.home-family,.home-purpose,.working-together{padding:75px 7%}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end;margin-bottom:45px}.section-heading>p{font-size:17px;line-height:1.85;color:#626873;margin:0}.home-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.home-service{padding:28px;background:#fff;border:1px solid #dedbd4;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}.home-service:hover{border-color:var(--gold);transform:translateY(-3px)}.home-service h3{font-family:'DM Sans',Arial,sans-serif;font-size:20px;line-height:1.4;letter-spacing:-.4px;margin:18px 0 13px;font-weight:600}.home-service p{font-size:14px;line-height:1.85;color:#626873;margin:0 0 25px}.service-link{font-size:12px;color:#bc9d5f;margin-top:auto}.home-purpose{display:grid;grid-template-columns:1fr 1fr;gap:10%}.home-purpose p{font-size:17px;line-height:1.9;color:#c4cbd6;margin:0 0 22px}.home-purpose .label,.working-together .label{color:var(--gold)}.home-family{text-align:center}.home-family p{font-size:18px;line-height:1.9;max-width:800px;margin:28px auto;color:#626873}.text-link{font-size:14px;border-bottom:1px solid var(--gold);padding-bottom:7px}.content-cta{padding:65px 7%;display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#1b2a56;border-top:1px solid #bc9d5f25}.content-cta p{font-size:17px;line-height:1.8;color:#c4cbd6;margin:0 0 25px}.approach-intro{padding:65px 7%}.approach-intro h1{font-size:clamp(44px,5.4vw,76px);line-height:1.12}.approach-intro>p{max-width:720px;font-size:19px;line-height:1.85;color:#c4cbd6;margin:28px 0 40px}.process-rail{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #bc9d5f50;padding-top:25px;gap:25px}.process-rail a{display:flex;align-items:center;gap:18px;font-family:Georgia,serif;font-size:23px}.process-rail span{font-family:'DM Sans',Arial,sans-serif;font-size:13px;color:var(--gold)}.process-rail b{color:var(--gold);font-weight:400;margin-left:auto}.process-details{padding:15px 7%}.process-phase{display:grid;grid-template-columns:35% 65%;gap:0;padding:50px 0;border-bottom:1px solid #daceba;scroll-margin-top:25px}.process-phase:last-child{border:0}.phase-title{display:flex;gap:25px;align-items:baseline}.phase-title span{color:#bc9d5f;font-size:18px}.phase-title h2{font-size:42px}.process-phase h3{font-size:29px;letter-spacing:-.5px}.process-phase p{color:#626873;line-height:1.9;font-size:16px;max-width:730px;margin:20px 0}.process-phase ul{padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:12px 25px;font-size:13px;color:#6e5937}.process-phase li:before{content:'✓ ';color:#bc9d5f}.working-together .section-heading>p{color:#c4cbd6}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.principles article{border-top:1px solid #bc9d5f55;padding-top:25px}.principles h3{font-size:26px;letter-spacing:-.4px}.principles p{font-size:15px;line-height:1.85;color:#c4cbd6}.route-index .hero{min-height:640px}@media(max-width:800px){.home-service-grid{grid-template-columns:repeat(2,1fr)}.process-rail{gap:18px}.process-rail a{font-size:19px;gap:10px}}@media(max-width:650px){.home-services,.home-family,.home-purpose,.working-together{padding:45px 7%}.section-heading,.home-purpose,.content-cta{display:block}.section-heading>p{margin-top:24px;font-size:15px}.home-service-grid{grid-template-columns:1fr;gap:20px}.home-purpose>div+div{margin-top:27px}.home-purpose p,.home-family p{font-size:16px}.content-cta{padding:45px 7%}.content-cta>div{margin-top:25px}.content-cta p{font-size:15px}.approach-intro{padding:45px 7%}.approach-intro h1{font-size:44px}.approach-intro>p{font-size:16px}.process-rail{grid-template-columns:1fr 1fr;gap:25px}.process-phase{display:block;padding:35px 0}.phase-title{margin-bottom:22px}.phase-title h2{font-size:34px}.process-phase h3{font-size:25px}.process-phase p{font-size:15px}.process-phase ul{display:grid;gap:12px}.principles{grid-template-columns:1fr;gap:25px}.route-index .hero{min-height:610px}}


:root{--navy:#15234c;--ink:#15234c;--gold:#bc9d5f;--blue-deep:#0e162b;--blue-mid:#15234c;--blue-light:#27376a}
body,header{background:var(--blue-deep)}
.route-index .hero,.approach-intro{background:linear-gradient(125deg,#0e162b 0%,#15234c 48%,#27376a 100%)}
.flow-art{background:none}.flow-art:after{background:radial-gradient(ellipse at center,#15234c70 0%,#15234c20 45%,transparent 75%)}
.home-purpose,.working-together{background:#15234c}.content-cta{background:#1b2a56}.expanded-footer{background:#15234c}
.service-icon,.dark{background:#0e162b}.gold{background:#bc9d5f;border-color:#bc9d5f;color:#15234c}.label,.number{color:#bc9d5f}
.brand span,em,.footer-links h2,.contact-details dt,.contact-direct h2{color:#bc9d5f}

.mission-vision{padding:15px 10% 70px;display:grid;grid-template-columns:1fr 1fr;gap:25px}.mission-vision article{background:#fff;border:1px solid #d4d8e0;padding:34px;position:relative}.mission-vision article:before{content:'';position:absolute;top:-1px;left:-1px;right:-1px;height:4px;background:linear-gradient(90deg,#bc9d5f,#15234c)}.mission-vision h2{font-size:31px;letter-spacing:-.6px;margin-bottom:20px}.mission-vision p{font-size:15px;line-height:2;color:#596278;margin:0}.core-values{background:#fff;color:#15234c;text-align:center;padding:70px 7% 80px}.core-values>h2{font-size:44px;margin-bottom:40px}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.values-grid article{background:#faf9f7;border:1px solid #d4d8e0;padding:30px 23px}.value-symbol{background:#f3efe4;color:#bc9d5f;width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:23px;margin:0 auto 24px}.values-grid h3{font-family:'DM Sans',Arial,sans-serif;font-size:17px;font-weight:600;letter-spacing:-.3px;line-height:1.5}.values-grid p{color:#596278;font-size:14px;line-height:1.95;margin:17px 0 0}@media(max-width:900px){.values-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.mission-vision{padding:0 7% 45px;grid-template-columns:1fr}.mission-vision article{padding:28px}.mission-vision h2{font-size:29px}.mission-vision p{font-size:15px}.core-values{padding:45px 7%}.core-values>h2{font-size:35px}.values-grid{grid-template-columns:1fr;gap:20px}.values-grid article{padding:30px}.values-grid p{font-size:15px}}

/* Uniform blue and stronger typography. */
:root{--navy:#27376a;--blue-deep:#27376a;--blue-mid:#27376a;--blue-light:#27376a}
body,header,.route-index .hero,.approach-intro,.home-purpose,.working-together,.content-cta,.expanded-footer{background:#27376a}
.flow-art,.flow-art:after{background:none}
body{font-weight:500}h1,h2,h3{font-weight:700}header nav{font-size:16px;font-weight:600}
.route-index h1{font-size:clamp(50px,6.7vw,100px);font-weight:700}.route-index .hero p{font-size:24px;font-weight:500}
.button{font-size:16px;font-weight:600}.section-heading>p,.home-purpose p,.home-family p,.content-cta p,.approach-intro>p{font-size:19px;font-weight:500}
.home-service p,.route-services .service-body p{font-size:16px}.home-service h3,.route-services .service-title h2{font-size:23px;font-weight:700}
.process-phase p,.mission-vision p,.values-grid p{font-size:17px}.footer-links a,.footer-intro>p{font-size:16px}.contact-details dd{font-size:15px}
@media(max-width:650px){.route-index h1{font-size:46px}.route-index .hero p{font-size:20px}.section-heading>p,.home-purpose p,.home-family p,.content-cta p,.approach-intro>p{font-size:17px}.home-service p,.route-services .service-body p,.process-phase p,.mission-vision p,.values-grid p{font-size:16px}.button{font-size:15px}.footer-links a{font-size:14px}}
/* Contact page in the shared solid blue palette. */
.route-contact .contact-page{background:#27376a;color:#fff}.route-contact .contact-intro>p,.route-contact .contact-direct p{color:#e0e5f1}.route-contact .contact-direct a{color:#fff}.route-contact .contact-card{color:#15234c}.route-contact .contact-card .dark{background:#27376a;border-color:#27376a}.route-contact .contact-direct h2,.route-contact .contact-intro>.label{color:#bc9d5f}
.brand{display:inline-flex;align-items:center;letter-spacing:normal;flex-shrink:0}.brand img{display:block;width:245px;height:auto;max-width:100%;object-fit:contain}.footer-intro .brand img{width:255px}@media(max-width:1000px){.brand img{width:210px}}@media(max-width:650px){.brand img{width:205px}.footer-intro .brand img{width:240px}}

.route-index header{background:#131f42}
.route-index .hero{background:linear-gradient(118deg,#0e162b 0%,#132247 32%,#192d5b 66%,#27376a 100%);box-shadow:inset 0 1px 0 #ffffff04}
.route-index .flow-art{background:radial-gradient(ellipse at 84% 70%,#38518824 0%,transparent 55%),radial-gradient(ellipse at 24% 90%,#152b5f40 0%,transparent 60%)}
.route-index .flow-art:after{background:radial-gradient(ellipse at 50% 45%,#0e162b15 0%,transparent 70%)}
.route-index .flow-art svg{opacity:.55}
.route-index .hero .gold{box-shadow:0 7px 24px #070f282b,inset 0 1px 0 #fff2}
/* Full-width pages at every desktop size. */
body{width:100%;max-width:none;margin:0}
