
    :root {
      --ink: #0b1324;
      --muted: #4b5563;

      --purple: #6b4cf6;
      --green: #58c95b;
      --pink: #ff3d8d;

      /* gradient */
      --gradTop: #d7ceff;
      --gradBot: #662d80;
    }

    /* =========================
   TOP BAR (placeholder)
   ========================= */
    .topbar {
      background-color: #004aad;
      color: #fff;
    }

    .topbar .inner {
      padding: 20px 0;
      text-align: center;
      font-weight: 600;
    }

    /* =========================
   HERO SECTION (ยืดตาม content)
   ========================= */
    .hero-full {
      position: relative;
      /* min-height: 100vh; */
      /* แค่ค่าเริ่มต้น */
      overflow: hidden;

      /* ✅ gradient ยืดตาม content */
      /* background: linear-gradient(180deg,
          var(--gradTop) 0%,
          var(--gradBot) 100%); */
    }

    /* background image layer */
    .hero-full::after {
      content: "";
      position: absolute;
      inset: 0;

      /* 🔴 ลบ 3 บรรทัดนี้ออก: */
      background-image: url("imgs/bg/section-hero-3.jpg");
      background-repeat: no-repeat;
      background-size: contain;

      /* ✅ คงเหลือไว้แค่ส่วนควบคุม Stacking และ Stretched */
      z-index: 0;
      /* ต่ำกว่าลายน้ำ */
      background-color: transparent;
      /* ให้เห็น Gradient ของ .hero-full */

      /* เพิ่ม Transition เพื่อให้การเปลี่ยนผ่านนุ่มนวล */
      transition: opacity 1.5s ease;
    }

    /* effect เบา ๆ */
    .hero-fx {
      position: absolute;
      inset: 0;
      pointer-events: none;
      z-index: 1;
      /* background:
    radial-gradient(520px 360px at 78% 24%, rgba(107,76,246,.12), transparent 60%),
    radial-gradient(520px 360px at 86% 52%, rgba(34,197,94,.10), transparent 60%);*/
      animation: floatFX 10s ease-in-out infinite;
    }

    @keyframes floatFX {

      0%,
      100% {
        transform: translateY(0);
      }

      50% {
        transform: translateY(-8px);
      }
    }

    /* =========================
   HERO CONTENT (ข้อความด้านขวา)
   ========================= */
    .hero-content {
      position: relative;
      z-index: 5;
      padding-top: clamp(24px, 14vh, 70px);
      padding-bottom: 32px;
      padding-right: 50px;
    }

    .hero-title h1 {
      font-weight: 800;
      color: #5755ac;
      line-height: 1.2;
      font-size: clamp(1.7rem, 2.2vw, 2.2rem);
      margin-bottom: .6rem;
    }

    .hero-quote h2 {
      font-weight: 800;
      color: #5755ac;
      font-size: 1.15rem;
      margin-bottom: .85rem;
    }

    .hero-desc {
      color: var(--muted);
      line-height: 1.9;
      font-size: 1.05rem;
      margin-bottom: 1.1rem;
    }

    /* CTA buttons */
    .btn-pill {
      border-radius: 999px;
      padding: .85rem 1.35rem;
      font-weight: 700;
      border: 0;
      box-shadow: 0 18px 55px rgba(10, 15, 25, .12);
      transition: .15s ease;
      white-space: nowrap;
    }

    .btn-pill:hover {
      transform: translateY(-2px);
      box-shadow: 0 24px 70px rgba(10, 15, 25, .16);
    }

    .btn-green {
      background: linear-gradient(180deg, #7be07d, #67a968);
      color: #fff;
    }

    /* กำหนดสถานะปกติ */
    .btn-pink {
      background-color: #E5175A;
      color: #fff !important;
      /* บังคับให้ตัวอักษรขาว */
    }

    /* กำหนดสถานะตอน Hover */
    .btn-pink:hover {
      background-color: #E5175A;
      /* ปรับให้เข้มขึ้นนิดนึงเวลาวางเมาส์ */
      color: #000000 !important;
      /* ปรับให้ตัวอักษรยังเป็นสีขาว ไม่กลายเป็นสีอื่น */
      transform: translateY(-2px);
      box-shadow: 0 24px 70px rgba(10, 15, 25, .16);
    }

    /* reveal animation */
    .reveal {
      opacity: 0;
      transform: translateY(14px);
      animation: revealUp .7s ease forwards;
    }

    .reveal.d2 {
      animation-delay: .12s;
    }

    .reveal.d3 {
      animation-delay: .22s;
    }

    .reveal.d4 {
      animation-delay: .32s;
    }

    @keyframes revealUp {
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }

    /* =========================
   OUR SERVICES (อยู่ใน hero เดียวกัน)
   ========================= */
    .hero-services {
      position: relative;
      z-index: 2;
      padding-top: 24px;
      padding-bottom: 80px;
      transition: margin-top 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    }

    /* 3. สั่งลบ Margin เมื่อมีการเปิดหน้าวิทยากร (ใช้ !important เพื่อชนะค่า Default) */
    body.is-showing-instructor .hero-services {
      margin-top: 0px !important;
    }



    /* watermark ภูเขาน้ำแข็ง (ถ้ามีไฟล์) */
    .hero-services::before {
      content: "";
      position: absolute;
      inset: 0;
      /* background-image: url("imgs/bg/iceberg-watermark.png"); */
      background-repeat: no-repeat;
      background-position: center 10%;
      background-size: min(720px, 86vw);
      opacity: .16;
      z-index: 0;
      pointer-events: none;
    }

    .hero-services>* {
      position: relative;
      z-index: 2;
    }

    /* heading */
    .services-head h2 {
      font-weight: 700;
      color: #31363a;
      margin-bottom: 8px;
      font-size: 3rem;
    }

    .services-head .lead {
      max-width: 1200px;
      margin: 0 auto;
      font-weight: 700;
      color: #111;
      padding-bottom: 0;
    }

    .services-head .sub {

      margin: 0px auto 0;
      font-size: 1rem;
      line-height: 1.65;
      color: #000;
    }

    /* =========================
   SERVICES GRID + CROSS
   ========================= */
    .services-grid {
      position: relative;
      padding-top: 16px;
    }

    /* กล่อง cross */
    .services-cross {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      width: min(560px, 92%);
      height: min(800px, 90vh);
      z-index: 1;
      pointer-events: none;
    }

    /* เส้นตั้งกลาง */
    .services-cross::before {
      content: "";
      position: absolute;
      left: 50%;
      top: 0;
      transform: translateX(-50%);
      width: 10px;
      height: 90%;
      background: rgba(84, 45, 122, .85);
    }

    /* เส้นนอน 2 เส้น (บน + ล่าง) ใช้ background ซ้อน 2 เส้น */
    .services-cross::after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 95%;

      background:
        linear-gradient(rgba(84, 45, 122, .85), rgba(84, 45, 122, .85)) 50% 15% / 100% 10px no-repeat,
        linear-gradient(rgba(84, 45, 122, .85), rgba(84, 45, 122, .85)) 50% 54% / 100% 10px no-repeat,
        linear-gradient(rgba(84, 45, 122, .85), rgba(84, 45, 122, .85)) 50% 95% / 100% 10px no-repeat;
    }

    /* สำหรับ iPad และ Tablet (ช่วงหน้าจอ 768px - 1199px) */
    @media (max-width: 1199px) {
      .services-cross {
        /* ปรับความสูงของกล่องเส้นให้พอดีกับกลุ่มการ์ดบน iPad */
        height: min(700px, 95vh) !important;
        top: 50%;
      }

      .services-cross::after {
        /* ปรับเปอร์เซ็นต์ตำแหน่งเส้นนอน 3 เส้น ให้ตรงกับช่องว่างของการ์ดบน iPad */
        /* ปรับตัวเลข 18%, 52%, 88% ตามความเหมาะสมของหน้าจอคุณ */
        background:
          linear-gradient(rgba(84, 45, 122, .85), rgba(84, 45, 122, .85)) 50% 18% / 100% 10px no-repeat,
          linear-gradient(rgba(84, 45, 122, .85), rgba(84, 45, 122, .85)) 50% 52% / 100% 10px no-repeat,
          linear-gradient(rgba(84, 45, 122, .85), rgba(84, 45, 122, .85)) 50% 88% / 100% 10px no-repeat !important;
      }

      /* หากบน iPad เส้นตั้งกลางดูหนาไป หรือตำแหน่งเบี้ยว */
      .services-cross::before {
        height: 95% !important;
      }
    }

    /* สำหรับ Mobile (จอเล็กกว่า 767px) แนะนำให้ซ่อนเส้นเพราะการ์ดจะเรียงแถวเดี่ยว */
    @media (max-width: 767px) {
      .services-cross {
        display: none;
      }
    }


    /* =========================
   SERVICE CARDS
   ========================= */

    .service-card {
      position: relative;
      z-index: 3;
      background: rgba(255, 255, 255, .98);
      border-radius: 12px;
      border: 1px solid rgba(255, 255, 255, .85);
      box-shadow: 0 14px 38px rgba(10, 10, 20, .14);
      padding: 25px 30px 25px;
      min-height: 250px;
      max-width: 500px;
      max-height: none;
      /* เพิ่มบรรทัดนี้เพื่อให้กล่องอยู่ตรงกลาง */
      margin: 0 auto;
    }

    .service-head {
      display: flex;
      align-items: center;
      justify-content: center;

      gap: 12px;
      margin-bottom: 8px;
      text-align: center;

      /* เพิ่มส่วนนี้เข้าไปครับ */
      min-height: 80px;
      /* ปรับตัวเลขนี้ตามความเหมาะสม (ปกติ 2 บรรทัดจะใช้ประมาณ 70-90px) */
      width: 100%;
    }

    .service-ico {
      width: 40px;
      height: 40px;
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #fff;
      /* box-shadow: 0 10px 26px rgba(0,0,0,.18);*/
      font-size: 30px;
      flex: 0 0 auto;
    }

    /* หัวข้อ Service: ใช้ clamp เพื่อให้มือถือเหลือ 24px และคอมเป็น 40px ตามที่คุณตั้งไว้ */
    .service-title {
      font-size: clamp(22px, 3vw, 26px) !important;
      font-weight: 700;
      margin-bottom: 0;
      line-height: 1.2;
      color: #0b1324;
    }

    .service-desc {
      font-size: clamp(13px, 1.5vw, 16px) !important;
      line-height: 1.7;
      color: #555;
      margin: 0;
      flex-grow: 1;
      /* ดันเนื้อหาให้กระจายตัวเต็มพื้นที่การ์ด */

      /* 2. ล็อกระยะห่างบรรทัดให้คงที่ */
      line-height: 1.6em;

      /* 3. สูตรคำนวณความสูงสำหรับ 4 บรรทัด (1.6em * 4 = 6.4em) */
      /* วิธีนี้จะทำให้พื้นที่ข้อความสูงเท่ากับ 4 บรรทัดเสมอ ไม่ว่าตัวหนังสือจะสั้นหรือยาว */
      height: 6.4em;

      overflow: hidden;
      /* กันเหนียวถ้าตัวหนังสือยาวเกิน 4 บรรทัดจริง ๆ */
      display: block;
      /* เปลี่ยนจาก d-flex เป็น block เพื่อให้การคุมบรรทัดแม่นยำ */
    }

    @media (min-width: 768px) and (max-width: 1199px) {
      .service-desc {
        /* ปรับฟอนต์ให้เล็กลงพอที่จะบีบให้เหลือ 4 บรรทัดบนจอ iPad */
        font-size: 12px !important;

        /* ล็อกบรรทัดให้เป๊ะ */
        line-height: 1.5em !important;
        height: 6em !important;
        /* (1.5em x 4 บรรทัด) */

        /* ถ้าตัวหนังสือยังยาวเกิน 4 บรรทัด ให้ขึ้นจุดไข่ปลา (...) กันเละ */
        display: -webkit-box !important;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      .service-card {
        min-height: auto !important;
        /* ปล่อยความสูงให้ยืดหยุ่นตามฟอนต์ที่ย่อลง */
        max-height: none !important;
        padding: 20px !important;
        /* ลด Padding เพื่อเพิ่มพื้นที่ให้ตัวหนังสือ */
      }
    }


    /* icon colors */
    .ico-pink {
      color: #e5175a;
      border: 3px solid #e5175a;
    }

    .ico-cyan {
      color: #0684c3;
    }

    .ico-blue {
      color: #1b75b0;
      border: 0px solid #1b75b0;
    }

    .ico-green {
      color: #b1c230;
    }

    .ico-teal {
      color: #36ba91;
    }

    .ico-navy {
      color: #415ea7;
    }

    /* =========================
   RESPONSIVE
   ========================= */
    /* ต้องมีหน่วย px เสมอ */
    @media (max-width: 991px) {
      .hero-services {
        position: relative;
        /* margin-top: 10px; */
        z-index: 2;
        padding-top: 24px;
        padding-bottom: 80px;
        /* เพิ่ม background-color: red; ไว้เช็คชั่วคราวก็ได้ครับว่าติดหรือยัง */
      }
    }

    @media (max-width: 991.98px) {
      .hero-content {
        padding-right: 16px;
      }



      .hero-full::after {
        background-image: url("imgs/bg/section-hero-3.jpg");
        background-repeat: no-repeat;

        background-size: contain;
        /* ✅ ย่อ/ขยายตามจอ */
        background-position: left top;
        /* หรือ center top */
        background-color: #ffffff;
        /* กันพื้นที่ว่าง */
      }

      .services-cross {
        display: none;
      }

      .hero-services {
        padding-bottom: 56px;
      }

      .hero-services::before {
        background-position: center 18%;
        background-size: min(560px, 92vw);
        opacity: .14;
      }

      .mobile-fade-in {
        opacity: 0;
        animation: simpleFade 0.8s ease forwards;
      }

      @keyframes simpleFade {
        to {
          opacity: 1;
        }
      }

      /* ซ่อน Cursor บนมือถือไปเลย */
      #typewriter-cursor {
        display: none !important;
      }

    }

    /* =========================
   SERVICES COLUMN SPACING
   ========================= */

    /* default: mobile / tablet ไม่เพิ่ม padding */
    .service-col-left,
    .service-col-right {
      padding-left: 0;
      padding-right: 0;
    }

    /* desktop ขึ้นไป ค่อยเว้นระยะ */
    @media (min-width: 992px) {
      .service-col-left {
        padding-right: 40px;
      }

      .service-col-right {
        padding-left: 40px;
      }
    }

    @media (min-width: 1200px) {
      .service-col-left {
        padding-right: 48px;
      }

      .service-col-right {
        padding-left: 48px;
      }
    }

    @media (max-width: 991.98px) {
      .service-col-left {
        padding-bottom: 20px;
      }
    }


    /* =========================
   SOCIAL PROOF SECTION
   ========================= */
    .social-proof-section {
      position: relative;
      padding: 70px 0;
      background-image: url("imgs/bg/bg-socialprooft.jpg");
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center;
    }

    .sp-title {
      font-weight: 600;
      font-size: 3.5rem;
      margin-bottom: 24px;
      color: #394657;
    }

    .sp-list {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .sp-list li {
      display: flex;
      align-items: flex-start;
      gap: 14px;
      margin-bottom: 26px;
      color: #374151;

      font-size: 1.3rem;
      line-height: 1.65;
      /* ✅ ให้สวยเมื่อข้อความยาว */
    }

    /* icon ซ้าย: ล็อกขนาดให้คงที่ */
    .sp-ico {
      flex: 0 0 34px;
      /* ✅ ทำให้เป็นคอลัมน์คงที่ */
      width: 34px;
      height: 34px;
      border-radius: 50%;
      display: inline-flex;
      align-items: center;
      justify-content: center;

      background: #ffbc1a;
      color: #e5175a;
      font-weight: 800;
      font-size: 18px;
      margin-top: .12em;
      /* ✅ จัด baseline กับบรรทัดแรก */
    }

    /* ข้อความ: เป็นบล็อกเดียว ขึ้นบรรทัดก็ยังอยู่คอลัมน์เดิม */
    .sp-text {
      flex: 1;
      display: inline;
      /* ✅ สำคัญ: ไม่แยกเป็นกล่องใหม่ */
    }

    /* ไฮไลท์ 20 ปี */
    .sp-highlight {
      color: #16a34a;
      font-weight: 800;
      font-size: 1.35em;
      /* ✅ ให้ใหญ่กว่าข้อความปกติ */
      white-space: nowrap;
      /* ✅ กันคำว่า “20 ปี” แตกบรรทัด */
      margin-left: .25em;
    }

    /* เน้นคำอื่น */
    .sp-strong {
      font-weight: 800;
    }



    /* image */
    .sp-image-wrap {
      position: relative;
    }

    .sp-image {
      max-width: 100%;
      height: auto;
    }

    /* =========================
   RESPONSIVE
   ========================= */
    @media (max-width: 991.98px) {
      .social-proof-section {
        padding: 50px 0;
        text-align: center;
      }

      .sp-title {
        font-size: 1.6rem;
      }

      .sp-list li {
        justify-content: center;
        text-align: left;
      }

      .sp-image-wrap {
        margin-top: 30px;
      }
    }

    /* ===== SECTION WHY ENMARK ===== */
    .section-why {
      position: relative;
      background: #f6f7f9;
      overflow: visible;
      /* ✅ อนุญาตให้รูปยื่นไปทับ section ถัดไป */
      padding: 56px 0 90px;
      /* ✅ เผื่อพื้นที่ด้านล่างสำหรับ overlap */
    }

    .section-why .sp-wrap {
      position: relative;
      z-index: 2;
    }



    /* ===== SECTION NEXT (รองรับรูปที่ยื่นลงมา) ===== */
    .section-next {
      position: relative;
      background: #ffffff;
      padding: 96px 0 60px;
      /* ✅ เผื่อด้านบนให้ไม่ชนรูป */
      z-index: 1;
    }

    /* ===== mobile ปรับไม่ให้รูปใหญ่เกิน ===== */
    @media (max-width: 991.98px) {
      .section-why {
        padding: 44px 0 80px;
      }

      .sp-image {
        right: 12px;
        bottom: -55px;
        width: min(240px, 55vw);
      }

      .section-next {
        padding-top: 90px;
      }
    }

    @media (max-width: 575.98px) {
      .sp-image {
        right: 8px;
        bottom: -45px;
        width: 210px;
      }
    }

    /* section บนต้องเป็น reference ให้ absolute */
    .section-top {
      position: relative;
      overflow: visible;
      /* ให้รูปยื่นออกได้ */
    }

    .sp-image {
      position: absolute;
      right: -70px;
      bottom: -475px;
      z-index: 20;
      width: 250px;
      height: auto;
      pointer-events: none;
    }

    /* section ล่างเผื่อที่ให้รูป (กันชนหัวข้อ) */
    .section-bottom {
      padding-top: 70px;
      /* >= abs(bottom) + ขนาดรูปครึ่งนึง */
    }

    /* responsive */
    @media (max-width: 991.98px) {
      .sp-image {
        right: 16px;
        bottom: -45px;
        width: 100px;
      }

      .section-bottom {
        padding-top: 60px;
      }
    }

    @media (max-width: 575.98px) {
      .sp-image {
        right: 12px;
        bottom: -40px;
        width: 90px;
      }

      .section-bottom {
        padding-top: 56px;
      }
    }

    /* ===== Logo Marquee ===== */
    .slder-logo {
      position: relative;
      overflow: hidden;
      width: 100%;
      padding: 14px 0;
      background: rgba(255, 255, 255, .35);
    }

    /* ทำขอบเฟดซ้าย/ขวาให้ดูเนียน (optional แต่แนะนำ) */
    .slder-logo::before,
    .slder-logo::after {
      content: "";
      position: absolute;
      top: 0;
      width: 80px;
      height: 100%;
      z-index: 2;
      pointer-events: none;
    }

    .slder-logo::before {
      left: 0;
      background: linear-gradient(90deg, rgba(255, 255, 255, .55), rgba(255, 255, 255, 0));
    }

    .slder-logo::after {
      right: 0;
      background: linear-gradient(270deg, rgba(255, 255, 255, .55), rgba(255, 255, 255, 0));
    }

    /* track ที่วิ่ง */
    .slder-logo .slider {
      display: flex;
      width: max-content;
      will-change: transform;
      animation: logo-marquee 1000s linear infinite;
      gap: 30px;
      /* ระยะห่างโลโก้ */
    }

    /* 1 ชุดโลโก้ */
    .slder-logo .logos {
      display: flex;
      align-items: center;
      gap: 30px;
    }

    /* โลโก้แต่ละอัน */
    .slder-logo .logo-item img {
      height: 100px;
      /* ✅ คุมให้สูงเท่ากัน */
      width: auto;
      max-width: 160px;
      /* กันโลโก้ยาวเกิน */
      object-fit: contain;
      display: block;
      filter: grayscale(10%);
      opacity: .95;
    }

    /* hover (optional) */
    .slder-logo .logo-item img:hover {
      filter: none;
      opacity: 1;
    }

    /* keyframes เลื่อนครึ่งหนึ่ง (เพราะเราซ้ำ 2 ชุด) */
    @keyframes logo-marquee {
      from {
        transform: translateX(0);
      }

      to {
        transform: translateX(-50%);
      }
    }

    /* ลด motion สำหรับคนตั้งค่า reduce motion */
    @media (prefers-reduced-motion: reduce) {
      .slder-logo .slider {
        animation: none;
      }
    }

    /* nowcss */
    .services-grid-service {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      /* 2 คอลัมน์บน Desktop */
      gap: 25px;
      align-items: stretch;
      /* ให้การ์ดทุกใบยืดสูงเท่ากันในแต่ละแถว */
    }

    .icon-box {
      margin-bottom: 15px;
      /* เพิ่มระยะห่างด้านล่างของกล่องไอคอนก่อนถึงข้อความ */
      display: flex;
      /* ช่วยให้จัดรูปภาพตรงกลางได้ง่ายขึ้น */
      align-items: center;
    }

    /* การ์ดบริการ */
    .service-card-service {
      /* background: #1162cc; */
      background: #f8fbff;
      padding: 40px;
      border-radius: 20px;
      text-align: left;
      display: flex;
      flex-direction: column;
      transition: transform 0.3s ease;

    }

    .services-grid-service .service-card-service:nth-child(even) {
      transform: translateY(50px);
      /* ดันลงมาทั้งใบ 50px */
    }

    /* การ์ดใบที่ 1 และ 3 (ตัวที่อยู่ซ้าย) */
    .services-grid-service .service-card-service:nth-child(odd) {
      transform: translateY(20px);
      /* ดันขึ้นไปอีกนิด 20px */
    }

    @media (max-width: 820px) {

      .services-grid-service .service-card-service:nth-child(even),
      .services-grid-service .service-card-service:nth-child(odd) {
        transform: translateY(0);
        margin-bottom: 20px;
      }

      .services-grid-service {
        grid-template-columns: 1fr;
        /* ปรับให้เหลือแถวละ 1 อัน */
        gap: 20px;
        /* ลดระยะห่างระหว่างการ์ดนิดหน่อย */
        padding-bottom: 40px;
        /* ลด Padding ล่างลงเพราะไม่ต้องเยื้องเยอะ */
      }

      .services-grid-service .service-card-service {
        /* ล้างค่าการเยื้อง (Transform) ที่เราเคยทำไว้ */
        /* เพื่อให้บนมือถือมันเรียงตรงกัน ไม่งั้นจะดูเหมือนการ์ดเบี้ยว */
        transform: translateY(0) !important;
        margin-top: 0 !important;
        margin-bottom: 15px;
      }

      .services-grid-service .service-card-service h3 {
        font-size: 1.2rem;
        /* ปรับขนาดตัวอักษรให้พอดีกับจอมือถือ */
      }

    }

    /* ค่าเดิมของใบที่เป็นเลขคู่ */
    .service-card-service:nth-child(even) {
      transform: translateY(50px);
    }

    /* ตอน Hover ต้องรักษาค่า translateY(50px) ไว้ด้วย */
    .service-card-service:nth-child(even):hover {
      transform: translateY(40px) scale(1.02);
      /* ขยับขึ้นนิดนึงจากตำแหน่งเยื้องเดิม */
    }

    .service-card-service:nth-child(odd) {
      transform: translateY(20px);
    }

    /* ตอน Hover ต้องรักษาค่า translateY(50px) ไว้ด้วย */
    .service-card-service:nth-child(odd):hover {
      transform: translateY(10px) scale(1.02);
      /* ขยับขึ้นนิดนึงจากตำแหน่งเยื้องเดิม */
    }


    .highlight-text {
      color: #27ae60;
      /* กำหนดให้เป็นสีเขียว */
      font-weight: bold;
      /* กำหนดให้เป็นตัวหนา */
      font-size: 2rem;
      /* กำหนดให้ขนาดใหญ่ขึ้น */
    }

    /*ผลงานล่าสุด*/
    /* กรอบนอกของการ์ดข่าว */
    .news-card {
      border: none;
      border-radius: 15px;
      overflow: hidden;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
      transition: 0.3s;
      background: #fff;
      height: 100%;
    }

    .news-card:hover {
      transform: translateY(-10px);
      box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    }

    /* ส่วนรูปภาพ */
    .news-thumb {
      height: 200px;
      background-size: cover;
      background-position: center;
    }

    /* ส่วนเนื้อหาภายใน */
    .news-body {
      padding: 20px;
    }

    .news-label {
      font-weight: bold;
      text-transform: uppercase;
      font-size: 0.8rem;
      margin-bottom: 10px;
    }

    .news-body h5 a {
      color: #003366;
      /* สีน้ำเงินเข้มตามรูป */
      text-decoration: none;
      font-weight: 700;
      line-height: 1.4;
      display: block;
      margin-bottom: 15px;
    }

    .news-excerpt {
      color: #666;
      line-height: 1.6;
      margin-bottom: 20px;
      display: -webkit-box;
      -webkit-line-clamp: 3;
      /* ตัดข้อความให้เหลือ 3 บรรทัด */
      -webkit-box-orient: vertical;
      overflow: hidden;
    }

    /* วันที่และจำนวนคนอ่าน */
    .news-meta {
      font-size: 0.85rem;
      color: #999;
      border-top: 1px solid #eee;
      padding-top: 15px;
    }

    /* จัดการระยะห่าง วันที่ กับ ชื่อบริษัท */
    .news-meta-top {
      display: flex;
      justify-content: space-between;
      /* ผลักวันที่ไปซ้าย ชื่อบริษัทไปขวา */
      align-items: center;
      font-size: 0.85rem;
      color: #888;
      margin-bottom: 15px;
    }

    .news-date i {
      margin-right: 5px;
    }

    /* ดีไซน์ News Card */
    .news-card {
      border: none;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
      background: #fff;
      transition: transform 0.3s ease;
    }

    /* ทำให้การ์ดแต่ละใบเยื้องสูงต่ำไม่เท่ากัน (แบบรูปที่คุณส่งมา) */
    .news-item:nth-child(1) {
      margin-top: 20px;
    }

    .news-item:nth-child(2) {
      margin-top: 60px;
    }

    .news-item:nth-child(3) {
      margin-top: 100px;
    }

    /* 3. กำหนดความสูงของการ์ดให้ต่างกัน (เพื่อให้ฐานเหลื่อม) */
    .news-item:nth-child(1) .news-card {
      height: 450px;
    }

    .news-item:nth-child(2) .news-card {
      height: 470px;
    }

    /* ใบนี้ยาวสุด */
    .news-item:nth-child(3) .news-card {
      height: 490px;
    }

    /* ส่วนรูปภาพ (แสดงสีเทาถ้าไม่มีรูป) */
    .news-thumb {
      height: 220px;
      background-color: #aaa;
      /* สีเทาเข้มแบบในรูปตัวอย่าง */
      background-size: cover;
      background-position: center;
    }

    /* การตัดคำให้ดูเป็นระเบียบ 3 บรรทัด */
    .news-excerpt {
      display: -webkit-box;
      -webkit-line-clamp: 3;
      -webkit-box-orient: vertical;
      overflow: hidden;
      color: #666;
      font-size: 0.95rem;
      line-height: 1.6;
    }

    /* ปรับให้เรียงปกติบนมือถือ */
    @media (max-width: 820px) {
      .news-item {
        margin-top: 0 !important;
        margin-bottom: 30px;
      }
    }

    /*หากท่านมีข้อสงสัยเพิ่มเติม*/
    .contact-footer-section {
      /* ไล่เฉดสีจากม่วงอ่อนไปม่วงเข้มตามรูป */
      background: linear-gradient(to right, #b8a9ef, #6d2c91);
      padding: 60px 0;
      color: #fff;
    }

    .contact-title {
      font-size: 2.2rem;
      font-weight: bold;
      margin-bottom: 30px;
      text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
    }

    /* จัดเรียงฟอร์มเป็นแถวเดียว */
    .contact-inline-form {
      display: flex;
      gap: 15px;
      justify-content: center;
      flex-wrap: wrap;
      /* ให้รองรับมือถือด้วยการขึ้นบรรทัดใหม่ */
    }

    .form-control-custom {
      flex: 1;
      min-width: 200px;
      max-width: 250px;
      height: 50px;
      border: none;
      border-radius: 5px;
      padding: 10px 20px;
      font-size: 0.9rem;
      color: #333;
    }

    .form-control-custom::placeholder {
      color: #bbb;
      font-weight: 500;
    }

    /* ปุ่มสีเหลืองทอง */
    .btn-send-request {
      background-color: #ffb400;
      /* สีเหลืองตามรูป */
      color: #000;
      border: none;
      border-radius: 5px;
      padding: 0 30px;
      height: 50px;
      font-weight: bold;
      cursor: pointer;
      transition: all 0.3s ease;
      min-width: 180px;
    }

    .btn-send-request:hover {
      background-color: #e6a200;
      transform: translateY(-2px);
      box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    }

    .contact-subtitle {
      font-size: 1.1rem;
      opacity: 0.9;
      margin-top: 10px;
    }

    /* ปรับจอมือถือ */
    @media (max-width: 820px) {
      .contact-inline-form {
        flex-direction: column;
        align-items: center;
      }

      .form-control-custom {
        max-width: 100%;
        width: 100%;
      }

      .btn-send-request {
        width: 100%;
      }
    }

    /* ส่วนที่ควบคุมมิติ 3D ของ Container */
    .hero-full {
      perspective: 1000px;
      /* ยิ่งค่าน้อย มิติจะยิ่งพุ่งแรง */
      overflow: hidden;
    }

    .hero-avatars-layer {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      pointer-events: none;
      z-index: 6;
    }

    /* 1. ปรับให้ animation รันต่อกัน (บินเข้าเสร็จแล้วลอยต่อทันที) */
    .ins-img {
      position: absolute;
      opacity: 0;
      filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.3));
      transform-style: preserve-3d;
      will-change: transform, opacity;
      /* ✅ จุดสำคัญ: เพิ่ม Transition ตรงนี้ */
      /* กำหนดให้ scale ใช้เวลา 0.6 วินาที และใช้ cubic-bezier เพื่อให้ดูนุ่มนวลมีมิติ */
      transition: scale 3s cubic-bezier(0.34, 1.3, 0.64, 1),
        filter 0.4s ease,
        z-index 0s;
      /* z-index ให้เปลี่ยนทันที */

      /* บินเข้า 1.5s แล้วเริ่มลอยวนไป (floating) หลังจากจบ 1.5s */
      animation: popIn 1.5s cubic-bezier(0.2, 0.8, 0.2, 1) forwards
    }

    /* ส่วนที่แก้ไขใหม่ */
    .ins-img:hover {
      /* ใช้ scale property แยกต่างหาก แทนการใช้ transform: scale() */
      scale: 1.1 !important;

      /* เอฟเฟกต์แสงและเงาเดิมของคุณ */
      filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.5)) brightness(1.1);

      z-index: 999;
      /* ให้รูปที่ Hover อยู่บนสุด */
      cursor: pointer;
    }


    /* สร้าง Animation การลอยเข้า */


    /* 1. แก้ไข Animation การปรากฏตัวใหม่ */
    @keyframes popIn {
      0% {
        opacity: 0;
        transform: scale(0);
        /* เริ่มจากจุดเล็กๆ */
      }

      60% {
        transform: scale(1.15);
        /* ขยายให้ใหญ่กว่าปกตินิดนึงเพื่อให้ดูมีมิติ (Bounce) */
      }

      100% {
        opacity: 1;
        transform: scale(1);
        /* กลับมาขนาดปกติ */
      }
    }


    /* เรียกใช้งาน Animation โดยใส่ Delay ให้โผล่มาทีละคน */
    /* .ins-img {
      animation: flyIn3D 1.5s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
    } */

    /* ตัวอย่างการวางพิกัดตำแหน่ง (คุณปรับตัวเลข % ตามความสวยงามได้เลย) */
    .ins-1 {
      top: 6%;
      left: 11.5%;
      width: 190px;
      animation-delay: 1.6s;
    }

    .ins-2 {
      top: 6%;
      left: 25%;
      width: 170px;
      animation-delay: 2.2s;
    }

    .ins-3 {
      top: 6%;
      left: 37%;
      width: 150px;
      animation-delay: 1.8s;
    }

    .ins-4 {
      top: 35%;
      left: 7%;
      width: 155px;
      animation-delay: 2.6s;
    }

    .ins-5 {
      top: 33%;
      left: 20%;
      width: 145px;
      animation-delay: 2.0s;
    }

    .ins-6 {
      top: 31%;
      left: 33%;
      width: 160px;
      animation-delay: 2.8s;
    }

    .ins-7 {
      top: 53%;
      left: 14%;
      width: 170px;
      animation-delay: 2.4s;
    }

    .ins-8 {
      top: 49%;
      left: 26%;
      width: 150px;
      animation-delay: 2.0s;
    }

    .ins-1-back {
      top: 6%;
      left: 11.5%;
      width: 190px;
      animation-delay: 0.2s;
    }

    .ins-2-back {
      top: 6%;
      left: 25%;
      width: 170px;
      animation-delay: 0.2s;
    }

    .ins-3-back {
      top: 6%;
      left: 37%;
      width: 150px;
      animation-delay: 0.2s;
    }

    .ins-4-back {
      top: 35%;
      left: 7%;
      width: 155px;
      animation-delay: 0.2s;
    }

    .ins-5-back {
      top: 33%;
      left: 20%;
      width: 145px;
      animation-delay: 0.2s;
    }

    .ins-6-back {
      top: 31%;
      left: 33%;
      width: 160px;
      animation-delay: 0.2s;
    }

    .ins-7-back {
      top: 53%;
      left: 14%;
      width: 170px;
      animation-delay: 0.2s;
    }

    .ins-8-back {
      top: 49%;
      left: 26%;
      width: 150px;
      animation-delay: 0.2s;
    }

    /* หลังจากบินเข้ามาเสร็จ ให้ใช้ Animation ลอยเบาๆ (Floating) ต่อ */
    .ins-img-final {
      animation: floating 3s ease-in-out infinite;
    }

    /* 2. คลาสสำหรับรอบที่ 2 (กลับมาจากหน้าประวัติ) */
    .ins-img-static {
      position: absolute !important;
      opacity: 1 !important;
      filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.3));
      transform: translate3d(0, 0, 0);
      animation: floating 4s ease-in-out infinite;
      /* ลอยทันทีไม่ต้องบิน */
      cursor: pointer;
      pointer-events: auto !important;
    }

    /* 1. ปรับให้ animation รันต่อกัน (บินเข้าเสร็จแล้วลอยต่อทันที) */
    .ins-img-back {
      position: absolute;
      opacity: 1 !important;
      filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.3));
      transform: translate3d(0, 0, 0);
      animation: floating 4s ease-in-out infinite;
      /* ลอยทันทีไม่ต้องบิน */
      cursor: pointer;
      pointer-events: auto !important;
      /* บินเข้า 1.5s แล้วเริ่มลอยวนไป (floating) หลังจากจบ 1.5s */
      animation: popIn 1.5s cubic-bezier(0.175, 0.88, 0.32, 1.275) forwards;


    }

    /* Animation ลอยเบาๆ หลังจากเข้าที่แล้ว */
    @keyframes floating {

      0%,
      100% {
        transform: translate3d(0, 0, 0);
      }

      50% {
        transform: translate3d(0, -10px, 50px);
      }

      /* ให้ลอยขึ้นและพุ่งออกมาข้างหน้าเล็กน้อย */
    }

    /* สไตล์ของขีด Cursor */
    #typewriter-cursor {
      display: inline-block;
      width: 3px;
      height: 1.1em;
      background-color: currentColor;
      margin-left: 0px;
      vertical-align: middle;
      line-height: 1;
    }

    /* คลาสสำหรับการกระพริบ */
    .cursor-blink {
      animation: blink 0.8s infinite;
    }

    @keyframes blink {

      0%,
      100% {
        opacity: 1;
      }

      50% {
        opacity: 0;
      }
    }

    @media (max-width: 991.98px) {

      /* สั่งให้พื้นที่ส่วนนี้มีเว้นระยะจากขอบจอซ้าย-ขวา */
      .hero-services {
        padding-left: 20px !important;
        padding-right: 20px !important; 
      }
    }

    /* บังคับให้ส่วนบรรยายขยายตัวเพื่อดัน Layout ให้เท่ากัน */
    .service-desc {
      flex-grow: 1;
      margin-bottom: 0;
      text-align: center;
      /* จัดกลางตัวอักษรตามที่คุณตั้งค่าไว้ */
    }

    /* สำหรับ Desktop ให้สูงเท่ากัน แต่บนมือถือให้สูงตามเนื้อหาจริง (เพื่อประหยัดพื้นที่) */
    @media (max-width: 991.98px) {
      .service-card {
        min-height: auto;
      }
    }

    /* .service-head {
      width: 100%;
      margin-bottom: 15px;
    } */

    .service-ico {
      flex: 0 0 auto;
      /* ป้องกันไอคอนโดนบีบหรือขยายกว้างเกินไป */
    }

    @media (max-width: 991.98px) {
      .service-head {
        /* บนมือถือ ถ้าอยากให้ไอคอนอยู่บนข้อความ ให้เปลี่ยนเป็น column */
        /* flex-direction: column; */
        justify-content: center;
      }
    }

    /* การสลับเนื้อหาด้วย HTMX */
    .htmx-swapping #hero-master-container {
      opacity: 0;
      transition: opacity 0.3s ease;
    }

    .htmx-settling #hero-master-container {
      opacity: 1;
    }

    /* ตกแต่งองค์ประกอบในการ์ดประวัติ */
    .instructor-profile-overlay {
      animation: fadeIn 0.5s ease forwards;
    }

    .avatar-circle-bg {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 400px;
      height: 400px;
      background: linear-gradient(135deg, #004aad, #287ced);
      border-radius: 50%;
      opacity: 0.1;
    }

    .stat-box {
      position: absolute;
      background: #fff;
      padding: 15px 25px;
      border-radius: 15px;
      box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
      font-weight: bold;
      color: #004aad;
      z-index: 3;
    }

    @keyframes fadeIn {
      from {
        opacity: 0;
        transform: translateY(10px);
      }

      to {
        opacity: 1;
        transform: translateY(0);
      }
    }

    /* บังคับให้เนื้อหาที่โหลดมาใหม่แสดงผลทันที */
    #hero-master-container>.instructor-profile-overlay {
      opacity: 1 !important;
      visibility: visible !important;
      transform: none !important;
      animation: fadeInNew 0.5s ease-in;
    }

    @keyframes fadeInNew {
      from {
        opacity: 0;
      }

      to {
        opacity: 1;
      }
    }



    /* คลาสพุ่ง: ใส่ !important บังคับทุกอย่าง */
    .zoom-out-spark {
      animation: none !important;
      z-index: 99999 !important;
      transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
      transform: scale(15) !important;
      opacity: 0 !important;
      /* ให้จางหายไปตอนพุ่งสุดทาง */
      pointer-events: none !important;
    }

    /* ทำให้ Container ของ Hero ไม่ตัดรูปที่ล้นออกมาขณะพุ่ง */
    #hero-master-container {
      overflow: visible !important;
    }

    /* ปรับแต่งปุ่มให้เหมือนในรูปภาพ */
    .btn-instructor-menu {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      background-color: #f2f2f2;
      /* สีเทาอ่อนตามรูป */
      color: #000000 !important;
      text-decoration: none !important;
      font-weight: 700;
      font-size: 18px;
      padding: 20px 10px;
      border-radius: 50px;
      /* ความโค้งมนแบบมนมาก */
      transition: all 0.3s ease;
      text-align: center;
      width: 100%;
      border: none;
    }

    /* เส้นสีส้มใต้ข้อความ */
    .orange-line {
      display: block;
      width: 60%;
      height: 3px;
      background-color: #FDB835;
      /* สีส้มตามรูป */
      margin-top: 8px;
      border-radius: 2px;
    }

    /* เอฟเฟกต์เวลา Hover */
    .btn-instructor-menu:hover {
      background-color: #e8e8e8;
      transform: translateY(-3px);
      box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
    }

    .entraining-logo {
      height: 120px;
      display: flex;
      align-items: center;
    }

    /* --- ส่วนของ Loader เมื่อกลายเป็น Background --- */
    #enmark-loader-overlay {
      transition: background-color 1s ease, z-index 0s linear 1s !important;
    }

    #enmark-loader-overlay.is-background {
      z-index: -1 !important;
      /* ผลักไปอยู่หลังสุด */
      background-color: #fcfdfe !important;
      /* เปลี่ยนสีพื้นหลังให้สว่างเข้ากับเว็บ */
      pointer-events: none;
    }

    #enmark-loader-overlay.is-background #enmark-loader-container {
      opacity: 0.12;
      /* ทำให้จางลงเป็นลายน้ำ (ปรับตามชอบ 0.1 - 0.2) */
      transform: scale(1.15);
      /* ขยายขนาดขึ้นนิดหน่อยให้ดูเป็น Background */
      transition: opacity 1.2s ease, transform 1.5s ease;
    }

    /* เมื่อไม่ได้อยู่ที่หน้า Home ให้สั่งซ่อนทิ้งทันที */
