/*
Theme Name: Alared
Theme URI: https://alaredtechnologies.com/
Author: Alared Technologies
Description: Editorial block theme for Alared Technologies: tech guides, product comparisons and PC build advice. Includes comparison tables, verdict boxes, table of contents, ad slots and an AI draft review workflow.
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
Version: 0.1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: alared
Tags: blog, news, block-patterns, full-site-editing, wide-blocks
*/

/* Most styling lives in theme.json. This file covers components theme.json cannot express. */

:root {
	--al-radius: var(--wp--custom--radius--md, 12px);
	--al-radius-lg: var(--wp--custom--radius--lg, 18px);
	--al-shadow: var(--wp--custom--shadow--card);
	--al-line: var(--wp--preset--color--line);
}

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
:where(h2, h3)[id] { scroll-margin-top: 90px; }
img { height: auto; }
.screen-reader-text:focus { clip: auto; }

/* ---------- Header ---------- */
.al-header { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.92); backdrop-filter: saturate(180%) blur(10px); border-bottom: 1px solid var(--al-line); }
.admin-bar .al-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .al-header { top: 0; position: relative; } }
.al-logo { display: inline-flex; align-items: center; line-height: 0; text-decoration: none !important; }
.al-logo picture, .al-logo img { display: block; height: 32px; width: auto; }
.al-footer .al-logo picture, .al-footer .al-logo img { height: 30px; }
.al-header .wp-block-navigation a { text-decoration: none; }
.al-header .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--accent); }
.al-header .wp-block-navigation__submenu-container { border-radius: var(--al-radius) !important; border: 1px solid var(--al-line) !important; box-shadow: var(--al-shadow); padding: .4rem !important; min-width: 220px !important; }
.al-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: .45rem .7rem !important; border-radius: 8px; }
.al-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: var(--wp--preset--color--surface); }
.al-header .wp-block-search__input { border-radius: 999px; border-color: var(--al-line); padding-left: .9rem; }
.al-header .wp-block-search__button { border-radius: 999px; background: transparent; color: var(--wp--preset--color--ink); border: 1px solid var(--al-line); padding: .45rem; }
.al-header .wp-block-search__button:hover { border-color: var(--wp--preset--color--accent); color: var(--wp--preset--color--accent); }

