/*
Theme Name: Greenhouse
Theme URI: https://flythemes.net/wordpress-themes/free-garden-wordpress-theme/
Author: Flythemes
Author URI: https://flythemes.net
Description: The Greenhouse Garden WordPress theme is a theme created for companies and individuals focusing on gardening. Businesses like Lawn Services Business, Landscaping Companies, Groundskeepers, Landscape Architects, Gardening Business, Florists, firewood, flowers, ecology, landscape, lawn, lumberjack, Big or Small gardener Business, Agriculture and companies that offer related services can use the theme. With an elegant and modern design and customizable grid, websites can be easily built with the easy to manage homepage sections and stand out from the crowd.  This theme compatible with the latest version of WordPress and plugins like wocommerce and contact form.
Requires at least: 6.7
Tested up to: 6.9
Requires PHP:7.2
Version: 1.2.4
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
Text Domain: greenhouse
Tags: e-commerce, right-sidebar, custom-background, custom-header, custom-menu, featured-images, theme-options, threaded-comments, custom-logo, blog, full-width-template

Greenhouse is based on Underscores theme(Underscores is distributed under the terms of the GNU GPL v2 or later).
Greenhouse WordPress Theme has been created by Flythemes(flythemes.net), 2026.
Greenhouse WordPress Theme is released under the terms of GNU GPL
*/


/* ============================================================
   欢乐农场 - 全局增强样式
   ============================================================ */

/* 平滑滚动 */
html {
    scroll-behavior: smooth;
}

/* 全局盒模型 */
* {
    box-sizing: border-box;
}
* {
	outline: none;
}

body {
    margin: 0;
    padding: 0;
    -ms-word-wrap: break-word;
    word-wrap: break-word;
    font: 14px/22px 'Montserrat';
    color: #5f5f5f;
	background-color:#f1f1f1;
}
img {
    margin: 0;
    padding: 0;
    border: none;
    max-width: 100%;
    height: auto;
}
section img {
    max-width: 100%;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    padding: 0;
	font-family: 'Montserrat';
	line-height:normal;
	color:#282828;
}
p {
    margin: 0;
    padding: 0;
}
a {
    text-decoration: none;
    color: #0fa5d9;
}
a:hover {
    text-decoration: none;
    color: #666;
}
ul {
    margin: 0 0 0 15px;
    padding: 0;
}
.clear {
    clear: both;
}
.center {
    text-align: center;
    margin-bottom: 40px;
}
pre {
    border: 1px solid #d1d1d1;
    font-size: 1rem;
    line-height: 1.3125;
    margin: 0 0 1.75em;
    max-width: 100%;
    overflow: auto;
    overflow-wrap: break-word;
    padding: 1.75em;
    white-space: pre-wrap;
}
.middle-align {
    margin: 0 auto;
    padding: 0;
}
.wp-caption {
    margin: 0;
    padding: 0;
    font-size: 13px;
    max-width: 100%;
}
.wp-caption-text {
    margin: 0;
    padding: 0;
}
.sticky {
    margin: 0;
    padding: 0;
}
.screen-reader-text,
.bypostauthor,
.gallery-caption {
    margin: 0;
    padding: 0;
}
.alignleft,
img.alignleft {
    display: inline;
    float: left;
    margin-right: 45px;
    margin-top: 4px;
    margin-bottom: 20px;
    padding: 0;
}
.alignright,
img.alignright {
    display: inline;
    float: right;
}
.aligncenter,
img.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
}
.comment-list .comment-content ul {
    list-style: none;
    margin-left: 15px;
}
.comment-list .comment-content ul li {
    margin: 5px;
}
.main-container ol {
    list-style-position: outside;
}
.main-container ol li {
    margin: 5px 0;
}
.toggleMenu {
    display: none;
}
section {
    padding:0;
    position: relative;
}
h2.section-title {
    font-family: 'Montserrat';
    font-size: 33px;
    font-weight: 700;
    padding: 0 0 20px 0;
    text-align: center;
    text-transform: capitalize;
    display: table;
    margin-bottom: 50px;
	color:#4d4d4b;
}

/** Topbar **/
#topbar { 
	padding:13px 0; 
	position:relative; 
	background-color:#ffffff;
	color:#000000;
	font:500 13px 'Montserrat';
	border-bottom:1px solid #f1f1f1;
}
.top-inner { 
	width:1170px; 
	margin:0 auto;
}
.top-right { 
	float:right; 
	text-align:left;
}
.top-left { 
	float:left; 
}
.top-right .fa-envelope, 
.top-left .fa-phone { 
	margin-right:10px; 
	position:relative; 
	top:2px;
}


