/* ------------------------------------- Styles----------------------------------- ----------- */
@import url('https://use.typekit.net/twa2zcx.css');

@font-face {
    font-family: 'Cambria';
    src: url('Cambria.woff2') format('woff2'),
        url('Cambria.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

:root {
  --head-font: 'Cambria', sans-serif;
  --body-font: 'Cambria', sans-serif;
  --primary-color: #1E617C;
  --primary-rgba-color: rgba(30,97,124,0.9);
  --secondary-color: #48A3C7;
  --accent-color: #F2B705;
  --dark-color: #4A4A4A;
  --light-color: #F4F4F4;
  --head-weight: 700;
  --body-weight: 400;
  --second-weight: 600;
}
::selection{
    background: var(--accent-color);
    color: #fff;
    text-shadow: none;
}

/* -- Global Style -- */
html {
    font-size: 62.5%;
}
body {
	background-color: #fff;
	color: var(--primary-color);
	font-family: var(--body-font) !important;
	font-size: 1.6rem !important;
}
.img-responsive {
	max-width: 100%;
	height: auto;
}
.container-fluid:not(.main-container) {
	padding-left: 0px !important;
	padding-right: 0px !important;
}
.row {
	margin-left: 0px !important;
	margin-right: 0px !important;
}
.text-center {
    text-align: initial !important;
}
.not-front .main-container {
	padding: 4%;
}

/* -- Header Style -- */
h1 {
    font-family: var(--head-font);
    font-size: 4rem;
    font-weight: var(--body-weight);
    text-transform: uppercase;
	color: var(--accent-color);
    letter-spacing: -1px;
}
h2 {
    font-family: var(--head-font);
    font-size: 2.2rem;
    font-weight: var(--head-weight);
    text-transform: capitalize;
    letter-spacing: 0px;
}
h3 {
    font-family: var(--body-font);
    font-size: 2rem;
    font-weight: var(--body-weight);
    font-style: italic;
    letter-spacing: 0px;
}
a {
	color: var(--secondary-color);
	font-family: var(--body-font);
	font-weight: var(--head-weight);
	-webkit-transition: all .35s ease-in-out !important;
	-moz-transition: all .35s ease-in-out !important;
	-o-transition: all .35s ease-in-out !important;
	transition: all .35s ease-in-out !important;
}
a:hover {
	color: var(--accent-color);
	text-decoration: none;
}

/* -- Navigation -- */
.navbar-default {
    position: fixed;
    background: transparent;
    width: 100%;
    margin: 0px auto;
    padding: 0px 4%;
    z-index: 1000;
}
.navbar-header {
    display: inline-flex;
    position: absolute;
    top: 20px;
    right: 40px;
    background: var(--primary-rgba-color);
    padding: 8px;
	border-radius: 4px;
}
.front .navbar-header {
    margin-top: 8px;
}
.front .navbar-header:before {
	content: 'MENU';
    margin: 4px 12px 0px 0px;
    color: #fff;
    font-weight: var(--second-weight);
}
nav {
	 z-index: 1;
	 position: fixed;
	 top: -100%;
	 left: 0;
	 width: 100%;
	 height: 100%;
	 transform: translate3d(0, 0, 0);
	 backface-visibility: hidden;
	 overflow: hidden;
}
nav:before {
	 content: '';
	 position: absolute;
	 top: 0;
	 right: 0;
	 bottom: 0;
	 left: 0;
	 margin: auto;
	 background: var(--primary-color);
	 width: 100%;
	 height: 0;
	 padding-bottom: 100%;
	 border-radius: 100%;
	 transform: scale(0.04), translateY(9999px);
	 overflow: hidden;
}
ul.menu {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 15%;
    left: 50%;
    transform: translateX(-50%);
    backface-visibility: hidden;
    color: #fff;
    z-index: 2;
}
ul.menu li {
	 opacity: 0;
	 text-align: center;
	 transform: translate3d(0, 36px, 0);
	 transition: transform 0.2s 0.14s, opacity 0.2s 0.14s;
}
ul.menu li:before {
	 content: '';
	 position: absolute;
	 top: 0;
	 right: 0;
	 bottom: 0;
	 left: 50%;
	 transform: translateX(-50%);
	 margin: 0px auto;
	 height: 100%;
	 width: 0%;
	 overflow: hidden;
     border-radius: 4px;
	 transition: width 0.14s ease-in;
     z-index: -1;
}
ul.menu li:hover:before {
	width: 100%;
}
.navbar-nav .dropdown-menu > li > a {
	color: var(--primary-color);
	 width: 80%;
	 margin: 0px auto;
	 border-radius: 4px;
}
.nav-menu ul.menu li a:hover {
  color: var(--accent-color);
}
ul.menu li:hover:after {
	 opacity: 1;
	 padding: 0 20px;
	 transform: translate(0px, 6px);
	 transition: transform 0.2s 0.14s, opacity 0.2s 0.14s;
}
.open ul.menu li {
     margin: 12px auto;
	 opacity: 1;
	 transform: translate3d(0, 0, 0);
	 transition: transform 0.2s 0.14s, opacity 0.2s 0.14s;
}
.open ul.menu li:nth-child(1) {
  transition-delay: 0.75s;
}
.open ul.menu li:nth-child(2) {
  transition-delay: 0.85s;
}
.open ul.menu li:nth-child(3) {
  transition-delay: 0.95s;
}
.open ul.menu li:nth-child(4) {
  transition-delay: 1.05s;
}
.open ul.menu li:nth-child(5) {
  transition-delay: 1.15s;
}
.open ul.menu li:nth-child(6) {
  transition-delay: 1.25s;
}
 @keyframes menu-animation {
	 0% {
		 opacity: 0;
		 transform: scale(0.04) translateY(300%);
	}
	 40% {
		 transform: scale(0.04) translateY(0);
		 transition: ease-out;
	}
	 40% {
		 transform: scale(0.04) translateY(0);
	}
	 60% {
		 opacity: 1;
		 transform: scale(0.02) translateY(0px);
	}
	 61% {
		 transform: scale(0.04);
	}
	 99.9% {
		 height: 0;
		 padding-bottom: 100%;
		 border-radius: 100%;
	}
	 100% {
		 transform: scale(2);
		 height: 100%;
		 padding-bottom: 0;
		 border-radius: 0;
	}
}
.navbar-nav > li > .dropdown-menu {
    position: relative;
	width: 300px !important;
    border-radius: 4px;
}
.navbar-default .navbar-nav > li > a {
    font-family: var(--main-font);
    font-size: 2.4rem;
    letter-spacing: 1.5px;
    padding: 12px 0px;
    margin: 0px auto;
}
.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
	color: var(--light-color);
    text-decoration: none;
    background-color: var(--accent-color);
}
.caret {
    display: block;
    position: relative;
    width: 0;
    height: 0;
    left: 50%;
    transform: translateX(-50%);
    vertical-align: middle;
    margin-top: 12px;
    margin-left: 0px;
}

/* Navigation Toggle Button */
.navbar-default .navbar-toggle,
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus,
.navbar-default .navbar-toggle .icon-bar {
    background-color: transparent;
    border-color: transparent;
}
.navbar-toggle {
        display: block;
        margin: 0px auto;
        z-index: 9999;
}
.not-front .navbar-toggle {
    margin-top: 8px;
}
button.navbar-toggle {
	 opacity: 0.6;
	 background-color: transparent;
	 z-index: 2;
	 top: 0px;
	 left: 0px;
	 border: none;
	 width: 36px;
	 height: 30px;
	 outline: none;
	 transition: opacity 0.2s ease-out;
}
button.navbar-toggle:before {
	 content: "";
	 position: absolute;
	 top: 0;
	 right: 0;
	 bottom: 0;
	 left: 0;
	 margin: auto;
	 right: auto;
	 width: 100%;
	 background: linear-gradient(to bottom, #fff, #fff 20%, transparent 20%, transparent 40%, #fff 40%, #fff 60%, transparent 60%, transparent 80%, #fff 80%, #fff 100%);
	 transition: opacity 0.2s ease-out, width 0.2s 0.2s ease-out;
}
button.navbar-toggle:after {
	 opacity: 0;
	 content: '×';
	 color: white;
	 position: absolute;
	 top: 16px;
	 left: -4px;
	 font-family: Arial, sans-serif;
	 font-size: 76px;
	 line-height: 0;
	 transition: opacity 0.4s ease-out;
}
button.navbar-toggle:active {
	 transform: translateY(2px);
}
button.navbar-toggle:hover {
	 opacity: 1;
}
.open button.navbar-toggle {
	 opacity: 1;
}
.open button.navbar-toggle:before {
	 opacity: 0;
	 width: 0;
}
.open button.navbar-toggle:after {
	 opacity: 1;
	 transform: translate3d(0, 0, 0) rotate(360deg);
	 transition: transform 0.4s 1s ease-out, opacity 0.4s 1s ease-out;
}
.open nav {
	 top: 0;
}
.open nav:before {
	 animation: menu-animation 0.8s ease-out forwards;
}

/* -- Slideshow -- */
.slide_show {
    position: relative;
	height: 100vh;
	overflow: hidden;
}
.flexslider {
	border: 0px;
}
.flexslider .slides img {
	object-fit: cover;
    width: 100%;
    height: 100vh;
}
.banner-header {
	display: flex;
    position: absolute;
    bottom: 0px;
    background-size: cover;
    height: 400px;
    width: 1360px;
    padding: 40px 80px;
    z-index: 100;
    flex-direction: column;
	justify-content: center;
}
.slide_show .banner-header {
    right: 0px;
    background: url(/sites/blackcaucus.legislature.ca.gov/files/website/clbc_banner_header_right.png) left no-repeat;
    align-items: flex-end;
}
.logo {
	display: block;
    position: relative;
    width: 240px;
    height: auto;
}
.not-front .logo {
    width: 160px;
}
.logo img {
    width: 100%;
}
.banner-header h1,
.banner-header h1 a {
    display: block;
    position: relative;
	color: var(--accent-color);
	font-size: 4rem;
    font-weight: var(--head-weight);
    text-align: right;
}
.banner-header p {
    display: block;
    position: relative;
    width: 600px;
	color: #fff;
	font-size: 1.6rem;
    font-weight: var(--body-weight);
	font-style: italic;
    text-align: right;
}

/* -- Home Page -- */
#block-system-main {
	padding: 40px;
}
.main-container {
	position: relative;
}
/* .front .main-container:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(145deg, var(--accent-color) 0%, transparent 65%);
} */
.view-header h1 {
	color: var(--accent-color);
	margin-left: 40px;
}
.view-footer {
	display: inline-flex;
    position: relative;
	margin: 20px 40px 60px 0px;
	float: right;
}
.view-footer a {
	color: var(--accent-color);
}
.view-footer a:hover {
	color: var(--secondary-color);
}
.node-teaser {
    display: flex;
    width: auto;
	height: 180px;
    padding: 0px 40px;
    flex-direction: column;
    justify-content: center;
	border-radius: 4px;
}
.front .node-teaser {
	background: var(--light-color);
	height: 280px;
	justify-content: space-between;
}
.page-galleries .node-teaser {
	display: block;
	height: 100%;
}
.field-name-field-news {
	width: 120px;
	color: var(--secondary-color);
	font-weight: var(--second-weight);
	text-transform: uppercase;
	border-bottom: 3px solid var(--accent-color);
}
.node-teaser h2 a {
	color: var(--accent-color);
}
.node-teaser h2 a:hover {
	color: var(--secondary-color);
}
span.date-display-single {
	display: block;
	font-size: 1.4rem;
	color: var(--secondary-color);
	font-style: italic;
}

.view-clbc-members .field-content {
	padding: 12px 12px 0px;
}

.view-clbc-members img {
	border-radius: 4px;
}

.teaser-wrapper {
	padding: 0px 0px 20px;
	margin: 0px auto 20px;
	text-align: center;
}

.teaser-wrapper a:first-child {
	font-size: 2.2rem;
}

#block-block-3,
#block-block-7 {
	position: relative;
}

