@font-face {
    font-family: "Raleway-Light";
    src: url("../fonts/Raleway-Light.woff") format("woff");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
  }
@font-face {
    font-family: "Raleway-SemiBold";
    src: url("../fonts/Raleway-SemiBold.woff") format("woff");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
  }
  
  :root {
    /* Colors */
    --tp-black: #181818;
    --tp-gray: #9E9E9E;
    --tp-dark-gray: #333333;
    --tp-light-gray: #f3f3f3;
    --tp-dim-gray: #5F5F5F;
    --tp-silver-gray: #D0D0D0;
  
    /* Font sizes */
    --text-14: 0.875rem;
    --text-16: 1rem;
    --text-18: 1.125rem;
    --text-20: 1.25rem;
    --text-32: 2rem;
    --text-36: 2.25rem;
    --text-60: 3.75rem;
  
    /* Raleway font sizes */
    --rale-54: 3.375rem;
    --rale-50: 3.125rem;
    --rale-40: 2.5rem;

      
      --tracking-5: 5px;
  }

  .loader {
    color: var(--tp-black);
    font-size: 10px;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    position: relative;
    text-indent: -9999em;
    animation: mulShdSpin 1.3s infinite linear;
    transform: translateZ(0);
  }

  .search-date-loading {
    position: absolute;
    top: 60px;
    left: 0;
    right: 0;
    background: #eee;
    z-index: 3;
    height: 100%;
}

.search-date-loading .loader {
    margin: auto;
    z-index: 2;
}

.no-webinar-found {
    text-align: center;
    grid-column: 1 / -1;
}
  
  @keyframes mulShdSpin {
    0%,
    100% {
      box-shadow: 0 -3em 0 0.2em, 
      2em -2em 0 0em, 3em 0 0 -1em, 
      2em 2em 0 -1em, 0 3em 0 -1em, 
      -2em 2em 0 -1em, -3em 0 0 -1em, 
      -2em -2em 0 0;
    }
    12.5% {
      box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 
      3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, 
      -2em 2em 0 -1em, -3em 0 0 -1em, 
      -2em -2em 0 -1em;
    }
    25% {
      box-shadow: 0 -3em 0 -0.5em, 
      2em -2em 0 0, 3em 0 0 0.2em, 
      2em 2em 0 0, 0 3em 0 -1em, 
      -2em 2em 0 -1em, -3em 0 0 -1em, 
      -2em -2em 0 -1em;
    }
    37.5% {
      box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
       3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, 
       -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
    }
    50% {
      box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
       3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, 
       -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
    }
    62.5% {
      box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
       3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, 
       -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
    }
    75% {
      box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 
      3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, 
      -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
    }
    87.5% {
      box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 
      3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, 
      -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
    }
  }  
  
  .tp-black {
    color: var(--tp-black);
  }
  
  .tp-gray {
    color: var(--tp-gray);
  }
  
  .tp-dark-gray {
    color: var(--tp-dark-gray);
  }
  
  .tp-light-gray {
    color: var(--tp-light-gray);
  }
  
  .tp-dim-gray {
      color: var(--tp-dim-gray)
  }
  
  .tp-silver-gray {
    color: var(--tp-silver-gray)
  }
  
  .tp-bg-black {
    background-color: var(--tp-black);
  }
  
  .tp-bg-gray {
    background-color: var(--tp-gray);
  }
  
  .tp-bg-dark-gray {
    background-color: var(--tp-dark-gray);
  }
  
  .tp-bg-light-gray {
    background-color: var(--tp-light-gray);
  }
  
  .tp-bg-dim-gray {
    background-color: var(--tp-dim-gray);
  }
  
  .tp-bg-silver-gray {
    background-color: var(--tp-silver-gray);
  }
  
  
  
  .text-14 {
    font-size: var(--text-14);
  }
  
  .text-16 {
    font-size: var(--text-16);
  }
  
  .text-18 {
    font-size: var(--text-18);
      line-height: 1.5em;
  }
  
  .text-20 {
    font-size: var(--text-20);
  }

  .text-32 {
    font-size: var(--text-32);
  }
  
  .text-36 {
    font-size: var(--text-36);
  }
  
  .text-60 {
    font-size: var(--text-60);
  }
  
  
  /* Raleway font styles */
  .rale-54 {
   font-size: var(--rale-54);
   font-family: "Raleway-Light", sans-serif;
    font-weight: 300;
    font-style: normal;
  }
  
  .rale-50 {
   font-size: var(--rale-50);
  font-family: "Raleway-Light", sans-serif;
    font-weight: 300;
    font-style: normal;
  }
  
  .rale-40 {
  font-size: var(--rale-40);
  font-family: "Raleway-Light", sans-serif;
    font-weight: 300;
    font-style: normal;
  }

  .font-raleway-semibold {
    font-family: "Raleway-SemiBold", sans-serif;
    font-weight: 600;
    font-style: normal;
  }
  
  .heading-lightbold span {
      font-family: 'Raleway', sans-serif;
  }

  .text-red-500 {
    --tw-text-opacity: 1;
    color: rgb(239 68 68 / var(--tw-text-opacity, 1));
  }  
  
  .tracking-5 {
      letter-spacing: var(--tracking-5);
  }
  
  .mb-0 {
      margin-bottom: 0 !important;
  }
  
  .items-end {
      align-items: flex-end;
  }
  
  .mx-auto {
    margin-inline: auto;
  }
  
  .py-24 {
      padding-top: 96px;
      padding-bottom: 96px;
  }

  .max-w-full {
    max-width: 100%;
  }
  
  .w-auto {
      width: auto !important;
  }
  
  
  .tp-container {
      width: 100%;
      margin-right: auto;
      margin-left: auto;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
  }

  .site-header.header-shrink {
    width: 100%;
  }

  .webinar-page .section__header,
  .header-shrink .section__header {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }


  
