*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Poppins,sans-serif;
}

body{

background:#fff;

}

.topbar{
	
position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:10000;
background:#e30613;

height:45px;

display:flex;

justify-content:space-between;

align-items:center;

overflow:hidden;

padding:0 25px;

color:#fff;

}

.marquee{

flex:1;

overflow:hidden;

position:relative;

}

.marquee-track{

display:flex;

width:max-content;

animation:ticker 18s linear infinite;

}

.marquee:hover .marquee-track{

animation-play-state:paused;

}

.marquee-content{

display:flex;

align-items:center;

flex-shrink:0;

}

.marquee-content span{

display:flex;

align-items:center;

white-space:nowrap;

padding:0 40px;

font-size:16px;

font-weight:500;

}

.marquee-content span::after{

content:"|";

margin-left:40px;

color:rgba(255,255,255,.5);

}

.marquee-content i{

margin-right:8px;

}

@keyframes ticker{

0%{

transform:translateX(0);

}

100%{

transform:translateX(-50%);

}

}

.social{

display:flex;

gap:10px;

}

.social a{

width:34px;

height:34px;

display:flex;

align-items:center;

justify-content:center;

background:rgba(255,255,255,.15);

border-radius:50%;

color:#fff;

transition:.3s;

}

.social a:hover{

background:#fff;

color:#e30613;

}

.left-info{

display:flex;

gap:30px;

}

.left-info div{

display:flex;

align-items:center;

gap:8px;

}

.right-info{

display:flex;

align-items:center;

}

.organiser{

display:flex;

align-items:center;

gap:2px;

}

.organiser span{

font-weight:600;

}

.organiser img{

height:60px;

}

header{
   position: fixed;
    top: 44px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    z-index: 1000;
    padding: 4px 19px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: rgb(255 255 255);
    /* backdrop-filter: blur(20px); */
    -webkit-backdrop-filter: blur(20px);
    /* border-radius: 10px;*/
}

.logo img{

height:65px;

}
nav{
    display:flex;
    align-items:center;
    gap:14px;
}

.dropdown{
    position:relative;
}

.dropdown>a{
    display:flex;
    align-items:center;
    gap:6px;
}

.dropdown-menu{
    position:absolute;
    top:100%;
    left:0;
    min-width:240px;
    background:#fff;
    list-style:none;
    padding:12px 0;
    border-radius:10px;
    box-shadow:0 15px 40px rgba(0,0,0,.15);

    opacity:0;
    visibility:hidden;
    transform:translateY(15px);
    transition:.35s;
    z-index:9999;
}

.dropdown-menu li a{
    display:block;
    padding:12px 20px;
    color:#111;
    text-decoration:none;
    transition:.3s;
}

.dropdown-menu li a:hover{
    background:#df2027;
    color:#fff;
}

.dropdown:hover .dropdown-menu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

nav a{

text-decoration:none;

color:#070707;

font-weight:600;

position:relative;

transition:.4s;
font-size: 15px;

}

nav a::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:3px;

background:#e30613;

transition:.4s;

}

nav a:hover::after{

width:100%;

}

.buttons{

display:flex;

gap:15px;

}

.buttons a{

text-decoration:none;

display:flex;

align-items:center;

gap:8px;

padding:14px 24px;

border-radius:50px;

font-weight:600;

transition:.4s;

}

.search{

width:50px;

justify-content:center;

padding:0;

background:#fff;

color:#111;

}

.register{

background:#fff;

color:#111;

}

.stall{

background:#e30613;

color:#fff;

}

.buttons a:hover{

transform:translateY(-5px);

box-shadow:0 15px 35px rgba(227,6,19,.35);

}

@media(max-width:991px){



.topbar{

padding:0 15px;

}

.social{

display:none;

}

.marquee{

width:100%;

}

header{

flex-wrap:wrap;

}

.organiser{

        /* order: 4; */
        width: 56%;
        /* justify-content: center; */
        margin: 1px 0 0;

}

.organiser img{

height:66px;

}

header{

flex-wrap:wrap;

padding:15px;

}

/*nav{

width:100%;

justify-content:center;

margin:25px 0;

flex-wrap:wrap;

}*/

.buttons{

width:100%;

justify-content:center;

}

}

@media(max-width:600px){

.logo img{

height:65px;

}

nav{

gap:20px;

}

.buttons{

flex-direction:column;

}

.buttons a{

justify-content:center;

}

}

/* Full Screen Video Banner */
.hero-video{
    position:relative;
    width:100%;
    height:100vh;
    overflow:hidden;
}

.hero-video video{
    position:absolute;
    top:50%;
    left:50%;
    width:100%;
    height:100%;
    object-fit:cover;
    transform:translate(-50%,-50%);
    z-index:-2;
}

/* Optional Dark Overlay */
.overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.35);
    z-index:-1;
}

.hero-content{
    position:relative;
    z-index:2;
    height:100%;
    max-width:1200px;
    margin:auto;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items: center;
    color:#fff;
    padding:0 8%;
}
.event-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 20px;
    border-radius:50px;
    background:rgba(255,255,255,.12);
    backdrop-filter:blur(12px);
    border:1px solid rgba(255,255,255,.25);
    font-size:15px;
    letter-spacing:1px;
    text-transform:uppercase;
    margin-bottom:25px;
}

.hero-content h1{
    font-size:clamp(42px,6vw,55px);
    line-height:1.05;
    font-weight:800;
    max-width:850px;
    margin-bottom:20px;
	text-align: center;
}
.hero-content h1 span{
    color:#da0013;
}

.hero-desc{
    max-width:700px;
    font-size:18px;
    line-height:1.7;
    color:#f1f1f1;
    margin-bottom:40px;
	text-align: center;
}

.event-info{
    display:flex;
    gap:20px;
    margin-bottom:45px;
    flex-wrap:wrap;
}
.info-box{
    display:flex;
    align-items:center;
    gap:15px;
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(18px);
    border:1px solid rgba(255,255,255,.15);
    border-radius:16px;
    padding:18px 22px;
    min-width:280px;
}

.info-box span{
    font-size:34px;
}

.info-box strong{
    display:block;
    font-size:18px;
    margin-bottom:4px;
}

.info-box small{
    color:#ddd;
    font-size:14px;
}
.hero-btns{
    display:flex;
    gap:18px;
    flex-wrap:wrap;
}

.hero-btns a{
    text-decoration:none;
    padding:16px 34px;
    border-radius:50px;
    font-weight:700;
    transition:.35s;
}

.btn-primary{
    background:#da0013;
    color:#fff;
}

.btn-primary:hover{
    background:#181818;
    transform:translateY(-4px);
}

.btn-outline{
    border:2px solid rgba(255,255,255,.5);
    color:#fff;
    backdrop-filter:blur(10px);
}

.btn-outline:hover{
    background:#fff;
    color:#111;
    transform:translateY(-4px);
}

/* Mobile */

@media(max-width:768px){

.hero-content{
    align-items:center;
    text-align:center;
    padding:0 20px;
}

.event-badge{
    font-size:12px;
    padding:8px 16px;
    margin-bottom:18px;
}

.hero-content h1{
    font-size:40px;
    margin-bottom:18px;
}

.hero-desc{
    font-size:16px;
    margin-bottom:30px;
}

.event-info{
    width:100%;
    gap:15px;
}

.info-box{
    width:100%;
    min-width:100%;
    justify-content:flex-start;
    padding:16px;
}

.info-box span{
    font-size:28px;
}

.info-box strong{
    font-size:16px;
}

.hero-btns{
    width:100%;
    flex-direction:column;
}

.hero-btns a{
    width:100%;
    text-align:center;
    padding:15px;
}

}


.overlay{
    position:absolute;
    inset:0;
    z-index:-1;
    overflow:hidden;
}

/* Black Circle */
.overlay::before{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);

    width:650px;
    height:650px;
    border-radius:50%;

    background:radial-gradient(
        circle,
        rgba(0,0,0,.90) 0%,
        rgba(0,0,0,.75) 45%,
        rgba(0,0,0,.40) 70%,
        rgba(0,0,0,0) 100%
    );

    filter:blur(25px);
}

@media (max-width:768px){

    .overlay::before{
        width:380px;
        height:380px;
    }

}

/*====================================
        ABOUT SECTION
=====================================*/

.about-section{
    position:relative;
    padding:100px 0 180px;
    overflow:hidden;
    background:#fff;
}

.about-section .container{
    width:92%;
    max-width:1320px;
    margin:auto;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:90px;
    align-items:center;
}

/*====================================
        LEFT CONTENT
=====================================*/

.about-content{
    position:relative;
    z-index:2;
}

.sub-title{
    display:flex;
    align-items:center;
    gap:15px;
    font-size:18px;
    font-weight:700;
    color:#b31222;
    letter-spacing:1px;
    margin-bottom:25px;
}

.sub-title span{
    width:80px;
    height:3px;
    background:#b31222;
    display:block;
}

.about-content h2{
    font-size:35px;
    line-height:1.05;
    font-weight:700;
    color:#111;
    margin-bottom:25px;
}

.about-content h2 span{
    color:#b31222;
}

.title-line{
    width:120px;
    height:4px;
    background:#b31222;
    border-radius:20px;
    margin-bottom:25px;
}

.about-content p{
    font-size:16px;
    color:#555;
    line-height:1.9;
    margin-bottom:25px;
}

/*====================================
            FEATURES
=====================================*/

.about-features{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:15px;
    margin:38px 0;
}

.feature-box{
    text-align:center;
    position:relative;
}

.feature-box:not(:last-child)::after{
    content:"";
    position:absolute;
    right:-8px;
    top:18px;
    width:1px;
    height:85px;
    background:#e5e5e5;
}

.feature-box .icon{
    width:75px;
    height:75px;
    border-radius:50%;
    border:2px solid #ececec;
    display:flex;
    justify-content:center;
    align-items:center;
    margin:auto;
    margin-bottom:18px;
    transition:.35s;
}

.feature-box .icon i{
    font-size:28px;
    color:#b31222;
}

.feature-box h5{
    font-size:17px;
    font-weight:600;
    color:#222;
    margin-bottom:4px;
}

.feature-box span{
    font-size:15px;
    color:#666;
}

.feature-box:hover .icon{
    background:#b31222;
    border-color:#b31222;
    transform:translateY(-6px);
}

.feature-box:hover i{
    color:#fff;
}

/*====================================
          BUTTON
=====================================*/