#block-block-3 {
	background: url(/sites/blackcaucus.legislature.ca.gov/files/website/clbc_banner2.jpg) center no-repeat;
    background-size: cover;
	height: 100vh;
}
#block-block-3 .banner-header {
    left: 0px;
    background: url(/sites/blackcaucus.legislature.ca.gov/files/website/clbc_banner_header_left.png) right no-repeat;
    align-items: flex-start;
}
#block-block-7 {
	background: url(/sites/blackcaucus.legislature.ca.gov/files/website/clbc_banner3.jpg) center top no-repeat;
    background-size: cover;
	height: 100vh;
}
#block-block-7 .banner-header {
    right: 0px;
    background: url(/sites/blackcaucus.legislature.ca.gov/files/website/clbc_banner_header_right.png) left no-repeat;
    align-items: flex-end;

}
.top {
	display: inline-flex;
    align-items: center;
}
.top img {
	position:relative;
    bottom:15%;
	margin: 0px 24px 0px 16px;
    -webkit-animation: linear infinite;
    -webkit-animation-name: move;
    -webkit-animation-duration: 1s;
}
@-webkit-keyframes move {
    0% { left: 0;}
    50%{ left : 20%;}
    100%{ left: 0;}
}
#block-block-3 .banner-header p {
	text-align: left;
}