.webinar-header {
    gap: 35px;
}

.webinar-heading {
  gap: 15px;
}

.webinar-header-line {
  gap: 32px;
}


.webinar-line {
  width: 86px;
  height: 0px;
  border: 1.5px solid #000000;
  border-radius: 2px;
}

.spacer-150 {
    height: 9.375rem;
}

.spacer-100 {
    height: 6.25rem;
}

.spacer-80 {
    height: 5rem;
}

.spacer-40 {
  height: 2.5rem;
}

.spacer-30 {
    height: 1.875rem;
}

.spacer-24 {
    height: 1.5rem;
}

.tp-btn {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 20px 24px;
    gap: 16px;
    width: 183px;
    height: 51px;
    border-width: 1px;
    border-style: solid;
    border-color: var(--tp-light-gray);
    color: var(--tp-black);
    background: var(--tp-light-gray);
    font-weight: 600;
    font-size: var(--text-16);
    letter-spacing: 1px;
    border-radius: 4px;
    text-transform: uppercase;
}
.tp-btn-ghost {
    color: var(--tp-black);
    background-color: transparent;
    border-color: var(--tp-black);
}

.tp-btn-full {
    width: auto;
}

.tp-btn-secondary {
    color: #fff;
    background-color: var(--tp-black);
    border-color: var(--tp-black)
}



.webinar-post-item {
    max-width: 515px;
}
.webinar-post-item a {
    color: var(--tp-black);
}

.webinar-post-excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 2; 
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.webinar-post-item .webinar-post-item-img {
    max-width: 100%;
    height: 289px;
    position: relative;
}

.webinar-post-item .webinar-post-item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.webinar-post-item .webinar-post-item-date-box {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 118px;
    background-color: #fff;
    color: var(--tp-dark-gray);
    padding: 21px 20px;
    text-align: center;
    line-height: 1.2;
}
.webinar-post-item-desc {
    padding: 30px;
    gap: 20px;
}
.webinar-post-item-cat {
    letter-spacing: 1px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    height: 26px;
    border: 1px solid var(--tp-dark-gray);
    border-radius: 4px;
}
.webinar-post-item-line {
    width: 86px;
    height: 0px;
    border: 2px solid #000000;
    border-radius: 2px;
}
.webinar-post-item-datetime {
    gap: 12px;
}
.webinar-post-item-datetime span:last-child {
    display: inline-block;
    max-width: 12ch;       /* limit to 12 characters */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.webinar-post-item-button {
    max-width: fit-content;
}
.webinar-post-item-button a {
    border-color: transparent;
    padding-left: 0;
    justify-content: flex-start;
}


.webinar-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: auto;
  gap: 24px;
}