#enmark-loader-overlay.is-hidden {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}


    /* --- ส่วนของเนื้อหาหน้า Index (ให้ค่อยๆ Fade In ขึ้นมาทับ) --- */
    /* เราจะคุมผ่าน class .content-ready ที่จะใส่ให้ <body> */
    .hero-full,
    header,
    .section-bottom {
      opacity: 1;
      transform: translateY(15px);
      transition: opacity 1s ease-out, transform 1s ease-out;
    }

    body.content-ready .hero-full,
    body.content-ready header,
    body.content-ready .section-bottom {
      opacity: 1;
      transform: translateY(0);
    }


    .first-div {
      height: 170px;
    }

    /* --- Social Media Profiles --- */
    .instructor-social {
      display: flex;
      gap: 15px;
      margin-top: 25px;
    }

    .social-link {
      width: 45px;
      height: 45px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      text-decoration: none !important;
      font-size: 20px;
      transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      background: #f0f2f5;
      color: #4b5563;
    }

    .social-link:hover {
      transform: translateY(-5px);
      color: #fff;
    }

    /* สีเฉพาะตามแบรนด์ */
    .social-link.fb:hover {
      background-color: #1877F2;
      box-shadow: 0 10px 20px rgba(24, 119, 242, 0.3);
    }

    .social-link.be:hover {
      background-color: #0057ff;
      box-shadow: 0 10px 20px rgba(0, 87, 255, 0.3);
    }

    .social-link.dribbble:hover {
      background-color: #ea4c89;
      box-shadow: 0 10px 20px rgba(234, 76, 137, 0.3);
    }

    .social-link.line:hover {
      background-color: #06C755;
      box-shadow: 0 10px 20px rgba(6, 199, 85, 0.3);
    }

    /* สถานะปกติของทั้งสองส่วน */
    .services-transition {
      transition: all 0.8s cubic-bezier(0.34, 1.56, 0.64, 1);
      /* ใช้ Bezier เพื่อให้มันเด้งๆ นุ่มๆ */
      opacity: 1;
      transform: scale(1);
    }

    /* ✅ สถานะตอนที่ "หายไป" (ย่อเล็กลง) */
    .service-shrink {
      opacity: 0 !important;
      transform: scale(0.2) !important;
      /* ย่อเหลือครึ่งเดียว */
      pointer-events: none;
    }

    /* ✅ สถานะเริ่มต้นของของใหม่ (ต้องเล็กไว้ก่อนโชว์) */
    .service-prepare-zoom {
      opacity: 0;
      transform: scale(0.2);
    }


    .fade-out {
      opacity: 0;
      transform: translateY(20px);
    }

    /* ✅ 1. อนิเมชั่นกระโดดดึ๋งๆ */
    @keyframes textBounce {

      0%,
      20%,
      50%,
      80%,
      100% {
        transform: translateY(0);
      }

      40% {
        transform: translateY(-6px);
      }

      60% {
        transform: translateY(-3px);
      }
    }

    /* ✅ 2. อนิเมชั่นแสงวิ้งๆ (Shimmer) */
    @keyframes textGlow {
      0% {
        text-shadow: 0 0 0px #fdb83500;
      }

      50% {
        text-shadow: 0 0 15px rgba(253, 184, 53, 0.8), 0 0 20px rgba(253, 184, 53, 0.4);
        color: #ffde59;
      }

      100% {
        text-shadow: 0 0 0px rgba(253, 184, 53, 0);
      }
    }

    .clickable-concept {
      display: inline-block;
      /* สำคัญ: ต้องเป็น inline-block ถึงจะกระโดดได้ */
      color: #004aad;
      transition: all 0.3s ease;
      /* สั่งให้เล่นอนิเมชั่น */
      animation: textBounce 3s ease infinite, textGlow 3s ease infinite;
    }

    /* เพิ่มลูกเล่นตอนเอาเมาส์ไปวาง (Hover) */
    .clickable-concept:hover {
      color: #fdb835 !important;
      /* เปลี่ยนเป็นสีชมพู Enmark ตอนจ่อเมาส์ */
      transform: scale(1.1);
      animation-play-state: paused;
      /* หยุดเต้นตอนคนจะกด */
    }

    /* ✅ อนิเมชั่นเด้งขึ้นลงเบาๆ (Floating) */
    @keyframes imageFloat {

      0%,
      100% {
        transform: translateY(0);
      }

      50% {
        transform: translateY(-15px);
      }
    }

    /* ✅ ตกแต่งรูปภาพให้ทันสมัย */
    .modern-img-frame {
      animation: imageFloat 4s ease-in-out infinite;
      /* สั่งให้เด้ง */
      transition: all 0.3s ease;
    }

    /* ✅ สไตล์ปุ่มปิดมุมบนขวา */
