/* VERITUDE LTD | A bespoke, responsive static website */
:root {
  --ink:#183246; --navy:#062D52; --navy-dark:#071E37; --teal:#00817D;
  --teal-light:#e8f3f1; --cream:#faf9f5; --white:#fff; --muted:#63717a;
  --line:#dfe6e4; --gold:#CAA04B; --shadow:0 22px 64px rgba(12,39,50,.09);
  --radius:20px; --container:1180px;
}
*,*::before,*::after {box-sizing:border-box}
html {scroll-behavior:smooth; scroll-padding-top:90px}
body {margin:0;color:var(--ink);background:var(--cream);font-family:"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.nav-open {overflow:hidden}
a {color:inherit;text-decoration:none}
button,input,textarea,select {font:inherit}
button {cursor:pointer}
img,svg {max-width:100%}
::selection {background:#c9e6de;color:var(--navy)}
.container {width:min(calc(100% - 48px),var(--container));margin-inline:auto}
.skip-link {position:absolute;top:-100px;left:16px;z-index:150;background:#fff;padding:12px;border-radius:8px}
.skip-link:focus {top:12px}
:focus-visible {outline:3px solid var(--gold);outline-offset:4px}
.eyebrow {display:inline-flex;align-items:center;gap:9px;color:var(--teal);font-size:12px;letter-spacing:.19em;font-weight:750;text-transform:uppercase}
.eyebrow::before {content:"";display:inline-block;background:var(--gold);width:20px;height:2px}
.section {padding:104px 0}
.section-cream {background:var(--cream)}
.section-white {background:#fff}
.section-mist {background:#edf4f1}
.section-head {max-width:710px;margin:0 0 40px}
.section-head.center {text-align:center;margin:0 auto 46px}
.section-head.center .eyebrow {justify-content:center}
h1,h2,h3,p {margin-top:0}
h1,h2 {font-family:inherit;font-weight:650;line-height:1.12;letter-spacing:-.038em;color:var(--navy)}
h1 {font-size:clamp(48px,5.8vw,82px);line-height:1.035}
h2 {font-size:clamp(37px,4.1vw,57px)}
h3 {font-size:21px;line-height:1.33;letter-spacing:-.02em;color:var(--navy)}
p {margin-bottom:1.15em}
.section-head h2 {margin:15px 0 18px}
.lead {font-size:18px;line-height:1.8;color:#596b72;max-width:650px}
.muted {color:var(--muted)}
.accent {color:var(--teal);font-style:normal}
.btn {display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:999px;padding:14px 23px;font-size:14px;font-weight:750;letter-spacing:.01em;min-height:52px;transition:transform .2s,background .2s,box-shadow .2s,color .2s}
.btn:hover {transform:translateY(-2px)}
.btn svg {width:16px;height:16px;flex:none}
.btn-primary {background:var(--teal);color:#fff;box-shadow:0 9px 22px rgba(11,121,121,.15)}
.btn-primary:hover {background:#075c5f;box-shadow:0 12px 30px rgba(11,121,121,.24)}
.btn-dark {background:var(--navy);color:#fff}
.btn-dark:hover {background:#1c4050}
.btn-light {background:#fff;color:var(--navy)}
.btn-outline {border-color:#cbdad7;background:transparent;color:var(--navy)}
.btn-outline:hover {background:#e8f1ee}
.btn-text {padding-left:0;padding-right:0;min-height:auto;color:var(--teal)}
.btn-text:hover {box-shadow:none}
.actions {display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.site-header {position:sticky;top:0;z-index:100;background:rgba(250,249,245,.94);border-bottom:1px solid rgba(16,43,56,.08);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.header-inner {display:flex;align-items:center;justify-content:space-between;height:86px;gap:22px}
.brand {display:inline-flex;align-items:center;gap:12px;min-width:0}
.brand-symbol {width:43px;height:43px;flex:none}
.brand-type {display:flex;flex-direction:column;line-height:1}
.brand-name {font-family:inherit;font-size:30px;letter-spacing:-.065em;font-weight:600;color:var(--navy)}
.brand-name .dot {color:var(--teal)}
.brand-subtitle {font-size:8px;letter-spacing:.245em;text-transform:uppercase;color:#64757a;font-weight:760;margin-top:5px}
.nav-links {display:flex;align-items:center;gap:31px;margin-left:auto}
.nav-links>a {font-weight:650;font-size:13px;color:#3b515b;position:relative;white-space:nowrap}
.nav-links>a:hover,.nav-links>a[aria-current="page"] {color:var(--teal)}
.nav-links>a[aria-current="page"]::after {content:"";position:absolute;bottom:-10px;left:0;right:0;height:2px;background:var(--teal)}
.header-cta {margin-left:15px;font-size:13px;white-space:nowrap;min-height:44px;padding:11px 17px}
.menu-toggle {display:none;border:1px solid #d7e1de;background:#fff;border-radius:12px;width:46px;height:46px;align-items:center;justify-content:center;color:var(--navy)}
.menu-toggle svg {width:23px;height:23px}
/* Home hero */
.hero {position:relative;overflow:hidden;padding:96px 0 106px;background:radial-gradient(ellipse at 85% 20%,#edf6f1 0%,rgba(237,246,241,0) 50%),var(--cream)}
.hero::before {content:"";position:absolute;right:-185px;top:-330px;width:700px;height:700px;border-radius:50%;border:1px solid rgba(11,121,121,.09);pointer-events:none}
.hero::after {content:"";position:absolute;right:-120px;top:-260px;width:560px;height:560px;border-radius:50%;border:1px solid rgba(11,121,121,.06);pointer-events:none}
.hero-grid {display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:66px}
.hero-text {position:relative;z-index:1}
.hero h1 {margin:25px 0 25px;max-width:700px}
.hero .lead {margin-bottom:33px;max-width:530px}
.hero-mini {margin-top:43px;display:flex;gap:22px;align-items:center;color:#708087;font-size:12px;font-weight:650}
.hero-mini .dot-line {height:1px;width:35px;background:#c1d0ca}
.hero-visual {position:relative;min-height:520px;display:flex;align-items:center;justify-content:center}
.visual-frame {position:relative;border-radius:30px;background:linear-gradient(140deg,#193b48 0%,#0c2631 70%);box-shadow:0 38px 80px rgba(14,46,55,.22);color:#fff;padding:35px 37px;width:100%;max-width:490px;min-height:475px;overflow:hidden}
.visual-frame::before {content:"";position:absolute;border:1px solid rgba(255,255,255,.11);border-radius:50%;width:470px;height:470px;top:-250px;right:-170px}
.visual-frame::after {content:"";position:absolute;width:320px;height:320px;right:-155px;bottom:-145px;background:radial-gradient(circle,rgba(36,143,140,.30),transparent 68%)}
.visual-top {display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#9ac6bf;font-weight:700}
.visual-top .small-mark {border:1px solid rgba(223,241,237,.25);border-radius:100px;padding:5px 10px;color:#dcece7;letter-spacing:.08em}
.visual-title {font-family:inherit;font-weight:650;font-size:clamp(37px,4vw,54px);letter-spacing:-.045em;line-height:1.13;max-width:325px;margin:66px 0 25px;color:#fff}
.visual-title em {color:#9cd6cc;font-weight:650;font-style:normal}
.visual-rule {background:linear-gradient(90deg,var(--gold),rgba(188,155,103,.02));width:98px;height:2px;margin:29px 0}
.visual-note {font-size:14px;color:#bdd1ce;max-width:280px;line-height:1.8}
.visual-curve {position:absolute;bottom:0;right:-4px;opacity:.65;width:265px;height:155px;pointer-events:none}
.float-card {position:absolute;z-index:1;background:#fff;border-radius:16px;padding:17px 21px;box-shadow:0 18px 40px rgba(21,57,62,.12);display:flex;gap:13px;align-items:center;color:var(--navy)}
.float-card .round-icon {height:39px;width:39px;border-radius:12px;background:#def1e9;display:flex;align-items:center;justify-content:center;color:var(--teal)}
.float-card .round-icon svg {height:19px;width:19px}
.float-card strong {display:block;font-size:12px;line-height:1.3}
.float-card small {display:block;font-size:11px;color:#77868a;margin-top:2px}
.float-card.one {bottom:39px;left:-45px}
.float-card.two {top:60px;right:-30px}
.trust-strip {background:#f0f5f1;border-top:1px solid #e0ebe5;border-bottom:1px solid #e0ebe5}
.trust-grid {display:grid;grid-template-columns:repeat(3,1fr)}
.trust-item {display:flex;gap:15px;align-items:center;padding:28px 30px;border-right:1px solid #d9e6df}
.trust-item:first-child {padding-left:0}
.trust-item:last-child {border-right:0}
.trust-icon {color:var(--teal);width:24px;height:24px;flex:none}
.trust-item p {margin:0;color:#36525c;font-size:14px;font-weight:700}
.trust-item span {display:block;color:#71828a;font-weight:450;font-size:12px;margin-top:3px}
/* Content components */
.cards-3 {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cards-2 {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.service-card {position:relative;background:#fff;padding:31px;border:1px solid #e2e9e7;border-radius:var(--radius);min-height:270px;transition:transform .25s,box-shadow .25s,border-color .25s}
.service-card:hover {transform:translateY(-5px);box-shadow:var(--shadow);border-color:#cbdcd7}
.service-icon {width:50px;height:50px;background:#edf5f2;border-radius:14px;color:var(--teal);display:flex;align-items:center;justify-content:center;margin-bottom:30px}
.service-icon svg {width:24px;height:24px}
.service-card h3 {margin:0 0 12px}
.service-card p {font-size:14px;color:var(--muted);line-height:1.75;margin:0 0 18px}
.service-card .card-link {color:var(--teal);font-size:13px;font-weight:750;display:inline-flex;align-items:center;gap:6px}
.service-card .card-link:hover {text-decoration:underline}
.service-card .card-link svg {height:15px;width:15px}
.section-footer {display:flex;justify-content:center;margin-top:43px}
.split {display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.split h2 {margin:15px 0 24px}
.split-copy {max-width:555px}
.split-copy p {color:#64747b}
.value-visual {min-height:510px;background:linear-gradient(160deg,#dcece5,#edf4f0);border-radius:27px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.value-visual::before {content:"";position:absolute;width:480px;height:480px;border:1px solid rgba(11,121,121,.15);border-radius:50%}
.value-visual::after {content:"";position:absolute;width:350px;height:350px;border:1px solid rgba(11,121,121,.15);border-radius:50%}
.value-inner {position:relative;z-index:1;background:var(--navy);color:white;border-radius:21px;padding:39px;width:63%;min-width:255px;box-shadow:0 30px 65px rgba(7,49,62,.22)}
.value-inner span {display:block;color:#9dc9be;text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:750}
.value-inner strong {display:block;font-family:var(--body-font);font-size:46px;font-weight:400;letter-spacing:-.06em;margin-top:14px;line-height:1.05}
.value-inner p {color:#c3d4d4;font-size:13px;line-height:1.75;margin:18px 0 0}
.bubble {position:absolute;border-radius:100%;width:70px;height:70px;background:#b4d9ca;right:50px;top:65px}
.bubble.second {background:#f6f1e4;width:40px;height:40px;left:57px;bottom:72px;top:auto}
.check-list {padding:0;margin:25px 0 29px;list-style:none;display:grid;gap:16px}
.check-list li {display:flex;align-items:flex-start;gap:12px;color:#405961;font-size:14px}
.check-list svg {width:20px;height:20px;color:var(--teal);flex:none;margin-top:2px}
.promise-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:38px}
.promise {border-top:1px solid #b9cfc8;padding:23px 4px 0}
.promise .num {font-family:var(--body-font);color:var(--teal);font-size:32px}
.promise h3 {margin:21px 0 13px}
.promise p {color:var(--muted);font-size:14px;max-width:335px}
.process {counter-reset:step;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.process-step {position:relative;padding:34px 26px 27px;background:#fff;border:1px solid #e4ece8;border-radius:17px}
.process-step .number {font-family:var(--body-font);color:var(--teal);font-size:39px;line-height:1}
.process-step h3 {margin:28px 0 10px;font-size:19px}
.process-step p {margin:0;color:var(--muted);font-size:13px}
.quote-banner {position:relative;overflow:hidden;background:var(--navy);border-radius:25px;padding:64px 72px;display:flex;justify-content:space-between;align-items:center;gap:44px;color:#fff}
.quote-banner::after {content:"";position:absolute;width:400px;height:400px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-150px;top:-130px;pointer-events:none}
.quote-banner .eyebrow {color:#b9d7d1}
.quote-banner h2 {color:#fff;margin:16px 0 15px;max-width:680px;font-size:clamp(34px,3.8vw,53px)}
.quote-banner p {color:#bdd0d0;margin:0;max-width:570px}
.quote-banner .btn {flex:none;position:relative;z-index:1}
/* Inner pages */
.page-hero {position:relative;background:linear-gradient(145deg,#f6f7f1,#eef4ef);padding:92px 0 100px;overflow:hidden}
.page-hero::after {content:"";position:absolute;right:-100px;bottom:-290px;width:650px;height:650px;border:1px solid #d8e9e0;border-radius:50%}
.page-hero .container {position:relative;z-index:1}
.page-hero h1 {font-size:clamp(50px,5.5vw,73px);margin:20px 0 24px;max-width:900px}
.page-hero p {max-width:750px;color:#5a6d73;font-size:18px}
.breadcrumb {font-size:13px;color:#6b7f84;margin-bottom:33px}
.breadcrumb a {color:var(--teal)}
.breadcrumb span {margin:0 9px;color:#9caeaf}
.text-panel {background:#fff;border:1px solid #e2eae6;padding:43px;border-radius:22px}
.text-panel h3 {margin-bottom:15px}
.text-panel p:last-child {margin-bottom:0}
.values-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.value-card {background:#fff;border:1px solid #e0e9e5;border-radius:18px;padding:29px}
.value-card .number {display:inline-block;font-size:13px;color:var(--teal);letter-spacing:.08em;font-weight:800;margin-bottom:20px}
.value-card h3 {margin:0 0 12px}
.value-card p {color:var(--muted);font-size:14px;margin:0}
.service-detail {display:grid;grid-template-columns:72px 1fr;gap:24px;border-top:1px solid #dfe8e4;padding:37px 0}
.service-detail:last-child {border-bottom:1px solid #dfe8e4}
.service-detail .detail-icon {height:65px;width:65px;border-radius:18px;background:#e4f1ec;color:var(--teal);display:flex;align-items:center;justify-content:center}
.service-detail .detail-icon svg {width:29px;height:29px}
.service-detail h3 {font-size:25px;margin-bottom:10px}
.service-detail p {color:var(--muted);margin-bottom:15px}
.detail-tags {display:flex;flex-wrap:wrap;gap:9px}
.detail-tags span {padding:6px 12px;border-radius:30px;background:#f0f5f2;border:1px solid #e3ece7;font-size:12px;color:#436068;font-weight:650}
.faq {max-width:880px;margin:auto}
.faq details {border-bottom:1px solid #dce5e0;padding:22px 2px}
.faq summary {cursor:pointer;list-style:none;font-size:17px;font-weight:750;color:var(--navy);display:flex;justify-content:space-between;align-items:center;gap:20px}
.faq summary::-webkit-details-marker {display:none}
.faq summary::after {content:"+";font-family:inherit;font-size:27px;color:var(--teal);font-weight:400;flex:none}
.faq details[open] summary::after {content:"−"}
.faq details p {color:var(--muted);font-size:14px;max-width:730px;margin:13px 0 0}
.contact-grid {display:grid;grid-template-columns:1.25fr .75fr;gap:44px;align-items:start}
.form-panel {background:#fff;border:1px solid #e2eae6;border-radius:25px;padding:42px}
.form-panel h2 {font-size:36px;margin:0 0 10px}
.form-panel>p {color:var(--muted);font-size:14px;margin-bottom:26px}
.form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.field {display:flex;flex-direction:column;gap:8px}
.field.full {grid-column:1/-1}
.field label {font-size:13px;font-weight:740;color:#304854}
.field input,.field select,.field textarea {background:#fafcfb;border:1px solid #d4e0dc;border-radius:11px;padding:13px 14px;color:var(--navy);width:100%;min-width:0;outline:0;transition:border-color .2s,box-shadow .2s}
.field input:focus,.field select:focus,.field textarea:focus {border-color:var(--teal);box-shadow:0 0 0 3px rgba(11,121,121,.11)}
.field textarea {resize:vertical;min-height:140px}
.field small {font-size:11px;color:#728389}
.field .required {color:#ab613c}
.checkbox-row {display:flex;align-items:flex-start;gap:11px;grid-column:1/-1;color:#5f7479;font-size:12px;margin-top:5px}
.checkbox-row input {width:18px;height:18px;margin-top:3px;accent-color:var(--teal);flex:none}
.checkbox-row a {color:var(--teal);text-decoration:underline}
.submit-row {grid-column:1/-1;padding-top:4px}
.contact-aside {padding-top:6px}
.contact-aside h3 {font-size:27px}
.aside-step {display:grid;grid-template-columns:40px 1fr;gap:13px;margin-top:30px}
.aside-step>span {border:1px solid #bfd3c9;color:var(--teal);width:39px;height:39px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:750}
.aside-step h4 {font-size:15px;color:var(--navy);margin:0 0 5px}
.aside-step p {font-size:13px;color:var(--muted);margin:0}
.contact-note {margin-top:37px;background:#e7f1ed;border-radius:18px;padding:25px;color:#47666a;font-size:13px}
.contact-note strong {color:var(--navy);font-size:15px;display:block;margin-bottom:8px}
.document {max-width:860px;background:#fff;border:1px solid #e1e9e5;border-radius:22px;padding:48px;margin:auto}
.document h2 {font-size:27px;margin:32px 0 10px}
.document p,.document li {color:#60727a;font-size:14px}
.document ul {padding-left:19px}
.document a {text-decoration:underline;color:var(--teal)}
.notice {background:#fff9e9;border:1px solid #f1deb7;border-radius:12px;padding:15px 19px;font-size:13px;color:#76592c;margin-bottom:27px}
/* Footer */
.site-footer {background:#0d2530;color:#cbd8d8;padding:73px 0 24px}
.footer-main {display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:65px;margin-bottom:63px}
.site-footer .brand-name {color:white}
.site-footer .brand-subtitle {color:#a5b7b9}
.footer-description {font-size:14px;color:#aebfc2;line-height:1.8;max-width:320px;margin:24px 0 0}
.footer-title {font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:#fff;font-weight:780;margin:8px 0 22px}
.footer-links {display:grid;gap:13px}
.footer-links a {color:#b2c5c7;font-size:13px}
.footer-links a:hover {color:#fff}
.footer-bottom {border-top:1px solid rgba(255,255,255,.13);padding-top:22px;display:flex;justify-content:space-between;gap:20px;color:#9db1b5;font-size:12px;flex-wrap:wrap}
.footer-legal {color:#a5bbc0;font-size:11px;margin-top:12px;line-height:1.6}
.footer-legal strong {font-weight:400;color:#e8eeee}
/* Animations */
/* Sections remain visible even before JavaScript loads or when it is disabled.
   Buttons and cards provide lightweight hover transitions without hiding content. */
.reveal {opacity:1;transform:none}
@media (max-width:1060px) {
  .nav-links {gap:18px}
  .header-cta {margin-left:0}
  .hero-grid {gap:38px}
  .float-card.one {left:-15px}
  .float-card.two {right:-10px}
  .split {gap:55px}
}
@media (max-width:860px) {
  .header-inner {height:75px}
  .header-cta {margin-left:auto}
  .menu-toggle {display:flex}
  .nav-links {display:none;position:absolute;top:75px;left:0;right:0;background:var(--cream);border-bottom:1px solid #dfe8e4;padding:20px 24px 29px;box-shadow:0 22px 25px rgba(11,35,42,.08);margin:0;flex-direction:column;align-items:stretch;gap:0}
  .nav-links.active {display:flex}
  .nav-links>a {font-size:16px;padding:12px 0;border-bottom:1px solid #e0e7e2}
  .nav-links>a[aria-current="page"]::after {display:none}
  .hero-grid {grid-template-columns:1fr;gap:35px}
  .hero {padding:75px 0 80px}
  .hero h1 {max-width:780px}
  .hero-visual {min-height:440px;max-width:600px;width:100%;margin-inline:auto}
  .visual-frame {max-width:540px}
  .trust-item {padding:23px 14px}
  .split {grid-template-columns:1fr;gap:44px}
  .value-visual {min-height:430px;order:-1}
  .cards-3 {grid-template-columns:repeat(2,minmax(0,1fr))}
  .promise-grid {gap:20px}
  .process {grid-template-columns:repeat(2,minmax(0,1fr))}
  .quote-banner {padding:48px;align-items:start;flex-direction:column}
  .footer-main {gap:30px}
  .contact-grid {grid-template-columns:1fr;gap:50px}
}
@media (max-width:600px) {
  .container {width:min(calc(100% - 34px),var(--container))}
  .section {padding:72px 0}
  .page-hero {padding:66px 0 72px}
  .hero {padding:66px 0 63px}
  .hero h1 {font-size:clamp(46px,11.8vw,64px);margin:22px 0}
  .lead,.page-hero p {font-size:16px;line-height:1.75}
  h2 {font-size:clamp(35px,9vw,44px)}
  .header-cta {display:none}
  .brand-symbol {width:37px;height:37px}
  .brand-name {font-size:26px}
  .brand-subtitle {font-size:7px}
  .hero .actions .btn {flex:1}
  .hero-mini {gap:10px;font-size:10px;margin-top:30px;flex-wrap:wrap}
  .hero-visual {min-height:410px}
  .visual-frame {min-height:385px;padding:30px 29px;border-radius:24px}
  .visual-title {font-size:43px;margin:58px 0 21px}
  .visual-curve {width:200px}
  .float-card {padding:12px;gap:8px}
  .float-card.one {left:-7px;bottom:7px}
  .float-card.two {right:-8px;top:34px}
  .float-card .round-icon {height:31px;width:31px}
  .float-card .round-icon svg {height:16px;width:16px}
  .float-card strong {font-size:10px}
  .float-card small {font-size:9px}
  .trust-grid {grid-template-columns:1fr}
  .trust-item {padding:17px 0!important;border-right:0;border-bottom:1px solid #d9e6df}
  .trust-item:last-child {border-bottom:0}
  .cards-3,.cards-2,.values-grid,.promise-grid {grid-template-columns:1fr}
  .service-card {min-height:auto;padding:27px}
  .service-icon {margin-bottom:20px}
  .value-visual {min-height:355px}
  .value-inner {padding:29px}
  .promise-grid {gap:27px}
  .process {grid-template-columns:1fr}
  .process-step {padding:25px}
  .process-step h3 {margin:16px 0 9px}
  .quote-banner {padding:37px 26px;border-radius:20px}
  .quote-banner .btn {width:100%}
  .text-panel {padding:29px}
  .service-detail {grid-template-columns:1fr;gap:17px;padding:27px 0}
  .form-panel {padding:25px 19px}
  .form-grid {grid-template-columns:1fr}
  .contact-grid {gap:42px}
  .document {padding:26px 21px}
  .footer-main {grid-template-columns:1fr 1fr;row-gap:38px}
  .footer-main>div:first-child {grid-column:1/-1}
  .site-footer {padding-top:55px}
}

/* November 2026 brand refresh: one consistent text family across the website. */
:root {--body-font:"Segoe UI",Arial,sans-serif}
html, body, button, input, textarea, select, .btn, .eyebrow, h1, h2, h3, h4, h5, h6, .visual-title, .value-inner strong, .brand, .footer-links, .nav-links {font-family:var(--body-font)!important}
.brand-lockup {display:block;width:235px;height:auto;max-height:56px;object-fit:contain;object-position:left center}
.site-footer .brand-lockup {width:245px;max-height:60px}
.header-inner {gap:15px}
.nav-links {gap:22px}
.nav-links>a {font-size:12.5px}
.header-cta {margin-left:0;padding:10px 14px}
.social-links {display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.social-links a {display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;padding:8px 11px;line-height:1.25;border:1px solid rgba(6,45,82,.18);border-radius:25px;color:var(--navy);background:#fff;transition:background .2s,color .2s}
.social-links a:hover {background:var(--teal);color:#fff}
.footer-social {margin-top:25px}
.footer-social a {background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.20);color:#ecf7f4}
.footer-social a:hover {background:#fff;color:var(--navy)}
.site-footer {background:#071e37}
.footer-main {grid-template-columns:1.35fr .8fr .95fr;gap:35px}
.footer-legal {font-size:11px}
.featured-offering {margin-top:25px;padding:40px 43px;background:linear-gradient(115deg,#063c58,#062b4c);border-radius:24px;display:flex;align-items:center;justify-content:space-between;gap:38px;color:#fff;box-shadow:0 18px 48px rgba(7,40,64,.14)}
.featured-offering h3 {color:white;font-size:27px;margin:11px 0}
.featured-offering p {color:#cde1e3;font-size:15px;line-height:1.65;max-width:770px;margin:0}
.featured-offering .btn {flex:none}
.mini-eyebrow {color:#e6ca84;font-size:11px;letter-spacing:.15em;font-weight:750}
.team-teaser {display:flex;align-items:center;gap:34px;background:#f5f9f7;border:1px solid #dfeae7;border-radius:24px;padding:35px 39px}
.team-teaser-copy {flex:1}
.team-teaser h2 {font-size:34px;margin:12px 0}
.team-teaser p {margin:0;color:var(--muted);max-width:600px}
.team-teaser .btn {flex:none}
.team-avatar {border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#062D52 0%,#00817D 100%);border:4px solid #e0ede9;box-shadow:0 18px 35px rgba(6,45,82,.16);font-weight:750;letter-spacing:-.035em}
.team-avatar.small {width:105px;height:105px;font-size:35px;flex:none}
.team-avatar.large {width:225px;height:225px;font-size:72px;margin:auto}
.team-feature {display:grid;grid-template-columns:.75fr 1.25fr;gap:56px;background:#f7faf8;border:1px solid #dfeae6;border-radius:28px;padding:50px;align-items:center}
.team-portrait {min-height:300px;border-radius:25px;background:radial-gradient(circle at 80% 20%,#e8f2eb,#dceae7);padding:40px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.portrait-caption {margin:19px 0 0;font-weight:750;color:var(--navy);font-size:16px}
.team-bio h3 {font-size:40px;font-weight:650;margin:14px 0 17px}
.team-bio p {color:#576d74;font-size:16px}
.team-bio-note {font-size:13px!important}
.contact-plain {color:var(--teal);font-weight:750;overflow-wrap:anywhere}
.contact-methods {display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:16px;margin-bottom:42px}
.contact-method {background:#f5faf8;border:1px solid #deebe7;border-radius:18px;padding:20px 19px;display:flex;align-items:center;gap:13px;min-width:0}
.contact-method-icon {width:43px;height:43px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:#dceee8;color:var(--teal);flex:none}
.contact-method-icon svg {width:21px;height:21px}
.contact-method small {display:block;color:#59737a;font-size:12px;margin-bottom:3px}
.contact-method strong {font-size:14px;color:var(--navy);overflow-wrap:anywhere}
.contact-social {gap:5px}
.contact-social a {font-size:10px;padding:7px 9px}
.service-disclaimer {color:#64747b;margin:24px 0 24px;font-size:13px}
.service-detail h3[id] {scroll-margin-top:115px}
@media(max-width:1100px) {
  .brand-lockup {width:206px}
  .nav-links {gap:15px}
  .header-cta {font-size:11px;padding:9px 12px}
}
@media(max-width:860px) {
  .brand-lockup {width:235px}
  .featured-offering {flex-direction:column;align-items:flex-start;gap:22px}
  .team-feature {grid-template-columns:1fr;gap:25px}
  .contact-methods {grid-template-columns:1fr 1fr}
  .contact-methods .social-method {grid-column:1/-1}
}
@media(max-width:600px) {
  .brand-lockup {width:215px}
  .site-footer .brand-lockup {width:245px}
  .featured-offering {padding:30px 25px}
  .featured-offering .btn {width:100%}
  .team-teaser {flex-direction:column;align-items:flex-start;padding:29px 25px;gap:20px}
  .team-teaser h2 {font-size:30px}
  .team-teaser .btn {width:100%}
  .team-feature {padding:21px}
  .team-portrait {min-height:260px}
  .team-avatar.large {width:180px;height:180px;font-size:55px}
  .team-bio {padding:12px 4px}
  .team-bio h3 {font-size:34px}
  .contact-methods {grid-template-columns:1fr}
  .contact-methods .social-method {grid-column:1}
  .contact-social a {font-size:11px}
  .footer-main {grid-template-columns:1fr}
  .footer-main>div:first-child {grid-column:auto}
}

/* Final founder portrait and single consistent typeface */
:root {--body-font:"Segoe UI",Arial,sans-serif}
body, body *, body *::before, body *::after {font-family:var(--body-font)}
.founder-avatar {width:105px;height:105px;flex:none;object-fit:cover;object-position:center 35%;border-radius:50%;border:4px solid #e0ede9;box-shadow:0 18px 35px rgba(6,45,82,.16)}
.team-portrait {padding:22px;overflow:hidden}
.founder-feature .team-portrait {background:linear-gradient(140deg,#eaf3ef,#dceae7);border:1px solid #d8e8e2}
.founder-photo {display:block;aspect-ratio:1/1;object-fit:cover;object-position:center 35%;width:min(100%,335px);height:auto;border-radius:19px;box-shadow:0 20px 44px rgba(6,45,82,.13)}
.founder-role {color:var(--teal)!important;font-size:15px!important;font-weight:750;margin-top:-10px;margin-bottom:22px!important}
@media(max-width:600px){.founder-avatar{width:90px;height:90px}.team-portrait{padding:14px}.founder-photo{width:100%;max-width:380px}.founder-feature{padding:15px}}


/* December 2026 logo refresh: single primary logo and footer social tiles */
.brand-lockup {width:150px;max-height:none;object-fit:contain;object-position:left center}
.site-footer .brand-lockup {width:185px;max-height:none;background:#fff;padding:10px 12px;border-radius:18px;box-shadow:0 12px 30px rgba(0,0,0,.14)}
.header-inner {height:96px}
.brand {align-items:center}
.footer-social-title {margin-top:24px;margin-bottom:14px}
.social-tiles {gap:12px}
.social-tiles a {min-width:110px;padding:12px 14px;border-radius:16px;font-size:13px;font-weight:750;justify-content:center;box-shadow:0 8px 20px rgba(6,45,82,.05)}
.footer-social.social-tiles a {background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.22);color:#fff}
.footer-social.social-tiles a:hover {background:#ffffff;color:var(--navy)}
.contact-social.social-tiles a {min-width:96px}
@media(max-width:1100px){.brand-lockup{width:140px}}
@media(max-width:860px){.header-inner{height:88px}.nav-links{top:88px}.brand-lockup{width:145px}}
@media(max-width:600px){.brand-lockup{width:128px}.site-footer .brand-lockup{width:165px}.social-tiles a{min-width:100px;padding:11px 12px}}
