/*
Theme Name: Moving Parts
*/
 
 
     
     html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1;font-family: "brother-1816", sans-serif;background:black;color:white;-webkit-font-smoothing:antialiased}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}input[type="search"]{-webkit-appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
     .sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
     .screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
     .screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
     .skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
     .skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
     .visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}
     .togglepar {
     display: none;
     }
     #mobile-menu.mobile{display: none}
     
     .menu-item-237 a{font-weight: 500 !important;}
     a{text-decoration: none;color:inherit}
     a:hover{color:inherit}
     p{font-size: 16px;line-height: 22px;letter-spacing: -0.3px;}
     img{max-width: 100%}
     .btn{background:white;border-radius:0px;padding: 8px 33px;color:#000000;font-size: 16px;
         font-weight: 700;text-transform: uppercase}
         .btn:hover{}
         
         
         .topnav a {
         letter-spacing: 0.22px;
         font-size: 16px;
         font-weight: 500;
         }
         .current-menu-item a,.single .menu-item-24 a{font-weight: 700}
         
         article header{display:none}
         #header {
         padding-top: 57px;
         padding-bottom: 57px;
 
         }
     
         .topnav {
         display: flex;
         justify-content: start;
         flex-wrap: wrap;
         align-self: center;
         }
         .menu-item {
         display: inline-block;
         vertical-align: middle;
         text-transform: uppercase;
         letter-spacing: -0.34px;
         font-size: 17px;
         margin-right: 25px;
         font-weight: 300;
         }
         .current-menu-item {
         font-weight: 700;
         }
     
 header .logo {
         display: flex;
         flex-wrap: wrap;
         justify-content: center;
         align-self: center;
         }
 
 
 
 
 
     #videodetails .text {
     margin-bottom: 50px;
     text-align: left;
     margin-top: 40px;
     }
         #videodetails h1 {
     letter-spacing: -1.55px;
         font-size: 62px;
         color: white;
         font-weight: 800;text-transform: uppercase
         }
     #videodetails h2 {
     letter-spacing: 0.2px;
     font-size: 20px;
     margin-bottom: 2px;
     font-weight: 600;
     }
         #videodetails .text p{margin-bottom: 22px;font-weight: 300}
         #videodetails .text em{font-style: italic;}
         #videodetails h3 {
         font-size: 20px;
         }
 
 #videodetails .gallery{margin-bottom: 135px}
 
 .vidpar {
   position: relative;
   padding-bottom: 56.25%;
 }
 
 .home .vidpar iframe {
  width: 100%;
    height: 56.25vw; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
    min-height: 100%;
    min-width: 177.77vh; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
 }
 
 .vidpar iframe {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
 }
 
 
 
 #homehero {
 position: absolute;
 height: 100%;
 width: 100%;
 top: 0px;
 }
 .home #container {
 position: absolute;
 width: 100%;
 top: 0px;
 padding-top: 156px;
 height: 100vh;
 padding-bottom: 72px;
 box-sizing: border-box;
 }
 #homehero h1{font-size: 57px;line-height: 60px;letter-spacing: -0.4px;text-shadow: 0px 3px 6px #00000029;font-weight: 800;margin-bottom: 25px}
 #homehero .btn{box-shadow: 0px 3px 6px #00000029;}
 #homehero .container{position: absolute;bottom:110px;width:100%;left: 0px;
     right: 0px;}
 .home #wrapper{position: relative;
     height: 100vh;
     overflow: hidden;}
 .home #header{position: relative;
     z-index: 1;
     background: black;}
 
 
 
     #footer {
     text-align: center;
     padding: 30px 0;
     text-transform: uppercase;
     font-size: 12px;
     font-weight: 700;
     }
     .home #footer{position: absolute;
         width: 100%;
         background: black;
         bottom: 0px;}
         .home .vidpar{width:100%;padding-bottom: 0px;height: 100%}
         .home .vidpar iframe{margin-top: 156px; transform: translate(-50%, -57%);}
         
         
         #aboutintro{text-align: center;margin-bottom: 60px;margin-top: 60px;}
         #aboutintro h1{letter-spacing: -1.55px;font-size: 62px;font-weight: 800;margin-bottom: 20px;text-transform: uppercase}
         #aboutintro p {
         letter-spacing: 0.04px;
         font-size: 18px;
         line-height: 28px;
         margin-bottom: 18px;
         }
         
         .clientlogos {
         display: table;
         width: 100%;
         padding: 0 0px;
         margin-bottom: 50px;
         margin-top: 50px;
         text-align: center;
         }
         .clientlogo {
         display: inline-block;
         vertical-align: middle;
         width: auto;
         text-align: center;
         margin: 24px 26px;
         }
         
         
     .clientlogo img {
     max-width: 203px;
     max-height: 103px;
     }
     
     #videodetails .vidpar{display:none}
     #videodetails .vidpar.active{display:block;margin-bottom: 20px}
 #videodetails .vidthumb{display:inline-block;vertical-align: center;width:100%;padding-bottom: 57%;opacity: 1;background-size: cover;background-repeat: no-repeat;background-position: center center;cursor: pointer;border:2px solid black}
     #videodetails .vidthumb.active{border:2px solid white}
     
     .cats a{letter-spacing: 0.16px;border:1px solid white;font-size: 16px;text-transform: uppercase;font-weight: 600}
     .cats a {
     letter-spacing: 0.16px;
     border: 1px solid white;
     font-size: 16px;
     text-transform: uppercase;
     font-weight: 600;
     padding: 0 6px;
     margin-right: 15px;
     }
     #videodetails .cats{margin-top: 12px}
     
     
     
     
     
     #photographydetails{margin-bottom: 96px}
     
     
         #photographydetails .text {
         margin-bottom: 25px;
         text-align: left;
         margin-top: 0px;
         }
             #photographydetails h1 {
         letter-spacing: -1.55px;
             font-size: 62px;
             color: white;
             font-weight: 800;text-transform: uppercase
             }
         #photographydetails h2 {
         letter-spacing: 0.2px;
         font-size: 20px;
         margin-bottom: 2px;
         font-weight: 600;position: relative;
         z-index: 10;
         }
             #photographydetails .text p{margin-bottom: 22px;font-weight: 300}
             #photographydetails .text em{font-style: italic;}
             
     
     #photographydetails .gallery{margin-bottom: 135px}
     
     #photographydetails .cats{margin-top: 12px}
     
     .filterpar {
     text-align: center;
     margin-bottom: 50px;
     }
     
     .workfilter button {
     letter-spacing: 0.16px;
     border: 1px solid white;
     font-size: 16px;
     text-transform: uppercase;
     font-weight: 600;
     padding: 4px 8px;
     margin-right: 8px;
     margin-left: 8px;
     -webkit-appearance: none;
     background: none;
     color:white;
     }
     
     
     .workfilter button.active {
     color: black;
     background: white;
     }
     
     .directortop{text-align: center;margin-bottom: 50px}
     .backtodirectors {
     letter-spacing: 0.2px;
     font-size: 20px;
     font-weight: 600;
     margin-bottom: 17px;
     }
     .backtodirectors img {
     margin-right: 8px;
     }
     .directortop h1 {
     letter-spacing: -1.25px;
     font-size: 50px;
     font-weight: 800;
     text-transform: uppercase;
     margin-bottom: 35px;
     }
     .directortop p{margin-bottom: 22px}
     
     .directortop .btn {
     background: none;
     border: 1px solid white;
     color: white;
     padding: 3px 20px;
     cursor: pointer;
     display: none;margin-left: auto;margin-right: auto
     }
     .directortop .btn.active {
     display: table
     }
     
     #contact h2{
         letter-spacing: -1.55px;
         font-size: 50px;
         font-weight: 800;
         margin-bottom: 45px;
         text-transform: uppercase;
         text-align: center
     }
     .contactcols {
     display: table;
     width: 100%;
     margin-bottom: 45px;
     }
     .contactinfo {
     text-align: center;
     display: inline-block;
     width: 50%;
     }
     .contactinfo p{letter-spacing: 0.18px;font-size: 18px;line-height: 25px;font-weight: 300;}
     .contactinfo p strong{font-weight: 600;text-transform: uppercase}
     .wpcf7-form {
     display: table;
     width: 100%;
     font-size: 0px
     }
     .address {
     text-align: center;
     margin-bottom: 50px;
     }
     .address p {
     letter-spacing: 0.18px;
     font-size: 18px;
     line-height: 25px;
     font-weight: 700;
     }
     
     
     .wpcf7-form .field{display: inline-block;width:50%;vertical-align: top;margin-bottom: 20px}
     .wpcf7-form .field.left{padding-right: 10px}
     .wpcf7-form .field.right{padding-left: 10px;text-align: left}
 
     .wpcf7-form .field.wide{width:100%}
     
     .wpcf7-form input[type="text"],.wpcf7-form input[type="email"],.wpcf7-form textarea{-webkit-appearance: none;
         background: transparent;border:none;border-bottom: 1px solid white;color:white;font-size: 16px;text-transform: uppercase;width:100%;
         padding-bottom: 10px;outline: none;border-radius: 0px
     }
     .wpcf7-form ::placeholder {
          color: white;
       }
      .wpcf7-form  :-ms-input-placeholder {
          color: white;
       }
      .wpcf7-form  ::-ms-input-placeholder {
          color: white;
       }
       .wpcf7-form textarea{resize: none;height: 130px;}
     .wpcf7-not-valid-tip {
     font-size: 12px;
     padding-top: 0px;
     position: absolute;
     }
     .wpcf7-submit {
     -webkit-appearance: none !important;
     border: none;
     background: white;
     font-weight: 800;
     text-transform: uppercase;
     font-size: 16px;
     border-radius: 2px !important;
     padding: 14px 50px;
     display: table;
     margin: auto;
     color:black
     }
     .wpcf7-spinner{display:none !important}
     .wpcf7 form .wpcf7-response-output{text-align: center;border:none;}
     
     
     
     
     
     
     
     body{background:black;margin:0px}
     .grid{display:table;width:100%}
     .box{display: inline-block;
         width: 33.33%; position: relative;padding-bottom: 17%}
     .video-wrapper{width:100%;position: absolute;
       left: 50%; 
       top: 50%;
       -webkit-transform: translateY(-50%) translateX(-50%);
       -ms-transform: translateY(-50%) translateX(-50%);
       transform: translateY(-50%) translateX(-50%);
     height:100%;
      
       z-index: 100;
       background-size: cover;;background-size: cover;background-position: center center;background-repeat: no-repeat;overflow: hidden;  transition: all 0.5s ease;}
       .box:hover{z-index: 1000}
       .video-wrapper:hover video{opacity: 1;  transition: all 0.5s ease;}
       .video-wrapper:hover{width: 109%;
           height: 121%;  transition: all 0.5s ease;filter: drop-shadow(0px 5px 10px #000000);}
           .video-wrapper iframe {
               opacity: 0;
             box-sizing: border-box;
               height: 100%;
               left: 50%;
               min-height: 100%;
               min-width: 100%;
               transform: translate(-50%, -50%);
               position: absolute;
               top: 50%;
               width: 100%;
               transition: all 0.5s ease;
               
           }
           .video-wrapper:hover iframe{opacity: 1;transition: all 0.5s ease;}
      .video-wrapper video {
          transition: all 0.5s ease;
          opacity: 0;
         position: absolute;
         top: 50%;
         left: 50%;
         min-width: 100%;
         min-height: 100%;
         width: auto;
         height: auto;
         z-index: 1000;
         -ms-transform: translateX(-50%) translateY(-50%);
         -moz-transform: translateX(-50%) translateY(-50%);
         -webkit-transform: translateX(-50%) translateY(-50%);
         transform: translateX(-50%) translateY(-50%);
       }
       
       .video-wrapper .overlay{opacity: 0;transition: all 0.5s ease;position: absolute;background:rgba(0,0,0,.3);width:100%;height:100%;z-index: 10000;left:0px;top:0px;box-sizing: border-box;	white-space: nowrap;}
       .video-wrapper .overlay .text{position: absolute;color:white;text-transform: uppercase;top:50%;left:50%;	-ms-transform: translateX(-50%) translateY(-50%);
           -moz-transform: translateX(-50%) translateY(-50%);
           -webkit-transform: translateX(-50%) translateY(-50%);
           transform: translateX(-50%) translateY(-50%);text-align: center;font-family: "brother-1816", sans-serif;width: 33.33vw;}
           .video-wrapper .overlay .text h1{font-weight: 900;font-size: 36px;line-height: 40px;
               margin-bottom: 2px;white-space: normal;}
           .video-wrapper .overlay .text h2{font-weight: 300;font-size: 20px;margin-top:0px}
     
       .video-wrapper:hover .overlay{opacity: 1; transition: all 0.5s ease;}
       
       
       .clientlogos h2 {
       font-weight: 600;
       text-transform: uppercase;
       font-size: 32px;
       margin-bottom: 45px;
       }
       
       
       @media (min-width: 1400px) {
     body .container, body .container-lg,body .container-md,body .container-sm,body .container-xl,body .container-xxl {
     max-width: 1144px;
     }
       }
       
       
       @media (min-width: 992px) and (max-width: 1250px)
       {
           #homehero h1{font-size: 50px;
               line-height: 55px;}
               
               .clientlogo img {
               max-width: 149px;
               max-height: 59px;
               }
               
               .clientlogo{margin: 20px 18px;}
               
               #aboutintro p{font-size: 16px;}
               
               .contactinfo p{font-size: 16px;
                   line-height: 24px;}
                   
                   .video-wrapper .overlay .text h1{font-size: 23px !important;
                       line-height: 26px !important;}
                       .video-wrapper .overlay .text h2{font-size: 16px;}
                       #videodetails h1{font-size: 50px;}
                       #photographydetails h1{font-size: 50px;}
                       .video-wrapper .overlay .text{width:90% !important}
                       
                       .ml1{font-size: 35px !important;}
                       #rings{height: 35px ;}
 
       }
       
       
       @media (min-width: 768px) and (max-width: 992px)
       {
           
           header .logo{padding:0px}
           .ml1{font-size: 28px !important;}
           
           #rings{height: 28px ;}
           #homehero h1{font-size: 38px;
               line-height: 42px;}
             
             .clientlogo img {
             max-width: 149px;
             max-height: 52px;
             }
             
             .clientlogo{margin: 14px 16px;}
             
             #aboutintro p{font-size: 16px;}
             
             .contactinfo p{font-size: 16px;
                 line-height: 24px;}
                 
                 .video-wrapper .overlay .text h1{font-size: 20px !important;
                     line-height: 20px !important;}
                     .video-wrapper .overlay .text h2{font-size: 16px;}
                     #videodetails h1{font-size: 40px;}
                     #photographydetails h1{font-size: 40px;}
                     
                     .cats a{font-size: 14px}
                     .video-wrapper .overlay .text{width:90% !important}
                     
                     
                     .menu-item{margin-right: 8px;}
                     .topnav a {
                     letter-spacing: -.4px;
                     font-size: 15px;
                     }
                     .box{width:50% !important;padding-bottom: 25% !important;}
       }
       
       
       @media (max-width: 768px) {
           
           .ml1{font-size: 26px !important;}
           #rings{height: 25px  !important;}
           #container {
           margin-top: 82px;
           }
           .togglepar {
           display: inline-flex;
           text-align: right;
           flex-wrap: wrap;
           vertical-align: middle;
           justify-content: flex-end;
           padding-top: 7px;
           padding-top: 7px;
           position: relative;
           z-index: 1001;
           }
           header .hamburger {
           display: inline !important;
           width: auto;
           float: right;
           margin-top: 0px;
           padding-right: 0px;
           z-index: 11;
           position: relative;
           vertical-align: middle;
           padding: 0px;
           }
           .hamburger-box {
           width: 30px;
           }
           .hamburger-inner, .hamburger-inner:after, .hamburger-inner:before {
           height: 2px !important;
           width: 30px !important;
           border-radius: none !important;
           background: white !important;
           }
           header .topnav {
           display: none;
           }
           .opennav header .topnav {
           display: block;
           position: fixed;
           background: #00000096;
           left: 0px;
           top: 0px;
           height: 100vh;
           width: 100vw;
           z-index: 1000;
           }
           #menu.desk {
           display: none;
           }
           #mobile-menu.mobile {
           display: block;
           position: fixed;
           width: 100%;
           left: 0px;
           top: 121px;
           }
           
           .menu-item {
         
 
           display: table;
         margin: 20px auto;
           text-align: center;
           width: 100%;
           
           
          
           text-transform: uppercase;
           }
           
           
           
           
           p{font-size: 14px;
               line-height: 20px;}
           .container{width:100%;max-width: 100% !important}
         #homehero h1 {
         font-size: 27px;
         line-height: 33px;
         margin-bottom: 10px;
         }
         #header {
         padding-top: 20px;
         padding-bottom: 20px;
         position: fixed;
         width: 100%;
         top: 0px;z-index: 1000;background: rgba(0, 0, 0, 0.88);
         }
         
         .home #container{padding-top: 0px;height: 100dvh;}
         #homehero .container{bottom: 166px;}
         .home .vidpar iframe{margin-top: 40px;}
         .home #wrapper{height: 100dvh;}
           
           .clientlogo img {
          max-width: 103px;
          max-height: 42px;
           }
           
           .clientlogo{margin: 11px 9px;}
           
           #aboutintro p{font-size: 14px;
               line-height: 20px;}
           
           .contactinfo p{font-size: 14px;
               line-height: 20px;}
               
               .video-wrapper .overlay .text h1{font-size: 14px !important;
                   line-height: 15px !important;}
                   .video-wrapper .overlay .text h2{font-size: 11px !important;white-space: break-spaces; }
                   #videodetails h1{font-size: 40px;}
                   #photographydetails h1{font-size: 40px;}
                   
                   .cats a{font-size: 14px}
                   .video-wrapper .overlay .text{width:90% !important;top: auto;
                       bottom: 7%;
                       transform: translateX(-50%);text-align: left !important}
                   
                   
                   .menu-item{margin-right: 8px;}
                   .topnav a {
                   font-size: 35px;
                    letter-spacing: -1.55px;
                   
                   }
                   .box{width:50% !important;padding-bottom: 25% !important;}
           
           
           #menu {
           display: none;
           }
           .topcta{display:none}
           
           header .logo{justify-content: start;position: relative;
               z-index: 1005;}
           
           .video-wrapper .overlay{opacity: 1 !important}
           .video-wrapper:hover{width:100% !important;height:100% !important}
           .video-wrapper:hover iframe{opacity: 0 !important}
           
           .directortop h1{font-size: 28px;}
           .directortop p {
           margin-bottom: 20px;
           }
           .backtodirectors{font-size: 15px;}
           
          .box{padding-bottom: 40% !important}
          .workfilter button{font-size: 10px;padding: 10px 8px;
              margin-right: 4px;
              margin-left: 4px;width: 47%;
              margin-bottom: 11px;}
              .filterpar {
              margin-bottom: 12px;
              }
              .filterpar .container{padding-left: 8px;padding-right: 8px}
              
              
              #aboutintro h1{font-size: 35px}
              .clientlogos h2{font-size: 20px;
                  margin-bottom: 19px;}
                  
                  #contact h2{font-size: 30px;margin-bottom: 32px;}
                  .wpcf7-form input[type="text"], .wpcf7-form input[type="email"], .wpcf7-form textarea{font-size: 14px}
       }