.about-btn{
    display:inline-flex;
    align-items:center;
    gap:18px;
    padding:18px 35px;
    background:#b31222;
    color:#fff;
    border-radius:12px;
    text-decoration:none;
    font-size:18px;
    font-weight:600;
    transition:.35s;
}

.about-btn i{
    font-size:18px;
}

.about-btn:hover{
    background:#111;
    transform:translateY(-5px);
}

/*====================================
        RIGHT SIDE
=====================================*/

.about-image{
    position:relative;
    height:650px;
}

/* Decorative Red Corner */

.red-shape{
    position:absolute;
    width:240px;
    height:180px;
    border-top:18px solid #b31222;
    border-left:18px solid #b31222;
    border-top-left-radius:70px;
    top:0;
    left:50px;
    z-index:1;
}

/*====================================
        MAIN IMAGE
=====================================*/

.main-image{
    position: absolute;
    top: 12px;
    right: 0;
    width: 89%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 35px;
}

.main-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

/*====================================
      FLOATING SHOW CARD
=====================================*/

.show-card{
    position:absolute;
    left:10px;
    bottom:180px;
    width:180px;
    height:200px;
    background:#fff;
    border-radius:30px;
    box-shadow:0 25px 55px rgba(0,0,0,.12);
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    z-index:10;
}

.show-card h3{
    font-size:76px;
    color:#b31222;
    font-weight:800;
    line-height:1;
}

.show-card sup{
    font-size:30px;
}

.show-card p{
    margin-top:12px;
    text-align:center;
    font-size:16px;
    line-height:1.5;
    font-weight:600;
    color:#111;
}

/*====================================
        BOTTOM IMAGE
=====================================*/

.bottom-image{
    position: absolute;
    bottom: 119px;
    right: 24px;
    width: 63%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 30px;
    border: 8px solid #fff;
}


.bottom-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}
/*========================================
        STATS BAR
========================================*/

.about-stats{
    position:absolute;
    left:50%;
    bottom:3px;
    transform:translateX(-50%);
    width:92%;
    max-width:1220px;

    background:linear-gradient(90deg,#7f0e17,#111);

    border-radius:24px;

    display:grid;
    grid-template-columns:repeat(4,1fr);

    overflow:hidden;

    box-shadow:0 25px 60px rgba(0,0,0,.18);

    z-index:20;
}

.about-stats .stat{

    display:flex;
    align-items:center;
    gap:18px;

    padding:28px 35px;

    position:relative;

}

.about-stats .stat:not(:last-child)::after{

    content:"";

    position:absolute;

    right:0;

    top:50%;

    transform:translateY(-50%);

    width:1px;

    height:65px;

    background:rgba(255,255,255,.18);

}

.about-stats .stat i{

    width:70px;
    height:70px;

    border-radius:50%;

    display:flex;
    justify-content:center;
    align-items:center;

    background:rgba(255,255,255,.08);

    color:#ff4242;

    font-size:32px;

}

.about-stats h3{

    color:#fff;

    font-size:42px;

    line-height:1;

    margin-bottom:8px;

    font-weight:700;

}

.about-stats span{

    color:#f1f1f1;

    font-size:17px;

}


/*========================================
      DOT BACKGROUND
========================================*/

.dots{

    position:absolute;

    width:150px;

    height:150px;

    background-image:radial-gradient(#d9d9d9 2px,transparent 2px);

    background-size:18px 18px;

    opacity:.8;

}

.dots-right{

    right:30px;

    top:20px;

}

.dots-bottom{

    right:40px;

    bottom:120px;

}


/*========================================
     WHITE CURVE BACKGROUND
========================================*/

.about-section::before{

    content:"";

    position:absolute;

    width:900px;

    height:900px;

    left:-350px;

    bottom:-520px;

    background:#fafafa;

    border-radius:50%;

    z-index:0;

}


/*========================================
      TABLET
========================================*/

@media(max-width:1199px){

.about-section{

    padding:80px 0 320px;

}

.about-section .container{

    grid-template-columns:1fr;

    gap:70px;

}

.about-content{

    order:2;

}

.about-image{

    order:1;

    min-height:700px;

}

.main-image{

    position:relative;

    width:100%;

    right:auto;

}

.bottom-image{

    width:75%;

    right:0;

}

.show-card{

    left:20px;

    bottom:120px;

}

.about-content h2{

    font-size:52px;

}

.about-features{

    grid-template-columns:repeat(2,1fr);

    gap:35px;

}

.feature-box::after{

    display:none;

}

.about-stats{

    grid-template-columns:repeat(2,1fr);

    position:absolute;

    bottom:40px;

}

}


/*========================================
      MOBILE
========================================*/

@media(max-width:767px){

.about-section{

    padding:70px 0 560px;

}

.about-section .container{

    width:92%;

}

.about-content h2{

    font-size:36px;

}

.about-content p{

    font-size:16px;

    line-height:1.8;

}

.sub-title{

    font-size:15px;

}

.sub-title span{

    width:45px;

}

.title-line{

    width:70px;

}

.about-features{

    grid-template-columns:1fr 1fr;

    gap:20px;

}

.feature-box .icon{

    width:60px;

    height:60px;

}

.feature-box .icon i{

    font-size:22px;

}

.feature-box h5{

    font-size:15px;

}

.feature-box span{

    font-size:13px;

}

.about-btn{

    width:100%;

    justify-content:center;

}

.about-image{

    min-height:500px;

}

.red-shape{

    width:140px;

    height:110px;

    border-width:10px;

    left:20px;

}

.main-image{

    border-radius:24px;

}

.bottom-image{

    position:relative;

    width:85%;

    margin:-70px auto 0;

    right:auto;

    border-radius:24px;

    border:6px solid #fff;

}

.show-card{
    position:absolute;
    left:0;
    bottom:110px;
    width:170px;
    height:185px;
}

.show-card h3{

    font-size:54px;

}

.show-card p{

    font-size:12px;

}

.about-stats{

    position:absolute;

    width:92%;

    grid-template-columns:1fr;

    bottom:25px;

}

.about-stats .stat{

    padding:22px;

}

.about-stats .stat::after{

    display:none;

}

.about-stats h3{

    font-size:30px;

}

.about-stats span{

    font-size:15px;

}

.dots{

    display:none;

}

.about-section::before{

    width:450px;

    height:450px;

    left:-180px;

    bottom:-220px;

}

}

.leading-event{
    padding:100px 0;
    position:relative;
    overflow:hidden;
}

.container{
    width:92%;
    max-width:1380px;
    margin:auto;
}

/*==============================
          HEADING
==============================*/

.heading{
    margin-bottom:30px;
}

.heading-top{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 25px;
    flex-direction: column;
}

.heading-top h2{
    font-size:35px;
    font-weight:700;
    color:#1a1a1a;
    letter-spacing:1px;
}

.heading-top h2 span{
    color:#c40d21;
}

.line{
    width:120px;
    height:2px;
    background:#222;
    position:relative;
}

.line::before{
    content:"";
    position:absolute;
    width:10px;
    height:10px;
    border-radius:50%;
    background:#c40d21;
    top:50%;
    transform:translateY(-50%);
}

.line:first-child::before{
    left:-5px;
}

.line:last-child::before{
    right:-5px;
}

.slashes{
    font-size:42px;
    font-weight:700;
    color:#c40d21;
    letter-spacing:-4px;
}

.heading-bottom{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
    margin-top:18px;
}

.heading-bottom span{
    width:120px;
    height:1px;
    background:#d7d7d7;
}

.heading-bottom i{
    color:#c40d21;
}

/*==============================
            GRID
==============================*/

.event-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:35px;
}

/*==============================
            CARD
==============================*/

.event-card{

    position:relative;

    text-align:center;

    padding:15px 25px 15px;

    border-radius:26px;

    background:#fff;

    border:1px solid #ededed;

    transition:.4s;

    overflow:hidden;

}

/*==============================
          ICON RING
==============================*/

.ring{

    width:180px;
    height:180px;

    margin:auto;

    position:relative;

    display:flex;
    justify-content:center;
    align-items:center;

}

.ring svg{

    width:180px;
    height:180px;

    position:absolute;

}

.ring circle{

    fill:none;

    stroke:#d31226;

    stroke-width:2.5;

    stroke-dasharray:10 10;

}

/* Icon */

.icon{

    width:100px;
    height:100px;

    background:#fff;

    border-radius:50%;

    display:flex;
    justify-content:center;
    align-items:center;

    box-shadow:0 10px 35px rgba(0,0,0,.08);

    position:relative;

    z-index:2;

}

.icon i{

    font-size:38px;

    color:#d31226;

}

/*==============================
         NUMBER
==============================*/

.number{

    display:flex;
    align-items:center;
    justify-content:center;

    gap:15px;

    margin: 8px 0 9px;

}

.number span{

    width:70px;
    height:2px;

    background:#1d1d1d;

}

.number strong{

    font-size:25px;

    font-weight:700;

    color:#d31226;

}

/*==============================
          TITLE
==============================*/

.event-card h3{

    font-size:19px;

    line-height:1.45;

    font-weight:500;

    color:#222;

    min-height:120px;

}

/*==============================
       BOTTOM LINE
==============================*/

.underline{

    width:90px;

    height:5px;

    border-radius:50px;

    background:#d31226;

    margin:0px auto 0;

}

/*=====================================
        PREMIUM HOVER EFFECT
======================================*/

.event-card{
    cursor:pointer;
    isolation:isolate;
}

.event-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,#d31226,#ff4d4d);
    opacity:0;
    z-index:-2;
    transition:.45s;
}

.event-card::after{
    content:"";
    position:absolute;
    width:320px;
    height:320px;
    border-radius:50%;
    background:radial-gradient(rgba(211,18,38,.15),transparent 70%);
    top:-150px;
    right:-120px;
    transform:scale(.5);
    opacity:0;
    transition:.5s;
}

.event-card:hover{
    transform:translateY(-18px);
    border-color:#d31226;
    box-shadow:0 30px 70px rgba(0,0,0,.18);
}

.event-card:hover::after{
    transform:scale(1);
    opacity:1;
}

/*=====================================
      ROTATING CIRCLE
======================================*/

.ring svg{
    animation:ringRotate 16s linear infinite;
}

.event-card:hover .ring svg{
    animation-duration:2.5s;
}

@keyframes ringRotate{

    from{
        transform:rotate(0deg);
    }

    to{
        transform:rotate(360deg);
    }

}

/*=====================================
        ICON EFFECT
======================================*/

.icon{
    transition:.45s;
}

.event-card:hover .icon{

    transform:scale(1.12);

    background:#d31226;

}

