.elementor-kit-7{--e-global-color-primary:#0477AA;--e-global-color-secondary:#FD692B;--e-global-color-text:#13527C;--e-global-color-accent:#E32528;--e-global-color-08d8ec6:#3692BB;--e-global-color-8875b05:#68ADCC;--e-global-color-1340c11:#9BC9DD;--e-global-color-83e3e80:#CDE4EE;--e-global-color-bc7a7d5:#E6F1F6;--e-global-color-4cb80bd:#FFE1D5;--e-global-color-b22caaf:#F7F5F1;--e-global-typography-primary-font-family:"Livvic";--e-global-typography-primary-font-size:144px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-line-height:1em;--e-global-typography-secondary-font-family:"Livvic";--e-global-typography-secondary-font-size:2.6rem;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-secondary-line-height:1.4em;--e-global-typography-text-font-family:"Onest";--e-global-typography-text-font-size:1.3rem;--e-global-typography-text-font-weight:600;--e-global-typography-text-line-height:1.4em;--e-global-typography-accent-font-family:"Onest";--e-global-typography-accent-font-size:18px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.4em;--e-global-typography-eca1963-font-family:"Livvic";--e-global-typography-eca1963-font-size:2.4rem;--e-global-typography-eca1963-font-weight:700;--e-global-typography-eca1963-text-transform:uppercase;--e-global-typography-eca1963-line-height:1.4em;--e-global-typography-fec6169-font-family:"Livvic";--e-global-typography-fec6169-font-size:1.8rem;--e-global-typography-fec6169-font-weight:700;--e-global-typography-fec6169-text-transform:uppercase;--e-global-typography-fec6169-line-height:1.4em;--e-global-typography-6f0a109-font-family:"Livvic";--e-global-typography-6f0a109-font-size:1.3rem;--e-global-typography-6f0a109-font-weight:700;--e-global-typography-6f0a109-text-transform:uppercase;--e-global-typography-6f0a109-line-height:1.4em;--e-global-typography-0d62f84-font-family:"Onest";--e-global-typography-0d62f84-font-size:1.2rem;--e-global-typography-0d62f84-font-weight:600;--e-global-typography-0d62f84-text-transform:none;--e-global-typography-0d62f84-line-height:1.4em;--e-global-typography-759cbc3-font-family:"Onest";--e-global-typography-759cbc3-font-size:1.2rem;--e-global-typography-759cbc3-font-weight:400;--e-global-typography-759cbc3-text-transform:none;--e-global-typography-759cbc3-line-height:1.4em;--e-global-typography-393a67c-font-family:"Onest";--e-global-typography-393a67c-font-size:18px;--e-global-typography-393a67c-line-height:1.4em;--e-global-typography-eeeff4e-font-family:"Onest";--e-global-typography-eeeff4e-font-weight:400;--e-global-typography-eeeff4e-text-transform:none;--e-global-typography-eeeff4e-line-height:1.4em;--e-global-typography-1b527e5-font-family:"Onest";--e-global-typography-1b527e5-font-size:14px;--e-global-typography-1b527e5-font-weight:400;--e-global-typography-1b527e5-line-height:1.4em;--e-global-typography-7cf0cd8-font-family:"Onest";--e-global-typography-7cf0cd8-font-size:16px;--e-global-typography-7cf0cd8-font-weight:600;--e-global-typography-7cf0cd8-line-height:1.4em;--e-global-typography-64da401-font-family:"Onest";--e-global-typography-64da401-font-size:14px;--e-global-typography-64da401-font-weight:600;--e-global-typography-64da401-text-transform:capitalize;--e-global-typography-64da401-line-height:1.4em;background-color:var( --e-global-color-b22caaf );--e-page-transition-entrance-animation:e-page-transition-fade-out-up;--e-page-transition-exit-animation:e-page-transition-fade-in-up;--e-page-transition-animation-duration:1500ms;--e-preloader-delay:0ms;--e-preloader-color:#FFF;--e-preloader-size:64px;}.elementor-kit-7 e-page-transition{background-color:var( --e-global-color-primary );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:16px;}.elementor-element{--widgets-spacing:16px 16px;--widgets-spacing-row:16px;--widgets-spacing-column:16px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-7{--e-global-typography-secondary-font-size:2.4rem;--e-global-typography-text-font-size:1.2rem;--e-global-typography-eca1963-font-size:2.2rem;--e-global-typography-fec6169-font-size:1.6rem;--e-global-typography-6f0a109-font-size:1.2rem;--e-global-typography-0d62f84-font-size:1.1rem;--e-global-typography-759cbc3-font-size:1.1rem;--e-global-typography-eeeff4e-font-size:1rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7{--e-global-typography-primary-font-size:6.8rem;--e-global-typography-secondary-font-size:1.6rem;--e-global-typography-text-font-size:1.1rem;--e-global-typography-accent-font-size:1rem;--e-global-typography-eca1963-font-size:1.6rem;--e-global-typography-fec6169-font-size:1.4rem;--e-global-typography-6f0a109-font-size:1.1rem;--e-global-typography-0d62f84-font-size:1rem;--e-global-typography-759cbc3-font-size:1rem;--e-global-typography-eeeff4e-font-size:0.9rem;--e-preloader-size:80px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ===== Thai Language Font ===== */
:lang(th) {
    font-family: 'Noto Sans Thai', sans-serif !important;
}

:lang(th) h1,
:lang(th) h2,
:lang(th) h3,
:lang(th) h4 {
    font-family: 'Noto Sans Thai', sans-serif !important;
    line-height: 1.2 !important;
}

:lang(th) .kn-pin-text {
    font-family: 'Noto Sans Thai', sans-serif !important;
}

/* ปิด hover effect ทุกอย่างที่ปุ่ม kn-clean-button */
.kn-clean-button:hover,
.kn-clean-button .elementor-button:hover,
.kn-clean-button:hover .elementor-button {
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    transform: none !important;
    filter: none !important;
}

/* ปิด custom cursor outline ขยายตอน hover ปุ่มนี้ */
.kn-clean-button:hover ~ .kn-cursor-outline,
body:has(.kn-clean-button:hover) .kn-cursor-outline {
    width: 36px !important;
    height: 36px !important;
    background: transparent !important;
}

/* ปิด AOS — ต้องใช้ JS เพิ่ม */
.kn-clean-button[data-aos],
.kn-clean-button [data-aos] {
    opacity: 1 !important;
    transform: none !important;
}

/* ===== แก้ URL/Text ยาวให้ตัดบรรทัดได้ ===== */
p, a, li, span, div {
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
}

/* ===== Smooth Scroll ===== */
html {
    scroll-behavior: smooth;
}

/* ===== Subtle hover effect — ทุกรูป ===== */
.elementor-widget-image img {
    transition: transform 0.5s ease, filter 0.5s ease;
}

/* ===== Cards & Buttons — soft hover lift ===== */
.elementor-button,
.eael-grid-post,
.elementor-widget-icon-box,
.kn-card-hover {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.elementor-button:hover,
.kn-card-hover:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(19, 82, 124, 0.15);
}

/* ===== Heading subtle reveal ===== */
.elementor-heading-title {
    transition: color 0.3s ease;
}

/* ===== AOS Custom — easing นุ่มนวลกว่า default ===== */
[data-aos] {
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* ===== รูปคน — zoom นิดเมื่อ hover ===== */
.kn-image-zoom-on-hover {
    overflow: hidden;
}
.kn-image-zoom-on-hover img {
    transition: transform 0.6s ease;
}
.kn-image-zoom-on-hover:hover img {
    transform: scale(1.05);
}

/* ===== Quote box — ลอยขึ้น ===== */
.kn-quote-box {
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.kn-quote-box:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(19, 82, 124, 0.18);
}

/* ===== Link / Button — underline slide-in ===== */
.kn-link {
    position: relative;
    text-decoration: none;
}
.kn-link::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 0;
    height: 2px;
    background: currentColor;
    transition: width 0.3s ease;
}
.kn-link:hover::after {
    width: 100%;
}

/* ===== HER VOICE CARDS — v4 ===== */

.kn-voice-card {
    position: relative;
    display: block;
    aspect-ratio: 328 / 560;
    overflow: hidden;
    text-decoration: none;
    cursor: pointer;
    width: 100%;
}

/* ===== DEFAULT ===== */
.kn-voice-default {
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: 1;
    transition: opacity 0.6s ease;
}

.kn-voice-default .kn-voice-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
}

