/*  --------------------------------------------------------------------------------------[ FONTS ] */

@font-face {
	font-family: 'San Francisco Web';
	src: url('fonts/san_francisco-webfont.woff2') format('woff2'),
	url('fonts/san_francisco-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

.custom-font-sf-web { font-family: 'San Francisco Web'; }

@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-thin.otf') format('opentype'); font-weight: 100; font-style: normal; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-thinitalic.otf') format('opentype'); font-weight: 100; font-style: italic; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-ultralight.otf') format('opentype'); font-weight: 200; font-style: normal; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-ultralightitalic.otf') format('opentype'); font-weight: 200; font-style: italic; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-light.otf') format('opentype'); font-weight: 300; font-style: normal; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-lightitalic.otf') format('opentype'); font-weight: 300; font-style: italic; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-regular.otf') format('opentype'); font-weight: 400; font-style: normal; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-regularitalic.otf') format('opentype'); font-weight: 400; font-style: italic; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-medium.otf') format('opentype'); font-weight: 500; font-style: normal; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-mediumitalic.otf') format('opentype'); font-weight: 500; font-style: italic; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-semibold.otf') format('opentype'); font-weight: 600; font-style: normal; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-semibolditalic.otf') format('opentype'); font-weight: 600; font-style: italic; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-bold.otf') format('opentype'); font-weight: 700; font-style: normal; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-bolditalic.otf') format('opentype'); font-weight: 700; font-style: italic; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-heavy.otf') format('opentype'); font-weight: 800; font-style: normal; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-heavyitalic.otf') format('opentype'); font-weight: 800; font-style: italic; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-black.otf') format('opentype'); font-weight: 900; font-style: normal; }
@font-face { font-family: 'SF Pro Display'; src: url('fonts/sf-pro-display-blackitalic.otf') format('opentype'); font-weight: 900; font-style: italic; }

.custom-font-sf-pro-display { font-family: 'SF Pro Display'; }

@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-light.otf') format('opentype'); font-weight: 300; font-style: normal; }
@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-lightitalic.otf') format('opentype'); font-weight: 300; font-style: italic; }
@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-regular.otf') format('opentype'); font-weight: 400; font-style: normal; }
@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-regularitalic.otf') format('opentype'); font-weight: 400; font-style: italic; }
@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-medium.otf') format('opentype'); font-weight: 500; font-style: normal; }
@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-mediumitalic.otf') format('opentype'); font-weight: 500; font-style: italic; }
@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-semibold.otf') format('opentype'); font-weight: 600; font-style: normal; }
@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-semibolditalic.otf') format('opentype'); font-weight: 600; font-style: italic; }
@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-bold.otf') format('opentype'); font-weight: 700; font-style: normal; }
@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-bolditalic.otf') format('opentype'); font-weight: 700; font-style: italic; }
@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-heavy.otf') format('opentype'); font-weight: 800; font-style: normal; }
@font-face { font-family: 'SF Pro Text'; src: url('fonts/sf-pro-text-heavyitalic.otf') format('opentype'); font-weight: 800; font-style: italic; }

.custom-font-sf-pro-text { font-family: 'SF Pro Text'; }

@font-face { font-family: 'SFNS Display'; src: url('fonts/sfnsdisplay-thin.otf') format('opentype'); font-weight: 100; font-style: normal; }
@font-face { font-family: 'SFNS Display'; src: url('fonts/sfnsdisplay-ultralight.otf') format('opentype'); font-weight: 200; font-style: normal; }
@font-face { font-family: 'SFNS Display'; src: url('fonts/sfnsdisplay-light.otf') format('opentype'); font-weight: 300; font-style: normal; }
@font-face { font-family: 'SFNS Display'; src: url('fonts/sfnsdisplay-regular.otf') format('opentype'); font-weight: 400; font-style: normal; }
@font-face { font-family: 'SFNS Display'; src: url('fonts/sfnsdisplay-medium.otf') format('opentype'); font-weight: 500; font-style: normal; }
@font-face { font-family: 'SFNS Display'; src: url('fonts/sfnsdisplay-semibold.otf') format('opentype'); font-weight: 600; font-style: normal; }
@font-face { font-family: 'SFNS Display'; src: url('fonts/sfnsdisplay-bold.otf') format('opentype'); font-weight: 700; font-style: normal; }
@font-face { font-family: 'SFNS Display'; src: url('fonts/sfnsdisplay-heavy.otf') format('opentype'); font-weight: 800; font-style: normal; }
@font-face { font-family: 'SFNS Display'; src: url('fonts/sfnsdisplay-black.otf') format('opentype'); font-weight: 900; font-style: normal; }

.custom-font-sfns-display { font-family: 'SFNS Display'; }

@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-light.otf') format('opentype'); font-weight: 300; font-style: normal; }
@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-lightitalic.otf') format('opentype'); font-weight: 300; font-style: italic; }

@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-regular.otf') format('opentype'), url('fonts/sfnstext-regularg1.otf') format('opentype'), url('fonts/sfnstext-regularg2.otf') format('opentype'), url('fonts/sfnstext-regularg3.otf') format('opentype'); font-weight: 400; font-style: normal; }
@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-regularitalic.otf') format('opentype'), url('fonts/sfnstext-regularitalicg1.otf') format('opentype'), url('fonts/sfnstext-regularitalicg2.otf') format('opentype'), url('fonts/sfnstext-regularitalicg3.otf') format('opentype'); font-weight: 400; font-style: italic; }

