

    @font-face {
      font-family: 'Chula';
      src: url('../fonts/CHULALONGKORNBold.otf') format('opentype');
      font-weight: normal;
    }

    :root {
      --thm-font: "Chula", "Noto Sans Thai", sans-serif;
      --pink-1: #fff0f6;
      --pink-2: #ffd6e7;
      --pink-3: #ffb3d1;
      --pink-4: #ff7eb3;
      --pink-5: #e75480;
      --text-dark: #5a2a3a;
      --white: #ffffff;
      --shadow: 0 12px 32px rgba(231, 84, 128, 0.16);
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      font-family: var(--thm-font);
      background: linear-gradient(180deg, #fff8fb 0%, #fff1f6 100%);
      color: var(--text-dark);
    }

    .navbar {
      background: rgba(255, 255, 255, 0.88);
      backdrop-filter: blur(10px);
      box-shadow: 0 8px 24px rgba(231, 84, 128, 0.08);
    }

    .navbar-brand,
    .nav-link {
      color: var(--text-dark) !important;
      font-weight: 600;
    }

    .nav-link:hover,
    .nav-link.active {
      color: var(--pink-5) !important;
    }

    .hero-wrap {
      padding-top: 40px;
    }

    .carousel-item img {
      height: 520px;
      object-fit: cover;
      border-radius: 28px;
    }

    .hero-caption {
      background: linear-gradient(180deg, rgba(255,255,255,0.15), rgba(231,84,128,0.45));
      border-radius: 20px;
      padding: 1.5rem;
      backdrop-filter: blur(6px);
    }

    .section-title {
      font-size: 2rem;
      font-weight: 800;
      color: var(--pink-5);
      margin-bottom: 0.75rem;
    }

    .section-subtitle {
      color: #8a5a69;
      max-width: 720px;
      margin: 0 auto 2rem;
    }

    .feature-card {
      background: var(--white);
      border: 0;
      border-radius: 24px;
      box-shadow: var(--shadow);
      transition: all 0.3s ease;
      height: 100%;
      overflow: hidden;
    }

    .feature-card:hover,
    .article-card:hover,
    .detail-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 16px 40px rgba(231, 84, 128, 0.2);
    }

    .icon-badge {
      width: 72px;
      height: 72px;
      border-radius: 22px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: linear-gradient(135deg, var(--pink-4), var(--pink-5));
      color: #fff;
      font-size: 1.9rem;
      box-shadow: 0 10px 24px rgba(231, 84, 128, 0.22);
    }

    .btn-pink {
      background: linear-gradient(135deg, var(--pink-4), var(--pink-5));
      border: none;
      color: #fff;
      border-radius: 999px;
      padding: 0.8rem 1.4rem;
      font-weight: 700;
      box-shadow: 0 10px 22px rgba(231, 84, 128, 0.2);
    }

    .btn-pink:hover {
      color: #fff;
      opacity: 0.95;
    }

    .detail-card {
      background: rgba(255,255,255,0.9);
      border-radius: 28px;
      overflow: hidden;
      box-shadow: var(--shadow);
      transition: all 0.3s ease;
    }

    .detail-image {
      width: 100%;
      height: 100%;
      min-height: 380px;
      object-fit: cover;
    }

    .detail-content {
      padding: 2.5rem;
    }

    .pink-list li {
      margin-bottom: 0.8rem;
    }

    .pink-list i {
      color: var(--pink-5);
      margin-right: 0.5rem;
    }

    .article-card {
      border: 0;
      border-radius: 24px;
      overflow: hidden;
      box-shadow: var(--shadow);
      background: #fff;
      transition: all 0.3s ease;
      height: 100%;
    }

    .article-card img {
      height: 220px;
      object-fit: cover;
    }

		.soft-section .articles-link{
      text-decoration: none;
			color: var(--pink-5);
    }

		.soft-section .articles-link:hover{
			color: var(--text-dark);
    }

    .chart-card {
      background: linear-gradient(180deg, #fff8fc 0%, #fff 100%);
      border-radius: 24px;
      padding: 1.5rem;
      border: 1px solid rgba(231, 84, 128, 0.12);
    }

    .chart-track {
      width: 100%;
      height: 18px;
      border-radius: 999px;
      background: #ffd9e8;
      overflow: hidden;
    }

    .chart-bar {
      height: 100%;
      border-radius: 999px;
      background: linear-gradient(90deg, #ff9fc4 0%, #e75480 100%);
      box-shadow: 0 8px 18px rgba(231, 84, 128, 0.22);
    }

    .stats-side {
      background: linear-gradient(180deg, #fff0f6 0%, #ffffff 100%);
      border: 1px solid rgba(231, 84, 128, 0.12);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.6);
    }

    .text-pink {
      color: var(--pink-5);
    }

    .sponsor-item {
      background: linear-gradient(135deg, #fff7fb, #fff0f6);
      border: 1px solid rgba(231, 84, 128, 0.12);
      border-radius: 18px;
      padding: 1rem 1.1rem;
      font-weight: 600;
      color: var(--text-dark);
      text-align: center;
      height: 100%;
      box-shadow: 0 8px 18px rgba(231, 84, 128, 0.08);
      transition: all 0.25s ease;
    }

    .sponsor-item:hover {
      transform: translateY(-4px);
      box-shadow: 0 12px 24px rgba(231, 84, 128, 0.14);
    }

    .sponsor-control {
      width: 44px;
      height: 44px;
      top: 50%;
      transform: translateY(-50%);
      background: linear-gradient(135deg, var(--pink-4), var(--pink-5));
      border-radius: 50%;
      opacity: 1;
    }

    .sponsor-control.carousel-control-prev {
      left: -10px;
    }

    .sponsor-control.carousel-control-next {
      right: -10px;
    }

    .custom-table thead th {
      background: #fff1f6;
      color: var(--pink-5);
      border-bottom: 0;
      font-weight: 800;
      white-space: nowrap;
    }

    .custom-table tbody tr {
      border-color: rgba(231, 84, 128, 0.08);
    }

    .custom-table tbody tr:hover {
      background: #fff8fb;
    }

    .custom-table td,
    .custom-table th {
      padding: 1rem 1rem;
    }

    .table-badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 82px;
      padding: 0.35rem 0.75rem;
      border-radius: 999px;
      font-size: 0.85rem;
      font-weight: 700;
    }

    .table-badge.hot {
      background: #ffd3e4;
      color: #c63d6c;
    }

    .table-badge.good {
      background: #ffe6f0;
      color: #d04f7d;
    }

    .table-badge.normal {
      background: #fff2f7;
      color: #a45572;
    }

    @media (max-width: 991.98px) {
      .sponsor-control.carousel-control-prev {
        left: 6px;
      }

      .sponsor-control.carousel-control-next {
        right: 6px;
      }
    }

    .tag {
      display: inline-block;
      padding: 0.35rem 0.8rem;
      border-radius: 999px;
      background: var(--pink-2);
      color: var(--pink-5);
      font-size: 0.85rem;
      font-weight: 700;
    }

    footer {
      background: linear-gradient(135deg, #ff9fc4, #e75480);
      color: #fff;
      border-top-left-radius: 32px;
      border-top-right-radius: 32px;
      margin-top: 4rem;
    }

    footer a {
      color: #fff;
      text-decoration: none;
    }

    footer a:hover {
      text-decoration: underline;
    }

    .soft-section {
      padding: 3rem 0;
    }

    .countdown-wrap{
      background:linear-gradient(135deg, rgba(255,255,255,0.78), rgba(255,240,246,0.92));
      backdrop-filter:blur(12px);
      border:1px solid rgba(231,84,128,0.12);
      border-radius:30px;
      padding:2rem;
      box-shadow:0 14px 40px rgba(231,84,128,0.14);
    }

    .count-box{
      height:100%;
      border-radius:24px;
      padding:1.4rem 1rem;
      text-align:center;
      background:linear-gradient(180deg,#fff,#fff5f9);
      border:1px solid rgba(231,84,128,0.12);
      box-shadow:0 10px 24px rgba(231,84,128,0.08);
    }

    .count-num{
      font-size:2.4rem;
      font-weight:800;
      line-height:1;
      background:linear-gradient(135deg,#ff7eb3,#e75480);
      -webkit-background-clip:text;
      background-clip:text;
      -webkit-text-fill-color:transparent;
    }

    .count-label{
      margin-top:.5rem;
      color:#8a5a69;
      font-weight:700;
    }

    @media (max-width: 767.98px){
      .count-num{
        font-size:2rem;
  		}
		}

    @media (max-width: 991.98px) {
      .carousel-item img {
        height: 380px;
      }

      .detail-content {
        padding: 2rem;
      }
    }

    @media (max-width: 767.98px) {
      .carousel-item img {
        height: 280px;
      }

      .section-title {
        font-size: 1.6rem;
      }

      .detail-image {
        min-height: 260px;
      }
    }