.sliding-popup-bottom{bottom:0!important}
.layout--threecol{width:100%;max-width:80rem;margin-left:auto;margin-right:auto;grid-column:1/-1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-column-gap:1.25rem;justify-self:stretch;grid-gap:1.25rem}@media (min-width:768px){.layout--threecol{grid-template-columns:repeat(12,minmax(0,1fr));grid-column-gap:1.875rem;max-width:80rem;margin-left:auto;margin-right:auto;grid-gap:1.875rem}}.layout--threecol__inner{grid-column:1/-1;justify-self:stretch}.layout--threecol__inner>*{position:relative;padding:1.75rem 0}.layout--threecol__inner>:not(:last-child):after{content:"";position:absolute;left:0;bottom:0;width:3.75rem;height:0;border-bottom:.125rem solid #f4f6f7}@media (min-width:500px){.layout--threecol__inner{display:flex;flex-wrap:wrap}.layout--threecol__inner>[class]:after{content:none}.layout--threecol__inner>:first-child{flex:1;padding-right:1.875rem;border-right:.125rem solid #f4f6f7}.layout--threecol__inner>:nth-child(2){flex:1;padding-left:1.875rem}.layout--threecol__inner>:last-child{flex-basis:100%;border-top:.125rem solid #f4f6f7}}@media (min-width:900px){.layout--threecol__inner>*{flex:1;padding-left:1.875rem;padding-right:1.875rem}.layout--threecol__inner>:nth-child(2){border-left:.125rem solid #f4f6f7;border-right:.125rem solid #f4f6f7}.layout--threecol__inner>:first-child{padding-left:0;border:0}.layout--threecol__inner>:last-child{flex:1;padding-right:0;border:0}}@media (min-width:768px){.u-constrain-by-1>.layout--threecol__inner{grid-column:2/-2}}@media (min-width:768px){.u-constrain-by-2>.layout--threecol__inner{grid-column:2/-2}}@media (min-width:960px){.u-constrain-by-2>.layout--threecol__inner{grid-column:3/-3}}@media (min-width:768px){.u-constrain-by-3>.layout--threecol__inner{grid-column:2/-2}}@media (min-width:960px){.u-constrain-by-3>.layout--threecol__inner{grid-column:3/-3}}@media (min-width:1120px){.u-constrain-by-3>.layout--threecol__inner{grid-column:4/-4}}
.layout--case-study-landing{width:100%;max-width:80rem;margin-left:auto;margin-right:auto;grid-column:1/-1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-column-gap:1.25rem;justify-self:stretch;grid-gap:1.25rem}@media (min-width:768px){.layout--case-study-landing{grid-template-columns:repeat(12,minmax(0,1fr));grid-column-gap:1.875rem;max-width:80rem;margin-left:auto;margin-right:auto}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.layout--case-study-landing{display:flex;flex-wrap:wrap;justify-content:space-between}}@supports not (display:grid){.layout--case-study-landing{display:flex;flex-wrap:wrap;justify-content:space-between}}@media (min-width:768px){.layout--case-study-landing{grid-gap:1.875rem}}.layout .layout--case-study-landing{width:100%;margin-left:0;margin-right:0;max-width:none}.layout--case-study-landing>.layout__region{grid-column:1/-1}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.layout--case-study-landing>.layout__region{width:100%;margin-bottom:1.875rem}}@supports not (display:grid){.layout--case-study-landing>.layout__region{width:100%;margin-bottom:1.875rem}}@media (min-width:768px){.layout--case-study-landing>.layout__region--eight-first,.layout--case-study-landing>.layout__region--eight-second,.layout--case-study-landing>.layout__region--four-first,.layout--case-study-landing>.layout__region--four-second,.layout--case-study-landing>.layout__region--twelve-first,.layout--case-study-landing>.layout__region--twelve-second,.layout--case-study-landing>.layout__region--two-first,.layout--case-study-landing>.layout__region--two-second{grid-column:auto/span 6}}@media (min-width:768px) and (-ms-high-contrast:active),(min-width:768px) and (-ms-high-contrast:none){.layout--case-study-landing>.layout__region--eight-first,.layout--case-study-landing>.layout__region--eight-second,.layout--case-study-landing>.layout__region--four-first,.layout--case-study-landing>.layout__region--four-second,.layout--case-study-landing>.layout__region--twelve-first,.layout--case-study-landing>.layout__region--twelve-second,.layout--case-study-landing>.layout__region--two-first,.layout--case-study-landing>.layout__region--two-second{width:calc(50% - .9375rem);margin-bottom:1.875rem}}@media (min-width:768px){@supports not (display:grid){.layout--case-study-landing>.layout__region--eight-first,.layout--case-study-landing>.layout__region--eight-second,.layout--case-study-landing>.layout__region--four-first,.layout--case-study-landing>.layout__region--four-second,.layout--case-study-landing>.layout__region--twelve-first,.layout--case-study-landing>.layout__region--twelve-second,.layout--case-study-landing>.layout__region--two-first,.layout--case-study-landing>.layout__region--two-second{width:calc(50% - .9375rem);margin-bottom:1.875rem}}.layout--case-study-landing>.layout__region--eight-first img,.layout--case-study-landing>.layout__region--eight-second img,.layout--case-study-landing>.layout__region--four-first img,.layout--case-study-landing>.layout__region--four-second img,.layout--case-study-landing>.layout__region--twelve-first img,.layout--case-study-landing>.layout__region--twelve-second img,.layout--case-study-landing>.layout__region--two-first img,.layout--case-study-landing>.layout__region--two-second img{height:24.75rem;width:100%;-o-object-fit:cover;object-fit:cover}.layout--case-study-landing>.layout__region--nine-first,.layout--case-study-landing>.layout__region--nine-second,.layout--case-study-landing>.layout__region--nine-third,.layout--case-study-landing>.layout__region--six-first,.layout--case-study-landing>.layout__region--six-second,.layout--case-study-landing>.layout__region--six-third{grid-column:auto/span 4}}@media (min-width:768px) and (-ms-high-contrast:active),(min-width:768px) and (-ms-high-contrast:none){.layout--case-study-landing>.layout__region--nine-first,.layout--case-study-landing>.layout__region--nine-second,.layout--case-study-landing>.layout__region--nine-third,.layout--case-study-landing>.layout__region--six-first,.layout--case-study-landing>.layout__region--six-second,.layout--case-study-landing>.layout__region--six-third{width:calc(33.33% - .625rem);margin-bottom:1.875rem}}@media (min-width:768px){@supports not (display:grid){.layout--case-study-landing>.layout__region--nine-first,.layout--case-study-landing>.layout__region--nine-second,.layout--case-study-landing>.layout__region--nine-third,.layout--case-study-landing>.layout__region--six-first,.layout--case-study-landing>.layout__region--six-second,.layout--case-study-landing>.layout__region--six-third{width:calc(33.33% - .625rem);margin-bottom:1.875rem}}.layout--case-study-landing>.layout__region--nine-first img,.layout--case-study-landing>.layout__region--nine-second img,.layout--case-study-landing>.layout__region--nine-third img,.layout--case-study-landing>.layout__region--six-first img,.layout--case-study-landing>.layout__region--six-second img,.layout--case-study-landing>.layout__region--six-third img{height:20.25rem;width:100%;-o-object-fit:cover;object-fit:cover}}
.social-share-menu{position:absolute;display:none;bottom:0;right:103%;transform:translatex(50%)}@media (min-width:1270px){.social-share-menu{display:block}}.hero__content .social-share-menu{bottom:50%}.social-share-menu__share-button{display:block;padding-bottom:.625rem;border:0;background:transparent}.social-share-menu__share-button:focus,.social-share-menu__share-button:hover{outline:0}.social-share-menu__share-button:focus path,.social-share-menu__share-button:hover path{fill:#177ab6}.social-share-menu__share-button:active path{fill:#185d87}.social-share-menu__menu{position:absolute;width:.0625rem;height:.0625rem;padding:0;overflow:hidden;white-space:nowrap;clip-path:inset(50%);border:0;pointer-events:none;opacity:0;transition:opacity .5s}.social-share-menu__menu.focusable:active,.social-share-menu__menu.focusable:focus{position:relative;z-index:5;clip-path:none;overflow:visible;height:auto;width:auto;pointer-events:auto;opacity:1}.social-share-menu:hover .social-share-menu__menu{position:static;width:auto;height:auto;overflow:visible;white-space:nowrap;clip-path:none;border:0;pointer-events:auto;position:absolute;left:0;top:100%;width:100%;opacity:1}.social-share-menu:focus-within .social-share-menu__menu{position:static;width:auto;height:auto;overflow:visible;white-space:nowrap;clip-path:none;border:0;pointer-events:auto;position:absolute;left:0;top:100%;width:100%;opacity:1}.social-share-menu__button{display:flex;justify-content:center;align-items:center;padding:.5rem 0;width:100%;border:0;background:transparent}.social-share-menu__button:focus,.social-share-menu__button:hover{outline:0}.social-share-menu__button:focus path,.social-share-menu__button:hover path{fill:#177ab6}.social-share-menu__button:active path{fill:#185d87}.social-share-menu__button:first-child{padding-top:1rem}.social-share-menu__button path{fill:#657486;transition:all .2s}.social-share-row{grid-column:1/-1;display:flex;align-items:center}.social-share-row__text{margin:0 .4375rem 0 0;white-space:nowrap;font-size:.87794rem;font-style:italic;color:#657486}.social-share-row__button{border:0;margin:0 .4375rem;padding:0;background:transparent;width:100%;cursor:pointer}.social-share-row__button:focus path,.social-share-row__button:hover path{fill:#4d5b65}.social-share-row__button svg{display:block}.social-share-row__button path{fill:#657486;transition:all .2s}.social-share--twitter svg{width:1.25rem;height:1rem}.social-share--facebook svg{width:.625rem;height:1.3125rem}.social-share--linkedin svg{width:1.25rem;height:1.1875rem}
.comments-outer{margin-bottom:5.25rem}@media (min-width:768px){.comments-outer{margin-bottom:6.75rem}}.no-js .comments-outer{display:none}.comments--header{display:flex;flex-direction:column-reverse}@media (min-width:500px){.comments--header{flex-direction:row;justify-content:space-between;align-items:center}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.comments--header{max-width:47.5rem}}@supports not (display:grid){.comments--header{max-width:47.5rem}}.comments--header .social-share-row{margin:0 auto 3.5rem}@media (min-width:500px){.comments--header .social-share-row{margin:0}}.comments{margin-top:.875rem}@media (min-width:768px){.comments{margin-top:1.125rem}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.comments{max-width:47.5rem}}@supports not (display:grid){.comments{max-width:47.5rem}}.show-comments{font-size:1.25rem;font-family:FreightSansPro,Helvetica,Arial,sans-serif;line-height:1.75rem;position:relative;z-index:1;border:0;font-weight:700;color:#0068a8;background:transparent}@media (min-width:768px){.show-comments{line-height:2.25rem}}.show-comments .disqus-comment-count{position:relative;top:-.1875rem;margin-right:.5rem}.show-comments .u-css-art-plus-sign{transition:opacity .25s ease-out}.show-comments[aria-expanded=true] .u-css-art-plus-sign{opacity:0}
code[class*=language-]{padding-top:3.5rem;padding-bottom:3.5rem;padding-right:3.75rem}@media (min-width:768px){code[class*=language-]{padding-top:4.5rem;padding-bottom:4.5rem}}code[class*=language-],pre[class*=language-]{line-height:1.75rem;font-family:Consolas,monospace;color:#21323f;background:none;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-ms-hyphens:none;hyphens:none}@media (min-width:768px){code[class*=language-],pre[class*=language-]{line-height:2.25rem}}pre[class*=language-]{display:flex;padding:0;overflow:auto;-webkit-overflow-scrolling:touch;background:#fff}:not(pre)>code{display:inline;padding:.4375rem .3125rem;white-space:normal;background:#f9f9f9;color:#657486;word-break:break-all}@media (min-width:1120px){:not(pre)>code{word-break:normal}}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#657486}.token.punctuation{color:#999}.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#3497e9}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#33ad20}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#9a6e3a}.token.atrule,.token.attr-value,.token.keyword{color:#905}.token.class-name,.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}pre[class*=language-].line-numbers{position:relative;padding-left:4.375rem;counter-reset:linenumber}@media (min-width:768px){pre[class*=language-].line-numbers{padding-left:8.125rem}}pre[class*=language-].line-numbers>code{position:relative;white-space:inherit}.line-numbers .line-numbers-rows{padding-top:3.5rem;padding-bottom:3.5rem;position:absolute;pointer-events:none;top:0;font-size:100%;left:-4.375rem;width:2.5rem;letter-spacing:-.0625rem;background-color:#f9f9f9;border-right:.0625rem solid #edeff0;-moz-user-select:none;-ms-user-select:none;user-select:none}@media (min-width:768px){.line-numbers .line-numbers-rows{padding-top:4.5rem;padding-bottom:4.5rem;left:-8.125rem;width:4.375rem}}.line-numbers-rows>span{pointer-events:none;display:block;counter-increment:linenumber}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.line-numbers-rows>span{display:flex;justify-content:center;align-items:center;height:2.25rem}}.line-numbers-rows>span:before{line-height:1.75rem;content:counter(linenumber);color:#657486;display:block;text-align:center;font-size:.98763rem}@media (min-width:768px){.line-numbers-rows>span:before{line-height:2.25rem}}
.article__authors-and-date-wrapper{font-size:.98763rem;line-height:1.75rem;margin-bottom:.875rem;font-style:italic}@media (min-width:768px){.article__authors-and-date-wrapper{line-height:2.25rem;margin-bottom:1.125rem;font-size:1.11113rem}}.article__authors-and-date-wrapper a{text-decoration:none!important;color:#fff;box-shadow:inset 0 -.125rem 0 0 #fff;transition:color .4s cubic-bezier(.55,.085,0,.99),box-shadow .4s cubic-bezier(.55,.085,0,.99)}.article__authors-and-date-wrapper a:focus,.article__authors-and-date-wrapper a:hover{color:#f4f6f7;box-shadow:inset 0 -.5625rem 0 0 #667786}@media (min-width:768px){.article__authors-and-date-wrapper div{display:inline-block}}@media (min-width:960px){.hero--light-on-dark .article__authors-and-date-wrapper{font-size:1.11113rem}}.article__date:nth-child(2):before{height:.875rem;top:.175rem}@media (min-width:768px){.article__date:nth-child(2):before{height:1.125rem}}@media (min-width:768px){.article__date:nth-child(2):before{top:.225rem}}@media (min-width:768px){.article__date:nth-child(2):before{content:"";position:relative;display:inline-block;width:.25rem;margin:0 .75em;border:.0625rem solid rgba(237,239,240,.7);border-top:0;border-bottom:0;transform:skew(-15deg)}}.article__date:nth-child(2):before .hero--dark-on-light{border-color:rgba(33,50,63,.7)}.article__body{margin-bottom:1.75rem}@media (min-width:768px){.article__body{margin-bottom:2.25rem}}.article__about-authors-outer{margin-bottom:5.25rem}@media (min-width:768px){.article__about-authors-outer{margin-bottom:6.75rem}}@media (min-width:768px){.related-links[class]+*{margin-top:0}}
.search-form{margin-top:3.5rem;margin-bottom:5.25rem;padding-bottom:1.75rem;grid-column:1/-1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-column-gap:1.25rem;justify-self:stretch;background:#f9f9f9;box-shadow:-50vw -100vw 0 100vw #f9f9f9}@media (min-width:768px){.search-form{margin-top:4.5rem;margin-bottom:6.75rem;padding-bottom:2.25rem;grid-template-columns:repeat(12,minmax(0,1fr));grid-column-gap:1.875rem;max-width:80rem;margin-left:auto;margin-right:auto}}.search-form>*{grid-column:1/-1;justify-self:stretch}@media (min-width:900px){.search-form>*{grid-column:2/-2}}.search-form+h2{position:absolute;width:.0625rem;height:.0625rem;padding:0;overflow:hidden;white-space:nowrap;clip-path:inset(50%);border:0;pointer-events:none;opacity:0}.search-form+h2.focusable:active,.search-form+h2.focusable:focus{position:relative;z-index:5;clip-path:none;overflow:visible;height:auto;width:auto;pointer-events:auto;opacity:1}.search-form label[for=edit-keys]{position:absolute;width:.0625rem;height:.0625rem;padding:0;overflow:hidden;white-space:nowrap;clip-path:inset(50%);border:0;pointer-events:none;opacity:0}.search-form label[for=edit-keys].focusable:active,.search-form label[for=edit-keys].focusable:focus{position:relative;z-index:5;clip-path:none;overflow:visible;height:auto;width:auto;pointer-events:auto;opacity:1}.search-form .container-inline{display:flex}.search-form .container-inline input[type=search]{width:100%}.search-form .container-inline input[type=submit][class][class]{height:auto;padding-left:1.875rem;padding-right:1.875rem}.search-form .form-item{flex-grow:1}.search-help-link{display:none}

/*
     FILE ARCHIVED ON 16:54:05 Aug 29, 2022 AND RETRIEVED FROM THE
     INTERNET ARCHIVE ON 23:48:26 Dec 14, 2024.
     JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE.

     ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C.
     SECTION 108(a)(3)).
*/
/*
playback timings (ms):
  captures_list: 0.601
  exclusion.robots: 0.056
  exclusion.robots.policy: 0.02
  esindex: 0.01
  cdx.remote: 14.09
  LoadShardBlock: 81.892 (3)
  PetaboxLoader3.datanode: 159.819 (5)
  load_resource: 571.976 (2)
  PetaboxLoader3.resolve: 399.217 (2)
*/