.btn-close-concept {
    position: absolute;
    top: 25px;
    right: 25px;
    width: 45px;
    height: 45px;
    background-color: #f0f2f5;
    color: #4b5563;
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    z-index: 10;
}

.btn-close-concept:hover {
    background-color: #e5175a; /* สีชมพู Enmark */
    color: #ffffff;
    transform: rotate(90deg) scale(1.1); /* หมุนและขยายเล็กน้อยตอน hover */
    box-shadow: 0 5px 15px rgba(229, 23, 90, 0.3);
}

/* เพิ่มให้ปุ่มดูชัดขึ้นบนจอมือถือ */
@media (max-width: 767px) {
    .btn-close-concept {
        top: 15px;
        right: 15px;
        width: 38px;
        height: 38px;
        font-size: 18px;
    }
}

/* ถ้ามีคลาสนี้อยู่ ให้แก้ color เป็น #000 */
.nested-list {
    color: #000 !important;
}

.nested-list li {
    color: #000 !important;
}

.hero-title {
    color: #000 !important;
}

/* เจาะจงไปที่ li ภายใต้ nested-list */
.nested-list li {
    font-size: clamp(10px, 3vw, 22px) !important; /* ปรับตัวหลังเป็น 22px หรือตามชอบเพื่อให้ไม่ใหญ่เกินไปบนคอม */
    line-height: 1.5; /* ช่วยให้ระยะบรรทัดอ่านง่ายขึ้น */
}

