/********************
 * Landing Pages
 ********************/

body.landing-page .landing-hero {
  position: relative;
  z-index: 1;
  padding-bottom: 0;
}

body.landing-page.profile-page nav header .left {
  height: 46vw !important;
}

/* Titlebar / hero overrides */
body.landing-page .landing-titlebar {
  height: auto;
  line-height: 1.2;
  overflow: visible;
  max-height: none;
}

body.landing-page .landing-titlebar .area-title {
  height: auto;
  max-height: none;
  min-height: 27vw;
  padding-left: 23vw;
  padding-bottom: 5vw;
}

body.landing-page .landing-titlebar .right {
  width: 64vw;
  line-height: 1.3;
  padding-bottom: 2vw;
}

body.landing-page .subtitle-landing-page {
  font-size: 1.9vw;
  margin-top: 0.3vw;
  line-height: 1.3;
  text-transform: uppercase;
}

body.landing-page .landing-titlebar .title {
  padding-top: 0;
}

body.landing-page .landing-titlebar.criminal-defense {
  height: auto;
  min-height: 24vw;
}

body.landing-page .landing-titlebar.criminal-defense .title {
  padding-top: 3vw;
}

body.landing-page .landing-titlebar.criminal-defense .area-title {
  height: auto;
  padding-top: 0;
  min-height: 24vw;
}

/* Floating form */
body.landing-page .landing-page-form {
  background-color: #fff;
  position: relative;
  box-shadow: 0 3px 3px 0 rgba(60, 64, 67, 0.08),
    0 3px 5px 3px rgba(60, 64, 67, 0.16);
  left: 23vw;
  padding: 0.5vw 2vw 1.5vw;
  width: 59vw;
  margin-top: -18vw;
  margin-bottom: 0;
  z-index: 2;
}

body.landing-page .landing-page-form > p {
  margin-top: -1.3vw;
  font-family: Lora, serif;
  font-size: 1vw;
}

body.landing-page .landing-page-form > p.title {
  color: #0f4486;
  font-size: 2vw;
  margin-top: 1vw;
  text-transform: capitalize;
  font-family: Cinzel, serif;
}

body.landing-page .landing-page-form-container .form-landing form {
  display: flex;
  flex-direction: column;
  gap: 0.8vw;
}

body.landing-page .landing-page-form-container .form-landing form .form-row-landing {
  display: flex;
  gap: 0.8vw;
  width: 100%;
}

body.landing-page .landing-page-form-container .form-landing form .form-row-landing .input-1 {
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
  height: 2.4vw;
  font-size: 0.9vw;
}

body.landing-page .landing-page-form-container .form-landing form input.input-1 {
  margin: 0;
  height: 2.4vw;
  font-size: 0.9vw;
}

body.landing-page .landing-page-form-container .form-landing form select {
  width: 100%;
  margin: 0;
  height: 2.4vw;
  font-size: 0.9vw;
}

body.landing-page .landing-page-form-container .form-landing form textarea {
  width: 100%;
  margin: 0;
  height: 7vw;
  min-height: 7vw;
  font-size: 0.9vw;
}

body.landing-page .landing-page-form-container .form-landing form label {
  font-size: 0.85vw;
}

body.landing-page .landing-page-form-container .form-landing form .frmbx,
body.landing-page .landing-page-form-container .form-landing form .form-check {
  margin: 0;
}

body.landing-page .landing-page-form-container .form-landing form .submit-btn {
  font-size: 0.95vw;
  padding: 0.6vw 1.5vw;
}

/* Page content */
body.landing-page .page-content-container {
  position: relative;
  z-index: 2;
}

body.landing-page .main-content-container {
  margin: 2vw auto 0;
  display: block;
  width: 85vw;
}

/* Content sections */
body.landing-page section.landing-page h2 {
  color: #0f4486;
}

body.landing-page section.landing-page {
  padding: 2.5vw 4.5vw;
  text-align: center;
  width: 82vw;
  margin-left: -3vw;
  background: url("/assets/images/grid-background.webp");
  box-shadow: 2px 2px 10px rgba(172, 172, 172, 0.57);
}

body.landing-page section.landing-page.criminal-defense-content p,
body.landing-page section.landing-page.criminal-defense-content ul {
  text-align: left;
}

body.landing-page .family-law-profile-section {
  height: auto;
  display: flex;
  justify-content: center;
  margin: 3vw 1vw;
}

body.landing-page .family-law-profile-section a {
  text-decoration: none;
}

body.landing-page .family-law-profile-section .profile-image {
  width: 17vw;
  height: auto;
  padding: 1.5vw;
}

body.landing-page section.landing-page.criminal-defense-content .family-law-profile-section .profile-image {
  width: 15vw;
}

body.landing-page .family-law-profile-section .profile-group {
  padding: 0 0.5vw;
}

body.landing-page .family-law-profile-section .attorney-name {
  color: #613e98;
  text-transform: capitalize;
  font-weight: 700;
  margin-bottom: 0;
  margin-top: 0;
  font-size: 1.7vw;
  text-align: center;
}