.event-card:hover .icon i{

    color:#fff;

    transform:rotate(-8deg);

}

.icon i{
    transition:.45s;
}

/*=====================================
        FLOAT ANIMATION
======================================*/

.ring{
    animation:float 4s ease-in-out infinite;
}

@keyframes float{

0%,100%{

transform:translateY(0);

}

50%{

transform:translateY(-10px);

}

}

/*=====================================
        NUMBER
======================================*/

.number strong{
    transition:.35s;
}

.event-card:hover .number strong{

    transform:scale(1.1);

}

/*=====================================
      TITLE
======================================*/

.event-card h3{
    transition:.35s;
}

.event-card:hover h3{

    color:#d31226;

}

/*=====================================
     BOTTOM LINE
======================================*/

.underline{
    transition:.45s;
}

.event-card:hover .underline{

    width:140px;

}

/*=====================================
      TABLET
======================================*/

@media(max-width:1100px){

.event-grid{

grid-template-columns:repeat(2,1fr);

gap:30px;

}

.heading-top h2{

font-size:46px;

}

}

/*=====================================
      MOBILE
======================================*/

@media(max-width:767px){

.leading-event{

padding:70px 0;

}

.heading{

margin-bottom:50px;

}

.heading-top{

flex-wrap:wrap;

gap:12px;

}

.heading-top h2{

font-size:34px;

text-align:center;

}

.line{

display:none;

}

.slashes{

font-size:28px;

}

.heading-bottom span{

width:50px;

}

.event-grid{

grid-template-columns:1fr;

gap:25px;

}

.event-card{

padding:40px 20px;

}

.ring{

width:150px;
height:150px;

}

.ring svg{

width:150px;
height:150px;

}

.icon{

width:95px;
height:95px;

}

.icon i{

font-size:36px;

}

.number strong{

font-size:42px;

}

.number span{

width:40px;

}

.event-card h3{

font-size:22px;

line-height:1.5;

min-height:auto;

}

.underline{

width:70px;

}

}


/*==================================
        PARTNERS SECTION
==================================*/

.partners-section{
    position:relative;
    padding:80px 0;
    background:#f8f8f8;
    overflow:hidden;
}

.container{
    width:92%;
    max-width:1400px;
    margin:auto;
}

/*=============================
      DOT BACKGROUND
==============================*/

.partners-section::before{
    content:"";
    position:absolute;
    left:-60px;
    top:40px;
    width:320px;
    height:320px;
    background-image:radial-gradient(#d8d8d8 2px,transparent 2px);
    background-size:14px 14px;
    opacity:.5;
}

.partners-section::after{
    content:"";
    position:absolute;
    right:-60px;
    bottom:40px;
    width:320px;
    height:320px;
    background-image:radial-gradient(#d8d8d8 2px,transparent 2px);
    background-size:14px 14px;
    opacity:.5;
}

/*=============================
      BLOCK
==============================*/

.partner-block{
    margin-bottom:80px;
    position:relative;
    z-index:2;
}

/*=============================
      HEADING
==============================*/

.section-heading{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
    margin-bottom:45px;
}

.section-heading h2{
    font-size:48px;
    font-weight:300;
    color:#1b1b1b;
    letter-spacing:1px;
    text-transform:uppercase;
}

.section-heading h2 span{
    font-weight:800;
}

.heading-line{
    width:120px;
    height:2px;
    background:#d31724;
    position:relative;
}

.heading-line::before{
    content:"";
    position:absolute;
    width:10px;
    height:10px;
    border-radius:50%;
    background:#d31724;
    top:50%;
    transform:translateY(-50%);
}

.heading-line.left::before{
    left:-5px;
}

.heading-line.right::before{
    right:-5px;
}

/*=============================
      GRID
==============================*/

.partner-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(180px,180px));
    justify-content:center;
    gap:22px;
}

.partner-grid1{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,250px));
    justify-content:center;
    gap:22px;
}

/*=============================
      CARD
==============================*/

.partner-card{

    background:#fff;

    border-radius:22px;

    border:1px solid #d9d9d9;

    height:125px;

    display:flex;

    justify-content:center;

    align-items:center;

    padding:18px;

    transition:.35s;

    position:relative;

    overflow:hidden;

    box-shadow:0 8px 25px rgba(0,0,0,.05);

}

.partner-card img{

    max-width:100%;

    max-height:80px;

    object-fit:contain;

    transition:.35s;

}

/*=============================
      HOVER
==============================*/

.partner-card:hover{

    transform:translateY(-8px);

    border-color:#d31724;

    box-shadow:0 20px 45px rgba(0,0,0,.12);

}

.partner-card:hover img{

    transform:scale(1.08);

}

/*=============================
      TABLET
==============================*/

@media(max-width:991px){

.partner-grid{

grid-template-columns:repeat(3,1fr);

}

.section-heading h2{

font-size:36px;

}

.heading-line{

width:70px;

}

}

/*=============================
      MOBILE
==============================*/

@media(max-width:576px){

.partners-section{

padding:60px 0;

}

.partner-block{

margin-bottom:50px;

}

.partner-grid{

grid-template-columns:repeat(2,1fr);

gap:15px;

}

.partner-card{

height:95px;

padding:12px;

border-radius:16px;

}

.partner-card img{

max-height:50px;

}

.section-heading{

gap:10px;

margin-bottom:25px;

}

.section-heading h2{

font-size:24px;

text-align:center;

}

.heading-line{

width:35px;

}

.partners-section::before,
.partners-section::after{

display:none;

}

}

/* Tablet */
@media(max-width:991px){

.partner-grid{
    grid-template-columns:repeat(3,180px);
    justify-content:center;
}

}

/* Mobile */
@media(max-width:576px){

.partner-grid{
    grid-template-columns:repeat(2,160px);
    justify-content:center;
}

}

/*=========================
  VARIABLES
==========================*/

:root{

    --primary:#df2027;
    --dark:#1b1b1b;
    --white:#fff;
    --text:#444;
    --border:#ececec;

    --shadow:
    0 15px 35px rgba(0,0,0,.08);

}


/*=========================
  SECTION
==========================*/

.invite-section{

    padding:0px 0;
    position:relative;

    background:
    radial-gradient(circle at top left,#ffffff,#f2f4f8);

}


/*=========================
  CONTAINER
==========================*/

.container{

    width:92%;
    max-width:1500px;
    margin:auto;

}


/*=========================
  TITLE
==========================*/

.section-title{

    text-align:center;
    margin-bottom:70px;

}

.section-title h1{

    font-size:72px;
    line-height:1;
    text-transform:uppercase;
    letter-spacing:2px;
    font-weight:800;

}

.section-title span{

    color:#111;

}

.section-title strong{

    color:var(--primary);

}

.section-title p{

    margin-top:20px;
    font-size:18px;
    color:#666;
    font-weight:500;

}


/*=========================
  CARDS GRID
==========================*/

.cards{
    display:flex;
    gap:30px;
    overflow-x:auto;
    scroll-behavior:smooth;
    scrollbar-width:none;
}

.cards::-webkit-scrollbar{
    display:none;
}

.invite-card{
    flex:0 0 300px;
}


.slider-btn{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:50px;
    height:50px;
    border:none;
    border-radius:50%;
    background:#df2027;
    color:#fff;
    font-size:22px;
    cursor:pointer;
    z-index:999;
}

.prev{
    left:10px;
}

.next{
    right:10px;
}

.slider-btn:hover{
    background:#b6161d;
}

/*=========================
 CARD
==========================*/

.invite-wrapper{
    position:relative;
	overflow:hidden;
}

.invite-card{
   flex:0 0 280px;   /* Card width */
    position:relative;

    background:rgba(255,255,255,.82);

    backdrop-filter:blur(20px);

    border-radius:35px;

    overflow:hidden;

    border:1px solid rgba(255,255,255,.7);

  

    transition:.45s;

}


/*=========================
 IMAGE
==========================*/

.card-image{

    height:280px;
    overflow:hidden;

}

.card-image img{

    width:100%;
    height:100%;
    object-fit:cover;

    display:block;

    transition:1s;

}


/*=========================
 CONTENT
==========================*/

.card-content{

    padding: 10px 15px;

}


/*=========================
 NUMBER
==========================*/

.number{

    font-size:52px;

    color:var(--primary);

    font-weight:800;

    margin-bottom:18px;

}


/*=========================
 TITLE
==========================*/

.card-content h3{

    font-size:17px;

    line-height:1.25;

    margin-bottom:18px;

    color:#111;

    font-weight:500;

}


/*=========================
 DESCRIPTION
==========================*/

.card-content p{

    color:#666;

    line-height:1.7;

    font-size:16px;

    margin-bottom:0px;

}

/*=========================
 CARD FOOTER
==========================*/

.card-footer{

    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-top:20px;

}


/*=========================
 STATS
==========================*/

.stats{

    display:flex;
    align-items:center;
    gap:18px;

}

.stats span{

    display:flex;
    align-items:center;
    gap:6px;

    font-size:15px;
    font-weight:600;
    color:#555;

}

.stats svg{

    width:16px;
    height:16px;

    fill:#777;

}


/*=========================
 FOLLOW BUTTON
==========================*/

.card-footer button{

    border:none;
    outline:none;

    background:#fff;

    padding:12px 22px;

    border-radius:50px;

    cursor:pointer;

    font-size:15px;
    font-weight:700;

    display:flex;
    align-items:center;
    gap:10px;

    box-shadow:
    0 8px 20px rgba(0,0,0,.08);

    transition:.35s;

}

.card-footer button span{

    font-size:20px;
    font-weight:700;

}


/*=========================
 CARD HOVER
==========================*/

.invite-card:hover{

    

   border: 1px solid #c9c3c3;

}

.invite-card:hover .card-image img{

    transform:scale(1.08);

}

.invite-card:hover button{

    background:var(--primary);

    color:#fff;

}

.invite-card:hover button span{

    transform:rotate(90deg);

}

.card-footer button span{

    transition:.35s;

}


/*=========================
 GLASS SHINE EFFECT
==========================*/

.invite-card::before{

    content:"";

    position:absolute;

    top:-120%;

    left:-70%;

    width:70%;

    height:220%;

    background:
    linear-gradient(
    120deg,
    transparent,
    rgba(255,255,255,.45),
    transparent);

    transform:rotate(20deg);

    transition:1s;

    pointer-events:none;

}

.invite-card:hover::before{

    left:160%;

}


/*=========================
 IMAGE OVERLAY
==========================*/

.card-image{

    position:relative;

}

.card-image::after{

    content:"";

    position:absolute;

    left:0;
    right:0;
    bottom:0;

    height:120px;

    background:
    linear-gradient(
    transparent,
    rgba(255,255,255,.95));

}


/*=========================
 FADE UP ANIMATION
==========================*/

.invite-card{

    opacity:0;

    transform:translateY(80px);

    animation:fadeUp .8s forwards;

}

.invite-card:nth-child(2){

    animation-delay:.15s;

}

.invite-card:nth-child(3){

    animation-delay:.30s;

}

.invite-card:nth-child(4){

    animation-delay:.45s;

}

.invite-card:nth-child(5){

    animation-delay:.60s;

}


/*=========================
 KEYFRAMES
==========================*/

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(70px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}


/*=========================
 FLOAT EFFECT
==========================*/


/*=========================
  LARGE DESKTOP
==========================*/

@media (max-width:1500px){

    .cards{
        grid-template-columns:repeat(4,1fr);
    }

}


/*=========================
  LAPTOP
==========================*/

@media (max-width:1200px){

    .section-title h1{
        font-size:58px;
    }

    .cards{
        grid-template-columns:repeat(3,1fr);
        gap:25px;
    }

    .card-image{
        height:240px;
    }

    .card-content{
        padding:24px;
    }

    .card-content h3{
        font-size:24px;
    }

}


/*=========================
  TABLET
==========================*/

@media (max-width:991px){

    .invite-section{
        padding:70px 0;
    }

    .section-title{
        margin-bottom:50px;
    }

    .section-title h1{
        font-size:46px;
    }

    .section-title p{
        font-size:16px;
    }

    .cards{
        grid-template-columns:repeat(2,1fr);
        gap:22px;
    }

}


/*=========================
  MOBILE
==========================*/

@media (max-width:767px){

    .container{
        width:94%;
    }

    .section-title h1{
        font-size:38px;
    }

    .section-title p{
        font-size:15px;
        line-height:1.6;
    }

    .cards{
        grid-template-columns:1fr;
        gap:25px;
    }

    .card-image{
        height:240px;
    }

    .card-content{
        padding:22px;
    }

    .number{
        font-size:42px;
    }

    .card-content h3{
        font-size:24px;
    }

    .card-content p{
        font-size:15px;
        margin-bottom:25px;
    }

    .card-footer{
        flex-direction:column;
        align-items:flex-start;
        gap:18px;
    }

    .card-footer button{
        width:100%;
        justify-content:center;
    }

}


/*=========================
  SMALL MOBILE
==========================*/

@media (max-width:480px){

    .invite-section{
        padding:50px 0;
    }

    .section-title h1{
        font-size:30px;
    }

    .section-title p{
        font-size:14px;
    }

    .card-image{
        height:210px;
    }

    .card-content{
        padding:18px;
    }

    .card-content h3{
        font-size:20px;
    }

    .number{
        font-size:34px;
    }

    .stats{
        gap:12px;
    }

    .stats span{
        font-size:13px;
    }

    .card-footer button{
        padding:12px 18px;
        font-size:14px;
    }

}


/*=====================================
        VENUE SECTION
=====================================*/

.venue-section{
    position:relative;
    width:100%;
    min-height:530px;
    background:url("img/bg-1.jpg") center center/cover no-repeat;
    overflow:hidden;

    display:flex;
    justify-content:flex-end;
    align-items:center;

    padding:80px 8%;
	margin-top: 60px;
}

.venue-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        90deg,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,.15) 35%,
        rgba(255,255,255,.78) 60%,
        rgba(255,255,255,.96) 100%
    );
}

