/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Description: Child Theme for Astra
Author: PyronLab
Author URI: https://vacancybd.com
Template: astra
Version: 1.0.0
Text Domain: astra-child
*/


/* ===========================
   Header-Start
=========================== */
.ast-builder-grid-row {
    max-width: 1200px;
    width: 100%;
    padding: 0 20px;
    margin: 0 auto;
    box-sizing: border-box;
}

.ast-primary-header-bar {
    border-bottom: none !important;
}
/* ===========================
   Header-End
=========================== */


/* ===========================
   Search-Box-Search-Start
=========================== */
.custom-search-form {
    display:flex !important;
    align-items:center !important;
    border:1px solid black !important;
    border-radius:15px !important;
    background:white !important;
    padding: 8px 12px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.search-field-wrapper {
    display:flex !important;
    align-items:center !important;
    flex:1 !important;
}

.keyword-field {
  flex: 1.2; 
}

.location-field {
  flex: 1.2;
}

.search-icon {
  color: #333333;
  display: flex;
  align-items: center;
  padding-left: 8px;
  padding-right: 10px;
}

.custom-search-form input[type="search"],
.custom-search-form input[type="text"] {
  width: 100%;
  border: none !important;
  background: transparent !important;
  padding: 10px 5px !important;
  font-family: inherit;
  font-size: 15px;
  color: #333333;
  outline: none !important;
  box-shadow: none !important;
}

.custom-search-form input::placeholder {
  color: #2c3e50;
  opacity: 1;
}

.search-divider {
  width: 1px;
  height: 30px;
  background-color: #e0e0e0;
  margin: 0 15px;
}

.search-submit-btn {
  background-color: #222222; 
  color: #ffffff !important;
  border: none;
  border-radius: 10px; 
  padding: 12px 32px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.2s ease;
  white-space: nowrap;
}

.search-submit-btn:hover {
  background-color: #1f4b3f; 
}

@media (max-width: 767px) {
  .custom-search-form {
    flex-direction: column;
    padding: 15px;
    border-radius: 12px;
  }
  .search-divider {
    display: none;
  }
  .search-field-wrapper {
    width: 100%;
    margin-bottom: 12px;
    border-bottom: 1px solid #e0e0e0;
  }
  .search-submit-btn {
    width: 100%;
    padding: 14px;
    margin-top: 5px;
  }
}

.input-container{
    position:relative;
    width:100%;
}

.clear-btn{
    position:absolute;
    right:12px;
    top:50%;
    transform:translateY(-50%);
    display:flex;
    align-items:center;
    justify-content:center;
    color:#888;
    text-decoration:none;
    width:20px;
    height:20px;
    transition:.2s;
}

.clear-btn:hover{
    color:#1d4f45;
}

.search-input,
.location-input{
    padding-right:35px !important;
}
/* ===========================
   Search-Box-End
=========================== */


/* ===========================
   HOME CATEGORY CARDS Start
=========================== */

.home-category-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:28px;
    margin-top:35px;
}

.home-category-card{
    background:#fff;
    border:1px solid #E8EDF3;
    border-radius:18px;
    padding:30px 24px;
    min-height:185px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    text-decoration:none !important;
    transition:.25s ease;
}

.home-category-card:hover{
    transform:translateY(-8px);
    border-color:#1D4F45;
    box-shadow:0 18px 35px rgba(0,0,0,.08);
}

.home-category-icon{
    width:72px;
    height:72px;
    border-radius:50%;
    background:#ECF8F4;
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:22px;
}

.home-category-icon .dashicons{
    font-size:34px;
    width:34px;
    height:34px;
    color:#1D4F45;
}

.home-category-card h3{
    font-size:21px;
    font-weight:700;
    color:#111827;
    line-height:1.45;
    margin:0;
    text-decoration:none;
}

.home-category-card:hover h5{
    color:#1D4F45;
    text-decoration:underline;
}

/* Tablet */
@media(max-width:1100px){
.home-category-grid{
grid-template-columns:repeat(3,1fr);
}
}

/* Mobile */
@media(max-width:768px){
.home-category-grid{
grid-template-columns:repeat(2,1fr);
gap:18px;
}

.home-category-card{
min-height:160px;
padding:22px;
}

.home-category-icon{
width:58px;
height:58px;
margin-bottom:18px;
}

.home-category-icon .dashicons{
font-size:28px;
}

.home-category-card h3{
font-size:18px;
}
}
/* ===========================
   HOME CATEGORY CARDS
=========================== */


/* ===========================
   All-Jobs-Start
=========================== */
.latest-jobs-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 25px;
}

.job-card {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 30px;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
}

.job-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.06);
    border-color: #222222;
}

.job-title {
    font-size: 20px;
    font-weight: 700;
    margin: 0 0 8px 0;
    color: #111827;
	text-decoration: none !important;
}

.job-title:hover{
	color: #111827;
	text-decoration: underline !important;
}

.job-company {
    font-size: 16px;
    font-weight: 600;
    color: #1d4f45;
    margin-bottom: 20px;
}

.job-meta-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    background: #f9fafb;
    padding: 16px;
    border-radius: 12px;
    margin-bottom: 20px;
}

.meta-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: #4b5563;
}

