/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.2
Text Domain:  Avada
*/

/* CSS Document */


* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.mw {
    display: flex;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(0,0,0,.12);
    width: 100%;
    min-height: 420px;
    font-family: 'Inter', sans-serif;
}

.sb {
    width: 210px;
    flex-shrink: 0;
    background: #fff;
    border-right: 1px solid #e8e8e8;
    padding: 16px 0;
}

.sb-hdr {
    padding: 8px 16px 14px;
    border-bottom: 1px solid #eee;
}

.sb-lbl {
    font-size: 11px;
    font-weight: 700;
    color: #1a6b2e;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.sb-sub {
    font-size: 11px;
    color: #999;
    margin-top: 2px;
}

.bb {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 9px 16px;
    border: none;
    background: none;
    cursor: pointer;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: #333;
    text-align: left;
    transition: background .15s;
    border-left: 3px solid transparent;
}

.bb:hover {
    background: #f5f5f5;
}

.bb.active {
    border-left-color: var(--bc);
    color: var(--bc);
    background: #f9fdf9;
    font-weight: 700;
}

.bico {
    width: 30px;
    height: 30px;
    border-radius: 6px;
    background: #1a6b2e;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.va {
    display: block;
    margin: 14px 16px 0;
    font-size: 11px;
    font-weight: 700;
    color: #aaa;
    text-transform: uppercase;
    letter-spacing: .8px;
    cursor: pointer;
    text-decoration: none;
}

.pnl {
    flex: 1;
    padding: 20px;
    overflow: hidden;
}

.ph {
    margin-bottom: 16px;
}

.ph h2 {
    font-size: 22px;
    font-weight: 800;
    letter-spacing: .3px;
	margin-bottom: 12px;
}

.ph p {
    font-size: 14px;
    color: #999;
    margin-top: 3px;
}

.ph p a {
    color: #1a6b2e;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    border-bottom: 1px solid #1a6b2e;
}
.ph p a:hover {
    opacity: 0.8;
}

.pg {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}

.pc {
    position: relative;
    border-radius: 6px;
    overflow: hidden;
    aspect-ratio: 4/3;
    display: block;
    text-decoration: none;
    cursor: pointer !important;
    pointer-events: all !important;
}

.pc img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s;
    display: block;
}

.pc:hover img {
    transform: scale(1.05);
}

.po {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,.78) 0%, rgba(0,0,0,.08) 55%, transparent 100%);
    display: flex;
    align-items: flex-end;
    padding: 10px;
}

.pl {
    color: #fff;
    font-weight: 500;
    font-size: 12px;
    text-transform: capitalize;
    letter-spacing: .02px;
    line-height: 1.15;
}

