/* ============================================================
NJMCDIRECT.SHOP — CUSTOM CSS REDESIGN
Astra Theme (Free) — No page builder required
Paste into: WordPress Customizer > Additional CSS
============================================================ */
/* ============================================================
GOOGLE FONTS IMPORT — Inter (body) + Weight 700 (headings)
============================================================ */
@import url(‘https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap’);
/* ============================================================
CSS VARIABLES — Edit these to change colors/fonts globally
============================================================ */
:root {
/* Primary brand color — deep professional blue */
–color-primary: #1a4a7a;
–color-primary-dark: #12355a;
–color-primary-light: #2a6db5;
/* Accent color — warm amber, used sparingly on buttons/links */
–color-accent: #e07b2a;
–color-accent-dark: #c4661f;
–color-accent-light: #f4a05a;
/* Neutral palette */
–color-bg: #f5f7fa;
–color-surface: #ffffff;
–color-border: #dde3ee;
–color-border-light: #edf0f7;
/* Text */
–color-text: #1e2a3a;
–color-text-muted: #5a6880;
–color-text-light: #8a97aa;
/* Typography */
–font-body: ‘Inter’, -apple-system, BlinkMacSystemFont, ‘Segoe UI’, sans-serif;
–font-size-base: 17px;
–line-height-body: 1.75;
/* Spacing & shape */
–radius-sm: 6px;
–radius-md: 10px;
–radius-lg: 16px;
–shadow-card: 0 2px 12px rgba(26, 74, 122, 0.08);
–shadow-card-hover: 0 8px 28px rgba(26, 74, 122, 0.16);
–max-content-width: 760px;
}
/* ============================================================
=== GLOBAL BASE ===
Body font, background, base link color
============================================================ */
body {
font-family: var(–font-body);
font-size: var(–font-size-base);
line-height: var(–line-height-body);
background-color: var(–color-bg);
color: var(–color-text);
-webkit-font-smoothing: antialiased;
}
/* Global link style */
a {
color: var(–color-primary-light);
text-decoration: none;
transition: color 0.2s ease;
}
a:hover {
color: var(–color-accent);
text-decoration: underline;
}
/* Smooth focus for accessibility */
:focus-visible {
outline: 3px solid var(–color-accent-light);
outline-offset: 3px;
border-radius: var(–radius-sm);
}
/* Remove default margin from last child in containers */
.entry-content > *:last-child {
margin-bottom: 0;
}
/* ============================================================
=== HEADER / NAV BAR ===
Top bar background, logo spacing, nav links, hover effects
============================================================ */
/* Header background + shadow */
.site-header,
#masthead,
.ast-primary-header-bar {
background-color: var(–color-primary);
box-shadow: 0 2px 16px rgba(0, 0, 0, 0.18);
}
/* Remove any double borders from Astra’s above-header bar */
.ast-above-header-bar {
background-color: var(–color-primary-dark);
border-bottom: 1px solid rgba(255,255,255,0.1);
}
/* Site title / logo text */
.site-title a,
.ast-site-identity a {
color: #ffffff;
font-weight: 800;
font-size: 22px;
letter-spacing: -0.3px;
text-decoration: none;
}
.site-title a:hover {
color: var(–color-accent-light);
text-decoration: none;
}
/* Site description / tagline below logo */
.site-description,
.ast-site-identity .ast-header-description {
color: rgba(255,255,255,0.65);
font-size: 12px;
letter-spacing: 0.3px;
}
/* Logo area spacing */
.ast-site-identity {
padding: 12px 0;
}
/* NAV MENU ITEMS */
.main-navigation .nav-menu > li > a,
.ast-main-navigation .menu-item > a,
#site-navigation .menu-item > a {
color: rgba(255, 255, 255, 0.88);
font-weight: 500;
font-size: 14px;
letter-spacing: 0.3px;
padding: 10px 16px;
border-radius: var(–radius-sm);
transition: background 0.2s ease, color 0.2s ease;
text-decoration: none;
}
/* Nav hover state */
.main-navigation .nav-menu > li > a:hover,
.ast-main-navigation .menu-item > a:hover,
#site-navigation .menu-item > a:hover {
color: #ffffff;
background-color: rgba(255,255,255,0.14);
text-decoration: none;
}
/* Active/current menu item */
.main-navigation .nav-menu > .current-menu-item > a,
.ast-main-navigation .current-menu-item > a,
.main-navigation .nav-menu > .current-menu-ancestor > a {
color: #ffffff;
background-color: var(–color-accent);
border-radius: var(–radius-sm);
}
/* Dropdown sub-menus */
.main-navigation .nav-menu .sub-menu,
.ast-main-navigation .sub-menu {
background-color: var(–color-surface);
border: 1px solid var(–color-border);
border-radius: var(–radius-md);
box-shadow: var(–shadow-card-hover);
padding: 6px 0;
min-width: 220px;
}
.main-navigation .nav-menu .sub-menu li a,
.ast-main-navigation .sub-menu .menu-item > a {
color: var(–color-text);
font-size: 14px;
padding: 9px 18px;
border-radius: 0;
}
.main-navigation .nav-menu .sub-menu li a:hover,
.ast-main-navigation .sub-menu .menu-item > a:hover {
color: var(–color-primary);
background-color: var(–color-bg);
}
/* Mobile hamburger icon */
.ast-mobile-menu-buttons .menu-toggle,
button.menu-toggle,
.ast-button-wrap .ast-mobile-menu-buttons-minimal {
color: #ffffff;
border: 2px solid rgba(255,255,255,0.5);
border-radius: var(–radius-sm);
padding: 6px 12px;
background: transparent;
font-size: 14px;
font-weight: 600;
cursor: pointer;
transition: border-color 0.2s, background 0.2s;
}
.ast-mobile-menu-buttons .menu-toggle:hover {
border-color: #ffffff;
background: rgba(255,255,255,0.1);
}
/* Mobile nav panel */
.ast-mobile-popup-drawer .ast-mobile-popup-inner,
#ast-mobile-popup .ast-mobile-popup-inner {
background-color: var(–color-primary-dark);
}
.ast-mobile-popup-drawer .main-navigation .menu-item > a {
color: rgba(255,255,255,0.9);
border-bottom: 1px solid rgba(255,255,255,0.1);
padding: 14px 20px;
}
/* ============================================================
=== MAIN CONTENT WRAPPER ===
Page background, container max-width
============================================================ */
.site-content,
#content {
background-color: var(–color-bg);
padding-top: 40px;
padding-bottom: 60px;
}
.ast-container {
max-width: 1200px;
}
/* ============================================================
=== HOMEPAGE / BLOG ARCHIVE — POST CARDS ===
Grid layout, card style, rounded corners, hover lift
============================================================ */
/* Archive grid wrapper */
.ast-row,
.blog .site-main .ast-row {
gap: 24px;
}
/* Individual post card */
.ast-article-post,
.ast-grid-post,
article.type-post {
background-color: var(–color-surface);
border: 1px solid var(–color-border-light);
border-radius: var(–radius-lg);
box-shadow: var(–shadow-card);
overflow: hidden;
transition: transform 0.25s ease, box-shadow 0.25s ease;
margin-bottom: 28px;
}
.ast-article-post:hover,
.ast-grid-post:hover,
article.type-post:hover {
transform: translateY(-5px);
box-shadow: var(–shadow-card-hover);
}
/* Card inner padding */
.ast-article-inner,
article.type-post .entry-summary,
.ast-blog-post-element {
padding: 24px 28px;
}
/* Card featured image */
.ast-article-post .post-thumb img,
.ast-grid-post .post-thumb img,
article.type-post .post-thumb img {
width: 100%;
height: 200px;
object-fit: cover;
border-radius: 0;
display: block;
transition: transform 0.4s ease;
}
.ast-article-post:hover .post-thumb img,
.ast-grid-post:hover .post-thumb img {
transform: scale(1.03);
}
.post-thumb {
overflow: hidden;
}
/* Card title */
.ast-article-post .entry-title a,
.ast-grid-post .entry-title a,
article.type-post .entry-title a {
color: var(–color-text);
font-size: 18px;
font-weight: 700;
line-height: 1.35;
text-decoration: none;
transition: color 0.2s;
}
.ast-article-post .entry-title a:hover,
.ast-grid-post .entry-title a:hover,
article.type-post .entry-title a:hover {
color: var(–color-primary-light);
text-decoration: none;
}
/* Card excerpt */
.ast-article-post .entry-summary p,
.ast-grid-post .entry-summary p,
article.type-post .entry-summary p {
color: var(–color-text-muted);
font-size: 14.5px;
line-height: 1.65;
margin-bottom: 16px;
}
/* Card meta (date, category, author) */
.entry-meta,
.posted-on,
.byline,
.cat-links {
font-size: 12.5px;
color: var(–color-text-light);
margin-bottom: 10px;
font-weight: 500;
letter-spacing: 0.2px;
}
.entry-meta a {
color: var(–color-primary-light);
font-weight: 600;
}
/* “Read More” link on cards */
.ast-article-post .read-more a,
.ast-grid-post .read-more a,
article.type-post .read-more a,
.ast-read-more {
display: inline-block;
background-color: var(–color-primary);
color: #ffffff;
padding: 8px 20px;
border-radius: 50px;
font-size: 13.5px;
font-weight: 600;
text-decoration: none;
transition: background 0.2s ease, transform 0.15s ease;
margin-top: 4px;
}
.ast-article-post .read-more a:hover,
article.type-post .read-more a:hover,
.ast-read-more:hover {
background-color: var(–color-accent);
color: #ffffff;
text-decoration: none;
transform: translateX(3px);
}
/* Page/archive title (e.g. “Guides”) */
.page-header .page-title,
.ast-archive-title {
font-size: 28px;
font-weight: 800;
color: var(–color-primary);
margin-bottom: 28px;
padding-bottom: 14px;
border-bottom: 3px solid var(–color-border);
}
/* ============================================================
=== SINGLE POST / ARTICLE PAGE ===
Readable width, typography, headings, featured image
============================================================ */
/* Constrain article body to readable width */
.single .entry-content,
.page .entry-content {
max-width: var(–max-content-width);
margin-left: auto;
margin-right: auto;
font-size: var(–font-size-base);
line-height: var(–line-height-body);
color: var(–color-text);
}
/* Article card/wrapper on single post */
.single article.type-post,
.single article.type-page {
background-color: var(–color-surface);
border-radius: var(–radius-lg);
box-shadow: var(–shadow-card);
padding: 40px 48px;
border: 1px solid var(–color-border-light);
margin-bottom: 32px;
}
/* Single post H1 (entry title) */
.single .entry-title,
.page .entry-title {
font-size: clamp(24px, 4vw, 34px);
font-weight: 800;
color: var(–color-text);
line-height: 1.25;
letter-spacing: -0.5px;
margin-bottom: 16px;
}
/* Single post meta row */
.single .entry-meta {
display: flex;
flex-wrap: wrap;
gap: 10px 20px;
align-items: center;
padding: 12px 0 24px;
border-bottom: 1px solid var(–color-border-light);
margin-bottom: 30px;
font-size: 13px;
color: var(–color-text-light);
}
/* Featured image on single post */
.single .ast-featured-image,
.single .post-thumbnail,
.single .featured-image {
border-radius: var(–radius-md);
overflow: hidden;
margin-bottom: 32px;
box-shadow: var(–shadow-card);
}
.single .ast-featured-image img,
.single .post-thumbnail img,
.single .featured-image img {
width: 100%;
height: auto;
display: block;
border-radius: var(–radius-md);
}
/* ── CONTENT HEADINGS ── */
.entry-content h2 {
font-size: clamp(20px, 3vw, 24px);
font-weight: 700;
color: var(–color-primary);
margin-top: 48px;
margin-bottom: 16px;
padding-bottom: 10px;
border-bottom: 2px solid var(–color-border);
line-height: 1.3;
}
.entry-content h3 {
font-size: clamp(17px, 2.5vw, 20px);
font-weight: 700;
color: var(–color-text);
margin-top: 36px;
margin-bottom: 12px;
padding-left: 14px;
border-left: 4px solid var(–color-accent);
line-height: 1.35;
}
.entry-content h4 {
font-size: 17px;
font-weight: 600;
color: var(–color-text);
margin-top: 28px;
margin-bottom: 10px;
}
/* Body paragraphs spacing */
.entry-content p {
margin-bottom: 20px;
}
/* Inline code */
.entry-content code {
background-color: var(–color-bg);
border: 1px solid var(–color-border);
border-radius: 4px;
padding: 2px 7px;
font-size: 0.88em;
color: var(–color-primary-dark);
font-family: ‘SFMono-Regular’, Consolas, ‘Liberation Mono’, Menlo, monospace;
}
/* Lists */
.entry-content ul,
.entry-content ol {
padding-left: 24px;
margin-bottom: 20px;
}
.entry-content ul li,
.entry-content ol li {
margin-bottom: 8px;
line-height: 1.7;
}
.entry-content ul {
list-style: none;
padding-left: 0;
}
.entry-content ul li {
padding-left: 22px;
position: relative;
}
.entry-content ul li::before {
content: ‘→’;
position: absolute;
left: 0;
color: var(–color-primary-light);
font-weight: 700;
font-size: 14px;
top: 2px;
}
/* Strong / bold */
.entry-content strong,
.entry-content b {
font-weight: 700;
color: var(–color-text);
}
/* ── BLOCKQUOTES ── */
.entry-content blockquote,
blockquote {
background-color: #eef4fb;
border-left: 5px solid var(–color-primary-light);
border-radius: 0 var(–radius-md) var(–radius-md) 0;
padding: 20px 24px;
margin: 32px 0;
color: var(–color-text);
font-style: normal;
font-size: 16px;
}
.entry-content blockquote p {
margin-bottom: 0;
font-size: 16px;
line-height: 1.7;
}
.entry-content blockquote cite {
display: block;
margin-top: 10px;
font-size: 13px;
color: var(–color-text-muted);
font-style: normal;
}
/* ── TABLES ── */
.entry-content table,
.wp-block-table table {
width: 100%;
border-collapse: collapse;
border-radius: var(–radius-md);
overflow: hidden;
box-shadow: var(–shadow-card);
margin: 28px 0;
font-size: 15px;
}
.entry-content table thead,
.wp-block-table table thead {
background-color: var(–color-primary);
color: #ffffff;
}
.entry-content table thead th,
.wp-block-table table thead th {
padding: 14px 18px;
text-align: left;
font-weight: 600;
font-size: 14px;
letter-spacing: 0.3px;
border: none;
}
.entry-content table tbody tr,
.wp-block-table table tbody tr {
border-bottom: 1px solid var(–color-border-light);
transition: background 0.15s;
}
.entry-content table tbody tr:nth-child(even),
.wp-block-table table tbody tr:nth-child(even) {
background-color: #f7f9fd;
}
.entry-content table tbody tr:hover,
.wp-block-table table tbody tr:hover {
background-color: #eef4fb;
}
.entry-content table tbody td,
.wp-block-table table tbody td {
padding: 12px 18px;
color: var(–color-text);
border: none;
}
.wp-block-table figure {
margin: 0;
overflow-x: auto;
}
/* ── FAQ / INFO BOXES ── */
/* Targets headings that introduce FAQ sections */
.entry-content h2:has(+ h3),
.entry-content .wp-block-group {
/* will be picked up where applicable */
}
/* Style H3s that follow an H2 containing “FAQ” */
.entry-content h2 ~ h3 {
background-color: var(–color-bg);
border: 1px solid var(–color-border);
border-left: 4px solid var(–color-primary-light);
border-radius: 0 var(–radius-sm) var(–radius-sm) 0;
padding: 12px 16px;
margin-top: 20px;
font-size: 16px;
font-weight: 600;
color: var(–color-primary-dark);
}
/* Disclaimer / notice paragraphs (italic em text) */
.entry-content p > em:only-child,
.entry-content p em {
display: block;
background-color: #fff8ec;
border: 1px solid #f0d28a;
border-left: 4px solid var(–color-accent);
border-radius: 0 var(–radius-sm) var(–radius-sm) 0;
padding: 12px 16px;
font-size: 13.5px;
color: var(–color-text-muted);
font-style: normal;
line-height: 1.6;
margin-top: 40px;
}
/* Post navigation (prev/next links) */
.post-navigation {
background-color: var(–color-surface);
border: 1px solid var(–color-border-light);
border-radius: var(–radius-md);
padding: 24px 28px;
margin-top: 32px;
box-shadow: var(–shadow-card);
}
.post-navigation .nav-links {
display: flex;
justify-content: space-between;
gap: 16px;
flex-wrap: wrap;
}
.post-navigation .nav-previous a,
.post-navigation .nav-next a {
color: var(–color-primary-light);
font-weight: 600;
font-size: 14px;
text-decoration: none;
}
.post-navigation .nav-previous a:hover,
.post-navigation .nav-next a:hover {
color: var(–color-accent);
}
/* ============================================================
=== SIDEBAR ===
Widget box styling, spacing, titles, borders
============================================================ */
.secondary,
#secondary,
.widget-area {
background-color: transparent;
}
/* Each widget box */
.widget,
.sidebar .widget {
background-color: var(–color-surface);
border: 1px solid var(–color-border-light);
border-radius: var(–radius-md);
padding: 22px 24px;
margin-bottom: 24px;
box-shadow: var(–shadow-card);
}
/* Widget title */
.widget-title,
.widget .widget-title,
.widgettitle {
font-size: 14px;
font-weight: 700;
color: var(–color-primary);
text-transform: uppercase;
letter-spacing: 0.8px;
margin-bottom: 16px;
padding-bottom: 10px;
border-bottom: 2px solid var(–color-border);
}
/* Widget list items */
.widget ul li {
border-bottom: 1px solid var(–color-border-light);
padding: 8px 0;
font-size: 14px;
color: var(–color-text);
}
.widget ul li:last-child {
border-bottom: none;
}
.widget ul li a {
color: var(–color-text);
font-weight: 500;
text-decoration: none;
transition: color 0.2s;
}
.widget ul li a:hover {
color: var(–color-primary-light);
}
/* Search widget */
.widget_search .search-form {
display: flex;
gap: 0;
}
.widget_search .search-field {
flex: 1;
padding: 9px 14px;
border: 1px solid var(–color-border);
border-radius: var(–radius-sm) 0 0 var(–radius-sm);
font-size: 14px;
color: var(–color-text);
background: var(–color-bg);
border-right: none;
outline: none;
}
.widget_search .search-submit {
background-color: var(–color-primary);
color: #ffffff;
border: none;
padding: 9px 16px;
border-radius: 0 var(–radius-sm) var(–radius-sm) 0;
font-size: 14px;
font-weight: 600;
cursor: pointer;
transition: background 0.2s;
}
.widget_search .search-submit:hover {
background-color: var(–color-accent);
}
/* ============================================================
=== BUTTONS & CALL-TO-ACTION LINKS ===
Primary button, accent button, hover states
============================================================ */
/* WordPress block button */
.wp-block-button .wp-block-button__link,
.wp-block-button__link {
background-color: var(–color-primary);
color: #ffffff;
border-radius: 50px;
padding: 12px 28px;
font-size: 15px;
font-weight: 600;
letter-spacing: 0.2px;
text-decoration: none;
border: none;
transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
box-shadow: 0 4px 14px rgba(26,74,122,0.25);
display: inline-block;
}
.wp-block-button .wp-block-button__link:hover,
.wp-block-button__link:hover {
background-color: var(–color-accent);
color: #ffffff;
text-decoration: none;
transform: translateY(-2px);
box-shadow: 0 6px 20px rgba(224,123,42,0.3);
}
/* Outlined button variant */
.wp-block-button.is-style-outline .wp-block-button__link {
background-color: transparent;
color: var(–color-primary);
border: 2px solid var(–color-primary);
box-shadow: none;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
background-color: var(–color-primary);
color: #ffffff;
}
/* Astra theme default button */
.ast-button,
button,
input[type=”submit”],
input[type=”button”],
input[type=”reset”] {
background-color: var(–color-primary);
color: #ffffff;
border-radius: var(–radius-sm);
border: none;
padding: 10px 24px;
font-family: var(–font-body);
font-weight: 600;
font-size: 14px;
cursor: pointer;
transition: background 0.2s, transform 0.15s;
}
button:hover,
input[type=”submit”]:hover {
background-color: var(–color-accent);
transform: translateY(-1px);
}
/* ============================================================
=== FOOTER ===
Background, text color, link colors, spacing
============================================================ */
/* Footer wrapper */
.site-footer,
#colophon {
background-color: var(–color-primary-dark);
color: rgba(255,255,255,0.75);
margin-top: 60px;
}
/* Footer widgets area */
.ast-primary-footer-area,
.footer-widget-area,
.ast-footer-widgets-area {
background-color: var(–color-primary-dark);
border-top: 1px solid rgba(255,255,255,0.1);
padding: 48px 0 32px;
}
/* Footer widget titles */
.site-footer .widget-title,
.footer-widget-area .widget-title {
color: #ffffff;
font-size: 13px;
letter-spacing: 1px;
text-transform: uppercase;
border-bottom-color: rgba(255,255,255,0.15);
}
/* Footer widget text and links */
.site-footer .widget,
.footer-widget-area .widget {
background: transparent;
border: none;
box-shadow: none;
padding: 0;
margin-bottom: 32px;
}
.site-footer .widget ul li {
border-bottom-color: rgba(255,255,255,0.08);
}
.site-footer .widget ul li a,
.footer-widget-area a {
color: rgba(255,255,255,0.7);
font-size: 14px;
text-decoration: none;
transition: color 0.2s;
}
.site-footer .widget ul li a:hover,
.footer-widget-area a:hover {
color: var(–color-accent-light);
text-decoration: none;
}
/* Footer bottom bar (copyright) */
.ast-footer-copyright,
.ast-secondary-footer-area,
.footer-copyright {
background-color: rgba(0,0,0,0.25);
border-top: 1px solid rgba(255,255,255,0.08);
padding: 18px 0;
text-align: center;
font-size: 13px;
color: rgba(255,255,255,0.5);
}
.ast-footer-copyright a {
color: rgba(255,255,255,0.65);
text-decoration: none;
transition: color 0.2s;
}
.ast-footer-copyright a:hover {
color: var(–color-accent-light);
}
/* ============================================================
=== PAGINATION ===
Page number links on archive pages
============================================================ */
.pagination .page-numbers,
.ast-pagination .page-numbers,
nav.navigation .page-numbers {
display: inline-flex;
align-items: center;
justify-content: center;
width: 38px;
height: 38px;
border-radius: 50%;
border: 1px solid var(–color-border);
background-color: var(–color-surface);
color: var(–color-text);
font-size: 14px;
font-weight: 600;
text-decoration: none;
transition: background 0.2s, color 0.2s, border-color 0.2s;
margin: 0 3px;
}
.pagination .page-numbers.current,
nav.navigation .page-numbers.current {
background-color: var(–color-primary);
color: #ffffff;
border-color: var(–color-primary);
}
.pagination .page-numbers:hover,
nav.navigation .page-numbers:hover {
background-color: var(–color-primary-light);
color: #ffffff;
border-color: var(–color-primary-light);
text-decoration: none;
}
/* ============================================================
=== CATEGORY / TAG LABEL PILLS ===
Small colored labels on cards and posts
============================================================ */
.cat-links a,
.tags-links a,
.entry-meta .cat-links a {
display: inline-block;
background-color: #dceefb;
color: var(–color-primary);
border-radius: 50px;
padding: 3px 12px;
font-size: 12px;
font-weight: 600;
text-decoration: none;
text-transform: uppercase;
letter-spacing: 0.5px;
transition: background 0.2s, color 0.2s;
}
.cat-links a:hover,
.tags-links a:hover {
background-color: var(–color-primary);
color: #ffffff;
text-decoration: none;
}
/* ============================================================
=== 404 & SEARCH RESULTS PAGE ===
============================================================ */
.error-404 .page-title,
.not-found .page-title {
color: var(–color-primary);
font-size: 28px;
font-weight: 800;
}
.no-results .page-title {
color: var(–color-text);
font-size: 24px;
}
/* ============================================================
=== MOBILE RESPONSIVE ===
Breakpoints: < 768px (mobile), 768–1024px (tablet)
============================================================ */
/* ── TABLET (768px – 1024px) ── */
@media (max-width: 1024px) {
:root {
--font-size-base: 16px;
}
.single article.type-post,
.single article.type-page {
padding: 32px 36px;
}
.ast-container {
max-width: 100%;
padding-left: 24px;
padding-right: 24px;
}
}
/* ── MOBILE (< 768px) ── */
@media (max-width: 767px) {
:root {
--font-size-base: 16px;
--max-content-width: 100%;
}
/* Header */
.site-header,
.ast-primary-header-bar {
padding: 0 16px;
}
.site-title a {
font-size: 18px;
}
/* Single post card */
.single article.type-post,
.single article.type-page {
padding: 24px 20px;
border-radius: var(--radius-md);
}
.single .entry-title {
font-size: 24px;
}
/* Content headings */
.entry-content h2 {
font-size: 20px;
margin-top: 36px;
}
.entry-content h3 {
font-size: 17px;
margin-top: 28px;
}
/* Blog cards */
.ast-article-post,
article.type-post {
margin-bottom: 20px;
border-radius: var(--radius-md);
}
.ast-article-inner {
padding: 18px 20px;
}
/* Tables — horizontal scroll on mobile */
.entry-content .wp-block-table,
.entry-content table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
font-size: 14px;
}
/* Footer */
.ast-primary-footer-area {
padding: 36px 20px 24px;
}
.ast-footer-copyright {
font-size: 12px;
padding: 14px 16px;
}
/* Hide sidebar on mobile — content goes full width */
#secondary,
.secondary,
.widget-area {
display: none;
}
#primary,
.content-area {
width: 100%;
max-width: 100%;
float: none;
}
/* Post navigation stack on mobile */
.post-navigation .nav-links {
flex-direction: column;
}
/* Buttons full width on mobile */
.wp-block-buttons {
flex-direction: column;
align-items: stretch;
}
.wp-block-button .wp-block-button__link {
width: 100%;
text-align: center;
}
/* Site content padding */
.site-content,
#content {
padding-top: 24px;
padding-bottom: 40px;
}
}
/* ── SMALL MOBILE (< 480px) ── */
@media (max-width: 479px) {
:root {
--font-size-base: 15.5px;
}
.single article.type-post,
.single article.type-page {
padding: 20px 16px;
}
.entry-content h2 {
font-size: 19px;
}
.entry-content h3 {
font-size: 16px;
}
.single .entry-title {
font-size: 22px;
}
}