/*
Theme Name: Gem Audio/Visual
Theme URI: https://www.gemaudiovisual.co.uk/
Description: Bespoke Theme built using Bootstrap 3 for Gem Audio/Visual
Author: Elms Creative
Author URI: http://www.elmscreative.com/
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i,900,900i');

/* ==========================================================================
   Elements
   ========================================================================== */

   html, body { height:100%; }
   html { overflow-x:hidden; overflow-y:auto; background:#fff; }
   body { padding:0px; font-family:'Roboto', Arial, Helvetica, sans-serif; color:#202020; -webkit-font-smoothing:antialiased; background:none; }

   h1, h2, h3, h4, h5 { margin:0 0 1em; padding:0; color:#132273; font-family: 'Roboto', Arial, Helvetica, sans-serif; font-weight:900; text-transform:capitalize; }
   h4, h5 { margin:0 0 10px; padding:0; color:#132273; font-family: 'Roboto', Arial, Helvetica, sans-serif; font-weight:900; text-transform:capitalize; }
   h1 { font-size:35px; }
   h2 { font-size:25px; }
   h3 { font-size:20px; }
   h4 { font-size:15px; }

   hr { width:100%; height:1px; padding:0; margin:0px; border-top:#202020 1px solid; border-bottom:none; border-left:none; border-right:none; }

   p { margin:0 0 1.6em; font-size:1.1em; line-height:1.4; font-weight:normal; }
   span { color:#04111d; }
   span.required, .error { color:#E5090D; }
   small { font-size:0.9em; }
   address { font-size:1em; }
   blockquote p { font-size:inherit; font-style:italic; line-height:1.8; }
   i { color:inherit; }
   .fa { font-size:inherit; }

   label { margin:0.5em auto; padding:0; font-size:1em; display:block; text-align:left; clear:both; }
   input[type=text], input[type=url], input[type=date], input[type=email], input[type=tel], input[type=password], input[type=tel], textarea { width:100%; padding:6px; margin:0px auto 12px; color:#202020; font-size:1em; background:#fff; border:#ccc 1px solid; -webkit-border-radius:2px; -moz-border-radius:2px; border-radius:2px; font-family:'Roboto', Arial, Helvetica, sans-serif !important; }
   input[type=checkbox] { margin:0; }
   input[type=file] { margin: 0; width: 100%; padding:4px 4px 6px; font-size:1em; color: #202020; }
   select { width:100%; padding:4px 12px; margin:0px auto 12px; color:#202020; font-size:1em; height:32px; font-family:'Roboto', Arial, Helvetica, sans-serif !important; -webkit-appearance:none; background:#fff; border:#ccc 1px solid; }
   textarea { width:100%; min-height:120px; max-height:120px; padding:6px; margin:0px auto 10px; font-size:1em; background:#fff; border:#ccc 1px solid; -webkit-border-radius:0px; -moz-border-radius:0px; border-radius:0px; font-family:'Roboto', Arial, Helvetica, sans-serif !important; }

   label > span { font-size:inherit; color:#ccc; }
   .form-control { padding:6px; }

   input[type=submit], button { display: block; padding: 8px 20px !important; margin-bottom: 0; font-size: 14px; font-weight: 400; line-height: 1.42857143; text-align: center; white-space: nowrap; vertical-align: middle; -ms-touch-action: manipulation; touch-action: manipulation; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;color:#fff !important; background:#193dac !important; background-image: none; -webkit-border-radius: 25px !important; -moz-border-radius: 25px !important; border-radius: 25px !important; border:#fff 1px solid !important; }
   input[type=submit]:hover, button:hover { color:#ccc !important; background:#0b1966 !important; }
   .btn { padding:8px 20px; text-decoration:none; font-weight:700; -webkit-border-radius: 25px; -moz-border-radius: 25px; border-radius: 25px; border:#fff 1px solid; }
   .btn:hover { border:#ccc 1px solid; }
   .btn-primary { color:#fff !important; background:#193dac; }
   .btn-primary:hover { color:#ccc !important; background:#0b1966; }

   .alignleft { float:left; margin:0 20px 20px 0; border:none; }
   .alignright { float:right; margin:0 20px 0 20px; border:none; }
   .aligncenter { float:none; margin:20px auto; display:block; border:none; }

   .padded { padding:6px 12px; }
   .no-padding { padding:0px !important; }
   .no-padding-right { padding:0px 0px 0px 15px; }
   .no-margin { margin:0px; }
   .no-bullets { list-style:none; }

   .gap-ext2 { display:block; position:relative; margin:60px 0; clear:both; overflow:hidden; }
   .gap-ext { display:block; position:relative; margin:30px 0; clear:both; overflow:hidden; }
   .gap { display:block; position:relative; margin:15px 0; clear:both; overflow:hidden; }
   .gap-mini { display:block; position:relative; margin:8px 0; clear:both; overflow:hidden; }
   .gap-very-mini { display:block; position:relative; margin:4px 0; clear:both; overflow:hidden; }

/* ==========================================================================
   Structure
   ========================================================================== */

   #wrap { min-height:100%; height:auto; margin:0 auto -372px; padding:0 0 372px; overflow:hidden; }

   header { padding:0px 20px; position:relative; z-index:50; background:url('img/header-bg.png') top left repeat-x; background-size:contain; }
   header .logo { max-width:180px; margin:20px 0px; }
   header .contact { margin:25px auto; padding:0px; text-align:right; }
   header .contact > li { float:right; }
   header .contact > li:hover { color:#ccc; }
   header .contact > li > a { color:#fff; text-decoration:none; }
   header .contact > li > .fa { color:#fff; }

   section#hero { padding:0px; position:relative; background:url('img/slider-overlay.png') bottom left repeat-x; }
   section#hero h1, section#hero h2, section#hero h3, section#hero h4, section#hero h5, section#hero p { color:#fff; }
   section#hero .inner { width:100%; padding:300px 0px; position:absolute; z-index:25; text-align:center; }
   section#hero.other .inner { width:100%; padding:160px 0px; position:absolute; z-index:25; text-align:center; }
   section#hero .inner .fa-chevron-down { font-size:24px; color:#fff; }
   .slider-overlay { position:absolute; bottom:0; left:0; z-index:3; }
   #overlay { width:100%; height:100%; position:absolute; top:0; left:0; z-index:2; background:rgba(0,0,0,0.35); }

   section#pre-footer { padding:15px 0px; background:#0b1966; }
   section#pre-footer h4 { margin:8px auto; color:#fff; text-align:right; }
   section#pre-footer .btn { float:left; }
   section#pre-footer a:active, section#pre-footer a:visited, section#pre-footer a:link { color:#fff; text-decoration:none; }
   section#pre-footer a:hover { color:#ccc; }

   footer { width:100%; height:auto; margin:0 auto; padding:18px 0px; position:relative; background:url('img/footer-bg.jpg') top center no-repeat; background-size:cover; }
   footer h5 { color:#fff; }
   footer p { margin:0px auto; font-size:0.9em; color:#fff; }
   footer a:active, footer a:visited, footer a:link { font-weight:700; color:#fff; text-decoration:none; }
   footer a:hover { color:#ccc; }
   footer #sitemap { padding:30px 0px 48px; }
   footer #powered { padding-top:14px; border-top:#5167b2 1px solid; }

/* ==========================================================================
   Links and Navigation
   ========================================================================== */

   a { font-weight:700; text-decoration:none; -moz-transition:color 0.1s linear 0.1s; -webkit-transition:color 0.1s linear 0.1s; -o-transition:color 0.1s linear 0.1s; transition:color 0.1s linear 0.1s; }
   a:hover { text-decoration:underline; }
   a:active, a:visited, a:link { color:#193dac; }
   a:hover { color:#ccc; }
   a[href^=tel] { color:#193dac; font-weight:700; text-decoration:none; }
   a[href^=tel]:hover { color:#ccc; text-decoration:underline; }
   a.nostyle { text-decoration:none; }

   .navbar-collapse { padding:0 !important; }
   .navbar-toggle { float:right; width:42px !important; position:relative; padding:5px 10px 10px; margin:18px 0px !important; background:none !important; text-shadow:none; border:0px solid #9c9c9c !important; background:none; }
   .navbar-toggle:hover { border:0px solid #fff !important; background:none !important; }
   .navbar-toggle span { color:#fff !important; }
   .navbar-toggle span.icon-bar { width:100%; background:#fff !important; }
   .navbar-toggle:hover span { color:#fff !important; }
   .navbar-toggle:hover span.icon-bar { background:#fff !important; }
   .navbar-toggle .icon-bar { height:1px; margin-top:4px; }
   .hamburger { width:20px; }

   #primary { float:none; width:100%; height:auto; margin:20px auto; padding:0px; position:relative; list-style:none; text-align:center; }
   #primary > li { float:none; width:auto; height:auto; margin:0px auto; padding:0px 25px; display:inline-block; position:relative; top:1px; vertical-align:text-top; }
   #primary > li > a { margin:0px; padding:0px; color:#fff; font-size:1em; font-weight:700; line-height:2; text-align:left; text-transform:capitalize; text-decoration:none; }
   #primary > li > a:hover { color:#ccc; background:none; }
   #primary > li.active > a { color:#ccc; border-bottom:#ccc 1px solid; }

   #secondary { float:none; width:100%; height:auto; margin:0px; padding:0px; position:relative; list-style:none; text-align:left; }
   #secondary > li { float:none; width:auto; height:auto; margin:0px auto; padding:0px; display:block; position:relative; top:1px; vertical-align:text-top; }
   #secondary > li > a { margin:0px; padding:5px 0px; color:#fff; font-size:0.9em; font-weight:normal; text-align:left; text-transform:capitalize; text-decoration:none; }
   #secondary > li > a:hover { color:#ccc; background:none; }
   #secondary > li.active > a { color:#ccc; }

   .caret { position:relative; top:-2px; left:4px; }

   .dropdown-menu { margin:0px auto 0 !important; padding:0 !important; }
   .dropdown-menu > li { width:100% !important; font-size:0.9em !important; background:#5b5b5b !important; border:none !important; }
   .dropdown-menu > li:hover { background:#5b5b5b !important; }
   .dropdown-menu > li > a { padding:6px 14px !important; margin:0; line-height:2 !important; text-align:left !important; color:#ccc !important; font-size:inherit !important; font-weight:bold !important; text-decoration:none !important; border-bottom:#494949 1px solid !important; border-top:#494949 0px solid !important; }
   .dropdown-menu > li.active > a { color:#fff !important; }
   .dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus { color:#fff !important; background:#5b5b5b !important; }
   .dropdown-menu > .active > a, .dropdown-menu > .active > a:focus, .dropdown-menu > .active > a:hover { background:none !important; }

   .nav > li > a:focus, .nav > li > a:hover { background-color:transparent; }
   .nav .open>a, .nav .open>a:focus, .nav .open>a:hover  { background-color:transparent; }

/* ==========================================================================
   Misc
   ========================================================================== */

   .section-large { padding:120px 0px; }
   .section { padding:80px 0px; }
   .section-mini { padding:40px 0px; }

   .light-grey { background:#f6fafd; }
   .blue-grad { background: #132273; background: -webkit-linear-gradient(to right, #132273, #152c89, #193dac); background: linear-gradient(to right, #132273, #152c89, #193dac); }
   .blue-grad h1, .blue-grad h2, .blue-grad h3, .blue-grad h4, .blue-grad h5, .blue-grad p { color:#fff; }

   section#content ul, section#content ol { width:96%; height:auto; margin:0 auto 20px; padding:0px 0px 0px 20px; }
   section#content ol { padding:0; list-style:none; }
   section#content ul li, section#content ol li { margin-bottom:4px; font-size:1.1em; }
   section#content ul li ol, section#content ol li ol { list-style:none; }
   section#content ul li ol li, section#content ol li ol li { margin-bottom:6px; font-size:inherit; }
   .no-style { padding:0px; list-style:none; }

   ul.social { text-align:center; }
   ul.social > li > a { font-size:1.4em; color:#fff; }

   ul.sitemap { color:#fff; padding:0px; list-style:none; }
   ul.sitemap > li > a { color:#fff; font-size:0.9em; font-weight:normal; }
   ul.sitemap > li:hover > a, ul.sitemap > li:hover > a:hover { color:#ccc; }

   article.testimonial { display:none; }
   article.testimonial .quote > p { font-size:16px; font-style:italic; text-align:center; color:#fff; }
   article.testimonial h4 { margin-right:50px; text-align:right; color:#fff; }

   .shadow { -webkit-box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.45); -moz-box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.45); box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.45); }

   .master-slider-parent { position:relative; z-index:-1; }
   .page-banner { position:relative; z-index:-1; }

   .snip1579 {position: relative; display: inline-block; overflow: hidden; margin:0px; min-width: 100%; max-width: 100%; width: 100%; background-color: #000000; color: #ffffff; text-align: left; font-size: 16px; box-shadow: 0 0 5px rgba(0, 0, 0, 0.15); }
   .snip1579 * {-webkit-transition: all 0.35s; transition: all 0.35s; -webkit-box-sizing: border-box; box-sizing: border-box; }
   .snip1579 img {max-width: 100%; vertical-align: top; }
   .snip1579 figcaption {position: absolute; height: 75px; left: 15px; right: 15px; bottom: 15px; overflow: hidden; padding: 15px; background-color: rgba(0, 0, 0, 0.75); }
   .snip1579 figcaption .content { display:none; }
   .snip1579 h3 {text-transform: uppercase; font-size: 20px; font-weight: 400; line-height: 24px; margin: 3px 0; }
   .snip1579 h5 {font-weight: 400; margin: 0; text-transform: uppercase; color: #bbb; letter-spacing: 1px; }
   .snip1579 blockquote {padding: 0; margin: 0; font-style: italic; font-size: 1em; }
   .snip1579 a {position: absolute; top: 0; bottom: 0; left: 0; right: 0; }
   .snip1579:hover figcaption, .snip1579.hover figcaption {height: calc(85%); }
   .snip1579:hover figcaption .content { display:block; }

   .smaller { font-size:0.9em; }
   .box {padding:30px; background: #f6fafd; border-radius: 2px; margin: 1rem; position: relative; box-shadow: 0 3px 6px rgba(0,0,0,0.15), 0 3px 6px rgba(0,0,0,0.15); }

   #forminator-module-129.forminator-design--flat .forminator-input, #forminator-module-129.forminator-design--flat .forminator-input:hover, #forminator-module-129.forminator-design--flat .forminator-input:focus, #forminator-module-129.forminator-design--flat .forminator-input:active, #forminator-module-129.forminator-design--flat .forminator-textarea, #forminator-module-129.forminator-design--flat .forminator-textarea:hover, #forminator-module-129.forminator-design--flat .forminator-textarea:focus, #forminator-module-129.forminator-design--flat .forminator-textarea:active, .forminator-ui#forminator-module-129.forminator-design--flat .forminator-select2 + .forminator-select .selection .select2-selection--single[role="combobox"] { background-color:#fff !important; }
   .forminator-select-dropdown-container--open .forminator-custom-form-129.forminator-dropdown--flat .select2-results .select2-results__options .select2-results__option.select2-results__option--selected { background-color:#0b1966 !important; }
   .forminator-ui#forminator-module-129.forminator-design--flat .forminator-button-submit { margin:0 auto !important; display:block !important; width:auto !important; padding: 8px 20px !important; margin-bottom: 0 !important; font-size: 14px !important; font-weight: 400 !important; line-height: 1.42857143 !important; text-align: center !important; white-space: nowrap !important; vertical-align: middle !important; -ms-touch-action: manipulation !important; touch-action: manipulation !important; cursor: pointer !important; -webkit-user-select: none !important; -moz-user-select: none !important; -ms-user-select: none !important; user-select: none !important;color:#fff  !important; background:#193dac !important; background-image: none !important; -webkit-border-radius: 25px !important; -moz-border-radius: 25px !important; border-radius: 25px !important; border:#fff 1px solid !important !important; -webkit-box-shadow:0 0 0 0 rgba(50, 50, 50, 0) !important; -moz-box-shadow: 0 0 0 0 rgba(50, 50, 50, 0) !important; box-shadow: 0 0 0 0 rgba(50, 50, 50, 0) !important; }
   .forminator-ui#forminator-module-129.forminator-design--flat .forminator-button-submit:hover { color:#ccc !important; background:#0b1966 !important; }

/* ==========================================================================
   Google Recapatcha V3
   ========================================================================== */

   .grecaptcha-badge { display:none !important; }

/* ==========================================================================
   WP Page Navi
   ========================================================================== */

   .wp-pagenavi { width:100%; height:auto; margin:20px auto; text-align:center; clear:both; }
   .wp-pagenavi a, .wp-pagenavi span { font-size:2em; text-decoration: none; border:1px solid #029bab; padding: 3px 5px; margin: 2px; }
   .wp-pagenavi a:hover, .wp-pagenavi span.current { border-color:#009ea9; }
   .wp-pagenavi span.current { color:#2a2a2a; font-weight:bold; }

/* ==========================================================================
   Media Queries: iPad
   ========================================================================== */

   /* iPad [landscape] */
   @media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
   	section#hero .inner {width: 96% !important; padding:180px 0px !important; }
   	section#hero h1 { font-size:26px !important; }
   }

   /* iPad [portrait] */
   @media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {
   	header .logo {max-width: 120px !important; position: relative !important; left: auto !important; }
   	header .contact { margin: 18px auto !important; }
   	header .contact > li { padding: 0px !important; }
   	header .contact > li > a { font-size:0.9em !important; }
   	#primary { width:100% !important; margin:18px auto !important; }
   	#primary > li { width:auto !important; display:inline-block !important; padding:0px 10px !important; }
   	#primary > li > a { padding:0px 8px !important; font-size:0.9em !important; line-height:1.2 !important; }
   	#primary > li.ipad { display:none !important }
   	.box > h4 { margin:80px 0px 0px !important; }
   	i.ipad { display:none !important }
   }

   /* iPad 3/4 [landscape] */
   @media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) and (-webkit-min-device-pixel-ratio: 2) {
   	section#hero .inner {width: 96% !important; padding:180px 0px !important; }
   	section#hero h1 { font-size:26px !important; }
   }

   /* iPad 3/4 [portrait] */
   @media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) and (-webkit-min-device-pixel-ratio: 2) {
   	header .logo {max-width: 120px !important; position: relative !important; left: auto !important; }
   	header .contact { margin: 18px auto !important; }
   	header .contact > li { padding: 0px !important; }
   	header .contact > li > a { font-size:0.9em !important; }
   	#primary { width:100% !important; margin:18px auto !important; }
   	#primary > li { width:auto !important; display:inline-block !important; padding:0px 10px !important; }
   	#primary > li > a { padding:0px 8px !important; font-size:0.9em !important; line-height:1.2 !important; }
   	#primary > li.ipad { display:none !important }
   	.box > h4 { margin:80px 0px 0px !important; }
   	i.ipad { display:none !important }
   }

/* ==========================================================================
   Bootstrap Queries
   ========================================================================== */
   
   @media (min-width: 320px) and (max-width: 768px) {
   	header { background:url('img/header-bg-mobile.png') top left repeat-x; background-size:contain; }
   	header .logo {max-width: 180px; margin: 20px 0px; position: absolute; left: 0px; z-index:25; }
   	#primary, #primary > li { width:100%; display:block; }
   	#primary { margin:0px auto; }
   	#primary > li > a { padding:4px 0px; }
   	footer #powered p { font-size:0.8em; }
   	section#hero .inner { width: 96%; margin: 0px auto; padding: 120px 0px; }
   	section#hero .inner h1 { font-size:16px; }
   	section#hero .inner .fa-chevron-down {font-size:18px; }
   	section#pre-footer h4 { text-align:center; }
   	section#pre-footer .btn {float: none; margin:10px auto 0px; }
   }

   @media (min-width: 769px) and (max-width: 992px) {
   	ul.social {text-align: left; }
   }

   @media (min-width: 993px) and (max-width: 1200px) {

   }

   @media (min-width: 1201px) {

   }

/* ==========================================================================
   Print
   ========================================================================== */

   @media print {
   	* { background:transparent !important; color:#000 !important; box-shadow:none !important; text-shadow:none !important; }
   	a, a:visited { text-decoration: underline; }
   	a[href]:after { content: " (" attr(href) ")"; }
   	abbr[title]:after { content: " (" attr(title) ")"; }

    /*
     * Don't show links for images, or javascript/internal links
     */

     .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }
     pre, blockquote { border:1px solid #999; page-break-inside:avoid; }
     thead { display:table-header-group; }
     tr, img { page-break-inside: avoid; }
     img { max-width:100% !important; }
     @page { margin: 0.5cm; }
     p, h2, h3 { orphans:3; widows:3; }
     h2, h3 { page-break-after:avoid; }
 }