.meta-item .dashicons {
    color: #1d4f45;
    background: #e6efed;
    padding: 4px;
    border-radius: 6px;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.job-btn {
    margin-top: auto;
    text-align: center;
    background: #222222;
    color: #fff !important;
    padding: 14px;
    border-radius: 10px;
    text-decoration: none  !important;
    font-weight: 600;
    transition: 0.2s;
}

.job-btn:hover {
    background: #1d4f45;
}

.job-company a{
    color:#1d4f45;
    text-decoration:none !important;
    font-weight:600;
    transition:.2s;
}

.job-company a:hover{
    text-decoration:underline !important;
    color:#163d35;
}

@media (max-width: 1024px) {
    .latest-jobs-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .latest-jobs-grid {
        grid-template-columns: 1fr;
    }
}
/* ===========================
   All-Jobs-End
=========================== */


/* ===========================
   Custom-View-Details-Start
=========================== */
.job-single-container{
	box-sizing: border-box;
    max-width:1200px;
	width: 100%;
    margin:60px auto;
    padding: 0 20px;
}

.job-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    margin-bottom:40px;
    gap:30px;
}

.job-header h1{
    margin:0;
    font-size:24px;
    line-height:1.2;
}

.company-link{
    display:inline-block;
    margin-top:12px;
    color:#1d4f45;
    font-weight:600;
    text-decoration:none;
}

.company-link:hover{
    color:#1d4f45;
    text-decoration:underline;
}

.apply-btn{
    background:#222;
    color:#fff;
    padding:15px 35px;
    border-radius:10px;
    text-decoration:none;
    font-weight:600;
    transition:.25s;
}

.apply-btn:hover{
    background:#1d4f45;
    color:#fff;
}

.job-meta-card{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:15px;
    background:#f7f8fa;
    padding:30px;
    border-radius:16px;
    margin:45px 0;
}

.meta-row{
    display:flex;
    justify-content:space-between;
    padding:14px 18px;
    background:white;
    border-radius:10px;
}

.meta-row span{
    font-weight:600;
}

.job-description-wrapper{
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 40px;
}

@media(max-width:768px){

.job-header{
    flex-direction:column;
    align-items:flex-start;

}

.job-meta-card{
    grid-template-columns:1fr;
}

.apply-btn{
    width:100%;
    text-align:center;
}
}

.meta-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:14px 18px;
    background:#fff;
    border-radius:10px;
}

.meta-label{
    display:flex;
    align-items:center;
    gap:10px;
    color:#3d4956;
    font-weight:500;
}

.meta-label .dashicons{
    color:#1d4f45;
    font-size:20px;
    width:20px;
    height:20px;
}

.meta-row span:last-child{
    font-weight:600;
    color:#12263f;
}

.job-header-left{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
}

.telegram-channel-btn{
    display:inline-flex;
    align-items:center;
    gap:6px;

    margin-top:16px;

    border: 1px solid #1e293b;
    color:#1e293b !important;

    text-decoration:none !important;

    padding:3px 8px;

    border-radius:10px;

    font-weight:600;

    transition:.25s;
}

.telegram-channel-btn:hover{
    background:#229ED9;
    color:#fff !important;
    border-color: #229ED9;
    text-decoration: underline !important;
}
/* ===========================
   Custom-View-Details-End
=========================== */


/* ===========================
   Category-Tablets-Start
=========================== */
.job-categories{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin:4px 0 0 0;
}

.job-category-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #ddd;
    padding:4px 12px;
    border-radius:999px;
		font-size: 15px;
    text-decoration:none !important;
    color:#1d1d1d;
    background:#fff;
    transition:all .2s ease;
}

.job-category-btn:hover{
    background:#1d4f45;
    color:#fff;
    border-color:#1d4f45;
}

.job-category-btn.active{
    background:#1d4f45;
    color:#fff;
    border-color:#1d4f45;
}
/* ===========================
   Category-Tablets-End
=========================== */


/* ===========================
   Pagination-Start
=========================== */
/* Pagination container */
.job-pagination{
    display:flex;
    justify-content:flex-end; 
    align-items:center;
    gap:10px;
    margin-top:20px;
}

/* Make links horizontal */
.job-pagination .page-numbers{
    display:flex !important;
    align-items:center;
    justify-content:center;
    min-width:30px;
    height:28px;
    padding:0;
    border:1px solid #ddd;
    border-radius:8px;
    background:#fff;
    color:#1d1d1d;
    text-decoration:none !important;
    transition:.2s;
}

/* Hover */
.job-pagination .page-numbers:hover{
    background:#1d4f45;
    border-color:#1d4f45;
    color:#fff;
}

/* Active page */
.job-pagination .current{
    background:#222222;
    border-color:#222222;
    color:#fff;
    font-weight:500;
}

/* SVG arrow size */
.job-pagination svg{
    width:18px;
    height:18px;
}
/* ===========================
   Pagination-End
=========================== */


/* ===========================
   Scroll-Up-Button-Start
=========================== */
#ast-scroll-top {
    background: #222222 !important;
	border-radius: 10px;
}

#ast-scroll-top:hover {
    background: #1d4f45 !important;
}
/* ===========================
   Scroll-Up-Button-End
=========================== */


/* ===========================
   Footer-Start
=========================== */
.ast-builder-grid-row-container {
    max-width: 1200px;
    margin: 0 auto;
}
.site-primary-footer-wrap {
    border-top: none !important;
}
/* ===========================
   Footer-End
=========================== */