/************** SYSTEM CSS ************* */

/*========== GLOBAL BOX MODEL ===========*/

*, *::before, *::after {
    box-sizing: border-box;
}

/*=========== ROOT TOKENS ===========*/

:root {

    /*Colors*/
    --ehw-primary-color: #FFBC00;
    --ehw-secondary-color: #0096A8;
    --ehw-third-color: #F5F7FA;
    --ehw-fourth-color: #E9F2FB;
    --ehw-white-color: #ffffff;
    --ehw-black-color: #000000;

    /*Spacing scale (px)*/
    --ehw-spacing-micro: clamp(0.0625rem, 0.05rem + 0.03125vw, 0.125rem); /*1-2*/
    --ehw-spacing-xxxs: clamp(0.125rem, 0.1rem + 0.0625vw, 0.25rem);      /*2-4*/
    --ehw-spacing-xxs: clamp(0.25rem, 0.2rem + 0.125vw, 0.5rem);          /*4-8*/
    --ehw-spacing-xs: clamp(0.5rem, 0.4rem + 0.25vw, 1rem);               /*8-16*/
    --ehw-spacing-sm: clamp(0.75rem, 0.6rem + 0.375vw, 1.5rem);           /*12-24*/
    --ehw-spacing-md: clamp(1rem, 0.8rem + 0.5vw, 2rem);                  /*16-32*/
    --ehw-spacing-lg: clamp(1.5rem, 1.2rem + 0.75vw, 3rem);               /*24-48*/
    --ehw-spacing-xl: clamp(2rem, 1.6rem + 1vw, 4rem);                    /*32-64*/
    --ehw-spacing-xxl: clamp(3rem, 2.4rem + 1.5vw, 6rem);                 /*48-96*/
    --ehw-spacing-3xl: clamp(4rem, 3.2rem + 2vw, 8rem);                   /*64-128*/
    --ehw-spacing-4xl: clamp(6rem, 4.8rem + 3vw, 12rem);                  /*96-192*/

    /*Radius*/
    --ehw-rounded-none: 0px;
    --ehw-rounded-sm: 0.125rem;
    --ehw-rounded: 0.25rem;
    --ehw-rounded-md: 0.375rem;
    --ehw-rounded-lg: 0.5rem;
    --ehw-rounded-xl: 0.75rem;
    --ehw-rounded-2xl: 1rem;
    --ehw-rounded-3xl: 1.5rem;
    --ehw-rounded-4xl: 2rem;
    --ehw-rounded-full: 9999px;

    /*Hero*/
    --ehw-section-hero-height: 100vh;

    /*Offset overlay headers*/
    --ehw-section-offset-header: 80px;

    /*Narrow content widths*/
    --ehw-section-narrow: 62.5rem;      /*1000*/
    --ehw-section-narrow-xs: 45rem;     /*720*/

    /*Horizontal container paddings*/
    --ehw-container-padding-mobile: 1.25rem;                 /*20*/
    --ehw-container-padding-tablet: 1.5rem;                  /*24*/
    --ehw-container-padding-desktop: clamp(1.5rem, 4vw, 3rem); /*24-48*/
}

/*=========== SECTION / CONTAINER ================*/

/*Horizontal spacing */

/*Mobile*/
.ehw-section-micro,
.ehw-section-xxxs,
.ehw-section-xxs,
.ehw-section-xs,
.ehw-section-sm,
.ehw-section-md,
.ehw-section-lg,
.ehw-section-xl,
.ehw-section-xxl,
.ehw-section-3xl,
.ehw-section-4xl {
    padding-inline: var(--ehw-container-padding-mobile);
}

/*Tablet*/
@media (min-width: 768px) {
    .ehw-section-micro,
    .ehw-section-xxxs,
    .ehw-section-xxs,
    .ehw-section-xs,
    .ehw-section-sm,
    .ehw-section-md,
    .ehw-section-lg,
    .ehw-section-xl,
    .ehw-section-xxl,
    .ehw-section-3xl,
    .ehw-section-4xl {
        padding-inline: var(--ehw-container-padding-tablet);
    }
}

/*Desktop*/
@media (min-width: 1025px) {
    .ehw-section-micro,
    .ehw-section-xxxs,
    .ehw-section-xxs,
    .ehw-section-xs,
    .ehw-section-sm,
    .ehw-section-md,
    .ehw-section-lg,
    .ehw-section-xl,
    .ehw-section-xxl,
    .ehw-section-3xl,
    .ehw-section-4xl {
        padding-inline: var(--ehw-container-padding-desktop);
    }
}

