/*
 * Lawvocado — theme.css
 * Avocado green · warm cream · Syne / Lora / DM Sans
 */

/* ── Variables ──────────────────────────────────────────────────────────── */
:root {
  --lv-green:        #3D6B35;
  --lv-green-dark:   #2A4A24;
  --lv-green-light:  #5A8F4F;
  --lv-pit:          #8B4513;
  --lv-cream:        #FEFCF5;
  --lv-cream-warm:   #F7F2E4;
  --lv-cream-border: #EDE8D6;
  --lv-text:         #1C1C1C;
  --lv-text-mid:     #4A4A4A;
  --lv-text-light:   #888888;
  --lv-white:        #FFFFFF;
  --lv-yellow:       #F2C94C;
  --lv-yellow-pale:  rgba(242,201,76,.15);
  --lv-red:          #C0392B;
  --lv-blue:         #00308F;
  --lv-max:          1200px;
}

/* ── Reset ──────────────────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  line-height: 1.6;
  background: var(--lv-cream);
  color: var(--lv-text);
  overflow-x: hidden;
  cursor: none;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--lv-green); }
a:focus-visible { outline: 2px solid var(--lv-yellow); outline-offset: 3px; }

/* ── Typography ─────────────────────────────────────────────────────────── */
h1, h2, h3, h4 { font-family: 'Syne', sans-serif; letter-spacing: -0.02em; color: var(--lv-text); }
.lv-italic, em { font-family: 'Lora', serif; font-style: italic; }

/* ── Accessibility ──────────────────────────────────────────────────────── */
.screen-reader-text, .lv-skip-link {
  position: absolute; width: 1px; height: 1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap;
}
.lv-skip-link:focus {
  position: fixed; top: 0; left: 0; width: auto; height: auto; clip: auto;
  background: var(--lv-yellow); color: var(--lv-green-dark);
  padding: .5rem 1rem; z-index: 9999; font-weight: 700;
}

/* ── Custom Cursor ──────────────────────────────────────────────────────── */
.lv-cursor {
  width: 20px; height: 20px;
  border: 2px solid var(--lv-green);
  border-radius: 50%;
  position: fixed; pointer-events: none; z-index: 9999;
  transition: transform .15s ease, border-color .2s;
  transform: translate(-50%, -50%);
}
.lv-cursor-dot {
  width: 5px; height: 5px;
  background: var(--lv-pit); border-radius: 50%;
  position: fixed; pointer-events: none; z-index: 9999;
  transform: translate(-50%, -50%);
}
.lv-cursor.hovering { transform: translate(-50%,-50%) scale(2); border-color: var(--lv-pit); }

/* ── Layout ─────────────────────────────────────────────────────────────── */
.lv-container { max-width: var(--lv-max); margin: 0 auto; padding: 0 2rem; }
.lv-layout--two-col {
  max-width: var(--lv-max); margin: 0 auto;
  padding: 3.5rem 2rem;
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 3.5rem;
  align-items: start;
}
.lv-section { margin-bottom: 3.5rem; }

