/* Custom CSS */

#awwwards {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 999;

	width: 90px;
	height: 135px;

	text-indent: -666em;
	background-repeat: no-repeat;
	background-size: 90px 135px;

	overflow: hidden;
}

#wpselected {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;

	width: 90px;
	height: 90px;

	text-indent: -666em;

	background-repeat: no-repeat;
	background-size: 90px 90px;

	overflow: hidden;
}

.ptf-custom--9135 .typed-cursor {
	color: #ee3364;
}

.ptf-custom--0531 {
	position: absolute;
	bottom: 15%;
	left: 130px;

	color: #0b0b0b;
	font-size: 35px;
}

.ptf-custom--9503::after {
	content: '';

	position: absolute;
	top: 50%;
	left: calc(100% + 30px);

	width: 0;
	max-width: 60px;
	height: 1px;

	background-color: #1f0e49;

	transition: width .5s 1s ease-in-out;
}

.ptf-is-page-loaded .ptf-custom--9503::after {
	width: 100%;
}

.ptf-custom--5832 {
	position: relative;
	z-index: 1;

	margin-right: 50px;
}

.ptf-custom--5832::after {
	content: '';

	position: absolute;
	top: -50px;
	right: -50px;
	z-index: -1;

	width: 100%;
	height: 100%;

	border: 10px solid #00bec5;
}

.ptf-custom--5832 {
	position: relative;
	z-index: 1;

	margin-right: 50px;
}

.ptf-custom--5832::after {
	content: '';

	position: absolute;
	top: -50px;
	right: -50px;
	z-index: -1;

	width: 100%;
	height: 100%;

	border: 10px solid #00bec5;
}

.ptf-custom--3103 .ptf-services-box__link {
	background-color: rgba(0,0,0,.25);
}

.ptf-custom--3103 .ptf-highlight {
	background: linear-gradient(to top, transparent 5%, rgba(0,0,0,.25) 5% , rgba(0,0,0,.25) 37%, transparent 37%);
}

.ptf-custom--4111 .ptf-swiper-pagination--style-1 span {
	background-color: #fff;
}

.ptf-custom--4111 .ptf-swiper-button-prev--style-2,
.ptf-custom--4111 .ptf-swiper-button-next--style-2 {
	color: #fff;
}

.ptf-custom--6632 {
	margin-top: -225px;
}

.ptf-custom--9917 .ptf-social-icons a:not(:hover) {
	color: #fff;
}

.ptf-custom--8681 .ptf-countdown h5,
.ptf-custom--8681 .ptf-countdown strong {
	color: #fff;
}

.ptf-custom--9511 .ptf-swiper-pagination--style-1 span {
	background-color: #fff;
}



.ptf-is--homepage-11 .ptf-navbar {
	padding: 0 35px;
}

.ptf-is--homepage-11 .ptf-navbar .container {
	width: 100%;
}

/* min-width 768px */
@media (min-width: 768px) {
	.ptf-custom--5136 {
		padding-left: 70px;
	}
	.ptf-custom--8620 {
		padding-right: 70px !important;
	}
	.ptf-custom--5317 {
		padding: 0 30px !important;
	}
	.ptf-custom--5171 {
		padding-right: 70px;
	}
	.ptf-custom--7205 {
		margin-top: -100px;
	}
	.ptf-custom--8511 {
		padding-right: 85px;
	}
	.ptf-custom--6525 {
		position: relative;
		z-index: 2;
	}
}

/* max-width 767px */
@media (max-width: 767px) {
	#awwwards,
	#wpselected {
		display: none;
	}
	.ptf-custom--9135 h2 {
		font-size: 28px
	}
	.ptf-custom--1631 {
		font-size: 38px;
	}
}

.countdown {
      display: flex;
      justify-content: center;
      gap: 10px;
      font-size:14px;
    }

    .countdown div {
      border: 2px solid #88a6b1; background: #FFF;    
      padding:20px 10px; text-align: center;
      border-radius: 10px;
      min-width:80px;
    }

    .countdown span {
      display: block;
      font-size:34px;
      margin-bottom: 5px;
      color: #236176;
    }