#slider {
    margin: 0 auto;
    padding: 0;
    position: relative;
}
#slider .top-bar {
    margin: 0;
    padding: 16px 0 20px;
    position: relative;
}
#slider .top-bar h2 {
    font:700 30px 'Montserrat';
    padding: 25px 0 5px 0;
    text-transform:uppercase;
    line-height: 55px;
}
#slider .top-bar h2 a {
    color: #483b33;
}
#slider .top-bar h2 a:hover {
    color: #483b33;
}
#slider .top-bar p {
    color: #483b33;
    margin: 0 0 10px 0;
    padding: 5px 0 25px;
    border-radius: 0 0 5px 5px;
    font: 400 14px/25px 'Montserrat';
}
#slider .top-bar .slide-button{
	color:#ffffff;
	padding:10px 25px;
}
.main-container {
    margin: 0;
    padding: 50px 0;
}
.container {
    width: 1160px;
    margin: 0 auto;
    padding: 0;
    position: relative;
}
/** Header **/
#header { 
	width:100%; 
	padding:25px 0; 
	position:relative;
	background-color:#ffffff;
}
.header-inner { 
	width:1170px; 
	margin:0 auto;
}
.logo h1 { 
	padding:0; 
	font:500 30px 'Montserrat'; 
	color:#282828;
}
#header .logo { 
	padding:0; 
	z-index:99; 
}
#header .logo p { 
	margin-top:0px; 
	color:#282828; 
	font:400 12px 'Montserrat';
}
.toggle{
	display:none;
}
#header .main-nav ul li a { 
	font:700 13px 'Montserrat'; 
}

@media screen and (min-width:1000px){
	.main-nav ul { 
		margin:0 0 0 0; 
		padding:0px 0 0 0; 
		float:right;
	}
	.main-nav ul li { 
		list-style:none; 
		display:inline-block;  
		position:relative; 
		padding:10px 0;
	}
	.main-nav ul li ul { 
		display:none; 
		width:190px; 
	}
	.main-nav ul li a { 
		text-decoration:none; 
		padding:13px 11px; 
		text-align:left; 
		text-transform:uppercase;
		color:#000000;
	}
	.main-nav ul li a:hover { 
		text-decoration:none;
		color:#69af07;
	}
	.main-nav ul li:hover ul {
		display:block; 
		position:absolute; 
		z-index:99; 
		padding:0; 
		top:42px; 
		background-color:#f1f1f1;
	}
	.main-nav ul li:hover ul li {
		display:block; 
		padding-bottom:0; 
		padding-top:0;
	}
	.main-nav ul li:hover ul li a { 
		padding:0 0 0 14px;  
		border-top:0; 
		text-transform:capitalize; 
	}
	.main-nav ul li:hover ul li ul { 
		display:none; 
	}
	.main-nav ul li:hover ul li:hover ul { 
		display:block; 
		position:absolute;
		z-index:999; 
		padding:0px 0px; 
		left:100%; 
		top:0%; 
	}
	.main-nav ul li:hover ul li:hover ul li { 
		display:block;
	}
	#header .main-nav ul li ul li:last-child a{ 
		border-bottom:none;
	}
	#header .main-nav ul li ul li a {
		display: block;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	.main-nav ul li.current_page_item a{
		color:#69af07;
	}
	
	#header .logo{float:left; }
}

/* = section first css
-------------------------------------------------------------- */
section#pagearea { 
	width:100%; 
	position:relative; 
	min-height:270px;
}
.pagearea-inner { 
	z-index:99; 
	width:100%;
}

/* --------- Pages ------- */

.content-area {
    width: 1160px;
    margin: 0 auto;
    padding:0;
}
.site-main {
    width: 800px;
    margin: 0;
    padding: 0;
    float: left;
}
#sitefull {
    width: auto !important;
}
#nosidebar {
    width: 80%;
    margin: 0 auto;
    float: none;
    text-align: center;
}
#sidebar {
    width: 270px;
    margin: 0;
    padding: 0;
    float: right;
}
/* -------- Footer ------- */

.copyright-wrapper{ 
	margin:0; 
	text-align:center; 
	padding:15px 0; 
	color:#ffffff; 
	background-color:#2b2b2b;
}
.copyright-wrapper a{ 
	color:#ffffff;
}
/* ------ Contact Form ------ */

