body.marketing-agency h1,
body.marketing-agency h2,
body.marketing-agency h3,
body.marketing-agency h4,
body.marketing-agency h5,
body.marketing-agency h6 {
  font-family: "Unbounded", sans-serif;
}

body.marketing-agency p {
  color: #c2c2c2;
}

body.marketing-agency p .opacity-7 {
  opacity: 0.85;
}

.portfolio-crev .item .bg-img .link-overlay {
  z-index: 3;
}

#projects.portfolio-crev .item .bg-img .cont {
  background: rgba(255, 255, 255, 0.8) !important;
}

#projects.portfolio-crev .item .bg-img .cont h5,
#projects.portfolio-crev .item .bg-img .cont span {
  background: transparent !important;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Deep-link entry: keep page hidden until scrolled past hero */
html.await-hash-scroll {
  background: #171717;
}

html.await-hash-scroll body {
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Hero shell: avoid blank flash while Revolution is still display:none */
#home.home-hero,
#home .rev_slider_wrapper {
  min-height: 100vh;
  background-color: #eef0f1;
}

.u-section-2 {
      background-image: linear-gradient(to bottom, #FF6A3A, #7C1B00);
      min-height: 0;
    }

    .u-section-2 .u-shape-1 {
      height: 219px;
      margin-top: 0;
      margin-bottom: 0;
      background-color: #000;
    }

    .u-section-2 .u-list-1 {
      width: 100%;
      max-width: 1140px;
      margin: -149px auto 0;
    }

    .u-section-2 .u-repeater-1 {
      grid-template-columns: repeat(2, calc(25% - 15.75px));
      justify-content: center;
      align-items: start;
      min-height: 0;
      grid-gap: 21px;
    }

    .u-section-2 .u-list-item-1 {
      background-image: none;
      box-shadow: 5px 5px 20px 0 rgba(0, 0, 0, 0.4);
    }

    .u-section-2 .u-container-layout-1 {
      padding: 30px;
    }

    .u-section-2 .u-icon-1 {
      height: 64px;
      width: 64px;
      margin: 0 auto;
    }

    .u-section-2 .u-text-1 {
      text-transform: uppercase;
      font-weight: 700;
      margin: 20px 0 0;
    }

    .u-section-2 .u-text-2 {
      margin: 19px 0 0;
    }

    .u-section-2 .u-list-item-2 {
      background-image: none;
      box-shadow: 5px 5px 20px 0 rgba(0, 0, 0, 0.4);
    }

    .u-section-2 .u-container-layout-2 {
      padding: 30px;
      height: auto;
      min-height: 0;
    }

    .u-section-2 .u-icon-2 {
      height: 64px;
      width: 64px;
      margin: 0 auto;
    }

    .u-section-2 .u-text-3 {
      text-transform: uppercase;
      font-weight: 700;
      margin: 20px 0 0;
    }

    .u-section-2 .u-text-4 {
      margin: 19px 0 0;
      color: #909090;
    }

    .u-section-2 .u-list-item-3 {
      background-image: none;
      box-shadow: 5px 5px 20px 0 rgba(0, 0, 0, 0.4);
    }

    .u-section-2 .u-container-layout-3 {
      padding: 30px;
    }

    .u-section-2 .u-icon-3 {
      height: 64px;
      width: 64px;
      margin: 0 auto;
    }

    .u-section-2 .u-text-5 {
      text-transform: uppercase;
      font-weight: 700;
      margin: 20px 0 0;
    }

    .u-section-2 .u-text-6 {
      margin: 19px 0 0;
    }

    .u-section-2 .u-list-item-4 {
      background-image: none;
      box-shadow: 5px 5px 20px 0 rgba(0, 0, 0, 0.4);
    }

    .u-section-2 .u-container-layout-4 {
      padding: 30px;
      height: auto;
      min-height: 0;
    }

    .u-section-2 .u-icon-4 {
      height: 64px;
      width: 64px;
      margin: 0 auto;
    }

    .u-section-2 .u-text-7 {
      text-transform: uppercase;
      font-weight: 700;
      margin: 20px 0 0;
    }

    .u-section-2 .u-text-8 {
      margin: 19px 0 0;
    }

    .u-section-2 .u-btn-1 {
      border-style: none none solid;
      padding: 0;
    }

    .u-section-2 .u-layout-wrap-1 {
      width: 100%;
      max-width: 1140px;
      margin: 23px auto 60px;
    }

    .u-section-2 .u-layout-cell-1 {
      min-height: 471px;
    }

    .u-section-2 .u-container-layout-5 {
      padding: 30px;
    }

    .u-section-2 .u-form-1 {
      margin: 0;
    }

    .u-section-2 .u-form-group-1 {
      width: 100%;
    }

    .u-section-2 .u-label-1 {
      font-weight: 700;
    }

    .u-section-2 .u-form-group-2 {
      width: 100%;
    }

    .u-section-2 .u-label-2 {
      font-weight: 700;
    }

    .u-section-2 .u-form-group-3 {
      width: 100%;
    }

    .u-section-2 .u-label-3 {
      font-weight: 700;
    }

    .u-section-2 .u-form-group-4 {
      width: 100%;
    }

    .u-section-2 .u-btn-2 {
      background-image: none;
      border-style: none;
      text-transform: uppercase;
      font-weight: 700;
      letter-spacing: 3px;
      width: 100%;
      padding: 14px 30px 15px;
    }

    .u-section-2 .u-layout-cell-2 {
      min-height: 0;
      width: 100%;
      margin-left: auto;
      margin-right: auto;
    }

    .u-section-2 .u-container-layout-6 {
      padding: 30px;
      text-align: center;
      display: flex;
      flex-direction: column;
      align-items: center;
    }

    .u-section-2 .u-text-9 {
      margin-left: auto;
      margin-right: auto;
      text-align: center;
    }

    .u-section-2 .u-text-10 {
      font-weight: 700;
      line-height: 1.8;
      font-style: italic;
      font-size: 1.125rem;
      margin: 20px auto 0;
      text-align: center;
    }

    .u-section-2 .u-text-11 {
      line-height: 2;
      font-size: 1rem;
      margin: 20px auto 0;
      text-align: center;
      max-width: 640px;
      width: 100%;
    }

    .u-section-2 .u-social-icons-1 {
      white-space: nowrap;
      height: 41px;
      min-height: 16px;
      width: auto;
      min-width: 0;
      margin: 39px auto 0;
    }

    .u-section-2 .u-icon-5 {
      height: 100%;
    }

    .u-section-2 .u-icon-6 {
      height: 100%;
    }

    .u-section-2 .u-icon-7 {
      height: 100%;
    }

    .u-section-2 .u-icon-8 {
      height: 100%;
    }

    @media (max-width: 1199px) {
      .u-section-2 {
        min-height: 0;
      }

      .u-section-2 .u-list-1 {
        width: 100%;
        max-width: 940px;
      }

      .u-section-2 .u-repeater-1 {
        min-height: 0;
      }

      .u-section-2 .u-container-layout-1 {
        padding-left: 20px;
        padding-right: 20px;
      }

      .u-section-2 .u-container-layout-2 {
        padding-left: 20px;
        padding-right: 20px;
      }

      .u-section-2 .u-container-layout-3 {
        padding-left: 20px;
        padding-right: 20px;
      }

      .u-section-2 .u-container-layout-4 {
        padding-left: 20px;
        padding-right: 20px;
      }

      .u-section-2 .u-layout-wrap-1 {
        width: 100%;
        max-width: 940px;
        margin-left: auto;
        margin-right: auto;
      }

      .u-section-2 .u-layout-cell-1 {
        min-height: 388px;
      }

      .u-section-2 .u-layout-cell-2 {
        min-height: 0;
      }

      .u-section-2 .u-text-9 {
        margin-left: auto;
        margin-right: auto;
        font-size: 3rem;
      }
    }

    @media (max-width: 991px) {
      .u-section-2 {
        min-height: 0;
      }

      .u-section-2 .u-list-1 {
        width: 100%;
        max-width: 720px;
      }

      .u-section-2 .u-repeater-1 {
        grid-template-columns: repeat(2, calc(50% - 10.5px));
        justify-content: center;
        align-items: start;
        min-height: 0;
      }

      .u-section-2 .u-container-layout-1 {
        padding-left: 30px;
        padding-right: 30px;
      }

      .u-section-2 .u-container-layout-2 {
        padding-left: 30px;
        padding-right: 30px;
      }

      .u-section-2 .u-container-layout-3 {
        padding-left: 30px;
        padding-right: 30px;
      }

      .u-section-2 .u-container-layout-4 {
        padding-left: 30px;
        padding-right: 30px;
      }

      .u-section-2 .u-layout-wrap-1 {
        width: 100%;
        max-width: 720px;
        margin-top: 30px;
        margin-bottom: 60px;
        margin-left: auto;
        margin-right: auto;
      }

      .u-section-2 .u-layout-cell-1 {
        min-height: 100px;
      }

      .u-section-2 .u-container-layout-5 {
        padding-left: 0;
      }

      .u-section-2 .u-layout-cell-2 {
        min-height: 0;
      }

      .u-section-2 .u-container-layout-6 {
        padding: 30px;
        text-align: center;
        align-items: center;
      }
    }

    @media (max-width: 767px) {
      .u-section-2 {
        min-height: 0;
      }

      .u-section-2 .u-list-1 {
        width: 100%;
        max-width: 540px;
      }

      .u-section-2 .u-container-layout-1 {
        padding-left: 20px;
        padding-right: 20px;
      }

      .u-section-2 .u-container-layout-2 {
        padding-left: 20px;
        padding-right: 20px;
      }

      .u-section-2 .u-container-layout-3 {
        padding-left: 20px;
        padding-right: 20px;
      }

      .u-section-2 .u-container-layout-4 {
        padding-left: 20px;
        padding-right: 20px;
      }

      .u-section-2 .u-layout-wrap-1 {
        width: 100%;
        max-width: 540px;
        margin-bottom: 60px;
        margin-left: auto;
        margin-right: auto;
      }

      .u-section-2 .u-container-layout-5 {
        padding-left: 20px;
        padding-right: 20px;
      }

      .u-section-2 .u-container-layout-6 {
        padding: 20px;
        text-align: center;
        align-items: center;
      }
    }

    @media (max-width: 575px) {
      .u-section-2 {
        min-height: 0;
      }

      .u-section-2 .u-list-1 {
        width: 100%;
        max-width: 340px;
      }

      .u-section-2 .u-repeater-1 {
        grid-template-columns: minmax(0, 280px);
        justify-content: center;
      }

      .u-section-2 .u-container-layout-1 {
        padding-left: 30px;
        padding-right: 30px;
      }

      .u-section-2 .u-container-layout-2 {
        padding-left: 30px;
        padding-right: 30px;
      }

      .u-section-2 .u-container-layout-3 {
        padding-left: 30px;
        padding-right: 30px;
      }

      .u-section-2 .u-container-layout-4 {
        padding-left: 30px;
        padding-right: 30px;
      }

      .u-section-2 .u-layout-wrap-1 {
        width: 100%;
        max-width: 340px;
        margin-bottom: 60px;
        margin-left: auto;
        margin-right: auto;
      }

      .u-section-2 .u-text-9 {
        font-size: 1.875rem;
        margin-left: auto;
        margin-right: auto;
      }

      .u-section-2 .u-container-layout-6 {
        padding: 20px 16px;
        text-align: center;
        align-items: center;
      }
    }

/* Nicepage .u-body overrides Main body — restore dark theme */
    body.startup-agency.u-body,
    body.startup-agency {
      background: #171717;
      color: #fff;
    }

    body.startup-agency .sub-bg {
      background: #1f1f1f;
      color: #fff;
    }

    body.startup-agency h1,
    body.startup-agency h2,
    body.startup-agency h3,
    body.startup-agency h4,
    body.startup-agency h5,
    body.startup-agency h6 {
      font-family: "Unbounded", sans-serif;
      /* inherit section/card color (white on dark, dark on light cards) */
      color: inherit;
    }

    body.startup-agency h1>span:not(.main-color):not(.nocolor):not(.badge),
    body.startup-agency h2>span:not(.main-color):not(.nocolor):not(.badge),
    body.startup-agency h3>span:not(.main-color):not(.nocolor):not(.badge),
    body.startup-agency h4>span:not(.main-color):not(.nocolor):not(.badge),
    body.startup-agency h5>span:not(.main-color):not(.nocolor):not(.badge),
    body.startup-agency h6>span:not(.main-color):not(.nocolor):not(.badge) {
      color: inherit;
    }

    body.startup-agency .main-color {
      color: #FF6A3A;
    }

    body.startup-agency .bg-main-color {
      background: #FF6A3A;
    }

    /* Nicepage used Montserrat/Open Sans — remap to Poppins (sizes unchanged) */
    body.u-body,
    #contact,
    #contact p,
    #contact a,
    #contact span:not(.letter),
    #contact .u-text,
    #contact .u-btn-1 {
      font-family: "Poppins", sans-serif;
    }

    /* Contact headings stay Unbounded via body.startup-agency h* rules above */

    /* About / Projects — readable light text on dark backgrounds */
    #about,
    #projects,
    #contact .sec-head-stand,
    #about .sm-title-dot,
    #projects .sm-title-dot,
    #contact .sm-title-dot {
      color: #fff;
    }

    #contact > .container {
      position: relative;
      z-index: 2;
      padding-top: 40px;
      max-width: none;
      width: 100%;
    }

    /* Keep Contact title band + black shape the same solid black */
    #contact,
    #contact > .container,
    #contact .u-shape-1,
    #contact .u-shape-1.u-grey-5 {
      background-color: #000 !important;
    }

    #contact .sec-head-stand {
      text-align: center;
      width: 100%;
      margin-bottom: 0;
      padding-top: 70px;
    }

    #contact .sec-head-stand .sm-title-dot {
      display: inline-block;
    }

    #contact .sec-head-stand .fs-50 {
      color: #fff;
    }

    /* About cards: dark slides white; light/orange keep their own colors */
    #about .testim-swiper .swiper-slide:not(.bg-light):not(.bg-main-color) {
      background: #3d3d3d;
      box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
    }

    #about .testim-swiper .swiper-slide.bg-light,
    #about .testim-swiper .swiper-slide.bg-main-color {
      box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
    }

    #about .testim-swiper .swiper-slide p,
    #about .testim-swiper .swiper-slide .fs-14 {
      color: #fff !important;
    }

    #about .testim-swiper .swiper-slide.bg-light p,
    #about .testim-swiper .swiper-slide.bg-light .fs-14 {
      color: #4d4d4d !important;
    }

    #about .testim-swiper .swiper-slide.bg-main-color p,
    #about .testim-swiper .swiper-slide.bg-main-color .fs-14 {
      color: #000 !important;
    }

    #about .testim-swiper .swiper-slide:not(.bg-light):not(.bg-main-color),
    #about .testim-swiper .swiper-slide:not(.bg-light):not(.bg-main-color) h6,
    #about .swiper-contr-style3 .swiper-button-prev,
    #about .swiper-contr-style3 .swiper-button-next {
      color: #fff !important;
    }

    #about .swiper-contr-style3 .swiper-button-prev,
    #about .swiper-contr-style3 .swiper-button-next {
      border-color: rgba(255, 255, 255, 0.25);
    }

    #about .swiper-contr-style3 .swiper-button-prev:hover,
    #about .swiper-contr-style3 .swiper-button-next:hover {
      background: rgba(255, 255, 255, 0.1);
      color: #fff !important;
    }

    #about .bg-light,
    #about .bg-main-color {
      color: #000;
    }

    #about .info-text .ml-15px {
      margin-left: 0 !important;
      padding-left: 0 !important;
    }

    #about .info-text {
      padding-left: 0;
    }

    #about .info-text .fs-14 {
      font-weight: 700;
    }

    #about .about-resume-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      margin-top: 28px;
      min-height: 48px;
      padding: 0 24px;
      border: 1px solid rgba(255, 255, 255, 0.42);
      border-radius: 999px;
      color: #fff;
      font-family: "Poppins", sans-serif;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 1px;
      line-height: 1;
      text-transform: uppercase;
      transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;
    }

    #about .about-resume-button:hover,
    #about .about-resume-button:focus {
      background-color: #fff;
      border-color: #fff;
      color: #000;
    }

    #about > .container > .row {
      padding-top: 40px;
    }

    #projects .sm-title-dot {
      padding-top: 40px;
    }

    @media (max-width: 768px) {
      #projects,
      #about {
        padding-top: 70px !important;
      }

      #projects .portfolio-crev .item .bg-img .cont,
      .portfolio-crev .item .bg-img .cont {
        opacity: 1;
        visibility: visible;
      }

      #projects .portfolio-crev .item .bg-img .cont h5,
      #projects .portfolio-crev .item .bg-img .cont span,
      .portfolio-crev .item .bg-img .cont h5,
      .portfolio-crev .item .bg-img .cont span {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        opacity: 1;
      }
    }

    /* Hero: no section padding (avoids white gap before projects) */
    #slider {
      padding-top: 0;
      padding-bottom: 0;
      margin: 0;
    }

    #wrapper {
      background-color: transparent;
      box-shadow: none;
    }

    /* Let card drag work — full-width controls were eating pointer events */
    .testim-style3 .swiper-controls {
      pointer-events: none;
    }

    .testim-style3 .swiper-controls .swiper-button-prev,
    .testim-style3 .swiper-controls .swiper-button-next {
      pointer-events: auto;
    }

    /* Contact: strip Main section padding (was leaving black space below) */
    #contact {
      padding-top: 0 !important;
      padding-bottom: 0 !important;
      margin: 0;
      overflow: visible;
    }

    #contact .u-section-2 {
      min-height: 0;
      margin-bottom: 0;
      padding-bottom: 0;
    }

    /* Keep Let's Talk block centered at all breakpoints */
    #contact .u-layout-wrap-1 {
      width: 100% !important;
      max-width: 1140px;
      margin-left: auto !important;
      margin-right: auto !important;
      margin-bottom: 40px !important;
    }

    #contact .u-container-layout-6 {
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      box-sizing: border-box;
      padding-bottom: 50px;
    }

    #contact .u-text-9,
    #contact .u-text-10,
    #contact .u-text-11 {
      margin-left: auto !important;
      margin-right: auto !important;
      text-align: center;
    }

    #contact .u-text-11 {
      padding-bottom: 80px;
    }

    #contact .u-social-icons-1 {
      width: auto !important;
      min-width: 0 !important;
      margin-left: auto !important;
      margin-right: auto !important;
    }

    #contact .u-text-7,
    #contact .u-text-3 {
      color: #111;
      transition: color 0.25s ease;
    }

    #contact .u-btn-1,
    #contact .u-btn-1.u-text-palette-1-base {
      color: #C74F3F !important;
      border: none !important;
      border-bottom: none !important;
      text-decoration: none !important;
      transition: color 0.25s ease;
      background: transparent !important;
      padding: 0 !important;
      display: inline;
    }

    #contact .contact-card {
      position: relative;
      cursor: pointer;
    }

    #contact .contact-card-link {
      position: absolute;
      inset: 0;
      z-index: 2;
      border-radius: 20px;
    }

    #contact .contact-card .u-icon img {
      transition: filter 0.25s ease;
    }

    /* Hover: terracotta (icon + address) ↔ black (EMAIL/MOBILE label) */
    #contact .contact-card:hover .u-icon img,
    #contact .contact-card:focus-within .u-icon img {
      filter: brightness(0) saturate(100%);
    }

    #contact .contact-card:hover .u-btn-1,
    #contact .contact-card:focus-within .u-btn-1 {
      color: #111 !important;
    }

    #contact .contact-card:hover .u-text-7,
    #contact .contact-card:hover .u-text-3,
    #contact .contact-card:focus-within .u-text-7,
    #contact .contact-card:focus-within .u-text-3 {
      color: #C74F3F !important;
    }

    /* ------------------------------------------------------------------
       Hero vs off-hero nav colors:
       - Hero → all labels always black (no hover required)
       - Projects / About / Contact → white by default; hover stays white
       - Rolling hover micro-interaction unchanged on all sections
       ------------------------------------------------------------------ */

    .navbar .navbar-nav .nav-link {
      font-family: "Unbounded", sans-serif;
      font-size: 14px;
      font-weight: 500;
    }

    .navbar .navbar-nav .nav-link .rolling-text {
      height: 32px;
      line-height: 32px;
    }

    /* Off-hero: always white (beats Bootstrap --bs-nav-link-hover-color) */
    .navbar.nav-off-hero .navbar-nav .nav-link,
    .navbar.nav-off-hero .navbar-nav .nav-link:hover,
    .navbar.nav-off-hero .navbar-nav .nav-link:focus,
    .navbar.nav-off-hero .navbar-nav .nav-link:active,
    .navbar.nav-off-hero .navbar-nav .nav-link:hover .rolling-text,
    .navbar.nav-off-hero .navbar-nav .nav-link:focus .rolling-text,
    .navbar.nav-off-hero .navbar-nav .nav-link:hover .block,
    .navbar.nav-off-hero .navbar-nav .nav-link:focus .block,
    .navbar.nav-off-hero .navbar-nav .nav-link:hover .letter,
    .navbar.nav-off-hero .navbar-nav .nav-link:focus .letter,
    .navbar.nav-off-hero .navbar-nav .rolling-text:hover,
    .navbar.nav-off-hero .navbar-nav .rolling-text:hover .block,
    .navbar.nav-off-hero .navbar-nav .rolling-text:hover .letter,
    .navbar:not(.nav-on-hero) .navbar-nav .nav-link,
    .navbar:not(.nav-on-hero) .navbar-nav .nav-link:hover,
    .navbar:not(.nav-on-hero) .navbar-nav .nav-link:focus,
    .navbar:not(.nav-on-hero) .navbar-nav .nav-link:hover .rolling-text,
    .navbar:not(.nav-on-hero) .navbar-nav .nav-link:hover .block,
    .navbar:not(.nav-on-hero) .navbar-nav .nav-link:hover .letter,
    .navbar:not(.nav-on-hero) .navbar-nav .rolling-text:hover .letter {
      color: #fff !important;
    }

    /* Hero: always black — base + hover/focus (rolling animation unchanged) */
    .navbar.nav-on-hero .navbar-nav .nav-link,
    .navbar.nav-on-hero .navbar-nav .nav-link:hover,
    .navbar.nav-on-hero .navbar-nav .nav-link:focus,
    .navbar.nav-on-hero .navbar-nav .nav-link:active,
    .navbar.nav-on-hero .navbar-nav .nav-link .rolling-text,
    .navbar.nav-on-hero .navbar-nav .nav-link .block,
    .navbar.nav-on-hero .navbar-nav .nav-link .letter,
    .navbar.nav-on-hero .navbar-nav .nav-link:hover .rolling-text,
    .navbar.nav-on-hero .navbar-nav .nav-link:hover .block,
    .navbar.nav-on-hero .navbar-nav .nav-link:hover .letter,
    .navbar.nav-on-hero .navbar-nav .rolling-text:hover,
    .navbar.nav-on-hero .navbar-nav .rolling-text:hover .block,
    .navbar.nav-on-hero .navbar-nav .rolling-text:hover .letter {
      color: #000 !important;
    }

    /* Only the hovered nav-link rolls; siblings stay put */
    .navbar.nav-on-hero .navbar-nav .nav-link:not(:hover) .rolling-text .letter {
      -webkit-transform: none;
      -ms-transform: none;
      transform: none;
    }

    .navbar.nav-on-hero .navbar-nav .nav-link:hover .rolling-text .letter {
      -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
      transform: translateY(-100%);
    }

    /* Slider captions keep their own inline fonts/colors */
    #slider h1,
    #slider h2,
    #slider h3,
    #slider h4,
    #slider h5,
    #slider h6,
    #slider .tp-caption {
      font-family: inherit;
      color: inherit;
    }

