/*
 * Front-end custom styles.
 *
 * The public site is plain, framework-agnostic HTML built on Bootstrap 5
 * (loaded via CDN in resources/views/layouts/site.blade.php). Add project
 * specific overrides and custom rules here. No build step is required — this
 * file is served directly from public/.
 */

 /* ============ TOKENS ============ */
:root{
  --qw-navy: #0A1628;
  --qw-navy-2: #0F2038;
  --qw-blue: #2F8FFF;
  --qw-cyan: #17C1E8;
  --qw-ink: #10182B;
  --qw-gray: #5B6578;
  --qw-light: #F5F8FC;
  --qw-border: #E6EBF2;
  --qw-radius: 16px;
  --font-display: 'Manrope', system-ui, sans-serif;
}

*{ box-sizing: border-box; }

/* Keeps the semantic <header> wrapper from becoming the sticky nav's containing block —
   without this, .sticky-top can only stick within header's own (short) box and never actually sticks. */
.qw-site-header{ display: contents; }

body{
  font-family: var(--font-display);
  color: var(--qw-ink);
  background: #fff;
  -webkit-font-smoothing: antialiased;
}

a{ text-decoration: none; }

.custom-container{
  padding: 0 3%;
}

/* ============ ANNOUNCEMENT BAR ============ */
.qw-announce-bar{
  background: #2f8fff;
  color: #fff;
}
.qw-announce-inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .55rem 3%;
  font-size: .8rem;
  font-weight: 600;
  flex-wrap: wrap;
}
.qw-announce-contact{
  display: flex;
  align-items: center;
  gap: 1.2rem;
}
.qw-announce-link{
  color: #fff;
  display: inline-flex; align-items: center; gap: .4rem;
  font-weight: 600;
  text-decoration: none;
}
.qw-announce-link:hover{ text-decoration: underline; }
.qw-announce-social .qw-announce-link{
  font-size: 1rem;
}
.qw-announce-social .qw-announce-link:hover{
  text-decoration: none;
  opacity: .8;
}
.qw-announce-text{
  display: inline-flex; align-items: center; gap: .4rem;
  margin: 0 auto;
  text-align: center;
}
.qw-announce-lang{
  display: flex;
  align-items: center;
  gap: .5rem;
  font-weight: 700;
  letter-spacing: .03em;
}
.qw-announce-lang a{ color: rgba(255,255,255,.65); }
.qw-announce-lang a.active{ color: #fff; }
.qw-announce-lang a:hover{ color: #fff; }
.qw-announce-lang span{ color: rgba(255,255,255,.4); }
@media (max-width: 767.98px){
  .qw-announce-text{ margin: 0; }
}
@media (max-width: 1199.98px){
  .qw-announce-text{ display: none; }
}

/* ============ NAVBAR ============ */
.qw-navbar{
  background: rgba(255,255,255);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--qw-border);
}
.qw-brand{
  display: flex;
  align-items: center;
  gap: .6rem;
}
.qw-logo-mark{
  width: 38px; height: 38px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--qw-blue), var(--qw-cyan));
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.1rem;
  flex-shrink: 0;
}
.qw-brand-text{
  font-weight: 800;
  font-size: 1.2rem;
  color: var(--qw-ink);
  line-height: 1.1;
  display: flex;
  flex-direction: column;
}
.qw-brand-text small{
  font-weight: 500;
  font-size: .62rem;
  letter-spacing: .12em;
  color: var(--qw-gray);
  text-transform: uppercase;
}
.navbar-nav .nav-link{
  font-weight: 600;
  font-size: .92rem;
  color: var(--qw-ink);
  padding: .5rem .9rem !important;
}
.navbar-nav .nav-link:hover{ color: var(--qw-blue); }
.qw-dropdown{
  border: 1px solid var(--qw-border);
  border-radius: 12px;
  box-shadow: 0 20px 40px rgba(10,22,40,.12);
  padding: .5rem;
}
.qw-dropdown .dropdown-item{
  border-radius: 8px;
  font-weight: 600;
  font-size: .9rem;
  padding: .55rem .8rem;
}
.qw-dropdown .dropdown-item:hover{ background: var(--qw-light); color: var(--qw-blue); }