.pbw {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.pbd {
    font-size: 8px;
    font-weight: 800;
    padding: 2px 5px;
    width: fit-content;
    border-radius: 2px;
    color: #fff;
}

.pe {
    aspect-ratio: 4/3;
}

.ph-card {
    aspect-ratio: 4/3;
    border-radius: 6px;
    background: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: #ccc;
}

.notice {
    margin-top: 10px;
    font-size: 11px;
    color: #bbb;
    text-align: center;
}

.fi {
    animation: fi .2s ease;
}

@keyframes fi {
    from {
        opacity: 0;
        transform: translateY(4px)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

/* ── Sidebar Fix for Avada 7 ── */
.sidebar {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    display: block;
}

.sidebar * {
    box-sizing: border-box;
}

/* Action Card */
.action-card {
    background: #2e5c1e;
    border-radius: 10px;
    padding: 24px !important;
    margin-bottom: 16px;
    width: 100%;
}

.action-card h3 {
    font-size: 15px;
    font-weight: 500;
    color: #fff;
    margin-bottom: 8px;
}

.action-card p {
    font-size: 13px;
    color: #c5ddb8;
    margin-bottom: 20px;
    line-height: 1.6;
}

.action-card .btn-white {
    background: #fff;
    color: #2e5c1e;
    border: none;
    padding: 11px 20px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    width: 100%;
    display: block;
}

/* Link Card */
.link-card {
    background: #fff;
    border: 0.5px solid #e0e0e0;
    border-radius: 10px;
    padding: 6px 0;
    margin-bottom: 16px;
    width: 100%;
}

.link-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 18px;
    border-bottom: 0.5px solid #f0f0f0;
    cursor: pointer;
}

.link-item:last-child { 
    border-bottom: none; 
}

.link-item:hover { 
    background: #f8faf6; 
}

.link-left {
    display: flex;
    align-items: center;
    gap: 10px;
}

.link-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.link-left p {
    font-size: 13px;
    font-weight: 500;
    color: #222;
    margin-bottom: -10px !important;
}

.link-left small {
    font-size: 11px;
    color: #888;
}

/* Info Card */
.info-card {
    background: #fff;
    border: 0.5px solid #e0e0e0;
    border-radius: 10px;
    padding: 20px;
    width: 100%;
}

.info-card h4 {
    font-size: 11px;
    font-weight: 500;
    color: #888;
    margin-bottom: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

/* FIXED: Added missing closing bracket for contact-row */
.contact-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Moved these up to group with the other contact-row rules */
.contact-row:last-child { 
    margin-bottom: 0; 
}

.contact-row p {
    font-size: 13px;
    color: #333;
    margin-bottom: 0px;
}

@media screen and (min-width: 1024px) {
    .hero-h1 {
        font-size: 5rem !important; 
    }
    .heading-h2 {
        font-size: 3rem !important; 
    }
    .heading-h3 {
        font-size: 2.5rem !important; 
    }
} 

.arialBlack {
    font-family: 'Arial-Black', sans-serif !important;
    font-weight: 700;
}

.d-none {
    display: none !important;
}

.tight p {
    margin: 0px !important; 
    padding: 0px !important;
}

.button-lightgray span {
    color: #000; 
    border: #000;
}

.blacktxt, .blacktxt p, .blacktxt h1, .blacktxt h2, .blacktxt h3, .blacktxt h4, .blacktxt span {
    color: #000 !important;
}

.whitetxt, .whitetxt h1, .whitetxt h4, .whitetxt p, .whitetxt h2, .whitetxt h3 {
    color: #fff !important; 
}

.whitetxt a:link, .whitetxt a:visited {
    color: #fff !important;
}

.whitetxt a:hover {
    color: #fc0 !important;
}

.big, .big p, .big h1, .big h2, .big h3, .big h4, .big span {
    font-size: 133% !important; 
    color: green; 
}

.branch-locations a { 
    color: red; 
}

/* ─── Values strip ────────────────────────────────────────────────────── */
.jp-values {
    background: var(--bg-white);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-bottom: 1px solid #ddd;
}

.jp-value-tile {
    padding: 24px 20px;
    border-right: 1px solid #ddd;
}

.jp-value-tile:last-child { 
    border-right: none; 
}

.jp-value-tile i {
    font-size: 24px;
    color: #15803d;
    margin-bottom: 10px;
    display: block;
}

.jp-value-title { 
    font-size: 18px; 
    font-weight: 600; 
    color: var(--text-primary); 
    margin-bottom: 4px; 
}

.jp-value-desc  { 
    font-size: 14px; 
    color: var(--text-muted); 
    line-height: 1.5em; 
}

.year-timeline .fusion-content-boxes .content-wrapper-background  { 
    padding-left: 35px !important;
    padding-bottom: 0px !important;
    padding-top: 0px !important;
}

.year-timeline .fusion-content-boxes .content-container { 
    font-size: 15px !important;
	font-family: inter !important;
	line-height: 1.1em;
}

.footer-title h6, .fusion-title-heading h6 {
    color: #ddd !important;
}

/* Shadows */
.shadow-xs {
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05);
}

.shadow-sm {
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}

.shadow {
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06) !important;
}

.shadow-md {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.shadow-lg {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.shadow-xl {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.shadow-2xl {
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}



.blur-box { 
    background-color: #ffffff0d;
    border-top-style: solid;
    border-top-width: 1px;
    border-top-color: #ffffff1a;
    backdrop-filter: blur(15px);
	border-radius:20px; 
	padding:25px;
}

.sub-heading {max-width:fit-content !important;}

.jp-border-button {
	border-radius: 2px !important;
}

.icon-jp-arrow:before {
    font-size: 26px !important;
}

.jpti-block2:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 44px rgba(0, 0, 0, 0.18) !important;
    z-index: 10 !important;
}

/* Hover animations for jpti-blocks */
.jpti-block {
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-decoration: none;
}

.jpti-block:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10);
}

.jpti-block__arrow {
    transition: transform 0.25s ease;
    display: inline-block;
}

.jpti-block:hover .jpti-block__arrow {
    transform: translateX(6px);
}

.jpti-block--gray:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.jpti-block--green:hover,
.jpti-block--dark:hover {
    box-shadow: 0 8px 24px rgba(45, 90, 27, 0.1);
}

.fusion-content-boxes .link-type-button-bar .fusion-read-more {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 15px;
    text-align: center;
    font-family: 'Inter' !important;
}

.fusion-disable-outline .fusion-button,
.fusion-disable-outline .fusion-button.button-4 {
    border-bottom: none !important;
    border: none !important;
}

.glass-button { 
     backdrop-filter: blur(15px);
	background-color: #ffffff0d !important;
    border-style: solid;
    border-width: 1px;
    border-color: #ffffff1a;
}

 /* Replace 123 with your actual page ID number */
.page-id-2168 .fusion-content-boxes .content-wrapper-background {
	font-family: 'inter' !important;
	padding: 20px !important;
	background: #f2f2f2;
}

.fusion-content-boxes .content-container { font-family: 'inter' !important;font-size:16px;line-height:1.2em;}


.single-job_listing .clearfix {padding-top:10px !important; padding-bottom:10px !important;}

.acf-hidden {display:none !important;}
.fancybox__container {
    z-index: 999999 !important;
}


.jpti-cslinks .fusion-content-boxes .content-wrapper-background {padding:25px !important;}
.job-apply-card-body { padding:2px !important;}

.job-single-description {
    font-size: 18px !important;
    line-height: 1.5em !important;
    color: #434549 !important;
}