.venue-content{
    position:relative;
    z-index:2;
    width:100%;
    max-width:620px;
	    text-align: center;
}

.venue-subtitle{
    display:inline-block;
    margin-bottom:18px;
    color:#d71920;
    font-size:14px;
    font-weight:600;
    letter-spacing:3px;
    text-transform:uppercase;
}

.venue-content h2{
    font-size:35px;
    line-height:1;
    color:#111;
    margin-bottom:0px;
    font-weight:800;
}

.venue-content p{
    font-size:16px;
    line-height:1.9;
    color:#070707;
    margin-bottom:25px;
}

/*=========================
        Tablet
=========================*/

@media(max-width:991px){

    .venue-section{

        justify-content:center;
        padding:70px 40px;
        min-height:650px;

    }

    .venue-overlay{

        background:rgba(255,255,255,.82);

    }

    .venue-content{

        max-width:100%;
        text-align:center;

    }

    .venue-content h2{

        font-size:42px;

    }

}

/*=========================
        Mobile
=========================*/

@media(max-width:576px){

    .venue-section{

        padding:60px 20px;
        background-position:left center;

    }

    .venue-content h2{

        font-size:32px;

    }

    .venue-content p{

        font-size:15px;
        line-height:1.8;

    }

    .venue-subtitle{

        font-size:12px;
        letter-spacing:2px;

    }

}

.countdown-section{
    position:relative;
    width:100%;
    min-height:300px;
    background:url("img/fun-fact.jpg") center center/cover no-repeat;
    display:flex;
    justify-content:center;
    align-items:center;
    overflow:hidden;
    padding:80px 5%;
}

.countdown-overlay{
    position:absolute;
    inset:0;
   background: rgb(0 0 0 / 73%);
}

.countdown-wrapper{
    position:relative;
    z-index:2;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:50px;
    flex-wrap:wrap;
}

.time-box{
    text-align:center;
}

.label{
    display:block;
    color:#fff;
    font-size:22px;
    font-weight:700;
    margin-bottom:20px;
    text-transform:uppercase;
    letter-spacing:2px;
}

.flip-group{
    display:flex;
    gap:10px;
}

