/*
Theme Name: Freeman & Patel
Author: Colossus Media Group
Description: Freeman & Patel Child Theme
Version: 1.0
Template: bootstrap-component-blox
*/

:root {
	--fp-primary: #0C2647;
	--fp-secondary: #CF9436;
	--fp-dark-grey: #302f2f;
	--fp-gold: #CF9436;
	--fp-grey: #737574;
	--fp-dark: #000;
	--fp-header-font: 'Source Serif Pro', serif;
	--fp-body-font: 'Source Sans Pro', sans-serif;
}

/* ===== Global ===== */

body { 
	overflow-x: hidden;
	font-family: var(--fp-body-font);
	color: var(--fp-dark);
}

a,
a:hover {
	text-decoration: none;
}

h1, h2, h3, h4, h5 {
	font-family: var(--fp-header-font);
}

.fp-underline {
	border-bottom: 5px solid var(--fp-primary);
}

.lh-sm {
	line-height: 1!important;
}

.fp-image-shadow {
	box-shadow: -20px 20px 0 var(--fp-primary);
	position: absolute;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.fp-image-shadow-end {
	box-shadow: 20px 20px 0 var(--fp-primary);
	position: absolute;
	height: 100%;
	width: 100%;
	right: 0;
	top: 0;
}

.swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: var(--fp-primary);
}

.swiper-pagination {
	text-align: left!important;
}

.swiper-pagination-bullet {	
	width: 15px;
	height: 15px;
	background: #fff;
}

/* ===== Custom Classes ===== */

.modal-backdrop.show {
    opacity: 0;
    display: none!important;
}

.fp-border-bottom {
	border-bottom: 7px solid var(--fp-primary);
}

.fp-border-bottom-gold {
	border-bottom: 5px solid var(--fp-gold);
}

.fp-border-bottom-light {
	border-bottom: 7px solid var(--fp-secondary);
}

.fp-border-top {
	border-top: 7px solid var(--fp-primary);
}

.fp-border {
	border: 1px solid var(--fp-primary);
}

.z-front {
	z-index: 5;
}

.z-back {
	z-index: 1;
}

.fw-600 {
	font-weight: 600;
}

.rounded-lg {
	border-radius: 15px;
}

#fp-commmon-breadcrumbs a {
	color: var(--fp-primary);
}

.bg-dots {
	background: url(/wp-content/uploads/2023/04/dot-bg.jpg) center/cover;
}

#fp-page-common h4 {
	font-weight: bold;
	color: var(--fp-primary);
}

#fp-page-common p:last-child {
	margin-bottom: 0
}

#fp-modal-menu .menu-active {
	background: var(--fp-secondary)!important;
	color: #fff!important;
}

.fs-6 {
	font-size: 18px;
}

/* ===== Text Color ===== */

.fp-text-primary {
	color: var(--fp-primary);
}

.fp-text-secondary {
	color: var(--fp-secondary);
}

.fp-text-gold {
	color: var(--fp-gold);
}

.fp-text-grey {
	color: var(--fp-grey);
}

.fp-text-dark {
	color: var(--fp-dark);
}

/* ===== Background Color ===== */

.fp-bg-primary {
	background-color: var(--fp-primary);
}

.fp-bg-secondary {
	background-color: var(--fp-secondary);
}

.fp-bg-gold {
	background-color: var(--fp-gold);
}

.fp-bg-dark-grey {
	background-color: var(--fp-dark-grey);
}

.fp-bg-grey {
	background-color: var(--fp-grey);
}

.fp-bg-dark {
	background-color: var(--fp-dark);
}

/* ===== Button ===== */

.btn {
	font-weight: 600;
	border-radius: 8px;
	padding: 10px 25px;
	text-transform: uppercase;
}

.fp-btn-primary {
	background-color: var(--fp-primary);
	color: #fff;
}

.fp-btn-primary:hover {
	background-color: var(--fp-primary);
	color: #fff;
	opacity: .8
}

.fp-btn-secondary {
	background-color: var(--fp-secondary);
	color: #fff;
}

.fp-btn-secondary:hover {
	background-color: var(--fp-secondary);
	color: #fff;
	opacity: .8
}

.fp-btn-dark {
	background-color: var(--fp-dark);
	color: #fff;
}

.fp-btn-dark:hover {
	background-color: var(--fp-dark);
	color: #fff;
	opacity: .8
}

/* ===== Navbar ===== */

