/* SafetySync typography: Cormorant Garamond headlines + DM Sans text (loaded last; overrides v2.css and page styles) */
/* Straight hyphens in headlines: Cormorant's hyphen is slanted, so borrow the hyphen glyph from a classic serif */
@font-face{font-family:'SS Dash';src:local('Georgia'),local('Times New Roman'),local('Noto Serif'),local('DejaVu Serif');unicode-range:U+002D,U+2010-2012}
:root{--f-serif:'SS Dash','Cormorant Garamond',Georgia,'Times New Roman',serif;--f-sans:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
body,button,input,select,textarea{font-family:var(--f-sans)}
h1,h2,h3,.num .k{font-family:var(--f-serif);font-variant-numeric:lining-nums;font-size-adjust:.5;letter-spacing:-.01em!important;text-wrap:balance}
h1,h2{font-weight:500!important;line-height:1.3!important}
h3,.num .k{font-weight:600!important;line-height:1.28!important}
h1 em,h2 em{font-style:italic;font-weight:500}
h4,summary,.byline{font-family:var(--f-sans);font-weight:600;letter-spacing:-.005em}
nav.primary a,.btn,.eyebrow,.tag,.k,.n,.foot-grid h5{font-family:var(--f-sans)}
.eyebrow,.svc .tag,.guardian-card .k,.tool-card .k,.cred .k,.foot-grid h5{letter-spacing:.16em}
.btn{font-weight:500;letter-spacing:.02em}

/* Bottom bar: full-width navy strip, small uppercase tracked text */
footer{padding-bottom:0!important}
.foot-base{background:var(--ink);border-top:1px solid rgba(200,155,60,.35)!important;box-shadow:0 0 0 100vmax var(--ink);clip-path:inset(0 -100vmax);margin-top:8px;padding:22px 0 20px!important;
  font-family:var(--f-sans);font-size:11px!important;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#a9b0c4!important;display:flex;justify-content:space-between;align-items:center;gap:10px 24px;flex-wrap:wrap}
.foot-base .foot-lines{color:var(--accent-2)}
.foot-base .foot-note{flex-basis:100%;font-size:10px;letter-spacing:.12em;color:#6f7896;border-top:1px solid rgba(255,255,255,.08);padding-top:14px;margin-top:6px}
@media(max-width:700px){.foot-base{flex-direction:column;align-items:flex-start}}

/* Compact menu for phones and tablets */
.mnav{display:none;position:relative;border:0!important;padding:0!important}
.mnav summary{list-style:none;cursor:pointer;font:600 15px var(--f-sans);padding:10px 18px;border:1px solid var(--ink);border-radius:999px;color:var(--ink);user-select:none}
.mnav summary::-webkit-details-marker{display:none}
.mnav summary::after{content:none!important;display:none!important}
.mnav summary{display:block;letter-spacing:0}
.mnav[open] summary{background:var(--ink);color:var(--paper)}
.mnav-panel{position:absolute;right:0;top:calc(100% + 10px);background:#fff;border:1px solid var(--rule);border-radius:14px;box-shadow:0 14px 36px rgba(24,36,72,.16);padding:8px;min-width:230px;display:flex;flex-direction:column;z-index:60}
.mnav-panel a{padding:12px 14px;border-radius:10px;font-size:16px;color:var(--ink-2)}
.mnav-panel a:hover,.mnav-panel a[aria-current]{background:var(--panel);color:var(--ink)}
.mnav-panel .mnav-cta{margin-top:6px;background:var(--ink);color:var(--accent-3);font-weight:600;text-align:center}
.mnav-panel .mnav-cta:hover{background:#0f1a38;color:var(--accent-3)}
@media(max-width:960px){
  nav.primary a:not(.btn){display:none}
  nav.primary{margin-left:auto;margin-right:12px}
  .mnav{display:block}
}
@media(max-width:560px){nav.primary{display:none}}

/* Keep long content inside narrow screens */
.prose-layout>*{min-width:0}

/* Keep the email address on one line in the footer */
.foot-grid a[href^="mailto"],.foot-grid a[data-email-link]{white-space:nowrap;font-size:14px}

/* Keep "Let's talk" orange even when it is the current page */
nav.primary a.btn.talk,nav.primary a.btn.talk[aria-current]{color:var(--accent-3)}
