From 6bb17b7c284431d4470930f9f5457304ddb8ac15 Mon Sep 17 00:00:00 2001
From: CerealKiller97 <bogdanovicstefan1997@gmail.com>
Date: Tue, 3 Sep 2019 13:49:35 +0200
Subject: [PATCH] Will finish soon

---
 .../game-list/game-list.component.ts          |    5 +-
 .../game-profile/game-profile.component.css   |    0
 .../game-profile/game-profile.component.html  |    1 +
 .../game-profile.component.spec.ts            |   25 +
 .../game-profile/game-profile.component.ts    |   45 +
 .../components/game/game.component.html       |   28 +-
 .../gaming/components/game/game.component.ts  |   23 +-
 src/app/modules/gaming/gaming.module.ts       |   13 +-
 .../home/components/home/home.component.css   |    4 +-
 .../home/components/home/home.component.html  |   33 +-
 .../home/components/home/home.component.ts    |   25 +-
 src/app/modules/home/home.module.ts           |   15 +-
 .../components/header/header.component.html   |    2 +-
 .../components/header/header.component.ts     |   13 +-
 src/app/modules/shared/models/Game.ts         |   16 +-
 src/app/modules/shared/models/Genre.model.ts  |    6 +
 .../modules/shared/models/Platform.model.ts   |    9 +
 .../modules/shared/models/Screenshot.model.ts |    4 +
 .../shared/services/games/games.service.ts    |   14 +-
 .../shared/services/genres/genres.service.ts  |    2 +-
 .../services/icons/custom-icons.service.ts    |    6 +-
 src/assets/data/platforms.json                |   31 +
 src/styles.css                                | 4715 ++++++++++++++---
 23 files changed, 4197 insertions(+), 838 deletions(-)
 create mode 100644 src/app/modules/gaming/components/game-profile/game-profile.component.css
 create mode 100644 src/app/modules/gaming/components/game-profile/game-profile.component.html
 create mode 100644 src/app/modules/gaming/components/game-profile/game-profile.component.spec.ts
 create mode 100644 src/app/modules/gaming/components/game-profile/game-profile.component.ts
 create mode 100644 src/app/modules/shared/models/Genre.model.ts
 create mode 100644 src/app/modules/shared/models/Platform.model.ts
 create mode 100644 src/app/modules/shared/models/Screenshot.model.ts
 create mode 100644 src/assets/data/platforms.json

diff --git a/src/app/modules/gaming/components/game-list/game-list.component.ts b/src/app/modules/gaming/components/game-list/game-list.component.ts
index 660e350..3ba18ee 100644
--- a/src/app/modules/gaming/components/game-list/game-list.component.ts
+++ b/src/app/modules/gaming/components/game-list/game-list.component.ts
@@ -38,9 +38,8 @@ export class GameListComponent implements OnInit, OnDestroy {
   }
 
   public ngOnDestroy(): void {
-    // Performance reason
-    for (let i = 0; i < this.subscriptions.length; i++) {
-      this.subscriptions[i].unsubscribe();
+    for (const sub of this.subscriptions) {
+      sub.unsubscribe();
     }
   }
 }