/* *********************************************** */
/* *********************************************** */
/* *********************************************** */
/* *********************************************** */
/* --- Bottom Navigation Styles --- */
.bottom-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100px;
  background: #ffffff;
  box-shadow: 0 -2px 15px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  display: flex;
  align-items: center;
}

.nav-item-bottom {
  text-decoration: none !important;
  color: #4b5563;
  display: flex;
  flex-direction: column;
  font-size: 20px;
  transition: all 0.3s ease;
}

.nav-item-bottom i {
  font-size: 20px;
  margin-bottom: 4px;
}

.nav-item-bottom.active, .nav-item-bottom:hover {
  color: #004aad; /* สีน้ำเงิน Enmark */
}

/* เพิ่ม Padding ให้ Body เพื่อไม่ให้ Bottom Nav ทับเนื้อหาด้านล่างสุดของเว็บ */
@media (max-width: 991.98px) {
  body {
    padding-bottom: 70px;
  }
}

/* จังหวะที่เนื้อหากำลังถูกสลับ */
.htmx-swapping #main-content-area {
    opacity: 0;
    transition: opacity 0.2s ease-out;
}

/* จังหวะที่เนื้อหาใหม่ลงตัวแล้ว */
.htmx-settling #main-content-area {
    opacity: 1;
}

