/* ============================================
   AEONIK FONT FAMILY (For Headings)
   ============================================ */

/* Aeonik Thin */
@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-Thin.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-Thin.woff') format('woff');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-ThinItalic.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-ThinItalic.woff') format('woff');
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}

/* Aeonik Air */
@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-Air.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-Air.woff') format('woff');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-AirItalic.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-AirItalic.woff') format('woff');
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}

/* Aeonik Light */
@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-Light.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-LightItalic.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-LightItalic.woff') format('woff');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

/* Aeonik Regular */
@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-Regular.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-RegularItalic.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-RegularItalic.woff') format('woff');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

/* Aeonik Medium */
@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-Medium.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-MediumItalic.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-MediumItalic.woff') format('woff');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

/* Aeonik Bold */
@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-Bold.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-BoldItalic.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-BoldItalic.woff') format('woff');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

/* Aeonik Black */
@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-Black.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-Black.woff') format('woff');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aeonik';
  src: url('fonts/aeonik/Aeonik-BlackItalic.woff2') format('woff2'),
       url('fonts/aeonik/Aeonik-BlackItalic.woff') format('woff');
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

/* ============================================
   TT COMMONS PRO FONT FAMILY (For Body Text)
   ============================================ */

/* TT Commons Pro ExtraLight */
@font-face {
  font-family: 'TT Commons Pro';
  src: url('fonts/tt-commons/woff2/TT_Commons_Pro_ExtraLight.woff2') format('woff2'),
       url('fonts/tt-commons/woff/TT_Commons_Pro_ExtraLight.woff') format('woff');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

/* TT Commons Pro Light */
@font-face {
  font-family: 'TT Commons Pro';
  src: url('fonts/tt-commons/woff2/TT_Commons_Pro_Light.woff2') format('woff2'),
       url('fonts/tt-commons/woff/TT_Commons_Pro_Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TT Commons Pro';
  src: url('fonts/tt-commons/woff2/TT_Commons_Pro_Light_Italic.woff2') format('woff2'),
       url('fonts/tt-commons/woff/TT_Commons_Pro_Light_Italic.woff') format('woff');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

/* TT Commons Pro Regular */
@font-face {
  font-family: 'TT Commons Pro';
  src: url('fonts/tt-commons/woff2/TT_Commons_Pro_Regular.woff2') format('woff2'),
       url('fonts/tt-commons/woff/TT_Commons_Pro_Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TT Commons Pro';
  src: url('fonts/tt-commons/woff2/TT_Commons_Pro_Italic.woff2') format('woff2'),
       url('fonts/tt-commons/woff/TT_Commons_Pro_Italic.woff') format('woff');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

/* TT Commons Pro Bold */
@font-face {
  font-family: 'TT Commons Pro';
  src: url('fonts/tt-commons/woff2/TT_Commons_Pro_Bold.woff2') format('woff2'),
       url('fonts/tt-commons/woff/TT_Commons_Pro_Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TT Commons Pro';
  src: url('fonts/tt-commons/woff2/TT_Commons_Pro_Bold_Italic.woff2') format('woff2'),
       url('fonts/tt-commons/woff/TT_Commons_Pro_Bold_Italic.woff') format('woff');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

/* ============================================
   BASE TYPOGRAPHY STYLES
   ============================================ */

/* Headings use Aeonik */
h1, h2, h3, h4, h5, h6 {
  font-family: Aeonik, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
}

/* Body text uses TT Commons Pro */
body, p, span, a, li, td, th, label, input, textarea, select, button {
  font-family: "TT Commons Pro", system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
}

/* ============================================
   HEADING UTILITY CLASSES
   ============================================ */

/* H1 Variants */
.h1-thin { font-family: Aeonik, sans-serif; font-weight: 100; }
.h1-air { font-family: Aeonik, sans-serif; font-weight: 200; }
.h1-light { font-family: Aeonik, sans-serif; font-weight: 300; }
.h1-regular { font-family: Aeonik, sans-serif; font-weight: 400; }
.h1-medium { font-family: Aeonik, sans-serif; font-weight: 500; }
.h1-bold { font-family: Aeonik, sans-serif; font-weight: 700; }
.h1-black { font-family: Aeonik, sans-serif; font-weight: 900; }

/* H2 Variants */
.h2-thin { font-family: Aeonik, sans-serif; font-weight: 100; }
.h2-air { font-family: Aeonik, sans-serif; font-weight: 200; }
.h2-light { font-family: Aeonik, sans-serif; font-weight: 300; }
.h2-regular { font-family: Aeonik, sans-serif; font-weight: 400; }
.h2-medium { font-family: Aeonik, sans-serif; font-weight: 500; }
.h2-bold { font-family: Aeonik, sans-serif; font-weight: 700; }
.h2-black { font-family: Aeonik, sans-serif; font-weight: 900; }

/* H3 Variants */
.h3-thin { font-family: Aeonik, sans-serif; font-weight: 100; }
.h3-air { font-family: Aeonik, sans-serif; font-weight: 200; }
.h3-light { font-family: Aeonik, sans-serif; font-weight: 300; }
.h3-regular { font-family: Aeonik, sans-serif; font-weight: 400; }
.h3-medium { font-family: Aeonik, sans-serif; font-weight: 500; }
.h3-bold { font-family: Aeonik, sans-serif; font-weight: 700; }
.h3-black { font-family: Aeonik, sans-serif; font-weight: 900; }

/* H4 Variants */
.h4-thin { font-family: Aeonik, sans-serif; font-weight: 100; }
.h4-air { font-family: Aeonik, sans-serif; font-weight: 200; }
.h4-light { font-family: Aeonik, sans-serif; font-weight: 300; }
.h4-regular { font-family: Aeonik, sans-serif; font-weight: 400; }
.h4-medium { font-family: Aeonik, sans-serif; font-weight: 500; }
.h4-bold { font-family: Aeonik, sans-serif; font-weight: 700; }
.h4-black { font-family: Aeonik, sans-serif; font-weight: 900; }

/* H5 Variants */
.h5-thin { font-family: Aeonik, sans-serif; font-weight: 100; }
.h5-air { font-family: Aeonik, sans-serif; font-weight: 200; }
.h5-light { font-family: Aeonik, sans-serif; font-weight: 300; }
.h5-regular { font-family: Aeonik, sans-serif; font-weight: 400; }
.h5-medium { font-family: Aeonik, sans-serif; font-weight: 500; }
.h5-bold { font-family: Aeonik, sans-serif; font-weight: 700; }
.h5-black { font-family: Aeonik, sans-serif; font-weight: 900; }

/* H6 Variants */
.h6-thin { font-family: Aeonik, sans-serif; font-weight: 100; }
.h6-air { font-family: Aeonik, sans-serif; font-weight: 200; }
.h6-light { font-family: Aeonik, sans-serif; font-weight: 300; }
.h6-regular { font-family: Aeonik, sans-serif; font-weight: 400; }
.h6-medium { font-family: Aeonik, sans-serif; font-weight: 500; }
.h6-bold { font-family: Aeonik, sans-serif; font-weight: 700; }
.h6-black { font-family: Aeonik, sans-serif; font-weight: 900; }

/* ============================================
   BODY TEXT UTILITY CLASSES
   ============================================ */

/* Paragraph Variants */
.p-extralight { font-family: "TT Commons Pro", sans-serif; font-weight: 200; }
.p-light { font-family: "TT Commons Pro", sans-serif; font-weight: 300; }
.p-regular { font-family: "TT Commons Pro", sans-serif; font-weight: 400; }
.p-bold { font-family: "TT Commons Pro", sans-serif; font-weight: 700; }

/* Span Variants */
.span-extralight { font-family: "TT Commons Pro", sans-serif; font-weight: 200; }
.span-light { font-family: "TT Commons Pro", sans-serif; font-weight: 300; }
.span-regular { font-family: "TT Commons Pro", sans-serif; font-weight: 400; }
.span-bold { font-family: "TT Commons Pro", sans-serif; font-weight: 700; }

/* Link Variants */
.link-extralight { font-family: "TT Commons Pro", sans-serif; font-weight: 200; }
.link-light { font-family: "TT Commons Pro", sans-serif; font-weight: 300; }
.link-regular { font-family: "TT Commons Pro", sans-serif; font-weight: 400; }
.link-bold { font-family: "TT Commons Pro", sans-serif; font-weight: 700; }

/* List Variants */
.list-extralight { font-family: "TT Commons Pro", sans-serif; font-weight: 200; }
.list-light { font-family: "TT Commons Pro", sans-serif; font-weight: 300; }
.list-regular { font-family: "TT Commons Pro", sans-serif; font-weight: 400; }
.list-bold { font-family: "TT Commons Pro", sans-serif; font-weight: 700; }

/* ============================================
   GENERAL FONT UTILITY CLASSES
   ============================================ */

/* Font Family Utilities */
.font-aeonik { font-family: Aeonik, sans-serif; }
.font-commons { font-family: "TT Commons Pro", sans-serif; }

/* Font Weight Utilities */
.fw-100, .fw-thin { font-weight: 100; }
.fw-200, .fw-extralight { font-weight: 200; }
.fw-300, .fw-light { font-weight: 300; }
.fw-400, .fw-regular { font-weight: 400; }
.fw-500, .fw-medium { font-weight: 500; }
.fw-600, .fw-semibold { font-weight: 600; }
.fw-700, .fw-bold { font-weight: 700; }
.fw-800, .fw-extrabold { font-weight: 800; }
.fw-900, .fw-black { font-weight: 900; }

/* Font Style Utilities */
.italic { font-style: italic; }
.normal { font-style: normal; }
