/*
 * Low Code Insights — Theme CSS v10
 * Complete rewrite fixing: header layout, grey gaps, tag alignment,
 * 404 visibility, responsive breakpoints, footer, social icons
 */

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@600;700;800&family=Plus+Jakarta+Sans:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&display=swap');

/* ── Tokens ────────────────────────────────────────────────────── */
:root {
  --bg:          #f4f5f7;
  --bg-white:    #ffffff;
  --bg-dark:     #10181f;
  --bg-dark-2:   #15212b;

  --accent:      #0b8f85;
  --accent-dim:  #e4f4f3;
  --accent-mid:  #b2deda;
  --accent-dk:   #077068;
  --accent-lt:   #0dcfbc;
  --blue:        #1e6fa8;
  --blue-dim:    #e6f0f8;

  --ink:         #111a22;
  --ink-2:       #3d4f5c;
  --ink-3:       #7a8f9e;
  --on-dark:     #d8e4ec;
  --on-dark-2:   #6b8898;

  --border:      #dde2e8;

  --font-head:   'Outfit', sans-serif;
  --font-body:   'Plus Jakarta Sans', sans-serif;
  --font-mono:   'JetBrains Mono', monospace;

  --r-sm: 6px;
  --r-md: 10px;
  --r-lg: 16px;
  --r-xl: 24px;

  --ease: 0.2s cubic-bezier(0.4,0,0.2,1);

  /* Header height used for offset calculations */
  --header-h: 62px;
}

/* ── Base ──────────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: var(--font-body) !important;
  font-size: 16px;
  line-height: 1.7;
  background: var(--bg-dark); /* prevent flash of white behind hero */
  color: var(--ink);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  margin: 0;
  padding: 0;
}
/* Light bg for content sections */
main, .lci-posts-section, .lci-newsletter-section,
.lci-page-content, .lci-post-content-wrap {
  background: var(--bg);
}
::selection { background: rgba(11,143,133,0.2); }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 4px; }
a { text-decoration: none; }
img { display: block; max-width: 100%; }

/* ── Headings ─────────────────────────────────────────────────── */
h1,h2,h3,h4,h5,h6,
.wp-block-heading,
.wp-block-site-title,
.wp-block-query-title,
.wp-block-post-title {
  font-family: var(--font-head) !important;
  letter-spacing: -0.025em !important;
}

/* ═══════════════════════════════════════════════════════════════
   HEADER
═══════════════════════════════════════════════════════════════ */
.lci-header {
  position: sticky;
  top: 0;
  z-index: 200;
  background: rgba(255,255,255,0.95) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--border);
  /* Full bleed — no padding here, inner group handles it */
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Inner row — centred, max 1120px, full height */
.lci-header > .wp-block-group {
  max-width: 1120px;
  width: 100%;
  margin: 0 auto !important;
  height: var(--header-h);
  padding: 0 1.75rem;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap;
  gap: 0;
}

/* Logo group — left side */
.lci-header .wp-block-group:first-child {
  flex-shrink: 0;
  gap: 10px !important;
}
.lci-header .wp-block-site-logo {
  flex-shrink: 0;
  line-height: 0;
}
.lci-header .wp-block-site-logo img {
  height: 36px !important;
  width: auto !important;
}
/* Site title */
.lci-header .wp-block-site-title {
  font-size: 1.1rem !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}
.lci-header .wp-block-site-title a,
.lci-header .wp-block-site-title {
  color: var(--ink) !important;
  text-decoration: none !important;
}

/* Navigation — push to right */
.lci-header .wp-block-navigation {
  flex: 1 !important;
  justify-content: flex-end !important;
  margin-left: 2rem !important;
}
.lci-header .wp-block-navigation a {
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  color: var(--ink-2) !important;
  text-decoration: none;
  transition: color var(--ease);
  padding: 6px 10px;
  border-radius: var(--r-sm);
  white-space: nowrap;
}
.lci-header .wp-block-navigation a:hover,
.lci-header .wp-block-navigation .current-menu-item > a { color: var(--ink) !important; }

/* Subscribe button */
.lci-header .wp-block-buttons {
  flex-shrink: 0;
  margin-left: 1rem !important;
}
.lci-header .wp-block-buttons .wp-block-button__link,
.lci-btn-subscribe .wp-block-button__link {
  background: var(--accent) !important;
  color: #fff !important;
  font-family: var(--font-body) !important;
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  padding: 9px 20px !important;
  border-radius: var(--r-sm) !important;
  border: none !important;
  white-space: nowrap;
  transition: all var(--ease) !important;
}
.lci-header .wp-block-buttons .wp-block-button__link:hover {
  background: var(--accent-dk) !important;
  transform: translateY(-1px);
}

