.uyw-header,
.uyw-hero,
.uyw-feature-strip,
.uyw-intro,
.uyw-services,
.uyw-local-focus,
.uyw-why,
.uyw-seo-intro,
.uyw-seo-row,
.uyw-work-intro,
.uyw-portfolio,
.uyw-work-button,
.uyw-final-cta,
.uyw-footer {
  font-family: Montserrat, Poppins, Arial, sans-serif;
}

.uyw-header .elementor-container {
  align-items: center;
}

.uyw-header .elementor-column,
.uyw-hero .elementor-column,
.uyw-local-focus .elementor-column,
.uyw-why .elementor-column,
.uyw-final-cta .elementor-column {
  display: flex;
}

.uyw-header .elementor-widget-wrap,
.uyw-hero .elementor-widget-wrap,
.uyw-local-focus .elementor-widget-wrap,
.uyw-why .elementor-widget-wrap,
.uyw-final-cta .elementor-widget-wrap {
  align-content: center;
  align-items: center;
}

.uyw-logo img {
  width: 145px;
}

.uyw-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 28px;
}

.uyw-nav > .elementor-widget-wrap {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 28px;
  flex-wrap: nowrap;
}

.uyw-nav-item {
  display: inline-block;
  width: auto !important;
  margin: 0;
}

.uyw-nav-item .elementor-heading-title {
  color: #06131f;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.uyw-nav-active .elementor-heading-title {
  color: #e50914;
}

.uyw-phone-button .elementor-button,
.uyw-primary-btn .elementor-button {
  background: #e50914;
  color: #fff;
  border-radius: 4px;
  padding: 15px 24px;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.uyw-hero {
  position: relative;
  overflow: hidden;
  min-height: 530px;
}

.uyw-hero::before,
.uyw-local-focus::before,
.uyw-final-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(6, 19, 31, .96), rgba(6, 19, 31, .82) 42%, rgba(6, 19, 31, .42));
  pointer-events: none;
}

.uyw-hero::after {
  content: "";
  position: absolute;
  left: -5%;
  right: -5%;
  bottom: -42px;
  height: 108px;
  background: #fff;
  border-top: 22px solid #e50914;
  border-radius: 50% 50% 0 0 / 36% 36% 0 0;
}

.uyw-hero .elementor-container,
.uyw-local-focus .elementor-container,
.uyw-final-cta .elementor-container {
  position: relative;
  z-index: 1;
}

.uyw-hero .elementor-container {
  min-height: 410px;
}

.uyw-hero .elementor-widget-wrap {
  position: relative;
  z-index: 2;
}

.uyw-hero .elementor-widget-heading,
.uyw-hero .elementor-widget-text-editor,
.uyw-hero .elementor-widget-divider {
  width: 100%;
}

.uyw-hero-title-line {
  margin: 0 !important;
}

.uyw-hero-title-line .elementor-heading-title {
  color: #fff;
  font-size: clamp(40px, 4.5vw, 58px);
  line-height: 1.06;
  letter-spacing: -.04em;
  font-weight: 900;
  text-transform: uppercase;
}

.uyw-hero-title-red .elementor-heading-title {
  color: #e50914;
}

.uyw-hero-copy {
  max-width: 580px;
}

.uyw-hero-copy,
.uyw-hero-copy p {
  color: #fff;
  font-size: 17px;
  line-height: 1.65;
  font-weight: 600;
}

.uyw-outline-btn {
  display: inline-block !important;
  width: auto !important;
  margin-left: 14px;
}

.uyw-hero .uyw-primary-btn {
  display: inline-block !important;
  width: auto !important;
}

