@import "settings";
@import "foundation/components/type";
@import "foundation/components/grid";
@import "foundation/components/top-bar";
@import "foundation/components/tables";
@import "foundation/components/global";
@import "foundation/components/flex-video";
@import "foundation/components/reveal";

// @import "foundation";
// Or selectively include components
// @import
//   "foundation/components/accordion",
//   "foundation/components/alert-boxes",
//   "foundation/components/block-grid",
//   "foundation/components/breadcrumbs",
//   "foundation/components/button-groups",
//   "foundation/components/buttons",
//   "foundation/components/clearing",
//   "foundation/components/dropdown",
//   "foundation/components/dropdown-buttons",
//   "foundation/components/flex-video",
//   "foundation/components/forms",
//   "foundation/components/grid",
//   "foundation/components/inline-lists",
//   "foundation/components/joyride",
//   "foundation/components/keystrokes",
//   "foundation/components/labels",
//   "foundation/components/magellan",
//   "foundation/components/orbit",
//   "foundation/components/pagination",
//   "foundation/components/panels",
//   "foundation/components/pricing-tables",
//   "foundation/components/progress-bars",
//   "foundation/components/reveal",
//   "foundation/components/side-nav",
//   "foundation/components/split-buttons",
//   "foundation/components/sub-nav",
//   "foundation/components/switches",
//   "foundation/components/tables",
//   "foundation/components/tabs",
//   "foundation/components/thumbs",
//   "foundation/components/tooltips",
//   "foundation/components/top-bar",
//   "foundation/components/type",
//   "foundation/components/offcanvas",
//   "foundation/components/visibility";

html, html a {
    -webkit-font-smoothing: antialiased;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.004);
}

.wf-loading h1, .wf-loading p {
    visibility:hidden;
}

pre code {
    display: block;
    overflow: auto;
    padding: 10px;
    font-weight: normal;
    border-width: 1px;
}

div.large-space {
    height: 3em;
}

div.medium-space {
    height: 2em;
}

div.small-space {
    height: 1em;
}

#logo-top-bar {
    /*max-width: 27px;
    max-height: 40px;*/
    margin-top: -4px;
    height: 32px;
}

#logo-top-bar:hover {
    -webkit-filter: brightness(0.92);
    filter: brightness(0.92);
}

#nifi-landing {
    font-size: 4.5em;
}

.nifi-txt {
    font-family: 'Oswald', sans-serif;
    font-weight: 500;
}

span.nifi-txt {
    font-size: larger;
}

.ni {
    color: #7A96A4;
}

.fi {
    color: #0F3541;
}

.minifi {
    color: #738E9A;
}

.right-text {
    text-align: right;
}

p.description {
    font-size: 1.25em;
    font-weight: 200;
    color: #333;
}

#logo {
  width: 85%;
  margin-bottom: 2em;
}

#flow {
    /*-moz-box-shadow: 0 0 25px #0F3541;
    -webkit-box-shadow: 0 0 25px #0F3541;
    box-shadow: 0px 0px 25px #0F3541;*/
    -moz-box-shadow: 0 3px 25px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 3px 25px rgba(0, 0, 0, 0.2);
    box-shadow: 0 3px 25px rgba(0, 0, 0, 0.2);
}

div.features {
    background-color: #e3e8eb;
}

#features-content ul {
    padding-left: 10px;
}

i.external-link {
    margin-right: 5px;
}

/*
    Tables
*/

table {
    background-color: #fefefe;
    border: 1px solid #ccc;
    border-left: 6px solid #ccc;
    color: #555;
    display: block;
    margin-bottom: 12px;
    padding: 5px 8px;
}

tr td {
    font-size: 14px;
    vertical-align:top;
    text-align:left;
    padding: 4px;
    border-width: 0;
}

tr th {
    font-size: 16px;
    vertical-align:top;
    text-align:left;
    padding: 4px;
    border-width: 0;
    white-space: nowrap;
}

table tr:nth-of-type(even) {
    background-color: transparent !important;
}

/*
    Iframe
*/

div.external-guide {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    top: rem-calc(45);
    z-index: 1;
    background-color: #fff;
}

div.external-guide iframe {
    width: 100%;
    height: 100%;
    border-width: 0;
    display: block;
}

/*
    Footer
*/

div.footer {
    margin-top: 2em;
    text-align: center;
}

div.footer p {
    font-size: .7em;
}

div.clear {
    clear: both;
}