/* Admin bar offset */
.admin-bar .lci-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .lci-header { top: 46px; } }

/* Mobile nav hamburger */
.lci-header .wp-block-navigation__responsive-container-open,
.lci-header .wp-block-navigation__responsive-container-close {
  color: var(--ink-2) !important;
}
.lci-header .wp-block-navigation__responsive-container.is-menu-open {
  background: #fff !important;
}

/* ═══════════════════════════════════════════════════════════════
   HERO — no gap between header and hero
═══════════════════════════════════════════════════════════════ */
.lci-hero {
  background: var(--bg-dark) !important;
  /* No negative margins — use full constrained layout instead */
  padding: 88px 1.75rem !important;
  position: relative;
  overflow: hidden;
  /* Ensure zero gap above */
  margin-top: 0 !important;
}
/* Dot grid */
.lci-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,255,255,0.05) 1px, transparent 1px);
  background-size: 28px 28px;
  pointer-events: none;
  z-index: 0;
}
/* Glow */
.lci-hero::after {
  content: '';
  position: absolute;
  top: -80px; right: -80px;
  width: 520px; height: 520px;
  background: radial-gradient(circle, rgba(11,143,133,0.22) 0%, transparent 65%);
  pointer-events: none;
  z-index: 0;
}
/* All direct children above pseudo-elements */
.lci-hero > * {
  position: relative;
  z-index: 1;
  max-width: 1120px;
  width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Eyebrow pill */
.lci-eyebrow {
  display: inline-flex !important;
  align-items: center;
  gap: 0.5rem;
  background: rgba(11,143,133,0.14) !important;
  border: 1px solid rgba(11,143,133,0.3);
  border-radius: 100px;
  padding: 0.28rem 0.85rem !important;
  font-family: var(--font-mono) !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  color: var(--accent-lt) !important;
  margin-bottom: 1.5rem !important;
  width: fit-content;
}
.lci-eyebrow::before {
  content: '';
  display: inline-block;
  width: 5px; height: 5px;
  background: var(--accent-lt);
  border-radius: 50%;
  animation: lci-blink 2.4s ease-in-out infinite;
}
@keyframes lci-blink { 0%,100%{opacity:1} 50%{opacity:0.3} }

.lci-hero-title {
  font-family: var(--font-head) !important;
  font-size: clamp(2.4rem, 4.5vw, 3.8rem) !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.03em !important;
  color: var(--on-dark) !important;
  margin-bottom: 1.25rem !important;
}
.lci-accent { color: var(--accent-lt) !important; }

.lci-hero-desc {
  font-size: 1.05rem !important;
  color: var(--on-dark-2) !important;
  font-weight: 300 !important;
  line-height: 1.85 !important;
  max-width: 500px;
  margin-bottom: 2.25rem !important;
}

/* Hero buttons */
.lci-btn-primary .wp-block-button__link {
  background: var(--accent) !important;
  color: #fff !important;
  font-family: var(--font-body) !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  border: none !important;
  transition: all var(--ease) !important;
}
.lci-btn-primary .wp-block-button__link:hover {
  background: var(--accent-dk) !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(11,143,133,0.35) !important;
}
.lci-btn-outline .wp-block-button__link {
  background: transparent !important;
  color: var(--on-dark-2) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  font-family: var(--font-body) !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  transition: all var(--ease) !important;
}
.lci-btn-outline .wp-block-button__link:hover {
  color: var(--on-dark) !important;
  border-color: rgba(255,255,255,0.35) !important;
}

/* Hero animation */
@keyframes lci-up { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }
.lci-hero > *:nth-child(1) { animation: lci-up 0.55s ease both 0.05s; }
.lci-hero > *:nth-child(2) { animation: lci-up 0.55s ease both 0.13s; }
.lci-hero > *:nth-child(3) { animation: lci-up 0.55s ease both 0.21s; }
.lci-hero > *:nth-child(4) { animation: lci-up 0.55s ease both 0.29s; }

/* ═══════════════════════════════════════════════════════════════
   POSTS SECTION — light bg, seamless after hero
═══════════════════════════════════════════════════════════════ */
.lci-posts-section {
  background: var(--bg) !important;
  padding: 88px 1.75rem !important;
  margin: 0 !important;
}
.lci-posts-section > * {
  max-width: 1120px;
  width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
}
.lci-section-eyebrow {
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--accent) !important;
  margin-bottom: 0.4rem !important;
}
.lci-section-title {
  font-family: var(--font-head) !important;
  font-size: clamp(1.6rem, 2.5vw, 2.2rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  color: var(--ink) !important;
  margin-bottom: 0 !important;
}
.lci-section-sub { color: var(--ink-2); font-size: 0.94rem; margin-top: 0.3rem !important; }
.lci-posts-head { margin-bottom: 2.25rem; }
.lci-posts-all a {
  font-size: 0.82rem; font-weight: 600; color: var(--accent);
  text-decoration: none; display: inline-flex; align-items: center; gap: 0.3rem;
  white-space: nowrap; transition: gap var(--ease);
}
.lci-posts-all a:hover { gap: 0.5rem; }

/* Post cards */
.lci-card {
  background: var(--bg-white) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--r-md) !important;
  overflow: hidden;
  display: flex; flex-direction: column;
  transition: all var(--ease);
}
.lci-card:hover {
  border-color: var(--accent-mid) !important;
  box-shadow: 0 6px 28px rgba(11,143,133,0.09) !important;
  transform: translateY(-2px);
}
.lci-card .wp-block-post-featured-image {
  aspect-ratio: 16/9;
  overflow: hidden;
  background: linear-gradient(140deg, #093330, #0b5e57);
}
.lci-card .wp-block-post-featured-image img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform 0.4s var(--ease);
}
.lci-card:hover .wp-block-post-featured-image img { transform: scale(1.04); }
.lci-card-body { padding: 1.2rem !important; flex: 1; display: flex; flex-direction: column; }
.lci-card-meta { margin-bottom: 0.65rem !important; }
.lci-card-date { font-size: 0.72rem !important; color: var(--ink-3) !important; }
.lci-card-terms a {
  display: inline-flex; align-items: center;
  padding: 0.16rem 0.6rem;
  border-radius: 100px;
  font-size: 0.65rem !important; font-weight: 700 !important;
  letter-spacing: 0.04em; text-transform: uppercase; text-decoration: none;
  background: var(--accent-dim); color: var(--accent-dk);
  border: 1px solid var(--accent-mid);
  transition: all var(--ease);
}
a[href*="power-apps"].wp-block-post-terms__term,
a[href*="azure"].wp-block-post-terms__term { background: var(--blue-dim); color: var(--blue); border-color: #b8d5ef; }
a[href*="copilot"].wp-block-post-terms__term,
a[href*="ai-automation"].wp-block-post-terms__term { background: #f0f0fe; color: #5151c6; border-color: #c7c7f0; }

.lci-card-title {
  font-family: var(--font-head) !important;
  font-size: 0.97rem !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  color: var(--ink) !important;
  margin: 0.65rem 0 0.5rem !important;
  transition: color var(--ease);
}
.lci-card-title a { color: inherit !important; text-decoration: none !important; }
.lci-card:hover .lci-card-title,
.lci-card:hover .lci-card-title a { color: var(--accent) !important; }
.lci-card-excerpt { font-size: 0.85rem !important; color: var(--ink-2) !important; line-height: 1.7 !important; flex: 1; margin-bottom: 0.9rem !important; }
.lci-card-footer { padding-top: 0.7rem !important; border-top: 1px solid var(--border); margin-top: auto; }
.lci-post-date { font-size: 0.72rem !important; color: var(--ink-3) !important; }
.lci-card-mins { font-size: 0.72rem !important; color: var(--ink-3) !important; margin: 0 !important; }
.lci-read-more {
  font-size: 0.76rem !important; font-weight: 600 !important; color: var(--accent) !important;
  text-decoration: none !important; display: inline-flex; align-items: center; gap: 0.28rem;
  transition: gap var(--ease);
}
.lci-read-more:hover { gap: 0.45rem; color: var(--accent-dk) !important; }
.lci-no-results { text-align: center; color: var(--ink-3); padding: 40px 0; }

/* Pagination */
.lci-pagination { margin-top: 48px; justify-content: center; }
.lci-pagination a, .lci-pagination .current, .lci-pagination span {
  padding: 7px 13px; border-radius: var(--r-sm); border: 1px solid var(--border);
  font-size: 0.875rem; color: var(--ink-2); text-decoration: none; transition: all var(--ease);
}
.lci-pagination a:hover, .lci-pagination .current {
  background: var(--ink); color: #fff; border-color: var(--ink);
}

/* Posts grid responsive */
.lci-posts-grid.wp-block-post-template {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 1.25rem !important;
}
@media (max-width: 900px) {
  .lci-posts-grid.wp-block-post-template { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 560px) {
  .lci-posts-grid.wp-block-post-template { grid-template-columns: 1fr !important; }
}

/* ═══════════════════════════════════════════════════════════════
   ABOUT SECTION — dark, correct alignment
═══════════════════════════════════════════════════════════════ */
.lci-about-strip {
  background: var(--bg-dark) !important;
  padding: 88px 1.75rem !important;
  position: relative; overflow: hidden;
  margin: 0 !important;
}
.lci-about-strip::before {
  content: '';
  position: absolute; bottom: -140px; left: -140px;
  width: 460px; height: 460px;
  background: radial-gradient(circle, rgba(11,143,133,0.11) 0%, transparent 70%);
  pointer-events: none;
}
/* All direct children constrained to 1120px — fixes tag alignment */
.lci-about-strip > * {
  max-width: 1120px;
  width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
  position: relative; z-index: 1;
}
.lci-about-eyebrow {
  font-size: 0.7rem !important; font-weight: 700 !important;
  letter-spacing: 0.1em !important; text-transform: uppercase !important;
  color: var(--accent-lt) !important; margin-bottom: 0.5rem !important;
}
.lci-about-title {
  font-family: var(--font-head) !important;
  font-size: clamp(1.6rem, 2.5vw, 2.1rem) !important;
  font-weight: 800 !important; letter-spacing: -0.025em !important;
  color: var(--on-dark) !important; margin-bottom: 1.1rem !important;
}
.lci-about-desc {
  font-size: 0.94rem !important; color: var(--on-dark-2) !important;
  line-height: 1.9 !important; margin-bottom: 0.9rem !important; max-width: 640px;
}

/* Topic pills — aligned with text above */
.lci-topic-grid {
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px !important;
  margin: 1.25rem 0 !important;
  /* Key fix: no negative margin, just inherits parent max-width */
}
.lci-topic-item {
  display: inline-flex !important;
  align-items: center;
  padding: 0.2rem 0.7rem;
  border-radius: 100px;
  font-size: 0.68rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin: 0 !important;
  line-height: 1.4;
}
.lci-topic-teal   { background: rgba(11,143,133,0.15); color: var(--accent-lt) !important; border: 1px solid rgba(11,143,133,0.3); }
.lci-topic-blue   { background: rgba(30,111,168,0.15); color: #6ab5e6 !important;           border: 1px solid rgba(30,111,168,0.3); }
.lci-topic-slate  { background: rgba(255,255,255,0.07); color: var(--on-dark-2) !important; border: 1px solid rgba(255,255,255,0.12); }

/* About stats */
.lci-about-stats {
  margin-top: 1.75rem !important; padding-top: 1.75rem !important;
  border-top: 1px solid rgba(255,255,255,0.07);
  gap: 2.5rem !important; margin-bottom: 1.75rem !important;
}
.lci-stat-n {
  font-family: var(--font-head) !important; font-size: 1.8rem !important;
  font-weight: 800 !important; color: var(--accent-lt) !important;
  letter-spacing: -0.02em !important; margin: 0 0 0.1rem !important;
}
.lci-stat-l { font-size: 0.76rem !important; color: var(--on-dark-2) !important; margin: 0 !important; }
.lci-about-btn .wp-block-button__link {
  background: var(--accent) !important; color: #fff !important;
  font-size: 0.875rem !important; font-weight: 600 !important; transition: all var(--ease) !important;
}
.lci-about-btn .wp-block-button__link:hover {
  background: var(--accent-dk) !important; transform: translateY(-1px);
}

/* ═══════════════════════════════════════════════════════════════
   NEWSLETTER SECTION — light
═══════════════════════════════════════════════════════════════ */
.lci-newsletter-section {
  background: var(--bg) !important;
  padding: 88px 1.75rem !important; margin: 0 !important;
}
.lci-nl-card {
  background: var(--bg-white) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--r-xl) !important;
  padding: 3.25rem !important;
  max-width: 600px; margin: 0 auto !important;
  text-align: center; position: relative; overflow: hidden;
}
.lci-nl-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--accent), var(--accent-lt), var(--blue));
}
.lci-newsletter-icon {
  font-size: 1.5rem; display: block;
  width: 52px; height: 52px;
  background: var(--accent-dim); border: 1px solid var(--accent-mid);
  border-radius: var(--r-md); display: flex; align-items: center;
  justify-content: center; margin: 0 auto 1.4rem !important;
}
.lci-newsletter-title {
  font-family: var(--font-head) !important;
  font-size: clamp(1.4rem, 2.5vw, 1.75rem) !important;
  font-weight: 800 !important; letter-spacing: -0.02em !important;
  color: var(--ink) !important; margin-bottom: 0.6rem !important;
}
.lci-newsletter-desc {
  color: var(--ink-2) !important; font-size: 0.93rem !important;
  font-weight: 300 !important; line-height: 1.8 !important;
  max-width: 380px; margin: 0 auto 1.75rem !important;
}
.lci-newsletter-fine { color: var(--ink-3) !important; font-size: 0.73rem !important; margin-top: 0.85rem !important; }
.lci-btn-nl .wp-block-button__link {
  background: var(--accent) !important; color: #fff !important;
  font-size: 0.875rem !important; font-weight: 600 !important; transition: all var(--ease) !important;
}
.lci-btn-nl .wp-block-button__link:hover {
  background: var(--accent-dk) !important; transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(11,143,133,0.35) !important;
}

