@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&family=Noto+Serif+TC:wght@200..900&display=swap');

:root {
    --font-family-sans: "Noto Sans TC", sans-serif;
    --font-family-serif: "Noto Serif TC", serif;
    --color-text: #404040;
    --font-size-base: 1.125rem; /* 18px */
    --font-size-h1: 3rem; /* 48px */
    --font-size-h2: 2rem; /* 32px */
    --font-size-h3: 1.5rem; /* 24px */
    --font-size-h4: 1.25rem; /* 18px */
    --font-size-figcaption: 0.875rem; /* 14px */
    --primary: #A67442;
    --secondary: #CA9553;
    --black: #0f0f0f;
    --white: #f8f8f8;
    --gray-100: #F5F5F5;
    --gray-200: #e6e6e6;
    --gray-300: #E0E0E0;
    --gray-400: #c2c2c2;
    --gray-600: #7e7e7e;
    --gray-800: #464646;
}

body {
    font-family: var(--font-family-sans) !important;
    color: var(--color-text);
    font-size: var(--font-size-base);
    letter-spacing: 0.6px;
}

a {
    text-decoration: none;
    color: inherit;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-family-sans);
}

h1 {
    font-family: var(--font-family-serif);
    font-size: var(--font-size-h1);
}

h2 {
    font-family: var(--font-family-serif);
    font-size: var(--font-size-h2);
    font-weight: 800;
    line-height: 1.4;
    text-align: center;
}

h3 {
    font-size: var(--font-size-h3);
    font-weight: 500;
    line-height: 1.4;
}
h4{
    font-family: var(--font-family-serif);
    font-size: var(--font-size-h4);
    font-weight: 600;
    line-height: 1.6;
}
h5{
    font-size: var(--font-size-figcaption);
    color: var(--gray-800);
}
figcaption {
    font-size: var(--font-size-figcaption);
}
p{
    line-height: 1.8;
}

@media (max-width: 991px) {
    h1 {
        font-size: 1.75rem; 
    }
}
@media (max-width: 767.98px){
    h2{
        font-size: 1.5rem;
    }
    h3{
        font-size: 1.4rem;
    }
    p{
        font-size: 1rem;
    }
}