/* 2. สำหรับจังหวะที่กดปุ่ม Back (History Navigation) */
/* HTMX จะเติม class .htmx-settling เมื่อเนื้อหาใหม่ (จาก cache) ลงตัว */
#main-content-area.htmx-settling {
    opacity: 1;
    transition: opacity 0.3s ease-in;
}

/* ตั้งค่าเริ่มต้นให้พร้อมสำหรับ Animation (ถ้าจำเป็น) */
#main-content-area {
    opacity: 1;
    transition: opacity 0.3s ease-in;
}

/* จังหวะที่กด Back กลับมาหน้าเดิม */
#main-content-area.htmx-settling {
    animation: simpleFadeIn 0.4s ease-in;
}

@keyframes simpleFadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* *********************************************** */
/* *********************************************** */
/* *********************************************** */
/* *********************************************** */

/* *********************************************** */
/* *********************************************** */
/* *********************************************** */
/* *********************************************** */
/* header-style */
/* สีสำหรับเมนูที่กำลังใช้งานอยู่ */
.main-nav .nav-link.active,
.nav-item-bottom.active {
    color: #6b4cf6 !important; /* สีม่วง Enmark */
     pointer-events: none !important; 
  cursor: default !important;
}

.nav-item-bottom.active i, 
.nav-item-bottom.active span {
    color: #6b4cf6 !important;
     pointer-events: none;
  cursor: default !important;
}
/* *********************************************** */
/* *********************************************** */
/* *********************************************** */
/* *********************************************** */