.footer-text {
    border-top: solid 1px #DADADA;
    color: #5F5F5F;
    padding: 20px 0;
    text-align: center;
  }
  .logo-desc-social {
    gap: 30px;
  }
  .logo-desc-social p {
    max-width: 304px;
    color: #000;
  }
  .footer-social {
    gap: 16px;
  }
  .footer-nav {
    padding: 72px 0;
  }
  .footer-nav-item h3{
    font-weight: 700;
    font-size: var(--text-18);
    margin-bottom: 20px;
  }
  .footer-nav-item a{
    color: #393B44;
    font-size: var(--text-16);
  }
  .footer-nav-item ul {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }


 /* ====== Select (Month / Year) ====== */
  .s1-select-wrap {
    position: relative;
    display: inline-block;
  }

  .s1-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    height: 51px;
    padding: 10px 45px 10px 24px;
    border: solid 1px var(--tp-black);
    border-radius: 4px;
    cursor: pointer;
    transition: border-color .2s ease, box-shadow .2s ease;
    background-color: transparent;
  }
  .s1-select:focus {
    outline: none;
  }

  .gap-2 {
    gap: 0.5rem;
  }

  .gap-3 {
    gap: 0.75rem;
  }

  .gap-5 {
    gap: 1.25rem;
  }

  .gap-8 {
    gap: 2rem;
  }

  .gap-10 {
    gap: 2.5rem;
  }

  .gap-12 {
    gap: 3rem;
  }

  .gap-16 {
    gap: 4rem;
  }

  .max-w-fit {
    max-width: fit-content;
  }

  .shrink-0 {
    flex-shrink: 0;
  }

  .opacity-50 {
    opacity: 0.5;
  }

  .rounded-lg {
    border-radius: 0.5rem;
  }

  .px-7 {
    padding-left: 1.75rem;
    padding-right: 1.75rem;
  }

  .items-start {
    align-items: flex-start;
  }
  
  
  .space-y-2 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
  }

  .space-y-3 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
  }
  
  
  .space-y-5 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
  }

  .space-y-8 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(2rem * var(--tw-space-y-reverse));
  }

  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }

  .\!font-normal {
    font-weight: 400!important;
  }

  .fixed {
    position: fixed;
  }
  .absolute {
    position: absolute;
  }
  .inset-0 {
    inset: 0px;
  }
  .right-2 {
    right: 0.5rem;
  }
  .top-2 {
    top: 0.5rem;
  }
  .z-50 {
    z-index: 50;
  }
  .max-w-lg {
    max-width: 32rem;
  }
  .justify-center {
    justify-content: center;
  }
  .rounded-lg {
    border-radius: 0.5rem;
  }
  .bg-black {
    --tw-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
  }
  .bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  }
  .bg-opacity-50 {
    --tw-bg-opacity: 0.5;
  }
  .p-6 {
    padding: 1.5rem;
  }
  .mt-5 {
    margin-top: 1.25rem;
  }
  .text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
  .text-gray-500 {
    --tw-text-opacity: 1;
    color: rgb(107 114 128 / var(--tw-text-opacity, 1));
  }
  .hover\:text-black:hover {
    --tw-text-opacity: 1;
    color: rgb(0 0 0 / var(--tw-text-opacity, 1));
  }
  

  /* login form */
  #webinar-login-form .op-login-form-1 {
    padding: 0;
    margin: 0;
    box-shadow: none;
    max-width: 100%;
  }
  #webinar-login-form .login-header h2 {
    font-size: 28px;
    font-weight: bold;
    margin-bottom: 10px;
  }
  
  #webinar-login-form .login-header p {
    font-size: 15px;
    color: #555;
    margin-bottom: 20px;
  }
  
  #webinar-login-form .op-login-form-1 #pp-loginform p {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px !important;
  }
  
  /* Labels */
  #webinar-login-form .op-login-form-1 label {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 12px;
  }
  
  /* Inputs */
  #webinar-login-form .op-login-form-1 .input {
    width: 100%;
    height: 47px;
    padding: 0 12px;
    border: 1px solid #DADADA;
    border-radius: 4px;
    font-size: 15px;
    box-shadow: none;
  }
  
  /* Remember me */
  #webinar-login-form .op-login-form-1 .login-remember label {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 16px;
    font-weight: 400; 
    margin-bottom: 0;
  }
  
  #webinar-login-form .op-login-form-1 .login-remember input[type="checkbox"] {
    width: 24px;
    height: 24px;
    border: 1px solid #DADADA;
    accent-color: #000;
    margin-left: 0;
    margin-top: 0;
  }
  
  #webinar-login-form .op-login-form-1 .login-submit input[type="submit"] {
    width: 100%;
    height: 51px;
    background: #000;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    text-transform: uppercase;
  }
  
  #webinar-login-form .op-login-form-1 .login-submit input[type="submit"]:hover {
    background: #333;
  }
  
  /* Divider */
  #webinar-login-form .op-login-form-1 .login-submit {
    border-bottom: 1px solid #EDEDED;
    padding-bottom: 24px;
    margin-bottom: 24px;
  }
  
  /* Forgot password */
  #webinar-login-form .pp-lf-forgot-username {
    margin-top: 0;
    text-align: left !important;
  }
  
  #webinar-login-form .pp-lf-forgot-username a {
    font-size: 18px;
    font-weight: bold;
    text-decoration: underline;
    color: #000;
  }
  
  #webinar-login-form .signup-text {
    margin-top: 15px;
    font-size: 14px;
    color: #555;
  }
  
  #webinar-login-form .signup-text a {
    font-weight: bold;
    color: #000;
    text-decoration: none;
  }
  
  #webinar-login-form .signup-text a:hover {
    text-decoration: underline;
  }
  
  #webinar-login-form .op-login-form-1 .login-remember {
      margin-bottom: 10px;
  }
  /* end of login form*/

  /* signup form */
  .footer-login-signup-form {
    width: 780px;
    background-color: #fff;
    border-radius: 8px;
    max-width: 100%;
    padding: 80px 40px;
  }
  .footer-login-signup-form input:not(input[type=submit]) {
    box-shadow: none !important;
    outline: 0 !important;
    border: solid 1px #dadada !important;
    border-radius: 6px !important;
    padding: 11px !important;
    background-color: #fff !important;
  }

  .footer-login-signup-form label {
      display: block;
      margin-bottom: 10px;
      font-weight: 600;
  }

  .footer-login-signup-form form input[type=submit] {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 16px;
    width: 242px !important;
    height: 51px;
    border-width: 1px;
    border-style: solid;
    border-color: var(--tp-light-gray);
    font-weight: 600;
    font-size: var(--text-16);
    letter-spacing: 1px;
    border-radius: 4px;
    text-transform: uppercase;
    color: #fff;
    background-color: var(--tp-black);
    border-color: var(--tp-black);
  }

  @media (min-width: 640px) {
    .sm\:flex-row {
      flex-direction: row;
    }
    .sm\:items-center {
      align-items: center;
    }
  }  

  @media (min-width: 768px) {
    .md\:gap-24 {
      gap: 6rem;
    }
  }

  @media (min-width: 1024px) {
    .lg\:gap-10 {
      gap: 2.5rem;
    }

    .webinar-page .section__header {
      padding: 1.875rem;
      padding-bottom: 0;
    }
  }

  @media (min-width: 1280px) {
    .xl\:flex-row {
      flex-direction: row;
    }
  }

    @media only screen and (min-width: 1366px) {
        .tp-container {
            max-width: 1592px;
                padding-left: 0;
                padding-right: 0;
        }
    }


    @media (max-width: 1024px) {
        .text-36 { font-size: 30px; }
        .text-60 { font-size: 48px; }
        .rale-54 { font-size: 44px; }
        .rale-50 { font-size: 42px; }
        .rale-40 { font-size: 34px; }
        .webinar-list {
            grid-template-columns: repeat(2, 1fr);
        }

        .py-24 {
          padding-top: 3.75rem;
          padding-bottom: 3.75rem;
        }
      
        .webinar-header {
            gap: 20px;
        }

        .spacer-150 {
          height: 5rem;
        }
        
        .spacer-100 {
            height: 3.75rem;
        }   

        .spacer-80 {
            height: 2.5rem;
        }    
    }


    @media (max-width: 768px) {
        .text-32 { font-size: 22px; }
        .text-36 { font-size: 26px; }
        .text-60 { font-size: 40px; }
        .rale-54 { font-size: 38px; }
        .rale-50 { font-size: 36px; }
        .rale-40 { font-size: 30px; }
     

        .footer-nav {
            padding: 3.75rem 0;
            flex-direction: column;
            gap: 3.125rem;
            justify-content: center;
            align-items: center;
            text-align: center;
        }
        .logo-desc-social {
            align-items: center;
        }
    }

    @media (max-width: 640px) {
        .webinar-list {
            grid-template-columns: 1fr;
        }
    }

    @media (max-width: 480px) {
        .text-36 { font-size: 22px; }
        .text-60 { font-size: 32px; }
        .rale-54 { font-size: 30px; }
        .rale-50 { font-size: 28px; }
        .rale-40 { font-size: 24px; }
    }
  