.stage-chip input {
  width: 1px !important;
  height: 1px !important
}

@media (max-width:1320px) {

  html,
  body {
    overflow-x: hidden
  }

  .oak-container {
    width: auto;
    max-width: none;
    margin-left: 18px;
    margin-right: 18px
  }

  .hero,
  .service-hero,
  .oak-section,
  .archive-hero,
  .related {
    height: auto !important;
    padding: 64px 0
  }

  .hero-grid,
  .hero-visual,
  .service-hero-grid,
  .split-grid,
  .split-grid.reverse,
  .section-head,
  .services-grid,
  .posts-grid,
  .process-steps,
  .contact-panel,
  .footer-grid {
    grid-template-columns: 1fr
  }

  .cards-grid,
  .services-home .services-grid,
  .posts-grid {
    grid-template-columns: 1fr 1fr;
  }

  .hero-grid,
  .service-hero-grid,
  .split-grid,
  .split-grid.reverse {
    gap: 36px
  }

  .hero-grid {
    height: auto
  }

  .split-grid.reverse .split-copy {
    order: 0
  }

  .hero-copy,
  .service-hero-copy,
  .split-copy,
  .split-visual {
    width: auto !important;
    padding-top: 0
  }

  .hero-visual {
    width: 100%;
    gap: 16px
  }

  .hero-main,
  .service-hero-image,
  .split-image {
    width: 100% !important;
    height: auto !important;
    min-height: 260px;
    object-fit: cover
  }

  .hero-tile {
    display: block;
    height: auto
  }

  .hero-statement {
    grid-column: auto
  }

  .section-head,
  .section-business-challenge .split-grid,
  .relevance-head {
    width: auto !important;
    height: auto !important;
    margin-bottom: 40px
  }

  .section-head h2,
  .section-head .lead,
  .section-business-challenge h2,
  .relevance-head h2,
  .section-business-value .section-head h2,
  .section-solutions-by-business-stage .section-head h2,
  .section-business-outcomes .section-head h2 {
    width: auto !important
  }

  .cards-section,
  .process-section,
  .relevance-section,
  .section-business-challenge,
  .section-business-value,
  .section-related-business-stages,
  .section-business-challenges,
  .section-solutions-by-business-stage,
  .section-typical-client-requests,
  .section-business-outcomes,
  .insights-section {
    height: auto !important;
    padding: 64px 0
  }

  .cards-grid,
  .posts-grid {
    gap: 18px
  }

  .card,
  .post-card,
  .blog .post-card,
  .blog .post-card-cta,
  .section-related-business-stages .card {
    height: auto !important;
    min-height: 0
  }

  .services-home {
    height: auto !important;
    padding: 18px 0
  }

  .services-home .services-panel,
  .services-panel {
    width: calc(100% - 20px);
    max-width: none;
    height: auto !important;
    margin: 0 auto;
    padding: 56px 22px;
    border-radius: 30px
  }

  .service-overview {
    height: auto !important;
    padding-bottom: 64px
  }

  .service-overview>.oak-container>.section-head {
    height: auto;
    padding-top: 64px
  }

  .service-anchors {
    height: auto;
    flex-wrap: wrap;
    margin-bottom: 42px
  }

  .service-overview .service-card {
    height: auto;
    min-height: 0
  }

  .services-home .service-card {
    height: auto;
    min-height: 0
  }

  .services-home .services-grid {
    grid-auto-rows: auto
  }

  .quote-card {
    height: auto
  }

  .process-wrap {
    height: auto !important;
    padding: 24px
  }

  .relevance-list {
    grid-template-columns: 1fr !important
  }

  .oak-cta,
  .page-template-default>.oak-cta {
    width: calc(100% - 20px);
    max-width: none;
    height: auto !important;
    margin-bottom: 20px;
    padding: 64px 24px
  }

  .cards-section.contact,
  .contact-image-section,
  .contact-form-section {
    height: auto !important;
    padding: 48px 0
  }

  .contact-image-section .contact-photo {
    height: auto
  }

  .contact-panel {
    width: calc(100% - 20px);
    max-width: none;
    height: auto !important;
    margin: 0 auto;
    padding: 44px 20px;
    gap: 36px
  }

  .contact-panel>* {
    min-width: 0
  }

  .contact-details div {
    grid-template-columns: 1fr;
    gap: 4px
  }

  .oak-form {
    width: 100% !important;
    padding: 24px
  }

  .form-row {
    grid-template-columns: 1fr !important
  }

  .blog .oak-section {
    height: auto !important;
    padding: 0 0 64px
  }

  .blog .posts-grid {
    grid-template-columns: 1fr !important;
    grid-auto-rows: auto
  }

  .archive-hero .section-head {
    height: auto
  }

  .article-page {
    padding-bottom: 0
  }

  .article-header {
    width: auto;
    max-width: none;
    height: auto !important;
    margin: 0 18px;
    padding: 64px 0 42px
  }

  .article-header h1 {
    font-size: 38px
  }

  .article-meta {
    flex-wrap: wrap;
    gap: 10px 18px
  }

  .article-hero-image {
    width: calc(100% - 36px);
    max-width: none;
    height: auto;
    margin: 0 18px 0
  }

  .article-content {
    width: auto;
    height: auto !important;
    max-width: none;
    margin: 56px 18px 24px
  }

  .article-mid-image,
  .article-steps,
  .article-table,
  .article-content blockquote {
    width: 100% !important;
    max-width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important
  }

  .article-mid-image {
    height: auto !important
  }

  .article-steps {
    grid-template-columns: 1fr
  }

  .article-table-head,
  .article-table-row {
    grid-template-columns: 1fr
  }

  .article-share {
    height: auto !important;
    padding: 40px 18px
  }

  .article-share>div {
    width: auto
  }

  .related {
    height: auto !important
  }

  .thank-card {
    width: calc(100% - 32px);
    height: auto !important;
    min-height: 0;
    margin: 32px auto;
    padding: 64px 24px
  }

  .thank-card:before {
    display: none
  }

  .not-found {
    height: auto;
    min-height: 620px;
    padding: 64px 18px
  }

  .site-footer {
    height: auto;
    overflow: visible;
    padding: 64px 0 32px
  }

  .oak-modal.open {
    padding: 15px
  }

  .oak-modal-dialog {
    width: 100%;
    height: auto;
    padding: 38px 24px
  }

  .oak-modal-close {
    right: 20px;
    top: 20px
  }

  .oak-modal-copy h2,
  .oak-modal-copy p,
  .oak-modal .oak-form {
    width: 100%;
    height: auto
  }

  .oak-modal-copy h2 {
    padding-right: 32px;
    font-size: 30px;
    line-height: 1.15
  }

  .service-overview>.oak-container>.section-head {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

@media (max-width: 992px) {

  .cards-grid,
  .services-home .services-grid,
  .posts-grid {
    display: flex;
    flex-direction: column;
  }

  .section-get-in-touch {
    margin: 50px 0 0 0;
  }

  .contact-image-section {
    padding: 24px 0;
  }

  .insights-section .insights-head, .section-business-challenge .split-grid {
    grid-template-columns: 1fr;
  }

  .section-business-challenge .split-grid {
    gap: 30px;
  }

  .service-overview .service-card p {
    margin: 10px 0 0 20px;
  }

  .service-hero-copy h1 {
    font-size: 44px;
  }
}

@media (max-width:580px) {
  h1, .service-overview .section-head h1, .service-hero-copy h1 {
    font-size: 38px
  }

  h2, .contact-copy h2, .relevance-head h2, .section-business-challenge .split-copy h2 {
    font-size: 34px
  }

  .service-card h3 {
    font-size: 25px
  }

  .hero {
    margin: 60px 0 0 0;
  }

  .hero-actions {
    gap: 16px
  }

  .oak-button,
  .text-link {
    white-space: pre-wrap;
  }

  .oak-button.section-button {
    width: 100%;
    max-width: 100%;
    justify-content: center;
    padding-left: 18px;
    white-space: normal
  }

  .stage-chip input {
    width: 1px !important;
    height: 1px !important
  }

  .section-business-challenge .quote-card {
    width: auto !important
  }

  .process-inner h2 {
    width: auto !important
  }

  .post-card img {
    height: auto
  }

  .hero-tile {
    display: none
  }

  .feature-list {
    height: auto;
    grid-template-columns: 1fr;
    grid-template-rows: none;
    grid-auto-flow: row;
    gap: 0
  }

  .feature-item {
    height: auto;
    min-height: 94px
  }

  .hero,
  .service-hero,
  .oak-section,
  .archive-hero,
  .related {
    height: auto !important;
    padding: 34px 0
  }

  .section-typical-client-requests .card {
    padding: 10px 0;
  }

  .section-business-outcomes .card {
    padding: 10px 0;
  }

  .section-business-outcomes .cards-grid {
    grid-auto-rows: auto;
  }

  .tag {
    font-size: 10px;
  }
}