/* IPLG styles */

/**
 * Normalize
 */

html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

body {
    margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
}

audio:not([controls]) {
    display: none;
    height: 0;
}
ul { list-style-type: none; }
a:hover { text-decoration: none; }
.jumbotron { background-color: transparent; }

[hidden],
template {
    display: none;
}

/* GLOBAL STYLES
-------------------------------------------------- */
/* Padding below the footer and lighter body text */
html { min-height: 100vh;}

body {
  color: #5a5a5a;
  background-color: #f4f9fc;
  min-height: 100%;
}
main { min-height: 47rem; }
header.homepage {
    position: absolute;
    top: 0;
    width: 100%;
}
h1, h2, h3, h4 {
  font-family: 'Karla', sans-serif;
  font-weight: normal;
  font-style: normal;
}
h5 { font-family: 'Montserrat', sans-serif; }

a { color:#0056b3; }

button.btn.btn-lg.btn-primary, .btn.btn-primary {
    background-color: #0b336e;
    text-transform: uppercase;
    letter-spacing: 2px;
    float:none;
}
select.form-control[size], select.form-control[multiple] {
    height: 2.3rem;
}
textarea {
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 5px;
}
/* MENU */
/*-------------------------------------------------- */
.iplg-logo .img-fluid {
    margin: 1.6rem 1rem;
    height: 100%;
    width: auto;
}
.iplg-nav {
  position: relative;
  top: 0;
  width: 100%;
  background: none;
  border: none;
  background-color: rgba(0,0,0,0.00);
}
.iplg-nav .navbar-brand { color: #fff; height: 120px; }
.iplg-nav .navbar-brand:hover, .iplg-nav .navbar-brand:focus {
  color: #f2f2f2;
}
.iplg-nav .nav-link { color: #f2f2f2; }
.iplg-nav .nav-link:hover, .iplg-nav .navbar-brand:focus { color: #f4f4f4; }
.call-iplg {
    position: absolute;
    top: 0px;
    width: 200px;
    height: 40px;
    background-color: #c8d7e3;
    padding: 8px 40px;
    right: 20px;
}
.call-iplg:hover { background-color: #ccc; }
.call-iplg small { font-weight: 600; }
a .call-iplg small { color: #5a5a5a; }
img.img-fluid.iplg-phone {
    width: 19px;
    margin: -5px 5px 0 -5px;
}
div.connect-social {
    position: absolute;
    top: 0px;
    width: 140px;
    height: 40px;
    background-color: transparent;
    padding: 2px 20px;
    right: 240px;
}
.connect-social ul {
   flex-direction: row;
   display: flex;
   padding-left: 0;
   margin-bottom: 0;
   list-style: none;
}
.connect-social ul li.nav-item {
    margin-right: 1px;
}
ul.navbar-nav li.nav-item a.nav-link.text-light, ul.navbar-nav li.nav-item .dropdown button.btn, ul.navbar-nav li.nav-item .dropdown div.dropdown-menu a.dropdown-item {
    float: right;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    letter-spacing: 1px;
    font-size: 15px;
    text-transform: uppercase;
    vertical-align: middle;
    backface-visibility: hidden;
}
button.navbar-toggler {
  float: right;
  margin-right: 0px;
}
button#dropdownMenuButton {
    background: transparent;
}
.navbar-light .navbar-toggler-icon {
    background-image: url(/images/icons/iplg-hambuger.svg);
}
.navbar-light .navbar-toggler {
    border: 2px solid rgba(249, 241, 241, 0.2);
    padding: .4rem .6rem;
}
.dropdown-menu.show {
    background-color: transparent;
    border-radius: 0px;
}
li.nav-item {
    margin-right: 15px;
}
a.nav-link.text-light, button#dropdownMenuButton {
    border: 2px solid transparent;
    padding: .5rem;
}
a.nav-link.text-light:hover, button#dropdownMenuButton:hover {
    border: 2px solid #acb1b8;
    border-radius: 0px;
}
.navbar-collapse.collapse.show ul.navbar-nav {
    background-color: rgba(0,0,0,.5);
    margin-top: -20px;
    margin-right: -20px;
    padding: 20px 0px;
}
button[aria-expanded="true"]{
  background-color: rgba(0,0,0,.5);
}
a.dropdown-item {
    color: #fff;
    padding: .5rem;
    text-align: right;
}

/* CAROUSEL
-------------------------------------------------- */

/* Carousel base class */
.carousel {
    position: relative;
    width: 100%;
    height: 100%;
    display: table;
    background-size: cover;
}
/* Since positioning the image, we need to help out the caption */
.carousel-caption {
    bottom: 3rem;
    background: rgba(0,0,0,.2);
    border-left: 4px solid #c7d7e2;
    padding-left: 2rem;
    padding-right: 2rem;
}
.carousel-caption p {
    color: #f8f8f8;
    font-weight: 300;
}

/* Declare heights because of positioning of img element */
.carousel-item {
  height: 40rem;
  background-color: #777;
}

.carousel-item > img {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  height: 40rem;
}
.carousel-control-prev, .carousel-control-next {
  top: 70px;
}
.iplg-feature-box {
    width: 260px;
    height: 130px;
    background-color: rgba(35,31,31,.88);
    padding: 35px 80px;
    text-align: center;
    font-size: 1.3rem;
    font-family: serif;
    text-transform: uppercase;
    color: #b69854;
}

/* Main section (below fold) */

.card {
    min-height: 350px;
    max-width: 350px;
    display: block;
    border: 0px solid rgba(0,0,0,0.0);
    background-color: transparent;
}
.card-header { background-color: #e8e8e8; border-bottom: 0px; }
.card-body button.btn.btn-lg.btn-block.btn-primary {
    border-radius: 0;
    background-color: #0b336e;
    position: absolute;
    bottom: 20px;
    width: 18rem;
}

/* flip animation */

/* entire container, keeps perspective */
.flip-container {
	perspective: 1000px;
  -webkit-perspective: 1000;
  -moz-perspective: 1000;
  -o-perspective:1000;
  -ms-perspective: 1000;
}
/* flip the pane when clicked for mobile */
.change {
  transform: rotateY(180deg);
  backface-visibility: hidden;
}
.flip-container, .front, .back {
	width: 350px;
	height: 350px;
}
/* flip speed goes here */
.flipper {
	transition: 0.6s;
	transform-style: preserve-3d;

	position: relative;
}
.ftest {
  transform: rotateY(180deg);
  -webkit-transform: rotateY(180deg);
  -moz-transform: rotateY(180deg);
  -o-transform: rotateY(180deg);
}
.flip-container:hover .flipper, .flip-container.hover .flipper, .flip-container.flip .flipper {
	transform: rotateY(180deg);
  -webkit-transform: rotateY(180deg);
  -moz-transform: rotateY(180deg);
  -o-transform: rotateY(180deg);
}
/* hide back of pane during swap */
.front, .back {
	backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
	position: absolute;
	top: 0;
	left: 0;
  border: 5px solid #ccc;
  border-radius: 0;
}
/* front pane, placed above back */
.front {
	z-index: 2;
	/* for firefox 31 */

  -webkit-transform: rotateY(0deg);
  -moz-transform: rotateY(0deg);
  -o-transform: rotateY(0deg);
  -ms-transform: rotateY(0deg);
  transform: rotateY(0deg);
}
.front-fg {
    height: 100%;
    width: 100%;
    background: rgba(0,0,0,.4);
    padding: 8rem 2rem;
}
h2.text-center.iplg-f {
    color: #fff;
}
#front1 {
  background: url(/images/boxes/lightbulb.jpg);
}
#front2 {
  background: url(/images/boxes/cityscape.jpg);
}
#front3 {
  background: url(/images/boxes/gavel.jpg);
}
#front4 {
  background: url(/images/boxes/shippingyard.jpg);
}
#front5 {
  background: url(/images/boxes/worldmap.jpg);
}
/* back, initially hidden pane */
.back {
	transform: rotateY(180deg);
  background-color: #f4f9fc;
}