/* -- Footer Style -- */
.footer-border {
	display: initial;
	height: 400px;
}
#block-block-5 {
	margin: 80px auto;
}
#block-block-5 h1 {
	color: var(--accent-color);
	margin: 20px auto 4px;
}
#block-block-5 p {
	color: var(--secondary-color) !important;
}
#block-block-5 a {
	color: var(--accent-color);
}
#block-block-5 a:hover {
	color: var(--secondary-color);
}
.footer {
	background: var(--primary-color) !important;
	text-align: center;
}

/* -- Pagination -- */
.pagination {
    display: inline-flex;
    position: relative;
    top: 40px;
    align-items: center;
    justify-content: center;
  }
  .page-caucus-news .pagination {
	left: 50%;
	transform: translateX(-50%);
  }

  .pagination>li>a, .pagination>li>span {
	color: var(--secondary-color) !important;
	padding: 16px  20px !important;
  }

  .pagination>.active>a, .pagination>.active>a:focus, .pagination>.active>a:hover, .pagination>.active>span, .pagination>.active>span:focus, .pagination>.active>span:hover {
	background-color: var(--accent-color) !important;
	border-color: var(--accent-color) !important;
	color: var(--light-color) !important;
  }

  .page-link:hover {
	background-color: var(--secondary-color) !important;
	color: var(--light-color) !important;
  }

/* -- Sub Pages --*/
h1.page-header {
    display: block;
    position: relative;
	color: var(--accent-color);
	font-size: 4rem;
    font-weight: var(--head-weight);
    text-align: left;
}

h1.page-header:after {
	content: '';
	position: absolute;
	width: 32px;
	height: 100%;
	background: url(/sites/blackcaucus.legislature.ca.gov/files/website/arrow_left.png) no-repeat;
	margin: 12px 0px 0px 12px;
}

.field.field-name-body {
	margin: 40px auto;
}

.video-wrapper {
	margin: 40px auto;
}

.video-wrapper a {
	display: contents;
	height: 48px;
}
