/*
Theme Name: PANJ Custom theme
Author: Aditya Tiwari


Version: 1.0

Tags:blog,two-columns,custom-colors,right-sidebar,custom-logo,full-width-template,footer-widgets,custom-colors,custom-header,featured-images,editor-style,custom-background,custom-menu,threaded-comments,theme-options, translation-ready

Unifield WordPress Theme has been created by Grace Themes(gracethemes.com), 2016.
Unifield WordPress Theme is released under the terms of GNU GPL
*/
/* body{ background-color:#fff; margin:0; padding:0;line-height:20px; font-size:13px; color:#5c5c5c; font-family:'Montserrat', sans-serif; -ms-word-wrap:break-word; word-wrap:break-word; }
*{ margin:0; padding:0; outline:none;} */
body{
    padding-top: 15vh;
}
@media (max-width: 1199px) { /* Adjust breakpoint as needed */
    body {
        padding-top: 0;
    }
}
img{ border:none; margin:0; padding:0; height:auto; max-width:100%;}
.wp-caption, .wp-caption-text, .sticky, .gallery-caption, .aligncenter{ margin:0; padding:0; max-width:100% !important;}
p{ margin:0; padding:0;line-height: 1.4; font-family: "Public Sans";}
a{ text-decoration:none; color:#02adf4;}
a:hover{ color:#333;}
ol,ul{ margin:0; padding:0;}
ul li ul, ul li ul li ul, ol li ol, ol li ol li ol{ margin-left:10px;}
h1,h2,h3,h4,h5,h6{ color:#484f5e; font-family:'Montserrat', sans-serif; margin:0 0 20px; padding:0; line-height:1.1; font-weight:400; }
h1{ font-size:34px !important;}
h2{ font-size:24px;}
h3{ font-size:20px;}
h4{ font-size:20px;}
h5{ font-size:18px;}
h6{ font-size:14px;}
.clear{ clear:both;}
.textwidget select{ width:100%;}
table{ width:100%}
.alignnone{ width:100% !important;}
img.alignleft, .alignleft{ float:left; margin:0 15px 0 0; padding:5px; border:1px solid #cccccc;}
img.alignright, .alignright{ float:right; margin:0 0 0 15px; padding:5px; border:1px solid #cccccc;}
.left{ float:left;}
.right{ float:right;}
#comment-nav-above .nav-previous, #comment-nav-below .nav-previous{ float:none !important; margin:10px 0;}
ol.comment-list li{ list-style:none; margin-bottom:5px;}
/* .logo{float:left; z-index:999; padding:10px 0;  color:#444;}
.logo h1{font-weight:400; margin:0; line-height:36px; color:#444;}
.logo a{ color:#444;}
.logo span{ color:#444; display:block;} */
/* .container{ width:1100px; margin:0 auto; position:relative;} */
.pagebanner{ height:280px; overflow:hidden; text-align:center;}
.pagebanner img{ position: relative; background-size:cover; width:100%; height:auto;}
#pageholder{ margin:0 auto; background-color:#fff;}
/*header menu css*/
/* .toggle{display: block;}
.toggle a{width:100%; color:#ffffff; background:url(images/mobile_nav_right.png) no-repeat right center #3e3e3e; padding:10px 10px; margin-top:5px; font-size:16px;}
.toggle a:hover{color:#ffffff !important;}
.sitenav{display:none;}
.headerinner, .blog .header{ position:relative !important}
.header{width:100%; z-index:999; top:auto; background-color:#f2f2f2 }
.sitenav{ padding:0; text-align:right; float:right;}
.sitenav ul { float:right; margin:0; padding:0; font-family:'Montserrat', sans-serif; font-weight:400; font-size:12px; text-transform:uppercase;}
.sitenav ul li{ display:inline-block; margin:0; position:relative; text-align:center;}
.sitenav ul li a{ padding:28px 20px; display:block; color:#444; }
.sitenav ul li ul li{display:block; position:relative; float:none; }
.sitenav ul li ul li a{display:block; padding-top:8px; padding-bottom:8px; position:relative; text-align:left; border-bottom:1px solid #ccc;  }
.sitenav ul li ul li a:hover, .sitenav ul li ul.sub-menu li.current_page_item a{border-radius:0; }
.sitenav ul li a:hover, .sitenav ul li.current_page_item a, .sitenav ul li.current-menu-ancestor a.parent{  color:#02adf4; }
.sitenav ul li ul{display:none; z-index:9999; position:relative;}
.sitenav ul li:hover > ul{display:block; width:200px; position:absolute; left:0; text-align:left; background-color:#f2f2f2;  box-shadow:0 2px 2px #000; }
.sitenav ul li:hover ul li ul{display:none; position:relative;}
.sitenav ul li:hover ul li:hover > ul{display:block; position:absolute; left:200px; top:1px;}
.sitenav ul li.current-menu-ancestor a.parent{} */

section#home_slider{ padding:0; }
#sectiopn-1{ background-color:#eef2f7;padding:50px 0;}
.section-title h2{color:#454545; font:300 36px/40px 'Montserrat',san-serif; text-align: center; }

.welcomecontent{ width:50%; float:left; text-align:right; margin:0 25px 0 0; }
.welcomethumb{ width:45%; float:right; text-align:left;}

.UnderLine{ width:50%; position:relative; display:inline-block; clear:both; margin:10px auto 30px; border-top:1px solid #E1E1E1;}
.hr-inner{ position:absolute; margin-top:-1px; top:50%; height:1px; width:100%;}
.hr-style { background-color:#FCFCFC; border-radius: 20px;  border-style: solid;  border-width:1px; display: block; height: 9px; left: auto; right:0; margin-left: -5px; margin-top: -5px; position: absolute;    width: 9px;}

.whychooseus-thumbbx{ width:50%; margin:0 auto; height:250px;}

/* = section first css
-------------------------------------------------------------- */
.fourbox{ background-color:#fff; color:#666; width:23.5%; padding:5px 5px 15px; float:left; margin:0 20px 0 0; text-align:center; position:relative; min-height:280px; box-sizing:border-box;}
.fourbox p{line-height:20px; margin-bottom:20px; }
.fourbox h3{ font-size:16px; font-weight:400; color:#666; margin:0 0 15px;}
.fourbox h3 a{color:#666;}
.fourbox:hover h3{ color:#31cafd;}
.fourbox .thumbbx { height:155px; overflow:hidden; margin:0 auto;}
.fourbox .pagecontent { padding:15px 0 0 0;}
.fourbox .thumbbx img{ width:100%; height:auto;}

/* = Services section css
-------------------------------------------------------------- */
#featureswrap{ background-color:#02adf4; color:#fff; padding:20px 0; box-shadow:0px 5px 10px rgba(0, 0, 0, 0.1) inset;}
#featureswrap h3{ color:#fff; font-size:24px; font-weight:600; margin-bottom:5px; }
#featureswrap p{ color:#fff; margin-bottom:20px; }
.pagebutton {background-color:#111;  color:#fff ;display: inline-block; padding:8px 15px; }
.pagebutton:hover{ background-color:#111 ; color:#02adf4;}
.ftrarea{ position:relative;}
.pagethumbbox{ width:120px; height:115px; overflow:hidden; border:2px solid #fff; float:left; margin:8px 25px 5px 0;}
.pagethumbbox img{ width:100%; height:auto; min-height:115px; }


#sectiopn-2{ background-color:#fff; color:#555; padding:50px 0;}
#sectiopn-2 h3{ color:#555; font-size:24px; font-weight:600; margin-bottom:25px; }
#sectiopn-2 p{  margin-bottom:35px; }
.aboutwrap{ text-align:center;}
.last_column{clear:right; margin-right:0 !important; }
.ReadMore{ background-color:#02adf4;  color:#fff ;display: inline-block; padding:8px 15px; }
.ReadMore:hover{ background-color:#333;color:#fff ;}

.welcomewrap p{ margin-bottom:30px;}
.welcomewrap h2{  margin-bottom:20px; font-size:38px; border-bottom:2px solid #dddddd; padding-bottom:10px; text-align:center; display:inline-block;}

/* = social icons css
-------------------------------------------------------------- */
.social-icons a{ color:#02adf4;  text-align:center;  vertical-align:middle; display:inline-block; margin:0; padding:8px; font-size:18px; }
.social-icons br{ display:none;}
.social-icons a:hover{ color:#333;}

/* = Page lay out css
-------------------------------------------------------------- */
.site-main{ width:75%; margin:0; padding:0; float:right;}
.fullwidth{ width:100% !important; float:none  !important;}
.fullwidth p{ margin-bottom:15px;}

.boxlayout{ width:1140px; margin:0 auto; background-color:#fff; position:relative; box-shadow:0 -8px 8px #111;}
.fulllayout{ width:100% !important;}
.page_content{ padding:25px 0;}
.page_content p{ margin-bottom:20px; line-height:1.7rem !important; font-size: 1rem;}

.blog_lists{ margin-bottom:30px; padding:25px; background-color:#f6f4f4; }
.blog_lists h3{ margin-bottom:0px;}
.blog_lists h3 a{ color:#484f5e;}
.blog_lists h3 a:hover{ color:#02adf4;}
.blog_lists p{ margin-bottom:10px;}
.blog-meta{ font-style:italic; margin-bottom:8px;}
.post-date, .post-comment, .post-categories{ display:inline; color:#333;} 
.single_title{ margin-bottom:5px;}
.BlogPosts{ width:31.2%; float:right; margin:0 3% 0 0;}
.BlogPosts img{ width:100%;}
.BlogPosts h2{ margin:10px 0; font-size:22px; }
.post-thumb{ width:30%; float:left; margin:5px 25px 5px 0;}
.post-thumb img{ width:100%; }

/* = sidebar
-------------------------------------------------------------- */
#sidebar{ width:20%;float:left; text-align: center; h2{font-size: 1.5rem; padding: 10px;}}
aside.widget{margin-bottom:30px; background-color:#f6f4f4; }
aside.widget ul{ list-style:disc; }
.widget-title h3{ background-color:#ff554e; padding:12px 15px; margin-bottom:1px; color:#fff;} 
#sidebar ul li{ list-style:inside none disc; border-bottom:1px dashed #d0cfcf; padding:8px 0 8px 15px; list-style-position:inside;text-align: left;}
#sidebar ul li a{ padding:0 0 0 10px; color:#3b3b3b;  display:inline-block; }
#sidebar ul li a:hover{ color:#34c6f6;}
#sidebar ul li:last-child{ border:none;}

#sidebar .search-form{ display: none;}
#sidebar .search-form input.search-field{ background-color:#f0efef; width:80%; padding: 12px 15px 12px 15px; box-sizing:border-box; border:1px solid #ddd; }
#sidebar .search-form input.search-submit{ background:url(images/search-icon.png) no-repeat center center #02adf4; padding: 12px 0 12px 0; font-size:0; width:20%; height:43px; float:right; border:0;}


/* = Footer css
-------------------------------------------------------------- */
/* #footer-wrapper{background-color:#141618; position:relative; color:#fff;}
.cols-4{width:24%; float:left; margin:0 3% 2% 0; padding:35px 0 20px;  }
.widget-column-2 { width:19%;}
.widget-column-4 { margin-right:0px !important;}
.cols-4 h5{ font-weight:400; font-size:18px; color:#fff; margin-bottom:25px; border-bottom:1px solid #313134; padding-bottom:15px; }
.cols-4 ul{ margin:0; padding:0; list-style:inside disc;}
.cols-4 ul li { padding:0; color:#fff; }
.cols-4 ul li:last-child {border:none;}
.cols-4 ul li a { color:#fff; font-size:13px; padding-left:10px; }
.cols-4 ul li a:hover, .cols-4 ul li.current_page_item a { color:#02adf4; }

.cols-4 a.readmore span{ color:#fff;}
.cols-4 p{ margin-bottom:0;}
.cols-4 h1, .cols-4 h2, .cols-4 h3, .cols-4 h4, .cols-4 h5, .cols-4 h6{color:#fff;}
.phone-no{ margin:0 0 20px; line-height:22px;}
.phone-no a{color:#fff;}
.phone-no a:hover{color:#333;}
.phone-no .fa { margin-right:10px;}
.cols-4 .phone-no p{ margin-bottom:5px;}
.widget-column-2 a{font:400 20px/24px 'Montserrat',san-serif;}

.copyright-wrapper {  background-color:#0a0c0d; position:relative; padding:15px 0;}
.copyright-wrapper a:hover{ color:#fff;}
.copyright-txt { float:left;}
.copyright-txt span{color:#02adf4;}
.design-by { float:right;}
.recent-post{ min-height:70px; margin:0 0 15px 0;  border-bottom:1px solid #363e44; padding-bottom:15px;}
.recent-post img{ float:left; width:55px; margin:3px 10px 5px 0; border:2px solid #fff;}
.recent-post h6{ font-size:15px; color:#fff; margin:0 0 5px; font-weight:600; text-transform:none;}
.recent-post h6:hover{color:#02adf4;}
.recent-post:last-child{ border-bottom:none; margin-bottom:0; padding-bottom:0;} */

/* Buttons */
/* .button{ background-color:#ff6565; border-bottom:4px solid #e44545; color:#fff; padding:8px 20px; display:inline-block; border-radius:2px; -moz-border-radius:2px; -webkit-border-radius:2px; -o-border-radius:2px; -ms-border-radius:2px; }
.button:hover{background-color:#34c6f6; border-color:#1898c2; color:#fff;} */

/* woocommerce CSS
================================================*/
a.added_to_cart{background:#e1472f; padding:5px; display:inline-block; color:#fff; line-height:1;}
a.added_to_cart:hover{background:#000000;}
a.button.added:before{content:'' !important;}
#bbpress-forums ul li{padding:0;}
#subscription-toggle a.subscription-toggle{padding:5px 10px; display:inline-block; color:#e1472f; margin-top:4px;}
textarea.wp-editor-area{border:1px #ccc solid;}
.woocommerce input[type=text], .woocommerce textarea{border:1px #ccc solid; padding:4px;}
form.woocommerce-ordering select{ padding:5px; color:#777777;}
.woocommerce table.shop_table th, .woocommerce-page table.shop_table th{ font-family:'Montserrat',san-serif; color:#ff8a00;}
.woocommerce ul.products li.product .price, .woocommerce-page ul.products li.product .price{ color:inherit !important;}
h1.product_title, p.price{ margin-bottom:10px;}
.woocommerce table.shop_table th, .woocommerce-page table.shop_table th{ font-family:'Montserrat',san-serif; color:#ff6d84;}
.woocommerce ul.products li, #payment ul.payment_methods li{ list-style:none !important;}
.woocommerce ul.products li.product .price, .woocommerce-page ul.products li.product .price{ color:inherit !important;}
.woocommerce table.shop_table th, .woocommerce table.shop_table td{ border-bottom:0px !important}
.subscribe_widget h3 {
    font-weight: normal; /* Bold hatane ke liye */
}

/* Text meant only for screen readers. */
.screen-reader-text {clip: rect(1px, 1px, 1px, 1px);position: absolute !important;	height: 1px;width: 1px;	overflow: hidden;}
.screen-reader-text:focus {	background-color: #f1f1f1;	border-radius: 3px;	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);	clip: auto !important;	color: #21759b;	display: block;
	font-size: 14px;font-size: 0.875rem;font-weight: bold;	height: auto;left: 5px;	line-height: normal;padding: 15px 23px 14px;text-decoration: none;	top: 5px;	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}
/* ============= Contact Page =========== */
.wpcf7{ margin:30px 0 0; padding:0;}
.wpcf7 input[type="text"], .wpcf7 input[type="tel"], .wpcf7 input[type="email"]{ width:40%; border:1px solid #cccccc; box-shadow:inset 1px 1px 2px #ccc; height:35px; padding:0 15px; color:#797979; margin-bottom:0;}
.wpcf7 textarea{width:60%; border:1px solid #cccccc; box-shadow:inset 1px 1px 2px #ccc; height:150px; color:#797979; margin-bottom:25px; font:12px arial; padding:10px; padding-right:0;}
.wpcf7 input[type="submit"]{background-color:#02adf4; width:auto; border:none; cursor:pointer; font:18px 'Montserrat',san-serif; color:#ffffff; padding:10px 40px; border-radius:3px;}	

/* ============= Comment Form ============ */
h1.screen-reader-text{font:22px 'Montserrat',san-serif;}
.site-nav-previous, .nav-previous{ float:left;}
.site-nav-next, .nav-next{ float:right;}
h3#reply-title{font:300 18px 'Montserrat',san-serif;}
#comments{ margin:30px 0 0; padding:0;}
nav#nav-below{ margin-top:15px;}


/* Gallery page */
/* --- Decorated Gallery Page Styles (Image Shadow Correction) --- */
.gallery-page.section {
    padding: 30px 15px;
    background-color: #fff; /* White background */
}

.gallery-page-container {
    max-width: 1200px;
    margin: 0 auto;
}

.gallery-page-title {
    /* font-size: 2.4rem; */
    /* font-weight: 600; */
    text-align: center;
    margin-bottom: 30px;
    padding: 0 15px;
    position: relative;
}

.gallery-page-title::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
    width: 30px;
    height: 2px;
    background-color: var(--accent-color, #007bff);
}

.gallery-page-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    padding: 30px;
}

.gallery-page-item-container {
    background-color: #fff; /* Keep a white background for the container */
    border-radius: 6px; /* Apply border-radius here */
    box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.15); /* Appealing shadow on the container */
    overflow: hidden;
    transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}

.gallery-page-item-container:hover {
    transform: translateY(-1px) scale(1.005);
    box-shadow: 6px 6px 15px rgba(0, 0, 0, 0.2); /* More pronounced hover shadow */
}

.gallery-page-item {
    width: 100%;
    height: 200px; /* Fixed height */
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.gallery-page-item img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
    border-radius: inherit; /* Inherit border radius from the container */
}

.gallery-page-img-description {
    padding: 15px;
    text-align: center;
    background-color: #fff; /* White background */
    border-top: 1px solid #eee;
}

.gallery-page-img-description p {
    /* font-size: 1rem; */
    color: #3b3b3b;
    margin-bottom: 0;
    /* line-height: 1.3; */
}

/* --- Responsive Adjustments --- */

/* For tablets */
@media (max-width: 992px) {
    .gallery-page-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }

    .gallery-page-item {
        height: 180px;
    }
}

/* For smaller tablets */
@media (max-width: 768px) {
    .gallery-page-grid {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }

    .gallery-page-item {
        height: 150px;
    }
}

/* For mobile devices */
@media (max-width: 576px) {
    .gallery-page-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .gallery-page-item {
        height: 200px;
    }
}
  /* --- General Styles --- */


 /* --- Team Section --- */
.team-section {
  padding: 60px 0px;
  max-width: 1080px; /* Consistent with previous Divi width */
  margin: 0 auto; /* Ensures section is centered */
  background-color: #fff;
}

.team-section h2 {
  font-size: 2.5em;
  text-align: left;
  margin-bottom: 10px;
}

.team-section .team-subtitle {
  font-size: 1.1em;
  line-height: 1.8em;
  color: #777;
  text-align: left;
  margin-bottom: 30px;
}

/* --- Team Grid --- */
.team-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, auto)); /* Prevents fractional gaps */
  column-gap: 30px; /* Only applies horizontal gap */
  row-gap: 40px; /* Keeps vertical spacing */
  justify-content: start; /* Ensures last element touches right margin */
  width: 100%;
  margin: 0 auto;
}

/* Individual Team Member Styling */
.team-member {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: center;
  padding: 20px;
  border: 1px solid #ddd;
  border-radius: 5px;
  background-color: #fff;
}

/* Image adjustments */
.team-member img {
  width: 100%;
  max-width: 200px;
  height: auto;
  border-radius: 5px;
  margin-bottom: 15px;
  object-fit: cover;
}

/* General text styling */
.team-member h3 {
  font-size: 1.3em;
  font-weight: 600;
  margin-bottom: 5px;
  color: #333;
}

.team-member .team-position {
  font-size: 0.9em;
  color: #777;
  margin-bottom: 10px;
}

.team-member .team-bio {
  font-size: 0.95em;
  line-height: 1.5;
  color: #555;
  text-align: left;
  margin-bottom: 15px;
  flex-grow: 1; /* Ensures bio takes up available space */
}

/* Social links at the bottom */
.team-member .team-social {
  margin-top: auto;
  text-align: center;
}

.team-member .team-social a {
  font-size: 0.9em;
  color: #3376a6;
  text-decoration: none;
  border-bottom: 1px solid #3376a6;
  padding-bottom: 2px;
}

.team-member .team-social a:hover {
  color: #1c5477;
  border-bottom-color: #1c5477;
}

/* --- Responsive Adjustments --- */
@media (max-width: 768px) {
  .team-grid {
    grid-template-columns: repeat(auto-fit, minmax(200px, auto));
  }
}



  .vision-mission-container {
    display: flex; /* Use flexbox for easy alignment */
    justify-content: center; /* Center the blocks horizontally */
    gap: 30px; /* Space between the vision and mission blocks */
    padding: 20px; /* Optional padding around the container */
  }

  .vision,
  .mission {
    text-align: center; /* Center text within each block */
    padding: 20px; /* Optional padding within each block */
    border: 3px solid #ddd; /* Optional border for visual separation */
    border-radius: 5px; /* Optional rounded corners */
    background-color: #ffffff; /* Optional background color */
  }

  .vision h2,
  .mission h2 {
    font-size: 1.5em;
    margin-bottom: 10px;  }

  .vision p,
  .mission p {
    font-size: 1em;
    line-height: 1.6;
    color: #555; /* Adjust as needed */
    margin: 0;
  }

  /* Responsive adjustments for smaller screens */
  @media (max-width: 768px) {
    .vision-mission-container {
      flex-direction: column; /* Stack them vertically on smaller screens */
      align-items: center; /* Center the stacked blocks */
    }

    .vision,
    .mission {
      width: 80%; /* Make them wider when stacked */
      margin-bottom: 20px; /* Add space between stacked blocks */
    }
  }