.wpcf7 {
    margin: 0;
    padding: 0;
    font: 400 15px 'Montserrat';
    color: #ffffff;
}
.wpcf7 form {
    margin: 0;
    padding: 0;
}
.wpcf7 form span.last {
    float: none !important;
}
.wpcf7 form input[type="text"],
.wpcf7 form input[type="email"],
.wpcf7 form input[type="tel"],
.wpcf7 form input[type="url"],
.wpcf7 form input[type="date"],
.wpcf7 form select,
.leftdiv input[type="text"],
.leftdiv input [type="url"],
.leftdiv input[type="email"],
.leftdiv input[type="tel"],
.wpcf7 form textarea,
.rightdiv textarea {
    width: 94%;
    background-color: #f8f8f8;
    border: 1px solid #e6e5e5;
    padding: 10px;
    margin-top: 15px;
    font: 400 14px 'Montserrat';
    color: #777777;
}
.wpcf7 form textarea,
.rightdiv textarea {
    height: 128px;
}
.wpcf7 form input[type="checkbox"],
.wpcf7 form input[type="radio"],
.wpcf7 form input[type="file"] {
    margin-top: 10px;
    padding: 0;
}
span.wpcf7-list-item {
    margin: 0 15px 0 0 !important;
}
.wpcf7 form input[type="submit"],
#contact input[type="submit"] {
    font: 400 15px 'Montserrat';
    margin: 25px 0 0 0;
    padding: 10px 30px;
    border: none;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    -webkit-border-radius: 4px;
	border-radius: 4px;
    cursor: pointer;
    background-color: #000000;
	color:#ffffff;
}
.error_msg {
    padding: 10px;
    background: #ffd3ce;
    color: #e00;
    border: 1px #e00 solid;
    margin: 15px 0;
}
.success_msg {
    padding: 10px;
    background: #dcffc5;
    color: #070;
    border: 1px #070 solid;
    margin: 15px 0;
}
.spacer20 {
    height: 20px;
    clear: both;
}
.nav-links {
    display: table;
    clear: both;
    margin: 15px 0;
    width: 100%;
}
.nav-previous {
    float: left;
}
.nav-next {
    float: right;
}
.nav-links a,
.nav-links .page-numbers {
    background: #2e2e2e;
    color: #fff;
    padding: 5px 10px;
    display: inline-block;
}
.nav-links .current,
.nav-links a:hover {
    background: #ee6133;
}
h1.entry-title,
h1.page-title {
    padding-bottom: 20px;
    font-size: 30px;
}
article.tag-sticky-2 {
    background: #f6f6f6;
    padding: 10px;
}
article img {
    height: auto;
}
article p {
    margin: 10px 0;
}
.post-date {
    display: inline;
}
.post-comment {
    display: inline;
}
.post-categories {
    display: inline;
}
.post-tags {
    display: inline;
}
.post-thumb, .postmeta{
	margin-top:10px;
}
form.search-form {
    margin-bottom: 15px;
}
input.search-field,
.post-password-form input[type=password] {
    border: 1px #eee solid;
    padding: 4px;
}
input.search-submit,
.post-password-form input[type=submit] {
    border: none;
    color: #ffffff;
    padding: 4px 10px;
    cursor: pointer;
}
aside.widget {
    margin-bottom: 30px;
}
aside.widget ul {
    list-style: disc;
    margin-left: 13px;
}
.accordion-box h2.active {
    color: #ff8a00;
}
.webicon {
    font-size: 20px;
}
#sidebar ul li {
    margin: 5px 0;
}
.comment-list,
ol.comment-list {
    list-style: none;
    margin-left: 0;
    margin-top: 20px;
    margin-bottom: 20px;
	padding-left:0;
}
.comment-list ul,
ol.comment-list ul {
    list-style: none;
}
.comment-list li.comment {
    margin-top: 20px;
}
.comment-list .comment-content h1,
.comment-list .comment-content h2,
.comment-list .comment-content h3,
.comment-list .comment-content h4,
.comment-list .comment-content h5,
.comment-list .comment-content h6 {
    margin-top: 15px;
}
ol.comment-list li ol{
	list-style:none;
}
h3.widget-title {
    font-size: 20px;
    border-bottom: 1px solid #cccccc;
    padding-bottom: 15px;
    margin-bottom: 15px;
}
.blog-post-repeat {
    border-bottom: 1px solid #cccccc;
    margin-bottom: 40px;
}
a.blogthumbs img {
    width: 100%;
}
#wp-calendar td {
    padding: 9px;
}
.textwidget select {
    border: 1px solid #ccc;
    height: 30px;
    width: 100%;
}
/*------- COMMENT STYLES --------*/

.comment-author.vcard {
    display: inline-block;
    margin-right: 15px;
}
.comment-author img {
    display: block;
}
.comment-meta {
    margin: 5px 0;
}
.comment-list ol.children li.comment {
    background-image: none;
    padding-left: 5px;
}
.hrule {
    border-top: 1px #dbdbdb solid;
    margin-top: 15px;
    padding-bottom: 15px;
}
ol.commentlist {
    list-style: none;
}
#commentform p {
    margin: 5px 0;
}
#commentform label {
    display: block;
}
#commentform input#email,
#commentform input#url,
#commentform input#author,
#commentform textarea,
#commentform input#eazycfc_captcha {
    max-width: 96%;
    border: 1px #ccc solid;
    padding: 5px 2%;
}
#commentform input#submit {
    font: 400 15px 'Montserrat';
    border: none;
    padding: 5px 10px;
    color: #fff;
    display: inline-block;
}
#commentform input#submit:hover {
    cursor: pointer;
}
.form-allowed-tags {
    display: none;
}
ul.errormsg {
    background: #ffe4e4;
}
ul.errormsg li {
    padding: 5px;
}
.entry-content table,
.comment-body table {
    border-collapse: collapse;
    margin: 10px 0;
}
.entry-content table td,
.entry-content table th,
.comment-body table td,
.comment-body table th {
    padding: 10px 5px;
    text-align: left;
}
.entry-content table th,
.comment-body table th {
    color: #676767;
    font: normal 18px Oswald;
    border-bottom: 1px #888 solid;
}
.entry-content table td,
.comment-body table td {
    border-bottom: 1px #ccc solid;
}
.fvch-codeblock:hover .comment-form-url {
    display: block !important;
}
footer.entry-meta {
    clear: left;
}

