/*
    southwest family guidance center
    style_m6.scss
    since june 2015/feb 2025
    loads after the unchanged style.css of the underscores.me theme
*/

body {
  font-size: 21px;
  font-family: museo-sans;
  -webkit-font-smoothing: antialiased;
  line-height: 1.7;
}

#page {
  display: flex;
  position: relative;
  flex-direction: column;
  margin: 0 auto;
  background-color: #e9e8ec;
  min-height: 100vh;
}

#content {
  flex: 1;
  margin-top: 120px;
  @media (width <= 768px) {
    margin-top: 100px;
  }
  .content-shadow {
    position: fixed;
    top: 20px;
    right: 0;
    left: 0;
    z-index: 10000;
    margin-right: auto;
    margin-left: auto;
    background-image: url("../img/content-shadow.png");
    width: 1311px;
    height: 156px;
    @media (width <= 768px) {
      display: none;
    }
  }
}

ul {
  clear: both;
  margin: 0;
  padding-left: 0;
  list-style-type: none;
}

h1,
h2,
h3,
h4,
h5 {
  font-weight: normal;
  font-family: roca;
}

h1 {
  font-size: 32px;
}

.entry-content {
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    margin-top: 20px;
    margin-bottom: 0;
  }

  h1 {
    color: var(--darkAccentColor);
    font-size: 32px;
  }
  h2 {
    color: var(--darkAccentColor);
    font-size: 29px;
  }
  h3 {
    color: var(--darkAccentColor);
    font-weight: bold;
    font-size: 29px;
    font-family: museo-sans;
  }
  h4 {
    color: #000000;
    font-weight: bold;
    font-size: 29px;
    font-family: museo-sans;
  }
  h5 {
    color: var(--darkAccentColor);
    font-weight: normal;
    font-size: 29px;
    font-family: museo-sans;
  }
  h6 {
    color: #000000;
    font-weight: normal;
    font-size: 29px;
    font-family: museo-sans;
  }
  .entry-title {
    display: none;
  }

  a {
    color: var(--darkAccentColor);
    text-decoration: underline;
    &:hover {
      background-color: var(--darkAccentColor);
      color: #fff;
    }
  }
  a.button-link {
    display: inline-block;
    margin-bottom: 12px;
    border-radius: 43px;
    background-color: var(--accentColor);
    padding-top: 4px;
    padding-right: 24px;
    padding-left: 24px;
    height: 43px;
    color: #fff !important;
    text-decoration: none !important;
    text-shadow: none;
    &:hover {
      background-color: var(--darkAccentColor);
      color: #fff !important;
      text-decoration: none !important;
    }
  }
  p {
    line-height: 1.7;
  }

  strong {
    font-weight: bold;
  }

  b {
    color: var(--darkAccentColor);
    font-weight: bold;
  }

  h1 + ul,
  h2 + ul,
  h3 + ul,
  h4 + ul,
  h5 + ul {
    margin-top: 14px;
  }
  p + ul {
    margin-top: -20px;
  }

  h1 + ol,
  h2 + ol,
  h3 + ol,
  h4 + ol,
  h5 + ol {
    margin-top: 16px;
  }
  p + ol {
    margin-top: -20px;
  }

  ol {
    margin-left: 0;
    li {
      position: relative;
      left: -10px;
    }
  }

  ol > li::marker {
    font-weight: bold;
  }

  ul {
    clear: none;
    li {
      position: relative;
      margin-bottom: 7px;
      margin-left: 20px;
      padding-right: 25px;
      line-height: 1.3;
      list-style-type: none;
      &:before {
        position: absolute;
        top: 11px;
        left: -20px;
        border-radius: 50%;
        background-color: var(--darkAccentColor);
        width: 6px;
        height: 6px;
        content: "";
        font-weight: bold;
        font-size: 24px;
      }
      > ul {
        margin-top: 10px;
        > li {
          &:before {
            position: absolute;
            top: 0px;
            left: -25px;
            border-radius: 50%;
            background-color: #ffffff;
            width: 15px;
            height: 15px;
            content: "";
          }
        }
      }
    }
  }
}

a,
a:hover,
a:focus,
a:active,
a:visited {
  color: inherit;
  text-decoration: none;
}

strong {
  font-weight: bold;
}

em {
}