/* style-profile */

            .btn-back-simple:hover {
                color: #004aad !important;
                transform: translateX(-3px);
            }

            .instructor-hero-section {
                border-radius: 20px;
                position: relative;
                /* ไล่เฉดสีจากสีขาวตรงกลาง ไปหาสีน้ำเงินที่ขอบ (Radial Gradient) */
                background: white;
                overflow: hidden;
                /* ใส่เงาด้านขวาและด้านล่างให้ดูนูนออกมาจากพื้นหลังหลัก */
                box-shadow: 20px 0 30px rgba(0, 0, 0, 0.5);
            }

            /* สร้างเส้น Grid เล็กๆ เป็นพื้นหลัง */
            .instructor-hero-section::before {
                content: "";
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;

                background-image:
                    linear-gradient(to right, rgba(0, 100, 255, 0.08) 1px, transparent 1px),
                    linear-gradient(to bottom, rgba(0, 100, 255, 0.08) 1px, transparent 1px);
                background-size: 30px 30px;
                /* ขนาดของช่องตาราง */
                pointer-events: none;
                z-index: 0;
            }

            /* ดันเนื้อหาให้อยู่เหนือเส้น Grid */
            .instructor-hero-section .container {
                position: relative;
                z-index: 1;
            }

            /* สไตล์ปุ่มกลับแบบใหม่ที่อยู่ใน Section */
            .btn-back-inside {
                position: absolute;
                top: 20px;
                left: 25px;
                z-index: 10;
                border: none;
                background: rgba(255, 255, 255, 0.15);
                /* พื้นหลังขาวจางๆ ดูทันสมัย */
                backdrop-filter: blur(4px);
                /* ทำเอฟเฟกต์กระจกฝ้า */
                color: #000000;
                /* ตัวอักษรสีขาว */
                padding: 6px 14px;
                border-radius: 50px;
                cursor: pointer;
                display: inline-flex;
                align-items: center;
                gap: 8px;
                font-size: 0.85rem;
                transition: all 0.3s ease;
            }

            .btn-back-inside:hover {
                background: rgba(255, 255, 255, 0.25);
                transform: translateX(-5px);
                /* เลื่อนไปทางซ้ายเล็กน้อยเวลาชี้ */
                color: #fff !important;
            }