/* Legal Frame fonts — locally hosted, replaces Google Fonts CDN */

/* Inter */
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('legal-frame/inter-latin-400-normal.woff2') format('woff2'),
         url('legal-frame/inter-latin-400-normal.woff') format('woff');
}
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('legal-frame/inter-latin-500-normal.woff2') format('woff2'),
         url('legal-frame/inter-latin-500-normal.woff') format('woff');
}
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('legal-frame/inter-latin-600-normal.woff2') format('woff2'),
         url('legal-frame/inter-latin-600-normal.woff') format('woff');
}
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('legal-frame/inter-latin-700-normal.woff2') format('woff2'),
         url('legal-frame/inter-latin-700-normal.woff') format('woff');
}

/* Source Serif 4 */
@font-face {
    font-family: 'Source Serif 4';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('legal-frame/source-serif-4-latin-300-normal.woff2') format('woff2'),
         url('legal-frame/source-serif-4-latin-300-normal.woff') format('woff');
}
@font-face {
    font-family: 'Source Serif 4';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('legal-frame/source-serif-4-latin-400-normal.woff2') format('woff2'),
         url('legal-frame/source-serif-4-latin-400-normal.woff') format('woff');
}
@font-face {
    font-family: 'Source Serif 4';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('legal-frame/source-serif-4-latin-500-normal.woff2') format('woff2'),
         url('legal-frame/source-serif-4-latin-500-normal.woff') format('woff');
}
@font-face {
    font-family: 'Source Serif 4';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('legal-frame/source-serif-4-latin-600-normal.woff2') format('woff2'),
         url('legal-frame/source-serif-4-latin-600-normal.woff') format('woff');
}
@font-face {
    font-family: 'Source Serif 4';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('legal-frame/source-serif-4-latin-700-normal.woff2') format('woff2'),
         url('legal-frame/source-serif-4-latin-700-normal.woff') format('woff');
}

/* JetBrains Mono */
@font-face {
    font-family: 'JetBrains Mono';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('legal-frame/jetbrains-mono-latin-400-normal.woff2') format('woff2'),
         url('legal-frame/jetbrains-mono-latin-400-normal.woff') format('woff');
}
@font-face {
    font-family: 'JetBrains Mono';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('legal-frame/jetbrains-mono-latin-500-normal.woff2') format('woff2'),
         url('legal-frame/jetbrains-mono-latin-500-normal.woff') format('woff');
}

/* Noto Naskh Arabic */
@font-face {
    font-family: 'Noto Naskh Arabic';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('legal-frame/noto-naskh-arabic-arabic-400-normal.woff2') format('woff2'),
         url('legal-frame/noto-naskh-arabic-arabic-400-normal.woff') format('woff');
    unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EFD-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
@font-face {
    font-family: 'Noto Naskh Arabic';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('legal-frame/noto-naskh-arabic-arabic-500-normal.woff2') format('woff2'),
         url('legal-frame/noto-naskh-arabic-arabic-500-normal.woff') format('woff');
    unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF;
}
@font-face {
    font-family: 'Noto Naskh Arabic';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('legal-frame/noto-naskh-arabic-arabic-600-normal.woff2') format('woff2'),
         url('legal-frame/noto-naskh-arabic-arabic-600-normal.woff') format('woff');
    unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF;
}
@font-face {
    font-family: 'Noto Naskh Arabic';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('legal-frame/noto-naskh-arabic-arabic-700-normal.woff2') format('woff2'),
         url('legal-frame/noto-naskh-arabic-arabic-700-normal.woff') format('woff');
    unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF;
}

/* Noto Serif Arabic — mapped to Noto Naskh Arabic (Noto Serif Arabic was removed from Google Fonts) */
@font-face {
    font-family: 'Noto Serif Arabic';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('legal-frame/noto-naskh-arabic-arabic-400-normal.woff2') format('woff2'),
         url('legal-frame/noto-naskh-arabic-arabic-400-normal.woff') format('woff');
    unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF;
}
@font-face {
    font-family: 'Noto Serif Arabic';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('legal-frame/noto-naskh-arabic-arabic-600-normal.woff2') format('woff2'),
         url('legal-frame/noto-naskh-arabic-arabic-600-normal.woff') format('woff');
    unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF;
}

/* Noto Sans Devanagari */
@font-face {
    font-family: 'Noto Sans Devanagari';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('legal-frame/noto-sans-devanagari-devanagari-400-normal.woff2') format('woff2'),
         url('legal-frame/noto-sans-devanagari-devanagari-400-normal.woff') format('woff');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
@font-face {
    font-family: 'Noto Sans Devanagari';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('legal-frame/noto-sans-devanagari-devanagari-500-normal.woff2') format('woff2'),
         url('legal-frame/noto-sans-devanagari-devanagari-500-normal.woff') format('woff');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
@font-face {
    font-family: 'Noto Sans Devanagari';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('legal-frame/noto-sans-devanagari-devanagari-600-normal.woff2') format('woff2'),
         url('legal-frame/noto-sans-devanagari-devanagari-600-normal.woff') format('woff');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
@font-face {
    font-family: 'Noto Sans Devanagari';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('legal-frame/noto-sans-devanagari-devanagari-700-normal.woff2') format('woff2'),
         url('legal-frame/noto-sans-devanagari-devanagari-700-normal.woff') format('woff');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}

/* Noto Serif Devanagari */
@font-face {
    font-family: 'Noto Serif Devanagari';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('legal-frame/noto-serif-devanagari-devanagari-400-normal.woff2') format('woff2'),
         url('legal-frame/noto-serif-devanagari-devanagari-400-normal.woff') format('woff');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
@font-face {
    font-family: 'Noto Serif Devanagari';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('legal-frame/noto-serif-devanagari-devanagari-600-normal.woff2') format('woff2'),
         url('legal-frame/noto-serif-devanagari-devanagari-600-normal.woff') format('woff');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
