/* Shared visual system: navy, porcelain, safety orange, and restrained product accents. */
:root { --site-navy:#091c27; --site-panel:#102a38; --site-paper:#f5f7f8; --site-white:#ffffff; --site-ink:#16313f; --site-muted:#a5b9c4; --site-orange:#f3a34c; --site-line:#29404d; --site-font:"Segoe UI Variable", "Segoe UI", Arial, sans-serif; }
html { scroll-behavior:smooth; scroll-padding-top:100px; }
body { margin:0; font-family:var(--site-font); }
* { box-sizing:border-box; }
img { max-width:100%; }
a { color:inherit; }
.site-container { width:min(1200px, calc(100% - 80px)); margin-inline:auto; }
.site-header { position:sticky; top:0; z-index:50; background:rgba(9,28,39,.97); border-bottom:1px solid var(--site-line); color:#fff; }
.site-nav { min-height:84px; display:flex; align-items:center; gap:32px; justify-content:space-between; }
.site-brand { display:inline-flex; align-items:center; gap:10px; color:#fff; font-size:20px; font-weight:650; letter-spacing:-.5px; text-decoration:none; white-space:nowrap; }
.site-brand img { display:block; border-radius:5px; }
.site-desktop-links { display:flex; gap:28px; align-items:center; }
.site-desktop-links a { font-size:14px; text-decoration:none; color:#d2dee4; padding-block:16px; }
.site-desktop-links a:hover, .site-footer a:hover { color:var(--site-orange); }
.site-button, .fieldcert-landing .site-button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 22px; border:1px solid var(--site-orange); border-radius:7px; color:#14222a; background:var(--site-orange); text-decoration:none; font:600 15px/1.3 var(--site-font); letter-spacing:0; text-transform:none; box-shadow:none; }
.site-button:hover { background:#ffb969; }
.site-button-secondary { background:transparent; color:#fff; border-color:#6f8794; }
.site-button-secondary:hover { background:#163443; }
.site-nav-cta { min-height:42px; font-size:14px; padding:10px 17px; }
.site-actions { display:flex; gap:14px; align-items:center; flex-wrap:wrap; margin:28px 0 22px; }
.site-inline-link { font-size:15px; font-weight:600; text-decoration:underline; text-underline-offset:5px; color:inherit; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline:3px solid #6dc5f4; outline-offset:5px; }
.skip-link { position:fixed; top:8px; left:8px; transform:translateY(-150%); z-index:100; padding:12px 20px; background:#fff; color:#102a38; }
.skip-link:focus { transform:translateY(0); }
.site-mobile-menu { display:none; }
.site-kicker { font-size:14px; font-weight:600; line-height:1.5; color:var(--site-orange); margin:0 0 22px; }
.site-home { background:var(--site-navy); color:#fff; }
.site-home h1, .site-home h2, .site-home h3, .site-home h4 { font-weight:600; letter-spacing:-.04em; margin:0; text-wrap:balance; }
.site-home h1 { font-size:clamp(42px,4.4vw,64px); line-height:1.07; max-width:650px; }
.site-home h2 { font-size:clamp(34px,3.6vw,48px); line-height:1.14; }
.site-home h3 { font-size:34px; line-height:1.16; }
.site-home h4 { font-size:19px; letter-spacing:-.015em; }
.home-hero { display:grid; grid-template-columns:1.08fr 1fr; align-items:center; gap:60px; padding-block:76px 72px; }
.home-hero > * { min-width:0; }
.site-lede { margin:26px 0 12px; font-size:21px; line-height:1.5; color:#e0e8eb; }
.home-description { max-width:470px; font-size:17px; line-height:1.65; color:var(--site-muted); margin:0; }
.home-hero .site-inline-link { color:#c2d3dc; font-size:14px; }
.home-product-preview { margin:0; padding:24px 24px 16px; border:1px solid #33505f; background:#12303f; border-radius:14px; box-shadow:0 28px 65px #0004; }
.home-product-preview figcaption { display:flex; justify-content:space-between; align-items:center; gap:10px; font-size:12px; color:#b7cbd6; }
.home-product-preview figcaption > span:first-child { display:flex; align-items:center; gap:9px; color:#fff; font-size:17px; font-weight:600; }
.home-preview-screens { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:24px; }
.home-preview-screens > div { min-width:0; }
.home-preview-screens span { display:block; margin-bottom:10px; font-size:12px; color:#c5d7df; }
.home-preview-screens img { display:block; width:100%; height:auto; border:4px solid #071924; border-radius:12px; }
.home-product-preview > p { color:#a5becb; font-size:11px; margin:14px 0 0; text-align:center; }
.home-context { border-block:1px solid var(--site-line); }
.home-context > div { display:flex; justify-content:space-between; gap:24px; padding-block:22px; font-size:13px; color:#b0c2cc; }
.home-products { background:var(--site-paper); color:var(--site-ink); padding:86px 0 28px; }
.home-products .site-kicker, .home-resources .site-kicker { color:#876029; }
.home-section-heading > p:last-child { color:#546876; font-size:18px; line-height:1.6; margin-top:20px; }
.home-product-row { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; padding-block:64px; border-bottom:1px solid #d7e0e5; }
.home-product-name { display:flex; align-items:center; gap:12px; font-size:19px; font-weight:650; margin-bottom:24px; }
.home-product-copy > p { color:#506675; font-size:17px; line-height:1.7; max-width:540px; }
.home-product-copy ul { padding-left:20px; color:#334f60; font-size:15px; line-height:2; }
.home-product-copy .site-actions { gap:24px; }
.home-workflow { padding:36px; background:#fff; border:1px solid #d7e0e5; border-radius:12px; }
.home-workflow ol { list-style:none; margin:0; padding:0; }
.home-workflow li { display:flex; gap:18px; margin-bottom:24px; }
.home-workflow li > span { flex:0 0 32px; height:32px; display:grid; place-items:center; border:1px solid #cad8df; border-radius:50%; font-size:13px; }
.home-workflow p:not(.site-kicker) { color:#586e7b; font-size:15px; line-height:1.6; margin:8px 0 0; }
.home-workflow > a { display:block; padding-top:24px; border-top:1px solid #dbe3e8; font-size:14px; text-underline-offset:4px; }
.home-certready-row { grid-template-columns:.9fr 1.15fr; gap:54px; }
.home-audiences { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:28px; }
.home-audiences p { color:#506675; font-size:15px; line-height:1.6; }
.home-audiences .site-inline-link { font-size:14px; }
.home-dashboard { margin:0; min-width:0; }
.home-dashboard img { display:block; border:1px solid #beced7; border-radius:8px; width:100%; height:auto; box-shadow:0 18px 42px #102a3812; }
.home-dashboard figcaption { font-size:12px; color:#627986; text-align:center; margin-top:16px; }
.home-future { display:flex; justify-content:flex-end; gap:22px; padding-top:26px; font-size:12px; color:#657985; }
.home-future span:first-child { margin-right:auto; }
.home-resources { display:grid; grid-template-columns:1fr 1fr; gap:90px; padding-block:90px; }
.home-resources .site-kicker { color:var(--site-orange); }
.home-resources h2 { margin-bottom:25px; }
.home-resource-links > a { display:block; text-decoration:none; padding:26px 0; border-bottom:1px solid var(--site-line); }
.home-resource-links > a:first-child { padding-top:0; }
.home-resource-links span { font-size:12px; color:var(--site-muted); }
.home-resource-links h3 { font-size:24px; margin:10px 0; }
.home-resource-links p { color:var(--site-muted); line-height:1.6; font-size:15px; margin:0; }
.home-resource-links a:hover h3 { color:var(--site-orange); }
.home-about { padding-block:72px; background:#12303f; border-block:1px solid var(--site-line); }
.home-about > div { display:grid; grid-template-columns:1fr 1fr; gap:90px; }
.home-about p:not(.site-kicker) { margin:0 0 20px; font-size:17px; line-height:1.7; color:#c1d0d8; }
.site-footer, .fieldcert-landing .site-footer { padding:60px 0 24px; background:#081923; color:#a5b9c4; font:14px/1.7 var(--site-font); letter-spacing:0; text-transform:none; }
.site-footer-grid { display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr; gap:32px; }
.site-footer p { font-size:14px; color:#a5b9c4; margin:16px 0; }
.site-footer nav { display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.site-footer nav strong { color:#fff; font-size:14px; margin-bottom:6px; font-weight:600; }
.site-footer nav a { color:#b7cbd5; text-decoration:none; font-size:13px; }
.site-footer .site-small { font-size:12px; }
.site-footer-bottom { border-top:1px solid #253c49; display:flex; justify-content:space-between; margin-top:38px; padding-top:22px; font-size:12px; }
/* Product pages share typography and chrome; their existing form behavior and layouts stay intact. */
.worker-landing, .teams-page, .fieldcert-landing { font-family:var(--site-font); background:#091c27; }
.worker-landing h1, .teams-page h1, .fieldcert-landing h1 { font-family:var(--site-font); text-transform:none; font-stretch:normal; font-size:clamp(40px,4.4vw,62px); line-height:1.1; font-weight:600; letter-spacing:-.04em; text-wrap:balance; }
.worker-landing h2, .teams-page h2, .fieldcert-landing h2 { font-family:var(--site-font); text-transform:none; font-size:clamp(30px,3.4vw,44px); line-height:1.16; font-weight:600; letter-spacing:-.035em; text-wrap:balance; overflow-wrap:normal; }
.worker-landing h3, .teams-page h3, .fieldcert-landing h3 { font-family:var(--site-font); text-transform:none; line-height:1.2; font-weight:600; letter-spacing:-.02em; }
.worker-landing h1 span, .worker-landing h2 span, .teams-page h2 span { color:inherit; }
.worker-landing .hero, .teams-page .teams-hero, .fieldcert-landing .fieldcert-hero-grid { min-height:0; padding-block:64px; gap:60px; }
.worker-landing .hero { grid-template-columns:1fr .6fr; }
.teams-page .teams-hero { grid-template-columns:1fr 1.15fr; }
.fieldcert-landing .fieldcert-hero-grid { grid-template-columns:1fr .6fr; }
.fieldcert-landing .fieldcert-hero { background:#102a38; }
.fieldcert-landing .fieldcert-hero::after, .phone-shot::before, .dashboard-shot::before { display:none; }
.worker-landing .phone-shot { max-width:300px; justify-self:center; border-radius:12px; overflow:hidden; }
.worker-landing .phone-shot img { margin:0; }
.fieldcert-landing .fieldcert-hero-device { max-width:290px; }
.teams-dashboard-shot { transform:none; }
.worker-landing .eyebrow, .teams-page .eyebrow, .fieldcert-landing .fieldcert-eyebrow, .section-label, .screen-label, .fieldcert-landing .fieldcert-kicker, .fieldcert-landing .fieldcert-device figcaption { text-transform:none; letter-spacing:.01em; font-weight:600; font-size:13px; line-height:1.5; }
.worker-landing .button, .teams-page .button, .fieldcert-landing .fieldcert-button { font-family:var(--site-font); text-transform:none; letter-spacing:0; font-size:15px; font-weight:600; line-height:1.4; border-radius:7px; box-shadow:none; }
.fieldcert-landing .fieldcert-button:hover { transform:none; }
.worker-landing .hero-copy, .teams-page .hero-copy { font-family:var(--site-font); font-size:18px; line-height:1.65; }
.worker-price, .fieldcert-landing .fieldcert-note, .proof-list li, summary, .fieldcert-landing summary, .flow-grid strong { text-transform:none; letter-spacing:0; line-height:1.5; }
.worker-landing .feature-card, .teams-page .feature-card { min-height:0; border-radius:8px; border-top-width:1px; }
.worker-landing .feature-card h3, .teams-page .feature-card h3 { margin-top:28px; font-size:25px; }
.teams-page .teams-request-card { border-radius:10px; border-top-width:1px; }
.teams-request-card::before { display:none; }
.teams-request-card label, .fieldcert-landing #request-demo label { text-transform:none; font:600 14px/1.4 var(--site-font); letter-spacing:0; }
.teams-request-card input, .teams-request-card select, .teams-request-card textarea, .fieldcert-landing #request-demo input, .fieldcert-landing #request-demo select, .fieldcert-landing #request-demo textarea { border-radius:5px; font-size:16px; }
.site-related { padding-block:54px; border-top:1px solid #29404d; }
.site-related h2 { font-size:30px; }
.site-related p { color:#b7cbd5; line-height:1.6; }
.site-related .site-inline-link { color:#e4edf1; }
@media (max-width:1000px) {
  .site-container { width:calc(100% - 48px); }
  .site-desktop-links { gap:18px; }
  .site-nav { gap:20px; }
  .home-hero { gap:32px; }
  .home-product-row, .home-about > div, .home-resources { gap:44px; }
  .home-preview-screens { gap:12px; }
  .home-product-preview { padding:18px; }
  .teams-page .teams-hero { grid-template-columns:1fr; }
  .site-footer-grid { grid-template-columns:1fr 1fr; gap:36px; }
}
@media (max-width:760px) {
  .site-container { width:calc(100% - 40px); }
  .site-nav { min-height:72px; gap:16px; }
  .site-brand { font-size:18px; }
  .site-brand img { width:34px; height:34px; }
  .site-desktop-links, .site-nav-cta, .fieldcert-landing .site-nav-cta { display:none; }
  .site-mobile-menu { display:block; border:0; position:relative; }
  .site-mobile-menu summary { padding:12px; font:600 14px/1.4 var(--site-font); text-transform:none; cursor:pointer; color:#fff; }
  .site-mobile-menu > div { position:absolute; top:54px; right:0; width:min(300px,calc(100vw - 40px)); padding:12px; background:#12303f; border:1px solid #456071; border-radius:8px; box-shadow:0 18px 40px #0005; }
  .site-mobile-menu a { display:block; padding:12px; font-size:15px; text-decoration:none; color:#fff; }
  .home-hero { grid-template-columns:1fr; gap:42px; padding-block:42px; }
  .site-home h1 { font-size:44px; max-width:600px; }
  .site-lede { font-size:19px; margin-top:22px; }
  .home-description { font-size:16px; }
  .home-product-preview { max-width:480px; width:100%; justify-self:center; }
  .home-preview-screens { gap:18px; }
  .home-preview-screens img { max-height:370px; object-fit:contain; background:#fff; }
  .home-context > div { flex-wrap:wrap; justify-content:flex-start; gap:12px 24px; font-size:12px; }
  .home-products { padding-top:54px; }
  .home-product-row, .home-about > div, .home-resources { grid-template-columns:1fr; gap:32px; }
  .home-product-row { padding-block:44px; }
  .home-workflow { padding:26px; }
  .home-products h3 { font-size:30px; }
  .home-future { gap:16px; flex-wrap:wrap; font-size:11px; }
  .home-resources, .home-about { padding-block:54px; }
  .site-footer { padding-top:42px; }
  .site-footer-grid { gap:28px 18px; }
  .site-footer-grid > div { grid-column:1 / -1; }
  .site-footer nav a { font-size:13px; }
  .worker-landing .hero, .teams-page .teams-hero, .fieldcert-landing .fieldcert-hero-grid { grid-template-columns:1fr; gap:36px; padding-block:40px; }
  .worker-landing h1, .teams-page h1, .fieldcert-landing h1 { font-size:40px; line-height:1.12; overflow-wrap:normal; }
  .worker-landing .hero-actions, .teams-page .hero-actions { margin-top:26px; }
  .worker-landing .hero-actions .button, .teams-page .hero-actions .button { width:100%; }
  .site-related h2 { font-size:28px; }
}
@media (max-width:380px) {
  .site-home h1 { font-size:38px; }
  .site-actions .site-button { width:100%; }
  .home-audiences { grid-template-columns:1fr; }
  .site-footer-grid { grid-template-columns:1fr; }
  .home-product-preview figcaption { flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

/* Readable, crawlable resources with no script dependency. */
.resource-page { background:#f5f7f8; color:#16313f; }
.resource-main { padding-block:64px 84px; }
.resource-main .site-kicker { color:#876029; }
.resource-main h1 { max-width:850px; font:600 clamp(36px,4.5vw,60px)/1.1 var(--site-font); letter-spacing:-.04em; text-wrap:balance; margin:0 0 24px; }
.resource-intro { max-width:760px; font-size:20px; line-height:1.65; color:#506675; }
.resource-breadcrumb { display:flex; gap:14px; flex-wrap:wrap; margin-bottom:35px; font-size:13px; color:#5a7180; }
.resource-cards { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-top:36px; }
.resource-cards article { padding:32px; border:1px solid #cddae2; border-radius:10px; background:#fff; }
.resource-main h2 { font-size:30px; font-weight:600; letter-spacing:-.025em; line-height:1.25; margin:0 0 18px; }
.resource-main h3 { font-size:22px; font-weight:600; line-height:1.3; }
.resource-cards p { line-height:1.65; color:#506675; }
.resource-note { font-size:13px; line-height:1.6; color:#5d7381; }
.resource-body { max-width:850px; }
.resource-body section { padding-top:42px; }
.resource-body p, .resource-body li, .resource-checklist { font-size:17px; line-height:1.75; color:#405b6b; }
.resource-body li { margin-bottom:12px; }
.resource-checklist { margin:24px 0; }
.resource-checklist > div { display:grid; grid-template-columns:180px 1fr; gap:24px; border-top:1px solid #cddae2; padding:20px 0; }
.resource-checklist dt { font-weight:650; color:#16313f; }
.resource-checklist dd { margin:0; }
.resource-example { padding:18px 28px; border-left:3px solid #d99647; background:#fff; }
.resource-next { margin-top:40px; border-top:1px solid #cddae2; }
@media (max-width:760px) { .resource-main { padding-block:38px 54px; } .resource-main h1 { font-size:38px; } .resource-intro { font-size:18px; } .resource-cards { grid-template-columns:1fr; gap:18px; } .resource-cards article { padding:24px; } .resource-checklist > div { grid-template-columns:1fr; gap:8px; } }