/* Feedgrabbr widget */
.card.news {
    max-height: 350px !important;
    overflow: hidden;
}
.feedgrabbr_widget {
    justify-content: left;
    width: 100%;
}
#fg-widget-c6a0e90c2365c0f087865568a:not(.uw-transparent) {
    width: 100%;
    height: 320px;
}
.uw-w-header {
    display: none !important;
}
span.uw-text {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    color: #000000;
}
.card.news.mb-4.box-shadow.text-center {
    border: 5px solid #cccccc;
    border-radius: 0px;
}
#fg-widget-c6a0e90c2365c0f087865568a .uw-w-header span {
    color: #202020;
    font-family: 'Karla', sans-serif;
    font-size: 1.3rem !important;
}
#fg-widget-c6a0e90c2365c0f087865568a .uw-text, #fg-widget-c6a0e90c2365c0f087865568a .uw-social {
    color: #073170 !important;
    font-weight: 500;
    letter-spacing: .5px;
}
#fg-widget-c6a0e90c2365c0f087865568a .uw-source-divider { border-bottom: 1px solid #ccc; }
.uw-sc-cardcont {
    margin-left: 2rem;
}
.uw-scroller .uw-card2 {
    margin-bottom: .3rem;
}
a.uw-card2-row {
    margin-bottom: .5rem;
}
.uw-card2::before {
    content: "";
    position: absolute;
    border-style: solid;
    border-width: 0 0.3em 0.25em 0;
    height: 1em;
    top: 1.3em;
    left: -1.6em;
    margin-top: -1em;
    transform: rotate(45deg);
    width: 0.5em;
}
.uw-scroller-text {
    line-height: 1.2rem;
}

