/*
Theme Name: Ulterra
Theme URI: http://ulterra.com/
Version: 1.0
Description: Ulterra Custom Theme
Author: Harlan Bowling
Author URI: http://moonandowl.com
Tags: 

Copyright 2018 Ulterra & Moon & Owl. All rights reserved.

*/


/*
Dark Green - #05929F
Light Green - #98C21F
Body Grey - #4A4A4A

Fonts
rift - 700
usual - 300,400
termina - 600


/*------------------------------------------------*/
/*----------[BASE TEXT & LAYOUT STYLES]-----------*/
/*------------------------------------------------*/


html, body { width:100%; height:100%; }
body { background:#fff; color:#4A4A4A; font: 300 1.1em/1.65 'usual', sans-serif; }

header, footer, section { width:100%; margin:0 auto; }
.container, section.content .container.max, body.single section.content .container, section.content .videoembed .container, section.content .brochure .container, section.content .articlebank .container, .page-id-13 section.content .container, .page-id-15 section.content .container { width:92%; margin:0 auto; max-width:1250px; }
.container.narrow { width:60%; }
.container.people { max-width:1250px; }
section.content .container { width:80%; max-width: 900px; }

h1, h2, h3, h4 { margin:0; padding:0; text-transform: uppercase; }
h1 { font: 700 3.5em/0.9 'rift', sans-serif; display:block; color:#05929F; margin-bottom:50px; }
h2 { font: 700 2.5em/0.9 'rift', sans-serif; margin:0 0 30px; color:#98C21F; }
h3 { font: 600 1.25em/1.15 'termina', sans-serif; margin:0 0 12px; color:#05929F; }
h4 { font: 600 1.15em/1.15 'termina', sans-serif; margin:0 0 8px; }

a { text-decoration:none; cursor: pointer; color:#98C21F; -moz-transition: all 0.5s ease 0s; -webkit-transition: all 0.5s ease 0s; -o-transition: all 0.5s ease 0s; transition: all 0.5s ease 0s; }
a:hover { color: #05929F; }
a.button, a.button.alt:hover, a.more-link, input[type=submit] { cursor:pointer; background: #98C21F; display:inline-block; margin:0 0 30px; padding:18px 60px 14px; font: 600 1.25em/1 'termina', sans-serif; color:#fff; border-radius:6px; text-align: center; text-transform: uppercase; }
a.button.alt, a.button.alt2:hover { background:#fff; color:#98C21F; border:2px solid #98C21F; }
a.button.alt2 { background:#fff; color:#ccc; border:2px solid #ccc; }
a.button.large { font-size:1.25em; padding:24px 60px; }
a.more-link { margin:0; }
li.menu-item-72 a { cursor:default !important; }
li.menu-item-72 ul.sub-menu li a { cursor: pointer !important; }
[class^="longformlink-"] a, .longformlink a { display:block; padding:20px; background:#eee; margin:80px 0; }
[class^="longformlink-"] a i, .longformlink a i { float:right; color:#aaa !important; font-size:0.7em; position:relative; top:3px; }

p { margin:0 0 40px; }
p.termina { font-family:'termina', sans-serif; font-weight:600; color:#7A7D81; text-transform:uppercase; }
p.tags { font: 600 1em/1.15 'termina', sans-serif; margin:0 0 8px; text-transform:uppercase; }


.content ul, .content ol { margin:-20px 0 30px 30px; }
.content .post-copy ul, .content .post-copy ol { margin:20px 0 30px 30px; }
.content ol ul { margin:5px 0 5px 30px; }
.content ul li, .content ol ul li { list-style-type: disc; margin:0 0 5px; }
.content ol li { list-style-type: decimal; margin:0 0 5px; }

.meta { font: 300 0.9em/1.25 'usual', sans-serif; margin-bottom:20px; color:#333; text-transform: uppercase; }

blockquote { font: 300 2.5em/1.15 'usual', sans-serif; margin:40px auto; color:#aaa; }

.wpcf7 p { margin:0 0 12px; }
input, textarea, select { font: 300 1.1em/1.25 'usual', sans-serif; background:#ebebeb; border:none; padding:12px; width:100%; margin:0; }
textarea { height:310px; resize:none; }
label { font: 600 1em/1 'termina', sans-serif; text-transform: uppercase; color:#05929F; margin:0 0 8px; }
input.quiz { margin-bottom:20px; width:60%; }


/*------------------------------------------------*/
/*----------------[THEME STYLES]------------------*/
/*------------------------------------------------*/


header { position:relative; z-index:9999; background: linear-gradient(180deg, #05929F, #3F7077); border-bottom:1px solid #979797; }

.logo { height:55px; width:auto; float:left; margin:20px 8% 20px 0; }

nav { position:relative; z-index:9999; margin:0; padding:0; text-transform: uppercase; float:right; text-align:center; vertical-align: middle; }
nav ul li { padding:34px 9px; margin:0 4px; display:inline-block; -moz-transition: all 0.5s ease 0s; -webkit-transition: all 0.5s ease 0s; -o-transition: all 0.5s ease 0s; transition: all 0.5s ease 0s; }
nav ul li a { color:#fff; font: 600 13px/1 'termina', sans-serif; }
nav ul li a:hover, nav ul li.current-menu-item a { color:#98C21F; }
nav ul li.menu-item-20 a { background: #98C21F; color:#fff !important; padding:8px 18px; border-radius:4px; }
nav ul li.menu-item-20 a:hover { color:#fff; }
nav ul li.menu-item-has-children { position:relative; }
nav ul li.menu-item-has-children > ul { display:none; opacity:0; position:absolute; white-space: nowrap; font-size:0.85em; top:96px; left:0px; padding:12px 22px; background: #05929F; box-shadow: 0px 20px 30px 0px rgba(0,0,0,0.1); text-align:left; z-index: 99; }
nav ul li.menu-item-has-children > ul li { display: block; margin:8px 0; padding:0 12px; }
nav ul li.menu-item-has-children:hover > ul { display:block; opacity:1; }
nav ul li.menu-item-has-children > ul li:after { content:none; }
nav ul li.menu-item-has-children > ul li span.togglesubmenu { display:none !important; }

.navmask { display:none; top:0; left:0; position:fixed; width:100%; height:100%; z-index:9998; background:rgba(13,70,77,0.5); }


.texture { position: absolute; width:15vw; height:auto; bottom:0; right:0; z-index:2; }

section.hero { position:relative; z-index:9998; min-height:90vh; background-size: cover; background-position: center; color:#fff; }
.mask { position:absolute; z-index:1; background:rgba(13,70,77,0.5); top:0; left:0; width:100%; height:100%; }
body.page-template-page-products .mask { display:none; }
body.single section.hero { min-height:50vh; }
body.page-id-9 section.hero, body.page-id-67 section.hero { min-height:40vh; }
.herocopy { position: relative; z-index:3; padding:15vh 0; }
.herocopy h1 { font-size:7em; color:#fff; margin:0; }
body.single .herocopy h1 { font-size:4em; }
.herocopy h2 { color:#98C21F; margin:0; font-size:3.25em; }
.herocopy p { font-size:1.35em; margin-bottom:0; }
.herocopy a.button { margin-top:30px; }
.divider { display:block; position:relative; width:120%; height:auto; margin-right:-20%; margin:40px 0; }

section.content { padding:200px 0 150px; min-height: 65vh; position:relative; background: #fff url(images/bg-bars-hz.png) no-repeat; background-size: 60% auto; background-position: top left; overflow-x:hidden; }
.page-template-page-products section.content { padding:200px 0 0; }
.drillbit { position: absolute; width:12vw; height:auto; bottom:0; right:-5%; z-index:1; }

section.products { position:relative; background: #f9f9f9 url(images/bg-products.png) no-repeat; background-position: top center; background-size: 100% auto; padding:200px 0 150px; }
.productintro { margin-bottom:60px; }
.product { background: url(images/texture-rpt.png) repeat; padding:8px; text-align:center; }
.product-top { background:rgba(255,255,255,0.95); padding:32px 0 140px; }
.product-middle { background:rgba(240,240,240,0.9); padding:0 0 30px; margin-bottom:-120px; min-height:475px; }
.product-bottom { background:rgba(100,100,100,0.1); padding:30px 0 10px; }
.product-middle .container { position:relative; top:-120px; max-width:80%; height:auto; }
.productimg { margin-bottom:30px; }
.product h4 { color:#98C21F; }
.product p { text-align: left; }
.product hr, .apps hr { margin:12px 0; }

.benefits { position:relative; margin-top:80px; background:#8ACFDD; padding:0px 0 100px; }
.benefits img { width:100%; height:auto; margin:0; }
.benefits h2 { color:#4a4a4a; margin:50px 0; }
.benefits h3 { color:#fff; }
.benefits ul { margin:0; font: 600 1em/1 'termina', sans-serif; text-transform: uppercase; }
.benefits ul li { list-style-type: none; margin:0 0 18px; color:#fff; }
.benefits hr { width:80%; margin:12px 0; }

.videoembed { position:relative; padding:80px 0; width:100%; background: #fff url(images/bg-drillbit2.png) no-repeat; background-size:auto 150%; background-position: 0 -5%; overflow: hidden; }
.videoembed .copy { padding:40px 0; }
.videoembed h2 { color:#4a4a4a; margin:0 0 12px; }
.videoembed p { font: 300 1.2em/1.65 'usual', sans-serif; }
.videoembed hr { width:80%; margin:8px 0; }

.brochure { position:relative; padding:80px 0; background:rgba(138,207,221,0.2); }
.brochure .copy { background:#fff; padding:50px 0; }
.brochure .divider { margin:0; }
.brochure hr { width:80%; margin:8px 0; }
.brochure strong { text-transform: uppercase; color:#98C21F; }
.brochure p { margin:0; font: 300 1.2em/1.65 'usual', sans-serif; }

.articlebank { position:relative; padding:80px 0; background:#eee; }
.articlebank hr { width:80%; margin:8px 0; }
.articlebank .copy { background:#fff; padding:50px 0; margin-bottom:50px !important; }


.photosection { position:relative; background: #f9f9f9 url(images/bg-performance.png) no-repeat; background-position: top center; background-size: 100% auto; padding:120px 0 100px; }
.photosection h2 { color:#4a4a4a; margin:0 0 12px; }
.photosection hr { width:80%; margin:8px 0; }
.photosection h3 { margin:8px 0 40px; }


.performance { position:relative; background: #f9f9f9 url(images/bg-performance.png) no-repeat; background-position: top center; background-size: 100% auto; padding:120px 0 150px; }
.performance h2 { color:#4a4a4a; margin:0px; }
.performance hr { width:80%; margin:8px 0; }
.performance h3 { margin:0 0 40px; }
.performance ul { margin:20px 0 50px 30px; }


.appcontainer { margin:60px auto 80px; }
.appcontainer .divider { margin:0; }
.apps { background:#fff; padding:50px; }
.apps h4 { color:#98C21F; }
.bottombars { position:absolute; bottom:0; left:0; width:100%; height:auto; }

.post { padding-top:20px; }

.widgetbody ul { margin:0 0 40px 30px; }

.people h3.longformlink { margin-top:18px; }
.people img { width:100%; height:auto; }
.people h3.longformlink a { padding:12px 0; font-size:0.8em; color:#4A4A4A; background:none; margin:0; }
.people h3.longformlink a i { float:right; color:#aaa !important; font-size:0.6em; position:relative; top:4px; }
.people h2, .people h3 { margin:0 0 8px; }


footer { background: url(images/bg-bars-hz.png) no-repeat; background-size: 60% auto; background-position: top left; padding:200px 0 50px; }
footer ul li { margin-bottom:8px; }
.social-icons { margin:0; display:block; }
.social-icons i { display:inline-block; margin:0 10px; font-size:1.35em; }
.social-icons a { color:#05929F; }
.social-icons a:hover { color:#98C21F; }
.bottom { background: url(images/bg-footer.jpg); background-position: center; background-size: cover; padding:50px 0 120px; text-align: center; font: 600 0.85em/1.15 'termina', sans-serif; color:#fff; }

.certs { margin:0 auto 40px; }
.certs img { max-height:140px; max-width:160px; width:auto; height:auto; vertical-align: middle; }



/*------------------------------------------------*/
/*--------------[CAREERS STYLES]------------------*/
/*------------------------------------------------*/


.accolo_bodytext, .accolo_bodybold { vertical-align: middle; padding:0 12px; }

.accolo_search_form input, .accolo_search_form select { margin:0 0 18px; width:50%; }
.accolo_button { margin-bottom:40px !important; }

/* table styles */
.accolo_result_table { padding:12px; margin:30px 0 120px; }
.accolo_tableheader {  color: #fff; background-color: #05929F; height:20px; text-align: left; vertical-align: middle; padding: 18px; }

.accolo_altrow { background-color: #ebebeb; vertical-align: middle; line-height:1.5em; }
.accolo_regrow { vertical-align: middle; line-height:1.5em; }
.accolo_joblocation { vertical-align: middle; }
.accolo_joblink { display:block; padding:18px 0; font-weight:bold; }

 