/* Accessibility */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.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;
  clip-path: none;
  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. */
}

/* Do not show the outline on the skip link target. */
#sitemain[tabindex="-1"]:focus {
  outline: 0;
}

/* ===== 欢乐农场 - Logo & 导航栏修复 ===== */

/* 0. 隐藏头部背景大图 */
#header {
    background-image: none !important;
    background-color: #ffffff;
    padding: 15px 0;
    border-bottom: 3px solid #8bc34a;
    box-shadow: 0 2px 8px rgba(45, 90, 39, 0.1);
}

/* 1. Logo图片限制大小 */
.custom-logo,
.custom-logo-link img {
    max-height: 45px;
    width: auto;
    max-width: 160px;
    display: inline-block;
    vertical-align: middle;
}

/* 2. Logo和标题垂直居中 */
#header .logo {
    padding: 0;
    margin: 0;
}

#header .logo h1 {
    display: inline-block;
    margin: 0 0 0 10px;
    padding: 0;
    font-size: 24px;
    vertical-align: middle;
}

.logo h1 a {
    color: #2d5a27;
}

.logo p {
    display: inline-block;
    margin: 0 0 0 10px;
    font-size: 12px;
    color: #4a8c3f;
    vertical-align: middle;
}

/* 3. 导航栏链接颜色 */
.main-nav ul li a {
    color: #2d5a27;
    font-weight: 600;
}

.main-nav ul li a:hover,
.main-nav ul li.current_page_item a {
    color: #69af07;
}

/* 4. 文章标题绿色 */
h1.entry-title,
h1.page-title,
.entry-title a {
    color: #2d5a27;
}

/* 5. 按钮绿色 */
input[type="submit"],
button,
.search-submit,
.wp-block-button__link {
    background-color: #4a8c3f;
    color: #fff;
    border: none;
    border-radius: 20px;
    padding: 8px 20px;
}

/* 6. 链接颜色 */
a {
    color: #4a8c3f;
}
a:hover {
    color: #2d5a27;
}

/* 7. 页脚绿色 */
.copyright-wrapper {
    background-color: #2d5a27;
}

/* 8. 侧边栏标题 */
h3.widget-title {
    color: #2d5a27;
    border-bottom: 2px solid #8bc34a;
}

/* 9. Read More 按钮 */
.more-link,
.read-more {
    color: #4a8c3f;
    border: 2px solid #4a8c3f;
    padding: 5px 15px;
    border-radius: 15px;
    display: inline-block;
    text-decoration: none;
}
.more-link:hover {
    background-color: #4a8c3f;
    color: #fff;
}

/* ===== Topbar 优化 ===== */
#topbar {
    background: linear-gradient(90deg, #2d5a27, #4a8c3f);
    padding: 8px 0;
    border-bottom: none;
}
#topbar .top-inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#topbar .top-left,
#topbar .top-right {
    width: auto;
    float: none;
}
#topbar p {
    margin: 0;
    font-size: 13px;
    color: rgba(255,255,255,0.85);
}
#topbar a {
    color: rgba(255,255,255,0.85);
    text-decoration: none;
    transition: color 0.2s;
}
#topbar a:hover {
    color: #f4a623;
}
#topbar .fa {
    margin-right: 6px;
    color: #8bc34a;
}

/* ===== Header 导航增强 ===== */
#header .header-inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* 导航菜单样式 */
.main-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 4px;
}
.main-nav ul li {
    display: inline-block;
    position: relative;
}
.main-nav ul li a {
    display: block;
    padding: 8px 16px;
    font-size: 14px;
    font-weight: 600;
    color: #2d5a27;
    text-decoration: none;
    border-radius: 6px;
    transition: all 0.25s ease;
}
.main-nav ul li a:hover,
.main-nav ul li.current-menu-item a,
.main-nav ul li.current_page_item a {
    background: rgba(139, 195, 74, 0.15);
    color: #2d5a27;
}

/* 子菜单下拉 */
.main-nav ul ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    box-shadow: 0 4px 15px rgba(45,90,39,0.15);
    border-radius: 8px;
    min-width: 180px;
    z-index: 999;
    padding: 8px 0;
}
.main-nav ul li:hover > ul {
    display: block;
}
.main-nav ul ul li {
    display: block;
    width: 100%;
}
.main-nav ul ul li a {
    padding: 10px 20px;
    border-radius: 0;
    font-size: 13px;
    color: #333;
}
.main-nav ul ul li a:hover {
    background: rgba(139,195,74,0.1);
    color: #2d5a27;
}

/* 移动端菜单按钮 */
.toggle {
    display: none;
}

/* ===== 农场首页专用：隐藏原主题的容器/侧边栏 ===== */
.farm-home-wrapper ~ #sidebar,
.farm-home-wrapper ~ * .sidebar {
    display: none !important;
}


/* ============================================================
   欢乐农场 - 完整农场主题样式
   配色：深绿#2d5a27 / 中绿#4a8c3f / 浅绿#8bc34a / 米白#f8f9f2 / 暖橙#f4a623
   ============================================================ */

