@charset "UTF-8";

/* =========================================
   1. Global Variables & Reset
   ========================================= */
:root {
    --pl-primary-green: #C5D635; 
    --pl-hover-green: #b4c424;
    
    --pl-text-main: #111111;
    --pl-text-desc: #333333;
    --pl-text-light: #666666;
    
    --pl-bg-white: #ffffff;
    --pl-bg-offwhite: #FAFAFA;
    --pl-bg-dark: #0E2633;
}

body {
    font-family: 'Roboto', sans-serif;
    color: var(--pl-text-main);
    overflow-x: hidden;
    margin: 0;
}

a { text-decoration: none; }

@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,300;0,400;0,500;0,700;1,400&family=Open+Sans:ital,wght@0,400;0,600;0,700;0,800;1,600&display=swap');

/* =========================================
   2. Header Section (Pixel Perfect)
   ========================================= */
.pl-header {
    background-color: #fff;
    padding: 18px 0;
    box-shadow: 0 1px 5px rgba(0,0,0,0.05);
    position: fixed;
    z-index: 1000;
	width:100%;
	top:0px;
}

/* Logo Area */
.pl-brand {
    display: flex;
    align-items: center;
    text-decoration: none;
}
.pl-logo-img {
    height: 35px;
    margin-right: 8px;
    font-size: 32px; 
    color: var(--pl-primary-green);
}
.pl-brand-text {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 20px;
    color: #333;
    font-style: italic;
    letter-spacing: -0.5px;
}
.pl-brand-text span {
    font-weight: 400;
}

/* Nav Menu */
.pl-navbar-nav .nav-link {
    color: var(--pl-text-main) !important;
    font-size: 16px;
    font-weight: 600;
    margin: 0 12px;
    padding: 0 !important;
    position: relative;
    font-family: 'Roboto', sans-serif;
    transition: color 0.2s;
}
.pl-navbar-nav .nav-link:hover,
.pl-navbar-nav .nav-link.active {
    color: var(--pl-primary-green) !important;
}

/* Contact Us Button */
.btn-header-contact {
    background-color: var(--pl-primary-green);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    padding: 8px 22px;
    border-radius: 4px;
    border: none;
    transition: opacity 0.3s;
}
.btn-header-contact:hover {
    color: #fff;
    opacity: 0.9;
}

/* =========================================
   3. Footer Section (Pixel Perfect)
   ========================================= */
.pl-footer {
    background: #F7FAFD url(../img/footerbg.png) center center no-repeat;
    padding: 80px 0 60px 0;
    border-top: 1px solid #eeeeee;
}

/* Footer Links */
.pl-footer-link {
    text-decoration: none;
    color: var(--pl-text-main);
    font-size: 15px;
    font-weight: 400;
    display: inline-flex;
    align-items: center;
    margin-right: 40px;
    transition: color 0.2s;
}
.pl-footer-link:hover { color: #555; }
.pl-footer-link i { margin-right: 8px; font-size: 14px; }

/* Social Icons */
.pl-social-box {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
}
.pl-social-icon {
    width: 38px;
    height: 38px;
    background-color: var(--pl-primary-green);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    text-decoration: none;
    font-size: 16px;
    transition: transform 0.2s, opacity 0.2s;
}
.pl-social-icon:hover {
    transform: translateY(-2px);
    opacity: 0.9;
    color: #000;
}

/* Disclaimer Text */
.pl-footer .pl-disclaimer-box {
    margin-top: 70px;
    margin-bottom: 50px;
}
.pl-footer .pl-disclaimer-text {
    font-size: 14px;
    line-height: 1.6;
    color: var(--pl-text-desc);
    margin: 0;
}

/* Copyright */
.pl-copyright {
    font-size: 13px;
    color: var(--pl-text-desc);
    margin: 0;
}



/* =========================================
   6. Pre-Footer CTA (Join Us)
   ========================================= */
.pl-footer-cta {
    background-color: var(--pl-bg-dark);
    padding: 40px 0;
    color: white;
    position: relative;
    overflow: hidden;
}
.pl-footer-cta::before {
    content: "";
    position: absolute;
    left: -10%;
    bottom: -50%;
    width: 600px;
    height: 600px;
    border: 80px solid rgba(255,255,255,0.03);
    border-radius: 50%;
}
.pl-footer-cta h2 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 30px;
}
.pl-footer-cta h2 span { color: var(--pl-primary-green); font-style: italic; }
.pl-footer-media {
    height: 320px;
    width: 100%;
    float: right;
}

.pl-footer-media img{
	width:100%;
	height:100%;
	object-fit:contain;
}
.btn-cta-green {
    background-color: var(--pl-primary-green);
    color: #fff;
    font-weight: 700;
    padding: 12px 30px;
    border-radius: 4px;
    text-transform: uppercase;
    font-size: 0.85rem;
    border: none;
}
.btn-cta-green:hover {
    background-color: var(--pl-hover-green);
    color: #fff;
}


/* =========================================
   MOBILE RESPONSIVE FIXES (Add to bottom of layout.css)
   ========================================= */
@media (max-width: 1360px) {
	.pl-header {
	    padding: 14px 15px;
	}
	.pl-brand img{
		height:70px;
	}
   .pl-navbar-nav .nav-link {
	   font-size: 15px;
	   margin: 0 10px;
   }
     .pl-footer {
		 padding-left:30px;
		 padding-right:30px;
	 }
}
@media (max-width: 991px) {
    /* --- Header --- */
    .pl-header {
        padding: 12px 15px;
    }
    .pl-brand-text {
        font-size: 18px;
    }
	.btn-header-contact{
		display:none!important;
	}
	.pl-brand img{
		height:70px;
	}
    
    /* 导航栏折叠后的样式 */
    .pl-navbar-nav {
        background: #fff;
        padding: 20px 0;
        text-align: center;
    }
    .pl-navbar-nav .nav-link {
        margin: 10px 0;
        font-size: 18px;
    }
    .btn-header-contact {
        margin: 15px auto;
        display: table; /* 居中显示 */
    }
	
	 /* --- Footer CTA --- */
    .pl-footer-cta {
        text-align: center;
        padding: 60px 0;
    }
    .pl-footer-cta h2 {
        font-size: 1.8rem;
    }
    .pl-footer-media {
        display: none; 
    }

    /* --- Footer --- */
    .pl-footer {
        padding: 40px 0;
        text-align: center; /* 移动端居中对齐 */
    }
    .pl-footer-link {
        display: block; /* 链接换行显示 */
        margin: 0 0 15px 0;
        text-align: center;
    }
    .pl-footer .col-md-8 {
        justify-content: center;
        flex-direction: column;
        margin-bottom: 30px;
    }
    .pl-social-box {
        justify-content: center; /* 社交图标居中 */
    }
    .pl-footer .pl-disclaimer-box {
        margin-top: 40px;
        margin-bottom: 30px;
    }
}