html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: clip; background: #ffffff; color: rgba(0,0,0,.8); font-family: 'Plus Jakarta Sans', system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
* { box-sizing: border-box; }
a { color: #e73265; text-decoration: none; }
a:hover { color: #b8214b; }
::selection { background: rgba(231,50,101,.18); }
:focus-visible { outline: 2px solid #e73265; outline-offset: 3px; }

[data-invert] { transition: background .35s ease, box-shadow .4s ease; }
[data-invert]:hover { background: #ffffff !important; }
[data-invert]:hover [data-dots] { opacity: 0; }
[data-invert]:hover span[data-ink] {
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
}
[data-invert="serv"]:hover span[data-ink] { background-image: linear-gradient(90deg,#7b7fbb 0%,#a462a5 45%,#c04f8c 78%,#c9497f 100%); }
[data-invert="lab"]:hover span[data-ink] { background-image: linear-gradient(90deg,#1c9c8a 0%,#1785b8 60%,#1479c8 100%); }
[data-invert="serv"]:hover span[data-ink][data-cta] { text-decoration-color: #a462a5; }
[data-invert="lab"]:hover span[data-ink][data-cta] { text-decoration-color: #1785b8; }

@media (max-width: 900px) {
  nav { padding: 14px 22px !important; }
  nav > div { gap: 20px !important; }
  nav a { font-size: 14px !important; }
}
@media (max-width: 700px) {
  nav [data-burger] { display: flex !important; }
  nav [data-menu] { position: absolute; top: 100%; left: 0; right: 0; display: none !important; flex-direction: column; align-items: flex-start !important; gap: 20px !important; padding: 24px 20px 28px !important; background: #ffffff; border-bottom: 1px solid #ededf0; }
  nav [data-menu][data-open="true"] { display: flex !important; }
  nav [data-menu] a { font-size: 17px !important; }
  nav [data-menu] > div { padding-left: 0 !important; border-left: 0 !important; }
  header, section, footer { padding-left: 20px !important; padding-right: 20px !important; }
  header { min-height: 300px !important; }
}
@media (max-width: 700px) {
  [style*="repeat(auto-fit"], [style*="minmax(0, 240px)"], [style*="minmax(0, 1.15fr)"], [style*="minmax(0, 180px)"], [style*="minmax(0,240px)"], [style*="minmax(0,1.15fr)"], [style*="minmax(0,180px)"] { grid-template-columns: 1fr !important; }
  [style*="background-size: 75%"] { background-size: 100% 100% !important; }
  [style*="text-wrap: nowrap"], [style*="text-wrap:nowrap"] { text-wrap: normal !important; }
  [style*="padding: 64px 48px"], [style*="padding: 72px 56px"], [style*="padding: 76px 56px"] { padding: 38px 22px !important; }
  [style*="padding: 52px 40px 54px"] { padding: 32px 22px 34px !important; }
  header { padding-top: 120px !important; padding-bottom: 44px !important; }
  section { padding-top: 0 !important; padding-bottom: 64px !important; margin-top: 0 !important; }
  section > div[style*="padding: 88px"] { padding: 56px 0 !important; }
  footer { padding: 44px 20px 36px !important; }
  [data-parallax="fg"] { transform: none !important; opacity: 1 !important; }
  [data-parallax="bg"] { transform: none !important; }
  h1, h2 { letter-spacing: -.03em !important; word-break: normal; overflow-wrap: anywhere; }
  [data-metrics] { width: 100% !important; margin: 0 auto !important; grid-auto-rows: 1fr !important; }
  [data-metrics] > div > div:last-child { max-width: 17ch !important; }
  [data-metrics] > div { padding: 22px 24px 24px !important; box-shadow: none !important; border-bottom: 10px solid #ffffff !important; }
  [data-metrics] > div:last-child { border-bottom: 0 !important; }
}
@media (max-width: 480px) {
  nav { padding: 12px 16px !important; }
  header { padding-left: 16px !important; padding-right: 16px !important; }
  section, footer { padding-left: 16px !important; padding-right: 16px !important; }
}

#cookie-banner { padding: 18px 24px; }
@media (max-width: 700px) {
  #cookie-banner { padding: 18px 20px !important; flex-direction: column !important; align-items: flex-start !important; }
  #cookie-banner > div { width: 100%; }
  #cookie-banner button { flex: 1; }
}