/* ═══════════════════════════════════════════════════════════════
   PAGE TEMPLATES
═══════════════════════════════════════════════════════════════ */
.lci-page-hero {
  background: var(--bg) !important;
  padding: 72px 1.75rem 56px !important;
  border-bottom: 1px solid var(--border);
  margin: 0 !important;
}
.lci-page-hero .wp-block-post-title {
  font-family: var(--font-head) !important; font-weight: 800 !important; color: var(--ink) !important;
}
.lci-page-content { padding: 56px 1.75rem 80px !important; background: var(--bg-white) !important; }
.lci-page-content .wp-block-post-content { font-size: 1rem; line-height: 1.8; color: var(--ink-2); }

/* ═══════════════════════════════════════════════════════════════
   ARCHIVE / BLOG
═══════════════════════════════════════════════════════════════ */
.lci-archive-hero {
  background: var(--bg-dark) !important;
  padding: 72px 1.75rem 56px !important;
  position: relative; margin: 0 !important;
}
.lci-archive-hero > * {
  max-width: 1120px; margin-left: auto !important; margin-right: auto !important;
  position: relative; z-index: 1;
}
.lci-archive-hero::before {
  content: '';
  position: absolute; inset: 0;
  background-image: radial-gradient(rgba(255,255,255,0.04) 1px, transparent 1px);
  background-size: 28px 28px;
}
.lci-archive-title { color: var(--on-dark) !important; font-family: var(--font-head) !important; font-weight: 800 !important; }
.lci-archive-desc  { color: var(--on-dark-2) !important; font-size: 1rem !important; font-weight: 300 !important; margin-top: 10px !important; }