/* footer */
footer .col-md-2.mx-auto.iplg-rr:hover {
    background-color: #c7d7e2;
}
footer .iplg-rr a {
    color: #0b336e;
    line-height: 1.5;
    font-family: 'Montserrat', sans-serif;
    display: flex;
    justify-content: center;
    flex-direction: column;
    height: 6rem;
    font-size: 1.1rem;
}
footer .iplg-rr a:hover {
    text-decoration: none;
}
footer small a {
    color: #ffffff;
}

/* Additional Pages */

/* Attorneys Page */
.iplg-attorneys-name h4{
    font-size: 1.1rem;
    margin-bottom: 0rem;
}
h6.iplg-title {
  font-size: .85rem;
  margin-bottom: .8rem;
}
.iplg-attorneys-name {
    width: 151px;
}
.iplg-attorneys-name a:hover{
    color: #0b336e;
    text-decoration: none;
}
.iplg-profile {
    display: block;
    height: 240px;
    width: 151px;
}
.overlay-container {
  position: relative;
  width: 151px;
  height: 240px;
}
.overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(7, 48, 111, .7);
  overflow: hidden;
  width: 151px;
  height: 50px;
  transition: .5s ease;
}

.overlay-container:hover .overlay {
  height: 240px;
}
.overlay-text {
  position: absolute;
  overflow: hidden;
  color: white;
  font-size: 20px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
  display: inline-block;
}
.view-profile {
    display: none;
}
.view-profile h6 {
    font-weight: 300;
}
.overlay-container:hover .view-profile  {
    display: block;
    border-top: 1px solid #ccc;
    margin-top: 10px;
    padding-top: 12px;
    text-transform: uppercase;
}

.loading {
    opacity: 0;
}


