

*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:140px}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#f7efe2;background:#071521}a{color:inherit}img{display:block;max-width:100%}.bg{position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 68% 34%,rgba(255,205,93,.55) 0 6%,rgba(255,133,58,.3) 10%,transparent 25%),linear-gradient(180deg,#263f59,#734b54 34%,#734b31 56%,#071521)}.topbar{position:sticky;z-index:10;top:0;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:16px 5vw;background:#071521f5}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;font-weight:900}.mark{width:42px;height:42px;border-radius:13px;overflow:hidden}.mark img{width:42px;height:42px}small{display:block;font-size:10px;letter-spacing:.28em;color:#d8d1c7}.nav{display:flex;flex-wrap:wrap;gap:4px}.nav a{padding:12px;border-radius:999px;font-size:13px;font-weight:800;text-decoration:none}.nav a:hover{background:#ffffff25}.section{padding:70px 7vw;scroll-margin-top:0}.section-contact{margin-top:28px}.kicker,.num{color:#b0ddff;font-weight:900;font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px}h1{font-size:clamp(40px,5.5vw,82px);line-height:1.05;margin:0 0 20px;letter-spacing:-.04em}h2{font-size:clamp(30px,4vw,58px);line-height:1.12;margin:0 0 20px;letter-spacing:-.03em}h3{font-size:clamp(22px,2vw,30px);margin:0 0 12px;line-height:1.2}p{font-size:18px;line-height:1.65;color:#f7efe2;margin:0}.lead{max-width:900px;font-size:clamp(17px,1.45vw,22px)}.company-name{font-size:17px;font-weight:700;margin-bottom:20px}.panel{background:#071521ed;border:1px solid #ffffff38;border-radius:34px;padding:clamp(24px,4vw,56px)}.hero-grid,.two-col{display:grid;grid-template-columns:1.1fr .85fr;gap:38px;align-items:center}.hero-card,.tile,.person,.contact-card{border:1px solid #ffffff38;border-radius:26px;background:#071521ed}.hero-card{padding:28px;display:grid;gap:32px}.hero-heading{font-size:32px;line-height:1.2}.cta-row,.link-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.btn{display:inline-block;border:1px solid #ffffff70;background:#071521;border-radius:999px;padding:12px 16px;font-size:15px;font-weight:800;text-decoration:none;min-height:44px}.btn:hover{background:#263f59}.btn.primary{background:#f0a23b;color:#111;border:1px solid #f0a23b}.quick-menu{max-width:430px;margin-top:26px}.quick-menu summary,.profile summary{cursor:pointer;font-size:15px;font-weight:800;padding:14px;border:1px solid #9fd3ff70;border-radius:14px;background:#071521;color:#b0ddff}.menu-list{display:grid;gap:8px;padding:12px;border:1px solid #ffffff38;border-radius:18px;background:#071521}.menu-list a{display:block;padding:12px 14px;border-radius:12px;background:#ffffff12;text-decoration:none;min-height:44px}.menu-label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#b0ddff;font-weight:900;margin:6px 4px}.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:28px}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.tile{padding:24px}.bullets{display:grid;gap:14px;margin-top:20px}.bullet{padding:16px;border:1px solid #ffffff38;background:#ffffff0d;border-radius:18px}.person{overflow:hidden}.photo{height:330px;background:#111;overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.todd .photo img{object-position:center 18%}.janie .photo img{object-position:center 22%}.david .photo img{object-position:center 10%}.person-body{padding:20px}.person-body p{font-size:16px}.profile{margin-top:20px}.profile p{margin-top:16px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.contact-card{padding:20px}.contact-card a{overflow-wrap:anywhere}footer{padding:36px 7vw;background:#071521;display:grid;gap:10px}footer p{font-size:15px}.skip-link{position:absolute;top:-100px;left:20px;z-index:30;padding:15px;background:#f7efe2;color:#071521}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #b0ddff;outline-offset:4px}@media(max-width:1000px){.hero-grid,.two-col{grid-template-columns:1fr}.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}.section{padding:44px 5vw}.topbar{gap:8px}.nav a{padding:12px 10px}.team-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.grid4,.team-grid,.contact-grid{grid-template-columns:1fr}.topbar{padding:12px 4vw}.nav{width:100%;justify-content:space-between}.nav a{font-size:12px;padding:12px 7px}.panel{border-radius:24px;padding:24px}.section{padding:36px 5vw}.hero-heading{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
  
.page-hero{max-width:1100px}.page-hero h1{font-size:clamp(38px,5vw,72px)}.copy{max-width:960px;display:grid;gap:22px}.copy ul{margin:0;padding-left:24px;line-height:1.8;font-size:18px}.copy h2{font-size:clamp(28px,3vw,42px);margin-top:20px}.copy h3{margin-top:16px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.service-grid .tile{display:grid;gap:16px}.service-grid h3{margin:0}.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;font-size:14px;margin-bottom:24px}.contact-form{margin-top:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:grid;gap:8px}.field label{font-weight:700}.field input,.field select,.field textarea{width:100%;min-width:0;min-height:48px;padding:12px;border:1px solid #9fd3ff80;border-radius:10px;background:#fff;color:#142131;font:inherit}.field textarea{min-height:160px;resize:vertical}.field.full{grid-column:1/-1}.form-note{font-size:14px;color:#e1d9ce;margin-top:16px}.section .panel p+p{margin-top:18px}.nav a[aria-current=page]{background:#ffffff25}.contact-form[hidden],[hidden]{display:none!important}.section{max-width:1600px;margin-inline:auto}.section-links{margin-top:24px;display:flex;gap:16px;flex-wrap:wrap}@media(max-width:620px){.service-grid,.form-grid{grid-template-columns:1fr}.nav{justify-content:flex-start}.nav a{flex:1 0 auto;text-align:center}.field.full{grid-column:auto}html{scroll-padding-top:180px}}

/* Four homepage pillars: balanced desktop grid with readable cards. */
#services .copy{max-width:none}.pillar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pillar-grid h3{font-size:clamp(22px,1.8vw,28px)}.pillar-grid .tile>a{align-self:end}.pillar-grid .tile{grid-template-rows:auto 1fr auto}@media(max-width:1200px){.pillar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.pillar-grid{grid-template-columns:1fr}}
