/* ============================================================================
   Leads a la Carta 2.0 — landing (leads-a-la-carta.html).
   Briefing: VELACCIO_Claude_Ejecucion_Landing_Leads_a_la_Carta_2_0.md, §6 y §16.3.

   Loaded only by this page; every rule hangs off an lc-* class or
   .lc-landing (the class on its <main>), so header, footer, cookie banner
   and the other pages are untouched.

   Tokens: §6.2 says to reuse the site's approved ones when they exist, so
   the colours come from base.css themes (data-theme) and the one accent is
   the Velaccio light (--warm), not the brief's suggested blue. Rhythm (§16.3):
   dark hero → light/grey explanation → dark proof → light form.
   Motion: transform/opacity only, once, none with reduced motion; nothing
   is hidden if JS does not run.
   ========================================================================== */

/* anchors: base.css keeps them clear of the header already */
.lc-landing [id] { scroll-margin-top: 8px; }

/* ── tipografía ──────────────────────────────────────────────────────────── */
.lc-eye { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 18px; font-size: .75rem; font-weight: 500; letter-spacing: .1em; color: var(--fg-2); }
.lc-eye::before { content: ""; width: 18px; height: 2px; border-radius: 2px; background: var(--warm); }
.lc-h1 { font-family: var(--f-sans); font-weight: 500; font-size: clamp(2.25rem, 1.35rem + 2.6vw, 4rem); line-height: 1.04; letter-spacing: -.035em; text-wrap: balance; }
.lc-h2 { font-family: var(--f-sans); font-weight: 500; font-size: clamp(1.75rem, 1.1rem + 2vw, 3.125rem); line-height: 1.08; letter-spacing: -.03em; text-wrap: balance; }
.lc-h3 { font-family: var(--f-sans); font-weight: 500; font-size: clamp(1.25rem, 1.05rem + .7vw, 1.75rem); line-height: 1.2; letter-spacing: -.02em; text-wrap: balance; }
.lc-p { font-size: clamp(1rem, .97rem + .12vw, 1.0625rem); line-height: 1.6; color: var(--fg-2); text-wrap: pretty; }
.lc-lead { max-width: 60ch; font-size: clamp(1.0625rem, 1rem + .3vw, 1.25rem); line-height: 1.55; color: var(--fg-2); text-wrap: pretty; }
.lc-micro { font-size: .875rem; line-height: 1.5; color: var(--fg-3); }
.lc-note { max-width: 72ch; margin-top: 32px; font-size: .875rem; line-height: 1.6; color: var(--fg-3); }
.lc-quote { margin-top: 28px; padding-left: 18px; border-left: 2px solid var(--c-orange); font-size: clamp(1.125rem, 1.05rem + .35vw, 1.375rem); line-height: 1.4; letter-spacing: -.01em; text-wrap: balance; }

/* ── secciones ───────────────────────────────────────────────────────────── */
.lc-sec { padding-block: clamp(64px, 8vw, 128px); }
.lc-head { max-width: 780px; margin-bottom: clamp(32px, 4vw, 56px); }
.lc-head .lc-lead { margin-top: 18px; }
.lc-head--c { margin-inline: auto; text-align: center; }
.lc-head--c .lc-eye { justify-content: center; }
.lc-head--c .lc-lead { margin-inline: auto; }
.lc-after { margin-top: 36px; }

.lc-ctas { display: flex; flex-wrap: wrap; gap: 10px; }
.lc-bo { height: 48px; padding: 0 20px; font-size: .9375rem; }
.lc-landing .bt { min-height: 48px; }
.lc-landing .bs { min-height: 44px; }
@media (max-width: 559px) { .lc-ctas > * { width: 100%; } .lc-ctas .bt__t { flex: 1; justify-content: center; } .lc-ctas .lc-bo { justify-content: center; } }