@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-medium.otf') format('opentype'); font-weight: 500; font-style: normal; }
@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-mediumitalic.otf') format('opentype'); font-weight: 500; font-style: italic; }
@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-semibold.otf') format('opentype'); font-weight: 600; font-style: normal; }
@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-semibolditalic.otf') format('opentype'); font-weight: 600; font-style: italic; }

@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-bold.otf') format('opentype'), url('fonts/sfnstext-boldg1.otf') format('opentype'), url('fonts/sfnstext-boldg2.otf') format('opentype'), url('fonts/sfnstext-boldg3.otf') format('opentype'); font-weight: 700; font-style: normal; }
@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-bolditalic.otf') format('opentype'), url('fonts/sfnstext-bolditalicg1.otf') format('opentype'), url('fonts/sfnstext-bolditalicg2.otf') format('opentype'), url('fonts/sfnstext-bolditalicg3.otf') format('opentype'); font-weight: 700; font-style: italic; }

@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-heavy.otf') format('opentype'); font-weight: 800; font-style: normal; }
@font-face { font-family: 'SFNS Text'; src: url('fonts/sfnstext-heavyitalic.otf') format('opentype'); font-weight: 800; font-style: italic; }

.custom-font-sfns-text { font-family: 'SFNS Text'; }

@font-face { font-family: 'SF UI Display'; src: url('fonts/sfuidisplay-thin.otf') format('opentype'); font-weight: 100; font-style: normal; }
@font-face { font-family: 'SF UI Display'; src: url('fonts/sfuidisplay-ultralight.otf') format('opentype'); font-weight: 200; font-style: normal; }
@font-face { font-family: 'SF UI Display'; src: url('fonts/sfuidisplay-light.ttf') format('truetype'); font-weight: 300; font-style: normal; }
@font-face { font-family: 'SF UI Display'; src: url('fonts/sfuidisplay-regular.otf') format('opentype'); font-weight: 400; font-style: normal; }
@font-face { font-family: 'SF UI Display'; src: url('fonts/sfuidisplay-medium.otf') format('opentype'); font-weight: 500; font-style: normal; }
@font-face { font-family: 'SF UI Display'; src: url('fonts/sfuidisplay-semibold.otf') format('opentype'); font-weight: 600; font-style: normal; }
@font-face { font-family: 'SF UI Display'; src: url('fonts/sfuidisplay-bold.ttf') format('truetype'); font-weight: 700; font-style: normal; }
@font-face { font-family: 'SF UI Display'; src: url('fonts/sfuidisplay-heavy.otf') format('opentype'); font-weight: 800; font-style: normal; }
@font-face { font-family: 'SF UI Display'; src: url('fonts/sfuidisplay-black.otf') format('opentype'); font-weight: 900; font-style: normal; }

.custom-font-sf-ui-display { font-family: 'SF UI Display'; }

@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-light.otf') format('opentype'); font-weight: 300; font-style: normal; }
@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-lightitalic.otf') format('opentype'); font-weight: 300; font-style: italic; }

@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-regular.otf') format('opentype'), url('fonts/sfuitext-regularg1.otf') format('opentype'), url('fonts/sfuitext-regularg2.otf') format('opentype'), url('fonts/sfuitext-regularg3.otf') format('opentype'); font-weight: 400; font-style: normal; }
@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-italic.otf') format('opentype'), url('fonts/sfuitext-italicg1.otf') format('opentype'), url('fonts/sfuitext-italicg2.otf') format('opentype'), url('fonts/sfuitext-italicg3.otf') format('opentype'); font-weight: 400; font-style: italic; }

@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-medium.otf') format('opentype'); font-weight: 500; font-style: normal; }
@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-mediumitalic.otf') format('opentype'); font-weight: 500; font-style: italic; }
@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-semibold.otf') format('opentype'); font-weight: 600; font-style: normal; }
@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-semibolditalic.otf') format('opentype'); font-weight: 600; font-style: italic; }

@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-bold.otf') format('opentype'), url('fonts/sfuitext-boldg1.otf') format('opentype'), url('fonts/sfuitext-boldg2.otf') format('opentype'), url('fonts/sfuitext-boldg3.otf') format('opentype'); font-weight: 700; font-style: normal; }
@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-bolditalicg1.otf') format('opentype'), url('fonts/sfuitext-bolditalicg2.otf') format('opentype'), url('fonts/sfuitext-bolditalicg3.otf') format('opentype'); font-weight: 700; font-style: italic; }

@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-heavy.otf') format('opentype'); font-weight: 800; font-style: normal; }
@font-face { font-family: 'SF UI Text'; src: url('fonts/sfuitext-heavyitalic.otf') format('opentype'); font-weight: 800; font-style: italic; }

.custom-font-sf-ui-text { font-family: 'SF UI Text'; }

/* ==========================================================================
   CLASSES UTILITÁRIAS DE PESO DE FONTE (FONT WEIGHT)
   ========================================================================== */

   .fw-thin {
   	font-weight: 100 !important;
   }

   .fw-ultralight {
   	font-weight: 200 !important;
   }

   .fw-light {
   	font-weight: 300 !important;
   }

   .fw-regular {
   	font-weight: 400 !important;
   }

   .fw-medium {
   	font-weight: 500 !important;
   }

   .fw-semibold {
   	font-weight: 600 !important;
   }

   .fw-bold {
   	font-weight: 700 !important;
   }

   .fw-heavy {
   	font-weight: 800 !important;
   }

   .fw-black {
   	font-weight: 900 !important;
   }

/* ==========================================================================
   CLASSES UTILITÁRIAS DE ESTILO DE FONTE (FONT STYLE)
   ========================================================================== */

   .fst-normal {
   	font-style: normal !important;
   }

   .fst-italic {
   	font-style: italic !important;
   }