/* ═══════════════════════════════════════════════════════════════
   SINGLE POST
═══════════════════════════════════════════════════════════════ */
.lci-post-hero {
  background: var(--bg-dark) !important;
  padding: 56px 1.75rem 0 !important; margin: 0 !important;
}
.lci-post-hero > * {
  max-width: 1120px; margin-left: auto !important; margin-right: auto !important;
}
.lci-post-terms a {
  background: rgba(11,143,133,0.14); color: var(--accent-lt) !important;
  border: 1px solid rgba(11,143,133,0.28); padding: 0.16rem 0.6rem;
  border-radius: 100px; font-size: 0.65rem !important; font-weight: 700 !important;
  letter-spacing: 0.04em; text-transform: uppercase; text-decoration: none;
}
.lci-post-title    { color: var(--on-dark) !important; font-family: var(--font-head) !important; font-weight: 800 !important; line-height: 1.15 !important; }
.lci-post-intro    { color: var(--on-dark-2) !important; font-size: 1.05rem !important; font-weight: 300 !important; line-height: 1.7 !important; }
.lci-post-meta     { padding: 18px 0 !important; margin-top: 24px; border-top: 1px solid rgba(255,255,255,0.07); }
.lci-post-meta .wp-block-post-author { color: rgba(255,255,255,0.8) !important; font-size: 0.9rem !important; }
.lci-date { font-size: 0.78rem !important; color: var(--on-dark-2) !important; font-family: var(--font-mono) !important; }
.lci-featured-img { margin: 0 !important; }
.lci-featured-img img { width: 100%; display: block; }
.lci-post-layout { padding: 56px 0 80px !important; }

