.apx-header{font-family:"Outfit", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;-webkit-font-smoothing:antialiased;}
.apx-header *{box-sizing:border-box;}
.apx-header a{text-decoration:none;color:inherit;}
.apx-header ul{list-style:none;margin:0;padding:0;}

/* 1328 = the Figma 1280 content column plus the 24px gutters, so at >=1328px
   the row runs 320 -> 1600 exactly as it does in the design. */
.apx-inner{width:100%;max-width:1328px;margin:0 auto;padding:0 24px;
  display:flex;align-items:center;}

/* --------------------------------- top bar -------------------------------- */
.apx-topbar{background:var(--apx-bar);height:var(--apx-bar-h);overflow:hidden;
  transition:height .38s cubic-bezier(.22,1,.36,1),opacity .28s ease;}
.apx-topbar .apx-inner{height:var(--apx-bar-h);justify-content:space-between;}
.apx-header[data-scrolled="true"][data-shrink="true"] .apx-topbar{height:0;opacity:0;}

.apx-offices{display:flex;align-items:center;min-width:0;}
.apx-offices-label{font-size:16px;font-weight:600;letter-spacing:2px;
  text-transform:uppercase;color:rgba(255,255,255,.7);white-space:nowrap;}
.apx-rule{width:30px;height:1px;border-radius:27px;background:rgba(255,255,255,.2);
  margin:0 10px 0 5px;flex:none;}
.apx-office-list{display:flex;align-items:center;gap:20px;min-width:0;}
.apx-office-link{display:flex;align-items:center;gap:8px;}
.apx-flag{width:32px;height:20px;border-radius:4px;overflow:hidden;flex:none;
  display:block;box-shadow:0 0 0 1px rgba(255,255,255,.12);}
.apx-flag img{width:100%;height:100%;object-fit:cover;display:block;}
.apx-office-city{font-size:16px;font-weight:400;line-height:25.2px;color:#fff;
  white-space:nowrap;transition:color .2s ease;}
.apx-office:is(:hover,.home-auto-hover) .apx-office-city{color:var(--apx-accent);}

.apx-journey{display:flex;align-items:center;gap:13px;color:var(--apx-accent);
  flex:none;}
.apx-journey-text{font-size:16px;font-weight:500;line-height:23.944px;
  text-decoration:underline;text-underline-offset:3px;white-space:nowrap;}
.apx-journey-icon{display:flex;}

/* --------------------------------- navbar --------------------------------- */
.apx-navbar{background:#fff;height:var(--apx-nav-h);
  border-bottom:1px solid rgba(204,204,204,.5);
  transition:height .38s cubic-bezier(.22,1,.36,1),box-shadow .38s ease;}
.apx-navbar .apx-inner{height:100%;justify-content:space-between;gap:24px;}
.apx-header[data-scrolled="true"][data-shrink="true"] .apx-navbar{height:72px;
  box-shadow:0 10px 30px -12px rgba(38,38,38,.22);}

.apx-logo{width:127.84px;height:67.23px;flex:none;overflow:hidden;
  position:relative;display:block;transition:width .38s cubic-bezier(.22,1,.36,1),
  height .38s cubic-bezier(.22,1,.36,1);}
.apx-logo-img{position:absolute;width:110.76%;height:209.97%;left:-7.32%;
  top:-52.46%;max-width:none;display:block;}
.apx-header[data-scrolled="true"][data-shrink="true"] .apx-logo{width:104px;height:55px;}

.apx-nav{display:flex;align-items:center;gap:var(--apx-nav-gap);flex:1 1 auto;
  justify-content:center;min-width:0;}
.apx-navitem{position:relative;display:flex;align-items:center;gap:5px;
  color:var(--apx-ink);white-space:nowrap;padding:6px 0;
  transition:color .22s ease,transform .22s ease;}
.apx-navitem-label{font-size:16px;font-weight:500;line-height:32px;}
.apx-plus{display:flex;color:currentColor;}
.apx-header .apx-topbar .apx-journey,
.apx-header .apx-topbar .apx-journey-text,
.apx-header .apx-topbar .apx-journey-icon { color: #FECC00; }
.apx-plus img { display: block; transition: transform .22s ease; }
.apx-navitem:is(:hover,.home-auto-hover) .apx-plus img,
.apx-navitem:focus-visible .apx-plus img { transform: rotate(180deg); }
@media (prefers-reduced-motion: reduce) {
  .apx-plus img { transition: none; }
}

.apx-underline{position:absolute;left:0;right:0;bottom:0;height:1.5px;
  background:var(--apx-accent);transform:scaleX(0);transform-origin:left center;
  transition:transform .32s cubic-bezier(.22,1,.36,1);border-radius:2px;}

.apx-header[data-hover="underline"] .apx-navitem:is(:hover,.home-auto-hover) .apx-underline,
.apx-header[data-hover="underline"] .apx-navitem:focus-visible .apx-underline{transform:scaleX(1);}
.apx-header[data-hover="colorShift"] .apx-navitem:is(:hover,.home-auto-hover){color:var(--apx-bar);}
.apx-header[data-hover="lift"] .apx-navitem:is(:hover,.home-auto-hover){transform:translateY(-3px);color:var(--apx-bar);}
.apx-header[data-hover="glow"] .apx-navitem:is(:hover,.home-auto-hover){color:var(--apx-bar);
  text-shadow:0 0 18px rgba(254,204,0,.85);}

.apx-cta{position:relative;width:191px;height:46px;border-radius:60px;
  background:var(--apx-accent);display:flex;align-items:center;
  justify-content:center;flex:none;overflow:hidden;
  transition:box-shadow .3s ease;}
.apx-cta-label{font-size:14px;font-weight:600;letter-spacing:2px;
  text-transform:uppercase;color:var(--apx-ink);white-space:nowrap;
  position:relative;z-index:1;}
.apx-shine{position:absolute;top:0;left:-140%;width:60%;height:100%;
  background:linear-gradient(100deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.75) 50%,rgba(255,255,255,0) 100%);
  transform:skewX(-18deg);pointer-events:none;}