/* ── S01 · hero ──────────────────────────────────────────────────────────── */
.lc-hero { padding: calc(var(--hd-h) + clamp(36px, 6vw, 88px)) 0 clamp(48px, 6vw, 88px); overflow: clip; background-image: var(--glow); background-repeat: no-repeat; background-size: 100% 640px; }
.lc-hero__grid { display: grid; gap: 48px; align-items: center; }
.lc-hero__copy .lc-h1 { margin-bottom: 22px; }
.lc-hero__copy .lc-ctas { margin-top: 30px; }
.lc-hero__copy .lc-micro { margin-top: 14px; }
.lc-trust { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-top: 28px; font-size: .875rem; color: var(--fg-2); }
.lc-trust li { display: inline-flex; align-items: center; gap: 8px; }
.lc-trust li::before { content: ""; width: 14px; height: 14px; flex: none; border-radius: 50%; background: var(--warm); -webkit-mask: radial-gradient(circle, #000 2.5px, transparent 3px); mask: radial-gradient(circle, #000 2.5px, transparent 3px); }
@media (min-width: 1024px) { .lc-hero__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 64px; } }

/* the three connected surfaces */
.lc-flow { position: relative; width: min(100%, 440px); margin-inline: auto; }
.lc-flow__list { position: relative; display: grid; gap: 22px; }
.lc-flow__line { position: absolute; left: 34px; top: 40px; bottom: 40px; width: 10px; height: calc(100% - 80px); overflow: visible; }
.lc-flow__line path { fill: none; stroke: var(--warm); stroke-width: 2px; vector-effect: non-scaling-stroke; stroke-dasharray: 1; stroke-dashoffset: 0; }
.lc-flow__c { position: relative; display: grid; grid-template-columns: 48px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 16px; align-items: center; padding: 18px 20px; border-radius: 20px; background: rgba(255, 255, 255, .06); box-shadow: inset 0 0 0 1px var(--line); }
.lc-flow__n { grid-row: 1 / 3; display: grid; place-items: center; width: 30px; height: 30px; margin-left: 4px; border-radius: 50%; background: var(--bg); box-shadow: inset 0 0 0 1px var(--line); font-size: .75rem; font-feature-settings: "tnum" 1; color: var(--fg-2); z-index: 1; }
.lc-flow__t { font-weight: 500; font-size: 1rem; }
.lc-flow__ad, .lc-flow__form { display: grid; gap: 7px; margin-top: 12px; }
.lc-flow__ad { grid-template-columns: 56px minmax(0, 1fr); }
.lc-flow__ad .lc-sk--img { grid-row: 1 / 3; height: 56px; border-radius: 10px; background: linear-gradient(135deg, rgba(255, 255, 255, .14), rgba(255, 255, 255, .04)); }
.lc-sk { display: block; height: 8px; border-radius: 4px; background: rgba(255, 255, 255, .12); }
.lc-sk--s { width: 60%; }
.lc-sk--f { height: 22px; border-radius: 6px; background: rgba(255, 255, 255, .07); box-shadow: inset 0 0 0 1px var(--line); }
.lc-sk--btn { width: 44%; height: 22px; border-radius: 6px; background: var(--warm); opacity: .85; }
.lc-flow__c--end { grid-template-columns: 48px minmax(0, 1fr) auto; }
.lc-flow__c--end .lc-flow__n { grid-row: auto; }
.lc-flow__ok { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--warm); color: #0D0D0D; }
.lc-flow__ok svg { width: 16px; height: 16px; }

/* §6.6 / §16.3: title and buttons together, then the three cards with a
   short stagger, once; the line draws after them. */
.js .lc-hero__copy > * { animation: lc-up .55s var(--ease) both; }
.js .lc-hero__copy > .lc-ctas, .js .lc-hero__copy > .lc-micro, .js .lc-hero__copy > .lc-trust { animation-delay: .1s; }
.js .lc-flow__c { animation: lc-up .5s var(--ease) .2s both; }
.js .lc-flow__c:nth-child(2) { animation-delay: .27s; }
.js .lc-flow__c:nth-child(3) { animation-delay: .34s; }
.js .lc-flow__line path { stroke-dashoffset: 1; animation: lc-draw .6s var(--ease) .45s forwards; }
@keyframes lc-up { from { opacity: 0; transform: translateY(12px); } }
@keyframes lc-draw { to { stroke-dashoffset: 0; } }

/* ── S02 · experiencia ───────────────────────────────────────────────────── */
.lc-exp { padding: 0 0 clamp(56px, 7vw, 96px); }
.lc-exp__in { display: grid; gap: 32px; padding-top: clamp(32px, 4vw, 48px); border-top: 1px solid var(--line); }
.lc-exp__copy .lc-p { margin-top: 12px; max-width: 58ch; }
.lc-logos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; align-items: center; justify-items: center; }
.lc-logos li { display: grid; place-items: center; width: 100%; height: 56px; }
/* the image comes inline (mask-image on the element): a url() inside a custom
   property would resolve against this stylesheet, not the page */