/* Post content */
.lci-post-content { font-size: 1rem !important; line-height: 1.85 !important; }
.lci-post-content h2 { margin-top: 48px !important; margin-bottom: 16px !important; }
.lci-post-content h3 { margin-top: 32px !important; margin-bottom: 12px !important; }
.lci-post-content p  { color: var(--ink-2); margin-bottom: 18px !important; }
.lci-post-content a  { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.lci-post-content blockquote {
  border-left: 3px solid var(--accent);
  padding: 14px 20px; background: var(--accent-dim); margin: 28px 0 !important;
  font-style: italic; border-radius: 0 var(--r-sm) var(--r-sm) 0;
}
.wp-block-code, .lci-post-content pre {
  background: var(--bg-dark) !important; color: #e2e8f0;
  border-radius: var(--r-md) !important;
  font-family: var(--font-mono) !important; font-size: 0.875rem !important;
  padding: 20px !important; overflow-x: auto;
}
.lci-post-tags { padding-top: 18px; margin-top: 32px; border-top: 1px solid var(--border); }
.lci-post-tags a {
  display: inline-block; padding: 3px 10px;
  border: 1px solid var(--border); border-radius: 100px;
  font-size: 0.72rem; color: var(--ink-3); text-decoration: none; margin: 4px;
  transition: all var(--ease);
}
.lci-post-tags a:hover { border-color: var(--accent); color: var(--accent); }
.lci-author-box {
  background: var(--bg) !important; border: 1px solid var(--border) !important;
  border-radius: var(--r-lg) !important; padding: 24px !important; margin-top: 32px;
}

/* Sidebar */
.lci-widget {
  background: var(--bg-white) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--r-md) !important;
  padding: 20px !important; margin-bottom: 18px;
}
.lci-widget-newsletter { background: var(--bg-dark) !important; border-color: rgba(11,143,133,0.2) !important; }
.lci-widget-title {
  font-family: var(--font-mono) !important; font-size: 0.68rem !important;
  text-transform: uppercase; letter-spacing: 0.1em; color: var(--ink-3) !important;
  padding-bottom: 12px; border-bottom: 1px solid var(--border); margin-bottom: 14px !important;
}
.lci-widget-newsletter .lci-widget-title { color: rgba(255,255,255,0.3) !important; border-color: rgba(255,255,255,0.07) !important; }
.lci-widget-newsletter .wp-block-heading { color: var(--on-dark) !important; font-size: 1rem !important; }
.lci-widget-text { color: var(--on-dark-2) !important; font-size: 0.875rem !important; }
.lci-widget-categories a { font-size: 0.875rem !important; color: var(--ink-2); }
.lci-widget-categories a:hover { color: var(--accent) !important; }
.lci-related-title { color: var(--ink) !important; margin-bottom: 18px !important; }

