/*
Theme Name: Chong Firearms Theme
Theme URI: https://algopage.com
Author: Algopage Developers
Description: A custom WordPress theme for Chong Firearms
Version: 1.0
*/

*{
      margin:0;
      padding:0;
      box-sizing:border-box;
    }

    html{
      scroll-behavior:smooth;
    }

    body{
      font-family:'Inter',sans-serif;
      /*background:#050505;*/
      background: #0b0b0b;
      color:#fff;
      overflow-x:hidden;
    }

    a{
      text-decoration:none;
      color:white;
    }

    img{
      width:100%;
      display:block;
    }

    section{
      padding:60px 8%;
      position:relative;
    }

    .container{
      max-width:1400px;
      margin:auto;
    }

    /* BACKGROUND GLOW */

    .glow1{
      position:fixed;
      width:500px;
      height:500px;
      border-radius:50%;
      background:#ff3b3b;
      opacity:0.18;
      filter:blur(180px);
      top:-150px;
      left:-150px;
      z-index:-1;
    }
    
    .glow2{
      position:fixed;
      width:500px;
      height:500px;
      border-radius:50%;
      background:#0066ff;
      opacity:0.16;
      filter:blur(180px);
      bottom:-150px;
      right:-150px;
      z-index:-1;
    }

    /* NAVBAR */
    nav{
        position:fixed;
        width:100%;
        top:0;
        left:0;
        z-index:999;
        padding:15px 8%;
        display:flex;
        justify-content:space-between;
        align-items:center;
        background:rgba(0,0,0,0.6);
        backdrop-filter:blur(20px);
        border-bottom:1px solid rgba(255,255,255,0.05);
    }
    
    /* LOGO */
    .logo{
        display:flex;
        align-items:center;
    }
    
    .logo img{
        max-height:100px;
        width:auto;
        display:block;
    }
    
    /* DESKTOP MENU */
    .nav-links{
        display:flex;
        gap:40px;
    }
    
    .nav-links li{
        list-style:none;
    }
    
    .nav-links a{
        color:#d0d0d0;
        font-size:15px;
        position:relative;
        text-decoration:none;
    }
    
    .nav-links a::after{
        content:'';
        position:absolute;
        width:0%;
        height:2px;
        background:white;
        bottom:-6px;
        left:0;
        transition:0.4s;
    }
    
    .nav-links a:hover::after{
        width:100%;
    }
    
    /* HAMBURGER (hidden desktop) */
    .hamburger{
        display:none;
        flex-direction:column;
        gap:5px;
        cursor:pointer;
        z-index:1001;
    }
    
    .hamburger span{
        width:28px;
        height:2px;
        background:#fff;
        transition:0.3s;
    }
    
    /* FULLSCREEN MENU (hidden default) */
    .fullscreen-menu{
        position:fixed;
        inset:0;
        background:rgba(10,10,10,0.85);
        backdrop-filter:blur(25px);
    
        display:flex;
        justify-content:center;
        align-items:center;
    
        opacity:0;
        visibility:hidden;
        transition:0.4s ease;
        z-index:1000;
    }
    
    .fullscreen-menu.active{
        opacity:1;
        visibility:visible;
    }
    
    /* FULL MENU LIST */
    .full-nav{
        list-style:none;
        margin:0;
        padding:0;
        display:flex;
        flex-direction:column;
        gap:35px;
        text-align:center;
    }
    
    .full-nav a{
        font-size:38px;
        font-weight:700;
        color:#fff;
        text-decoration:none;
        transition:0.3s;
    }
    
    .full-nav a:hover{
        text-shadow:0 0 20px rgba(255,255,255,0.5);
        transform:scale(1.05);
    }

    /* HERO */

    .hero{
      min-height:100vh;
      position:relative;
      display:flex;
      align-items:center;
      overflow:hidden;
    }

    .hero video{
      position:absolute;
      width:100%;
      height:100%;
      object-fit:cover;
      top:0;
      left:0;
      opacity:0.25;
    }

    .overlay {
        position: absolute;
        left: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(to bottom,
          rgba(0,0,0,0.2),
          rgba(0,0,0,0.4));
    }

    .hero-content {
        position: relative;
        z-index: 2;
        max-width: 850px;
        margin-top: 80px;
        margin-left: 0;
        margin-bottom: 80px;
    }

    .hero-sub{
      display:inline-block;
      padding:10px 22px;
      border:1px solid rgba(255,255,255,0.08);
      background:rgba(255,255,255,0.04);
      border-radius:40px;
      margin-bottom:30px;
      color:#cfcfcf;
      letter-spacing:1px;
      font-size:14px;
    }

    .hero h1{
      font-size:6rem;
      line-height:1;
      margin-bottom:30px;
      text-transform:uppercase;
    }

    .hero h2{
      font-size:1.4rem;
      font-weight:400;
      color:#c2c2c2;
      margin-bottom:25px;
    }

    .hero p{
      color:#9f9f9f;
      line-height:1.9;
      max-width:700px;
      margin-bottom:45px;
      font-size:1.05rem;
    }

    .hero-buttons{
      display:flex;
      gap:20px;
    }

    .btn{
      padding:16px 34px;
      border-radius:50px;
      font-weight:600;
      transition:0.4s;
      display:inline-block;
      text-transform:uppercase;
      font-size:14px;
      letter-spacing:1px;
    }

    .btn-primary{
      background:white;
      color:black;
    }

    .btn-primary:hover{
      transform:translateY(-5px);
      box-shadow:0 20px 40px rgba(255,255,255,0.2);
    }

    .btn-secondary{
      border:1px solid rgba(255,255,255,0.12);
      background:#111;
    }

    .btn-secondary:hover{
      transform:translateY(-5px);
      background:#181818;
    }

    /* SECTION TITLE */

    .section-title{
      margin-bottom:80px;
      text-align:center;
    }

    .section-title h2{
      font-size:3.5rem;
      margin-bottom:20px;
      text-transform:uppercase;
    }

    .section-title p{
      color:#8d8d8d;
      max-width:750px;
      margin:auto;
      line-height:1.9;
    }

    /* ABOUT */

    .about{
      display:flex;
      align-items:center;
      gap:70px;
      flex-wrap:wrap;
    }

    .about-image{
      flex:1;
    }

    /*.about-image img{*/
    /*  border-radius:30px;*/
    /*}*/
    .about-image img {
        border-radius: 30px;
        height: 650px;
        object-fit: cover;
    }

    .about-content{
      flex:1;
    }

    .about-content h3{
      font-size:3rem;
      margin-bottom:25px;
      text-transform:uppercase;
    }

    .about-content p{
      color:#999;
      line-height:1.9;
      margin-bottom:20px;
    }
    
    .experience-list{
      display:flex;
      flex-direction:column;
      gap:14px;
    }
    
    .experience-item{
      display:flex;
      /*align-items:flex-start;*/
      align-items:center;
      gap:12px;
      color:#cfcfcf;
      font-size:15px;
      line-height:1.7;
    }
    
    .experience-item i {
        color: #999999;
        font-size: 14px;
        margin-top: 3px;
        opacity: 0.9;
        flex-shrink: 0;
    }
        
    .experience-item span {
        display: block;
        color: #999999;
    }

    /* SERVICES */

    .services{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
      gap:30px;
    }

    .service{
      background:#0d0d0d;
      border:1px solid rgba(255,255,255,0.06);
      padding:40px;
      border-radius:28px;
      transition:0.4s;
      position:relative;
      overflow:hidden;
    }

    .service:hover{
      transform:translateY(-10px);
      border-color:white;
    }

    .service::before{
      content:'';
      position:absolute;
      width:250px;
      height:250px;
      background:white;
      filter:blur(120px);
      opacity:0;
      top:-120px;
      right:-120px;
      transition:0.4s;
    }

    .service:hover::before{
      opacity:0.05;
    }

    .service h3{
      margin-bottom:20px;
      font-size:1.5rem;
    }

    .service p{
      color:#999;
      line-height:1.8;
    }

    /* BOOKING */

    .booking{
      text-align:center;
      background:#0b0b0b;
      border-radius:40px;
      border:1px solid rgba(255,255,255,0.06);
      padding:100px 50px;
    }

    .booking h2{
      font-size:4rem;
      margin-bottom:25px;
      text-transform:uppercase;
    }

    .booking p{
      color:#999;
      max-width:750px;
      margin:auto;
      line-height:1.9;
      margin-bottom:40px;
    }
    
    /* Competition Section */
    .competition{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
      gap:30px;
    }
    
    .competition-card{
      background:#0d0d0d;
      border:1px solid rgba(255,255,255,0.06);
      padding:40px;
      border-radius:28px;
      transition:0.4s;
      position:relative;
      overflow:hidden;
    }
    
    .competition-card:hover{
      transform:translateY(-10px);
      border-color:#fff;
    }
    
    .competition-card::before{
      content:'';
      position:absolute;
      width:250px;
      height:250px;
      background:white;
      filter:blur(120px);
      opacity:0;
      top:-120px;
      right:-120px;
      transition:0.4s;
    }
    
    .competition-card:hover::before{
      opacity:0.05;
    }
    
    .competition-card h3{
      font-size:1.6rem;
      margin-bottom:15px;
    }
    
    .competition-card p{
      color:#999;
      line-height:1.8;
    }

    /* INSTAGRAM */

    .insta-grid{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
      gap:25px;
    }

    .insta-card{
      overflow:hidden;
      border-radius:24px;
      position:relative;
      cursor:pointer;
    }

    .insta-card img{
      transition:0.5s;
      height:320px;
      object-fit:cover;
    }

    .insta-card:hover img{
      transform:scale(1.1);
    }
    
    /* Reviews Section */
    .reviews .slick-track{
      display:flex !important;
    }
    
    .reviews .slick-slide{
      height:auto !important;
      display:flex !important;
    }

    .review-card{
      background:linear-gradient(145deg, #0d0d0d, #0a0a0a);
      border:1px solid rgba(255,255,255,0.06);
      padding:50px 40px; /* 👈 increased padding */
      border-radius:28px;
      position:relative;
      overflow:hidden;
      transition:0.4s ease;
      height:100%;
      display:flex;
      flex-direction:column;
      justify-content:flex-start;
      margin: 5px;
    }
    
    /* hover effect */
    /*.review-card:hover{*/
    /*  transform:translateY(-10px);*/
    /*  border-color:rgba(255,255,255,0.2);*/
    /*}*/
    
    /* STARS (VISIBLE ALWAYS) */
    .review-card .stars{
      font-size:14px;
      letter-spacing:2px;
      margin-bottom:20px;
      color:#ffd700;
      opacity:0.95;
    }
    
    /* TEXT */
    .review-card p{
      color:#cfcfcf;
      font-size:15px;
      line-height:1.8;
      font-style:italic;
      margin-bottom:25px;
    }
    
    /* AUTHOR */
    .review-card span{
      margin-top:auto; /* pushes author to bottom nicely */
      font-size:13px;
      color:#888;
      letter-spacing:0.5px;
    }

    /* CONTACT */

    .contact-box{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
      gap:30px;
    }

    .contact-card{
      padding:40px;
      border-radius:24px;
      background:#0e0e0e;
      border:1px solid rgba(255,255,255,0.05);
    }

    .contact-card h3{
      margin-bottom:20px;
      font-size:1.4rem;
    }

    .contact-card p{
      color:#999;
      line-height:1.8;
    }

    /* FOOTER */

    /*footer{*/
    /*  padding:20px 8%;*/
    /*  border-top:1px solid rgba(255,255,255,0.05);*/
    /*  display:flex;*/
    /*  justify-content:space-between;*/
    /*  align-items:center;*/
    /*  flex-wrap:wrap;*/
    /*  gap:20px;*/
    /*}*/

    /*footer p{*/
    /*  color:#777;*/
    /*}*/
    .site-footer{
  padding:60px 8% 20px;
  border-top:1px solid rgba(255,255,255,0.08);
  background:#0b0b0b;
  color:#aaa;
}

.footer-inner{
  display:grid;
  grid-template-columns:1fr 1.5fr 1fr 1fr;
  gap:40px;
  margin-bottom:40px;
}

.custom-logo-link img{
  max-width:140px!important;
  height:auto;
}

.footer-col h4{
  color:#fff;
  margin-bottom:15px;
  font-size:18px;
  text-transform:uppercase;
  letter-spacing:1px;
}

.footer-col a{
  display:block;
  color:#aaa;
  margin-bottom:10px;
  text-decoration:none;
  transition:0.2s;
}

.footer-col a:hover{
  color:#fff;
}

.footer-col a i{
  margin-right:8px;
  color:#aaa;
  transition:0.2s;
}

.footer-col a:hover i{
  color:#fff;
}

.footer-tagline{
  margin-top:10px;
  font-size:14px;
  color:#777;
}

.footer-bottom{
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px;
  border-top:1px solid rgba(255,255,255,0.08);
  padding-top:15px;
  font-size:13px;
  color:#666;
}

.footer-bottom a{
  color:#888;
  text-decoration:none;
}

.footer-bottom a:hover{
  color:#fff;
}

/* =========================
   FOOTER RESPONSIVE
========================= */

@media (max-width: 992px){

    .footer-inner{
        grid-template-columns:repeat(2,1fr);
        gap:30px;
    }

}

@media (max-width: 768px){

    .site-footer{
        padding:50px 6% 20px;
    }

    .footer-inner{
        grid-template-columns:1fr;
        gap:35px;
        text-align:center;
    }

    .footer-col{
        display:flex;
        flex-direction:column;
        align-items:center;
    }

    .footer-col a{
        justify-content:center;
    }

    .custom-logo-link{
        display:flex;
        justify-content:center;
    }

    .custom-logo-link img{
        max-width:120px !important;
    }

    .footer-tagline{
        max-width:350px;
        margin:15px auto 0;
    }

    .footer-bottom{
        flex-direction:column;
        align-items:center;
        text-align:center;
        gap:15px;
    }

}

@media (max-width: 480px){

    .site-footer{
        padding:40px 20px 20px;
    }

    .footer-col h4{
        font-size:16px;
    }

    .footer-col a{
        font-size:14px;
    }

    .footer-tagline{
        font-size:13px;
        line-height:1.7;
    }

    .footer-bottom{
        font-size:12px;
        line-height:1.8;
    }

    .custom-logo-link img{
        max-width:100px !important;
    }

}
    
    
    
    .whatsapp-float {
      position: fixed;
      left: 20px;
      bottom: 20px;
      width: 55px;
      height: 55px;
      background: #25D366;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 9999;
      box-shadow: 0 10px 25px rgba(0,0,0,0.3);
      transition: transform 0.3s ease;
    }
    
    .whatsapp-float img {
      width: 28px;
      height: 28px;
      filter: invert(1);
    }
    
    .whatsapp-float:hover {
      transform: scale(1.1);
    }
    
    
    
    
    

    /* RESPONSIVE */

    @media(max-width:900px){

      .hero h1{
        font-size:3.5rem;
      }

      .hero-buttons{
        flex-direction:column;
      }

      .about{
        flex-direction:column;
      }

      .nav-links{
        display:none;
      }

      .booking h2{
        font-size:2.5rem;
      }

      .section-title h2{
        /*font-size:2.5rem;*/
        font-size:2.2rem;
      }
    }
    
    /* MOBILE / TABLET */
    @media(max-width:1024px){
        
        section{
            padding:100px 6%;
        }
    
        .nav-links{
            display:none !important;
        }
    
        .hamburger{
            display:flex;
        }
    }
    
    /* HAMBURGER ANIMATION */
    .hamburger.active span:nth-child(1){
        transform:rotate(45deg) translate(6px,6px);
    }
    
    .hamburger.active span:nth-child(2){
        opacity:0;
    }
    
    .hamburger.active span:nth-child(3){
        transform:rotate(-45deg) translate(6px,-6px);
    }
    
    @media(max-width:576px){
        
        .hero-content {
            margin-top: 75px;
        }
        
        section{
            padding:80px 6%;
        }
  
        .logo img{
            max-height:80px;
        }
        
        /*footer .logo {*/
        /*    width: 100%;*/
        /*    display: flex;*/
        /*    align-items: center;*/
        /*    justify-content: center;*/
        /*}*/
        
        /*footer p{*/
        /*    text-align: center;*/
        /*    line-height: 30px;*/
        /*}*/
    }