@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: #221E1F;
    --font-size-base: 1.125rem; /* 18px */
    --font-size-h1: 2.5rem; /* 40px */
    --font-size-h2: 1.75rem; /* 28px */
    --font-size-h3: 1.5rem; /* 24px */
    --font-size-h4: 1.25rem; 
    --font-size-figcaption: 0.875rem; /* 14px */
    --primary: #FF9D00;
    --secondary: #00a2ff;
    --black: #221E1F;
    --white: #FFFFFF;
    --gray-100: #F9F9F9;
    --gray-300: #E0E0E0;
    --gray-600: #7e7e7e;
    --gray-800: #464646;
    --logo-main: #A37242;
    --logo-text: #CA9553;
    --border-radius-sm: 4px;
    --border-radius-md: 8px;
    --border-radius-lg: 12px;
}

body {
    font-family: var(--font-family-serif);
    font-size: var(--font-size-base);
    line-height: 1.6;
    color: var(--color-text);
    background-color: var(--gray-100);
}
a {
    text-decoration: none;
    color: inherit;
}
h1 {
    font-size: var(--font-size-h1);
    font-weight: 800;
    line-height: 1.4;
}
h2 {
    font-size: var(--font-size-h2);
    font-weight: 600;
}
h3 {
    font-size: var(--font-size-h3);
    font-weight: 600;
}
h4{
    font-size: var(--font-size-h4);
}
figcaption {
    font-size: var(--font-size-figcaption);
}
p{
    color: var(--gray-800);
    line-height: 1.4;
    letter-spacing: 0.05rem;
}