/*Vertical spacing */
.ehw-section-micro {padding-block: var(--ehw-spacing-micro);}
.ehw-section-xxxs {padding-block: var(--ehw-spacing-xxxs);}
.ehw-section-xxs {padding-block: var(--ehw-spacing-xxs);}
.ehw-section-xs {padding-block: var(--ehw-spacing-xs);}
.ehw-section-sm {padding-block: var(--ehw-spacing-sm);}
.ehw-section-md {padding-block: var(--ehw-spacing-md);}
.ehw-section-lg {padding-block: var(--ehw-spacing-lg);}
.ehw-section-xl {padding-block: var(--ehw-spacing-xl);}
.ehw-section-xxl {padding-block: var(--ehw-spacing-xxl);}
.ehw-section-3xl {padding-block: var(--ehw-spacing-3xl);}
.ehw-section-4xl {padding-block: var(--ehw-spacing-4xl);}

/*Hero*/
.ehw-section-hero {
min-height: var(--ehw-section-hero-height) !important;
}

.ehw-section-hero .e-con-inner {
    justify-content: center !important;
}

/*Full Width Sections*/
.ehw-section-full > .e-con-inner,
.ehw-section-full > .elementor-element > .e-con-inner {
    max-width: 100% !important;
}

/*Narrow Sections*/
.ehw-section-narrow .e-con-inner {
    max-width: var(--ehw-section-narrow) !important;
}

.ehw-section-narrow-xs .e-con-inner {
    max-width: var(--ehw-section-narrow-xs) !important;
}

/*Helper for sections below overlay headers*/
.ehw-section-offset-header {
    padding-top: calc(var(--ehw-section-offset-header) + var(--ehw-spacing-md));
}

/*============ TYPOGRAPHY ==============*/