/* ═══════════════════════════════════════════════════════════════
   404 — proper visibility, no gaps
═══════════════════════════════════════════════════════════════ */
.lci-404 {
  background: var(--bg-dark) !important;
  min-height: calc(100vh - var(--header-h));
  display: flex !important; flex-direction: column;
  align-items: center; justify-content: center;
  padding: 80px 1.75rem !important; text-align: center;
  margin: 0 !important;
  /* No gap between header/footer */
  gap: 0;
}
/* 404 number — visible but subtle */
.lci-404-num {
  font-size: clamp(6rem, 18vw, 12rem) !important;
  /* Visible dark teal instead of near-invisible white */
  color: rgba(11,143,133,0.18) !important;
  line-height: 1 !important;
  margin-bottom: -24px !important;
  font-family: var(--font-head) !important;
  font-weight: 800 !important;
  letter-spacing: -0.04em !important;
}
.lci-404 h2 { color: var(--on-dark) !important; margin-bottom: 14px !important; }
.lci-404-msg { color: var(--on-dark-2) !important; margin-bottom: 32px !important; font-size: 1.05rem !important; }

/* ═══════════════════════════════════════════════════════════════
   FOOTER — more visible, brighter headings
═══════════════════════════════════════════════════════════════ */
.lci-footer {
  background: var(--bg-dark-2) !important;
  border-top: 1px solid rgba(255,255,255,0.07);
  padding-top: 64px !important; padding-bottom: 0 !important;
  margin: 0 !important;
}
.lci-footer .wp-block-columns {
  max-width: 1120px;
  margin: 0 auto !important;
  padding: 0 1.75rem;
}

/* Logo in footer — brighter */
.lci-footer .wp-block-site-title a,
.lci-footer .wp-block-site-title {
  color: #fff !important;
  text-decoration: none !important;
  font-family: var(--font-head) !important;
  font-size: 1.1rem !important;
  font-weight: 800 !important;
}
.lci-footer .wp-block-site-logo img {
  height: 36px !important;
  width: auto !important;
  opacity: 1 !important; /* was invisible before */
}

/* Footer column headings — much brighter */
.lci-footer-col-title {
  font-family: var(--font-mono) !important;
  font-size: 0.68rem !important;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  /* Brighter: was rgba(255,255,255,0.3) */
  color: rgba(255,255,255,0.7) !important;
  margin-bottom: 18px !important;
  margin-top: 0 !important;
}

/* Footer links */
.lci-footer-links { list-style: none !important; padding: 0 !important; }
.lci-footer-links li { margin-bottom: 9px !important; }
.lci-footer-links a,
.lci-footer .wp-block-categories a {
  color: var(--on-dark-2) !important;
  font-size: 0.85rem !important;
  text-decoration: none !important;
  transition: color var(--ease);
}
.lci-footer-links a:hover,
.lci-footer .wp-block-categories a:hover { color: var(--accent-lt) !important; }
/* No arrows on external links */
.lci-footer-links a[target="_blank"]::after,
.lci-footer .wp-block-categories a[target="_blank"]::after { content: ''; }

