/* Custom CSS to override Bootstrap defaults */
html { scroll-behavior: smooth; height: 100%; } /* Prevents having to use JS to enable smooth scrolling anchors */
body { font-family: 'Lato', sans-serif; }
h1, h2, h3, h4, h5 { font-family: 'Oswald', sans-serif;}
#header { background: #224575; }
#login_bar { padding: 10px 31px 0 31px; margin: 0; background: #224575; }
#login_bar p { margin: 5px 0; }
#form_search { padding-top: 6px; }
a.white-link:active, a.white-link:link, a.white-link:hover, a.white-link:visited { color: #ffffff; margin: 5px; }
/*.dropdown:hover>.dropdown-menu { display: block; } */ /* Makes nav dropdowns show on hover -- disabled, not a very good interface */
.navbar-dark .navbar-nav .nav-link { color: #ffffff; }
.navbar-dark .navbar-nav .nav-link:focus, .navbar-dark .navbar-nav .nav-link:hover { color: #ffffff; }
.form-group.required label:after { content:"*"; color:#ff0000; }
.dropdown-item { font-size: 0.8em; }
.phone-link, .phone-link a:active, .phone-link a:link, .phone-link a:hover, .phone-link a:visited { color: #ffffff; }
.faded { opacity: 0.75; }
button[disabled="disabled"] { cursor: not-allowed; }
.btn-pulse { box-shadow: 0 0 0 0 rgba(255, 255, 255, 1); transform: scale(1); animation: pulse 1s; animation-iteration-count: 1; }
@keyframes pulse {
	0% { transform: scale(0.5); box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7); }
    70% { transform: scale(1); box-shadow: 0 0 0 10px rgba(255, 255, 255, 0); }
    100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); }
}

/* General classes and styles */
.btn-lex-red { background-color: #e73d46; }
.btn-lex-red:hover { background-color: #b41e30; }
.btn-orange { background: linear-gradient(0deg, #ff9900 0%, #e73d46 100%); padding: 15px; }
.badge-new { max-width: 50%; }

.cms_content img { max-width: 100%; height: auto; }
.bg-lex { background-color: #5c85be; }
.icon-big { font-size: 48px; }
.icon-xl { font-size: 120px; }
.monospace { font-family: monospace; }
.nowrap { white-space: nowrap; }
.small-fonts { font-size: 12px; }
.spacer { height: 25px; }
.spacer-lg { height: 100px; }
.textarea-tall { height: 400px; }
.hidden { display: none; }
.page-container { margin-top: 20px; margin-bottom: 20px; }
.footer-icon { font-size: 30px; margin: 0 5px; }

/* Helper and Custom Classes */
.cool-temp { background-color: #66ccff; }
.warm-temp { background-color: #ff9933; }
.hot-temp { background-color: #ff632f; }
.featured_row { background-color: #e0ebff; }
.featured_badge { background-color: #b6192c; color: #ffffff; padding: 0.2rem; margin-bottom: .5rem; }

/* Sub-Nav Sidebar */
#sidebar { -ms-flex: 0 0 230px; flex: 0 0 225px; }
#sidebar.toggled { display: block; }

.subnav-menu { font-size: 0.9em; }

/* Homepage */
.home-cards {margin-bottom: 15px; }
.home-card { margin: 10px 0; }
.home-card .card_body { height: 70px; max-height: 72px; display: table-cell; vertical-align: middle; }
.home-featured { background-color: #5c85be; padding: 25px 0; }
.text-shadow { text-shadow: 1px 1px 1px #212121; }
#carousel_home { margin-top: 10px; }

/* Hero Sections Possibly not used anymore */
/*
.hero-section-left { display: flex; align-items: flex-end; justify-content: flex-end; height: 80vh; width: 100%; background-size: cover; background-position: center center; background-repeat: no-repeat; padding: 20px 20px 100px 20px; }
.hero-section-left-content { text-align: right; color: white; width: 70%; }
.hero-section-right { display: flex; align-items: flex-end; justify-content: flex-start; height: 80vh; width: 100%; background-size: cover; background-position: center center; background-repeat: no-repeat; padding: 20px 20px 20px 20px; }
.hero-section-right-content { text-align: left; color: white; width: 70%; }
.hero-section-left-content h2, .hero-section-right-content h2 { font-size: 4rem; }
.hero-section-left-content p, .hero-section-right-content p { font-size: 1.5rem; }
*/

/* Product Pages */
.filter-menu { font-size: 0.8em; }
.filter-menu .card { margin-bottom: 5px; }
.filter-menu .card-header { padding: .25rem .50rem; }
.filter-menu .card-body { padding: .50rem; }
.product-filter-button { display: none; }
.table-products { font-size: 0.8em; }
.product-grid { margin: 10px 0; }
.product-links { background-color: #5c85be; line-height: 50px; }
.product-links a:active, .product-links a:link, .product-links a:hover, .product-links a:visited { color: #ffffff; }
.product-top-button { margin-top: 6px; }
.product-thumb { margin:0 3px; }
.product-card { background-color: #cedbf2; }

/* General pages and grid boxes */
.gridbox-hover-link a { overflow: hidden; transition: opacity 0.3s ease; }
.gridbox-hover-link img { transition: filter 0.3s ease; }

.gridbox-hover-link a::after {
    content: "Click for details";
    position: absolute;
    top: 30%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: #ffffff;
    font-size: 16px;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.gridbox-hover-link a:hover::after { opacity: 1; }
.gridbox-hover-link a:hover img { filter: brightness(40%); }

/* Contact */
.twitter-container { max-height: 600px; overflow: scroll; }
.icon-contact { font-size: 3.2em; color: #224575; }
#turing_field_container { display: none; }


/* Footer */
footer { background: #363839; color: #ffffff; padding-top: 25px; }
footer a:active, footer a:link, footer a:hover, footer a:visited { color: #ffffff; }
footer p { line-height: normal; margin-bottom: 0.5rem; }
footer .credits { background: #282a2b; color: #ffffff; height: 75px; padding-top: 20px; font-size: 11px; }

/* Media Queries */

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    /*#searchBox { width: 290px; }*/
    .form-inline .custom-select, .form-inline .input-group { width: 100%; } /* Search box */
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    #searchBox { width: 350px; }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    #searchBox { width: 500px; }
}

@media (max-width: 576px) { }
@media (max-width: 768px) {
    #sidebar { display: none; }
    #sidebar.toggled { flex: initial; display: block; width: 100%; }
    .product-image { max-width: 125px; height: auto; }
    /* Hero Sections */
    .hero-section-left-content h2, .hero-section-right-content h2 { font-size: 3rem; }
    .hero-section-left-content p, .hero-section-right-content p { font-size: 1.2rem; }
}
@media (max-width: 992px) {
    .sticky-top { position: relative; }
}

@media (max-width: 1260px) {
    .btn-orange { font-size: 0.7rem; padding: 3px; }
}

/*==========  Print-Specific  ==========*/
.print-only { display: none; }
@media print {
    .print-only, .print-only * { display: block; margin-bottom: 10px; } /* Displays only when printed */
	.no-print, .no-print * { display: none !important; }
    .pagebreak { page-break-before: always; }
    @page {
        size: auto;   /* auto is the initial value */
        margin: 2cm;  /* this affects the margin in the printer settings */
    }
}