.flip-card{
    position:relative;
    width:90px;
    height:110px;
    background:linear-gradient(180deg,#ff4d4d 0%,#d9001b 100%);
    border-radius:10px;
    overflow:hidden;

    display:flex;
    justify-content:center;
    align-items:center;

    box-shadow:0 18px 40px rgba(0,0,0,.35);
}

.flip-card span{
    display:flex;
    justify-content:center;
    align-items:center;

    width:100%;
    height:100%;

    color:#fff;
    font-size:64px;
    font-weight:800;
    font-family:'Arial',sans-serif;
    line-height:1;
    text-align:center;

    position:relative;
    z-index:3;
}

.flip-card::before{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:100%;
    height:2px;
    background:rgba(0,0,0,.35);
    transform:translateY(-50%);
}

.flip-card::after{
    content:"";
    position:absolute;
    left:-4px;
    top:50%;
    transform:translateY(-50%);
    width:8px;
    height:20px;
    background:#111;
    border-radius:20px;
    box-shadow:90px 0 #111;
}
.flip-card .right-notch{
    position:absolute;
    width:8px;
    height:22px;
    background:#111;
    border-radius:20px;
    right:-4px;
    top:50%;
    transform:translateY(-50%);
}

.flip-card span{
    color:#fff;
    font-size:70px;
    font-weight:800;
    line-height:1;
    transition:.3s;
}

/* Tablet */

@media(max-width:991px){

    .countdown-wrapper{
        gap:35px;
    }

    .flip-card{
        width:75px;
        height:95px;
    }

    .flip-card span{
        font-size:58px;
    }

    .label{
        font-size:18px;
    }

}

/* Mobile */

@media(max-width:767px){

    .countdown-section{
        padding:60px 20px;
    }

    .countdown-wrapper{
        gap:25px;
    }

    .time-box{
        width:45%;
    }

    .flip-card{
        width:58px;
        height:75px;
    }

    .flip-card span{
        font-size:42px;
    }

    .label{
        font-size:15px;
        margin-bottom:12px;
    }

}

@media(max-width:480px){

    .time-box{
        width:100%;
    }

    .flip-group{
        justify-content:center;
    }

}

.footer{

    position:relative;
    background:#0f1118;
    overflow:hidden;
    color:#fff;
    margin-top:0px;

}

.footer-bg{

    position:absolute;
    inset:0;

    background:
    radial-gradient(circle at left,#d11227 0%,transparent 35%),
    radial-gradient(circle at right,#9c0015 0%,transparent 35%);

    opacity:.08;

}

.footer-wrap{

    position:relative;

    max-width:1400px;

    margin:auto;

    padding:80px 40px;

    display:grid;

    grid-template-columns:2fr 1.8fr 1.4fr 1.4fr;

    gap:60px;

}

.footer-logo{

    width: 218px;
    margin-bottom: 15px;
    padding: 6px;
    border-radius: 15px;
    background: #fff;

}

.footer-about p{

    color:#bdbdbd;

    line-height:1.9;

    margin-bottom:35px;

}

.footer h3{

    font-size:24px;

    margin-bottom:28px;

    position:relative;

}

.footer h3::after{

    content:"";

    width:60px;

    height:3px;

    background:#d11227;

    position:absolute;

    left:0;

    bottom:-12px;

}

.footer-links ul,

.footer-contact ul{

    list-style:none;

}

.footer-links li,

.footer-contact li{

    margin-bottom:16px;

    color:#c9c9c9;

    line-height:1.8;

}

.footer-links a{

    color:#cfcfcf;

    text-decoration:none;

    transition:.35s;

}

.footer-links a:hover{

    color:#fff;

    padding-left:10px;

}

.footer-contact i{

    color:#d11227;

    width:24px;

    margin-right:8px;

}

.social-links{

    display:flex;

    gap:15px;

}

.social-links a{

    width:48px;

    height:48px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    background:#1d212d;

    transition:.4s;

    font-size:18px;

}

.social-links a:hover{

    background:#d11227;

    transform:translateY(-6px);

}

.footer-news p{

    color:#bdbdbd;

    line-height:1.8;

    margin-bottom:25px;

}

.footer-news form{

    display:flex;

    flex-direction:column;

    gap:15px;

}

.footer-news input{

    height:55px;

    border:none;

    border-radius:8px;

    padding:0 18px;

    outline:none;

}

.footer-news button{

    height:55px;

    border:none;

    background:#d11227;

    color:#fff;

    border-radius:8px;

    font-size:16px;

    cursor:pointer;

    transition:.35s;

}

.footer-news button:hover{

    background:#fff;

    color:#111;

}

.footer-bottom{

    border-top:1px solid rgba(255,255,255,.08);

    text-align:center;

    padding:25px;

    color:#aaa;

}

/*=========================
Tablet
=========================*/

@media(max-width:1100px){

.footer-wrap{

grid-template-columns:1fr 1fr;

gap:50px;

}

}

/*=========================
Mobile
=========================*/

@media(max-width:767px){

.footer-wrap{

grid-template-columns:1fr;

padding:60px 25px;

gap:45px;

}

.footer{

text-align:center;

}

.footer h3::after{

left:50%;

transform:translateX(-50%);

}

.social-links{

justify-content:center;

}

.footer-contact i{

display:block;

margin:0 auto 8px;

}

}

/*==========================
MOBILE MENU
==========================*/

.menu-toggle{
    display:none;
    width:45px;
    height:45px;
    border:none;
    background:#df2027;
    color:#fff;
    font-size:22px;
    border-radius:6px;
    cursor:pointer;
}

/* Mobile */

@media(max-width:991px){

header{
    padding:12px 18px;
}

.menu-toggle{
      position:fixed;
    top:28px;
    right:12px;

    width:42px;
    height:42px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#df2027;
    color:#fff;

    border:none;
    border-radius:5px;

    font-size:22px;

    z-index:10001;
}

nav{
    
    position:fixed;
    top:0;
    right:-100%;
    width:300px;
    max-width:85%;
    height:100vh;

    background:#fff;

    display:flex;
    flex-direction:column;

    padding:60px 0 20px;

    overflow-y:auto;

    transition:.35s;
	justify-content: flex-start;

  

}

nav.active{
    right:0;
	
}

nav>a,
.dropdown>a{

    display:flex;
    justify-content:space-between;
    align-items:center;

    width:100%;
    padding:15px 22px;

    border-bottom:1px solid #eee;

}

.dropdown{
 position:relative;
    width:100%;

}

.dropdown-menu{

    display:none !important;
    position:relative !important;
    left:0;
    top:0;

    width:100%;
    min-width:100%;

    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;

    padding:0;
    margin:0;

    background:#f5f5f5;
    border-radius:0;
    box-shadow:none;

}

.dropdown.active > .dropdown-menu{
    display:block !important;
}
.dropdown-menu li{
    width:100%;
}

.dropdown-menu li a{

    display:block;
    padding:14px 40px;
    font-size:14px;
    border-bottom:1px solid #e5e5e5;

}

.dropdown.active>a i{

    transform:rotate(180deg);

}

.dropdown>a i{

    transition:.3s;

}

.menu-overlay{

    position:fixed;
    inset:0;
    background:rgba(0,0,0,.5);

    opacity:0;
    visibility:hidden;
    transition:.3s;
    z-index:1000;

}

.menu-overlay.active{

    opacity:1;
    visibility:visible;

}



}












.floating-contact{

position:fixed;

left:50%;
bottom:25px;

transform:translateX(-50%);

display:flex;
align-items:center;
justify-content:center;
gap:14px;

padding:14px 18px;

background:rgba(255,255,255,.18);

backdrop-filter:blur(25px);
-webkit-backdrop-filter:blur(25px);

border:1px solid rgba(255,255,255,.35);

border-radius:80px;

box-shadow:
0 20px 60px rgba(0,0,0,.18);

z-index:9999;

animation:floatBar 4s ease-in-out infinite;

}

.floating-contact::before{

content:"";

position:absolute;
inset:-2px;

border-radius:inherit;

padding:2px;

background: linear-gradient(90deg, #da0013, #000000, #686867, #da0013);

-webkit-mask:
linear-gradient(#fff 0 0) content-box,
linear-gradient(#fff 0 0);

-webkit-mask-composite:xor;

mask-composite:exclude;

}

/* ========================= */

.item{

position:relative;

width:78px;

text-decoration:none;

display:flex;
flex-direction:column;
align-items:center;
justify-content:center;

gap:8px;

color:#111;

font-size:12px;
font-weight:600;

transition:.35s;

z-index:2;

}

.item i{

width:40px;
height:40px;

display:flex;
align-items:center;
justify-content:center;

border-radius:50%;

font-size:20px;

background:#fff;

transition:.4s;

box-shadow:
0 8px 20px rgba(0,0,0,.12);

}

/* Colors */

.call i{

color:#0066ff;

}

.exhibitor i{

background:#264430;
color:#fff;

}

.visitor i{

background:#222;
color:#fff;

}

.whatsapp i{

background:#25D366;
color:#fff;

animation:pulse 1.8s infinite;

}

/* Hover */

.item:hover{

transform:translateY(-10px);

}

.item:hover i{

transform:rotate(-8deg) scale(1.12);

}

/* Floating */

@keyframes floatBar{

0%,100%{

transform:translate(-50%,0);

}

50%{

transform:translate(-50%,-8px);

}

}

/* WhatsApp Pulse */

@keyframes pulse{

0%{

box-shadow:
0 0 0 0 rgba(37,211,102,.6);

}

70%{

box-shadow:
0 0 0 18px rgba(37,211,102,0);

}

100%{

box-shadow:
0 0 0 0 rgba(37,211,102,0);

}

}

/* Responsive */

@media(max-width:768px){

.floating-contact{

width:95%;

justify-content:space-around;

gap:5px;

padding:10px;

border-radius:25px;

bottom:15px;

}

.item{

width:auto;
flex:1;

}

.item i{

width:48px;
height:48px;
font-size:20px;

}

.item span{

font-size:11px;

}

}

@media(min-width:769px){

.floating-contact{

max-width:700px;
width:auto;

}

}


/*==========================================
        ABOUT TEPL
==========================================*/

.tepl-about{
    position:relative;
    padding:160px 0 20px;
    background:#ffffff;
    overflow:hidden;
}

.tepl-about::before{
    content:"";
    position:absolute;
    width:700px;
    height:700px;
    background:#f8f8f8;
    border-radius:50%;
    top:-250px;
    right:-250px;
    z-index:0;
}

.tepl-about::after{
    content:"";
    position:absolute;
    width:450px;
    height:450px;
    background:#fafafa;
    border-radius:50%;
    left:-180px;
    bottom:-180px;
    z-index:0;
}

.tepl-container{
    width:92%;
    max-width:1350px;
    margin:auto;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
    position:relative;
    z-index:2;
}

/*=========================
        LEFT
=========================*/

.tepl-content{
    animation:teplFadeLeft 1s ease;
}

.tepl-subtitle{
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:#b31222;
    text-transform:uppercase;
    letter-spacing:3px;
    font-size:14px;
    font-weight:700;
    margin-bottom:18px;
}

.tepl-subtitle::before{
    content:"";
    width:55px;
    height:2px;
    background:#b31222;
}

.tepl-title{
    font-size:35px;
    line-height:1.08;
    color:#111;
    margin-bottom:30px;
    font-weight:800;
}

.tepl-title span{
    color:#b31222;
    display:block;
}

.tepl-desc{
    font-size:16px;
    line-height:1.9;
    color:#666;
    margin-bottom:20px;
}

.tepl-highlights{
    margin:35px 0;
}

.tepl-highlight{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:18px;
    font-size:17px;
    color:#222;
    font-weight:500;
}

.tepl-highlight i{
    color:#b31222;
    font-size:22px;
}

.tepl-btn{
    display:inline-flex;
    align-items:center;
    gap:15px;
    padding:18px 34px;
    background:#b31222;
    color:#fff;
    text-decoration:none;
    border-radius:60px;
    font-weight:600;
    transition:.4s;
}

.tepl-btn:hover{
    background:#111;
    transform:translateY(-6px);
}

/*=========================
        RIGHT
=========================*/

.tepl-gallery{
    position:relative;
    min-height:650px;
}

.tepl-shape{
    position:absolute;
    width:240px;
    height:240px;
    border-radius:40px;
    background:#b31222;
    right:0;
    top:30px;
    z-index:1;
}

.tepl-main-image{
    position:absolute;
    width:82%;
    right:40px;
    top:0;
    border-radius:35px;
    overflow:hidden;
    box-shadow:0 35px 70px rgba(0,0,0,.18);
    z-index:2;
}

.tepl-main-image img{
    width:100%;
    display:block;
    transition:1s;
}

.tepl-main-image:hover img{
    transform:scale(1.08);
}

.tepl-small-image{
    position:absolute;
    width:52%;
    left:0;
    bottom:40px;
    border-radius:28px;
    overflow:hidden;
    border:8px solid #fff;
    box-shadow:0 25px 50px rgba(0,0,0,.12);
    z-index:3;
}

.tepl-small-image img{
    width:100%;
    display:block;
}

.tepl-badge{
    position:absolute;
    right:0;
    bottom:120px;
    width:180px;
    height:180px;
    background:#fff;
    border-radius:50%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    box-shadow:0 25px 60px rgba(0,0,0,.15);
    z-index:4;
    animation:teplFloat 4s infinite ease-in-out;
}

.tepl-badge h3{
    font-size:58px;
    color:#b31222;
    line-height:1;
    font-weight:800;
}

.tepl-badge span{
    width:80%;
    text-align:center;
    margin-top:8px;
    font-size:15px;
    color:#444;
}

/*=====================================
        BRANDS
=====================================*/

.tepl-brands{
    padding:100px 0;
    background:#fafafa;
}

.tepl-heading{
    text-align:center;
    margin-bottom:60px;
}

.tepl-heading span{
    color:#b31222;
    letter-spacing:3px;
    font-size:14px;
    font-weight:700;
}

.tepl-heading h2{
    margin-top:15px;
    font-size:44px;
    color:#111;
}

.tepl-brand-grid{
    width:92%;
    max-width:1300px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.tepl-brand-card{
    background:#fff;
    border-radius:25px;
    padding:35px;
    height:150px;
    display:flex;
    justify-content:center;
    align-items:center;
    transition:.45s;
    box-shadow:0 12px 35px rgba(0,0,0,.06);
}

.tepl-brand-card img{
    max-width:180px;
    max-height:80px;
    transition:.4s;
    filter:grayscale(100%);
}

.tepl-brand-card:hover{
    transform:translateY(-10px);
}

.tepl-brand-card:hover img{
    filter:none;
    transform:scale(1.08);
}

/*====================================
        LOGO SECTION
====================================*/

.tepl-logo-section{
    padding:20px 0;
    overflow:hidden;
    background:#fff;
}

.tepl-logo-slider{
    overflow:hidden;
    margin:35px 0;
}

.tepl-logo-track{
    display:flex;
    width:max-content;
    animation:teplScroll 32s linear infinite;
}

.tepl-logo-slider-reverse .tepl-logo-track{
    animation-direction:reverse;
}

.tepl-logo-slider:hover .tepl-logo-track{
    animation-play-state:paused;
}

.tepl-logo-item{
    width:220px;
    height:120px;
    margin:0 18px;
    background:#fff;
    border-radius:18px;
    display:flex;
    justify-content:center;
    align-items:center;
    box-shadow:0 10px 30px rgba(0,0,0,.05);
    transition:.35s;
}

.tepl-logo-item img{
    max-width:140px;
    max-height:65px;
    filter:grayscale(100%);
    transition:.35s;
}

.tepl-logo-item:hover{
    transform:translateY(-8px);
}

.tepl-logo-item:hover img{
    filter:none;
    transform:scale(1.08);
}

/*====================================
        ANIMATION
====================================*/

@keyframes teplScroll{

    from{
        transform:translateX(0);
    }

    to{
        transform:translateX(-50%);
    }

}

@keyframes teplFloat{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-15px);
    }

}

@keyframes teplFadeLeft{

    from{
        opacity:0;
        transform:translateX(-60px);
    }

    to{
        opacity:1;
        transform:translateX(0);
    }

}

/*====================================
        RESPONSIVE
====================================*/

@media(max-width:991px){

.tepl-container{
    grid-template-columns:1fr;
}

.tepl-content{
    order:2;
}

.tepl-gallery{
    order:1;
    min-height:600px;
}

.tepl-title{
    font-size:44px;
}

.tepl-brand-grid{
    grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:767px){

.tepl-about{
    padding:70px 0;
}

.tepl-title{
    font-size:34px;
}

.tepl-desc{
    font-size:16px;
}

.tepl-gallery{
    min-height:430px;
}

.tepl-main-image{
    width:100%;
    right:0;
}

.tepl-small-image{
    width:70%;
    bottom:-10px;
}

.tepl-badge{
    width:120px;
    height:120px;
}

.tepl-badge h3{
    font-size:36px;
}

.tepl-badge span{
    font-size:11px;
}

.tepl-brand-grid{
    grid-template-columns:1fr;
}

.tepl-heading h2{
    font-size:30px;
}

.tepl-logo-item{
    width:170px;
    height:90px;
}

}

/*=============================
    EXHIBITOR PROFILE
=============================*/

.tepl-exhibitor-profile{
    padding:160px 0;
    background:#f8f9fb;
}

.tepl-exhibitor-container{
    width:92%;
    max-width:1400px;
    margin:auto;
}

.tepl-exhibitor-heading{
    text-align:center;
    margin-bottom:60px;
}

.tepl-exhibitor-heading span{
    color:#b31222;
    text-transform:uppercase;
    letter-spacing:3px;
    font-size:14px;
    font-weight:700;
}

.tepl-exhibitor-heading h2{
    font-size:46px;
    margin:18px 0;
    color:#111;
}

.tepl-exhibitor-heading p{
    max-width:700px;
    margin:auto;
    color:#666;
    line-height:1.8;
}

.tepl-category-grid{

    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:22px;

}

.tepl-category-card{

    position:relative;

    display:flex;
    align-items:center;
    gap:18px;

    padding:12px 22px;

    background:#fff;

    border:1px solid #ececec;

    border-radius:18px;

    overflow:hidden;

    transition:.4s ease;

    box-shadow:0 8px 25px rgba(0,0,0,.05);

}

.tepl-category-card::before{

    content:"";

    position:absolute;

    left:0;
    top:0;

    width:4px;
    height:100%;

    background:#b31222;

    transform:scaleY(0);

    transition:.35s;

}

.tepl-category-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(0,0,0,.12);

    border-color:#b31222;

}

.tepl-category-card:hover::before{

    transform:scaleY(1);

}

.tepl-category-card i{

    width:50px;
    height:50px;

    display:flex;
    justify-content:center;
    align-items:center;

    border-radius:50%;

    background:#b31222;

    color:#fff;

    font-size:22px;

    flex-shrink:0;

}

.tepl-category-card span{

    font-size:16px;
    font-weight:600;
    color:#222;
    line-height:1.5;

}

.tepl-category-card:hover{

    transform:translateY(-8px);

    border-color:#b31222;

    box-shadow:0 20px 40px rgba(0,0,0,.08);

}

.tepl-category-card:hover i{

    transform:rotate(8deg) scale(1.08);

}

@media(max-width:768px){

.tepl-exhibitor-heading h2{

    font-size:34px;

}

.tepl-category-card{

    padding:22px;

}

}

.tepl-heading-wrap{
    margin-bottom:60px;
}

.tepl-subheading{

    display:flex;
    align-items:center;
    gap:16px;

    font-size:18px;
    font-weight:700;
    letter-spacing:4px;
    text-transform:uppercase;

    color:#9b0024;

    margin-bottom:25px;

}

.tepl-subheading span{

    width:55px;
    height:2px;

    background:#9b0024;

    display:block;

}

.tepl-main-heading{

    font-size:35px;
    line-height:2.5rem;

    font-weight:800;

    color:#111;

    letter-spacing:-2px;

    max-width:760px;

}

.tepl-main-heading span{

    display:block;

    color:#9b0024;

}

/* Tablet */

@media(max-width:992px){

.tepl-main-heading{

    font-size:56px;

}

}

/* Mobile */

@media(max-width:768px){

.tepl-subheading{

    font-size:14px;
    letter-spacing:3px;

}

.tepl-subheading span{

    width:40px;

}

.tepl-main-heading{

    font-size:38px;
    line-height:1.05;
    letter-spacing:-1px;

}

}

/* ============================
    WHY EXHIBIT PREMIUM
=============================*/

.expo-why-section{
    position:relative;
    padding:160px 0 40px;
    overflow:hidden;

    background:
    url("img/why.png") center center/cover no-repeat;
}

.expo-why-section1{
    position:relative;
    padding:160px 0 40px;
    overflow:hidden;

    background:
    url("img/visit1.png") center center/cover no-repeat;
}

.expo-overlay{
    position:absolute;
    inset:0;
    background:
    linear-gradient(90deg,
    rgba(7,7,7,.88) 0%,
    rgba(7,7,7,.78) 38%,
    rgba(7,7,7,.45) 65%,
    rgba(7,7,7,.15) 100%);
}

.expo-container{
    position:relative;
    z-index:5;
    width:92%;
    max-width:1380px;
    margin:auto;
}

.expo-left{
    width:720px;
    max-width:100%;
}

.expo-tag{

    display:inline-block;
    padding:10px 22px;

    border:1px solid rgba(255,255,255,.2);

    border-radius:50px;

    backdrop-filter:blur(20px);

    background:rgba(255,255,255,.08);

    color:#ff3d3d;

    font-size:14px;

    letter-spacing:3px;

    font-weight:700;

    margin-bottom:28px;
}

.expo-title{

    font-size:35px;

    line-height:1.08;

    color:#fff;

    font-weight:800;

    margin-bottom:25px;
}

.expo-title span{
    display:block;
    color:#df2027;
}

.expo-line{

    width:120px;
    height:5px;

    border-radius:20px;

    background:#df2027;

    margin-bottom:30px;
}

.expo-intro{

    color:#d6d6d6;

    font-size:17px;

    line-height:1.9;

    margin-bottom:45px;

    max-width:650px;
}

.expo-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:22px;
}

.expo-item{

    display:flex;

    gap:18px;

    padding:25px;

    border-radius:22px;

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.12);

    transition:.45s;
}

.expo-item i{

    width:50px;

    height:50px;

    flex-shrink:0;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:#df2027;

    color:#fff;

    font-size:21px;
}

.expo-item h4{

    color:#fff;

    font-size:19px;

    margin-bottom:8px;

    font-weight:700;
}

.expo-item p{

    color:#d0d0d0;

    font-size:14px;

    line-height:1.7;
}

.expo-item:hover{

    transform:translateY(-10px);

    background:rgba(223,32,39,.15);

    border-color:#df2027;
}

.expo-btn{

    display:inline-flex;

    align-items:center;

    gap:12px;

    margin-top:45px;

    padding:18px 34px;

    background:#df2027;

    color:#fff;

    text-decoration:none;

    border-radius:50px;

    font-weight:700;

    transition:.35s;
}

.expo-btn:hover{

    background:#fff;

    color:#111;

    transform:translateY(-5px);
}

/* =====================
   Animation
======================*/

.expo-item{

    opacity:0;

    transform:translateY(50px);

    animation:expoFade .8s forwards;
}

.expo-item:nth-child(2){animation-delay:.1s;}
.expo-item:nth-child(3){animation-delay:.2s;}
.expo-item:nth-child(4){animation-delay:.3s;}
.expo-item:nth-child(5){animation-delay:.4s;}
.expo-item:nth-child(6){animation-delay:.5s;}

@keyframes expoFade{

from{
opacity:0;
transform:translateY(60px);
}

to{
opacity:1;
transform:translateY(0);
}

}

/* =====================
   Mobile
======================*/

@media(max-width:991px){

.expo-title{
font-size:44px;
}

.expo-grid{
grid-template-columns:1fr;
}

}

@media(max-width:576px){

.expo-why-section{
padding:80px 0;
}

.expo-title{
font-size:34px;
}

.expo-intro{
font-size:15px;
}

.expo-item{
padding:20px;
}

.expo-item h4{
font-size:18px;
}

.expo-item i{

width:55px;
height:55px;
font-size:22px;

}

.expo-btn{

width:100%;
justify-content:center;

}

}

/*=========================================
AUTO ROAD SECTION
=========================================*/

.auto-road-section{
    position:relative;
    padding:140px 0 80px;
    overflow:hidden;
    background:#050505;
}

.road-bg{
    position:absolute;
    inset:0;
    background:url("img/why.png") center center/cover no-repeat;
    opacity:.15;
    transform:scale(1.08);
}

.auto-road-section::before{
    content:"";
    position:absolute;
    inset:0;
    background:
    linear-gradient(180deg,
    rgba(0,0,0,.55),
    rgba(0,0,0,.88));
}

.auto-road-section .container{
    width:92%;
    max-width:1450px;
    margin:auto;
    position:relative;
    z-index:5;
}

/*=========================
TITLE
=========================*/

.auto-title{
    text-align:center;
    margin-bottom:90px;
}

.auto-title span{

    display:inline-block;

    color:#ff2d2d;

    letter-spacing:5px;

    font-weight:700;

    font-size:15px;

    text-transform:uppercase;

    margin-bottom:18px;

}

.auto-title h2{

    color:#fff;

    font-size:58px;

    font-weight:800;

    margin-bottom:20px;

}

.auto-title p{

    max-width:700px;

    margin:auto;

    color:#d9d9d9;

    font-size:17px;

    line-height:1.8;

}

.visitor-road{

    position:relative;

    padding:160px 0 40px;

    background:#080808 url(img/306804.jpg) center/cover;

}

.visitor-road::before{

    content:"";

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.75);

}

.visitor-heading{

    position:relative;

    z-index:5;

    text-align:center;

    color:#fff;

    margin-bottom:80px;

}

.visitor-heading span{

    color:#e30613;

    letter-spacing:4px;

    font-weight:700;

}

.visitor-heading h2{

    font-size:55px;

    margin-top:15px;

}

.road-list{

    position:relative;

    width:90%;

    max-width:1300px;

    margin:auto;

}

.road-line{

    position:absolute;

    left:50%;

    top:306px;

    bottom:80px;

    width:110px;

    transform:translateX(-50%);

    background:#1d1d1d;

    border-radius:70px;

}

.road-line::before{

    content:"";

    position:absolute;

    left:50%;

    top:0;

    width:8px;

    height:100%;

    transform:translateX(-50%);

    background:repeating-linear-gradient(
        to bottom,
        #fff 0 25px,
        transparent 25px 50px
    );

    animation:road 1.2s linear infinite;

}

@keyframes road{

from{

background-position:0 0;

}

to{

background-position:0 50px;

}

}

.road-row{

    position:relative;

    display:flex;

    margin:15px 0;

}

.road-row.left{

    justify-content:flex-start;

}

.road-row.right{

    justify-content:flex-end;

}

.road-box{

    position:relative;

    width:500px;

    min-height:65px;

    display:flex;

    align-items:center;

    gap:18px;

    padding:10px 28px;

    background:#df2027;

    color:#fff;

    border-radius:12px;

    font-weight:600;

    transition:.4s;

    z-index:5;

}

.road-box i{

    width:55px;

    height:55px;

    background:#fff;

    color:#df2027;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:22px;

}

.left .road-box{

    margin-right:55%;

}

.right .road-box{

    margin-left:55%;

}

.road-box:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(227,6,19,.45);

}

@media(max-width:991px){

.road-line{

display:none;

}

.left .road-box,
.right .road-box{

margin:0;

width:100%;

}

.road-row{

justify-content:center;

}

}

@media(max-width:768px){

.visitor-heading h2{

font-size:36px;

}

.road-box{

width:100%;

font-size:15px;

}

}

/*==============================
AUTO CONTACT
==============================*/

.as-contact-section{

    position:relative;

    padding:160px 0 40px;

    background:#fff;

    overflow:hidden;

}

.as-contact-bg{

    position:absolute;

    inset:0;

    background:url("img/cont.png")
    center/cover;

    opacity:.05;

}

.as-contact-section .container{

    position:relative;

    z-index:2;

}

.as-contact-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:60px;

    align-items:center;

}

