/* ATC.insure site stylesheet. Generated by source/build_site.py, do not hand edit the copy in
   assets/css: change css.py and rebuild, or edit here and keep css.py in step. Brand rules:
   Navy leads structure, Green is the accent, Safety Orange is calls to action only. */

@font-face{font-family:'Figtree';src:url('/assets/release-1f38fd59c4d6ace8/fonts/figtree-variable.woff2') format('woff2-variations');
 font-weight:300 900;font-style:normal;font-display:swap}

:root{
 --navy:#094873;--green:#6EA063;--text-green:#3B7237;--light-green:#9CCB94;--tint:#E8F2E5;
 --orange:#F25C05;--gray:#6B7780;--dark-gray:#3E4A52;--off:#F6F7F5;--slate:#2E3B44;--deep:#163455;
 --grad:linear-gradient(165deg,#6EA063 0%,#6EA063 40%,#094873 100%);--head:92px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
body{margin:0;font-family:Figtree,Aptos,Arial,Helvetica,sans-serif;color:var(--slate);background:#fff;
 font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--text-green)}
img{max-width:100%;display:block}
picture{display:block}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-9999px;top:0;background:#fff;color:var(--navy);font-weight:800;
 padding:14px 22px;z-index:100;border-radius:0 0 12px 0}
.skip:focus{left:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}

/* ---------------------------------------------------------------- header */
header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #E3E8E6}
.nav{display:flex;align-items:center;justify-content:space-between;height:var(--head)}
.nav .logo{width:230px;margin-left:-22px;display:block}
.nav .logo img{width:100%;height:auto;display:block}
.nav .logo .static{display:none}
@media(prefers-reduced-motion:reduce){.nav .logo .anim{display:none}.nav .logo .static{display:block}}
.nav ul{display:flex;gap:34px;list-style:none;margin:0;padding:0}
.nav a{text-decoration:none;color:var(--navy);font-weight:700;font-size:17px}
.nav a[aria-current="page"]{color:var(--text-green);border-bottom:3px solid var(--green);padding-bottom:6px}
.menu{display:none;width:48px;height:48px;border:0;background:none;padding:0;cursor:pointer;
 flex-direction:column;justify-content:center;gap:6px;align-items:center;margin-right:-8px}
.menu i{display:block;width:26px;height:3px;background:var(--navy);border-radius:2px;transition:.2s}
header.open .menu i:nth-child(1){transform:translateY(9px) rotate(45deg)}
header.open .menu i:nth-child(2){opacity:0}
header.open .menu i:nth-child(3){transform:translateY(-9px) rotate(-45deg)}
.nav li.mcta{display:none}

/* ---------------------------------------------------------------- buttons */
.btn,.btn2,.btn3{display:inline-block;font-weight:800;text-decoration:none;font-size:17px;
 border-radius:0 12px 0 12px;cursor:pointer;font-family:inherit}