/* ----- 全局变量 & 基础重置 ----- */
:root {
    --farm-deep-green: #2d5a27;
    --farm-mid-green: #4a8c3f;
    --farm-light-green: #8bc34a;
    --farm-lime: #c5e1a5;
    --farm-bg: #f8f9f2;
    --farm-orange: #f4a623;
    --farm-text: #333333;
    --farm-text-light: #666666;
    --farm-white: #ffffff;
    --farm-shadow: 0 4px 15px rgba(45,90,39,0.15);
    --farm-shadow-hover: 0 8px 25px rgba(45,90,39,0.25);
    --farm-radius: 12px;
    --farm-radius-lg: 20px;
}

/* ----- 首页包裹容器 ----- */
.farm-home-wrapper {
    width: 100%;
    overflow-x: hidden;
    background: var(--farm-bg);
}

/* ============================================================
   ① HERO 区域
   ============================================================ */
.farm-hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: linear-gradient(135deg, #2d5a27 0%, #4a8c3f 50%, #8bc34a 100%);
}

/* 背景装饰渐变层 */
.farm-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 70% 30%, rgba(139,195,74,0.3) 0%, transparent 60%),
                radial-gradient(ellipse at 30% 70%, rgba(244,166,35,0.15) 0%, transparent 50%);
    pointer-events: none;
}

/* 漂浮叶子动画 */
.farm-hero-leaves {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}
.farm-leaf {
    position: absolute;
    font-size: 28px;
    opacity: 0.25;
    animation: floatLeaf 8s ease-in-out infinite;
}
.farm-leaf:nth-child(1) { left: 5%; top: 15%; animation-delay: 0s; animation-duration: 9s; }
.farm-leaf:nth-child(2) { left: 15%; top: 60%; animation-delay: 1.5s; animation-duration: 7s; }
.farm-leaf:nth-child(3) { left: 80%; top: 20%; animation-delay: 0.8s; animation-duration: 10s; }
.farm-leaf:nth-child(4) { left: 70%; top: 70%; animation-delay: 2.5s; animation-duration: 8s; }
.farm-leaf:nth-child(5) { left: 45%; top: 10%; animation-delay: 1s; animation-duration: 11s; }
.farm-leaf:nth-child(6) { left: 90%; top: 50%; animation-delay: 3s; animation-duration: 7.5s; }

@keyframes floatLeaf {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    25% { transform: translateY(-15px) rotate(5deg); }
    50% { transform: translateY(-8px) rotate(-3deg); }
    75% { transform: translateY(-20px) rotate(3deg); }
}

.farm-hero-content {
    position: relative;
    z-index: 2;
    text-align: center;
    padding: 40px 20px;
    max-width: 900px;
}

.farm-hero-badge {
    display: inline-block;
    background: rgba(255,255,255,0.15);
    border: 1px solid rgba(255,255,255,0.3);
    border-radius: 50px;
    padding: 6px 20px;
    color: rgba(255,255,255,0.9);
    font-size: 14px;
    letter-spacing: 2px;
    margin-bottom: 30px;
    backdrop-filter: blur(4px);
}

.farm-hero-title {
    font-family: 'Montserrat', 'PingFang SC', sans-serif;
    font-size: clamp(32px, 5vw, 62px);
    font-weight: 700;
    color: var(--farm-white);
    line-height: 1.3;
    margin: 0 0 24px 0;
    text-shadow: 0 3px 20px rgba(0,0,0,0.2);
    letter-spacing: -1px;
}

.farm-hero-subtitle {
    font-size: clamp(16px, 2vw, 22px);
    color: rgba(255,255,255,0.88);
    margin-bottom: 40px;
    line-height: 1.8;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.farm-hero-buttons {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

.farm-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--farm-white);
    color: var(--farm-deep-green);
    padding: 14px 36px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15);
}
.farm-btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.2);
    color: var(--farm-mid-green);
    background: var(--farm-bg);
}

.farm-btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: transparent;
    color: var(--farm-white);
    padding: 14px 36px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    border: 2px solid rgba(255,255,255,0.6);
    transition: all 0.3s ease;
}
.farm-btn-outline:hover {
    background: rgba(255,255,255,0.15);
    border-color: var(--farm-white);
    color: var(--farm-white);
    transform: translateY(-2px);
}

.farm-hero-scroll {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    color: rgba(255,255,255,0.7);
    font-size: 12px;
    letter-spacing: 1px;
    text-decoration: none;
    animation: bounceDown 2s ease-in-out infinite;
    cursor: pointer;
}
.farm-hero-scroll:hover { color: white; }
@keyframes bounceDown {
    0%, 100% { transform: translateX(-50%) translateY(0); }
    50% { transform: translateX(-50%) translateY(8px); }
}

/* ============================================================
   通用：区块标题
   ============================================================ */
.farm-section {
    padding: 80px 0;
}
.farm-section-alt {
    background: var(--farm-white);
}
.farm-section-dark {
    background: var(--farm-deep-green);
    color: var(--farm-white);
}
.farm-section-light {
    background: var(--farm-bg);
}

.farm-container {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
}

