.hero {
  background-image: url("/Content/images/HeroBg.jpg");
  background-size: cover;
  position: relative;
  padding-block: clamp(85px, 8.8vw, 170px) clamp(0px, 13vw, 250px); }
  @media only screen and (max-width: 650px) {
    .hero {
      padding-bottom: 60vw; } }
  @media only screen and (max-width: 450px) {
    .hero {
      padding-top: 60px; } }
  .hero .content {
    width: 52%; }
    @media only screen and (max-width: 1200px) {
      .hero .content {
        width: 100%; } }
    .hero .content h1 {
      font-size: clamp(22px, 2.2vw, 40px);
      margin-block: 0 5px;
      line-height: 1.2;
      color: #ffffff;
      font-weight: 700;
      text-transform: capitalize;
      letter-spacing: .1em; }
      .hero .content h1 span {
        font-size: clamp(36px, 3.6vw, 69px);
        text-transform: uppercase;
        display: block; }
      @media only screen and (max-width: 650px) {
        .hero .content h1 {
          text-align: center; } }
    .hero .content h2 {
      color: #ffffff;
      margin-bottom: 50px;
      font-size: clamp(20px, 1.66vw, 30px); }
      @media only screen and (max-width: 650px) {
        .hero .content h2 {
          text-align: center; } }
    .hero .content .hero-btn-wrap {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      gap: 10px clamp(20px, 3.1vw, 60px);
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      @media only screen and (max-width: 1200px) {
        .hero .content .hero-btn-wrap {
          display: -ms-grid;
          display: grid;
          -ms-grid-columns: auto;
          grid-template-columns: auto; } }
      @media only screen and (max-width: 650px) {
        .hero .content .hero-btn-wrap {
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center; } }
      .hero .content .hero-btn-wrap .hero-btn {
        padding: 15px 30px;
        text-transform: uppercase;
        color: #ffffff;
        font-weight: 700;
        font-size: clamp(17px, 1.4vw, 21px);
        text-decoration: none;
        position: relative;
        z-index: 1;
        display: block;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content; }
        .hero .content .hero-btn-wrap .hero-btn:after {
          content: '';
          display: block;
          width: 100%;
          height: 6px;
          background: #ea9438;
          border-radius: 5px;
          bottom: 0;
          position: absolute;
          left: 0;
          -webkit-transition: .3s all ease;
          -o-transition: .3s all ease;
          transition: .3s all ease;
          z-index: -1; }
        .hero .content .hero-btn-wrap .hero-btn:hover:after, .hero .content .hero-btn-wrap .hero-btn:active .hero .content .hero-btn-wrap .hero-btn:focus:after {
          height: 100%; }
        @media only screen and (max-width: 650px) {
          .hero .content .hero-btn-wrap .hero-btn.hide-btn {
            display: none; } }
  .hero .hero-img-wrap {
    position: absolute;
    right: 0;
    bottom: -10%;
    width: 50%; }
    @media only screen and (max-width: 1200px) {
      .hero .hero-img-wrap {
        width: 60%; } }
    @media only screen and (max-width: 650px) {
      .hero .hero-img-wrap {
        width: 95%;
        bottom: -8%; } }
    .hero .hero-img-wrap img {
      width: 100%;
      height: auto;
      display: block; }

@media only screen and (max-width: 1100px) {
  .block-list {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2; } }

.block-list ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  gap: 10px; }
  @media only screen and (max-width: 450px) {
    .block-list ul {
      -ms-grid-columns: 100%;
      grid-template-columns: 100%; } }
  .block-list ul li {
    background: #ffffff;
    height: 100%;
    border-radius: 8px;
    -webkit-box-shadow: 0 0 5px rgba(176, 176, 176, 0.1);
    box-shadow: 0 0 5px rgba(176, 176, 176, 0.1);
    display: -ms-grid;
    display: grid;
    padding: clamp(10px, 1.6vw, 20px);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: clamp(14px, 0.9vw, 16px);
    text-align: center;
    -ms-flex-line-pack: start;
    align-content: flex-start; }
    .block-list ul li strong {
      display: block;
      font-size: clamp(15px, 1.2vw, 20px); }
    .block-list ul li img {
      height: 70px;
      width: auto;
      display: block;
      margin-inline: auto;
      margin-bottom: 10px; }

.visual-nav {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-bottom: 70px; }
  @media only screen and (max-width: 1000px) {
    .visual-nav {
      -ms-grid-columns: 100%;
      grid-template-columns: 100%; } }
  .visual-nav li {
    width: 100%; }
    .visual-nav li a {
      position: relative;
      text-decoration: none;
      aspect-ratio: 4/3;
      width: 100%;
      display: block;
      border-radius: 8px;
      overflow: hidden; }
      @media only screen and (max-width: 1000px) {
        .visual-nav li a {
          aspect-ratio: 2/1; } }
      .visual-nav li a img {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        -webkit-transition: .3s all ease;
        -o-transition: .3s all ease;
        transition: .3s all ease; }
      .visual-nav li a span {
        display: block;
        position: absolute;
        color: #ffffff;
        font-size: 28px;
        font-weight: 700;
        bottom: 0;
        left: 0;
        width: 100%;
        text-align: center;
        padding: 30px 15px;
        -webkit-transition: .3s all ease;
        -o-transition: .3s all ease;
        transition: .3s all ease; }
        @media only screen and (max-width: 1500px) {
          .visual-nav li a span {
            font-size: 24px; } }
        @media only screen and (max-width: 1300px) {
          .visual-nav li a span {
            padding: 15px 15px;
            font-size: 20px; } }
        .visual-nav li a span svg {
          fill: currentColor;
          width: 34px;
          aspect-ratio: 4/3;
          display: block;
          margin-inline: auto;
          margin-top: 20px; }
          @media only screen and (max-width: 1500px) {
            .visual-nav li a span svg {
              margin-top: 10px;
              width: 30px; } }
      .visual-nav li a:hover span, .visual-nav li a:active span, .visual-nav li a:focus span {
        color: #ea9438; }
      .visual-nav li a:hover img, .visual-nav li a:active img, .visual-nav li a:focus img {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1); }