.moretag {
  color: #1d4671 !important;
  font-size: 10px !important;
  &:hover {
    color: #a53224 !important;
  }
}

/* HEADER */
header#masthead {
  position: relative;
  position: fixed;
  z-index: 100000;
  width: 100%;
  height: 120px;
  color: #fff;
  @media (width <= 768px) {
    position: fixed;
    z-index: 1000;
    height: 100px;
  }
  button.menu-toggle {
    @media (width <= 768px) {
      display: block;
    }
    position: absolute;
    top: 36px;
    right: 5%;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    border: 0;
    border-radius: 0;
    background-image: url("../img/mobile-menu-button.svg");
    background-size: cover;
    background-color: transparent;
    padding: 0;
    aspect-ratio: 1.45;
    width: 45px;
    text-indent: -9999px;
  }
  &.toggled {
    .menu-mobile-container {
      display: block !important;
    }
    ul#mobile-menu {
      display: block !important;
    }
  }
  .header-inner {
    display: flex;
    margin-right: auto;
    margin-left: auto;
    padding-right: 4%;
    padding-left: 4%;
    max-width: 1350px;
    @media (width <= 768px) {
      background-color: var(--darkAccentColor);
      padding-right: 5.555555556%;
      padding-left: 5.555555556%;
      height: 100%;
    }
  }
  .header-home-button {
    margin-top: 32px;
    &:hover {
      h1 {
        color: #000;
      }
    }
    h1 {
      margin: 0;
      color: #fff;
      font-size: 40px;
      white-space: nowrap;
      @media (width <= 768px) {
        display: none;
      }
    }
    @media (width <= 768px) {
      margin-top: 0;
      margin-top: 0;
      margin-top: 0;
      margin-top: 0;
      margin-top: 30px;
      margin-left: 0;
      background-image: url("../img/mobile-header-logo-2.svg");
      background-size: cover;
      background-size: cover;
      background-size: cover;
      background-size: contain;
      background-repeat: no-repeat;
      aspect-ratio: 4.7;
      width: 235px;
      width: 190px;
    }
  }
  .main-navigation {
    flex: 1;
    padding-top: 48px;
    padding-left: 40px;
    width: auto;
    .menu-primary-container {
      @media (width <= 768px) {
        display: none;
      }
      ul#primary-menu {
        display: flex;
        flex: 1;
        li {
          display: block;
          margin: 0;
          margin-right: 11px;
          margin-left: 11px;
          color: #000;
          font-size: 21px;
          font-family: museo-sans;
          &:hover {
            color: #fff;
          }
          &:last-child {
            position: relative;
            top: -2.5px;
            margin-left: auto;
            border-right: none;
            border: 1px solid #fff;
            border-radius: 23px;
            background-color: var(--darkAccentColor);
            padding-top: 2px;
            padding-right: 22px;
            padding-left: 22px;
            height: 44px;
            color: #fff;
            &:hover {
              border-color: var(--darkAccentColor);
              background-color: white;
              color: var(--darkAccentColor);
            }
            a {
              white-space: nowrap;
            }
          }
        }
      }
    }
  }
  .menu-mobile-container {
    ul#mobile-menu {
      display: none;
      width: 100%;
      li {
        display: block;
        float: none;
        margin: 0;
        border-bottom: 1px solid #fff;
        background-color: var(--accentColor);
        width: 100%;
        color: #fff;
        font-size: 23px;
        font-family: museo-sans;
        &:first-child {
          border-top: 1px solid #fff;
        }
        &:hover {
          color: #fff;
        }
        a {
          display: block;
          padding-top: 15px;
          padding-bottom: 15px;
          width: 100%;
          text-align: center;
        }
        > ul {
          display: none;
          margin: 0;
          width: 100%;
          li {
            background-color: var(--darkAccentColor);
          }
        }
      }
    }
  }
}