.ptf-showcase-slide-inner h1, .ptf-showcase-slide h1{ display: inline-block;
    text-shadow:
    -1px -1px 0 white,
     1px -1px 0 white,
    -1px  1px 0 white,
     1px  1px 0 white;
    font-size: 60px; color: #2F5C74; letter-spacing:-1px; font-weight: 700; text-align: left;}

.ptf-showcase-slide-inner p, .ptf-showcase-slide p{ font-size: 24px; font-weight: 600; color: #FFF; text-align: left;
/*    
text-shadow:
    -1px -1px 0 white,
     1px -1px 0 white,
    -1px  1px 0 white,
     1px  1px 0 white;
*/    
}
.venue{ color: #006279 !important; font-weight: 700; text-align: center;
    /*
    text-shadow:
    -1px -1px 0 black,
     1px -1px 0 black,
    -1px  1px 0 black,
     1px  1px 0 black;
    */
}
.sm { font-size: 14px !important;}
.small { font-size: 12px !important;}
.resp { width: 100%;}
.sf-menu li{padding: 0 !important; margin: 0 !important; height: auto !important;}
.sf-menu li a{ color: #2F5C74 !important;}
body, p{ color: #333; font-size: 18px !important;}

.ptf-showcase-3 .ptf-showcase-slide-inner
{
    position: relative;
    z-index: 2;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    min-height:600px;
    padding:0; 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}
.slogan{padding:15px; font-size: 24px !important; line-height: 32px; font-weight: 700; color: #2f7e95;}
.slider {
  width: 100%;
  overflow: hidden;
}

.slide img {
  width: 100%;
  height: auto;    
  display: block;
}
.ptf-footer-copyright{ font-size: 12px !important; text-align: center;}

.hero {
  width: 100%;
  height: auto;   
  background-size: 100%;     /* Cover the entire area */
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding:150px 0 220px 0;
}

.hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
}
.header-logo{ position: absolute; right:20%; top:35px; width: 260px;}
.hero .container{padding: 50px 0 50px 0;}
.sf-menu li{ padding: 0 !important;}
.sf-menu li a{ padding:10px 15px; border-radius: 32px; border:2px solid #1968b2;}
.sf-menu li a:hover{background: #1968b2 !important; color: #FFF !important; }
label{ font-size: 16px !important; font-weight: 600;}
.form-control { border: 1px solid #dadada !important; margin-bottom: 10px !important; padding: 15px !important;}

#spinner{ display: none; 
  background: rgba( 255, 255, 255, 0.9 );  
  height: 100%;  
  position: fixed;  
  width: 100%;  
  z-index: 9999; 
}     
.loading{  
border: 3px solid #1f3378;
width: 50px; background: #fff;
height: 50px;
border-radius: 50%;
border-top-color: #2B81C4;
  border-left-color: #f1f1f1;
  animation: spin 1s infinite ease-in;
  left: 50%;  
  margin-left: -50px;  
  margin-top: -50px;  
  position: absolute;  
  top: 50%;  
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}


.countdown{
  display: flex;
  justify-content: center;
  gap: 10px;
  font-size:14px; color: #FFF;
}

.countdown div { background: #20697a; border: none;    
  padding:10px; text-align: center;
  border-radius: 10px;
  min-width:100px;
}

.countdown span {
  display: block;
  font-size:24px;
  margin-bottom: 0px;
  color: #FFF;
}
iframe{ width: 100%; height: 450px;}



.ptf-navbar-logo img{
    display: block;
    max-width:300px;
}

.sp-icon{ width: 26px; height: 26px; margin-left: 5px;}

.bg-gray{background: #dadada;}
.name{color: #003e7d; font-size: 16px; font-weight: 600; width: 50%;}
.date{color: #666; font-size: 14px; font-weight: 400;}
    
.col-md-3.col-6.mb-3 a {
  position: relative;
  display: block;
}
.flag {
  position: absolute;
  top: 2%;
  right: 6%;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1px solid #999;
  padding: 3px;
  background: #fff;
}
@media (max-width: 900px) {
  .flag {
    top: 8px !important;
    right: 15px !important;
    width: 28px !important;
    height: 28px !important;
    z-index: 999 !important;
  }
}
    
@media screen and (max-width:900px){
   
.name{font-size: 12px; font-weight: 600; line-height: 12px !important;}
.date{font-size: 10px;}
.fees{font-weight: 600; font-size: 12px;}
.date span{margin-top:0 !important; width: 100%; display: block;}    
}
/* Base card style */
.card-checkbox-pro{
  position: relative;
  display: block;
  width:100%;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.25s ease;
  overflow: hidden;
}
.card-checkbox-pro.card-disabled {
  background-color: #f5f5f5;
  border-color: #ccc;
  opacity: 0.7;
  cursor: not-allowed;
  position: relative;
}

.card-checkbox-pro.card-disabled .card-name,
.card-checkbox-pro.card-disabled .card-time {
  color: #999;
}

.card-checkbox-pro.card-disabled:hover {
  box-shadow: none;
}

.card-checkbox-pro.card-disabled::after {
  content: "⛔ Schedule conflict";
  position: absolute;
  bottom: 10px;
  right: 10px;
  font-size: 11px;
  color: #d9534f;
}
/* Hide checkbox but keep functional */
.card-checkbox-pro input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Card content */
.card-body {
  padding: 1rem;
}

/* Header: ID and icon */
.card-name {
  font-size: 16px;
  margin-bottom: 0px;
  color: #333;
}



/* Time info */
.card-time {
  font-size: 12px;
  color: #555;
}

/* Check icon (initially hidden) */
.check-icon {
  font-size: 22px;
  color: #FFF;
  opacity: 0;
  transform: scale(0.8);
  transition: all 0.2s ease;
  position: absolute; right:15px; top: 15px;
}

/* Hover effect */
.card-checkbox-pro:hover {
  border-color: #aaa;
  box-shadow: 0 4px 8px rgba(0,0,0,0.08);
}

/* Checked state */
.card-checkbox-pro input[type="checkbox"]:checked + .card-body {
  background-color: #66c;
  border:0px solid #66c;
  color: #FFF;    
}
.card-checkbox-pro input[type="checkbox"]:checked + .card-body .card-name, .card-checkbox-pro input[type="checkbox"]:checked + .card-body .card-time{
    color: #FFF;
}
.card-checkbox-pro input[type="checkbox"]:checked + .card-body .check-icon {
  opacity: 1;
  transform: scale(1);
}

@media (max-width: 991px) {
    .sf-menu{width: 94%; text-align: center; margin-left:2%; margin-top: 10px;}
    .sf-menu li a{ float: none; padding: 2px 8px !important; font-size: 10px !important;}
    .ptf-navbar-logo img{ max-width: 160px !important; margin-left: 15px !important;}
    .hero{
        width: 100%; background-color: #fff;
        height: auto;   
        background-size: 100%; 
        padding:200px 0 150px 0;
        background-position: center bottom;
    }
    .countdown{
  display: flex;
  justify-content: center;
  gap: 10px; color: #FFF;
  font-size:14px;
}

.countdown div { background: #20697a;
  border:none;    
  padding:10px 10px; text-align: center;
  border-radius: 10px;
  min-width:80px;
}

.countdown span {
  display: block;
  font-size:24px;
  margin-bottom: 0px;
  color: #FFF;
}
    .ptf-footer-copyright, .ptf-offcanvas-menu__copyright{ font-size: 11px !important; text-align: center;}
    .ptf-team-member__content p{ text-align: center !important; font-size: 14px;}
    .ptf-team-member__content h6{ font-weight: 500; font-size: 16px;}
    .slogan{padding:15px 0 0 0; text-align: center; font-size: 16px; font-weight: 700;}
    body p, body ul, body ol{ font-size: 14px !important; text-align: justify  !important; text-justify: inter-word !important;}
    .ptf-offcanvas-menu-icon{ margin-right: 15px !important; margin-top: 30px !important;}
    .venue{ font-size: 16px;}
    .ptf-showcase-slide-inner h1, .ptf-showcase-slide h1{ font-size: 34px; text-align: center; margin-bottom: 30px; }
    .ptf-showcase-slide-inner p, .ptf-showcase-slide p{ font-size: 16px; text-align: center;}
	.ptf-custom--9182 {
		font-size: 48px;
		line-height: 60px;
	}
	.ptf-custom--9182 {
		font-size: 48px;
		line-height: 60px;
	}
}

/* max-width 575px */
@media (max-width: 575px) {
	.ptf-custom-9182 {
		font-size: 38px;
		line-height: 50px;
	}
	.ptf-custom-9182 {
		font-size: 38px;
		line-height: 50px;
	}
	.ptf-custom--0531 {
		bottom: 5%;
	}
}
