:root{--navy:#101d37;--muted:#5e6f89;--line:#dce5f0;--teal:#1686dc;--teal-dark:#1166b6;--mist:#f3f6fc;color-scheme:light}
body,.tool-body,.legal-page{background:#f3f6fc;color:#101d37}
.site-header{background:#fff;border-bottom-color:#dce5f0}
.brand-lockup{display:block;width:190px;height:auto;max-height:43px}
.wordmark{gap:0;flex:0 0 auto}
.site-footer{background:#081329;border-top:0;color:#d4e1f7;padding-block:18px}
.footer-wordmark{display:inline-flex;align-items:center;flex:0 0 auto}
.brand-lockup-footer{display:block;width:168px;height:auto;max-height:37px}
.footer-links a{color:#d4e1f7}
.tool-button,.tool-download,.hero-button{background:#147dd0}
.tool-button:hover,.tool-download:hover,.hero-button:hover{background:#105ca8}
.tool-button.secondary{background:#e8f0fb;color:#164f87}
.tool-tab.is-active{background:#147dd0;border-color:#147dd0}
.tool-dropzone:hover,.tool-dropzone:focus-within{border-color:#147dd0;background:#f0f6ff}
.guide-example{background:#eef3fb;border-left-color:#7757df}
.use-guide{border-color:#cfd9e8}
.media-faq details,.tool-info,.tool-hero{border-color:#d8e2ef}
.tool-hero h1 span{color:#147dd0}
.tool-card,.legal-card{border-color:#dce5f0}
.tool-field input:focus,.tool-field select:focus{border-color:#147dd0;outline-color:#d6e9fc}
.tool-info{border-top-color:#187fd2}
.site-header .header-link,.site-header nav a{color:#175f9f}
.skip-link:focus{border:1px solid #1686dc}

.home-page{background:#f3f6fc}
.home-page .site-header{padding:16px clamp(22px,5.5vw,84px)}
.home-intro{position:relative;isolation:isolate;overflow:hidden;max-width:none;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:clamp(42px,7vw,100px);padding:76px max(24px,calc((100vw - 1120px)/2)) 70px;background:#071329;color:#f5f8ff}
.home-intro:after{position:absolute;z-index:-1;right:12%;top:-280px;width:650px;height:650px;border:1px solid rgba(43,162,236,.17);border-radius:50%;box-shadow:0 0 0 52px rgba(43,162,236,.035),0 0 0 110px rgba(117,85,245,.035);content:"";pointer-events:none}
.home-page .eyebrow{color:#42cfdf}
.home-intro h1{color:#f5f8ff}
.home-intro h1 em{background:linear-gradient(95deg,#20d2ca 4%,#178eea 52%,#8b74ff 97%);background-clip:text;-webkit-background-clip:text;color:transparent}
.intro-copy{color:#bdcce3}
.intro-note{color:#91a4c3}
.browse-button{background:linear-gradient(105deg,#167cdb,#176bc4);border:1px solid rgba(113,198,255,.24)}
.quick-start{border-top:1px solid #4779a2}
.quick-start>a{color:#f1f6ff;border-bottom-color:rgba(168,193,226,.19)}
.quick-start a>span{color:#7e9aba}
.quick-start small{color:#4fd3d8}
.quick-start>a:hover strong{color:#65d7f1}
.directory-title>p,.directory-title+ p,.directory #directoryCount{color:#596c88}
.directory-item{color:#142540;border-color:#dce4ef}
.directory-item:hover{background:#e9f1fb}
.directory-item small{color:#216bb0}
.directory-item p{color:#5a6c83}
.item-number{color:#745fe0}
.directory-controls input,.directory-controls select{border-color:#ccd8e8;color:#142540}
.home-notes{border-color:#dce4ef}
.home-notes p{color:#5a6c83}
.home-notes a{color:#176ab1}
.home-page .site-footer{padding:22px clamp(22px,5.5vw,84px)}
@media(max-width:760px){.home-page .site-header{padding:13px 18px}.brand-lockup{width:166px}.brand-lockup-footer{width:148px}.home-intro{grid-template-columns:1fr;gap:26px;padding:40px 23px 46px}.home-intro:after{right:-370px;top:-230px}.quick-start{max-width:560px;width:100%}}

/* Security Vault product banner on the Tools homepage. */
.vault-promo{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:36px;align-items:center;max-width:1132px;margin:32px auto;padding:32px 38px;border:1px solid #c9d9ed;border-radius:16px;background:linear-gradient(112deg,#f9fbff,#e8f1fd);box-shadow:0 14px 35px rgba(13,41,82,.06)}
.vault-promo .eyebrow{margin:0;color:#385fbe}
.vault-promo h2{margin:10px 0 12px;color:#102448;font-size:clamp(27px,3vw,36px);line-height:1.13;letter-spacing:-.04em}
.vault-promo-copy>p:not(.eyebrow){max-width:62ch;margin:0;color:#52647d;font-size:14px;line-height:1.7}
.vault-promo-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px}
.vault-promo-actions a{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:42px;padding:0 16px;border-radius:6px;font-size:13px;font-weight:650;text-decoration:none;transition:background-color .15s,border-color .15s,transform .15s}
.vault-promo-actions a:hover{transform:translateY(-1px)}
.vault-promo-primary{background:#176bc4;color:#fff}
.vault-promo-primary:hover{background:#105aa7}
.vault-promo-secondary{border:1px solid #b9cde4;color:#155c9f;background:#fff}
.vault-promo-secondary:hover{border-color:#6c9bcf;background:#f6faff}
.home-intro{row-gap:18px}
.hero-social{grid-column:1/-1;justify-self:stretch;display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 18px;color:#77dbf4;font-size:13px;font-weight:650;text-decoration:none;border:1px solid rgba(119,219,244,.36);background:rgba(33,113,188,.1)}
.hero-social:hover,.hero-social:focus-visible{color:#fff;border-color:#77dbf4;background:rgba(33,113,188,.2)}
.vault-promo-visual{display:grid;place-items:center}
.vault-promo-visual img{display:block;width:min(100%,160px);height:auto;border-radius:22px;box-shadow:0 12px 30px rgba(6,39,95,.18)}
@media(max-width:760px){.vault-promo{grid-template-columns:minmax(0,1fr) 90px;gap:15px;margin:20px 18px;padding:22px;border-radius:12px}.vault-promo-visual img{border-radius:14px}}
@media(max-width:530px){.vault-promo{grid-template-columns:1fr}.vault-promo-visual{grid-row:1;justify-content:start}.vault-promo-visual img{width:70px}.vault-promo-actions a{width:100%}}
@media(prefers-reduced-motion:reduce){.vault-promo-actions a{transition:none}.vault-promo-actions a:hover{transform:none}}

/* Editorial guides on the homepage. */
.home-guides{max-width:1132px;margin:26px auto 68px;padding:0 18px}
.home-guides-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px;padding-top:32px;border-top:1px solid #dce4ef}
.home-guides-head .eyebrow{margin:0 0 10px;color:#1b6caf}
.home-guides-head h2{max-width:14ch;margin:0;color:#102443;font-size:clamp(29px,3.3vw,42px);line-height:1.08;letter-spacing:-.045em}
.home-guides-head>a{color:#176ab3;font-size:13px;font-weight:750;text-decoration:none;white-space:nowrap}
.home-guides-head>a:hover{text-decoration:underline}
.home-guides-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.home-guides-grid>a{display:flex;flex-direction:column;min-height:166px;padding:22px;border:1px solid #d6e1ee;border-radius:10px;background:#fff;color:#102443;text-decoration:none;transition:border-color .15s,transform .15s}
.home-guides-grid>a:hover,.home-guides-grid>a:focus-visible{border-color:#99c2e8;transform:translateY(-2px)}
.home-guides-grid small{color:#276fac;font-size:10px;font-weight:800;letter-spacing:.1em}
.home-guides-grid strong{margin:13px 0 7px;font-size:18px;line-height:1.25;letter-spacing:-.025em}
.home-guides-grid span{margin-top:auto;color:#60738e;font-size:12px;line-height:1.45}
@media(max-width:760px){.home-guides{margin:34px 18px 52px;padding:0}.home-guides-head{align-items:start;flex-direction:column;gap:14px}.home-guides-grid{grid-template-columns:1fr}.home-guides-grid>a{min-height:0}}
@media(prefers-reduced-motion:reduce){.home-guides-grid>a{transition:none}.home-guides-grid>a:hover{transform:none}}
@media(max-width:530px){.home-page .site-header{padding-inline:14px;gap:12px}.home-page .brand-lockup{width:132px}.home-page .site-header nav{gap:12px}.home-page .site-header nav a{font-size:12px}.home-page .site-header nav a[href="about.html"]{display:none}}