.as-subtitle{

    color:#000;

    font-size:15px;

    letter-spacing:4px;

    font-weight:700;

}

.as-contact-info h2{

    color:#000;

    font-size:52px;

    margin:15px 0;

    font-weight:800;

}

.as-contact-info>p{

    color:#000;

    line-height:1.8;

    margin-bottom:45px;

}

.as-info-box{

    display:flex;

    gap:20px;

    margin-bottom:30px;

    align-items:flex-start;

}

.as-icon{

    width:65px;

    height:65px;

    background:#df2027;

    border-radius:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    flex-shrink:0;

    transition:.4s;

}

.as-icon i{

    color:#fff;

    font-size:24px;

}

.as-info-box:hover .as-icon{

    transform:rotate(-8deg) scale(1.08);

}

.as-info-box h4{

    color:#000;

    margin-bottom:8px;

    font-size:20px;

}

.as-info-box a{

    color:#000;

    text-decoration:none;

}

.as-info-box p{

    color:#000;

    line-height:1.8;

}

.as-contact-form{

    background: rgb(2 2 2);

    backdrop-filter:blur(18px);

      border: 1px solid rgb(214 12 39);

    padding:45px;

    border-radius:25px;

}

.as-contact-form h3{

    color:#fff;

    margin-bottom:35px;

    font-size:34px;

}

