:root{--navy:#090b35;--ink:#11122f;--paper:#f4f1e8;--lime:#c9ff38;--blue:#3b78ff;--purple:#8b5cf6;--cyan:#19c7d5;--coral:#ff6f61;--yellow:#ffd33d;--white:#fff;--radius:38px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.site-header{position:fixed;left:0;right:0;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:18px 4vw;color:#fff;background:linear-gradient(180deg,rgba(9,11,53,.88),rgba(9,11,53,0));}.brand img{width:150px;height:auto}.main-nav{display:flex;gap:28px;font-weight:800;text-transform:uppercase;font-size:13px;letter-spacing:.08em}.main-nav a{padding:10px 0}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:28px;height:2px;background:#fff;margin:6px 0}.hero{position:relative;min-height:100svh;background:var(--navy);color:#fff;display:flex;align-items:flex-end;padding:0 5vw 8vh;overflow:hidden}.hero-media,.hero-overlay{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover}.hero-overlay{background:linear-gradient(90deg,rgba(9,11,53,.94) 0%,rgba(9,11,53,.62) 50%,rgba(9,11,53,.15) 100%),linear-gradient(0deg,rgba(9,11,53,.7),transparent 55%)}.hero-content{position:relative;z-index:2;max-width:1100px}.eyebrow{margin:0 0 18px;text-transform:uppercase;font-weight:900;letter-spacing:.12em;font-size:13px}.eyebrow.dark{color:#535476}.hero h1,.intro h2,.statement h2,.contact h2,.feature h2{font-family:"Arial Black",Impact,sans-serif;letter-spacing:-.055em;line-height:.88;margin:0;text-transform:uppercase}.hero h1{font-size:clamp(64px,10vw,156px)}.tag{display:inline-block;padding:.05em .18em .09em;border-radius:.22em;line-height:.85}.tag-lime{background:var(--lime);color:var(--ink)}.tag-blue{background:var(--blue);color:#fff}.tag-purple{background:var(--purple);color:#fff}.hero-copy{font-size:clamp(18px,2vw,28px);font-weight:700;margin:28px 0}.cta{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;padding:18px 22px;border-radius:999px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;font-size:13px}.cta-light{background:#fff;color:var(--ink)}.cta-dark{background:var(--ink);color:#fff}.scroll-cue{position:absolute;right:4vw;bottom:34px;z-index:2;font-weight:900;font-size:11px;letter-spacing:.15em;writing-mode:vertical-rl}.scroll-cue span{margin-top:12px}.section-pad{padding:110px 5vw}.intro{background:var(--paper)}.intro h2{font-size:clamp(52px,8vw,120px);max-width:1400px}.intro-copy{max-width:760px;font-size:clamp(18px,2.2vw,30px);line-height:1.35;font-weight:700;color:#4c4d69;margin:35px 0 0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;background:var(--navy)}.service-card{min-height:520px;border-radius:var(--radius) var(--radius) 18px 18px;padding:34px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:transform .25s ease}.service-card:before{content:"";position:absolute;left:-10%;right:-10%;top:-100px;height:190px;background:rgba(255,255,255,.18);border-radius:50%}.service-card:hover{transform:translateY(-8px)}.card-number{font-weight:900;font-size:13px;letter-spacing:.12em}.card-icon{margin-top:auto;font-family:"Arial Black",Impact,sans-serif;font-size:62px;line-height:1}.service-card h3{font-family:"Arial Black",Impact,sans-serif;font-size:clamp(30px,3.1vw,52px);line-height:.9;letter-spacing:-.045em;margin:20px 0 18px}.service-card p{font-weight:700;line-height:1.35;max-width:340px;margin:0}.card-lime{background:var(--lime)}.card-blue{background:var(--blue);color:#fff}.card-purple{background:var(--purple);color:#fff}.card-cyan{background:var(--cyan)}.card-coral{background:var(--coral)}.card-yellow{background:var(--yellow)}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;background:var(--paper)}.feature{position:relative;min-height:690px;border-radius:var(--radius);overflow:hidden;background:#222}.feature img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.feature:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,11,53,.9),rgba(9,11,53,0) 65%)}.feature-copy{position:absolute;left:38px;right:38px;bottom:38px;z-index:2;color:#fff}.feature h2{font-size:clamp(42px,5vw,82px)}.statement{background:var(--navy);color:#fff}.statement h2{font-size:clamp(56px,9vw,134px)}.statement-list{display:flex;flex-wrap:wrap;gap:12px;margin-top:48px}.statement-list span{border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:12px 18px;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.07em}.contact{background:var(--lime)}.contact h2{font-size:clamp(68px,11vw,160px)}.contact .cta{margin-top:40px}.contact-phone{font-size:24px;font-weight:900;margin-top:22px}footer{background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:30px 5vw}footer img{width:140px}footer p{font-size:12px;font-weight:700}.whatsapp{position:fixed;right:22px;bottom:22px;z-index:100;width:62px;height:62px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 14px 36px rgba(0,0,0,.35);transition:.2s ease}.whatsapp:hover{transform:translateY(-4px) scale(1.04)}.whatsapp svg{width:34px;height:34px;fill:#fff}
@media(max-width:980px){.services{grid-template-columns:1fr 1fr}.feature-grid{grid-template-columns:1fr}.feature{min-height:600px}.main-nav{display:none}.menu-toggle{display:block}.main-nav.open{display:flex;position:absolute;top:72px;right:4vw;flex-direction:column;background:var(--navy);padding:22px;border-radius:18px;min-width:190px}.hero{padding-bottom:10vh}.hero h1{font-size:clamp(58px,12vw,110px)}}
@media(max-width:640px){.site-header{padding:14px 18px}.brand img{width:122px}.hero{padding:0 20px 72px;min-height:92svh}.hero-overlay{background:linear-gradient(0deg,rgba(9,11,53,.95) 0%,rgba(9,11,53,.45) 70%,rgba(9,11,53,.15))}.hero h1{font-size:clamp(48px,15vw,76px)}.hero-copy{font-size:18px}.scroll-cue{display:none}.section-pad{padding:76px 20px}.intro h2,.statement h2,.contact h2{font-size:clamp(46px,14vw,78px)}.services{grid-template-columns:1fr;gap:16px}.service-card{min-height:420px;padding:28px}.service-card h3{font-size:42px}.feature-grid{gap:16px}.feature{min-height:480px;border-radius:28px}.feature-copy{left:24px;right:24px;bottom:24px}.feature h2{font-size:46px}footer{align-items:flex-start;gap:20px;flex-direction:column}.whatsapp{width:56px;height:56px;right:16px;bottom:16px}.whatsapp svg{width:31px;height:31px}}

.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:40px}.contact .cta{margin-top:0}.location-link{display:inline-flex;align-items:center;gap:14px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;font-size:13px;border-bottom:2px solid var(--ink);padding:14px 2px}.social-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.social-links a{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;transition:transform .2s ease,background .2s ease}.social-links a:hover{transform:translateY(-4px);background:#22245a}.social-links svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.social-links .fill-icon{fill:currentColor;stroke:none}@media(max-width:640px){.contact-actions{align-items:flex-start;flex-direction:column}.location-link{line-height:1.35}.social-links a{width:48px;height:48px}}


/* Top contact and social bar */
.top-contact-bar {
  position: relative;
  z-index: 10000;
  background: #0a1532;
  border-bottom: 1px solid rgba(255,255,255,.10);
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
}
.top-contact-inner {
  width: min(1480px, calc(100% - 48px));
  min-height: 42px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.top-contact-info,
.top-social-links {
  display: flex;
  align-items: center;
}
.top-contact-info {
  gap: 22px;
}
.top-contact-info a,
.top-social-links a {
  color: #fff;
  text-decoration: none;
}
.top-contact-info a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
  opacity: .88;
  transition: opacity .2s ease;
}
.top-contact-info a:hover {
  opacity: 1;
}
.top-contact-icon {
  color: #d7ff38;
  font-size: 15px;
  line-height: 1;
}
.top-social-links {
  gap: 8px;
}
.top-social-links a {
  width: 29px;
  height: 29px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.28);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: -.02em;
  transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}