#menu-item-3 > a::after,
#menu-item-5 > a::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
	position: relative;
	bottom: 3px;
    content: "\f107";
    padding-left: 3px;
    font-size: 10px;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    border: none;
	color: var(--fp-gold);
	padding-left: 10px;
}


#menu-item-3 .col:nth-child(odd) a {
	border-left: none!important;
}

#menu-item-5 .col:last-child a {
	border-bottom: none!important;
}

#menu-item-5 .col a {
	border-left: none!important;
	border-right: none!important;
}

.my-modal-menu .col:last-child a {
	border-bottom: none!important;
}

.my-modal-menu .col a {
	border-top: none!important;
	border-right: none!important;
}

.my-modal-menu a {
	color: var(--fp-primary)!important;
}

.my-modal-menu a:hover {
	background: var(--fp-primary)!important;
	color: #fff!important;
}

.fp-bg-light {
	border-left: 4px solid var(--fp-primary)!important;
	background: #fff;
}

.fp-active-link {
	color: var(--fp-primary);
}

#navbar-main-menu .modal {
    position: absolute;
    top: 96px;
    height: auto;
    overflow: visible;
}

#navbar-main-menu .modal-dialog {
    -webkit-transition: -webkit-transform .0s ease-out;
    transition: -webkit-transform .0s ease-out;
    -o-transition: transform .0s ease-out;
    transition: transform .0s ease-out;
    transition: transform .0s ease-out, -webkit-transform .0s ease-out;
    -webkit-transform: translate(0 , 0)!important;
        -ms-transform: translate(0 , 0)!important;
            transform: translate(0 , 0)!important;
}

#navbar-main-menu .modal-content {
    border-top: 4px solid var(--pa-primary)!important;
}

#navbar-main-menu > .navbar-nav > .nav-item > .nav-link:hover {
    color: var(--pa-primary);
}

#fp-logo {
	width: 300px;
}

#navbar-main-menu .nav-link {
	color: var(--fp-dark);
	text-transform: uppercase;
}

#navbar-brand-logo img {
	width: 275px
}

/* ===== Toggler ===== */

#toggler:focus, 
#toggler:active {
    outline: 0;
}

#toggler span {
    width: 30px;
    height: 3px;
    display: block;
    background-color: var(--fp-dark);
    margin: 7px 0;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
}

#toggler span:nth-child(1) {
    -webkit-transform: translatey(10px) rotate(-45deg);
        -ms-transform: translatey(10px) rotate(-45deg);
            transform: translatey(10px) rotate(-45deg);
}

#toggler span:nth-child(2) {
    opacity: 1;
    width: 0;
}

#toggler span:nth-child(3) {
    -webkit-transform: translatey(-10px) rotate(45deg);
        -ms-transform: translatey(-10px) rotate(45deg);
            transform: translatey(-10px) rotate(45deg);  
}

#toggler.collapsed span {
    -webkit-transform: translatey(0) rotate(0deg);
        -ms-transform: translatey(0) rotate(0deg);
            transform: translatey(0) rotate(0deg);
    opacity: 1;
    width: 30px;   
}

/* ===== Header ===== */

#fp-home-header video {
	position: absolute;
  	top: 50%;
  	left: 50%;
  	min-width: 100%;
  	min-height: 100%;
  	width: auto;
  	height: auto;
  	z-index: 0;
  	-ms-transform: translateX(-50%) translateY(-50%);
  	-moz-transform: translateX(-50%) translateY(-50%);
  	-webkit-transform: translateX(-50%) translateY(-50%);
  	transform: translateX(-50%) translateY(-50%);
}

#fp-home-header .overlay,
#fp-attorney-admissions .overlay{
	background: rgba(0,0,0,0.8);
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/* ===== Has Form ===== */

.wpforms-field {
	padding-bottom: 0px!important;
	padding-top: 10px!important;
}

#wpforms-29-field_14-container,
#wpforms-44-field_3-container {
	padding-top: 0px!important;
}

.has-form input,
.has-form textarea,
.has-form select,
.has-form .wpforms-uploader {
	border-radius: 10px!important;
	border: none!important;
	background: #ddd!important;
}

.has-form.form-dark input,
.has-form.form-dark textarea,
.has-form.form-dark select,
.has-form.form-dark .wpforms-uploader {
	background: #fff!important;
}

.has-form input::placeholder,
.has-form textarea::placeholder,
.has-form select::placeholder{
	color: var(--fp-dark)!important;
}

.has-form.form-dark .choice-1 label {
	color: #fff!important;
}

