/* 
	Theme Name: Mansueto Ventures Custom 
	Version: 1.0
*/ 

@charset "utf-8";

/* Imports
------------------------------------------------------ */
@import url('css/bootstrap.css');
@import url('css/aos.css');
@import url('css/flexslider.css');
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,300;0,500;0,700;1,300;1,500;1,700&&display=swap');

@font-face {
  font-family: 'flexslider-icon';
  src: url('fonts/flexslider-icon.eot');
  src: url('fonts/flexslider-icon.eot?#iefix') format('embedded-opentype'), url('fonts/flexslider-icon.woff') format('woff'), url('fonts/flexslider-icon.ttf') format('truetype'), url('fonts/flexslider-icon.svg#flexslider-icon') format('svg');
  font-weight: normal;
  font-style: normal;
}

/* Body
------------------------------------------------------ */
body {
	background: #FFF none;
	color: #000;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 28px;
	font-weight: 300;
}

body.mobile #rev_slider_11_1_forcefullwidth {margin-bottom: 20px;}

@media (min-width: 1200px) {
	.container {max-width: 1350px;}
}

.container-slide {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
}

.container-maxwidth {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
}

.container-minwidth {
	width: 100%;
	max-width: 950px;
	margin: 0 auto;
}

.container-mini {
	width: 100%;
	max-width: 500px;
	margin: 0 auto;
	line-height: 110%;
}

@media screen and (max-width: 768px) {
	.container-minwidth {max-width: 100%; padding: 0 15px;}
}

@media screen and (max-width: 600px) {

}

@media screen and (max-width: 500px) {

}

@media screen 
  and (device-width: 640px) 
  and (device-height: 360px) 
  and (orientation: landscape) {

}

@media screen 
  and (device-width: 360px) 
  and (device-height: 640px) 
  and (orientation: portrait) {

}