/* ===== HOVER ===== */
.kn-voice-hover {
    position: absolute;
    inset: 0;
    z-index: 2;
    opacity: 0;
    transition: opacity 0.6s ease;
}

.kn-voice-hover .kn-voice-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
    z-index: 1;
}

/* ===== ลบ overlay ทั้งหมด ===== */
.kn-voice-gradient-black,
.kn-voice-gradient-navy {
    display: none !important;
}

/* ===== CONTENT — Center + Bottom ===== */
.kn-voice-content {
    position: absolute;
    inset: 0;
    z-index: 4;
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    gap: 16px;
    text-align: center;
}

/* Icon — อยู่ใน content เป็น element แรก (อยู่บน title) */
.kn-voice-icon {
    width: 64px;
    height: 64px;
    margin: 0;
    align-self: center;
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.5));
}

.kn-voice-title {
    font-family: 'Livvic', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 140%;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: #F7F5F1;
    margin: 0;
    text-align: center;
    width: 100%;
    max-width: 280px;
    
}

.kn-voice-desc {
    font-family: 'Onest', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 140%;
    color: #F7F5F1;
    margin: 0;
    text-align: center;
    width: 100%;
    max-width: 280px;
    
}

.kn-voice-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-family: 'Onest', sans-serif;
    font-weight: 600;
    font-size: 18px;
    line-height: 140%;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: #F7F5F1;
    margin-top: 8px;
    
}

