:root { --navy:#14263b; --navy-2:#1d344d; --silver:#a5a9ad; --ink:#1d2935; --muted:#576473; --mist:#f2f5f6; --line:#d9e0e4; --serif:Georgia,'Times New Roman',serif; --sans:Arial,Helvetica,sans-serif; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; color:var(--ink); font:16px/1.65 var(--sans); } h1,h2,h3,p { margin-top:0; } h1,h2,h3 { font-family:var(--serif); line-height:1.1; } h1 { font-size:clamp(2.7rem,6vw,5rem); letter-spacing:-.04em; } h2 { font-size:clamp(2rem,4vw,3.25rem); letter-spacing:-.03em; } h3 { font-size:1.4rem; }
.wrap { width:min(1140px,calc(100% - 44px)); margin:auto; }.skip-link { position:absolute; left:-999px; }.skip-link:focus { left:1rem; top:1rem; z-index:5; background:#fff; color:#000; padding:.6rem; }
.site-header { position:sticky; top:0; z-index:3; background:var(--navy); border-bottom:1px solid rgba(255,255,255,.12); }.nav-wrap { height:86px; display:flex; justify-content:space-between; align-items:center; }.brand { display:flex; align-items:center; gap:.55rem; color:#fff; text-decoration:none; font:1.2rem var(--serif); line-height:1; }.brand img { width:38px; height:38px; border-radius:2px; }.brand i { color:var(--silver); font-style:normal; }.site-header nav { display:flex; align-items:center; gap:1.75rem; }.site-header nav a,footer a { color:#fff; text-decoration:none; }.site-header nav a:not(.nav-cta):hover,footer a:hover { text-decoration:underline; }.nav-cta { border:1px solid rgba(255,255,255,.65); padding:.55rem .9rem; }.menu-button { display:none; background:none; color:#fff; border:1px solid rgba(255,255,255,.5); padding:.45rem .65rem; font:inherit; }
.hero { min-height:625px; display:flex; align-items:center; color:#fff; background:linear-gradient(115deg,rgba(15,32,51,.83),rgba(25,48,72,.58)),url('Pics/Skyline.jpg') center/cover; }.hero-grid,.split,.about-grid,.contact-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:5rem; align-items:center; }.eyebrow { margin-bottom:.9rem; color:#8795a3; font-size:.75rem; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }.hero .eyebrow { color:#c2c9cf; }.hero-copy { max-width:650px; color:#e0e6e9; font-size:1.22rem; }.actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2rem; }.button { display:inline-block; cursor:pointer; border:1px solid transparent; padding:.78rem 1.15rem; font:700 .95rem var(--sans); text-decoration:none; transition:.2s; }.button-primary { background:#fff; color:var(--navy); }.button-primary:hover { background:#dfe4e7; }.button-quiet { border-color:#dce3e7; color:#fff; }.button-quiet:hover { background:rgba(255,255,255,.1); }.trust-card { padding:2.1rem; color:var(--navy); background:rgba(255,255,255,.95); box-shadow:0 18px 50px rgba(0,0,0,.2); }.trust-card p:last-of-type { font:1.55rem/1.3 var(--serif); }.card-label { color:#6b7884; text-transform:uppercase; font-size:.72rem; letter-spacing:.12em; font-weight:bold; }.trust-points { display:flex; flex-wrap:wrap; gap:.6rem; }.trust-points span { padding-top:.6rem; border-top:1px solid #cbd3d8; font-size:.82rem; }
.confirmation-hero { min-height:calc(100vh - 86px); }.confirmation-content { max-width:780px; }
.page-hero { min-height:440px; }.page-hero-content { max-width:760px; padding:5rem 0; }
.section { padding:6.5rem 0; }.section-intro { max-width:680px; margin-bottom:3.25rem; }.section-intro>p:not(.eyebrow) { color:var(--muted); font-size:1.1rem; }.service-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; border:1px solid var(--line); background:var(--line); }.service-grid article { padding:2rem 1.6rem; background:#fff; }.service-grid p { margin-bottom:0; color:var(--muted); }.number { color:#8996a1; font-size:.8rem; font-weight:bold; }.section-dark { color:#fff; background:var(--navy); }.section-dark p:not(.eyebrow) { color:#d9e0e5; font-size:1.2rem; }.text-link { color:#fff; text-underline-offset:5px; font-weight:bold; }.about-grid { align-items:start; }.about-grid>div:last-child { color:var(--muted); font-size:1.1rem; }
.section-link { color:var(--navy); font-weight:bold; text-underline-offset:5px; }.service-list { display:grid; gap:1px; border:1px solid var(--line); background:var(--line); }.service-detail { display:grid; grid-template-columns:120px minmax(0,1fr) minmax(230px,.7fr); gap:2rem; padding:2.4rem; background:#fff; align-items:start; }.service-detail .number { padding-top:.35rem; }.service-detail h2 { margin-bottom:.75rem; font-size:clamp(1.7rem,3vw,2.25rem); }.service-detail p { margin-bottom:0; color:var(--muted); }.service-detail aside { padding-left:2rem; border-left:1px solid var(--line); color:var(--muted); font-size:.94rem; }.service-detail aside strong { display:block; margin-bottom:.35rem; color:var(--ink); }
.service-grid h3 a,.service-directory h2 a { color:inherit; text-decoration:none; }.service-grid h3 a:hover,.service-directory h2 a:hover { text-decoration:underline; text-underline-offset:4px; }.service-directory { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; border:1px solid var(--line); background:var(--line); }.service-directory article { padding:2rem 1.6rem; background:#fff; }.service-directory p { color:var(--muted); }.service-directory a { color:var(--navy); font-weight:bold; text-underline-offset:4px; }.service-placeholder { max-width:760px; }.service-placeholder-card { padding:2.5rem; border-left:3px solid var(--navy); background:var(--mist); }.service-placeholder-card p { margin-bottom:1.5rem; color:var(--muted); }
.about-profile-section { padding-top:0; }.director-profile { display:grid; grid-template-columns:minmax(240px,.65fr) 1.35fr; gap:5rem; align-items:center; padding:4rem; color:#fff; background:var(--navy); }.director-photo { width:100%; min-height:340px; object-fit:cover; object-position:center top; border:1px solid rgba(255,255,255,.35); background:#fff; }.director-bio .eyebrow { color:#b9c5cd; }.director-bio>p:not(.eyebrow) { color:#d9e0e5; font-size:1.08rem; }.director-bio .director-role { margin-top:-.5rem; color:#b9c5cd; font-size:.85rem; font-weight:bold; letter-spacing:.12em; text-transform:uppercase; }.article-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; border:1px solid var(--line); background:var(--line); }.article-grid article { min-height:250px; padding:2rem 1.6rem; background:#fff; }.article-grid p:last-child { color:var(--muted); }.article-image { width:calc(100% + 3.2rem); height:180px; margin:-2rem -1.6rem 1.5rem; object-fit:cover; }.article-link { color:var(--navy); font-weight:bold; text-underline-offset:4px; }.article-label { color:#6b7884; font-size:.72rem; font-weight:bold; letter-spacing:.12em; text-transform:uppercase; }.article-page { max-width:780px; }.article-page h2 { margin-top:2.5rem; font-size:clamp(1.7rem,3vw,2.3rem); }.article-page p,.article-page li { color:var(--muted); font-size:1.08rem; }.article-page li { margin-bottom:.65rem; }.article-page ul { padding-left:1.25rem; }.article-feature-image { display:block; width:100%; max-height:470px; margin:0 0 3rem; object-fit:cover; }.article-meta { color:#6b7884!important; font-size:.85rem!important; font-weight:bold; letter-spacing:.1em; text-transform:uppercase; }
.article-disclaimer { padding:1.25rem 1.5rem; border-left:3px solid var(--navy); background:var(--mist); font-size:.95rem!important; }
.contact-section { background:var(--mist); }.contact-grid { align-items:start; }.contact-grid>div>p:not(.eyebrow) { color:var(--muted); font-size:1.1rem; }.small { font-size:.85rem!important; } form { padding:2rem; background:#fff; box-shadow:0 10px 30px rgba(20,38,59,.08); } label { display:block; margin:0 0 .3rem; font-size:.88rem; font-weight:bold; } input,textarea { display:block; width:100%; margin-bottom:1.05rem; border:1px solid #bac5cc; padding:.7rem; color:var(--ink); background:#fff; font:inherit; } input:focus,textarea:focus { outline:3px solid #b6c7d3; outline-offset:1px; } form .button { color:#fff; background:var(--navy); } form .button:hover { background:var(--navy-2); }
footer { padding:2.6rem 0; color:#d6dde1; background:#0e1c2b; font-size:.9rem; }.footer-wrap { display:grid; grid-template-columns:1fr 1fr auto; gap:1rem; align-items:center; }.footer-brand { color:#fff!important; font:1.4rem var(--serif); }.footer-wrap p { margin:0; }.footer-wrap div { display:flex; gap:1.25rem; }.company-details { grid-column:1/-1; display:grid!important; grid-template-columns:1fr 1fr 2fr; gap:1.2rem!important; padding-top:1.25rem; border-top:1px solid rgba(255,255,255,.13); color:#bfcad1; font-size:.8rem; }.company-details a { text-underline-offset:3px; }.copyright { grid-column:1/-1; padding-top:1rem; border-top:1px solid rgba(255,255,255,.13); font-size:.8rem; }
@media(max-width:780px) { .nav-wrap { height:74px; }.brand img { width:34px; height:34px; }.menu-button { display:block; }.site-header nav { display:none; position:absolute; top:74px; left:0; right:0; padding:1rem 22px 1.5rem; align-items:stretch; gap:0; background:var(--navy); }.site-header nav.open { display:flex; flex-direction:column; }.site-header nav a { padding:.7rem 0; }.nav-cta { margin-top:.6rem; text-align:center; }.hero { min-height:680px; padding:5rem 0; }.hero-grid,.split,.about-grid,.contact-grid,.director-profile { grid-template-columns:1fr; gap:2.5rem; }.service-grid,.article-grid { grid-template-columns:1fr 1fr; }.section { padding:4.5rem 0; }.director-profile { padding:2.5rem; }.director-photo { min-height:300px; }.page-hero { min-height:440px; }.footer-wrap { grid-template-columns:1fr; }.footer-wrap>div:not(.company-details) { grid-row:3; }.company-details { grid-template-columns:1fr; }.copyright { grid-column:auto; } }
@media(max-width:480px) { .wrap { width:min(100% - 32px,1140px); }.service-grid,.article-grid { grid-template-columns:1fr; }.trust-card { padding:1.5rem; }.section { padding:3.6rem 0; }.director-profile { padding:1.5rem; } }
@media(max-width:780px) { .service-directory { grid-template-columns:1fr 1fr; } }
@media(max-width:480px) { .service-directory { grid-template-columns:1fr; } }
@media(max-width:780px) { .service-detail { grid-template-columns:80px 1fr; gap:1.5rem; }.service-detail aside { grid-column:2; padding:1.25rem 0 0; border-top:1px solid var(--line); border-left:0; } }
@media(max-width:480px) { .service-detail { grid-template-columns:1fr; padding:1.7rem; }.service-detail aside { grid-column:auto; } }

/* Article presentation */
.article-feature-image {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0 0 3rem;
  border: 1px solid var(--line);
}

.article-disclaimer {
  display: block;
  width: 100%;
  margin: 2rem 0;
  padding: 1.25rem 1.5rem;
  border-left: 3px solid var(--navy);
  color: var(--muted);
  background: var(--mist);
  font-size: .95rem !important;
}

@media(max-width:480px) {
  .article-feature-image { margin-bottom: 2rem; }
  .article-disclaimer { margin: 1.5rem 0; padding: 1rem 1.1rem; }
}