.as-row{

    margin-bottom:20px;

}

.as-contact-form input,

.as-contact-form textarea{

    width:100%;

    border:none;

    outline:none;

    padding:18px 20px;

    border-radius:12px;

    background:rgba(255,255,255,.08);

    color:#fff;

    font-size:15px;

}

.as-contact-form input::placeholder,

.as-contact-form textarea::placeholder{

    color:#bbb;

}

.as-contact-form textarea{

    resize:none;

}

.as-contact-form button{

    width:100%;

    border:none;

    background:#df2027;

    color:#fff;

    padding:18px;

    font-size:17px;

    font-weight:600;

    border-radius:12px;

    cursor:pointer;

    transition:.4s;

}

.as-contact-form button:hover{

    background:#fff;

    color:#df2027;

}

@media(max-width:991px){

.as-contact-grid{

grid-template-columns:1fr;

}

.as-contact-info h2{

font-size:38px;

}

.as-contact-form{

padding:30px;

}

}

/*=========================
CAPTCHA
=========================*/

.as-captcha-row{

    display:flex;

    align-items:center;

    gap:15px;

    margin-bottom:25px;

}

.as-captcha-img{

    width:120px;

    height:48px;

    border:1px solid #444;

    border-radius:8px;

    overflow:hidden;

    background:#fff;

    flex-shrink:0;

}

.as-captcha-img img{

    width:100%;

    height:100%;

    object-fit:cover;

    display:block;

}

.as-captcha-input{

    flex:1;

}

.as-captcha-input input{

    width:100%;

    height:48px;

    padding:0 18px;

    border:1px solid rgba(255,255,255,.18);

    border-radius:8px;

    background:rgba(255,255,255,.08);

    color:#fff;

    font-size:15px;

    transition:.35s;

}

.as-captcha-input input::placeholder{

    color:#bbb;

}

.as-captcha-input input:focus{

    border-color:#df2027;

    box-shadow:0 0 15px rgba(223,32,39,.25);

    outline:none;

}

/*=========================
AUTO SHOW GALLERY
=========================*/

.asg-gallery-section{

    padding:160px 0 40px;

    background:#fafafa;

    position:relative;

}

.asg-heading{

    text-align:center;

    margin-bottom:60px;

}

.asg-subtitle{

    color:#d31226;

    font-weight:700;

    letter-spacing:4px;

    display:block;

    margin-bottom:15px;

}

.asg-heading h2{

    font-size:40px;

    font-weight:700;

    color:#111;

    margin-bottom:15px;

}

.asg-heading h2 span{

    color:#d31226;

}

.asg-heading p{

    max-width:700px;

    margin:auto;

    color:#666;

    line-height:1.8;

}
.asg-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

.asg-item{

    position:relative;

    overflow:hidden;

    border-radius:20px;

    aspect-ratio:1/1;

    display:block;

    cursor:pointer;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.4s;

}

.asg-item img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:1s;

}

.asg-item:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 45px rgba(0,0,0,.18);

}

.asg-item:hover img{

    transform:scale(1.12);

}

.asg-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(rgba(0,0,0,.15),rgba(211,18,38,.80));

    display:flex;

    justify-content:center;

    align-items:center;

    opacity:0;

    transition:.4s;

}

.asg-item:hover .asg-overlay{

    opacity:1;

}

.asg-overlay i{

    width:70px;

    height:70px;

    border-radius:50%;

    background:#fff;

    color:#d31226;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:24px;

    transform:scale(.6);

    transition:.4s;

}

.asg-item:hover i{

    transform:scale(1);

}

@media(max-width:991px){

.asg-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:576px){

.asg-grid{

grid-template-columns:1fr;

}

}

/*==================================
    EXHIBITOR REGISTRATION
==================================*/

.expo-register{
    position:relative;
    padding:160px 20px 40px;
    background:url("img/why.png") center center/cover no-repeat;
    overflow:hidden;
}

.expo-register-overlay{
    position:absolute;
    inset:0;
        background: rgb(255 255 255 / 91%);
    backdrop-filter:blur(3px);
}

.expo-register-container{
    position:relative;
    z-index:2;
    width:92%;
    max-width:1200px;
    margin:auto;
    display:flex;
    justify-content:center;
    align-items:center;
}

.expo-register-box{
    width:100%;
    max-width:650px;
    background:rgba(255,255,255,.10);
    backdrop-filter:blur(20px);
    border:1px solid rgba(255,255,255,.18);
    border-radius:28px;
    padding:30px 50px;
    box-shadow:0 30px 80px rgba(0,0,0,.35);
    animation:expoFadeUp .9s ease;
}

.expo-register-heading{
    text-align:center;
    margin-bottom:35px;
}

.expo-register-heading span{
    display:inline-block;
    color:#df2027;
    font-size:14px;
    font-weight:700;
    letter-spacing:3px;
    text-transform:uppercase;
    margin-bottom:15px;
}

.expo-register-heading h2{
    color:#070707;
    font-size:35px;
    font-weight:700;
    margin-bottom:15px;
}

.expo-register-heading p{
    color:#e5e5e5;
    line-height:1.8;
    font-size:16px;
}

.expo-register-form{
    display:flex;
    flex-direction:column;
    gap:20px;
}

.expo-input-group input,
.expo-input-group textarea{
    width:100%;
    padding:18px 22px;
    border:none;
    outline:none;
    border-radius:14px;
   
    font-size:16px;
    border: 1px solid rgb(213 12 39 / 63%);
    transition:.35s;
}

.expo-input-group input::placeholder,
.expo-input-group textarea::placeholder{
    color:#ddd;
}

.expo-input-group input:focus,
.expo-input-group textarea:focus{
    border-color:#df2027;
    
    box-shadow:0 0 0 4px rgba(223,32,39,.15);
}

.expo-input-group textarea{
    resize:none;
	height: 82px;
}

.expo-submit-btn{
    width:100%;
    padding:18px;
    border:none;
    border-radius:60px;
    background:#df2027;
    color:#fff;
    font-size:17px;
    font-weight:700;
    cursor:pointer;
    transition:.35s;
}

.expo-submit-btn:hover{
    background:#fff;
    color:#df2027;
    transform:translateY(-5px);
}