.kn-voice-cta svg {
    transition: transform 0.3s ease;
}

/* ===== HOVER TRIGGER ===== */
.kn-voice-card:hover .kn-voice-default {
    opacity: 0;
}

.kn-voice-card:hover .kn-voice-hover {
    opacity: 1;
}

.kn-voice-card:hover .kn-voice-cta svg {
    transform: translateX(4px);
}

/* ===== MOBILE ===== */
@media (max-width: 768px) {
    .kn-voice-default {
        opacity: 0;
    }
    .kn-voice-hover {
        opacity: 1;
    }

    .kn-voice-title {
        font-size: 20px;
    }
    .kn-voice-desc {
        font-size: 14px;
    }
    .kn-voice-cta {
        font-size: 16px;
    }
    .kn-voice-icon {
        width: 56px;
        height: 56px;
    }
}

/* ===== แก้ Card สูงไม่พอ บน Mobile ===== */

/* ===== แก้ Card สูงไม่พอ บน Mobile ===== */
@media (max-width: 768px) {
    .kn-voice-card {
        aspect-ratio: auto;          /* ลบ aspect-ratio */
        min-height: 480px;           /* ตั้งความสูงขั้นต่ำ */
        height: 480px;
        width: 100%;                 /* ⭐ เต็ม container */
        max-width: 100%;             /* ⭐ ไม่จำกัด */
        margin: 0;                   /* ⭐ ไม่ต้อง center */
    }
}

/* ===== Tablet ===== */
@media (max-width: 1024px) and (min-width: 769px) {
    .kn-voice-card {
        min-height: 420px;
    }
}/* End custom CSS */