
:root{--ink:#111d2b;--green:#b9d889;--olive:#4c682a;--muted:#586474;--line:#dce2da;--paper:#f6f7f2;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;line-height:1.65}
a{color:inherit;text-underline-offset:4px}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,p{margin:0 0 12px}
h1{font-size:clamp(30px,4vw,48px);line-height:1.07;letter-spacing:-.055em}
h2{font-size:clamp(24px,2.8vw,32px);line-height:1.15;letter-spacing:-.04em}
h3{font-size:18px;line-height:1.3}
p{color:var(--muted)}
.wrap{width:min(1160px,calc(100% - 48px));margin:auto}
.skip{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:10}
.skip:focus{top:8px}
header{border-bottom:1px solid var(--line);background:var(--paper)}
.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{font:700 28px Georgia,serif;text-decoration:none;letter-spacing:-1px;white-space:nowrap}
.brand span{color:var(--olive)}
.brand small{font:11px system-ui;display:block;letter-spacing:.02em;color:var(--muted)}
nav{display:flex;align-items:center;gap:26px;font-size:14px;font-weight:600}
nav a{text-decoration:none}
.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:6px;background:var(--ink);color:white;text-decoration:none;font-weight:650;font-size:14px;border:1px solid var(--ink);cursor:pointer;font-family:inherit}
.button.light{background:var(--green);color:var(--ink);border-color:var(--green)}
.button.outline{background:transparent;color:inherit;border-color:currentColor}
.actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:20px 0 14px}
.eyebrow{font-size:11px;letter-spacing:.15em;font-weight:750;text-transform:uppercase;color:var(--olive);margin-bottom:10px}
.hero{padding:36px 0 28px}
.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:32px;align-items:center}
.hero p{font-size:16px;max-width:640px}
.hero h1 em{font-style:normal;color:var(--olive)}
.small,.hero .small{font-size:13px}
.product{background:#e6ebdf;border:1px solid #ced7c6;border-radius:12px;padding:18px;box-shadow:0 24px 64px #12202b12;transform:rotate(1deg)}
.product-top{display:flex;justify-content:space-between;font-size:11px;font-weight:650;margin-bottom:14px}
.product img{border:1px solid var(--line);border-radius:5px}
.product figcaption{font-size:11px;color:var(--muted);margin-top:12px}
figure{margin:0}
.strip{border-block:1px solid var(--line);padding:16px 0}
.strip .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13px;font-weight:600}
.section{padding:32px 0}
.section-heading{max-width:660px;margin-bottom:20px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{padding:20px;background:white;border:1px solid var(--line);border-radius:9px}
.card p:last-child{margin-bottom:0}
.number{display:block;font:13px monospace;color:var(--olive);margin-bottom:12px}
.dark{background:var(--ink);color:white}
.dark p{color:#bac6ce}
.dark .eyebrow{color:var(--green)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.steps{padding:0;list-style:none;counter-reset:steps}
.steps li{counter-increment:steps;border-bottom:1px solid #ffffff24;padding:17px 0;display:flex;gap:20px;align-items:center}
.steps li:before{content:'0' counter(steps);font:12px monospace;color:var(--green)}
.offer{border:1px solid #c4d2b4;background:#e9efdf;padding:24px;border-radius:10px}
.offer .price{font-size:40px;letter-spacing:-.05em;font-weight:750;line-height:1.2}
.price small{font-size:16px;letter-spacing:0;font-weight:400}
.checklist{padding-left:20px;color:var(--muted)}
.checklist li{padding:5px 0}
.text-link{font-weight:650;font-size:14px}
.video{aspect-ratio:16/9;background:#0b1320;display:grid;place-content:center;text-align:center;border-radius:10px;padding:28px;color:white}
.video p{color:#bac6ce}
.video .play{font-size:38px;color:var(--green)}
.faq{max-width:820px}
.faq details{padding:12px 0;border-bottom:1px solid var(--line)}
summary{cursor:pointer;font-weight:650}
details p{margin:14px 0 0}
.cta{padding:28px;border-radius:12px;background:var(--ink);color:white}
.cta p{color:#bac6ce}
.page-title{max-width:800px}
.plans{align-items:stretch}
.plan{display:flex;flex-direction:column}
.plan.featured{background:#e9efdf;border-color:#a6bd89}
.plan .price{font-size:36px;letter-spacing:-.05em;font-weight:750}
.plan .button{margin-top:auto}
.pill{display:inline-block;color:var(--olive);font-size:11px;font-weight:750;letter-spacing:.07em;margin-bottom:18px}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}
th,td{padding:12px 14px;border-bottom:1px solid var(--line)}
thead{background:#e9efdf}
caption{text-align:left;font-weight:700;font-size:20px;margin:0 0 14px}
.booking{min-height:740px;background:white;border:1px solid var(--line);border-radius:10px}
.booking-note{padding:20px}
.success{padding:20px;background:#e9efdf;border-radius:8px;margin-bottom:20px}
footer{padding:44px 0 36px;border-top:1px solid var(--line);font-size:13px}
.foot{display:grid;grid-template-columns:220px 1fr;gap:40px;align-items:start}
.foot-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:0 24px}
:focus-visible{outline:3px solid #397fc0;outline-offset:5px}
[hidden]{display:none!important}
@media(max-width:800px){.hero-grid,.split{grid-template-columns:1fr;gap:36px}
.grid3{grid-template-columns:1fr}
.hero{padding:28px 0 20px}
.section{padding:24px 0}
.nav{flex-wrap:wrap;padding:18px 0;gap:16px}
nav{gap:16px;flex-wrap:wrap;font-size:13px}
nav .button{padding:10px 13px}
.product{transform:none}
.cta{padding:28px}
.wrap{width:calc(100% - 32px)}
th,td{padding:12px}
.booking{min-height:780px}
.strip .wrap{gap:12px 24px}
}
@media print{header,footer,.actions,.booking{display:none}
.section,.hero{padding:20px 0}
.dark,.cta{background:white;color:#111}
.dark p,.cta p{color:#333}
.grid3{grid-template-columns:repeat(3,1fr)}
.card{break-inside:avoid}
body{background:white}
}


nav a[aria-current="page"]:not(.button){color:var(--olive);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}
.workflow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media(max-width:1200px){nav{gap:18px;font-size:13px}nav .button{padding:11px 16px;font-size:13px}}
@media(max-width:1000px){.nav{flex-wrap:wrap;padding:18px 0}nav{flex-wrap:wrap;gap:14px}}
@media(max-width:800px){.workflow-grid{grid-template-columns:1fr}}

/* Calendly uses a percentage-height iframe: give its parent an explicit height. */
.booking{height:780px;min-width:0;position:relative;overflow:hidden}
.booking iframe{display:block;width:100%;height:100%;border:0}
@media(max-width:800px){.booking{height:900px}}

.foot-links a{display:block;padding:6px 0;line-height:1.4;color:var(--muted)}
.foot-links a:hover{color:var(--ink)}
.parent-logo img{max-width:120px;height:auto}
@media(max-width:900px){.foot{grid-template-columns:1fr}.foot-links{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.foot-links{grid-template-columns:repeat(2,1fr)}}

.match-example{background:var(--ink);color:#f1f5f9;padding:32px;border:1px solid #314356;border-radius:12px;min-width:0}
.match-example .eyebrow{display:block;color:#b9d889;margin-bottom:12px}
.match-example h3{font-size:26px;margin-bottom:8px}
.match-example p{color:#c0cbd5}
.match-example ul{list-style:none;padding:0;margin:28px 0}
.match-example-row{margin-bottom:24px}
.match-example-label{display:flex;justify-content:space-between;gap:16px;margin-bottom:10px}
.match-example-label strong{color:#b9d889}
.match-example-track{height:10px;border-radius:6px;overflow:hidden;background:#314356}
.match-example-track span{display:block;height:100%;border-radius:6px}
.match-example-track .high{background:#a5c970}
.match-example-track .partial{background:#f5b342}
.match-example-status{display:inline-block;margin-top:8px;font-size:12px;color:#dae6cf;background:#253a30;padding:3px 8px;border-radius:4px}
.match-example .match-example-note{font-size:12px;margin:0;line-height:1.6}
.faq summary{min-height:44px;padding:8px 0}
@media(max-width:480px){.match-example{padding:24px 20px}}

/* Compact the explanatory page without reducing body-text legibility. */
.workflow-page .hero{padding:44px 0 24px}
.workflow-page h1{font-size:clamp(30px,4vw,48px)}
.workflow-page .hero p{font-size:16px}
.workflow-page .section{padding:32px 0}
.workflow-page h2{font-size:clamp(24px,2.8vw,32px)}
.workflow-page p{margin-bottom:12px}
.workflow-page .eyebrow{margin-bottom:12px}
.workflow-page .split{gap:36px}
.workflow-page .section-heading{margin-bottom:10px;max-width:760px}
.workflow-page .workflow-grid{gap:16px}
.workflow-page .card{padding:20px}
.workflow-page .card h3{font-size:18px;margin-bottom:10px}
.workflow-page .number{margin-bottom:12px}
.workflow-page .match-example{width:100%;max-width:440px;justify-self:center;padding:22px 24px}
.workflow-page .match-example h3{font-size:20px;margin-bottom:4px}
.workflow-page .match-example figcaption p{font-size:12px;margin-bottom:0}
.workflow-page .match-example ul{margin:18px 0 14px}
.workflow-page .match-example-row{margin-bottom:12px}
.workflow-page .match-example-label{font-size:14px;margin-bottom:6px}
.workflow-page .match-example-track{height:7px}
.workflow-page .match-example-status{font-size:11px;padding:1px 6px;margin-top:4px}
.workflow-page .match-example-note{font-size:11px;margin:0}
.workflow-page .cta{padding:32px}
.workflow-faq-link{padding-top:16px}
@media(max-width:800px){.workflow-page .hero{padding-top:32px}.workflow-page .section{padding:24px 0}.workflow-page .split{gap:24px}.workflow-page .match-example{max-width:100%}}

/* Workflow step rows with screenshots */
.workflow-steps{display:flex;flex-direction:column;gap:32px;margin-top:8px}
.workflow-step{display:flex;gap:28px;align-items:center}
.workflow-step:nth-child(even){flex-direction:row-reverse}
.step-text{flex:0 0 36%;min-width:0}
.step-text .number{display:block;margin-bottom:14px}
.step-text h3{font-size:20px;margin-bottom:10px}
.step-text p{margin-bottom:0;font-size:15px;color:var(--sub)}
.step-screen{flex:1 1 0;min-width:0}
.step-screen img{width:100%;height:auto;border-radius:8px;border:1px solid var(--line);box-shadow:0 8px 32px #12202b0f}
@media(max-width:800px){.workflow-step,.workflow-step:nth-child(even){flex-direction:column;gap:20px}.step-text{flex:none;width:100%}}

.parent-brand{display:flex;align-items:center;gap:10px;margin-top:8px;flex-wrap:wrap}
.parent-logo{display:inline-flex;align-items:center;justify-content:center;min-height:0;padding:4px 8px;background:#fff;border:1px solid var(--line);border-radius:8px}
.parent-logo img{display:block;width:auto;height:18px}

/* Shared density and readable responsive defaults. */
body{font-size:15px}
.grid3>*{min-width:0}
.card h2{font-size:24px;letter-spacing:-.025em}
.hero+.section{padding-top:20px}
.section+.section:not(.dark){padding-top:20px}
.cta h2{font-size:clamp(23px,2.6vw,30px)}
.cta p{max-width:720px}
.page-title{max-width:960px}
.plan .price{line-height:1.3;margin-bottom:12px}
.plan .checklist{margin:0 0 14px}
.plan .pill{margin-bottom:10px}
.plan .button{min-height:44px}
.plan p{font-size:14px}
.steps{margin:0}
section[aria-label],section[id]{scroll-margin-top:20px}
@media(min-width:641px) and (max-width:1000px){.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{gap:24px}}
@media(max-width:640px){.grid3{grid-template-columns:1fr}.card{padding:18px}.actions{gap:12px}.hero h1{line-height:1.2}.cta{padding:22px}.offer{padding:20px}.nav nav a{min-height:44px;display:inline-flex;align-items:center}.hero p{font-size:16px}}

/* Outer page containers share the header gutter; constrain copy inside them. */
.wrap.page-title,.wrap.faq,.wrap.talent-intro{max-width:none}
.page-title h1,.page-title>p,.talent-intro>h1,.talent-intro>p{max-width:960px}
.hero{padding-top:36px}
.workflow-page .hero{padding-top:36px}
.nav>nav{flex-wrap:wrap;justify-content:flex-end;gap:16px}
.nav{padding-block:14px}
@media(max-width:1000px){.nav>nav{justify-content:flex-start}}
@media(max-width:800px){.hero,.workflow-page .hero{padding-top:28px}}

/* Keep the first text line at the same distance below every page header. */
.hero-grid{align-items:start}

.government-sources{margin-bottom:24px}.government-sources .grid3{margin-top:16px}.government-sources .card{font-size:14px}.news-search-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;margin:20px 0 12px}.news-search-controls label{display:block;font-size:13px;font-weight:650;margin-bottom:6px}.news-search-controls input,.news-search-controls select{width:100%;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:6px;font:inherit;background:#fff;color:var(--ink)}.news-record-note{font-size:13px}.news-grid .empty-state{grid-column:1/-1}@media(max-width:800px){.news-search-controls{grid-template-columns:1fr}}

.video-transcript{border-top:1px solid var(--line);padding-top:12px;min-width:0}.transcript-notice{font-size:13px;background:#fff4d6;color:#594719;padding:12px;border-radius:6px}.video-transcript input{width:100%;padding:10px;margin:12px 0;border:1px solid var(--line);border-radius:6px;font:inherit}.transcript-segments{max-height:360px;overflow:auto;overflow-wrap:anywhere;padding-right:8px}.transcript-segments p{font-size:14px;line-height:1.6}

/* An open transcript gets its own full-width row; neighboring cards flow below. */
.news-card:has(>.video-transcript[open]){grid-column:1/-1;padding:28px 32px}
.news-card:has(>.video-transcript[open])>.news-title{font-size:20px;line-height:1.4}
.news-card:has(>.video-transcript[open])>.news-record-note{max-width:95ch}
.video-transcript>summary{min-height:44px;display:list-item;padding:8px 0}
.video-transcript[open]>summary{color:var(--olive);margin-bottom:8px}
.video-transcript[open] .transcript-segments{max-height:min(65vh,720px);padding:12px 24px 12px 0;scrollbar-gutter:stable}
.transcript-segments p{font-size:16px;line-height:1.85;max-width:110ch;margin-bottom:22px}
.transcript-segments p>a,.transcript-segments p>strong{font-size:13px;white-space:nowrap;margin-right:10px;color:var(--olive)}
@media(max-width:640px){.news-card:has(>.video-transcript[open]){padding:20px}.video-transcript[open] .transcript-segments{max-height:65vh;padding-right:8px}.transcript-segments p{font-size:15px;line-height:1.75}}

/* Marketing navigation: native disclosures support touch and keyboard use. */
.site-navigation .nav-group{position:relative}
.site-navigation .nav-group>summary{display:flex;align-items:center;gap:7px;min-height:44px;padding:8px 0;list-style:none;font-size:inherit;font-weight:600;white-space:nowrap;border:0}
.site-navigation .nav-group>summary::-webkit-details-marker{display:none}
.site-navigation .nav-chevron{font-size:14px;transition:transform .15s}
.site-navigation .nav-group[open] .nav-chevron{transform:rotate(180deg)}
.site-navigation .nav-group-current>summary,.site-navigation .nav-group>summary:hover{color:var(--olive)}
.site-navigation .nav-submenu{position:absolute;top:100%;left:-16px;z-index:100;min-width:240px;padding:8px;background:var(--paper);border:1px solid var(--line);border-radius:9px;box-shadow:0 12px 28px #12202b1a}
.site-navigation .nav-submenu a{display:flex;align-items:center;min-height:44px;padding:10px 12px;border-radius:5px;font-size:14px;line-height:1.4;white-space:normal}
.site-navigation .nav-submenu a:hover,.site-navigation .nav-submenu a[aria-current="page"]{background:#e9efdf;color:var(--olive);text-decoration:none}
.site-navigation>.nav-group:last-of-type .nav-submenu{left:auto;right:0}
@media(max-width:800px){
 .nav>.site-navigation{display:grid;grid-template-columns:1fr;width:100%;gap:0;align-items:stretch}
 .site-navigation>a:not(.button),.site-navigation .nav-group>summary{min-height:44px;padding:10px 0;width:100%}
 .site-navigation .nav-group>summary{justify-content:space-between}
 .site-navigation .nav-group{border-bottom:1px solid var(--line)}
 .site-navigation .nav-submenu,.site-navigation>.nav-group:last-of-type .nav-submenu{position:static;min-width:0;width:100%;border:0;border-radius:0;box-shadow:none;padding:0 0 8px 12px;background:transparent}
 .site-navigation>.button{margin-top:12px;justify-self:start}
}

/* Footer mirrors the header's Product, Solutions and Resources groups. */
.foot>.footer-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start;font-size:13px;font-weight:400}
.footer-navigation section{min-width:0}
.footer-navigation h2{font-size:13px;line-height:1.5;letter-spacing:0;font-weight:700;margin:0 0 10px}
.footer-navigation a{overflow-wrap:anywhere}
.footer-navigation a[aria-current="page"]{color:var(--olive);font-weight:650;text-decoration:underline}
.footer-utility{display:flex;justify-content:space-between;gap:16px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
.footer-primary-links,.footer-legal-links{display:flex;flex-wrap:wrap;gap:8px 24px}
.footer-utility a{display:inline-flex;align-items:center;min-height:44px;line-height:1.4}
@media(max-width:600px){.foot>.footer-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.footer-utility{flex-direction:column}.footer-navigation a{min-height:44px;display:flex;align-items:center}}
@media(max-width:360px){.foot>.footer-navigation{grid-template-columns:1fr}}

.contact-layout{align-items:start}
.contact-form{display:flex;flex-direction:column;gap:8px;min-width:0}
.contact-form label{font-size:13px;font-weight:650;margin-top:8px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;font:inherit;background:white;color:var(--ink)}
.contact-form textarea{resize:vertical}
.contact-form .button{align-self:start;margin-top:8px}
.contact-owner{margin-top:24px}
.contact-form #contact-status{margin-top:8px}

/* Billing choice makes the full annual prepayment visible, not only an equivalent. */
.billing-selector { padding: 0 0 24px; }
.billing-toggle { display: inline-flex; align-items: stretch; gap: 4px; position: relative; max-width: 100%; min-width: 0; border: 0; border-radius: 18px; padding: 6px; margin: 0 0 14px; background: #efefed; }
.billing-toggle legend { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.billing-toggle label { position: relative; display: inline-flex; justify-content: center; gap: 10px; align-items: center; min-height: 54px; border: 0; border-radius: 13px; padding: 12px 24px; cursor: pointer; font-size: 20px; font-weight: 700; line-height: 1.3; color: var(--muted, #667085); transition: background-color .15s ease, color .15s ease, box-shadow .15s ease; }
.billing-toggle label:has(input:checked) { background: #fff; color: var(--ink, #14202d); box-shadow: 0 1px 4px #14202d0a; }
.billing-toggle label:has(input:focus-visible) { outline: 2px solid var(--olive); outline-offset: 2px; }
.billing-toggle input { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: inset(50%); }
.billing-toggle label:has(input:disabled) { cursor: default; }
.billing-saving { font-size: 11px; font-weight: 700; color: var(--olive); background: #e6ebdf; border-radius: 20px; padding: 4px 8px; white-space: nowrap; }
@media(max-width:480px) { .billing-toggle label { padding: 12px 16px; font-size: 18px; gap: 6px; } .billing-saving { font-size: 10px; padding: 4px 6px; } }
.price-billing-note { min-height: 56px; }
.grid2 { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
#compliance { scroll-margin-top: 24px; }
@media(max-width:760px) { .grid2 { grid-template-columns: minmax(0,1fr); } .price-billing-note { min-height: 0; } }

.overview-print-pricing { display: none; }
@media print {
  .product-overview-page header, .product-overview-page footer,
  .product-overview-page .actions, .product-overview-page .text-link { display: none !important; }
  .product-overview-page main > section:not(.hero):not(#use-cases):not(#compliance) { display: none !important; }
  .product-overview-page .wrap { width: 100%; }
  .product-overview-page .hero, .product-overview-page .section { padding: 8px 0; }
  .product-overview-page h1 { font-size: 25px; }
  .product-overview-page h2 { font-size: 16px; }
  .product-overview-page h3 { font-size: 11px; }
  .product-overview-page p, .product-overview-page .hero p { font-size: 10px; line-height: 1.45; margin-bottom: 6px; }
  .product-overview-page .eyebrow { font-size: 8px; margin-bottom: 5px; }
  .product-overview-page .grid3 { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
  .product-overview-page .grid2 { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 8px !important; }
  .product-overview-page .card { padding: 9px; break-inside: avoid; }
  .product-overview-page .overview-print-pricing { display: block; border-top: 1px solid var(--line); padding-top: 8px; font-size: 10px; }
}
