body {
                line-height: 1.6;
            }

            @media screen and (min-width: 1200px) {
                ul.nav-main > li > a {
                    font-size: 24px;
                }

                ul.nav-main > li > ul > li a {
                    font-size: 15px;
                }
            }

            .nav-main ul, .nav-main li {
                line-height: 1.2;
                margin-top: .6em;
                margin-bottom: .6em;
                letter-spacing: -.01em;
            }

            figure.image, figure.media {
                margin-left: 23%;
                margin-right: 23%;
            }
            
            @media only screen and (max-width: 1200px) {
                figure.image, figure.media {
                    margin-left: 19%;
                    margin-right: 19%;
                }
            }
            @media only screen and (max-width: 800px) {
                figure.image, figure.media {
                    margin-left: 21px;
                    margin-right: 21px;
                }
            }

            main.home {
                left: 60px;
                width: calc(100vw - 120px);
                height: calc(100vh - 180px);
                background: #E3E2E3;
                background-size: cover;
                text-align: center;
                padding-bottom: 0;
            }

            @media only screen and (max-width: 800px) {
                main.home {
                    left: 0;
                    width: 100vw;
                    height: calc(100vh - 140px);
                }
            }
            nav.home  {
                display: none;
            }

            @media only screen and (max-width: 1200px) {
                nav.home {
                    display: block;
                }
            }

            main.home h1 {
                color: #fff;
                margin: 15vh;
            }



            main.home a {
                display: inline-block;
                /*color: #fff;*/
                color: #ED1C2B;
                font-size: 24px;
                margin: 30px 20px;
                border-bottom: solid 5px transparent;
            }
            main.home a:hover {
                border-bottom: solid 5px #ED1C2B;
            }

            @media only screen and (max-width: 1500px) {
                main.home h1 {
                    font-size: 48px;
                }
            }

            @media only screen and (max-width: 1100px) {
                main.home h1 {
                    font-size: 32px;
                    margin: 10vh;
                }
            }

            @media only screen and (max-width: 860px) {
                main.home h1 {
                    color: #fff;
                    margin: 5vh;
                    margin-bottom: 90px;
                    font-size: 24px;
                }
                main.home a {
                    display: inline-block;
                    /*color: #fff;*/
                    color: #ED1C2B;
                    font-size: 18px;
                    margin: 15px 20px;
                    border-bottom: solid 5px transparent;
                }
            }

            /*article h1 { font-size: 68px; }
            article h2 { font-size: 36px; }
            article h3 { font-size: 24px; }
            article h4 { font-size: 18px; font-weight: bold; }*/

            article h1 { font-size: 25px; font-weight: bold; color: #ED1C2B; }
            article h2 { font-size: 25px; font-weight: bold;  }
            article h3 { font-size: 25px; font-weight: bold;  }
            article h4 { font-size: 17px; font-weight: bold; }
            article h5 { font-size: 17px; font-weight: bold; color: #ED1C2B; }
            article p.horizontal-red-line { border-bottom: solid 3px #ED1C2B; }

            article h1.maintitle {
                /*font-size: 24px;
                font-weight: bold;
                color: #ED1C2B;*/
                margin-top: 70px;
            }

            section {
                /*height: 460px;*/
                height: 40vh;
                max-height: 360px;
                background-color: rgba(0,0,0,0.3);
                background-blend-mode: multiply;
            }

            article > section > h1 {
                color: #fff;
                font-size: 65px;
                font-weight: normal;
            }

            @media only screen and (max-width: 800px) {
                section {
                    height: 300px;
                }
                article > section > h1 {
                    font-size: 36px;
                }
                section h1 img {
                    max-width: 60%;
                }
            }


            article figure {
                position: relative;
            }

            article figcaption {
                position: absolute;
                /*bottom: calc(50% - 125px);*/
                right: 5%;
                top: 50%;
                transform: translateY(-50%);
                /*display: flex;
                justify-content: center;
                align-items: center;*/
                display: block;
                background-color: #ED1C2B;
                border-radius: 50%;
                text-align: center;
                width: 40%;
                overflow: hidden;
                padding: 0;
            }
            article figcaption:before {
                content: "";
                display: block;
                padding-top: 100%;
            }

            article figcaption p {
                /*font-style: italic;*/
                color: #fff;
                line-height: 1.4;
                position: absolute;
                width: 100%;
                left: 50%;
                top: 50%;
                transform: translate(-50%,-50%);
                font-size: 13px;
                padding: 10%;
            }

            article figure.image-style-align-left,
            article figure.image-style-align-center,
            article figure.image-style-align-right  { 
                display: inline-block; 
                margin-left: 0px;
                margin-right: 0px;
                padding: 0 20px 0 20px;
            }
            article figure.image-style-align-left figcaption,
            article figure.image-style-align-center figcaption,
            article figure.image-style-align-right figcaption { 
                position: relative;
                right: 0;
                top: 0;
                transform: translateY(0);
                display: block;
                background-color: #ED1C2B;
                border-radius: 0;
                text-align: center;
                width: 100%;
                overflow: hidden;
                padding: 0;
            }

            article figure.image-style-align-left figcaption:before,
            article figure.image-style-align-center figcaption:before,
            article figure.image-style-align-right figcaption:before {
                content: "";
                display: block;
                padding-top: 0;
            }

            article figure.image-style-align-left figcaption p,
            article figure.image-style-align-center figcaption p,
            article figure.image-style-align-right figcaption p {
                /*font-style: italic;*/
                color: #fff;
                line-height: 1.4;
                position: relative;
                width: auto;
                left: 0;
                top: 0;
                transform: translate(0,0);
                font-size: 13px;
                padding: 10%;
            }

            article blockquote {
                background: url(../img/quote.svg);
                background-repeat: no-repeat;
                background-color: #f2f2f2;
                background-position: 30px 50px;
                padding: 70px 70px 70px 100px;
                /*font-size: calc(15px + 5 * ( (100vw - 600px) / 600));*/
                font-size: 20px;
                line-height: 1.5em;
                color: #ED1C2B;
                font-style: italic;
                background-color: #f2f2f2;
            }

            article p.intro {
                color: #ED1C2B;
                /*font-size: calc(15px + 5 * ( (100vw - 600px) / 600));*/
                font-size: 20px;
                line-height: 1.5em;
                font-style: italic;
                border-top: solid 3px #ED1C2B;
                border-bottom: solid 3px #ED1C2B;
                padding: 50px;
            }

            article p.red {
                color: #ED1C2B;
                /*font-size: calc(15px + 5 * ( (100vw - 600px) / 600));*/
                font-size: 20px;
                line-height: 1.5em;
            }

            .floating1 {
                animation-name: floatinga;
                animation-duration: 10s;
                animation-iteration-count: infinite;
                animation-timing-function: ease-in-out;
            }

            @keyframes floatinga {
                from { transform: translate(0,  0px); }
                50%  { transform: translate(-10px, 30px); }
                to   { transform: translate(0, -0px); }
            }

            .floating2 {
                animation-name: floatingb;
                animation-duration: 10s;
                animation-iteration-count: infinite;
                animation-timing-function: ease-in-out;
            }

            @keyframes floatingb {
                from { transform: translate(0,  0px); }
                50%  { transform: translate(10px, 30px); }
                to   { transform: translate(0, -0px); }
            }

            .video-container {
                position: relative;
                width: 100%;
                height: 100%;
                overflow: hidden;
                /*background-color: #ED1C2B;*/
            }
            .video-container.red {
                background-color: #ED1C2B;
            }
            .intro-video {
                
                /*
                -webkit-filter: grayscale(100%); 
                filter: grayscale(100%);
                */
                
                position: absolute;
                left: 0;
                top: 0;
                object-fit: cover;
                object-position: top;
                /*font-family: 'object-fit: cover;';*/
                width: 100%;
                height: 100%;
                opacity: 1;
                
                /*-webkit-filter: grayscale(100%) sepia(50%) hue-rotate(270deg);
                filter: grayscale(100%) sepia(50%) hue-rotate(270deg);*/
            }

            @media only screen and (max-width: 800px) {
                /*.intro-video { height: 100vw; }*/
            }

            .home-content-container {
                position: absolute;
                left: 0;
                top: 0;
                width: 100%;
                height: 100%;
            }


            #video-val {
                /*-webkit-filter: grayscale(100%); 
                filter: grayscale(100%);*/
                -webkit-transition: opacity 1s ease-in;
                -moz-transition: opacity 1s ease-in;
                -o-transition: opacity 1s ease-in;
                -ms-transition: opacity 1s ease-in;
                transition: opacity 1s ease-in;
                opacity: 0; 
                mix-blend-mode: multiply;
            }

            #video-val.visible {
                opacity: 1; 
            }

            .home-content-container a {
                -webkit-transition: opacity 1s ease-in;
                -moz-transition: opacity 1s ease-in;
                -o-transition: opacity 1s ease-in;
                -ms-transition: opacity 1s ease-in;
                transition: opacity 1s ease-in;
                opacity: 1; 
            }

            .home-content-container a.fadeOut {
                opacity: 0; 

            }

            .home-content-container a.clicked {
                border-bottom: solid 5px #ED1C2B;
                pointer-events: none;
            }

            article table th, article table td {
                vertical-align: top;
            }

            article video {
                width: 54%;
            }

            article a.button {
                display: inline-block;
                text-align: center;
                font-size: 15px;
                font-weight: bold;
                width: 180px;
                background-color: #e3e2e3;
                color: #5c6770;
                text-decoration: none;
                border-radius: 5px;
                padding: 24px;
                margin: 25px 12px;
            }
            article a.button:hover { color: #d83135; }

            article a.mobx { text-decoration: none; }
            article figure span.caption { display: inline-block; font-size: 0.7em; font-style: italic; text-align: left; margin: 5px 0; }
            article figure span.gallerylink { display: inline-block; font-size: 0.7em; font-weight: bold; color: #ED1C2B; float: right; text-align: right; margin: 5px 0;  }

            article p.question { 
                font-size: 16px; 
                border-bottom: solid 1px #5d6770; 
                padding-left: 26px; 
                background: url(/img/plus.svg) no-repeat left top; 
                background-size: 17px 17px; 
                margin-top: 6px;
                cursor: pointer;
            }
            article p.question.opened { 
                font-weight: bold;
                border-bottom: none;
                background: url(/img/minus.svg) no-repeat left top; 
                background-size: 17px 17px; 
            }

            article p.answer {
                display: none;
                font-size: 16px; 
                border-bottom: solid 1px #5d6770; 
                padding-left: 26px; 
                margin-top: 10px;
                padding-bottom: 10px;
            }

            article p.button-container {
                display: flex;
                flex-wrap: wrap;
            }

            article .sublinks {
                display: flex;
                flex-wrap: wrap;
            }

            article .sublinks a {
                font-size: 14px;
                line-height: 1.4;
                display: block;
                width: 100%;
                background-color: #e3e2e3;
                border-radius: 5px;
                padding: 24px;
                margin: 15px 23%;
                text-decoration: none;
            }

            article .sublinks a .sublink-title {
                font-weight: bold;
                margin-bottom: 10px;
                color: #ED1C2B;
            }


            footer {
                position: fixed;
                left: 60px;
                bottom: 0;
                width: calc(100vw - 120px);
                height: 120px;
                padding: 30px 60px;
                display: -webkit-box;
                display: -ms-flexbox;
                display: flex;
                -webkit-box-pack: justify;
                -ms-flex-pack: justify;
                justify-content: space-evenly;
                -webkit-box-align: center;
                -ms-flex-align: center;
                align-items: center;
            }

            footer img {
                height: 80px;
            }

            @media only screen and (max-width: 800px) {
                footer {
                    left: 0;
                    width: 100vw;
                    height: 80px;
                    padding: 0 30px;
                    justify-content: space-between;
                }
                footer img {
                    height: 50px;
                }

            }


@keyframes modalshow {
    0% { transform: scale(0.1) translateY(-50%); -webkit-transform: scale(0.1) translateY(-50%); }
    100% { transform: scale(1.0) translateY(-50%); -webkit-transform: scale(1.0) translateY(-50%); }
}

.modal {
    position: fixed;
    z-index: 999;
    width: 70vw;
    left: 15vw;
    top: 50vh;
    height: auto;
    background: #E3E2E3;
    box-shadow: 10px 10px 30px rgba(0,0,0,.5);
    padding: 60px;
    transform: translateY(-50%);
    transform-origin: top center;
    animation: modalshow .7s ease-out;
    -webkit-animation: modalshow .7s ease-out;
}


.modal-close {
  position: absolute;
  right: 15px;
  top: 15px;
  width: 32px;
  height: 32px;
  opacity: 0.5;
}
.modal-close:hover { opacity: 1; }
.modal-close:before, .modal-close:after {
  position: absolute;
  left: 15px;
  content: ' ';
  height: 33px;
  width: 2px;
  background-color: #333;
}
.modal-close:before {
  transform: rotate(45deg);
}
.modal-close:after {
  transform: rotate(-45deg);
}
.modal-inner { display: flex; }
.modal img { max-width: calc(50% - 60px); object-fit: cover; margin-right: 60px; }
.modal h3 { color: #ED1C2B; font-size: 24px; font-weight: bold; margin-bottom: .5em; }
.modal-cta { display: block; background-color: #ED1C2B; color: #fff; margin: .5em 0 .5em 0; 
    width: fit-content; padding: 1em 1em .6em 1em; border-radius: 4px; font-weight: bold; font-size: .8em; text-transform: uppercase; }


@media only screen and (max-width: 900px) {
    
    .modal { padding: 30px; width: 84vw; left: 8vw; }
    .modal-close { right: 2px; top: 2px; }
    .modal-inner { display: block; }
    .modal img { max-width: 100%; margin-right: 0; }
    .modal h3 { font-size: 20px; margin: .5em 0;  }
}

.innovation-form h1 { margin: 80px 0 40px 0; }
.innovation-form label { margin: 0 0 40px 0; display: block; }
.innovation-form label.sublabel { margin: 15px 0 0 10px; display: block; }
.innovation-form label span { font-size: 0.7em; text-transform: uppercase; }
.innovation-form label input { margin-bottom: 0px; padding: 15px 0 0 0; color: #ED1C2B; }
.innovation-form label input[type='checkbox'] { width: 16px; display: inline; margin: 0 8px; }
.innovation-form label select {  color: #ED1C2B; display: block; width: 100%; border: none; border-bottom: 1px solid #E3E2E3; margin-bottom: 0px; padding: 15px 0 0 0;}
.innovation-form label textarea { color: #ED1C2B; min-height: 200px; margin-top: 10px; }
.innovation-form label p, .innovation-form label li { font-size: 0.8em; font-style: italic; opacity: .7; }

@media only screen and (min-width: 1024px) {
    .innovation-form label { display: flex; margin: 0 0 20px 0; user-select: none;}
    .innovation-form label span { width: 30%; padding-top: 6px; }
    .innovation-form label > div { width: 70%; }
    .innovation-form label input { margin-bottom: 0px; padding: 0px 0 0 0; color: #ED1C2B; }
    .innovation-form label.sublabel { margin: 10px 0 0 10px; display: block; }
    .innovation-form label.wholewidth { display: flex; flex-direction: column;}
    .innovation-form label.wholewidth span { width: 100%; padding-top: 6px; }
    .innovation-form label.wholewidth div { width: 100%; }
    .innovation-form label.wholewidth label.sublabel { margin: 4px 0 0 0px; }
    .innovation-form label.wholewidth label.sublabel > * { display: inline-block; vertical-align: top; }
    .innovation-form label.wholewidth label.sublabel > *:first-child { width: 20px; }
    .innovation-form label.wholewidth label.sublabel > *:last-child { width: calc(100% - 40px); }
}