/* ============ SERVICES MEGA MENU ============ */
.qw-mega-trigger{ position: static; }
@media (min-width: 1200px){
  .qw-navbar .container-fluid{ align-items: stretch; }
  .navbar-collapse{ align-items: stretch; }
  .navbar-nav{ align-items: stretch !important; }
  .navbar-nav .nav-link{ height: 100%; display: flex; align-items: center; }
  .qw-mega-trigger{
    align-self: stretch;
    display: flex;
    align-items: center;
  }
}
.qw-mobile-nav-row{
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media (min-width: 1200px){
  .qw-mobile-nav-row{ height: 100%; }

  .qw-mega-panel{
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    transform: translateY(8px);
    width: 100%;
    background: #fff;
    border: 1px solid var(--qw-border);
    border-radius: 0 0 24px 24px;
    box-shadow: 0 30px 80px rgba(10,22,40,.16);
    padding: 2.2rem 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease, visibility .18s;
    z-index: 1040;
  }
  .qw-mega-trigger.qw-mega-open .qw-mega-panel,
  .qw-mega-trigger:focus-within .qw-mega-panel{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }

  .qw-mega-intro{
    border-right: 1px solid var(--qw-border);
    padding-right: 1.5rem;
  }
  .qw-mega-intro h3{
    font-size: 1.3rem;
    font-weight: 800;
    line-height: 1.25;
    margin: 0 0 .7rem;
    color: var(--qw-ink);
  }
  .qw-mega-intro-sub{
    color: var(--qw-gray);
    font-size: .85rem;
    line-height: 1.6;
    margin-bottom: 1rem;
  }

  .qw-mega-group h4{
    margin: 0 0 .9rem;
    font-size: .78rem;
  }
  .qw-mega-group h4 a{
    color: var(--qw-blue);
    text-transform: uppercase;
    letter-spacing: .06em;
    font-weight: 800;
  }
  .qw-mega-group a{
    display: block;
    color: var(--qw-gray);
    font-size: .85rem;
    line-height: 1.4;
    margin-bottom: .7rem;
    transition: color .15s ease, transform .15s ease;
  }
  .qw-mega-group a:hover{
    color: var(--qw-ink);
    transform: translateX(3px);
  }
}
@media (min-width: 1200px) and (max-width: 1399.98px){
  .qw-mega-panel .row > .col-lg{ flex: 0 0 33.3333%; max-width: 33.3333%; }
}
@media (max-width: 1199.98px){
  .qw-mega-panel{ display: none; }

  .qw-mobile-caret{
    border: none;
    background: transparent;
    color: #fff;
    padding: .5rem .3rem;
    font-size: 1rem;
    line-height: 1;
    transition: transform .25s ease;
  }
  .qw-mega-trigger.qw-mobile-services-open .qw-mobile-caret{ transform: rotate(180deg); }

  .qw-mobile-services{
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s ease;
  }
  .qw-mobile-service-group{
    padding: .6rem 0 .9rem 1rem;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }
  .qw-mobile-service-group:last-child{ border-bottom: none; }
  .qw-mobile-service-heading{
    display: block;
    color: var(--qw-cyan);
    text-transform: uppercase;
    letter-spacing: .05em;
    font-weight: 800;
    font-size: .72rem;
    margin-bottom: .6rem;
  }
  .qw-mobile-service-group a:not(.qw-mobile-service-heading){
    display: block;
    color: rgba(255,255,255,.75);
    font-size: .92rem;
    padding: .5rem 0;
  }
  .qw-mobile-service-group a:hover{ color: #fff; }
}

.qw-phone{
  font-weight: 700;
  color: var(--qw-ink);
  font-size: .92rem;
  display: flex; align-items: center; gap: .4rem;
}

/* ---- Custom hamburger toggler ---- */
.qw-nav-toggler{
  border: none;
  padding: 0;
  width: 40px; height: 40px;
  border-radius: 10px;
  background: var(--qw-light);
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 5px;
  box-shadow: none;
}
.qw-nav-toggler:focus{ box-shadow: none; }
.qw-nav-toggler span{
  display: block;
  width: 20px; height: 2px;
  border-radius: 2px;
  background: var(--qw-ink);
  transition: transform .25s ease, opacity .25s ease;
}
.qw-nav-toggler[aria-expanded="true"] span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
.qw-nav-toggler[aria-expanded="true"] span:nth-child(2){ opacity: 0; }
.qw-nav-toggler[aria-expanded="true"] span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }


.btn-outline-blue{
  color: var(--qw-blue);
  border-color: var(--qw-blue);
  font-weight: 700;
    border-radius: 10px;
    padding: .55rem 1.3rem;
    
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    transition: transform .15s ease, background .15s ease;
}
.btn-outline-blue:hover{
  background: var(--qw-blue);
  color: #fff;
}

/* ---- Topbar actions (visible below xl, next to toggler) ---- */
.qw-topbar-actions{ margin-left: auto; }
.qw-btn-sm{ padding: .5rem 1rem; font-size: .82rem; }
@media (max-width: 567px){
  .qw-topbar-actions .qw-btn-sm{ display: none; }
}
@media (max-width: 768px){
  .qw-topbar-actions .qw-phone{ display: none; }
}


html.qw-nav-open,
body.qw-nav-open{
  overflow: hidden;
  height: 100%;
  touch-action: none;
}
body.qw-nav-open .qw-announce-bar{
  display: none;
}

/* ---- Mobile full-screen menu ---- */
@media (max-width: 1199.98px){
  .navbar-collapse{
    position: fixed;
    inset: 0;
    width: 100%; height: 100vh;
    background: radial-gradient(1200px 600px at 80% -10%, #142a4d 0%, var(--qw-navy) 55%);
    z-index: 1050;
    padding: 1.2rem 1.5rem 2rem;
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: transform .35s ease;
    overflow-y: auto;
  }
  .navbar-collapse.show{ transform: translateX(0); }
  .navbar-collapse.collapsing{ transition: transform .35s ease; height: 100vh !important; }

  .qw-mobile-head{
    display: flex; align-items: center; justify-content: space-between;
    margin: 0 -1.5rem 1.6rem;
    /* padding: 0 1.5rem 1.4rem; */
    width:100%;
  }
  .qw-mobile-head .qw-brand-text{ color: #fff; font-size: 1.5rem; }
  .qw-mobile-head .qw-brand-text small{ font-size: .72rem; }
  .qw-mobile-head .qw-logo-mark{ width: 48px; height: 48px; font-size: 1.4rem; border-radius: 12px; }
  .qw-nav-close{
    border: none;
    background: rgba(255,255,255,.08);
    color: #fff;
    width: 38px; height: 38px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 1rem;
    flex-shrink: 0;
  }

  .navbar-collapse .navbar-nav{
    flex: 1;
    gap: .3rem;
    width: 100%;
  }
  .navbar-collapse .nav-item{ width: 100%; }
  .navbar-collapse .nav-link{
    display: block;
    width: 100%;
    color: #fff !important;
    font-size: 1.15rem;
    padding: .8rem 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }
  .navbar-collapse .qw-mobile-nav-row{
    width: 100%;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }
  .navbar-collapse .qw-mobile-nav-row .nav-link{
    flex: 1;
    width: auto;
    border-bottom: none;
  }
  .navbar-collapse .dropdown-toggle::after{ filter: invert(1); }
  .navbar-collapse .qw-dropdown{
    background: rgba(255,255,255,.04);
    border: none;
    box-shadow: none;
    margin: .3rem 0 .5rem;
  }
  .navbar-collapse .qw-dropdown .dropdown-item{
    color: rgba(255,255,255,.75);
  }
  .navbar-collapse .qw-dropdown .dropdown-item:hover{
    background: rgba(255,255,255,.08);
    color: var(--qw-cyan);
  }

  .qw-mobile-actions{
    flex-direction: column;
    align-items: stretch !important;
    gap: .8rem !important;
    padding-top: 1.2rem;
    margin: 0 -1.5rem -2rem;
    border-top: 1px solid rgba(255,255,255,.1);
  }
  .qw-mobile-actions .qw-phone{
    color: #fff;
    justify-content: center;
    font-size: 1rem;
    padding: 0 1.5rem;
  }
  .qw-mobile-actions .qw-btn-primary{
    justify-content: center;
    width: 100%;
    border-radius: 0;
    padding: 1rem 1.5rem;
  }
}

.qw-btn-primary{
  background: var(--qw-blue);
  color: #fff;
  font-weight: 700;
  border-radius: 10px;
  padding: .65rem 1.3rem;
  border: none;
  display: inline-flex; align-items: center; gap: .5rem;
  transition: transform .15s ease, background .15s ease;
}
.qw-btn-primary:hover{ background: #1f78e6; color:#fff; transform: translateY(-1px); }

.qw-btn-outline{
  background: transparent;
  color: var(--qw-light);
  border: 1.5px solid var(--qw-border);
  font-weight: 700;
  border-radius: 10px;
  padding: .65rem 1.3rem;
  display: inline-flex; align-items: center; gap: .5rem;
}
.qw-btn-outline:hover{ border-color: var(--qw-light); background-color: var(--qw-light); color: #2F8FFF; }

.qw-btn-outline-dark{
  background: transparent;
  color: var(--qw-ink);
  border: 1.5px solid var(--qw-border);
  font-weight: 700;
  border-radius: 10px;
  padding: .65rem 1.3rem;
}
.qw-btn-outline-dark:hover{ border-color: var(--qw-blue); background-color: var(--qw-light); color: var(--qw-blue); }

/* ============ HERO ============ */
.qw-hero{
  background: radial-gradient(1200px 600px at 80% -10%, #142a4d 0%, var(--qw-navy) 55%);
  position: relative;
  overflow: hidden;
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.qw-hero-orbit{
  position: absolute;
  right: -10%; top: 10%;
  width: 700px; height: 700px;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 50%;
}
.qw-hero-orbit::before{
  content:"";
  position: absolute; inset: 60px;
  border: 1px solid rgba(255,255,255,.05);
  border-radius: 50%;
}

/* ============ TEAM (about.html) ============ */
.qw-team-section{
  background: radial-gradient(1200px 600px at 80% -10%, #142a4d 0%, var(--qw-navy) 55%);
  padding: 5.5rem 0;
}
.qw-team-img-wrap{
  position: relative;
  border-radius: 24px;
  padding: .6rem;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 30px 70px rgba(3,10,25,.4);
}
.qw-team-img{
  display: block;
  width: 100%;
  height: auto;
  border-radius: 18px;
  object-fit: cover;
}
@media (max-width: 575.98px){
  .qw-team-img-wrap{ padding: .4rem; border-radius: 18px; }
  .qw-team-img{ border-radius: 14px; }
}

/* ============ PROOF 2 (about.html) ============ */
.qw-proof2-section{ padding: 5.5rem 0; background: #fff; }
.qw-proof2-section .qw-h2{ margin-bottom: 3rem; max-width: 760px; }
.qw-proof2-row{
  border-top: 1px solid var(--qw-border);
  border-bottom: 1px solid var(--qw-border);
}
.qw-proof2-col{ border-left: 1px solid var(--qw-border); }
.qw-proof2-col:first-child{ border-left: none; }
.qw-proof2-card{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 220px;
  padding: 2.2rem 2rem;
  position: relative;
  overflow: hidden;
  color: inherit;
}
.qw-proof2-card::before{
  content: "";
  position: absolute;
  inset: 0;
  background: var(--qw-light);
  transform: translateY(100%);
  transition: transform .35s ease;
  z-index: 0;
}
.qw-proof2-card:hover::before{ transform: translateY(0); }
.qw-proof2-label{
  position: relative;
  z-index: 1;
  color: var(--qw-blue);
  font-weight: 800;
  font-size: .72rem;
  letter-spacing: .08em;
}
.qw-proof2-text{
  position: relative;
  z-index: 1;
  display: block;
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--qw-ink);
  margin: 1.4rem 0 2rem;
  line-height: 1.4;
}
.qw-proof2-arrow{
  position: relative;
  z-index: 1;
  align-self: flex-end;
  width: 38px; height: 38px;
  border-radius: 50%;
  border: 1px solid var(--qw-border);
  display: flex; align-items: center; justify-content: center;
  color: var(--qw-blue);
  background: #fff;
  transition: background .25s ease, color .25s ease, border-color .25s ease, transform .3s cubic-bezier(.2,.8,.2,1);
}
.qw-proof2-card:hover .qw-proof2-arrow{
  background: var(--qw-blue);
  color: #fff;
  border-color: var(--qw-blue);
  transform: translate(4px,-4px) rotate(45deg);
}
@media (max-width: 767.98px){
  .qw-proof2-col{ border-left: none; border-top: 1px solid var(--qw-border); }
  .qw-proof2-col:first-child{ border-top: none; }
}

/* ============ FINAL CTA (about.html) ============ */
.qw-final-cta-section{ padding: 0 0 5.5rem; }
.qw-final-cta-box .qw-h2-white{ margin: .6rem 0 1rem; }
.qw-final-cta-actions{
  display: flex;
  flex-direction: column;
  gap: .8rem;
}
.qw-btn-white{
  background: #fff;
  color: var(--qw-blue);
  font-weight: 700;
  border-radius: 10px;
  padding: .75rem 1.4rem;
  border: none;
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
  transition: transform .15s ease, box-shadow .15s ease;
}
.qw-btn-white:hover{
  background: #fff;
  color: var(--qw-blue);
  border-color: transparent;
  transform: translateY(-2px);
  box-shadow: 0 12px 25px rgba(3,10,25,.18);
}
.qw-btn-outline-white{
  background: transparent;
  color: #fff;
  font-weight: 700;
  border-radius: 10px;
  padding: .75rem 1.4rem;
  border: 1.5px solid rgba(255,255,255,.5);
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
  transition: background .2s ease, border-color .2s ease;
}
.qw-btn-outline-white:hover{ background: rgba(255,255,255,.12); border-color: #fff; color: #fff; }
@media (min-width: 992px){
  .qw-final-cta-actions{ align-items: stretch; }
}

.qw-eyebrow{
  color: var(--qw-cyan);
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: .12em;
  margin-bottom: 1rem;
}
.qw-eyebrow-dark{ color: var(--qw-blue); }
.qw-eyebrow-light{ color: #cfe8ff; }

.qw-hero-title{
  color: #fff;
  font-weight: 800;
  font-size: clamp(2.2rem, 4vw, 3.2rem);
  line-height: 1.12;
  margin-bottom: 1.5rem;
}
.qw-underline{
  color: var(--qw-cyan);
}
.qw-hero-sub{
  color: rgba(255,255,255,.7);
  font-size: 1.08rem;
  max-width: 640px;
  margin-bottom: 2rem;
  line-height: 1.6;
}

/* Floating cards */
.qw-cards-grid{
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.1rem;
  padding: 1rem;
}
.qw-float-card{
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 18px;
  padding: 1.2rem;
  backdrop-filter: blur(6px);
  animation: qwFloat 6s ease-in-out infinite;
}
.qw-hero-card-img{ width: 100%; height: auto; display: block; object-fit: contain; }
.qw-card-marketing{ animation-delay: .3s; }
.qw-card-data{ animation-delay: .6s; }
.qw-card-ai{ animation-delay: .9s; }

@keyframes qwFloat{
  0%,100%{ transform: translateY(0); }
  50%{ transform: translateY(-10px); }
}

.qw-card-head{
  display: flex; justify-content: space-between; align-items: center;
  color: rgba(255,255,255,.55);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
  margin-bottom: .9rem;
}
.qw-tag{
  background: rgba(47,143,255,.18);
  color: var(--qw-cyan);
  padding: .15rem .5rem;
  border-radius: 20px;
  font-size: .65rem;
}
.qw-tag-live{ color: #4ade80; background: rgba(74,222,128,.15); display:flex; align-items:center; gap:.3rem; }
.qw-tag-live i{ font-size: .5rem; }

.qw-mini-browser{ background: rgba(255,255,255,.04); border-radius: 10px; padding: .6rem; }
.qw-mini-dots{ display:flex; gap:.3rem; margin-bottom:.5rem; }
.qw-mini-dots span{ width:6px; height:6px; border-radius:50%; background: rgba(255,255,255,.2); display:inline-block; }
.qw-mini-hero{ height: 46px; border-radius: 6px; background: linear-gradient(135deg, var(--qw-blue), var(--qw-cyan)); margin-bottom:.5rem; }
.qw-mini-blocks{ display:grid; grid-template-columns: 1fr 1fr 1fr; gap:.4rem; }
.qw-mini-blocks div{ height: 20px; border-radius:4px; background: rgba(255,255,255,.08); }

.qw-icon-circle{
  width: 42px; height:42px; border-radius:50%;
  background: rgba(47,143,255,.15);
  color: var(--qw-cyan);
  display:flex; align-items:center; justify-content:center;
  font-size: 1.1rem;
  flex-shrink:0;
}
.qw-big-stat{ color:#fff; font-weight:800; font-size:1.4rem; line-height:1; }
.qw-stat-label{ color: rgba(255,255,255,.5); font-size:.72rem; margin-top:.2rem; }

.qw-bars{ display:flex; align-items:flex-end; gap:.4rem; height: 40px; margin-top: .9rem; }
.qw-bars span{ flex:1; background: linear-gradient(180deg, var(--qw-cyan), var(--qw-blue)); border-radius: 3px; height: var(--h); }
.qw-bars-lg{ height: 50px; margin-top: .6rem; }

.qw-stat-block{ text-align:left; }

.qw-ai-core{
  width: 60px; height:60px; margin: .3rem auto 1rem;
  border-radius:50%;
  border: 1px solid rgba(23,193,232,.4);
  display:flex; align-items:center; justify-content:center;
  color: var(--qw-cyan);
  font-size:1.5rem;
  box-shadow: 0 0 30px rgba(23,193,232,.25);
}
.qw-pill{
  background: rgba(255,255,255,.07);
  color: rgba(255,255,255,.8);
  font-size: .7rem;
  font-weight: 600;
  padding: .3rem .7rem;
  border-radius: 20px;
}

.qw-hub-node{
  position:absolute; left:50%; top:50%;
  transform: translate(-50%,-50%);
  width: 46px; height:46px; border-radius:50%;
  background: var(--qw-blue);
  color:#fff;
  display:flex; align-items:center; justify-content:center;
  box-shadow: 0 0 0 8px rgba(47,143,255,.12), 0 10px 30px rgba(47,143,255,.5);
  font-size: 1.1rem;
  font-weight: 900;
  z-index: 2;
}

.qw-breadcrumb-strip{
  background: var(--qw-navy);
  padding: .9rem 0;
}
.qw-breadcrumb-nav{ margin: 0; }
.qw-breadcrumb{
  background: transparent;
  margin: 0;
  padding: 0;
  font-size: .82rem;
}
.qw-breadcrumb .breadcrumb-item a{ color: rgba(255,255,255,.55); }
.qw-breadcrumb .breadcrumb-item a:hover{ color: var(--qw-cyan); }
.qw-breadcrumb .breadcrumb-item.active{ color: #fff; font-weight: 700; }
.qw-breadcrumb .breadcrumb-item + .breadcrumb-item{ padding-left: .5rem; }
.qw-breadcrumb .breadcrumb-item + .breadcrumb-item::before{
  content: "/";
  color: rgba(255,255,255,.3);
  padding-right: .5rem;
}

/* Trust bar */
.qw-trustbar{
  background: #2F8FFF;
  border-radius: 24px;
  padding: 2.2rem 0;
  margin: -40px 10px 0 10px;
  position: relative;
  z-index: 2;
  box-shadow: 0 -10px 40px rgba(20,30,60,.08), 0 20px 40px rgba(20,30,60,.08);
}
.qw-trust-item{ display:flex; align-items:center; gap:1rem; padding: .4rem 1.5rem; }
@media (max-width: 575.98px){
  .qw-trustbar .row > [class^="col"]{
    border-left: none;
    border-top: 1px solid rgba(255,255,255,.2);
  }
  .qw-trustbar .row > [class^="col"]:first-child{ border-top: none; }
  .qw-trust-item{ padding: .8rem 1rem; }
}
@media (min-width: 576px) and (max-width: 767.98px){
  .qw-trustbar .row > [class^="col"]:nth-child(odd){
    border-left: none;
  }
  .qw-trustbar .row > [class^="col"]:nth-child(even){
    border-left: 1px solid #eef1f5;
  }
}
@media (min-width: 768px){
  .qw-trustbar .row > [class^="col"]{ border-left: 1px solid #eef1f5; }
  .qw-trustbar .row > [class^="col"]:first-child{ border-left: none; }
}
.qw-trust-icon{
  width: 48px; height:48px; border-radius:50%;
  background: var(--qw-light);
  color: var(--qw-blue);
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
  font-size:1.2rem;
}
.qw-trust-label{ font-weight:800; font-size:.68rem; letter-spacing:.1em; color: rgba(255,255,255,.7); margin-bottom:.2rem; }
.qw-trust-title{ font-weight:700; font-size:.95rem; color: white; }
.qw-trust-sub{ font-size:.8rem; color: white; margin-top:.1rem; }
.qw-proof-icon{ font-weight:800; font-size:1rem; }

/* ============ CAPABILITY GRID / SWIPER ============ */
.qw-capability-swiper-wrap{
  position: relative;
}
.qw-capability-swiper,
.qw-article-capability-swiper{
  padding: .3rem .3rem 2.6rem;
}
.qw-capability-swiper .swiper-slide,
.qw-article-capability-swiper .swiper-slide{
  height: auto;
  display: flex;
}
.qw-capability-swiper .swiper-slide .qw-capability,
.qw-article-capability-swiper .swiper-slide .qw-capability{
  width: 100%;
}
.qw-capability-pagination,
.qw-article-capability-pagination{
  position: absolute;
  left: 0; right: 0; bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
}
.qw-capability-pagination .swiper-pagination-bullet,
.qw-article-capability-pagination .swiper-pagination-bullet{
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--qw-border);
  opacity: 1;
  margin: 0;
  transition: background .2s ease, width .2s ease;
}
.qw-capability-pagination .swiper-pagination-bullet-active,
.qw-article-capability-pagination .swiper-pagination-bullet-active{
  background: var(--qw-blue);
  width: 22px;
  border-radius: 4px;
}

.qw-capability{
  background:#fff;
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  padding: 1.6rem;
  height: 100%;
  display:flex;
  flex-direction:column;
  transition: transform .2s ease, box-shadow .2s ease;
}

.qw-logo{
  max-width:180px;
}
.qw-capability:hover{ transform: translateY(-5px); box-shadow: 0 20px 40px rgba(10,22,40,.1); }
.qw-capability-tag{ color:#89a2ad; font-size:.75rem; font-weight:800; }
.qw-capability-symbol{ margin: 2rem 0 1.6rem; height:56px; display:flex; align-items:flex-end; gap:.5rem; }
.qw-capability-symbol[src]{ display:block; width:100%; max-width:96px; height:auto; margin-left:auto; margin-right:auto; object-fit:contain; }
.qw-capability-head{ display:flex; flex-direction:column; align-items:center; gap:1rem; padding-bottom: 30px; }
.qw-capability-head .qw-capability-symbol{ margin:0; flex-shrink:0; }
.qw-capability-head .qw-capability-symbol[src]{ width:80px; max-width:80px; margin:0; }
.qw-capability-head h3{ margin:0; line-height:1.25; min-height: calc(1.25em * 2); display:flex; align-items:center; }
.qw-capability-text p{ margin:0; }
.qw-capability-symbol i{ display:block; width:16px; border-radius:4px; background: linear-gradient(var(--qw-cyan), var(--qw-blue)); }
.qw-capability-symbol-bars i:nth-child(1){ height:42%; }
.qw-capability-symbol-bars i:nth-child(2){ height:72%; }
.qw-capability-symbol-bars i:nth-child(3){ height:100%; }
.qw-capability-symbol-dots i{ width:38px; height:38px; border-radius:50%; }
.qw-capability-symbol-rings i{ width:44px; height:44px; border-radius:50%; background:none; border:6px solid #87ddff; }
.qw-capability-symbol-line i{ width:40px; height:4px; margin-bottom: 20px; }
.qw-capability h3{ font-size:1.2rem; font-weight:800; margin-bottom:.7rem; }
.qw-capability p{ color: var(--qw-gray); font-size:.9rem; line-height:1.6; margin:0; }
.qw-capability a{
  display:flex; justify-content:space-between; align-items:center;
  margin-top:auto; padding-top:1.2rem; border-top:1px solid var(--qw-border);
  font-size:.82rem; font-weight:700; color: var(--qw-ink);
}
.qw-capability a:hover{ color: var(--qw-blue); }
.qw-capability a i{
  width: 30px; height: 30px;
  border-radius: 50%;
  background: var(--qw-blue);
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: .8rem;
  flex-shrink: 0;
  transition: background .2s ease, transform .2s ease;
}
.qw-capability a:hover i{ background: #1f78e6; transform: rotate(45deg); }

/* ============ SERVICE ROUTES ============ */
.qw-route-swiper-wrap{ padding-bottom: 2.5rem; }
.qw-route-swiper .swiper-slide{ height:auto; }
.qw-route-card{
  display:flex; flex-direction:column;
  height:100%;
  min-height: 420px;
  padding: 2.4rem 2rem;
  border-radius: 20px;
}
.qw-route-tag{ font-size:.75rem; font-weight:800; letter-spacing:.04em; opacity:.7; margin-bottom:1.4rem; }
.qw-route-card h3{ font-size:1.7rem; font-weight:800; margin-bottom:.9rem; }
.qw-route-desc{ font-size:.95rem; line-height:1.6; margin-bottom:1.6rem; opacity:.85; }
.qw-route-list,
.qw-route-list ul,
.qw-route-list ol{ list-style:none; margin:0 0 1.6rem; padding:0; }
.qw-route-list ul,
.qw-route-list ol{ margin-bottom:0; }
.qw-route-list p{ margin:0; }
.qw-route-list li{
  padding: .9rem 0;
  border-top: 1px solid rgba(255,255,255,.14);
  font-size: .95rem;
}
.qw-route-list li:last-child{ border-bottom: 1px solid rgba(255,255,255,.14); }
.qw-route-cta{
  margin-top:auto;
  display:flex; align-items:center; justify-content:space-between;
  font-weight:700; font-size:.95rem;
}
.qw-route-cta i{ transition: transform .2s ease; }
.qw-route-card:hover .qw-route-cta i{ transform: translate(3px,-3px); }

.qw-route-card-dark{ background: var(--qw-navy); color:#fff; }
.qw-route-card-dark .qw-route-cta{ color:#fff; }

.qw-route-card-blue{ background: linear-gradient(135deg, var(--qw-blue), #1f6fe0); color:#fff; }
.qw-route-card-blue .qw-route-cta{ color:#fff; }
.qw-route-card-blue .qw-route-list li{ border-color: rgba(255,255,255,.28); }

.qw-route-card-light{ background: var(--qw-light); color: var(--qw-ink); border: 1px solid var(--qw-border); }
.qw-route-card-light .qw-route-tag{ opacity:.6; }
.qw-route-card-light .qw-route-desc{ color: var(--qw-gray); opacity:1; }
.qw-route-card-light .qw-route-list li{ border-color: var(--qw-border); }
.qw-route-card-light .qw-route-cta{ color: var(--qw-ink); }

.qw-route-pagination{ position:relative; margin-top:1rem; text-align:center; }
.qw-route-pagination .swiper-pagination-bullet{
  width:8px; height:8px; background: var(--qw-border); opacity:1; margin:0 4px;
}
.qw-route-pagination .swiper-pagination-bullet-active{ background: var(--qw-blue); width:22px; border-radius:4px; }

/* ============ SOLUTIONS ============ */
.qw-solutions-section{ background: var(--qw-navy); padding: 5.5rem 0; color:#fff; }
.qw-solutions-sub{ color: rgba(255,255,255,.7); font-size:1rem; line-height:1.7; margin-top:1rem; max-width: 420px; }
@media (min-width: 992px){
  .qw-solutions-sticky-col{ position: sticky; top: 7rem; align-self: flex-start; }
}
.qw-solution-list{ display:flex; flex-direction:column; }
.qw-solution-item{
  display:flex; align-items:center; gap:1.4rem;
  border-top: 1px solid rgba(255,255,255,.15);
  padding: 1.5rem .2rem;
  transition: padding-left .2s ease, background .2s ease;
}
.qw-solution-list a:last-child,
.qw-solution-list .qw-solution-item:last-child{ border-bottom: 1px solid rgba(255,255,255,.15); }
.qw-solution-item:hover{ padding-left: .8rem; background: rgba(255,255,255,.03); }
.qw-solution-num{ color: var(--qw-cyan); font-size:.78rem; font-weight:800; width:36px; flex-shrink:0; }
.qw-solution-body{ flex:1; display:flex; flex-direction:column; }
.qw-solution-body strong{ font-size:1.3rem; color:#fff; }
.qw-solution-body small{ color: rgba(255,255,255,.6); font-size:.85rem; margin-top:.3rem; }
.qw-solution-arrow{ color: rgba(255,255,255,.6); font-size:1.3rem; flex-shrink:0; }
.qw-solution-item:hover .qw-solution-arrow{ color: var(--qw-cyan); }

.qw-explain-list{ display:flex; flex-direction:column; }
.qw-explain-item{
  border-top: 1px solid rgba(255,255,255,.15);
  padding: 1.7rem .2rem;
}
.qw-explain-list .qw-explain-item:last-child{ border-bottom: 1px solid rgba(255,255,255,.15); }
.qw-explain-tag{ color: var(--qw-cyan); font-size:.75rem; font-weight:800; letter-spacing:.04em; margin-bottom:.7rem; }
.qw-explain-item h3{ font-size:1.3rem; font-weight:800; color:#fff; margin-bottom:.6rem; }
.qw-explain-item p:last-child{ color: rgba(255,255,255,.65); font-size:.95rem; line-height:1.6; margin:0; }

.qw-process-list{ display:flex; flex-direction:column; }
.qw-process-item{
  display:flex; align-items:flex-start; gap:1.4rem;
  border-top: 1px solid var(--qw-border);
  padding: 1.5rem .2rem;
}
.qw-process-list .qw-process-item:last-child{ border-bottom: 1px solid var(--qw-border); }
.qw-process-num{ color: var(--qw-blue); font-size:.78rem; font-weight:800; width:26px; flex-shrink:0; padding-top:.3rem; }
.qw-process-body{ flex:1; display:flex; flex-direction:column; }
.qw-process-body strong{ font-size:1.15rem; color: var(--qw-ink); font-weight:700; }
.qw-process-body small{ color: var(--qw-gray); font-size:.9rem; margin-top:.35rem; }

/* ============ ECOSYSTEM CONNECT ============ */
.qw-connect-section{
  background: radial-gradient(1200px 600px at 80% -10%, #142a4d 0%, var(--qw-navy) 55%);
  padding: 5.5rem 0;
  color:#fff;
}
.qw-connect-grid{ margin-top: 3rem; border-top: 1px solid rgba(255,255,255,.15); }
.qw-connect-item{
  position: relative;
  padding: 2rem 2rem 3.5rem;
  border-bottom: 1px solid rgba(255,255,255,.15);
}
@media (min-width: 768px){
  .qw-connect-item{ border-right: 1px solid rgba(255,255,255,.15); }
  .qw-connect-item:last-child{ border-right:none; }
}
.qw-connect-tag{ color: var(--qw-cyan); font-size:.7rem; font-weight:800; letter-spacing:.04em; margin-bottom:1.4rem; }
.qw-connect-item h3{ font-size:1.05rem; font-weight:700; color:#fff; margin:0; max-width: 320px; }
.qw-connect-arrow{
  position:absolute; right:1.6rem; bottom:1.4rem;
  color: rgba(255,255,255,.6); font-size:1rem;
  transition: color .2s ease, transform .2s ease;
}
.qw-connect-item:hover .qw-connect-arrow{ color: var(--qw-cyan); transform: translate(2px,-2px); }

/* ============ FAQ ============ */
.qw-faq-list.accordion{ --bs-accordion-border-width: 0; }
.qw-faq-item.accordion-item{
  background: transparent;
  border: none;
  border-top: 1px solid var(--qw-border);
}
.qw-faq-list .qw-faq-item:last-child{ border-bottom: 1px solid var(--qw-border); }
.qw-faq-question.accordion-button{
  background: transparent;
  box-shadow: none;
  padding: 1.5rem .2rem;
  font-size: 1rem;
  font-weight: 700;
  color: var(--qw-ink);
}
.qw-faq-question.accordion-button:not(.collapsed){ color: var(--qw-blue); box-shadow:none; }
.qw-faq-question.accordion-button::after{
  background-image: none;
  content: "\002B";
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--qw-blue);
  width: auto; height: auto;
  transition: transform .2s ease;
}
.qw-faq-question.accordion-button:not(.collapsed)::after{ content: "\2212"; transform: none; }
.qw-faq-answer.accordion-body{
  padding: 0 .2rem 1.6rem;
  color: var(--qw-gray);
  font-size: .95rem;
  line-height: 1.7;
}

/* ============ AUDIENCE ============ */
.qw-audience-section{ background: var(--qw-navy); padding: 5.5rem 0; color:#fff; }
.qw-audience-grid{ border-top: 1px solid rgba(255,255,255,.15); }
.qw-audience-item{ padding: 1.8rem 2rem 1.8rem 0; }
.qw-audience-item:nth-child(n+3){ border-top: 1px solid rgba(255,255,255,.15); }
@media (min-width: 768px){
  .qw-audience-item:nth-child(odd){
    border-right: 1px solid rgba(255,255,255,.15);
    padding-right: 2rem;
  }
  .qw-audience-item:nth-child(even){ padding-left: 2rem; }
}
.qw-audience-num{ display:block; color: var(--qw-cyan); font-size:.75rem; font-weight:800; margin-bottom:1rem; }
.qw-audience-item p{ font-size:.95rem; font-weight:700; color:#fff; margin:0; max-width: 340px; }

/* ============ SCOPE ============ */
.qw-scope-section{ background: var(--qw-light); padding: 5.5rem 0; }
.qw-scope-grid{
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.qw-scope-card{
  position: relative;
  flex: 1 1 260px;
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: 16px;
  padding: 1.8rem 1.6rem;
  box-shadow: 0 10px 30px rgba(10,22,40,.05);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.qw-scope-card::before{
  content: "";
  position: absolute; top:0; left:0; right:0;
  height: 4px;
  border-radius: 16px 16px 0 0;
  background: linear-gradient(90deg, var(--qw-blue), var(--qw-cyan));
  opacity: 0;
  transition: opacity .2s ease;
}
.qw-scope-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(10,22,40,.1);
  border-color: transparent;
}
.qw-scope-card:hover::before{ opacity: 1; }
.qw-scope-num{
  display:inline-flex; align-items:center; justify-content:center;
  width: 38px; height: 38px;
  border-radius: 10px;
  background: var(--qw-light);
  color: var(--qw-blue);
  font-size:.78rem; font-weight:800;
  margin-bottom: 1.2rem;
}
.qw-scope-card h3{ font-size:1.1rem; font-weight:800; color: var(--qw-ink); margin-bottom:.6rem; }
.qw-scope-card p{ font-size:.9rem; line-height:1.6; color: var(--qw-gray); margin:0; }

.qw-check-list{ display:flex; flex-direction:column; }
.qw-check-item{
  display:flex; align-items:flex-start; gap:1rem;
  border-top: 1px solid var(--qw-border);
  padding: 1.4rem .2rem;
}
.qw-check-list .qw-check-item:last-child{ border-bottom: 1px solid var(--qw-border); }
.qw-check-item i{
  display:flex; align-items:center; justify-content:center;
  width: 24px; height: 24px;
  border-radius: 50%;
  background: var(--qw-blue);
  color:#fff;
  font-size:.75rem;
  flex-shrink:0;
  margin-top:.05rem;
}
.qw-check-item span{ color: var(--qw-ink); font-size:1rem; font-weight:600; }

/* ============ METRICS ============ */
.qw-metrics-grid{
  display:flex; flex-wrap:wrap;
  gap: 1.8rem;
  border-top: 1px solid var(--qw-border);
  border-bottom: 1px solid var(--qw-border);
}
.qw-metric-item{
  flex: 1 1 220px;
  padding: 1.8rem 1.8rem 1.8rem 0;
}
@media (min-width: 768px){
  .qw-metric-item:not(:last-child){ border-right: 1px solid var(--qw-border); }
}
.qw-metric-item h3{ color: var(--qw-blue); font-size:1.3rem; font-weight:800; margin-bottom:.6rem; }
.qw-metric-item p{ color: var(--qw-gray); font-size:.9rem; margin:0; }

/* ============ RELATED CASE STUDY CTA ============ */
.qw-case-cta-box{
  display:block;
  background: radial-gradient(1200px 600px at 80% -10%, #142a4d 0%, var(--qw-navy) 55%);
  border-radius: 28px;
  padding: 3rem 3.5rem;
  color:#fff;
  text-decoration:none;
  transition: transform .2s ease, box-shadow .2s ease;
}
.qw-case-cta-box:hover{ transform: translateY(-3px); box-shadow: 0 20px 40px rgba(10,22,40,.25); color:#fff; }
.qw-case-cta-box h3{ color:#fff; font-weight:800; font-size: clamp(1.3rem, 2.4vw, 1.7rem); line-height:1.3; margin:0; }
.qw-case-cta-number{ display:block; color: var(--qw-cyan); font-size: 2.2rem; font-weight:800; margin-bottom: 1.2rem; }
.qw-case-cta-divider{ border-top: 1px solid rgba(255,255,255,.2); margin-bottom: 1.2rem; }
.qw-case-cta-link{ font-size:.8rem; font-weight:700; color:#fff; }
.qw-case-cta-link i{ margin-left:.3rem; }

/* ============ TYPOGRAPHY SHOWCASE (text.html) ============ */
.qw-type-list{ display:flex; flex-direction:column; }
.qw-type-row{
  display:flex; flex-direction:column;
  gap:.8rem;
  border-top: 1px solid var(--qw-border);
  padding: 2rem .2rem;
}
.qw-type-list .qw-type-row:last-child{ border-bottom: 1px solid var(--qw-border); }
.qw-type-tag{ color: var(--qw-blue); font-size:.75rem; font-weight:800; letter-spacing:.04em; }
.qw-type-row h1, .qw-type-row h2, .qw-type-row h3,
.qw-type-row h4, .qw-type-row h5, .qw-type-row h6, .qw-type-row p{ margin:0; color: var(--qw-ink); }
.qw-type-row p{ color: var(--qw-gray); max-width: 720px; }

/* ============ SERVICES EXPLORE (services.html) ============ */
.qw-services-bignum{
  font-size: 3rem;
  font-weight: 800;
  color: var(--qw-border);
  line-height: 1;
  flex-shrink: 0;
}
.qw-services-tabs{
  display: inline-flex;
  flex-wrap: wrap;
  gap: .3rem;
  background: var(--qw-light);
  border-radius: 14px;
  padding: .4rem;
  margin: 3rem 0 2.5rem;
}
.qw-services-tab{
  border: none;
  background: transparent;
  padding: .65rem 1.4rem;
  border-radius: 10px;
  font-weight: 700;
  font-size: .9rem;
  color: var(--qw-gray);
  transition: background .2s ease, color .2s ease, box-shadow .2s ease;
}
.qw-services-tab.active{
  background: linear-gradient(135deg, var(--qw-blue), var(--qw-cyan));
  color: #fff;
  box-shadow: 0 6px 16px rgba(10,22,40,.08);
}
.qw-services-tab:not(.active):hover{ color: var(--qw-ink); }

.qw-svc-row-list{ display: flex; flex-direction: column; }
.qw-svc-row{
  display: flex;
  align-items: center;
  gap: 1.8rem;
  border-top: 1px solid var(--qw-border);
  padding: 1.8rem .2rem;
  transition: background .2s ease;
}
.qw-svc-row-list > .qw-svc-row:last-child{ border-bottom: 1px solid var(--qw-border); }
.qw-svc-row:hover{ background: var(--qw-light); }
.qw-svc-row-num{
  flex-shrink: 0;
  min-width: 84px;
  border-radius: 50%;
  aspect-ratio: 1 / 1;
  background: linear-gradient(135deg, rgba(47,143,255,.1), rgba(23,193,232,.1));
  color: var(--qw-blue);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  font-weight: 800;
  transition: background .2s ease, color .2s ease;
}
.qw-svc-row:hover .qw-svc-row-num{
  background: linear-gradient(135deg, var(--qw-blue), var(--qw-cyan));
  color: #fff;
}
.qw-svc-row-body{ flex: 1; min-width: 0; }
.qw-svc-row-title{
  font-size: 1.3rem;
  font-weight: 800;
  color: var(--qw-ink);
  margin: 0 0 1.1rem;
}
.qw-svc-row-links{
  display: flex;
  flex-wrap: wrap;
  gap: .6rem 1rem;
}
.qw-svc-row-links a{
  color: var(--qw-ink);
  font-size: .85rem;
  font-weight: 700;
  padding: .5rem 1.1rem;
  border: none;
  border-radius: 30px;
  background: var(--qw-light);
  transition: color .15s ease, background .15s ease, transform .15s ease, box-shadow .15s ease;
}
.qw-svc-row-links a:hover{
  color: #fff;
  background: var(--qw-blue);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(47,143,255,.35);
}
@media (max-width: 575.98px){
  .qw-svc-row{ flex-direction: column; align-items: flex-start; gap: 1rem; }
  .qw-svc-row-num{
    align-self: flex-start;
    min-width: 56px;
    aspect-ratio: unset;
    width: 56px; height: 56px;
    font-size: 1.3rem;
  }
}

/* Light variant of the dark solution-list (reused on light-background pages) */
.qw-solution-list-light .qw-solution-item{ border-top-color: var(--qw-border); }
.qw-solution-list-light a:last-child{ border-bottom-color: var(--qw-border); }
.qw-solution-list-light .qw-solution-item:hover{ background: var(--qw-light); }
.qw-solution-list-light .qw-solution-body strong{ color: var(--qw-ink); }
.qw-solution-list-light .qw-solution-body small{ color: var(--qw-gray); }
.qw-solution-list-light .qw-solution-arrow{ color: var(--qw-gray); }
.qw-solution-list-light .qw-solution-item:hover .qw-solution-arrow{ color: var(--qw-blue); }
.qw-solution-list-light .qw-svc-row-num{ font-size: 1.4rem; min-width: 64px; }
.qw-solution-item:hover .qw-svc-row-num{
  background: linear-gradient(135deg, var(--qw-blue), var(--qw-cyan));
  color: #fff;
}

@media (max-width: 575.98px){
  .qw-services-bignum{ font-size: 2.2rem; }
}

/* ============ AI FEATURE ============ */
.qw-ai-feature-section{
  background: linear-gradient(130deg, #042433, #063b61);
  color:#fff;
  padding: 5.5rem 0;
}
.qw-ai-sub{ color: rgba(255,255,255,.75); font-size:1rem; line-height:1.7; max-width:640px; margin: 1.2rem 0; }
.qw-ai-list{
  list-style:none; padding:0; margin: 0 0 2rem;
  display:grid; grid-template-columns: 1fr 1fr; gap: .8rem;
}
.qw-ai-list li{ color: rgba(255,255,255,.85); font-size:.92rem; }
.qw-ai-list li::before{ content:"✓"; color: var(--qw-cyan); margin-right:.6rem; font-weight:800; }

.qw-workflow{
  border: 1px solid rgba(23,193,232,.35);
  border-radius: 28px;
  padding: 2.5rem;
  min-height: 320px;
  display:flex; align-items:center; justify-content:center;
  gap: .8rem; flex-wrap: wrap;
  background: radial-gradient(circle at center, rgba(23,193,232,.18), transparent 70%);
  text-align:center;
}
.qw-workflow-step{
  border: 1px solid #43c8ff;
  border-radius: 10px;
  padding: .9rem 1.1rem;
  color: #d8f7ff;
  font-size: .85rem;
  font-weight: 600;
}
.qw-workflow-arrow{ color: var(--qw-cyan); font-size:1.1rem; font-style: normal; display:inline-block; transition: transform .2s ease; }
@media (max-width: 567px){
  .qw-workflow{ flex-direction: column; }
  .qw-workflow-arrow{ transform: rotate(90deg); }
}
.qw-workflow-result{ width:100%; margin-top: 1.2rem; }
.qw-workflow-result strong{ display:block; font-size: 3.2rem; font-weight:800; color: var(--qw-cyan); }
.qw-workflow-result small{ color: rgba(255,255,255,.65); }

/* ============ GENERIC SECTIONS ============ */
.qw-section{ padding: 5.5rem 0; }
.qw-section-tinted{ background: var(--qw-light); }

.qw-h2{
  font-weight: 800;
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  line-height: 1.2;
  color: var(--qw-ink);
}
/* ============ HOW WE COLLABORATE (about.html) ============ */
.qw-collab-section{ padding: 5.5rem 0; }
.qw-collab-section .qw-h2{ margin-top: .8rem; max-width: 760px; }
.qw-collab-row{ margin-top: 3rem; }
.qw-collab-card{
  position: relative;
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  padding: 2rem 1.8rem;
  height: 100%;
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.qw-collab-border{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: visible;
}
.qw-collab-border rect{
  fill: none;
  stroke: url(#qwCollabGrad);
  stroke-width: 2px;
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  transition: stroke-dashoffset .9s ease;
}
.qw-collab-card:hover .qw-collab-border rect{
  stroke-dashoffset: 0;
}
.qw-collab-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 25px 50px rgba(10,22,40,.1);
  border-color: transparent;
}
.qw-collab-top{
  display: flex;
  align-items: flex-start;
  gap: 1.1rem;
}
.qw-collab-icon{
  width: 68px; height: 68px;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--qw-blue), var(--qw-cyan));
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.7rem;
  flex-shrink: 0;
  transition: transform .25s ease;
}
.qw-collab-card:hover .qw-collab-icon{
  transform: scale(1.06);
}
.qw-collab-title{
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--qw-ink);
  margin: 0;
}
.qw-collab-desc{
  font-size: .9rem;
  color: var(--qw-gray);
  line-height: 1.6;
  margin: 0;
  position: relative;
  z-index: 1;
}

.qw-lead-text{
  font-size: 1.05rem;
  color: var(--qw-gray);
  line-height: 1.7;
  margin-bottom: 1.2rem;
}

/* ============ PROCESS (services.html) ============ */
.qw-process-grid{ border-top: 1px solid var(--qw-border); }
.qw-process-cell{
  display: flex;
  align-items: flex-start;
  gap: 1.2rem;
  padding: 2.4rem;
  border-left: 1px solid var(--qw-border);
  transition: background .2s ease;
}
.qw-process-cell:nth-child(odd){ border-left: none; }
.qw-process-cell:hover{ background: var(--qw-light); }
.qw-process-icon{
  width: 44px; height: 44px;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(47,143,255,.12), rgba(23,193,232,.12));
  color: var(--qw-blue);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.15rem;
  flex-shrink: 0;
  transition: background .25s ease, color .25s ease;
}
.qw-process-cell:hover .qw-process-icon{
  background: linear-gradient(135deg, var(--qw-blue), var(--qw-cyan));
  color: #fff;
}
.qw-process-title{
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--qw-ink);
  margin: 0 0 .6rem;
}
.qw-process-desc{
  font-size: .9rem;
  color: var(--qw-gray);
  line-height: 1.6;
  margin: 0;
}
@media (max-width: 767.98px){
  .qw-process-cell{ border-left: none; border-top: 1px solid var(--qw-border); }
  .qw-process-grid{ border-top: none; }
  .qw-process-cell:first-child{ border-top: none; }
}
.qw-text-link{
  font-weight: 700;
  color: var(--qw-blue);
  display: inline-flex;
  align-items: center;
  gap: .4rem;
}
.qw-text-link-sm{
  font-weight: 700;
  color: var(--qw-blue);
  font-size: .88rem;
  display: inline-flex;
  align-items: center;
  gap: .35rem;
}

/* Services list */
.qw-service-row{
  display:flex;
  align-items:center;
  gap: 2rem;
  padding: 1.8rem 0;
  border-bottom: 1px solid var(--qw-border);
  transition: padding-left .2s ease;
}
.qw-service-row:hover{ padding-left: .5rem; }
.qw-service-row-last{ border-bottom:none; }
.qw-service-num{
  font-weight: 800;
  font-size: 1.1rem;
  color: var(--qw-blue);
  width: 50px;
  flex-shrink:0;
}
.qw-service-body h3{ font-weight:700; font-size:1.15rem; margin-bottom:.3rem; }
.qw-service-body p{ color: var(--qw-gray); margin:0; font-size:.95rem; }
.qw-service-arrow{ margin-left:auto; color: var(--qw-gray); font-size:1.2rem; flex-shrink:0; }
.qw-service-row:hover .qw-service-arrow{ color: var(--qw-blue); }

/* Case cards */
.qw-case-card{
  background: var(--qw-light);
  border-radius: var(--qw-radius);
  padding: 2rem;
  height: 100%;
  border: 1px solid transparent;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.qw-case-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 20px 40px rgba(10,22,40,.12);
}
.qw-case-card-dark{
  background: var(--qw-navy);
  color: #fff;
}
.qw-case-card-dark .qw-case-desc,
.qw-case-card-dark .qw-case-footer{ color: rgba(255,255,255,.6); }
.qw-case-tag{
  color: var(--qw-blue);
  font-weight: 700;
  font-size: .72rem;
  letter-spacing: .08em;
}
.qw-case-card-dark .qw-case-tag{ color: var(--qw-cyan); }
.qw-case-number{
  font-weight: 800;
  font-size: 2.6rem;
  margin: 1rem 0 .3rem;
}
.qw-case-desc{ color: var(--qw-gray); margin-bottom: 1.5rem; }
.qw-case-footer{
  font-size: .85rem;
  color: var(--qw-gray);
  padding-top: 1rem;
  border-top: 1px solid rgba(0,0,0,.08);
}
.qw-case-card-dark .qw-case-footer{ border-top-color: rgba(255,255,255,.1); }
.qw-case-link{
  display: flex; align-items: center; justify-content: space-between;
  margin-top: 1rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(0,0,0,.08);
  font-size: .85rem;
  font-weight: 700;
  color: var(--qw-ink);
}
.qw-case-link:hover{ color: var(--qw-blue); }
.qw-case-card-dark .qw-case-link{ color: #fff; border-top-color: rgba(255,255,255,.1); }
.qw-case-card-dark .qw-case-link:hover{ color: var(--qw-cyan); }

/* Case Library (cases.html) */
.qw-case-card-tint{ background: rgba(47,143,255,.05); }
.qw-case-card-solid{ background: var(--qw-blue); color: #fff; }
.qw-case-card-solid .qw-case-desc{ color: rgba(255,255,255,.75); }
.qw-case-card-solid .qw-case-tag{ color: rgba(255,255,255,.7); }
.qw-case-card-solid .qw-case-link{ color: #fff; border-top-color: rgba(255,255,255,.2); }
.qw-case-card-solid .qw-case-link:hover{ color: var(--qw-navy); }

.qw-case-card-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.6rem;
}
.qw-case-meta{
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--qw-gray);
}
.qw-case-card-dark .qw-case-meta,
.qw-case-card-solid .qw-case-meta{ color: rgba(255,255,255,.45); }

.qw-case-client{
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--qw-ink);
  margin: 0 0 .6rem;
}
.qw-case-card-dark .qw-case-client,
.qw-case-card-solid .qw-case-client{ color: #fff; }

.qw-case-blurb{
  font-size: .9rem;
  color: var(--qw-gray);
  line-height: 1.6;
  margin: 0;
}
.qw-case-card-dark .qw-case-blurb{ color: rgba(255,255,255,.6); }
.qw-case-card-solid .qw-case-blurb{ color: rgba(255,255,255,.85); }

.qw-case-lib-note{ font-size: .92rem; color: var(--qw-gray); line-height: 1.6; }
.qw-text-link-plain{ color: var(--qw-blue); font-weight: 700; text-decoration: none; }
.qw-text-link-plain:hover{ text-decoration: underline; }

.qw-case-filters{
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
}
.qw-case-filter{
  border: 1.5px solid var(--qw-border);
  background: #fff;
  color: var(--qw-ink);
  font-weight: 700;
  font-size: .82rem;
  padding: .55rem 1.2rem;
  border-radius: 999px;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.qw-case-filter:hover{ border-color: var(--qw-blue); color: var(--qw-blue); }
.qw-case-filter.active{
  background: var(--qw-navy);
  border-color: var(--qw-navy);
  color: #fff;
}
.qw-case-filter.active:hover{ color: #fff; }

/* Insight cards */
.qw-insight-card{
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  padding: 2rem;
  height: 100%;
  overflow: hidden;
  transition: box-shadow .2s ease, transform .2s ease;
}
.qw-insight-card:hover{ box-shadow: 0 20px 40px rgba(10,22,40,.08); transform: translateY(-3px); }
.qw-insight-card h3{ font-size: 1.1rem; font-weight:700; margin: .8rem 0 1.4rem; line-height:1.4; }
.qw-insight-img{
  display: block;
  width: calc(100% + 4rem);
  margin: -2rem -2rem 1.5rem;
  height: auto;
  object-fit: cover;
}

/* ============ CTA SECTION ============ */
.qw-cta-section{ padding: 0 0 6rem; margin-top: -1rem; }
.qw-cta-box{
  background: linear-gradient(120deg, #1f78e6, var(--qw-cyan));
  border-radius: 28px;
  padding: 3.5rem;
  color: #fff;
}
.qw-h2-white{
  font-weight: 800;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  line-height: 1.25;
  color: #fff;
}
.qw-cta-sub{ color: rgba(255,255,255,.85); font-size: 1rem; line-height:1.6; }

/* ============ EVOLUTION (about.html) ============ */
.qw-evolution-section{
  background: var(--qw-navy);
  padding: 5.5rem 0;
  color: #fff;
}
.qw-evolution-row{
  margin-top: 3rem;
  border-top: 1px solid rgba(255,255,255,.1);
}
.qw-evolution-col{
  padding: 2.5rem 2rem;
  border-left: 1px solid rgba(255,255,255,.1);
}
.qw-evolution-col:first-child{ border-left: none; }
.qw-evolution-num{
  display: block;
  color: var(--qw-cyan);
  font-weight: 800;
  font-size: .85rem;
  margin-bottom: 2.5rem;
}
.qw-evolution-label{
  display: block;
  color: rgba(255,255,255,.45);
  font-size: .72rem;
  letter-spacing: .08em;
  font-weight: 700;
  margin-bottom: .6rem;
}
.qw-evolution-title{
  font-size: 1.15rem;
  font-weight: 800;
  color: #fff;
  margin: 0 0 .6rem;
}
.qw-evolution-desc{
  font-size: .88rem;
  color: rgba(255,255,255,.65);
  line-height: 1.6;
  margin: 0;
}
@media (max-width: 991.98px){
  .qw-evolution-col{ border-left: none; border-top: 1px solid rgba(255,255,255,.1); }
  .qw-evolution-col:first-child{ border-top: none; }
}

.qw-form-card{
  background: #fff;
  border-radius: 18px;
  padding: 2rem;
  color: var(--qw-ink);
}
.qw-form-label{ font-weight:700; font-size:.9rem; display:block; margin-bottom:.7rem; }
.qw-goal-group{ display:flex; flex-wrap:wrap; gap:.6rem; }
.qw-goal-btn{
  border: 1.5px solid var(--qw-border);
  background: #fff;
  border-radius: 10px;
  padding: .5rem 1rem;
  font-weight: 700;
  font-size: .85rem;
  color: var(--qw-ink);
  transition: all .15s ease;
}
.qw-goal-btn:hover{ border-color: var(--qw-blue); }
.qw-goal-btn.active{ background: var(--qw-navy); color:#fff; border-color: var(--qw-navy); }
.qw-input{
  border: 1.5px solid var(--qw-border);
  border-radius: 10px;
  padding: .75rem 1rem;
}
.qw-input:focus{ box-shadow: none; border-color: var(--qw-blue); }
.qw-form-note{ color: var(--qw-gray); font-size: .78rem; margin: .8rem 0 0; }
.qw-link{ color: var(--qw-blue); text-decoration: underline; }
.qw-link:hover{ color: #1f78e6; }

.form-check:has(.qw-form-note){
  display: flex;
  align-items: flex-start;
  gap: .6rem;
  padding-left: 0;
}
.form-check:has(.qw-form-note) .form-check-input{
  width: 16px; height: 16px;
  margin-top: 2px;
  margin-left: 0;
  flex-shrink: 0;
  border: 1.5px solid var(--qw-border);
  border-radius: 6px;
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.form-check:has(.qw-form-note) .form-check-input:checked{
  background-color: var(--qw-blue);
  border-color: var(--qw-blue);
}
.form-check:has(.qw-form-note) .form-check-input:focus{
  border-color: var(--qw-blue);
  box-shadow: 0 0 0 3px rgba(47,143,255,.2);
}
.form-check:has(.qw-form-note) .qw-form-note{
  margin: 0;
  line-height: 1.5;
}

/* ============ FOOTER ============ */
.qw-footer{
  background: var(--qw-navy);
  color: rgba(255,255,255,.65);
  padding: 4rem 0 2rem;
}
.qw-footer .qw-brand-text{ color:#fff; }
.qw-footer-text{ font-size: .9rem; line-height:1.6; max-width: 320px; }
.qw-footer-title{ color:#fff; font-weight:700; font-size:.9rem; margin-bottom:1rem; }
.qw-footer-list{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:.6rem; font-size:.88rem; }
.qw-footer-list a{ color: rgba(255,255,255,.65); }
.qw-footer-list a:hover{ color: var(--qw-cyan); }
.qw-footer-title-accent{ color: var(--qw-cyan); }
.qw-footer-list-plus a{ display: inline-flex; align-items: center; gap: .5rem; }
.qw-footer-list-plus a i{ font-size: .7rem; color: var(--qw-cyan); }
.qw-footer-newsletter{
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: var(--qw-cyan);
  font-size: .85rem;
  font-weight: 600;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 30px;
  padding: .5rem 1rem;
  margin: 1rem 0;
}
.qw-footer-newsletter:hover{ border-color: var(--qw-cyan); }
.qw-footer-contact-list{ margin-bottom: .5rem; }
.qw-footer-contact-list a{ color: rgba(255,255,255,.65); }
.qw-footer-contact-list a:hover{ color: var(--qw-cyan); }
.qw-footer-divider{ border-color: rgba(255,255,255,.1); margin: 2.5rem 0 1.5rem; }
.qw-footer-copy{ font-size: .8rem; }
.qw-footer-heading{ font-weight:800; font-size:1.9rem; line-height:1.15; color:#fff; }
.qw-footer-heading span{ color: #0393dd; }
.qw-footer-legal{ font-size:.8rem; color: rgba(255,255,255,.65); }
.qw-footer-legal:hover{ color: var(--qw-cyan); }
.qw-back-to-top{
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 46px; height: 46px;
  border-radius: 50%;
  background: var(--qw-blue);
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem;
  box-shadow: 0 10px 25px rgba(10,22,40,.25);
  z-index: 900;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity .25s ease, transform .25s ease, visibility .25s, background .2s ease;
}
.qw-back-to-top.qw-visible{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.qw-back-to-top:hover{ background: #1f78e6; transform: translateY(-3px); }

/* ============ BUSINESS-LED SOLUTIONS (lyseis.html) ============ */
.qw-biz-num{
  font-size: clamp(2.4rem, 5vw, 3.6rem);
  font-weight: 800;
  line-height: 1;
  color: var(--qw-border);
  flex-shrink: 0;
}

.qw-biz-tabs{
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius) var(--qw-radius) 0 0;
  overflow: hidden;
}
.qw-biz-tab-col{
  border-right: 1px solid var(--qw-border);
  border-bottom: 1px solid var(--qw-border);
}
.qw-biz-tab-col:last-child{ border-right: none; }
.qw-biz-tab{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  border: none;
  background: #fff;
  padding: 1.3rem 1.5rem;
  text-align: left;
  transition: background .2s ease;
}
.qw-biz-tab-num{
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  color: var(--qw-blue);
  margin-bottom: .55rem;
}
.qw-biz-tab-label{
  font-weight: 700;
  font-size: .92rem;
  color: var(--qw-ink);
  line-height: 1.35;
}
.qw-biz-tab:not(.active):hover{ background: var(--qw-light); }
.qw-biz-tab.active{ background: var(--qw-navy); }
.qw-biz-tab.active .qw-biz-tab-num{ color: var(--qw-cyan); }
.qw-biz-tab.active .qw-biz-tab-label{ color: #fff; }

.qw-biz-panel-wrap{
  border: 1px solid var(--qw-border);
  border-top: none;
  border-radius: 0 0 var(--qw-radius) var(--qw-radius);
  padding: clamp(1.6rem, 4vw, 3rem);
}

.qw-biz-title{
  font-weight: 800;
  font-size: clamp(2rem, 4vw, 2.8rem);
  color: var(--qw-ink);
  margin: .2rem 0 1rem;
}
.qw-biz-signals-box{
  background: var(--qw-light);
  border-radius: 12px;
  padding: 1.5rem 1.75rem;
  margin: 1.6rem 0;
}
.qw-biz-signals-question{
  font-weight: 800;
  font-size: .74rem;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--qw-blue);
  margin-bottom: .5rem;
}
.qw-biz-signals-label{
  font-weight: 700;
  font-size: .92rem;
  color: var(--qw-ink);
  margin-bottom: 0;
}
.qw-biz-signal-list{
  list-style: none;
  margin: 0;
  padding: 0;
}
.qw-biz-signal-list li{
  color: var(--qw-gray);
  font-size: .95rem;
  padding: .75rem 0;
  border-top: 1px solid var(--qw-border);
}
.qw-biz-signal-list li:first-child{ border-top: none; }

.qw-biz-card{
  background: var(--qw-navy);
  border-radius: var(--qw-radius);
  padding: clamp(1.6rem, 3vw, 2.2rem);
  height: 100%;
  color: #fff;
}
.qw-biz-card-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  color: rgba(255,255,255,.5);
  margin-bottom: 1.8rem;
}
.qw-biz-card-tag{ color: var(--qw-cyan); }
.qw-biz-card-item{
  display: flex;
  gap: 1rem;
  padding: 1.1rem 0;
  border-top: 1px solid rgba(255,255,255,.1);
}
.qw-biz-card-item:first-child{ border-top: none; padding-top: 0; }
.qw-biz-card-num{
  font-size: .74rem;
  font-weight: 800;
  color: rgba(255,255,255,.4);
  flex-shrink: 0;
  width: 22px;
  padding-top: .15rem;
}
.qw-biz-card-body{ flex: 1; }
.qw-biz-card-body strong{
  display: block;
  font-weight: 700;
  font-size: .96rem;
  margin-bottom: .7rem;
}
.qw-biz-progress{
  height: 3px;
  background: rgba(255,255,255,.14);
  border-radius: 2px;
  overflow: hidden;
}
.qw-biz-progress span{
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--qw-blue), var(--qw-cyan));
  border-radius: 2px;
}
.qw-biz-outcome{
  margin-top: 1.8rem;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 12px;
  padding: 1.2rem 1.4rem;
}
.qw-biz-outcome-label{
  display: block;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .08em;
  color: rgba(255,255,255,.5);
  margin-bottom: .5rem;
}
.qw-biz-outcome strong{ font-size: 1.02rem; font-weight: 700; }

/* ============ METHODOLOGY (lyseis.html) ============ */
.qw-method-section{ background: var(--qw-navy); padding: 5.5rem 0; }
.qw-method-grid{ border-top: 1px solid rgba(255,255,255,.12); }
.qw-method-cell{
  display: flex;
  align-items: center;
  gap: 1.2rem;
  padding: 2.2rem;
  border-left: 1px solid rgba(255,255,255,.12);
  border-top: 1px solid rgba(255,255,255,.12);
}
.qw-method-cell:nth-child(-n+2){ border-top: none; }
.qw-method-cell:nth-child(odd){ border-left: none; }
.qw-method-icon{
  width: 44px; height: 44px;
  flex-shrink: 0;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(47,143,255,.18), rgba(23,193,232,.18));
  color: var(--qw-cyan);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.15rem;
}
.qw-method-title{
  font-size: 1.1rem;
  font-weight: 800;
  color: #fff;
  margin: 0 0 .4rem;
}
.qw-method-desc{
  font-size: .88rem;
  color: rgba(255,255,255,.6);
  line-height: 1.6;
  margin: 0;
}
@media (max-width: 767.98px){
  .qw-method-cell{ border-left: none; }
  .qw-method-cell:nth-child(-n+2){ border-top: 1px solid rgba(255,255,255,.12); }
  .qw-method-cell:first-child{ border-top: none; }
  .qw-method-grid{ border-top: none; }
}

/* ============ PORTFOLIO BY NEED (clients.html) ============ */
.qw-portfolio-card{
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  padding: 2.2rem;
  text-decoration: none;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.qw-portfolio-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 20px 44px rgba(10,22,40,.09);
  border-color: var(--qw-blue);
}
.qw-portfolio-head{
  display: flex;
  align-items: center;
  gap: 1.4rem;
  margin-bottom: 1.8rem;
}
.qw-portfolio-icon{
  width: 68px; height: 68px;
  flex-shrink: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(47,143,255,.12), rgba(23,193,232,.12));
  color: var(--qw-blue);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.9rem;
  transition: background .25s ease, color .25s ease;
}
.qw-portfolio-card:hover .qw-portfolio-icon{
  background: linear-gradient(135deg, var(--qw-blue), var(--qw-cyan));
  color: #fff;
}
.qw-portfolio-head-text{
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.qw-portfolio-stat{
  display: block;
  font-size: clamp(1.7rem, 3vw, 2.1rem);
  font-weight: 800;
  color: var(--qw-blue);
  line-height: 1;
  margin-bottom: .35rem;
  font-variant-numeric: tabular-nums;
}
.qw-portfolio-title{
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--qw-ink);
  margin: 0;
}
.qw-portfolio-desc{
  font-size: .92rem;
  color: var(--qw-gray);
  line-height: 1.6;
  margin: 0 0 1.6rem;
  flex-grow: 1;
}
.qw-portfolio-link{
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 700;
  font-size: .88rem;
  color: var(--qw-ink);
  border-top: 1px solid var(--qw-border);
  padding-top: 1.4rem;
  transition: color .25s ease;
}
.qw-portfolio-link i{ transition: transform .25s ease, color .25s ease; color: var(--qw-gray); }
.qw-portfolio-card:hover .qw-portfolio-link{ color: var(--qw-blue); }
.qw-portfolio-card:hover .qw-portfolio-link i{ transform: translate(3px, -3px); color: var(--qw-blue); }

/* ============ SELECTED CLIENTS (clients.html) ============ */
.qw-client-chip{
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: 10px;
  padding: 1.1rem 1rem;
  font-weight: 700;
  font-size: .92rem;
  color: var(--qw-ink);
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.qw-client-chip:hover{
  border-color: var(--qw-navy);
  box-shadow: 0 10px 24px rgba(10,22,40,.12);
  transform: translateY(-2px);
}
.qw-client-chip img{
  max-width: 100%;
  max-height: 42px;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* ============ CASE STUDIES STRIP (clients.html) ============ */
.qw-case-strip{ background: var(--qw-navy); padding: 4.5rem 0; }

/* ============ CONTEXT / HOW WE PRESENT RESULTS (cases.html) ============ */
.qw-context-section{ background: var(--qw-navy); padding: 5.5rem 0; }
.qw-context-list{ display: flex; flex-direction: column; }
.qw-context-item{
  display: flex;
  align-items: baseline;
  gap: 1.6rem;
  padding: 1.6rem 0;
  border-top: 1px solid rgba(255,255,255,.15);
}
.qw-context-num{
  color: var(--qw-cyan);
  font-size: .78rem;
  font-weight: 800;
  width: 26px;
  flex-shrink: 0;
}
.qw-context-body h3{
  font-size: 1.1rem;
  font-weight: 800;
  color: #fff;
  margin: 0 0 .5rem;
}
.qw-context-body p{
  font-size: .92rem;
  color: rgba(255,255,255,.6);
  margin: 0;
}

/* ============ HERO CLIENT CARD (case-page.html) ============ */
.qw-client-card{
  height: 100%;
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 22px;
  padding: 2.4rem;
  background: rgba(255,255,255,.02);
}
.qw-client-card-label{
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .1em;
  color: var(--qw-cyan);
  margin-bottom: .9rem;
}
.qw-client-card-name{
  font-size: 1.9rem;
  font-weight: 800;
  color: #fff;
  margin: 0 0 .6rem;
}
.qw-client-card-sub{
  font-size: .95rem;
  color: rgba(255,255,255,.6);
  margin: 0 0 1.8rem;
  padding-bottom: 1.8rem;
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.qw-client-card-services{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .9rem;
}
.qw-client-card-services li{
  font-size: 1rem;
  color: rgba(255,255,255,.85);
}
.qw-client-card-steps{
  display: flex;
  flex-direction: column;
  margin-top: .3rem;
}
.qw-client-card-step{
  display: flex;
  align-items: baseline;
  gap: 1rem;
  padding: .85rem 0;
  border-top: 1px solid rgba(255,255,255,.12);
}
.qw-client-card-step-num{
  font-size: .72rem;
  font-weight: 800;
  color: var(--qw-cyan);
  width: 22px;
  flex-shrink: 0;
}
.qw-client-card-step-text{
  font-size: .95rem;
  font-weight: 600;
  color: #fff;
}

/* ============ CASE STUDY BODY (case-page.html) ============ */
.qw-case-toc{
  position: sticky;
  top: 140px;
}
.qw-case-toc-label{
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  color: var(--qw-gray);
  margin-bottom: 1.2rem;
}
.qw-case-toc-nav .nav-link{
  padding: .55rem 0 .55rem 1rem;
  font-size: .92rem;
  font-weight: 600;
  color: var(--qw-gray);
  border-left: 2px solid var(--qw-border);
  transition: color .2s ease, border-color .2s ease;
}
.qw-case-toc-nav .nav-link:hover{ color: var(--qw-ink); }
.qw-case-toc-nav .nav-link.active{
  color: var(--qw-blue);
  border-left-color: var(--qw-blue);
  font-weight: 700;
}

.qw-contact-rows{
  display: flex;
  flex-direction: column;
  margin-top: .4rem;
}
.qw-contact-row{
  padding: 1.1rem 0;
  border-top: 1px solid rgba(255,255,255,.12);
}
.qw-contact-row-label{
  display: flex;
  align-items: center;
  gap: .55rem;
  font-size: .85rem;
  font-weight: 600;
  color: rgba(255,255,255,.55);
  margin: 0 0 .5rem;
}
.qw-contact-row-label i{ color: var(--qw-cyan); font-size: .9rem; }
.qw-contact-row-value{
  font-size: 1.1rem;
  font-weight: 800;
  color: #fff;
  margin: 0;
}
.qw-contact-row-value a{ color: #fff; text-decoration: none; transition: color .2s ease; }
.qw-contact-row-value a:hover{ color: var(--qw-cyan); }
.qw-contact-row-value-sm{
  font-size: .95rem;
  font-weight: 600;
  line-height: 1.6;
  color: rgba(255,255,255,.85);
}

.qw-map-frame{
  position: relative;
  border-radius: var(--qw-radius);
  overflow: hidden;
  background: var(--qw-light);
  height: 420px;
}
.qw-map-frame iframe{
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}
@media (max-width: 767.98px){
  .qw-map-frame{ height: 300px; }
}

.qw-next-steps-section{ background: var(--qw-navy); padding: 5.5rem 0; }
.qw-next-steps-cell{
  padding: 0 2rem;
  border-left: 1px solid rgba(255,255,255,.15);
}
.qw-next-steps-cell:first-child{ border-left: none; padding-left: 0; }
.qw-next-steps-num{
  display: block;
  font-size: .78rem;
  font-weight: 800;
  color: var(--qw-cyan);
  margin-bottom: 1rem;
}
.qw-next-steps-title{
  font-size: 1.05rem;
  font-weight: 800;
  color: #fff;
  margin: 0 0 .6rem;
}
.qw-next-steps-desc{
  font-size: .88rem;
  color: rgba(255,255,255,.6);
  line-height: 1.6;
  margin: 0;
}
@media (max-width: 767.98px){
  .qw-next-steps-cell{
    border-left: none;
    border-top: 1px solid rgba(255,255,255,.15);
    padding: 1.6rem 0 0;
    margin-top: 1.6rem;
  }
  .qw-next-steps-cell:first-child{ border-top: none; margin-top: 0; padding-top: 0; }
}

.qw-start-card{
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  padding: 2.2rem;
}
.qw-start-card-highlight{
  background: rgba(47,143,255,.05);
  border-color: rgba(47,143,255,.3);
}
.qw-start-card-time{
  font-size: .85rem;
  font-weight: 800;
  color: var(--qw-blue);
  margin-bottom: 1rem;
}
.qw-start-card-title{
  font-size: 1.4rem;
  font-weight: 800;
  color: var(--qw-ink);
  margin: 0 0 .9rem;
}
.qw-start-card-desc{
  font-size: .95rem;
  color: var(--qw-gray);
  line-height: 1.7;
  margin: 0 0 1.2rem;
}

.qw-start-card-desc ul{
  list-style: none;
  margin: 0 0 1.6rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .6rem;
  flex-grow: 1;
  line-height: 0.7;

}
.qw-start-card-desc ul li{
  font-size: .9rem;
  color: var(--qw-gray);
}
.qw-start-card .btn{ align-self: flex-start; }

.qw-sidebar-related{
  margin-top: 2rem;
  padding-top: 1.6rem;
  border-top: 1px solid var(--qw-border);
}
.qw-sidebar-related-label{
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  color: var(--qw-blue);
  margin-bottom: .8rem;
}
.qw-sidebar-related-title{
  font-size: 1.05rem;
  font-weight: 800;
  color: var(--qw-ink);
  margin: 0 0 .5rem;
}
.qw-sidebar-related-desc{
  font-size: .85rem;
  color: var(--qw-gray);
  line-height: 1.5;
  margin: 0 0 1rem;
}

.qw-case-chapter{ scroll-margin-top: 160px; }
.qw-case-chapter-eyebrow{
  font-size: .8rem;
  font-weight: 800;
  letter-spacing: .06em;
  color: var(--qw-blue);
  margin-bottom: .9rem;
}
.qw-case-chapter-title{
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 800;
  color: var(--qw-ink);
  line-height: 1.3;
  margin-bottom: 1.2rem;
}
.qw-case-chapter-text{
  font-size: 1rem;
  color: var(--qw-gray);
  line-height: 1.7;
  max-width: 720px;
  margin-bottom: 2rem;
}
.qw-case-mini-card{
  background: rgba(47,143,255,.05);
  border-radius: 14px;
  padding: 1.6rem;
  height: 100%;
}
.qw-case-mini-label{
  font-size: .8rem;
  font-weight: 800;
  color: var(--qw-blue);
  margin-bottom: .7rem;
}
.qw-case-mini-text{
  font-size: .92rem;
  color: var(--qw-gray);
  line-height: 1.6;
  margin: 0;
}
.qw-case-step-list{ border-bottom: 1px solid var(--qw-border); }
.qw-case-step{
  display: flex;
  gap: 1.4rem;
  padding: 1.6rem 0;
  border-top: 1px solid var(--qw-border);
}
.qw-case-step-num{
  color: var(--qw-blue);
  font-weight: 800;
  font-size: .78rem;
  width: 26px;
  flex-shrink: 0;
  padding-top: .2rem;
}
.qw-case-step-body h3{
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--qw-ink);
  margin: 0 0 .4rem;
}
.qw-case-step-body p{
  font-size: .92rem;
  color: var(--qw-gray);
  margin: 0;
}
.qw-case-link-rows{
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.qw-case-link-row{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid var(--qw-border);
  border-radius: 12px;
  padding: 1.1rem 1.5rem;
  font-weight: 700;
  font-size: .95rem;
  color: var(--qw-ink);
  text-decoration: none;
  transition: border-color .2s ease, background .2s ease;
}
.qw-case-link-row i{ color: var(--qw-gray); transition: transform .2s ease, color .2s ease; }
.qw-case-link-row:hover{ border-color: var(--qw-blue); background: var(--qw-light); color: var(--qw-ink); }
.qw-case-link-row:hover i{ color: var(--qw-blue); transform: translate(3px, -3px); }
.qw-case-highlight{
  display: flex;
  align-items: center;
  gap: 2rem;
  background: var(--qw-navy);
  border-radius: var(--qw-radius);
  padding: 2.2rem 2.5rem;
}
.qw-case-highlight-num{
  font-size: clamp(2.6rem, 5vw, 3.4rem);
  font-weight: 800;
  color: var(--qw-cyan);
  line-height: 1;
  flex-shrink: 0;
}
.qw-case-highlight-body h3{
  font-size: 1.15rem;
  font-weight: 700;
  color: #fff;
  margin: 0 0 .5rem;
}
.qw-case-highlight-body p{
  font-size: .92rem;
  color: rgba(255,255,255,.6);
  margin: 0;
}
@media (max-width: 575.98px){
  .qw-case-highlight{ flex-direction: column; align-items: flex-start; gap: 1.2rem; }
}
.qw-case-footnote{
  font-size: .8rem;
  color: var(--qw-gray);
  line-height: 1.6;
  margin-top: 1.6rem;
  margin-bottom: 0;
}
.qw-case-chapter-divider{
  margin: 3.5rem 0;
  border: none;
  border-top: 1px solid var(--qw-border);
  opacity: 1;
}
@media (max-width: 991.98px){
  .qw-case-toc{ position: static; margin-bottom: 1rem; }
}

/* ============ RESULTS STRIP (case-page.html) ============ */
.qw-stats-strip{
  background: var(--qw-navy);
  border-top: 1px solid rgba(255,255,255,.12);
  padding: 3rem 0;
}
.qw-stats-col{
  display: flex;
  flex-direction: column;
  padding: 1rem 2rem;
  border-left: 1px solid rgba(255,255,255,.12);
}
.qw-stats-col:first-child{ border-left: none; padding-left: 0; }
.qw-stats-num{
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  font-weight: 800;
  color: var(--qw-cyan);
  line-height: 1;
  margin-bottom: .7rem;
}
.qw-stats-label{
  font-size: .88rem;
  color: rgba(255,255,255,.6);
}
@media (max-width: 767.98px){
  .qw-stats-col{ border-left: none; padding: 1.2rem 0; border-top: 1px solid rgba(255,255,255,.12); }
  .qw-stats-col:nth-child(-n+2){ border-top: none; }
  .qw-stats-col:nth-child(even){ padding-left: 1.5rem; }
}

/* ============ OPEN POSITIONS (kariera.html) ============ */
.qw-job-status{
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  padding: 2.2rem 2.5rem;
}
.qw-job-status-title{
  font-size: 1.3rem;
  font-weight: 800;
  color: var(--qw-ink);
  margin: 0 0 .8rem;
}
.qw-job-status-desc{
  font-size: .92rem;
  color: var(--qw-gray);
  line-height: 1.6;
}

.qw-job-card{
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  padding: 1.9rem;
  text-decoration: none;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.qw-job-card:hover{
  transform: translateY(-5px);
  box-shadow: 0 18px 36px rgba(10,22,40,.08);
  border-color: var(--qw-blue);
}
.qw-job-head{
  display: flex;
  align-items: center;
  gap: .6rem;
  margin-bottom: 1.6rem;
  flex-grow: 1;
}
.qw-job-num{
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .05em;
  color: var(--qw-blue);
}
.qw-job-title{
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--qw-ink);
  margin: 0;
}
.qw-job-link{
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 700;
  font-size: .85rem;
  color: var(--qw-ink);
  border-top: 1px solid var(--qw-border);
  padding-top: 1.2rem;
  transition: color .25s ease;
}
.qw-job-link i{ color: var(--qw-gray); transition: transform .25s ease, color .25s ease; }
.qw-job-card:hover .qw-job-link{ color: var(--qw-blue); }
.qw-job-card:hover .qw-job-link i{ color: var(--qw-blue); transform: translate(3px, -3px); }

/* ============ APPLICATION FORM (kariera.html) ============ */
.qw-application-card{
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  padding: clamp(1.8rem, 4vw, 3rem);
}
.qw-form-step-num{
  display: block;
  font-size: .78rem;
  font-weight: 800;
  color: var(--qw-blue);
  margin-bottom: .9rem;
}
.qw-application-title{
  font-size: clamp(1.6rem, 3vw, 2rem);
  font-weight: 800;
  color: var(--qw-ink);
  margin: 0 0 .6rem;
}
.qw-application-sub{
  font-size: .92rem;
  color: var(--qw-gray);
  margin-bottom: 1.8rem;
}
.qw-application-divider{
  border: none;
  border-top: 1px solid var(--qw-border);
  opacity: 1;
  margin: 0 0 2rem;
}

.qw-pill-select{ display: flex; flex-wrap: wrap; gap: .6rem; }
.qw-pill-btn{
  border: 1.5px solid var(--qw-border);
  background: #fff;
  color: var(--qw-ink);
  font-weight: 700;
  font-size: .85rem;
  padding: .55rem 1.2rem;
  border-radius: 999px;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.qw-pill-btn:hover{ border-color: var(--qw-blue); color: var(--qw-blue); }
.qw-pill-btn.active{ background: var(--qw-navy); border-color: var(--qw-navy); color: #fff; }
.qw-pill-btn.active:hover{ color: #fff; }

.qw-file-input{
  display: flex;
  align-items: center;
  gap: 1rem;
  border: 1.5px solid var(--qw-border);
  border-radius: 10px;
  padding: .7rem 1rem;
  background: rgba(47,143,255,.04);
  cursor: pointer;
  transition: border-color .2s ease;
  margin-bottom: .6rem;
}
.qw-file-input:hover{ border-color: var(--qw-blue); }
.qw-file-input-btn{
  font-weight: 700;
  font-size: .85rem;
  color: var(--qw-ink);
  flex-shrink: 0;
}
.qw-file-input-name{
  font-size: .85rem;
  color: var(--qw-gray);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ============ JOB POSTING PAGE (job-page.html) ============ */
.qw-job-hero{
  padding: 3.5rem 0 3rem;
  border-bottom: 1px solid var(--qw-border);
}
.qw-job-meta{
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  margin-top: 1.6rem;
}
.qw-job-meta-pill{
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  border: 1px solid var(--qw-border);
  background: var(--qw-light);
  border-radius: 999px;
  padding: .45rem 1.1rem;
  font-size: .85rem;
  font-weight: 700;
  color: var(--qw-ink);
}
.qw-job-meta-pill i{ color: var(--qw-blue); }

.qw-job-section-title{
  font-size: 1.3rem;
  font-weight: 800;
  color: var(--qw-ink);
  margin: 2.6rem 0 1.2rem;
}
.qw-job-list{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.qw-job-list li{
  display: flex;
  align-items: flex-start;
  gap: .8rem;
  font-size: .95rem;
  color: var(--qw-gray);
  line-height: 1.6;
}
.qw-job-list li i{ color: var(--qw-blue); flex-shrink: 0; margin-top: .2rem; }

.qw-job-facts{
  position: sticky;
  top: 140px;
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  padding: 1.9rem;
}
.qw-job-facts-row{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .85rem 0;
  border-top: 1px solid var(--qw-border);
}
.qw-job-facts-row:first-child{ border-top: none; }
.qw-job-facts-label{ font-size: .85rem; color: var(--qw-gray); font-weight: 600; }
.qw-job-facts-value{ font-size: .85rem; color: var(--qw-ink); font-weight: 700; text-align: right; }
@media (max-width: 991.98px){
  .qw-job-facts{ position: static; }
}

/* ============ INSIGHTS GRID (insights.html) ============ */
.qw-insight-post{
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  padding: 2rem;
  text-decoration: none;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.qw-insight-post:hover{
  transform: translateY(-5px);
  box-shadow: 0 18px 36px rgba(10,22,40,.08);
  border-color: var(--qw-blue);
}
.qw-insight-post-dark{ background: var(--qw-navy); border-color: var(--qw-navy); }
.qw-insight-post-featured{ justify-content: space-between; min-height: 280px; }
.qw-insight-post-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: .6rem;
  margin-bottom: 1.4rem;
}
.qw-insight-post-tag{
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  color: var(--qw-blue);
}
.qw-insight-post-dark .qw-insight-post-tag{ color: var(--qw-cyan); }
.qw-insight-post-meta{ font-size: .78rem; color: var(--qw-gray); }
.qw-insight-post-dark .qw-insight-post-meta{ color: rgba(255,255,255,.5); }
.qw-insight-post-title{
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--qw-ink);
  line-height: 1.4;
  margin: 0 0 .8rem;
}
.qw-insight-post-featured .qw-insight-post-title{ font-size: clamp(1.3rem, 2.4vw, 1.6rem); }
.qw-insight-post-dark .qw-insight-post-title{ color: #fff; }
.qw-insight-post-desc{
  font-size: .92rem;
  color: var(--qw-gray);
  line-height: 1.6;
  margin: 0 0 1.6rem;
  flex-grow: 1;
}
.qw-insight-post-dark .qw-insight-post-desc{ color: rgba(255,255,255,.65); }
.qw-insight-post-link{
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 700;
  font-size: .85rem;
  color: var(--qw-ink);
  border-top: 1px solid var(--qw-border);
  padding-top: 1.2rem;
  transition: color .25s ease;
}
.qw-insight-post-link i{ color: var(--qw-gray); transition: transform .25s ease, color .25s ease; }
.qw-insight-post:hover .qw-insight-post-link{ color: var(--qw-blue); }
.qw-insight-post:hover .qw-insight-post-link i{ color: var(--qw-blue); transform: translate(3px, -3px); }
.qw-insight-post-dark .qw-insight-post-link{ color: #fff; border-top-color: rgba(255,255,255,.15); }
.qw-insight-post-dark .qw-insight-post-link i{ color: rgba(255,255,255,.6); }
.qw-insight-post-dark:hover .qw-insight-post-link{ color: var(--qw-cyan); }
.qw-insight-post-dark:hover .qw-insight-post-link i{ color: var(--qw-cyan); }

.qw-pagination .page-link{
  border: 1px solid var(--qw-border);
  color: var(--qw-ink);
  font-weight: 700;
  margin: 0 .25rem;
  border-radius: 10px;
}
.qw-pagination .page-item.active .page-link{
  background: var(--qw-navy);
  border-color: var(--qw-navy);
  color: #fff;
}
.qw-pagination .page-link:hover{ border-color: var(--qw-blue); color: var(--qw-blue); }
.qw-pagination .page-item.disabled .page-link{ color: var(--qw-border); background: transparent; }
.qw-insights-empty{
  list-style: none;
  color: var(--qw-gray);
  font-size: .92rem;
  text-align: center;
  width: 100%;
}

/* ============ ARTICLE META (article.html) ============ */
.qw-article-meta{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 1rem 0 1.6rem;
}
.qw-article-meta-item{
  font-size: .85rem;
  font-weight: 600;
  color: rgba(255,255,255,.6);
  padding: 0 1rem;
  border-left: 1px solid rgba(255,255,255,.2);
}
.qw-article-meta-item:first-child{
  padding-left: 0;
  border-left: none;
  color: rgba(255,255,255,.9);
  font-weight: 700;
}
@media (max-width: 575.98px){
  .qw-article-meta-item{ padding: 0 .7rem; }
}

.qw-article-table-wrap{
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  overflow: hidden;
  margin-bottom: 1.6rem;
}
.qw-article-table-scroll{ overflow-x: auto; }
.qw-article-table{
  width: 100%;
  min-width: 560px;
  margin: 0;
  border-collapse: collapse;
}
.qw-article-table thead th{
  background: var(--qw-navy);
  color: #fff;
  font-weight: 700;
  font-size: .9rem;
  padding: 1rem 1.4rem;
  text-align: left;
  border: none;
  white-space: nowrap;
}
.qw-article-table tbody td{
  padding: 1rem 1.4rem;
  font-size: .92rem;
  color: var(--qw-ink);
  border-top: 1px solid var(--qw-border);
  vertical-align: middle;
}
.qw-article-table tbody tr:first-child td{ border-top: none; }

.qw-article-quote{
  background: var(--qw-navy);
  border-radius: var(--qw-radius);
  padding: 2.2rem 2.4rem;
  color: #fff;
  font-size: clamp(1.1rem, 2vw, 1.3rem);
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 1.6rem;
}

.qw-article-related{
  background: rgba(47,143,255,.05);
  border: 1px solid var(--qw-border);
  border-radius: var(--qw-radius);
  padding: 1.8rem 2rem;
  margin-bottom: 1.6rem;
}
.qw-article-related-label{
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .08em;
  color: var(--qw-blue);
  margin-bottom: .7rem;
}
.qw-article-related-title{
  font-size: 1.3rem;
  font-weight: 800;
  color: var(--qw-ink);
  margin: 0 0 .9rem;
}
.qw-article-related-row{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.5rem;
  flex-wrap: wrap;
}
.qw-article-related-desc{
  flex: 1;
  min-width: 220px;
  font-size: .92rem;
  color: var(--qw-gray);
  line-height: 1.6;
  margin: 0;
}
.qw-article-related-link{
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-weight: 700;
  font-size: .88rem;
  color: var(--qw-blue);
  white-space: nowrap;
  text-decoration: none;
  transition: color .2s ease;
}
.qw-article-related-link i{ transition: transform .2s ease; }
.qw-article-related-link:hover{ color: var(--qw-navy); }
.qw-article-related-link:hover i{ transform: translate(3px, -3px); }

.qw-article-list{
  list-style: none;
  margin: 0 0 1.6rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .9rem;
}
.qw-article-list li{
  font-size: 1rem;
  color: var(--qw-gray);
  line-height: 1.6;
}
.qw-article-list li strong{ color: var(--qw-ink); font-weight: 800; }

.qw-article-conclusion{
  background: rgba(47,143,255,.06);
  border-radius: var(--qw-radius);
  padding: 2.2rem 2.4rem;
  margin-top: 3.5rem;
}
.qw-article-conclusion-label{
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  color: var(--qw-blue);
  margin-bottom: .9rem;
}
.qw-article-conclusion-title{
  font-size: clamp(1.6rem, 3vw, 2rem);
  font-weight: 800;
  color: var(--qw-ink);
  line-height: 1.3;
  margin: 0 0 1rem;
}
.qw-article-conclusion-text{
  font-size: .95rem;
  color: var(--qw-gray);
  line-height: 1.7;
  margin: 0 0 1.4rem;
}
.qw-article-conclusion-links{
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem;
}

.qw-article-box{
  background: rgba(47,143,255,.06);
  border-radius: 14px;
  padding: 1.8rem 2rem;
  margin-bottom: 1.6rem;
}
.qw-article-box-label{
  font-size: 1rem;
  font-weight: 700;
  color: var(--qw-ink);
  margin-bottom: 1rem;
}
.qw-article-box-tags{
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
}
.qw-article-box-tag{
  font-family: "Courier New", monospace;
  font-size: .82rem;
  font-weight: 600;
  color: var(--qw-ink);
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: 999px;
  padding: .45rem 1rem;
}

/* ============ QUICK ANSWER CALLOUT (article.html) ============ */
.qw-quick-answer{
  position: relative;
  background: rgba(47,143,255,.06);
  border-radius: 14px;
  padding: 1.8rem 2rem 1.8rem 2.3rem;
  overflow: hidden;
}
.qw-quick-answer::before{
  content: "";
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--qw-blue), var(--qw-cyan));
}
.qw-quick-answer-label{
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .08em;
  color: var(--qw-blue);
  margin-bottom: .9rem;
}
.qw-quick-answer-label i{ font-size: .9rem; }
.qw-quick-answer-text{
  font-size: 1.02rem;
  color: var(--qw-ink);
  line-height: 1.8;
  margin: 0;
}
.qw-quick-answer-text strong{ color: var(--qw-navy); font-weight: 800; }
.qw-quick-answer-text em{ color: var(--qw-gray); font-style: italic; }
.qw-quick-answer-arrow{ color: var(--qw-blue); font-weight: 800; }

.qw-quick-answer-tags{
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  margin: 1.4rem 0 2.6rem;
}
.qw-quick-answer-tag{
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--qw-border);
  background: #fff;
  border-radius: 999px;
  padding: .5rem 1.1rem;
  font-size: .82rem;
  font-weight: 700;
  color: var(--qw-ink);
  text-decoration: none;
  transition: border-color .2s ease, color .2s ease, transform .2s ease;
}
.qw-quick-answer-tag:hover{ border-color: var(--qw-blue); color: var(--qw-blue); transform: translateY(-2px); }

/* ============ RESPONSIVE ============ */
@media (max-width: 991.98px){
  .qw-cards-grid{ margin-top: 2rem; }
  .qw-hub-node{ display:none; }
  .qw-cta-box{ padding: 2rem; }
  .navbar-nav{ margin: 1rem 0; }
}
@media (max-width: 575.98px){
  .qw-cards-grid{ grid-template-columns: 1fr; }
}
@media (max-width: 767.98px){
  .qw-ai-list{ grid-template-columns: 1fr; }
  .qw-workflow{ padding: 1.6rem; }
  .qw-biz-tab-col:nth-child(2n){ border-right: none; }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .qw-float-card{ animation: none; }
}

.qw-logo-footer{
  max-width:230px;
}

/* Team cards */
.qw-team-card{
  background: #fff;
  border: 1px solid var(--qw-border);
  border-radius: 20px;
  overflow: hidden;
  height: 100%;
  transition: box-shadow .25s ease, transform .25s ease;
}
.qw-team-card:hover{
  box-shadow: 0 20px 40px rgba(20,30,60,.08);
  transform: translateY(-4px);
}
.qw-team-photo{
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: var(--qw-border);
}
.qw-team-photo img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.qw-team-body{
  padding: 1.4rem 1.4rem 1.6rem;
}
.qw-team-name{
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--qw-ink);
  margin: 0 0 .2rem;
}
.qw-team-role{
  font-size: .85rem;
  font-weight: 600;
  color: var(--qw-blue);
  margin: 0 0 .8rem;
}
.qw-team-quote{
  font-size: .88rem;
  color: var(--qw-gray);
  font-style: italic;
  line-height: 1.5;
  margin: 0;
}