.uyw-outline-btn .elementor-button {
  background: rgba(6, 19, 31, .7);
  color: #fff;
  border: 2px solid rgba(255, 255, 255, .46);
  border-radius: 4px;
  padding: 13px 24px;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.uyw-hero-mini {
  display: inline-block !important;
  width: auto !important;
  margin-top: 28px;
  margin-right: 22px;
}

.uyw-hero-mini .elementor-icon-box-wrapper {
  display: flex;
  align-items: center;
  gap: 9px;
}

.uyw-hero-mini .elementor-icon {
  color: #e50914;
  fill: #e50914;
  font-size: 28px;
}

.uyw-hero-mini .elementor-icon-box-title {
  color: #fff;
  font-size: 12px;
  line-height: 1.15;
  font-weight: 900;
  max-width: 78px;
}

.uyw-hero-mini .elementor-icon-box-description {
  display: none;
}

.uyw-hero-devices img {
  width: min(100%, 620px);
  margin-left: auto;
  filter: drop-shadow(0 30px 36px rgba(0, 0, 0, .42));
}

.uyw-feature-strip {
  width: min(1260px, calc(100% - 48px));
  margin: -42px auto 0;
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 5px;
  box-shadow: 0 16px 35px rgba(6, 19, 31, .14);
  position: relative;
  z-index: 3;
}

.uyw-feature-strip .elementor-container {
  align-items: stretch;
}

.uyw-feature-strip .elementor-column {
  border-right: 1px solid #dfe3e8;
}

.uyw-feature-strip .elementor-column:last-child {
  border-right: 0;
}

.uyw-feature-strip .elementor-widget-wrap {
  align-content: center;
  justify-content: center;
}

.uyw-card-icon-box,
.uyw-seo-icon-box {
  padding: 24px 18px;
  text-align: center;
}

.uyw-card-icon-box .elementor-icon,
.uyw-service-card .elementor-icon,
.uyw-seo-icon-box .elementor-icon {
  color: #e50914;
  fill: #e50914;
  font-size: 34px;
}

.uyw-card-icon-box .elementor-icon-box-title,
.uyw-service-card .elementor-icon-box-title,
.uyw-seo-icon-box .elementor-icon-box-title {
  color: #06131f;
  font-size: 14px;
  font-weight: 900;
  text-transform: uppercase;
}

.uyw-card-icon-box .elementor-icon-box-description,
.uyw-service-card .elementor-icon-box-description,
.uyw-seo-icon-box .elementor-icon-box-description {
  color: #1d2834;
  font-size: 13px;
  line-height: 1.55;
  font-weight: 600;
}

.uyw-eyebrow .elementor-heading-title {
  color: #e50914;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.uyw-section-title .elementor-heading-title,
.uyw-left-title .elementor-heading-title,
.uyw-local-title .elementor-heading-title,
.uyw-cta-title .elementor-heading-title {
  color: #06131f;
  font-size: clamp(29px, 3vw, 40px);
  line-height: 1.08;
  letter-spacing: -.04em;
  font-weight: 900;
}

.uyw-local-title .elementor-heading-title {
  color: #fff;
}

.uyw-section-text,
.uyw-section-text p {
  max-width: 720px;
  margin-inline: auto;
  color: #394553;
  font-size: 14px;
  line-height: 1.65;
  font-weight: 600;
}

.uyw-service-card {
  min-height: 210px;
  padding: 28px 24px;
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 5px;
  box-shadow: 0 12px 28px rgba(6, 19, 31, .08);
}

.uyw-services .elementor-widget-wrap {
  justify-content: center;
}

.uyw-services .elementor-widget-button {
  width: auto !important;
}

.uyw-text-link .elementor-button {
  color: #e50914;
  background: transparent;
  font-size: 12px;
  font-weight: 900;
}

.uyw-local-focus,
.uyw-final-cta {
  color: #fff;
}

.uyw-local-focus {
  min-height: 280px;
}

.uyw-local-focus .elementor-container {
  align-items: center;
}

.uyw-local-title .elementor-heading-title,
.uyw-local-text,
.uyw-local-text p,
.uyw-cta-title .elementor-heading-title,
.uyw-cta-text,
.uyw-cta-text p,
.uyw-cta-phone,
.uyw-cta-phone p {
  color: #fff;
}

.uyw-area-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 12px;
}

.uyw-area-grid > .elementor-widget-wrap {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-content: center;
  align-items: center;
  gap: 10px 12px;
}

.uyw-area-pill {
  display: inline-block;
  width: 100% !important;
  margin: 0 !important;
}

.uyw-area-pill .elementor-button {
  width: 100%;
  min-height: 38px;
  justify-content: flex-start;
  background: rgba(6, 19, 31, .58);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .7);
  border-radius: 3px;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 900;
  text-align: left;
}

.uyw-area-pill .elementor-button::before {
  content: "";
  display: inline-block;
  width: 11px;
  height: 11px;
  margin-right: 10px;
  border: 3px solid #e50914;
  border-radius: 50%;
}

.uyw-area-grid .uyw-primary-btn {
  grid-column: span 2;
  width: 270px !important;
}

.uyw-check-list .elementor-icon-list-icon i {
  color: #e50914;
}

.uyw-check-list .elementor-icon-list-text {
  color: #06131f;
  font-size: 13px;
  font-weight: 600;
}

.uyw-why-devices img {
  width: min(100%, 680px);
  margin-left: auto;
}

.uyw-seo-row .elementor-container {
  align-items: stretch;
}

.uyw-seo-row .elementor-column {
  border-right: 1px solid #d8dde3;
}

.uyw-seo-row .elementor-column:last-child {
  border-right: 0;
}

.uyw-seo-row .elementor-widget-wrap {
  align-content: flex-start;
  justify-content: center;
}

.uyw-portfolio-card {
  position: relative;
  overflow: hidden;
  border-radius: 4px;
}

.uyw-portfolio .elementor-container {
  gap: 13px;
}

.uyw-portfolio .elementor-column {
  width: calc((100% - 65px) / 6) !important;
  flex: 0 0 calc((100% - 65px) / 6);
}

