.page-hero {
position: relative;
height: 400px;
overflow: hidden;
margin-bottom: var(--spacing-3xl);
}
.page-hero img {
width: 100%;
height: 100%;
object-fit: cover;
}
.page-hero-overlay {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(135deg, rgba(30, 90, 46, 0.8) 0%, rgba(124, 179, 66, 0.6) 100%);
display: flex;
align-items: center;
justify-content: center;
}
.page-hero-title {
color: var(--color-white);
font-size: 3rem;
text-align: center;
margin: 0;
}
.page-content-wrapper {
max-width: 900px;
margin: 0 auto;
padding: var(--spacing-3xl) 0;
}
.page-content .entry-header {
margin-bottom: var(--spacing-2xl);
text-align: center;
}
.page-content .entry-content {
font-size: 1.125rem;
line-height: 1.8;
}
.page-content .entry-content h2 {
margin-top: var(--spacing-2xl);
margin-bottom: var(--spacing-lg);
}
.page-content .entry-content h3 {
margin-top: var(--spacing-xl);
margin-bottom: var(--spacing-md);
}
.page-content .entry-content img {
max-width: 100%;
height: auto;
border-radius: var(--radius-lg);
margin: var(--spacing-xl) 0;
} .single-post-layout {
display: grid;
grid-template-columns: 1fr 350px;
gap: var(--spacing-2xl);
padding: var(--spacing-3xl) 0;
}
.single-post-content {
max-width: 800px;
}
.single-post-content .blog-post-card {
box-shadow: none;
border-radius: 0;
}
.single-post-content .entry-content {
font-size: 1.125rem;
line-height: 1.8;
}
.single-post-content .entry-content h2 {
margin-top: var(--spacing-2xl);
margin-bottom: var(--spacing-lg);
}
.single-post-content .entry-content h3 {
margin-top: var(--spacing-xl);
margin-bottom: var(--spacing-md);
}
.single-post-content .entry-content img {
max-width: 100%;
height: auto;
border-radius: var(--radius-lg);
margin: var(--spacing-xl) 0;
} .post-navigation {
margin-top: var(--spacing-3xl);
padding: var(--spacing-xl) 0;
border-top: 2px solid var(--color-gray-200);
}
.post-navigation .nav-links {
display: grid;
grid-template-columns: 1fr 1fr;
gap: var(--spacing-lg);
}
.post-navigation .nav-previous,
.post-navigation .nav-next {
padding: var(--spacing-lg);
background-color: var(--color-gray-50);
border-radius: var(--radius-lg);
transition: all 0.3s ease;
}
.post-navigation .nav-previous:hover,
.post-navigation .nav-next:hover {
background-color: var(--color-primary);
transform: translateY(-3px);
}
.post-navigation .nav-previous:hover a,
.post-navigation .nav-next:hover a {
color: var(--color-white);
}
.post-navigation .nav-next {
text-align: right;
}
.post-navigation a {
text-decoration: none;
color: var(--color-gray-900);
display: block;
}
.post-navigation .nav-subtitle {
display: block;
font-size: 0.875rem;
color: var(--color-gray-600);
margin-bottom: 0.5rem;
}
.post-navigation .nav-title {
display: block;
font-weight: 600;
font-size: 1.125rem;
} .archive-hero {
background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
padding: var(--spacing-3xl) 0;
margin-bottom: var(--spacing-3xl);
}
.archive-hero .page-header {
text-align: center;
color: var(--color-white);
}
.archive-hero .page-title {
color: var(--color-white);
margin-bottom: var(--spacing-md);
}
.archive-hero .archive-description {
font-size: 1.125rem;
opacity: 0.95;
}
.archive-layout {
display: grid;
grid-template-columns: 1fr 350px;
gap: var(--spacing-2xl);
padding-bottom: var(--spacing-3xl);
}
.archive-content {
min-width: 0;
} .pagination {
display: flex;
justify-content: center;
gap: var(--spacing-sm);
margin-top: var(--spacing-2xl);
flex-wrap: wrap;
}
.pagination .page-numbers {
display: flex;
align-items: center;
justify-content: center;
min-width: 40px;
height: 40px;
padding: 0 var(--spacing-sm);
background-color: var(--color-white);
border: 1px solid var(--color-gray-300);
border-radius: var(--radius-sm);
color: var(--color-gray-700);
text-decoration: none;
transition: all 0.3s ease;
}
.pagination .page-numbers:hover,
.pagination .page-numbers.current {
background-color: var(--color-primary);
border-color: var(--color-primary);
color: var(--color-white);
} .search-hero {
background-color: var(--color-gray-50);
padding: var(--spacing-2xl) 0;
margin-bottom: var(--spacing-3xl);
}
.search-hero .page-header {
text-align: center;
margin-bottom: var(--spacing-xl);
}
.search-hero .page-title span {
color: var(--color-primary);
}
.search-form-wrapper {
max-width: 600px;
margin: 0 auto;
}
.search-layout {
display: grid;
grid-template-columns: 1fr 350px;
gap: var(--spacing-2xl);
padding-bottom: var(--spacing-3xl);
}
.search-results-count {
font-size: 1.125rem;
color: var(--color-gray-600);
margin-bottom: var(--spacing-xl);
padding: var(--spacing-md) var(--spacing-lg);
background-color: var(--color-gray-50);
border-radius: var(--radius-md);
text-align: center;
} .search-form {
display: flex;
gap: var(--spacing-sm);
}
.search-form label {
flex-grow: 1;
margin: 0;
}
.search-form input[type="search"] {
width: 100%;
padding: 0.75rem 1rem;
border: 2px solid var(--color-gray-300);
border-radius: var(--radius-md);
font-size: 1rem;
transition: border-color 0.3s ease;
}
.search-form input[type="search"]:focus {
outline: none;
border-color: var(--color-primary);
}
.search-form button,
.search-form input[type="submit"] {
padding: 0.75rem 2rem;
background-color: var(--color-primary);
color: var(--color-white);
border: none;
border-radius: var(--radius-md);
font-size: 1rem;
font-weight: 600;
cursor: pointer;
transition: background-color 0.3s ease;
}
.search-form button:hover,
.search-form input[type="submit"]:hover {
background-color: var(--color-primary-dark);
} .sidebar {
position: sticky;
top: 100px;
align-self: start;
}
.widget {
background-color: var(--color-white);
padding: var(--spacing-lg);
border-radius: var(--radius-lg);
box-shadow: var(--shadow-md);
margin-bottom: var(--spacing-lg);
}
.widget:last-child {
margin-bottom: 0;
}
.widget-title {
font-size: 1.25rem;
margin-bottom: var(--spacing-md);
padding-bottom: var(--spacing-sm);
border-bottom: 2px solid var(--color-primary);
}
.widget ul {
list-style: none;
padding: 0;
margin: 0;
}
.widget ul li {
padding: 0.5rem 0;
border-bottom: 1px solid var(--color-gray-200);
}
.widget ul li:last-child {
border-bottom: none;
}
.widget ul li a {
color: var(--color-gray-700);
text-decoration: none;
transition: color 0.3s ease;
}
.widget ul li a:hover {
color: var(--color-primary);
} .error-404-section {
padding: var(--spacing-3xl) 0;
min-height: 70vh;
display: flex;
align-items: center;
}
.error-404-content {
text-align: center;
max-width: 700px;
margin: 0 auto;
}
.error-404-number {
font-size: 10rem;
font-weight: 700;
color: var(--color-primary);
line-height: 1;
margin-bottom: var(--spacing-lg);
opacity: 0.3;
}
.error-404-content .page-header {
margin-bottom: var(--spacing-xl);
}
.error-404-content .page-content > p {
font-size: 1.25rem;
color: var(--color-gray-600);
margin-bottom: var(--spacing-2xl);
}
.error-404-search,
.error-404-links {
margin-bottom: var(--spacing-2xl);
}
.error-404-search h2,
.error-404-links h2 {
font-size: 1.25rem;
margin-bottom: var(--spacing-md);
}
.error-404-links ul {
list-style: none;
padding: 0;
display: flex;
gap: var(--spacing-lg);
justify-content: center;
flex-wrap: wrap;
}
.error-404-links ul li a {
color: var(--color-primary);
font-weight: 600;
text-decoration: none;
transition: color 0.3s ease;
}
.error-404-links ul li a:hover {
color: var(--color-primary-dark);
} @media (max-width: 1024px) {
.single-post-layout,
.archive-layout,
.search-layout {
grid-template-columns: 1fr;
}
.sidebar {
position: static;
}
.post-navigation .nav-links {
grid-template-columns: 1fr;
}
.post-navigation .nav-next {
text-align: left;
}
}
@media (max-width: 768px) {
.page-hero {
height: 300px;
}
.page-hero-title {
font-size: 2rem;
}
.page-content-wrapper {
padding: var(--spacing-2xl) 0;
}
.error-404-number {
font-size: 6rem;
}
.search-form {
flex-direction: column;
}
}