@charset "utf-8";
/* CSS Document */


@font-face {
    font-family: 'Helvetica Neue Condensed';
    src: url('fonts/HelveticaNeue-CondensedBold.woff2') format('woff2'),
        url('fonts/HelveticaNeue-CondensedBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('fonts/HelveticaNeue.woff2') format('woff2'),
        url('fonts/HelveticaNeue.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('fonts/HelveticaNeue-Bold.woff2') format('woff2'),
        url('fonts/HelveticaNeue-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('fonts/HelveticaNeue-BoldItalic.woff2') format('woff2'),
        url('fonts/HelveticaNeue-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('fonts/HelveticaNeue-Italic.woff2') format('woff2'),
        url('fonts/HelveticaNeue-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

:root {
    --grid-width:       1190px; /* Base Width is Set Here */
    --grid-gutter:        15px; /* Gutter Width is set here.  Just put half the gutter width here. */
    --header-height:     176px;
    --footer-height:     131px;
    
    --primary-color:        #00829C;
    --secondary-color:      #FF9216;
    --tertiary-color:       #323235;
    --quaternary-color:     #F5F5F5;
    --pentary-color:        #E3E3E3;
    --primary-font:         'Helvetica Neue', sans-serif;
    --secondary-font:       'Helvetica Neue Condensed', serif;
    --standard-font-size:   20px;
    --line-height:          1.2;
}

/* Base Template Settings */

.primaryfill                { fill: var(--primary-color); }
.secondaryfill              { fill: var(--secondary-color); }
.whitefill                  { fill: #FFFFFF;}

.bluebox div                { background: var(--primary-color); color: #FFF; padding: 43px 35px 22px; max-width: 459px; z-index: 1; }
.parallax {
  /* Create the parallax scrolling effect */
  overflow-y: scroll;
  perspective: 8px;
  perspective-origin: 0%;
}

body											{ font-family: var(--primary-font); }
#page-head container, #page-foot container, div container, 
section container					            { max-width: var(--grid-width); } 
.halves > .half > container                       { max-width: calc( var(--grid-width) / 2 ); } 
.halves > .half > container, .listed li,
[class^="box-"], [class*=" box-"]               { padding: var(--grid-gutter); } 
.cta, input[type=submit], .frm_button_submit, 
button                                          { background: none; color: var(--secondary-color); font-family: var(--secondary-font); font-size: 20px; transition: all .5s; border: none; }
.cta:hover, input[type=submit]:hover, .frm_button_submit:hover, 
button:hover                                    { opacity: .5; }

article p, .p                                   { font-family: var(--primary-font); font-size: var(--standard-font-size); margin-bottom: var(--standard-font-size); line-height: var(--line-height); }
article h1, h1, .h1                             { font-family: var(--secondary-font); line-height: 1; margin-bottom: 0px; font-size: 50px; }
article h2, h2, .h2                             { font-family: var(--secondary-font); line-height: 1.666667; margin-bottom: var(--standard-font-size); font-size: 30px; }
article h3, h3, .h3                             { font-family: var(--secondary-font); line-height: 1.136363; margin-bottom: var(--standard-font-size); font-size: 22px; }
article h4, h4, .h4                             { font-family: var(--secondary-font); line-height: var(--line-height); margin-bottom: var(--standard-font-size); font-size: 20px; }
article h5, h5, .h5                             { font-family: var(--primary-font); line-height: 1.14; margin-bottom: 0px; font-size: 14px; }
article h6, h6                                  { font-family: var(--secondary-font); line-height: var(--line-height); margin-bottom: var(--standard-font-size); }
article blockquote, .blockquote                 { font-family: var(--secondary-font); line-height: var(--line-height); margin-bottom: var(--standard-font-size); }
article blockquote cite, .blockquote cite       { font-family: var(--primary-font); line-height: var(--line-height) }
article ul, article ol                          { padding-left: 0px; 
/*    var(--standard-font-size);*/
}
article ul                                      { list-style-type: disc; }
article ol                                      { list-style-type: decimal; }
details                                         { font-family: var(--primary-font); font-size: var(--standard-font-size); margin-bottom: var(--standard-font-size); line-height: var(--line-height); }
details summary                                 { font-family: var(--primary-font); font-size: var(--standard-font-size); margin-bottom: var(--standard-font-size); line-height: var(--line-height); }
 
/* Header Settings */

#page-head										{ background: transparent; height: var(--header-height); position: absolute; left: 0px; top: 0px; z-index: 3; width: 100%;  }
#page-head container                            { height: var(--header-height); max-width: 1365px; padding: 0px 70px; }
#page-head container .logo 	                    { width: 255px; display: block; margin: 17px 0px 0px 0px }
#page-head container #nav                       {  }
#page-head container #nav #main					{  }
#page-head container #nav #main li              { margin: 0px; font-size: 0px; }
#page-head container #nav #main a			    { text-decoration: none; margin: 0px 10px; font-family: var(--secondary-font); font-size: 25px; color: var(--pentary-color); }
#page-head container #nav #main > li:last-child a { margin-right: 0px; }
#page-head container #nav #main .current-menu-item a, #page-head container #nav #main .active a,
#page-head container #nav #main a:hover           { color: var(--secondary-color); opacity: 1; } /* This is the Hover/Active state for the menu item */
#page-head.toggle-menu container > .toggle:before, #page-head.toggle-menu container > .toggle:after, #page-head.toggle-menu container > .toggle i:before, #page-head.toggle-menu container > .toggle i:after    { background: #FFF; }
#nav.addtoggle #main .menu-item-has-children span.toggler { position: absolute; top: 0%; right: 0px; transform: translateY(50%); }

/* Homepage Header Settings */

.home-header, .home-header container            { height: 881px; }
.home-header video                              { z-index: -1; object-fit: cover; min-width: 100%; min-height: 100%; max-width: 100vw; }
.home-header container article                  { max-width: 460px; display: block; width: 100%; }
.home-header container article div              { padding: 61px 35px 22px; }
.home-header container article h1               { color: #FFF; position: relative; left: -35px; margin-bottom: -30px; width: calc( 100% + 20px ); color: #E3E3E3; }
.home-header container article h1 strong        { color: var(--secondary-color); }

/* google translate */
.notranslate { background: var(--primary-color); color: var(--pentary-color); font-family: var(--primary-font);  padding: 5px; font-weight: bold; }
select.notranslate option { content: '!'; }
/*
.notranslate { background: transparent; color: var(--pentary-color); font-size: 24px; font-weight: bolder; margin: auto; padding: 0px; width: auto; border: none; }
.notranslate:hover { color: var(--secondary-color); }
*/

/* Homepage Body Settings */

.home-body                                      { position: relative; }
.home-body container                            { padding: 50px 25px 224px; max-width: 1000px; position: relative; z-index: 2; }
.home-body container h2                         { margin-bottom: 26px }
.home-body container > .box-1-2:first-child figure { position: relative; z-index: -1; width: calc( 100% + 95px ); margin-left: -18px; margin-top: -15px }
.home-body container > .box-1-2:nth-child(2) article    { padding-top: 203px }
.home-body container > .box-1-2:nth-child(2) article h2 { text-align: right; }
.home-body container > .box-1-1                 { padding: 85px 50px 0px }
.home-body > svg                                { position: absolute; bottom: 0px; left: 0px; width: 100%; }


/* Header Image Settings */

.header-image, .header-image container          { height: 485px; overflow: visible; }
.header-image picture                           { overflow: hidden; }
.header-image article                           { position: relative; z-index: 1; top: 80px; }  

/* Page Title settings */

.page-title                                     { background: var(--quaternary-color); height: 190px; }
.page-title h1.h1                               { margin: 0px; }
.page-title container                           { height: 190px; max-width: 1120px; padding: 0px 15px; height: 190px;   display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: flex-start; align-content: stretch; align-items: center; }

/* Content Settings */

.content container                              { max-width: 1110px; padding: 55px 15px; }
.content container article p + h2               { margin-top: 35px }
.content container .twocol, .content container .threecol,
.content container .fourcol                     { column-gap: 60px }

main                                            { min-height: calc( 100vh - var(--header-height) - var(--footer-height) ) }
.admin-bar main                                 { min-height: calc( 100vh - var(--header-height) - var(--footer-height) - 32px ) }
main a                                          { color: var(--primary-color); text-decoration: none; } /* Main Link Style */
main .content .boxcontainer div div             { background: var(--secondary-color); color: #FFF; padding: 10px; min-height: 40px; font-size: 10px; }

/* News */
.news                                           {  }
.news ul                                        { list-style-type: none; 
/*    margin-top: 55px; */
}
.news ul li                                     { margin-bottom: 30px; }

/* Team */

.team                                           { background: var(--quaternary-color); }
.team container                                 { max-width: 1120px; padding: 45px 15px; }
.team container ul.teammates                    { padding: 0px; width: calc(  100% + 30px ); margin-left: -15px; }
.team container ul.teammates li a picture img   { width: 100%; max-width: 100%; margin-bottom: 20px }
.team container ul.teammates li a h3,
.team container ul.teammates li a p             { color: var(--tertiary-color); margin-left: 30px; margin-bottom: 0px; transition: all .5s }
.team container ul.teammates li a:hover *       { color: var(--secondary-color)!important; }

/* vision */
.slides                                         { list-style-type: none; }
.vision-icon                                    { text-align: right; }

/* Form Settings */
.frm_form_field                                         { padding: var(--grid-gutter); }
.frm_form_fields fieldset                               { border: none; }
.frm_form_fields fieldset legend                        { display: none; }
.frm_form_field input:focus::-webkit-input-placeholder  { color: transparent; }
.frm_form_field input:focus:-moz-placeholder            { color: transparent; } 
.frm_form_field input:focus::-moz-placeholder           { color: transparent; } 
.frm_form_field input:focus:-ms-input-placeholder       { color: transparent; } 
.frm_form_field input[type=checkbox]            {  }
.frm_form_field input[type=checkbox]:checked:before {  }
.frm_form_field input[type=radio]               {  }
.frm_form_field input[type=radio]:checked:before     {  }
.frm_form_field input[type=search], 
.frm_form_field input[type=text], 
.frm_form_field input[type=email], 
.frm_form_field input[type=tel]                 { width: 100%; border: 1px solid var(--primary-color); } 
.frm_form_field input[type=search] { display: block; height: 40px; padding-left: 10px; border-radius: 0px; -webkit-appearance: none; appearance: none;
}
.frm_form_field textarea                        {  width: 100%; border: 1px solid var(--primary-color); }    
.frm_form_field select                          {  }
.frm_submit                                     { clear: both; display: block; padding: var(--grid-gutter); }
.frm_verify                                     { display: none; }

/* Bottom Reports */

.bottom-reports                                 { color: #FFF; background: var(--primary-color);} 
.bottom-reports container                       { max-width: 1115px; padding: 90px 15px 115px; }
.bottom-reports container .reports-wrapper      { padding: 0px; position: relative; z-index: 1; width: calc( 100% + calc( 50vw - calc( 1115px / 2 ) + 15px )  ); height: 193px; }
.bottom-reports container .report               { display: inline-block; width: 352px; height: 193px; margin-right: 16px; flex: 0 0 auto; }
.bottom-reports container .report a             { display: block; height: 100%; padding: 40px 80px 0px 30px; color: #FFF; white-space: normal;  }
.bottom-reports container .report picture:before  { content: ''; width: 100%; height: 100%; background: #303030; opacity: .82; position: absolute; top: 0px; left: 0px; transition: all .5s; }
.bottom-reports container .report a:hover picture:before    { background: var(--secondary-color); }

/* Footer Settings */
#page-foot										{ background: #FFF; }
#page-foot svg                                  { width: 50px; margin-right: 28px }
#page-foot container                            { height: var(--footer-height); max-width: 1118px; padding: 15px;  }
#page-foot h5 a                                 { color: #000; text-decoration: none; margin-left: 25px }
#page-foot h5 a:hover                           { color: var(--secondary-color); }

.social a:before  { color: var(--primary-color); }
#page-foot div .social { padding-top: 15px; }
.bg > picture.data-img img    { bottom: 50%; }
@media handheld, only screen and (min-width: 1401px) { /* Under the grid width to iPad Landscape */
    .bg > picture.data-img img    { bottom: 25%; }  
}
@media handheld, only screen and (max-width: 1400px) and (min-width: 1115px) { /* Under the grid width to iPad Landscape */
    .bg > picture.data-img img      { bottom: 35%; }  
}

@media handheld, only screen and (max-width: 1115px) and (min-width: 1024px) { /* Under the grid width to iPad Landscape */
    .bottom-reports container .reports-wrapper      { width: calc( 100% + calc( 50vw - calc( 100vw / 2 ) + 15px )  ); }
    
}

@media handheld, only screen and (max-width: 1023px) and (min-width: 767px) { /* Smaller tablets to iPad portrait */

    #page-head container                { padding: 0px 15px;}
    
    .bottom-reports container .reports-wrapper      { width: calc( 100% + calc( 50vw - calc( 100vw / 2 ) + 15px )  ); }
    
}

@media handheld, only screen and (max-width: 766px) { /* Mobile - All Mobile */
    
    :root {
        --header-height:     108px;
    }
    
    article p, .p                                   {  }
    article h1, h1, .h1                             { font-size: 33px; }
    article h2, h2, .h2                             { font-size: 30px; }
    article h3, h3, .h3                             { font-size: 22px; }
    article h4, h4, .h4                             { font-size: 20px; }
    article h5, h5, .h5                             {} 
	
    /* vision */
    .vision-icon                                    { text-align: center; }

	/* Mobile Menu styles */
    #page-head                                      { position: fixed; background: var(--primary-color); }
    #page-head container                            { padding: 0px; height: var(--header-height) }
    #page-head container .logo                      { margin: 0px; }
    #page-head container .toggle                    { background: #FFF; width: var(--header-height); height: var(--header-height); margin: 0px; margin-top: -4px }
    #page-head container .toggle:before, #page-head container .toggle:after, #page-head container .toggle em:before, #page-head container .toggle em:after  { background: var(--primary-color);  height: 11px; border-radius: 0px; width: 80%; left: 10%; }
    #page-head container .toggle:before             { top: 30px }
    #page-head container .toggle:after              { bottom: 20px; top: auto; }
    #page-head container .logo > *                  { width: auto; max-height: var(--header-height); }
    #page-head container #nav					    { background: var(--primary-color);}
    #page-head container #nav #main                 {  }
	#page-head container #nav #main li a		    { padding: 20px; }	
	#page-head container #nav #main li ul	        {  }
    #page-head container #nav #main li ul li a      {  }
    
    .home-header                                    { margin-top: var(--header-height) }
    .home-header, .home-header container            { height: auto; }
    .home-header container article      { max-width: 100vw!important; }
    .home-header container                          { padding-top: 374px; }
    .home-header video                              { height: 351px; min-height: 351px; top: 0px; transform: translateX(50%) }
    .home-header container article div              { padding-top: 43px; }
    .home-header container article h1               { margin: 0px; bottom: 0px; width: 100%; left: 0px; padding: 30px; transform: translateY(-160px); margin-bottom: -183px; }
    .bluebox div                { max-width: 100vw; }
    
    .home-body container > .box-1-2:first-child figure {  width: calc( 100% + 35px ); }
    .home-body container > .box-1-2:nth-child(2) article    { padding-top: 0px; }
    .home-body container > .box-1-2:nth-child(2) figure { display: none; }
    .home-body container > .box-1-1                     { padding: 25px 0px; }
    
    .header-image article                           { top: 0px; }
    
    .bottom-reports container .reports-wrapper      { width: calc( 100% + calc( 50vw - calc( 100vw / 2 ) + 15px )  ); }
    
    #page-foot container                            { display: flex;  flex-direction: row;  flex-wrap: nowrap; justify-content: space-between; align-content: stretch;  align-items: center; }
    #page-foot container .footer-logo                        { margin: 0px; }
    #page-foot container h5                         { width: calc( 100% - 80px ); display: flex;  flex-direction: row;  flex-wrap: nowrap; justify-content: space-between; align-content: stretch;  align-items: center;  }
    #page-foot container h5 span                    { display: block; width: calc( 100% - 100px) }
    #page-foot container h5 a                       { white-space: nowrap; }
    #page-foot div .social { padding-top: 0px; }
}