.top-social-links a:hover {
  background: #d7ff38;
  border-color: #d7ff38;
  color: #0a1532;
  transform: translateY(-1px);
}
@media (max-width: 860px) {
  .top-contact-inner {
    width: calc(100% - 28px);
    min-height: 40px;
  }
  .top-contact-info {
    gap: 12px;
  }
  .top-contact-info a:nth-child(1),
  .top-contact-info a:nth-child(3) .top-contact-text {
    display: none;
  }
  .top-contact-info a {
    font-size: 11px;
  }
  .top-social-links {
    gap: 6px;
  }
  .top-social-links a {
    width: 27px;
    height: 27px;
    font-size: 9px;
  }
}
@media (max-width: 520px) {
  .top-contact-inner {
    width: calc(100% - 20px);
  }
  .top-contact-info a:nth-child(2) .top-contact-text {
    display: none;
  }
}


/* Monochrome SVG social/contact icons */
.top-social-links a,
.top-contact-icon,
.social-icon {
  color: #fff;
}
.top-social-links svg {
  width: 15px;
  height: 15px;
  display: block;
  fill: currentColor;
  stroke: none;
}
.top-social-links svg .icon-cutout,
.top-contact-icon svg .icon-cutout {
  fill: #0a1532;
}
.top-social-links a:hover svg .icon-cutout {
  fill: #d7ff38;
}
.top-contact-icon {
  width: 17px;
  height: 17px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 17px;
}
.top-contact-icon svg {
  width: 16px;
  height: 16px;
  display: block;
  fill: currentColor;
  stroke: none;
}
.top-contact-icon svg .icon-line {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.social-icon {
  width: 20px;
  height: 20px;
  display: inline-grid;
  place-items: center;
}
.social-icon svg {
  width: 18px;
  height: 18px;
  display: block;
  fill: currentColor;
}
.social-icon svg .icon-cutout {
  fill: var(--navy, #0a1532);
}
.social-label {
  margin-left: 8px;
}

.social-label{display:none!important;}

/* Refined slim monochrome social icons */
.top-social-links svg,
.social-links svg,
.social-icon svg,
.top-contact-icon svg {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.6 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.top-social-links svg,
.social-links svg,
.social-icon svg {
  width: 18px !important;
  height: 18px !important;
}
.top-contact-icon svg {
  width: 16px !important;
  height: 16px !important;
}
.top-social-links a,
.social-links a {
  color: currentColor;
}
.top-social-links a:hover,
.social-links a:hover {
  color: #c7ff2f;
}

.brand{display:flex;align-items:center;gap:12px}.brand-tagline{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#c9ced8;font-weight:600;white-space:nowrap}@media(max-width:768px){.brand-tagline{display:none}}

/* Two core production cards */
.feature-services{
  margin:18px 0 0;
  max-width:620px;
  font-size:clamp(13px,1.25vw,18px);
  line-height:1.4;
  font-weight:700;
  color:rgba(255,255,255,.9)
}

/* Lightweight client-logo marquee */
.clients-strip{
  background:var(--navy);
  color:#fff;
  padding:46px 0 50px;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08)
}
.clients-heading{padding:0 5vw 22px}
.clients-heading .eyebrow{margin:0;color:var(--lime)}
.clients-marquee{
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)
}
.clients-track{
  display:flex;
  width:max-content;
  will-change:transform;
  animation:clients-scroll 58s linear infinite
}
.clients-marquee:hover .clients-track{animation-play-state:paused}
.clients-group{display:flex;align-items:stretch;flex-shrink:0}
.client-item{
  width:174px;
  min-height:128px;
  padding:10px 18px 9px;
  display:grid;
  grid-template-rows:76px auto;
  place-items:center;
  border-right:1px solid rgba(255,255,255,.09)
}
.client-logo{width:136px;height:70px;display:grid;place-items:center}
.client-logo img{
  max-width:100%;
  max-height:66px;
  width:auto;
  height:auto;
  opacity:.78;
  transition:opacity .25s ease,transform .25s ease
}
.client-item:hover .client-logo img{opacity:1;transform:translateY(-2px)}
.client-item span{
  max-width:148px;
  font-size:10px;
  line-height:1.25;
  letter-spacing:.07em;
  text-transform:uppercase;
  text-align:center;
  color:rgba(255,255,255,.66)
}
@keyframes clients-scroll{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

/* Mobile: all contact/social elements in one row and complete hero title */
@media(max-width:640px){
  .top-contact-bar{overflow:hidden}
  .top-contact-inner{
    width:100%;
    min-height:52px;
    padding:0 9px;
    gap:5px;
    justify-content:center;
    flex-wrap:nowrap
  }
  .top-contact-info,.top-social-links{
    display:flex;
    flex-wrap:nowrap;
    gap:4px;
    flex:0 0 auto
  }
  .top-contact-info a{
    min-width:30px;
    height:33px;
    padding:0 4px;
    justify-content:center
  }
  .top-contact-info a:nth-child(1){display:none}
  .top-contact-info a:nth-child(2) .top-contact-text{display:none}
  .top-contact-info a:nth-child(3) .top-contact-text{
    display:inline!important;
    font-size:10px;
    letter-spacing:0;
    white-space:nowrap
  }
  .top-social-links a{width:30px;height:30px;flex:0 0 30px}
  .top-social-links svg,.top-contact-icon svg{
    width:15px!important;
    height:15px!important
  }
  .hero h1{
    font-size:clamp(42px,12.6vw,62px);
    line-height:.93;
    letter-spacing:-.065em;
    overflow:visible;
    max-width:100%
  }
  .hero-content{max-width:100%;overflow:visible}
  .clients-strip{padding:36px 0 40px}
  .clients-heading{padding:0 20px 17px}
  .clients-track{animation-duration:46s}
  .client-item{
    width:142px;
    min-height:112px;
    grid-template-rows:64px auto;
    padding:7px 12px
  }
  .client-logo{width:112px;height:59px}
  .client-logo img{max-height:54px}
  .client-item span{font-size:9px;max-width:122px}
}
@media(prefers-reduced-motion:reduce){
  .clients-track{}
  .clients-marquee{overflow-x:auto}
}


/* Prevent client logos from appearing late when entering from the right */
.clients-marquee .clients-track {
  visibility: hidden;
  opacity: 0;
  animation-play-state: paused;
}
.clients-marquee.clients-marquee-ready .clients-track {
  visibility: visible;
  opacity: 1;
  animation-play-state: running;
  transition: opacity .25s ease;
}
.clients-marquee.clients-marquee-ready:hover .clients-track {
  animation-play-state: paused;
}


/* FINAL MOBILE RESPONSIVE PASS — desktop untouched */
@media (max-width: 640px) {
  html, body {
    overflow-x: hidden;
  }

  /* One-line top contact/social bar */
  .top-contact-bar {
    overflow: hidden;
  }

  .top-contact-inner {
    width: 100%;
    min-height: 50px;
    padding: 0 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    flex-wrap: nowrap;
  }

  .top-contact-info,
  .top-social-links {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: nowrap;
    flex: 0 0 auto;
  }

  /* Hide address only on mobile */
  .top-contact-info a:nth-child(1) {
    display: none !important;
  }

  /* Email remains icon only */
  .top-contact-info a:nth-child(2) {
    width: 31px;
    height: 31px;
    padding: 0;
    display: grid;
    place-items: center;
  }

  .top-contact-info a:nth-child(2) .top-contact-text {
    display: none !important;
  }

  /* WhatsApp icon + full number */
  .top-contact-info a:nth-child(3) {
    min-width: 122px;
    height: 31px;
    padding: 0 7px 0 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 999px;
  }

  .top-contact-info a:nth-child(3) .top-contact-text {
    display: inline !important;
    font-size: 9px;
    line-height: 1;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .top-contact-icon {
    width: 15px;
    height: 15px;
    flex: 0 0 15px;
  }

  .top-contact-icon svg {
    width: 15px !important;
    height: 15px !important;
  }

  .top-social-links a {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    display: grid;
    place-items: center;
  }

  .top-social-links svg {
    width: 14px !important;
    height: 14px !important;
  }

  /* Header */
  .site-header {
    min-height: 88px;
    padding: 14px 18px;
    align-items: flex-start;
  }

  .brand img {
    width: auto;
    height: 74px;
    max-width: 170px;
  }

  .header-tagline {
    display: none !important;
  }

  .menu-toggle {
    margin-top: 8px;
  }

  /* Hero */
  .hero {
    min-height: calc(100svh - 50px);
  }

  .hero-media img {
    object-position: 34% center;
  }

  .hero-content {
    width: 100%;
    max-width: none;
    padding: 0 20px 88px;
    overflow: visible;
  }

  .hero-content .eyebrow {
    font-size: 11px;
    letter-spacing: .15em;
    margin-bottom: 24px;
  }

  .hero h1 {
    width: 100%;
    max-width: 100%;
    margin: 0;
    font-size: clamp(42px, 12.2vw, 60px);
    line-height: .92;
    letter-spacing: -.065em;
    overflow: visible;
    white-space: normal;
    word-break: normal;
  }

  .hero h1 br {
    display: block;
  }

  .hero-copy {
    font-size: 18px;
    line-height: 1.35;
    margin-top: 28px;
    max-width: 90%;
  }

  .hero .cta {
    margin-top: 28px;
    min-height: 58px;
    padding: 0 24px;
    font-size: 13px;
  }

  .scroll-cue {
    display: none;
  }

  /* Services */
  .section-pad {
    padding-left: 20px;
    padding-right: 20px;
  }

  .services {
    grid-template-columns: 1fr !important;
    gap: 14px;
  }

  .service-card {
    min-height: 290px;
  }

  /* Live / Creative cards */
  .feature-grid {
    grid-template-columns: 1fr !important;
    gap: 16px;
  }

  .feature {
    min-height: 470px;
  }

  .feature-copy {
    left: 20px;
    right: 20px;
    bottom: 22px;
  }

  .feature-copy h2 {
    font-size: clamp(32px, 9.5vw, 46px);
    line-height: .96;
  }

  .feature-services {
    font-size: 12px;
    line-height: 1.35;
    margin-top: 14px;
  }

  /* Client marquee */
  .clients-strip {
    padding: 34px 0 38px;
  }

  .clients-heading {
    padding: 0 20px 16px;
  }

  .clients-heading .eyebrow {
    font-size: 11px;
  }

  .clients-marquee {
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  }

  .clients-track {
    animation-duration: 52s;
  }

  .client-item {
    width: 138px;
    min-height: 112px;
    padding: 7px 11px;
    grid-template-rows: 62px auto;
  }

  .client-logo {
    width: 108px;
    height: 58px;
  }

  .client-logo img {
    max-width: 100%;
    max-height: 52px;
  }

  .client-item span {
    max-width: 118px;
    font-size: 8.5px;
    line-height: 1.2;
    letter-spacing: .045em;
  }

  /* Contact and footer */
  .contact-actions {
    align-items: stretch;
  }

  .contact-actions .cta,
  .location-link {
    width: 100%;
  }

  footer {
    padding: 34px 20px 92px;
    gap: 18px;
  }

  footer img {
    max-width: 110px;
  }

  .whatsapp {
    width: 56px;
    height: 56px;
    right: 16px;
    bottom: 16px;
  }
}

/* Narrow phones */
@media (max-width: 390px) {
  .top-contact-inner {
    padding: 0 5px;
    gap: 3px;
  }

  .top-contact-info,
  .top-social-links {
    gap: 3px;
  }

  .top-contact-info a:nth-child(3) {
    min-width: 112px;
    padding-right: 5px;
  }

  .top-contact-info a:nth-child(3) .top-contact-text {
    font-size: 8.5px;
  }

  .top-social-links a {
    width: 28px;
    height: 28px;
    flex-basis: 28px;
  }

  .hero h1 {
    font-size: clamp(40px, 12vw, 52px);
  }
}


/* Babylon v1 final refinements */
.topbar-brandline{
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  color:rgba(255,255,255,.78);
  white-space:nowrap
}
.top-social-links svg{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.6!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important
}
.brand{
  display:flex;
  align-items:center;
  gap:18px;
  overflow:visible
}
.brand-subtitle{
  max-width:420px;
  font-size:10px;
  line-height:1.4;
  letter-spacing:.12em;
  font-weight:700;
  color:rgba(255,255,255,.68);
  white-space:nowrap
}
.hero-content{
  position:relative;
  min-height:430px
}
.hero-slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transform:translateY(18px);
  transition:opacity .75s ease,transform .75s ease,visibility .75s
}
.hero-slide.is-active{
  opacity:1;
  visibility:visible;
  transform:translateY(0)
}
.hero-meta{
  margin:10px 0 0;
  font-size:13px;
  font-weight:700;
  letter-spacing:.03em;
  color:rgba(255,255,255,.78)
}
.whatsapp-talk{
  width:auto!important;
  min-width:136px;
  height:58px;
  padding:0 20px;
  gap:10px;
  border-radius:999px!important;
  background:#25D366!important;
  color:#fff!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  box-shadow:0 14px 34px rgba(0,0,0,.34)
}
.whatsapp-talk svg{width:29px!important;height:29px!important;fill:#fff!important}
.client-logo-text{
  color:#fff;
  font-size:28px;
  font-weight:800;
  letter-spacing:.12em
}

@media(max-width:640px){
  .top-contact-inner{
    justify-content:space-between!important;
    padding:0 14px!important
  }
  .topbar-brandline{
    font-size:9px;
    letter-spacing:.13em
  }
  .top-social-links{gap:4px!important}
  .site-header{
    min-height:118px!important;
    padding-top:16px!important;
    overflow:visible!important
  }
  .brand{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
    overflow:visible
  }
  .brand img{
    height:76px!important;
    width:auto!important;
    max-width:170px!important;
    object-fit:contain!important
  }
  .brand-subtitle{
    display:block!important;
    max-width:250px;
    white-space:normal;
    font-size:8px;
    line-height:1.45;
    letter-spacing:.09em
  }
  .hero-content{
    min-height:520px
  }
  .hero-slide h1{
    font-size:clamp(38px,11vw,52px)!important;
    line-height:.94!important;
    letter-spacing:-.055em!important
  }
  .hero-copy{
    max-width:92%;
    font-size:16px!important;
    margin-top:24px!important
  }
  .hero-meta{
    max-width:92%;
    font-size:11px;
    line-height:1.4
  }
  .whatsapp-talk{
    min-width:126px;
    height:54px;
    padding:0 17px;
    right:14px!important;
    bottom:14px!important
  }
}


/* FIX: single non-overlapping dynamic hero */
.hero-content{
  position:relative!important;
  min-height:0!important;
  height:auto!important;
  overflow:visible!important
}
.hero-slide{display:none!important}
.hero-message{
  position:relative!important;
  inset:auto!important;
  opacity:1;
  visibility:visible;
  transform:none;
  transition:opacity .35s ease,transform .35s ease
}
.hero-message.is-changing{
  opacity:0;
  transform:translateY(10px)
}
.hero-meta{
  margin:10px 0 0;
  font-size:13px;
  font-weight:700;
  letter-spacing:.03em;
  color:rgba(255,255,255,.78)
}
@media(max-width:640px){
  .hero-content{
    min-height:0!important;
    height:auto!important
  }
  .hero-message h1{
    font-size:clamp(38px,11vw,52px)!important;
    line-height:.94!important;
    letter-spacing:-.055em!important
  }
  .hero-copy{
    max-width:92%;
    font-size:16px!important;
    margin-top:24px!important
  }
  .hero-meta{
    max-width:92%;
    font-size:11px;
    line-height:1.4
  }
}


/* Visual cleanup: remove technical-looking cues and improve hierarchy */
.scroll-cue{
  display:none!important;
}

.topbar-brandline{
  color:var(--lime)!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.19em!important;
  opacity:1!important;
  text-shadow:0 0 18px rgba(199,255,47,.14);
}

.brand-subtitle,
.header-tagline{
  color:rgba(255,255,255,.48)!important;
  font-size:9px!important;
  font-weight:600!important;
  letter-spacing:.11em!important;
  text-shadow:none!important;
}

.hero-content .eyebrow{
  color:rgba(255,255,255,.72)!important;
}

@media(max-width:640px){
  .topbar-brandline{
    font-size:9px!important;
    letter-spacing:.14em!important;
  }

  .brand-subtitle,
  .header-tagline{
    font-size:7.5px!important;
    line-height:1.45!important;
    letter-spacing:.08em!important;
    color:rgba(255,255,255,.5)!important;
  }
}


/* CTA spacing and hero-label cleanup */
#hero-message > .eyebrow,
.hero-message > .eyebrow {
  display: none !important;
}

.hero-meta {
  margin-bottom: 0 !important;
}

.hero-meta + .cta,
#hero-cta {
  margin-top: 34px !important;
}

@media (max-width: 640px) {
  .hero-meta + .cta,
  #hero-cta {
    margin-top: 30px !important;
  }
}


/* ===== BABYLON FINAL MASTER OVERRIDES ===== */
.scroll-cue{display:none!important}

.topbar-social-only{
  justify-content:flex-end!important;
  min-height:42px;
}
.top-social-links svg{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.6!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.brand{
  display:flex!important;
  align-items:center!important;
  gap:24px!important;
  overflow:visible!important;
}
.brand-subtitle{
  display:block!important;
  color:rgba(255,255,255,.58)!important;
  font-size:10px!important;
  line-height:1.45!important;
  letter-spacing:.1em!important;
  font-weight:650!important;
  white-space:nowrap!important;
}
.brand-subtitle strong{
  color:var(--lime)!important;
  font-weight:900!important;
}

.hero-content{
  position:relative!important;
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
}
.hero-slide{display:none!important}
.hero-message{
  position:relative!important;
  inset:auto!important;
  opacity:1;
  transform:none;
  transition:opacity .38s ease, transform .38s ease;
}
.hero-message.is-changing{
  opacity:0;
  transform:translateY(10px);
}
.hero-meta{
  margin:12px 0 0!important;
  font-size:13px;
  font-weight:700;
  line-height:1.45;
  color:rgba(255,255,255,.8);
}
#hero-cta{
  margin-top:36px!important;
}

.whatsapp-talk{
  width:auto!important;
  min-width:140px!important;
  height:58px!important;
  padding:0 20px!important;
  gap:10px!important;
  border-radius:999px!important;
  background:#25D366!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
}
.whatsapp-talk svg{
  width:28px!important;
  height:28px!important;
  fill:#fff!important;
}

/* Sticky clients marquee on desktop only */
@media(min-width:900px){
  body{padding-bottom:154px}
  .clients-strip{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:9000!important;
    padding:14px 0 16px!important;
    box-shadow:0 -10px 30px rgba(0,0,0,.28);
  }
  .clients-heading{
    padding:0 4vw 8px!important;
  }
  .client-item{
    min-height:92px!important;
    grid-template-rows:58px auto!important;
  }
  .client-logo{height:54px!important}
  .client-logo img{max-height:48px!important}
  .whatsapp-talk{
    bottom:174px!important;
  }
}

@media(max-width:640px){
  .topbar-social-only{
    justify-content:center!important;
    min-height:46px!important;
  }
  .site-header{
    min-height:116px!important;
    padding:14px 18px 16px!important;
    overflow:visible!important;
  }
  .brand{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:6px!important;
  }
  .brand img{
    width:auto!important;
    height:74px!important;
    max-width:170px!important;
    object-fit:contain!important;
  }
  .brand-subtitle{
    white-space:normal!important;
    max-width:245px!important;
    font-size:7.5px!important;
    line-height:1.45!important;
    letter-spacing:.075em!important;
  }
  .hero-message h1{
    font-size:clamp(38px,11vw,52px)!important;
    line-height:.94!important;
    letter-spacing:-.055em!important;
  }
  .hero-copy{
    max-width:92%!important;
    font-size:16px!important;
    margin-top:24px!important;
  }
  .hero-meta{
    max-width:94%!important;
    font-size:11px!important;
  }
  #hero-cta{
    margin-top:30px!important;
  }
  .whatsapp-talk{
    min-width:126px!important;
    height:54px!important;
    right:14px!important;
    bottom:14px!important;
  }
}


/* FINAL v2: slimmer sticky client ticker */
@media (min-width: 900px) {
  body {
    padding-bottom: 112px !important;
  }

  .clients-strip {
    padding: 8px 0 9px !important;
  }

  .clients-heading {
    padding: 0 4vw 5px !important;
  }

  .clients-heading .eyebrow {
    font-size: 9px !important;
    line-height: 1.1 !important;
  }

  .client-item {
    width: 158px !important;
    min-height: 70px !important;
    padding: 4px 14px 3px !important;
    grid-template-rows: 43px auto !important;
  }

  .client-logo {
    width: 122px !important;
    height: 41px !important;
  }

  .client-logo img {
    max-width: 100% !important;
    max-height: 38px !important;
  }

  .client-item span {
    font-size: 8px !important;
    line-height: 1.1 !important;
    letter-spacing: .045em !important;
  }

  .whatsapp-talk {
    bottom: 128px !important;
  }

  .clients-track {
    animation-duration: 66s !important;
  }
}

/* Keep WhatsApp label width stable while language rotates */
#whatsapp-talk-text {
  display: inline-block;
  min-width: 76px;
  text-align: center;
  transition: opacity .25s ease, transform .25s ease;
}
#whatsapp-talk-text.is-changing {
  opacity: 0;
  transform: translateY(4px);
}


