/* ==========================================================================
   Custom Font Definitions (@font-face)
   ========================================================================== */

/* --- Alexandria Font Family --- */

/* Note: Defining both static weights AND a variable font for the same family
   can sometimes be redundant or lead to unexpected behavior depending on browser implementation.
   Often, you'd choose EITHER the variable font OR the static instances.
   However, defining statics can serve as fallbacks. Included all as requested. */

@font-face {
  font-family: 'Alexandria';
  src: url('fonts/Alexandria-Thin.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Alexandria';
  src: url('fonts/Alexandria-ExtraLight.ttf') format('truetype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Alexandria';
  src: url('fonts/Alexandria-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Alexandria';
  src: url('fonts/Alexandria-Regular.ttf') format('truetype');
  font-weight: 400; /* Standard 'Regular' weight */
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Alexandria';
  src: url('fonts/Alexandria-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Alexandria';
  src: url('fonts/Alexandria-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Alexandria';
  src: url('fonts/Alexandria-Bold.ttf') format('truetype');
  font-weight: 700; /* Standard 'Bold' weight */
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Alexandria';
  src: url('fonts/Alexandria-ExtraBold.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Alexandria';
  src: url('fonts/Alexandria-Black.ttf') format('truetype');
  font-weight: 900; /* Standard 'Black' weight */
  font-style: normal;
  font-display: swap;
}

/* Alexandria Variable Font - covers a range of weights */
@font-face {
  font-family: 'Alexandria'; /* Using the same family name */
  src: url('fonts/Alexandria-VariableFont_wght.ttf') format('truetype-variations'); /* Format hint for variable fonts */
  font-weight: 100 900; /* Specifies the available weight range */
  font-style: normal;
  font-display: swap;
}


/* --- AllRoundGothic Font Family --- */

@font-face {
  font-family: 'AllRoundGothic';
  src: url('fonts/AllRoundGothicXLig.otf') format('opentype');
  font-weight: 200; /* Assuming XLig = Extra Light */
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'AllRoundGothic';
  src: url('fonts/AllRoundGothicXLigOblique.otf') format('opentype');
  font-weight: 200; /* Assuming XLig = Extra Light */
  font-style: oblique;
  font-display: swap;
}

@font-face {
  font-family: 'AllRoundGothic';
  src: url('fonts/AllRoundGothicBook.otf') format('opentype');
  font-weight: 400; /* Assuming Book = Regular */
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'AllRoundGothic';
  src: url('fonts/AllRoundGothicBookOblique.otf') format('opentype');
  font-weight: 400; /* Assuming Book = Regular */
  font-style: oblique;
  font-display: swap;
}

/* Added rule for the base AllRoundGothic.otf, assuming it's Regular/Book */
@font-face {
  font-family: 'AllRoundGothic';
  src: url('fonts/AllRoundGothic.otf') format('opentype');
  font-weight: 400; /* Assuming base = Regular/Book */
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'AllRoundGothic';
  src: url('fonts/AllRoundGothicMedium.otf') format('opentype');
  font-weight: 500; /* Standard 'Medium' weight */
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'AllRoundGothic';
  src: url('fonts/AllRoundGothicDemi.otf') format('opentype');
  font-weight: 600; /* Assuming Demi = SemiBold */
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'AllRoundGothic';
  src: url('fonts/AllRoundGothicDemiOblique.otf') format('opentype');
  font-weight: 600; /* Assuming Demi = SemiBold */
  font-style: oblique;
  font-display: swap;
}

@font-face {
  font-family: 'AllRoundGothic';
  src: url('fonts/AllRoundGothicBold.otf') format('opentype');
  font-weight: 700; /* Standard 'Bold' weight */
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'AllRoundGothic';
  src: url('fonts/AllRoundGothicBoldOblique.otf') format('opentype');
  font-weight: 700; /* Standard 'Bold' weight */
  font-style: oblique;
  font-display: swap;
}


/* ==========================================================================
   Font Helper Classes
   ========================================================================== */

/* --- Alexandria Classes --- */

.font-alexandria-thin {
  font-family: 'Alexandria', sans-serif;
  font-weight: 100;
  font-style: normal;
}

.font-alexandria-extralight {
  font-family: 'Alexandria', sans-serif;
  font-weight: 200;
  font-style: normal;
}

.font-alexandria-light {
  font-family: 'Alexandria', sans-serif;
  font-weight: 300;
  font-style: normal;
}

.font-alexandria-regular {
  font-family: 'Alexandria', sans-serif;
  font-weight: 400;
  font-style: normal;
}

.font-alexandria-medium {
  font-family: 'Alexandria', sans-serif;
  font-weight: 500;
  font-style: normal;
}

.font-alexandria-semibold {
  font-family: 'Alexandria', sans-serif;
  font-weight: 600;
  font-style: normal;
}

.font-alexandria-bold {
  font-family: 'Alexandria', sans-serif;
  font-weight: 700;
  font-style: normal;
}

.font-alexandria-extrabold {
  font-family: 'Alexandria', sans-serif;
  font-weight: 800;
  font-style: normal;
}

.font-alexandria-black {
  font-family: 'Alexandria', sans-serif;
  font-weight: 900;
  font-style: normal;
}

/* Class to leverage the variable font - allows setting arbitrary weights */
.font-alexandria-variable {
    font-family: 'Alexandria', sans-serif;
    /* Set a default weight or set specific weights inline/via other classes */
    font-weight: 400; /* Example default */
    font-style: normal;
    /* You can then override font-weight directly: style="font-weight: 550;" */
}


/* --- AllRoundGothic Classes --- */

.font-allroundgothic-extralight {
  font-family: 'AllRoundGothic', sans-serif;
  font-weight: 200;
  font-style: normal;
}

.font-allroundgothic-extralight-oblique {
  font-family: 'AllRoundGothic', sans-serif;
  font-weight: 200;
  font-style: oblique;
}

.font-allroundgothic-book {
  font-family: 'AllRoundGothic', sans-serif;
  font-weight: 400;
  font-style: normal;
}

.font-allroundgothic-book-oblique {
  font-family: 'AllRoundGothic', sans-serif;
  font-weight: 400;
  font-style: oblique;
}

/* Added class for the base .otf file, assuming regular/book */
.font-allroundgothic-regular {
  font-family: 'AllRoundGothic', sans-serif;
  font-weight: 400;
  font-style: normal;
}

.font-allroundgothic-medium {
  font-family: 'AllRoundGothic', sans-serif;
  font-weight: 500;
  font-style: normal;
}

.font-allroundgothic-demi {
  font-family: 'AllRoundGothic', sans-serif;
  font-weight: 600;
  font-style: normal;
}

.font-allroundgothic-demi-oblique {
  font-family: 'AllRoundGothic', sans-serif;
  font-weight: 600;
  font-style: oblique;
}

.font-allroundgothic-bold {
  font-family: 'AllRoundGothic', sans-serif;
  font-weight: 700;
  font-style: normal;
}

.font-allroundgothic-bold-oblique {
  font-family: 'AllRoundGothic', sans-serif;
  font-weight: 700;
  font-style: oblique;
}
