html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:#111;font-family:'Helvetica Neue',Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:#111;text-decoration:none}a:hover{color:#00AEEF}
img{max-width:100%}

.nav-link{color:#5b5b60}
.nav-link:hover{color:#111}

.btn-contact{padding:10px 18px;border-radius:100px;background:#111;color:#fff;letter-spacing:.07em}
.btn-contact:hover{background:#00AEEF;color:#fff}

.link-live{display:flex;align-items:center;gap:11px;font:400 10.5px/1 'IBM Plex Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#8d8d93}
.link-live:hover{color:#111}
.link-live-dot{width:9px;height:9px;border-radius:50%;background:#00AEEF;flex:none}

.btn-primary{background:#111;color:#fff}
.btn-primary:hover{background:#00AEEF;color:#fff}

.btn-outline{border:1px solid rgba(0,0,0,.15);color:#111}
.btn-outline:hover{border-color:#111}

.lang-toggle{display:flex;gap:8px;padding-left:6px;border-left:1px solid rgba(0,0,0,.12);cursor:default}

.slot-img{display:block;object-fit:cover}

/* Desktop hero: left wordmarks (right-aligned) + right VUGEN card */
.hero-row{
  display:flex;
  gap:48px;
  align-items:flex-start;
}
.hero-lines{
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:8px;
  align-items:flex-end;
  z-index:24;
}
.hero-line{
  display:block;
  width:auto;
  height:88px;
  max-width:100%;
}
.hero-media{
  width:540px;
  flex:none;
  display:flex;
  flex-direction:column;
  gap:20px;
  padding-top:6px;
}
.hero-card{
  width:100%;
  height:auto;
  aspect-ratio:580/308;
  border-radius:12px;
  object-fit:cover;
}
.hero-caption{
  margin:0;
  font:300 13.5px/1.7 'Helvetica Neue',Helvetica,sans-serif;
  color:#5b5b60;
  text-wrap:pretty;
}
.hero-cta{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  margin:60px 0 44px;
  font:400 10.5px/1 'IBM Plex Mono',monospace;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#8d8d93;
}
.hero-cta a{color:#8d8d93;letter-spacing:.2em}
.hero-cta-chevron{font-size:17px;color:#c3c3c8}
.hero-clients{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:22px 0 0;
  border-top:1px solid rgba(0,0,0,.08);
  font:400 11px/1 'IBM Plex Mono',monospace;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#a6a6ac;
}

/* Manifesto fluid */
[data-screen-label="Manifesto"],
[data-screen-label="Manifesto"] [data-r="wrap"]{width:auto;max-width:100%;height:auto;box-sizing:border-box}
[data-screen-label="Manifesto"] [data-r="row"]{flex-wrap:wrap}
[data-screen-label="Manifesto"] [data-r="row"]>*{min-width:0}

@media (max-width:960px){
 section{padding-top:64px!important;padding-bottom:64px!important;height:auto!important}
 [data-r="wrap"]{max-width:100%!important;padding-left:22px!important;padding-right:22px!important;margin-top:0!important;margin-bottom:0!important;height:auto!important}
 [data-screen-label="Nav"] [data-r="wrap"]{height:60px!important}
 [data-r="row"]{flex-direction:column!important;align-items:stretch!important;gap:28px!important;height:auto!important}
 [data-r="row"]>*{width:100%!important;max-width:100%!important;flex:none!important;height:auto!important}
 [data-r="grid3"],[data-r="grid4"]{grid-template-columns:1fr!important;gap:30px!important}
 [data-r="navlinks"]{gap:14px!important}
 [data-r="navlinks"]>a:nth-child(-n+4){display:none!important}
 [data-r="art"]{width:100%!important;height:auto!important;margin-left:auto}
 [data-r="wrapline"]{flex-wrap:wrap!important;justify-content:flex-start!important;gap:12px 20px!important}
 .slot-img{width:100%!important;height:210px!important;position:static!important;top:auto!important}
 h2{font-size:30px!important;line-height:1.14!important;width:auto!important}
 p{width:auto!important;max-width:100%!important;height:auto!important;max-height:none!important}

 [data-screen-label="Hero"]{padding-top:28px!important;padding-bottom:0!important}
 .hero-row{gap:22px!important}
 .hero-lines{
   align-items:flex-end!important;
   gap:4px!important;
   width:100%!important;
 }
 .hero-line:last-child{
   width:100%!important;
   height:auto!important;
 }
 .hero-lines .hero-line:not(:last-child){
   height:calc((100vw - 44px) * 120 / 882)!important;
   width:auto!important;
   max-width:none!important;
   margin-left:0!important;
 }
 .hero-media{
   width:100%!important;
   padding-top:0!important;
   gap:14px!important;
 }
 .hero-card,
 .slot-img.hero-card{
   width:100%!important;
   height:auto!important;
   aspect-ratio:580/308;
   border-radius:12px!important;
 }
 .hero-caption{font-size:13px;line-height:1.65;color:#8d8d93;max-width:100%}
 .link-live{height:auto}
 .hero-cta{margin:36px 0 28px}
 .hero-clients{justify-content:flex-start;gap:12px 20px;flex-wrap:wrap}
}