.farm-section-header {
    text-align: center;
    margin-bottom: 60px;
}
.farm-section-label {
    display: inline-block;
    background: linear-gradient(135deg, var(--farm-light-green), var(--farm-mid-green));
    color: var(--farm-white);
    padding: 4px 16px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 16px;
}
.farm-section-title {
    font-size: clamp(26px, 3vw, 40px);
    font-weight: 700;
    color: var(--farm-deep-green);
    margin: 0 0 16px 0;
    line-height: 1.3;
}
.farm-section-subtitle {
    font-size: 17px;
    color: var(--farm-text-light);
    max-width: 620px;
    margin: 0 auto;
    line-height: 1.8;
}
.farm-section-dark .farm-section-title {
    color: var(--farm-white);
}
.farm-section-dark .farm-section-subtitle {
    color: rgba(255,255,255,0.75);
}

/* ============================================================
   ② 农场故事区
   ============================================================ */
.story-section {
    background: linear-gradient(180deg, var(--farm-white) 0%, var(--farm-bg) 100%);
}

.story-content {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

.story-main-text {
    font-size: clamp(16px, 1.8vw, 19px);
    color: var(--farm-text);
    line-height: 2;
    margin-bottom: 50px;
}

.story-main-text p {
    margin: 0 0 20px 0;
}

.story-highlight {
    display: inline-block;
    background: linear-gradient(135deg, var(--farm-light-green), var(--farm-mid-green));
    color: var(--farm-white);
    padding: 3px 10px;
    border-radius: 4px;
    font-weight: 600;
}

/* 时间线 */
.story-timeline {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 30px;
    margin-top: 50px;
    text-align: left;
}
.story-timeline-item {
    position: relative;
    padding: 24px;
    background: var(--farm-white);
    border-radius: var(--farm-radius);
    border-left: 4px solid var(--farm-light-green);
    box-shadow: var(--farm-shadow);
    transition: all 0.3s ease;
}
.story-timeline-item:hover {
    transform: translateY(-4px);
    box-shadow: var(--farm-shadow-hover);
}
.story-timeline-year {
    font-size: 13px;
    font-weight: 700;
    color: var(--farm-light-green);
    letter-spacing: 1px;
    margin-bottom: 8px;
}
.story-timeline-title {
    font-size: 17px;
    font-weight: 600;
    color: var(--farm-deep-green);
    margin-bottom: 8px;
}
.story-timeline-desc {
    font-size: 14px;
    color: var(--farm-text-light);
    line-height: 1.7;
    margin: 0;
}

/* ============================================================
   ③ 价值感知卡片
   ============================================================ */
.value-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 50px;
}
.value-card {
    background: var(--farm-white);
    border-radius: var(--farm-radius-lg);
    padding: 40px 30px;
    text-align: center;
    box-shadow: var(--farm-shadow);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    border: 2px solid transparent;
    position: relative;
    overflow: hidden;
}
.value-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--farm-light-green), var(--farm-mid-green));
    transform: scaleX(0);
    transition: transform 0.4s ease;
}
.value-card:hover::before {
    transform: scaleX(1);
}
.value-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--farm-shadow-hover);
    border-color: var(--farm-lime);
}
.value-card-icon {
    font-size: 52px;
    line-height: 1;
    margin-bottom: 20px;
    display: block;
}
.value-card-title {
    font-size: 22px;
    font-weight: 700;
    color: var(--farm-deep-green);
    margin-bottom: 14px;
}
.value-card-desc {
    font-size: 15px;
    color: var(--farm-text-light);
    line-height: 1.8;
    margin: 0;
}

/* ============================================================
   ④ 理念深化区
   ============================================================ */
.philosophy-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin-top: 50px;
}
.philosophy-item {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    padding: 24px;
    background: rgba(255,255,255,0.06);
    border-radius: var(--farm-radius);
    border: 1px solid rgba(255,255,255,0.1);
    transition: all 0.3s ease;
}
.philosophy-item:hover {
    background: rgba(255,255,255,0.1);
    transform: translateX(4px);
}
.philosophy-icon {
    font-size: 36px;
    line-height: 1;
    flex-shrink: 0;
}
.philosophy-text h4 {
    font-size: 18px;
    font-weight: 700;
    color: var(--farm-white);
    margin: 0 0 8px 0;
}
.philosophy-text p {
    font-size: 14px;
    color: rgba(255,255,255,0.72);
    line-height: 1.8;
    margin: 0;
}

/* ============================================================
   ⑤ 核心理念五栏
   ============================================================ */
.concepts-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    margin-top: 50px;
}
@media (max-width: 900px) {
    .concepts-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 600px) {
    .concepts-grid { grid-template-columns: repeat(2, 1fr); }
}
.concept-item {
    text-align: center;
    padding: 30px 15px;
    background: var(--farm-white);
    border-radius: var(--farm-radius);
    box-shadow: var(--farm-shadow);
    transition: all 0.3s ease;
}
.concept-item:hover {
    transform: translateY(-6px);
    box-shadow: var(--farm-shadow-hover);
}
.concept-icon {
    font-size: 44px;
    line-height: 1;
    margin-bottom: 16px;
    display: block;
}
.concept-name {
    font-size: 18px;
    font-weight: 700;
    color: var(--farm-deep-green);
    margin-bottom: 10px;
}
.concept-desc {
    font-size: 13px;
    color: var(--farm-text-light);
    line-height: 1.7;
    margin: 0;
}