/* Project detail pages — previous / next navigation */
.project-page-nav {
  padding-top: 0 !important;
  padding-bottom: 100px;
}

body.marketing-agency .project-tight-section {
  padding-top: 30px;
}

@media (min-width: 992px) {
  body.marketing-agency .project-top-text-align,
  body.marketing-agency .project-top-media-align,
  body.marketing-agency .project2-top-text-align,
  body.marketing-agency .project2-top-media-align {
    padding-left: 15px;
  }
}

body.marketing-agency .project-tight-section .project-image-grid,
body.marketing-agency .project-image-grid--same-spacing {
  --bs-gutter-x: 20px;
  --bs-gutter-y: 20px;
  margin-left: -10px !important;
  margin-right: -10px !important;
}

body.marketing-agency .project-tight-section .project-image-grid > [class*="col-"],
body.marketing-agency .project-image-grid--same-spacing > [class*="col-"] {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

body.marketing-agency .project-tight-section .project-image-grid > [class*="col-"] > .fit-img,
body.marketing-agency .project-image-grid--same-spacing > [class*="col-"] > .fit-img {
  margin-top: 20px !important;
}

@media (min-width: 768px) {
  body.marketing-agency .project-tight-section .project-image-grid,
  body.marketing-agency .project-image-grid--same-spacing {
    flex-wrap: nowrap;
    overflow: visible;
  }

  body.marketing-agency .project-tight-section .project-image-grid > [class*="col-"],
  body.marketing-agency .project-image-grid--same-spacing > [class*="col-"] {
    flex: 1 1 0;
    max-width: none;
    width: auto;
    transition: flex 0.45s ease;
  }

  body.marketing-agency .project-tight-section .project-image-grid--game > .project-game-image--small {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
    width: 16.666667%;
  }

  body.marketing-agency .project-tight-section .project-image-grid--game > .project-game-image--large {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
    width: 83.333333%;
  }

  body.marketing-agency .project-tight-section .project-image-grid > [class*="col-"] > .fit-img,
  body.marketing-agency .project-image-grid--same-spacing > [class*="col-"] > .fit-img {
    position: relative;
    transition: box-shadow 0.45s ease, transform 0.45s ease;
  }

  body.marketing-agency .project-tight-section .project-image-grid > [class*="col-"] > .fit-img img,
  body.marketing-agency .project-image-grid--same-spacing > [class*="col-"] > .fit-img img {
    transition: transform 0.45s ease;
  }

  body.marketing-agency .project-tight-section .project-image-grid--expand > [class*="col-"]:hover {
    flex-grow: 1.7;
    z-index: 2;
  }

  body.marketing-agency .project-tight-section .project-image-grid--selective-expand > .project-image-grid__expand-item:hover,
  body.marketing-agency .project-image-grid--same-spacing.project-image-grid--selective-expand > .project-image-grid__expand-item:hover {
    flex-grow: 1.9;
    z-index: 2;
  }

  body.marketing-agency .project-tight-section .project-image-grid--selective-expand:has(.project-image-grid__expand-item:hover) > [class*="col-"]:not(:hover),
  body.marketing-agency .project-image-grid--same-spacing.project-image-grid--selective-expand:has(.project-image-grid__expand-item:hover) > [class*="col-"]:not(:hover) {
    flex: 0.9 1 0;
  }

  body.marketing-agency .project-tight-section .project-image-grid--expand > [class*="col-"]:hover > .fit-img {
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.3);
    transform: translateY(-8px);
  }

  body.marketing-agency .project-tight-section .project-image-grid--selective-expand > .project-image-grid__expand-item:hover > .fit-img,
  body.marketing-agency .project-image-grid--same-spacing.project-image-grid--selective-expand > .project-image-grid__expand-item:hover > .fit-img {
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.3);
    transform: none;
  }

  body.marketing-agency .project-tight-section .project-image-grid--expand > [class*="col-"]:hover > .fit-img img {
    transform: scale(1.01);
  }

  body.marketing-agency .project-tight-section .project-image-grid--selective-expand > .project-image-grid__expand-item:hover > .fit-img img,
  body.marketing-agency .project-image-grid--same-spacing.project-image-grid--selective-expand > .project-image-grid__expand-item:hover > .fit-img img {
    width: 100% !important;
    height: 100%;
    object-fit: cover;
    transform: none;
  }

  body.marketing-agency .project-tight-section .project-image-grid--auto-expand > [class*="col-"],
  body.marketing-agency .project-image-grid--same-spacing.project-image-grid--auto-expand > [class*="col-"] {
    flex: 1 1 0;
    min-width: 0;
    max-width: none;
    width: auto;
    transition: flex 0.45s ease;
  }

  body.marketing-agency .project-tight-section .project-image-grid--auto-expand > [class*="col-"]:hover,
  body.marketing-agency .project-image-grid--same-spacing.project-image-grid--auto-expand > [class*="col-"]:hover {
    flex: 2.6 1 0;
    z-index: 2;
  }

  body.marketing-agency .project-tight-section .project-image-grid--auto-expand:has([class*="col-"]:hover) > [class*="col-"]:not(:hover),
  body.marketing-agency .project-image-grid--same-spacing.project-image-grid--auto-expand:has([class*="col-"]:hover) > [class*="col-"]:not(:hover) {
    flex: 0.45 1 0;
  }

  body.marketing-agency .project-tight-section .project-image-grid--auto-expand > [class*="col-"]:hover > .fit-img,
  body.marketing-agency .project-image-grid--same-spacing.project-image-grid--auto-expand > [class*="col-"]:hover > .fit-img {
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.3);
    transform: none;
  }

  body.marketing-agency .project-tight-section .project-image-grid--auto-expand > [class*="col-"]:hover > .fit-img img,
  body.marketing-agency .project-image-grid--same-spacing.project-image-grid--auto-expand > [class*="col-"]:hover > .fit-img img {
    width: 100% !important;
    height: 100%;
    object-fit: cover;
    transform: none;
  }

  body.marketing-agency .project-tight-section .project-image-grid--natural-width > [class*="col-"]:hover {
    flex: var(--hover-flex, 1.2) 1 0;
  }

  body.marketing-agency .project-tight-section .project-image-grid--natural-width:has([class*="col-"]:hover) > [class*="col-"]:not(:hover) {
    flex: 0.9 1 0;
  }
}

