:root{--ink:#0b1626;--navy:#061426;--blue:#087fe4;--sky:#1598f2;--paper:#f6fbff;--muted:#3f5269;--line:#c8daec}*{box-sizing:border-box}html,body{margin:0;min-width:320px;background:var(--paper);font-family:Arial,Barlow,sans-serif;color:var(--ink)}body{overflow-x:hidden}.locations-stage{width:100%;overflow:hidden}.locations-page{width:887px;transform-origin:top left;background:var(--paper)}a{text-decoration:none;color:inherit}.eyebrow{margin:0;color:var(--blue);font:700 9px/1 Arial,sans-serif}em{font-style:normal;color:var(--blue)}
.locations-hero{position:relative;height:419px;overflow:hidden;background:#040b16;color:#fff}.locations-hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.locations-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,12,23,.99) 0,rgba(3,12,23,.98) 42%,rgba(3,12,23,.28) 66%,rgba(3,12,23,0) 100%)}.locations-logo{position:absolute;z-index:4;display:flex;align-items:center;color:#fff}.locations-logo>img{width:48px;height:48px;object-fit:contain}.locations-logo>span{display:flex;position:relative;font:700 22px/1 Arial,sans-serif}.locations-logo b{color:var(--sky)}.locations-logo small{position:absolute;left:1px;top:25px;width:108px;color:#c3d0dd;font:400 6.5px/1 Arial,sans-serif}.locations-hero>.locations-logo{left:24px;top:15px}.locations-nav{position:absolute;z-index:5;left:286px;top:10px;width:574px;height:47px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:#eef4fa;font:400 9px/1 Arial,sans-serif;white-space:nowrap}.locations-nav>a:not(.locations-nav__button){height:47px;display:flex;align-items:center;border-bottom:2px solid transparent}.locations-nav>a.active{font-weight:700;border-color:var(--sky)}.locations-nav__button{display:grid;place-items:center;width:82px;height:34px;border-radius:20px;background:var(--blue);font-weight:700}.locations-nav>span{display:flex;align-items:center;gap:3px}.locations-nav>span img{width:6px;height:4px}.locations-hero__copy{position:absolute;left:66px;top:100px}.locations-hero__copy h1{margin:25px 0 19px;font:400 34px/1.15 Arial,sans-serif}.locations-hero__copy>p:not(.eyebrow){margin:0;font:400 12px/1.55 Arial,sans-serif}.hero-benefits{display:grid;grid-template-columns:repeat(3,117px);margin-top:25px}.hero-benefits article{position:relative;height:102px;padding-right:11px;border-right:1px solid #27415d}.hero-benefits article+article{padding-left:20px}.hero-benefits article:last-child{border:0}.hero-benefits img{display:block;width:42px;height:42px;margin-bottom:9px;padding:7px;border:1px solid rgba(255,255,255,.35);border-radius:50%;object-fit:contain}.hero-benefits article:first-child img{background:#0e73c9;border-color:transparent}.hero-benefits b{display:block;font:700 9px/1 Arial,sans-serif}.hero-benefits small{display:block;margin-top:8px;font:400 7px/1.5 Arial,sans-serif}.locations-hero:after{content:'';position:absolute;left:-1%;bottom:-18px;width:102%;height:36px;border-radius:50%;background:var(--paper)}
.offices{position:relative;height:369px;padding:24px 58px 0 66px;background:var(--paper)}.offices__heading{position:relative;height:88px}.offices__heading h2{margin:18px 0 0;font:400 25px/1.15 Arial,sans-serif}.offices__heading>p:last-child{position:absolute;left:297px;top:23px;margin:0;color:#394a5f;font:400 10px/1.5 Arial,sans-serif}.office-viewport{width:779px;overflow:hidden}.office-track{display:flex;gap:11px;width:max-content;transition:transform .35s ease}.office-card{position:relative;width:194px;height:244px;flex:0 0 194px;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff}.office-card.primary{border:1.5px solid var(--blue)}.office-card>img{width:100%;height:130px;object-fit:cover}.office-card>span{position:absolute;left:7px;top:7px;height:21px;padding:7px 7px 0;border-radius:5px;background:var(--blue);color:#fff;font:700 7px/1 Arial,sans-serif}.office-card h3{margin:11px 12px 9px;font:700 10.5px/1.2 Arial,sans-serif}.office-card p{height:34px;margin:0 12px;color:var(--muted);font:400 7.3px/1.45 Arial,sans-serif}.office-card small,.office-card a{display:block;margin:2px 12px 0;color:var(--muted);font:400 7px/1.3 Arial,sans-serif}.office-card a{margin-top:6px;color:var(--blue)}.office-next{position:absolute;right:18px;top:197px;width:30px;height:30px;border:0;border-radius:50%;display:grid;place-items:center;background:#061426;color:#fff;font:400 24px/1 Arial,sans-serif;cursor:pointer}.office-dots{position:absolute;left:423px;bottom:11px;display:flex;gap:7px}.office-dots button{width:7px;height:7px;padding:0;border:1px solid var(--blue);border-radius:50%;background:transparent;cursor:pointer}.office-dots button.active{width:9px;height:9px;background:var(--blue)}
.coverage{position:relative;width:778px;height:246px;margin:15px auto 15px;overflow:hidden;border-radius:14px;background:#041426;color:#fff}.coverage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.coverage__shade{position:absolute;inset:0;background:linear-gradient(90deg,#061426 0,#061426 27%,rgba(6,20,38,.84) 46%,rgba(6,20,38,.06) 78%)}.coverage__copy{position:absolute;left:29px;top:28px;width:235px}.coverage__copy h2{margin:18px 0 14px;font:400 24px/1.12 Arial,sans-serif}.coverage__copy>p:not(.eyebrow){margin:0;color:#d7e4ef;font:400 8px/1.55 Arial,sans-serif}.coverage__copy>a{display:grid;place-items:center;width:138px;height:34px;margin-top:17px;border-radius:18px;background:var(--blue);font:700 8px/1 Arial,sans-serif}
.promise{height:210px;padding:13px 65px 0;background:#fafcff}.promise h2{margin:15px 0 18px;font:400 23px/1 Arial,sans-serif}.promise-grid{display:grid;grid-template-columns:repeat(4,175px);gap:18px}.promise-grid article{position:relative;height:129px;padding:13px 16px;border:1px solid #d5e3f0;border-radius:8px;background:#fff}.promise-grid img{width:40px;height:40px;padding:5px;border-radius:50%;background:#eef9ff}.promise-grid h3{position:absolute;left:62px;top:21px;width:105px;margin:0;font:700 9px/1.2 Arial,sans-serif}.promise-grid p{margin:11px 0 0;color:#394a5f;font:400 7px/1.5 Arial,sans-serif}.promise-grid i{position:absolute;left:17px;bottom:14px;width:20px;height:2px;border-radius:2px;background:var(--blue)}
.locations-cta{position:relative;width:807px;height:94px;margin:9px auto;overflow:hidden;border-radius:14px;background:#031326;color:#fff}.locations-cta>img:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.locations-cta>div{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,19,38,.97),rgba(3,19,38,.7),rgba(3,19,38,.82))}.locations-cta__compass{position:absolute;left:26px;top:15px;width:63px;height:63px;object-fit:contain!important}.locations-cta h2{position:absolute;left:112px;top:20px;margin:0;font:700 17px/1.2 Arial,sans-serif}.locations-cta h2 small{display:block;margin-top:8px;font:400 8.5px/1.4 Arial,sans-serif}.locations-cta__button{position:absolute;left:478px;top:29px;width:164px;height:34px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:18px;background:var(--blue);font:700 8px/1 Arial,sans-serif}.locations-cta__button img{width:13px;height:13px}.locations-cta__link{position:absolute;left:657px;top:42px;font:700 8px/1 Arial,sans-serif}
.locations-footer{position:relative;height:216px;padding:25px 35px 28px 33px;display:grid;grid-template-columns:245px 113px 133px 119px 1fr;gap:14px;background:#031121;color:#fff}.locations-footer .locations-logo{position:relative;left:0;top:0;height:38px}.locations-footer .locations-logo>img{width:38px;height:38px}.locations-footer .locations-logo>span{font-size:18px}.locations-footer .locations-logo small{top:21px;font-size:5.5px}.locations-footer__brand .brandline{margin:15px 0 12px;font:400 10px/1 Arial,sans-serif}.locations-footer__brand>p:not(.brandline){margin:0;color:#9fb0c2;font:400 7.6px/1.55 Arial,sans-serif}.locations-footer__column{display:flex;flex-direction:column;gap:8px}.locations-footer__column h3{margin:1px 0 4px;color:#b7c6d5;font:700 8px/1 Arial,sans-serif}.locations-footer__column a,.locations-footer__column span{color:#eef4f9;font:400 7.3px/1.15 Arial,sans-serif}.locations-footer__column.contact a{color:var(--blue);font-weight:700}.locations-footer__legal{position:absolute;left:33px;right:33px;bottom:15px;padding-top:10px;border-top:1px solid #17354f;display:flex;justify-content:space-between;color:#8fa2b6;font:400 6.5px/1 Arial,sans-serif}.locations-footer__legal span:last-child{display:flex;gap:17px}.locations-footer .nextport-social-links{position:static!important;display:flex!important;gap:7px!important;width:max-content!important;height:21px!important;margin-top:10px!important}.locations-footer .nextport-social-links a{width:21px!important;height:21px!important}.locations-footer .nextport-social-links svg{width:9px!important;height:9px!important}
.locations-nav>span:last-child{display:none}.locations-nav{width:543px}
.locations-logo{width:164px;height:48px;display:block}.locations-logo>img{width:100%;height:100%;object-fit:contain}.locations-logo>span{display:none}.locations-footer .locations-logo{width:130px;height:38px;display:block}.locations-footer .locations-logo>img{width:100%;height:100%;object-fit:contain}

@media (max-width:760px){
  body{overflow-x:hidden}
  .locations-page{width:100%;height:auto}

  .locations-hero{height:auto;min-height:440px;padding:80px 20px 32px;display:flex;flex-direction:column}
  .locations-hero__image{position:absolute;inset:0;width:100%;height:100%}
  .locations-hero__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,12,23,.55) 0%,rgba(3,12,23,.9) 60%,rgba(3,12,23,.98) 100%)}
  .locations-hero__copy{position:relative;inset:auto;z-index:3}
  .locations-hero__copy h1{margin:16px 0 14px;font-size:28px;line-height:1.2}
  .locations-hero__copy>p:not(.eyebrow){font-size:13px;line-height:1.6}
  .hero-benefits{display:block;margin-top:18px}
  .hero-benefits article{display:none}
  .locations-hero .np-tabs__panel span{color:#c9d8e6}
  .locations-hero:after{height:20px;bottom:-10px}

  .offices{height:auto;padding:28px 20px 24px}
  .offices__heading{height:auto}
  .offices__heading h2{font-size:20px;line-height:1.3}
  .offices__heading>p:last-child{position:static;margin-top:10px;font-size:12px;line-height:1.5}
  /* Carrusel táctil: se desliza con el dedo y cada tarjeta se ancla sola.
     Nada queda recortado, sólo fuera de cuadro hasta que se desliza. */
  .office-viewport{width:auto;margin:16px -20px 0;padding:0 20px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .office-viewport::-webkit-scrollbar{display:none}
  .office-track{transform:none!important;transition:none}
  .office-card{width:272px;flex:0 0 272px;height:auto;padding-bottom:16px;scroll-snap-align:center}
  .office-card>img{height:150px}
  .office-card h3{margin:12px 14px 8px;font-size:13.5px}
  .office-card>span{font-size:11px;height:auto;padding:6px 9px}
  .office-card p{height:auto;margin:0 14px;font-size:11.5px;line-height:1.5}
  .office-card small{display:flex;align-items:center;min-height:32px;margin:2px 14px 0;font-size:11.5px}
  .office-card a{display:flex;align-items:center;min-height:44px;margin:0 14px;font-size:11.5px;word-break:break-all}
  .office-next{position:static;display:flex;width:44px;height:44px;margin:14px auto 0;font-size:26px}
  .office-dots{position:static;justify-content:center;margin-top:10px;gap:10px}
  .office-dots button{width:12px;height:12px}
  .office-dots button.active{width:14px;height:14px}

  .coverage{width:100%;height:auto;padding:20px;margin:16px auto}
  .coverage__copy{position:relative;inset:auto;z-index:2;width:100%}
  .coverage__copy h2{font-size:20px;line-height:1.3}
  .coverage__copy>p:not(.eyebrow){font-size:12.5px;line-height:1.6}
  .coverage__copy>a{width:100%;max-width:220px;height:46px;margin-top:14px;font-size:13px}

  .promise{height:auto;padding:24px 20px}
  .promise h2{font-size:20px}
  .promise-grid{display:block}
  .promise-grid article{display:none}

  /* El contenido va relative+z-index para quedar sobre la foto y el velo. */
  .locations-cta{width:100%;height:auto;padding:20px 20px 24px}
  .locations-cta__compass{position:relative;inset:auto;z-index:2;width:52px;height:52px;margin-bottom:12px}
  .locations-cta h2{position:relative;inset:auto;z-index:2;margin:0 0 14px;font-size:16px;line-height:1.35}
  .locations-cta h2 small{font-size:12.5px;line-height:1.5}
  .locations-cta__button{position:relative;inset:auto;z-index:2;width:100%;max-width:240px;height:46px;font-size:13px}
  .locations-cta__link{position:relative;inset:auto;z-index:2;display:inline-flex;align-items:center;min-height:44px;margin-top:4px;font-size:13px}
}
