/*
Theme Name: AutoCar Locksmith Blog
Theme URI: https://automotivecarlocksmith.com/
Author: AutoCar Locksmith
Description: Blog theme that matches the AutoCar Locksmith (Denver) static site. Inherits the blue design system from /style.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: autocar-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 and
   fonts come from /style.css (which defines CSS variables like
   --bl, --ink, --grad). Classes are prefixed acl- to avoid
   clashes with the site's own class names.
   ============================================================ */

/* ---------- Post meta ---------- */
.acl-post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-family:var(--fh);font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--k4);margin:14px 0 0}
.acl-post-meta a{color:var(--bl)}
.acl-post-meta a:hover{text-decoration:underline}
.acl-post-meta .acl-dot{opacity:.5}
.phero .acl-post-meta{color:rgba(255,255,255,.6)}
.phero .acl-post-meta a{color:rgba(255,255,255,.85)}

/* ---------- Article body (prose) ---------- */
.acl-prose{max-width:760px}
.acl-prose > *:first-child{margin-top:0}
.acl-prose p{margin:0 0 18px;color:var(--k2);line-height:1.75}
.acl-prose h2{font-family:var(--fh);font-weight:800;font-size:clamp(24px,3.2vw,34px);color:var(--ink);margin:40px 0 14px;line-height:1.15;letter-spacing:-.02em}
.acl-prose h3{font-family:var(--fh);font-weight:700;font-size:clamp(18px,2.2vw,22px);color:var(--ink);margin:28px 0 10px}
.acl-prose h4{font-family:var(--fh);font-size:15px;font-weight:700;color:var(--ink);margin:22px 0 8px}
.acl-prose a{color:var(--bl);text-decoration:underline;text-underline-offset:2px}
.acl-prose a:hover{color:var(--bl-dk)}
.acl-prose strong{color:var(--ink);font-weight:700}
.acl-prose ul,.acl-prose ol{margin:0 0 18px;padding-left:22px;color:var(--k2);display:grid;gap:8px}
.acl-prose ul li{list-style:disc}
.acl-prose ol li{list-style:decimal}
.acl-prose li{line-height:1.7}
.acl-prose li::marker{color:var(--bl)}
.acl-prose blockquote{margin:24px 0;padding:16px 20px;background:var(--bl-lt);border-left:4px solid var(--bl);border-radius:0 var(--r) var(--r) 0}
.acl-prose blockquote p{margin:0;color:var(--ink)}
.acl-prose figure{margin:26px 0}
.acl-prose img{border-radius:14px;box-shadow:var(--sh)}
.acl-prose figcaption,.acl-prose .wp-caption-text{font-size:13px;color:var(--k4);margin-top:8px;text-align:center}
.acl-prose hr{border:0;border-top:1px solid var(--bdr);margin:34px 0}
.acl-prose code{background:var(--bg2);border:1px solid var(--bdr);border-radius:5px;padding:.12em .4em;font-size:.9em}
.acl-prose pre{background:var(--ink);color:#EAEEF5;padding:18px 20px;border-radius:12px;overflow:auto;margin:24px 0}
.acl-prose pre code{background:none;border:0;color:inherit;padding:0}
.acl-prose table{width:100%;border-collapse:collapse;background:#fff;border:1.5px solid var(--bdr);border-radius:12px;overflow:hidden;box-shadow:var(--sh);margin:24px 0}
.acl-prose thead{background:var(--bl);color:#fff}
.acl-prose th{padding:12px 15px;font-family:var(--fh);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:left}
.acl-prose td{padding:12px 15px;font-size:15px;color:var(--k2);border-bottom:1px solid var(--bdr);vertical-align:top}
.acl-prose .alignleft{float:left;margin:5px 24px 18px 0;max-width:50%}
.acl-prose .alignright{float:right;margin:5px 0 18px 24px;max-width:50%}
.acl-prose .aligncenter{margin-left:auto;margin-right:auto}
@media(max-width:640px){.acl-prose .alignleft,.acl-prose .alignright{float:none;margin:20px 0;max-width:100%}}

/* ---------- Layout with sidebar ---------- */
.acl-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start}
@media(max-width:900px){.acl-layout{grid-template-columns:1fr;gap:36px}}
.acl-sidebar{position:sticky;top:88px;display:grid;gap:18px}
@media(max-width:900px){.acl-sidebar{position:static}}
.acl-widget{background:#fff;border:1.5px solid var(--bdr);border-radius:14px;padding:20px 22px;box-shadow:var(--sh)}
.acl-widget h4{font-family:var(--fh);font-size:15px;font-weight:800;margin-bottom:12px;color:var(--ink)}
.acl-widget ul{list-style:none;display:grid;gap:9px;font-size:14px;margin:0;padding:0}
.acl-widget ul li a{color:var(--k2)}
.acl-widget ul li a:hover{color:var(--bl)}
.acl-widget-cta{background:var(--grad);border:none}
.acl-widget-cta h4{color:#fff}
.acl-widget-cta p{color:rgba(255,255,255,.75);font-size:14px;margin-bottom:14px;line-height:1.6}
.acl-widget-cta .btn{width:100%;justify-content:center}
.acl-widget-cta .acl-alt{margin:10px 0 0;font-size:13px;color:rgba(255,255,255,.7)}
.acl-widget-cta .acl-alt a{color:#fff;text-decoration:underline}

/* ---------- Featured image ---------- */
.acl-hero-img{border-radius:14px;overflow:hidden;box-shadow:var(--sh-lg);margin:0 0 26px}
.acl-hero-img img{width:100%;aspect-ratio:16/8;object-fit:cover}

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

/* Featured (first) post */
.acl-feature{display:grid;grid-template-columns:6fr 5fr;background:#fff;border:1.5px solid var(--bdr);border-radius:16px;overflow:hidden;box-shadow:var(--sh-lg);margin-bottom:26px}
.acl-feature .acl-thumb img{width:100%;height:100%;object-fit:cover;min-height:280px}
.acl-feature-body{padding:32px 34px;display:flex;flex-direction:column;justify-content:center;gap:6px}
.acl-feature-body .acl-pill{font-family:var(--fh);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--bl);background:var(--bl-lt);padding:4px 11px;border-radius:100px;display:inline-block;width:max-content;margin-bottom:8px}
.acl-feature-body h2{font-family:var(--fh);font-weight:800;font-size:clamp(24px,2.8vw,32px);margin:0 0 6px;line-height:1.15}
.acl-feature-body h2 a{color:var(--ink)}
.acl-feature-body h2 a:hover{color:var(--bl)}
.acl-feature-body p{color:var(--k2);margin:8px 0 18px;line-height:1.65}
@media(max-width:820px){.acl-feature{grid-template-columns:1fr}.acl-feature-body{padding:24px}}

/* ---------- Category pills ---------- */
.acl-cats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.acl-cats a{display:inline-block;background:#fff;border:1.5px solid var(--bdr);color:var(--k2);font-family:var(--fh);font-size:12px;font-weight:700;padding:7px 15px;border-radius:100px;transition:all .15s}
.acl-cats a:hover{color:var(--bl);border-color:var(--bl);text-decoration:none}
.acl-cats a[aria-current]{background:var(--bl);color:#fff;border-color:var(--bl)}

/* ---------- Pagination ---------- */
.acl-pager{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:44px;flex-wrap:wrap}
.acl-pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 14px;background:#fff;border:1.5px solid var(--bdr);border-radius:10px;color:var(--ink);font-family:var(--fh);font-weight:700;font-size:14px}
.acl-pager .page-numbers:hover{border-color:var(--bl);color:var(--bl)}
.acl-pager .page-numbers.current{background:var(--bl);color:#fff;border-color:var(--bl)}
.acl-pager .page-numbers.dots{background:none;border:0}

/* ---------- Prev / next ---------- */
.acl-postnav{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:44px;padding-top:28px;border-top:1px solid var(--bdr)}
.acl-postnav a{background:#fff;border:1.5px solid var(--bdr);border-radius:12px;padding:16px 18px;transition:transform .15s,box-shadow .2s,border-color .18s;display:block}
.acl-postnav a:hover{transform:translateY(-2px);box-shadow:var(--sh);border-color:var(--bl-md)}
.acl-postnav .acl-lbl{display:block;font-family:var(--fh);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bl);margin-bottom:6px}
.acl-postnav b{font-family:var(--fh);font-weight:800;font-size:16px;line-height:1.25;display:block;color:var(--ink)}
.acl-postnav .acl-next{text-align:right}
@media(max-width:600px){.acl-postnav{grid-template-columns:1fr}.acl-postnav .acl-next{text-align:left}}

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

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

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

/* ---------- 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:76px}
