/**
 * If using a CSS pre-processor, tell it to overwrite this file. If not, place
 * your custom CSS modifications here.
 *
 * Color palette (from business_responsive_theme_cis):
 *   Primary:    #FB5A02 (orange)
 *   Secondary:  #0094AF (teal)
 *   Headings:   #333
 *   Body text:  #444
 */
@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,500,700');

body {
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  line-height: 1.62em;
  color: #444;
  overflow-x: hidden;
}

p {
  margin: 0 0 20px 0;
}

.h1, .h2, .h3, h1, h2, h3 {
  margin-top: 10px;
  margin-bottom: 20px;
}

h1, .h1 { font-size: 2em;   font-weight: normal; color: #333; }
h2, .h2 { font-size: 1.8em; font-weight: normal; color: #333; }
h3, .h3 { font-size: 1.6em; font-weight: normal; color: #333; }
h4, .h4 { font-size: 1.4em; font-weight: normal; color: #333; }

img {
  max-width: 100%;
}

a {
  color: #FB5A02;
}

a:hover {
  color: #0094AF;
}

/* Main layout */
.main-container,
.navbar,
.footer {
  background-color: #fff;
}

.main-container {
  padding-bottom: 25px;
  padding-top: 15px;
  border-color: #e7e7e7;
  border-radius: 4px;
}

main[role="main"] {
  padding: 20px 20px 30px;
}

.footer {
  margin-bottom: 25px;
  border-color: #e7e7e7;
  border-radius: 4px;
}

/* Branding block padding — flush left, matching main content */
#block-bootstrap-cis-branding {
  padding: 10px 20px 10px 0;
}

/* Navbar logo */
.navbar .logo img {
  max-height: 150px;
  width: auto;
}

#block-bootstrap-cis-branding img {
  height: auto;
  max-height: 150px;
  width: auto;
}

/* Push main menu and cart all the way right */
.navbar-collapse {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.navbar-collapse .region-nav-main {
  margin-left: auto;
}

#block-bootstrap-cis-main-menu {
  font-size: 1.25em;
}

/* Cart block — FA6 icon replacing Commerce PNG */
.cart-block--summary__icon img {
  display: none;
}

.cart-block--link__expand::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f07a";
  margin-right: 0.4em;
}

/* Search bar — top right, 25% width */
#block-bootstrap-cis-search {
  float: right;
  width: 25%;
  padding-top: 10px;
}

#block-bootstrap-cis-search .input-group {
  width: 100%;
}

/* Site branding */
.site-branding {
  margin: 0;
}

.brand.logo {
  margin-right: 5px;
}

.brand.logo img {
  padding: 0;
}

.region-header .brand {
  display: inline-block;
  vertical-align: middle;
  line-height: 100%;
  color: #666;
}

.site-name a {
  font-size: 22px;
  color: #272727;
}

.site-name a:hover {
  text-decoration: none;
}

/* Content accents */
#block-bootstrap-cis-content h1 {
  color: #FB5A02;
  font-weight: 700;
}

#block-bootstrap-cis-content h4 {
  color: #0094AF;
}

/* Tables */
table li {
  margin-left: 10px;
}

table td {
  vertical-align: top;
}

table h3 {
  color: #FB5A02;
}

/* Figures / images in content */
.node__content figure {
  border: 1px solid #333;
  border-radius: 3px;
  margin: 15px;
}

.node__content figcaption {
  padding-left: 10px;
}

/* Social media */
.social-media a.instagram {
  background: #C13584;
}

/* Features row */
.features-row {
  background-color: #CCEAEF;
  padding: 30px 15px;
  text-align: center;
}

/* Center all footer blocks */
.footer-widgets .block,
.footer-menu-bar .block,
.footer-bottom .block,
footer[role="contentinfo"] .block {
  text-align: center;
}

/* Footer color bands */
.footer-widgets {
  background-color: #272727;
  color: #8a8a8a;
  padding: 30px 0 10px;
}

.footer-widgets h1,
.footer-widgets h2,
.footer-widgets h3,
.footer-widgets h4 {
  color: #fff;
}

.footer-widgets [class*="col-"] {
  text-align: center;
}

.footer-widgets .row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.footer-widgets a {
  color: #8a8a8a;
}

.footer-widgets a:hover {
  color: #fff;
}

.footer-menu-bar {
  background-color: #3c3b3b;
  color: #fff;
  padding: 10px 0;
  margin: 0;
}

.footer-menu-bar .menu--footer {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  list-style: none;
}

.footer-menu-bar a {
  color: #fff;
}

.footer-menu-bar a:hover {
  color: #FB5A02;
}

.footer-bottom {
  background-color: #000;
  color: #777;
  padding: 20px;
}

.footer-bottom a {
  color: #777;
}

.footer-bottom .region-footer-bottom {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  text-align: center;
}

.footer-bottom .block {
  padding: 20px;
}

.footer-bottom .block p {
  margin-bottom: 0;
}

/* Footer menu */
footer ul.nav,
.footer-menu-bar ul.nav,
ul.menu--footer {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Hide page title block on front page only */
body.path-frontpage #block-bootstrap-cis-page-title {
  display: none;
}

/* Social media block */
#block-bootstrap-cis-social-media {
  padding: 20px;
  text-align: center;
}

#block-bootstrap-cis-social-media h2 {
  font-size: 1.2em;
  margin-bottom: 12px;
}

.social-media {
  text-align: center;
}

.social-media a {
  display: inline-block;
  width: 38px;
  height: 38px;
  line-height: 38px;
  text-align: center;
  border-radius: 50%;
  background-color: #0094AF;
  color: #fff;
  margin: 0 4px;
  font-size: 16px;
}

.social-media a:hover {
  background-color: #FB5A02;
  color: #fff;
  text-decoration: none;
}

.social-media a.instagram {
  background-color: #C13584;
}

/* Search button */
#block-bootstrap-cis-search .input-group-btn .btn {
  background-color: #0094AF;
  border-color: #0094AF;
  color: #fff;
}

#block-bootstrap-cis-search .input-group-btn .btn:hover,
#block-bootstrap-cis-search .input-group-btn .btn:focus {
  background-color: #007a91;
  border-color: #007a91;
  color: #fff;
}

/* Cart block padding */
#block-bootstrap-cis-cart {
  padding-left: 20px;
}

/* Local tasks — match theme link color */
#block-bootstrap-cis-local-tasks .nav-link {
  color: #FB5A02;
}

/* Slick carousel */
.slick-prev {
  left: 0;
}

.slick-next {
  right: 0;
}

.slick__arrow {
  position: absolute;
  z-index: 2;
  top: 50%;
  bottom: auto;
  left: 0;
  width: 100%;
  height: 2px;
  margin-top: -1px;
  transform: translateY(-50%);
  pointer-events: none;
}

.slick-arrow {
  position: absolute;
  top: 50%;
  width: 42px;
  height: 42px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  pointer-events: auto;
  border: 0;
  border-radius: 50%;
  font-size: 0;
}

.slick-arrow:active,
.slick-arrow:focus {
  outline: 0;
  box-shadow: none;
}

.slick-arrow::before,
.slick-arrow::after {
  pointer-events: none;
}

.slick-arrow::before {
  color: #cccccc;
  font-size: 36px;
  font-size: 3.75rem;
}

.slick-arrow:hover::before {
  color: #ffffff;
}