/* BGs & Colors
------------------------------------------------------*/
.bg-white {background: #FFF; color: #000;}
.bg-black {background: #000; color: #FFF;}
.bg-grey {background: #F4F4F5; color: #000;}
.bg-red {background-image: url('images/bg-red.jpg'); background-size: cover; background-position: top center; background-repeat: no-repeat; color: #FFF;}

hr.red {border-color: #BF0F1B;}

#contact a {color: #BF0F1B;}

.border-top-dark {border-top: 1px solid #666;}

#phone-carousel .carousel-indicators {
	bottom: 190px;
}

#phone-careers .carousel-indicators {
	bottom: 150px;
}

#tablet-carousel .carousel-indicators {
	bottom: 100px;
}

#office-carousel .carousel-indicators {
	bottom: -50px;
}

#office-carousel .carousel-indicators li {
  width: 10px!important;
  height: 10px!important;
  background-color: #AAA;
}

/* Input
------------------------------------------------------*/
.btn-redround, .btn-redround:hover {
	background: #bf0f1b;
	border-radius: 45px;
	text-align: center;
	font: normal normal bold 20px/24px Roboto;
	letter-spacing: 0px;
	color: #FFF;
	text-transform: uppercase;
	opacity: 1;	
	padding: 18px 50px;
	margin: 0 auto;
	line-height: 100%;
	outline: none;
}

.btn-redround:hover, .btn-redround:focus, .btn-redround:active {
    outline: none !important;
	cursor: pointer;
	box-shadow: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;	
	-webkit-tap-highlight-color: transparent;	
}

@media screen and (max-width: 600px) {
	.btn-redround, .btn-redround:hover {
    background-color: rgb(191, 15, 27);
    font-family: Roboto;
    color: rgb(255, 255, 255);
    text-decoration: none;
    white-space: nowrap;
    width: 219px;
    height: 47px;
    min-height: 0px;
    min-width: 0px;
    max-height: none;
    max-width: none;
    text-align: center;
    line-height: 18px;
    letter-spacing: 0px;
    font-weight: 700;
    font-size: 15px;
    padding: 15px 50px;
    border-radius: 45px;
    backdrop-filter: none;
    filter: brightness(100%);
    transform-origin: 50% 50%;
    opacity: 1;
    transform: translate(0px, 0px);
    visibility: visible;		
}
	
}


/* Alignment
------------------------------------------------------*/
.coladjust1 {margin: 0 auto 30px 0;}
.coladjust2 {margin: 0 auto 30px auto;}
.coladjust3 {margin: 0 0 30px auto;}

.deskcoladjust1 {margin: 0 auto 60px 0;}
.deskcoladjust2 {margin: 0 auto 60px auto;}
.deskcoladjust3 {margin: 0 0 60px auto;}

/* Nav
------------------------------------------------------*/

.page-template-default .navbar-light, .page-template-page-leadership .navbar-light {border-bottom: 1px solid #000;}

.navbar-nav {font-family: "Barlow", sans-serif; font-weight: 500; color: #000; text-transform: uppercase;}
.navbar-light .navbar-nav .nav-link, .navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {color: #000;}

.navbar-light .navbar-toggler {
	padding: 0.25rem 0rem!important;
    color: #FFF;
    border-color: #FFF;
	outline: none;
	border: 0;
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

nav.navbar.fixed-top {
  border-bottom: 1px solid #000;
}


/* Headings
------------------------------------------------------*/
h1 {font-family: "Barlow", sans-serif; font-size: 50px; font-weight: 300; margin: 0; padding: 0;}
h2 {font-family: "Barlow", sans-serif; font-size: 47px; line-height: 100%; font-weight: 300; margin: 0 0 15px 0; padding: 0;}

h2.privacy {font-size: 16px; font-weight: 700; margin: 30px 0 10px 0; padding: 0;}

h3 {font-family: "Barlow", sans-serif; font-size: 32px; font-weight: 300; margin: 0; padding: 0;}

strong, b, .b, .strong {font-weight: 700;}
small, .small {font-size: 12px; font-family: "Roboto", sans-serif;}

#contact h4 {font-family: "Roboto", sans-serif; font-size: 18px; line-height: 30px; font-weight: 700; margin: 0; padding: 0;}

.stats h3 {font-family: "Barlow", sans-serif; font-size: 22px; font-weight: 300; margin: 0; padding: 0; text-align: center; line-height: 100%;}
.stats h2 {font-family: "Barlow", sans-serif; font-size: 70px; font-weight: 700; margin: 0 0 8px 0; padding: 0; text-align: center; line-height: 100%;}
.stats h4 {font-family: "Barlow", sans-serif; font-size: 16px; font-weight: 700; margin: 0; padding: 0; text-align: center; line-height: 100%;}


@media screen and (max-width: 768px) {
	h2 {font-size: 38px;}
	h3 {font-size: 24px; padding-bottom: 15px;}
	
	.stats h3 {font-size: 15px; text-align: left; padding: 0;}
	.stats h2 {font-size: 40px; text-align: left; padding: 0;}
	.stats h4 {font-size: 12px; text-align: left; padding: 0;}
}

@media screen and (max-width: 600px) {
	h2 {font-size: 36px;}
	h3 {font-size: 24px;}
	
	.stats h3 {font-size: 22px; text-align: left;}
	.stats h2 {font-size: 70px; text-align: left; line-height: 90%;}
	.stats h4 {font-size: 16px; text-align: left; padding-bottom: 10px;}
}


/* Footer
------------------------------------------------------*/
#footer-copyright {padding: 37px 0 25px 0; font-size: 15px; line-height: 18px; font-family: "Roboto", sans-serif; color: #FFF;}

@media screen and (max-width: 600px) {
	#footer-copyright {padding: 30px 15px 10px 15px; font-size: 14px;}	
}

#menu-footer a {color: #FFF!important;}
#menu-footer {list-style: none; padding: 0; margin: 0 0 15px 0; text-align: center;}

/* Modal
------------------------------------------------------*/
.modal-content {border: 0!important;}
#benefits strong {font-family: "Barlow", sans-serif; font-weight: 700; font-size: 18px; line-height: 23px;}
.modal-red {background: #BF0F1B; color: #FFF; padding: 8px 10px; border-radius: 0;}
.modal-body-content {padding: 35px; font-size: 16px; line-height: 27px; font-weight: 300;}
.modal-red img.mx-auto {filter: brightness(0) invert(1);}

@media screen and (max-width: 600px) {
	.modal-body-content {padding: 10px 20px;}
}

/* Contact
------------------------------------------------------*/
#contact p {font-size: 18px;}
.emails {padding-bottom: 2.625rem;}
.emails p {padding-bottom: 1rem;}

@media screen and (max-width: 600px) {
	.emails, .emails p {padding-bottom: 0.625rem;}
}

/* Bios & Leadership
------------------------------------------------------*/
.the-bio-block {margin-bottom: 30px;}
/*.the-bio-block .the-bio-image img {border: 1px solid #b5b5b5;}*/

.the-bio-block .the-bio-contents h3 {line-height: 1.5;}
.the-bio-block .the-bio-contents h4 {font-size: 16px; font-weight: bold; line-height: 1.5;}
.the-bio-block .the-bio-contents .team-divide-line {display: block; width: 40px; height: 2px; background: #BF0F1B; margin-bottom: 10px;}

@media screen and (max-width: 768px) {
	.the-bio-block .the-bio-contents h3 {padding-bottom: 0; padding-top: 5px;}
}

@media screen and (max-width: 600px) {
	.the-bio-block {margin-bottom: 40px;}
}

/* Press
------------------------------------------------------*/
:root {
  --press-layout-gap: 28px;
  --press-item-gap: 28px;
  --press-sidebar-gap: 16px;
}

.press-page a:hover,
.press-page a:focus,
.single-press-page a:hover,
.single-press-page a:focus {
  color: inherit;
}

/*–––– Page –––––*/
.press-page__container {
  padding-bottom: 72px;
}

.press-page__title {
  font-size: 47px;
  margin-bottom: var(--press-layout-gap);
}

/*–––– List wrapper –––––*/
.press-list {
  display: flex;
  flex-direction: column;
}

/*–––– Each press item –––––*/
.press-item {
  display: flex;
  align-items: flex-start; 
  border-bottom: 1px solid #D81B23;  /* red separator */
  padding: var(--press-item-gap) 0;
}

/* Thumbnail */
.press-item__thumb {
  /* size as you like; this keeps proportions */
  aspect-ratio: 16 / 9;
  width: 100%;
  max-width: 300px;
  margin-right: var(--press-item-gap);
  background: transparent;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.press-item__thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* Content */
.press-item__content {
  flex: 1;
}

/* Eyebrow / source meta */
.press-item__meta {
  font-size: .75rem;
  font-weight: normal;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: .35rem;
}

/* Title with red underline accent */
.press-item__title {
  font-size: 1.25rem;
  font-weight: 700;
  margin: 0 0 .4rem;
  position: relative;
}
.press-item__title::after {
  content: "";
  display: block;
  width: 50px;
  height: 3px;
  background: #D81B23;
  margin-top: 4px;
}
.press-item__title a {
  color: #000;
  text-decoration: none;
}
.press-item__title a:hover,
.press-item__title a:focus {
  color: #000;
}

/* Excerpt */
.press-item__excerpt {
  font-size: .95rem;
  line-height: 1.6;
  margin-bottom: .55rem;
  color: #333;
}

/* Read More link */
.press-item__readmore {
  font-size: .9rem;
  font-weight: 600;
  color: #D81B23;
  text-decoration: none;
}
.press-item__readmore:hover,
.press-item__readmore:focus {
  color: #D81B23;
}

/*–––– Pagination “Read More” button –––––*/
.press-pagination {
  text-align: center;
  margin: 2.5rem 0 0;
}
#press-load-more {
  display: inline-block;
  padding: .75rem 2.5rem;
  background: #D81B23;
  color: #fff;
  text-transform: uppercase;
  font-weight: 600;
  border-radius: 50px;
  text-decoration: none;
}

/*–––– Contact sidebar –––––*/
.press-contact {
  padding-left: var(--press-sidebar-gap);
  border-left: none;
}
.press-contact__heading {
  font-size: 1.25rem;
  margin-bottom: 1rem;
}
.press-contact__item {
  margin-bottom: 1.5rem;
  position: relative;
  padding-bottom: .85rem;
}
.press-contact__item:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}
.press-contact__item::after {
  content: "";
  display: block;
  height: 1px;
  background: #D81B23;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}

/* Contact fields */
.press-contact__name {
  font-weight: 700;
  margin-bottom: .15rem;
}
.press-contact__title {
  font-size: .9rem;
  color: #666;
  margin-bottom: .35rem;
}
.press-contact__tel,
.press-contact__email,
.press-contact__social {
  display: block;
  font-size: .9rem;
  color: #D81B23;
  text-decoration: none;
  margin-bottom: .15rem;
}
.press-contact__tel:hover,
.press-contact__tel:focus,
.press-contact__email:hover,
.press-contact__email:focus,
.press-contact__social:hover,
.press-contact__social:focus {
  color: #D81B23;
}

/* ── Tablet (≥768px and <992px) tweaks ── */
@media (min-width: 768px) and (max-width: 991px) {
  .press-page__container,
  .single-press-page .container-minwidth {
    padding-bottom: 64px;
  }
  .press-page__row,
  .single-press-page .row {
    display: flex;
    flex-direction: column;
  }
  .press-contact {
    order: -1;
    width: 100%;
    max-width: 320px;
    padding-left: 0;
    margin: 0 0 var(--press-layout-gap);
    border-left: none;
  }
  .press-item {
    flex-direction: row;
  }
  .press-item__thumb {
    flex: 0 0 200px;
    height: 150px;
  }
}

/* ── Mobile (<768px) tweaks ── */
@media (max-width: 767px) {
  .press-page__container,
  .single-press-page .container-minwidth {
    padding-bottom: 56px;
  }
  /* Stack each item */
  .press-item {
    flex-direction: column;
    padding: 1.25rem 0;
  }
  .press-item__thumb {
    width: 100%;
    height: 180px;
    margin: 0 0 .85rem;
  }
  .press-contact {
    order: -1;
    margin: 0 0 var(--press-layout-gap);
    border-left: none;
    border-top: none;
    padding-left: 0;
    padding-top: 0;
  }
}

/*–––––––– Single–Press Header ––––––––*/
.press-single__header {
  margin-bottom: var(--press-layout-gap);
}
.press-single__meta {
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #666;
  margin-bottom: .75rem;
}
.press-single__title {
  font-size: 2.25rem;
  line-height: 1.3;
  font-weight: 300;
  margin-bottom: 28px;
}
.press-single__share {
  display: inline-block;
  padding: .5rem 2rem;
  border: 2px solid #D81B23;
  border-radius: 50px;
  text-transform: uppercase;
  font-size: .875rem;
  font-weight: 600;
  color: #D81B23;
  text-decoration: none;
  margin-bottom: 28px;
}
.press-single__share:hover {
  background: #D81B23;
  color: #fff;
}

.press-single__thumb {
  aspect-ratio: 16 / 9;
  width: 100%;
  height: 400px;
  background-color: transparent;
  margin-bottom: var(--press-layout-gap);
  overflow: hidden;
}
.press-single__thumb-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.press-single__date {
  font-size: .85rem;
  font-weight: 600;
  text-transform: none;
  margin-bottom: .75rem;
  color: #333;
}

.press-single__byline {
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #666;
  margin-bottom: var(--press-layout-gap);
}

.press-item__byline {
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #666;
  margin-bottom: .35rem;
}
.single-press__main .press-single__body p {
  line-height: 1.75;
  margin-bottom: 28px;
}

.single-press__main .press-single__body a {
  color: #D81B23;
}

.single-press__main .press-single__body a:hover,
.single-press__main .press-single__body a:focus {
  color: #D81B23;
}

.single-press__main hr {
  border: none;
  border-bottom: 1px solid #D81B23;
  margin: 28px 0;
}

/*–––––––– Blockquote styling ––––––––*/
.single-press__main blockquote {
  position: relative;
  margin: 28px 0;
  font-size: 1.125rem;
  font-style: normal;
  line-height: 1.4;
  font-weight: 300;
}
.single-press__main blockquote p {
  margin: 0;
}
.single-press__main blockquote:before,
.single-press__main blockquote:after {
  content: "";
  display: block;
  height: 1px;
  background: #D81B23;
  width: 100%;
}
.single-press__main blockquote:before {
  margin-bottom: 28px;
}
.single-press__main blockquote:after {
  margin-top: 28px;
}

/* Mobile: stacks thumb & body, sidebar below */
@media (max-width: 767px) {
  .single-press__main {
    margin-bottom: 0;
  }
  .press-single__title {
    font-size: 2rem;
  }
  .press-single__share {
    margin-bottom: 1.5rem;
  }
}

/* Press page padding adjustments for admin bar */
:root{
  --nav-height: 75px;        /* fixed nav height */
  --gap-desktop: 80px;       /* desired visible gap below nav */
  --gap-mobile: 60px;
  --admin-bar-desktop: 32px; /* WP admin bar height desktop */
  --admin-bar-mobile: 46px;  /* WP admin bar height mobile */
}

/* logged out */
.press-page,
.single-press-page{
  padding-top: calc(var(--nav-height) + var(--gap-desktop));
}

@media (max-width: 767.98px){
  .press-page,
  .single-press-page{
    padding-top: calc(var(--nav-height) + var(--gap-mobile));
  }
}

/* logged in — subtract admin bar height */
html body.admin-bar .press-page,
html body.admin-bar .single-press-page{
  padding-top: calc(var(--nav-height) + var(--gap-desktop) - var(--admin-bar-desktop));
}

@media (max-width: 767.98px){
  html body.admin-bar .press-page,
  html body.admin-bar .single-press-page{
    padding-top: calc(var(--nav-height) + var(--gap-mobile) - var(--admin-bar-mobile));
  }
}

/* Advertise page - Salesforce form display */
/* Base form styling */
.advertise-template-container {
  margin: calc(82px + 80px) 27.5px;
}

.advertise-template-container .advertise-template__title {
  margin-bottom: 28px;
}

.advertise-template-container form {
  max-width: 1080px;
  margin: 0 auto;
  background: #fff;
}

.advertise-template-container label {
  font-weight: 600;
  display: block;
  margin-bottom: 0.25rem;
  color: #000;
}

/* Input & select base styles */
.advertise-template-container input[type="text"],
.advertise-template-container input[type="email"],
.advertise-template-container input[type="tel"],
.advertise-template-container select {
  width: 100%;
  height: 45px;
  padding: 0.75rem;
  border: 1px solid #b5b5b5;
  font-size: 1rem;
  box-sizing: border-box;
}

/* Checkbox & submit */
.advertise-template-container input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  height: 16px;
  width: 16px;
  margin-left: 0.5rem;
  border: 1px solid #b5b5b5;
  margin-bottom: -2px;
  position: relative;
}

.advertise-template-container input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 5px;
  height: 10px;
  border: solid #000;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.advertise-template-container input[type="submit"] {
  display: inline-block;
  background: #a32020; /* your red tone */
  color: white;
  border: none;
  padding: 0.9375rem 5.3125rem;
  border-radius: 9999px;
  text-transform: uppercase;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.2s ease;
  margin-top: 1.5rem;
}

.advertise-template-container input[type="submit"]:hover {
  background: #8d1b1b;
}

.advertise-template-container input[type="submit"]:disabled,
.advertise-template-container input[type="submit"].submitting {
  background: #999;
  cursor: not-allowed;
  opacity: 0.7;
}

.advertise-template-container input[type="submit"]:disabled:hover,
.advertise-template-container input[type="submit"].submitting:hover {
  background: #999;
}

/* Two-column layout on desktop */
@media (min-width: 768px) {
  .advertise-template-container {
    margin: calc(82px + 80px) 40px;
  }

  .advertise-template-container .advertise-template__title {
    margin-bottom: 40px;
  }

  .advertise-template-container label {
    display: inline-block;
    width: 20%;
    text-align: left;
    padding-right: 1.5rem;
    margin-bottom: 0;
    vertical-align: middle;
  }

  .advertise-template-container input[type="text"],
  .advertise-template-container input[type="email"],
  .advertise-template-container input[type="tel"],
  .advertise-template-container select {
    display: inline-block;
    width: 80%;
    vertical-align: middle;
  }

  .advertise-template-container input[type="submit"] {
    width: auto;
  }
}

/* Mobile/tablet view (stacked layout) */
@media (max-width: 767px) {
  .advertise-template-container label {
    display: block;
    width: 100%;
    text-align: left;
    margin-bottom: 0.4rem;
  }

  .advertise-template-container input[type="text"],
  .advertise-template-container input[type="email"],
  .advertise-template-container input[type="tel"],
  .advertise-template-container select {
    width: 100%;
  }
}