.apx-header[data-cta="shine"] .apx-cta:is(:hover,.home-auto-hover) .apx-shine{
  animation:apx-shine-run .85s cubic-bezier(.22,1,.36,1);}
@keyframes apx-shine-run{from{left:-140%;}to{left:160%;}}
.apx-header[data-cta="shine"] .apx-cta:is(:hover,.home-auto-hover),
.apx-header[data-cta="lift"] .apx-cta:is(:hover,.home-auto-hover){
  box-shadow:0 14px 28px -10px rgba(254,204,0,.9);}
.apx-header[data-cta="pulse"] .apx-cta:is(:hover,.home-auto-hover){animation:apx-pulse 1.1s ease-in-out infinite;}
@keyframes apx-pulse{0%,100%{box-shadow:0 0 0 0 rgba(254,204,0,.55);}
  50%{box-shadow:0 0 0 12px rgba(254,204,0,0);}}

/* ---------------------------- burger + drawer ----------------------------- */
.apx-burger{display:none;width:44px;height:44px;border:0;background:transparent;
  padding:0;cursor:pointer;flex-direction:column;align-items:center;
  justify-content:center;gap:4px;flex:none;}
.apx-burger-bar{display:block;width:22px;height:2px;border-radius:2px;
  background:var(--apx-ink);}
.apx-drawer{overflow:hidden;background:#fff;
  border-bottom:1px solid rgba(204,204,204,.5);}
.apx-drawer-inner{max-width:1328px;margin:0 auto;padding:12px 24px 28px;
  display:flex;flex-direction:column;}
.apx-drawer-item{display:flex;align-items:center;justify-content:space-between;
  padding:15px 2px;font-size:17px;font-weight:500;color:var(--apx-ink);
  border-bottom:1px solid rgba(204,204,204,.45);}
.apx-drawer-cta{margin-top:22px;height:50px;border-radius:60px;
  background:var(--apx-accent);display:flex;align-items:center;
  justify-content:center;font-size:14px;font-weight:600;letter-spacing:2px;
  text-transform:uppercase;color:var(--apx-ink);}

/* ------------------------------- responsive ------------------------------- */
@media (max-width:1440px){
  .apx-header{--apx-nav-gap:22px;}
  .apx-navitem-label{font-size:15px;}
}
@media (max-width:1180px){
  .apx-header{--apx-nav-gap:16px;}
  .apx-navitem-label{font-size:14px;}
  .apx-cta{width:168px;height:44px;}
  .apx-logo{width:112px;height:59px;}
}
@media (max-width:1000px){
  .apx-header{--apx-nav-h:76px;}
  .apx-nav{display:none;}
  .apx-burger{display:flex;}
  .apx-navbar .apx-inner{justify-content:space-between;}
  .apx-cta{width:170px;height:42px;}
  .apx-offices-label{font-size:13px;letter-spacing:1.5px;}
  .apx-office-city{font-size:14px;}
}
@media (max-width:760px){
  .apx-header{--apx-bar-h:auto;--apx-nav-h:70px;}
  .apx-inner{padding:0 18px;}
  .apx-topbar{height:auto;}
  .apx-topbar .apx-inner{height:auto;padding-top:9px;padding-bottom:9px;
    flex-wrap:wrap;gap:8px 14px;justify-content:center;}
  .apx-header[data-scrolled="true"][data-shrink="true"] .apx-topbar{height:0;
    padding:0;}
  .apx-offices{flex-wrap:wrap;justify-content:center;gap:6px 0;}
  .apx-rule{display:none;}
  .apx-offices-label{margin-right:12px;}
  .apx-office-list{gap:14px;}
  .apx-cta{display:none;}
  .apx-logo{width:104px;height:55px;}
  .apx-header[data-scrolled="true"][data-shrink="true"] .apx-navbar{height:62px;}
}
@media (prefers-reduced-motion:reduce){
  .apx-header *{animation-duration:.001ms!important;transition-duration:.001ms!important;}
}