body.marketing-agency .portfolio-elegant--conclusion .work-boxs {
  flex-direction: row;
  gap: 20px;
}

body.marketing-agency .portfolio-elegant--conclusion .item {
  flex: 1 1 0;
  min-width: 0;
  width: auto;
  margin: 0;
}

body.marketing-agency .portfolio-elegant--conclusion .item.active {
  flex: 2.6 1 0;
  width: auto;
}

body.marketing-agency .portfolio-elegant--conclusion .work-boxs:has(.item.active) .item:not(.active) {
  flex: 0.45 1 0;
  width: auto;
}

/* Project detail pages — logo on the right */
body.marketing-agency .navbar > .container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

body.marketing-agency .navbar > .container > .logo {
  margin-left: auto;
  order: 3;
}

body.marketing-agency .navbar > .container > .navbar-toggler {
  order: 1;
}

body.marketing-agency .navbar > .container > .navbar-collapse {
  order: 2;
  flex-grow: 1;
}

body.marketing-agency .navbar .project-back-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: "Poppins", sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 1px;
  text-transform: uppercase;
}

body.marketing-agency .navbar .project-back-link .rolling-text {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

body.marketing-agency .navbar .project-back-link__icon {
  display: block;
  flex-shrink: 0;
  color: #fff;
}

.project-page-nav__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  padding-top: 40px;
}

