
@font-face{font-family:'Lato';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/lato-400.woff2') format('woff2');}
@font-face{font-family:'Lato';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/lato-400i.woff2') format('woff2');}
@font-face{font-family:'Lato';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/lato-700.woff2') format('woff2');}
@font-face{font-family:'Lato';font-style:normal;font-weight:900;font-display:swap;src:url('fonts/lato-900.woff2') format('woff2');}
@font-face{font-family:'Comfortaa';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/comfortaa-700.woff2') format('woff2');}

:root{
  --canvas:#ffffff; --field:#eef0f2; --navy:#394160; --deep:#2a2b40;
  --ink:#2a2b40; --muted:#73777f; --accent:#cc3366; --rule:#dcdee1;
  --shell:min(1240px,calc(100% - 48px));
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{margin:0;background:var(--canvas);color:var(--ink);
  font:400 17px/1.68 'Lato','Helvetica Neue',Helvetica,Arial,sans-serif;}
img{max-width:100%;display:block;}
a{color:var(--accent);}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
.shell{width:var(--shell);margin:0 auto;}
.skip{position:absolute;left:-9999px;top:0;background:#fff;color:var(--ink);padding:10px 16px;z-index:99;}
.skip:focus{left:12px;top:12px;}
.label{font:700 12px/1.4 'Lato',Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);}
h1,h2,h3,h4{font-family:'Lato',Arial,sans-serif;font-weight:900;letter-spacing:-.01em;line-height:1.15;margin:0 0 14px;}
p{margin:0 0 16px;}

/* header */
.utility{background:var(--deep);color:#c9ccd8;}
.utility .shell{display:flex;justify-content:space-between;align-items:center;min-height:34px;gap:16px;flex-wrap:wrap;}
.utility a{color:#e7e9f0;text-decoration:none;font:700 12px/34px 'Lato',Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em;}
.utility a:hover{color:#fff;text-decoration:underline;}
.utility .u-left a+a{margin-left:22px;}
.masthead{border-bottom:1px solid var(--rule);background:#fff;}
.masthead .shell{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:24px;}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink);}
.brand img{width:44px;height:44px;}
.brand span{font:700 19px/1.2 'Comfortaa','Lato',Arial,sans-serif;letter-spacing:.03em;color:var(--navy);}
.menu{display:flex;gap:30px;align-items:center;}
.menu a{color:var(--ink);text-decoration:none;font:700 13px/1 'Lato',Arial,sans-serif;
  text-transform:uppercase;letter-spacing:.13em;padding:6px 0;border-bottom:2px solid transparent;}
.menu a:hover{border-bottom-color:var(--accent);color:var(--accent);}

/* banner */
.banner{position:relative;height:500px;background:var(--navy);overflow:hidden;z-index:1;}
.banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 18%;}
.banner .scrim{position:absolute;inset:0;background:rgba(0,0,0,.30);}
.banner .inner{position:absolute;inset:auto 0 0 0;padding-bottom:108px;}
.banner h1{color:#fff;font-size:46px;max-width:15ch;text-shadow:0 1px 2px rgba(0,0,0,.35);}
.banner p{color:#f1f2f6;max-width:46ch;margin-bottom:22px;}
.act{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;
  font:700 12px/1 'Lato',Arial,sans-serif;text-transform:uppercase;letter-spacing:.16em;padding:15px 26px;}
.act:hover{background:#b02a55;}
.act--ghost{background:transparent;color:var(--accent);border:2px solid var(--accent);padding:13px 24px;}
.act--ghost:hover{background:var(--accent);color:#fff;}

/* overview panel */
.fieldband{background:var(--field);padding-bottom:64px;position:relative;z-index:2;}
.panel{background:#fff;border:1px solid var(--rule);margin-top:-72px;padding:44px 48px;
  display:grid;grid-template-columns:7fr 5fr;gap:56px;align-items:start;}
.panel h2{font-size:32px;max-width:18ch;}
.panel p{max-width:62ch;color:#3c4050;}
.outcomes{list-style:none;margin:0;padding:0;}
.outcomes li{border-top:1px solid var(--rule);padding:11px 0 11px 26px;position:relative;font-size:16px;}
.outcomes li:last-child{border-bottom:1px solid var(--rule);}
.outcomes li::before{content:"";position:absolute;left:0;top:20px;width:12px;height:2px;background:var(--accent);}

/* offset rows */
.rows{padding:72px 0 8px;}
.rows>.shell>h2{font-size:34px;max-width:20ch;margin-bottom:10px;}
.rule{width:64px;height:3px;background:var(--accent);margin:0 0 44px;}
.offset{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:start;
  padding:34px 0;border-top:1px solid var(--rule);}
.offset--flip .bracketcell{order:2;}
.offset--flip .offsetbody{order:1;}
.bracket{width:150px;height:150px;border:2px solid var(--accent);display:flex;align-items:center;justify-content:center;}
.bracket i{display:flex;align-items:center;justify-content:center;width:126px;height:126px;
  border:1px solid var(--rule);font:700 40px/1 'Comfortaa','Lato',Arial,sans-serif;font-style:normal;color:var(--navy);}
.offsetbody h3{font-size:24px;text-transform:none;}
.offsetbody .label{margin-bottom:8px;display:block;}
.offsetbody p{max-width:66ch;}

/* work / resources */
.work{padding:76px 0 84px;background:var(--field);margin-top:56px;}
.work h2{font-size:34px;max-width:22ch;}
.work>.shell>p{max-width:70ch;color:#3c4050;}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);
  border:1px solid var(--rule);margin:40px 0 72px;}
.step{background:#fff;padding:28px 26px 30px;}
.step .num{font:700 13px/1 'Comfortaa','Lato',Arial,sans-serif;color:var(--accent);letter-spacing:.1em;
  display:inline-block;border:2px solid var(--accent);padding:7px 9px;margin-bottom:14px;}
.step h4{font-size:19px;font-weight:900;line-height:1.2;margin:0 0 10px;}
.step p{font-size:16px;margin:0;color:#3c4050;}
.founder{display:grid;grid-template-columns:4fr 8fr;gap:56px;align-items:start;
  background:#fff;border:1px solid var(--rule);padding:40px 44px;}
.portrait{border:2px solid var(--accent);padding:9px;max-width:340px;}
.portrait img{width:100%;border:1px solid var(--rule);}
.founder h2{font-size:30px;margin-bottom:4px;}
.founder .label{display:block;margin-bottom:10px;}
.reading{margin-top:40px;background:var(--navy);color:#fff;padding:36px 44px;
  display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:center;}
.reading .label{color:#b9bed0;display:block;margin-bottom:8px;}
.reading h3{font-size:26px;color:#fff;margin-bottom:8px;}
.reading p{color:#dfe2ec;margin:0;font-size:16px;}
.reading a.act{background:#fff;color:var(--navy);justify-self:start;}
.reading a.act:hover{background:var(--accent);color:#fff;}

/* contact */
.contact{padding:78px 0 86px;}
.contact h2{font-size:34px;}
.qa{border-top:1px solid var(--rule);padding:20px 0;display:grid;grid-template-columns:5fr 7fr;gap:40px;}
.qa:last-of-type{border-bottom:1px solid var(--rule);}
.qa dt{font:900 18px/1.35 'Lato',Arial,sans-serif;color:var(--navy);margin:0;}
.qa dd{margin:0;color:#3c4050;}
.faq{margin:0 0 60px;}
.getintouch{background:var(--field);border-top:3px solid var(--accent);padding:44px 48px;
  display:grid;grid-template-columns:7fr 5fr;gap:56px;align-items:center;}
.getintouch h2{margin-bottom:6px;}
.methods{list-style:none;margin:0;padding:0;}
.methods li{border-top:1px solid var(--rule);padding:12px 0;}
.methods li:last-child{border-bottom:1px solid var(--rule);}
.methods a{font:700 13px/1 'Lato',Arial,sans-serif;text-transform:uppercase;letter-spacing:.13em;text-decoration:none;}
.methods a:hover{text-decoration:underline;}

/* footer */
footer{background:var(--deep);color:#c2c6d4;padding:56px 0 30px;}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1.4fr 1fr;gap:44px;}
footer h2{font:700 12px/1.4 'Lato',Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em;color:#8e94a8;margin-bottom:14px;}
footer ul{list-style:none;margin:0;padding:0;}
footer li{margin-bottom:9px;}
footer a{color:#e7e9f0;text-decoration:none;font-size:15px;}
footer a:hover{text-decoration:underline;color:#fff;}
.fbrand{display:flex;gap:14px;align-items:center;margin-bottom:12px;}
.fbrand img{width:52px;height:52px;}
.fbrand span{font:700 17px/1.25 'Comfortaa','Lato',Arial,sans-serif;color:#fff;}
.copy{border-top:1px solid #3d4056;margin-top:40px;padding-top:20px;font-size:13px;color:#8e94a8;}

/* article */
.titleband{background:var(--navy);color:#fff;padding:52px 0 46px;}
.titleband .label{color:#b9bed0;display:block;margin-bottom:10px;}
.titleband h1{color:#fff;font-size:40px;max-width:22ch;margin:0;}
.detail{display:grid;grid-template-columns:5fr 7fr;gap:64px;padding:56px 0 76px;align-items:start;}
.rail{position:sticky;top:24px;}
.rail .portrait{margin-bottom:20px;}
.rail .name{font:900 26px/1.05 'Lato',Arial,sans-serif;color:var(--navy);letter-spacing:.02em;}
.rail .role{margin:6px 0 18px;}
.rail h2{font-size:19px;border-top:1px solid var(--rule);padding-top:16px;}
.rail p{font-size:15.5px;color:#3c4050;}
.reader{max-width:68ch;}
.reader h2{font-size:28px;margin-top:38px;}
.reader h3{font-size:21px;margin-top:30px;color:var(--navy);}
.tip{background:var(--field);border-left:3px solid var(--accent);padding:20px 24px;margin:28px 0;}
.tip .label{display:block;margin-bottom:6px;color:var(--accent);}
.tip p{margin:0;font-size:16px;}
blockquote{margin:30px 0;padding:0 0 0 24px;border-left:3px solid var(--rule);
  font:italic 400 20px/1.5 'Lato',Georgia,serif;color:var(--navy);}
blockquote cite{display:block;font:700 12px/1.4 'Lato',Arial,sans-serif;font-style:normal;
  text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-top:12px;}
.related{border-top:1px solid var(--rule);padding-top:22px;margin-top:44px;}
.related a{margin-right:26px;font:700 13px/2 'Lato',Arial,sans-serif;text-transform:uppercase;letter-spacing:.13em;text-decoration:none;}
.related a:hover{text-decoration:underline;}

/* legal documents */
.dochead{background:var(--field);border-bottom:1px solid var(--rule);padding:48px 0 40px;}
.dochead h1{font-size:34px;max-width:24ch;}
.dochead .label{display:block;}
.doc{max-width:68ch;padding:44px 0 76px;}
.doc h2{font-size:24px;margin-top:38px;color:var(--navy);}
.doc h3{font-size:19px;margin-top:26px;}
.doc ul{padding-left:20px;}
.doc li{margin-bottom:8px;}
.toc{background:var(--field);border:1px solid var(--rule);padding:22px 26px;margin-bottom:14px;}
.toc ul{list-style:none;padding:0;margin:0;}
.toc li{margin-bottom:6px;font-size:16px;}

@media (max-width:1080px){
  :root{--shell:min(100%,calc(100% - 40px));}
  .steps{grid-template-columns:repeat(2,1fr);}
  .panel,.founder,.reading,.getintouch,.detail{gap:40px;}
  .banner h1{font-size:38px;}
}
@media (max-width:780px){
  .masthead .shell{flex-wrap:wrap;padding:14px 0;min-height:0;gap:12px;}
  .menu{gap:20px;flex-wrap:wrap;}
  .menu a{font-size:13px;}
  .utility .shell{justify-content:flex-start;}
  .banner{height:auto;min-height:260px;}
  .banner img{object-position:50% 22%;}
  .banner h1{font-size:28px;}
  .banner p{font-size:16px;margin-bottom:16px;}
  .banner .inner{position:relative;inset:auto;padding:96px 0 28px;}
  .panel{margin-top:0;grid-template-columns:1fr;padding:30px 24px;}
  .fieldband{padding-bottom:44px;}
  .offset,.founder,.reading,.getintouch,.qa,.detail{grid-template-columns:1fr;gap:24px;}
  .offset--flip .bracketcell{order:0;}
  .offset--flip .offsetbody{order:0;}
  .founder,.getintouch,.reading{padding:26px 24px;}
  .rail{position:static;}
  .portrait{max-width:320px;}
  body{font-size:16px;}
  .rows>.shell>h2,.work h2,.contact h2{font-size:27px;}
  footer .cols{grid-template-columns:1fr;gap:28px;}
  .titleband h1{font-size:28px;}
  .reader h2{font-size:23px;}
}
@media (max-width:560px){
  .steps{grid-template-columns:1fr;}
  .bracket{width:110px;height:110px;}
  .bracket i{width:88px;height:88px;font-size:28px;}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none !important;animation:none !important;}
}
