
    :root{--cgv-section-title:clamp(calc(.65rem + 13.6px),calc(.65rem + 11.2px + .65vw),calc(.9rem + 15.6px));--cgv-page-title:clamp(calc(.75rem + 16px),calc(.75rem + 12px + 1vw),calc(1.125rem + 18px));--cgv-title-tracking:max(0px,calc(.02em + 1px - .0625rem));}
    .cgv-led-step-caption:empty{display:none;}
    .archive .page-header .page-title{max-width:100%;overflow-wrap:normal;word-break:normal;font-size:clamp(1.75rem,1.5rem + 1vw,2.4rem);letter-spacing:.02em;line-height:1.25;}
    .cgv-page-title {font-family:Oswald,Arial,sans-serif;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.2;color:var(--contrast,#edeef0);margin:0;padding:32px 20px;max-width:100%;overflow-wrap:normal;word-break:normal;}
    #masthead{padding-top:44px;}
    nav.trp-language-switcher.trp-floating-switcher.trp-switcher-position-top{position:absolute!important;top:var(--wp-admin--admin-bar--height,0px)!important;}
    @media(max-width:1024px){
      body.page #main .inside-article,body.single-post #main .inside-article{padding:0;}
      body.page #main .entry-header{padding:32px 20px;}
      body.single-post #main .entry-header{padding-inline:20px;}
      body.page #main .entry-title{font-size:var(--cgv-page-title);line-height:1.2;letter-spacing:var(--cgv-title-tracking);word-break:normal;overflow-wrap:normal;}
      :is(body.archive,body.blog) #main .inside-article,:is(body.archive,body.blog) #main .page-header{padding:24px 20px;}
      :is(body.archive,body.blog) #main .entry-title{font-size:var(--cgv-section-title);line-height:1.25;letter-spacing:var(--cgv-title-tracking);word-break:normal;overflow-wrap:normal;}
      :is(.archive,.blog) .entry-summary,.page-id-3 .entry-content :where(p,li){font-size:1.0625rem;line-height:1.6;}
      .page-id-3 .entry-content :where(h1,h2,h3){font-size:var(--cgv-section-title);line-height:1.25;letter-spacing:var(--cgv-title-tracking);word-break:normal;}
      .page-id-3 .entry-content h1{font-size:var(--cgv-page-title);}
    }
    @media(min-width:1025px){:is(body.archive,body.blog) #main .inside-article,:is(body.archive,body.blog) #main .page-header{max-width:1200px;margin-inline:auto;padding:32px 40px;}}
    .cgv-home-banner{height:1080px;max-height:1080px;border-bottom:3px solid var(--accent,#00a2c7);box-sizing:border-box;background:#0c0d0f;}
    .cgv-home-banner-media{height:100%;width:100%;position:relative;overflow:hidden;}
    .cgv-home-banner-media>img,.cgv-home-banner-media>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
    .cgv-home-banner-media>img{z-index:1;}
    .cgv-home-banner-media.cgv-video-playing>img{visibility:hidden;}
    @media(max-width:1024px){.cgv-home-banner{height:253px;}}
    @media(max-width:767px){.cgv-home-banner{height:303px;padding-top:50px;}}
    .cgv-services-hero :where(.cgv-shell,.cgv-copy,.cgv-kicker,.cgv-title,.cgv-description,.cgv-diagram,.cgv-services-mobile) { min-inline-size:0; max-inline-size:100%; box-sizing:border-box; }
    .cgv-services-hero :where(.cgv-kicker,.cgv-description,.cgv-service-label,.cgv-service-link,.cgv-services-mobile a,.cgv-services-mobile span) { overflow-wrap:normal; word-break:normal; }
    .cgv-services-hero .cgv-title { overflow-wrap:normal; word-break:normal; }
    .cgv-services-hero .cgv-ring { animation-play-state:var(--cgv-motion-state) !important; }
    .cgv-services-hero .cgv-motion-control[hidden] { display:none; }

    .cgv-services-hero {
      --cgv-bg: #111113;
      --cgv-text: #edeef0;
      --cgv-muted: #b4bac0;
      --cgv-cyan: #00a2c7;
      --cgv-teal: #12a594;
      --cgv-line: rgba(185, 228, 235, .34);
      --cgv-grid: rgba(121, 166, 174, .075);
      --cgv-motion-state: running;
      --cgv-glow-small: url(#cgv-glow-small);
      --cgv-glow-soft: url(#cgv-glow-soft);
      position: relative;
      isolation: isolate;
      overflow: clip;
      box-sizing: border-box;
      color: var(--cgv-text);
      background:
        radial-gradient(circle at 72% 48%, rgba(0, 162, 199, .11) 0, rgba(0, 162, 199, .035) 24%, transparent 47%),
        radial-gradient(circle at 78% 56%, rgba(18, 165, 148, .09) 0, transparent 30%),
        var(--cgv-bg);
      font-family: Inter, Arial, sans-serif;
    }
    .cgv-services-hero::before {
      position: absolute;
      z-index: -1;
      inset: 0;
      content: "";
      pointer-events: none;
      opacity: .45;
      background-image:
        linear-gradient(90deg, transparent 49.8%, var(--cgv-grid) 50%, transparent 50.2%),
        linear-gradient(0deg, transparent 49.8%, var(--cgv-grid) 50%, transparent 50.2%);
      background-size: 112px 112px;
      mask-image: radial-gradient(circle at 74% 50%, #000 0, transparent 59%);
    }
    .cgv-services-hero .cgv-shell {
      box-sizing: border-box;
      display: grid;
      grid-template-columns: minmax(0, .78fr) minmax(0, 1.9fr);
      gap: clamp(26px, 3vw, 70px);
      width: min(1560px, 100%);
      min-height: 700px;
      margin: 0 auto;
      padding: clamp(52px, 5.4vw, 76px) clamp(22px, 5.2vw, 112px) clamp(48px, 5vw, 70px);
      align-items: center;
    }
    .cgv-services-hero .cgv-copy {
      position: relative;
      z-index: 3;
      min-width: 0;
      max-width: min(460px, 100%);
    }
    .cgv-services-hero .cgv-kicker {
      display: block;
      margin: 0 0 22px;
      color: var(--cgv-muted);
      font-size: 11px;
      font-weight: 600;
      letter-spacing: .18em;
      line-height: 1.5;
      text-transform: uppercase;
    }
    .cgv-services-hero .cgv-title {
      max-width: 6.1ch;
      margin: 0;
      color: var(--cgv-text);
      font-family: Montserrat, Arial, sans-serif;
      font-size: clamp(3.45rem, 6.2vw, 7.1rem);
      font-weight: 400;
      letter-spacing: -.065em;
      line-height: .9;
      text-wrap: balance;
    }
    .cgv-services-hero .cgv-title > span { display: block; }
    .cgv-services-hero .cgv-title .cgv-accent {
      background: linear-gradient(100deg, #4dd9f4 0%, var(--cgv-cyan) 42%, var(--cgv-teal) 100%);
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
    .cgv-services-hero .cgv-description {
      max-width: 33rem;
      margin: 29px 0 0;
      color: var(--cgv-muted);
      font-size: clamp(.95rem, 1.15vw, 1.08rem);
      line-height: 1.7;
    }
    .cgv-services-hero .cgv-cta {
      display: inline-flex;
      box-sizing: border-box;
      min-height: 50px;
      margin-top: 32px;
      padding: 0 18px 0 21px;
      align-items: center;
      gap: 15px;
      border: 1px solid rgba(0, 162, 199, .75);
      border-radius: 999px;
      color: var(--cgv-text);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .13em;
      line-height: 1;
      text-decoration: none;
      text-transform: uppercase;
      transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease;
    }
    .cgv-services-hero .cgv-cta:hover {
      border-color: #62dff3;
      background: rgba(0, 162, 199, .12);
      box-shadow: 0 0 0 4px rgba(0, 162, 199, .1), 0 8px 28px rgba(0, 162, 199, .11);
    }
    .cgv-services-hero .cgv-cta:focus-visible,
    .cgv-services-hero .cgv-motion-control:focus-visible,
    .cgv-services-hero .cgv-service-link:focus-visible {
      outline: 2px solid #82e9fa;
      outline-offset: 4px;
    }
    .cgv-services-hero .cgv-arrow {
      display: inline-block;
      color: #64dfee;
      font-size: 18px;
      font-weight: 400;
      line-height: 1;
      transition: transform .2s ease;
    }
    .cgv-services-hero .cgv-cta:hover .cgv-arrow { transform: translateX(4px); }
    .cgv-services-hero .cgv-diagram {
      position: relative;
      width: 100%;
      max-width: 900px;
      min-height: 510px;
      margin-left: auto;
      aspect-ratio: 1.36 / 1;
    }
    .cgv-services-hero .cgv-diagram-svg {
      position: absolute;
      width: 100%;
      height: 100%;
      inset: 0;
      overflow: visible;
    }
    .cgv-services-hero .cgv-base-ring {
      fill: rgba(17, 17, 19, .2);
      stroke: rgba(195, 226, 231, .38);
      stroke-width: 1.15;
    }
    .cgv-services-hero .cgv-inner-ring {
      fill: none;
      stroke: rgba(145, 210, 220, .22);
      stroke-width: 1;
    }
    .cgv-services-hero .cgv-halo {
      fill: none;
      stroke: rgba(0, 162, 199, .11);
      stroke-width: 28;
      filter: var(--cgv-glow-soft);
    }
    .cgv-services-hero .cgv-ring {
      transform-box: fill-box;
      transform-origin: center;
      animation-play-state: var(--cgv-motion-state);
      will-change: transform;
    }
    .cgv-services-hero .cgv-ring--one { animation: cgv-rotate-cw 28s linear infinite; }
    .cgv-services-hero .cgv-ring--two { animation: cgv-rotate-ccw 42s linear infinite; }
    .cgv-services-hero .cgv-ring--three { animation: cgv-rotate-cw 60s linear infinite; }
    .cgv-services-hero .cgv-arc {
      fill: none;
      stroke-linecap: round;
      transform-origin: 410px 310px;
    }
    .cgv-services-hero .cgv-arc--bright {
      stroke: #5ad9ef;
      stroke-width: 2;
      filter: var(--cgv-glow-small);
    }
    .cgv-services-hero .cgv-arc--cyan { stroke: var(--cgv-cyan); stroke-width: 1.5; }
    .cgv-services-hero .cgv-arc--teal { stroke: var(--cgv-teal); stroke-width: 1.8; }
    .cgv-services-hero .cgv-arc--faint { stroke: rgba(203, 234, 239, .32); stroke-width: 1.1; }
    .cgv-services-hero .cgv-ticks { fill: none; stroke: rgba(163, 218, 226, .48); stroke-width: 1; }
    .cgv-services-hero .cgv-orbit-dot { fill: #6de7f4; filter: var(--cgv-glow-small); }
    .cgv-services-hero .cgv-wire {
      fill: none;
      stroke: var(--cgv-line);
      stroke-width: 1.2;
      stroke-linecap: round;
      stroke-linejoin: round;
      transition: stroke .24s ease, stroke-width .24s ease, filter .24s ease;
    }
    .cgv-services-hero .cgv-wire-dot {
      fill: #b9edf3;
      transition: fill .24s ease, filter .24s ease, r .24s ease;
    }
    .cgv-services-hero .cgv-wire-dot--base { fill: #35cee2; }
    .cgv-services-hero.cgv--entered .cgv-wire {
      stroke-dasharray: var(--cgv-wire-length);
      stroke-dashoffset: var(--cgv-wire-length);
      animation: cgv-draw-wire .78s cubic-bezier(.24, .76, .29, 1) forwards;
      animation-delay: var(--cgv-delay);
    }
    .cgv-services-hero.cgv--entered .cgv-wire-dot--end {
      opacity: 0;
      animation: cgv-show-dot .18s ease forwards;
      animation-delay: calc(var(--cgv-delay) + .68s);
    }
    .cgv-services-hero .cgv-logo-core {
      position: absolute;
      z-index: 2;
      top: 50%;
      left: 50%;
      display: grid;
      width: clamp(128px, 15.2vw, 194px);
      aspect-ratio: 1;
      place-items: center;
      overflow: hidden;
      border: 1px solid rgba(143, 231, 243, .2);
      border-radius: 50%;
      background: radial-gradient(circle at 38% 29%, rgba(0, 162, 199, .12), rgba(17, 17, 19, .93) 61%);
      box-shadow: inset 0 0 36px rgba(0, 162, 199, .09), 0 0 34px rgba(0, 162, 199, .1);
      transform: translate(-50%, -50%);
    }
    .cgv-services-hero .cgv-logo-fallback {
      padding: 14px;
      color: #dfeff0;
      font-family: Montserrat, Arial, sans-serif;
      font-size: clamp(12px, 1.35vw, 16px);
      font-weight: 500;
      letter-spacing: .18em;
      line-height: 1.12;
      text-align: center;
    }
    .cgv-services-hero .cgv-logo-image {
      position: absolute;
      z-index: 1;
      width: 72%;
      height: auto;
      object-fit: contain;
    }
    .cgv-services-hero .cgv-logo-image.cgv-logo-image--missing { display: none; }
    .cgv-services-hero .cgv-service {
      position: absolute;
      z-index: 3;
      display: flex;
      min-width: 0;
      align-items: center;
      gap: 10px;
      color: var(--cgv-muted);
      font-size: clamp(12px, 1.02vw, 14px);
      font-weight: 600;
      letter-spacing: .055em;
      line-height: 1.35;
      text-transform: uppercase;
      transition: color .24s ease, transform .24s ease;
    }
    .cgv-services-hero .cgv-service::before {
      display: block;
      width: 5px;
      height: 5px;
      flex: 0 0 auto;
      content: "";
      border: 1px solid rgba(77, 217, 244, .8);
      border-radius: 50%;
      box-shadow: 0 0 9px rgba(0, 162, 199, .5);
    }
    .cgv-services-hero .cgv-service-label,
    .cgv-services-hero .cgv-service-link {
      color: inherit;
      text-decoration: none;
    }
    .cgv-services-hero .cgv-service-link { border-bottom: 1px solid transparent; }
    .cgv-services-hero .cgv-service-link:hover { border-bottom-color: rgba(92, 226, 242, .8); }
    .cgv-services-hero .cgv-service--mapping { top: 21.7%; left: 10.6%; }
    .cgv-services-hero .cgv-service--led { top: 22.5%; right: 5%; flex-direction: row-reverse; }
    .cgv-services-hero .cgv-service--immersive { right: 4.1%; bottom: 25.1%; flex-direction: row-reverse; }
    .cgv-services-hero .cgv-service--interactive { bottom: 22.2%; left: 9.4%; }
    .cgv-services-hero .cgv-service--permanent { bottom: 9.2%; left: 50%; transform: translateX(-50%); }
    @media (min-width: 1181px) {
      .cgv-services-hero .cgv-service--immersive { right: calc(4.1% - 76px); }
    }
    .cgv-services-hero.cgv--entered .cgv-service {
      opacity: 0;
      animation: cgv-show-label .42s ease forwards;
      animation-delay: calc(var(--cgv-delay) + .72s);
    }
    .cgv-services-hero .cgv-service:hover,
    .cgv-services-hero .cgv-service:focus-within,
    .cgv-services-hero .cgv-service.cgv-service--active {
      color: #eafcfe;
      transform: translateY(-2px);
    }
    .cgv-services-hero .cgv-service--permanent:hover,
    .cgv-services-hero .cgv-service--permanent:focus-within,
    .cgv-services-hero .cgv-service--permanent.cgv-service--active { transform: translateX(-50%) translateY(-2px); }
    .cgv-services-hero .cgv-diagram.cgv-service-active--mapping .cgv-wire--mapping,
    .cgv-services-hero .cgv-diagram.cgv-service-active--led .cgv-wire--led,
    .cgv-services-hero .cgv-diagram.cgv-service-active--immersive .cgv-wire--immersive,
    .cgv-services-hero .cgv-diagram.cgv-service-active--interactive .cgv-wire--interactive,
    .cgv-services-hero .cgv-diagram.cgv-service-active--permanent .cgv-wire--permanent {
      stroke: #66e2f1;
      stroke-width: 1.75;
      filter: var(--cgv-glow-small);
    }
    .cgv-services-hero .cgv-diagram.cgv-service-active--mapping .cgv-wire-dot--mapping,
    .cgv-services-hero .cgv-diagram.cgv-service-active--led .cgv-wire-dot--led,
    .cgv-services-hero .cgv-diagram.cgv-service-active--immersive .cgv-wire-dot--immersive,
    .cgv-services-hero .cgv-diagram.cgv-service-active--interactive .cgv-wire-dot--interactive,
    .cgv-services-hero .cgv-diagram.cgv-service-active--permanent .cgv-wire-dot--permanent {
      fill: #9cf4ff;
      filter: var(--cgv-glow-small);
    }
    .cgv-services-hero .cgv-motion-control {
      position: absolute;
      z-index: 4;
      right: 1%;
      bottom: 1%;
      display: inline-flex;
      min-height: 34px;
      padding: 0 11px;
      align-items: center;
      gap: 7px;
      border: 1px solid rgba(180, 233, 240, .27);
      border-radius: 999px;
      color: var(--cgv-muted);
      background: rgba(17, 17, 19, .68);
      font: inherit;
      font-size: 10px;
      font-weight: 600;
      letter-spacing: .07em;
      text-transform: uppercase;
      cursor: pointer;
      backdrop-filter: blur(6px);
    }
    .cgv-services-hero .cgv-motion-control:hover { border-color: rgba(102, 226, 241, .85); color: var(--cgv-text); }
    .cgv-services-hero .cgv-motion-icon { color: #69e2ef; font-size: 11px; }
    .cgv-services-hero.cgv--user-paused { --cgv-motion-state: paused; }
    .cgv-services-hero.cgv--offscreen:not(.cgv--user-paused) { --cgv-motion-state: paused; }
    .cgv-services-hero.cgv--document-hidden { --cgv-motion-state: paused; }
    .cgv-services-hero.cgv--entered .cgv-ring,
    .cgv-services-hero.cgv--entered .cgv-halo { animation-delay: .1s; }
    @keyframes cgv-rotate-cw { to { transform: rotate(360deg); } }
    @keyframes cgv-rotate-ccw { to { transform: rotate(-360deg); } }
    @keyframes cgv-draw-wire { to { stroke-dashoffset: 0; } }
    @keyframes cgv-show-dot { to { opacity: 1; } }
    @keyframes cgv-show-label { to { opacity: 1; transform: translateY(0); } }
    @media (max-width: 1180px) {
      .cgv-services-hero .cgv-shell { grid-template-columns: minmax(0, .88fr) minmax(0, 1.6fr); gap: 14px; padding-inline: clamp(24px, 4vw, 64px); }
      .cgv-services-hero .cgv-shell { min-height: 680px; }
      .cgv-services-hero .cgv-diagram { min-height: 480px; }
      .cgv-services-hero .cgv-service { letter-spacing: .05em; }
    }
    @media (max-width: 930px) {
      .cgv-services-hero .cgv-shell { grid-template-columns: minmax(0, 1fr); min-height: auto; gap: 34px; padding-top: 78px; }
      .cgv-services-hero .cgv-copy { max-width: min(660px, 100%); }
      .cgv-services-hero .cgv-title { max-width: 100%; font-size: clamp(2.4rem, 7vw, 4.6rem); }
      .cgv-services-hero .cgv-diagram { width: min(860px, 100%); min-height: min(77vw, 590px); margin: 0 auto; }
    }
    @media (max-width: 600px) {
      .cgv-services-hero .cgv-shell { min-height: auto; padding: 62px 20px 38px; }
      .cgv-services-hero .cgv-kicker { margin-bottom: 16px; font-size: 9px; letter-spacing: .15em; }
      .cgv-services-hero .cgv-title { max-width: 100%; font-size: clamp(2rem, 9vw, 3rem); letter-spacing: -.04em; line-height: 1.1; }
      .cgv-services-hero .cgv-description { margin-top: 22px; font-size: .95rem; line-height: 1.62; }
      .cgv-services-hero .cgv-cta { width: 100%; max-width: 286px; justify-content: space-between; margin-top: 27px; }
      .cgv-services-hero .cgv-diagram { min-height: 280px; margin-top: 3px; aspect-ratio: 1.25 / 1; }
      .cgv-services-hero .cgv-logo-core { width: clamp(98px, 31vw, 138px); }
      .cgv-services-hero .cgv-service { display: none; }
      .cgv-services-hero .cgv-wire { opacity: 0; }
      .cgv-services-hero .cgv-motion-control { right: 0; bottom: 4px; }
      .cgv-services-hero .cgv-services-mobile {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px 17px;
        margin: 10px 0 0;
        padding: 0;
        list-style: none;
      }
      .cgv-services-hero .cgv-services-mobile li { min-width: 0; }
      .cgv-services-hero .cgv-services-mobile span,
      .cgv-services-hero .cgv-services-mobile a {
        display: inline-flex;
        min-height: 38px;
        align-items: center;
        color: var(--cgv-muted);
        font-size: 10px;
        font-weight: 600;
        letter-spacing: .065em;
        line-height: 1.35;
        text-decoration: none;
        text-transform: uppercase;
      }
      .cgv-services-hero .cgv-services-mobile a:hover { color: #eafcfe; }
    }
    @media (min-width: 601px) {
      .cgv-services-hero .cgv-services-mobile { display: none; }
    }
    @media (prefers-reduced-motion: reduce) {
      .cgv-services-hero .cgv-ring,
      .cgv-services-hero .cgv-cta,
      .cgv-services-hero .cgv-arrow,
      .cgv-services-hero .cgv-service,
      .cgv-services-hero .cgv-wire,
      .cgv-services-hero .cgv-wire-dot,
      .cgv-services-hero .cgv-motion-control { animation: none !important; transition: none !important; }
      .cgv-services-hero .cgv-service { opacity: 1 !important; }
    }
  