/* FINAL v3: more air below header + softer floating client ticker */
@media (min-width: 900px) {
  .hero-content {
    padding-top: 76px !important;
  }

  .clients-strip {
    background:
      linear-gradient(
        to bottom,
        rgba(8,10,26,0) 0%,
        rgba(8,10,26,.48) 22%,
        rgba(8,10,26,.86) 58%,
        rgba(8,10,26,.96) 100%
      ) !important;
    border-top: 1px solid rgba(199,255,47,.10) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: none !important;
  }

  .clients-marquee {
    -webkit-mask-image: linear-gradient(
      90deg,
      transparent 0%,
      #000 7%,
      #000 93%,
      transparent 100%
    ) !important;
    mask-image: linear-gradient(
      90deg,
      transparent 0%,
      #000 7%,
      #000 93%,
      transparent 100%
    ) !important;
  }
}


/* ===== FINAL CONVERSION-READY LAYOUT ===== */

/* More breathing room between Babylon identity and Hero message */
@media (min-width: 900px) {
  .hero {
    padding-top: 84px !important;
  }

  .hero-content {
    padding-top: 92px !important;
  }

  /* Align Trusted By with the same content column as Hero text */
  .clients-heading {
    padding-left: 5vw !important;
    padding-right: 5vw !important;
  }

  .clients-heading .eyebrow {
    max-width: 1180px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
  }

  /* Softer ticker transition */
  .clients-strip {
    background:
      linear-gradient(
        to bottom,
        rgba(8,10,26,0) 0%,
        rgba(8,10,26,.28) 18%,
        rgba(8,10,26,.68) 52%,
        rgba(8,10,26,.94) 100%
      ) !important;
    backdrop-filter: blur(5px) !important;
    -webkit-backdrop-filter: blur(5px) !important;
  }

  .clients-marquee {
    -webkit-mask-image: linear-gradient(
      90deg,
      transparent 0%,
      #000 8%,
      #000 92%,
      transparent 100%
    ) !important;
    mask-image: linear-gradient(
      90deg,
      transparent 0%,
      #000 8%,
      #000 92%,
      transparent 100%
    ) !important;
  }
}

