/* SPAN CS polish layer (Nov 2026). Loaded after each page's own styles. Remove the <link> to revert. */

/* Type rendering */
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
h1,h2,h3,.t-h1,.t-h2,.hero-title{text-wrap:balance}
p,li{text-wrap:pretty}

/* Keyboard focus */
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--amber,#F59920);outline-offset:3px;border-radius:6px}

/* Secondary text on dark sections: readable size and contrast */
.trust-lbl{color:rgba(255,255,255,.74)}
.trust-desc{font-size:.8rem;color:rgba(255,255,255,.6)}
.stack-desc{font-size:.8rem;color:rgba(255,255,255,.64)}
.office-info p{font-size:.78rem;color:rgba(255,255,255,.64)}
.fc-link,.fc-link1{color:rgba(255,255,255,.66)}
.footer-copy,.footer-legal a{color:rgba(255,255,255,.55)}

/* Office cards: country code chips instead of emoji flags */
.office-flag{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:26px;padding:0 7px;border-radius:7px;background:rgba(245,153,32,.12);border:1px solid rgba(245,153,32,.3);color:var(--amber,#F59920);font-family:var(--font-d,inherit);font-size:.68rem;font-weight:800;letter-spacing:.08em;line-height:1}

/* Service pages: drop the repeated title under the hero, keep copy at a readable measure */
.svc-section>.svc-badge,.svc-section>h2{display:none}
.svc-body>p{max-width:72ch;font-size:1.0625rem;line-height:1.75}
@media(min-width:769px){.section:has(.svc-layout){padding-top:76px}}

/* Company page */
.tl-item p{max-width:72ch}
.val-card p{font-size:.875rem;line-height:1.6}
.partner-item-icon{width:112px;height:48px;border-radius:0}
.partner-item-icon img{max-width:104px;max-height:34px}
@media(min-width:1101px){
  .partners-row{grid-template-columns:240px minmax(0,1fr);gap:48px;padding:20px 18px}
  .partners-row-logos{gap:20px 56px}
}
@media(max-width:768px){
  .partner-item-icon{width:96px;height:44px}
  .partner-item-icon img{max-width:88px;max-height:30px}
}

/* Respect reduced motion */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .reveal,.reveal-l,.reveal-r{opacity:1!important;transform:none!important}
}