/* Locations Page */
ul.iplg-vert-menu {
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    width: 100%;
    padding-left: 0px;
}
ul.iplg-vert-menu li {
    width: 100%;
    line-height: 2.6rem;
    background: #ccc;
    text-align: center;
    border-bottom: 1px solid #fff;
}
ul.iplg-vert-menu li:hover { background-color: #f1f1f1; }
ul.iplg-vert-menu li a {
    width: 100%;
    height: 100%;
    color: #0b336e;
    padding: .6rem;
    display: block;
}
.location button.btn.btn-lg.btn-primary {
    margin-top: 1rem;
}
.location address {
    margin-top: -1.3rem;
}
.location p {
    line-height: 1.6rem;
    margin-top: 1.5rem;
}
.size-loc-img {
    width: 100%;
    height: 12rem;
    overflow: hidden;
    margin: 1rem 0 1.3rem 0rem;
}
img.iplg-location {
    width: 100%;
    max-width: 400px;
    margin-top: 0.5rem;
}
div.location {
    padding: 0 0rem 0 0rem;
    /*height: 32rem;*/
}
img.location-icon {
    width: 1.3rem;
    margin-right: .6rem;
}
div.location button.btn.btn-lg.btn-primary {
    border-radius: 0;
    background-color: #0b336e;
    position: absolute;
    bottom: 30px;
    width: 14rem;
}
.location h2 {
    font-size: 1.6rem;
}

/* Online Payments Page */
.col-6-md .iplg-form-group {
    border: 1px solid #ccc;
    padding: 4rem;
    border-radius: 4px;
}
/* faq page */
.nav-tabs .nav-link.active {
    background-color: inherit;
    border-color: #dee2e6 #dee2e6 #f4f9fc;
}

/* resources page */
img.r-link {
    width: 1rem;
    margin: 0 .5rem;
}
ul.resources li {
    margin: 0 0 1rem -.5rem;
}
ul.resources li ul.sub-resources li {
    margin: 0 0 .0rem -.5rem;
}
/* careers page */
blockquote p.mb-0 {
    font-size: 1rem;
}
span.iplg-quote {
    width: 15px;
    height: 1rem;
    background: url(/images/icons/quote.svg) no-repeat;
    background-size: contain;
    float: left;
    margin:0 4px 8px 0;
    display: inline;
}
span.iplg-quote-r {
    width: 15px;
    height: 1rem;
    background: url(/images/icons/quote.svg) no-repeat;
    background-size: contain;
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
    margin: 0 0 2px 4px;
    display: inline-block;
}
.blockquote {
    padding: 1rem;
}
footer.blockquote-footer {
    margin-top: .5rem;
}
blockquote p span {
    line-height: 1.6;
}


/* RESPONSIVE CSS
-------------------------------------------------- */

@media (min-width: 40em) {
  .iplg-logo .img-fluid { margin: .5rem 1rem; }
  /* Bump up size of carousel content */
  .carousel-caption p {
    margin-bottom: 1.25rem;
    font-size: 1.25rem;
    line-height: 1.4;
  }

  .featurette-heading {
    font-size: 50px;
  }
}

@media (min-width: 62em) {
  .featurette-heading {
    margin-top: 7rem;
  }
}

/* Extra small devices (portrait phones, less than 576px)
  No media query for `xs` since this is the default in Bootstrap */

/* Small devices (landscape phones, 576px and up)*/
@media (min-width: 350px) {
  .iplg-logo .img-fluid { margin: .5rem 1rem; }
   /* index flipping boxes */
   .card-deck {
      display: block;
   }
   header.container-fluid.iplg-header {
     min-height: 300px;
     background: url(/images/carousel/iplg-dna.0.jpg) no-repeat top center;
     -webkit-background-size: cover;
     -moz-background-size: cover;
     -o-background-size: cover;
     background-size: cover;
     background-color: #5a7690;
   }
   div.location {
    height: 35rem;
   }
   .dropdown-menu.show .dropdown-item:hover {
     border: 2px solid #acb1b8;
     border-radius: 0px;
     color: #fff;
     background: transparent;
     width: 145px;
   }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
  .iplg-logo .img-fluid { margin: .5rem 1rem; }
  .carousel-item, .carousel-item > img {
    height: 40rem;
  }
  .dropdown-item:hover, .dropdown-item:focus {
    color: #16181b !important;
    text-decoration: none !important;
    background-color: #f8f9fa !important;
    width: 100% !important;
  }
  /* index flipping boxes */
  .card-deck {
     display: block;
  }
  .card-deck .card {
    margin-right: auto;
    margin-left: auto;
  }
  header.container-fluid.iplg-header {
      min-height: 300px;
      background: url(/images/carousel/iplg-dna.0.jpg) no-repeat top center;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover;
      background-color: #5a7690;
  }
  div.location {
   height: 34rem;
  }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
  .iplg-logo .img-fluid { margin: .5rem 1rem; }
  a.dropdown-item { color: #212529; text-align: left }
  .dropdown-menu.show { background-color: #c7d7e2; }
  .dropdown-menu { padding: 0rem 0; }
  /* index flipping boxes */
  .card-deck {
     display: block;
  }
  .card-deck .card {
    margin-right: auto;
    margin-left: auto;
  }
  .carousel-item, .carousel-item > img {
    height: 40rem;
  }
  header.container-fluid.iplg-header {
    min-height: 300px;
    background: url(/images/carousel/iplg-dna.0.jpg) no-repeat top center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-color: #ccc;
  }
  div.location {
   height: 33rem;
  }
}


/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
  .iplg-logo .img-fluid { margin: .5rem 1rem; }
  a.dropdown-item { color: #212529; text-align: left; }
  .dropdown-menu.show { background-color: #c7d7e2; }
  .carousel-item, .carousel-item > img {
    height: 42rem;
  }
  header.container-fluid.iplg-header {
    min-height: 300px;
    background: url(/images/carousel/iplg-dna.0.jpg) no-repeat top center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-color: #5a7690;
  }
  /* index flipping boxes */
  .card-deck {
     display: flex;
  }
  /* locations */
  .size-loc-img {
    height: 8rem;
  }
  div.location {
    height: 34rem;
  }
  div.location button.btn.btn-lg.btn-primary {
    width: 12rem;
  }
  .location p {
    font-size: .9rem;
  }
  div.location {
   height: 33rem;
  }
}

@media (min-width: 1700px) {
  .iplg-logo .img-fluid { margin: .5rem 1rem; }
  a.dropdown-item { color: #212529;text-align: left; }
  .dropdown-menu.show { background-color: #c7d7e2; }
  .carousel-item, .carousel-item > img {
    height: 60rem;
  }
  .carousel-caption h1 {
    font-size: 3rem;
  }
  .carousel-caption p {
    font-size: 1.5rem;
  }
  .container {
      max-width: 1540px;
  }
  header.container-fluid.iplg-header {
      min-height: 300px;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover;
      background: url(/images/carousel/iplg-dna.5.jpg) no-repeat top center;
      background-color: #5a7690;
  }
  /* index flipping boxes */
  .card-deck {
     display: flex;
  }
  /* locations */
  .size-loc-img {
    height: 12rem;
  }
  .location p {
    font-size: 1rem;
  }
  div.location {
   height: 33rem;
  }
}
@media (min-width: 2200px) {
  .iplg-logo .img-fluid { margin: .5rem 1rem; }
  a.dropdown-item { color: #212529;text-align: left; }
  .dropdown-menu.show { background-color: #c7d7e2; }
  ul.navbar-nav li.nav-item a.nav-link.text-light, ul.navbar-nav li.nav-item .dropdown button.btn {
    font-size: 20px;
  }
  p {
    font-size: 1.3rem;
  }
  .carousel-item, .carousel-item > img {
    height: 70rem;
  }
  .carousel-caption {
    margin-bottom: 3rem;
  }
  .carousel-caption h1 {
    font-size: 5rem;
  }
  .carousel-caption p {
    font-size: 2rem;
  }
  .container {
      max-width: 1940px;
  }
  header.container-fluid.iplg-header {
      min-height: 300px;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover;
      background: url(/images/carousel/iplg-dna.6.jpg) repeat top center;
      background-color: #5a7690;
  }
  /* index flipping boxes */
  .card-deck {
     display: flex;
  }
  .card-deck {
    margin-top: 6rem !important;
  }
  /* locations */
  .size-loc-img {
    height: 14rem;
  }
  div.location {
   height: 33rem;
  }
}