/* POPPINS - Latin*/
@font-face {
    font-family: 'Poppins';
    src: url('/wp-content/uploads/custom-fonts/google-fonts-poppins-latin-300-normal.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0100-024F, U+1E00-1EFF, U+2000-206F;
}
@font-face {
    font-family: 'Poppins';
    src: url('/wp-content/uploads/custom-fonts/google-fonts-poppins-latin-400-normal.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0100-024F, U+1E00-1EFF, U+2000-206F;
}
@font-face {
    font-family: 'Poppins';
    src: url('/wp-content/uploads/custom-fonts/google-fonts-poppins-latin-500-normal.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0100-024F, U+1E00-1EFF, U+2000-206F;
}
@font-face {
    font-family: 'Poppins';
    src: url('/wp-content/uploads/custom-fonts/google-fonts-poppins-latin-600-normal.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0100-024F, U+1E00-1EFF, U+2000-206F;
}
@font-face {
    font-family: 'Poppins';
    src: url('/wp-content/uploads/custom-fonts/google-fonts-poppins-latin-700-normal.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0100-024F, U+1E00-1EFF, U+2000-206F;
}
@font-face {
    font-family: 'Poppins';
    src: url('/wp-content/uploads/custom-fonts/google-fonts-poppins-latin-800-normal.woff2') format('woff2');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0100-024F, U+1E00-1EFF, U+2000-206F;
}
@font-face {
    font-family: 'Poppins';
    src: url('/wp-content/uploads/custom-fonts/google-fonts-poppins-latin-900-normal.woff2') format('woff2');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0100-024F, U+1E00-1EFF, U+2000-206F;
}

/* NOTO SANS THAI - Thai */
@font-face {
    font-family: 'Noto Sans Thai';
    src: url('/wp-content/uploads/custom-fonts/NotoSansThai-300-Light.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0E00-0E7F;
}
@font-face {
    font-family: 'Noto Sans Thai';
    src: url('/wp-content/uploads/custom-fonts/NotoSansThai-400-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0E00-0E7F;
}
@font-face {
    font-family: 'Noto Sans Thai';
    src: url('/wp-content/uploads/custom-fonts/NotoSansThai-500-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0E00-0E7F;
}
@font-face {
    font-family: 'Noto Sans Thai';
    src: url('/wp-content/uploads/custom-fonts/NotoSansThai-600-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0E00-0E7F;
}
@font-face {
    font-family: 'Noto Sans Thai';
    src: url('/wp-content/uploads/custom-fonts/NotoSansThai-700-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0E00-0E7F;
}
@font-face {
    font-family: 'Noto Sans Thai';
    src: url('/wp-content/uploads/custom-fonts/NotoSansThai-800-ExtraBold.woff2') format('woff2');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0E00-0E7F;
}
@font-face {
    font-family: 'Noto Sans Thai';
    src: url('/wp-content/uploads/custom-fonts/NotoSansThai-900-Black.woff2') format('woff2');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0E00-0E7F;
}


body, h1, h2, h3, h4, h5, h6,
p, span, a, li, button, input, textarea {
    font-family: 'Poppins', 'Noto Sans Thai', sans-serif !important;
}

html {font-size: 16px;}

body {font-size: clamp(1rem, 0.985rem + 0.064vw, 1.125rem); /*16px–18px*/}
/*p {font-size: clamp(1rem, 0.985rem + 0.064vw, 1.125rem); /*16px–18px*/ /*}*/

h1 {font-size: clamp(2rem, 1.769rem + 1.026vw, 2.75rem); /*32px–44px*/}
h2 {font-size: clamp(1.5rem, 1.298rem + 0.897vw, 2.125rem); /*24px–34px*/}
h3 {font-size: clamp(1.375rem, 1.260rem + 0.513vw, 1.75rem); /*22px–28px*/}
h4 {font-size: clamp(1.25rem, 1.178rem + 0.321vw, 1.5625rem); /*20px–25px*/}
h5 {font-size: clamp(1.125rem, 1.082rem + 0.192vw, 1.3125rem); /*18px–21px*/}
h6 {font-size: clamp(1rem, 0.957rem + 0.192vw, 1.188rem); /*16px–19px*/}

h1, h2, h3 {line-height: 1.35; margin-block-start: 0rem;}
h4, h5, h6 {line-height: 1.5;margin-block-start: 0rem;}

/*Blog / Single / Archive Typography*/
.single h1, .blog h1, .archive h1 {
    font-size: clamp(1.75rem, 1.577rem + 0.769vw, 2.375rem); /*28px–38px*/
}
.single h2, .blog h2, .archive h2 {
    font-size: clamp(1.375rem, 1.231rem + 0.641vw, 2rem); /*22px–32px*/
}
.single h3, .blog h3, .archive h3 {
    font-size: clamp(1.25rem, 1.154rem + 0.427vw, 1.688rem); /*20px–27px*/
}
.single h4, .blog h4, .archive h4 {
    font-size: clamp(1.125rem, 1.067rem + 0.256vw, 1.438rem); /*18px–23px*/
}
.single h5, .blog h5, .archive h5 {
    font-size: clamp(1rem, 0.971rem + 0.128vw, 1.188rem); /*16px–19px*/
}
.single h6, .blog h6, .archive h6 {
    font-size: clamp(1rem, 0.971rem + 0.128vw, 1.125rem); /*16px–18px*/
}

/*Large Desktop*/
@media (min-width: 2400px) {

    html {font-size: 18px;}

    h1 {font-size: clamp(2.667rem, 2.05rem + 1.1vw, 3.333rem);} /*48px–60px*/
    h2 {font-size: clamp(2.111rem, 1.722rem + 0.88vw, 3.111rem);} /*38px–56px*/
    h3 {font-size: clamp(1.778rem, 1.5rem + 0.63vw, 2.667rem);} /*32px–48px*/
    h4 {font-size: clamp(1.5rem, 1.311rem + 0.43vw, 2.222rem);} /*27px–40px*/
    h5 {font-size: clamp(1.278rem, 1.144rem + 0.3vw, 1.889rem);} /*23px–34px*/
    h6 {font-size: clamp(1.111rem, 1.022rem + 0.2vw, 1.667rem);} /*20px–30px*/

    body,p {font-size: clamp(1rem, 0.9rem + 0.2vw, 1.2rem);}/*18px–21.6px*/
    
    body {line-height: 1.6;}
    /*h1, h2, h3 {line-height: 1.3;}
    h4, h5, h6 {line-height: 1.4;}*/

    /*Elementor posts*/
    .elementor-post__title a {
        font-size: clamp(1.278rem, 1.1rem + 0.3vw, 1.667rem) !important; /*23px–30px*/
    }
    .elementor-post__excerpt p {
        font-size: clamp(1rem, 0.9rem + 0.2vw, 1.2rem) !important; /*18px–21.6px*/
    }
    .elementor-post__meta-data {
        font-size: clamp(0.833rem, 0.8rem + 0.1vw, 0.944rem) !important; /*15px–17px*/
    }
    a.elementor-post__read-more {
        font-size: clamp(0.833rem, 0.8rem + 0.1vw, 0.944rem) !important; /*15px–17px*/
    }
}

@media (max-width: 1024px) {
   
    html {font-size: 15px;}
}