footer#colophon {
  background-color: #fff;
  padding-top: 50px;
  padding-bottom: 30px;
  color: #000;
  font-size: 12px;
  .footer-inner {
    display: flex;
    margin-right: auto;
    margin-left: auto;
    padding-right: 4%;
    padding-left: 4%;
    max-width: 1350px;
    @media (width <= 768px) {
      display: block;
      padding-right: 4%;
      padding-left: 4%;
    }
    .footer-left {
      position: relative;
      left: -10px;
      border-right: 1px solid #dcdcdc;
      padding-top: 85px;
      padding-right: 30px;
      width: 375px;
      min-width: 375px;
      height: 296px;
      @media (width <= 768px) {
        left: unset;
        border-right: 0;
        padding-top: 0;
        padding-right: 0;
        padding-right: 4%;
        padding-bottom: 30px;
        padding-left: 4%;
        width: 100%;
        min-width: unset;
        height: auto;
        text-align: center;
      }
      .footer-logo {
        width: 360px;
      }
      .text-under-logo {
        margin-top: 23px;
        font-style: normal;
        font-weight: 400;
        font-size: 25px;
        line-height: 1.4;
        font-family: "cabrito-didone-normal", sans-serif;
        text-align: center;
      }
      .footer-phone {
        display: block;
        margin-top: 55px;
        margin-right: auto;
        margin-left: auto;
        width: 225px;
      }
    }
    .footer-right {
      display: flex;
      flex-wrap: wrap;
      padding-top: 38px;
      padding-left: 30px;
      @media (width <= 768px) {
        padding-top: 0;
        padding-left: 0;
      }

      .footer-location {
        @media (width <= 768px) {
          margin-bottom: 18px;
          width: 100%;
          text-align: center;
        }
        width: 33%;
        font-size: 16px;
        > div:first-child {
          margin-bottom: 1px;
          color: #307994;
          font-weight: bold;
        }
        p {
          margin-top: 0;
          margin-bottom: 13px;
          line-height: 1.4;
        }
        &:last-child {
          @media (width <= 768px) {
            margin-top: 30px;
          }

          p {
            line-height: 1.5;
          }
          a {
            text-decoration: underline;
            &:hover {
              color: var(--darkAccentColor);
            }
          }
        }
      }
    }
  }
}

/* HOME PAGE */

.video-header {
  position: relative;
  overflow: hidden;
  video {
    display: block;
  }
}

.cloud-line {
  position: absolute;
  top: 45.2%;
  left: 29.1%;
  width: 70%;
  height: 47%;
}

.video-header-shape {
  position: absolute;
  right: 0;
  bottom: -0.5%;
  left: -1%;
  z-index: 1;
  margin-right: auto;
  margin-left: auto;
  background-image: url("../img/shape-2.svg");
  background-size: cover;
  aspect-ratio: 45;
  width: 102%;
}

.floater-window {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  aspect-ratio: 1.7777777778;
  width: 100%;
  @media (width <= 768px) {
    display: none;
  }
}

.floater {
  display: none;
  position: absolute;
  top: 16%;
  left: 48%;
  @media (width <= 768px) {
    display: none;
    position: static;
  }
  .the-buttons {
    display: flex;
    > * {
      @media (width <= 768px) {
        width: 100%;
      }
      width: 50%;
      &:first-child {
        margin-right: 30px;
      }
    }
    a {
      display: block;
      margin-bottom: 30px;
      border: 1px solid #484067;
      border-radius: 50px;
      background-color: #ffffffcc;
      width: 290px;
      height: 50px;
      color: #484067;
      font-size: 23px;
      line-height: 48px;
      text-align: center;
      @media (width <= 768px) {
        margin-right: auto;
        margin-left: auto;
      }
      &.referral,
      &.request {
        display: none;
      }

      &.locked {
        border-color: #484067;
        background-color: #484067;
        color: #ffffff;
      }
      &.disabled {
        border-color: #ffffff;
        background-color: transparent;
        color: #ffffff;
      }
      &:hover {
        border-color: #e93259;
        background-color: #e93259;
        color: #fff;
      }
    }
  }

  .welcome {
    margin-bottom: 52px;
    margin-left: 55px;
    width: 460px;
    @media (width <= 768px) {
      display: none;
    }
  }
}

.mobile-buttons {
  display: none;
  @media (width <= 768px) {
    display: block;
  }
  .the-buttons {
    display: block;
    margin-top: 30px;
    margin-bottom: 70px;
    a {
      background-color: transparent;

      &.referral {
        border: 0;
        background-color: var(--darkAccentColor);
        color: #ffffff;
      }
      &.inverse {
        border: 1px solid #484067;
        background-color: transparent;
        pointer-events: none;
        color: #484067;
      }
    }
  }
}

