/* about-us: rules only this page uses, plus overrides of site.css. */

.highlight{ background:linear-gradient(100deg,var(--navy) 0%,var(--cyan) 90%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.btn-primary, .tx-btn-primary .elementor-button{ display:inline-flex; align-items:center; justify-content:center; }
.btn-outline-navy, .tx-btn-outline-navy .elementor-button{ justify-content:center; padding:.95rem 1.8rem; font-size:.98rem; }
.page-hero-inner-center{ max-width:800px; }
.page-hero-sub{ margin:22px auto 0; max-width:600px; }
.page-hero-support{ margin:14px auto 0; max-width:560px; }
.page-hero-actions{ margin-top:34px; justify-content:center; }
.page-hero-actions .btn-primary, .page-hero-actions .btn-outline-navy, .page-hero-actions .tx-btn-primary .elementor-button, .page-hero-actions .tx-btn-outline-navy .elementor-button{ padding:1rem 2.1rem; font-size:1rem; }
@media (max-width:480px){
  .page-hero-actions{ margin-top:26px; gap:14px; }
}
.tech-intro{ text-align:center; max-width:640px; margin:0 auto clamp(46px,6vw,64px); }
.tech-intro.wide{ max-width:720px; }
.tech-intro h2{ font-family:"Sora",sans-serif; font-weight:800; letter-spacing:-.01em; line-height:1.2; font-size:clamp(1.9rem,3.4vw,2.4rem); color:var(--navy); margin:8px 0 14px; }
.tech-intro .eyebrow{ justify-content:center; }
.tech-intro p:not(.eyebrow){ font-size:1.02rem; line-height:1.7; color:var(--body-text); }
.tech-card-icon{ width:56px; height:56px; border-radius:15px; margin-bottom:18px; }
.tech-card-icon svg{ width:24px; height:24px; }
.tech-card h4{ margin-bottom:8px; }
.tech-card-sub{ font-size:.9rem; line-height:1.65; }
@media (prefers-reduced-motion:reduce){
  .tech-card, .tech-card-icon{ transition:none; }
}
.team-grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:20px; }
.tx-collab-panel + .team-grid{ margin-top:clamp(32px,5vw,64px); }
.team-grid + .tx-collab-panel{ margin-top:clamp(48px,7vw,88px); }
/* Leadership: the two founders centred on the first row, the three leads below. */
@media (min-width:901px){
  .team-grid{ grid-template-columns:repeat(6, 1fr); max-width:1000px; margin-inline:auto; }
  .team-card{ grid-column:span 2; }
  .team-card:nth-child(1){ grid-column:2 / 4; }
  .team-card:nth-child(2){ grid-column:4 / 6; }
}
.team-card{ position:relative; display:grid; grid-template-columns:72px minmax(0,1fr); grid-template-rows:auto auto; align-content:center; align-items:center; column-gap:16px; min-height:120px; text-align:left; background:#fff; border-radius:16px; padding:20px; border:1px solid rgba(10,30,77,.08); box-shadow:0 10px 26px -20px rgba(10,30,77,.2); }
.team-avatar{ width:64px; height:64px; margin:0 auto 16px; border-radius:50%; background:linear-gradient(150deg,var(--navy),var(--navy-2)); display:flex; align-items:center; justify-content:center; box-shadow:0 10px 20px -10px rgba(10,30,77,.45); transition:transform .35s ease; }
.team-avatar svg{ width:26px; height:26px; color:#fff; }
.team-avatar--initials{ grid-row:1 / 3; width:60px; height:60px; margin:0; border-radius:50%; font-family:"Sora",sans-serif; font-weight:700; font-size:1.05rem; letter-spacing:.02em; color:#fff; }
.team-card h4{ grid-column:2; align-self:end; font-family:"Sora",sans-serif; font-weight:700; font-size:.98rem; color:var(--navy); margin-bottom:4px; }
.team-card p{ grid-column:2; align-self:start; font-size:.85rem; color:#526078; line-height:1.4; }
.tx-collab-panel{ width:100%; }
.tx-collab-layout{ width:100%; display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(32px,5vw,72px); align-items:center; }
.tx-collab-layout figure{ margin:0; }
.tx-collab-layout figure img{ width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:20px; box-shadow:0 24px 50px -30px rgba(10,30,77,.38); }
.tx-collab-copy h3{ font-family:"Sora",sans-serif; font-size:clamp(1.6rem,2.8vw,2.1rem); line-height:1.2; margin-bottom:16px; }
.tx-collab-copy > p{ color:var(--body-text); line-height:1.7; }
.tx-collab-copy ul{ display:grid; gap:16px; margin-top:28px; }
.tx-collab-copy li{ display:grid; gap:4px; border-top:1px solid var(--border); padding-top:14px; }
.tx-collab-copy li strong{ font-family:"Sora",sans-serif; font-size:.96rem; }
.tx-collab-copy li span{ color:var(--body-text); line-height:1.55; }
@media (max-width:900px){ .tx-collab-layout{ grid-template-columns:1fr; } }
@media (max-width:900px){
  .team-grid{ grid-template-columns:repeat(3, 1fr); }
}
@media (max-width:680px){
  .team-grid{ grid-template-columns:repeat(2, 1fr); }
  .team-card{ display:flex; flex-direction:column; align-items:center; text-align:center; min-height:0; }
  .team-card > *, .team-card h4, .team-card p{ width:100%; text-align:center; }
  .team-avatar--initials{ margin:0 auto 14px; }
}
@media (max-width:420px){
  .team-grid{ grid-template-columns:1fr 1fr; gap:14px; }
  .team-card{ padding:22px 12px; }
}
.cta-section{ padding:clamp(64px,9vw,110px) clamp(20px,4vw,64px) clamp(90px,11vw,130px); }
@media (max-width:480px){
  .page-hero-sub{ font-size:1rem; margin-top:16px; }
  .page-hero-support{ font-size:.92rem; margin-top:10px; }
}
@media (max-width:900px){
  .cta-section{ perspective:none; }
}


/* [tx_clocks]: Lahore next to the clients' time zones, beside "working in your hours". */
.tx-clocks{ list-style:none; margin:0; padding:0; display:grid; gap:14px; perspective:1200px; }
.tx-clock{ display:grid; grid-template-columns:1fr auto; gap:4px 16px; align-items:baseline; padding:20px 22px; border-radius:18px; background:#fff; border:1px solid var(--border); box-shadow:0 1px 0 #e3ecfa, 0 3px 0 #dbe6f7, 0 18px 34px -24px rgba(10,30,77,.4); transform:rotateY(8deg); transform-origin:left center; transition:transform .45s cubic-bezier(.2,.8,.2,1); }
.tx-clock:hover{ transform:rotateY(0) translateX(4px); }
.tx-clock.is-home{ background:linear-gradient(150deg,var(--navy),#123072); border-color:transparent; box-shadow:0 1px 0 #0b1d52, 0 3px 0 #06113a, 0 22px 40px -22px rgba(10,30,77,.6); }
.tx-clock-city{ font-family:"Sora",sans-serif; font-weight:700; color:var(--navy); }
.tx-clock-time{ font-family:"Sora",sans-serif; font-weight:800; font-size:1.5rem; color:var(--navy); font-variant-numeric:tabular-nums; }
.tx-clock-note{ grid-column:1 / -1; font-size:.9rem; color:var(--body-text); line-height:1.5; }
.tx-clock.is-home .tx-clock-city, .tx-clock.is-home .tx-clock-time{ color:#fff; }
.tx-clock.is-home .tx-clock-note{ color:rgba(255,255,255,.72); }
@media (max-width:900px){ .tx-clock{ transform:none; } }
@media (prefers-reduced-motion:reduce){ .tx-clock{ transition:none; } }