/* ── Buttons ────────────────────────────────────────────────────────────── */
.lv-btn-primary {
  display: inline-block;
  background: var(--lv-yellow); color: var(--lv-green-dark);
  font-weight: 700; font-size: .875rem; letter-spacing: .03em;
  padding: .75rem 1.75rem; border-radius: 2rem;
  text-decoration: none; border: none; cursor: pointer;
  transition: background .2s, transform .15s, box-shadow .2s;
}
.lv-btn-primary:hover { background: #F5D46A; transform: translateY(-2px); box-shadow: 0 8px 24px rgba(242,201,76,.3); color: var(--lv-green-dark); }
.lv-btn-primary--sm { font-size: .8rem; padding: .55rem 1.25rem; }

.lv-btn-ghost {
  display: inline-flex; align-items: center; gap: .5rem;
  color: rgba(255,255,255,.7); font-size: .875rem;
  text-decoration: none; transition: color .2s;
}
.lv-btn-ghost:hover { color: var(--lv-yellow); }

/* ── Header ─────────────────────────────────────────────────────────────── */
.lv-header {
  background: var(--lv-green-dark);
  position: sticky; top: 0; z-index: 100;
  border-bottom: 3px solid var(--lv-yellow);
}
.lv-header__inner {
  max-width: var(--lv-max); margin: 0 auto; padding: 0 2rem;
  display: flex; align-items: center; justify-content: space-between;
  height: 68px; gap: 2rem;
}

/* Logo */
.lv-logo { display: flex; align-items: center; gap: .75rem; text-decoration: none; }
.lv-logo__icon { font-size: 2rem; line-height: 1; animation: lvWobble 4s ease-in-out infinite; }
@keyframes lvWobble { 0%,100%{transform:rotate(-5deg)} 50%{transform:rotate(5deg)} }
.lv-logo__name {
  font-family: 'Syne', sans-serif; font-weight: 800; font-size: 1.35rem;
  color: var(--lv-cream); letter-spacing: -.02em; display: block;
}
.lv-logo__name span { color: var(--lv-yellow); }
.lv-logo__tagline {
  font-size: .55rem; color: rgba(255,255,255,.4);
  letter-spacing: .2em; text-transform: uppercase; display: block; margin-top: 1px;
}
.lv-logo--footer .lv-logo__name { font-size: 1.1rem; }

/* Nav */
.lv-nav__list { display: flex; gap: .25rem; list-style: none; align-items: center; flex-wrap: wrap; }
.lv-nav__list a {
  font-size: .8rem; font-weight: 500; color: rgba(255,255,255,.65);
  text-decoration: none; padding: .4rem .9rem; border-radius: 2rem; transition: all .2s;
}
.lv-nav__list a:hover { background: rgba(255,255,255,.1); color: var(--lv-cream); }
.lv-nav__fr {
  font-size: .8rem; font-weight: 500;
  background: rgba(242,201,76,.15); color: var(--lv-yellow) !important;
  border: 1px solid rgba(242,201,76,.3);
  padding: .4rem .9rem; border-radius: 2rem; text-decoration: none; transition: all .2s;
  margin-left: .5rem;
}
.lv-nav__fr:hover { background: rgba(242,201,76,.25) !important; }

.lv-mobile-toggle {
  display: none; background: none; border: none; cursor: pointer;
  padding: .5rem; flex-direction: column; gap: 4px;
}
.lv-mobile-toggle span { display: block; width: 22px; height: 2px; background: var(--lv-white); transition: transform .2s; }

/* ── Hero ───────────────────────────────────────────────────────────────── */
.lv-hero {
  background: var(--lv-green-dark);
  padding: 5rem 2rem 0; position: relative; overflow: hidden;
}
.lv-hero::after {
  content: '🥑'; position: absolute; right: -2rem; top: 50%;
  transform: translateY(-50%); font-size: 22rem; opacity: .04;
  pointer-events: none; animation: lvHeroFloat 8s ease-in-out infinite;
}
@keyframes lvHeroFloat { 0%,100%{transform:translateY(-50%) rotate(-10deg)} 50%{transform:translateY(-55%) rotate(10deg)} }

.lv-hero__inner {
  max-width: var(--lv-max); margin: 0 auto;
  display: grid; grid-template-columns: 1fr 420px;
  gap: 4rem; align-items: end; position: relative; z-index: 1;
}

.lv-hero__kicker {
  font-size: .7rem; letter-spacing: .25em; text-transform: uppercase;
  color: var(--lv-yellow); margin-bottom: 1.25rem;
  display: flex; align-items: center; gap: .75rem;
  animation: lvFadeUp .6s ease both;
}
.lv-hero__kicker::before { content: ''; width: 30px; height: 2px; background: var(--lv-yellow); display: block; }

.lv-hero__title {
  font-family: 'Syne', sans-serif; font-weight: 800;
  font-size: clamp(2.8rem, 6vw, 5rem); line-height: .95;
  letter-spacing: -.03em; color: var(--lv-white); margin-bottom: 1.5rem;
  animation: lvFadeUp .6s .1s ease both;
}
.lv-hero__title em { font-style: italic; font-family: 'Lora', serif; color: var(--lv-yellow); font-weight: 400; }

.lv-hero__desc {
  font-size: 1.05rem; font-weight: 300; color: rgba(255,255,255,.6);
  line-height: 1.7; max-width: 500px; margin-bottom: 2.5rem;
  animation: lvFadeUp .6s .2s ease both;
}
.lv-hero__actions { display: flex; gap: 1rem; flex-wrap: wrap; align-items: center; animation: lvFadeUp .6s .3s ease both; }

/* Hero Card */
.lv-hero__card {
  background: var(--lv-white); border-radius: 1rem 1rem 0 0; padding: 2rem;
  animation: lvFadeUp .6s .35s ease both;
}
.lv-hero__card-label {
  font-size: .58rem; letter-spacing: .25em; font-weight: 700;
  color: var(--lv-green); display: block; margin-bottom: .75rem; text-transform: uppercase;
}
.lv-hero__card-title {
  font-family: 'Lora', serif; font-size: 1.15rem; font-style: italic;
  color: var(--lv-text); line-height: 1.5; margin-bottom: 1rem;
}
.lv-hero__card-excerpt {
  font-size: .875rem; color: var(--lv-text-mid); line-height: 1.7;
  padding-top: 1rem; border-top: 2px solid var(--lv-cream-border);
  margin-bottom: 1rem;
}
.lv-hero__card-meta { display: flex; gap: .5rem; flex-wrap: wrap; margin-bottom: 1rem; }
.lv-hero__card-leg { font-size: .65rem; color: var(--lv-text-light); }
.lv-hero__card-link {
  font-size: .82rem; font-weight: 700; color: var(--lv-green);
  text-decoration: none; display: inline-block;
}
.lv-hero__card-link:hover { text-decoration: underline; }

/* ── Ticker ─────────────────────────────────────────────────────────────── */
.lv-ticker {
  background: var(--lv-green); padding: .65rem 0;
  overflow: hidden; white-space: nowrap;
  border-top: 1px solid rgba(255,255,255,.1); border-bottom: 1px solid rgba(255,255,255,.1);
}
.lv-ticker__inner {
  display: inline-flex; gap: 3rem;
  animation: lvTicker 30s linear infinite;
  font-size: .75rem; font-weight: 500; letter-spacing: .1em;
  color: rgba(255,255,255,.75);
}
@keyframes lvTicker { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }
.lv-ticker__dot { color: var(--lv-yellow); margin: 0 .25rem; }

/* ── Keyframes ──────────────────────────────────────────────────────────── */
@keyframes lvFadeUp {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ── Section Labels ─────────────────────────────────────────────────────── */
.lv-section-eyebrow {
  font-size: .65rem; font-weight: 700; letter-spacing: .3em; text-transform: uppercase;
  color: var(--lv-green); margin-bottom: .5rem;
  display: flex; align-items: center; gap: .6rem;
}
.lv-section-eyebrow::after { content: ''; flex: 1; height: 1px; background: var(--lv-cream-border); max-width: 60px; }
.lv-section-title { font-size: clamp(1.5rem, 2.5vw, 2rem); font-weight: 700; color: var(--lv-text); margin-bottom: .5rem; }
.lv-section-sub { font-size: .9rem; color: var(--lv-text-light); margin-bottom: 2rem; line-height: 1.6; }

/* ── Topic Pills ────────────────────────────────────────────────────────── */
.lv-topic-pills { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 2.5rem; }
.lv-topic-pill {
  font-size: .75rem; font-weight: 600; padding: .4rem 1rem;
  border-radius: 2rem; border: 1.5px solid var(--lv-cream-border);
  background: var(--lv-white); color: var(--lv-text-mid);
  text-decoration: none; transition: all .2s; cursor: pointer;
}
.lv-topic-pill:hover, .lv-topic-pill.active { background: var(--lv-green); border-color: var(--lv-green); color: var(--lv-white); }

/* ── Tags ───────────────────────────────────────────────────────────────── */
.lv-tag {
  font-size: .6rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase;
  padding: .2rem .6rem; border-radius: 1rem; display: inline-block; text-decoration: none;
}
.tag-tenant     { background: rgba(61,107,53,.1);  color: var(--lv-green); }
.tag-privacy    { background: rgba(139,69,19,.1);  color: var(--lv-pit); }
.tag-atip       { background: var(--lv-yellow-pale); color: #7A6020; }
.tag-debt       { background: rgba(192,57,43,.1);  color: var(--lv-red); }
.tag-small      { background: rgba(0,0,0,.06);     color: var(--lv-text-mid); }
.tag-franco     { background: rgba(0,48,143,.1);   color: var(--lv-blue); }
.tag-employment { background: rgba(100,0,143,.1);  color: #64008F; }
.tag-default    { background: rgba(0,0,0,.06);     color: var(--lv-text-mid); }

/* ── Article Cards ──────────────────────────────────────────────────────── */
.lv-article-grid { display: flex; flex-direction: column; gap: 1px; background: var(--lv-cream-border); margin-bottom: 2rem; }

.lv-article-card {
  background: var(--lv-white); padding: 1.75rem 2rem;
  display: grid; grid-template-columns: 1fr auto;
  gap: 1.5rem; align-items: start;
  text-decoration: none; color: inherit;
  transition: background .2s;
  position: relative; overflow: hidden;
  opacity: 0; transform: translateY(16px);
  transition: background .2s, opacity .4s ease, transform .4s ease;
}
.lv-article-card.lv-visible { opacity: 1; transform: translateY(0); }
.lv-article-card::before {
  content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px;
  background: var(--lv-green); transform: scaleY(0); transform-origin: bottom; transition: transform .3s;
}
.lv-article-card:hover { background: #FAFDF9; }
.lv-article-card:hover::before { transform: scaleY(1); }

.lv-article-card__meta { display: flex; align-items: center; gap: .75rem; margin-bottom: .6rem; flex-wrap: wrap; }
.lv-read-time { font-size: .65rem; color: var(--lv-text-light); letter-spacing: .05em; }
.lv-article-card__title { font-family: 'Syne', sans-serif; font-weight: 700; font-size: 1.05rem; color: var(--lv-text); line-height: 1.3; margin-bottom: .5rem; }
.lv-article-card:hover .lv-article-card__title { color: var(--lv-green-dark); }
.lv-article-card__excerpt { font-size: .85rem; color: var(--lv-text-light); line-height: 1.65; max-width: 560px; }
.lv-article-card__leg { font-size: .65rem; color: var(--lv-text-light); margin-top: .5rem; display: block; }
.lv-article-card__right { text-align: right; flex-shrink: 0; }
.lv-article-card__emoji { font-size: 2.5rem; display: block; margin-bottom: .5rem; }
.lv-article-card__arrow { font-size: 1rem; color: var(--lv-green); opacity: 0; transition: opacity .2s, transform .2s; display: block; }
.lv-article-card:hover .lv-article-card__arrow { opacity: 1; transform: translateX(4px); }

/* ── Single Article ─────────────────────────────────────────────────────── */
.lv-article-single {
  background: var(--lv-white); padding: 2.5rem;
  border-left: 4px solid var(--lv-green); margin-bottom: 2rem;
}
.lv-article-single__header { margin-bottom: 2rem; padding-bottom: 1.5rem; border-bottom: 2px solid var(--lv-cream-border); }
.lv-article-single__meta { display: flex; align-items: center; gap: .75rem; margin-bottom: .75rem; flex-wrap: wrap; }
.lv-article-single__title { font-size: clamp(1.6rem, 3vw, 2.4rem); font-weight: 800; color: var(--lv-green-dark); margin-bottom: .75rem; }
.lv-article-single__deck { font-family: 'Lora', serif; font-style: italic; font-size: 1.1rem; color: var(--lv-text-mid); line-height: 1.6; margin-bottom: 1rem; }

.lv-article-single__byline { font-size: .78rem; color: var(--lv-text-light); display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
.lv-byline__author { font-weight: 600; color: var(--lv-text); }
.lv-byline__creds { font-size: .7rem; color: var(--lv-green); }
.lv-byline__sep { color: var(--lv-cream-border); }
.lv-byline__leg { font-size: .7rem; color: var(--lv-green); }

.lv-article-single__content.lv-prose h2 { font-size: 1.4rem; color: var(--lv-green-dark); margin: 2rem 0 .75rem; }
.lv-article-single__content.lv-prose h3 { font-size: 1.05rem; color: var(--lv-text); margin: 1.75rem 0 .6rem; }
.lv-article-single__content.lv-prose p { font-size: .9rem; line-height: 1.8; color: var(--lv-text-mid); margin-bottom: 1rem; }
.lv-article-single__content.lv-prose ul { margin: .5rem 0 1rem 1.5rem; }
.lv-article-single__content.lv-prose li { font-size: .875rem; color: var(--lv-text-mid); line-height: 1.7; margin-bottom: .35rem; }
.lv-article-single__content.lv-prose a { color: var(--lv-green); }

.lv-article-single__footer {
  margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--lv-cream-border);
  display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1rem;
}
.lv-article-single__byline-footer { font-size: .8rem; color: var(--lv-text-light); }
.lv-article-single__byline-footer strong { color: var(--lv-green-dark); }
.lv-article-single__byline-footer a { color: var(--lv-green); text-decoration: none; }
.lv-article-single__topics { display: flex; gap: .5rem; flex-wrap: wrap; }

/* Related */
.lv-related { margin-top: 3rem; }

/* ── Callout ─────────────────────────────────────────────────────────────── */
.lv-callout {
  background: var(--lv-yellow-pale); border-left: 3px solid var(--lv-yellow);
  padding: 1rem 1.25rem; margin: 1.5rem 0; font-size: .875rem;
  color: var(--lv-text); line-height: 1.65; border-radius: 0 .5rem .5rem 0;
}
.lv-callout--warning { background: rgba(192,57,43,.06); border-left-color: var(--lv-red); }
.lv-callout--intro { margin-bottom: 1.5rem; }
.lv-callout__title { display: block; font-weight: 700; margin-bottom: .35rem; color: var(--lv-green-dark); }
.lv-callout--warning .lv-callout__title { color: var(--lv-red); }

/* ── Numbers Grid (shortcode) ────────────────────────────────────────────── */
.lv-numbers-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1rem; margin: 1.5rem 0; }
.lv-number-card { background: var(--lv-white); border: 1px solid var(--lv-cream-border); padding: 1.25rem; border-left: 3px solid var(--lv-yellow); }
.lv-number-card__val { font-family: 'Syne', sans-serif; font-size: 2rem; font-weight: 800; color: var(--lv-green); line-height: 1; margin-bottom: .35rem; }
.lv-number-card__title { font-size: .8rem; font-weight: 600; color: var(--lv-text); margin-bottom: .4rem; }
.lv-number-card__desc { font-size: .75rem; color: var(--lv-text-light); line-height: 1.55; }

/* ── Sidebar ─────────────────────────────────────────────────────────────── */
.lv-sidebar-card {
  background: var(--lv-white); padding: 1.5rem; margin-bottom: 1.5rem;
  border-radius: .75rem; border: 1px solid var(--lv-cream-border);
}
.lv-sidebar-card--dark { background: var(--lv-green-dark); border-color: transparent; }
.lv-sidebar-card--cta  { background: var(--lv-green); border-color: transparent; }
.lv-sidebar-card--cta p { font-size: .82rem; color: rgba(255,255,255,.75); line-height: 1.65; margin-bottom: 1rem; }
.lv-sidebar-card__title { font-family: 'Syne', sans-serif; font-weight: 700; font-size: .9rem; color: var(--lv-text); margin-bottom: 1rem; }
.lv-sidebar-card--dark .lv-sidebar-card__title { color: var(--lv-yellow); }
.lv-sidebar-card--cta  .lv-sidebar-card__title, .lv-sidebar-card__title--light { color: var(--lv-white) !important; }

.lv-know-number { display: flex; align-items: flex-start; gap: .75rem; margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: 1px solid rgba(255,255,255,.08); }
.lv-know-number:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
.lv-know-num { font-family: 'Syne', sans-serif; font-weight: 800; font-size: 1.3rem; color: var(--lv-yellow); line-height: 1; flex-shrink: 0; min-width: 3rem; }
.lv-know-text { font-size: .75rem; color: rgba(255,255,255,.6); line-height: 1.55; }
.lv-know-text strong { color: var(--lv-white); display: block; font-size: .78rem; margin-bottom: .15rem; }

.lv-quick-links a {
  display: flex; align-items: center; justify-content: space-between;
  padding: .6rem 0; border-bottom: 1px solid var(--lv-cream-border);
  text-decoration: none; font-size: .82rem; color: var(--lv-text); font-weight: 500; transition: color .2s;
}
.lv-quick-links a:last-child { border-bottom: none; }
.lv-quick-links a:hover { color: var(--lv-green); }
.lv-quick-links a::after { content: '→'; color: var(--lv-green); font-size: .75rem; }

/* Author Card */
.lv-author-card { background: var(--lv-cream-warm); border: 1px solid var(--lv-cream-border); border-radius: .75rem; padding: 1.5rem; margin-bottom: 1.5rem; text-align: center; }
.lv-author-card__avatar { width: 72px; height: 72px; border-radius: 50%; background: var(--lv-green); margin: 0 auto 1rem; display: flex; align-items: center; justify-content: center; font-size: 2rem; }
.lv-author-card__name { font-family: 'Syne', sans-serif; font-weight: 700; font-size: .95rem; color: var(--lv-text); margin-bottom: .25rem; }
.lv-author-card__creds { font-size: .7rem; color: var(--lv-text-light); line-height: 1.5; margin-bottom: .75rem; }
.lv-author-card__bio { font-size: .78rem; color: var(--lv-text-mid); line-height: 1.6; }

/* ── Breadcrumbs ─────────────────────────────────────────────────────────── */
.lv-breadcrumbs { font-size: .78rem; color: var(--lv-text-light); margin: 1.5rem 0; display: flex; align-items: center; gap: .4rem; flex-wrap: wrap; }
.lv-breadcrumbs a { color: var(--lv-green); text-decoration: none; }
.lv-breadcrumbs a:hover { text-decoration: underline; }
.lv-breadcrumb__sep { color: var(--lv-cream-border); }

/* ── Jurisdiction ────────────────────────────────────────────────────────── */
.lv-jurisdiction { font-size: .65rem; color: var(--lv-green); letter-spacing: .08em; text-transform: uppercase; }

/* ── No Results ──────────────────────────────────────────────────────────── */
.lv-no-results { font-size: .875rem; color: var(--lv-text-light); padding: 1.5rem 0; }

/* ── Footer ──────────────────────────────────────────────────────────────── */
.lv-footer { background: var(--lv-green-dark); padding: 3.5rem 2rem 2rem; margin-top: 2rem; }
.lv-footer__inner { max-width: var(--lv-max); margin: 0 auto; display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 3rem; margin-bottom: 2.5rem; }
.lv-footer__brand .lv-logo { margin-bottom: 1rem; display: inline-flex; }
.lv-footer__tagline { font-size: .82rem; color: rgba(255,255,255,.45); line-height: 1.7; margin-bottom: 1rem; }
.lv-footer__disclaimer { font-size: .65rem; color: rgba(255,255,255,.2); line-height: 1.7; }
.lv-footer__col-title { font-family: 'Syne', sans-serif; font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--lv-yellow); margin-bottom: 1rem; }
.lv-footer__links { list-style: none; }
.lv-footer__links a, .lv-footer__links li a { display: block; font-size: .82rem; color: rgba(255,255,255,.5); text-decoration: none; margin-bottom: .5rem; transition: color .2s; }
.lv-footer__links a:hover, .lv-footer__links li a:hover { color: var(--lv-yellow); }

.lv-footer__bottom { max-width: var(--lv-max); margin: 0 auto; display: flex; justify-content: space-between; align-items: center; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,.07); font-size: .65rem; color: rgba(255,255,255,.25); letter-spacing: .08em; flex-wrap: wrap; gap: .5rem; }
.lv-footer__bottom a { color: var(--lv-yellow); text-decoration: none; }

/* ── Responsive ──────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .lv-layout--two-col { grid-template-columns: 1fr; }
  .lv-hero__inner { grid-template-columns: 1fr; }
  .lv-hero__card { display: none; }
  .lv-footer__inner { grid-template-columns: 1fr 1fr; }
  body { cursor: auto; }
  .lv-cursor, .lv-cursor-dot { display: none; }
}
@media (max-width: 640px) {
  .lv-header__inner { gap: 1rem; }
  .lv-nav { display: none; }
  .lv-nav--open { display: flex; position: absolute; top: 68px; left: 0; right: 0; background: var(--lv-green-dark); flex-direction: column; padding: 1rem 2rem; border-bottom: 1px solid rgba(255,255,255,.1); z-index: 99; }
  .lv-nav__list { flex-direction: column; gap: .75rem; }
  .lv-mobile-toggle { display: flex; }
  .lv-article-card { grid-template-columns: 1fr; }
  .lv-article-card__right { display: none; }
  .lv-footer__inner { grid-template-columns: 1fr; gap: 1.5rem; }
  .lv-hero { padding: 3.5rem 1.5rem 0; }
  .lv-layout--two-col { padding: 2rem 1.5rem; }
}