@keyframes expoFadeUp{

    from{
        opacity:0;
        transform:translateY(50px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

/*=========================
        TABLET
=========================*/

@media(max-width:991px){

.expo-register{
    padding:90px 20px;
}

.expo-register-box{
    padding:40px;
}

.expo-register-heading h2{
    font-size:34px;
}

}

/*=========================
        MOBILE
=========================*/

@media(max-width:576px){

.expo-register{
    padding:70px 15px;
}

.expo-register-box{
    padding:28px 22px;
    border-radius:22px;
}

.expo-register-heading h2{
    font-size:28px;
}

.expo-register-heading p{
    font-size:15px;
}

.expo-input-group input,
.expo-input-group textarea{
    padding:15px 18px;
    font-size:15px;
}

.expo-submit-btn{
    padding:16px;
}

}

/* CAPTCHA */

.expo-captcha{
    display:flex;
    gap:15px;
    align-items:center;
    margin:5px 0 10px;
}

.captcha-image{
    width:180px;
    height:48px;
    overflow:hidden;
    border-radius:8px;
    background:#fff;
    flex-shrink:0;
}

.captcha-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.captcha-input{
    flex:1;
}

.captcha-input input{
    width:100%;
    height:48px;
    padding:0 18px;
    border-radius:8px;
    border: 1px solid rgb(214 12 39 / 69%);
    background:rgba(255,255,255,.15);
    
    outline:none;
    font-size:15px;
}

.captcha-input input::placeholder{
    color:#ddd;
}

.captcha-input input:focus{
    border-color:#df2027;
    box-shadow:0 0 0 3px rgba(223,32,39,.15);
}

/* Mobile */

@media(max-width:576px){

.expo-captcha{
    flex-direction:column;
    align-items:stretch;
}

.captcha-image{
    width:100%;
    height:55px;
}

}

/*=====================================================
        VISITOR REGISTRATION FORM
======================================================*/

.visitor-register{
    position:relative;
    padding:160px 20px 40px;
    background:url("img/visit1.png") center center/cover no-repeat;
    overflow:hidden;
}

.visitor-register-overlay{
    position:absolute;
    inset:0;
    background: rgb(255 255 255 / 97%);
    backdrop-filter:blur(3px);
}

.visitor-register-container{
    position:relative;
    z-index:2;
    width:92%;
    max-width:1250px;
    margin:auto;
}

.visitor-register-box{
    max-width:950px;
    margin:auto;
    background:rgba(255,255,255,.10);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    border:1px solid rgba(255,255,255,.18);
    border-radius:28px;
    padding:55px;
    box-shadow:0 30px 80px rgba(0,0,0,.35);
    animation:vrFade .8s ease;
}

/*==========================
        Heading
==========================*/

.visitor-register-heading{
    text-align:center;
    margin-bottom:40px;
}

.visitor-register-heading span{
    display:inline-block;
    color:#df2027;
    font-size:14px;
    font-weight:700;
    letter-spacing:3px;
    text-transform:uppercase;
    margin-bottom:15px;
}

.visitor-register-heading h2{
    color:#646464;
    font-size:35px;
    font-weight:700;
    margin-bottom:12px;
}

.visitor-register-heading p{
    color:#e6e6e6;
    font-size:16px;
    line-height:1.8;
}

/*==========================
        Grid
==========================*/

.vr-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:22px;
    margin-bottom:22px;
}

.vr-full{
    grid-column:1/-1;
}

/*==========================
        Fields
==========================*/

.vr-field{
    display:flex;
    flex-direction:column;
}

.vr-field label{
    color:#434141;
    margin-bottom:10px;
    font-size:15px;
    font-weight:600;
}

.vr-field label span{
    color:#df2027;
}

.vr-field input,
.vr-field textarea,
.vr-field select{
    width:100%;
    padding:16px 18px;
    border-radius:14px;
        border: 1px solid rgb(218 0 19);
    background:rgba(255,255,255,.12);
    color:#333131;
    font-size:15px;
    outline:none;
    transition:.35s;
}

.vr-field textarea{
    resize:none;
    min-height:120px;
}

.vr-field input::placeholder,
.vr-field textarea::placeholder{
    color:#ddd;
}

.vr-field input:focus,
.vr-field textarea:focus,
.vr-field select:focus{
    border-color:#df2027;
    background:rgba(255,255,255,.20);
    box-shadow:0 0 0 4px rgba(223,32,39,.18);
}

.vr-field select{
    cursor:pointer;
}

.vr-field select option{
    color:#222;
}

/*==========================
        CAPTCHA
==========================*/

.expo-captcha{
    display:flex;
    align-items:center;
    gap:18px;
    margin:30px 0;
}

.captcha-image{
    width:180px;
    height:52px;
    overflow:hidden;
    border-radius:10px;
    background:#fff;
}

.captcha-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.captcha-input{
    flex:1;
}

.captcha-input input{
    width:100%;
    height:52px;
    padding:0 18px;
    border-radius:10px;
    border: 1px solid rgb(214 12 39);
    background:rgba(255,255,255,.12);
    
    outline:none;
    transition:.35s;
}

.captcha-input input::placeholder{
    color:#ddd;
}

.captcha-input input:focus{
    border-color:#df2027;
    box-shadow:0 0 0 4px rgba(223,32,39,.18);
}

/*==========================
        Button
==========================*/

.visitor-submit-btn{
    width:100%;
    border:none;
    padding:18px;
    border-radius:60px;
    background:#df2027;
    color:#fff;
    font-size:17px;
    font-weight:700;
    cursor:pointer;
    transition:.35s;
}

.visitor-submit-btn:hover{
    background:#fff;
    color:#df2027;
    transform:translateY(-5px);
    box-shadow:0 20px 40px rgba(223,32,39,.30);
}

/*==========================
        Animation
==========================*/

@keyframes vrFade{

    from{
        opacity:0;
        transform:translateY(60px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

.vr-field{
    animation:fieldUp .7s ease both;
}

.vr-field:nth-child(1){animation-delay:.05s;}
.vr-field:nth-child(2){animation-delay:.10s;}
.vr-field:nth-child(3){animation-delay:.15s;}
.vr-field:nth-child(4){animation-delay:.20s;}
.vr-field:nth-child(5){animation-delay:.25s;}
.vr-field:nth-child(6){animation-delay:.30s;}
.vr-field:nth-child(7){animation-delay:.35s;}
.vr-field:nth-child(8){animation-delay:.40s;}

@keyframes fieldUp{

    from{
        opacity:0;
        transform:translateY(25px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

/*==========================
        Tablet
==========================*/

@media(max-width:991px){

.visitor-register{
    padding:90px 20px;
}

.visitor-register-box{
    padding:40px;
}

.vr-grid{
    grid-template-columns:1fr;
}

.vr-full{
    grid-column:auto;
}

.visitor-register-heading h2{
    font-size:34px;
}

}

/*==========================
        Mobile
==========================*/

@media(max-width:576px){

.visitor-register{
    padding:70px 15px;
}

.visitor-register-box{
    padding:25px 20px;
    border-radius:20px;
}

.visitor-register-heading h2{
    font-size:28px;
}

.visitor-register-heading p{
    font-size:15px;
}

.vr-field input,
.vr-field textarea,
.vr-field select{
    padding:14px 15px;
    font-size:14px;
}

.expo-captcha{
    flex-direction:column;
    align-items:stretch;
}

.captcha-image{
    width:100%;
}

.visitor-submit-btn{
    padding:16px;
}

}

/*==========================
    Badge Popup
==========================*/

.badge-popup{
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    padding:30px 15px;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

.badge-card{

    width:100%;
    max-width:500px;

    background:rgba(255,255,255,.92);

    backdrop-filter:blur(18px);

    border-radius:22px;

    padding:15px;

    box-shadow:
    0 20px 60px rgba(0,0,0,.15);

    text-align:center;

    border:1px solid rgba(255,255,255,.6);

}

.badge-icon{

    width:75px;
    height:75px;

    margin:auto;

    border-radius:50%;

    background:linear-gradient(135deg,#ff512f,#dd2476);

    display:flex;
    align-items:center;
    justify-content:center;

    color:#fff;
    font-size:32px;

    box-shadow:0 15px 30px rgba(255,0,0,.25);

    margin-bottom:20px;

}

.badge-card h2{

    font-size:16px;
    margin-bottom:10px;
    color:#d50000;
    font-weight:700;

}

.badge-card p{

    color:#555;
    font-size:11px;
    margin-bottom:10px;

}

.badge-options{

    display:flex;
    justify-content:center;
    gap:35px;
    margin-bottom:9px;

}

.badge-options label{

    cursor:pointer;
    display:flex;
    align-items:center;
    gap:8px;

    font-weight:600;

}

.badge-options input{

    width:18px;
    height:18px;
    accent-color:#ff3d00;

}

.badge-btns{

    display:flex;
    gap:20px;
    justify-content:center;
    flex-wrap:wrap;

}

.badge-btn{

    min-width:160px;

    height:40px;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:10px;

    border-radius:60px;

    text-decoration:none;

    color:#fff;

    font-weight:700;

    text-transform:uppercase;

    transition:.35s;

    letter-spacing:.5px;

}

.view-btn{

    background:linear-gradient(135deg,#ff512f,#ff1744);

}

.download-btn{

    background:linear-gradient(135deg,#ff6d00,#ff1744);

}

.badge-btn:hover{

    transform:translateY(-5px);

    box-shadow:0 15px 30px rgba(255,50,50,.35);

}

.badge-btn i{

    font-size:18px;

}

/*==========================
      Responsive
==========================*/

@media(max-width:768px){

.badge-card{

    padding:25px;

}

.badge-card h2{

    font-size:14px;

}

.badge-card p{

    font-size:11px;

}

.badge-btn{

    width:100%;
    min-width:100%;

}

.badge-btns{

    flex-direction:column;

}

.badge-options{

    gap:25px;

}

}

@media(max-width:480px){

.badge-card{

    padding:22px 18px;

}

.badge-icon{

    width:65px;
    height:65px;
    font-size:28px;

}

.badge-card h2{

    font-size:14px;

}

.badge-card p{

    font-size:10px;

}

.badge-options{

    flex-direction:column;
    gap:12px;

}

}

.facebook-feed-section{
    width:100%;
    max-width:520px;
    margin:auto;
    padding:20px;
    
    border-radius:15px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.facebook-feed-section h3{
    font-size:28px;
    font-weight:700;
    margin-bottom:20px;
    text-align:center;
}

.fb-page,
.fb-page span,
.fb-page iframe{
    width:100% !important;
}

.instagram-box{
    
    border-radius:16px;
    
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.instagram-btn{
    display:inline-block;
    padding:14px 28px;
    border-radius:50px;
    background:linear-gradient(45deg,#F58529,#DD2A7B,#8134AF,#515BD4);
    color:#fff;
    text-decoration:none;
    font-weight:600;
}