:root {
  --buo-navy: #2E465D;
  --buo-blue: #5887AA;
  --buo-ice: #E4EEF4;
  --buo-accent: #0092EF;
  --buo-royal: #0C4DA2;
  --buo-white: #FFFFFF;
  --buo-ink: #1D2B36;
  --buo-muted: #5F6D78;
  --buo-line: rgba(46,70,93,.16);
}

html { scroll-behavior: smooth; }
body {
  background: var(--buo-white);
  color: var(--buo-ink);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
::selection { background: var(--buo-accent); color: var(--buo-white); }

.buo-header {
  border-bottom: 1px solid rgba(46,70,93,.10);
  transition: background-color .3s ease, box-shadow .3s ease, min-height .3s ease;
}
.buo-header.elementor-sticky--effects,
.elementor-sticky--effects .buo-header {
  background: rgba(255,255,255,.94) !important;
  box-shadow: 0 16px 45px rgba(29,43,54,.10);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.buo-header .elementor-nav-menu--main .elementor-item {
  letter-spacing: .10em;
  text-transform: uppercase;
}
.buo-header .elementor-menu-toggle {
  border: 1px solid var(--buo-line);
  border-radius: 0;
}
.buo-header .elementor-nav-menu--dropdown {
  border: 1px solid var(--buo-line);
  box-shadow: 0 22px 54px rgba(29,43,54,.13);
}

.buo-page { overflow: clip; }
.buo-block { position: relative; }
.buo-eyebrow .elementor-heading-title,
.buo-eyebrow { letter-spacing: .19em; text-transform: uppercase; }
.buo-display .elementor-heading-title { text-wrap: balance; }
.buo-copy,
.buo-copy p { text-wrap: pretty; }
.buo-copy p:last-child { margin-bottom: 0; }
.buo-copy a { color: inherit; text-decoration-color: var(--buo-accent); text-underline-offset: 5px; }
.buo-line { width: min(100%,72px) !important; }
.buo-button .elementor-button { transition: transform .22s ease, background-color .22s ease, color .22s ease, border-color .22s ease; }
.buo-button .elementor-button:hover { transform: translateY(-2px); }
.buo-image-frame { overflow: hidden; }
.buo-image-frame img { transition: transform 1s cubic-bezier(.2,.8,.2,1), filter .5s ease; }
.buo-image-frame:hover img { transform: scale(1.035); }

.buo-hero { isolation: isolate; }
.buo-hero::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background: linear-gradient(90deg,rgba(25,43,58,.94) 0%,rgba(25,43,58,.77) 46%,rgba(25,43,58,.19) 100%);
}
.buo-hero::after {
  content: "INTERNATIONAL TRADE / DIGITAL DNA";
  position: absolute;
  z-index: 2;
  right: 26px;
  bottom: 24px;
  color: rgba(255,255,255,.62);
  font: 700 9px/1 Manrope,sans-serif;
  letter-spacing: .22em;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}
.buo-hero > .e-con-inner,
.buo-hero > .elementor-element { position: relative; z-index: 1; }
.buo-hero-copy { border-left: 2px solid var(--buo-accent); padding-left: 38px !important; }

.buo-stats { border-top: 1px solid rgba(255,255,255,.14); }
.buo-stat { position: relative; }
.buo-stat:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 19%;
  width: 1px;
  height: 62%;
  background: rgba(255,255,255,.17);
}

.buo-company::before {
  content: "COMPANY";
  position: absolute;
  z-index: 0;
  right: -24px;
  top: 85px;
  color: rgba(88,135,170,.08);
  font: 600 clamp(82px,13vw,190px)/.8 "Space Grotesk",sans-serif;
  writing-mode: vertical-rl;
}
.buo-company > .e-con-inner { position: relative; z-index: 1; }
.buo-company-image { position: relative; }
.buo-company-image::before {
  content: "BLUE UP ONE";
  position: absolute;
  z-index: 2;
  left: -22px;
  bottom: 34px;
  padding: 15px 20px;
  background: var(--buo-navy);
  color: var(--buo-white);
  font: 700 10px/1 Manrope,sans-serif;
  letter-spacing: .18em;
}
.buo-company-image img { box-shadow: 28px 28px 0 var(--buo-ice); }

.buo-sectors { overflow: hidden; }
.buo-sectors::after {
  content: "B2B";
  position: absolute;
  left: -22px;
  bottom: -58px;
  color: rgba(255,255,255,.035);
  font: 600 clamp(170px,30vw,430px)/.7 "Space Grotesk",sans-serif;
  pointer-events: none;
}
.buo-sectors > .e-con-inner { position: relative; z-index: 1; }
.buo-sector-pill { margin-right: -1px; margin-bottom: -1px; transition: background-color .3s ease, transform .3s ease; }
.buo-sector-pill:hover { z-index: 2; background: var(--buo-accent); transform: translateY(-4px); }

