/*
Theme Name: Aiken Lawn Pros Blog
Theme URI: https://lawncareserviceaikensc.com/
Author: Aiken Lawn Pros
Description: Blog theme that matches the Aiken Lawn Pros static site. Inherits the green/cream design system from /css/site.css at the site root, so any change to the main site's CSS flows straight into the blog.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: aiken-blog
Tags: blog, custom-menu, featured-images
*/

/* ============================================================
   Adds only what the main site's CSS lacks: article prose,
   post meta, cards, pagination, sidebar, comments. Colours,
   fonts, header, footer, buttons, callouts all come from
   /css/site.css. Classes are prefixed alp- to avoid clashes.
   ============================================================ */

/* ---------- Interior page hero (matches the existing blog post's .phero) ---------- */
.alp-phero{background:linear-gradient(135deg,var(--GD) 0%,var(--GM) 100%);color:#fff;padding:56px 0;position:relative;overflow:hidden}
.alp-phero .wrap{position:relative;z-index:1}
.alp-phero h1{font-family:var(--fd);font-size:clamp(26px,4.5vw,46px);font-weight:900;line-height:1.08;margin-bottom:14px;color:#fff}
.alp-phero .psub{font-size:17px;color:rgba(255,255,255,.85);max-width:620px;margin:0}
.alp-phero .alp-post-meta{color:rgba(255,255,255,.7)}

/* ---------- Post meta line ---------- */
.alp-post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-family:var(--fm);font-size:12px;color:var(--muted);letter-spacing:.3px;margin:14px 0 0}
.alp-post-meta a{color:var(--G)}
.alp-post-meta a:hover{text-decoration:underline}
.alp-post-meta .alp-dot{opacity:.5}

/* ---------- Breadcrumb (matches .breadcrumb but for blog) ---------- */
.alp-crumbs{background:var(--creamD);border-bottom:1px solid var(--border);padding:9px 0}
.alp-crumbs ol{list-style:none;display:flex;gap:5px;align-items:center;flex-wrap:wrap;font-size:12px;font-family:var(--fm);margin:0;padding:0}
.alp-crumbs li+li::before{content:'›';color:var(--muted);margin-right:5px}
.alp-crumbs a{color:var(--G)}
.alp-crumbs li:last-child{color:var(--muted)}

/* ---------- Article body (prose) ---------- */
.alp-prose{max-width:760px}
.alp-prose > *:first-child{margin-top:0}
.alp-prose p{margin:0 0 17px;color:var(--inkM);line-height:1.75}
.alp-prose h2{font-family:var(--fd);font-size:clamp(22px,3vw,32px);font-weight:900;color:var(--ink);margin:38px 0 14px;line-height:1.15}
.alp-prose h3{font-family:var(--fd);font-size:clamp(18px,2vw,22px);font-weight:700;color:var(--G);margin:26px 0 10px}
.alp-prose h4{font-size:16px;font-weight:700;color:var(--ink);margin:20px 0 8px}
.alp-prose a{color:var(--G);text-decoration:underline;text-underline-offset:2px}
.alp-prose a:hover{color:var(--GM)}
.alp-prose strong{color:var(--ink);font-weight:700}
.alp-prose ul,.alp-prose ol{margin:0 0 18px;padding-left:22px;color:var(--inkM);display:grid;gap:7px}
.alp-prose ul li{list-style:disc}
.alp-prose ol li{list-style:decimal}
.alp-prose li::marker{color:var(--G)}
.alp-prose blockquote{margin:22px 0;padding:16px 20px;background:var(--GL);border-left:5px solid var(--G);border-radius:0 var(--r) var(--r) 0}
.alp-prose blockquote p{margin:0;font-size:15px}
.alp-prose figure{margin:24px 0}
.alp-prose img{border-radius:var(--r);box-shadow:var(--sh)}
.alp-prose figcaption,.alp-prose .wp-caption-text{font-size:13px;color:var(--muted);margin-top:7px;text-align:center;font-family:var(--fm)}
.alp-prose hr{border:0;border-top:1px solid var(--border);margin:32px 0}
.alp-prose code{background:var(--goldL);border:1px solid var(--border);border-radius:3px;padding:.12em .38em;font-family:var(--fm);font-size:.9em}
.alp-prose pre{background:var(--GD);color:#e8f5e9;padding:16px 18px;border-radius:var(--r);overflow:auto;margin:22px 0;font-family:var(--fm)}
.alp-prose pre code{background:none;border:0;color:inherit;padding:0}
.alp-prose table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--border);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);margin:22px 0}
.alp-prose thead{background:var(--G);color:#fff}
.alp-prose th{padding:12px 15px;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;text-align:left;font-family:var(--fm)}
.alp-prose td{padding:12px 15px;font-size:15px;color:var(--inkM);border-bottom:1px solid var(--border);vertical-align:top}
.alp-prose .alignleft{float:left;margin:5px 24px 18px 0;max-width:50%}
.alp-prose .alignright{float:right;margin:5px 0 18px 24px;max-width:50%}
.alp-prose .aligncenter{margin-left:auto;margin-right:auto}
@media(max-width:640px){.alp-prose .alignleft,.alp-prose .alignright{float:none;margin:20px 0;max-width:100%}}

/* ---------- Article layout with sidebar ---------- */
.alp-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start}
@media(max-width:900px){.alp-layout{grid-template-columns:1fr;gap:36px}}
.alp-sidebar{position:sticky;top:86px;display:grid;gap:18px}
@media(max-width:900px){.alp-sidebar{position:static}}
.alp-widget{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:20px 22px;box-shadow:var(--sh)}
.alp-widget h4{font-family:var(--fd);font-size:16px;margin-bottom:12px;color:var(--GD)}
.alp-widget ul{list-style:none;display:grid;gap:9px;font-size:14px;margin:0;padding:0}
.alp-widget ul li a{color:var(--inkM)}
.alp-widget ul li a:hover{color:var(--G)}
.alp-widget-cta{background:var(--GD);border:none;color:#fff}
.alp-widget-cta h4{color:#fff}
.alp-widget-cta p{color:rgba(255,255,255,.75);font-size:14px;margin-bottom:14px;line-height:1.6}
.alp-widget-cta .btn-gold{width:100%;justify-content:center}
.alp-widget-cta .alp-alt{margin:10px 0 0;font-size:13px;color:rgba(255,255,255,.7)}
.alp-widget-cta .alp-alt a{color:#7dda7f}

/* ---------- Featured image on single ---------- */
.alp-hero-img{border-radius:var(--r);overflow:hidden;box-shadow:var(--shL);margin:0 0 26px}
.alp-hero-img img{width:100%;aspect-ratio:16/8;object-fit:cover}

/* ---------- Archive cards ---------- */
.alp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:900px){.alp-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.alp-grid{grid-template-columns:1fr}}
.alp-card{background:#fff;border:1px solid var(--border);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);transition:box-shadow .18s,transform .18s;display:flex;flex-direction:column}
.alp-card:hover{box-shadow:var(--shL);transform:translateY(-3px)}
.alp-card .alp-thumb{display:block;overflow:hidden;background:var(--GL)}
.alp-card .alp-thumb img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .35s ease}
.alp-card:hover .alp-thumb img{transform:scale(1.04)}
.alp-card-body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:4px;flex:1}
.alp-card-body h3{font-family:var(--fd);font-size:19px;font-weight:700;margin:2px 0;line-height:1.25}
.alp-card-body h3 a{color:var(--ink)}
.alp-card-body h3 a:hover{color:var(--G)}
.alp-card-body p{font-size:14px;color:var(--muted);margin:6px 0 14px;line-height:1.6}
.alp-card-body .alp-go{margin-top:auto;font-weight:700;font-size:13px;color:var(--G);font-family:var(--fm)}
.alp-card-body .alp-go:hover{text-decoration:underline}
@media(prefers-reduced-motion:reduce){.alp-card,.alp-card .alp-thumb img{transition:none}.alp-card:hover,.alp-card:hover .alp-thumb img{transform:none}}

/* Featured (first) post on index */
.alp-feature{display:grid;grid-template-columns:6fr 5fr;background:#fff;border:1px solid var(--border);border-radius:var(--r);overflow:hidden;box-shadow:var(--shL);margin-bottom:26px}
.alp-feature .alp-thumb img{width:100%;height:100%;object-fit:cover;min-height:270px}
.alp-feature-body{padding:30px 32px;display:flex;flex-direction:column;justify-content:center;gap:5px}
.alp-feature-body .alp-pill{font-family:var(--fm);font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--G);background:var(--GL);padding:4px 11px;border-radius:20px;display:inline-block;width:max-content;margin-bottom:6px}
.alp-feature-body h2{font-family:var(--fd);font-size:clamp(22px,2.6vw,30px);font-weight:900;margin:0 0 6px;line-height:1.15}
.alp-feature-body h2 a{color:var(--ink)}
.alp-feature-body h2 a:hover{color:var(--G)}
.alp-feature-body p{color:var(--inkM);margin:8px 0 18px;line-height:1.65}
@media(max-width:820px){.alp-feature{grid-template-columns:1fr}.alp-feature-body{padding:24px}}

/* ---------- Category filter pills ---------- */
.alp-cats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.alp-cats a{display:inline-block;background:#fff;border:1px solid var(--border);color:var(--inkM);font-family:var(--fm);font-size:12px;font-weight:700;padding:6px 15px;border-radius:20px;transition:all .15s}
.alp-cats a:hover{color:var(--G);border-color:var(--G);text-decoration:none}
.alp-cats a[aria-current]{background:var(--G);color:#fff;border-color:var(--G)}

/* ---------- Pagination ---------- */
.alp-pager{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:42px;flex-wrap:wrap}
.alp-pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 14px;background:#fff;border:1px solid var(--border);border-radius:var(--r);color:var(--ink);font-weight:700;font-size:14px}
.alp-pager .page-numbers:hover{border-color:var(--G);color:var(--G);text-decoration:none}
.alp-pager .page-numbers.current{background:var(--G);color:#fff;border-color:var(--G)}
.alp-pager .page-numbers.dots{background:none;border:0}

/* ---------- Prev / next ---------- */
.alp-postnav{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:42px;padding-top:28px;border-top:1px solid var(--border)}
.alp-postnav a{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:16px 18px;transition:box-shadow .15s,transform .15s;display:block}
.alp-postnav a:hover{box-shadow:var(--sh);transform:translateY(-2px);text-decoration:none}
.alp-postnav .alp-lbl{display:block;font-family:var(--fm);font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.alp-postnav b{font-family:var(--fd);font-weight:700;font-size:16px;line-height:1.25;display:block;color:var(--ink)}
.alp-postnav .alp-next{text-align:right}
@media(max-width:600px){.alp-postnav{grid-template-columns:1fr}.alp-postnav .alp-next{text-align:left}}

/* ---------- Search form ---------- */
.alp-search{display:flex;gap:8px}
.alp-search input[type=search]{flex:1;min-width:0;padding:11px 14px;border:1px solid var(--border);border-radius:var(--r);font:inherit;font-family:var(--fb);outline:none}
.alp-search input[type=search]:focus{border-color:var(--G)}
.alp-search button{background:var(--G);color:#fff;border:none;border-radius:var(--r);padding:11px 20px;font-weight:700;cursor:pointer;font-family:var(--fb)}
.alp-search button:hover{background:var(--GD)}

/* ---------- Empty / 404 ---------- */
.alp-empty{text-align:center;padding:46px 16px;max-width:540px;margin:0 auto}
.alp-empty h2{font-family:var(--fd);margin-bottom:10px}
.alp-empty p{color:var(--muted);margin-bottom:22px}

/* ---------- Comments ---------- */
.alp-comments{margin-top:42px;padding-top:28px;border-top:1px solid var(--border);max-width:760px}
.alp-comments ol{list-style:none;display:grid;gap:16px;margin:0;padding:0}
.alp-comments .comment-body{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:16px 18px}
.alp-comments .comment-meta{font-family:var(--fm);font-size:12px;color:var(--muted);font-weight:700;margin-bottom:6px}
.alp-comment-form{display:grid;gap:12px;max-width:760px;margin-top:22px}
.alp-comment-form input,.alp-comment-form textarea{width:100%;padding:11px 14px;border:1px solid var(--border);border-radius:var(--r);font:inherit;font-family:var(--fb);outline:none}
.alp-comment-form input:focus,.alp-comment-form textarea:focus{border-color:var(--G)}
.alp-comment-form .submit{background:var(--G);color:#fff;border:none;border-radius:var(--r);padding:12px 26px;font-weight:700;cursor:pointer;justify-self:start;font-family:var(--fb)}
.alp-comment-form .submit:hover{background:var(--GD)}

/* ---------- WP core ---------- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:target{scroll-margin-top:80px}