.the-buttons {
  display: flex;
  @media (width <= 768px) {
    display: none;
  }
  > * {
    @media (width <= 768px) {
      width: 100%;
    }
    width: 50%;
    &.buttons-left-column {
      margin-right: 30px;
    }
  }
  a {
    display: block;
    margin-bottom: 30px;
    border: 1px solid #484067;
    border-radius: 50px;
    background-color: #ffffffcc;
    width: 290px;
    height: 50px;
    color: #484067;
    font-size: 23px;
    line-height: 48px;
    text-align: center;
    &.request,
    &.referral {
      border: 1px solid #484067;
      background-color: #484067;
      color: #ffffff;
    }
    @media (width <= 768px) {
      margin-right: auto;
      margin-left: auto;
    }
    &.locked {
      border-color: #484067;
      background-color: #484067;
      color: #ffffff;
    }
    &.disabled {
      border-color: #ffffff;
      background-color: transparent;
      color: #ffffff;
    }
    &:hover {
      border-color: #e93259;
      background-color: #e93259;
      color: #fff;
    }
  }
}

.home-content {
  margin-top: 20px;
}
.home-content-inner {
  display: flex;
  margin-right: auto;
  margin-left: auto;
  padding-right: 4%;
  padding-left: 4%;
  width: 100%;
  max-width: 1350px;
  @media (width <= 768px) {
    display: block;
    padding-right: 4%;
    padding-left: 4%;
    width: 100%;
  }

  h1 {
    color: var(--darkAccentColor);
  }
  .home-content-inner-left {
    @media (width <= 768px) {
      padding-right: 4%;
      padding-left: 4%;
      width: 100%;
    }
  }
  .home-content-inner-right {
    margin-left: 0;
    margin-left: 60px;
    padding-right: 4%;
    padding-left: 4%;
    width: 100%;
    min-width: 440px;
    @media (width <= 768px) {
      display: none;
      margin-left: 0;
      min-width: unset;
    }
    p {
      margin-bottom: 10px;
    }
    a {
      text-decoration: underline;
      &:hover {
        color: var(--darkAccentColor);
      }
    }
  }
}

body.home {
  #content {
    margin-top: 0;
    @media (width <= 768px) {
      margin-top: 100px;
    }
  }
  .content-shadow {
    display: none;
  }
  #masthead {
    display: none;
    @media (width <= 768px) {
      display: block;
    }
  }
}

/* DEFAULT PAGE */
body.page-template-default,
body.post-template-default {
  .featured-image {
    position: relative;
    aspect-ratio: 1.783;
    width: 100%;
    max-width: none;
    max-height: 500px;
    overflow: hidden;
    text-align: center;
    img {
      width: 100%;
      max-width: none;
      height: 100%;
      object-fit: cover;
      object-position: 50% 50%;
    }
  }
  .featured-image-shape {
    position: absolute;
    right: 0;
    bottom: -0.5%;
    left: -1%;
    z-index: 1;
    margin-right: auto;
    margin-left: auto;
    background-image: url("../img/shape-2.svg");
    background-size: cover;
    aspect-ratio: 45;
    width: 102%;
  }
  .entry-title {
    margin-top: 58px;
    margin-right: auto;
    margin-bottom: -20px;
    margin-left: auto;
    padding-right: 4%;
    padding-left: 4%;
    max-width: 1350px;
    color: var(--darkAccentColor);
    @media (width <= 768px) {
      margin-top: 30px;
      margin-bottom: -40px;
      padding-right: 4%;
      padding-left: 4%;
    }
  }
  .entry-content {
    margin-right: auto;
    margin-bottom: 40px;
    margin-left: auto;
    padding-right: 4%;
    padding-left: 4%;
    max-width: 1350px;
    @media (width <= 768px) {
      padding-right: 4%;
      padding-left: 4%;
    }
  }
}

.features {
  .feature {
    display: block;
    border-top: 2px solid #cdcdcd;
    &:hover {
      background-color: #ffffff;
    }
    .feature-inner {
      display: flex;
      margin-right: auto;
      margin-left: auto;
      padding-top: 40px;
      padding-right: 4%;
      padding-bottom: 40px;
      padding-left: 4%;
      max-width: 1350px;
      @media (width <= 768px) {
        display: block;
        padding-right: 4%;
        padding-left: 4%;
      }

      .left {
        margin-top: 26px;
        margin-right: 50px;
        min-width: 300px;
        img {
          display: block;
          width: 300px;
        }
      }
      .right {
        flex: 1;
        h1 {
          margin-top: 20px;
          margin-bottom: 0;
          color: var(--darkAccentColor);
          line-height: 1.4;
        }
      }
      .caret {
        margin-left: 120px;
        width: 40px;
        min-width: 40px;
        @media (width <= 768px) {
          display: none;
        }
      }
    }
  }
}

