@font-face {
    font-family: "Manrope";
    src: url("../fonts/manrope/Manrope-Variable.ttf") format("truetype");
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
}

@font-face {
    font-family: "Cormorant Garamond";
    src: url("../fonts/cormorantgaramond/CormorantGaramond-Italic-Variable.ttf") format("truetype");
    font-style: italic;
    font-weight: 300 700;
    font-display: swap;
}

@font-face {
    font-family: "Inter";
    src: url("../fonts/inter/Inter-Variable.ttf") format("truetype");
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}

@font-face {
    font-family: "LINE Seed Sans TH";
    src: url("../fonts/line-seed-sans-th/LINESeedSansTH_W_Th.woff2") format("woff2");
    font-style: normal;
    font-weight: 250;
    font-display: swap;
}

@font-face {
    font-family: "LINE Seed Sans TH";
    src: url("../fonts/line-seed-sans-th/LINESeedSansTH_W_Rg.woff2") format("woff2");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: "LINE Seed Sans TH";
    src: url("../fonts/line-seed-sans-th/LINESeedSansTH_W_Bd.woff2") format("woff2");
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: "LINE Seed Sans TH";
    src: url("../fonts/line-seed-sans-th/LINESeedSansTH_W_XBd.woff2") format("woff2");
    font-style: normal;
    font-weight: 800;
    font-display: swap;
}

@font-face {
    font-family: "LINE Seed Sans TH";
    src: url("../fonts/line-seed-sans-th/LINESeedSansTH_W_He.woff2") format("woff2");
    font-style: normal;
    font-weight: 900;
    font-display: swap;
}

@font-face {
    font-family: "Noto Serif Thai";
    src: url("../fonts/notoserifthai/NotoSerifThai-Variable.ttf") format("truetype");
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}

@font-face {
    font-family: "Noto Sans Thai";
    src: url("../fonts/notosansthai/NotoSansThai-Variable.ttf") format("truetype");
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}

:root, [lang|="en"] {
    --font-manrope: "Manrope", "Noto Sans Thai", sans-serif;
    --font-cormorant-garamond: "Cormorant Garamond", "Noto Serif Thai", serif;
    --font-inter: "Inter", "Noto Sans Thai", sans-serif;
    --font-line-seed-sans-th: "LINE Seed Sans TH", "Noto Sans Thai", sans-serif;
    --font-noto-serif-thai: "Noto Serif Thai", serif;
    --font-noto-sans-thai: "Noto Sans Thai", sans-serif;
    --font-body: var(--font-inter);
    --font-ui: var(--font-inter);
    --font-display: var(--font-cormorant-garamond);
}

/* Change role tokens only at explicit language boundaries. Descendants inherit
   the heading/body family, including inline spans inside headings and buttons. */
[lang|="th"] {
    --font-manrope: var(--font-line-seed-sans-th);
    --font-inter: var(--font-noto-sans-thai);
    --font-cormorant-garamond: var(--font-noto-serif-thai);
    --font-body: var(--font-inter);
    --font-ui: var(--font-inter);
    --font-display: var(--font-cormorant-garamond);
    font-family: var(--font-body);
}
[lang|="en"] { font-family: var(--font-body); }

.font-manrope { font-family: var(--font-manrope); }
.font-cormorant-garamond { font-family: var(--font-cormorant-garamond); font-style: italic; }
.font-inter { font-family: var(--font-inter); }
.font-line-seed-sans-th { font-family: var(--font-line-seed-sans-th); }
.font-noto-serif-thai { font-family: var(--font-noto-serif-thai); }
.font-noto-sans-thai { font-family: var(--font-noto-sans-thai); }
