
:root{--ink:#0d2e4a;--ink2:#132033;--muted:#5c6676;--line:#e7e0d4;--bg:#fbf6ea;--soft:#fffaf0;--card:#fff;--accent:#0d3b5a;--accent2:#185787;--cream:#f6efde;--gold:#c29a4a}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink2);background:var(--soft);line-height:1.65}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.wrap{max-width:1180px;margin:auto;padding:0 28px}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,251,244,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:96px}.brand{display:flex;align-items:center;color:var(--ink)}.brand img{height:72px;width:auto;display:block}.links{display:flex;gap:28px;align-items:center}.links a{font-weight:750;color:var(--ink2);font-size:.98rem}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:14px 22px;background:linear-gradient(180deg,var(--accent2),var(--accent));color:white!important;font-weight:800;text-decoration:none!important;box-shadow:0 12px 28px rgba(13,59,90,.22);border:1px solid rgba(13,59,90,.25)}.btn.compact{padding:12px 18px}.btn.alt{background:transparent;color:var(--accent)!important;border:1px solid var(--accent);box-shadow:none}.hero{background:radial-gradient(circle at 8% 18%,rgba(220,235,244,.8),transparent 28%),linear-gradient(135deg,#fffaf0 0%,#fff 55%,#f7efe0 100%);padding:92px 0 68px;border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:58px;align-items:center}.eyebrow{color:#006b7b;font-weight:900;text-transform:uppercase;letter-spacing:.16em;font-size:.79rem}.hero h1,.page-hero h1{font-family:Georgia,'Times New Roman',serif;color:var(--ink);font-size:clamp(2.7rem,5.5vw,5.25rem);line-height:1.03;margin:20px 0 22px;letter-spacing:-.045em}.lead{font-size:1.22rem;color:#3f4c61;max-width:720px}.hero-actions{display:flex;gap:16px;margin-top:30px;flex-wrap:wrap}.panel{background:rgba(255,255,255,.78);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 24px 70px rgba(13,46,74,.10)}.feature{display:grid;grid-template-columns:72px 1fr;gap:22px;align-items:start;padding:18px 0}.feature+.feature{border-top:1px solid var(--line)}.feature h3{font-family:Georgia,'Times New Roman',serif;color:var(--ink);font-size:1.45rem;margin:0 0 6px}.feature p{margin:0;color:#26344a}.icon,.card-icon{display:grid;place-items:center;border-radius:50%;background:#f3eadb;color:var(--accent);font-weight:900}.icon{width:58px;height:58px;font-size:1.6rem}.card-icon{width:46px;height:46px;background:var(--accent);color:#fff;margin-bottom:22px}section{padding:76px 0}.section-head{max-width:790px;margin-bottom:36px}.section-head.centered{text-align:center;margin-left:auto;margin-right:auto}.section-head h2,.cta h2,.service-row h2,.contact-box h2,.two h2{font-family:Georgia,'Times New Roman',serif;color:var(--ink);font-size:clamp(2rem,3.2vw,3.1rem);line-height:1.12;margin:0 0 12px}.section-head p{color:var(--muted);font-size:1.09rem}.grid{display:grid;gap:22px}.cards{grid-template-columns:repeat(4,1fr)}.cards.three{grid-template-columns:repeat(3,1fr)}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:0 14px 35px rgba(13,46,74,.06)}.service-card{color:var(--ink2);transition:transform .18s ease,box-shadow .18s ease}.service-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(13,46,74,.10);text-decoration:none}.card h3{font-family:Georgia,'Times New Roman',serif;color:var(--ink);margin:0 0 10px;font-size:1.35rem}.card p{color:var(--muted);margin:0 0 20px}.card strong{color:var(--accent)}.strip{background:var(--ink);color:white}.strip .section-head h2,.strip h3{color:white}.strip p,.strip .section-head p{color:#d9e2eb}.strip .card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:white}.strip .card p{color:#d9e2eb}.two{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:start}.mini-cards{grid-template-columns:1fr}.page-hero{background:linear-gradient(135deg,#fffaf0 0%,#fff 60%,#f4ebdc 100%);padding:86px 0;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.4rem,4.6vw,4.35rem);max-width:920px}.contact-box{background:white;border:1px solid var(--line);border-radius:18px;padding:32px;box-shadow:0 14px 35px rgba(13,46,74,.06)}.list{padding:0;margin:0;list-style:none}.list li{padding:12px 0;border-bottom:1px solid var(--line);color:var(--muted)}.list li:before{content:'✓';color:#006b7b;font-weight:900;margin-right:10px}.service-list{display:grid;gap:24px}.service-row{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;background:white;border:1px solid var(--line);border-radius:18px;padding:34px;box-shadow:0 14px 35px rgba(13,46,74,.05)}.service-row p{color:var(--muted);font-size:1.06rem}.cta{background:var(--cream)}.cta-box{text-align:center;max-width:860px}.cta-box p{color:var(--muted);font-size:1.1rem}.footer{background:#0a2235;color:#dbe6ef;padding:42px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:34px}.footer-brand img{height:74px;width:auto;margin-bottom:14px;filter:brightness(1.15)}.footer p,.copyright{color:#acbac8}.footer a{color:#fff}.copyright{font-size:.9rem;border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:18px}.small{font-size:.94rem;color:var(--muted)}.mobile-toggle{display:none;background:none;border:0;font-size:1.9rem;color:var(--ink)}
@media(max-width:920px){.mobile-toggle{display:block}.nav{min-height:82px}.brand img{height:58px}.links{display:none;position:absolute;left:0;right:0;top:82px;background:var(--soft);border-bottom:1px solid var(--line);padding:22px 28px;flex-direction:column;align-items:flex-start}.links.open{display:flex}.hero-grid,.two,.service-row,.footer-grid{grid-template-columns:1fr}.cards,.cards.three{grid-template-columns:1fr}.hero{padding-top:62px}.feature{grid-template-columns:56px 1fr}.icon{width:48px;height:48px}.wrap{padding:0 22px}}
@media(max-width:520px){.brand img{height:48px}.hero h1,.page-hero h1{font-size:2.55rem}.btn{width:100%}.panel,.card,.service-row,.contact-box{padding:24px}.nav{min-height:74px}.links{top:74px}}


/* Cross-browser logo fix: keep the header logo compact in Firefox, Edge, Chrome, and Safari. */
.brand{display:flex;align-items:center;gap:14px;flex:0 0 auto;min-width:0;text-decoration:none!important;color:var(--ink)!important}
.brand-mark{display:block!important;width:74px!important;height:40px!important;max-width:74px!important;max-height:40px!important;object-fit:contain!important;flex:0 0 auto}
.brand-name{display:flex;flex-direction:column;font-family:Georgia,'Times New Roman',serif;font-weight:800;font-size:1.08rem;line-height:1.05;letter-spacing:.01em;color:var(--ink);white-space:nowrap}
.brand-name span{font-size:1.18rem;letter-spacing:.08em;text-align:center}
.footer-brand img{display:block!important;width:260px!important;max-width:100%!important;height:auto!important;object-fit:contain!important}
@media(max-width:720px){.brand-mark{width:60px!important;height:33px!important}.brand-name{font-size:.92rem}.brand-name span{font-size:1rem}.links{top:82px}}
@media(max-width:520px){.brand-name{display:none}.brand-mark{width:64px!important;height:35px!important}}