.project-page-nav__link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #fff !important;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 1px;
  text-transform: uppercase;
  transition: opacity 0.3s ease, color 0.3s ease;
}

.project-page-nav__link:hover,
.project-page-nav__link:focus {
  color: #fff !important;
  opacity: 0.7;
}

.project-page-nav__icon {
  display: block;
  flex-shrink: 0;
}

.project-page-nav__side {
  flex: 0 0 auto;
  min-width: 1px;
}

@media (max-width: 575px) {
  .project-page-nav {
    padding-top: 0 !important;
    padding-bottom: 70px;
  }

  .project-page-nav__link {
    font-size: 12px;
    gap: 8px;
  }

  body.marketing-agency .navbar .project-back-link,
  body.marketing-agency .navbar .project-back-link .rolling-text {
    font-size: 12px;
  }
}

/* Skip link + reduced motion */
.skip-link {
  position: absolute;
  top: -100%;
  left: 16px;
  z-index: 100000;
  padding: 10px 16px;
  background: #fff;
  color: #171717;
  font-family: "Poppins", sans-serif;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 4px;
}

.skip-link:focus {
  top: 16px;
}

@media (prefers-reduced-motion: reduce) {
  .cursor,
  .blur-div {
    display: none !important;
  }

  html {
    scroll-behavior: auto !important;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
