/* insuranceagencyvirtualassistant.com — navy direction (Tyler, 2026-10-15), built with the taste skill.
   Newsreader for headings, Hanken Grotesk for text. One ground (stone), one dark field (navy), one ink.
   No eyebrows, gradients, shadows or hairlines outside tables and interface fragments ([data-ui]). */
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/hanken.woff2) format('woff2')}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/fonts/newsreader.woff2) format('woff2')}
:root{
  --navy:#13203a;--navy-2:#0d172b;--navy-ink:#eef0f4;--navy-soft:#b9c2d6;
  --bg:#f3f3f0;--surface:#e8e7e2;--surface-2:#dcdbd5;--ink:#141821;--muted:#4b5262;
  --ok:#1d6a3f;--ok-bg:#dcecdf;--bad:#9e2a1e;--bad-bg:#f6dfda;--warn:#8a5300;
  --serif:Newsreader,Georgia,serif;--sans:"Hanken Grotesk",system-ui,sans-serif;
  --edge:clamp(20px,4vw,56px);--max:1240px;--text:44rem;
  --s-small:15px;--s-body:18px;--s-lead:22px;--s-head:clamp(30px,2.2vw + 14px,44px);--s-display:clamp(30px,3vw + 14px,58px);
}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 var(--s-body)/1.55 var(--sans);overflow-x:hidden}
img,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid #8fb0f0;outline-offset:2px}
::selection{background:#c9d6f2;color:var(--ink)}
.inner{max-width:var(--max);margin:0 auto;padding:0 var(--edge)}

/* bar: wordmark, four links, one action */
.bar{background:var(--navy);color:var(--navy-ink)}
.bar .inner{display:flex;align-items:center;gap:clamp(14px,2.2vw,32px);min-height:76px}
.mark{font:500 22px/1.1 var(--serif);white-space:nowrap;text-decoration:none;margin-right:auto;letter-spacing:-.01em}
.bar nav{display:flex;gap:clamp(14px,2vw,28px);font-weight:600;font-size:var(--s-small)}
.bar nav a{text-decoration:none;color:var(--navy-soft)}.bar nav a:hover,.bar nav a[aria-current]{color:var(--navy-ink)}
.act{display:inline-block;white-space:nowrap;background:var(--navy-ink);color:var(--navy);font-weight:700;font-size:var(--s-small);padding:11px 16px;text-decoration:none;transition:transform .15s,background .15s}
.act:hover{background:#fff}.act:active{transform:translateY(1px)}
@media (max-width:860px){.bar nav{display:none}.bar .inner{min-height:64px}}
@media (max-width:420px){.mark{font-size:17px;white-space:normal;line-height:1.15}.act{padding:9px 12px}}

/* hero: the navy field holding h1, byline and the answer */
.hero{background:var(--navy);color:var(--navy-ink);padding:clamp(40px,6vw,96px) 0 clamp(56px,7vw,120px)}
.hero .inner{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(32px,4vw,64px);align-items:start}
.hero.has-fig .inner{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center}
.hero h1{font:400 var(--s-display)/1.04 var(--serif);letter-spacing:-.02em;margin:0 0 24px;text-wrap:balance}
.page .hero h1{font-size:clamp(32px,3.8vw + 10px,72px);line-height:1.04}
.page .hero.has-fig h1{font-size:clamp(30px,1.9vw + 16px,46px)}
.answer.long{font-size:var(--s-body);line-height:1.55;max-width:40rem}
.byline{font-size:var(--s-small);color:var(--navy-soft);margin:0 0 22px;max-width:44rem}
.answer{font-size:var(--s-lead);line-height:1.45;margin:0;max-width:36rem;color:var(--navy-ink)}
.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:32px}
.btn{display:inline-block;background:var(--navy-ink);color:var(--navy);font:700 17px/1 var(--sans);padding:17px 22px;text-decoration:none;border:0;cursor:pointer;transition:transform .15s,background .15s}
.btn:hover{background:#fff}.btn:active{transform:translateY(1px)}
.btn.dark{background:var(--navy);color:var(--navy-ink)}.btn.dark:hover{background:#1d2f52}
.textlink{font-weight:700;text-decoration:none;border-bottom:2px solid currentColor;padding-bottom:2px}
.hero figure{margin:0}.hero figcaption,.fig-cap{font-size:var(--s-small);color:var(--navy-soft);margin-top:12px}
.shot{background:#fff;overflow:hidden;aspect-ratio:4/3}
.shot img{width:165%;max-width:none;height:auto}

/* article pages */
.article{padding:clamp(56px,7vw,112px) 0 clamp(64px,8vw,128px)}
.article .body{max-width:var(--text)}
.article h2{font:500 var(--s-head)/1.1 var(--serif);letter-spacing:-.015em;margin:clamp(56px,6vw,88px) 0 18px;text-wrap:balance}
.article h2:first-child{margin-top:0}
.article p,.article li{max-width:40rem}
.article p{margin:0 0 18px}.article ul,.article ol{padding-left:1.2em;margin:0 0 22px}.article li{margin:0 0 10px;padding-left:.2em}
.article a{font-weight:600}
.article table{width:100%;max-width:none;border-collapse:collapse;margin:8px 0 28px;font-size:var(--s-body);display:block;overflow-x:auto}
.article th,.article td{text-align:left;vertical-align:top;padding:14px 16px;border-bottom:1px solid var(--surface-2)}
.article th{font-weight:700}
.article tr:nth-child(even) td,.article tr:nth-child(even) th[scope],.article tbody tr:nth-child(even) th{background:var(--surface)}
.article table tr:first-child th{border-bottom:2px solid var(--ink);background:none}
.wide{max-width:none!important}

/* hand-off: one navy band with the offer */
.handoff{background:var(--navy);color:var(--navy-ink);margin:0;padding:clamp(64px,8vw,128px) var(--edge)}
.handoff>*{max-width:46rem;margin-left:auto;margin-right:auto}
.handoff h2{font:400 var(--s-head)/1.08 var(--serif);letter-spacing:-.015em;margin-top:0;margin-bottom:24px;text-wrap:balance}
.handoff p{margin:0 auto 18px;color:#d6dae4}.handoff a{color:var(--navy-ink);font-weight:700}
.handoff .go{display:inline-block;background:var(--navy-ink);color:var(--navy);padding:17px 22px;text-decoration:none;margin-top:14px;transition:background .15s}
.handoff .go:hover{background:#fff}

/* footer: the name returns at full width */
.foot{background:var(--navy-2);color:var(--navy-soft);padding:clamp(56px,7vw,104px) 0 40px}
.foot .big{font:400 clamp(34px,6.4vw,104px)/.95 var(--serif);letter-spacing:-.03em;color:var(--navy-ink);margin:0 0 clamp(36px,4vw,56px);text-decoration:none;display:block}
.foot .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 40px;margin-bottom:40px;font-size:var(--s-small)}
.foot .cols a{display:block;text-decoration:none;padding:4px 0;color:var(--navy-ink)}.foot .cols a:hover{text-decoration:underline}
.foot p{font-size:var(--s-small);margin:0;max-width:46rem}.foot p a{color:var(--navy-ink)}

/* motion: content is visible without script; script adds .js and reveals sections once */
.js [data-reveal]>*{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.js [data-reveal].in>*,.js [data-reveal]>.in{opacity:1;transform:none}
.js [data-reveal].in>*:nth-child(2){transition-delay:.07s}.js [data-reveal].in>*:nth-child(3){transition-delay:.14s}
.js [data-reveal].in>*:nth-child(4){transition-delay:.21s}.js [data-reveal].in>*:nth-child(n+5){transition-delay:.28s}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js [data-reveal]>*{opacity:1;transform:none;transition:none}*{transition-duration:0s!important;animation:none!important}}
@media (max-width:860px){.hero.has-fig .inner,.home .hero.has-fig .inner{grid-template-columns:minmax(0,1fr)}}
@media print{.bar,.foot,.handoff,.cta-row{display:none}.hero{background:#fff;color:#000}.hero *{color:#000!important}}
