*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
.container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}
.section{padding:94px 0}
.section-alt{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.kicker{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin-bottom:16px}
.kicker-light{color:#9dd8de}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(44px,5vw,64px);line-height:1.04;letter-spacing:-.035em;font-weight:600;color:var(--navy);margin-bottom:24px}
h2{font-size:clamp(32px,3.8vw,48px);line-height:1.08;letter-spacing:-.025em;font-weight:600;color:var(--navy);margin-bottom:18px}
h3{font-size:23px;line-height:1.25;font-weight:600;color:var(--navy)}
p{font-size:17px;line-height:1.72;color:var(--muted)}
.lead{font-size:20px;line-height:1.65;max-width:700px}
@media(min-width:761px){.lead,.section-intro-grid p,.pillar-head p,.path p,.contact-copy p,.faq-list p{ text-align:justify; text-justify:inter-word; }}