.links-banner {
  position: relative;
  background-color: blue;
  height: 140px;
  overflow-y: hidden;
  @media (width <= 768px) {
    height: auto;
  }
  .links-banner-shadow {
    position: absolute;
    top: -86px;
    right: 0;
    left: 0;
    z-index: 10000;
    margin-right: auto;
    margin-left: auto;
    background-image: url("../img/links-banner-shadow.png");
    width: 1311px;
    max-width: 100%;
    height: 131px;
    @media (width <= 768px) {
      display: none;
    }
  }
  .links-banner-inner {
    display: flex;
    margin-right: auto;
    margin-left: auto;
    padding-right: 4%;
    padding-left: 4%;
    max-width: 1350px;
    @media (width <= 768px) {
      display: block;
      padding-right: 4%;
      padding-left: 4%;
    }
    .links-banner-label {
      margin-top: 45px;
      margin-right: 40px;
      margin-bottom: 0;
      color: #fff;
      font-size: 40px;
      @media (width <= 768px) {
        margin-left: 4%;
      }
    }
    .links-banner-links {
      display: flex;
      flex: 1;
      justify-content: flex-start;
      margin-top: 53px;
      margin-right: 30px;
      @media (width <= 768px) {
        display: block;
        margin-top: 18px;
        margin-bottom: 50px;
        margin-left: 4%;
      }
      .referral,
      .request,
      .back {
        display: none;
      }
      a {
        display: block;
        margin-right: 20px;
        border: 1px solid #fff;
        border-radius: 43px;
        background-color: var(--darkAccentColor);
        padding-right: 24px;
        padding-left: 24px;
        height: 43px;
        color: #fff;
        line-height: 42px;
        &:hover {
          border-color: var(--darkAccentColor);
          background-color: white;
          color: var(--darkAccentColor);
        }
        @media (width <= 768px) {
          margin-bottom: 10px;
          width: max-content;
        }
      }
    }
  }
}

.gform_confirmation_message {
  a {
    color: #1d4671;
    text-decoration: underline;
    &:hover {
      color: #a63224;
      text-decoration: underline;
    }
  }
}

body.page-id-10 {
  ul li .summary-excerpt {
    .only-for-contact-category {
      display: block !important;
      iframe {
        display: none !important;
      }
    }
    > p {
      display: none !important;
    }
  }
}

/* CATEGORY PAGES */
body.page-template-page-category,
body.blog,
body.search-results {
  .summary-image {
    float: left;
    margin-left: 12%;
    width: 250px;
  }
  .summary-content {
    float: left;
    margin-left: 9%;
    width: 510px;
    .summary-title {
      margin-top: 20px;
      color: #a53224;
      font-size: 15px;
      font-family: museo-sans;
    }
    .summary-excerpt {
      .only-for-contact-category {
        display: none;
      }
      > p {
        color: #222;
        font-size: 12px;
        line-height: 1.1rem;
      }
    }
  }
  .section-page-top {
    border-bottom: 3px solid #ccc;
    background-color: #eee;
    padding-top: 40px;
    padding-bottom: 40px;
    overflow: auto;
    a {
      color: #1d4671;
      text-decoration: underline;
      &:hover {
        color: #a53224;
      }
    }
  }
  #main ul {
    clear: both;
    margin: 0;
    padding-left: 0;
    list-style-type: none;
    li {
      clear: both;
      border-top: 1px solid #ddd;
      background-position: bottom center;
      background-repeat: no-repeat;
      padding: 20px 0;
      width: 100%;
      overflow: auto;
      &:last-child {
        border-bottom: none;
      }
      a {
        text-decoration: none;
      }
      .wp-post-image {
        margin-right: 70px;
      }
      .link-arrow {
        display: block;
        float: left;
        margin-top: 65px;
        margin-left: 5%;
        background-image: url(img/arrow.png);
        width: 50px;
        height: 50px;
        &:hover {
          opacity: 0.7;
        }
      }
    }
  }
}