.lci-footer-bottom {
  max-width: 1120px; margin: 0 auto !important;
  padding: 20px 1.75rem !important;
  border-top: 1px solid rgba(255,255,255,0.06);
  margin-top: 40px !important;
}
.lci-footer-copy { font-size: 0.8rem !important; color: var(--on-dark-2) !important; margin: 0 !important; }
.lci-linkedin-link { color: var(--on-dark-2) !important; transition: color var(--ease) !important; }
.lci-linkedin-link:hover { color: var(--accent-lt) !important; }

/* ═══════════════════════════════════════════════════════════════
   SOCIAL ICONS SYSTEM
   Use Appearance → Editor → Footer template part to add these.
   Each social link uses the class lci-social-icon-[platform]
═══════════════════════════════════════════════════════════════ */
.lci-social-links {
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px !important;
  margin-top: 16px !important;
  padding: 0 !important;
  list-style: none !important;
}
.lci-social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px; height: 36px;
  border-radius: 8px;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.1);
  transition: all var(--ease);
  text-decoration: none !important;
  color: var(--on-dark-2) !important;
}
.lci-social-link:hover {
  background: var(--accent) !important;
  border-color: var(--accent) !important;
  color: #fff !important;
  transform: translateY(-2px);
}
.lci-social-link svg { width: 16px; height: 16px; fill: currentColor; }

