:root{
  --green-950:#041c12;
  --green-900:#062817;
  --green-800:#0B3B24;
  --green-700:#0B4B2C;
  --green-600:#11633b;
  --green-100:#eef7ec;
  --green-50:#f7fbf6;
  --lime:#77b82a;
  --yellow:#ffb000;
  --yellow-2:#ffc533;
  --ink:#102019;
  --muted:#52645a;
  --line:#dde7df;
  --card:#ffffff;
  --shadow:0 20px 50px rgba(4,28,18,.09);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.5;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{width:min(1180px,calc(100% - 44px));margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{left:16px;top:16px;width:auto;height:auto;background:#fff;padding:10px 14px;border-radius:8px;z-index:9999}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.93);backdrop-filter:saturate(1.3) blur(12px);border-bottom:1px solid rgba(6,40,23,.08)}
.header-inner{height:128px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:14px}.brand img{width:160px;max-height:118px;object-fit:contain;display:block;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.brand-footer img{width:124px;max-height:108px;object-fit:contain;display:block;background:transparent;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}
.nav{display:flex;align-items:center;gap:28px;font-weight:760;font-size:14px;color:var(--green-900)}
.nav a{position:relative}.nav a:not(.button)::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:3px;border-radius:9px;background:var(--yellow);transform:scaleX(0);transition:.18s ease}.nav a:hover::after{transform:scaleX(1)}
.button,.button-outline{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:10px;padding:15px 22px;font-weight:840;letter-spacing:-.01em;cursor:pointer;transition:.18s ease;white-space:nowrap}.button{background:linear-gradient(135deg,var(--green-700),var(--green-900));color:#fff;box-shadow:0 12px 22px rgba(11,75,44,.18)}.button:hover{transform:translateY(-1px);box-shadow:0 15px 26px rgba(11,75,44,.26)}.button.yellow{background:linear-gradient(135deg,var(--yellow),#ffca3d);color:var(--green-950);box-shadow:0 14px 24px rgba(255,176,0,.22)}.button-outline{background:#fff;color:var(--green-800);border:1.5px solid var(--green-700)}
.mobile-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:12px;padding:11px;color:var(--green-900)}
.mobile-toggle span{display:block;width:24px;height:2px;background:currentColor;margin:5px 0;border-radius:10px}
.hero{position:relative;overflow:hidden;padding:76px 0 58px;background:radial-gradient(circle at 85% 10%,rgba(255,176,0,.12),transparent 23%),radial-gradient(circle at 0% 72%,rgba(119,184,42,.12),transparent 22%)}
.hero-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:62px;align-items:center}.eyebrow{font-weight:900;color:var(--green-700);text-transform:uppercase;letter-spacing:.12em;font-size:13px}.hero h1{font-size:clamp(46px,6vw,82px);line-height:.96;letter-spacing:-.055em;margin:14px 0 24px;color:var(--green-800)}.lead{font-size:clamp(18px,2vw,22px);color:#1f3027;max-width:560px}.hero-actions{display:flex;align-items:center;gap:18px;margin:34px 0 36px;flex-wrap:wrap}.mini-proof{display:flex;align-items:center;gap:15px;color:var(--green-800);font-weight:780}.mini-proof img{width:54px;height:54px;object-fit:contain}.mini-proof span{display:block;color:var(--muted);font-size:14px;font-weight:650}.media-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.media-card{border:1px solid rgba(11,75,44,.1);border-radius:18px;overflow:hidden;background:#f5f8f5;box-shadow:0 18px 42px rgba(4,28,18,.08);min-height:250px}.media-card .label{position:absolute;margin:14px 0 0 14px;background:rgba(255,255,255,.9);border-left:5px solid var(--yellow);padding:7px 10px;border-radius:7px;font-size:12px;font-weight:900;color:var(--green-800);text-transform:uppercase;letter-spacing:.04em;z-index:2}.media-card img{width:100%;height:100%;object-fit:cover;aspect-ratio:1.28/1}.value-strip{padding:34px 0 70px}.value-intro{text-align:center;color:var(--green-800);font-size:clamp(20px,2.5vw,30px);font-weight:900;letter-spacing:-.02em;margin:0 0 18px}.value-card{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid rgba(11,75,44,.1);border-radius:24px;box-shadow:var(--shadow);overflow:hidden}.value-item{padding:34px 30px;text-align:center;position:relative}.value-item:not(:nth-of-type(4))::after{content:"";position:absolute;right:0;top:22%;bottom:22%;width:2px;background:linear-gradient(transparent,var(--yellow),transparent)}.icon-round{width:76px;height:76px;margin:0 auto 18px;border-radius:50%;background:var(--green-100);display:grid;place-items:center;color:var(--green-700);position:relative}.icon-round::after{content:"";position:absolute;inset:12px;border-radius:50%;border:3px solid var(--yellow);opacity:.75}.icon-round svg{width:38px;height:38px;stroke:currentColor;stroke-width:2;fill:none;position:relative;z-index:1}.value-item h3{margin:0 0 10px;font-size:22px;line-height:1.13;color:var(--green-800)}.value-item p{margin:0;color:#2f4438;font-weight:560}.value-callout{grid-column:1/-1;text-align:center;padding:0 30px 30px;margin-top:-4px}.value-callout span{display:block;width:min(260px,50%);height:3px;background:var(--yellow);border-radius:99px;margin:0 auto 14px}.value-callout strong{display:block;color:var(--green-800);font-size:clamp(18px,2vw,24px);line-height:1.16;font-weight:950;letter-spacing:-.02em}.split{padding:48px 0 70px}.split-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:72px;align-items:center}.section-kicker{color:var(--green-700);font-weight:900;text-transform:uppercase;letter-spacing:.11em;margin-bottom:10px}.section-title{font-size:clamp(34px,4vw,54px);line-height:1.02;letter-spacing:-.04em;margin:0 0 22px}.underline{width:70px;height:5px;background:var(--yellow);border-radius:99px;margin:0 0 22px}.copy p{font-size:18px;color:#25382e;margin:0 0 16px;max-width:610px}.provide-card{border-radius:24px;background:#fff;box-shadow:var(--shadow);border:1px solid rgba(11,75,44,.1);overflow:hidden}.provide-head{background:linear-gradient(135deg,var(--green-700),var(--green-900));color:#fff;padding:24px 28px;font-weight:900;font-size:25px;display:flex;justify-content:space-between;align-items:center}.provide-badge{width:92px;height:92px;display:grid;place-items:center;margin-bottom:-38px}.provide-badge img{width:92px;height:92px;display:block;object-fit:contain}.check-list{list-style:none;margin:0;padding:30px 30px 34px}.check-list li{display:flex;gap:13px;align-items:flex-start;padding:13px 0;border-bottom:1px solid #eef2ef;font-weight:670}.check-list li:last-child{border-bottom:0}.check{width:22px;height:22px;min-width:22px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;color:var(--green-900);font-size:14px;font-weight:900;margin-top:2px}.process{padding:30px 0 72px;text-align:center}.process .section-title{margin-bottom:46px}.steps{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;position:relative}.step{position:relative;padding:0 10px}.step:not(:last-child)::after{content:"→";position:absolute;right:-10px;top:42px;color:var(--green-700);font-size:22px}.step-number{width:34px;height:34px;background:var(--yellow);color:var(--green-950);border-radius:50%;display:grid;place-items:center;font-weight:950;margin:0 auto 8px}.step-icon{width:88px;height:88px;border-radius:50%;border:2px dashed var(--green-600);display:grid;place-items:center;margin:0 auto 15px;background:#fff}.step-icon svg{width:43px;height:43px;stroke:var(--green-800);stroke-width:2;fill:none}.step h3{margin:0 0 7px;color:var(--green-900);font-size:19px}.step p{font-size:14px;color:#31453a;margin:0}.why{padding:34px 0 70px}.why-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:62px;align-items:center}.plain-checks{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:14px}.plain-checks li{display:flex;gap:12px;align-items:center;font-weight:760;color:#263a2e}.plain-checks .mini-check{width:22px;height:22px;border-radius:50%;border:2px solid var(--green-600);display:grid;place-items:center;color:var(--green-700);font-size:13px}.compare{display:grid;grid-template-columns:1fr 60px 1fr;align-items:stretch}.compare-card{padding:30px 30px;border-radius:18px;border:1px solid rgba(11,75,44,.09)}.compare-card.good{background:linear-gradient(180deg,#f2f8f0,#fff)}.compare-card.bad{background:linear-gradient(180deg,#f6f6f6,#fff)}.compare-logo{height:66px;margin:0 auto 14px;object-fit:contain}.compare-card h3{text-align:center;font-size:22px;color:var(--green-800);margin:0 0 15px}.compare-card ul{list-style:none;padding:0;margin:0;display:grid;gap:13px}.compare-card li{display:flex;gap:11px;align-items:flex-start;color:#304238;font-weight:650}.xmark,.tickmark{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;min-width:20px;font-size:13px;font-weight:900}.tickmark{border:2px solid var(--green-600);color:var(--green-700)}.xmark{border:2px solid #9ca3a0;color:#6e7670}.vs{align-self:center;justify-self:center;width:58px;height:58px;background:#fff;border:2px solid var(--line);box-shadow:0 10px 24px rgba(4,28,18,.08);border-radius:50%;display:grid;place-items:center;font-weight:950;color:var(--green-800);z-index:1}.labs{padding:28px 0 72px}.labs-box{position:relative;display:grid;grid-template-columns:1fr .88fr;gap:40px;background:linear-gradient(135deg,#f7faf6,#fff);border:1px solid rgba(11,75,44,.1);border-radius:22px;box-shadow:var(--shadow);padding:34px}.pill{display:inline-flex;align-items:center;padding:6px 12px;border-radius:99px;background:var(--yellow);color:var(--green-950);font-weight:900;font-size:12px}.labs .pill{position:absolute;right:22px;top:18px}.discretion-note{border-left:5px solid var(--yellow);padding-left:16px;color:var(--green-800);font-weight:720}
.lab-features{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:stretch}.lab-feature{padding:12px 10px;text-align:center;border-left:2px solid rgba(255,176,0,.5)}.lab-feature:first-child{border-left:0}.lab-feature .icon-round{width:62px;height:62px;margin-bottom:12px}.lab-feature .icon-round::after{inset:9px;border-width:2px}.lab-feature h3{font-size:16px;line-height:1.2;margin:0;color:var(--green-900)}.contact{padding:0 0 56px}.contact-panel{display:grid;grid-template-columns:.72fr 1fr;gap:42px;align-items:center;border-radius:24px;background:radial-gradient(circle at 10% 80%,rgba(255,176,0,.15),transparent 26%),linear-gradient(135deg,var(--green-700),var(--green-950));padding:34px;color:#fff;box-shadow:0 24px 52px rgba(4,28,18,.2);overflow:hidden}.contact-panel h2{font-size:clamp(32px,4vw,50px);line-height:1.02;letter-spacing:-.04em;margin:8px 0 18px}.contact-panel p{color:#dfece2;font-size:18px}.contact-form{background:#fff;border-radius:18px;padding:24px;box-shadow:0 18px 40px rgba(0,0,0,.14)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:800;color:#244032}.field input,.field textarea{width:100%;border:1px solid #dce5df;border-radius:10px;padding:14px 14px;font:inherit;color:var(--ink);background:#fff}.field textarea{min-height:130px;resize:vertical}.honeypot{position:absolute;left:-9999px;opacity:0}.form-note{color:#5e6d64;font-size:13px;margin:14px 0 0}.site-footer{background:var(--green-950);color:#fff;padding:30px 0}.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:32px}.footer-links{display:flex;flex-wrap:wrap;gap:24px;color:#dbe9df;font-weight:730}.footer-meta{color:#abc0b2;font-size:14px}.dotmark{width:70px;height:54px;background-image:radial-gradient(circle,var(--yellow) 2px,transparent 2.5px);background-size:14px 14px;opacity:.85}.footer-tagline{color:var(--yellow);font-weight:950;font-size:20px;letter-spacing:.01em;white-space:nowrap;text-align:right;line-height:1.1;text-shadow:0 1px 0 rgba(0,0,0,.18)}
@media (max-width:950px){.footer-tagline{text-align:left;font-size:18px}.header-inner{height:104px}.brand img{width:126px;max-height:94px}.mobile-toggle{display:block}.nav{position:absolute;left:22px;right:22px;top:104px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:18px;display:none;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.hero-grid,.split-grid,.why-grid,.labs-box,.contact-panel{grid-template-columns:1fr}.media-grid{margin-top:10px}.value-card{grid-template-columns:1fr 1fr}.value-item:nth-child(2)::after{display:none}.steps{grid-template-columns:repeat(3,1fr);row-gap:34px}.step:nth-child(3)::after{display:none}.compare{grid-template-columns:1fr}.vs{margin:16px auto}.lab-features{grid-template-columns:1fr 1fr}.footer-grid{align-items:flex-start;flex-direction:column}}
@media (max-width:620px){.container{width:min(100% - 30px,1180px)}.hero{padding-top:44px}.hero-actions{align-items:stretch;flex-direction:column}.button,.button-outline{width:100%}.media-grid,.value-card,.steps,.lab-features,.form-grid{grid-template-columns:1fr}.value-item::after,.step::after{display:none!important}.split,.why,.process{padding-block:42px}.contact-panel{padding:22px}.site-footer{padding-bottom:36px}}


/* v1.10 services update */
.services-card .provide-head{align-items:center;min-height:92px}.provide-badge{position:relative;width:92px;height:92px;display:grid;place-items:center;margin-bottom:-38px}.provide-badge img{width:76px;height:76px;display:block;object-fit:contain}.provide-badge::after{content:"✓";position:absolute;right:4px;bottom:7px;width:28px;height:28px;border-radius:50%;background:var(--yellow);color:var(--green-950);display:grid;place-items:center;font-size:18px;font-weight:950;line-height:1;box-shadow:0 6px 14px rgba(4,28,18,.24)}.service-list{display:grid;gap:0;padding:30px}.service-link{display:block;text-decoration:none;color:inherit;padding:18px 0;border-bottom:1px solid #eef2ef}.service-link:first-child{padding-top:4px}.service-link:last-child{border-bottom:0;padding-bottom:4px}.service-link strong{display:block;color:var(--green-900);font-size:19px;line-height:1.18;margin-bottom:7px}.service-link span{display:block;color:#33473b;font-size:15px;line-height:1.45;font-weight:650}.service-link:hover strong,.service-link:focus-visible strong{color:var(--green-700)}.service-link:focus-visible{outline:3px solid rgba(255,176,0,.55);outline-offset:4px;border-radius:10px}.services-detail{padding:24px 0 72px}.service-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:26px}.service-detail-card{background:#fff;border:1px solid rgba(11,75,44,.1);border-radius:22px;box-shadow:var(--shadow);padding:28px;position:relative;overflow:hidden}.service-detail-card::before{content:"";position:absolute;left:0;right:0;top:0;height:7px;background:linear-gradient(90deg,var(--green-700),var(--yellow))}.service-number{display:inline-flex;align-items:center;justify-content:center;background:var(--green-100);color:var(--green-800);font-weight:950;border:2px solid rgba(255,176,0,.75);border-radius:999px;padding:6px 11px;font-size:13px;margin-bottom:18px}.service-detail-card h3{color:var(--green-900);font-size:25px;line-height:1.1;margin:0 0 12px}.service-detail-card p{color:#2d4035;font-size:17px;line-height:1.55;margin:0;font-weight:570}@media (max-width:950px){.service-detail-grid{grid-template-columns:1fr}.services-card .provide-head{min-height:86px}}@media (max-width:620px){.service-list{padding:24px}.provide-badge{width:78px;height:78px}.provide-badge img{width:64px;height:64px}.provide-badge::after{width:24px;height:24px;font-size:16px}}


.other-labs-card h3{margin-bottom:10px}
.other-lab-logos{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:0 0 18px}
.pseudo-logo{width:42px;height:42px;border-radius:12px;background:#fff;border:1px solid rgba(11,75,44,.16);box-shadow:0 8px 18px rgba(4,28,18,.08);display:grid;place-items:center;font-weight:950;font-size:14px;color:#3d4b43;letter-spacing:-.03em;position:relative;overflow:hidden}
.pseudo-logo::after{content:"";position:absolute;left:7px;right:7px;bottom:7px;height:4px;border-radius:99px;background:#aeb7b0;opacity:.85}
.pseudo-logo-a{border-radius:50%;font-family:Georgia,serif}
.pseudo-logo-a::after{background:#8a9490}
.pseudo-logo-b{border-radius:8px;color:#626b66}
.pseudo-logo-b::before{content:"";position:absolute;inset:5px;border:2px solid #c4cbc6;border-radius:6px}
.pseudo-logo-c{border-radius:14px;color:#58615c}
.pseudo-logo-c::after{background:linear-gradient(90deg,#8a9490,#c7cec9)}
.pseudo-logo-d{border-radius:50% 50% 45% 45%;color:#5e6762}
.pseudo-logo-d::after{background:#b5bdb8}

.labs-box .section-title{font-size:clamp(32px,3.6vw,50px)}
.labs-box p{max-width:560px}
.discretion-note{background:rgba(255,176,0,.12);border-left:4px solid var(--yellow);padding:12px 14px;border-radius:12px}


.lab-partner-panel{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:20px;min-height:100%;padding:34px 28px;border-left:2px solid rgba(255,176,0,.55)}
.lab-partner-panel .discretion-note{max-width:520px;margin:0;font-size:18px;line-height:1.45;font-weight:820;color:var(--green-800)}
.lab-partner-panel p{margin:0}
@media (max-width:950px){.lab-partner-panel{border-left:0;border-top:2px solid rgba(255,176,0,.55);padding:24px 0 0}}


/* --- 2026-08-09 header: deep-green bar with overhanging shield --------------
   The nav is now an inset bar in the brand green, sitting inside the white
   sticky header. The shield is sized larger than the bar and pulled with equal
   negative margins so it breaks out over the top and bottom edges without
   changing the bar's height -- nothing below the header moves.

   The shield could not overhang upward while the bar was flush with the
   viewport: the header is position:sticky at top:0, so anything above it is
   clipped off-screen. Insetting the bar creates the room.

   Source asset is trimmed to its artwork; the original file had ~25% empty
   margin, which is why the mark used to render small and cramped.
   To revert: delete this block and set the logo src back to
   assets/img/logo-full-shield-header.png
   -------------------------------------------------------------------------- */
.site-header{background:rgba(255,255,255,.95);padding:32px 0}
.header-inner{
  height:84px;
  margin:0 auto;
  padding:0 26px;
  background:linear-gradient(135deg,var(--green-800,#0d5233),var(--green-950,#062817));
  border-radius:16px;
  box-shadow:0 14px 30px rgba(4,28,18,.20);
}
.brand{align-self:center;position:relative;z-index:3}
.brand img{width:auto;height:140px;max-height:none;margin:-28px 0;
  filter:drop-shadow(0 6px 14px rgba(0,0,0,.28))}
.nav{color:#eaf3ed}
.nav a{color:#eaf3ed}
.nav a:not(.button):hover{color:#fff}
.nav a:not(.button)::after{background:var(--yellow,#FFB000)}
.nav .button{background:linear-gradient(135deg,var(--yellow,#FFB000),#ffca3d);
  color:var(--green-950,#062817);box-shadow:0 10px 20px rgba(255,176,0,.26)}
.nav .button:hover{box-shadow:0 13px 24px rgba(255,176,0,.34)}
.mobile-toggle{background:transparent;border-color:rgba(255,255,255,.38);color:#fff}

@media (max-width:950px){
  .site-header{padding:20px 0}
  .header-inner{height:70px;margin:0 auto;padding:0 18px}
  .brand img{width:auto;height:112px;max-height:none;margin:-21px 0}
  /* the mobile dropdown is a white panel, so its links go back to dark */
  .nav{position:absolute;left:22px;right:22px;top:112px;color:var(--green-900)}
  .nav a{color:var(--green-900)}
}
@media (max-width:620px){
  .site-header{padding:16px 0}
  .header-inner{height:64px;margin:0 auto}
  .brand img{height:96px;margin:-16px 0}
  .nav{top:100px}
}
