:root {
    --ai-shell-bg: rgba(255, 255, 255, 0.94);
    --ai-shell-surface: #fff;
    --ai-shell-text: #10203a;
    --ai-shell-muted: #63708a;
    --ai-shell-border: rgba(15, 35, 62, 0.14);
    --ai-shell-hover: rgba(14, 165, 233, 0.09);
    --ai-shell-shadow: 0 18px 50px rgba(15, 35, 62, 0.12);
    --ai-sky: #087aa5;
    --ai-page-bg: #f8fafc;
    --ai-page-surface: #fff;
    --ai-page-text: #0f1d33;
    --ai-page-muted: #52627a;
    --ai-page-border: #dbe5f0;
    --ai-page-soft: #edf6fb;
}

html.dark {
    --ai-shell-bg: rgba(5, 15, 29, 0.94);
    --ai-shell-surface: #071321;
    --ai-shell-text: #f4f8fd;
    --ai-shell-muted: #9daabd;
    --ai-shell-border: rgba(148, 163, 184, 0.22);
    --ai-shell-hover: rgba(56, 189, 248, 0.1);
    --ai-shell-shadow: 0 18px 50px rgba(0, 0, 0, 0.28);
    --ai-sky: #38bdf8;
    --ai-page-bg: #050f1d;
    --ai-page-surface: #071321;
    --ai-page-text: #f4f8fd;
    --ai-page-muted: #a8b5c8;
    --ai-page-border: #20334b;
    --ai-page-soft: #0a1b2f;
}

[data-ai-shell],
body,
button,
input,
select,
textarea { font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
[data-ai-shell], [data-ai-shell] * { box-sizing: border-box; }
[data-ai-shell] a { text-decoration: none; }
[data-ai-shell] svg { width: 20px; height: 20px; flex: 0 0 auto; }
[data-elementor-type="header"], [data-elementor-type="footer"], footer.elementor-location-footer { display: none !important; }

html { color-scheme: light; scroll-behavior: smooth; }
html.dark { color-scheme: dark; }
body {
    overflow-x: clip;
    background:
        radial-gradient(circle at 10% 0%, rgba(56, 189, 248, .08), transparent 28rem),
        var(--ai-page-bg) !important;
    color: var(--ai-page-text);
}

body .site-main,
body .page-content,
body [data-elementor-type="wp-page"],
body [data-elementor-type="single-post"],
body [data-elementor-type="archive"] { color: var(--ai-page-text); }

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body .elementor-heading-title { font-family: "Space Grotesk", "Inter", system-ui, sans-serif !important; }

body p,
body li,
body .elementor-widget-text-editor,
body .elementor-post__excerpt,
body .elementor-post__title { font-family: "Inter", system-ui, sans-serif !important; }

.ai-skip-link {
    position: fixed;
    top: 8px;
    left: 8px;
    z-index: 100001;
    transform: translateY(-160%);
    padding: 10px 14px;
    border-radius: 9px;
    background: var(--ai-shell-text);
    color: var(--ai-shell-surface) !important;
    font-size: 14px;
    font-weight: 700;
}
.ai-skip-link:focus { transform: translateY(0); }

.ai-global-header {
    position: sticky;
    top: 0;
    z-index: 99999;
    width: 100%;
    padding: 12px clamp(12px, 2vw, 24px);
    color: var(--ai-shell-text);
    pointer-events: none;
}

.ai-header-inner { position: relative; width: min(1500px, 100%); margin: 0 auto; }

.ai-navbar {
    min-height: 72px;
    display: grid;
    grid-template-columns: minmax(210px, 1fr) auto minmax(210px, 1fr);
    align-items: center;
    gap: 16px;
    padding: 4px 16px;
    border: 1px solid var(--ai-shell-border);
    border-radius: 18px;
    background: var(--ai-shell-bg);
    box-shadow: var(--ai-shell-shadow);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    pointer-events: auto;
}

.ai-brand { min-width: 0; display: inline-flex; align-items: center; color: var(--ai-shell-text) !important; }
.ai-brand img { width: 58px; height: 58px; flex: 0 0 auto; object-fit: contain; border-radius: 12px; }
.ai-brand-copy { min-width: 0; display: flex; flex-direction: column; margin-left: 10px; }
.ai-brand-copy strong { color: var(--ai-shell-text); font-size: 19px; line-height: 1.2; white-space: nowrap; }
.ai-brand-copy b { color: var(--ai-sky); }
.ai-brand-copy small { color: var(--ai-shell-muted); font-size: 9px; line-height: 1.4; letter-spacing: .14em; text-transform: uppercase; white-space: nowrap; }
.ai-desktop-nav { display: flex; align-items: center; justify-content: center; gap: 2px; }

.ai-nav-link {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 10px;
    border-radius: 10px;
    color: var(--ai-shell-muted) !important;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
}

.ai-nav-link.is-active { color: var(--ai-sky) !important; background: var(--ai-shell-hover); }
.ai-header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }

.ai-theme-toggle, .ai-menu-toggle {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0 !important;
    border-radius: 10px;
    background: transparent;
    color: var(--ai-shell-text);
    cursor: pointer;
    box-shadow: none !important;
}

.ai-sign-in, .ai-get-access {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 14px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 650;
}

.ai-sign-in { color: var(--ai-shell-text) !important; }
.ai-get-access { color: #041424 !important; background: linear-gradient(135deg, #38bdf8, #21aeea); }
.ai-navbar > .ai-menu-toggle { display: none !important; }
.ai-menu-close-icon { display: none; }
.ai-menu-toggle[aria-expanded="true"] .ai-menu-open-icon { display: none; }
.ai-menu-toggle[aria-expanded="true"] .ai-menu-close-icon { display: inline-flex; }
.ai-mobile-nav { display: none; }

.ai-global-footer {
    position: relative;
    z-index: 10;
    width: 100%;
    margin-top: 0;
    padding: 28px max(24px, calc((100vw - 1440px) / 2)) calc(24px + env(safe-area-inset-bottom, 0px));
    border-top: 1px solid var(--ai-shell-border);
    background: var(--ai-shell-surface);
    color: var(--ai-shell-text);
}

.ai-footer-grid { display: grid; grid-template-columns: 2fr repeat(4, minmax(130px, 1fr)); gap: 40px; }
.ai-footer-brand .ai-brand { margin-bottom: 14px; }
.ai-footer-brand .ai-brand img { width: 72px; height: 72px; }
.ai-footer-brand .ai-brand-copy strong { font-size: 24px; }
.ai-footer-brand p { max-width: 390px; margin: 0 0 18px; color: var(--ai-shell-muted); font-size: 15px; line-height: 1.65; }
.ai-footer-email { display: inline-flex; align-items: center; gap: 10px; color: var(--ai-shell-muted) !important; font-size: 15px; }
.ai-footer-email svg { color: var(--ai-sky); }
.ai-footer-column h2 { margin: 12px 0 16px; color: var(--ai-shell-text); font-size: 16px; line-height: 1.3; }
.ai-footer-column ul { display: grid; gap: 11px; margin: 0; padding: 0; list-style: none; }
.ai-footer-column a, .ai-footer-bottom a { color: var(--ai-shell-muted) !important; font-size: 14px; }

.ai-footer-bottom {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 20px;
    margin-top: 26px;
    padding-top: 18px;
    border-top: 1px solid var(--ai-shell-border);
}

.ai-footer-bottom p { margin: 0; color: var(--ai-shell-muted); font-size: 13px; }
.ai-footer-bottom nav { display: flex; justify-content: flex-end; gap: 20px; }
.ai-social-links { display: flex; gap: 10px; }
.ai-social-links a { width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--ai-shell-border); border-radius: 10px; color: var(--ai-shell-muted) !important; font-weight: 700; }