.buo-projects { overflow: hidden; }
.buo-activity-card { overflow: hidden; transition: transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .4s ease; }
.buo-activity-card:hover { transform: translateY(-8px); box-shadow: 0 28px 60px rgba(29,43,54,.12); }
.buo-activity-card .buo-image-frame img { filter: saturate(.72); }
.buo-activity-card:hover .buo-image-frame img { filter: saturate(1); transform: scale(1.055); }

.buo-process-card { position: relative; overflow: hidden; transition: color .35s ease, background-color .35s ease, transform .35s ease; }
.buo-process-card::after {
  content: "";
  position: absolute;
  right: -42px;
  top: -42px;
  width: 112px;
  height: 112px;
  border: 1px solid rgba(0,146,239,.20);
  border-radius: 50%;
}
.buo-process-card:hover { z-index: 2; background: var(--buo-navy) !important; transform: translateY(-6px); }
.buo-process-card:hover .elementor-heading-title { color: var(--buo-white) !important; }
.buo-process-card:hover .elementor-widget-text-editor,
.buo-process-card:hover .elementor-widget-text-editor p { color: rgba(255,255,255,.67) !important; }

.buo-solutions { isolation: isolate; }
.buo-solutions::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background: linear-gradient(90deg,rgba(18,35,49,.78),rgba(18,35,49,.30));
}
.buo-solutions > .e-con-inner,
.buo-solutions > .elementor-element { position: relative; z-index: 1; }
.buo-solutions-panel {
  border: 1px solid rgba(255,255,255,.24);
  box-shadow: 0 36px 90px rgba(10,23,33,.30);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.buo-solutions-panel strong { color: var(--buo-white); }
.buo-solutions-panel ul { margin: 15px 0 20px; padding-left: 22px; }
.buo-solutions-panel li { margin: 8px 0; }

.buo-cta { overflow: hidden; }
.buo-cta::before {
  content: "01";
  position: absolute;
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(255,255,255,.10);
  font: 600 clamp(150px,25vw,350px)/.7 "Space Grotesk",sans-serif;
}
.buo-cta > .e-con-inner { position: relative; z-index: 1; }

.buo-form-card { box-shadow: 0 28px 68px rgba(29,43,54,.10); }
.buo-form .elementor-field-group { margin-bottom: 17px; }
.buo-form .elementor-field,
.buo-form select.elementor-field,
.buo-form textarea.elementor-field {
  min-height: 54px;
  padding: 14px 15px !important;
  color: var(--buo-ink) !important;
  background: var(--buo-white) !important;
  border: 1px solid rgba(46,70,93,.22) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.buo-form textarea.elementor-field { min-height: 145px; resize: vertical; }
.buo-form .elementor-field:focus { border-color: var(--buo-accent) !important; }
.buo-form .elementor-field-label {
  margin-bottom: 7px;
  color: var(--buo-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.buo-form .elementor-button { min-height: 56px; border-radius: 0; letter-spacing: .13em; text-transform: uppercase; }

.buo-footer { border-top: 8px solid var(--buo-accent); }
.buo-footer a { color: inherit; }
.buo-footer a:hover { color: #8CCCF2; }
.buo-footer-logo { filter: brightness(0) invert(1); opacity: .92; }

@media (max-width: 1024px) {
  .buo-stat:not(:last-child)::after { display: none; }
  .buo-hero-copy { padding-left: 28px !important; }
  .buo-sector-pill { min-height: 96px !important; }
  .buo-header .elementor-nav-menu--dropdown a { padding: 15px 25px !important; }
}

@media (max-width: 767px) {
  .buo-header .elementor-widget-nav-menu { position: static; }
  .buo-header .elementor-nav-menu--dropdown {
    position: fixed !important;
    top: 76px !important;
    right: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    max-height: calc(100vh - 76px);
    overflow-y: auto;
  }
  .buo-display .elementor-heading-title { hyphens: auto; }
  .buo-hero::after { display: none; }
  .buo-hero::before { background: linear-gradient(180deg,rgba(25,43,58,.75),rgba(25,43,58,.94)); }
  .buo-hero-copy { border-left: 0; border-top: 2px solid var(--buo-accent); padding: 28px 0 0 !important; }
  .buo-company::before { display: none; }
  .buo-company-image::before { left: 0; bottom: 20px; }
  .buo-company-image img { box-shadow: 12px 12px 0 var(--buo-ice); }
  .buo-sector-pill { width: 100% !important; }
  .buo-activity-card,
  .buo-process-card { width: 100% !important; }
  .buo-activity-card:hover,
  .buo-process-card:hover,
  .buo-image-frame:hover img { transform: none; }
  .buo-solutions-panel { padding: 42px 22px !important; }
  .buo-cta::before { right: -30px; }
  .buo-form-card { padding: 32px 20px !important; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
