/* *************************************************************** */
/* ************************ IMPORT FONTS ************************* */
/* *************************************************************** */

/* Roboto Weight 300 */
@font-face {
    font-family: 'Roboto-Light';
    src: url(font/Roboto-Light.ttf); }

  /* Roboto Weight 400 */
  @font-face {
    font-family: 'Roboto-Regular';
    src: url(font/Roboto-Regular.ttf); }

  /* Roboto Weight 500 */
  @font-face {
    font-family: 'Roboto-Medium';
    src: url(font/Roboto-Medium.ttf); }

  /* Roboto Condensed Weight 400 */
  @font-face {
    font-family: 'Roboto-Condensed';
    src: url(font/RobotoCondensed-Regular.ttf); }

  /* *************************************************************** */
  /* ******************* SET VARIABLES *********************** */
  /* *************************************************************** */

  :root {
   --white: #FFFFFF;
   --primary-blue: #003A70;
   --primary-blue-darker: #012E57;
   --primary-blue-darkest: #001E39;
   --secondary-blue: #9DB9D2;
   --primary-grey: #EDEDED;
   --primary-grey-darker: #7a7a7a;
   --black: #1F1F1F;
   --red: #ff0000;
   --small-line-height: 24px;
   --mid-line-height: 27px;
   --large-line-height: 35px;

  }

   /* *************************************************************** */
   /* *************** BASIC RESPONSIVE PAGE SET UP ****************** */
   /* *************************************************************** */


  * {
    margin: 0;
    padding: 0;
    font-family: 'Roboto-Regular', Arial, Helvetica, sans-serif;
    font-weight: 400;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }

  /* Defines the maximum reach of page elements i.e the boxes on the home page */
  .contain-page {
    margin: 0 auto;
    min-width: 250px;
  }

  /* Defines the maximum reach of page content */
  .contain-elements {
    margin-left: 3vw;
    margin-right: 3vw;
    min-width: 250px;
    position: relative;
    z-index: 5;
  }

  /* Defines the maximum reach of page content for sections who span the entire
  width of the screen in the mobile view */
  .contain-mid-section-elements {
    margin-left: 0vw;
    margin-right: 0vw;
    min-width: 250px;
  }

  /* Defines the maximum reach of page content sections whos text flows horizontally */
  .contain-horz-home-text {
    margin-left: 3vw;
    margin-right: 3vw;
    min-width: 250px;
    max-width: 1120px;
    padding-top: max(30px, 6vw);
    padding-bottom: max(30px, 6vw);
  }

  /* Defines the maximum reach of page content sections whos text flows vertically */
  .contain-vert-home-text {
    margin-left: 5vw;
    margin-right: 5vw;
    min-width: 250px;
    max-width: 1030px;
    padding-top: max(40px, 6vw);
    padding-bottom: max(35px, 6vw);
  }

  /* Defines the maximum reach of page content for text heavy subpages */
  .contain-subpage-text {
    max-width: 1340px;
    margin: auto;
  }

  @media (min-width: 600px) {
    .contain-elements {
      margin-left: 4.5vw;
      margin-right: 4.5vw;
    }

    .contain-horz-home-text {
      margin-left: 6vw;
      margin-right: 6vw;
    }

    .contain-vert-home-text {
      margin-left: 10vw;
      margin-right: 10vw;
    }
  }

  @media (min-width: 1440px) {

    .contain-elements {
      margin-left: 4.5vw;
      margin-right: 4.5vw;
    }

    .contain-vert-home-text {
      margin: 0 auto;
      padding-top: min(6vw, 100px);
      padding-bottom: min(6vw, 100px);
    }

    .contain-horz-home-text {
      margin: 0 auto;
      padding-top: min(6vw, 100px);
      padding-bottom: min(6vw, 100px);
    }
  }

  /* *************************************************************** */
  /* *************************** NAV BAR *************************** */
  /* *************************************************************** */

  nav {
    background-color: var(--white);
    height: 317px;
    display: flex;
    align-items: center;
    overflow: hidden;
  }

  nav img {
    min-height: 47px;
    min-width: 210px;
    max-height: 47px;
    max-width: 210px;
    margin-top: 20px;
  }

  nav ul {
    justify-content: space-between;
    list-style: none;
    padding: 0;
    margin-top: 0px;
    margin-bottom: 0px;
  }

  nav li {
    padding-bottom: 12px;
    line-height: 10px;
  }

  nav li a {
    text-decoration: none;
    font-size: 18px;
    font-family: 'Roboto-Medium', Arial, Helvetica, sans-serif;
    font-weight: 500;
    color: var(--primary-blue);
  }

  .navlinks ul, .navlinks ol {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
  }

  @media (min-width: 600px) {

    nav ul {
        margin-top: 15px;
        margin-bottom: 15px;
      }

    nav {
    height: 336px;
    }

  }

  nav li > a:after { content: ' >';}

  @media (min-width: 820px) {

    nav {
      height: 190px;
    }

    nav img {
      max-height: 60px;
      max-width: 268px;
      min-height: 49px;
      min-width: 222px;
      margin-top: 24px;
    }

    nav ul {
      display: flex;
    }

    nav li {
      padding-bottom: 0px;
    }

    nav li a {
      font-size: min(20px,2.2vw);
    }

    nav li > a:after { content: '';}

    /* - nav bar link hover animation - */

    .link-arrow:after {
      content: '';
      background-size: 100% 100%;
      width: 16px;
      height: 12px;
      position: absolute;
      top: 5px;
      right: -28px;
      -webkit-transition: all .4s cubic-bezier(.35, 1, .33, 1);
      transition: all .4s cubic-bezier(.35, 1, .33, 1)
    }

    .link-arrow:hover:after {
      right: -35px
    }

    .link-arrow.link-arrow-white:after {
      background-size: 100% 100%
    }

    .link-arrow-hover:after {
      right: -35px
    }

    .link {
      display: inline-block;
      position: relative;
      border: none;
      padding-bottom: 4px;
      font-family: 'Roboto-Medium', Arial, Helvetica, sans-serif;
      font-weight: 500;
      color: var(--primary-blue);
    }

    .link:active,
    .link:focus,
    .link:hover {
      outline: 0
    }

    .link:before {
      content: '';
      position: absolute;
      left: 0;
      bottom: 0;
      background: var(--white);
      width: 0;
      height: 2px;
      -webkit-transition: all .4s cubic-bezier(.35, 1, .33, 1);
      transition: all .4s cubic-bezier(.35, 1, .33, 1)
    }

    .link:hover {
      color: var(--primary-blue);
    }

    .link:hover:before {
      width: 100%
    }

    .link-theme:before {
      background: var(--primary-blue);
    }
  }

  @media (min-width: 1200px) {

    /* This allows the columns to remain "unstacked" after the col-xl breakpoint */

    .logo-container, .links-container {
        flex: none !important;
        max-width: none !important;
      }
  }

  @media (min-width: 1320px) {

    nav img {
        margin-top: 0px;
      }

      nav ul {
        margin-top: 0px;
        margin-bottom: 0px;
        padding-left: 30px;
      }

    .logo-container {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }

    .links-container {
        flex: 0 0 75% !important;
        max-width: 75% !important;
    }
  }


  /* *************************************************************** */
  /* *************************** FOOTER **************************** */
  /* *************************************************************** */

  .footer {
    margin-top: max(20px, 6vw);
    margin-bottom: max(20px, 6vw);
  }

  footer span, footer a {
    font-family: 'Roboto-Condensed', Arial Narrow, Helvetica, sans-serif;
    font-weight: 400;
    color: var(--primary-blue-darker);
    font-size: 14px;
    line-height: 10px;
  }

  footer img {
    min-height: 47px;
    min-width: 180px;
    width: 33vw;
    max-height: 47px;
    max-width: 210px;
  }

  .footer-logo {
    order: 1;
  }

  .address {
    order: 2;
    line-height: 25px;
    padding-top: 15px;
  }

  .email {
    order: 3;
    padding-top: 15px;
  }

  .phone {
    order: 4;
    padding-top: 15px;
  }

  .copyright, .copyright span {
    order: 5;
    font-size: 14px;
    padding-top: 25px;
  }

  .privacy-policy, .privacy-policy span a {
    order: 6;
    font-size: 14px;
    padding-top: 12px;
  }

  @media (min-width: 600px) {

    .footer {
      margin-top: 5vw;
      margin-bottom: 5vw;
    }

    footer span, footer a {
      font-size: 16px;
      line-height: 18px;
    }


    .address {
      padding-top: 25px;
    }

    .email {
      padding-top: 20px;
    }

    .phone {
      padding-top: 20px;
    }

    .copyright, .copyright span {
      padding-top: 30px;
    }

    .privacy-policy, .privacy-policy span a {
      padding-top: 10px;
    }

  }

  @media (min-width: 992px) {

    .footer {
      margin-top: 60px;
      margin-bottom: 60px;
    }

    footer span, footer a {
      font-size: 18px;
      line-height: 28px;
    }

    footer img {
      min-height: 47px;
      min-width: 210px;
      max-height: 47px;
      max-width: 210px;
    }

    .footer-logo {
      order: 1;
    }

    .address {
      order: 2;
      padding-top: 0px;
      text-align: right;
    }

    .email {
      text-align: right;
    }

    .phone {
      order: 6;
      text-align: right;
    }

    .copyright, .copyright span {
      order: 4;
      font-size: 14px;
      padding-top: 20px;
    }

    .privacy-policy, .privacy-policy span, .privacy-policy a {
      order: 5;
      font-size: 14px;
      padding-top: 20px;
      text-align: center;
    }

  }


  /* *************************************************************** */
  /* ************************* LIST STYLES ************************* */
  /* *************************************************************** */

  ul, ol, li, li a {
    font-size: 16px;
    font-weight: 400;
    font-family: 'Roboto-Regular', Arial, Helvetica, sans-serif;
    line-height: 1.45em;
    margin: 0px;
    color: var(--primary-blue-darkest);
  }

  li {
    padding-bottom: 11.8px;
  }

  /* to avoid double padding in certain situations like nested lists */
  li.last {
    padding-bottom: 0px;
  }

  ul {
    padding-bottom: var(--small-line-height);
    padding-left: 30px;
  }

  ul.least-padding {
    padding-bottom: calc(var(--small-line-height) * 0.50);
  }

  ul.wider {
    margin-top: -9px;
  }

  ul.wider > li {
    padding-bottom: 15px;
  }

  ul.wider > li.last {
    padding-bottom: 0px;
  }

  ul.wider.less-padding {
    padding-bottom: calc(var(--small-line-height) * 0.90);
  }




  /* to avoid double padding in certain situations like nested lists */
  ul.last {
    padding-bottom: 0px;
  }

  ul.nested {
    padding-left: 42px;
  }

  ul.nested-dashed {
    padding-left: 30px;
  }


  /* List with no bullets */

  ul.no-bullets {
    list-style: none;
  }

  /* List with dashes */

  ul.dashed {
    list-style-type: none;
  }

  ul.dashed > li {
    text-indent: -21px;
  }

  ul.dashed > li.last {
    padding-bottom: 0px;
  }

  ul.dashed > li:before {
    content: "— ";
    text-indent: -5px;
  }


  @media (min-width: 600px) {

    ul, ol, li, li a {
      font-size: 18px;
      margin:0px;
    }

    li {
      padding-bottom: 13.5px;
    }

    ul {
      padding-bottom: var(--mid-line-height);
      padding-left: 38px;
    }

    ul.least-padding {
      padding-bottom: calc(var(--mid-line-height) * 0.50);
    }

    ul.nested {
      padding-left: 42px;
    }

    ul.nested-dashed {
      padding-left: 30px;
    }

    ul.wider {
      margin-top: -10px;
    }

    ul.wider > li {
      padding-bottom: 17px;
    }

    ul.wider.less-padding {
      padding-bottom: calc(var(--mid-line-height) * 0.90);
    }


  }

  @media (min-width: 992px) {

    ul, ol, li, li a {
      font-size: 20px;
      margin:0px;
    }

    li {
      padding-bottom: 17px;
    }

    ul {
      padding-bottom: var(--large-line-height);
      padding-left: 52px;
    }

    ul.least-padding {
      padding-bottom: calc(var(--large-line-height) * 0.50);
    }

    ul.wider {
      margin-top: -13px;
    }

    ul.wider > li {
      padding-bottom: 22px;
    }

    ul.wider.less-padding {
      padding-bottom: calc(var(--large-line-height) * 0.90);
    }


  }



  /* *************************************************************** */
  /* ************************ TEXT STYLES**************************** */
  /* *************************************************************** */

  /*
  --small-line-height: 24px;
  --mid-line-height: 27px;
  --large-line-height: 35px; */

  /* Hero Text */
  h1 {
    font-size: 6vw;
    font-weight: 400;
    font-family: 'Roboto-Condensed', Arial Narrow, Helvetica, sans-serif;
    color: #FFFFFF;
    padding-bottom: 2vw;
  }

  /* Home Page Box Headings */
  h2 {
    font-size: 6vw;
  }

  /* Subpage Headings */
  h3 {
    font-size: 30px;
    font-weight: 500;
    font-family: 'Roboto-Medium', Arial, Helvetica, sans-serif;
    margin-bottom: max(25px, 6vw);
    margin-top: max(30px, 7vw);
    color: var(--primary-blue-darkest);
  }

  /* Sub Page, Sub Headings */
  h4 {
    font-size: 20px;
    font-weight: 500;
    padding-top: 8px;
    font-family: 'Roboto-Medium', Arial, Helvetica, sans-serif;
    margin-bottom: max(24px, 5vw);
    color: var(--primary-blue-darkest);
  }

  /* Sub Page Sub, Sub Headings */
  h5 {
    font-weight: 500;
    font-family: 'Roboto-Medium', Arial, Helvetica, sans-serif;
    padding-top: 8px;
    padding-bottom: calc(var(--small-line-height) * 0.90);
    font-size: 18px;
    color: var(--primary-blue-darkest);
  }

  /* Home Page - 'Learn More' */
  h6 {
    font-size: 24px;
    font-weight: 500;
    font-family: 'Roboto-Medium', Arial, Helvetica, sans-serif;
  }

  p, a, td, th, .subpage figcaption.paragraph {
    font-size: 16px;
    font-weight: 400;
    font-family: 'Roboto-Regular', Arial, Helvetica, sans-serif;
    line-height: var(--small-line-height);
    margin: 0px;
    color: var(--primary-blue-darkest);
  }

  p {
    padding-bottom: var(--small-line-height);
  }

  p.less-padding {
    padding-bottom: calc(var(--small-line-height) * 0.90);
  }

  p.least-padding {
    padding-bottom: calc(var(--small-line-height) * 0.50);
  }

  p.no-padding {
    padding-bottom: 0px;
  }

  .add-space-above {
    margin-top: var(--small-line-height);
  }

  .add-space-below {
    margin-bottom: var(--small-line-height);
  }

  i {
    font-family: inherit;
  }

  sup {
    vertical-align: top;
    position: relative;
    top: -0.4em;
    font-family: 'Roboto-Regular', Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-size: 12px;
    text-decoration: none;
  }

  sub {
    vertical-align: bottom;
    position: relative;
    bottom: -0.6em;
    font-family: 'Roboto-Regular', Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-size: 12px;
    text-decoration: none;
  }

  ol.footnote, .disclaimer {
    line-height: 1.5em;
    font-size: 14px;
    font-family: 'Roboto-Regular', Arial, Helvetica, sans-serif;
    font-weight: 400;
    margin-top: min(20px,5vw);
    color: var(--primary-blue-darkest);
  }

  ol.footnote {
    padding-left: 17px;
  }

  ol.footnote > li, ol.footnote a {
    font-size: 14px;
    padding-bottom: 12px;
    line-height: 1.4em;
  }

  ol.footnote > li.last {
    padding-bottom: 0px;
  }

  b {
    font-family: 'Roboto-Medium', Arial, Helvetica, sans-serif;
    font-weight: 500;
  }

  /****** Home Page Text Styles *******/

  /* Home Page Text Colors */
  .what-we-do {
    color: var(--primary-blue-darkest);
  }

  .core-technologies, .research, .drug-discovery {
    color: var(--white);
  }

  /* Home Page - 'boxed text' */
  .contain-horz-home-text span, .contain-vert-home-text span {
    font-weight: 400;
    font-family: 'Roboto-Regular', Arial, Helvetica, sans-serif;
    font-size: 3.2vw;
    line-height: 1.1vw;
    display: block;
  }

  .home-spacing {
    display: none;
  }

  .home-text-margin {
    margin-top: 2.8vw;
  }


  a.learn-more {
    font-size: min(24px,2.7vw);
    font-weight: 400;
    font-family: 'Roboto-Regular', Arial, Helvetica, sans-serif;
    text-decoration: none;
    color: var(--white);
    padding-top: 1px;
    display: block;
  }

  a.research.learn-more {
    float: inherit;
    text-align: inherit;
    display: inherit;
  }

  .horz-heading {
    padding-bottom: max(5%, 35px);
  }

  .vert-heading {
    padding-bottom: max(5%, 35px);
    text-align: left;
  }

  a.home {
    text-decoration: none;
    font-size: inherit;
    color: inherit;
    font-family: 'Roboto-Medium', Arial, Helvetica, sans-serif;
    font-weight: 500;
  }

  .what-we-do span {
    font-family: 'Roboto-Medium', Arial, Helvetica, sans-serif;
    font-weight: 500;
  }

  /* subpage text styles */

  .centered-text p, .centered-text h5, .centered-text h4, .centered-text h3, .centered-text ul {
    padding-left: 6vw;
    padding-right: 6vw;
  }

  .centered-text ul {
    padding-left: min(250px,9vw);
  }

  /* Home Page Specific Text Padding */
  .hero-line-2 {
    padding-left: 22%;
  }

  .hero-line-3 {
    padding-left: 11%;
  }

  .hero-line-4 {
    padding-left: 33%;
  }

  .hero-text {
    padding-top: 75px;
  }

  .section-horz-line-2 {
    padding-left: 10.0%;
  }

  .section-horz-line-3 {
    padding-left: 4.44%;
  }

  .section-horz-line-4 {
    padding-left: 15%;
  }

  .section-horz-line-5 {
    padding-left: 10%;
  }

  .section-vert-line-2 {
    padding-left: 10%;
  }

  .section-vert-line-3 {
    padding-left: 4.44%;
  }

  .section-vert-line-4 {
    padding-left: 15%;
  }

  .section-vert-line-5 {
    padding-left: 10%;
  }

  .research .section-vert-line-5 {
    padding-left: 8.9%;
  }

  .section-vert-line-6 {
    padding-left: 19.44%;
  }

  /* General Indentation Options */

  .indentation-1 {
    padding-left: min(2vw,20px);
  }

  .indentation-2 {
    padding-left: min(4vw,40px);
  }

  .indentation-3 {
    padding-left: min(6vw,60px);
  }

  .indentation-4 {
    padding-left: min(8vw,80px);
  }

  .indentation-5 {
    padding-left: min(10vw,100px);
  }

  @media (min-width: 450px) {
    /* Home Page - 'boxed text' */
    .contain-horz-home-text span, .contain-vert-home-text span {
      line-height: 1.5vw;
    }

    .home-text-margin {
      margin-top: 2.6vw;
    }

  }

  @media (min-width: 500px) {
    /* Home Page - 'boxed text' */
    .contain-horz-home-text span, .contain-vert-home-text span {
      line-height: 1.7vw;
    }

  }

  @media (min-width: 520px) {
    /* Increase hero text top padding */
    .hero-text {
      padding-top: 80px;
    }
  }


  @media (min-width: 550px) {
    /* Home Page - 'boxed text' */
    .contain-horz-home-text span, .contain-vert-home-text span {
      line-height: 2vw;
    }

  }

  @media (min-width: 576px) {
    /* Hero Text */
    h1 {
      font-size: min(60px, 4.1vw);
      padding-bottom: min(10px, 2vw);
    }

    /* Home Page Specific Text Padding */
    .hero-line-2 {
      padding-left: min(204px,20.5%);
    }

    .hero-line-3 {
      padding-left: min(110px,11%);
    }

    .hero-line-4 {
      padding-left: min(312px,31.5%);
    }
  }

  @media (min-width: 600px) {
    /* Home Page Box Headings */
    h2 {
      font-size: min(48px,4.6vw);
    }

    /* Subpage Headings */
    h3 {
      font-size: 34px;
      margin-bottom: 5.5vw;
      margin-top: 7vw;
    }

    /* Sub Page, Sub Headings */
    h4 {
      font-size: 22px;
      margin-bottom: min(30px,4vw);
    }

    /* Sub Page Sub, Sub Headings */
    h5 {
      font-weight: 500;
      font-family: 'Roboto-Medium', Arial, Helvetica, sans-serif;
      font-size: 20px;
      padding-bottom: calc(var(--mid-line-height) * 0.90);
    }

    p, a, td, th, .subpage figcaption.paragraph {
      font-size: 18px;
      line-height: 27px;
    }

    p {
      padding-bottom: var(--mid-line-height);
    }

    p.less-padding {
      padding-bottom: calc(var(--mid-line-height) * 0.90);
    }

    p.least-padding {
      padding-bottom: calc(var(--mid-line-height) * 0.50);
    }

    a.research.learn-more {
      float:right;
      text-align: right;
    }

    .vert-heading {
      text-align: center;
    }

    .add-space-above {
      margin-top: var(--mid-line-height);
    }

    .add-space-below {
      margin-bottom: var(--mid-line-height);
    }

    ol.footnote, .disclaimer {
      font-size: 14px;
      margin-top: min(20px,4vw);
      margin-bottom: max(-15px,-1vw);

      /* The negative margin to align spacing of the footnote in between
      the small line and footer line */
    }


    /* Home Page - 'boxed text' */
    .contain-horz-home-text span {
      font-size: 2.53vw;
      line-height: 1.4vw;
    }

    .contain-vert-home-text span {
      font-size: 2.53vw;
      line-height: 1.4vw;
    }

    a.learn-more {
      font-size: min(24px,2.4vw);
      padding-top: 0.7vw;
    }

    /* Increase hero text top padding */
    .hero-text {
      padding-top: min(10vw,160px);
      margin: auto;
      max-width: 1080px;
    }

    /* Home Page Specific Text Padding */
    .section-horz-line-2 {
      padding-left: 17.8%;
    }

    .section-horz-line-3 {
      padding-left: 8.7%;
    }

    .section-horz-line-4 {
      padding-left: 27.5%;
    }

    .section-horz-line-5 {
      padding-left: 17.8%;
    }

    .section-vert-line-2 {
      padding-left: 9.95%;
    }

    .section-vert-line-3 {
      padding-left: 5%;
    }

    .section-vert-line-4 {
      padding-left: 15%;
    }

    .section-vert-line-5 {
      padding-left: 10%;
    }

    .research .section-vert-line-5 {
      padding-left: 8.84%;
    }

    .section-vert-line-6 {
      padding-left: 20%;
    }

    .drug-discovery .section-vert-line-6 {
      padding-left: 20%;
    }

  }


  @media (min-width: 700px) {
    /* Home Page - 'boxed text' */
    .contain-horz-home-text span {
      line-height: 1.9vw;
    }

    /* Home Page - 'boxed text' */
    .contain-vert-home-text span {
      line-height: 1.9vw;
    }

    a.learn-more {
      font-size: min(24px,2.4vw);
      padding-top: 1.9vw;
    }

  }


  /* Specifically for the iPhone Landscape View */
  @media (min-width: 750px) and (max-width: 750px) {

    .contain-horz-home-text span, .contain-vert-home-text span {
      font-size: 11.43px;
      line-height: 10px;
    }

    .home-text-margin {
      margin-top: 15px;
    }

    /* These render at the same size on the actual device */
    a.learn-more {
      font-size: 10px;
      padding-top: 6px;
    }

    a.research.learn-more {
      font-size: 17px;
    }
  }

  @media (min-width: 992px) {
    /* Home Page Box Headings */
    h2 {
      font-size: 48px;
    }

    /* Subpage Headings */
    h3 {
      font-size: 36px;
      margin-bottom: 50px;
      margin-top: 70px;
    }

    /* Sub Page, Sub Headings */
    h4 {
      font-size: 24px;
    }

    /* Sub Page Sub, Sub Headings */
    h5 {
      font-weight: 500;
      font-family: 'Roboto-Medium', Arial, Helvetica, sans-serif;
      font-size: 22px;
      padding-bottom: calc(var(--large-line-height) * 0.90);

    }

    p, a, td, th, .subpage figcaption.paragraph {
      font-size: 20px;
      line-height: 35px;
    }

    p {
      padding-bottom: var(--large-line-height);
    }

    p.less-padding {
      padding-bottom: calc(var(--large-line-height) * 0.90);
    }

    p.least-padding {
      padding-bottom: calc(var(--large-line-height) * 0.50);
    }

    .add-space-above {
      margin-top: var(--large-line-height);
    }

    .add-space-below {
      margin-bottom: var(--large-line-height);
    }

    ol.footnote, .disclaimer {
      font-size: 16px;
      padding-bottom: 0px;
      margin-top: 25px;
      margin-bottom: -14px;

      /* The negative margin to align spacing of the footnote in between
      the small line and footer line */
    }

    ol.footnote > li, ol.footnote a  {
      font-size: 16px;
      padding-bottom: 16px;
    }

    sup {
      font-size: 14px;
    }

    /* Home Page - 'boxed text' */
    .horz-heading {
      padding-top: min(50%,13vw);
      padding-bottom: 6%;
      font-size: min(48px,3.8vw);
    }

    .vert-heading {
      font-size: min(48px,3.8vw);
      padding-bottom: 6%;
    }

    .contain-horz-home-text span, .contain-vert-home-text span {
      font-size: min(26px,1.81vw);
      line-height: min(40px,3vw);
      display: unset;
    }

    .home-spacing {
      display: unset;
    }

    .home-text-margin {
      display: unset;
      margin-top: 0px;
      margin-bottom: 0px;
    }


    a.learn-more, a.research.learn-more {
      font-size: min(24px,1.6vw);
      padding-top: 0px;
      display: unset;
    }

    .col-12.box-text {
      padding-left: 13%;
    }

    /* Home Page Specific Text Padding */
    .section-horz-line-2 {
      padding-left: 18%;
    }

    .section-horz-line-3 {
      padding-left: 8.7%;
    }

    .section-horz-line-4 {
      padding-left: 29%;
    }

    .section-horz-line-5 {
      padding-left: 19%;
    }

    .section-vert-line-2 {
      padding-left: 15%;
    }

    .section-vert-line-3 {
      padding-left: 6.9%;
    }

    .section-vert-line-4 {
      padding-left: 22.7%;
    }

    .section-vert-line-5 {
      padding-left: 15%;
    }

    .research .section-vert-line-5 {
      padding-left: 15%;
    }

    .section-vert-line-6 {
      padding-left: 29.65%;
    }

    .drug-discovery .section-vert-line-6 {
      padding-left: 29.65%;
    }

  }


  /* *************************************************************** */
  /* ********************** TEXT HEAVY SUBPAGE ********************* */
  /* *************************************************************** */

  .subpage {
    padding-bottom: min(20px,5vw);
  }

  @media (min-width: 600px) {
    .subpage {
      padding-bottom: min(40px,4vw);
    }
  }

  @media (min-width: 990px) {
    .subpage {
      padding-bottom: 40px;
    }
  }

  /* *************************************************************** */
  /* **************************** TOOL TIP ************************* */
  /* *************************************************************** */

  .tooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
  }

  .tooltip .tooltiptext {
    visibility: hidden;
    width: 120px;
    background-color: var(--primary-grey);
    color: var(--primary-blue-darkest);
    text-align: center;
    border-radius: 3px;
    padding: 5px 0;
    position: absolute;
    z-index: 1;
    bottom: 150%;
    left: 50%;
    margin-left: -60px;
    font-family: 'Roboto-Light', Arial, Helvetica, sans-serif;
    font-weight: 300;
    font-size: 14px;
  }

  .tooltip .tooltiptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: var(--primary-grey) transparent transparent transparent;
  }

  .tooltip:hover .tooltiptext {
    visibility: visible;
  }


  /* *************************************************************** */
  /* ******************** DECORATIONAL ELEMENTS ******************** */
  /* *************************************************************** */

  div.line {
    border-bottom: 0.5px solid var(--primary-blue-darker);
  }

  div.small-line {
    border-bottom: 0.5px solid var(--primary-blue-darker);
    max-width: 20%;
    margin: 0 auto;
  }

  div.left-small-line {
    border-bottom: 0.5px solid var(--primary-blue-darker);
    max-width: 40%;
  }


  div.home.main {
    overflow: hidden;
  }


  /* Subpages */

  .subpage video {
    width: 40vw;
    min-width: 268px;
  }

  .subpage video.make-smallish {
    width: 37vw;
    min-width: 244px;
  }

  .subpage video.make-smaller {
    width: 36vw;
    min-width: 234px;
  }

  .subpage video.make-small {
    width: 34vw;
    min-width: 220px;
  }

  img {
    width: min(425px,50vw);
    min-width: 300px;
  }

  img.make-smaller {
    width: 36vw;
    min-width: 234px;
  }

  img.smallish {
    width: 40vw;
    min-width: 230px;
    max-width: 320px;
  }

  figure.d-block.d-sm-none {
    text-align: center;
    position: relative;
    float: none;
    margin: 10px 10px 30px 10px !important;
  }

  figure.d-block.d-sm-none figcaption {
    margin: auto;
  }

  .subpage figure {
    margin: 20px 0px 20px 40px;
    float: right;
  }

  .subpage figure.left {
    margin: 20px 40px 20px 0px;
    float: left;
  }

  .subpage figure.no-margin {
    margin: 0px 0px 0px 0px;
  }

  .subpage figure.no-margin-left {
    float: left;
  }
  .subpage figure.avoid-word-wrap {
    margin: 30px 0px 30px 10px;
  }

  .subpage figure.no-float {
    float: none;
  }

  .subpage figcaption {
    font-size: 12px;
    color: var(--primary-grey-darker);
    font-weight: 300;
    font-family: 'Roboto-Light', Arial, Helvetica, sans-serif;
    font-weight: 300;
    line-height: 20px;
    width: 40vw;
    min-width: 268px;
  }

  .centered-text figure, .video-bottom figure {
    text-align: center;
    position: relative;
    float: none;
    margin: 0 !important;
  }

  .centered-text figcaption, .video-bottom figcaption {
    margin: auto;
  }

  /* Homepage */
  .hero-light-blue-square {
    position: relative;
    background: var(--secondary-blue);
    width: 100%;
    height: 78vw;
    min-height: 350px;
    max-height: 700px;
  }

  .hero-navy-square {
    top: 0;
    left: 0;
    height: 78vw;
    background: var(--primary-blue);
    width: 100%;
    position: absolute;
    min-height: 350px;
    max-height: 700px;
  }

  .white-space {
    position: relative;
    background: var(--white);
    width: 100%;
    height: 4vw;
    max-height: 60px;
  }

  .hide-on-small {
    display: none;
  }

  .white-space.blue-on-small {
    background: var(--primary-blue);
    height: 2vw;
  }

  .white-space.blue-on-small.white-line{
    top: 85%;
    right: 45%;
    height: 10%;
    background: var(--white);
    width: 100%;
    position: absolute;
  }

  .white-space .light-blue-square {
    top: 0;
    left: 75%;
    height: 100%;
    background: var(--secondary-blue);
    width: 25%;
    position: absolute;
  }


  .white-section-background {
    position: relative;
    background: var(--white);
    width: 100%;
    height: auto;
  }


  .what-we-do-blue{
    /* This is the light blue square to the right of the What We Do section */
    top: 0;
    left: 95%;
    height: 60%;
    background: var(--secondary-blue);
    width: 10%;
    position: absolute;
  }

  .grey {
    background: var(--primary-grey);
  }

  .blue {
    background: var(--primary-blue);
  }

  /* Home Page Background Dancer Movies */
  .hero-gif {
    width: max(230px, 32vw);
    max-width: 450px;
    margin-top: min(70px, 6vw);
    position: absolute;
    right: max(10px, 1vw);
    top: 3vw;
    min-width: unset;
  }

  /* Appears first on the left */
  .decoration-4-gif {
    position: absolute;
    right: 12px;
    top: -13vw;
    z-index: 6;
    width: min(450px, 34vw);
    min-width: unset;
  }

  /* Appears second, before Research */
  .decoration-3-gif {
    position: absolute;
    right: 35px;
    top: max(-78px,-12.7vw);
    z-index: 6;
    width: min(400px, 26vw);
    min-width: unset;
  }

  /* Appears third, before Research */
  .decoration-1-gif {
    position: absolute;
    right: 33px;
    top: max(39px,8vw);
    z-index: 6;
    width: min(400px, 25vw);
    min-width: unset;
  }

  /* Appears at the bottom right */
  .decoration-2-gif {
    display: none;
  }

  /* Home Page Interstitial Movies */

  .centered-video-home {
    padding-bottom: min(60px,4vw);
  }

  .centered-video-home video {
    width: min(350px, 70vw);
    height: min(350px, 70vw);
  }

  .centered-video-home figure {
    box-shadow: 0px 0px 20px 10px var(--primary-grey);
    background-color: var(--white);
    padding: 15px 30px 15px 30px;
    width: fit-content;
    max-width: 410px;
    margin: auto;
    text-align: center;
  }

  .centered-video-home figcaption {
    font-size: max(11px, 1.6vw);
    color: var(--primary-grey-darker);
    font-weight: 300;
    font-family: 'Roboto-Light', Arial, Helvetica, sans-serif;
    font-weight: 300;
    line-height: 20px;
    width: min(350px, 70vw);
    margin: auto;
  }

  .centered-video-home .contain-elements {
    background-color: var(--white);
  }

  .right-video-home video {
    width: min(350px, 25vw);
    height: min(350px, 25vw);
  }

  .right-video-home figure {
    background-color: var(--white);
    padding: 5px 15px 5px 15px;
    width: fit-content;
    max-width: 380px;
    margin: auto;
    text-align: center;
    z-index: 6;
    position: absolute;
    right: 1vw;
    top: max(-160px,-11vw);
  }

  .right-video-home figcaption {
    font-size: 14px;
    color: var(--primary-grey-darker);
    font-weight: 300;
    font-family: 'Roboto-Light', Arial, Helvetica, sans-serif;
    line-height: 20px;
    width: min(350px, 25vw);
    margin: auto;
  }

  .left-video-home video {
    width: min(350px, 25vw);
    height: min(350px, 25vw);
  }

  .left-video-home figure {
    background-color: var(--white);
    padding: 5px 15px 5px 15px;
    width: fit-content;
    max-width: 380px;
    margin: auto;
    text-align: center;
    z-index: 6;
    position: absolute;
    left: 1vw;
    top: max(-185px,-14vw);
  }

  .left-video-home figcaption {
    font-size: 14px;
    color: var(--primary-grey-darker);
    font-weight: 300;
    font-family: 'Roboto-Light', Arial, Helvetica, sans-serif;
    line-height: 20px;
    width: min(350px, 25vw);
    margin: auto;
  }

  @media (min-width: 576px) {
    /* Hero Gif dissapears, so the dark blue section expands */
    .hero-light-blue-square {
      height: 50vw;
    }

    .hero-navy-square {
      height: 50vw;
      width: 75%;
    }
  }

  @media (min-width: 600px) {

    .white-space.blue-on-small.technology {
      height: 0vw;
    }

    .hide-on-small {
      display:block;
    }

    .white-space.blue-on-small {
      height: 4vw;
      background: var(--white);
    }

    .centered-video-home figure {
      box-shadow: none;
    }

    .centered-video-home .contain-elements {
      box-shadow: 0px 0px 20px 10px var(--primary-grey);
      margin: 10px 10vw 10px 10vw;
    }

    /* Appears first on the left */
    .decoration-4-gif {
      position: absolute;
      left: -28px;
      top: max(-170px,-11vw);
      z-index: 6;
      width: min(450px, 29vw);
      min-width: unset;
    }

    /* Appears second, before Research */
    .decoration-3-gif {
      position: absolute;
      right: -45px;
      top: max(-170px,-10vw);
      z-index: 6;
      width: min(400px, 24vw);
      min-width: unset;
    }

    /* Appears third, before Research */
    .decoration-1-gif {
      position: absolute;
      left: -20px;
      top: max(-150px,-8vw);
      z-index: 6;
      width: min(400px, 25vw);
      min-width: unset;
    }

    /* Appears at the bottom right */
    .decoration-2-gif {
      position: absolute;
      right: -63px;
      top: max(-300px,-16vw);
      z-index: 6;
      width: min(400px, 23vw);
      min-width: unset;
      display: inline;
    }

    /* Home Page Interstitial Movies */
    .subpage figure {
      margin: 30px 0px 30px 60px
    }

    .subpage figure.left {
      margin: 30px 60px 30px 0px
    }
  }

  @media (min-width: 990px) {
    /* Subpages */
    .subpage video {
      width: min(380px, 32vw);
    }

    .subpage video.make-smallish {
      width: min(340px, 31vw);
    }

    .subpage video.make-smaller {
      width: min(327px, 30.7vw);
    }

    .subpage video.make-small {
      width: min(300px, 30vw);
    }

    img {
      width: min(425px,40vw);
    }

    img.make-smaller {
      width: min(327px, 30.7vw);
    }

    .subpage figure {
      margin: 30px 0px 30px 80px
    }

    .subpage figure.left {
      margin: 30px 80px 30px 0px
    }

    .subpage figcaption {
      font-size: 14px;
      width: min(380px, 32vw);
    }

    /* Home Page */

    .decoration-2-gif {
      right: -70px;
      top: max(-300px,-16vw);
      width: min(450px, 23vw);
    }
  }

  @media (min-width: 1420px) {
    .subpage figure.avoid-word-wrap {
      margin: 35px 0px 30px 10px;
      left: 540px;
      top: 750px;
      position: absolute;
    }
  }

  /* *************************************************************** */
  /* ************************* FORM STYLES ************************* */
  /* *************************************************************** */

  /* Form Text */

  .textarea, fieldset legend {
    font-size: 16px;
    font-weight: 400;
    font-family: 'Roboto-Regular', Arial, Helvetica, sans-serif;
    line-height: 1.45em;
    margin: 0px;
    color: var(--primary-blue-darkest);
  }

  div.form-stack {
    margin-bottom: -19px;
  }

  p.center-submit {
    text-align: center;
  }


  span.required {
    color: var(--red);
  }

  button, input[type=submit] {
    background-color: #eeeeee;
    border: 1.3px solid rgba(202, 202, 202, .69);
    border-radius: 4px;
    box-shadow: rgba(0, 0, 0, .1) 0 2px 4px 0;
    box-sizing: border-box;
    color: var(--primary-blue-darkest);
    cursor: pointer;
    font-family: "Roboto-Regular";
    font-size: 14px;
    font-weight: 400;
    outline: none;
    outline: 0;
    padding: 7px 21px;
    text-align: center;
    transform: translateY(0);
    transition: transform 150ms, box-shadow 150ms;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    min-width: 120px;
  }

  form {
    max-width: 1000px;
    margin: auto;
    font-size: 20px;
    font-family: "Roboto-Regular";
    font-weight: 400;
  }

  annotation {
    display: block;
    font-size: 0.9rem;
    margin: 0.25rem 0 0 0.125rem;
    color: var(--red);
  }

  input[type=text],
  input[type=password],
  select,
  textarea {
    display: block;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 100%;
    max-width: 500px;
    padding: 0.5rem 0.75rem;
    font: inherit;
    color: var(--primary-blue-darkest);
    background-color: white;
    border: 1px solid rgba(0, 0, 0, 0.15);
    height: calc((0.5rem * 2) + (1px * 2) + 20px);
    border-radius: 0.25rem;
    transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  }

  input[type=text]:focus,
  input[type=password]:focus,
  select:focus,
  textarea:focus {
    border-color: var(--secondary-blue);
    outline: 0;
  }

  input[type=text][disabled],
  input[type=password][disabled],
  select[disabled],
  textarea[disabled] {
    background-color: #f2f2f2;
  }

  select {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 50'%3E%3Cpath d='M20,0,0,20H40Zm0,50L0,30H40Z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 0.5rem auto;
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 1.5rem;
    cursor: pointer;
    font-size: 16px;
    font-family: "Roboto-Regular";
    font-weight: 400;
  }

  select[size] {
    height: auto;
    background: none;
    min-height: calc((0.5rem * 2) + (1px * 2) + 18px);
    padding: 0;
  }

  select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #000;
  }

  select option {
    padding: 0.25rem;
  }

  textarea {
    resize: vertical;
    height: auto;
  }

  fieldset {
    margin: 1rem 0;
    padding: 0 1rem;
    border: var(--secondary-blue);
    background-color: rgba(0, 0, 0, 0.03);
    border-radius: 0.25rem;
  }

  fieldset legend {
    padding: 0 0.5rem;
    background-image: linear-gradient(white 50%, transparent);
    border-radius: 0 0 0.5em 0.5em;
  }

  fieldset fieldset {
    background-color: transparent;
  }


  .inline {
    display: inline-block;
    margin-right: 15px;
    margin-bottom: 15px;
  }

  .white {
    background-color: var(--white);
  }

  .button:hover {
    box-shadow: rgba(0, 0, 0, .15) 0 3px 9px 0;
  }

  .fileupload {
    background-color: #74899b;
    color: white;
    padding: 0.3rem .5rem;
    font-family: 'Roboto-Regular', Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-size: .9rem;
    border-radius: 0.3rem;
    cursor: pointer;
    margin-top: 1rem;
  }

  #file-chosen{
    margin-left: 0.3rem;
    font-size: 1rem;
    font-family: 'Roboto-Regular', Arial, Helvetica, sans-serif;
    font-weight: 400;
  }

  *[data-prefix]::before,
  *[data-suffix]::after {
    display: block;
    padding: 0.5rem 0.75rem;
    border: 1px solid rgba(0, 0, 0, 0.15);
    background-color: #e6e6e6;
    height: calc((0.5rem * 2) + (1px * 2) + 18px);
    white-space: nowrap;
  }

  *[data-prefix] {
    display: flex;
  }

  *[data-prefix]::before {
    content: attr(data-prefix);
    border-right-width: 0;
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }

  *[data-prefix] input, *[data-prefix] label {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  *[data-suffix] {
    display: flex;
  }

  *[data-suffix]::after {
    content: attr(data-suffix);
    border-left-width: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
  }

  *[data-suffix] input, *[data-suffix] label {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .field-group {
    padding: 0;
    margin: 1rem 0;
  }

  .field-group li {
    margin-bottom: 1.3rem;
    padding-bottom: 0px;
    display: block;
  }

  .textarea {
    margin: 1rem 0;
  }

  .textarea label {
    display: block;
    margin: 2px 0 0 2px;
  }

  .toggle-list {
    border: none;
    padding: 0;
    width: auto;
    background-color: transparent;
  }
  .toggle-list legend {
    padding: 0;

  }
  .toggle-list ul {
    padding: 0;
    margin: 0.5rem 0 0;
  }

  .toggle-list ul li {
    display: block;
    padding-bottom: 4px;
  }
  .toggle-list ul li label {
    position: relative;
    display: block;
    cursor: pointer;
  }
  .toggle-list ul li input {
    position: absolute;
    opacity: 0;
  }
  .toggle-list ul li input ~ span {
    display: flex;
    align-items: flex-start;
    font-weight: normal;
  }
  .toggle-list ul li input ~ span::before {
    content: "";
    display: block;
    background-color: white;
    background-repeat: no-repeat;
    background-position: center;
    border: 1px solid rgba(0, 0, 0, 0.15);
    height: 1rem;
    width: 1rem;
    min-width: 1rem;
    margin-right: 0.6rem;
    box-shadow: inset 0 0 0.1rem rgba(0, 0, 0, 0.1);
    position: relative;
  }
  .toggle-list ul li input:checked ~ span::before {
    background-color: var(--secondary-blue);
  }
  .toggle-list ul li input[disabled] ~ span::before {
    background-color: #f2f2f2;
  }
  .toggle-list ul li input:focus ~ span::before {
    border-color: var(--secondary-blue);
  }
  .toggle-list ul li input[type=radio] ~ span::before {
    border-radius: 50%;
    top: 3px;
  }
  .toggle-list ul li input[type=radio]:checked ~ span::before {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Ccircle fill='white' cx='25' cy='25' r='25'/%3E%3C/svg%3E");
    background-size: 40%;
  }
  .toggle-list ul li input[type=checkbox] ~ span::before {
    border-radius: 0.15rem;
    top: 3px;
  }
  .toggle-list ul li input[type=checkbox]:checked ~ span::before {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath fill='white' d='M19.872,33.132C21.19,31.191,32.847,14,37.4,7.282a2.248,2.248,0,0,1,3.575-.689c1.033.7,2.067,1.4,3.094,2.107a2.187,2.187,0,0,1,.653,3.328Q34.167,27.62,23.592,43.2c-1.368,2.014-3.357,2.27-5.236.73-.207-.17-8.554-8.5-12.532-12.483-1.269-1.27-1.266-2.405.007-3.683.881-.885,1.757-1.774,2.646-2.651a2.178,2.178,0,0,1,3.349,0C14.345,27.623,19.669,32.94,19.872,33.132Z'/%3E%3C/svg%3E");
    background-size: 100%;
  }

  @media (min-width: 600px) {
    .textarea, fieldset legend {
      font-size: 18px;
      margin:0px;
    }

    button {
      padding: 10px 30px;
      font-size: 16px;
    }

    select {
      font-size: 18px;
    }

    .toggle-list ul li input[type=radio] ~ span::before {
      top: 4px;
    }

    .toggle-list ul li input[type=checkbox] ~ span::before {
      top: 5px;
    }
  }


  @media (min-width: 992px) {
    .textarea, fieldset legend {
      font-size: 20px;
      margin:0px;
    }

    button {
      padding: 10px 30px;
      font-size: 18px;
    }

    select {
      font-size: 20px;
    }

    .toggle-list ul li input[type=radio] ~ span::before {
      top: 6px;
    }

    .toggle-list ul li input[type=checkbox] ~ span::before {
      top: 8px;
    }
  }


  @media (min-width: 1200px) {
    .field-group {
      width: 100%;
      max-width: 100%;
      overflow: hidden;
    }
    .field-group > li {
      display: table-row;
    }
    .field-group > li > label, .field-group > li > div {
      display: table-cell;
      vertical-align: top;
      padding-bottom: 0.75rem;
    }
    .field-group > li > label {
      text-align: right;
      padding-top: calc(0.4rem + 1px);
      padding-right: 0.75rem;
      padding-bottom: var(--large-line-height);
      line-height: 1.2;
      white-space: nowrap;
    }

    .field-group > li > label.multi-line-label {
      padding-top: 0px;
    }
    .field-group > li > div {
      width: 100%;
    }

    .radio-right-align {
      float: right;
      position: relative;
      top: -35px;
      right: 12%;
    }

  }

  /* *************************************************************** */
  /* ************************* TABLE STYLES ************************* */
  /* *************************************************************** */

  .subpage figure.no-margin.table {
    float: none;
  }

  .subpage figure table {
    margin-bottom: 10px;
  }

  table, td, th {
    border: 1px solid;
    border-collapse: collapse;
    font-weight: 400;
    text-align: center;
    padding: 4px;
  }

  table, .subpage figcaption.paragraph {
    width: 93vw;
    min-width: 340px;
  }

  @media (min-width: 440px) {
    table, td, th {
      padding: 7px;
    }

    table, .subpage figcaption.paragraph {
      width: 82vw;
    }
  }

  @media (min-width: 600px) {
    table, td, th {
      padding: 10px;
      float: none;
    }

  }

  @media (min-width: 992px) {
    table, td, th {
      padding: 15px;
      float: none;
    }

    table, .subpage figcaption.paragraph {
      width: 860px;
    }

  }