/* ============================================================
   ⑥ 农场动态（文章列表）
   ============================================================ */
.news-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
    margin-top: 50px;
}
.news-card {
    background: var(--farm-white);
    border-radius: var(--farm-radius);
    overflow: hidden;
    box-shadow: var(--farm-shadow);
    transition: all 0.3s ease;
}
.news-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--farm-shadow-hover);
}
.news-card-image {
    width: 100%;
    height: 200px;
    background: linear-gradient(135deg, var(--farm-light-green), var(--farm-mid-green));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 64px;
    position: relative;
    overflow: hidden;
}
.news-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.news-card-emoji-bg {
    position: absolute;
    font-size: 80px;
    opacity: 0.15;
    right: 15px;
    bottom: 10px;
}
.news-card-body {
    padding: 24px;
}
.news-card-meta {
    font-size: 12px;
    color: var(--farm-mid-green);
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 10px;
}
.news-card-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--farm-deep-green);
    margin: 0 0 12px 0;
    line-height: 1.4;
}
.news-card-title a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s;
}
.news-card-title a:hover {
    color: var(--farm-mid-green);
}
.news-card-excerpt {
    font-size: 14px;
    color: var(--farm-text-light);
    line-height: 1.7;
    margin: 0 0 16px 0;
}
.news-card-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--farm-mid-green);
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s;
}
.news-card-link:hover {
    color: var(--farm-deep-green);
    gap: 10px;
}

/* 查看更多按钮 */
.news-more-wrap {
    text-align: center;
    margin-top: 40px;
}
.news-more-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 36px;
    background: linear-gradient(135deg, var(--farm-mid-green), var(--farm-deep-green));
    color: var(--farm-white);
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 4px 16px rgba(45,90,39,0.25);
}
.news-more-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(45,90,39,0.35);
    gap: 12px;
}
.news-more-btn svg {
    transition: transform 0.3s ease;
}
.news-more-btn:hover svg {
    transform: translateX(3px);
}

/* ============================================================
   ⑦ 加入我们 CTA
   ============================================================ */
.cta-section {
    background: linear-gradient(135deg, #2d5a27 0%, #3d7a2f 50%, #4a8c3f 100%);
    padding: 80px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
}
.cta-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 50% 0%, rgba(139,195,74,0.2) 0%, transparent 70%);
}
/* CTA 区域标题、副标题改为白色，确保在深绿背景上清晰可见 */
.cta-section .farm-section-title {
    color: var(--farm-white);
}
.cta-section .farm-section-subtitle {
    color: rgba(255,255,255,0.8);
}
.cta-items {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 30px;
    margin: 40px auto 50px;
    max-width: 900px;
    position: relative;
    z-index: 2;
}
.cta-item {
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: var(--farm-radius);
    padding: 30px 20px;
    backdrop-filter: blur(4px);
    transition: all 0.3s ease;
}
.cta-item:hover {
    background: rgba(255,255,255,0.18);
    transform: translateY(-4px);
}
.cta-item-icon {
    font-size: 40px;
    margin-bottom: 14px;
    display: block;
}
.cta-item-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--farm-white);
    margin-bottom: 8px;
}
.cta-item-desc {
    font-size: 14px;
    color: rgba(255,255,255,0.78);
    line-height: 1.7;
    margin: 0;
}
.cta-final-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--farm-orange);
    color: var(--farm-white);
    padding: 18px 50px;
    border-radius: 50px;
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 4px 20px rgba(244,166,35,0.4);
    position: relative;
    z-index: 2;
}
.cta-final-btn:hover {
    background: #e09520;
    transform: translateY(-3px);
    box-shadow: 0 8px 30px rgba(244,166,35,0.5);
}

/* ============================================================
   ⑧ 自定义页脚
   ============================================================ */
.farm-footer {
    background: #1a3d18;
    color: rgba(255,255,255,0.75);
    padding: 60px 0 0;
}
.farm-footer-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 40px;
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px 50px;
}
@media (max-width: 900px) {
    .farm-footer-grid {
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 600px) {
    .farm-footer-grid {
        grid-template-columns: 1fr;
    }
}
.farm-footer-col-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--farm-white);
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--farm-light-green);
    display: inline-block;
}
.farm-footer-about p {
    font-size: 14px;
    line-height: 1.9;
    margin: 0 0 16px 0;
    color: rgba(255,255,255,0.65);
}
.farm-footer-tag {
    display: inline-block;
    background: rgba(139,195,74,0.15);
    border: 1px solid rgba(139,195,74,0.3);
    color: var(--farm-light-green);
    padding: 3px 12px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 600;
}
.farm-footer-links {
    list-style: none;
    margin: 0;
    padding: 0;
}
.farm-footer-links li {
    margin-bottom: 10px;
}
.farm-footer-links a {
    color: rgba(255,255,255,0.65);
    text-decoration: none;
    font-size: 14px;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    gap: 6px;
}
.farm-footer-links a:hover {
    color: var(--farm-light-green);
    padding-left: 4px;
}
.farm-footer-links a::before {
    content: '🌱';
    font-size: 11px;
}
.farm-footer-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 14px;
    font-size: 14px;
    color: rgba(255,255,255,0.65);
}
.farm-footer-contact-item span:first-child {
    font-size: 16px;
    flex-shrink: 0;
}
.farm-footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.1);
    padding: 20px;
    text-align: center;
    font-size: 13px;
    color: rgba(255,255,255,0.4);
}
.farm-footer-bottom a {
    color: rgba(255,255,255,0.5);
    text-decoration: none;
}
.farm-footer-bottom a:hover {
    color: var(--farm-light-green);
}
.farm-footer-cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--farm-orange);
    color: var(--farm-white);
    padding: 10px 24px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    margin-top: 10px;
}
.farm-footer-cta:hover {
    background: #e09520;
    transform: translateY(-2px);
}