.has-form.form-dark .choice-1 label a {
	color: var(--fp-gold)!important;
}

.has-form .wpforms-container {
	margin-bottom: 0!important;
	margin-top: 0!important;
}

.has-form .wpforms-submit {
	color: #fff!important;
	background: var(--fp-primary)!important;
	padding: 10px 20px!important;
	text-transform: uppercase!important;
	border: none!important;
	font-weight: bold!important;
	border-radius: 8px!important;
}

.has-form.form-dark .wpforms-submit {
	color: #fff!important;
	background: var(--fp-gold)!important;
}

/* ===== About ===== */

#fp-home-about-2 .overlay {
	background: var(--fp-primary);
	position: absolute;
	height: 100%;
	width: 3%;
	top: 0;
	left: 0;
	transition: all .5s;
}
	
#fp-home-about-2 .overlay:before {
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	background: url(/wp-content/uploads/2023/04/corner-white.svg);
	width: 34px;
	height: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.bg-overlay {
	position: absolute;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

#fp-home-about-2 .fp-border:hover .overlay {
	width: calc(100% + 28px);
}

#fp-home-about-2 .fp-border:hover .overlay:before {
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	background: url(/wp-content/uploads/2023/04/corner-white.svg);
	width: 34px;
	height: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

#fp-home-about-2 .fp-border:hover p {
	color: #fff;
}

/* ===== Common Contact ===== */

#fp-common-contact-header {
	position: relative;
}

#fp-common-contact-header:before {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -30px;
	transform: translatex(-50%);
	width: 0;
    height: 0;
    border-left: 50px solid transparent;
   	border-right: 50px solid transparent;
    border-top: 30px solid var(--fp-primary);
}
	
/* ===== Reviews ===== */

#fp-home-reviews {
	border-bottom: 15px solid var(--fp-grey);
}

#fp-home-reviews .overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: rgb(14 39 72 / 85%);
}

.swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: var(--fp-gold);
}

/* ===== Careers ===== */

#fp-careers .fa-plus {
	border: 2px solid #fff;
	display: inline-flex;
	width: 30px;
	height: 30px;
	border-radius: 50px;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	transition: all .3s;
}

#fp-careers .collapsed .fa-plus {
 	transform: rotate(720deg);
}

#fp-careers .accordion-item .accordion-header {
	border-top: 1px solid #fff;
}

#fp-careers .accordion {
	border-bottom: 1px solid #fff;
}

/* ===== Attorneys Archive ===== */

#fp-attorney-archive .card-body {
	transition: all .3s;
}

#fp-attorney-archive .col:hover .card-body  {
	background: var(--fp-primary)!important;
}

#fp-attorney-archive .col:hover .btn {
	background: #fff;
	color: var(--fp-primary)
}

/* ===== Practice Areas Featured ===== */

#fp-practice-featured .card,
#fp-practice-area-archive .card{
	transition: all .3s;
}

#fp-practice-featured .card:hover,
#fp-practice-area-archive .card:hover{
	transform: translatey(-5px);
	box-shadow: 0 0 50px rgba(0,0,0,0.1);
}

/* ===== Attorneys Single ===== */

#fp-single-attorney .fa-angle-up {
	border: 2px solid var(--fp-primary);
	display: inline-flex;
	width: 30px;
	height: 30px;
	border-radius: 50px;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	transition: all .3s;
}

#fp-single-attorney .collapsed .fa-angle-up {
 	transform: rotate(180deg);
}

#fp-single-attorney .accordion-item {
	border-bottom: 1px solid var(--fp-primary)!important;
	border-radius: 0!important;
}

#fp-single-attorney .accordion-item:first-child .accordion-header {
	border-top: 1px solid var(--fp-primary);
}

/* ===== Footer ===== */

#footer-widgets {
	background: var(--fp-primary);
	color: #fff;
}

#footer-widgets a {	
	color: #fff;
}

#footer-widgets a:hover {	
	color: rgba(255,255,255,0.8);
}

#footer-widgets .row {
	max-width: 80%;
	margin-left: auto;
	margin-right: auto;
}

#footer-widgets h4 {
	font-family: var(--fp-body-font);
}

footer {	
	background: var(--fp-grey);
	color: #fff;
}

footer a {
	color: rgba(255,255,255,0.8);
}

footer a:hover {
	color: rgba(255,255,255,0.6);
}

@media (max-width: 992px) {
	#navbar-brand-logo svg {
		width: 200px
	}
}

@media (max-width: 768px) {}

@media (max-width: 576px) {}