Files
WFK_theme/style.css

575 lines
11 KiB
CSS

/*
Theme Name: Wisdom1
Description: A modern-classic Christian blog theme for "Wisdom for the Kingdom".
Version: 1.2.2
Text Domain: wisdom1
*/
/* --- 1. Base Reset & Typography --- */
* {
box-sizing: border-box;
}
body {
margin: 0;
background-color: var(--wp--preset--color--base);
color: var(--wp--preset--color--primary);
font-family: var(--wp--preset--font-family--body-font);
font-size: var(--wp--preset--font-size--body);
line-height: 1.6;
-webkit-font-smoothing: antialiased;
overflow-x: hidden;
}
.site-container {
max-width: var(--wp--style--global--wide-size);
margin: 0 auto;
padding: 0 var(--wp--preset--spacing--50);
}
img {
max-width: 100%;
height: auto;
display: block;
}
/* --- 2. Header & Navigation --- */
.site-header {
padding: var(--wp--preset--spacing--30) 0;
background-color: var(--wp--preset--color--base);
position: sticky;
top: 0;
z-index: 1000;
border-bottom: 1px solid var(--wp--preset--color--border);
}
.header-container {
display: flex;
justify-content: space-between;
align-items: center;
max-width: var(--wp--style--global--wide-size);
margin: 0 auto;
padding: 0 var(--wp--preset--spacing--50);
}
.brand-mark {
display: flex;
align-items: center;
gap: 15px;
text-decoration: none;
color: var(--wp--preset--color--primary);
}
.logo-icon {
font-family: var(--wp--preset--font-family--header-font);
font-size: 24px;
font-weight: bold;
border: 2px solid var(--wp--preset--color--primary);
width: 40px;
height: 40px;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
}
.site-name {
font-family: var(--wp--preset--font-family--body-font);
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.1em;
font-size: 14px;
}
.main-navigation ul {
display: flex;
gap: var(--wp--preset--spacing--50);
list-style: none;
margin: 0;
padding: 0;
flex-wrap: wrap;
justify-content: center;
}
.main-navigation a {
font-family: var(--wp--preset--font-family--body-font);
font-size: 13px;
font-weight: 700;
text-transform: uppercase;
color: var(--wp--preset--color--primary);
text-decoration: none;
transition: color 0.3s ease;
white-space: nowrap;
}
.main-navigation a:hover {
color: var(--wp--preset--color--accent);
}
/* --- 3. Hero Section (Landing Page) --- */
.hero-section {
min-height: 80vh;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
background-color: var(--wp--preset--color--base);
padding: var(--wp--preset--spacing--70) var(--wp--preset--spacing--50);
position: relative;
}
.hero-section::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(244, 241, 234, 0.6); /* Antique Parchment with transparency */
z-index: 1;
}
.hero-content {
position: relative;
z-index: 2;
}
.hero-headline {
font-family: var(--wp--preset--font-family--header-font);
font-size: clamp(2.5rem, 8vw, var(--wp--preset--font-size--heading));
margin-bottom: var(--wp--preset--spacing--30);
color: var(--wp--preset--color--primary);
line-height: 1.1;
}
.hero-subheadline {
font-size: clamp(1.125rem, 4vw, var(--wp--preset--font-size--subheading));
margin-bottom: var(--wp--preset--spacing--50);
max-width: 600px;
margin-left: auto;
margin-right: auto;
opacity: 0.8;
}
.cta-button {
display: inline-block;
padding: 15px 40px;
border: 2px solid var(--wp--preset--color--accent);
color: var(--wp--preset--color--accent);
text-decoration: none;
text-transform: uppercase;
font-weight: 700;
letter-spacing: 0.1em;
transition: all 0.3s ease;
}
.cta-button:hover {
background-color: var(--wp--preset--color--accent);
color: white;
}
/* --- 4. Archive & Category Header --- */
.category-header {
background-color: var(--wp--preset--color--primary);
color: white;
padding: var(--wp--preset--spacing--70) var(--wp--preset--spacing--50);
text-align: center;
}
.category-title {
font-family: var(--wp--preset--font-family--header-font);
font-size: clamp(2rem, 6vw, var(--wp--preset--font-size--heading));
margin: 0;
}
.category-description {
font-size: clamp(1rem, 3vw, var(--wp--preset--font-size--subheading));
margin-top: 20px;
opacity: 0.8;
max-width: 800px;
margin-left: auto;
margin-right: auto;
}
/* --- 5. Insights Grid --- */
.section-header {
text-align: center;
margin: var(--wp--preset--spacing--70) 0;
padding: 0 var(--wp--preset--spacing--50);
}
.section-title {
font-family: var(--wp--preset--font-family--header-font);
font-size: clamp(1.75rem, 5vw, 36px);
margin-bottom: 10px;
}
.section-subtitle {
font-style: italic;
opacity: 0.6;
}
.insights-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: var(--wp--preset--spacing--50);
margin-bottom: var(--wp--preset--spacing--90);
}
.insight-card {
background: #FFFFFF;
padding: var(--wp--preset--spacing--50);
border: 1px solid var(--wp--preset--color--border);
transition: border-color 0.3s ease;
display: flex;
flex-direction: column;
}
.insight-card:hover {
border-color: var(--wp--preset--color--hover);
}
.insight-card .post-thumbnail img {
width: 100%;
aspect-ratio: 16 / 9;
object-fit: cover;
margin-bottom: 20px;
}
.insight-card .entry-title a:hover {
color: var(--wp--preset--color--hover);
}
.entry-meta {
font-size: 12px;
text-transform: uppercase;
color: var(--wp--preset--color--accent);
margin-bottom: 15px;
font-weight: 700;
}
.entry-summary {
font-size: 15px;
margin-top: 20px;
opacity: 0.8;
}
/* --- 6. Single Post Layout --- */
.single-post-layout {
margin-top: var(--wp--preset--spacing--70);
}
.reading-container {
max-width: 680px;
margin: 0 auto;
font-size: clamp(1.125rem, 4vw, 20px);
line-height: 1.8;
padding: 0 var(--wp--preset--spacing--50);
}
.single-entry-header {
text-align: center;
margin-bottom: var(--wp--preset--spacing--70);
padding: 0 var(--wp--preset--spacing--50);
}
.single-title {
font-family: var(--wp--preset--font-family--header-font);
font-size: clamp(2rem, 7vw, 56px);
margin-top: 10px;
line-height: 1.1;
}
.single-post-thumbnail {
margin-bottom: var(--wp--preset--spacing--70);
text-align: center;
width: 100%;
}
.single-post-thumbnail img {
width: 100%;
height: auto;
aspect-ratio: 21 / 9; /* Cinematic ultra-wide for detail view */
object-fit: cover;
border-bottom: 1px solid var(--wp--preset--color--border);
}
/* --- Content Images & Captions --- */
.entry-content img {
height: auto;
margin-bottom: var(--wp--preset--spacing--30);
border: 1px solid var(--wp--preset--color--border);
padding: 5px;
background: #FFFFFF;
}
.wp-block-image {
margin-bottom: var(--wp--preset--spacing--50);
}
figcaption {
font-size: 13px;
text-align: center;
color: var(--wp--preset--color--accent);
font-style: italic;
margin-top: 10px;
font-family: var(--wp--preset--font-family--body-font);
}
/* Alignments */
.alignwide {
margin-left: -10%;
margin-right: -10%;
max-width: 120%;
}
.alignfull {
margin-left: calc(50% - 50vw);
margin-right: calc(50% - 50vw);
width: 100vw;
max-width: 100vw;
}
@media (max-width: 768px) {
.alignwide, .alignfull {
margin-left: 0;
margin-right: 0;
width: 100%;
}
}
.entry-date {
margin-left: 10px;
opacity: 0.5;
font-size: 12px;
text-transform: uppercase;
}
.post-navigation {
border-top: 1px solid var(--wp--preset--color--border);
margin-top: var(--wp--preset--spacing--90);
padding: var(--wp--preset--spacing--70) var(--wp--preset--spacing--50);
}
.nav-links {
display: flex;
justify-content: space-between;
gap: 20px;
flex-wrap: wrap;
}
.nav-links div {
flex: 1;
min-width: 200px;
}
.nav-links a {
color: var(--wp--preset--color--primary);
text-decoration: none;
font-weight: 700;
}
/* --- 7. Newsletter Strip --- */
.newsletter-strip {
background-color: var(--wp--preset--color--primary);
color: white;
padding: var(--wp--preset--spacing--70) var(--wp--preset--spacing--50);
}
.newsletter-content {
max-width: 800px;
margin: 0 auto;
text-align: center;
display: flex;
flex-direction: column;
align-items: center;
gap: 30px;
}
.newsletter-text {
font-family: var(--wp--preset--font-family--header-font);
font-size: clamp(1.25rem, 4vw, 24px);
}
.newsletter-form {
display: flex;
width: 100%;
max-width: 500px;
border-bottom: 1px solid var(--wp--preset--color--accent);
padding-bottom: 10px;
}
.newsletter-input {
background: transparent;
border: none;
color: white;
flex-grow: 1;
padding: 10px;
font-size: 16px;
min-width: 0;
}
.newsletter-submit {
background: transparent;
border: none;
color: var(--wp--preset--color--accent);
cursor: pointer;
flex-shrink: 0;
}
/* --- 8. Footer --- */
.site-footer {
padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--50);
text-align: center;
font-size: 14px;
background-color: var(--wp--preset--color--base);
}
/* --- 9. Additional Responsiveness --- */
@media (max-width: 768px) {
.header-container {
flex-direction: column;
gap: 20px;
}
.main-navigation ul {
gap: 20px;
}
.site-container {
padding: 0 var(--wp--preset--spacing--30);
}
}
@media (max-width: 480px) {
.insights-grid {
grid-template-columns: 1fr;
}
.cta-button {
width: 100%;
text-align: center;
}
.comment-meta {
flex-direction: column;
align-items: flex-start;
gap: 5px;
}
}
/* --- 10. Comments Section --- */
.comments-area {
margin-top: var(--wp--preset--spacing--90);
border-top: 1px solid var(--wp--preset--color--border);
padding: var(--wp--preset--spacing--70) var(--wp--preset--spacing--50);
}
.comments-title, .comment-reply-title {
font-family: var(--wp--preset--font-family--header-font);
font-size: clamp(1.5rem, 5vw, 32px);
margin-bottom: var(--wp--preset--spacing--50);
}
.comment-list {
list-style: none;
padding: 0;
}
.comment-body {
margin-bottom: var(--wp--preset--spacing--50);
padding: var(--wp--preset--spacing--30);
background: #FFFFFF;
border: 1px solid var(--wp--preset--color--border);
}
.comment-meta {
display: flex;
align-items: center;
gap: 15px;
margin-bottom: 15px;
}
.comment-author img {
border-radius: 50%;
}
.fn {
font-weight: 700;
font-style: normal;
}
.comment-metadata {
font-size: 11px;
opacity: 0.5;
text-transform: uppercase;
}
.comment-content {
font-size: 16px;
line-height: 1.6;
}
.reply {
margin-top: 15px;
}
.comment-reply-link {
font-size: 12px;
text-transform: uppercase;
font-weight: 700;
color: var(--wp--preset--color--accent);
text-decoration: none;
}
/* Comment Form */
#commentform {
display: flex;
flex-direction: column;
gap: 20px;
}
#commentform label {
display: block;
font-weight: 700;
font-size: 14px;
margin-bottom: 5px;
}
#commentform input[type="text"],
#commentform input[type="email"],
#commentform textarea {
width: 100%;
padding: 12px;
border: 1px solid var(--wp--preset--color--border);
background: #FFFFFF;
font-family: var(--wp--preset--font-family--body-font);
font-size: 16px;
}
#commentform textarea {
height: 150px;
}
#commentform .submit {
align-self: flex-start;
background-color: var(--wp--preset--color--primary);
color: white;
border: none;
padding: 12px 30px;
font-weight: 700;
text-transform: uppercase;
cursor: pointer;
transition: background 0.3s ease;
}
@media (max-width: 480px) {
#commentform .submit {
width: 100%;
}
}
#commentform .submit:hover {
background-color: var(--wp--preset--color--accent);
}