body.landing-page .family-law-profile-section .subtext {
  color: #000;
  margin-top: 0.5vw;
  font-size: 1.3vw;
  text-align: center;
}

body.landing-page .family-law-focus {
  margin: 1vw 0;
}

body.landing-page .family-law-focus .left-column {
  width: 51vw;
  display: inline-block;
}

body.landing-page iframe.youtube-video {
  width: 30vw;
  height: 15vw;
  margin-top: 2vw;
  float: right;
}

body.landing-page .blue-text-box {
  background-color: #194173;
  color: #fff;
  text-align: center;
  width: 100vw;
  margin-left: -7.5vw;
  margin-top: 2vw;
  margin-bottom: 3vw;
  padding: 2vw 2vw 4vw;
}

body.landing-page .blue-text-box p {
  padding: 0 5vw;
  font-size: 1.4vw;
  line-height: 1.5;
}

body.landing-page .section-seven {
  margin: 3vw 1vw;
}

body.landing-page .section-seven .left-column {
  width: 31vw;
  background: #fff;
  border: 1px solid #0f4486;
  height: 31vw;
  padding: 1vw 2vw;
  margin-right: 2vw;
}

body.landing-page .section-seven .right-column {
  width: 31vw;
  height: 31vw;
  background: #fff;
  border: 1px solid #0f4486;
  padding: 1vw 2vw;
  vertical-align: top;
}

body.landing-page .section-seven .backdrop-box {
  box-shadow: 0 3px 3px 0 rgba(60, 64, 67, 0.08),
    0 3px 5px 3px rgba(60, 64, 67, 0.16);
  display: inline-block;
  padding: 2vw;
  width: 35vw;
  margin: 0 1vw;
  vertical-align: top;
  height: 33.5vw;
}

body.landing-page .practice-area-boxes {
  text-align: center;
}

body.landing-page .practice-area-boxes a {
  text-decoration: none;
}

body.landing-page .area-landing-page {
  width: 12.7vw;
  height: 10vw;
  display: inline-block;
  vertical-align: top;
  background: white;
  margin-bottom: 1.25vw;
  text-align: center;
  margin-right: 1.25vw;
  box-shadow: 0 3px 3px 0 rgba(60, 64, 67, 0.08),
    0 3px 5px 3px rgba(60, 64, 67, 0.16);
  transition: box-shadow 0.3s ease;
}

body.landing-page .practice-area-boxes.criminal-defense-charges .area-landing-page {
  width: 19.7vw;
}

body.landing-page .practice-area-boxes.criminal-defense-charges .area-landing-page .inner .title {
  font-size: 1.2vw;
}

body.landing-page .area-landing-page:hover,
body.landing-page .area-landing-page:focus {
  box-shadow: 0 3px 3px 3px rgba(60, 64, 67, 0.16),
    0 3px 5px 6px rgba(60, 64, 67, 0.32);
}

