
/* Reset */
* { margin: 0; padding: 0; border: 0; color: #003882; line-height: 125%; font-family: charter_regular; text-decoration: none; vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section { display: block; }
table { border-collapse: collapse; border-spacing: 0; }

/* Basic layout */
html { overflow-y: scroll; scroll-behavior: smooth; }
body { font-size: 1.2em; }
h1 { background-color: #6699c2; opacity: 0.9; padding: 0.3em; font-size: 2em; font-weight: normal; text-align: center; color: #ffffff; position: absolute; bottom: 0px; right: 0; left: 0; }
a { color: #6699c2; font-weight: bold; }
a:hover { color: #003882; }
img { max-width: 100%; }
sup { vertical-align: super; font-size: smaller; }

.decisal_logos { font-family: enigmatic_regular; }
.decisal_lightblue { font: inherit; color: #6699c2; }

/* Header and footer */
header, footer, nav, section, h1, h2, h3, h4, h5, h6, div, span, a, img, ul, li {
    transition: all 0.75s;
    -moz-transition: all 0.75s; /* Firefox 4 */
    -webkit-transition: all 0.75s; /* Safari and Chrome */
    -o-transition: all 0.75s; /* Opera 8 */
}

header { background: #ffffff; opacity: 0.95; box-shadow: 0 3px 7px #7f7f7f; float: left; width: 100%; position: fixed; z-index: 100; }

#back_to_top { display: none; z-index: 1000; border: 0; height: 40px; width: 40px; background: url('/img/back_to_top.png') center no-repeat; position: fixed; bottom: 0.5em; right: 0.5em; }

#back_to_top:hover { background-image: url('/img/back_to_top_hover.png'); }

nav { max-width: 1024px; margin: 0 auto; }
nav ul { list-style-type: none; float: right; margin: 0.5em 0.5em 0.5em 2.0em; }
nav ul ul { list-style-type: none; display: none; box-shadow: 0px 3px 7px #7f7f7f; background-color: #ffffff; position: absolute; margin: 0; border-radius: 0 0 8px 8px; }
nav ul li:hover ul { display: block; }

nav li { font-size: 0.9em; display: inline; float: left; text-align: center; position: relative; }
nav ul li { margin-right: 0; margin-left: 1.0em; }
nav ul ul li { margin: 0em 0.8em 0.8em 0.8em; }
nav ul ul li:first-child { margin-top: 0.8em; }
nav ul ul li:last-child { margin-bottom: 0.8em; }
img.logo{ float: left; margin-left: 0.5em; width: auto; height: auto; }

nav a { color: #003882; }
nav a.active { color: #003882; border-bottom: solid 2px #003882; }
nav a:hover { color: #6699c2; border-bottom: solid 1px #6699c2; }

.menu_down_arrow { color: inherit; font-size: 0.5em; position: relative; top: -0.5em }

footer { border-top: 0.5em solid #6699c2; font-size: 70%; float: right; width: 100%; height: 100%; padding-top: 2em; padding-bottom: 2em; }
footer nav { color: #003882; margin-right: auto; margin-left: auto; padding-left: 0.5em; }
footer nav a { color: #6699c2; }
footer nav a:hover { color: #003882; border: 0; }

/* Sizes for the bigger menu */
header.large{ height: 5em; }
header.large img{ height: 4em; margin-top: 0.5em; }

/* Sizes for the smaller menu */
header.small { height: 50px; }
header.small img { height: 40px; margin-top: 5px }

/* Mobile menu */
.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }
nav a#pull_down_menu { display: none; }

/* Media */
@media only screen and ( max-width: 859px ) { body { font-size: 1.0em; } }
@media only screen and ( max-width: 439px ) { body { font-size: 0.9em; } }
@media only screen and ( max-width: 379px ) { body { font-size: 0.8em; } }
@media only screen and ( max-width: 339px ) { body { font-size: 0.7em; } }
@media only screen and ( max-width: 309px ) { body { font-size: 0.6em; } }
@media only screen and ( max-width: 279px ) { body { font-size: 0.5em; } }

@media only screen and ( max-width: 719px ) {
    h1 { font-size: 1.75em; }
    
    header nav { height: auto; width: 100%; position: relative; }
    nav ul { font-size: 11pt; font-weight: bold; padding: 0; margin: 0; min-width: 200px; width: 75%; display: none; height: auto; }
    nav ul ul { display: none; padding: 0; margin: 0; position: relative; background-color: #808080; width: 90%; border-radius: 0 0 0 0; box-shadow: 0 0 0 0; }
    nav li { padding: 0; margin: 0; display: inline; width: 100%; float: left; position: relative; }
    nav ul li { padding: 0; margin: 0; background: #808080; display: inline; width: 100%; float: left; position: relative; }
    nav ul ul li:first-child { margin-top: 0; }
    nav ul ul li:last-child { margin-bottom: 0; }
    nav ul ul li { margin: 0; padding: 0; background: #b0b0b0; display: inline; max-width: 100%; float: left; position: relative; }
    nav li a { border-top: 1px solid #ffffff; }
    nav ul li a { border-top: 1px solid #ffffff; }
    nav a { color: #ffffff; display: block; text-align: center; text-decoration: none; line-height: 40px; text-shadow: 1px 1px 0px #000000; text-align: left; width: 100%; text-indent: 25px; }
    nav a.active { color: #ffffff; background-color: #003882; border: 0; border-top: 1px solid #ffffff;  }
    nav a:hover { color: #ffffff; background-color: #6699c2; border: 0; border-top: 1px solid #ffffff; }
    nav a#pull_down_menu:hover { color: #ffffff; background-color: #6699c2; border: 0; }
    #pull_down_menu { display: none; margin: 5px; margin-right: 0.5em; width: 40px; background: #003882 url('/img/menu_icon.png') center no-repeat; }
    nav a#pull_down_menu { display: block; float: right; height: auto; background-color: #003882; position: relative; }
}

/* Disable smooth scrolling when users have prefers-reduced-motion enabled */
@media screen and (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}


/* Stretch section */
#stretch { float: left; width: 100%; position: relative; margin-bottom: 2em; line-height: 0; }
#stretch img { margin: 0; position: relative; width: 100%; height: auto; overflow: hidden; }

@media only screen and ( max-width:  699px ) {
  #stretch h2 { font-size: 1.5em; opacity: 0.9; }
  #stretch img {  object-fit: cover; height: 13em; }
  #stretch img.aircraft {  height: 140px; }
}

/* Animation text zoom appear */
.text_zoom_appear {
    color: inherit;
    
    animation: text_appearing 2.5s;
    -moz-animation: text_appearing 2.5s; /* Firefox 4 */
    -webkit-animation: text_appearing 2.5s; /* Safari and Chrome */
    -o-animation: text_appearing 2.5s; /* Opera 8 */
}
@-webkit-keyframes text_appearing {
    0% { opacity: 0; font-size: 0; }
    35% { opacity: 0; font-size: 0; }
    75% { opacity: 1; font-size: 1.6em; }
}
@keyframes text_appearing {
    0% { opacity: 0; font-size: 0; }
    35% { opacity: 0; font-size: 0; }
    75% { opacity: 1; font-size: 1.6em; }
}

/* Text section */
section.text { max-width: 1024px; margin: 1em auto 1em auto; clear: left; }
div.stretch_color { padding: 1em 0 1em 0; max-width: 100%; }

/* Headers */
h2 { color: inherit; margin: 1.5em 0 0 0.33em; max-width: 33em; }
h3 { margin: 1.0em 0 0 0; max-width: 33em; }
h4, h5, h6 { margin: 1.0em 0 0 0; max-width: 33em; }

/* Text blocks */
div.block { width: 17em; display: inline-block; vertical-align: top; margin: 0; margin-left: 0.5em; margin-bottom: 0.5em; }
div.center { margin: 0.5em auto 0.5em auto; text-align: center; }
div.right { margin: 0.5em 0.5em 0.5em auto; text-align: right; }
div.left { margin: 0.5em auto 0.5em 0.5em; text-align: left; }
div.right, div.left, div.center { width: 25em; }
div.right h2 { margin: 0 }

@media only screen and ( max-width: 480px ) { div.right, div.left, div.center { width: 23em; } }

p { margin: 0.5em 0 0 0; }
ol, ul { margin: 0.5em 2.0em 0.5em 2.0em; }

/* Comparison table */
table.comparison { font-size: 1.2em; border-collapse: separate; border-spacing: 0 0.5em; padding-right: 0.5em; padding-left: 0.5em; margin-right: auto; margin-left: auto; margin-bottom: 1em; }
td.section_row { border-bottom: solid 2px; text-align: center; }
tr.huge_font { font-size: 1.5em; }
table.mini_comparison { vertical-align: middle }
.comparison td { text-align: center; vertical-align: middle; }
.comparison img { height: 1.5em; }
td.mini_comparison { padding: 1em; width: 40%; }
.mini_comparison td { vertical-align: middle; text-align: left; }
.mini_comparison img { height: 1.5em; width: 1.5em; }


/* Block Quote */
blockquote {
  margin: 0em auto;
  display: block;
}
blockquote:before {
  display: none;
}
blockquote:not(:first-of-type) {}
blockquote p {}
blockquote footer {
  border: 0;
  padding: 0;
  font-size: 100%;
  font-style: italic;
}
blockquote footer:before {
  content: '— ';
}
blockquote:nth-of-type(even) {}
blockquote:nth-of-type(even) footer {}
blockquote:nth-of-type(even) footer:before {
  border: 0;
  padding: 0;
  font-size: 100%;
  font-style: italic;
}
blockquote:nth-of-type(even) footer:after {
  content: ' —';
}


/* Brochure link */
a.brochure_link { border: 0; position: relative; bottom: 0; line-height: 0; }
a.brochure_link img { margin-top: 0.25em; }
.brochure_link div { background: #003882; color: #ffffff; opacity: 0.8; position: absolute; bottom: 1.0em; text-align: center; width: 100%; margin:0; padding: 0.5em 0 0.5em 0; }
a.brochure_link:hover div { background: #6699c2; opacity: 0.9; }

/* Form */
select, input, textarea { font-size: 100%; width: 100%; border: solid 1px #003882; border-radius: 0.2em; background-color: #e3eaf0; padding: 0.1em }

input[type="submit"] { font-size: 100%; font-weight: bold; color: #ffffff; background: #003882; padding: 0.5em; }