.aviation-index-newsletter-cta {
    box-sizing: border-box;
    max-width: 1120px;
    margin: 48px auto;
    padding: clamp(28px, 5vw, 52px);
    border-radius: 20px;
    background-color: #07192d !important;
    background-image: linear-gradient(135deg, #07192d 0%, #0d2946 100%) !important;
    color: #f8fbff;
    text-align: left;
    box-shadow: 0 18px 50px rgba(7, 25, 45, 0.18);
}

.aviation-index-newsletter-cta .aviation-index-newsletter-eyebrow { margin: 0 0 10px; color: #7cc8ff; font-size: 12px; font-weight: 700; letter-spacing: .12em; }
.aviation-index-newsletter-cta h2 { margin: 0 0 14px; color: #fff; font-size: clamp(28px, 4vw, 42px); line-height: 1.15; }
.aviation-index-newsletter-cta > p:not(.aviation-index-newsletter-eyebrow) { max-width: 720px; margin: 0 0 24px; color: #d7e7f5; font-size: 17px; line-height: 1.65; }
.aviation-index-newsletter-button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; padding: 12px 22px; border-radius: 10px; background: #4eb7ff; color: #041424 !important; font-weight: 700; text-decoration: none !important; transition: background-color 160ms ease, transform 160ms ease; }
.aviation-index-newsletter-button:focus-visible, [data-ai-shell] a:focus-visible, [data-ai-shell] button:focus-visible { outline: 3px solid var(--ai-sky); outline-offset: 3px; }

/* Editorial surfaces ----------------------------------------------------- */
.home .elementor-520,
.archive .site-main,
.error404 .site-main,
.single-post [data-elementor-type="single-post"] {
    background: transparent !important;
    color: var(--ai-page-text) !important;
}

.home .elementor-element-75061db,
.home .elementor-element-75061db > .e-con-inner,
.home .elementor-element-224e7a5 {
    background-color: transparent !important;
    background-image: none !important;
}
.home .elementor-element-3ab4dc9 { background: var(--ai-page-bg) !important; }

.home .elementor-element-d64a835 .elementor-heading-title {
    color: var(--ai-page-text) !important;
    font-size: clamp(2rem, 5vw, 3.5rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -.035em;
    text-wrap: balance;
}

.home .elementor-widget-posts .elementor-post,
.home .elementor-widget-wpr-grid .wpr-grid-item {
    overflow: hidden;
    border: 1px solid var(--ai-page-border) !important;
    border-radius: 16px;
    background: var(--ai-page-surface) !important;
    box-shadow: 0 12px 32px rgba(15, 35, 62, .08);
}

.home .elementor-widget-posts .elementor-post__thumbnail,
.home .elementor-widget-wpr-grid img { background: var(--ai-page-soft); }
.home .elementor-widget-posts .elementor-post__thumbnail img,
.home .elementor-widget-wpr-grid img { width: 100%; height: 100%; object-fit: cover; }
.home .elementor-widget-posts .elementor-post__title,
.home .elementor-widget-posts .elementor-post__title a,
.home .elementor-widget-wpr-grid .wpr-grid-item-title,
.home .elementor-widget-wpr-grid .wpr-grid-item-title a { color: var(--ai-page-text) !important; }
.home .elementor-widget-posts .elementor-post__title { font-size: clamp(1rem, 2vw, 1.2rem) !important; line-height: 1.35 !important; }
.home .elementor-widget-posts .elementor-post__excerpt,
.home .elementor-widget-wpr-grid .wpr-grid-item-excerpt { color: var(--ai-page-muted) !important; line-height: 1.65; }
.home .elementor-widget-posts .elementor-post__read-more,
.home .elementor-widget-wpr-grid .wpr-grid-item-read-more { color: var(--ai-sky) !important; font-weight: 700; }
.home .elementor-pagination,
.home .elementor-button-wrapper { font-family: "Inter", system-ui, sans-serif !important; }
.home .elementor-button,
.home .e-load-more-anchor + .elementor-button,
.home .load-more-align-center .elementor-button {
    min-height: 46px;
    border-radius: 10px !important;
    background: #38bdf8 !important;
    color: #041424 !important;
    font-weight: 700 !important;
}

/* Archive pages use compact cards instead of entire article bodies. */
.archive .site-main {
    width: min(1200px, calc(100% - 32px));
    margin: 0 auto;
    padding: clamp(32px, 5vw, 72px) 0;
}
.archive .page-header { margin: 0 0 28px; }
.archive .page-header .entry-title { margin: 0; color: var(--ai-page-text); font-size: clamp(2rem, 5vw, 3.25rem); line-height: 1.08; letter-spacing: -.035em; }
.archive .page-content { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.archive .page-content > article {
    min-width: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0 0 22px;
    border: 1px solid var(--ai-page-border);
    border-radius: 16px;
    background: var(--ai-page-surface);
    box-shadow: 0 12px 32px rgba(15, 35, 62, .08);
}
.archive .page-content > article .entry-title { order: 2; margin: 20px 20px 12px; color: var(--ai-page-text); font-size: clamp(1.2rem, 2vw, 1.45rem); line-height: 1.25; }
.archive .page-content > article .entry-title a { color: inherit; text-decoration: none; }
.archive .page-content > article > a:first-of-type { order: 1; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--ai-page-soft); }
.archive .page-content > article > a:first-of-type img { width: 100%; height: 100%; margin: 0; object-fit: cover; }
.archive .ai-archive-excerpt,
.archive .page-content > article > p { order: 3; margin: 0 20px 18px; color: var(--ai-page-muted); font-size: 15px; line-height: 1.65; }
.archive .ai-archive-read-more { order: 4; align-self: flex-start; margin: auto 20px 0; color: var(--ai-sky); font-weight: 700; text-decoration: none; }

/* Long-form article typography and rich content. */
.single-post .elementor-widget-theme-post-title .elementor-heading-title {
    color: #fff !important;
    font-size: clamp(2rem, 5vw, 3.75rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -.04em;
    text-wrap: balance;
}
.single-post .elementor-widget-wpr-post-content { color: var(--ai-page-text); }
.single-post .elementor-widget-wpr-post-content p,
.single-post .elementor-widget-wpr-post-content li {
    color: var(--ai-page-text) !important;
    font-size: clamp(1rem, 1.2vw, 1.08rem) !important;
    line-height: 1.72 !important;
}
.single-post .elementor-widget-wpr-post-content h2 { margin: 2em 0 .7em; color: var(--ai-page-text) !important; font-size: clamp(1.5rem, 3vw, 2rem) !important; line-height: 1.2 !important; letter-spacing: -.025em; }
.single-post .elementor-widget-wpr-post-content h3 { margin: 1.7em 0 .6em; color: var(--ai-page-text) !important; font-size: clamp(1.25rem, 2.5vw, 1.5rem) !important; line-height: 1.3 !important; }
.single-post .elementor-widget-wpr-post-content a { color: var(--ai-sky) !important; text-underline-offset: .18em; }
.single-post .elementor-widget-wpr-post-content img { max-width: 100%; height: auto; border-radius: 14px; }
.single-post .elementor-widget-wpr-post-content table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    border-collapse: collapse;
    font-size: 14px;
    -webkit-overflow-scrolling: touch;
}
.single-post .elementor-widget-wpr-post-content th,
.single-post .elementor-widget-wpr-post-content td { min-width: 8rem; padding: 10px 12px; border-color: var(--ai-page-border) !important; color: var(--ai-page-text) !important; }
.single-post .elementor-widget-wpr-post-content th { background: var(--ai-page-soft) !important; font-weight: 700; }
.single-post .elementor-widget-wpr-post-content table:focus-visible { outline: 3px solid var(--ai-sky); outline-offset: 3px; }
.single-post .elementor-widget-heading .elementor-heading-title,
.single-post .elementor-widget-post-info,
.single-post .elementor-widget-post-info a { color: var(--ai-page-text) !important; }
.single-post .elementor-widget-post-info { color: var(--ai-page-muted) !important; }
.single-post footer[data-elementor-type="single-post"] > .elementor-element-28c820c0 { display: none !important; }

.error404 .site-main { min-height: 55dvh; color: var(--ai-page-text); }
.error404 .page-title { color: var(--ai-page-text); font-size: clamp(2rem, 6vw, 3.5rem); line-height: 1.1; }
.error404 .page-content { color: var(--ai-page-muted); font-size: 1rem; line-height: 1.65; }

/* The CTA is injected inside the article widget, so keep its intentional dark palette. */
.single-post .elementor-widget-wpr-post-content .aviation-index-newsletter-cta,
.single-post .elementor-widget-wpr-post-content .aviation-index-newsletter-cta h2 { color: #fff !important; }
.single-post .elementor-widget-wpr-post-content .aviation-index-newsletter-cta .aviation-index-newsletter-eyebrow { color: #7cc8ff !important; }
.single-post .elementor-widget-wpr-post-content .aviation-index-newsletter-cta > p:not(.aviation-index-newsletter-eyebrow) { color: #d7e7f5 !important; }
.single-post .elementor-widget-wpr-post-content .aviation-index-newsletter-button { color: #041424 !important; }
.single-post .elementor-widget-theme-post-title .elementor-heading-title { color: #fff !important; }

@media (hover: hover) and (pointer: fine) {
    .ai-nav-link:hover, .ai-sign-in:hover, .ai-theme-toggle:hover, .ai-menu-toggle:hover { color: var(--ai-shell-text) !important; background: var(--ai-shell-hover); }
    .ai-footer-column a:hover, .ai-footer-bottom a:hover, .ai-footer-email:hover { color: var(--ai-sky) !important; }
    .aviation-index-newsletter-button:hover { background: #83ceff; transform: translateY(-1px); }
}

@media (min-width: 768px) {
    .home .elementor-widget-wpr-grid .wpr-grid {
        position: static !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px;
        height: auto !important;
        opacity: 1 !important;
    }
    .home .elementor-widget-wpr-grid .wpr-grid-item {
        position: relative !important;
        inset: auto !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
    }
    .home .elementor-widget-wpr-grid .wpr-grid-item-inner { display: flex; height: 100%; flex-direction: column; }
    .home .elementor-widget-wpr-grid .wpr-grid-media-wrap,
    .home .elementor-widget-wpr-grid .wpr-grid-image-wrap { width: 100%; height: auto !important; aspect-ratio: 16 / 9; overflow: hidden; }
    .home .elementor-widget-wpr-grid .wpr-grid-image-wrap img { position: static !important; width: 100%; height: 100% !important; object-fit: cover; transform: none !important; }
    .home .elementor-widget-wpr-grid .wpr-grid-item-below-content { flex: 1; padding: 20px; }
    .home .elementor-widget-wpr-grid .wpr-grid-filters { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 18px; }
    .home .elementor-widget-wpr-grid .wpr-grid-filters span:not(.wpr-active-filter) { color: var(--ai-page-muted) !important; }
    .home .elementor-widget-wpr-grid .wpr-grid-filters .wpr-active-filter { color: #fff !important; }
    .home .elementor-widget-wpr-grid .wpr-grid-item-excerpt {
        display: -webkit-box !important;
        overflow: hidden !important;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
        max-height: 6.6em;
        line-height: 1.65 !important;
    }
    .home .elementor-widget-wpr-grid .wpr-grid-item-excerpt,
    .home .elementor-widget-wpr-grid .wpr-grid-item-excerpt * { color: var(--ai-page-muted) !important; }
}

@media (min-width: 1024px) {
    .home .elementor-widget-wpr-grid .wpr-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 1240px) {
    .ai-navbar { grid-template-columns: auto 1fr auto; }
    .ai-desktop-nav, .ai-header-actions { display: none; }
    .ai-navbar > .ai-menu-toggle { display: inline-flex !important; width: 44px; justify-self: end; }
    .ai-mobile-nav {
        position: absolute;
        top: calc(100% + 8px);
        right: 0;
        left: 0;
        max-height: calc(100dvh - 108px - env(safe-area-inset-bottom, 0px));
        overflow-y: auto;
        overscroll-behavior: contain;
        padding: 14px;
        border: 1px solid var(--ai-shell-border);
        border-radius: 18px;
        background: var(--ai-shell-bg);
        box-shadow: var(--ai-shell-shadow);
        color: var(--ai-shell-text);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        pointer-events: auto;
    }
    .ai-mobile-nav:not([hidden]) { display: block; }
    .ai-mobile-links { display: grid; gap: 4px; }
    .ai-mobile-links .ai-nav-link { width: 100%; min-height: 48px; padding: 12px 14px; font-size: 15px; }
    .ai-mobile-theme-row { display: flex; align-items: center; justify-content: space-between; margin-top: 10px; padding: 10px 14px; border-top: 1px solid var(--ai-shell-border); color: var(--ai-shell-muted); font-size: 14px; }
    .ai-mobile-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 8px 4px calc(4px + env(safe-area-inset-bottom, 0px)); }
}

@media (max-width: 900px) {
    .ai-global-footer { padding: 28px 24px calc(24px + env(safe-area-inset-bottom, 0px)); }
    .ai-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 36px; }
    .ai-footer-brand { grid-column: 1 / -1; }
    .ai-footer-bottom { grid-template-columns: 1fr; justify-items: center; text-align: center; }
    .ai-footer-bottom nav { justify-content: center; }
    .archive .page-content { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
    .ai-global-header { padding: 10px 14px; }
    .ai-navbar { min-height: 68px; grid-template-columns: minmax(0, 1fr) auto; padding: 4px 10px; border-radius: 18px; }
    .ai-brand img { width: 50px; height: 50px; }
    .ai-brand-copy { margin-left: 8px; }
    .ai-brand-copy strong { overflow: hidden; font-size: clamp(16px, 5vw, 20px); text-overflow: ellipsis; }
    .ai-brand-copy small { display: none; }
    .ai-mobile-nav { max-height: calc(100dvh - 98px - env(safe-area-inset-bottom, 0px)); }
    .ai-global-footer { padding: 24px 20px calc(22px + env(safe-area-inset-bottom, 0px)); }
    .ai-footer-grid { gap: 24px 28px; }
    .ai-footer-brand .ai-brand { margin-bottom: 10px; }
    .ai-footer-brand .ai-brand img { width: 58px; height: 58px; }
    .ai-footer-brand .ai-brand-copy strong { font-size: 20px; }
    .ai-footer-brand p { margin-bottom: 14px; font-size: 14px; line-height: 1.55; }
    .ai-footer-column h2 { margin: 0 0 12px; font-size: 15px; }
    .ai-footer-column ul { gap: 9px; }
    .ai-footer-column a { font-size: 13px; }
    .ai-footer-bottom { gap: 14px; margin-top: 22px; padding-top: 16px; }
    .aviation-index-newsletter-cta { margin: 32px 16px; border-radius: 16px; }
    .aviation-index-newsletter-button { width: 100%; }
    .home .elementor-widget-posts .elementor-post { display: flex !important; flex-direction: column !important; padding: 0 !important; }
    .home .elementor-widget-posts .elementor-post__thumbnail__link { width: 100% !important; margin: 0 !important; }
    .home .elementor-widget-posts .elementor-post__thumbnail { aspect-ratio: 16 / 9; padding-bottom: 0 !important; }
    .home .elementor-widget-posts .elementor-post__thumbnail img { position: static !important; transform: none !important; }
    .home .elementor-widget-posts .elementor-post__text { width: 100% !important; padding: 18px 18px 20px; }
    .home .elementor-widget-posts .elementor-post__title { margin: 0 0 10px !important; }
    .archive .site-main { width: min(100% - 28px, 720px); }
    .single-post .elementor-widget-wpr-post-content table { margin-inline: 0; }
}

@media (max-width: 420px) {
    .ai-footer-grid { grid-template-columns: 1fr 1fr; gap: 22px 18px; }
    .ai-footer-bottom nav { gap: 14px; }
    .archive .page-content { grid-template-columns: 1fr; gap: 18px; }
    .archive .page-content > article .entry-title { margin: 18px 18px 10px; }
    .archive .ai-archive-excerpt { margin-inline: 18px; }
    .archive .ai-archive-read-more { margin-inline: 18px; }
}

@media (max-width: 360px) {
    .ai-global-header { padding-inline: 8px; }
    .ai-navbar { padding-inline: 8px; }
    .ai-brand-copy strong { font-size: 16px; }
    .ai-footer-grid { grid-template-columns: 1fr; }
    .ai-footer-bottom nav { flex-wrap: wrap; }
    .aviation-index-newsletter-cta { margin-inline: 10px; padding: 24px 20px; }
}

@media (pointer: coarse) {
    [data-ai-shell] a,
    [data-ai-shell] button,
    .aviation-index-newsletter-button,
    .ai-archive-read-more { touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
    .ai-theme-toggle:active,
    .ai-menu-toggle:active,
    .ai-sign-in:active,
    .ai-get-access:active,
    .aviation-index-newsletter-button:active { transform: scale(.97); }
}

@media (prefers-reduced-motion: reduce) {
    [data-ai-shell] *, .aviation-index-newsletter-button { scroll-behavior: auto !important; transition: none !important; }
}