/* ---------- Eyebrows, chips, badges ---------- */
.al-eyebrow { display: inline-flex; align-items: center; gap: .45rem; font-size: var(--wp--preset--font-size--xs); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--wp--preset--color--accent-dark); }
.al-eyebrow::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--wp--preset--color--accent); }
.al-chips { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.al-chips p { margin: 0; }
.al-chip a, a.al-chip { display: inline-block; padding: .3rem .8rem; border: 1px solid var(--al-line); border-radius: 999px; background: #fff; color: var(--wp--preset--color--ink-soft); font-size: var(--wp--preset--font-size--xs); font-weight: 500; text-decoration: none; transition: border-color .15s, color .15s; }
.al-chip a:hover, a.al-chip:hover { border-color: var(--wp--preset--color--accent); color: var(--wp--preset--color--accent-dark); }
.al-chips__label { font-size: var(--wp--preset--font-size--xs); font-weight: 600; color: var(--wp--preset--color--muted); }

/* ---------- Hero ---------- */
.al-hero { background:
	radial-gradient(900px 400px at 85% -10%, rgba(217,59,43,.10), transparent 60%),
	radial-gradient(700px 360px at -10% 110%, rgba(14,19,32,.06), transparent 60%),
	var(--wp--preset--color--surface); border-bottom: 1px solid var(--al-line); }
.al-hero h1 { font-size: var(--wp--preset--font-size--hero); letter-spacing: -.03em; line-height: 1.04; }
.al-hero h1 em { font-style: normal; color: var(--wp--preset--color--accent); }
.al-hero .wp-block-search__inside-wrapper { background: #fff; border: 1px solid var(--al-line) !important; border-radius: 999px; padding: 6px !important; box-shadow: var(--al-shadow); }
.al-hero .wp-block-search__input { border: 0 !important; padding: .6rem 1rem; font-size: 1rem; background: transparent; }
.al-hero .wp-block-search__input:focus { outline: none; }
.al-hero .wp-block-search__inside-wrapper:focus-within { border-color: var(--wp--preset--color--accent) !important; }
.al-hero .wp-block-search__button { border-radius: 999px; margin-left: 0; padding: .65rem 1.4rem; }
.al-stats { display: flex; gap: clamp(1.25rem, 4vw, 2.75rem); flex-wrap: wrap; }
.al-stats p { margin: 0; line-height: 1.25; }
.al-stats strong { display: block; font-family: var(--wp--preset--font-family--display); font-size: 1.5rem; }
.al-stats span { font-size: var(--wp--preset--font-size--xs); color: var(--wp--preset--color--muted); }

/* Hero visual: mock comparison card */
.al-mock { position: relative; max-width: 440px; margin-inline: auto; }
.al-mock__card { background: #fff; border: 1px solid var(--al-line); border-radius: var(--al-radius-lg); box-shadow: 0 20px 50px rgba(14,19,32,.12); padding: 1.25rem; }
.al-mock__head { display: flex; justify-content: space-between; align-items: center; font-size: .78rem; color: var(--wp--preset--color--muted); margin-bottom: .9rem; }
.al-mock__head b { color: var(--wp--preset--color--ink); font-size: .95rem; font-family: var(--wp--preset--font-family--display); }
.al-mock__tag { background: var(--wp--preset--color--accent-tint); color: var(--wp--preset--color--accent-dark); padding: .2rem .55rem; border-radius: 999px; font-weight: 600; }
.al-mock table { width: 100%; border-collapse: collapse; font-size: .8rem; }
.al-mock th, .al-mock td { padding: .55rem .4rem; border-bottom: 1px solid var(--al-line); text-align: left; }
.al-mock th { color: var(--wp--preset--color--muted); font-weight: 500; }
.al-mock td:first-child { color: var(--wp--preset--color--ink-soft); }
.al-mock .win { color: var(--wp--preset--color--good); font-weight: 600; }
.al-mock__bar { height: 6px; border-radius: 999px; background: var(--wp--preset--color--line); overflow: hidden; margin-top: .3rem; }
.al-mock__bar i { display: block; height: 100%; background: var(--wp--preset--color--accent); border-radius: 999px; }
.al-mock__float { position: absolute; background: #fff; border: 1px solid var(--al-line); border-radius: 14px; box-shadow: var(--al-shadow); padding: .6rem .8rem; font-size: .75rem; line-height: 1.35; }
.al-mock__float b { display: block; font-size: .85rem; }
.al-mock__float--a { left: -34px; bottom: -38px; }
.al-mock__float--b { right: -30px; top: 42%; }
.al-mock__float--b b { color: var(--wp--preset--color--good); }
@media (max-width: 900px) { .al-mock__float--a { left: 6px; } .al-mock__float--b { right: 6px; } }

/* ---------- Section headings ---------- */
.al-section-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem; flex-wrap: wrap; }
.al-section-head h2 { margin: 0; }
.al-section-head p { margin: .25rem 0 0; color: var(--wp--preset--color--muted); }
.al-more a { font-weight: 600; font-size: var(--wp--preset--font-size--sm); text-decoration: none; }
.al-more a::after { content: " \2192"; }

/* ---------- Category tiles ---------- */
.al-tiles { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
@media (max-width: 1000px) { .al-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .al-tiles { grid-template-columns: 1fr; } }
.al-tile { position: relative; background: #fff; border: 1px solid var(--al-line); border-radius: var(--al-radius); padding: 1.2rem 1.2rem 1.1rem; transition: border-color .15s, box-shadow .15s, transform .15s; margin: 0 !important; }
.al-tile:hover { border-color: #cfd4dd; box-shadow: var(--al-shadow); transform: translateY(-2px); }
.al-tile__icon { width: 40px; height: 40px; border-radius: 10px; background: var(--wp--preset--color--accent-tint); color: var(--wp--preset--color--accent-dark); display: grid; place-items: center; margin-bottom: .8rem; }
.al-tile__icon svg { width: 22px; height: 22px; }
.al-tile h3 { margin: 0 0 .25rem; font-size: 1.05rem; }
.al-tile h3 a { color: inherit; text-decoration: none; }
.al-tile h3 a::after { content: ""; position: absolute; inset: 0; }
.al-tile p { margin: 0; font-size: var(--wp--preset--font-size--xs); color: var(--wp--preset--color--muted); line-height: 1.5; }

/* ---------- Format cards (dark band) ---------- */
.al-band-dark { background: var(--wp--preset--color--night); color: #D7DBE4; }
.al-band-dark h2, .al-band-dark h3 { color: #fff; }
.al-band-dark .al-section-head p { color: #9AA3B2; }
.al-formats { display: grid !important; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1rem; }
@media (max-width: 1000px) { .al-formats { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 520px) { .al-formats { grid-template-columns: 1fr; } }
.al-format { position: relative; border: 1px solid rgba(255,255,255,.1); border-radius: var(--al-radius); padding: 1.3rem; background: rgba(255,255,255,.03); margin: 0 !important; transition: background .15s, border-color .15s; }
.al-format:hover { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.22); }
.al-format__n { font-family: var(--wp--preset--font-family--mono); font-size: .75rem; color: var(--wp--preset--color--accent-bright); }
.al-format h3 { margin: .4rem 0 .35rem; font-size: 1.1rem; }
.al-format h3 a { color: #fff; text-decoration: none; }
.al-format h3 a::after { content: ""; position: absolute; inset: 0; }
.al-format p { margin: 0; font-size: var(--wp--preset--font-size--sm); color: #9AA3B2; line-height: 1.55; }

/* ---------- Post cards (query loops) ---------- */
.al-cards .wp-block-post-template { gap: 1.5rem; }
.al-card { position: relative; height: 100%; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--al-line); border-radius: var(--al-radius); overflow: hidden; transition: box-shadow .15s, transform .15s, border-color .15s; }
.al-card:hover { box-shadow: var(--al-shadow); transform: translateY(-2px); border-color: #cfd4dd; }
.al-card .wp-block-post-featured-image { margin: 0; aspect-ratio: 1200 / 630; overflow: hidden; background: var(--wp--preset--color--surface); }
.al-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.al-card__body { padding: 1rem 1.1rem 1.15rem !important; display: flex; flex-direction: column; gap: .45rem; flex: 1; }
.al-card__body > * { margin: 0 !important; }
.al-card .wp-block-post-title { font-size: 1.08rem; line-height: 1.3; }
.al-card .wp-block-post-title a::after { content: ""; position: absolute; inset: 0; }
.al-card .wp-block-post-excerpt { font-size: var(--wp--preset--font-size--sm); color: var(--wp--preset--color--ink-soft); line-height: 1.55; }
.al-card .wp-block-post-excerpt__excerpt { margin: 0; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.al-card .wp-block-post-terms a { color: var(--wp--preset--color--accent-dark); text-decoration: none; position: relative; z-index: 1; }
.al-card__meta { margin-top: auto !important; padding-top: .3rem; }
.al-card--row { flex-direction: row; }
.al-card--row .wp-block-post-featured-image { width: 38%; flex: none; aspect-ratio: auto; }
@media (max-width: 600px) { .al-card--row { flex-direction: column; } .al-card--row .wp-block-post-featured-image { width: 100%; aspect-ratio: 1200/630; } }

/* Lead story */
.al-lead .al-card .wp-block-post-title { font-size: var(--wp--preset--font-size--xl); }

/* Pagination */
.wp-block-query-pagination { gap: .5rem; font-size: var(--wp--preset--font-size--sm); }
.wp-block-query-pagination a, .wp-block-query-pagination .current { padding: .35rem .75rem; border: 1px solid var(--al-line); border-radius: 8px; text-decoration: none; }
.wp-block-query-pagination .current { background: var(--wp--preset--color--ink); color: #fff; border-color: var(--wp--preset--color--ink); }

/* ---------- Trust band ---------- */
.al-steps { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1.25rem; counter-reset: step; }
@media (max-width: 800px) { .al-steps { grid-template-columns: 1fr; } }
.al-step { margin: 0 !important; padding-top: 1rem; border-top: 2px solid var(--wp--preset--color--ink); }
.al-step h3 { font-size: 1.05rem; margin: 0 0 .35rem; }
.al-step h3::before { counter-increment: step; content: "0" counter(step) "  "; color: var(--wp--preset--color--accent); font-family: var(--wp--preset--font-family--mono); font-size: .85rem; }
.al-step p { margin: 0; font-size: var(--wp--preset--font-size--sm); color: var(--wp--preset--color--ink-soft); }

/* ---------- Single article ---------- */
.al-breadcrumbs { font-size: var(--wp--preset--font-size--xs); color: var(--wp--preset--color--muted); }
.al-breadcrumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .35rem; }
.al-breadcrumbs li + li::before { content: "/"; margin-right: .35rem; color: #b8bec9; }
.al-breadcrumbs a { color: inherit; text-decoration: none; }
.al-breadcrumbs a:hover { color: var(--wp--preset--color--accent-dark); }
.al-badges { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; }
.al-badges .wp-block-post-terms { margin: 0; }
.al-badges .wp-block-post-terms a { display: inline-block; padding: .2rem .6rem; border-radius: 999px; background: var(--wp--preset--color--accent-tint); color: var(--wp--preset--color--accent-dark); text-decoration: none; }
.al-badges .taxonomy-alared_format a { background: var(--wp--preset--color--ink); color: #fff; }
.al-dek { font-size: var(--wp--preset--font-size--lg); color: var(--wp--preset--color--ink-soft); line-height: 1.55; }
.al-dek p { margin: 0; }
.al-byline { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .9rem; font-size: var(--wp--preset--font-size--xs); color: var(--wp--preset--color--muted); }
.al-byline strong { color: var(--wp--preset--color--ink); font-weight: 600; }
.al-byline .al-reviewed { display: inline-flex; align-items: center; gap: .3rem; color: var(--wp--preset--color--good); font-weight: 600; }
.al-byline .al-reviewed svg { width: 14px; height: 14px; }
.al-article-hero .wp-block-post-featured-image img { border-radius: var(--al-radius-lg); border: 1px solid var(--al-line); }

.al-article-grid { max-width: 1140px; display: grid !important; grid-template-columns: minmax(0, 1fr) 280px; gap: clamp(2rem, 4vw, 3.5rem); align-items: start; }
@media (max-width: 1024px) { .al-article-grid { grid-template-columns: minmax(0, 1fr); } .al-aside { display: none; } }
.al-article-grid > * { min-width: 0; }
@media (max-width: 600px) { .al-mock__float--b { display: none; } .wp-block-table table { min-width: 600px; } .wp-block-table.is-style-compare tbody td:first-child { white-space: normal; } .wp-block-table table { font-size: .8rem; } .wp-block-table th, .wp-block-table td { padding: .55rem .6rem; } }
.al-aside { position: sticky; top: 90px; margin: 0 !important; }
.admin-bar .al-aside { top: 122px; }

.al-toc { border: 1px solid var(--al-line); border-radius: var(--al-radius); padding: 1rem 1.1rem; background: #fff; }
.al-toc__title { font-size: var(--wp--preset--font-size--xs); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--wp--preset--color--muted); margin: 0 0 .6rem; }
.al-toc ol { list-style: none; margin: 0; padding: 0; font-size: var(--wp--preset--font-size--sm); line-height: 1.4; }
.al-toc li { margin: 0; }
.al-toc a { display: block; padding: .35rem .6rem; border-left: 2px solid var(--al-line); color: var(--wp--preset--color--ink-soft); text-decoration: none; }
.al-toc a:hover, .al-toc a.is-active { border-left-color: var(--wp--preset--color--accent); color: var(--wp--preset--color--ink); background: var(--wp--preset--color--surface); }
.al-toc--inline { margin-bottom: 1.5rem; }
@media (min-width: 1025px) { .al-toc--inline { display: none; } }
.al-toc--inline details summary { cursor: pointer; font-weight: 600; font-size: var(--wp--preset--font-size--sm); }

.al-article .wp-block-post-content > p:first-child { font-size: 1.12rem; }
.al-article .wp-block-post-content a { text-underline-offset: 2px; text-decoration-thickness: 1px; }
.al-article .wp-block-post-content ul, .al-article .wp-block-post-content ol { padding-left: 1.3rem; }
.al-article .wp-block-post-content li { margin-bottom: .35rem; }
.al-article .wp-block-post-content li::marker { color: var(--wp--preset--color--accent); }

/* Tables: comparison + spec */
.wp-block-table { overflow-x: auto; }
.wp-block-table table { border-collapse: separate; border-spacing: 0; width: 100%; border: 1px solid var(--al-line); border-radius: var(--al-radius); overflow: hidden; }
.wp-block-table th, .wp-block-table td { border: 0; border-bottom: 1px solid var(--al-line); padding: .7rem .85rem; text-align: left; vertical-align: top; }
.wp-block-table thead { border-bottom: 0; }
.wp-block-table thead th { background: var(--wp--preset--color--ink); color: #fff; font-weight: 600; font-size: var(--wp--preset--font-size--xs); letter-spacing: .02em; }
.wp-block-table tbody tr:last-child td { border-bottom: 0; }
.wp-block-table tbody tr:nth-child(even) td { background: #FAFBFC; }
.wp-block-table.is-style-compare tbody td:first-child { font-weight: 600; color: var(--wp--preset--color--ink); background: var(--wp--preset--color--surface); white-space: nowrap; }
.wp-block-table figcaption { font-size: var(--wp--preset--font-size--xs); color: var(--wp--preset--color--muted); text-align: left; margin-top: .5rem; }

/* Callouts */
.al-callout { border: 1px solid var(--al-line); border-left: 4px solid var(--wp--preset--color--ink); border-radius: var(--al-radius); padding: 1rem 1.2rem !important; background: var(--wp--preset--color--surface); }
.al-callout > * { margin-block: .35rem !important; }
.al-callout .al-callout__title { font-weight: 700; font-size: var(--wp--preset--font-size--sm); }
.al-callout--tip { border-left-color: var(--wp--preset--color--good); background: #F1FAF4; }
.al-callout--warning { border-left-color: var(--wp--preset--color--warn); background: #FFF8EC; }
.al-callout--note { border-left-color: #3B6FD8; background: #F1F5FD; }

/* Key takeaways */
.al-takeaways { border: 1px solid var(--al-line); border-radius: var(--al-radius-lg); padding: 1.2rem 1.4rem !important; background: linear-gradient(180deg, #fff, var(--wp--preset--color--surface)); }
.al-takeaways .al-takeaways__title { margin: 0 0 .4rem !important; font-size: var(--wp--preset--font-size--xs); text-transform: uppercase; letter-spacing: .08em; color: var(--wp--preset--color--accent-dark); }
.al-takeaways ul { margin-top: 0 !important; }
.al-takeaways li { margin-bottom: .45rem; }
.al-takeaways ul { margin: 0; }

/* Verdict */
.al-verdict { border-radius: var(--al-radius-lg); padding: 1.4rem 1.5rem !important; background: var(--wp--preset--color--night); color: #D7DBE4; }
.al-verdict h2, .al-verdict h3 { color: #fff; margin-top: 0 !important; }
.al-verdict a { color: #fff; }
.al-verdict ul { list-style: none; padding: 0 !important; margin: 1rem 0 0; display: grid; gap: .5rem; }
.al-verdict li { margin: 0 !important; padding: .65rem .8rem; border-radius: 10px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); }
.al-verdict li strong { color: #fff; }

/* Pros / cons */
.al-proscons { gap: 1rem !important; }
.al-proscons > .wp-block-column { border: 1px solid var(--al-line); border-radius: var(--al-radius); padding: 1rem 1.1rem; }
.al-proscons h4 { margin: 0 0 .4rem; font-size: var(--wp--preset--font-size--sm); text-transform: uppercase; letter-spacing: .05em; }
.al-proscons .al-pros h4 { color: var(--wp--preset--color--good); }
.al-proscons .al-cons h4 { color: var(--wp--preset--color--accent-dark); }
.al-proscons ul { list-style: none; padding: 0 !important; margin: 0; font-size: var(--wp--preset--font-size--sm); }
.al-proscons li { padding-left: 1.4rem; position: relative; }
.al-proscons .al-pros li::before { content: "+"; position: absolute; left: 0; font-weight: 700; color: var(--wp--preset--color--good); }
.al-proscons .al-cons li::before { content: "\2212"; position: absolute; left: 0; font-weight: 700; color: var(--wp--preset--color--accent-dark); }

/* FAQ */
.al-faq .wp-block-details { border: 1px solid var(--al-line); border-radius: var(--al-radius); padding: .85rem 1.1rem; margin: 0 0 .6rem !important; }
.al-faq .wp-block-details summary { cursor: pointer; font-weight: 600; list-style: none; display: flex; justify-content: space-between; gap: 1rem; }
.al-faq .wp-block-details summary::-webkit-details-marker { display: none; }
.al-faq .wp-block-details summary::after { content: "+"; color: var(--wp--preset--color--accent); font-weight: 700; }
.al-faq .wp-block-details[open] summary::after { content: "\2212"; }
.al-faq .wp-block-details p { margin: .6rem 0 0; color: var(--wp--preset--color--ink-soft); }

/* Sources */
.al-sources { border-top: 1px solid var(--al-line); padding-top: 1.25rem; font-size: var(--wp--preset--font-size--sm); }
.al-sources h2 { font-size: var(--wp--preset--font-size--md) !important; margin-top: 0 !important; }
.al-sources ol { padding-left: 1.2rem; color: var(--wp--preset--color--ink-soft); }
.al-sources li { margin-bottom: .3rem; }
.al-sources a { word-break: break-word; }

/* Author box */
.al-author { display: flex; gap: 1rem; align-items: flex-start; border: 1px solid var(--al-line); border-radius: var(--al-radius); padding: 1.1rem 1.2rem; }
.al-author img { border-radius: 50%; flex: none; }
.al-author__name { font-weight: 700; margin: 0; }
.al-author__bio { margin: .2rem 0 0; font-size: var(--wp--preset--font-size--sm); color: var(--wp--preset--color--ink-soft); }
.al-disclosure { font-size: var(--wp--preset--font-size--xs); color: var(--wp--preset--color--muted); }

/* Related */
.al-related { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1rem; }
@media (max-width: 800px) { .al-related { grid-template-columns: 1fr; } }
.al-related a { display: block; border: 1px solid var(--al-line); border-radius: var(--al-radius); overflow: hidden; text-decoration: none; color: var(--wp--preset--color--ink); background: #fff; transition: box-shadow .15s, transform .15s; }
.al-related a:hover { box-shadow: var(--al-shadow); transform: translateY(-2px); }
.al-related img { display: block; width: 100%; aspect-ratio: 1200/630; object-fit: cover; background: var(--wp--preset--color--surface); }
.al-related span { display: block; padding: .75rem .9rem .9rem; font-weight: 600; font-size: var(--wp--preset--font-size--sm); line-height: 1.35; }
.al-related small { display: block; color: var(--wp--preset--color--accent-dark); font-size: .7rem; text-transform: uppercase; letter-spacing: .06em; font-weight: 600; margin-bottom: .25rem; }

/* Ads */
.al-ad { margin: 2rem auto !important; text-align: center; min-height: 120px; }
.al-ad__label { display: block; font-size: .65rem; letter-spacing: .12em; text-transform: uppercase; color: #a3a9b5; margin-bottom: .35rem; }
.al-ad--placeholder { display: grid; place-items: center; border: 1px dashed #c9ced8; border-radius: var(--al-radius); color: #a3a9b5; font-size: var(--wp--preset--font-size--xs); background: repeating-linear-gradient(45deg, #fafbfc, #fafbfc 10px, #f4f5f7 10px, #f4f5f7 20px); }

/* Archive header */
.al-archive-head { background: var(--wp--preset--color--surface); border-bottom: 1px solid var(--al-line); }
.al-archive-head .wp-block-term-description { color: var(--wp--preset--color--ink-soft); max-width: 680px; }
.al-archive-head .wp-block-term-description p { margin: 0; }

/* ---------- Footer ---------- */
.al-footer { background: var(--wp--preset--color--night); color: #9AA3B2; font-size: var(--wp--preset--font-size--sm); }
.al-footer .al-logo { color: #fff !important; }
.al-footer .al-logo__sub { color: #9AA3B2; }
.al-footer h3 { color: #fff; font-size: var(--wp--preset--font-size--xs); text-transform: uppercase; letter-spacing: .08em; margin: 0 0 .8rem; font-family: var(--wp--preset--font-family--body); font-weight: 700; }
.al-footer ul { list-style: none; padding: 0; margin: 0; display: grid; gap: .45rem; }
.al-footer a { color: #C9CFDA; text-decoration: none; }
.al-footer a:hover { color: #fff; }
.al-footer__bottom { border-top: 1px solid rgba(255,255,255,.08); font-size: var(--wp--preset--font-size--xs); }
.al-footer__bottom p { margin: 0; }