.btn{background:var(--orange);color:#fff;padding:15px 30px;border:2px solid var(--orange)}
.btn:hover{background:#D94F04;border-color:#D94F04}
.btn2{border:2px solid #fff;color:#fff;padding:13px 28px;background:transparent}
.btn2:hover{background:rgba(255,255,255,.14)}
.btn3{border:2px solid var(--navy);color:var(--navy);padding:13px 28px;background:transparent}
.btn3:hover{background:var(--navy);color:#fff}

/* ---------------------------------------------------------------- type */
.eyebrow{font-weight:800;color:var(--text-green);font-size:16px;margin-bottom:10px}
h1,.h1{font-size:54px;line-height:1.05;font-weight:800;margin:0 0 20px;letter-spacing:-.01em}
h2{font-size:40px;line-height:1.1;color:var(--navy);font-weight:800;margin:0 0 16px;letter-spacing:-.01em}
h2 span{color:var(--green)}
h3{font-size:23px;color:var(--navy);font-weight:800;margin:0 0 8px}
.lead{font-size:20px;max-width:760px}
section{padding:80px 0}
section.alt{background:var(--off)}
section.tint{background:var(--tint)}

/* ---------------------------------------------------------------- hero */
.hero{position:relative;background:var(--grad);color:#fff;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;
 min-height:560px;padding-top:72px;padding-bottom:64px;position:relative}
.hero h1 span,.hero .h1 span{color:var(--light-green)}
.hero p{font-size:21px;line-height:1.5;opacity:.95;margin:0 0 30px;max-width:560px}
.hero .pic{border-radius:0 40px 0 40px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.25)}
.hero .pic img{width:100%;height:100%;object-fit:cover}
.hero.short .wrap{grid-template-columns:1fr;min-height:0;padding:64px 28px}
.hero.short h1,.hero.short .h1{font-size:46px;max-width:900px}
.leaf{position:absolute;right:-6%;top:-10%;height:120%;pointer-events:none}

/* ---------------------------------------------------------------- slides */
.slides{position:relative}
.slide{display:none}
.slide.on{display:block}
body:not(.js) .slide:first-child{display:block}
.dots{display:flex;gap:10px;margin-top:26px;align-items:center}
.dots button{width:12px;height:12px;border-radius:50%;border:2px solid rgba(255,255,255,.8);
 background:transparent;padding:0;cursor:pointer}
.dots button.on{background:#fff}
.dots span{font-size:13px;color:rgba(255,255,255,.8);margin-left:6px;font-weight:700}

/* ---------------------------------------------------------------- blocks */
.strip{background:var(--navy);color:#fff;padding:34px 0}
.strip .grid4>div{display:flex;gap:16px;align-items:flex-start}
.strip b{display:block;font-size:19px;margin-bottom:2px}
.strip span{font-size:15px;opacity:.9}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.card{background:#fff;border-radius:0 26px 0 26px;padding:30px 28px;border:1px solid #E3E8E6}
.card .ic{width:60px;height:60px;border-radius:50%;background:var(--navy);display:flex;
 align-items:center;justify-content:center;margin-bottom:18px}
.card p{margin:0;color:var(--dark-gray);font-size:17px}
.card ul{margin:12px 0 0;padding-left:20px;color:var(--dark-gray);font-size:16px}
.card ul li{margin:4px 0}
.pic{border-radius:0 30px 0 30px;overflow:hidden}
.pic img{width:100%;height:100%;object-fit:cover}
.pic picture{height:100%}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.step{background:#fff;border-radius:0 22px 0 22px;padding:26px 24px;border-top:6px solid var(--green)}
.step .n{font-size:44px;font-weight:800;color:var(--light-green);line-height:1;margin-bottom:8px}
.step p{margin:0;font-size:16px;color:var(--dark-gray)}
.band{background:var(--grad);color:#fff;padding:70px 0;position:relative;overflow:hidden}
.band h2{color:#fff}
.band p{font-size:20px;max-width:720px;opacity:.95}
.people{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.person{background:#fff;border-radius:0 24px 0 24px;overflow:hidden;border:1px solid #E3E8E6}
.person img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 0}
.person div.t{padding:18px 20px 22px}
.person b{display:block;color:var(--navy);font-size:19px}
.person i{display:block;font-style:normal;color:var(--text-green);font-weight:700;font-size:15px;margin:2px 0 8px}
.person p{margin:0;font-size:15px;color:var(--dark-gray)}
.quote{background:#fff;border-left:8px solid var(--green);padding:28px 32px;border-radius:0 22px 22px 0;
 font-size:22px;color:var(--navy);font-weight:600;line-height:1.4}
.quote small{display:block;font-size:15px;color:var(--text-green);font-weight:800;margin-top:12px}
.callout{background:var(--tint);border-left:8px solid var(--green);padding:22px 26px;
 border-radius:0 18px 18px 0;font-size:17px}
.ind{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.indc{display:grid;grid-template-columns:200px 1fr;background:#fff;border-radius:0 26px 0 26px;
 overflow:hidden;border:1px solid #E3E8E6}
.indc picture{height:100%}
.indc img{width:200px;height:100%;min-height:250px;object-fit:cover;object-position:50% 12%}
.indc>div{padding:24px 26px}
.indc p{margin:0 0 10px;color:var(--dark-gray);font-size:16px}
.indc small{color:var(--text-green);font-weight:700;font-size:14px}
.svc{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;padding:44px 0;
 border-bottom:1px solid #E3E8E6}
.svc:last-child{border:0}
.svc .ic{width:64px;height:64px;border-radius:50%;background:var(--navy);display:flex;
 align-items:center;justify-content:center;margin-bottom:16px}
.svc h2{font-size:32px}
.svc ul{columns:2;padding-left:20px;color:var(--dark-gray);font-size:16px}
.svc ul li{margin:5px 0}
.prose{max-width:780px}
.prose h2{font-size:30px;margin-top:38px}
.prose h3{margin-top:26px}
h2.h3{font-size:23px;line-height:inherit;margin:0 0 8px;letter-spacing:0}
h2.sect{margin-bottom:28px}
.prose p,.prose li{color:var(--dark-gray);font-size:17px}
.prose ul{padding-left:22px}

/* ---------------------------------------------------------------- form */
form{background:#fff;border-radius:0 26px 0 26px;padding:34px;border:1px solid #E3E8E6}
label{display:block;font-weight:700;color:var(--navy);font-size:15px;margin:14px 0 6px}
label .opt{font-weight:400;color:var(--gray)}
input,select,textarea{width:100%;padding:13px 14px;border:1px solid #C9D2D0;border-radius:8px;
 font-family:inherit;font-size:16px;color:var(--slate);background:#fff}
textarea{min-height:120px;resize:vertical}
input:invalid:not(:placeholder-shown),select:invalid{border-color:#C24504}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.formnote{font-size:13.5px;color:var(--gray);margin-top:14px;line-height:1.5}
.formmsg{display:none;margin-top:18px;padding:16px 18px;border-radius:0 14px 0 14px;font-size:16px;
 line-height:1.45}
.formmsg.err{display:block;background:#FBF0EA;border-left:5px solid var(--orange);color:#7A3103}
.formmsg.ok{display:block;background:var(--tint);border-left:5px solid var(--green);color:var(--navy)}
button.btn[disabled]{opacity:.6;cursor:progress}

/* ---------------------------------------------------------------- footer */
footer{background:var(--navy);color:#fff;padding:60px 0 30px}
footer .grid4 h4{margin:0 0 12px;font-size:16px;color:var(--light-green)}
footer .grid4 .flabel{margin:0 0 12px;font-size:16px;color:var(--light-green);font-weight:800}
footer a{color:#fff;text-decoration:none}
footer a:hover{text-decoration:underline}
footer ul{list-style:none;padding:0;margin:0;font-size:16px;line-height:1.9}
footer .legal{border-top:1px solid rgba(255,255,255,.25);margin-top:40px;padding-top:22px;
 font-size:13.5px;opacity:.85;line-height:1.6}
footer .legal a{text-decoration:underline}
.flogo{width:250px;margin-left:-26px}
.flogo img{width:100%;height:auto}

/* ---------------------------------------------------------------- cookie bar */
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;background:#fff;
 border:1px solid #D7DEDB;border-radius:0 22px 0 22px;box-shadow:0 18px 46px rgba(9,72,115,.22);
 padding:22px 26px;display:none;gap:22px;align-items:center;max-width:1000px;margin:0 auto}
.cookie.show{display:flex}
.cookie p{margin:0;font-size:15.5px;line-height:1.45;color:var(--dark-gray)}
.cookie .acts{display:flex;gap:12px;flex:0 0 auto}
.cookie button{font-size:15px;padding:11px 20px;white-space:nowrap}

/* ---------------------------------------------------------------- responsive */
@media(max-width:900px){
 :root{--head:74px}
 .nav{height:var(--head)}
 .nav .logo{width:190px;margin-left:-18px}
 .nav>.btn{display:none}
 .menu{display:flex}
 .nav ul{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;
  gap:0;padding:8px 20px 20px;border-bottom:1px solid #E3E8E6;box-shadow:0 18px 30px rgba(9,72,115,.12)}
 header.open .nav ul{display:flex}
 .nav ul li a{display:block;padding:14px 4px;font-size:18px;border-bottom:1px solid #EEF1F0}
 .nav a[aria-current="page"]{border-bottom:1px solid #EEF1F0;padding-bottom:14px}
 .nav li.mcta{display:block;padding-top:16px}
 .nav li.mcta a{border:0;text-align:center}
 .hero .wrap,.grid2,.grid3,.grid4,.steps,.people,.ind,.svc{grid-template-columns:1fr}
 .hero .wrap{min-height:0;padding-top:48px;padding-bottom:48px;gap:32px}
 h1,.h1,.hero.short h1,.hero.short .h1{font-size:38px}
 .hero p{font-size:19px}
 .svc ul{columns:1}
 .indc{grid-template-columns:1fr}
 .indc img{width:100%;height:auto;min-height:0;aspect-ratio:1/1;object-position:50% 0}
 .hero .pic[style]{height:auto!important;aspect-ratio:4/3}
 .grid2 .pic[style]{height:auto!important;aspect-ratio:4/3;max-height:340px}
 h2{font-size:32px}
 section{padding:56px 0}
 .band{padding:52px 0}
 .steps{grid-template-columns:1fr!important}
 .people{grid-template-columns:1fr 1fr!important}
 .cookie{flex-direction:column;align-items:flex-start;gap:16px}
 .cookie .acts{width:100%}
 .cookie button{flex:1}
}
@media(max-width:640px){
 body{font-size:17px}
 .wrap{padding:0 20px}
 .hero .wrap{padding-left:20px;padding-right:20px}
 .hero.short .wrap{padding:40px 20px}
 h1,.h1,.hero.short h1,.hero.short .h1{font-size:32px;line-height:1.1}
 .hero p{font-size:17px;margin-bottom:22px}
 .hero .pic[style]{aspect-ratio:1/1;border-radius:0 28px 0 28px}
 h2{font-size:28px}h3,h2.h3{font-size:20px}
 .lead{font-size:17px}
 .eyebrow{font-size:14px}
 section{padding:44px 0}
 .band{padding:44px 0}
 .band p,.card p,.quote{font-size:17px}
 .btn,.btn2,.btn3{display:block;width:100%;text-align:center;padding:16px 20px;font-size:17px}
 .btn+.btn2,.btn+.btn3,.btn2+.btn{margin-top:12px}
 .card{padding:24px 22px;border-radius:0 20px 0 20px}
 .step{padding:22px 20px}.step .n{font-size:36px}
 .quote{padding:22px 20px;border-left-width:6px}
 .callout{padding:18px 20px;font-size:16px}
 .strip{padding:26px 0}.strip .grid4{gap:16px}
 form{padding:24px 20px}
 label{margin-top:12px}
 input,select,textarea{font-size:16px;padding:14px}
 footer{padding:44px 0 24px}
 footer .grid4{gap:26px}
 footer .legal{margin-top:28px;font-size:13px}
 .flogo{width:210px;margin-left:-22px}
 .cookie{left:10px;right:10px;bottom:10px;padding:18px 20px;border-radius:0 18px 0 18px}
}
@media(max-width:400px){
 .people{grid-template-columns:1fr!important}
 h1,.h1,.hero.short h1,.hero.short .h1{font-size:29px}
}
@media print{
 header,footer .grid4,.cookie,.btn,.btn2,.btn3,.dots{display:none!important}
 body{font-size:12pt}.hero{background:#fff;color:#2E3B44}
}