diff --git a/src/app/modules/gaming/components/game-profile/game-profile.component.css b/src/app/modules/gaming/components/game-profile/game-profile.component.css
new file mode 100644
index 0000000..e69de29
diff --git a/src/app/modules/gaming/components/game-profile/game-profile.component.html b/src/app/modules/gaming/components/game-profile/game-profile.component.html
new file mode 100644
index 0000000..292915c
--- /dev/null
+++ b/src/app/modules/gaming/components/game-profile/game-profile.component.html
@@ -0,0 +1 @@
+<p>game-profile works!</p>
diff --git a/src/app/modules/gaming/components/game-profile/game-profile.component.spec.ts b/src/app/modules/gaming/components/game-profile/game-profile.component.spec.ts
new file mode 100644
index 0000000..94114e9
--- /dev/null
+++ b/src/app/modules/gaming/components/game-profile/game-profile.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { GameProfileComponent } from './game-profile.component';
+
+describe('GameProfileComponent', () => {
+  let component: GameProfileComponent;
+  let fixture: ComponentFixture<GameProfileComponent>;
+
+  beforeEach(async(() => {
+    TestBed.configureTestingModule({
+      declarations: [ GameProfileComponent ]
+    })
+    .compileComponents();
+  }));
+
+  beforeEach(() => {
+    fixture = TestBed.createComponent(GameProfileComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
diff --git a/src/app/modules/gaming/components/game-profile/game-profile.component.ts b/src/app/modules/gaming/components/game-profile/game-profile.component.ts
new file mode 100644
index 0000000..ae4ea99
--- /dev/null
+++ b/src/app/modules/gaming/components/game-profile/game-profile.component.ts
@@ -0,0 +1,45 @@
+import { Component, OnInit, OnDestroy } from '@angular/core';
+import { ActivatedRoute, Router } from '@angular/router';
+import { GamesService } from '@service/games/games.service';
+import { Subscription } from 'rxjs';
+import { Game } from '@model/Game';
+
+@Component({
+  selector: 'app-game-profile',
+  templateUrl: './game-profile.component.html',
+  styleUrls: ['./game-profile.component.css']
+})
+export class GameProfileComponent implements OnInit, OnDestroy {
+  private subscriptions: Array<Subscription> = new Array<Subscription>();
+  private gameSlug: string;
+  public game: Game;
+
+  constructor(
+    private readonly router: Router,
+    private readonly route: ActivatedRoute,
+    private readonly gamingService: GamesService
+  ) {}
+
+  public ngOnInit(): void {
+    this.getGameSlug();
+    this.subscriptions.push(
+      this.gamingService.getGame(this.gameSlug).subscribe((game: Game) => {
+        console.log(game);
+      })
+    );
+  }
+
+  private getGameSlug(): void {
+    this.subscriptions.push(
+      this.route.paramMap.subscribe(param => {
+        this.gameSlug = param.get('game');
+      })
+    );
+  }
+
+  public ngOnDestroy(): void {
+    for (const sub of this.subscriptions) {
+      sub.unsubscribe();
+    }
+  }
+}
diff --git a/src/app/modules/gaming/components/game/game.component.html b/src/app/modules/gaming/components/game/game.component.html
index c57e36e..a914c08 100644
--- a/src/app/modules/gaming/components/game/game.component.html
+++ b/src/app/modules/gaming/components/game/game.component.html
@@ -1 +1,27 @@
-<p>game works!</p>
+<mat-card class="example-card">
+  <ng-template #name>
+
+  </ng-template>
+
+  <img mat-card-image [src]="game.background_image" [alt]="game.name" (hover)="imageToVideoReplace(game);" />
+
+  <mat-card-header>
+    <div mat-card-avatar class="example-header-image"></div>
+    <mat-card-title>{{ game.name | uppercase }}</mat-card-title>
+    <mat-card-subtitle>Dog Breed</mat-card-subtitle>
+  </mat-card-header>
+  <mat-card-content>
+    <p>
+      The Shiba Inu is the smallest of the six original and distinct spitz breeds of dog from Japan.
+      A small, agile dog that copes very well with mountainous terrain, the Shiba Inu was originally
+      bred for hunting.
+    </p>
+  </mat-card-content>
+  <mat-card-actions>
+    <button mat-raised-button [routerLink]="['/gaming/game', game.slug]" color="primary">Read More</button>
+    <button mat-raised-button (click)="addToWishList();">
+      <span>Add to WishList</span>
+      <mat-icon>shopping_cart</mat-icon>
+    </button>
+  </mat-card-actions>
+</mat-card>
diff --git a/src/app/modules/gaming/components/game/game.component.ts b/src/app/modules/gaming/components/game/game.component.ts
index 62b910a..d6d36d9 100644
--- a/src/app/modules/gaming/components/game/game.component.ts
+++ b/src/app/modules/gaming/components/game/game.component.ts
@@ -1,4 +1,6 @@
-import { Component, OnInit } from '@angular/core';
+import { Component, OnInit, Input } from '@angular/core';
+import { Game } from '@model/Game';
+import { MatSnackBar, MatSnackBarConfig } from '@angular/material/snack-bar';
 
 @Component({
   selector: 'app-game',
@@ -6,6 +8,23 @@ import { Component, OnInit } from '@angular/core';
   styleUrls: ['./game.component.css']
 })
 export class GameComponent implements OnInit {
-  constructor() {}
+  @Input()
+  game: Game;
+
+  constructor(private readonly matSnack: MatSnackBar) {}
   ngOnInit(): void {}
+
+  public addToWishList(): void {
+    const options: MatSnackBarConfig = {
+      direction: 'ltr',
+      duration: 4000,
+      horizontalPosition: 'end',
+      panelClass: ['success']
+    };
+    this.matSnack.open('Successfully added to your wishlist', null, options);
+  }
+
+  public imageToVideoReplace(game: Game) {
+    console.log(game);
+  }
 }
diff --git a/src/app/modules/gaming/gaming.module.ts b/src/app/modules/gaming/gaming.module.ts
index 2ff5628..b3e7f4c 100644
--- a/src/app/modules/gaming/gaming.module.ts
+++ b/src/app/modules/gaming/gaming.module.ts
@@ -3,7 +3,9 @@ import { CommonModule } from '@angular/common';
 import { Routes, RouterModule } from '@angular/router';
 import { GameComponent } from './components/game/game.component';
 import { GameListComponent } from './components/game-list/game-list.component';
-
+import { MatCardModule } from '@angular/material/card';
+import { MaterialModule } from '@shared-components/material/material.module';
+import { GameProfileComponent } from './components/game-profile/game-profile.component';
 const routes: Routes = [
   {
     path: 'platform/:platform',
@@ -12,11 +14,16 @@ const routes: Routes = [
   {
     path: 'genres/:genre',
     component: GameListComponent
+  },
+  {
+    path: 'game/:game',
+    component: GameProfileComponent
   }
 ];
 
 @NgModule({
-  declarations: [GameComponent, GameListComponent],
-  imports: [CommonModule, RouterModule.forChild(routes)]
+  declarations: [GameComponent, GameListComponent, GameProfileComponent],
+  imports: [CommonModule, RouterModule.forChild(routes), MatCardModule, MaterialModule],
+  exports: [MatCardModule, GameComponent, MaterialModule]
 })
 export class GamingModule {}
diff --git a/src/app/modules/home/components/home/home.component.css b/src/app/modules/home/components/home/home.component.css
index 63949df..8b13789 100644
--- a/src/app/modules/home/components/home/home.component.css
+++ b/src/app/modules/home/components/home/home.component.css
@@ -1,3 +1 @@
-.light-text {
-  font-weight: 100 !important;
-}
+
diff --git a/src/app/modules/home/components/home/home.component.html b/src/app/modules/home/components/home/home.component.html
index 9d6d6b1..62e8cd9 100644
--- a/src/app/modules/home/components/home/home.component.html
+++ b/src/app/modules/home/components/home/home.component.html
@@ -1,17 +1,16 @@
-<mat-grid-list cols="1" rowHeight="2:1">
-  <mat-grid-tile>
-    <h1 class="light-text">Welcome to VideoGamer</h1>
-    <br />
-    <h5>Discover your new favorite game.</h5>
-    <mat-form-field>
-      <input matInput placeholder="label" value="value">
-    </mat-form-field>
-    <mat-form-field>
-      <mat-label>Cars</mat-label>
-      <select matNativeControl required>
-        <option value="volvo">Volvo</option>
-      </select>
-    </mat-form-field>
-    <button mat-raised-button color="primary" (click)="onClick();">Explore</button>
-  </mat-grid-tile>
-</mat-grid-list>
+<div class="container">
+  <div class="row">
+    <div class="col col-lg-6">
+      <h1 class="light-text">Welcome to VideoGamer</h1>
+      <h5 class="ligt-text">Discover your new favorite game.</h5>
+      <button mat-raised-button color="primary" (click)="onClick();">Explore</button>
+    </div>
+  </div>
+  <div class="row">
+    <h1 class="light-text text-center">Most popular games</h1>
+    <div class="col col-lg-4 col-sm-6">
+      <app-game *ngFor="let game of games" [game]="game">
+      </app-game>
+    </div>
+  </div>
+</div>
diff --git a/src/app/modules/home/components/home/home.component.ts b/src/app/modules/home/components/home/home.component.ts
index 0fda297..51f5786 100644
--- a/src/app/modules/home/components/home/home.component.ts
+++ b/src/app/modules/home/components/home/home.component.ts
@@ -4,13 +4,18 @@ import { LoadingService } from '@service/loading/loading.service';
 import { MatSnackBar, MatSnackBarConfig } from '@angular/material/snack-bar';
 import { Subscription } from 'rxjs';
 import { GamesService } from '@service/games/games.service';
+import { GameComponent } from 'app/modules/gaming/components/game/game.component';
+import { Game } from '@model/Game';
 @Component({
   selector: 'app-home',
   templateUrl: './home.component.html',
-  styleUrls: ['./home.component.css']
+  styleUrls: ['./home.component.css'],
+  entryComponents: [GameComponent]
 })
 export class HomeComponent implements OnInit {
-  private subscription: Subscription;
+  private subscriptions: Array<Subscription> = new Array<Subscription>();
+
+  public games: Array<any> = new Array<any>();
 
   constructor(
     private readonly titleService: Title,
@@ -23,16 +28,20 @@ export class HomeComponent implements OnInit {
     this.loadingService.setLoading(true);
     this.titleService.setTitle('VideoGamer | Home');
     this.openSnackBar();
-    this.subscription = this.gamesService.getGames().subscribe(data => {
-      console.log(data);
-    });
+    this.subscriptions.push(
+      this.gamesService.getRandomGames().subscribe((data: Game[]) => {
+        this.games = data;
+        console.log(this.games);
+      })
+    );
   }
 
   openSnackBar(): void {
     const options: MatSnackBarConfig = {
       direction: 'ltr',
       duration: 4000,
-      horizontalPosition: 'end'
+      horizontalPosition: 'end',
+      panelClass: ['primary']
     };
 
     this.snackBar.open('Welcome 👋', null, options);
@@ -41,4 +50,8 @@ export class HomeComponent implements OnInit {
   onClick(): void {
     this.openSnackBar();
   }
+
+  public trackBy(index: number, item: Game): string {
+    return item.slug;
+  }
 }
diff --git a/src/app/modules/home/home.module.ts b/src/app/modules/home/home.module.ts
index 87db831..191ef0f 100644
--- a/src/app/modules/home/home.module.ts
+++ b/src/app/modules/home/home.module.ts
@@ -4,12 +4,13 @@ import { HomeComponent } from './components/home/home.component';
 import { RouterModule, Routes } from '@angular/router';
 import { MatGridListModule } from '@angular/material/grid-list';
 import { MatButtonModule } from '@angular/material/button';
-import { MatInputModule } from '@angular/material/input';
 import { MatSnackBarModule } from '@angular/material/snack-bar';
 import { NotificationComponent } from '../shared-components/components/notification/notification.component';
 import { SharedModule } from '../shared/shared.module';
 import { GamesService } from '@service/games/games.service';
-import { CustomIconService } from '@serviceicons/custom-icons.service';
+import { CustomIconService } from '@service/icons/custom-icons.service';
+import { GameComponent } from '../gaming/components/game/game.component';
+import { GamingModule } from '..';
 
 const routes: Routes = [
   {
@@ -26,20 +27,20 @@ const routes: Routes = [
     RouterModule.forChild(routes),
     MatGridListModule,
     MatButtonModule,
-    MatInputModule,
     MatSnackBarModule,
-    SharedModule
+    SharedModule,
+    GamingModule
   ],
   exports: [
     HomeComponent,
     RouterModule,
     MatGridListModule,
     MatButtonModule,
-    MatInputModule,
     MatSnackBarModule,
-    SharedModule
+    SharedModule,
+    GamingModule
   ],
-  entryComponents: [NotificationComponent],
+  entryComponents: [NotificationComponent, GameComponent],
   providers: [GamesService, CustomIconService]
 })
 export class HomeModule {}
diff --git a/src/app/modules/shared-components/components/header/header.component.html b/src/app/modules/shared-components/components/header/header.component.html
index d0f853f..eee39c6 100644
--- a/src/app/modules/shared-components/components/header/header.component.html
+++ b/src/app/modules/shared-components/components/header/header.component.html
@@ -52,7 +52,7 @@
         </a>
         <a mat-menu-item href="https://github.com/CerealKiller97/NG-VideoGamer" target="_blank">
           <mat-icon>star</mat-icon>
-          <span>Star it on Github</span>
+          <span>Star project on Github</span>
         </a>
         <button mat-menu-item href="https://github.com/CerealKiller97/NG-VideoGamer" (click)="openReportBugDialog();">
           <mat-icon>bug_report</mat-icon>
diff --git a/src/app/modules/shared-components/components/header/header.component.ts b/src/app/modules/shared-components/components/header/header.component.ts
index 75c12de..f9fff60 100644
--- a/src/app/modules/shared-components/components/header/header.component.ts
+++ b/src/app/modules/shared-components/components/header/header.component.ts
@@ -61,7 +61,6 @@ export class HeaderComponent implements OnInit, OnDestroy {
     );
 
     this.platforms = this.platformService.getPlatforms();
-    // this.dialogService.open();
   }
 
   public openReportBugDialog(): void {
@@ -70,10 +69,12 @@ export class HeaderComponent implements OnInit, OnDestroy {
       data: { bug: this.bugReport }
     });
 
-    dialogRef.afterClosed().subscribe((result: any) => {
-      console.log('The dialog was closed');
-      this.bugReport = result;
-    });
+    this.subscriptions.push(
+      dialogRef.afterClosed().subscribe((result: any) => {
+        console.log('The dialog was closed');
+        this.bugReport = result;
+      })
+    );
   }
 
   public trackByFunc(index: number, item: Link): string {
@@ -81,7 +82,7 @@ export class HeaderComponent implements OnInit, OnDestroy {
   }
 
   public ngOnDestroy(): void {
-    for (let sub of this.subscriptions) {
+    for (const sub of this.subscriptions) {
       sub.unsubscribe();
     }
   }
diff --git a/src/app/modules/shared/models/Game.ts b/src/app/modules/shared/models/Game.ts
index fe9b8ec..ba93528 100644
--- a/src/app/modules/shared/models/Game.ts
+++ b/src/app/modules/shared/models/Game.ts
@@ -1,7 +1,17 @@
-import { Team } from '@model/Team';
+import { Genre } from '@model/Genre.model';
+import { Screenshoot } from '@model/Screenshot.model';
+import { Platform } from '@model/Platform.model';
 
 export interface Game {
   id: number;
-  date: Date;
-  homeTeam: Team;
+  name: string;
+  background_image: string;
+  dominantColor: string;
+  genres: Genre[];
+  metacritic: number;
+  screenshots: Screenshoot[];
+  platforms: Platform[];
+  playtime: number;
+  slug: string;
+  realeseData: string;
 }
diff --git a/src/app/modules/shared/models/Genre.model.ts b/src/app/modules/shared/models/Genre.model.ts
new file mode 100644
index 0000000..92e62c9
--- /dev/null
+++ b/src/app/modules/shared/models/Genre.model.ts
@@ -0,0 +1,6 @@
+export interface Genre {
+  id: number;
+  backgroundImage: string;
+  name: string;
+  slug: string;
+}
diff --git a/src/app/modules/shared/models/Platform.model.ts b/src/app/modules/shared/models/Platform.model.ts
new file mode 100644
index 0000000..05f1548
--- /dev/null
+++ b/src/app/modules/shared/models/Platform.model.ts
@@ -0,0 +1,9 @@
+export interface Platform {
+  id: number;
+  image: string | null;
+  imageBackground: string | null;
+  name: string;
+  slug: string;
+  yearEnd: any;
+  yearStart: any;
+}
diff --git a/src/app/modules/shared/models/Screenshot.model.ts b/src/app/modules/shared/models/Screenshot.model.ts
new file mode 100644
index 0000000..cdad1d3
--- /dev/null
+++ b/src/app/modules/shared/models/Screenshot.model.ts
@@ -0,0 +1,4 @@
+export interface Screenshoot {
+  id: number;
+  path: string;
+}
diff --git a/src/app/modules/shared/services/games/games.service.ts b/src/app/modules/shared/services/games/games.service.ts
index 95c2010..921d075 100644
--- a/src/app/modules/shared/services/games/games.service.ts
+++ b/src/app/modules/shared/services/games/games.service.ts
@@ -1,5 +1,5 @@
 import { Injectable } from '@angular/core';
-import { HttpClient } from '@angular/common/http';
+import { HttpClient, HttpParams } from '@angular/common/http';
 import { Game } from '@model/Game';
 import { Observable } from 'rxjs';
 import { environment } from '../../../../../environments/environment';
@@ -9,7 +9,9 @@ import { map } from 'rxjs/operators';
   providedIn: 'root'
 })
 export class GamesService {
-  private resourcePath: string = `${environment.apiUrl}/games`;
+  private resourcePath = `${environment.apiUrl}/games`;
+  private readonly perPage = '?page_size=';
+  private readonly page = '?page=';
 
   private readonly genreMappings = new Map<string, number>([
     ['action', 4],
@@ -25,11 +27,11 @@ export class GamesService {
   constructor(private readonly http: HttpClient) {}
 
   public getRandomGames(): Observable<Game[]> {
-    return null;
-  }
+    const randomPage: string = Math.floor(Math.random() * 5 + 1).toString();
 
-  public getGames(): Observable<Game[]> {
-    return this.http.get<{ results: Game[] }>(this.resourcePath).pipe(map(response => response.results));
+    return this.http
+      .get<{ results: Game[] }>(`${this.resourcePath}?page=${randomPage}&page_size=6`)
+      .pipe(map(response => response.results));
   }
 
   public getGame(gameSlug: string): Observable<Game> {
diff --git a/src/app/modules/shared/services/genres/genres.service.ts b/src/app/modules/shared/services/genres/genres.service.ts
index f1f4db5..61c9f85 100644
--- a/src/app/modules/shared/services/genres/genres.service.ts
+++ b/src/app/modules/shared/services/genres/genres.service.ts
@@ -20,7 +20,7 @@ export class GenreService {
         const genresArray = new Array(6);
         let counter = 0;
 
-        for (let result of results) {
+        for (const result of results) {
           if (counter > 5) {
             break;
           }
diff --git a/src/app/modules/shared/services/icons/custom-icons.service.ts b/src/app/modules/shared/services/icons/custom-icons.service.ts
index 5eaf14c..c0eac51 100644
--- a/src/app/modules/shared/services/icons/custom-icons.service.ts
+++ b/src/app/modules/shared/services/icons/custom-icons.service.ts
@@ -21,10 +21,10 @@ export class CustomIconService {
   constructor(private readonly matIconRegistry: MatIconRegistry, private readonly domSanitizer: DomSanitizer) {}
 
   public registerPlatformIcons(): void {
-    for (let i = 0; i < this.platformIcons.length; i++) {
+    for (const platformIcon of this.platformIcons) {
       this.matIconRegistry.addSvgIcon(
-        this.platformIcons[i].name,
-        this.domSanitizer.bypassSecurityTrustResourceUrl(this.platformIcons[i].path)
+        platformIcon.name,
+        this.domSanitizer.bypassSecurityTrustResourceUrl(platformIcon.path)
       );
     }
   }
diff --git a/src/assets/data/platforms.json b/src/assets/data/platforms.json
new file mode 100644
index 0000000..1159e44
--- /dev/null
+++ b/src/assets/data/platforms.json
@@ -0,0 +1,31 @@
+[{
+    "name": "PC",
+    "icon": "windows",
+    "slug": "pc"
+  },
+  {
+    "name": "PlayStation 4",
+    "icon": "ps4",
+    "slug": "playstation4"
+  },
+  {
+    "name": "Xbox One",
+    "icon": "xbox",
+    "slug": "xbox-one"
+  },
+  {
+    "name": "Nintendo Switch",
+    "icon": "nintendo",
+    "slug": "nintendo-switch"
+  },
+  {
+    "name": "iOS",
+    "icon": "ios",
+    "slug": "ios"
+  },
+  {
+    "name": "Android",
+    "icon": "android",
+    "slug": "android"
+  }
+]
diff --git a/src/styles.css b/src/styles.css
index e9f46a3..dbfbb1f 100644
--- a/src/styles.css
+++ b/src/styles.css
@@ -15,1318 +15,4481 @@ body {
 }
 
 .primary {
-  background-color: blue;
+  background-color: #3f51b5;
 }
 
 .danger {
   background-color: #f44336;
 }
 
-/*!
- * Bootstrap v3.3.5 (http://getbootstrap.com)
- * Copyright 2011-2016 Twitter, Inc.
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
- */
+.light-text {
+  font-weight: 100 !important;
+}
+
+.text-center {
+  text-align: center !important;
+}
 
 /*!
- * Generated using the Bootstrap Customizer (http://getbootstrap.com/customize/?id=dd756061b99b30782a31)
- * Config saved to config.json and https://gist.github.com/dd756061b99b30782a31
- */
-/*!
- * Bootstrap v3.3.6 (http://getbootstrap.com)
- * Copyright 2011-2015 Twitter, Inc.
+ * Bootstrap Grid v4.3.1 (https://getbootstrap.com/)
+ * Copyright 2011-2019 The Bootstrap Authors
+ * Copyright 2011-2019 Twitter, Inc.
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
  */
-/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
-body {
-  margin: 0px 0px 0px 0px;
+html {
+  box-sizing: border-box;
+}
+
+*,
+*::before,
+*::after {
+  box-sizing: inherit;
 }
 
 .container {
+  width: 100%;
+  padding-right: 15px;
+  padding-left: 15px;
   margin-right: auto;
   margin-left: auto;
-  padding-left: 15px;
-  padding-right: 15px;
+}
+
+@media (min-width: 576px) {
+  .container {
+    max-width: 540px;
+  }
 }
 
 @media (min-width: 768px) {
   .container {
-    width: 750px;
+    max-width: 720px;
   }
 }
 
 @media (min-width: 992px) {
   .container {
-    width: 970px;
+    max-width: 960px;
   }
 }
 
 @media (min-width: 1200px) {
   .container {
-    width: 1170px;
+    max-width: 1140px;
   }
 }
 
-.container-fluid {
+.container-fluid,
+.container-sm,
+.container-md,
+.container-lg,
+.container-xl {
+  width: 100%;
+  padding-right: 15px;
+  padding-left: 15px;
   margin-right: auto;
   margin-left: auto;
 }
 
+@media (min-width: 576px) {
+
+  .container,
+  .container-sm {
+    max-width: 540px;
+  }
+}
+
+@media (min-width: 768px) {
+
+  .container,
+  .container-sm,
+  .container-md {
+    max-width: 720px;
+  }
+}
+
+@media (min-width: 992px) {
+
+  .container,
+  .container-sm,
+  .container-md,
+  .container-lg {
+    max-width: 960px;
+  }
+}
+
+@media (min-width: 1200px) {
+
+  .container,
+  .container-sm,
+  .container-md,
+  .container-lg,
+  .container-xl {
+    max-width: 1140px;
+  }
+}
+
 .row {
-  width: 100%;
+  display: flex;
+  flex-wrap: wrap;
+  margin-right: -15px;
+  margin-left: -15px;
+}
+
+.no-gutters {
+  margin-right: 0;
+  margin-left: 0;
+}
+
+.no-gutters>.col,
+.no-gutters>[class*="col-"] {
+  padding-right: 0;
+  padding-left: 0;
 }
 
-.col-xs-1,
+.col-1,
+.col-2,
+.col-3,
+.col-4,
+.col-5,
+.col-6,
+.col-7,
+.col-8,
+.col-9,
+.col-10,
+.col-11,
+.col-12,
+.col,
+.col-auto,
 .col-sm-1,
-.col-md-1,
-.col-lg-1,
-.col-xs-2,
 .col-sm-2,
-.col-md-2,
-.col-lg-2,
-.col-xs-3,
 .col-sm-3,
-.col-md-3,
-.col-lg-3,
-.col-xs-4,
 .col-sm-4,
-.col-md-4,
-.col-lg-4,
-.col-xs-5,
 .col-sm-5,
-.col-md-5,
-.col-lg-5,
-.col-xs-6,
 .col-sm-6,
-.col-md-6,
-.col-lg-6,
-.col-xs-7,
 .col-sm-7,
-.col-md-7,
-.col-lg-7,
-.col-xs-8,
 .col-sm-8,
-.col-md-8,
-.col-lg-8,
-.col-xs-9,
 .col-sm-9,
-.col-md-9,
-.col-lg-9,
-.col-xs-10,
 .col-sm-10,
-.col-md-10,
-.col-lg-10,
-.col-xs-11,
 .col-sm-11,
-.col-md-11,
-.col-lg-11,
-.col-xs-12,
 .col-sm-12,
+.col-sm,
+.col-sm-auto,
+.col-md-1,
+.col-md-2,
+.col-md-3,
+.col-md-4,
+.col-md-5,
+.col-md-6,
+.col-md-7,
+.col-md-8,
+.col-md-9,
+.col-md-10,
+.col-md-11,
 .col-md-12,
-.col-lg-12 {
+.col-md,
+.col-md-auto,
+.col-lg-1,
+.col-lg-2,
+.col-lg-3,
+.col-lg-4,
+.col-lg-5,
+.col-lg-6,
+.col-lg-7,
+.col-lg-8,
+.col-lg-9,
+.col-lg-10,
+.col-lg-11,
+.col-lg-12,
+.col-lg,
+.col-lg-auto,
+.col-xl-1,
+.col-xl-2,
+.col-xl-3,
+.col-xl-4,
+.col-xl-5,
+.col-xl-6,
+.col-xl-7,
+.col-xl-8,
+.col-xl-9,
+.col-xl-10,
+.col-xl-11,
+.col-xl-12,
+.col-xl,
+.col-xl-auto {
   position: relative;
-  min-height: 1px;
+  width: 100%;
+  padding-right: 15px;
+  padding-left: 15px;
 }
 
-.col-xs-1,
-.col-xs-2,
-.col-xs-3,
-.col-xs-4,
-.col-xs-5,
-.col-xs-6,
-.col-xs-7,
-.col-xs-8,
-.col-xs-9,
-.col-xs-10,
-.col-xs-11,
-.col-xs-12 {
-  float: left;
+.col {
+  flex-basis: 0;
+  flex-grow: 1;
+  max-width: 100%;
 }
 
-.col-xs-12 {
-  width: 100%;
+.col-auto {
+  flex: 0 0 auto;
+  width: auto;
+  max-width: 100%;
+}
+
+.col-1 {
+  flex: 0 0 8.333333%;
+  max-width: 8.333333%;
+}
+
+.col-2 {
+  flex: 0 0 16.666667%;
+  max-width: 16.666667%;
+}
+
+.col-3 {
+  flex: 0 0 25%;
+  max-width: 25%;
+}
+
+.col-4 {
+  flex: 0 0 33.333333%;
+  max-width: 33.333333%;
+}
+
+.col-5 {
+  flex: 0 0 41.666667%;
+  max-width: 41.666667%;
+}
+
+.col-6 {
+  flex: 0 0 50%;
+  max-width: 50%;
+}
+
+.col-7 {
+  flex: 0 0 58.333333%;
+  max-width: 58.333333%;
+}
+
+.col-8 {
+  flex: 0 0 66.666667%;
+  max-width: 66.666667%;
 }
 
-.col-xs-11 {
-  width: 91.66666667%;
+.col-9 {
+  flex: 0 0 75%;
+  max-width: 75%;
 }
 
-.col-xs-10 {
-  width: 83.33333333%;
+.col-10 {
+  flex: 0 0 83.333333%;
+  max-width: 83.333333%;
 }
 
-.col-xs-9 {
-  width: 75%;
+.col-11 {
+  flex: 0 0 91.666667%;
+  max-width: 91.666667%;
 }
 
-.col-xs-8 {
-  width: 66.66666667%;
+.col-12 {
+  flex: 0 0 100%;
+  max-width: 100%;
 }
 
-.col-xs-7 {
-  width: 58.33333333%;
+.offset-1 {
+  margin-left: 8.333333%;
 }
 
-.col-xs-6 {
-  width: 50%;
+.offset-2 {
+  margin-left: 16.666667%;
 }
 
-.col-xs-5 {
-  width: 41.66666667%;
+.offset-3 {
+  margin-left: 25%;
 }
 
-.col-xs-4 {
-  width: 33.33333333%;
+.offset-4 {
+  margin-left: 33.333333%;
 }
 
-.col-xs-3 {
-  width: 25%;
+.offset-5 {
+  margin-left: 41.666667%;
 }
 
-.col-xs-2 {
-  width: 16.66666667%;
+.offset-6 {
+  margin-left: 50%;
 }
 
-.col-xs-1 {
-  width: 8.33333333%;
+.offset-7 {
+  margin-left: 58.333333%;
 }
 
-.col-xs-pull-12 {
-  right: 100%;
+.offset-8 {
+  margin-left: 66.666667%;
 }
 
-.col-xs-pull-11 {
-  right: 91.66666667%;
+.offset-9 {
+  margin-left: 75%;
 }
 
-.col-xs-pull-10 {
-  right: 83.33333333%;
+.offset-10 {
+  margin-left: 83.333333%;
 }
 
-.col-xs-pull-9 {
-  right: 75%;
+.offset-11 {
+  margin-left: 91.666667%;
 }
 
-.col-xs-pull-8 {
-  right: 66.66666667%;
+@media (min-width: 576px) {
+  .col-sm {
+    flex-basis: 0;
+    flex-grow: 1;
+    max-width: 100%;
+  }
+
+  .col-sm-auto {
+    flex: 0 0 auto;
+    width: auto;
+    max-width: 100%;
+  }
+
+  .col-sm-1 {
+    flex: 0 0 8.333333%;
+    max-width: 8.333333%;
+  }
+
+  .col-sm-2 {
+    flex: 0 0 16.666667%;
+    max-width: 16.666667%;
+  }
+
+  .col-sm-3 {
+    flex: 0 0 25%;
+    max-width: 25%;
+  }
+
+  .col-sm-4 {
+    flex: 0 0 33.333333%;
+    max-width: 33.333333%;
+  }
+
+  .col-sm-5 {
+    flex: 0 0 41.666667%;
+    max-width: 41.666667%;
+  }
+
+  .col-sm-6 {
+    flex: 0 0 50%;
+    max-width: 50%;
+  }
+
+  .col-sm-7 {
+    flex: 0 0 58.333333%;
+    max-width: 58.333333%;
+  }
+
+  .col-sm-8 {
+    flex: 0 0 66.666667%;
+    max-width: 66.666667%;
+  }
+
+  .col-sm-9 {
+    flex: 0 0 75%;
+    max-width: 75%;
+  }
+
+  .col-sm-10 {
+    flex: 0 0 83.333333%;
+    max-width: 83.333333%;
+  }
+
+  .col-sm-11 {
+    flex: 0 0 91.666667%;
+    max-width: 91.666667%;
+  }
+
+  .col-sm-12 {
+    flex: 0 0 100%;
+    max-width: 100%;
+  }
+
+  .offset-sm-0 {
+    margin-left: 0;
+  }
+
+  .offset-sm-1 {
+    margin-left: 8.333333%;
+  }
+
+  .offset-sm-2 {
+    margin-left: 16.666667%;
+  }
+
+  .offset-sm-3 {
+    margin-left: 25%;
+  }
+
+  .offset-sm-4 {
+    margin-left: 33.333333%;
+  }
+
+  .offset-sm-5 {
+    margin-left: 41.666667%;
+  }
+
+  .offset-sm-6 {
+    margin-left: 50%;
+  }
+
+  .offset-sm-7 {
+    margin-left: 58.333333%;
+  }
+
+  .offset-sm-8 {
+    margin-left: 66.666667%;
+  }
+
+  .offset-sm-9 {
+    margin-left: 75%;
+  }
+
+  .offset-sm-10 {
+    margin-left: 83.333333%;
+  }
+
+  .offset-sm-11 {
+    margin-left: 91.666667%;
+  }
 }
 
-.col-xs-pull-7 {
-  right: 58.33333333%;
+@media (min-width: 768px) {
+  .col-md {
+    flex-basis: 0;
+    flex-grow: 1;
+    max-width: 100%;
+  }
+
+  .col-md-auto {
+    flex: 0 0 auto;
+    width: auto;
+    max-width: 100%;
+  }
+
+  .col-md-1 {
+    flex: 0 0 8.333333%;
+    max-width: 8.333333%;
+  }
+
+  .col-md-2 {
+    flex: 0 0 16.666667%;
+    max-width: 16.666667%;
+  }
+
+  .col-md-3 {
+    flex: 0 0 25%;
+    max-width: 25%;
+  }
+
+  .col-md-4 {
+    flex: 0 0 33.333333%;
+    max-width: 33.333333%;
+  }
+
+  .col-md-5 {
+    flex: 0 0 41.666667%;
+    max-width: 41.666667%;
+  }
+
+  .col-md-6 {
+    flex: 0 0 50%;
+    max-width: 50%;
+  }
+
+  .col-md-7 {
+    flex: 0 0 58.333333%;
+    max-width: 58.333333%;
+  }
+
+  .col-md-8 {
+    flex: 0 0 66.666667%;
+    max-width: 66.666667%;
+  }
+
+  .col-md-9 {
+    flex: 0 0 75%;
+    max-width: 75%;
+  }
+
+  .col-md-10 {
+    flex: 0 0 83.333333%;
+    max-width: 83.333333%;
+  }
+
+  .col-md-11 {
+    flex: 0 0 91.666667%;
+    max-width: 91.666667%;
+  }
+
+  .col-md-12 {
+    flex: 0 0 100%;
+    max-width: 100%;
+  }
+
+  .offset-md-0 {
+    margin-left: 0;
+  }
+
+  .offset-md-1 {
+    margin-left: 8.333333%;
+  }
+
+  .offset-md-2 {
+    margin-left: 16.666667%;
+  }
+
+  .offset-md-3 {
+    margin-left: 25%;
+  }
+
+  .offset-md-4 {
+    margin-left: 33.333333%;
+  }
+
+  .offset-md-5 {
+    margin-left: 41.666667%;
+  }
+
+  .offset-md-6 {
+    margin-left: 50%;
+  }
+
+  .offset-md-7 {
+    margin-left: 58.333333%;
+  }
+
+  .offset-md-8 {
+    margin-left: 66.666667%;
+  }
+
+  .offset-md-9 {
+    margin-left: 75%;
+  }
+
+  .offset-md-10 {
+    margin-left: 83.333333%;
+  }
+
+  .offset-md-11 {
+    margin-left: 91.666667%;
+  }
 }
 
-.col-xs-pull-6 {
-  right: 50%;
-}
+@media (min-width: 992px) {
+  .col-lg {
+    flex-basis: 0;
+    flex-grow: 1;
+    max-width: 100%;
+  }
+
+  .col-lg-auto {
+    flex: 0 0 auto;
+    width: auto;
+    max-width: 100%;
+  }
+
+  .col-lg-1 {
+    flex: 0 0 8.333333%;
+    max-width: 8.333333%;
+  }
+
+  .col-lg-2 {
+    flex: 0 0 16.666667%;
+    max-width: 16.666667%;
+  }
+
+  .col-lg-3 {
+    flex: 0 0 25%;
+    max-width: 25%;
+  }
+
+  .col-lg-4 {
+    flex: 0 0 33.333333%;
+    max-width: 33.333333%;
+  }
+
+  .col-lg-5 {
+    flex: 0 0 41.666667%;
+    max-width: 41.666667%;
+  }
+
+  .col-lg-6 {
+    flex: 0 0 50%;
+    max-width: 50%;
+  }
+
+  .col-lg-7 {
+    flex: 0 0 58.333333%;
+    max-width: 58.333333%;
+  }
+
+  .col-lg-8 {
+    flex: 0 0 66.666667%;
+    max-width: 66.666667%;
+  }
+
+  .col-lg-9 {
+    flex: 0 0 75%;
+    max-width: 75%;
+  }
+
+  .col-lg-10 {
+    flex: 0 0 83.333333%;
+    max-width: 83.333333%;
+  }
+
+  .col-lg-11 {
+    flex: 0 0 91.666667%;
+    max-width: 91.666667%;
+  }
+
+  .col-lg-12 {
+    flex: 0 0 100%;
+    max-width: 100%;
+  }
+
+  .offset-lg-0 {
+    margin-left: 0;
+  }
+
+  .offset-lg-1 {
+    margin-left: 8.333333%;
+  }
+
+  .offset-lg-2 {
+    margin-left: 16.666667%;
+  }
+
+  .offset-lg-3 {
+    margin-left: 25%;
+  }
+
+  .offset-lg-4 {
+    margin-left: 33.333333%;
+  }
+
+  .offset-lg-5 {
+    margin-left: 41.666667%;
+  }
+
+  .offset-lg-6 {
+    margin-left: 50%;
+  }
+
+  .offset-lg-7 {
+    margin-left: 58.333333%;
+  }
+
+  .offset-lg-8 {
+    margin-left: 66.666667%;
+  }
+
+  .offset-lg-9 {
+    margin-left: 75%;
+  }
+
+  .offset-lg-10 {
+    margin-left: 83.333333%;
+  }
+
+  .offset-lg-11 {
+    margin-left: 91.666667%;
+  }
+}
+
+@media (min-width: 1200px) {
+  .col-xl {
+    flex-basis: 0;
+    flex-grow: 1;
+    max-width: 100%;
+  }
+
+  .col-xl-auto {
+    flex: 0 0 auto;
+    width: auto;
+    max-width: 100%;
+  }
+
+  .col-xl-1 {
+    flex: 0 0 8.333333%;
+    max-width: 8.333333%;
+  }
+
+  .col-xl-2 {
+    flex: 0 0 16.666667%;
+    max-width: 16.666667%;
+  }
+
+  .col-xl-3 {
+    flex: 0 0 25%;
+    max-width: 25%;
+  }
+
+  .col-xl-4 {
+    flex: 0 0 33.333333%;
+    max-width: 33.333333%;
+  }
+
+  .col-xl-5 {
+    flex: 0 0 41.666667%;
+    max-width: 41.666667%;
+  }
+
+  .col-xl-6 {
+    flex: 0 0 50%;
+    max-width: 50%;
+  }
+
+  .col-xl-7 {
+    flex: 0 0 58.333333%;
+    max-width: 58.333333%;
+  }
+
+  .col-xl-8 {
+    flex: 0 0 66.666667%;
+    max-width: 66.666667%;
+  }
+
+  .col-xl-9 {
+    flex: 0 0 75%;
+    max-width: 75%;
+  }
+
+  .col-xl-10 {
+    flex: 0 0 83.333333%;
+    max-width: 83.333333%;
+  }
+
+  .col-xl-11 {
+    flex: 0 0 91.666667%;
+    max-width: 91.666667%;
+  }
+
+  .col-xl-12 {
+    flex: 0 0 100%;
+    max-width: 100%;
+  }
+
+  .offset-xl-0 {
+    margin-left: 0;
+  }
+
+  .offset-xl-1 {
+    margin-left: 8.333333%;
+  }
+
+  .offset-xl-2 {
+    margin-left: 16.666667%;
+  }
+
+  .offset-xl-3 {
+    margin-left: 25%;
+  }
+
+  .offset-xl-4 {
+    margin-left: 33.333333%;
+  }
+
+  .offset-xl-5 {
+    margin-left: 41.666667%;
+  }
+
+  .offset-xl-6 {
+    margin-left: 50%;
+  }
+
+  .offset-xl-7 {
+    margin-left: 58.333333%;
+  }
+
+  .offset-xl-8 {
+    margin-left: 66.666667%;
+  }
+
+  .offset-xl-9 {
+    margin-left: 75%;
+  }
+
+  .offset-xl-10 {
+    margin-left: 83.333333%;
+  }
+
+  .offset-xl-11 {
+    margin-left: 91.666667%;
+  }
+}
+
+.d-none {
+  display: none !important;
+}
+
+.d-inline {
+  display: inline !important;
+}
+
+.d-inline-block {
+  display: inline-block !important;
+}
+
+.d-block {
+  display: block !important;
+}
+
+.d-table {
+  display: table !important;
+}
+
+.d-table-row {
+  display: table-row !important;
+}
+
+.d-table-cell {
+  display: table-cell !important;
+}
+
+.d-flex {
+  display: flex !important;
+}
+
+.d-inline-flex {
+  display: inline-flex !important;
+}
+
+.flex-fill {
+  flex: 1 1 auto !important;
+}
+
+.flex-row {
+  flex-direction: row !important;
+}
+
+.flex-column {
+  flex-direction: column !important;
+}
+
+.flex-row-reverse {
+  flex-direction: row-reverse !important;
+}
+
+.flex-column-reverse {
+  flex-direction: column-reverse !important;
+}
+
+.flex-grow-0 {
+  flex-grow: 0 !important;
+}
+
+.flex-grow-1 {
+  flex-grow: 1 !important;
+}
+
+.justify-content-start {
+  justify-content: flex-start !important;
+}
+
+.justify-content-end {
+  justify-content: flex-end !important;
+}
+
+.justify-content-center {
+  justify-content: center !important;
+}
+
+.justify-content-between {
+  justify-content: space-between !important;
+}
+
+.justify-content-around {
+  justify-content: space-around !important;
+}
+
+.align-items-start {
+  align-items: flex-start !important;
+}
+
+.align-items-end {
+  align-items: flex-end !important;
+}
+
+.align-items-center {
+  align-items: center !important;
+}
+
+.align-items-baseline {
+  align-items: baseline !important;
+}
+
+.align-items-stretch {
+  align-items: stretch !important;
+}
+
+.align-content-start {
+  align-content: flex-start !important;
+}
+
+.align-content-end {
+  align-content: flex-end !important;
+}
+
+.align-content-center {
+  align-content: center !important;
+}
+
+.align-content-between {
+  align-content: space-between !important;
+}
+
+.align-content-around {
+  align-content: space-around !important;
+}
+
+.align-content-stretch {
+  align-content: stretch !important;
+}
+
+.align-self-auto {
+  align-self: auto !important;
+}
+
+.align-self-start {
+  align-self: flex-start !important;
+}
+
+.align-self-end {
+  align-self: flex-end !important;
+}
+
+.align-self-center {
+  align-self: center !important;
+}
+
+.align-self-baseline {
+  align-self: baseline !important;
+}
+
+.align-self-stretch {
+  align-self: stretch !important;
+}
+
+.order-first {
+  order: -1 !important;
+}
+
+.order-0 {
+  order: 0 !important;
+}
+
+.order-1 {
+  order: 1 !important;
+}
+
+.order-2 {
+  order: 2 !important;
+}
+
+.order-3 {
+  order: 3 !important;
+}
+
+.order-4 {
+  order: 4 !important;
+}
+
+.order-5 {
+  order: 5 !important;
+}
+
+.order-last {
+  order: 6 !important;
+}
+
+.m-0 {
+  margin: 0 !important;
+}
+
+.m-1 {
+  margin: 0.25rem !important;
+}
+
+.m-2 {
+  margin: 0.5rem !important;
+}
+
+.m-3 {
+  margin: 1rem !important;
+}
+
+.m-4 {
+  margin: 1.5rem !important;
+}
+
+.m-5 {
+  margin: 3rem !important;
+}
+
+.m-auto {
+  margin: auto !important;
+}
+
+.mx-0 {
+  margin-right: 0 !important;
+  margin-left: 0 !important;
+}
+
+.mx-1 {
+  margin-right: 0.25rem !important;
+  margin-left: 0.25rem !important;
+}
+
+.mx-2 {
+  margin-right: 0.5rem !important;
+  margin-left: 0.5rem !important;
+}
+
+.mx-3 {
+  margin-right: 1rem !important;
+  margin-left: 1rem !important;
+}
+
+.mx-4 {
+  margin-right: 1.5rem !important;
+  margin-left: 1.5rem !important;
+}
+
+.mx-5 {
+  margin-right: 3rem !important;
+  margin-left: 3rem !important;
+}
+
+.mx-auto {
+  margin-right: auto !important;
+  margin-left: auto !important;
+}
+
+.my-0 {
+  margin-top: 0 !important;
+  margin-bottom: 0 !important;
+}
+
+.my-1 {
+  margin-top: 0.25rem !important;
+  margin-bottom: 0.25rem !important;
+}
+
+.my-2 {
+  margin-top: 0.5rem !important;
+  margin-bottom: 0.5rem !important;
+}
+
+.my-3 {
+  margin-top: 1rem !important;
+  margin-bottom: 1rem !important;
+}
+
+.my-4 {
+  margin-top: 1.5rem !important;
+  margin-bottom: 1.5rem !important;
+}
+
+.my-5 {
+  margin-top: 3rem !important;
+  margin-bottom: 3rem !important;
+}
+
+.my-auto {
+  margin-top: auto !important;
+  margin-bottom: auto !important;
+}
+
+.mt-0 {
+  margin-top: 0 !important;
+}
+
+.mt-1 {
+  margin-top: 0.25rem !important;
+}
+
+.mt-2 {
+  margin-top: 0.5rem !important;
+}
+
+.mt-3 {
+  margin-top: 1rem !important;
+}
+
+.mt-4 {
+  margin-top: 1.5rem !important;
+}
+
+.mt-5 {
+  margin-top: 3rem !important;
+}
+
+.mt-auto {
+  margin-top: auto !important;
+}
+
+.mr-0 {
+  margin-right: 0 !important;
+}
+
+.mr-1 {
+  margin-right: 0.25rem !important;
+}
+
+.mr-2 {
+  margin-right: 0.5rem !important;
+}
+
+.mr-3 {
+  margin-right: 1rem !important;
+}
+
+.mr-4 {
+  margin-right: 1.5rem !important;
+}
+
+.mr-5 {
+  margin-right: 3rem !important;
+}
+
+.mr-auto {
+  margin-right: auto !important;
+}
+
+.mb-0 {
+  margin-bottom: 0 !important;
+}
+
+.mb-1 {
+  margin-bottom: 0.25rem !important;
+}
+
+.mb-2 {
+  margin-bottom: 0.5rem !important;
+}
+
+.mb-3 {
+  margin-bottom: 1rem !important;
+}
+
+.mb-4 {
+  margin-bottom: 1.5rem !important;
+}
+
+.mb-5 {
+  margin-bottom: 3rem !important;
+}
+
+.mb-auto {
+  margin-bottom: auto !important;
+}
+
+.ml-0 {
+  margin-left: 0 !important;
+}
+
+.ml-1 {
+  margin-left: 0.25rem !important;
+}
+
+.ml-2 {
+  margin-left: 0.5rem !important;
+}
+
+.ml-3 {
+  margin-left: 1rem !important;
+}
+
+.ml-4 {
+  margin-left: 1.5rem !important;
+}
+
+.ml-5 {
+  margin-left: 3rem !important;
+}
+
+.ml-auto {
+  margin-left: auto !important;
+}
+
+.m-n1 {
+  margin: -0.25rem !important;
+}
+
+.m-n2 {
+  margin: -0.5rem !important;
+}
+
+.m-n3 {
+  margin: -1rem !important;
+}
+
+.m-n4 {
+  margin: -1.5rem !important;
+}
+
+.m-n5 {
+  margin: -3rem !important;
+}
+
+.mx-n1 {
+  margin-right: -0.25rem !important;
+  margin-left: -0.25rem !important;
+}
+
+.mx-n2 {
+  margin-right: -0.5rem !important;
+  margin-left: -0.5rem !important;
+}
+
+.mx-n3 {
+  margin-right: -1rem !important;
+  margin-left: -1rem !important;
+}
+
+.mx-n4 {
+  margin-right: -1.5rem !important;
+  margin-left: -1.5rem !important;
+}
+
+.mx-n5 {
+  margin-right: -3rem !important;
+  margin-left: -3rem !important;
+}
+
+.my-n1 {
+  margin-top: -0.25rem !important;
+  margin-bottom: -0.25rem !important;
+}
+
+.my-n2 {
+  margin-top: -0.5rem !important;
+  margin-bottom: -0.5rem !important;
+}
+
+.my-n3 {
+  margin-top: -1rem !important;
+  margin-bottom: -1rem !important;
+}
+
+.my-n4 {
+  margin-top: -1.5rem !important;
+  margin-bottom: -1.5rem !important;
+}
+
+.my-n5 {
+  margin-top: -3rem !important;
+  margin-bottom: -3rem !important;
+}
+
+.mt-n1 {
+  margin-top: -0.25rem !important;
+}
+
+.mt-n2 {
+  margin-top: -0.5rem !important;
+}
+
+.mt-n3 {
+  margin-top: -1rem !important;
+}
+
+.mt-n4 {
+  margin-top: -1.5rem !important;
+}
+
+.mt-n5 {
+  margin-top: -3rem !important;
+}
+
+.mr-n1 {
+  margin-right: -0.25rem !important;
+}
+
+.mr-n2 {
+  margin-right: -0.5rem !important;
+}
+
+.mr-n3 {
+  margin-right: -1rem !important;
+}
+
+.mr-n4 {
+  margin-right: -1.5rem !important;
+}
+
+.mr-n5 {
+  margin-right: -3rem !important;
+}
+
+.mb-n1 {
+  margin-bottom: -0.25rem !important;
+}
+
+.mb-n2 {
+  margin-bottom: -0.5rem !important;
+}
+
+.mb-n3 {
+  margin-bottom: -1rem !important;
+}
+
+.mb-n4 {
+  margin-bottom: -1.5rem !important;
+}
+
+.mb-n5 {
+  margin-bottom: -3rem !important;
+}
+
+.ml-n1 {
+  margin-left: -0.25rem !important;
+}
+
+.ml-n2 {
+  margin-left: -0.5rem !important;
+}
+
+.ml-n3 {
+  margin-left: -1rem !important;
+}
+
+.ml-n4 {
+  margin-left: -1.5rem !important;
+}
+
+.ml-n5 {
+  margin-left: -3rem !important;
+}
+
+.p-0 {
+  padding: 0 !important;
+}
+
+.p-1 {
+  padding: 0.25rem !important;
+}
+
+.p-2 {
+  padding: 0.5rem !important;
+}
+
+.p-3 {
+  padding: 1rem !important;
+}
+
+.p-4 {
+  padding: 1.5rem !important;
+}
+
+.p-5 {
+  padding: 3rem !important;
+}
+
+.px-0 {
+  padding-right: 0 !important;
+  padding-left: 0 !important;
+}
+
+.px-1 {
+  padding-right: 0.25rem !important;
+  padding-left: 0.25rem !important;
+}
+
+.px-2 {
+  padding-right: 0.5rem !important;
+  padding-left: 0.5rem !important;
+}
+
+.px-3 {
+  padding-right: 1rem !important;
+  padding-left: 1rem !important;
+}
+
+.px-4 {
+  padding-right: 1.5rem !important;
+  padding-left: 1.5rem !important;
+}
+
+.px-5 {
+  padding-right: 3rem !important;
+  padding-left: 3rem !important;
+}
+
+.py-0 {
+  padding-top: 0 !important;
+  padding-bottom: 0 !important;
+}
+
+.py-1 {
+  padding-top: 0.25rem !important;
+  padding-bottom: 0.25rem !important;
+}
+
+.py-2 {
+  padding-top: 0.5rem !important;
+  padding-bottom: 0.5rem !important;
+}
+
+.py-3 {
+  padding-top: 1rem !important;
+  padding-bottom: 1rem !important;
+}
+
+.py-4 {
+  padding-top: 1.5rem !important;
+  padding-bottom: 1.5rem !important;
+}
+
+.py-5 {
+  padding-top: 3rem !important;
+  padding-bottom: 3rem !important;
+}
+
+.pt-0 {
+  padding-top: 0 !important;
+}
+
+.pt-1 {
+  padding-top: 0.25rem !important;
+}
+
+.pt-2 {
+  padding-top: 0.5rem !important;
+}
+
+.pt-3 {
+  padding-top: 1rem !important;
+}
+
+.pt-4 {
+  padding-top: 1.5rem !important;
+}
+
+.pt-5 {
+  padding-top: 3rem !important;
+}
+
+.pr-0 {
+  padding-right: 0 !important;
+}
+
+.pr-1 {
+  padding-right: 0.25rem !important;
+}
+
+.pr-2 {
+  padding-right: 0.5rem !important;
+}
+
+.pr-3 {
+  padding-right: 1rem !important;
+}
+
+.pr-4 {
+  padding-right: 1.5rem !important;
+}
+
+.pr-5 {
+  padding-right: 3rem !important;
+}
+
+.pb-0 {
+  padding-bottom: 0 !important;
+}
+
+.pb-1 {
+  padding-bottom: 0.25rem !important;
+}
+
+.pb-2 {
+  padding-bottom: 0.5rem !important;
+}
+
+.pb-3 {
+  padding-bottom: 1rem !important;
+}
+
+.pb-4 {
+  padding-bottom: 1.5rem !important;
+}
+
+.pb-5 {
+  padding-bottom: 3rem !important;
+}
+
+.pl-0 {
+  padding-left: 0 !important;
+}
+
+.pl-1 {
+  padding-left: 0.25rem !important;
+}
+
+.pl-2 {
+  padding-left: 0.5rem !important;
+}
+
+.pl-3 {
+  padding-left: 1rem !important;
+}
+
+.pl-4 {
+  padding-left: 1.5rem !important;
+}
+
+.pl-5 {
+  padding-left: 3rem !important;
+}
+
+@media (min-width: 576px) {
+  .d-sm-none {
+    display: none !important;
+  }
+
+  .d-sm-inline {
+    display: inline !important;
+  }
+
+  .d-sm-inline-block {
+    display: inline-block !important;
+  }
+
+  .d-sm-block {
+    display: block !important;
+  }
+
+  .d-sm-table {
+    display: table !important;
+  }
+
+  .d-sm-table-row {
+    display: table-row !important;
+  }
+
+  .d-sm-table-cell {
+    display: table-cell !important;
+  }
+
+  .d-sm-flex {
+    display: flex !important;
+  }
+
+  .d-sm-inline-flex {
+    display: inline-flex !important;
+  }
+
+  .flex-sm-fill {
+    flex: 1 1 auto !important;
+  }
+
+  .flex-sm-row {
+    flex-direction: row !important;
+  }
+
+  .flex-sm-column {
+    flex-direction: column !important;
+  }
+
+  .flex-sm-row-reverse {
+    flex-direction: row-reverse !important;
+  }
+
+  .flex-sm-column-reverse {
+    flex-direction: column-reverse !important;
+  }
+
+  .flex-sm-grow-0 {
+    flex-grow: 0 !important;
+  }
+
+  .flex-sm-grow-1 {
+    flex-grow: 1 !important;
+  }
+
+  .justify-content-sm-start {
+    justify-content: flex-start !important;
+  }
+
+  .justify-content-sm-end {
+    justify-content: flex-end !important;
+  }
+
+  .justify-content-sm-center {
+    justify-content: center !important;
+  }
+
+  .justify-content-sm-between {
+    justify-content: space-between !important;
+  }
+
+  .justify-content-sm-around {
+    justify-content: space-around !important;
+  }
+
+  .align-items-sm-start {
+    align-items: flex-start !important;
+  }
+
+  .align-items-sm-end {
+    align-items: flex-end !important;
+  }
+
+  .align-items-sm-center {
+    align-items: center !important;
+  }
+
+  .align-items-sm-baseline {
+    align-items: baseline !important;
+  }
+
+  .align-items-sm-stretch {
+    align-items: stretch !important;
+  }
+
+  .align-content-sm-start {
+    align-content: flex-start !important;
+  }
+
+  .align-content-sm-end {
+    align-content: flex-end !important;
+  }
+
+  .align-content-sm-center {
+    align-content: center !important;
+  }
+
+  .align-content-sm-between {
+    align-content: space-between !important;
+  }
+
+  .align-content-sm-around {
+    align-content: space-around !important;
+  }
+
+  .align-content-sm-stretch {
+    align-content: stretch !important;
+  }
+
+  .align-self-sm-auto {
+    align-self: auto !important;
+  }
+
+  .align-self-sm-start {
+    align-self: flex-start !important;
+  }
+
+  .align-self-sm-end {
+    align-self: flex-end !important;
+  }
+
+  .align-self-sm-center {
+    align-self: center !important;
+  }
+
+  .align-self-sm-baseline {
+    align-self: baseline !important;
+  }
+
+  .align-self-sm-stretch {
+    align-self: stretch !important;
+  }
+
+  .order-sm-first {
+    order: -1 !important;
+  }
+
+  .order-sm-0 {
+    order: 0 !important;
+  }
+
+  .order-sm-1 {
+    order: 1 !important;
+  }
+
+  .order-sm-2 {
+    order: 2 !important;
+  }
+
+  .order-sm-3 {
+    order: 3 !important;
+  }
+
+  .order-sm-4 {
+    order: 4 !important;
+  }
+
+  .order-sm-5 {
+    order: 5 !important;
+  }
+
+  .order-sm-last {
+    order: 6 !important;
+  }
+
+  .m-sm-0 {
+    margin: 0 !important;
+  }
+
+  .m-sm-1 {
+    margin: 0.25rem !important;
+  }
+
+  .m-sm-2 {
+    margin: 0.5rem !important;
+  }
+
+  .m-sm-3 {
+    margin: 1rem !important;
+  }
+
+  .m-sm-4 {
+    margin: 1.5rem !important;
+  }
+
+  .m-sm-5 {
+    margin: 3rem !important;
+  }
+
+  .m-sm-auto {
+    margin: auto !important;
+  }
+
+  .mx-sm-0 {
+    margin-right: 0 !important;
+    margin-left: 0 !important;
+  }
+
+  .mx-sm-1 {
+    margin-right: 0.25rem !important;
+    margin-left: 0.25rem !important;
+  }
+
+  .mx-sm-2 {
+    margin-right: 0.5rem !important;
+    margin-left: 0.5rem !important;
+  }
+
+  .mx-sm-3 {
+    margin-right: 1rem !important;
+    margin-left: 1rem !important;
+  }
+
+  .mx-sm-4 {
+    margin-right: 1.5rem !important;
+    margin-left: 1.5rem !important;
+  }
+
+  .mx-sm-5 {
+    margin-right: 3rem !important;
+    margin-left: 3rem !important;
+  }
+
+  .mx-sm-auto {
+    margin-right: auto !important;
+    margin-left: auto !important;
+  }
+
+  .my-sm-0 {
+    margin-top: 0 !important;
+    margin-bottom: 0 !important;
+  }
+
+  .my-sm-1 {
+    margin-top: 0.25rem !important;
+    margin-bottom: 0.25rem !important;
+  }
+
+  .my-sm-2 {
+    margin-top: 0.5rem !important;
+    margin-bottom: 0.5rem !important;
+  }
+
+  .my-sm-3 {
+    margin-top: 1rem !important;
+    margin-bottom: 1rem !important;
+  }
+
+  .my-sm-4 {
+    margin-top: 1.5rem !important;
+    margin-bottom: 1.5rem !important;
+  }
+
+  .my-sm-5 {
+    margin-top: 3rem !important;
+    margin-bottom: 3rem !important;
+  }
+
+  .my-sm-auto {
+    margin-top: auto !important;
+    margin-bottom: auto !important;
+  }
+
+  .mt-sm-0 {
+    margin-top: 0 !important;
+  }
+
+  .mt-sm-1 {
+    margin-top: 0.25rem !important;
+  }
+
+  .mt-sm-2 {
+    margin-top: 0.5rem !important;
+  }
+
+  .mt-sm-3 {
+    margin-top: 1rem !important;
+  }
+
+  .mt-sm-4 {
+    margin-top: 1.5rem !important;
+  }
+
+  .mt-sm-5 {
+    margin-top: 3rem !important;
+  }
+
+  .mt-sm-auto {
+    margin-top: auto !important;
+  }
+
+  .mr-sm-0 {
+    margin-right: 0 !important;
+  }
+
+  .mr-sm-1 {
+    margin-right: 0.25rem !important;
+  }
+
+  .mr-sm-2 {
+    margin-right: 0.5rem !important;
+  }
+
+  .mr-sm-3 {
+    margin-right: 1rem !important;
+  }
+
+  .mr-sm-4 {
+    margin-right: 1.5rem !important;
+  }
+
+  .mr-sm-5 {
+    margin-right: 3rem !important;
+  }
+
+  .mr-sm-auto {
+    margin-right: auto !important;
+  }
+
+  .mb-sm-0 {
+    margin-bottom: 0 !important;
+  }
+
+  .mb-sm-1 {
+    margin-bottom: 0.25rem !important;
+  }
+
+  .mb-sm-2 {
+    margin-bottom: 0.5rem !important;
+  }
+
+  .mb-sm-3 {
+    margin-bottom: 1rem !important;
+  }
+
+  .mb-sm-4 {
+    margin-bottom: 1.5rem !important;
+  }
+
+  .mb-sm-5 {
+    margin-bottom: 3rem !important;
+  }
+
+  .mb-sm-auto {
+    margin-bottom: auto !important;
+  }
+
+  .ml-sm-0 {
+    margin-left: 0 !important;
+  }
+
+  .ml-sm-1 {
+    margin-left: 0.25rem !important;
+  }
+
+  .ml-sm-2 {
+    margin-left: 0.5rem !important;
+  }
+
+  .ml-sm-3 {
+    margin-left: 1rem !important;
+  }
+
+  .ml-sm-4 {
+    margin-left: 1.5rem !important;
+  }
+
+  .ml-sm-5 {
+    margin-left: 3rem !important;
+  }
+
+  .ml-sm-auto {
+    margin-left: auto !important;
+  }
+
+  .m-sm-n1 {
+    margin: -0.25rem !important;
+  }
+
+  .m-sm-n2 {
+    margin: -0.5rem !important;
+  }
+
+  .m-sm-n3 {
+    margin: -1rem !important;
+  }
+
+  .m-sm-n4 {
+    margin: -1.5rem !important;
+  }
+
+  .m-sm-n5 {
+    margin: -3rem !important;
+  }
+
+  .mx-sm-n1 {
+    margin-right: -0.25rem !important;
+    margin-left: -0.25rem !important;
+  }
+
+  .mx-sm-n2 {
+    margin-right: -0.5rem !important;
+    margin-left: -0.5rem !important;
+  }
+
+  .mx-sm-n3 {
+    margin-right: -1rem !important;
+    margin-left: -1rem !important;
+  }
+
+  .mx-sm-n4 {
+    margin-right: -1.5rem !important;
+    margin-left: -1.5rem !important;
+  }
+
+  .mx-sm-n5 {
+    margin-right: -3rem !important;
+    margin-left: -3rem !important;
+  }
+
+  .my-sm-n1 {
+    margin-top: -0.25rem !important;
+    margin-bottom: -0.25rem !important;
+  }
+
+  .my-sm-n2 {
+    margin-top: -0.5rem !important;
+    margin-bottom: -0.5rem !important;
+  }
+
+  .my-sm-n3 {
+    margin-top: -1rem !important;
+    margin-bottom: -1rem !important;
+  }
+
+  .my-sm-n4 {
+    margin-top: -1.5rem !important;
+    margin-bottom: -1.5rem !important;
+  }
+
+  .my-sm-n5 {
+    margin-top: -3rem !important;
+    margin-bottom: -3rem !important;
+  }
+
+  .mt-sm-n1 {
+    margin-top: -0.25rem !important;
+  }
+
+  .mt-sm-n2 {
+    margin-top: -0.5rem !important;
+  }
+
+  .mt-sm-n3 {
+    margin-top: -1rem !important;
+  }
+
+  .mt-sm-n4 {
+    margin-top: -1.5rem !important;
+  }
+
+  .mt-sm-n5 {
+    margin-top: -3rem !important;
+  }
+
+  .mr-sm-n1 {
+    margin-right: -0.25rem !important;
+  }
+
+  .mr-sm-n2 {
+    margin-right: -0.5rem !important;
+  }
+
+  .mr-sm-n3 {
+    margin-right: -1rem !important;
+  }
+
+  .mr-sm-n4 {
+    margin-right: -1.5rem !important;
+  }
+
+  .mr-sm-n5 {
+    margin-right: -3rem !important;
+  }
+
+  .mb-sm-n1 {
+    margin-bottom: -0.25rem !important;
+  }
+
+  .mb-sm-n2 {
+    margin-bottom: -0.5rem !important;
+  }
+
+  .mb-sm-n3 {
+    margin-bottom: -1rem !important;
+  }
+
+  .mb-sm-n4 {
+    margin-bottom: -1.5rem !important;
+  }
+
+  .mb-sm-n5 {
+    margin-bottom: -3rem !important;
+  }
+
+  .ml-sm-n1 {
+    margin-left: -0.25rem !important;
+  }
+
+  .ml-sm-n2 {
+    margin-left: -0.5rem !important;
+  }
+
+  .ml-sm-n3 {
+    margin-left: -1rem !important;
+  }
+
+  .ml-sm-n4 {
+    margin-left: -1.5rem !important;
+  }
+
+  .ml-sm-n5 {
+    margin-left: -3rem !important;
+  }
+
+  .p-sm-0 {
+    padding: 0 !important;
+  }
+
+  .p-sm-1 {
+    padding: 0.25rem !important;
+  }
+
+  .p-sm-2 {
+    padding: 0.5rem !important;
+  }
+
+  .p-sm-3 {
+    padding: 1rem !important;
+  }
+
+  .p-sm-4 {
+    padding: 1.5rem !important;
+  }
+
+  .p-sm-5 {
+    padding: 3rem !important;
+  }
+
+  .px-sm-0 {
+    padding-right: 0 !important;
+    padding-left: 0 !important;
+  }
+
+  .px-sm-1 {
+    padding-right: 0.25rem !important;
+    padding-left: 0.25rem !important;
+  }
+
+  .px-sm-2 {
+    padding-right: 0.5rem !important;
+    padding-left: 0.5rem !important;
+  }
+
+  .px-sm-3 {
+    padding-right: 1rem !important;
+    padding-left: 1rem !important;
+  }
+
+  .px-sm-4 {
+    padding-right: 1.5rem !important;
+    padding-left: 1.5rem !important;
+  }
+
+  .px-sm-5 {
+    padding-right: 3rem !important;
+    padding-left: 3rem !important;
+  }
+
+  .py-sm-0 {
+    padding-top: 0 !important;
+    padding-bottom: 0 !important;
+  }
+
+  .py-sm-1 {
+    padding-top: 0.25rem !important;
+    padding-bottom: 0.25rem !important;
+  }
+
+  .py-sm-2 {
+    padding-top: 0.5rem !important;
+    padding-bottom: 0.5rem !important;
+  }
+
+  .py-sm-3 {
+    padding-top: 1rem !important;
+    padding-bottom: 1rem !important;
+  }
+
+  .py-sm-4 {
+    padding-top: 1.5rem !important;
+    padding-bottom: 1.5rem !important;
+  }
+
+  .py-sm-5 {
+    padding-top: 3rem !important;
+    padding-bottom: 3rem !important;
+  }
+
+  .pt-sm-0 {
+    padding-top: 0 !important;
+  }
+
+  .pt-sm-1 {
+    padding-top: 0.25rem !important;
+  }
+
+  .pt-sm-2 {
+    padding-top: 0.5rem !important;
+  }
+
+  .pt-sm-3 {
+    padding-top: 1rem !important;
+  }
+
+  .pt-sm-4 {
+    padding-top: 1.5rem !important;
+  }
+
+  .pt-sm-5 {
+    padding-top: 3rem !important;
+  }
+
+  .pr-sm-0 {
+    padding-right: 0 !important;
+  }
+
+  .pr-sm-1 {
+    padding-right: 0.25rem !important;
+  }
+
+  .pr-sm-2 {
+    padding-right: 0.5rem !important;
+  }
+
+  .pr-sm-3 {
+    padding-right: 1rem !important;
+  }
+
+  .pr-sm-4 {
+    padding-right: 1.5rem !important;
+  }
+
+  .pr-sm-5 {
+    padding-right: 3rem !important;
+  }
+
+  .pb-sm-0 {
+    padding-bottom: 0 !important;
+  }
+
+  .pb-sm-1 {
+    padding-bottom: 0.25rem !important;
+  }
+
+  .pb-sm-2 {
+    padding-bottom: 0.5rem !important;
+  }
+
+  .pb-sm-3 {
+    padding-bottom: 1rem !important;
+  }
+
+  .pb-sm-4 {
+    padding-bottom: 1.5rem !important;
+  }
+
+  .pb-sm-5 {
+    padding-bottom: 3rem !important;
+  }
+
+  .pl-sm-0 {
+    padding-left: 0 !important;
+  }
+
+  .pl-sm-1 {
+    padding-left: 0.25rem !important;
+  }
+
+  .pl-sm-2 {
+    padding-left: 0.5rem !important;
+  }
+
+  .pl-sm-3 {
+    padding-left: 1rem !important;
+  }
+
+  .pl-sm-4 {
+    padding-left: 1.5rem !important;
+  }
+
+  .pl-sm-5 {
+    padding-left: 3rem !important;
+  }
+}
+
+@media (min-width: 768px) {
+  .d-md-none {
+    display: none !important;
+  }
+
+  .d-md-inline {
+    display: inline !important;
+  }
+
+  .d-md-inline-block {
+    display: inline-block !important;
+  }
+
+  .d-md-block {
+    display: block !important;
+  }
+
+  .d-md-table {
+    display: table !important;
+  }
+
+  .d-md-table-row {
+    display: table-row !important;
+  }
+
+  .d-md-table-cell {
+    display: table-cell !important;
+  }
+
+  .d-md-flex {
+    display: flex !important;
+  }
+
+  .d-md-inline-flex {
+    display: inline-flex !important;
+  }
+
+  .flex-md-fill {
+    flex: 1 1 auto !important;
+  }
+
+  .flex-md-row {
+    flex-direction: row !important;
+  }
+
+  .flex-md-column {
+    flex-direction: column !important;
+  }
+
+  .flex-md-row-reverse {
+    flex-direction: row-reverse !important;
+  }
+
+  .flex-md-column-reverse {
+    flex-direction: column-reverse !important;
+  }
+
+  .flex-md-grow-0 {
+    flex-grow: 0 !important;
+  }
+
+  .flex-md-grow-1 {
+    flex-grow: 1 !important;
+  }
+
+  .justify-content-md-start {
+    justify-content: flex-start !important;
+  }
+
+  .justify-content-md-end {
+    justify-content: flex-end !important;
+  }
+
+  .justify-content-md-center {
+    justify-content: center !important;
+  }
+
+  .justify-content-md-between {
+    justify-content: space-between !important;
+  }
+
+  .justify-content-md-around {
+    justify-content: space-around !important;
+  }
+
+  .align-items-md-start {
+    align-items: flex-start !important;
+  }
+
+  .align-items-md-end {
+    align-items: flex-end !important;
+  }
+
+  .align-items-md-center {
+    align-items: center !important;
+  }
+
+  .align-items-md-baseline {
+    align-items: baseline !important;
+  }
+
+  .align-items-md-stretch {
+    align-items: stretch !important;
+  }
+
+  .align-content-md-start {
+    align-content: flex-start !important;
+  }
+
+  .align-content-md-end {
+    align-content: flex-end !important;
+  }
+
+  .align-content-md-center {
+    align-content: center !important;
+  }
+
+  .align-content-md-between {
+    align-content: space-between !important;
+  }
+
+  .align-content-md-around {
+    align-content: space-around !important;
+  }
+
+  .align-content-md-stretch {
+    align-content: stretch !important;
+  }
+
+  .align-self-md-auto {
+    align-self: auto !important;
+  }
+
+  .align-self-md-start {
+    align-self: flex-start !important;
+  }
+
+  .align-self-md-end {
+    align-self: flex-end !important;
+  }
+
+  .align-self-md-center {
+    align-self: center !important;
+  }
+
+  .align-self-md-baseline {
+    align-self: baseline !important;
+  }
+
+  .align-self-md-stretch {
+    align-self: stretch !important;
+  }
+
+  .order-md-first {
+    order: -1 !important;
+  }
+
+  .order-md-0 {
+    order: 0 !important;
+  }
+
+  .order-md-1 {
+    order: 1 !important;
+  }
+
+  .order-md-2 {
+    order: 2 !important;
+  }
+
+  .order-md-3 {
+    order: 3 !important;
+  }
+
+  .order-md-4 {
+    order: 4 !important;
+  }
+
+  .order-md-5 {
+    order: 5 !important;
+  }
+
+  .order-md-last {
+    order: 6 !important;
+  }
+
+  .m-md-0 {
+    margin: 0 !important;
+  }
+
+  .m-md-1 {
+    margin: 0.25rem !important;
+  }
+
+  .m-md-2 {
+    margin: 0.5rem !important;
+  }
+
+  .m-md-3 {
+    margin: 1rem !important;
+  }
+
+  .m-md-4 {
+    margin: 1.5rem !important;
+  }
+
+  .m-md-5 {
+    margin: 3rem !important;
+  }
+
+  .m-md-auto {
+    margin: auto !important;
+  }
+
+  .mx-md-0 {
+    margin-right: 0 !important;
+    margin-left: 0 !important;
+  }
+
+  .mx-md-1 {
+    margin-right: 0.25rem !important;
+    margin-left: 0.25rem !important;
+  }
+
+  .mx-md-2 {
+    margin-right: 0.5rem !important;
+    margin-left: 0.5rem !important;
+  }
+
+  .mx-md-3 {
+    margin-right: 1rem !important;
+    margin-left: 1rem !important;
+  }
+
+  .mx-md-4 {
+    margin-right: 1.5rem !important;
+    margin-left: 1.5rem !important;
+  }
+
+  .mx-md-5 {
+    margin-right: 3rem !important;
+    margin-left: 3rem !important;
+  }
+
+  .mx-md-auto {
+    margin-right: auto !important;
+    margin-left: auto !important;
+  }
+
+  .my-md-0 {
+    margin-top: 0 !important;
+    margin-bottom: 0 !important;
+  }
+
+  .my-md-1 {
+    margin-top: 0.25rem !important;
+    margin-bottom: 0.25rem !important;
+  }
+
+  .my-md-2 {
+    margin-top: 0.5rem !important;
+    margin-bottom: 0.5rem !important;
+  }
+
+  .my-md-3 {
+    margin-top: 1rem !important;
+    margin-bottom: 1rem !important;
+  }
+
+  .my-md-4 {
+    margin-top: 1.5rem !important;
+    margin-bottom: 1.5rem !important;
+  }
+
+  .my-md-5 {
+    margin-top: 3rem !important;
+    margin-bottom: 3rem !important;
+  }
+
+  .my-md-auto {
+    margin-top: auto !important;
+    margin-bottom: auto !important;
+  }
+
+  .mt-md-0 {
+    margin-top: 0 !important;
+  }
+
+  .mt-md-1 {
+    margin-top: 0.25rem !important;
+  }
+
+  .mt-md-2 {
+    margin-top: 0.5rem !important;
+  }
+
+  .mt-md-3 {
+    margin-top: 1rem !important;
+  }
+
+  .mt-md-4 {
+    margin-top: 1.5rem !important;
+  }
+
+  .mt-md-5 {
+    margin-top: 3rem !important;
+  }
+
+  .mt-md-auto {
+    margin-top: auto !important;
+  }
+
+  .mr-md-0 {
+    margin-right: 0 !important;
+  }
+
+  .mr-md-1 {
+    margin-right: 0.25rem !important;
+  }
+
+  .mr-md-2 {
+    margin-right: 0.5rem !important;
+  }
+
+  .mr-md-3 {
+    margin-right: 1rem !important;
+  }
+
+  .mr-md-4 {
+    margin-right: 1.5rem !important;
+  }
+
+  .mr-md-5 {
+    margin-right: 3rem !important;
+  }
+
+  .mr-md-auto {
+    margin-right: auto !important;
+  }
+
+  .mb-md-0 {
+    margin-bottom: 0 !important;
+  }
+
+  .mb-md-1 {
+    margin-bottom: 0.25rem !important;
+  }
+
+  .mb-md-2 {
+    margin-bottom: 0.5rem !important;
+  }
+
+  .mb-md-3 {
+    margin-bottom: 1rem !important;
+  }
+
+  .mb-md-4 {
+    margin-bottom: 1.5rem !important;
+  }
+
+  .mb-md-5 {
+    margin-bottom: 3rem !important;
+  }
+
+  .mb-md-auto {
+    margin-bottom: auto !important;
+  }
+
+  .ml-md-0 {
+    margin-left: 0 !important;
+  }
+
+  .ml-md-1 {
+    margin-left: 0.25rem !important;
+  }
+
+  .ml-md-2 {
+    margin-left: 0.5rem !important;
+  }
+
+  .ml-md-3 {
+    margin-left: 1rem !important;
+  }
+
+  .ml-md-4 {
+    margin-left: 1.5rem !important;
+  }
+
+  .ml-md-5 {
+    margin-left: 3rem !important;
+  }
+
+  .ml-md-auto {
+    margin-left: auto !important;
+  }
+
+  .m-md-n1 {
+    margin: -0.25rem !important;
+  }
+
+  .m-md-n2 {
+    margin: -0.5rem !important;
+  }
+
+  .m-md-n3 {
+    margin: -1rem !important;
+  }
+
+  .m-md-n4 {
+    margin: -1.5rem !important;
+  }
+
+  .m-md-n5 {
+    margin: -3rem !important;
+  }
+
+  .mx-md-n1 {
+    margin-right: -0.25rem !important;
+    margin-left: -0.25rem !important;
+  }
+
+  .mx-md-n2 {
+    margin-right: -0.5rem !important;
+    margin-left: -0.5rem !important;
+  }
+
+  .mx-md-n3 {
+    margin-right: -1rem !important;
+    margin-left: -1rem !important;
+  }
+
+  .mx-md-n4 {
+    margin-right: -1.5rem !important;
+    margin-left: -1.5rem !important;
+  }
+
+  .mx-md-n5 {
+    margin-right: -3rem !important;
+    margin-left: -3rem !important;
+  }
+
+  .my-md-n1 {
+    margin-top: -0.25rem !important;
+    margin-bottom: -0.25rem !important;
+  }
+
+  .my-md-n2 {
+    margin-top: -0.5rem !important;
+    margin-bottom: -0.5rem !important;
+  }
+
+  .my-md-n3 {
+    margin-top: -1rem !important;
+    margin-bottom: -1rem !important;
+  }
+
+  .my-md-n4 {
+    margin-top: -1.5rem !important;
+    margin-bottom: -1.5rem !important;
+  }
+
+  .my-md-n5 {
+    margin-top: -3rem !important;
+    margin-bottom: -3rem !important;
+  }
+
+  .mt-md-n1 {
+    margin-top: -0.25rem !important;
+  }
+
+  .mt-md-n2 {
+    margin-top: -0.5rem !important;
+  }
+
+  .mt-md-n3 {
+    margin-top: -1rem !important;
+  }
+
+  .mt-md-n4 {
+    margin-top: -1.5rem !important;
+  }
+
+  .mt-md-n5 {
+    margin-top: -3rem !important;
+  }
+
+  .mr-md-n1 {
+    margin-right: -0.25rem !important;
+  }
+
+  .mr-md-n2 {
+    margin-right: -0.5rem !important;
+  }
+
+  .mr-md-n3 {
+    margin-right: -1rem !important;
+  }
+
+  .mr-md-n4 {
+    margin-right: -1.5rem !important;
+  }
+
+  .mr-md-n5 {
+    margin-right: -3rem !important;
+  }
+
+  .mb-md-n1 {
+    margin-bottom: -0.25rem !important;
+  }
+
+  .mb-md-n2 {
+    margin-bottom: -0.5rem !important;
+  }
+
+  .mb-md-n3 {
+    margin-bottom: -1rem !important;
+  }
+
+  .mb-md-n4 {
+    margin-bottom: -1.5rem !important;
+  }
+
+  .mb-md-n5 {
+    margin-bottom: -3rem !important;
+  }
+
+  .ml-md-n1 {
+    margin-left: -0.25rem !important;
+  }
+
+  .ml-md-n2 {
+    margin-left: -0.5rem !important;
+  }
+
+  .ml-md-n3 {
+    margin-left: -1rem !important;
+  }
+
+  .ml-md-n4 {
+    margin-left: -1.5rem !important;
+  }
+
+  .ml-md-n5 {
+    margin-left: -3rem !important;
+  }
+
+  .p-md-0 {
+    padding: 0 !important;
+  }
+
+  .p-md-1 {
+    padding: 0.25rem !important;
+  }
+
+  .p-md-2 {
+    padding: 0.5rem !important;
+  }
+
+  .p-md-3 {
+    padding: 1rem !important;
+  }
+
+  .p-md-4 {
+    padding: 1.5rem !important;
+  }
+
+  .p-md-5 {
+    padding: 3rem !important;
+  }
+
+  .px-md-0 {
+    padding-right: 0 !important;
+    padding-left: 0 !important;
+  }
+
+  .px-md-1 {
+    padding-right: 0.25rem !important;
+    padding-left: 0.25rem !important;
+  }
+
+  .px-md-2 {
+    padding-right: 0.5rem !important;
+    padding-left: 0.5rem !important;
+  }
+
+  .px-md-3 {
+    padding-right: 1rem !important;
+    padding-left: 1rem !important;
+  }
+
+  .px-md-4 {
+    padding-right: 1.5rem !important;
+    padding-left: 1.5rem !important;
+  }
+
+  .px-md-5 {
+    padding-right: 3rem !important;
+    padding-left: 3rem !important;
+  }
+
+  .py-md-0 {
+    padding-top: 0 !important;
+    padding-bottom: 0 !important;
+  }
+
+  .py-md-1 {
+    padding-top: 0.25rem !important;
+    padding-bottom: 0.25rem !important;
+  }
+
+  .py-md-2 {
+    padding-top: 0.5rem !important;
+    padding-bottom: 0.5rem !important;
+  }
+
+  .py-md-3 {
+    padding-top: 1rem !important;
+    padding-bottom: 1rem !important;
+  }
+
+  .py-md-4 {
+    padding-top: 1.5rem !important;
+    padding-bottom: 1.5rem !important;
+  }
+
+  .py-md-5 {
+    padding-top: 3rem !important;
+    padding-bottom: 3rem !important;
+  }
+
+  .pt-md-0 {
+    padding-top: 0 !important;
+  }
+
+  .pt-md-1 {
+    padding-top: 0.25rem !important;
+  }
+
+  .pt-md-2 {
+    padding-top: 0.5rem !important;
+  }
+
+  .pt-md-3 {
+    padding-top: 1rem !important;
+  }
+
+  .pt-md-4 {
+    padding-top: 1.5rem !important;
+  }
+
+  .pt-md-5 {
+    padding-top: 3rem !important;
+  }
+
+  .pr-md-0 {
+    padding-right: 0 !important;
+  }
+
+  .pr-md-1 {
+    padding-right: 0.25rem !important;
+  }
+
+  .pr-md-2 {
+    padding-right: 0.5rem !important;
+  }
+
+  .pr-md-3 {
+    padding-right: 1rem !important;
+  }
+
+  .pr-md-4 {
+    padding-right: 1.5rem !important;
+  }
+
+  .pr-md-5 {
+    padding-right: 3rem !important;
+  }
+
+  .pb-md-0 {
+    padding-bottom: 0 !important;
+  }
+
+  .pb-md-1 {
+    padding-bottom: 0.25rem !important;
+  }
+
+  .pb-md-2 {
+    padding-bottom: 0.5rem !important;
+  }
+
+  .pb-md-3 {
+    padding-bottom: 1rem !important;
+  }
+
+  .pb-md-4 {
+    padding-bottom: 1.5rem !important;
+  }
+
+  .pb-md-5 {
+    padding-bottom: 3rem !important;
+  }
+
+  .pl-md-0 {
+    padding-left: 0 !important;
+  }
+
+  .pl-md-1 {
+    padding-left: 0.25rem !important;
+  }
+
+  .pl-md-2 {
+    padding-left: 0.5rem !important;
+  }
+
+  .pl-md-3 {
+    padding-left: 1rem !important;
+  }
+
+  .pl-md-4 {
+    padding-left: 1.5rem !important;
+  }
+
+  .pl-md-5 {
+    padding-left: 3rem !important;
+  }
+}
+
+@media (min-width: 992px) {
+  .d-lg-none {
+    display: none !important;
+  }
+
+  .d-lg-inline {
+    display: inline !important;
+  }
+
+  .d-lg-inline-block {
+    display: inline-block !important;
+  }
+
+  .d-lg-block {
+    display: block !important;
+  }
+
+  .d-lg-table {
+    display: table !important;
+  }
+
+  .d-lg-table-row {
+    display: table-row !important;
+  }
+
+  .d-lg-table-cell {
+    display: table-cell !important;
+  }
+
+  .d-lg-flex {
+    display: flex !important;
+  }
+
+  .d-lg-inline-flex {
+    display: inline-flex !important;
+  }
+
+  .flex-lg-fill {
+    flex: 1 1 auto !important;
+  }
+
+  .flex-lg-row {
+    flex-direction: row !important;
+  }
+
+  .flex-lg-column {
+    flex-direction: column !important;
+  }
+
+  .flex-lg-row-reverse {
+    flex-direction: row-reverse !important;
+  }
+
+  .flex-lg-column-reverse {
+    flex-direction: column-reverse !important;
+  }
+
+  .flex-lg-grow-0 {
+    flex-grow: 0 !important;
+  }
+
+  .flex-lg-grow-1 {
+    flex-grow: 1 !important;
+  }
+
+  .justify-content-lg-start {
+    justify-content: flex-start !important;
+  }
+
+  .justify-content-lg-end {
+    justify-content: flex-end !important;
+  }
+
+  .justify-content-lg-center {
+    justify-content: center !important;
+  }
+
+  .justify-content-lg-between {
+    justify-content: space-between !important;
+  }
+
+  .justify-content-lg-around {
+    justify-content: space-around !important;
+  }
+
+  .align-items-lg-start {
+    align-items: flex-start !important;
+  }
+
+  .align-items-lg-end {
+    align-items: flex-end !important;
+  }
+
+  .align-items-lg-center {
+    align-items: center !important;
+  }
+
+  .align-items-lg-baseline {
+    align-items: baseline !important;
+  }
+
+  .align-items-lg-stretch {
+    align-items: stretch !important;
+  }
+
+  .align-content-lg-start {
+    align-content: flex-start !important;
+  }
+
+  .align-content-lg-end {
+    align-content: flex-end !important;
+  }
+
+  .align-content-lg-center {
+    align-content: center !important;
+  }
+
+  .align-content-lg-between {
+    align-content: space-between !important;
+  }
+
+  .align-content-lg-around {
+    align-content: space-around !important;
+  }
+
+  .align-content-lg-stretch {
+    align-content: stretch !important;
+  }
+
+  .align-self-lg-auto {
+    align-self: auto !important;
+  }
+
+  .align-self-lg-start {
+    align-self: flex-start !important;
+  }
+
+  .align-self-lg-end {
+    align-self: flex-end !important;
+  }
+
+  .align-self-lg-center {
+    align-self: center !important;
+  }
+
+  .align-self-lg-baseline {
+    align-self: baseline !important;
+  }
+
+  .align-self-lg-stretch {
+    align-self: stretch !important;
+  }
+
+  .order-lg-first {
+    order: -1 !important;
+  }
+
+  .order-lg-0 {
+    order: 0 !important;
+  }
+
+  .order-lg-1 {
+    order: 1 !important;
+  }
+
+  .order-lg-2 {
+    order: 2 !important;
+  }
+
+  .order-lg-3 {
+    order: 3 !important;
+  }
+
+  .order-lg-4 {
+    order: 4 !important;
+  }
+
+  .order-lg-5 {
+    order: 5 !important;
+  }
+
+  .order-lg-last {
+    order: 6 !important;
+  }
+
+  .m-lg-0 {
+    margin: 0 !important;
+  }
+
+  .m-lg-1 {
+    margin: 0.25rem !important;
+  }
+
+  .m-lg-2 {
+    margin: 0.5rem !important;
+  }
+
+  .m-lg-3 {
+    margin: 1rem !important;
+  }
+
+  .m-lg-4 {
+    margin: 1.5rem !important;
+  }
+
+  .m-lg-5 {
+    margin: 3rem !important;
+  }
+
+  .m-lg-auto {
+    margin: auto !important;
+  }
+
+  .mx-lg-0 {
+    margin-right: 0 !important;
+    margin-left: 0 !important;
+  }
+
+  .mx-lg-1 {
+    margin-right: 0.25rem !important;
+    margin-left: 0.25rem !important;
+  }
+
+  .mx-lg-2 {
+    margin-right: 0.5rem !important;
+    margin-left: 0.5rem !important;
+  }
+
+  .mx-lg-3 {
+    margin-right: 1rem !important;
+    margin-left: 1rem !important;
+  }
+
+  .mx-lg-4 {
+    margin-right: 1.5rem !important;
+    margin-left: 1.5rem !important;
+  }
+
+  .mx-lg-5 {
+    margin-right: 3rem !important;
+    margin-left: 3rem !important;
+  }
+
+  .mx-lg-auto {
+    margin-right: auto !important;
+    margin-left: auto !important;
+  }
+
+  .my-lg-0 {
+    margin-top: 0 !important;
+    margin-bottom: 0 !important;
+  }
+
+  .my-lg-1 {
+    margin-top: 0.25rem !important;
+    margin-bottom: 0.25rem !important;
+  }
+
+  .my-lg-2 {
+    margin-top: 0.5rem !important;
+    margin-bottom: 0.5rem !important;
+  }
+
+  .my-lg-3 {
+    margin-top: 1rem !important;
+    margin-bottom: 1rem !important;
+  }
+
+  .my-lg-4 {
+    margin-top: 1.5rem !important;
+    margin-bottom: 1.5rem !important;
+  }
+
+  .my-lg-5 {
+    margin-top: 3rem !important;
+    margin-bottom: 3rem !important;
+  }
+
+  .my-lg-auto {
+    margin-top: auto !important;
+    margin-bottom: auto !important;
+  }
+
+  .mt-lg-0 {
+    margin-top: 0 !important;
+  }
+
+  .mt-lg-1 {
+    margin-top: 0.25rem !important;
+  }
+
+  .mt-lg-2 {
+    margin-top: 0.5rem !important;
+  }
+
+  .mt-lg-3 {
+    margin-top: 1rem !important;
+  }
+
+  .mt-lg-4 {
+    margin-top: 1.5rem !important;
+  }
+
+  .mt-lg-5 {
+    margin-top: 3rem !important;
+  }
+
+  .mt-lg-auto {
+    margin-top: auto !important;
+  }
+
+  .mr-lg-0 {
+    margin-right: 0 !important;
+  }
+
+  .mr-lg-1 {
+    margin-right: 0.25rem !important;
+  }
+
+  .mr-lg-2 {
+    margin-right: 0.5rem !important;
+  }
+
+  .mr-lg-3 {
+    margin-right: 1rem !important;
+  }
+
+  .mr-lg-4 {
+    margin-right: 1.5rem !important;
+  }
+
+  .mr-lg-5 {
+    margin-right: 3rem !important;
+  }
+
+  .mr-lg-auto {
+    margin-right: auto !important;
+  }
+
+  .mb-lg-0 {
+    margin-bottom: 0 !important;
+  }
+
+  .mb-lg-1 {
+    margin-bottom: 0.25rem !important;
+  }
+
+  .mb-lg-2 {
+    margin-bottom: 0.5rem !important;
+  }
+
+  .mb-lg-3 {
+    margin-bottom: 1rem !important;
+  }
+
+  .mb-lg-4 {
+    margin-bottom: 1.5rem !important;
+  }
+
+  .mb-lg-5 {
+    margin-bottom: 3rem !important;
+  }
+
+  .mb-lg-auto {
+    margin-bottom: auto !important;
+  }
+
+  .ml-lg-0 {
+    margin-left: 0 !important;
+  }
+
+  .ml-lg-1 {
+    margin-left: 0.25rem !important;
+  }
+
+  .ml-lg-2 {
+    margin-left: 0.5rem !important;
+  }
+
+  .ml-lg-3 {
+    margin-left: 1rem !important;
+  }
+
+  .ml-lg-4 {
+    margin-left: 1.5rem !important;
+  }
+
+  .ml-lg-5 {
+    margin-left: 3rem !important;
+  }
+
+  .ml-lg-auto {
+    margin-left: auto !important;
+  }
+
+  .m-lg-n1 {
+    margin: -0.25rem !important;
+  }
+
+  .m-lg-n2 {
+    margin: -0.5rem !important;
+  }
+
+  .m-lg-n3 {
+    margin: -1rem !important;
+  }
+
+  .m-lg-n4 {
+    margin: -1.5rem !important;
+  }
+
+  .m-lg-n5 {
+    margin: -3rem !important;
+  }
+
+  .mx-lg-n1 {
+    margin-right: -0.25rem !important;
+    margin-left: -0.25rem !important;
+  }
+
+  .mx-lg-n2 {
+    margin-right: -0.5rem !important;
+    margin-left: -0.5rem !important;
+  }
+
+  .mx-lg-n3 {
+    margin-right: -1rem !important;
+    margin-left: -1rem !important;
+  }
+
+  .mx-lg-n4 {
+    margin-right: -1.5rem !important;
+    margin-left: -1.5rem !important;
+  }
+
+  .mx-lg-n5 {
+    margin-right: -3rem !important;
+    margin-left: -3rem !important;
+  }
+
+  .my-lg-n1 {
+    margin-top: -0.25rem !important;
+    margin-bottom: -0.25rem !important;
+  }
+
+  .my-lg-n2 {
+    margin-top: -0.5rem !important;
+    margin-bottom: -0.5rem !important;
+  }
+
+  .my-lg-n3 {
+    margin-top: -1rem !important;
+    margin-bottom: -1rem !important;
+  }
+
+  .my-lg-n4 {
+    margin-top: -1.5rem !important;
+    margin-bottom: -1.5rem !important;
+  }
 
-.col-xs-pull-5 {
-  right: 41.66666667%;
-}
+  .my-lg-n5 {
+    margin-top: -3rem !important;
+    margin-bottom: -3rem !important;
+  }
 
-.col-xs-pull-4 {
-  right: 33.33333333%;
-}
+  .mt-lg-n1 {
+    margin-top: -0.25rem !important;
+  }
 
-.col-xs-pull-3 {
-  right: 25%;
-}
+  .mt-lg-n2 {
+    margin-top: -0.5rem !important;
+  }
 
-.col-xs-pull-2 {
-  right: 16.66666667%;
-}
+  .mt-lg-n3 {
+    margin-top: -1rem !important;
+  }
 
-.col-xs-pull-1 {
-  right: 8.33333333%;
-}
+  .mt-lg-n4 {
+    margin-top: -1.5rem !important;
+  }
 
-.col-xs-pull-0 {
-  right: auto;
-}
+  .mt-lg-n5 {
+    margin-top: -3rem !important;
+  }
 
-.col-xs-push-12 {
-  left: 100%;
-}
+  .mr-lg-n1 {
+    margin-right: -0.25rem !important;
+  }
 
-.col-xs-push-11 {
-  left: 91.66666667%;
-}
+  .mr-lg-n2 {
+    margin-right: -0.5rem !important;
+  }
 
-.col-xs-push-10 {
-  left: 83.33333333%;
-}
+  .mr-lg-n3 {
+    margin-right: -1rem !important;
+  }
 
-.col-xs-push-9 {
-  left: 75%;
-}
+  .mr-lg-n4 {
+    margin-right: -1.5rem !important;
+  }
 
-.col-xs-push-8 {
-  left: 66.66666667%;
-}
+  .mr-lg-n5 {
+    margin-right: -3rem !important;
+  }
 
-.col-xs-push-7 {
-  left: 58.33333333%;
-}
+  .mb-lg-n1 {
+    margin-bottom: -0.25rem !important;
+  }
 
-.col-xs-push-6 {
-  left: 50%;
-}
+  .mb-lg-n2 {
+    margin-bottom: -0.5rem !important;
+  }
 
-.col-xs-push-5 {
-  left: 41.66666667%;
-}
+  .mb-lg-n3 {
+    margin-bottom: -1rem !important;
+  }
 
-.col-xs-push-4 {
-  left: 33.33333333%;
-}
+  .mb-lg-n4 {
+    margin-bottom: -1.5rem !important;
+  }
 
-.col-xs-push-3 {
-  left: 25%;
-}
+  .mb-lg-n5 {
+    margin-bottom: -3rem !important;
+  }
 
-.col-xs-push-2 {
-  left: 16.66666667%;
-}
+  .ml-lg-n1 {
+    margin-left: -0.25rem !important;
+  }
 
-.col-xs-push-1 {
-  left: 8.33333333%;
-}
+  .ml-lg-n2 {
+    margin-left: -0.5rem !important;
+  }
 
-.col-xs-push-0 {
-  left: auto;
-}
+  .ml-lg-n3 {
+    margin-left: -1rem !important;
+  }
 
-.col-xs-offset-12 {
-  margin-left: 100%;
-}
+  .ml-lg-n4 {
+    margin-left: -1.5rem !important;
+  }
 
-.col-xs-offset-11 {
-  margin-left: 91.66666667%;
-}
+  .ml-lg-n5 {
+    margin-left: -3rem !important;
+  }
 
-.col-xs-offset-10 {
-  margin-left: 83.33333333%;
-}
+  .p-lg-0 {
+    padding: 0 !important;
+  }
 
-.col-xs-offset-9 {
-  margin-left: 75%;
-}
+  .p-lg-1 {
+    padding: 0.25rem !important;
+  }
 
-.col-xs-offset-8 {
-  margin-left: 66.66666667%;
-}
+  .p-lg-2 {
+    padding: 0.5rem !important;
+  }
 
-.col-xs-offset-7 {
-  margin-left: 58.33333333%;
-}
+  .p-lg-3 {
+    padding: 1rem !important;
+  }
 
-.col-xs-offset-6 {
-  margin-left: 50%;
-}
+  .p-lg-4 {
+    padding: 1.5rem !important;
+  }
 
-.col-xs-offset-5 {
-  margin-left: 41.66666667%;
-}
+  .p-lg-5 {
+    padding: 3rem !important;
+  }
 
-.col-xs-offset-4 {
-  margin-left: 33.33333333%;
-}
+  .px-lg-0 {
+    padding-right: 0 !important;
+    padding-left: 0 !important;
+  }
 
-.col-xs-offset-3 {
-  margin-left: 25%;
-}
+  .px-lg-1 {
+    padding-right: 0.25rem !important;
+    padding-left: 0.25rem !important;
+  }
 
-.col-xs-offset-2 {
-  margin-left: 16.66666667%;
-}
+  .px-lg-2 {
+    padding-right: 0.5rem !important;
+    padding-left: 0.5rem !important;
+  }
 
-.col-xs-offset-1 {
-  margin-left: 8.33333333%;
-}
+  .px-lg-3 {
+    padding-right: 1rem !important;
+    padding-left: 1rem !important;
+  }
 
-.col-xs-offset-0 {
-  margin-left: 0%;
-}
+  .px-lg-4 {
+    padding-right: 1.5rem !important;
+    padding-left: 1.5rem !important;
+  }
 
-@media (min-width: 768px) {
+  .px-lg-5 {
+    padding-right: 3rem !important;
+    padding-left: 3rem !important;
+  }
 
-  .col-sm-1,
-  .col-sm-2,
-  .col-sm-3,
-  .col-sm-4,
-  .col-sm-5,
-  .col-sm-6,
-  .col-sm-7,
-  .col-sm-8,
-  .col-sm-9,
-  .col-sm-10,
-  .col-sm-11,
-  .col-sm-12 {
-    float: left;
+  .py-lg-0 {
+    padding-top: 0 !important;
+    padding-bottom: 0 !important;
   }
 
-  .col-sm-12 {
-    width: 100%;
+  .py-lg-1 {
+    padding-top: 0.25rem !important;
+    padding-bottom: 0.25rem !important;
   }
 
-  .col-sm-11 {
-    width: 91.66666667%;
+  .py-lg-2 {
+    padding-top: 0.5rem !important;
+    padding-bottom: 0.5rem !important;
   }
 
-  .col-sm-10 {
-    width: 83.33333333%;
+  .py-lg-3 {
+    padding-top: 1rem !important;
+    padding-bottom: 1rem !important;
   }
 
-  .col-sm-9 {
-    width: 75%;
+  .py-lg-4 {
+    padding-top: 1.5rem !important;
+    padding-bottom: 1.5rem !important;
   }
 
-  .col-sm-8 {
-    width: 66.66666667%;
+  .py-lg-5 {
+    padding-top: 3rem !important;
+    padding-bottom: 3rem !important;
   }
 
-  .col-sm-7 {
-    width: 58.33333333%;
+  .pt-lg-0 {
+    padding-top: 0 !important;
   }
 
-  .col-sm-6 {
-    width: 50%;
+  .pt-lg-1 {
+    padding-top: 0.25rem !important;
   }
 
-  .col-sm-5 {
-    width: 41.66666667%;
+  .pt-lg-2 {
+    padding-top: 0.5rem !important;
   }
 
-  .col-sm-4 {
-    width: 33.33333333%;
+  .pt-lg-3 {
+    padding-top: 1rem !important;
   }
 
-  .col-sm-3 {
-    width: 25%;
+  .pt-lg-4 {
+    padding-top: 1.5rem !important;
   }
 
-  .col-sm-2 {
-    width: 16.66666667%;
+  .pt-lg-5 {
+    padding-top: 3rem !important;
   }
 
-  .col-sm-1 {
-    width: 8.33333333%;
+  .pr-lg-0 {
+    padding-right: 0 !important;
   }
 
-  .col-sm-pull-12 {
-    right: 100%;
+  .pr-lg-1 {
+    padding-right: 0.25rem !important;
   }
 
-  .col-sm-pull-11 {
-    right: 91.66666667%;
+  .pr-lg-2 {
+    padding-right: 0.5rem !important;
   }
 
-  .col-sm-pull-10 {
-    right: 83.33333333%;
+  .pr-lg-3 {
+    padding-right: 1rem !important;
   }
 
-  .col-sm-pull-9 {
-    right: 75%;
+  .pr-lg-4 {
+    padding-right: 1.5rem !important;
   }
 
-  .col-sm-pull-8 {
-    right: 66.66666667%;
+  .pr-lg-5 {
+    padding-right: 3rem !important;
   }
 
-  .col-sm-pull-7 {
-    right: 58.33333333%;
+  .pb-lg-0 {
+    padding-bottom: 0 !important;
   }
 
-  .col-sm-pull-6 {
-    right: 50%;
+  .pb-lg-1 {
+    padding-bottom: 0.25rem !important;
   }
 
-  .col-sm-pull-5 {
-    right: 41.66666667%;
+  .pb-lg-2 {
+    padding-bottom: 0.5rem !important;
   }
 
-  .col-sm-pull-4 {
-    right: 33.33333333%;
+  .pb-lg-3 {
+    padding-bottom: 1rem !important;
   }
 
-  .col-sm-pull-3 {
-    right: 25%;
+  .pb-lg-4 {
+    padding-bottom: 1.5rem !important;
   }
 
-  .col-sm-pull-2 {
-    right: 16.66666667%;
+  .pb-lg-5 {
+    padding-bottom: 3rem !important;
   }
 
-  .col-sm-pull-1 {
-    right: 8.33333333%;
+  .pl-lg-0 {
+    padding-left: 0 !important;
   }
 
-  .col-sm-pull-0 {
-    right: auto;
+  .pl-lg-1 {
+    padding-left: 0.25rem !important;
   }
 
-  .col-sm-push-12 {
-    left: 100%;
+  .pl-lg-2 {
+    padding-left: 0.5rem !important;
   }
 
-  .col-sm-push-11 {
-    left: 91.66666667%;
+  .pl-lg-3 {
+    padding-left: 1rem !important;
   }
 
-  .col-sm-push-10 {
-    left: 83.33333333%;
+  .pl-lg-4 {
+    padding-left: 1.5rem !important;
   }
 
-  .col-sm-push-9 {
-    left: 75%;
+  .pl-lg-5 {
+    padding-left: 3rem !important;
   }
+}
 
-  .col-sm-push-8 {
-    left: 66.66666667%;
+@media (min-width: 1200px) {
+  .d-xl-none {
+    display: none !important;
   }
 
-  .col-sm-push-7 {
-    left: 58.33333333%;
+  .d-xl-inline {
+    display: inline !important;
   }
 
-  .col-sm-push-6 {
-    left: 50%;
+  .d-xl-inline-block {
+    display: inline-block !important;
   }
 
-  .col-sm-push-5 {
-    left: 41.66666667%;
+  .d-xl-block {
+    display: block !important;
   }
 
-  .col-sm-push-4 {
-    left: 33.33333333%;
+  .d-xl-table {
+    display: table !important;
   }
 
-  .col-sm-push-3 {
-    left: 25%;
+  .d-xl-table-row {
+    display: table-row !important;
   }
 
-  .col-sm-push-2 {
-    left: 16.66666667%;
+  .d-xl-table-cell {
+    display: table-cell !important;
   }
 
-  .col-sm-push-1 {
-    left: 8.33333333%;
+  .d-xl-flex {
+    display: flex !important;
   }
 
-  .col-sm-push-0 {
-    left: auto;
+  .d-xl-inline-flex {
+    display: inline-flex !important;
   }
 
-  .col-sm-offset-12 {
-    margin-left: 100%;
+  .flex-xl-fill {
+    flex: 1 1 auto !important;
   }
 
-  .col-sm-offset-11 {
-    margin-left: 91.66666667%;
+  .flex-xl-row {
+    flex-direction: row !important;
   }
 
-  .col-sm-offset-10 {
-    margin-left: 83.33333333%;
+  .flex-xl-column {
+    flex-direction: column !important;
   }
 
-  .col-sm-offset-9 {
-    margin-left: 75%;
+  .flex-xl-row-reverse {
+    flex-direction: row-reverse !important;
   }
 
-  .col-sm-offset-8 {
-    margin-left: 66.66666667%;
+  .flex-xl-column-reverse {
+    flex-direction: column-reverse !important;
   }
 
-  .col-sm-offset-7 {
-    margin-left: 58.33333333%;
+  .flex-xl-grow-0 {
+    flex-grow: 0 !important;
   }
 
-  .col-sm-offset-6 {
-    margin-left: 50%;
+  .flex-xl-grow-1 {
+    flex-grow: 1 !important;
   }
 
-  .col-sm-offset-5 {
-    margin-left: 41.66666667%;
+  .justify-content-xl-start {
+    justify-content: flex-start !important;
   }
 
-  .col-sm-offset-4 {
-    margin-left: 33.33333333%;
+  .justify-content-xl-end {
+    justify-content: flex-end !important;
   }
 
-  .col-sm-offset-3 {
-    margin-left: 25%;
+  .justify-content-xl-center {
+    justify-content: center !important;
   }
 
-  .col-sm-offset-2 {
-    margin-left: 16.66666667%;
+  .justify-content-xl-between {
+    justify-content: space-between !important;
   }
 
-  .col-sm-offset-1 {
-    margin-left: 8.33333333%;
+  .justify-content-xl-around {
+    justify-content: space-around !important;
   }
 
-  .col-sm-offset-0 {
-    margin-left: 0%;
+  .align-items-xl-start {
+    align-items: flex-start !important;
   }
-}
 
-@media (min-width: 992px) {
+  .align-items-xl-end {
+    align-items: flex-end !important;
+  }
 
-  .col-md-1,
-  .col-md-2,
-  .col-md-3,
-  .col-md-4,
-  .col-md-5,
-  .col-md-6,
-  .col-md-7,
-  .col-md-8,
-  .col-md-9,
-  .col-md-10,
-  .col-md-11,
-  .col-md-12 {
-    float: left;
+  .align-items-xl-center {
+    align-items: center !important;
   }
 
-  .col-md-12 {
-    width: 100%;
+  .align-items-xl-baseline {
+    align-items: baseline !important;
   }
 
-  .col-md-11 {
-    width: 91.66666667%;
+  .align-items-xl-stretch {
+    align-items: stretch !important;
   }
 
-  .col-md-10 {
-    width: 83.33333333%;
+  .align-content-xl-start {
+    align-content: flex-start !important;
   }
 
-  .col-md-9 {
-    width: 75%;
+  .align-content-xl-end {
+    align-content: flex-end !important;
   }
 
-  .col-md-8 {
-    width: 66.66666667%;
+  .align-content-xl-center {
+    align-content: center !important;
   }
 
-  .col-md-7 {
-    width: 58.33333333%;
+  .align-content-xl-between {
+    align-content: space-between !important;
   }
 
-  .col-md-6 {
-    width: 50%;
+  .align-content-xl-around {
+    align-content: space-around !important;
   }
 
-  .col-md-5 {
-    width: 41.66666667%;
+  .align-content-xl-stretch {
+    align-content: stretch !important;
   }
 
-  .col-md-4 {
-    width: 33.33333333%;
+  .align-self-xl-auto {
+    align-self: auto !important;
   }
 
-  .col-md-3 {
-    width: 25%;
+  .align-self-xl-start {
+    align-self: flex-start !important;
   }
 
-  .col-md-2 {
-    width: 16.66666667%;
+  .align-self-xl-end {
+    align-self: flex-end !important;
   }
 
-  .col-md-1 {
-    width: 8.33333333%;
+  .align-self-xl-center {
+    align-self: center !important;
   }
 
-  .col-md-pull-12 {
-    right: 100%;
+  .align-self-xl-baseline {
+    align-self: baseline !important;
   }
 
-  .col-md-pull-11 {
-    right: 91.66666667%;
+  .align-self-xl-stretch {
+    align-self: stretch !important;
   }
 
-  .col-md-pull-10 {
-    right: 83.33333333%;
+  .order-xl-first {
+    order: -1 !important;
   }
 
-  .col-md-pull-9 {
-    right: 75%;
+  .order-xl-0 {
+    order: 0 !important;
   }
 
-  .col-md-pull-8 {
-    right: 66.66666667%;
+  .order-xl-1 {
+    order: 1 !important;
   }
 
-  .col-md-pull-7 {
-    right: 58.33333333%;
+  .order-xl-2 {
+    order: 2 !important;
   }
 
-  .col-md-pull-6 {
-    right: 50%;
+  .order-xl-3 {
+    order: 3 !important;
   }
 
-  .col-md-pull-5 {
-    right: 41.66666667%;
+  .order-xl-4 {
+    order: 4 !important;
   }
 
-  .col-md-pull-4 {
-    right: 33.33333333%;
+  .order-xl-5 {
+    order: 5 !important;
   }
 
-  .col-md-pull-3 {
-    right: 25%;
+  .order-xl-last {
+    order: 6 !important;
   }
 
-  .col-md-pull-2 {
-    right: 16.66666667%;
+  .m-xl-0 {
+    margin: 0 !important;
   }
 
-  .col-md-pull-1 {
-    right: 8.33333333%;
+  .m-xl-1 {
+    margin: 0.25rem !important;
   }
 
-  .col-md-pull-0 {
-    right: auto;
+  .m-xl-2 {
+    margin: 0.5rem !important;
   }
 
-  .col-md-push-12 {
-    left: 100%;
+  .m-xl-3 {
+    margin: 1rem !important;
   }
 
-  .col-md-push-11 {
-    left: 91.66666667%;
+  .m-xl-4 {
+    margin: 1.5rem !important;
   }
 
-  .col-md-push-10 {
-    left: 83.33333333%;
+  .m-xl-5 {
+    margin: 3rem !important;
   }
 
-  .col-md-push-9 {
-    left: 75%;
+  .m-xl-auto {
+    margin: auto !important;
   }
 
-  .col-md-push-8 {
-    left: 66.66666667%;
+  .mx-xl-0 {
+    margin-right: 0 !important;
+    margin-left: 0 !important;
   }
 
-  .col-md-push-7 {
-    left: 58.33333333%;
+  .mx-xl-1 {
+    margin-right: 0.25rem !important;
+    margin-left: 0.25rem !important;
   }
 
-  .col-md-push-6 {
-    left: 50%;
+  .mx-xl-2 {
+    margin-right: 0.5rem !important;
+    margin-left: 0.5rem !important;
   }
 
-  .col-md-push-5 {
-    left: 41.66666667%;
+  .mx-xl-3 {
+    margin-right: 1rem !important;
+    margin-left: 1rem !important;
   }
 
-  .col-md-push-4 {
-    left: 33.33333333%;
+  .mx-xl-4 {
+    margin-right: 1.5rem !important;
+    margin-left: 1.5rem !important;
   }
 
-  .col-md-push-3 {
-    left: 25%;
+  .mx-xl-5 {
+    margin-right: 3rem !important;
+    margin-left: 3rem !important;
   }
 
-  .col-md-push-2 {
-    left: 16.66666667%;
+  .mx-xl-auto {
+    margin-right: auto !important;
+    margin-left: auto !important;
   }
 
-  .col-md-push-1 {
-    left: 8.33333333%;
+  .my-xl-0 {
+    margin-top: 0 !important;
+    margin-bottom: 0 !important;
   }
 
-  .col-md-push-0 {
-    left: auto;
+  .my-xl-1 {
+    margin-top: 0.25rem !important;
+    margin-bottom: 0.25rem !important;
   }
 
-  .col-md-offset-12 {
-    margin-left: 100%;
+  .my-xl-2 {
+    margin-top: 0.5rem !important;
+    margin-bottom: 0.5rem !important;
   }
 
-  .col-md-offset-11 {
-    margin-left: 91.66666667%;
+  .my-xl-3 {
+    margin-top: 1rem !important;
+    margin-bottom: 1rem !important;
   }
 
-  .col-md-offset-10 {
-    margin-left: 83.33333333%;
+  .my-xl-4 {
+    margin-top: 1.5rem !important;
+    margin-bottom: 1.5rem !important;
   }
 
-  .col-md-offset-9 {
-    margin-left: 75%;
+  .my-xl-5 {
+    margin-top: 3rem !important;
+    margin-bottom: 3rem !important;
   }
 
-  .col-md-offset-8 {
-    margin-left: 66.66666667%;
+  .my-xl-auto {
+    margin-top: auto !important;
+    margin-bottom: auto !important;
   }
 
-  .col-md-offset-7 {
-    margin-left: 58.33333333%;
+  .mt-xl-0 {
+    margin-top: 0 !important;
   }
 
-  .col-md-offset-6 {
-    margin-left: 50%;
+  .mt-xl-1 {
+    margin-top: 0.25rem !important;
   }
 
-  .col-md-offset-5 {
-    margin-left: 41.66666667%;
+  .mt-xl-2 {
+    margin-top: 0.5rem !important;
   }
 
-  .col-md-offset-4 {
-    margin-left: 33.33333333%;
+  .mt-xl-3 {
+    margin-top: 1rem !important;
   }
 
-  .col-md-offset-3 {
-    margin-left: 25%;
+  .mt-xl-4 {
+    margin-top: 1.5rem !important;
   }
 
-  .col-md-offset-2 {
-    margin-left: 16.66666667%;
+  .mt-xl-5 {
+    margin-top: 3rem !important;
   }
 
-  .col-md-offset-1 {
-    margin-left: 8.33333333%;
+  .mt-xl-auto {
+    margin-top: auto !important;
   }
 
-  .col-md-offset-0 {
-    margin-left: 0%;
+  .mr-xl-0 {
+    margin-right: 0 !important;
   }
-}
 
-@media (min-width: 1200px) {
+  .mr-xl-1 {
+    margin-right: 0.25rem !important;
+  }
 
-  .col-lg-1,
-  .col-lg-2,
-  .col-lg-3,
-  .col-lg-4,
-  .col-lg-5,
-  .col-lg-6,
-  .col-lg-7,
-  .col-lg-8,
-  .col-lg-9,
-  .col-lg-10,
-  .col-lg-11,
-  .col-lg-12 {
-    float: left;
+  .mr-xl-2 {
+    margin-right: 0.5rem !important;
   }
 
-  .col-lg-12 {
-    width: 100%;
+  .mr-xl-3 {
+    margin-right: 1rem !important;
   }
 
-  .col-lg-11 {
-    width: 91.66666667%;
+  .mr-xl-4 {
+    margin-right: 1.5rem !important;
   }
 
-  .col-lg-10 {
-    width: 83.33333333%;
+  .mr-xl-5 {
+    margin-right: 3rem !important;
   }
 
-  .col-lg-9 {
-    width: 75%;
+  .mr-xl-auto {
+    margin-right: auto !important;
   }
 
-  .col-lg-8 {
-    width: 66.66666667%;
+  .mb-xl-0 {
+    margin-bottom: 0 !important;
   }
 
-  .col-lg-7 {
-    width: 58.33333333%;
+  .mb-xl-1 {
+    margin-bottom: 0.25rem !important;
   }
 
-  .col-lg-6 {
-    width: 50%;
+  .mb-xl-2 {
+    margin-bottom: 0.5rem !important;
   }
 
-  .col-lg-5 {
-    width: 41.66666667%;
+  .mb-xl-3 {
+    margin-bottom: 1rem !important;
   }
 
-  .col-lg-4 {
-    width: 33.33333333%;
+  .mb-xl-4 {
+    margin-bottom: 1.5rem !important;
   }
 
-  .col-lg-3 {
-    width: 25%;
+  .mb-xl-5 {
+    margin-bottom: 3rem !important;
   }
 
-  .col-lg-2 {
-    width: 16.66666667%;
+  .mb-xl-auto {
+    margin-bottom: auto !important;
   }
 
-  .col-lg-1 {
-    width: 8.33333333%;
+  .ml-xl-0 {
+    margin-left: 0 !important;
   }
 
-  .col-lg-pull-12 {
-    right: 100%;
+  .ml-xl-1 {
+    margin-left: 0.25rem !important;
   }
 
-  .col-lg-pull-11 {
-    right: 91.66666667%;
+  .ml-xl-2 {
+    margin-left: 0.5rem !important;
   }
 
-  .col-lg-pull-10 {
-    right: 83.33333333%;
+  .ml-xl-3 {
+    margin-left: 1rem !important;
   }
 
-  .col-lg-pull-9 {
-    right: 75%;
+  .ml-xl-4 {
+    margin-left: 1.5rem !important;
   }
 
-  .col-lg-pull-8 {
-    right: 66.66666667%;
+  .ml-xl-5 {
+    margin-left: 3rem !important;
   }
 
-  .col-lg-pull-7 {
-    right: 58.33333333%;
+  .ml-xl-auto {
+    margin-left: auto !important;
   }
 
-  .col-lg-pull-6 {
-    right: 50%;
+  .m-xl-n1 {
+    margin: -0.25rem !important;
   }
 
-  .col-lg-pull-5 {
-    right: 41.66666667%;
+  .m-xl-n2 {
+    margin: -0.5rem !important;
   }
 
-  .col-lg-pull-4 {
-    right: 33.33333333%;
+  .m-xl-n3 {
+    margin: -1rem !important;
   }
 
-  .col-lg-pull-3 {
-    right: 25%;
+  .m-xl-n4 {
+    margin: -1.5rem !important;
   }
 
-  .col-lg-pull-2 {
-    right: 16.66666667%;
+  .m-xl-n5 {
+    margin: -3rem !important;
   }
 
-  .col-lg-pull-1 {
-    right: 8.33333333%;
+  .mx-xl-n1 {
+    margin-right: -0.25rem !important;
+    margin-left: -0.25rem !important;
   }
 
-  .col-lg-pull-0 {
-    right: auto;
+  .mx-xl-n2 {
+    margin-right: -0.5rem !important;
+    margin-left: -0.5rem !important;
   }
 
-  .col-lg-push-12 {
-    left: 100%;
+  .mx-xl-n3 {
+    margin-right: -1rem !important;
+    margin-left: -1rem !important;
   }
 
-  .col-lg-push-11 {
-    left: 91.66666667%;
+  .mx-xl-n4 {
+    margin-right: -1.5rem !important;
+    margin-left: -1.5rem !important;
   }
 
-  .col-lg-push-10 {
-    left: 83.33333333%;
+  .mx-xl-n5 {
+    margin-right: -3rem !important;
+    margin-left: -3rem !important;
   }
 
-  .col-lg-push-9 {
-    left: 75%;
+  .my-xl-n1 {
+    margin-top: -0.25rem !important;
+    margin-bottom: -0.25rem !important;
   }
 
-  .col-lg-push-8 {
-    left: 66.66666667%;
+  .my-xl-n2 {
+    margin-top: -0.5rem !important;
+    margin-bottom: -0.5rem !important;
   }
 
-  .col-lg-push-7 {
-    left: 58.33333333%;
+  .my-xl-n3 {
+    margin-top: -1rem !important;
+    margin-bottom: -1rem !important;
   }
 
-  .col-lg-push-6 {
-    left: 50%;
+  .my-xl-n4 {
+    margin-top: -1.5rem !important;
+    margin-bottom: -1.5rem !important;
   }
 
-  .col-lg-push-5 {
-    left: 41.66666667%;
+  .my-xl-n5 {
+    margin-top: -3rem !important;
+    margin-bottom: -3rem !important;
   }
 
-  .col-lg-push-4 {
-    left: 33.33333333%;
+  .mt-xl-n1 {
+    margin-top: -0.25rem !important;
   }
 
-  .col-lg-push-3 {
-    left: 25%;
+  .mt-xl-n2 {
+    margin-top: -0.5rem !important;
   }
 
-  .col-lg-push-2 {
-    left: 16.66666667%;
+  .mt-xl-n3 {
+    margin-top: -1rem !important;
   }
 
-  .col-lg-push-1 {
-    left: 8.33333333%;
+  .mt-xl-n4 {
+    margin-top: -1.5rem !important;
   }
 
-  .col-lg-push-0 {
-    left: auto;
+  .mt-xl-n5 {
+    margin-top: -3rem !important;
   }
 
-  .col-lg-offset-12 {
-    margin-left: 100%;
+  .mr-xl-n1 {
+    margin-right: -0.25rem !important;
   }
 
-  .col-lg-offset-11 {
-    margin-left: 91.66666667%;
+  .mr-xl-n2 {
+    margin-right: -0.5rem !important;
   }
 
-  .col-lg-offset-10 {
-    margin-left: 83.33333333%;
+  .mr-xl-n3 {
+    margin-right: -1rem !important;
   }
 
-  .col-lg-offset-9 {
-    margin-left: 75%;
+  .mr-xl-n4 {
+    margin-right: -1.5rem !important;
   }
 
-  .col-lg-offset-8 {
-    margin-left: 66.66666667%;
+  .mr-xl-n5 {
+    margin-right: -3rem !important;
   }
 
-  .col-lg-offset-7 {
-    margin-left: 58.33333333%;
+  .mb-xl-n1 {
+    margin-bottom: -0.25rem !important;
   }
 
-  .col-lg-offset-6 {
-    margin-left: 50%;
+  .mb-xl-n2 {
+    margin-bottom: -0.5rem !important;
   }
 
-  .col-lg-offset-5 {
-    margin-left: 41.66666667%;
+  .mb-xl-n3 {
+    margin-bottom: -1rem !important;
   }
 
-  .col-lg-offset-4 {
-    margin-left: 33.33333333%;
+  .mb-xl-n4 {
+    margin-bottom: -1.5rem !important;
   }
 
-  .col-lg-offset-3 {
-    margin-left: 25%;
+  .mb-xl-n5 {
+    margin-bottom: -3rem !important;
   }
 
-  .col-lg-offset-2 {
-    margin-left: 16.66666667%;
+  .ml-xl-n1 {
+    margin-left: -0.25rem !important;
   }
 
-  .col-lg-offset-1 {
-    margin-left: 8.33333333%;
+  .ml-xl-n2 {
+    margin-left: -0.5rem !important;
   }
 
-  .col-lg-offset-0 {
-    margin-left: 0%;
+  .ml-xl-n3 {
+    margin-left: -1rem !important;
   }
-}
 
-.clearfix:before,
-.clearfix:after,
-.container:before,
-.container:after,
-.container-fluid:before,
-.container-fluid:after,
-.row:before,
-.row:after {
-  content: " ";
-  display: table;
-}
+  .ml-xl-n4 {
+    margin-left: -1.5rem !important;
+  }
 
-.clearfix:after,
-.container:after,
-.container-fluid:after,
-.row:after {
-  clear: both;
-}
+  .ml-xl-n5 {
+    margin-left: -3rem !important;
+  }
 
-.center-block {
-  display: block;
-  margin-left: auto;
-  margin-right: auto;
-}
+  .p-xl-0 {
+    padding: 0 !important;
+  }
 
-.pull-right {
-  float: right !important;
-}
+  .p-xl-1 {
+    padding: 0.25rem !important;
+  }
 
-.pull-left {
-  float: left !important;
-}
+  .p-xl-2 {
+    padding: 0.5rem !important;
+  }
 
-.hide {
-  display: none !important;
-}
+  .p-xl-3 {
+    padding: 1rem !important;
+  }
 
-.show {
-  display: block !important;
-}
+  .p-xl-4 {
+    padding: 1.5rem !important;
+  }
 
-.invisible {
-  visibility: hidden;
-}
+  .p-xl-5 {
+    padding: 3rem !important;
+  }
 
-.text-hide {
-  font: 0/0 a;
-  color: transparent;
-  text-shadow: none;
-  background-color: transparent;
-  border: 0;
-}
+  .px-xl-0 {
+    padding-right: 0 !important;
+    padding-left: 0 !important;
+  }
 
-.hidden {
-  display: none !important;
-}
+  .px-xl-1 {
+    padding-right: 0.25rem !important;
+    padding-left: 0.25rem !important;
+  }
 
-.affix {
-  position: fixed;
-}
+  .px-xl-2 {
+    padding-right: 0.5rem !important;
+    padding-left: 0.5rem !important;
+  }
 
-@-ms-viewport {
-  width: device-width;
-}
+  .px-xl-3 {
+    padding-right: 1rem !important;
+    padding-left: 1rem !important;
+  }
 
-.visible-xs,
-.visible-sm,
-.visible-md,
-.visible-lg {
-  display: none !important;
-}
+  .px-xl-4 {
+    padding-right: 1.5rem !important;
+    padding-left: 1.5rem !important;
+  }
 
-.visible-xs-block,
-.visible-xs-inline,
-.visible-xs-inline-block,
-.visible-sm-block,
-.visible-sm-inline,
-.visible-sm-inline-block,
-.visible-md-block,
-.visible-md-inline,
-.visible-md-inline-block,
-.visible-lg-block,
-.visible-lg-inline,
-.visible-lg-inline-block {
-  display: none !important;
-}
+  .px-xl-5 {
+    padding-right: 3rem !important;
+    padding-left: 3rem !important;
+  }
 
-@media (max-width: 767px) {
-  .visible-xs {
-    display: block !important;
+  .py-xl-0 {
+    padding-top: 0 !important;
+    padding-bottom: 0 !important;
   }
 
-  table.visible-xs {
-    display: table !important;
+  .py-xl-1 {
+    padding-top: 0.25rem !important;
+    padding-bottom: 0.25rem !important;
   }
 
-  tr.visible-xs {
-    display: table-row !important;
+  .py-xl-2 {
+    padding-top: 0.5rem !important;
+    padding-bottom: 0.5rem !important;
   }
 
-  th.visible-xs,
-  td.visible-xs {
-    display: table-cell !important;
+  .py-xl-3 {
+    padding-top: 1rem !important;
+    padding-bottom: 1rem !important;
   }
-}
 
-@media (max-width: 767px) {
-  .visible-xs-block {
-    display: block !important;
+  .py-xl-4 {
+    padding-top: 1.5rem !important;
+    padding-bottom: 1.5rem !important;
   }
-}
 
-@media (max-width: 767px) {
-  .visible-xs-inline {
-    display: inline !important;
+  .py-xl-5 {
+    padding-top: 3rem !important;
+    padding-bottom: 3rem !important;
   }
-}
 
-@media (max-width: 767px) {
-  .visible-xs-inline-block {
-    display: inline-block !important;
+  .pt-xl-0 {
+    padding-top: 0 !important;
   }
-}
 
-@media (min-width: 768px) and (max-width: 991px) {
-  .visible-sm {
-    display: block !important;
+  .pt-xl-1 {
+    padding-top: 0.25rem !important;
   }
 
-  table.visible-sm {
-    display: table !important;
+  .pt-xl-2 {
+    padding-top: 0.5rem !important;
   }
 
-  tr.visible-sm {
-    display: table-row !important;
+  .pt-xl-3 {
+    padding-top: 1rem !important;
   }
 
-  th.visible-sm,
-  td.visible-sm {
-    display: table-cell !important;
+  .pt-xl-4 {
+    padding-top: 1.5rem !important;
   }
-}
 
-@media (min-width: 768px) and (max-width: 991px) {
-  .visible-sm-block {
-    display: block !important;
+  .pt-xl-5 {
+    padding-top: 3rem !important;
   }
-}
 
-@media (min-width: 768px) and (max-width: 991px) {
-  .visible-sm-inline {
-    display: inline !important;
+  .pr-xl-0 {
+    padding-right: 0 !important;
   }
-}
 
-@media (min-width: 768px) and (max-width: 991px) {
-  .visible-sm-inline-block {
-    display: inline-block !important;
+  .pr-xl-1 {
+    padding-right: 0.25rem !important;
   }
-}
 
-@media (min-width: 992px) and (max-width: 1199px) {
-  .visible-md {
-    display: block !important;
+  .pr-xl-2 {
+    padding-right: 0.5rem !important;
   }
 
-  table.visible-md {
-    display: table !important;
+  .pr-xl-3 {
+    padding-right: 1rem !important;
   }
 
-  tr.visible-md {
-    display: table-row !important;
+  .pr-xl-4 {
+    padding-right: 1.5rem !important;
   }
 
-  th.visible-md,
-  td.visible-md {
-    display: table-cell !important;
+  .pr-xl-5 {
+    padding-right: 3rem !important;
   }
-}
 
-@media (min-width: 992px) and (max-width: 1199px) {
-  .visible-md-block {
-    display: block !important;
+  .pb-xl-0 {
+    padding-bottom: 0 !important;
   }
-}
 
-@media (min-width: 992px) and (max-width: 1199px) {
-  .visible-md-inline {
-    display: inline !important;
+  .pb-xl-1 {
+    padding-bottom: 0.25rem !important;
   }
-}
 
-@media (min-width: 992px) and (max-width: 1199px) {
-  .visible-md-inline-block {
-    display: inline-block !important;
+  .pb-xl-2 {
+    padding-bottom: 0.5rem !important;
   }
-}
 
-@media (min-width: 1200px) {
-  .visible-lg {
-    display: block !important;
+  .pb-xl-3 {
+    padding-bottom: 1rem !important;
   }
 
-  table.visible-lg {
-    display: table !important;
+  .pb-xl-4 {
+    padding-bottom: 1.5rem !important;
   }
 
-  tr.visible-lg {
-    display: table-row !important;
+  .pb-xl-5 {
+    padding-bottom: 3rem !important;
   }
 
-  th.visible-lg,
-  td.visible-lg {
-    display: table-cell !important;
+  .pl-xl-0 {
+    padding-left: 0 !important;
   }
-}
 
-@media (min-width: 1200px) {
-  .visible-lg-block {
-    display: block !important;
+  .pl-xl-1 {
+    padding-left: 0.25rem !important;
   }
-}
 
-@media (min-width: 1200px) {
-  .visible-lg-inline {
-    display: inline !important;
+  .pl-xl-2 {
+    padding-left: 0.5rem !important;
   }
-}
 
-@media (min-width: 1200px) {
-  .visible-lg-inline-block {
-    display: inline-block !important;
+  .pl-xl-3 {
+    padding-left: 1rem !important;
   }
-}
 
-@media (max-width: 767px) {
-  .hidden-xs {
-    display: none !important;
+  .pl-xl-4 {
+    padding-left: 1.5rem !important;
   }
-}
 
-@media (min-width: 768px) and (max-width: 991px) {
-  .hidden-sm {
-    display: none !important;
+  .pl-xl-5 {
+    padding-left: 3rem !important;
   }
 }
 
-@media (min-width: 992px) and (max-width: 1199px) {
-  .hidden-md {
+@media print {
+  .d-print-none {
     display: none !important;
   }
-}
 
-@media (min-width: 1200px) {
-  .hidden-lg {
-    display: none !important;
+  .d-print-inline {
+    display: inline !important;
   }
-}
 
-.visible-print {
-  display: none !important;
-}
+  .d-print-inline-block {
+    display: inline-block !important;
+  }
 
-@media print {
-  .visible-print {
+  .d-print-block {
     display: block !important;
   }
 
-  table.visible-print {
+  .d-print-table {
     display: table !important;
   }
 
-  tr.visible-print {
+  .d-print-table-row {
     display: table-row !important;
   }
 
-  th.visible-print,
-  td.visible-print {
+  .d-print-table-cell {
     display: table-cell !important;
   }
-}
-
-.visible-print-block {
-  display: none !important;
-}
-
-@media print {
-  .visible-print-block {
-    display: block !important;
-  }
-}
-
-.visible-print-inline {
-  display: none !important;
-}
 
-@media print {
-  .visible-print-inline {
-    display: inline !important;
+  .d-print-flex {
+    display: flex !important;
   }
-}
-
-.visible-print-inline-block {
-  display: none !important;
-}
 
-@media print {
-  .visible-print-inline-block {
-    display: inline-block !important;
+  .d-print-inline-flex {
+    display: inline-flex !important;
   }
 }
 
-@media print {
-  .hidden-print {
-    display: none !important;
-  }
-}
+/*# sourceMappingURL=bootstrap-grid.css.map */