/* PixelWorks branding. Loaded after the original template stylesheet.
   The four accent colors are sampled from the supplied logo artwork. */
:root {
  --pw-teal: #4facab;
  --pw-pink: #de4d82;
  --pw-orange: #fa7933;
  --pw-lime: #a3b338;
  --pw-teal-text: #247572;
  --pw-ink: #111515;
  --pw-muted: #505859;
  --pw-line: #e0e8e7;
  --primary-color1: var(--pw-teal);
  --primary-color1-opc: 79, 172, 171;
  --title-color: var(--pw-ink);
  --title-color-opc: 17, 21, 21;
  --black-color: var(--pw-ink);
  --black-color-opc: 17, 21, 21;
  --dark-title-color: var(--pw-ink);
  --dark-black-color: #111515;
  --text-color: var(--pw-muted);
  --borders-color: var(--pw-line);
  --borders-color-opc: 224, 232, 231;
  --font-archivo: "Archivo", Arial, sans-serif;
  --font-kanit: "Kanit", Arial, sans-serif;
}
html { scroll-padding-top: 112px; -webkit-text-size-adjust: 100%; }
body.pixelworks { background: #fff; min-width: 0; }
.pixelworks *, .pixelworks *::before, .pixelworks *::after { box-sizing: border-box; }
.pixelworks [hidden] { display: none !important; }
.pixelworks img { max-width: 100%; height: auto; }
.pixelworks video { max-width: 100%; }
.pixelworks a, .pixelworks button, .pixelworks input, .pixelworks textarea { -webkit-tap-highlight-color: transparent; }
.pixelworks button { font: inherit; }
.pixelworks button:not(:disabled), .pixelworks a { touch-action: manipulation; }
.pixelworks :focus-visible { outline: 3px solid var(--pw-teal-text); outline-offset: 5px; }
.pixelworks ::selection { color: var(--pw-ink); background: #b8e1de; }
.pixelworks [id] { scroll-margin-top: 110px; }
.pixelworks main:focus { outline: none; }
.pixelworks .container, .pixelworks .container-fluid, .pixelworks .row > *,
.pixelworks .content, .pixelworks .info, .pixelworks .title-area { min-width: 0; }
.pw-skip-link { position: fixed; top: -100px; left: 20px; padding: 12px 20px; background: #fff; color: var(--pw-ink); z-index: 100000; }
.pw-skip-link:focus { top: 14px; }

/* Original header proportions, with a fitted, undistorted logo. */
.pixelworks header.pw-header {
  padding: 0;
  min-height: 92px;
  background: rgba(255,255,255,.96);
  z-index: 1000;
  transition: transform .42s cubic-bezier(.4,0,.2,1), background-color .3s ease, box-shadow .3s ease;
  will-change: transform;
}
.pixelworks header.pw-header.pw-header-hidden {
  transform: translateY(calc(-100% - 12px));
  box-shadow: none;
  pointer-events: none;
}
.pixelworks header.pw-header > .container-fluid { min-height: 92px; gap: 20px; }
.pixelworks header.pw-header .company-logo { flex: 0 0 auto; line-height: 1; }
.pixelworks header.pw-header .company-logo img { display: block; width: clamp(170px, 16vw, 230px); height: auto; aspect-ratio: 3.81; }
.pixelworks header.pw-header .nav-right { flex-shrink: 0; gap: 14px; }
.pixelworks header.pw-header .main-menu > ul { display: flex; align-items: center; padding: 0; gap: 24px; }
.pixelworks header.pw-header .main-menu > ul > li { padding: 28px 0; }
.pixelworks header.pw-header .main-menu > ul > li > a { font-size: 15px; line-height: 1.4; white-space: nowrap; padding: 8px 0; }
.pixelworks header.pw-header .main-menu > ul > li.active > a,
.pixelworks header.pw-header .main-menu > ul > li > a:hover { color: var(--pw-teal-text); }
.pixelworks header.pw-header .right-sidebar-button,
.pixelworks header.pw-header .mobile-menu-btn,
.pixelworks .menu-close-btn,
.pixelworks .right-sidebar-close-btn { width: 44px; min-width: 44px; max-width: 44px; height: 44px; padding: 0; background: transparent; color: var(--pw-ink); border: 1px solid var(--pw-line); border-radius: 50%; align-items: center; justify-content: center; }
.pixelworks header.pw-header .right-sidebar-button:hover,
.pixelworks header.pw-header .mobile-menu-btn:hover { background: #d9eeeb; }
.pixelworks .menu-close-btn, .pixelworks .right-sidebar-close-btn { display: inline-flex; }
.pw-mobile-cta { display: none; }
.pw-overlay { position: fixed; inset: 0; border: 0; padding: 0; background: rgba(9,22,23,.48); backdrop-filter: blur(3px); z-index: 999; }
.pw-menu-open { overflow: hidden; }
.pixelworks .right-sidebar-menu { z-index: 1002; width: min(444px, calc(100% - 32px)); max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); margin: 16px; padding: 76px 36px 40px; overscroll-behavior: contain; visibility: hidden; }
.pixelworks .right-sidebar-menu.show-right-menu { visibility: visible; }
.pw-panel-logo { display: block; width: 244px; height: auto; margin-bottom: 34px; }
.pixelworks .right-sidebar-menu .sidebar-content-wrap .title { font-family: var(--font-archivo); font-size: 32px; line-height: 1.2; margin-bottom: 30px; }
.pixelworks .right-sidebar-menu .sidebar-content-wrap p { font-size: 17px; line-height: 1.6; }
.pixelworks .right-sidebar-menu .sidebar-content-wrap .contact-list a { font-size: 17px; overflow-wrap: anywhere; }

/* A short, non-blocking logo introduction, with an automatic CSS fallback. */
.pw-loader { display: none; }
.pw-js .pw-loader { display: flex; position: fixed; inset: 0; z-index: 99999; background: #fff; flex-direction: column; align-items: center; justify-content: center; gap: 28px; animation: pw-loader-dismiss .35s ease 1.7s forwards; pointer-events: none; }
.pw-loader img { width: min(320px, 70vw); height: auto; }
.pw-loader p { font-family: var(--font-archivo); font-size: 14px; color: var(--pw-muted); }
.pw-loader-track { width: min(320px,70vw); height: 3px; background: #eef3f2; overflow: hidden; }
.pw-loader-track span { display: block; width: 100%; height: 100%; transform-origin: left; background: linear-gradient(90deg,var(--pw-teal) 0 25%,var(--pw-pink) 25% 50%,var(--pw-orange) 50% 75%,var(--pw-lime) 75%); animation: pw-load 1.4s ease both; }
@keyframes pw-load { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes pw-loader-dismiss { to { opacity: 0; visibility: hidden; } }

/* Homepage: retain the original editorial hero, photography and video. */
.pixelworks .home2-banner-section {
  --pw-banner-image: url("../img/pixelworks/homepage-white-banner.png");
  background-color: #fff;
  /* White overlays protect the headline on the left and the text at top right.
     The image stays more visible toward the lower right. */
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.68) 0%, rgba(255,255,255,.64) 40%, rgba(255,255,255,0) 75%),
    linear-gradient(90deg, rgba(255,255,255,.85) 0%, rgba(255,255,255,.77) 43%, rgba(255,255,255,.45) 76%, rgba(255,255,255,.52) 100%),
    var(--pw-banner-image);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
@media (max-width: 991px) {
  .pixelworks .home2-banner-section {
    /* A taller, stacked hero needs an even overlay behind all its text. */
    background-image:
      linear-gradient(180deg, rgba(255,255,255,.90) 0%, rgba(255,255,255,.86) 55%, rgba(255,255,255,.80) 100%),
      var(--pw-banner-image-mobile, var(--pw-banner-image));
    background-position: center center, 58% center;
  }
}
.pw-eyebrow { display: block; font-family: var(--font-archivo); font-size: 14px; font-weight: 600; line-height: 1.5; letter-spacing: .11em; text-transform: uppercase; color: var(--pw-teal-text); margin-bottom: 22px; }
.pixelworks .home2-banner-section .title-area h1 { font-size: clamp(40px,5.2vw,100px); letter-spacing: -.045em; line-height: 1.04; margin-bottom: 0; }
.pixelworks .home2-banner-section .title-area { margin-bottom: 44px; }
.pw-hero-line { display: block; }
.pixelworks .home2-banner-section .banner-content-wrap .title-area h1 .banner-video-wrap { margin: .05em 0; gap: 18px; flex-wrap: nowrap; }
.pixelworks .home2-banner-section .banner-content-wrap .title-area h1 .banner-video-wrap > span:last-child { color: var(--pw-teal-text); }
.pixelworks .home2-banner-section .banner-short-info-area { right: clamp(32px,10vw,190px); top: 185px; max-width: 300px; }
.pixelworks .home2-banner-section .banner-short-info-area > svg { fill: var(--pw-orange); }
.pixelworks .home2-banner-section .banner-video-area { right: clamp(30px,4vw,76px); }
.pixelworks .home2-banner-section .banner-video-area video { display: block; }
.pixelworks .home2-banner-section .banner-content { gap: clamp(24px,3vw,58px); }
.pixelworks .home2-banner-section .banner-content > img { width: 144px; flex-shrink: 0; }
.pixelworks .home2-banner-section .banner-content .info svg { fill: var(--pw-teal-text); }
.pw-hero-actions { margin-top: 30px; display: flex; align-items: center; flex-wrap: wrap; gap: 22px; }
.pw-hero-actions .primary-btn1 {
  min-height: 62px;
  padding-block: 0;
}
.pw-hero-actions .primary-btn1 > span {
  min-height: 62px;
}
.pw-hero-actions .primary-btn1 > span:nth-child(2) {
  inset: 0;
  height: 100%;
  transform: translateY(100%);
}
.pw-hero-actions .primary-btn1:hover > span:nth-child(2),
.pw-hero-actions .primary-btn1:focus-visible > span:nth-child(2) {
  opacity: 1;
  transform: translateY(0);
}
.pw-hero-actions .primary-btn1:focus-visible > span:first-child {
  opacity: 0;
  transform: translateY(-150%);
}
.pw-text-link { display: inline-flex; align-items: center; gap: 12px; color: var(--pw-ink); font-family: var(--font-archivo); font-size: 15px; font-weight: 600; min-height: 44px; }
.pw-text-link:hover { color: var(--pw-teal-text); }
.pixelworks .home2-banner-image-section .banner-img img { width: 100%; height: 100%; object-fit: cover; }
.pixelworks .home2-about-section .section-title h2 img { width: 64px; height: 64px; object-fit: contain; }
.pixelworks .counter-list { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px; }
.pixelworks .counter-list .single-counter { max-width: none; }
.pixelworks .counter-list .single-counter h2 { font-size: clamp(32px,3.6vw,62px); letter-spacing: -.035em; }
.pixelworks .counter-list .single-counter:nth-child(1) h2 { color: var(--pw-teal-text); }
.pixelworks .counter-list .single-counter:nth-child(2) h2 { color: #b53266; }
.pixelworks .counter-list .single-counter:nth-child(3) h2 { color: #b84a0c; }
.pixelworks .counter-list .single-counter:nth-child(4) h2 { color: #657416; }
.pw-section-label { margin-bottom: 40px; }
.pw-section-label .pw-eyebrow { margin-bottom: 12px; }
.pw-section-label h2 { font-family: var(--font-archivo); font-size: clamp(30px,3.2vw,48px); line-height: 1.15; letter-spacing: -.035em; margin: 0; }
.pixelworks .home2-service-section .row > div { display: flex; }
.pixelworks .service-card { width: 100%; display: flex; flex-direction: column; }
.pixelworks .service-card .content { display: flex; flex-direction: column; flex: 1; }
.pixelworks .service-card .content h3 { line-height: 1.2; }
.pixelworks .service-card .content h3 a { font-size: clamp(26px,2.1vw,32px); line-height: 1.2; }
.pixelworks .service-card .content ul { flex: 1; }
.pixelworks .service-card .content ul li { line-height: 1.5; }
.pixelworks .service-card .content .line { width: 100%; max-width: 100%; }
.pixelworks .service-card .primary-btn1 { align-self: flex-start; }
.pixelworks .pw-service-software { background: #edf7f6; border-top: 3px solid var(--pw-teal); }
.pixelworks .pw-service-apps { background: #fff3ea; border-top: 3px solid var(--pw-orange); --primary-color1: var(--pw-orange); }
.pixelworks .pw-service-marketing { background: #fcf0f5; border-top: 3px solid var(--pw-pink); --primary-color1: var(--pw-pink); }
.pixelworks .pw-service-ai { background: #f5f7e8; border-top: 3px solid var(--pw-lime); --primary-color1: var(--pw-lime); }
.pixelworks .service-card .icon svg { width: 55px; height: 55px; }
.pixelworks .pw-service-software .icon svg { fill: var(--pw-teal-text); }
.pixelworks .pw-service-apps .icon svg { fill: #b84a0c; }
.pixelworks .pw-service-marketing .icon svg { fill: #b53266; }
.pixelworks .pw-service-ai .icon svg { fill: none; color: #657416; }
.pixelworks.pw-home .portfolio-card2 .porfolio-img { background-image: var(--pw-solution-image); }
@media (max-width: 767px) {
  .pixelworks.pw-home .portfolio-card2 .porfolio-img { background-image: var(--pw-solution-image-mobile, var(--pw-solution-image)); }
}
/* Four cards on large desktops; Bootstrap supplies the two- and one-column layouts. */
@media (min-width: 1200px) {
  .pixelworks .home2-service-section .pw-service-grid .service-card {
    padding: 42px clamp(20px, 1.6vw, 30px);
  }
  .pixelworks .home2-service-section .pw-service-grid .service-card .icon {
    margin-bottom: 42px;
  }
  .pixelworks .home2-service-section .pw-service-grid .service-card .content h3 {
    font-size: clamp(24px, 1.9vw, 30px);
    line-height: 1.2;
    min-height: 2.4em;
  }
  .pixelworks .home2-service-section .pw-service-grid .service-card .content h3 a {
    font-size: inherit;
  }
  .pixelworks .home2-service-section .pw-service-grid .service-card .content ul {
    margin-bottom: 42px;
  }
  .pixelworks .home2-service-section .pw-service-grid .service-card .content .primary-btn1 {
    padding: 15px 22px;
  }
}
.pixelworks .portfolio-card2 { background: var(--pw-ink); }
.pixelworks .portfolio-card2 .porfolio-img { cursor: pointer; background-position: center; min-height: 580px; height: min(900px,100vh); height: min(900px,100svh); }
.pixelworks .portfolio-card2 .portfolio-content-wrap { pointer-events: none; }
.pixelworks .portfolio-card2 .portfolio-content-wrap a { pointer-events: auto; }
.pixelworks .portfolio-card2 .portfolio-content-wrap .title-area h2 a { font-size: clamp(36px,4.4vw,76px); line-height: 1.1; }
.pixelworks .portfolio-card2 .portfolio-content-wrap ul { max-width: 100%; }
.pixelworks .portfolio-card2 .portfolio-content-wrap ul a { font-size: 14px; padding: 10px 18px; display: inline-flex; align-items: center; min-height: 44px; }
.pixelworks .portfolio-card2 .portfolio-content-wrap .title-area span { line-height: 1.4; }
/* Keep the supplied solution artwork clear, with contrast behind the captions. */
.pixelworks .pw-solution-panel .porfolio-img { position: relative; }
.pixelworks .pw-solution-panel .porfolio-img::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(17,21,21,0) 25%, rgba(17,21,21,.68) 65%, rgba(17,21,21,.94) 100%);
}
.pixelworks .pw-solution-panel .portfolio-content-wrap { z-index: 1; }
.pixelworks .pw-solution-panel .portfolio-content-wrap ul a { background-color: rgba(17,21,21,.3); }
.pixelworks .pw-solution-panel .portfolio-content-wrap ul a:hover { background-color: var(--primary-color1); }
.pixelworks .pw-solution-ai { --primary-color1: var(--pw-lime); }
@media (max-width: 767px) {
  .pixelworks .pw-solution-design .porfolio-img { background-position: 68% center; }
  .pixelworks .pw-solution-panel .porfolio-img::after {
    background: linear-gradient(180deg, rgba(17,21,21,0) 15%, rgba(17,21,21,.78) 55%, rgba(17,21,21,.94) 100%);
  }
}
/* Portfolio page: retain the supplied metro layout and keep every caption usable on touch screens. */
.pixelworks.pw-portfolio .portfolio-metro-page .portfolio-metro-page-title-area h1 {
  max-width: 1050px;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: -.045em;
}
.pixelworks.pw-portfolio .portfolio-metro-wrap .single-pf-metro::after {
  content: "";
  position: absolute;
  inset: 42% 0 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(17,21,21,0), rgba(17,21,21,.72));
}
.pixelworks.pw-portfolio .portfolio-metro-wrap .single-pf-metro .pf-metro-content {
  top: auto;
  right: auto;
  bottom: 24px;
  left: 24px;
  max-width: calc(100% - 48px);
  opacity: 1;
  z-index: 2;
  text-align: left;
  padding: 14px 24px;
  transform: translateY(0);
  box-shadow: 0 10px 30px rgba(17,21,21,.18);
}
.pixelworks.pw-portfolio .portfolio-metro-wrap .single-pf-metro:focus-visible {
  outline: 4px solid var(--pw-teal);
  outline-offset: -4px;
}
.pixelworks.pw-portfolio .portfolio-metro-wrap .single-pf-metro:focus-visible .pf-metro-img img {
  transform: scale(1.05);
}
.pixelworks .pw-portfolio-cta { padding-top: clamp(70px, 8vw, 130px); }
/* Portfolio grid: preserve the template layout and hover language with PixelWorks branding. */
.pixelworks.pw-portfolio-grid .portfolio-grid-page {
  padding-top: clamp(155px, 12vw, 220px);
}
.pixelworks.pw-portfolio-grid .portfolio-grid-page-title-area {
  text-align: center;
}
.pixelworks.pw-portfolio-grid .portfolio-grid-page-title-area .pw-eyebrow {
  margin-bottom: 22px;
}
.pixelworks.pw-portfolio-grid .portfolio-grid-page-title-area h1 {
  max-width: 1040px;
  margin: 0 auto 30px;
  font-family: var(--font-archivo);
  font-weight: 600;
  font-size: clamp(58px, 6.1vw, 112px);
  line-height: .98;
  letter-spacing: -.045em;
  text-wrap: balance;
}
.pixelworks.pw-portfolio-grid .pw-portfolio-grid-intro {
  max-width: 790px;
  margin: 0 auto;
  color: var(--pw-muted);
  font-family: var(--font-archivo);
  font-size: clamp(17px, 1.2vw, 21px);
  line-height: 1.65;
  text-align: center;
  text-wrap: balance;
}
.pixelworks.pw-portfolio-grid .portfolio-grid-page-top .portfolio-tag-list {
  border: 0;
}
.pixelworks.pw-portfolio-grid .portfolio-grid-page-top .portfolio-tag-list .single-item {
  border: 0;
  font: 500 15px/1 var(--font-archivo);
}
.pixelworks.pw-portfolio-grid .portfolio-grid-page-top .portfolio-tag-list .single-item:focus-visible {
  outline-offset: 3px;
}
.pixelworks.pw-portfolio-grid .portfolio-card.style-2 .portfolio-img {
  display: block;
  overflow: hidden;
  background: #edf1f0;
}
.pixelworks.pw-portfolio-grid .portfolio-card.style-2 .shape-hover-img {
  width: 100%;
  aspect-ratio: 4 / 5;
  overflow: hidden;
}
.pixelworks.pw-portfolio-grid .portfolio-card.style-2 .shape-hover-img img,
.pixelworks.pw-portfolio-grid .portfolio-card.style-2 .shape-hover-img canvas {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pixelworks.pw-portfolio-grid .portfolio-card.style-2 .shape-hover-img img {
  transition: transform .7s cubic-bezier(.2,.7,.2,1);
}
.pixelworks.pw-portfolio-grid .portfolio-card.style-2 .portfolio-img:hover .shape-hover-img > img {
  transform: scale(1.025);
}
.pixelworks.pw-portfolio-grid .portfolio-card.style-2 .portfolio-content h2 {
  line-height: 1.08;
  margin-bottom: 8px;
}
.pixelworks.pw-portfolio-grid .portfolio-card.style-2 .portfolio-content h2 a {
  font-family: var(--font-archivo);
  font-size: clamp(25px, 2.15vw, 38px);
  letter-spacing: -.035em;
}
.pixelworks.pw-portfolio-grid .portfolio-card.style-2 .portfolio-content-wrap .tag span {
  color: var(--pw-muted);
  font: 400 14px/1.35 var(--font-kanit);
  text-transform: uppercase;
}
.pw-view-details {
  position: absolute;
  left: var(--pw-pointer-x, 50%);
  top: var(--pw-pointer-y, 50%);
  z-index: 4;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 118px;
  min-height: 48px;
  padding: 12px 20px;
  border-radius: 999px;
  color: #fff;
  background: var(--pw-ink);
  font: 600 13px/1 var(--font-archivo);
  letter-spacing: .06em;
  text-transform: uppercase;
  opacity: 0;
  transform: translate(-50%, -50%) scale(.8);
  transition: opacity .25s ease, transform .25s ease;
  pointer-events: none;
  box-shadow: 0 12px 35px rgba(17,21,21,.25);
}
.shape-hover-item:hover .pw-view-details,
.shape-hover-item:focus-visible .pw-view-details {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}
.pw-grid-project[hidden] { display: none !important; }
.pw-empty-filter { padding: 50px 0; text-align: center; font: 500 20px/1.5 var(--font-archivo); }

/* Project detail pages use the supplied detail template with branded, honest placeholders. */
.pixelworks.pw-portfolio-details .portfolio-dt-page-title-area .pw-eyebrow {
  margin-bottom: 24px;
  text-align: center;
}
.pixelworks.pw-portfolio-details .portfolio-dt-page-title-area h1 {
  max-width: 1120px;
  margin: 0 auto;
  font-size: clamp(58px, 6.2vw, 112px);
  line-height: .94;
  letter-spacing: -.045em;
  text-wrap: balance;
}
.pixelworks.pw-portfolio-details .portfolio-dt-gallery-wrap figure,
.pixelworks.pw-portfolio-details .portfolio-dt-gallery2-section figure { margin: 0; }
.pixelworks.pw-portfolio-details .portfolio-dt-gallery-wrap .single-img,
.pixelworks.pw-portfolio-details .portfolio-gallery-img,
.pixelworks.pw-portfolio-details .pw-detail-feature-image {
  overflow: hidden;
  background: #edf1f0;
}
.pixelworks.pw-portfolio-details .portfolio-dt-gallery-wrap .single-img img,
.pixelworks.pw-portfolio-details .portfolio-gallery-img img,
.pixelworks.pw-portfolio-details .pw-detail-feature-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pixelworks.pw-portfolio-details .pw-project-primary img { object-position: center; }
.pixelworks.pw-portfolio-details .pw-detail-feature-image {
  min-height: 570px;
}
.pixelworks.pw-portfolio-details .pw-project-outcomes .single-counter h2 {
  font-family: var(--font-archivo);
  font-size: clamp(40px, 4vw, 68px);
  line-height: 1;
  letter-spacing: -.04em;
}

/* Completed portfolio galleries use natural media ratios with breathing room. */
@media (min-width: 992px) {
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap {
    grid-template-columns: minmax(0, 55.2fr) minmax(0, 44.8fr);
    align-items: stretch;
    gap: 24px;
    padding-inline: 24px;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .gallery-right {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 24px;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .gallery-right .img-grp {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .single-img {
    min-width: 0;
    min-height: 0;
    border: 1px solid #dce7e8;
    border-radius: 12px;
    background: #f5f8f8;
    box-shadow: 0 10px 28px rgba(17, 35, 40, .08);
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .gallery-left .single-img {
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .gallery-left .single-img img {
    width: 100%;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .gallery-right .single-img img {
    display: block;
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
  }
}
.pw-placeholder-media { position: relative; }
.pw-placeholder-media::after {
  content: attr(data-placeholder-label);
  position: absolute;
  right: 16px;
  bottom: 16px;
  z-index: 3;
  padding: 10px 14px;
  border-radius: 999px;
  color: #fff;
  background: rgba(17,21,21,.84);
  font: 600 11px/1 var(--font-archivo);
  letter-spacing: .06em;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
}
.pw-project-notice {
  margin-top: 120px;
  padding: 18px 22px;
  border-left: 3px solid var(--pw-orange);
  background: #fff3ea;
  font: 500 16px/1.5 var(--font-archivo);
}
@media (max-width: 991px) {
  .pixelworks.pw-portfolio-grid .portfolio-grid-page { padding-top: 140px; }
  .pixelworks.pw-portfolio-details .pw-detail-feature-image { min-height: 460px; }
}
/* Preserve every interface edge on tablets while retaining the two-up detail rhythm. */
@media (min-width: 577px) and (max-width: 991px) {
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-inline: 24px;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .gallery-right {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 20px;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .gallery-right .img-grp {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .single-img,
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery2-section .portfolio-gallery-img {
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    border: 1px solid #dce7e8;
    border-radius: 10px;
    background: #f5f8f8;
    box-shadow: 0 8px 22px rgba(17, 35, 40, .08);
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .single-img img,
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery2-section .portfolio-gallery-img img {
    display: block;
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery2-section .portfolio-gallery-img img {
    transform: none !important;
    will-change: auto !important;
  }
}
@media (max-width: 767px) {
  .pixelworks.pw-portfolio-grid .portfolio-grid-page { padding-top: 115px; }
  .pixelworks.pw-portfolio-grid .portfolio-grid-page-title-area h1,
  .pixelworks.pw-portfolio-details .portfolio-dt-page-title-area h1 {
    font-size: clamp(43px, 12vw, 66px);
    line-height: .98;
  }
  .pixelworks.pw-portfolio-grid .portfolio-grid-page-top {
    justify-content: center;
  }
  .pixelworks.pw-portfolio-grid .portfolio-grid-page-top .portfolio-tag-list {
    order: 3;
    width: 100%;
  }
  .pixelworks.pw-portfolio-details .pw-detail-feature-image { min-height: 390px; }
  .pw-view-details {
    left: 50%;
    top: 50%;
    opacity: 1;
    transform: translate(-50%, -50%) scale(.9);
  }
}

/* Completed portfolio galleries stay complete and distinct on narrow phones. */
@media (min-width: 320px) and (max-width: 576px) {
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding-inline: 16px;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .gallery-right,
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .img-grp {
    display: flex;
    flex-direction: column;
    gap: 18px;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .single-img,
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery2-section .portfolio-gallery-img {
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    border: 1px solid #dce7e8;
    border-radius: 10px;
    background: #f5f8f8;
    box-shadow: 0 8px 22px rgba(17, 35, 40, .08);
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery-wrap .single-img img,
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery2-section .portfolio-gallery-img img {
    display: block;
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery2-section .portfolio-gallery-img img {
    transform: none !important;
    will-change: auto !important;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery2-section .container-fluid.one {
    padding-inline: 16px;
  }
  .pixelworks.pw-gallery-ready .portfolio-dt-gallery2-section .row {
    --bs-gutter-x: 0;
    --bs-gutter-y: 18px;
  }
}
.pixelworks.pw-portfolio-pattern .portfolio-pattern-page {
  padding-top: clamp(155px, 13vw, 245px);
}
.pixelworks.pw-portfolio-pattern .portfolio-pattern-page-title-area {
  text-align: center;
}
.pixelworks.pw-portfolio-pattern .portfolio-pattern-page-title-area .pw-eyebrow {
  margin-bottom: 24px;
}
.pixelworks.pw-portfolio-pattern .portfolio-pattern-page-title-area h1 {
  width: min(100%, 1100px);
  margin: 0 auto 34px;
  font-size: clamp(54px, 5.9vw, 112px);
  line-height: .92;
  letter-spacing: -.045em;
  text-wrap: balance;
}
.pixelworks.pw-portfolio-pattern .pw-portfolio-intro {
  width: min(100%, 860px);
  margin: 0 auto;
  color: var(--pw-muted);
  font-family: var(--font-archivo);
  font-size: clamp(17px, 1.25vw, 21px);
  line-height: 1.65;
  text-wrap: balance;
}
.pixelworks.pw-portfolio-pattern .portfolio-card3 .portfolio-img {
  background: #edf1f0;
}
.pixelworks.pw-portfolio-pattern .portfolio-card3 .portfolio-img img {
  display: block;
}
.pixelworks.pw-portfolio-pattern .portfolio-card3 .portfolio-content h2 a {
  overflow-wrap: anywhere;
}
.pixelworks.pw-portfolio-pattern .pw-work-summary {
  align-items: flex-end;
}
@media (max-width: 991px) {
  .pixelworks.pw-portfolio-pattern .portfolio-pattern-page {
    padding-top: 135px;
  }
  .pixelworks.pw-portfolio-pattern .portfolio-pattern-page-title-area h1 {
    font-size: clamp(50px, 9vw, 82px);
    line-height: .96;
  }
}
@media (max-width: 767px) {
  .pixelworks.pw-portfolio-pattern .portfolio-pattern-page {
    padding-top: 112px;
  }
  .pixelworks.pw-portfolio-pattern .portfolio-pattern-page > .container-fluid > .row {
    margin-bottom: 90px;
  }
  .pixelworks.pw-portfolio-pattern .portfolio-pattern-page-title-area h1 {
    margin-bottom: 26px;
    font-size: clamp(42px, 12vw, 66px);
  }
  .pixelworks.pw-portfolio-pattern .pw-portfolio-intro {
    font-size: 17px;
    line-height: 1.6;
  }
}
@media (max-width: 479px) {
  .pixelworks.pw-portfolio-pattern .portfolio-pattern-page {
    padding-top: 104px;
  }
  .pixelworks.pw-portfolio-pattern .portfolio-pattern-page-title-area .pw-eyebrow {
    margin-bottom: 18px;
  }
  .pixelworks.pw-portfolio-pattern .portfolio-pattern-page-title-area h1 {
    font-size: clamp(38px, 11.5vw, 52px);
  }
}
.pixelworks .pw-portfolio-cta-inner {
  padding: clamp(42px, 6vw, 82px);
  border-top: 3px solid var(--pw-teal);
  background: linear-gradient(135deg, #edf7f6, #fff3ea 55%, #fcf0f5);
}
.pixelworks .pw-portfolio-cta-inner h2 {
  max-width: 900px;
  margin: 0 0 36px;
  font-family: var(--font-archivo);
  font-size: clamp(34px, 5vw, 72px);
  line-height: 1.06;
  letter-spacing: -.045em;
}
@media (max-width: 767px) {
  .pixelworks.pw-portfolio .portfolio-metro-wrap .single-pf-metro .pf-metro-content {
    bottom: 16px;
    left: 16px;
    max-width: calc(100% - 32px);
    padding: 12px 18px;
  }
  .pixelworks .pw-portfolio-cta-inner { padding: 38px 24px; }
}
/* About page: the supplied layouts are fitted to the PixelWorks brand and content scale. */
.pixelworks.pw-about .pw-about-hero .breadcrumb-image-section {
  min-height: 0;
  height: clamp(240px, 31.25vw, 500px);
}
.pixelworks.pw-about .pw-about-hero .breadcrumb-img { transform: none; }
.pixelworks.pw-about .pw-about-hero .breadcrumb-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.pixelworks.pw-about .home2-about-section .section-title h2 video {
  width: clamp(86px, 9vw, 150px);
  height: clamp(42px, 5vw, 76px);
  object-fit: cover;
  border-radius: 999px;
}
.pixelworks.pw-about .about-page-why-choose-section {
  background:
    radial-gradient(circle at 15% 0%, rgba(79,172,171,.18), transparent 34%),
    radial-gradient(circle at 85% 100%, rgba(222,77,130,.14), transparent 34%),
    var(--pw-ink);
}
.pixelworks.pw-about .about-page-why-choose-section .section-title h2 {
  font-family: var(--font-archivo);
  font-size: clamp(38px, 5vw, 70px);
  letter-spacing: -.04em;
}
.pixelworks.pw-about .about-page-why-choose-section .feature-content svg { fill: var(--pw-teal); }
.pixelworks.pw-about .about-page-why-choose-section .row > div:nth-child(2) .feature-content svg { fill: var(--pw-orange); }
.pixelworks.pw-about .about-page-why-choose-section .row > div:nth-child(3) .feature-content svg { fill: var(--pw-pink); }
.pixelworks.pw-about .about-page-why-choose-section .bottom-area {
  max-width: 720px;
  justify-content: center;
  text-align: center;
}
.pixelworks.pw-about .about-page-why-choose-section .bottom-area span a { color: var(--pw-teal); }
.pixelworks.pw-about .about-page-banner2 .banner-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.pixelworks.pw-about .about-page-banner2 .banner-bottom > span {
  max-width: 900px;
  line-height: 1.2;
}
@media (max-width: 767px) {
  .pixelworks.pw-about .pw-about-hero .breadcrumb-img img { object-position: 58% center; }
  .pixelworks.pw-about .about-page-banner2 .banner-img-wrap img { object-position: 67% center; }
  .pixelworks.pw-about .about-page-why-choose-section .feature-content { margin: 0 auto; }
}
.pixelworks .scroll-text-section, .pixelworks .partner-wrap { overflow: hidden; }
.pixelworks .scrolling-text .marquee__group { animation: pw-marquee 35s linear infinite; }
.pixelworks .scroll-text-section .scrolling-text .marquee__group svg { fill: var(--pw-teal); }
.pixelworks .scroll-text-section .scrolling-text .marquee__group svg:nth-of-type(2) { fill: var(--pw-pink); }
.pixelworks .scroll-text-section .scrolling-text .marquee__group h2 { font-size: clamp(38px,6.5vw,110px); }
.pixelworks .pw-capabilities .partner-wrap .marquee { display: flex; gap: 64px; overflow: hidden; }
.pixelworks .pw-capabilities .partner-wrap .marquee .marquee__group { display: flex; flex-shrink: 0; align-items: center; gap: 64px; animation: pw-marquee 32s linear infinite; }
.pw-capabilities .marquee__group span { font-family: var(--font-archivo); font-size: clamp(20px,2.2vw,32px); font-weight: 600; color: var(--pw-muted); white-space: nowrap; }
.pw-capabilities .partner-wrap { padding: 34px 0; border-top: 1px solid var(--pw-line); border-bottom: 1px solid var(--pw-line); }
.pw-capabilities { margin-top: 70px; }
.pw-contact .pw-capabilities { margin-bottom: 110px; }
@keyframes pw-marquee { to { transform: translateX(calc(-100% - var(--pw-marquee-gap, 64px))); } }
.pixelworks .pw-approach .testimonial-card2 p { margin-top: 20px; font-size: clamp(22px,2.4vw,32px); line-height: 1.5; }
.pixelworks .pw-approach .author-img { border-radius: 0; }
.pixelworks .pw-approach .author-img img { border-radius: 0; width: 54px; height: 54px; object-fit: contain; }
.pixelworks .pw-approach .author-content h3 { font-size: 21px; line-height: 1.3; }
.pixelworks .paginations .swiper-pagination-bullet { width: 14px; height: 14px; margin: 15px; }
.pixelworks .paginations .swiper-pagination-bullet-active { background: var(--pw-teal-text); }
.pixelworks .home2-award-section .section-title h2 { font-size: clamp(48px,7vw,110px); }
.pixelworks .award-table { width: 100%; }
.pixelworks .award-table td, .pixelworks .award-table th { overflow-wrap: anywhere; }
.pixelworks .award-table th:last-child, .pixelworks .award-table td:last-child { white-space: nowrap; }
.pixelworks .home2-contact-section { background-position: center; }
.pixelworks .home2-contact-section .contact-content h2 { font-size: clamp(42px,7.5vw,136px); line-height: 1.08; letter-spacing: -.04em; }
.pixelworks .home2-contact-section .contact-content > span { letter-spacing: .08em; line-height: 1.5; }
.pixelworks .home2-contact-section .contact-content .contact-btn { min-height: 60px; max-width: 100%; font-size: 14px; }

/* Contact: the original layout with properly associated and scalable fields. */
.pixelworks .breadcrumb-section h1 { font-size: clamp(48px,7vw,100px); line-height: 1.1; overflow-wrap: anywhere; }
/* Contact page photograph below the title and breadcrumb. */
.pixelworks.pw-contact .breadcrumb-section .breadcrumb-image-section {
  min-height: 0;
  height: clamp(240px, 31.25vw, 500px);
}
.pixelworks.pw-contact .breadcrumb-section .breadcrumb-image-section .breadcrumb-img {
  transform: none;
}
.pixelworks.pw-contact .breadcrumb-section .breadcrumb-image-section .breadcrumb-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
@media (max-width: 575px) {
  .pixelworks.pw-contact .breadcrumb-section .breadcrumb-image-section .breadcrumb-img img {
    object-position: 68% center;
  }
}
.pixelworks .contact-page .section-title h2 { font-size: clamp(32px,4.4vw,60px); line-height: 1.13; letter-spacing: -.035em; }
.pixelworks .contact-page .title-and-address-area .contact-list .single-contact { min-width: 0; max-width: 31%; }
.pixelworks .contact-page .title-and-address-area .contact-list .single-contact .content { min-width: 0; }
.pixelworks .contact-page .title-and-address-area .contact-list .single-contact .content a { font-size: 20px; line-height: 1.45; overflow-wrap: anywhere; }
.pixelworks .contact-page .title-and-address-area .contact-list .single-contact .content .pw-contact-value { color: var(--title-color); font-family: var(--font-archivo); font-size: clamp(17px,1.4vw,20px); font-style: normal; font-weight: 500; line-height: 1.45; margin: 0; overflow-wrap: anywhere; }
.pixelworks .contact-page .title-and-address-area .contact-list .single-contact .content .pw-contact-email { overflow-wrap: normal; word-break: normal; }
.pixelworks .contact-page .title-and-address-area .contact-list .single-contact .icon { flex-shrink: 0; }
.pixelworks .contact-page .title-and-address-area .contact-list .single-contact .icon svg { fill: var(--pw-teal-text); }
.pixelworks .contact-page .conatct-form-area .contact-form .contact-form-top .btn-group { gap: 12px; }
.pixelworks .contact-page .conatct-form-area .contact-form .contact-form-top .btn-group .btn { white-space: normal; min-height: 46px; max-width: 100%; color: #52595a; line-height: 1.35; margin: 0; }
.pixelworks .contact-page .conatct-form-area .contact-form .contact-form-top .btn-group .btn-check:checked + .btn { background: var(--pw-teal); border-color: var(--pw-teal); color: var(--pw-ink); }
.pixelworks .contact-page .conatct-form-area .contact-form .contact-form-top .btn-group .btn-check:focus-visible + .btn { outline: 3px solid var(--pw-teal-text); outline-offset: 4px; }
.pixelworks .contact-page .conatct-form-area .contact-form .contact-field-area .form-inner label { font-size: 16px; line-height: 1.5; }
.pixelworks .contact-page .conatct-form-area .contact-form .contact-field-area .form-inner input,
.pixelworks .contact-page .conatct-form-area .contact-form .contact-field-area .form-inner textarea { font-size: 16px; line-height: 1.5; max-width: 100%; width: 100%; background: #f3f6f5; border: 1px solid #e5ebea; }
.pixelworks .contact-page .conatct-form-area .contact-form .contact-field-area .form-inner textarea { resize: vertical; min-height: 150px; }
.pixelworks .contact-page .conatct-form-area .contact-form .contact-field-area .form-inner input:focus,
.pixelworks .contact-page .conatct-form-area .contact-form .contact-field-area .form-inner textarea:focus { border-color: var(--pw-teal-text); background: #fff; }
.pixelworks .contact-page .form-check { display: flex; align-items: flex-start; gap: 12px; padding-left: 0; }
.pixelworks .contact-page .form-check-input { width: 20px; height: 20px; flex: 0 0 20px; margin: 3px 0 0; }
.pixelworks .contact-page .form-check-input:checked { background-color: var(--pw-teal-text); border-color: var(--pw-teal-text); }
.pixelworks .contact-page .form-check-label { font-size: 15px; line-height: 1.6; }
.pw-honeypot { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; clip-path: inset(50%) !important; white-space: nowrap !important; border: 0 !important; }
.pw-form-help { font-size: 14px; line-height: 1.6; color: var(--pw-muted); margin: 18px 0 0; }
.pw-form-status { width: 100%; margin: 0 0 38px; padding: 22px 24px; border: 1px solid #cfe8e5; border-left: 4px solid var(--pw-teal-text); border-radius: 4px; background: #edf7f6; color: var(--pw-ink); font-size: 16px; line-height: 1.6; overflow-wrap: anywhere; }
.pw-form-status:focus { outline: 3px solid rgba(31,120,120,.22); outline-offset: 3px; }
.pw-form-status.is-error { border-color: #f0cabc; border-left-color: #a93819; background: #fff4ef; }
.pw-form-status.is-error:focus { outline-color: rgba(169,56,25,.2); }
.pw-form-status p { margin: 0 0 12px; }
.pw-form-status p:last-child { margin-bottom: 0; }
.pw-form-status ul { margin: 8px 0 0; padding-left: 22px; }
.pw-form-status li + li { margin-top: 5px; }
.pw-field-error { margin: 8px 0 0; color: #9f3218; font-size: 14px; font-weight: 600; line-height: 1.45; }
.pixelworks .contact-page .conatct-form-area .contact-form .contact-field-area .form-inner input[aria-invalid="true"],
.pixelworks .contact-page .conatct-form-area .contact-form .contact-field-area .form-inner textarea[aria-invalid="true"] { border-color: #a93819; background: #fff8f5; }
.pixelworks .contact-page .form-check-input[aria-invalid="true"] { border-color: #a93819; }

/* Full-color symbol and white wordmark on the original dark footer. */
.pixelworks .footer-section.two { position: relative; }
.pixelworks .footer-section.two::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg,var(--pw-teal) 0 25%,var(--pw-pink) 25% 50%,var(--pw-orange) 50% 75%,var(--pw-lime) 75%); }
.pixelworks .footer-section.two .company-logo-area { gap: 50px; }
.pixelworks .footer-section.two .company-logo-area .company-logo { display: block; flex: 0 1 460px; }
.pixelworks .footer-section.two .company-logo img { width: 460px; max-width: 100%; height: auto; display: block; }
.pixelworks .footer-section.two .company-logo-area p { font-family: var(--font-archivo); font-size: clamp(22px,2vw,30px); line-height: 1.35; }
.pixelworks .footer-section.two .company-contact-info { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px; }
.pixelworks .footer-section.two .company-contact-info > div { min-width: 0; }
.pixelworks .footer-section.two .footer-main-warp .company-contact-info :is(.address-area, .contact-area, .social-area) a { font-size: 18px; line-height: 1.6; overflow-wrap: anywhere; }
.pixelworks .footer-section.two .widget-title { color: #fff; font-family: var(--font-archivo); font-size: 21px; line-height: 1.4; margin-bottom: 24px; }
.pw-footer-links { list-style: none; padding: 0; margin: 0; }
.pw-footer-links a { color: #d6dcdc; display: inline-block; padding-bottom: 10px; }
.pixelworks .footer-section a:hover { color: #8bd1cb; }
.pixelworks .footer-section a:focus-visible { outline-color: #8bd1cb; }
.pw-footer-note { color: #b7c2c1; font-family: var(--font-archivo); font-size: 14px; }
.pw-office { font-size: 16px; line-height: 1.6; color: #d6dcdc; margin-top: 20px; }
.pixelworks .footer-section .footer-menu { flex-wrap: wrap; gap: 24px; }
.pixelworks .footer-section .footer-menu-list { flex-wrap: wrap; gap: 28px; }
.pixelworks .footer-section .footer-menu-list li { margin: 0; }
.pixelworks .footer-section .footer-menu-list li a { font-size: 15px; min-height: 44px; display: inline-flex; align-items: center; }
.pixelworks .footer-section .footer-bottom p { font-size: 14px; line-height: 1.6; padding: 0 20px; }
.pixelworks .progress-wrap { border: 0; padding: 0; background: #fff; bottom: 24px; right: 24px; z-index: 98; }
.pixelworks .progress-wrap .progress-circle path { stroke: var(--pw-teal-text); }

@media (min-width: 1800px) { .pixelworks .home2-banner-section .banner-content-wrap { max-width: 720px; } }
@media (max-width: 1399px) {
  .pixelworks header.pw-header .main-menu > ul { gap: 18px; }
  .pixelworks header.pw-header > .container-fluid { gap: 18px; }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .pixelworks header.pw-header .main-menu > ul { gap: 14px; }
  .pixelworks header.pw-header .main-menu > ul > li > a { font-size: 14px; }
  .pixelworks header.pw-header .right-sidebar-button { display: none; }
  .pixelworks header.pw-header .primary-btn1 { font-size: 14px; padding: 13px 18px; }
  .pixelworks .home2-banner-section .banner-short-info-area { right: 34px; top: 155px; max-width: 280px; }
  .pixelworks .home2-banner-section .banner-content { flex-wrap: wrap; }
  .pixelworks .service-card { padding: 36px 22px; }
  .pixelworks .footer-section.two .company-logo-area .company-logo { flex-basis: 350px; }
}
@media (max-width: 991px) {
  html { scroll-padding-top: 96px; }
  .pixelworks header.pw-header, .pixelworks header.pw-header > .container-fluid { min-height: 80px; }
  .pixelworks header.pw-header .company-logo img { width: 188px; }
  .pixelworks header.pw-header .right-sidebar-button { display: none; }
  .pixelworks header.pw-header .mobile-menu-btn { display: inline-flex; visibility: visible; }
  .pixelworks header.pw-header .main-menu { display: block; position: fixed; top: 0; bottom: 0; left: 0; width: min(380px,calc(100% - 28px)); max-width: 100%; height: 100vh; height: 100dvh; background: #fff; z-index: 1001; padding: 26px 24px calc(28px + env(safe-area-inset-bottom)); transform: translateX(-110%); visibility: hidden; overflow-y: auto; overscroll-behavior: contain; transition: transform .3s ease,visibility .3s; border-right: 1px solid var(--pw-line); }
  .pixelworks header.pw-header .main-menu.show-menu { left: 0; transform: translateX(0); visibility: visible; }
  .pixelworks header.pw-header .main-menu > ul { display: flex; flex-direction: column; align-items: stretch; gap: 0; margin: 24px 0; padding: 0; }
  .pixelworks header.pw-header .main-menu > ul > li { display: block; padding: 0; border-bottom: 1px solid var(--pw-line); }
  .pixelworks header.pw-header .main-menu > ul > li > a { display: flex; align-items: center; font-size: 21px; padding: 17px 0; min-height: 58px; }
  .pixelworks header.pw-header .mobile-logo-area { padding: 0 0 20px; border-bottom: 1px solid var(--pw-line); gap: 14px; margin: 0; }
  .pixelworks header.pw-header .mobile-logo-wrap img { width: 190px; height: auto; }
  .pixelworks .pw-mobile-cta { display: block; padding-top: 12px; }
  .pw-mobile-cta a { width: 100%; justify-content: center; }
  .pixelworks .home2-banner-section .title-area h1 { font-size: clamp(48px,8.3vw,76px); }
  .pixelworks .home2-banner-section .banner-short-info-area { position: relative; top: auto; right: auto; max-width: 720px; width: calc(100% - 48px); margin: 34px auto 0; }
  .pixelworks .home2-banner-section .banner-video-area { position: relative; right: auto; bottom: auto; width: calc(100% - 48px); max-width: 720px; margin: 30px auto 0; }
  .pixelworks .home2-banner-section .banner-video-area .banner-video { height: 260px; }
  .pixelworks .home2-banner-section .banner-video-area video { height: 100%; object-fit: cover; }
  .pixelworks .counter-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px; }
  .pixelworks .portfolio-card2 .porfolio-img { height: 72svh; min-height: 520px; }
  .pixelworks .portfolio-card2 .portfolio-content-wrap { padding: 0 30px 60px; }
  .pixelworks .contact-page .title-and-address-area .contact-list .single-contact { max-width: 100%; flex: 1 1 40%; }
  .pixelworks .footer-section.two .company-logo-area .company-logo { flex-basis: 330px; }
  .pixelworks .footer-section.two .company-contact-info { gap: 26px; }
}
@media (max-width: 767px) {
  .pixelworks .container, .pixelworks .container-fluid.one { padding-left: 24px; padding-right: 24px; }
  .pixelworks .home2-banner-section { padding-top: 125px; }
  .pixelworks .home2-banner-section .title-area h1 { font-size: clamp(42px,8.8vw,65px); }
  .pixelworks .home2-banner-section .banner-content-wrap .title-area h1 .banner-video-wrap .banner-video { width: 105px; max-width: 105px; height: 46px; margin: 0; }
  .pixelworks .home2-banner-section .banner-content-wrap .title-area h1 .banner-video-wrap .banner-video video { height: 46px; }
  .pixelworks .home2-banner-section .banner-content-wrap .title-area h1 .banner-video-wrap { gap: 12px; }
  .pixelworks .home2-banner-section .banner-content { gap: 22px; }
  .pixelworks .home2-banner-section .banner-content .info { max-width: 100%; }
  .pixelworks .home2-banner-section .banner-short-info-area { width: calc(100% - 48px); }
  .pixelworks .home2-banner-section .banner-video-area { width: calc(100% - 48px); }
  .pixelworks .home2-banner-section .banner-video-area .banner-video { height: 220px; }
  .pixelworks .home2-banner-image-section { min-height: 420px; }
  .pixelworks .home2-about-section .section-title h2 { font-size: clamp(28px,5.3vw,38px); line-height: 1.45; }
  .pixelworks .home2-about-section .section-title h2 img { width: 42px; height: 42px; }
  .pixelworks .home2-about-section .section-title h2 video { width: 86px; height: 42px; }
  .pixelworks .service-card { padding: 36px 28px; }
  .pixelworks .service-card .icon { margin-bottom: 30px; }
  .pixelworks .portfolio-card2 .porfolio-img { height: 72svh; min-height: 490px; }
  .pixelworks .portfolio-card2 .portfolio-content-wrap { padding: 0 24px 44px; }
  .pixelworks .portfolio-card2 .portfolio-content-wrap .title-area h2 a { font-size: clamp(34px,7vw,52px); }
  .pixelworks .portfolio-card2 .portfolio-content-wrap ul { gap: 8px; }
  .pixelworks .portfolio-card2 .portfolio-content-wrap ul a { padding: 8px 14px; }
  .pixelworks .home2-award-section .award-table thead { display: none; }
  .pixelworks .home2-award-section .award-table, .pixelworks .home2-award-section .award-table tbody { display: block; }
  .pixelworks .home2-award-section .award-table tr { display: block; padding: 22px 0; border-bottom: 1px solid var(--pw-line); }
  .pixelworks .home2-award-section .award-table td { display: grid; grid-template-columns: minmax(100px,.7fr) minmax(0,1.3fr); gap: 16px; padding: 10px 0; border: 0; font-size: 16px; text-align: left; line-height: 1.5; }
  .pixelworks .home2-award-section .award-table td::before { content: attr(data-label); position: static; float: none; color: var(--pw-muted); font-size: 14px; font-weight: 500; }
  .pixelworks .contact-page .title-and-address-area .contact-list { padding-top: 40px; }
  .pixelworks .contact-page .title-and-address-area .contact-list .single-contact { flex-basis: 100%; }
  .pixelworks .contact-page .conatct-form-area .contact-form { padding: 40px 24px 48px; }
  .pixelworks .contact-page .conatct-form-area .contact-form .contact-form-top h3 { font-size: 24px; }
  .pixelworks .contact-page .conatct-form-area .contact-form .contact-form-top .btn-group .btn { font-size: 14px; padding: 12px 18px; }
  .pixelworks .contact-page .contact-field-area .mb-70 { margin-bottom: 32px; }
  .pixelworks .footer-section.two .company-logo-area { flex-direction: column; align-items: flex-start; gap: 28px; margin-bottom: 48px; }
  .pixelworks .footer-section.two .company-logo-area .company-logo { flex-basis: auto; width: min(360px,100%); }
  .pixelworks .footer-section.two .company-contact-info { grid-template-columns: 1fr 1fr; gap: 36px; }
  .pixelworks .footer-section.two .company-contact-info .social-area { grid-column: 1 / -1; }
  .pixelworks .footer-section.two .company-contact-info .social-area .pw-footer-links { display: flex; flex-wrap: wrap; gap: 24px; }
  .pixelworks .footer-section.two .footer-main-warp .company-contact-info :is(.address-area, .contact-area, .social-area) a { font-size: 16px; }
  .pixelworks .footer-section .footer-menu-list { gap: 10px 24px; }
  .pw-contact .pw-capabilities { margin-bottom: 70px; }
}
@media (max-width: 575px) {
  .pw-form-status { margin-bottom: 28px; padding: 18px 16px; font-size: 15px; line-height: 1.55; }
  .pw-form-status ul { padding-left: 19px; }
  .pw-field-error { font-size: 13px; }
}
@media (max-width: 479px) {
  .pixelworks .container, .pixelworks .container-fluid.one { padding-left: 20px; padding-right: 20px; }
  .pixelworks header.pw-header .company-logo img { width: 178px; }
  .pixelworks header.pw-header > .container-fluid { gap: 12px; }
  .pixelworks header.pw-header .mobile-logo-wrap img { width: 164px; }
  .pixelworks .home2-banner-section .title-area h1 { font-size: clamp(36px,9.6vw,46px); }
  .pixelworks .home2-banner-section .title-area { margin-bottom: 28px; }
  .pixelworks .home2-banner-section .banner-content { flex-wrap: wrap; }
  .pixelworks .home2-banner-section .banner-content > img { width: 120px; }
  .pw-eyebrow { font-size: 12px; letter-spacing: .07em; }
  .pw-hero-actions { gap: 14px; }
  .pw-hero-actions .primary-btn1 { width: 100%; justify-content: center; }
  .pixelworks .home2-banner-section .banner-short-info-area,
  .pixelworks .home2-banner-section .banner-video-area { width: calc(100% - 40px); }
  .pixelworks .home2-banner-section .banner-video-area .banner-video { height: 190px; }
  .pixelworks .home2-banner-image-section { min-height: 340px; }
  .pixelworks .counter-list { gap: 30px 18px; }
  .pixelworks .counter-list .single-counter h2 { font-size: 32px; margin-bottom: 12px; }
  .pixelworks .counter-list .single-counter > span { font-size: 16px; line-height: 1.5; }
  .pixelworks .home2-award-section .award-table td { grid-template-columns: minmax(82px,.7fr) minmax(0,1.3fr); gap: 12px; }
  .pixelworks .contact-page .conatct-form-area .contact-form { padding: 32px 14px 40px; }
  .pixelworks .contact-page .conatct-form-area .contact-form .contact-form-top .btn-group { gap: 10px 8px; }
  .pixelworks .contact-page .conatct-form-area .contact-form .contact-form-top .btn-group .btn { padding: 11px 13px; }
  .pixelworks .contact-page .contact-field-area > .primary-btn1 { width: 100%; justify-content: center; }
  .pixelworks .footer-section.two .company-contact-info { grid-template-columns: 1fr; }
  .pixelworks .footer-section.two .company-contact-info .social-area { grid-column: auto; }
  .pixelworks .home2-contact-section .contact-content h2 { font-size: 42px; }
  .pixelworks .progress-wrap { right: 16px; bottom: 16px; }
}
@media (max-width: 359px) {
  .pixelworks header.pw-header .company-logo img { width: 156px; }
  .pixelworks .home2-banner-section .title-area h1 { font-size: 34px; }
  .pixelworks .home2-banner-section .banner-content-wrap .title-area h1 .banner-video-wrap .banner-video { width: 82px; max-width: 82px; }
  .pixelworks .service-card { padding: 30px 22px; }
}
@media (orientation: landscape) and (max-height: 600px) {
  .pixelworks header.pw-header, .pixelworks header.pw-header > .container-fluid { min-height: 68px; }
  .pixelworks header.pw-header .company-logo img { width: 168px; }
  .pixelworks .home2-banner-section { padding-top: 112px; }
  .pixelworks .portfolio-card2 .porfolio-img { height: auto; min-height: 540px; }
  .pixelworks .right-sidebar-menu { max-height: calc(100dvh - 20px); margin: 10px; }
}
@media (hover: none), (pointer: coarse) {
  .pixelworks .portfolio-card2 .porfolio-img { cursor: pointer; }
  .pixelworks .primary-btn1:hover > span { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .pixelworks *, .pixelworks *::before, .pixelworks *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .pw-js .pw-loader { display: none; }
  .pixelworks .scrolling-text .marquee__group, .pixelworks .pw-capabilities .partner-wrap .marquee .marquee__group { animation: none !important; }
  .pixelworks .pw-capabilities .partner-wrap .marquee { flex-wrap: wrap; }
  .pixelworks .pw-capabilities .partner-wrap .marquee .marquee__group { flex-wrap: wrap; flex-shrink: 1; gap: 24px; }
  .pixelworks .pw-capabilities .marquee__group[aria-hidden] { display: none; }
}
/* Readable fallback when scripting is unavailable. */
html:not(.pw-js) .pixelworks .home2-testimonial-slider .swiper-wrapper { display: grid; gap: 45px; }
html:not(.pw-js) .pixelworks .home2-testimonial-slider .swiper-slide { opacity: 1; }
@media (max-width: 991px) {
  html:not(.pw-js) .pixelworks header.pw-header { position: relative; }
  html:not(.pw-js) .pixelworks header.pw-header > .container-fluid { flex-wrap: wrap !important; padding-top: 14px; }
  html:not(.pw-js) .pixelworks header.pw-header .main-menu { position: static; width: 100%; height: auto; visibility: visible; transform: none; padding: 0; order: 3; }
  html:not(.pw-js) .pixelworks header.pw-header .main-menu > ul { flex-direction: row; flex-wrap: wrap; gap: 0 22px; }
  html:not(.pw-js) .pixelworks header.pw-header .main-menu > ul > li > a { font-size: 16px; padding: 8px 0; }
  html:not(.pw-js) .pixelworks .mobile-logo-area, html:not(.pw-js) .pixelworks .nav-right, html:not(.pw-js) .pixelworks .pw-mobile-cta { display: none !important; }
}

/* Match the original nested selectors, including their cascade specificity. */
.pixelworks .scroll-text-section .scrolling-text { --pw-marquee-gap: 60px; }
.pixelworks .pw-capabilities .partner-wrap .marquee { --pw-marquee-gap: 64px; }
.pixelworks .footer-section.two .footer-main-warp .company-contact-info .contact-area .contact-list .single-contact a { font-size: 18px; line-height: 1.6; overflow-wrap: anywhere; }
.pixelworks .home2-testimonial-section .pw-capabilities { padding-top: 0; border-top: 0; }
.pixelworks header.pw-header .mobile-logo-area .menu-close-btn { width: 44px; height: 44px; border-radius: 50%; }
.pixelworks header.pw-header .mobile-logo-area .menu-close-btn:hover,
.pixelworks .right-sidebar-menu .right-sidebar-close-btn:hover { background: var(--pw-ink); color: #fff; }
@media (max-width: 991px) {
  .pixelworks header.pw-header .main-menu { padding: 26px 24px calc(28px + env(safe-area-inset-bottom)) !important; }
  html:not(.pw-js) .pixelworks header.pw-header .main-menu { padding: 0 !important; }
}
@media (max-width: 1199px) { .pixelworks .scroll-text-section .scrolling-text { --pw-marquee-gap: 40px; } }
@media (max-width: 767px) { .pixelworks .footer-section.two .footer-main-warp .company-contact-info .contact-area .contact-list .single-contact a { font-size: 16px; } }
@media (max-width: 576px) { .pixelworks .scroll-text-section .scrolling-text { --pw-marquee-gap: 30px; } }