.lc-mark { display: block; max-width: 100%; max-height: 100%; height: 40px; background-color: currentColor; -webkit-mask-position: center; mask-position: center; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; }
.lc-logos .lc-mark { height: 40px; max-width: 150px; color: var(--fg-2); }
@media (min-width: 640px) { .lc-logos { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1024px) {
  .lc-exp__in { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 64px; align-items: center; }
}

/* ── tarjetas (S03, S09) ─────────────────────────────────────────────────── */
.lc-cards { display: grid; gap: 14px; }
.lc-card { display: grid; gap: 10px; align-content: start; padding: clamp(22px, 2.4vw, 32px); border-radius: 20px; background: var(--soft); }
.lc-card__t { font-size: clamp(1.0625rem, 1rem + .3vw, 1.25rem); font-weight: 500; line-height: 1.3; letter-spacing: -.01em; }
.lc-ico { display: grid; place-items: center; width: 40px; height: 40px; margin-bottom: 6px; border-radius: 12px; background: var(--bg); box-shadow: inset 0 0 0 1px var(--line); }
.lc-ico svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
@media (min-width: 768px) { .lc-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1180px) { .lc-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); } .lc-cards--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 768px) and (max-width: 1179px) { .lc-cards--3 > :last-child { grid-column: 1 / -1; } }