/* Platform-specific hover colours */
.lci-social-link.lci-linkedin:hover  { background: #0A66C2 !important; border-color: #0A66C2 !important; }
.lci-social-link.lci-twitter:hover,
.lci-social-link.lci-x:hover         { background: #000000 !important; border-color: #000 !important; }
.lci-social-link.lci-github:hover    { background: #333 !important; border-color: #333 !important; }
.lci-social-link.lci-youtube:hover   { background: #FF0000 !important; border-color: #FF0000 !important; }
.lci-social-link.lci-reddit:hover    { background: #FF4500 !important; border-color: #FF4500 !important; }
.lci-social-link.lci-facebook:hover  { background: #1877F2 !important; border-color: #1877F2 !important; }
.lci-social-link.lci-instagram:hover { background: #E1306C !important; border-color: #E1306C !important; }
.lci-social-link.lci-bluesky:hover   { background: #0085ff !important; border-color: #0085ff !important; }
.lci-social-link.lci-mastodon:hover  { background: #6364FF !important; border-color: #6364FF !important; }
.lci-social-link.lci-rss:hover       { background: #F26522 !important; border-color: #F26522 !important; }

/* WordPress Social Links block overrides */
.lci-footer .wp-block-social-links { gap: 8px !important; }
.lci-footer .wp-block-social-link {
  background: rgba(255,255,255,0.07) !important;
  border-radius: 8px !important;
  width: 36px; height: 36px;
  transition: all var(--ease) !important;
}
.lci-footer .wp-block-social-link:hover { background: var(--accent) !important; transform: translateY(-2px); }
.lci-footer .wp-block-social-link a { color: var(--on-dark-2) !important; padding: 0 !important; }
.lci-footer .wp-block-social-link-anchor svg { width: 16px; height: 16px; }

/* ═══════════════════════════════════════════════════════════════
   SEARCH BLOCK
═══════════════════════════════════════════════════════════════ */
.wp-block-search__input {
  border: 1.5px solid rgba(255,255,255,0.15) !important;
  border-radius: var(--r-sm) !important;
  padding: 11px 16px !important;
  font-size: 0.88rem !important; font-family: var(--font-body) !important;
  background: rgba(255,255,255,0.07) !important;
  color: var(--on-dark) !important; outline: none !important;
  transition: border-color var(--ease) !important;
}
.lci-404 .wp-block-search__input {
  border-color: rgba(255,255,255,0.15) !important;
  background: rgba(255,255,255,0.07) !important;
  color: #fff !important; max-width: 360px;
}
.wp-block-search__input::placeholder { color: rgba(255,255,255,0.35) !important; }
.wp-block-search__input:focus { border-color: var(--accent) !important; }
.wp-block-search__button {
  background: var(--accent) !important; color: #fff !important;
  border: none !important; border-radius: var(--r-sm) !important;
  padding: 11px 18px !important; font-weight: 600 !important;
  cursor: pointer !important; transition: background var(--ease) !important;
}
.wp-block-search__button:hover { background: var(--accent-dk) !important; }

/* ═══════════════════════════════════════════════════════════════
   GENERAL BUTTON
═══════════════════════════════════════════════════════════════ */
.wp-block-button__link {
  transition: transform 0.2s var(--ease), box-shadow 0.2s !important;
  font-family: var(--font-body) !important;
}
.wp-block-button__link:hover { transform: translateY(-1px); }

/* ═══════════════════════════════════════════════════════════════
   READING PROGRESS BAR
═══════════════════════════════════════════════════════════════ */
.lci-progress {
  position: fixed; top: 0; left: 0; right: 0;
  height: 3px; background: var(--accent);
  transform-origin: left; transform: scaleX(0);
  z-index: 9999; transition: transform 80ms linear;
}

/* ═══════════════════════════════════════════════════════════════
   CATEGORY TERM COLOURS
═══════════════════════════════════════════════════════════════ */
.lci-card-terms a[href*="power-platform"],
.lci-post-terms  a[href*="power-platform"] { background: var(--accent-dim); color: var(--accent-dk); border-color: var(--accent-mid); }
.lci-card-terms a[href*="power-automate"],
.lci-post-terms  a[href*="power-automate"] { background: var(--accent-dim); color: var(--accent-dk); border-color: var(--accent-mid); }
.lci-card-terms a[href*="power-apps"],
.lci-post-terms  a[href*="power-apps"]     { background: var(--blue-dim);   color: var(--blue);       border-color: #b8d5ef; }
.lci-card-terms a[href*="copilot"],
.lci-post-terms  a[href*="copilot"]        { background: #f0f0fe;           color: #5151c6;            border-color: #c7c7f0; }
.lci-card-terms a[href*="azure"],
.lci-post-terms  a[href*="azure"]          { background: var(--blue-dim);   color: var(--blue);       border-color: #b8d5ef; }
.lci-card-terms a[href*="ai-automation"],
.lci-post-terms  a[href*="ai-automation"]  { background: #f0f0fe;           color: #5151c6;            border-color: #c7c7f0; }

/* ═══════════════════════════════════════════════════════════════
   FULL WIDTH — sections break out of constrained container
   using the standard negative-margin technique
═══════════════════════════════════════════════════════════════ */
.wp-block-group.lci-hero,
.wp-block-group.lci-posts-section,
.wp-block-group.lci-about-strip,
.wp-block-group.lci-newsletter-section,
.wp-block-group.lci-archive-hero,
.wp-block-group.lci-post-hero {
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE — Tablet (≤900px) and Mobile (≤600px)
═══════════════════════════════════════════════════════════════ */

/* Tablet */
@media (max-width: 900px) {
  /* Header: hide long nav, show hamburger */
  .lci-header > .wp-block-group { padding: 0 1.25rem; }

  /* Hero */
  .lci-hero { padding: 72px 1.25rem !important; }
  .lci-hero-title { font-size: clamp(2rem, 5vw, 3rem) !important; }

  /* Sections */
  .lci-posts-section,
  .lci-about-strip,
  .lci-newsletter-section { padding: 72px 1.25rem !important; }

  /* Post layout: stack columns */
  .lci-post-layout .wp-block-columns { flex-direction: column !important; }
  .lci-post-layout .wp-block-column { flex-basis: 100% !important; width: 100% !important; }

  /* Footer columns */
  .lci-footer .wp-block-columns { flex-wrap: wrap !important; }
  .lci-footer .wp-block-column { flex-basis: 48% !important; min-width: 200px; }
  .lci-footer .wp-block-columns,
  .lci-footer-bottom { padding: 0 1.25rem !important; }
}

/* Mobile */
@media (max-width: 600px) {
  :root { --header-h: 56px; }

  /* Header */
  .lci-header { height: var(--header-h) !important; }
  .lci-header > .wp-block-group { height: var(--header-h); padding: 0 1rem; }
  .lci-header .wp-block-site-logo img { height: 28px !important; }
  .lci-header .wp-block-site-title { font-size: 0.95rem !important; }

  /* Hero */
  .lci-hero { padding: 56px 1rem !important; }
  .lci-hero-title { font-size: 2.1rem !important; }
  .lci-hero-desc { font-size: 0.95rem !important; }

  /* Buttons stacked */
  .lci-hero .wp-block-buttons { flex-direction: column !important; align-items: flex-start; }
  .lci-hero .wp-block-button { width: 100%; }
  .lci-hero .wp-block-button__link { width: 100%; text-align: center; justify-content: center !important; }

  /* Sections */
  .lci-posts-section,
  .lci-about-strip,
  .lci-newsletter-section { padding: 56px 1rem !important; }

  /* Newsletter card */
  .lci-nl-card { padding: 2rem 1.25rem !important; border-radius: var(--r-lg) !important; }

  /* Footer: single column */
  .lci-footer .wp-block-column { flex-basis: 100% !important; }
  .lci-footer .wp-block-columns,
  .lci-footer-bottom { padding: 0 1rem !important; }

  /* About stats: wrap */
  .lci-about-stats { gap: 1.5rem !important; }
  .lci-stat-n { font-size: 1.5rem !important; }

  /* 404 */
  .lci-404 { padding: 56px 1rem !important; }
  .lci-404-num { font-size: clamp(5rem, 20vw, 8rem) !important; }
}