/* ============================================================
   页面通用样式（子页面）
   ============================================================ */
.farm-page-header {
    background: linear-gradient(135deg, #2d5a27 0%, #4a8c3f 100%);
    padding: 60px 20px;
    text-align: center;
    margin-bottom: 50px;
}
.farm-page-header h1 {
    color: var(--farm-white);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 700;
    margin: 0 0 12px 0;
}
.farm-page-header p {
    color: rgba(255,255,255,0.8);
    font-size: 17px;
    margin: 0;
}
.farm-page-content {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 20px 60px;
}
.farm-page-content h2 {
    color: var(--farm-deep-green);
    font-size: 26px;
    font-weight: 700;
    margin: 40px 0 16px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--farm-lime);
}
.farm-page-content h3 {
    color: var(--farm-mid-green);
    font-size: 20px;
    font-weight: 600;
    margin: 30px 0 12px;
}
.farm-page-content p {
    font-size: 16px;
    line-height: 2;
    color: var(--farm-text);
}
.farm-page-content ul, .farm-page-content ol {
    padding-left: 24px;
}
.farm-page-content li {
    font-size: 16px;
    line-height: 2;
    color: var(--farm-text);
    margin-bottom: 6px;
}

/* ============================================================
   响应式优化
   ============================================================ */
@media screen and (max-width: 768px) {
    .farm-section {
        padding: 60px 0;
    }
    .farm-hero {
        min-height: 90vh;
    }
    .value-cards,
    .news-grid {
        grid-template-columns: 1fr;
    }
    .philosophy-grid {
        grid-template-columns: 1fr;
    }
    .story-timeline {
        grid-template-columns: 1fr;
    }
    .farm-footer-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

@media screen and (max-width: 480px) {
    .farm-hero-buttons {
        flex-direction: column;
        align-items: center;
    }
    .farm-btn-primary,
    .farm-btn-outline {
        width: 100%;
        max-width: 280px;
        justify-content: center;
    }
    .concepts-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
}

/* ===== 导航栏强制修复 ===== */
.main-nav {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
.main-nav > div,
.main-nav > ul {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
}
.main-nav ul li {
    display: inline-block !important;
    list-style: none;
}
.main-nav ul li a {
    display: block;
    padding: 8px 14px;
    font-size: 14px;
    font-weight: 600;
    color: #2d5a27;
    text-decoration: none;
    white-space: nowrap;
    border-radius: 6px;
    transition: all 0.25s ease;
}
.main-nav ul li a:hover {
    background: rgba(139, 195, 74, 0.15);
    color: #2d5a27;
}

/* ===== 子页面隐藏侧边栏，全宽显示 ===== */
.page .site-main {
    width: 100% !important;
    float: none !important;
}
.page .sidebar,
.page #sidebar,
.page aside.widget,
.page .widget {
    display: none !important;
}
.page .content_sidebar {
    max-width: 1160px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}
.page .content-area {
    width: 100% !important;
    float: none !important;
}
.page .middle-align {
    max-width: 1160px !important;
    margin: 0 auto !important;
}

/* === 规划图 === */
.adopt-plan-img {
    padding: clamp(20px, 4vw, 40px) 0;
    text-align: center;
}
.adopt-plan-img img {
    max-width: min(90vw, 400px);
    width: 100%;
    height: auto;
    border-radius: 12px;
    cursor: pointer;
    box-shadow: 0 4px 20px rgba(0,0,0,.1);
}

/* === 公众号二维码 === */
.farm-footer-about .farm-footer-col-title {
    margin-bottom: 12px;
    display: inline-block;
}
.farm-footer-about {
    text-align: center;
}
.farm-footer-qr {
    text-align: center;
}
.farm-footer-qr-img {
    width: 100px;
    height: 100px;
    border-radius: 10px;
    display: block;
    margin: 0 auto 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,.12);
}
.farm-footer-qr-name {
    font-size: 14px;
    color: #374151;
    margin: 0 0 4px;
    font-weight: 600;
}
.farm-footer-qr-hint {
    font-size: 12px;
    color: #6b7280;
    margin: 0;
}