/* ── S04 · pasos ─────────────────────────────────────────────────────────── */
.lc-steps { position: relative; display: grid; gap: 14px; }
.lc-step { position: relative; display: grid; gap: 10px; align-content: start; padding: 24px 24px 28px 64px; border-radius: 20px; background: var(--bg); }
/* on the grey sections the theme background is the section itself: cards go white */
[data-theme="grey"] .lc-step, [data-theme="grey"] .lc-yn, [data-theme="grey"] .lc-ficha, [data-theme="grey"] .lc-band, [data-theme="grey"] .lc-card { background: #fff; }
[data-theme="grey"] .lc-card .lc-ico { background: var(--soft); }
.lc-step__n { position: absolute; left: 20px; top: 22px; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--warm); color: #0D0D0D; font-size: .75rem; font-weight: 500; font-feature-settings: "tnum" 1; }
/* phone: a vertical line joins the numbers */
.lc-steps::before { content: ""; position: absolute; left: 34px; top: 40px; bottom: 40px; width: 2px; background: var(--line); }
@media (min-width: 1024px) {
  .lc-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .lc-steps::before { left: 40px; right: 40px; top: 37px; bottom: auto; width: auto; height: 2px; }
  .lc-step { padding: 76px 24px 28px; }
  .lc-step__n { left: 24px; }
}

/* ── S05 · qué incluye ───────────────────────────────────────────────────── */
.lc-inc { display: grid; gap: 48px; align-items: center; }
.lc-inc__copy .lc-lead { margin-top: 18px; }
.lc-checks { display: grid; gap: 12px 28px; margin-top: 32px; }
.lc-checks li { position: relative; padding-left: 30px; font-size: 1rem; line-height: 1.5; }
.lc-checks li::before { content: ""; position: absolute; left: 0; top: .2em; width: 18px; height: 18px; border-radius: 50%; background: var(--c-orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.3l2.6 2.6L12 5.5' fill='none' stroke='%230D0D0D' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px no-repeat; }
@media (min-width: 768px) { .lc-checks { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.lc-split { display: grid; gap: 14px; padding: 24px; border-radius: 24px; background: var(--soft); }
.lc-split__col { display: grid; gap: 8px; }
.lc-split__h { margin-bottom: 4px; font-weight: 500; }
.lc-split__col span { padding: 10px 14px; border-radius: 10px; background: var(--bg); font-size: .875rem; color: var(--fg-2); }
.lc-split__col--you span { box-shadow: inset 0 0 0 1px var(--warm); }
.lc-split__arrow { display: flex; align-items: center; justify-content: center; gap: 8px; font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; color: var(--fg-3); }
.lc-split__arrow svg { width: 40px; height: 16px; fill: none; stroke: var(--warm); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; transform: rotate(90deg); }
@media (min-width: 1024px) {
  .lc-inc { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 64px; }
  .lc-checks { grid-template-columns: minmax(0, 1fr); }
}
@media (min-width: 1180px) { .lc-checks { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 560px) {
  .lc-split { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; }
  .lc-split__arrow { flex-direction: column; }
  .lc-split__arrow svg { transform: none; }
}

/* ── S06 · qué es un lead / S10 · encaje ─────────────────────────────────── */
.lc-opp { display: grid; gap: 32px; }
.lc-opp__copy .lc-lead { margin-top: 18px; }
.lc-opp__lists, .lc-fit { display: grid; gap: 14px; }
.lc-yn { padding: clamp(22px, 2.4vw, 32px); border-radius: 20px; background: var(--bg); }
.lc-yn h3 { margin-bottom: 14px; }
.lc-yn ul { display: grid; gap: 10px; }
.lc-yn li { position: relative; padding-left: 28px; line-height: 1.5; color: var(--fg-2); }
.lc-yn li::before { content: ""; position: absolute; left: 0; top: .35em; width: 14px; height: 14px; }
.lc-yn--yes li::before { border-radius: 50%; background: var(--warm); -webkit-mask: radial-gradient(circle, #000 3px, transparent 3.5px); mask: radial-gradient(circle, #000 3px, transparent 3.5px); }
.lc-yn--no li::before { background: linear-gradient(currentColor, currentColor) center / 12px 1.6px no-repeat; color: var(--fg-3); }
.lc-fit .lc-yn { background: var(--soft); }
@media (min-width: 768px) { .lc-opp__lists, .lc-fit { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.lc-ficha { justify-self: start; width: min(100%, 380px); margin: 0; padding: 22px 24px; border-radius: 20px; background: var(--bg); box-shadow: inset 0 0 0 1px var(--line); }
.lc-ficha__flag { display: inline-block; margin-bottom: 14px; padding: 4px 8px; border-radius: 5px; background: var(--soft); font-size: .6875rem; font-weight: 500; letter-spacing: .08em; color: var(--fg-2); }
.lc-ficha dl { display: grid; gap: 10px; }
.lc-ficha dl div { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 12px; padding-top: 10px; border-top: 1px solid var(--line); }
.lc-ficha dt { font-size: .8125rem; color: var(--fg-3); }
.lc-ficha dd { font-size: .9375rem; }
.lc-opp__close { max-width: 60ch; font-size: 1rem; line-height: 1.55; }
@media (min-width: 1024px) {
  .lc-opp { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: 64px; }
  .lc-opp__copy { grid-column: 1; }
  .lc-ficha { grid-column: 2; grid-row: 1; align-self: end; justify-self: end; }
  .lc-opp__lists { grid-column: 1 / -1; }
}

/* ── S07 · casos ─────────────────────────────────────────────────────────── */
.lc-cases { display: grid; gap: 14px; }
.lc-case { display: grid; gap: 10px; align-content: start; padding: clamp(22px, 2.6vw, 34px); border-radius: 20px; background: rgba(255, 255, 255, .05); box-shadow: inset 0 0 0 1px var(--line); }
.lc-case__logo { height: 34px; max-width: 150px; margin-bottom: 14px; color: var(--fg); }
.lc-case__t { font-size: 1.25rem; font-weight: 500; letter-spacing: -.01em; }
.lc-case__s { color: var(--fg-3); }
.lc-case__d { color: var(--fg-2); line-height: 1.55; }
.lc-case__m { margin-top: 6px; padding-top: 14px; border-top: 1px solid var(--line); font-weight: 500; }
@media (min-width: 768px) { .lc-cases { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ── 07B · testimonios ───────────────────────────────────────────────────── */
.lc-tsts { padding-top: 0; }
.lc-tst__list { display: grid; gap: 14px; }
.lc-tst figure { display: grid; gap: 24px; height: 100%; margin: 0; padding: clamp(22px, 2.6vw, 32px); border-radius: 20px; background: rgba(255, 255, 255, .05); box-shadow: inset 0 0 0 1px var(--line); align-content: space-between; }
.lc-tst__q p { font-size: 1.0625rem; line-height: 1.55; text-wrap: pretty; }
.lc-tst__q p::before { content: "“"; } .lc-tst__q p::after { content: "”"; }
.lc-tst__by { display: flex; align-items: center; gap: 14px; }
.lc-tst__logo { width: 52px; height: 52px; flex: none; padding: 8px; border-radius: 12px; background: #fff; object-fit: contain; }
.lc-tst__b { display: block; font-weight: 500; }
.lc-tst__r { display: block; font-size: .875rem; color: var(--fg-3); }
@media (min-width: 768px) { .lc-tst__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1180px) { .lc-tst__list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* ── S08 · sectores ──────────────────────────────────────────────────────── */
.lc-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.lc-chip { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; padding: 12px 16px; border-radius: 14px; background: var(--soft); font-size: .9375rem; }
.lc-chip__c { font-size: .8125rem; color: var(--fg-3); }
.lc-sectors__end { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-top: 36px; }
.lc-sectors__end .lc-p { max-width: 52ch; }

/* ── S09 · banda de transparencia ────────────────────────────────────────── */
.lc-band { max-width: 860px; margin-top: 24px; padding: 20px 24px; border-radius: 16px; background: var(--bg); font-size: .9375rem; line-height: 1.6; color: var(--fg-2); }

/* ── S11 · presupuesto ───────────────────────────────────────────────────── */
.lc-quote-band { background-image: var(--glow); background-repeat: no-repeat; background-size: 100% 560px; }
.lc-pre { display: grid; gap: 40px; align-items: center; }
.lc-pre__copy .lc-p { max-width: 60ch; margin-top: 16px; }
.lc-pre__side { display: grid; gap: 24px; justify-items: start; }
.lc-mini { display: grid; gap: 10px; width: 100%; }
.lc-mini li { display: flex; align-items: center; gap: 14px; padding: 14px 18px; border-radius: 14px; background: rgba(255, 255, 255, .06); box-shadow: inset 0 0 0 1px var(--line); }
.lc-mini span { font-size: .75rem; font-feature-settings: "tnum" 1; color: var(--warm); }
@media (min-width: 1024px) { .lc-pre { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 64px; } }

/* ── S12 · FAQ (acordeón de la web) ──────────────────────────────────────── */
.lc-faq .qa::details-content { transition-duration: .2s; }
.lc-faq .qa, .lc-faq .qa__i::before, .lc-faq .qa__i::after { transition-duration: .2s; }

/* ── S13 · formulario ────────────────────────────────────────────────────── */
.lc-formgrid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 40px; }
.lc-form-copy .lc-lead { margin-top: 18px; }
.lc-form-copy .lc-micro { margin-top: 16px; max-width: 52ch; }
@media (min-width: 1024px) { .lc-formgrid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 64px; align-items: start; } .lc-form-copy { position: sticky; top: calc(var(--hd-h) + 32px); } }
/* the form card wears the site dark theme (data-theme="dark"), so its
   button, links and focus states come from base.css */
.lc-form { display: grid; gap: 14px; padding: clamp(20px, 2.8vw, 36px); border-radius: 24px; background: var(--bg); color: var(--fg); }
.lc-form { --field: rgba(255, 255, 255, .08); }
.lc-form__t { font-size: 1.375rem; font-weight: 500; line-height: 1.25; letter-spacing: -.01em; }
.lc-form__s { margin-bottom: 4px; font-size: .9375rem; line-height: 1.5; color: var(--fg-2); }
.lc-form__sum { padding: 12px 14px; border-radius: 10px; background: rgba(255, 143, 143, .12); color: #FFB3B3; font-size: .9375rem; }
.lc-row { display: grid; gap: 14px; }
@media (min-width: 640px) { .lc-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.lc-field { display: grid; gap: 6px; align-content: start; }
.lc-field label { font-size: .875rem; color: var(--fg-2); }
.lc-field input, .lc-field select, .lc-field textarea {
  width: 100%; min-height: 48px; padding: 12px 14px; border: 0; border-radius: 12px;
  background: var(--field); color: var(--fg); font: inherit; font-size: 1rem; line-height: 1.4;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .1); transition: box-shadow .18s;
}
.lc-field textarea { min-height: 120px; resize: vertical; }
.lc-field textarea::placeholder { color: #8F8F8F; }
.lc-field select { appearance: none; padding-right: 40px; background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%); background-position: calc(100% - 20px) 50%, calc(100% - 15px) 50%; background-size: 5px 5px; background-repeat: no-repeat; }
.lc-field select option { color: #0D0D0D; }
.lc-field input:focus-visible, .lc-field select:focus-visible, .lc-field textarea:focus-visible { outline: none; box-shadow: inset 0 0 0 2px var(--c-orange); }
.lc-field [aria-invalid="true"] { box-shadow: inset 0 0 0 2px #FF8F8F; }
.lc-field__e { font-size: .8125rem; color: #FF9F9F; }
.lc-privacy { font-size: .8125rem; line-height: 1.55; color: var(--fg-3); }
.lc-privacy a, .lc-check a { color: var(--fg); }
.lc-privacy strong { font-weight: inherit; color: var(--fg-2); }
.lc-check { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 4px 10px; align-items: start; font-size: .9375rem; line-height: 1.45; color: var(--fg-2); }
.lc-check input { width: 20px; height: 20px; margin-top: 1px; accent-color: var(--c-orange); }
.lc-check .lc-field__e { grid-column: 2; }
.lc-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.lc-form__go { justify-self: stretch; margin-top: 6px; }
.lc-form__go .bt__t { flex: 1; justify-content: center; }
@media (min-width: 640px) { .lc-form__go { justify-self: start; } .lc-form__go .bt__t { flex: none; } }
.lc-form__go[aria-busy="true"] { opacity: .6; pointer-events: none; }
.lc-form__status { min-height: 1.4em; font-size: .9375rem; line-height: 1.5; color: var(--fg-2); }
.lc-form__status.is-ok { padding: 14px 16px; border-radius: 12px; background: rgba(255, 255, 255, .08); color: #fff; }
.lc-form__status.is-err { color: #FFB3B3; }

/* ── CTA fijo del móvil ──────────────────────────────────────────────────── */
.lc-sticky { position: fixed; left: 12px; right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); z-index: 60; background: none; opacity: 0; transform: translateY(calc(100% + 24px)); transition: opacity .2s, transform .3s var(--ease); pointer-events: none; }
.lc-sticky.is-on { opacity: 1; transform: none; pointer-events: auto; }
.lc-sticky .bt { box-shadow: 0 16px 36px -14px rgba(0, 0, 0, .6); }
.lc-sticky .bt__t { flex: 1; justify-content: center; }
@media (min-width: 1024px) { .lc-sticky { display: none; } }

/* ?revision: what waits for approval shows in place */
html.is-review .lc-landing [data-lc-pending][hidden] { display: block !important; }

/* ── movimiento reducido ─────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .js .lc-hero__copy > *, .js .lc-flow__c { animation: none !important; }
  .js .lc-flow__line path { animation: none !important; stroke-dashoffset: 0; }
  .lc-sticky { transition: none; }
  .lc-faq .qa::details-content { transition: none; }
}
