.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block}.chroma .hl{display:block;width:100%;background-color:#ffc}.chroma .lnt{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .ln{margin-right:.4em;padding:0 .4em;color:#7f7f7f}.chroma .k{font-weight:700}.chroma .kc{font-weight:700}.chroma .kd{font-weight:700}.chroma .kn{font-weight:700}.chroma .kr{font-weight:700}.chroma .nc{font-weight:700}.chroma .ni{font-weight:700}.chroma .ne{font-weight:700}.chroma .nn{font-weight:700}.chroma .nt{font-weight:700}.chroma .s{font-style:italic}.chroma .sa{font-style:italic}.chroma .sb{font-style:italic}.chroma .sc{font-style:italic}.chroma .dl{font-style:italic}.chroma .sd{font-style:italic}.chroma .s2{font-style:italic}.chroma .se{font-weight:700;font-style:italic}.chroma .sh{font-style:italic}.chroma .si{font-weight:700;font-style:italic}.chroma .sx{font-style:italic}.chroma .sr{font-style:italic}.chroma .s1{font-style:italic}.chroma .ss{font-style:italic}.chroma .ow{font-weight:700}.chroma .c{font-style:italic}.chroma .ch{font-style:italic}.chroma .cm{font-style:italic}.chroma .c1{font-style:italic}.chroma .cs{font-style:italic}.chroma .ge{font-style:italic}.chroma .gh{font-weight:700}.chroma .gp{font-weight:700}.chroma .gs{font-weight:700}.chroma .gu{font-weight:700}html,body{min-height:100%;height:100%;margin:0}body{color:#212529;background-color:#fff;font-family:sans-serif;align-items:stretch}.content{max-width:960px;margin:0 auto;padding:0 1rem}@media(min-width:960px){.content{width:960px}}.content li{margin-bottom:.3rem}.content li:last-child{margin-bottom:0}.service-grid{margin-top:2rem}.service-grid h3{font-weight:700;color:#000}.service-grid blockquote{border-left:unset;background-color:unset;font-style:italic;padding-left:2.5rem}.index-grid,.service-grid{display:grid;width:100%;grid-template-columns:4fr 2fr;grid-gap:1rem}@media(max-width:960px){.index-grid,.service-grid{display:block;width:auto}}.index-grid .left,.service-grid .left{grid-column-start:1}.index-grid .right,.service-grid .right{grid-column-start:2}img,video{display:block;max-width:100%;box-shadow:1px 1px 5px rgba(0,0,0,.4);margin:0 auto}.clearfix{clear:both}.text-muted{color:#666}.text-success{color:#2bb34b}.text-warning{color:#d39e00}.text-danger{color:#ff3e3e}pre{background:#eee;padding:.5rem;margin:0 -.5rem;overflow-x:auto}pre code{font-size:.9rem}code{background:#eee;font-size:1rem}.pricing-grid{display:grid;width:100%;margin-bottom:1rem;grid-template-columns:1fr 1fr 1fr;grid-gap:1rem}@media(max-width:960px){.pricing-grid{display:block}}.pricing-grid .col-1{grid-column-start:1}.pricing-grid .col-2{grid-column-start:2}.pricing-grid .col-3{grid-column-start:3}.pricing-notices{max-width:70%;margin:0 auto;font-size:.8rem}@media(max-width:960px){.pricing-notices{max-width:inherit}}.pricing-notices h4{border:none}nav{padding:.5rem 1rem 0;max-width:960px;margin:0 auto;clear:both}nav a:not(:first-child):not(.btn){margin-left:1rem;color:#666}nav .brand{font-size:1.25rem;position:relative;top:1px}nav .brand a{text-decoration:none;color:#212529!important;margin-left:0!important}nav .brand .icon{width:1.2rem}@media(max-width:900px){nav .hidden-small{display:none}}.icon{display:inline-block;line-height:.75em;width:.4em;vertical-align:-.17em}.icon path{fill:currentColor}form{margin-bottom:1rem}a.blog-link,nav a{text-decoration:none}a{color:#007bff}a:hover{color:#0056b3;text-decoration:underline}.btn{display:inline-block;padding:.1rem .75rem;background:#e9ecef;border:#343a40 1px solid;font-size:.9rem;font-weight:400;line-height:1.5;cursor:pointer;color:#000;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.btn:hover{text-decoration:none;background:#f8f9fa;color:#000}.btn.btn-primary{border:#001933 1px solid;background:#007bff;color:#fff}.btn.btn-primary:hover{background:#0069d9;color:#fff}.btn.btn-info{border:#062a30 1px solid;background:#17a2b8;color:#fff}.btn.btn-info:hover{background:#138496;color:#fff}.btn.btn-block{display:block;text-align:center}a.btn{text-decoration:none}.form-group{margin-bottom:1rem}input[type=text],input[type=password],input[type=email]{display:block;width:calc(100% - 1rem);border:1px solid #888;padding:.375rem;font-size:1rem;line-height:1.5;background-color:#fff;background-clip:padding-box;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;border-radius:0}input[type=text]:focus,input[type=password]:focus,input[type=email]:focus{outline:0;border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}label{display:inline-block;margin-bottom:.25rem}.alert{padding:.5rem;border:1px solid transparent;margin-bottom:1rem}.alert.alert-danger{background:#f8d7da;color:#721c24;border-color:#f5c6cb}.alert.alert-info{background:#d1ecf1;color:#0c5460;border-color:#bee5eb}h3{font-size:1.3rem;border-bottom:1px solid #e9ecef;padding-bottom:.25rem;margin-bottom:.5rem;font-weight:500;margin-top:0}h4{font-size:1.1rem;border-bottom:1px solid #e9ecef;padding-bottom:.25rem;margin-bottom:.5rem;font-weight:400}.pull-right{float:right}.event{padding:.5rem;margin:.5rem 0;background:#f5f5f5}.event:first-child{margin-top:0}.event:last-child{margin-bottom:0}.event h4{margin-bottom:0;padding:0}.event blockquote{margin-bottom:.5rem}.event blockquote *:last-child{margin-bottom:0}.event *:last-child{margin-bottom:0}header{margin-top:.5rem;min-height:auto;display:flex;padding:.5rem 0;flex-direction:row;align-items:flex-end;background:#0062cc;border-width:1px 0;border-color:#001933;border-style:solid}header .heading{width:100%}header h1{padding:.25rem 1rem;margin:0 -1rem .5rem;background:#fff;border:1px solid rgba(0,0,0,.2)}@media(max-width:960px){header h1{margin:0 -1rem .5rem}}header h1 a{color:#000;cursor:pointer}header h1 a:hover{color:#000}header h1 a small{color:#0056b3}header.inline-header h1{font-size:1.2rem}header.inline-header .info a{color:#fff}.info{padding-bottom:.25rem;color:#fff;font-size:.9rem}footer{margin-top:2rem;padding-bottom:1rem}.correspondence{font-size:.8rem;text-align:center}footer p:first-child,.infobox p:first-child{margin-top:0}footer .box,.infobox .box{background:#f4f4f4;padding:2rem 0}footer strong,footer h4,.infobox strong,.infobox h4{color:#333}footer form,.infobox form{max-width:480px;margin:0;align-self:flex-end}footer .footer-links,.infobox .footer-links{margin:1rem 0;text-align:center}footer .footer-links>*,.infobox .footer-links>*{margin-right:2rem}footer .footer-links>*:last-child,.infobox .footer-links>*:last-child{margin-right:0}footer blockquote{background:0 0;text-align:center;max-width:600px;margin:1rem auto;color:#444;border:none}.stub h2{margin-bottom:0}article.content{max-width:720px;line-height:1.3}.next-prev{max-width:920px;margin:0 auto;display:flex;justify-content:space-between}.next-prev .prev{align-self:flex-start}.next-prev .next{align-self:flex-end}blockquote{margin-left:calc(-4px - 1rem);margin-right:calc(-4px - 1rem);padding:.25rem 1rem;border-left:4px solid #333;background:#eee}iframe{display:block;margin:0 auto}details{padding:0 1rem;margin:0 -1rem 1rem}details summary{background:#dee2e6;padding:0 1rem;margin:0 -1rem;cursor:pointer}details[open]{padding:0 1rem;margin-left:calc(-1rem - 4px);border-left:4px solid #dee2e6}.projects{padding-top:2rem}.projects .content{background:#f4f4f4;display:grid;grid-template-columns:1fr auto;padding:1rem;justify-items:center;align-items:center}.projects .content>*:not(:last-child){margin-right:.5rem}.nav-highlight{border-bottom:2px solid transparent;border-top:2px solid transparent;border-image:linear-gradient(to bottom right,#b827fc 0%,#2c90fc 25%,#b8fd33 50%,#fec837 75%,#fd1892 100%);border-image-slice:1}.consultancy li{margin-top:1rem}.consultancy dl{clear:both}.consultancy dt{font-weight:700}.consultancy dt:not(:first-child){margin-top:.5rem}.consultancy .event img{float:left;margin-right:1rem;margin-bottom:1rem;width:128px;height:128px}.caption{text-align:center;font-size:.8rem}.toc{margin-top:1rem}.toc ul{margin:0}.toc>nav>ul{padding:0}.contributions .article-content ul{display:flex;flex-wrap:wrap;margin-left:-3rem}.contributions .article-content ul li{list-style:none;width:calc(50% - 3rem);margin:.5rem 1rem;padding:.5rem;background:#eee}table{color:#333;background:#fff;border:1px solid grey;font-size:12pt;border-collapse:collapse;margin-bottom:1rem}table thead th,table tfoot th{background:rgba(0,0,0,.1);text-align:left}table caption{padding:.5em}table th,table td{padding:.5em;border:1px solid lightgrey}.service-table{width:100%}.service-table .payment-required{font-weight:700;color:#007bff}.pricing-table{width:100%}.pricing-table tbody th{text-align:left;min-width:50%}.text-right{text-align:right}