body.landing-page .area-landing-page .inner {
  border: 1.5px solid #0f4486;
  height: 8vw;
  margin: 0.8vw 0.8vw auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

body.landing-page .area-landing-page .inner .title {
  font-size: 1vw;
  padding: 0.5vw;
}

body.landing-page a.purple-button {
  background: #613e98;
  color: white;
  padding: 1vw 3vw;
  display: inline-block;
  margin-top: 1vw;
  font-size: 1.2vw;
  box-shadow: 0 3px 3px 0 rgba(60, 64, 67, 0.08),
    0 3px 5px 3px rgba(60, 64, 67, 0.16);
  transition: box-shadow 0.3s ease;
  text-decoration: none;
}

body.landing-page a.purple-button:hover,
body.landing-page a.purple-button:focus {
  box-shadow: 0 3px 3px 3px rgba(60, 64, 67, 0.16),
    0 3px 5px 6px rgba(60, 64, 67, 0.32);
}

body.landing-page a.white-button {
  background: #fff;
  color: #623f98;
  padding: 1vw;
  display: inline-block;
  margin-top: 1vw;
  font-size: 1.2vw;
  box-shadow: 0 3px 3px 0 rgba(60, 64, 67, 0.08),
    0 3px 5px 3px rgba(60, 64, 67, 0.16);
  transition: box-shadow 0.3s ease, background 0.3s ease, color 0.3s ease;
  text-decoration: none;
  font-weight: 600;
}

body.landing-page a.white-button:hover,
body.landing-page a.white-button:focus {
  background: #613e98;
  color: #fff;
}

body.landing-page .child-factors {
  margin: 1vw 0;
}

body.landing-page .child-factors .left-column {
  width: 51vw;
  display: inline-block;
  text-align: left;
}

body.landing-page .child-factors img {
  float: right;
  height: 36vw;
  margin-top: -2vw;
}

body.landing-page .quote-section.internal p {
  width: 64%;
  padding: 1.5vw 0;
  font-size: 1.1vw;
  line-height: 2.2;
}

body.landing-page .quote-section.internal {
  margin-top: 5vw;
}

@media (max-width: 850px) {
  body.landing-page .landing-hero {
    padding-bottom: 4vw;
  }

  body.landing-page .landing-titlebar {
    height: auto;
    min-height: 79vw;
  }

  body.landing-page .landing-titlebar.criminal-defense {
    min-height: 31vw;
  }

  body.landing-page .landing-titlebar .area-title {
    height: auto;
    min-height: 68vw;
    padding-left: 7vw;
    padding-top: 11vw;
  }

  body.landing-page .landing-titlebar.criminal-defense .area-title {
    min-height: auto;
    padding-left: 7vw;
    padding-top: 0;
  }

  body.landing-page .subtitle-landing-page {
    font-size: 5vw;
    margin-top: 0.9vw;
    line-height: 1.2;
  }

  body.landing-page .landing-titlebar .title {
    padding-top: 1vw;
  }

  body.landing-page .landing-titlebar.criminal-defense .title {
    padding-top: 6vw;
  }

  body.landing-page .landing-titlebar .right {
    width: 91vw;
    padding-top: 4vw;
  }

  body.landing-page .landing-page-form > p {
    margin-top: 0;
    padding: 4vw;
    font-size: 3vw;
  }

  body.landing-page .landing-page-form > p.title {
    margin-top: 0;
    font-size: 5vw;
    line-height: 1.2;
    padding: 3vw;
  }

  body.landing-page section.landing-page {
    padding: 8.5vw 4.5vw;
    margin-top: 4vw;
    width: auto;
    margin-left: 0;
  }

  body.landing-page .landing-page-form {
    width: 88%;
    left: 0;
    top: 0;
    margin-left: 3vw;
    margin-top: 4vw;
    margin-bottom: 0;
  }

  body.landing-page .main-content-container {
    margin: 6vw auto 0;
    width: 90%;
  }

  body.landing-page .landing-page-form-container .form-landing form {
    gap: 3vw;
  }

  body.landing-page .landing-page-form-container .form-landing form .form-row-landing {
    flex-direction: column;
    gap: 3vw;
  }

  body.landing-page .landing-page-form-container .form-landing form .form-row-landing .input-1,
  body.landing-page .landing-page-form-container .form-landing form input.input-1,
  body.landing-page .landing-page-form-container .form-landing form input[type="email"],
  body.landing-page .landing-page-form-container .form-landing form select {
    width: 100%;
    margin: 0;
    height: auto;
    min-height: 10vw;
    font-size: 3.5vw;
  }

  body.landing-page .landing-page-form-container .form-landing form textarea {
    margin: 0;
    height: 32vw;
    min-height: 32vw;
    font-size: 3.5vw;
  }

  body.landing-page .landing-page-form-container .form-landing form label {
    font-size: 3vw;
  }

  body.landing-page .landing-page-form-container .form-landing form .submit-btn {
    font-size: 3.5vw;
    padding: 3vw 5vw;
    width: 100%;
  }

  body.landing-page a.purple-button {
    padding: 6vw 5vw;
    font-size: 5.2vw;
  }

  body.landing-page .family-law-focus .left-column {
    width: auto;
    display: block;
  }

  body.landing-page .family-law-profile-section {
    flex-direction: column;
    align-items: center;
  }

  body.landing-page .family-law-profile-section .profile-image {
    width: 70vw;
    padding: 5.5vw;
  }

  body.landing-page section.landing-page.criminal-defense-content .family-law-profile-section .profile-image {
    width: 50vw;
  }

  body.landing-page .family-law-profile-section .attorney-name {
    font-size: 8.7vw;
  }

  body.landing-page .family-law-profile-section .subtext {
    margin-top: 4vw;
    font-size: 6.3vw;
  }

  body.landing-page iframe.youtube-video {
    width: 99%;
    height: auto;
    float: none;
    margin-bottom: 9vw;
  }

  body.landing-page .area-landing-page .inner {
    height: 30vw;
  }

  body.landing-page .area-landing-page {
    width: 38.7vw !important;
    height: 32vw;
    margin-bottom: 5.25vw;
    margin-right: 3.25vw;
  }

  body.landing-page .area-landing-page .inner .title {
    font-size: 4vw !important;
  }

  body.landing-page a.white-button {
    padding: 4vw 7vw;
    font-size: 4.2vw;
  }

  body.landing-page .blue-text-box {
    padding: 2vw 2vw 10vw;
    box-sizing: border-box;
    width: auto;
    margin-left: -5vw;
  }

  body.landing-page .blue-text-box p {
    font-size: initial;
  }

  body.landing-page .section-seven .backdrop-box {
    width: 99%;
    margin: 5vw 0;
    height: auto;
  }

  body.landing-page .section-seven .left-column {
    width: 78vw;
    height: auto;
  }

  body.landing-page .section-seven .right-column {
    width: auto;
    height: auto;
  }

  body.landing-page .child-factors img {
    display: none;
  }

  body.landing-page .child-factors .left-column {
    width: auto;
  }

  body.landing-page .quote-section.internal p {
    width: 73%;
    font-size: 5vw;
    line-height: 1.6;
  }

  body.landing-page .quote-section.internal {
    padding: 4vw 1vw 20px;
    margin-top: 12vw;
  }
}