.uyw-portfolio-card .elementor-widget-wrap {
  display: block !important;
  padding: 0 !important;
}

.uyw-portfolio-image img {
  width: 100%;
  display: block;
}

.uyw-portfolio-label {
  margin-top: -28px !important;
  background: rgba(0, 0, 0, .54);
  position: relative;
  z-index: 2;
}

.uyw-portfolio-label .elementor-heading-title {
  color: #fff;
  font-size: 12px;
  font-weight: 900;
}

.uyw-light-btn .elementor-button {
  background: #fff;
  color: #06131f;
  border-radius: 4px;
  padding: 15px 24px;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.uyw-final-cta .elementor-container {
  align-items: center;
}

.uyw-final-cta .elementor-widget-button,
.uyw-final-cta .uyw-cta-phone {
  width: auto !important;
  margin-left: auto;
}

.uyw-footer .elementor-heading-title,
.uyw-footer-text,
.uyw-footer-text p {
  color: #fff;
}

.uyw-footer .elementor-widget-wrap {
  align-content: flex-start;
  align-items: flex-start;
}

.uyw-footer-text {
  margin-bottom: 4px !important;
}

.uyw-footer-text p {
  margin: 0;
  font-size: 12px;
  line-height: 1.55;
}

.uyw-footer-heading .elementor-heading-title {
  font-size: 13px;
  text-transform: uppercase;
}

.uyw-footer-logo img {
  width: 120px;
}

@media (max-width: 767px) {
  .uyw-header .elementor-column,
  .uyw-hero .elementor-column,
  .uyw-local-focus .elementor-column,
  .uyw-why .elementor-column,
  .uyw-final-cta .elementor-column,
  .uyw-footer .elementor-column {
    width: 100%;
  }

  .uyw-hero-title .elementor-heading-title {
    font-size: 34px;
  }

  .uyw-hero-title-line .elementor-heading-title {
    font-size: 34px;
  }

  .uyw-outline-btn {
    margin-left: 0;
  }

  .uyw-primary-btn,
  .uyw-outline-btn,
  .uyw-primary-btn .elementor-button,
  .uyw-outline-btn .elementor-button {
    width: 100%;
  }

  .uyw-nav > .elementor-widget-wrap,
  .uyw-area-grid > .elementor-widget-wrap {
    display: block !important;
  }

  .uyw-area-grid .uyw-primary-btn {
    width: 100% !important;
  }

  .uyw-portfolio .elementor-column {
    width: 100% !important;
    flex-basis: 100%;
  }
}

/* Hard overrides for Elementor/theme global styles. */
.uyw-header,
.uyw-hero,
.uyw-feature-strip,
.uyw-intro,
.uyw-services,
.uyw-local-focus,
.uyw-why,
.uyw-seo-intro,
.uyw-seo-row,
.uyw-work-intro,
.uyw-portfolio,
.uyw-work-button,
.uyw-final-cta,
.uyw-footer {
  font-family: Montserrat, Poppins, Arial, sans-serif !important;
}

.uyw-hero-title-line .elementor-heading-title,
.uyw-hero-copy,
.uyw-hero-copy p,
.uyw-hero-mini .elementor-icon-box-title,
.uyw-local-title .elementor-heading-title,
.uyw-local-text,
.uyw-local-text p,
.uyw-cta-title .elementor-heading-title,
.uyw-cta-text,
.uyw-cta-text p,
.uyw-footer .elementor-heading-title,
.uyw-footer-text,
.uyw-footer-text p {
  color: #fff !important;
}

.uyw-hero-title-red .elementor-heading-title,
.uyw-eyebrow .elementor-heading-title,
.uyw-card-icon-box .elementor-icon,
.uyw-service-card .elementor-icon,
.uyw-seo-icon-box .elementor-icon,
.uyw-check-list .elementor-icon-list-icon i {
  color: #e50914 !important;
  fill: #e50914 !important;
}

.uyw-section-title .elementor-heading-title,
.uyw-left-title .elementor-heading-title,
.uyw-card-icon-box .elementor-icon-box-title,
.uyw-service-card .elementor-icon-box-title,
.uyw-seo-icon-box .elementor-icon-box-title {
  color: #06131f !important;
}

.uyw-phone-button .elementor-button,
.uyw-primary-btn .elementor-button,
.uyw-work-button .elementor-button {
  background: #e50914 !important;
  color: #fff !important;
  border-color: #e50914 !important;
}

.uyw-outline-btn .elementor-button {
  background: rgba(6, 19, 31, .7) !important;
  color: #fff !important;
  border: 2px solid rgba(255, 255, 255, .46) !important;
}

.uyw-area-pill .elementor-button {
  background: rgba(6, 19, 31, .58) !important;
  color: #fff !important;
  border-color: rgba(255, 255, 255, .7) !important;
}

.uyw-light-btn .elementor-button {
  background: #fff !important;
  color: #06131f !important;
  border-color: #fff !important;
}
