/* Header block 1. */
.dropdown-custom-explore { position:relative; }
                  .explore-btn:after { display:none; }
                  .explore-dropdown a:hover { background:#f7f9fb; color:#1947c4; }
                  @media (max-width: 1199px) {
                    .dropdown-custom-explore { display:none !important; }
                    .menu-main { display:block !important; gap:0 !important; }
                    .explore-mobile {
                      display: block !important;
                      margin-top: 8px;
                      margin-left: 0;
                      text-align: left;
                    }
                    .explore-mobile .explore-dropdown {
                      position: static !important;
                      min-width: unset !important;
                      box-shadow: none !important;
                      border-radius: 0 !important;
                      border: none !important;
                      padding: 0 !important;
                    }
                    .explore-mobile .explore-btn {
                      width: 100%;
                      justify-content: flex-start;
                      border-radius: 0;
                      padding-left: 0;
                    }
                  }
                  @media (min-width: 992px) {
                    .explore-mobile { display: none !important; }
                  }

/* Header block 2. */
.edit-portfolio-btn {
                          margin-left: 10px;
                          padding: 4px 10px;
                          background: #1947c4;
                          color: #fff !important;   /* chữ trắng */
                          font-size: 13px;
                          border-radius: 4px;
                          text-decoration: none;
                          transition: 0.2s;
                          display: inline-block;
                        }
                        .edit-portfolio-btn:hover {
                          background: #1947c4;
                          color: #fff !important;   /* giữ chữ trắng khi hover */
                        }
                        
                        /* Avatar and greeting styles */
                        .account-menu { display: inline-flex; align-items: center; min-width: 0; }
                        .account-avatar { display: inline-grid; place-items: center; width: 36px; height: 36px; flex: 0 0 36px; border-radius: 50%; overflow: hidden; background: #eef2f8; box-shadow: 0 0 0 1px #dfe8ff; }
                        .account-avatar img { display: block !important; width: 100% !important; height: 100% !important; min-width: 100% !important; max-width: none !important; aspect-ratio: 1 / 1 !important; object-fit: cover !important; object-position: center !important; border: 2px solid #fff; border-radius: 50% !important; margin: 0 !important; padding: 0 !important; }
                        .account-greeting {
                          display: inline-flex;
                          align-items: center;
                          gap: 8px;
                          padding: 5px 10px 5px 6px;
                          border-radius: 999px;
                          background: #f3f7ff;
                          border: 1px solid #dce7ff;
                          color: #1e3d8f;
                          font-size: 14px;
                          line-height: 1;
                        }
                        .account-hello { color: #3658ab; font-weight: 500; }
                        .account-name { color: #1947c4; font-weight: 700; }
                        
                        /* On small screens hide greeting text and show only avatar */
                        @media (max-width: 768px) {
                          .account-greeting {
                            padding: 0;
                            border: 0;
                            background: transparent;
                          }
                          .account-hello,
                          .account-name { display: none; }
                        }

/* Header block 3. */
.register {
				  display: inline-flex;
          justify-content: center;
				  align-items: center;
          gap: 7px;
          background: linear-gradient(45deg, #0088fd 0%, #003bff 50%, #001faa 100%);
          color: #fff !important;
          border-radius: 10px;
          padding: 8px 16px;
          font-size: 14px;
          font-weight: 600;
          letter-spacing: 0.1px;
          border: 1px solid rgba(255, 255, 255, 0.24);
          box-shadow: 0 8px 18px rgba(0, 55, 200, 0.24);
          transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
				  text-decoration: none;
				}

        .register:hover,
        main .section-home .login-register:hover {
          transform: translateY(-1px);
          filter: brightness(1.06);
          box-shadow: 0 12px 24px rgba(0, 55, 200, 0.3);
          color: #fff !important;
        }

        main .section-home .login-register {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          background: linear-gradient(45deg, #0088fd 0%, #003bff 50%, #001faa 100%);
          color: #fff !important;
          border-radius: 10px;
          padding: 10px 26px;
          font-size: 14px;
          font-weight: 600;
          letter-spacing: 0.1px;
          border: 1px solid rgba(255, 255, 255, 0.24);
          box-shadow: 0 8px 18px rgba(0, 55, 200, 0.24);
          text-decoration: none;
          transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
        }

				/* Desktop: hiện chữ, ẩn icon */
				.register .icon {
				  display: none;
				}
				.register .text {
				  display: inline;
				}

				/* Mobile: hiện icon, ẩn chữ */
				@media (max-width: 768px) {
				  .register .icon {
					display: inline;
          width: 18px;
          height: 18px;
				  }
				  .register .text {
					display: none;
				  }
          .register {
          width: 38px;
          height: 38px;
          padding: 0;
          font-size: 0;
          border-radius: 999px;
          }
				}

/* Header block 4. */
/* Fix: Đảm bảo nút đóng menu mobile luôn nằm trên */
                  .menu-mobile {
                    z-index: 1000;
                  }

/* Header block 5. */
.header-portfolio {
        background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
        border-bottom: 1px solid #e7ebf4;
        box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06) !important;
        z-index: 990 !important;
      }

      .header-portfolio .top-header {
        background: #f8faff;
        border-bottom: 1px solid #edf1fa;
      }

      .header-portfolio .top-header .menu-top,
      .header-portfolio .top-header .menu-top ul {
        display: flex;
        align-items: center;
        gap: 12px;
        margin: 0;
        padding: 0;
        list-style: none;
      }

      .header-portfolio .top-header .menu-top a {
        color: #5f6b84;
        font-size: 13px;
        font-weight: 500;
        text-decoration: none;
        transition: color 0.2s ease;
      }

      .header-portfolio .top-header .menu-top a:hover {
        color: #1947c4;
      }

      .header-portfolio .inner-right-header-top .social {
        display: flex;
        align-items: center;
        gap: 8px;
      }

      .header-portfolio .inner-right-header-top .social a {
        width: 28px;
        height: 28px;
        border-radius: 999px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: #ffffff;
        border: 1px solid #e7ebf4;
        color: #64748b;
        transition: all 0.2s ease;
      }

      .header-portfolio .inner-right-header-top .social a:hover {
        border-color: #c8d3ec;
        color: #1947c4;
        transform: translateY(-1px);
      }

      .header-portfolio .main-header {
        padding: 12px 0;
      }

      .header-portfolio .main-header .container {
        max-width: 1280px;
      }

      .header-portfolio .main-header-inner {
        min-height: 64px;
      }

      .header-portfolio .logo img {
        max-height: 40px;
        width: auto;
      }

      .header-portfolio .menu-main {
        gap: 12px !important;
      }

      .header-portfolio .menu-main .menu,
      .header-portfolio .menu-main .menu ul {
        display: flex;
        align-items: center;
        gap: 6px;
        margin: 0;
        padding: 0;
        list-style: none;
      }

      .header-portfolio .menu-main .menu > li > a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 9px 14px;
        border-radius: 999px;
        color: #1947c4;
        font-size: 14px;
        font-weight: 600;
        letter-spacing: 0.1px;
        text-decoration: none;
        transition: background-color 0.2s ease;
      }

      .header-portfolio .menu-main .menu > li > a::before,
      .header-portfolio .menu-main .menu > li > a::after,
      .header-portfolio .menu-main .menu > li::before,
      .header-portfolio .menu-main .menu > li::after {
        content: none !important;
        display: none !important;
        background: transparent !important;
      }

      .header-portfolio .menu-main .menu > li.current-menu-item > a,
      .header-portfolio .menu-main .menu > li > a:hover {
        background: #eef3ff;
        color: #1947c4;
        transform: none !important;
        box-shadow: none !important;
      }

      .header-portfolio .dropdown-custom-explore .explore-btn {
        background: #f3f6ff !important;
        color: #1947c4 !important;
        border: 1px solid #d4def5 !important;
        border-radius: 999px !important;
        width: auto !important;
        height: 42px !important;
        min-height: 42px !important;
        padding: 0 16px !important;
        line-height: 1 !important;
        box-sizing: border-box !important;
        font-weight: 600 !important;
      }

      .header-portfolio .dropdown-custom-explore .explore-btn:hover {
        background: #1947c4 !important;
        color: #fff !important;
        border-color: #1947c4 !important;
      }

      .header-portfolio .account {
        display: flex;
        align-items: center;
        gap: 8px;
      }

      .header-portfolio .main-header .main-header-inner .account .account-menu {
        position: relative;
        display: inline-flex;
        align-items: center;
      }

      .header-portfolio .main-header .main-header-inner .account .account-menu::after {
        content: "";
        position: absolute;
        top: 100%;
        right: 0;
        width: 100%;
        height: 14px;
      }

      .header-portfolio .main-header .main-header-inner .account .show-submenu {
        position: absolute;
        top: 100%;
        right: 0;
        left: auto;
        width: 240px;
        margin: 0;
        padding: 14px 10px 10px;
        background: #ffffff !important;
        border: 1px solid #e2e8f7 !important;
        border-radius: 12px;
        box-shadow: 0 16px 32px rgba(15, 23, 42, 0.16);
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
        transform: translateY(8px);
        transition: opacity 0.2s ease, transform 0.2s ease;
        z-index: 1001;
      }

      .header-portfolio .main-header .main-header-inner .account .account-menu:hover .show-submenu,
      .header-portfolio .main-header .main-header-inner .account .account-menu:focus-within .show-submenu {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
      }

      .header-portfolio .main-header .main-header-inner .account .show-submenu::before {
        content: none;
      }

      .header-portfolio .main-header .main-header-inner .account .show-submenu ul {
        list-style: none;
        margin: 0;
        padding: 0;
      }

      .header-portfolio .main-header .main-header-inner .account .show-submenu ul li {
        margin: 0;
      }

      .header-portfolio .main-header .main-header-inner .account .show-submenu ul li + li {
        margin-top: 2px;
      }

      .header-portfolio .main-header .main-header-inner .account .show-submenu ul li a {
        display: block;
        padding: 9px 12px;
        border-radius: 8px;
        font-size: 14px !important;
        font-weight: 500;
        color: #1f2f57 !important;
        text-decoration: none;
        line-height: 1.35;
        transition: background-color 0.2s ease, color 0.2s ease;
      }

      .header-portfolio .main-header .main-header-inner .account .show-submenu ul li a:hover {
        background: #edf3ff !important;
        color: #1947c4 !important;
      }

      .header-portfolio .account .tk,
      .header-portfolio .account .tk-u {
        border-radius: 999px;
      }

      .header-portfolio .account .register {
        padding: 10px 26px;
        border-radius: 10px;
        border: 1px solid rgba(255, 255, 255, 0.24);
        background: linear-gradient(45deg, #0088fd 0%, #003bff 50%, #001faa 100%);
        color: #fff !important;
        font-size: 14px;
        font-weight: 600;
        letter-spacing: 0.1px;
        box-shadow: 0 8px 18px rgba(0, 55, 200, 0.24);
        text-decoration: none;
        transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
      }

      .header-portfolio .account .register:hover {
        transform: translateY(-1px);
        filter: brightness(1.06);
        box-shadow: 0 12px 24px rgba(0, 55, 200, 0.3);
        color: #fff !important;
      }

      /* Force login button and hero signup button to be visually identical */
      .header-portfolio .account a.register.login-register,
      main .section-home a.login-register {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 10px 26px !important;
        min-height: 42px !important;
        border-radius: 10px !important;
        border: 1px solid rgba(255, 255, 255, 0.24) !important;
        background: linear-gradient(45deg, #0088fd 0%, #003bff 50%, #001faa 100%) !important;
        color: #fff !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        letter-spacing: 0.1px !important;
        line-height: 1.2 !important;
        box-shadow: 0 8px 18px rgba(0, 55, 200, 0.24) !important;
        text-decoration: none !important;
        transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease !important;
      }

      .header-portfolio .account a.register.login-register:hover,
      main .section-home a.login-register:hover {
        transform: translateY(-1px) !important;
        filter: brightness(1.06) !important;
        box-shadow: 0 12px 24px rgba(0, 55, 200, 0.3) !important;
        color: #fff !important;
      }

      .header-portfolio .cart {
        width: 38px;
        height: 38px;
        border-radius: 999px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        position: relative;
        color: #334155;
        background: #fff;
        border: 1px solid #dde4f4;
        text-decoration: none;
      }

      .header-portfolio .cart:hover {
        color: #1947c4;
      }

      .header-portfolio .cart .cart-count {
        position: absolute;
        top: -5px;
        right: -3px;
        min-width: 16px;
        height: 16px;
        border-radius: 999px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 10px;
        font-weight: 700;
        background: #1947c4;
        color: #fff;
        padding: 0 4px;
      }

      @media (max-width: 991px) {
        .header-portfolio .top-header {
          display: none;
        }

        .header-portfolio .main-header {
          padding: 8px 0;
        }

        .header-portfolio .logo img {
          max-height: 34px;
        }

        .header-portfolio .menu-main .menu > li > a {
          border-radius: 12px;
          justify-content: flex-start;
          width: 100%;
        }

        .header-portfolio .account a.register.login-register {
          width: 38px !important;
          height: 38px !important;
          min-height: 38px !important;
          padding: 0 !important;
          font-size: 0 !important;
          line-height: 0 !important;
          border-radius: 999px !important;
        }

        .header-portfolio .account a.register.login-register .text {
          display: none !important;
        }

        .header-portfolio .account a.register.login-register .icon {
          display: inline-block !important;
          width: 18px !important;
          height: 18px !important;
        }
      }
