/* =======================================================
   DUB FACTORY STUDIOS
   MOBILE / RESPONSIVE OVERRIDES
======================================================= */

/* =======================================================
   LARGE TABLETS
======================================================= */

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

  .dfs-pricing-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .dfs-card-grid {
    gap: 24px;
  }
}

/* =======================================================
   TABLETS / SMALL LAPTOPS
======================================================= */

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

  /* NAV */

  .fh5co-nav ul li a {
    padding: 12px 7px;
    font-size: 12px;
  }

  .fh5co-nav ul li.auth-link > a,
  .fh5co-nav ul li.auth-link > a.dfs-nav-pill {

    min-width: 70px;

    padding: 0 12px;

    font-size: 9px;
  }

  /* HERO */

  .dfs-hero h1,
  #fh5co-header .display-tc h1 {
    font-size: 54px;
  }

  /* SECTION HEADINGS */

  .dfs-section-heading h2 {
    font-size: 42px;
  }

  /* CARDS */

  .dfs-card-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* ACCOUNT */

  .dfs-account-card-grid {
    grid-template-columns: 1fr;
  }
}

/* =======================================================
   MOBILE
======================================================= */

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

  /* NAV */

  .fh5co-nav {
    padding: 18px 0;
  }

  .fh5co-nav .nav-row {
    justify-content: space-between;
  }

  .fh5co-nav .menu-1 {
    display: none !important;
  }

  #fh5co-logo img {
    max-width: 175px;
  }

  .fh5co-nav-toggle {
    display: block;
  }

  #fh5co-offcanvas {
    display: block;
  }

  /* HERO */

  .dfs-hero,
  #fh5co-header.fh5co-cover {
    min-height: auto;
  }

  .dfs-hero {
    padding: 130px 0 90px;
  }

  .dfs-hero:before,
  .fh5co-cover .overlay {
    background: rgba(0,0,0,0.65);
  }

  .dfs-hero-content,
  .fh5co-cover .display-tc {
    padding: 80px 24px;
  }

  .dfs-hero h1,
  #fh5co-header .display-tc h1 {
    font-size: 42px;
  }

  .dfs-hero p,
  #fh5co-header .display-tc h2 {
    font-size: 18px;
    line-height: 1.8;
  }

  .dfs-kicker {
    letter-spacing: 3px;
    font-size: 11px;
  }

  /* INTERIOR HERO */

  .dfs-page-hero {
    padding: 70px 20px 55px;
  }

  .dfs-page-hero h1 {
    font-size: 38px;
  }

  /* SECTIONS */

  .dfs-section {
    padding: 70px 20px;
  }

  .dfs-section-heading {
    margin-bottom: 46px;
  }

  .dfs-section-heading h2 {
    font-size: 34px;
  }

  .dfs-section-heading p {
    font-size: 16px;
    line-height: 1.8;
  }

  /* CARDS */

  .dfs-card-grid,
  .dfs-pricing-grid {
    grid-template-columns: 1fr;
  }

  .dfs-card,
  .dfs-price-card {
    padding: 30px 24px;
  }

  /* BUTTONS */

  .btn,
  .dfs-btn,
  .btn-primary,
  .btn-outline,
  .dfs-btn-primary,
  .dfs-btn-outline {

    width: 100%;

    margin-top: 12px;
    margin-left: 0 !important;

    text-align: center;
  }

  /* FORMS */

  .dfs-contact-page {
    padding: 70px 20px;
  }

  .dfs-contact-wrap h1 {
    font-size: 38px;
  }

  .dfs-contact-form {

    grid-template-columns: 1fr;

    padding: 30px 24px;
  }

  .dfs-contact-submit {
    width: 100%;
  }

  .dfs-inline-fields {
    flex-direction: column;
    align-items: stretch;
  }

  /* ACCOUNT */

  .dfs-account-panel {
    padding: 30px 24px;
  }

  .dfs-profile-row {

    grid-template-columns: 1fr;

    gap: 10px;

    padding: 16px 0;
  }

  .dfs-small-btn {
    width: 100%;
  }

  /* LEGAL */

  .dfs-legal-page,
  .tdf-legal-page {
    padding: 70px 20px;
  }

  .dfs-legal-page h1,
  .tdf-legal-page h1 {
    font-size: 38px;
  }

  .dfs-legal-content,
  .tdf-legal-content {
    padding: 32px 24px;
  }

  .dfs-legal-content h2,
  .tdf-legal-content h2 {
    font-size: 22px;
  }

  .dfs-legal-content p,
  .dfs-legal-content li,
  .tdf-legal-content p,
  .tdf-legal-content li {
    font-size: 15px;
    line-height: 1.8;
  }

  /* FOOTER */

  #fh5co-footer {
    padding: 48px 20px 32px;
  }

  .fh5co-social-icons {
    flex-wrap: wrap;
  }

  .dfs-footer-links a,
  .tdf-footer-links a {
    display: inline-block;
    margin: 6px 8px;
  }

  .dfs-footer-links span,
  .tdf-footer-links span {
    display: none;
  }
}

/* =======================================================
   SMALL MOBILE
======================================================= */

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

  /* HERO */

  .dfs-hero h1,
  #fh5co-header .display-tc h1 {
    font-size: 34px;
  }

  .dfs-hero p,
  #fh5co-header .display-tc h2 {
    font-size: 16px;
  }

  /* SECTION HEADINGS */

  .dfs-section-heading h2 {
    font-size: 28px;
  }

  /* PAGE HERO */

  .dfs-page-hero h1 {
    font-size: 32px;
  }

  /* PRICING */

  .dfs-price {
    font-size: 34px;
  }

  /* BUTTONS */

  .btn,
  .dfs-btn,
  .btn-primary,
  .btn-outline,
  .dfs-btn-primary,
  .dfs-btn-outline {
    padding: 15px 24px;
    font-size: 13px;
  }

  /* FORMS */

  .dfs-contact-form,
  .dfs-account-panel,
  .dfs-legal-content,
  .tdf-legal-content {
    padding: 24px 20px;
  }
}