/* Make the WhatsApp CTA visually primary without adding another section */
.whatsapp-talk {
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.whatsapp-talk:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 18px 40px rgba(0,0,0,.38) !important;
  filter: brightness(1.03);
}

/* Cleaner one-page flow after removing duplicate cards */
#services {
  scroll-margin-top: 110px;
}
#about,
#contact {
  scroll-margin-top: 110px;
}

@media (max-width: 640px) {
  .hero {
    padding-top: 24px !important;
  }

  .hero-content {
    padding-top: 34px !important;
  }

  .clients-heading {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}


/* Scroll-reactive panoramic image between Services and About */
.scroll-image-break {
  padding: 34px 4vw 54px;
  background: var(--paper, #f4f0e8);
  overflow: hidden;
}

.scroll-image-mask {
  width: min(92vw, 1500px);
  height: clamp(170px, 14vw, 250px);
  margin: 0 auto;
  overflow: hidden;
  border-radius: 28px;
  clip-path: inset(18% 10% round 28px);
  transform: translateZ(0);
  transition: clip-path .12s linear;
  box-shadow: 0 18px 44px rgba(7, 8, 24, .14);
}

.scroll-image-mask img {
  width: 100%;
  height: 118%;
  display: block;
  object-fit: cover;
  object-position: center 52%;
  transform: translateY(-8%) scale(1.075);
  will-change: transform;
}

@media (max-width: 640px) {
  .scroll-image-break {
    padding: 24px 16px 38px;
  }

  .scroll-image-mask {
    width: 100%;
    height: 145px;
    border-radius: 20px;
    clip-path: inset(13% 4% round 20px);
  }

  .scroll-image-mask img {
    height: 122%;
    object-position: 58% center;
  }
}


/* ===== FINAL TRUST BAR FIX: compact, close labels, marquee always moving ===== */
@media (min-width: 900px) {
  body {
    padding-bottom: 78px !important;
  }

  .clients-strip {
    padding: 2px 0 3px !important;
    margin: 0 !important;
    min-height: 0 !important;
    max-height: 78px !important;
    overflow: hidden !important;
  }

  .clients-heading {
    padding: 0 5vw 1px !important;
    margin: 0 !important;
    height: 10px !important;
    min-height: 10px !important;
  }

  .clients-heading .eyebrow {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 7px !important;
    line-height: 9px !important;
  }

  .clients-marquee {
    height: 62px !important;
    min-height: 62px !important;
    overflow: hidden !important;
  }

  .clients-track {
    height: 62px !important;
    align-items: center !important;
    visibility: visible !important;
    opacity: 1 !important;
    animation-play-state: running !important;
  }

  .clients-marquee:hover .clients-track {
    animation-play-state: running !important;
  }

  .clients-group {
    display: flex !important;
    align-items: center !important;
    height: 62px !important;
    flex-shrink: 0 !important;
  }

  .client-item {
    width: 158px !important;
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
    padding: 0 14px !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
  }

  .client-logo {
    width: 122px !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
  }

  .client-logo img {
    max-width: 100% !important;
    max-height: 39px !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
  }

  .client-item span {
    height: 10px !important;
    line-height: 10px !important;
    margin: -1px 0 0 !important;
    padding: 0 !important;
    font-size: 8px !important;
    white-space: nowrap !important;
  }

  .whatsapp-talk {
    bottom: 90px !important;
  }
}


/* ===== JS TICKER MODE ===== */
.clients-track {
  
  transform: translate3d(0,0,0);
  will-change: transform;
}

.clients-marquee:hover .clients-track {
  animation-play-state: unset !important;
}

@media (prefers-reduced-motion: reduce) {
  .clients-track {
    
  }
}


/* ===== CINEMATIC STRIP AFTER SERVICES ===== */
.cinematic-strip-section{
  padding:42px 4vw 58px;
  background:var(--paper,#f3efe7);
}
.cinematic-strip{
  position:relative;
  width:min(92vw,1560px);
  height:clamp(280px,27vw,390px);
  margin:0 auto;
  overflow:hidden;
  border-radius:24px;
  isolation:isolate;
  box-shadow:0 22px 60px rgba(6,8,24,.16);
}
.cinematic-strip img{
  width:100%;
  height:112%;
  object-fit:cover;
  object-position:center 48%;
  display:block;
  transform:translateY(-5%) scale(1.035);
  will-change:transform;
}
.cinematic-strip-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(7,10,28,.42) 0%,rgba(7,10,28,.20) 42%,rgba(7,10,28,.05) 75%,rgba(7,10,28,.02) 100%);
  pointer-events:none;
}
.cinematic-strip-content{
  position:absolute;
  z-index:2;
  left:clamp(24px,4vw,64px);
  bottom:clamp(24px,4vw,54px);
  max-width:760px;
  color:#fff;
}
.cinematic-strip-content h2{
  margin:0;
  font-size:clamp(34px,4vw,66px);
  line-height:.94;
  letter-spacing:-.045em;
  font-weight:900;
}
.cinematic-strip-content p{
  margin:18px 0 0;
  font-size:clamp(12px,1.1vw,16px);
  line-height:1.45;
  font-weight:700;
  letter-spacing:.02em;
  color:rgba(255,255,255,.88);
}
@media(max-width:640px){
  .cinematic-strip-section{padding:28px 16px 40px}
  .cinematic-strip{width:100%;height:220px;border-radius:18px}
  .cinematic-strip img{height:116%;object-position:56% center}
  .cinematic-strip-content{left:18px;right:18px;bottom:18px}
  .cinematic-strip-content h2{font-size:clamp(28px,9vw,40px)}
  .cinematic-strip-content p{margin-top:10px;font-size:10px;max-width:95%}
}


/* Stronger, clearly visible cinematic zoom */
.cinematic-strip img{
  transform: translateY(-6%) scale(1.14) !important;
  transition: transform .08s linear !important;
}


/* ===== MOBILE CONSOLIDATION 2026-08-09 =====
   Final mobile rules only. Desktop (641px+) remains unchanged. */
@media (max-width: 640px) {
  html, body {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
  }

  body {
    min-width: 0;
  }

  .top-contact-bar {
    height: 34px;
    min-height: 34px;
    overflow: hidden !important;
  }

  .top-contact-inner.topbar-social-only {
    width: 100%;
    min-height: 34px;
    padding: 0 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    overflow: hidden !important;
  }

  .topbar-social-only .top-social-links {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  .topbar-social-only .top-social-links a {
    width: 28px !important;
    height: 28px !important;
    flex: 0 0 28px !important;
  }

  .topbar-social-only .top-social-links svg {
    width: 15px !important;
    height: 15px !important;
  }

  .site-header {
    top: 34px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: 68px;
    padding: 12px 16px !important;
    gap: 12px;
    overflow: visible !important;
  }

  .brand {
    min-width: 0;
    max-width: calc(100% - 54px);
  }

  .brand img {
    width: 126px !important;
    max-width: 100% !important;
    height: auto !important;
  }

  .brand-subtitle,
  .brand-tagline,
  .header-tagline {
    display: none !important;
  }

  .menu-toggle {
    display: block !important;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    padding: 7px !important;
    margin: 0 !important;
    position: relative;
    z-index: 101;
  }

  .menu-toggle span {
    width: 26px;
    margin: 6px auto;
  }

  .main-nav.open {
    position: absolute !important;
    top: calc(100% + 4px) !important;
    left: 16px !important;
    right: 16px !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 16px 18px !important;
    gap: 2px !important;
    border-radius: 16px !important;
    box-shadow: 0 16px 40px rgba(0,0,0,.24);
  }

  .main-nav.open a {
    display: block;
    width: 100%;
    padding: 12px 4px;
  }

  .hero {
    min-height: 100svh !important;
    height: auto !important;
    padding: 132px 18px 58px !important;
    align-items: flex-end !important;
    overflow: hidden !important;
  }

  .hero-media,
  .hero-overlay {
    inset: 0 !important;
  }

  .hero-media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: 58% center !important;
  }

  .hero-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .hero-message {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .hero-message h1,
  .hero h1 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    font-size: clamp(42px, 13.2vw, 66px) !important;
    line-height: .91 !important;
    letter-spacing: -.055em !important;
    overflow-wrap: normal;
    word-break: normal;
  }

  .hero .tag {
    white-space: nowrap;
  }

  .hero-copy {
    margin: 22px 0 0 !important;
    max-width: 100% !important;
    font-size: clamp(16px, 4.7vw, 19px) !important;
    line-height: 1.2 !important;
  }

  .hero-meta {
    max-width: 100% !important;
    margin-top: 10px !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  #hero-cta {
    margin-top: 26px !important;
    min-width: 0 !important;
    max-width: 100%;
    padding: 15px 18px !important;
    gap: 28px !important;
  }

  .section-pad {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .services {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .service-card,
  .feature,
  .cinematic-strip,
  .scroll-image-mask {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .service-card h3,
  .feature h2,
  .intro h2,
  .statement h2,
  .contact h2,
  .cinematic-strip-content h2 {
    overflow-wrap: break-word;
  }

  footer {
    width: 100%;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

@media (max-width: 390px) {
  .site-header {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .brand img {
    width: 116px !important;
  }

  .hero {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .hero-message h1,
  .hero h1 {
    font-size: clamp(39px, 12.5vw, 50px) !important;
  }

  .hero-meta {
    font-size: 10px !important;
  }
}

/* ===== MOBILE FINAL HARD FIX 2026-08-10 =====
   Keeps desktop untouched. Prevents hero-title clipping and makes the mobile header/logo explicit. */
@media (max-width: 640px) {
  html, body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .top-contact-bar {
    position: relative !important;
    z-index: 10002 !important;
    height: 46px !important;
    min-height: 46px !important;
  }

  .top-contact-inner.topbar-social-only {
    min-height: 46px !important;
    height: 46px !important;
    justify-content: center !important;
  }

  .site-header {
    position: fixed !important;
    top: 46px !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 10001 !important;
    min-height: 72px !important;
    height: 72px !important;
    padding: 8px 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: rgba(9, 11, 53, .93) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .brand {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    width: auto !important;
    max-width: calc(100% - 54px) !important;
    height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .brand-logo {
    display: block !important;
    width: 80px !important;
    height: 56px !important;
    flex: 0 0 80px !important;
  }

  .brand-logo img,
  .brand img {
    display: block !important;
    width: 80px !important;
    height: 56px !important;
    max-width: none !important;
    object-fit: contain !important;
    object-position: left center !important;
    margin: 0 !important;
  }

  .brand-subtitle,
  .brand-tagline,
  .header-tagline {
    display: none !important;
  }

  .menu-toggle {
    display: block !important;
    width: 44px !important;
    height: 44px !important;
    flex: 0 0 44px !important;
    padding: 7px !important;
    border-radius: 10px;
    background: rgba(255,255,255,.04) !important;
  }

  .menu-toggle span {
    display: block !important;
    width: 27px !important;
    height: 2px !important;
    margin: 6px auto !important;
    background: #fff !important;
  }

  .main-nav.open {
    top: 76px !important;
  }

  .hero {
    width: 100% !important;
    min-height: calc(100svh - 46px) !important;
    padding: 128px 18px 62px !important;
    overflow: hidden !important;
  }

  .hero-content,
  .hero-message {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  .hero-message h1,
  .hero h1 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    font-size: clamp(34px, 10.2vw, 43px) !important;
    line-height: .96 !important;
    letter-spacing: -.045em !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
  }

  .hero-message h1 .tag,
  .hero h1 .tag {
    display: inline-block !important;
    max-width: 100% !important;
    white-space: nowrap !important;
  }

  .hero-copy {
    width: 100% !important;
    max-width: 100% !important;
    margin: 24px 0 0 !important;
    font-size: clamp(16px, 4.4vw, 18px) !important;
    line-height: 1.25 !important;
  }

  .hero-meta {
    width: 100% !important;
    max-width: 100% !important;
    margin: 16px 0 0 !important;
    font-size: clamp(11px, 3.25vw, 13px) !important;
    line-height: 1.45 !important;
  }

  #hero-cta {
    width: min(100%, 290px) !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-top: 28px !important;
    padding: 16px 20px !important;
    gap: 18px !important;
    font-size: 12px !important;
  }

  .intro h2,
  .statement h2,
  .contact h2,
  .service-card h3,
  .feature h2,
  .cinematic-strip-content h2 {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }
}

@media (max-width: 390px) {
  .site-header {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .hero {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .hero-message h1,
  .hero h1 {
    font-size: clamp(32px, 9.8vw, 38px) !important;
  }
}

/* ===== ACODE / ANDROID MOBILE FIX 2026-08-10 =====
   One fixed header row: logo + 4 social icons + menu.
   Prevent mid-word service-title wrapping and keep client logos visible on file:// previews. */
.mobile-header-social{display:none}

@media (max-width:640px){
  /* The old standalone social strip is removed on mobile. */
  .top-contact-bar{display:none!important}

  .site-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:72px!important;
    min-height:72px!important;
    box-sizing:border-box!important;
    padding:8px 12px!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    overflow:visible!important;
    background:#090b35!important;
    z-index:10050!important;
  }

  .brand{
    flex:0 0 66px!important;
    width:66px!important;
    max-width:66px!important;
    height:54px!important;
    min-width:66px!important;
    overflow:visible!important;
  }
  .brand-logo,
  .brand-logo img,
  .brand img{
    display:block!important;
    width:66px!important;
    height:54px!important;
    max-width:66px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }

  .mobile-header-social{
    display:flex!important;
    flex:1 1 auto!important;
    min-width:0!important;
    height:40px!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:5px!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }
  .mobile-header-social a{
    width:31px!important;
    height:31px!important;
    flex:0 0 31px!important;
    box-sizing:border-box!important;
    border:1px solid rgba(255,255,255,.34)!important;
    border-radius:50%!important;
    display:grid!important;
    place-items:center!important;
    color:#fff!important;
    text-decoration:none!important;
  }
  .mobile-header-social svg{
    width:15px!important;
    height:15px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }

  .menu-toggle{
    flex:0 0 42px!important;
    width:42px!important;
    height:42px!important;
    margin:0!important;
    padding:6px!important;
  }
  .menu-toggle span{
    width:26px!important;
    height:2px!important;
    margin:6px auto!important;
  }
  .main-nav.open{top:76px!important}

  /* Fixed header compensation. */
  main#top{padding-top:72px!important}
  .hero{
    padding-top:34px!important;
    min-height:calc(100svh - 72px)!important;
  }

  /* Never split words such as MULTICAM / BROADCASTING / INJECTION. */
  .service-card{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:0!important;
    padding:28px 24px 36px!important;
  }
  .service-card h3{
    width:100%!important;
    max-width:100%!important;
    margin:26px 0 22px!important;
    font-size:clamp(28px,8.25vw,36px)!important;
    line-height:.98!important;
    letter-spacing:-.035em!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }
  .service-card p{
    max-width:100%!important;
    font-size:clamp(16px,4.45vw,19px)!important;
    line-height:1.35!important;
  }

  /* Client logos: reliable in Acode/file://. No JS translate can move them off-screen. */
  .clients-strip{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    padding:30px 0 34px!important;
    overflow:hidden!important;
  }
  .clients-heading{
    display:block!important;
    padding:0 18px 16px!important;
  }
  .clients-marquee{
    display:block!important;
    width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }
  .clients-track{
    display:flex!important;
    width:max-content!important;
    transform:none!important;
    
    visibility:visible!important;
    opacity:1!important;
  }
  .clients-group{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
  }
  .clients-group[aria-hidden="true"]{display:none!important}
  .client-item{
    flex:0 0 132px!important;
    width:132px!important;
    min-height:104px!important;
    padding:8px 10px!important;
    display:grid!important;
    grid-template-rows:68px auto!important;
    place-items:center!important;
  }
  .client-logo{
    display:grid!important;
    place-items:center!important;
    width:108px!important;
    height:64px!important;
  }
  .client-logo img{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    max-width:104px!important;
    max-height:58px!important;
    width:auto!important;
    height:auto!important;
    object-fit:contain!important;
  }
  .client-item span{
    display:block!important;
    max-width:112px!important;
    font-size:8px!important;
    line-height:1.2!important;
  }

  .whatsapp-talk{bottom:18px!important;right:14px!important}
}

@media (max-width:390px){
  .site-header{padding-left:9px!important;padding-right:9px!important;gap:5px!important}
  .brand{flex-basis:60px!important;width:60px!important;min-width:60px!important}
  .brand-logo,.brand-logo img,.brand img{width:60px!important;max-width:60px!important}
  .mobile-header-social{gap:4px!important}
  .mobile-header-social a{width:29px!important;height:29px!important;flex-basis:29px!important}
  .menu-toggle{width:40px!important;height:40px!important;flex-basis:40px!important}
  .service-card h3{font-size:clamp(27px,8vw,32px)!important}
}

/* ===== VERIFIED MOBILE FINAL — 2026-08-10 ===== */
@media (max-width:640px){
  html,body{max-width:100%;overflow-x:hidden!important}

  /* One physical header row only: logo + 4 socials + menu. */
  .top-contact-bar{display:none!important}
  .site-header{
    position:sticky!important; top:0!important; left:0!important; right:0!important;
    width:100%!important; height:72px!important; min-height:72px!important;
    box-sizing:border-box!important; padding:7px 12px!important;
    display:flex!important; flex-flow:row nowrap!important; align-items:center!important;
    justify-content:space-between!important; gap:7px!important;
    background:#090b35!important; z-index:10050!important; overflow:hidden!important;
  }
  .brand{display:flex!important; flex:0 0 62px!important; width:62px!important; min-width:62px!important; height:56px!important; margin:0!important; padding:0!important; align-items:center!important; overflow:hidden!important}
  .brand-logo,.brand-logo img,.brand img{display:block!important; width:62px!important; height:54px!important; max-width:62px!important; max-height:54px!important; object-fit:contain!important; object-position:left center!important}
  .brand-subtitle{display:none!important}
  .mobile-header-social{display:flex!important; flex:1 1 auto!important; min-width:0!important; flex-flow:row nowrap!important; align-items:center!important; justify-content:flex-end!important; gap:5px!important; overflow:hidden!important}
  .mobile-header-social a{display:grid!important; place-items:center!important; flex:0 0 31px!important; width:31px!important; height:31px!important; padding:0!important; margin:0!important; box-sizing:border-box!important; border:1px solid rgba(255,255,255,.32)!important; border-radius:50%!important; color:#fff!important}
  .mobile-header-social svg{width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
  .menu-toggle{display:block!important; flex:0 0 42px!important; width:42px!important; height:42px!important; min-width:42px!important; margin:0!important; padding:6px!important}
  .menu-toggle span{width:26px!important;height:2px!important;margin:6px auto!important}
  .main-nav.open{top:72px!important}
  main#top{padding-top:0!important}

  /* No mid-word breaks anywhere in primary typography. */
  .hero h1,.hero-message h1,
  .intro h2,.statement h2,.contact h2,
  .service-card h3,.feature h2,.cinematic-strip-content h2{
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }

  /* Hero: BROADCASTING must fit as a complete word on 360px screens. */
  .hero{box-sizing:border-box!important; width:100%!important; padding:46px 16px 60px!important; overflow:hidden!important; min-height:calc(100svh - 72px)!important}
  .hero-content,.hero-message{width:100%!important;max-width:100%!important;min-width:0!important;overflow:visible!important}
  .hero-message h1,.hero h1{font-size:clamp(31px,9.15vw,40px)!important;line-height:.98!important;letter-spacing:-.045em!important;white-space:normal!important}
  .hero-message h1 .tag,.hero h1 .tag{white-space:nowrap!important;max-width:100%!important}
  .hero-copy{font-size:clamp(16px,4.4vw,18px)!important;line-height:1.28!important;max-width:100%!important}
  .hero-meta{font-size:clamp(12px,3.4vw,14px)!important;line-height:1.4!important;max-width:100%!important}

  /* Intro: large but every word stays intact. */
  .intro{overflow:hidden!important}
  .intro h2{font-size:clamp(44px,12.2vw,56px)!important;line-height:.94!important;letter-spacing:-.055em!important}
  .intro h2 .tag{white-space:normal!important}

  /* Service cards: use a size that fits BROADCASTING unbroken. */
  .services{grid-template-columns:minmax(0,1fr)!important;padding-left:16px!important;padding-right:16px!important}
  .service-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;padding:28px 22px 34px!important;overflow:hidden!important}
  .service-card h3{width:100%!important;max-width:100%!important;min-width:0!important;font-size:clamp(27px,7.7vw,33px)!important;line-height:1.0!important;letter-spacing:-.035em!important;white-space:normal!important}
  .service-card p{max-width:100%!important;font-size:clamp(16px,4.25vw,19px)!important;line-height:1.38!important}

  /* Animated client-logo ticker on mobile, including file:// / Acode preview. */
  .clients-strip{display:block!important;visibility:visible!important;opacity:1!important;padding:30px 0 36px!important;overflow:hidden!important}
  .clients-heading{display:block!important;padding:0 16px 14px!important}
  .clients-marquee{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;overflow:hidden!important;-webkit-mask-image:none!important;mask-image:none!important}
  .clients-track{display:flex!important;visibility:visible!important;opacity:1!important;width:max-content!important;min-width:max-content!important;will-change:transform!important}
  .clients-group,.clients-group[aria-hidden="true"]{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;flex:0 0 auto!important}
  .client-item{display:grid!important;place-items:center!important;grid-template-rows:62px auto!important;flex:0 0 126px!important;width:126px!important;min-height:98px!important;padding:7px 8px!important;box-sizing:border-box!important}
  .client-logo{display:grid!important;place-items:center!important;width:106px!important;height:58px!important}
  .client-logo img{display:block!important;visibility:visible!important;opacity:1!important;width:auto!important;height:auto!important;max-width:102px!important;max-height:54px!important;object-fit:contain!important}
  .client-item span{display:block!important;max-width:110px!important;font-size:8px!important;line-height:1.15!important;text-align:center!important}
}
@media (max-width:390px){
  .site-header{padding-left:8px!important;padding-right:8px!important;gap:4px!important}
  .brand{flex-basis:58px!important;width:58px!important;min-width:58px!important}
  .brand-logo,.brand-logo img,.brand img{width:58px!important;max-width:58px!important}
  .mobile-header-social{gap:3px!important}
  .mobile-header-social a{flex-basis:29px!important;width:29px!important;height:29px!important}
  .menu-toggle{flex-basis:39px!important;width:39px!important;min-width:39px!important;height:39px!important}
  .hero-message h1,.hero h1{font-size:clamp(30px,8.85vw,35px)!important}
  .intro h2{font-size:clamp(42px,11.7vw,48px)!important}
  .service-card h3{font-size:clamp(26px,7.45vw,29px)!important}
}

/* FINAL Acode-safe clients ticker: pure CSS, no JS dependency */
@keyframes babylonClientsTickerMobile {
  from { transform: translate3d(0,0,0); }
  to   { transform: translate3d(-50%,0,0); }
}
@media (max-width: 760px) {
  .clients-marquee {
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100% !important;
    overflow:hidden !important;
    -webkit-mask-image:none !important;
    mask-image:none !important;
  }
  .clients-track,
  .clients-marquee.clients-marquee-ready .clients-track {
    display:flex !important;
    flex-wrap:nowrap !important;
    width:max-content !important;
    min-width:max-content !important;
    visibility:visible !important;
    opacity:1 !important;
    transform:none;
    animation:babylonClientsTickerMobile 38s linear infinite !important;
    will-change:transform;
  }
  .clients-marquee:hover .clients-track,
  .clients-marquee.clients-marquee-ready:hover .clients-track {
    animation-play-state:running !important;
  }
  .client-logo { flex:0 0 auto !important; }
  .client-logo img { display:block !important; visibility:visible !important; opacity:1 !important; }
}
