/* Ad landing pages (/lp/{slug}). Builds on landing.css variables and blocks. */

.lp {
    --lp-up: #059669;
    --lp-down: #dc2626;
    --lp-warn: #d97706;
    --lp-info: #2563eb;
    --lp-soft: #f1f5fb;
}

.lp .landing-section { position: relative; }

.lp-pain,
.lp-screens,
.lp-limits,
.lp-posts,
.lp-playbook {
    background: var(--at-surface);
}

/* Reveal on scroll (only once JS is running) */
.lp-js [data-lp-reveal] {
    opacity: 0;
    transform: translateY(14px);
    transition: opacity 0.5s ease, transform 0.5s ease;
}

.lp-js [data-lp-reveal].is-visible {
    opacity: 1;
    transform: none;
}

@media (prefers-reduced-motion: reduce) {
    .lp-js [data-lp-reveal] { opacity: 1; transform: none; transition: none; }
    .lp *, .lp *::before, .lp *::after { animation: none !important; }
}

/* Hero */
.lp-hero.landing-section--hero {
    background: linear-gradient(165deg, #0f1b30 0%, #16284a 55%, #1d3561 100%);
    padding-bottom: 5rem;
}

.lp-hero .landing-hero__title { font-size: clamp(2rem, 4.4vw, 2.6rem); }

.lp-hero__visual {
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

/* ASIN form */
.lp-asin-form { margin: 0 0 1.75rem; max-width: 34rem; }

.lp-asin-form__label {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #cbd5e1;
}

.lp-asin-form__controls {
    display: flex;
    gap: 0.5rem;
    padding: 0.375rem;
    background: rgb(255 255 255 / 0.08);
    border: 1px solid rgb(255 255 255 / 0.16);
    border-radius: 14px;
    backdrop-filter: blur(6px);
}

.lp-asin-form__input.form-control {
    flex: 1;
    min-width: 0;
    border: none;
    border-radius: 10px;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.02em;
}

.lp-asin-form__input.form-control:focus { box-shadow: 0 0 0 3px rgb(37 99 235 / 0.35); }

.lp-asin-form__submit.btn {
    border-radius: 10px;
    font-weight: 600;
    font-size: 1rem;
    white-space: nowrap;
    padding-inline: 1.25rem;
}

.lp-asin-form__hint {
    margin-top: 0.5rem;
    font-size: 0.8125rem;
    color: #94a3b8;
}

.lp-asin-form--cta {
    margin: 0 auto 1rem;
    text-align: left;
}

.lp-asin-form--cta .lp-asin-form__label,
.lp-asin-form--cta .lp-asin-form__hint { color: rgb(255 255 255 / 0.85); }

.lp-asin-form--cta .lp-asin-form__controls {
    background: rgb(255 255 255 / 0.14);
    border-color: rgb(255 255 255 / 0.28);
}

.lp-asin-form--cta .lp-asin-form__submit.btn {
    background: #0f1b30;
    border-color: #0f1b30;
}

.lp-asin-form--cta .lp-asin-form__submit.btn:hover { background: #1a2d4d; border-color: #1a2d4d; }

.lp-cta__note {
    margin: 0 !important;
    font-size: 0.875rem !important;
    opacity: 0.8;
}

/* Browser-like window mock */
.lp-window {
    background: var(--at-surface);
    color: var(--at-text);
    border-radius: var(--at-radius);
    box-shadow: var(--at-shadow-lg), 0 0 0 1px rgb(255 255 255 / 0.06);
    overflow: hidden;
}

.lp-window__bar,
.lp-browser__bar {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.625rem 0.875rem;
    background: #eef2f7;
    border-bottom: 1px solid var(--at-border);
}

.lp-window__bar i,
.lp-browser__bar i {
    width: 0.625rem;
    height: 0.625rem;
    border-radius: 50%;
    background: #cbd5e1;
}

.lp-window__bar i:first-child,
.lp-browser__bar i:first-child { background: #f87171; }
.lp-window__bar i:nth-child(2),
.lp-browser__bar i:nth-child(2) { background: #fbbf24; }
.lp-window__bar i:nth-child(3),
.lp-browser__bar i:nth-child(3) { background: #34d399; }

.lp-window__bar em {
    margin-left: 0.75rem;
    font-style: normal;
    font-size: 0.75rem;
    color: var(--at-text-muted);
    background: #fff;
    border-radius: 6px;
    padding: 0.125rem 0.625rem;
}

.lp-window__body { padding: 1rem 1.125rem 0.5rem; }

.lp-mock-product {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    margin-bottom: 0.875rem;
}

.lp-mock-product__thumb {
    width: 2.75rem;
    height: 2.75rem;
    flex-shrink: 0;
    border-radius: 10px;
    background: linear-gradient(160deg, #1e293b 0%, #475569 45%, #94a3b8 100%);
    position: relative;
}

.lp-mock-product__thumb::after {
    content: '';
    position: absolute;
    left: 38%;
    top: 12%;
    width: 24%;
    height: 76%;
    border-radius: 6px 6px 8px 8px;
    background: rgb(255 255 255 / 0.35);
}

.lp-mock-product__meta { display: flex; flex-direction: column; gap: 0.125rem; min-width: 0; }
.lp-mock-product__meta strong { font-size: 0.875rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lp-mock-product__meta small { font-size: 0.75rem; color: var(--at-text-muted); }

.lp-pill {
    display: inline-block;
    padding: 0.0625rem 0.5rem;
    border-radius: 999px;
    font-size: 0.6875rem;
    font-weight: 600;
    margin-right: 0.25rem;
}

.lp-pill--ok { background: #dcfce7; color: #047857; }

.lp-mock-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
}

.lp-mock-table th {
    text-align: left;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--at-text-muted);
    padding: 0.5rem 0.375rem;
    border-bottom: 1px solid var(--at-border);
}

.lp-mock-table td {
    padding: 0.6rem 0.375rem;
    border-bottom: 1px solid var(--at-border);
    white-space: nowrap;
}

.lp-mock-table tr:last-child td { border-bottom: none; }

.lp-mock-table tbody tr {
    animation: lp-row-in 0.5s ease both;
    animation-delay: calc(0.25s + var(--i, 0) * 0.12s);
}

.lp-mock-table__star { color: #cbd5e1; width: 1.25rem; }
.lp-mock-table__star.is-on { color: var(--at-accent); }
.lp-mock-table__kw { max-width: 11rem; overflow: hidden; text-overflow: ellipsis; }

.lp-muted { color: var(--at-text-muted); font-weight: 400; }
.lp-link-blue { color: var(--at-primary); }

.lp-delta { font-weight: 600; color: var(--at-text-muted); font-variant-numeric: tabular-nums; }
.lp-delta--up { color: var(--lp-up); }
.lp-delta--down { color: var(--lp-down); }

@keyframes lp-row-in {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: none; }
}

.lp-float {
    align-self: flex-end;
    margin: -1.5rem -0.75rem 0 0;
    position: relative;
    display: grid;
    gap: 0.25rem;
    padding: 0.75rem 0.875rem;
    background: #fff;
    color: var(--at-text);
    border-radius: 12px;
    box-shadow: var(--at-shadow-lg);
    border: 1px solid var(--at-border);
    animation: lp-float-in 0.6s ease 1.1s both;
}

.lp-float__label { font-size: 0.75rem; font-weight: 600; }
.lp-float__value { font-size: 0.75rem; font-weight: 700; color: var(--lp-down); }

@keyframes lp-float-in {
    from { opacity: 0; transform: translateY(10px) scale(0.98); }
    to { opacity: 1; transform: none; }
}

/* Telegram mock */
.lp-tg {
    background: #e7eef6;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: var(--at-shadow-lg);
    color: var(--at-text);
    max-width: 26rem;
    width: 100%;
    margin-left: auto;
}

.lp-tg__head {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: #fff;
    border-bottom: 1px solid var(--at-border);
}

.lp-tg__avatar {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    background: var(--at-primary);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 700;
}

.lp-tg__who { display: flex; flex-direction: column; line-height: 1.25; }
.lp-tg__who strong { font-size: 0.9375rem; }
.lp-tg__who small { font-size: 0.75rem; color: var(--at-text-muted); }

.lp-tg__body {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    padding: 1rem;
    min-height: 16rem;
}

.lp-tg__day {
    align-self: center;
    font-size: 0.6875rem;
    font-weight: 600;
    color: #fff;
    background: rgb(15 27 48 / 0.35);
    padding: 0.125rem 0.625rem;
    border-radius: 999px;
}

.lp-tg__msg,
.lp-tg__reply {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    max-width: 88%;
    padding: 0.625rem 0.875rem 1.25rem;
    background: #fff;
    border-radius: 14px 14px 14px 4px;
    font-size: 0.8125rem;
    line-height: 1.4;
    box-shadow: 0 1px 2px rgb(15 23 42 / 0.08);
    border-left: 3px solid var(--lp-info);
}

.lp-tg__msg strong { font-size: 0.875rem; }
.lp-tg__msg--danger { border-left-color: var(--lp-down); }
.lp-tg__msg--warn { border-left-color: var(--lp-warn); }
.lp-tg__msg--danger strong { color: var(--lp-down); }
.lp-tg__msg--warn strong { color: #b45309; }
.lp-tg__asin { color: var(--at-text-muted); font-size: 0.75rem; }

.lp-tg__msg time,
.lp-tg__reply time {
    position: absolute;
    right: 0.625rem;
    bottom: 0.3rem;
    font-size: 0.6875rem;
    color: #94a3b8;
}

.lp-tg__reply {
    align-self: flex-end;
    background: #dcf8c6;
    border-left: none;
    border-radius: 14px 14px 4px 14px;
}

.lp-tg--hero .lp-tg__msg,
.lp-tg--hero .lp-tg__reply {
    animation: lp-row-in 0.5s ease both;
    animation-delay: calc(0.3s + var(--i, 0) * 0.45s);
}

.lp-tg__body--builder .lp-tg__msg { animation: lp-row-in 0.3s ease both; }
.lp-tg__msg[hidden] { display: none; }

.lp-tg__empty {
    margin: auto;
    color: var(--at-text-muted);
    font-size: 0.875rem;
    text-align: center;
}

/* Pain */
.lp-pain__grid,
.lp-posts__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}

.lp-pain__card {
    padding: 1.5rem;
    border-radius: var(--at-radius);
    background: var(--at-bg);
    border: 1px solid var(--at-border);
}

.lp-pain__stat {
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--lp-down);
    margin-bottom: 0.5rem;
}

.lp-pain__card h3 { font-size: 1.0625rem; margin: 0 0 0.5rem; }
.lp-pain__card p { margin: 0; font-size: 0.9375rem; line-height: 1.55; color: var(--at-text-muted); }

/* Feature spotlights */
.lp-spotlight {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 3rem;
    align-items: center;
    margin-bottom: 3.5rem;
}

.lp-spotlight--reverse .lp-spotlight__copy { order: 2; }

.lp-kicker {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--at-primary);
    margin-bottom: 0.625rem;
}

.lp-spotlight h3 { font-size: 1.5rem; line-height: 1.25; margin: 0 0 0.75rem; letter-spacing: -0.01em; }
.lp-spotlight p { margin: 0; color: var(--at-text-muted); line-height: 1.65; }

.lp-demo {
    background: var(--at-surface);
    border: 1px solid var(--at-border);
    border-radius: var(--at-radius);
    box-shadow: var(--at-shadow);
    padding: 1.25rem;
}

.lp-demo__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--at-border);
}

.lp-demo__kw { font-weight: 600; font-size: 0.9375rem; }

.lp-switch {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    user-select: none;
}

.lp-switch input { position: absolute; opacity: 0; pointer-events: none; }

.lp-switch__track {
    width: 2.5rem;
    height: 1.375rem;
    border-radius: 999px;
    background: #cbd5e1;
    position: relative;
    transition: background 0.2s;
}

.lp-switch__track::after {
    content: '';
    position: absolute;
    top: 0.1875rem;
    left: 0.1875rem;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 2px rgb(15 23 42 / 0.2);
    transition: transform 0.2s;
}

.lp-switch input:checked + .lp-switch__track { background: var(--at-primary); }
.lp-switch input:checked + .lp-switch__track::after { transform: translateX(1.125rem); }
.lp-switch input:focus-visible + .lp-switch__track { box-shadow: 0 0 0 3px rgb(37 99 235 / 0.3); }

.lp-demo__result { padding: 1rem 0; min-height: 3.5rem; }
.lp-demo__state { font-size: 0.9375rem; }
.lp-demo__state strong { font-size: 1.25rem; margin-right: 0.25rem; }
.lp-demo__state--off strong { color: var(--at-text-muted); }
.lp-demo__state--on { display: none; }
.lp-demo__state--on strong { color: var(--lp-up); }
[data-lp-variations].is-on .lp-demo__state--off { display: none; }
[data-lp-variations].is-on .lp-demo__state--on { display: block; animation: lp-row-in 0.3s ease both; }

.lp-demo__family {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.lp-demo__family li {
    font-size: 0.75rem;
    padding: 0.3rem 0.625rem;
    border-radius: 8px;
    background: var(--lp-soft);
    color: var(--at-text-muted);
    border: 1px solid transparent;
    transition: background 0.2s, border-color 0.2s, color 0.2s;
}

.lp-demo__family li.is-parent { color: var(--at-text); border-color: var(--at-border); }
[data-lp-variations].is-on .lp-demo__family li.is-match {
    background: #dcfce7;
    border-color: #86efac;
    color: #047857;
    font-weight: 600;
}

.lp-demo__hint { margin: 0.875rem 0 0 !important; font-size: 0.8125rem; }

/* Chart mock */
.lp-chart__legend { display: flex; gap: 1rem; margin-bottom: 0.5rem; font-size: 0.75rem; font-weight: 600; }
.lp-chart__key::before {
    content: '';
    display: inline-block;
    width: 0.875rem;
    height: 0.1875rem;
    border-radius: 2px;
    margin-right: 0.375rem;
    vertical-align: middle;
}
.lp-chart__key--rank::before { background: var(--at-primary); }
.lp-chart__key--price::before { background: var(--at-accent); }

.lp-chart { width: 100%; height: 12rem; display: block; }
.lp-chart__grid line { stroke: var(--at-border); stroke-width: 1; }
.lp-chart__rank { fill: none; stroke: var(--at-primary); stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.lp-chart__price { fill: none; stroke: var(--at-accent); stroke-width: 2.5; vector-effect: non-scaling-stroke; }
.lp-chart__marker { stroke: #94a3b8; stroke-dasharray: 4 4; stroke-width: 1; vector-effect: non-scaling-stroke; }

.lp-js .lp-demo--chart .lp-chart__rank { stroke-dasharray: 900; stroke-dashoffset: 900; }
.lp-js .is-visible .lp-demo--chart .lp-chart__rank { animation: lp-draw 1.6s ease 0.2s forwards; }

@keyframes lp-draw { to { stroke-dashoffset: 0; } }

.lp-chart__note { margin-top: 0.5rem; font-size: 0.8125rem; color: var(--at-text-muted); }

/* Cards */
.lp-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
}

.lp-cards--three { grid-template-columns: repeat(3, 1fr); margin-top: 1.25rem; }

.lp-card {
    padding: 1.375rem;
    border-radius: var(--at-radius);
    background: var(--at-surface);
    border: 1px solid var(--at-border);
    box-shadow: var(--at-shadow);
}

.lp-card--plain { box-shadow: none; background: var(--at-bg); }
.lp-card h3 { font-size: 1rem; margin: 0 0 0.5rem; }
.lp-card p { margin: 0; font-size: 0.875rem; line-height: 1.55; color: var(--at-text-muted); }

.lp-card__tag {
    display: inline-block;
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--lp-down);
    background: #fef2f2;
    border-radius: 999px;
    padding: 0.1875rem 0.625rem;
    margin-bottom: 0.75rem;
}

/* Signals */
.lp-signals {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
}

.lp-signal {
    padding: 1.375rem;
    border-radius: var(--at-radius);
    background: var(--at-surface);
    border: 1px solid var(--at-border);
    box-shadow: var(--at-shadow);
}

.lp-signal--wide {
    grid-column: span 2;
    background: linear-gradient(135deg, #eff6ff 0%, #fff 70%);
    border-color: rgb(37 99 235 / 0.25);
}

.lp-signal__icon,
.lp-more__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 10px;
    background: var(--at-primary-soft);
    color: var(--at-primary);
    margin-bottom: 0.875rem;
}

.lp-signal h3 { font-size: 1rem; margin: 0 0 0.375rem; }
.lp-signal p { margin: 0; font-size: 0.875rem; line-height: 1.55; color: var(--at-text-muted); }

/* Builder */
.lp-builder {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: center;
}

.lp-builder__controls > p { color: var(--at-text-muted); line-height: 1.6; }

.lp-chips { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 1.25rem 0 1rem; }

.lp-chip {
    border: 1px solid var(--at-border);
    background: var(--at-surface);
    color: var(--at-text);
    font-size: 0.875rem;
    font-weight: 600;
    padding: 0.5rem 0.875rem;
    border-radius: 10px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
}

.lp-chip:hover { border-color: var(--at-primary); }
.lp-chip[aria-pressed='true'] { background: var(--at-primary); border-color: var(--at-primary); color: #fff; }
.lp-chip:focus-visible { outline: 3px solid rgb(37 99 235 / 0.35); outline-offset: 2px; }

.lp-builder__more,
.lp-builder__count { font-size: 0.8125rem; margin: 0 0 0.25rem; color: var(--at-text-muted); }
.lp-builder__count { font-weight: 600; color: var(--at-text); }

.lp-builder .lp-tg { margin: 0 auto; }
.lp-builder .lp-tg__body { min-height: 22rem; }

/* Calculators */
.lp-calc {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    padding: 2.5rem;
    border-radius: calc(var(--at-radius) + 6px);
    background: linear-gradient(160deg, #0f1b30 0%, #1a2d4d 100%);
    color: #f8fafc;
    box-shadow: var(--at-shadow-lg);
}

.lp-calc .landing-section__title { color: #fff; }
.lp-calc__intro > p { color: #cbd5e1; line-height: 1.6; margin: 0 0 1.5rem; }

.lp-field { display: block; margin-bottom: 1rem; }
.lp-field > span { display: block; font-size: 0.8125rem; font-weight: 600; color: #cbd5e1; margin-bottom: 0.375rem; }
.lp-field .form-control,
.lp-field .form-select { border-radius: 10px; font-weight: 500; }

.lp-calc__result {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    padding: 1.5rem;
    border-radius: var(--at-radius);
    background: rgb(255 255 255 / 0.06);
    border: 1px solid rgb(255 255 255 / 0.1);
}

.lp-calc__metric { display: flex; flex-direction: column; gap: 0.25rem; }
.lp-calc__metric span { font-size: 0.8125rem; color: #94a3b8; }
.lp-calc__metric strong { font-size: 1.75rem; font-weight: 700; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.lp-calc__metric--plan strong { font-size: 1.25rem; color: #93c5fd; }
.lp-calc__note { margin: 0; font-size: 0.8125rem; color: #94a3b8; line-height: 1.5; }

.lp-compare { display: flex; flex-direction: column; gap: 1rem; }
.lp-compare__row { display: grid; gap: 0.375rem; }
.lp-compare__row > span { font-size: 0.8125rem; color: #94a3b8; }
.lp-compare__row strong { font-size: 1.125rem; font-variant-numeric: tabular-nums; }

.lp-compare__bar {
    height: 0.625rem;
    border-radius: 999px;
    background: rgb(255 255 255 / 0.08);
    overflow: hidden;
}

.lp-compare__bar i {
    display: block;
    height: 100%;
    border-radius: inherit;
    transition: width 0.4s ease;
}

.lp-compare__bar--now i { background: #f87171; }
.lp-compare__bar--plan i { background: #34d399; }

/* Screens */
.lp-carousel__stage {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: center;
}

.lp-carousel__viewport {
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    border-radius: var(--at-radius);
    outline: none;
}

.lp-carousel__viewport::-webkit-scrollbar { display: none; }
.lp-carousel__viewport:focus-visible { box-shadow: 0 0 0 3px rgb(37 99 235 / 0.35); }

.lp-carousel__track { display: flex; }
.lp-carousel__slide {
    flex: 0 0 100%;
    margin: 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
}

.lp-browser {
    display: block;
    border-radius: var(--at-radius);
    overflow: hidden;
    border: 1px solid var(--at-border);
    box-shadow: var(--at-shadow);
    background: #fff;
    cursor: zoom-in;
}

.lp-browser img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 70vh;
    object-fit: contain;
    object-position: top center;
    background: #fff;
}

.lp-carousel__slide figcaption {
    margin: 0.75rem 0 0;
    text-align: center;
    font-size: 0.9375rem;
    color: var(--at-text-muted);
}

.lp-carousel__nav,
.lp-lightbox__nav,
.lp-lightbox__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border: 1px solid var(--at-border);
    border-radius: 50%;
    background: #fff;
    color: var(--at-text);
    box-shadow: var(--at-shadow);
    cursor: pointer;
}

.lp-carousel__nav:hover,
.lp-lightbox__nav:hover,
.lp-lightbox__close:hover { border-color: var(--at-primary); color: var(--at-primary); }

.lp-carousel__nav:focus-visible,
.lp-lightbox__nav:focus-visible,
.lp-lightbox__close:focus-visible { outline: 3px solid rgb(37 99 235 / 0.35); outline-offset: 2px; }

.lp-carousel__dots {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    margin-top: 1rem;
}

.lp-carousel__dot {
    width: 0.625rem;
    height: 0.625rem;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: #cbd5e1;
    cursor: pointer;
}

.lp-carousel__dot[aria-selected='true'] { background: var(--at-primary); transform: scale(1.15); }
.lp-carousel__dot:focus-visible { outline: 3px solid rgb(37 99 235 / 0.35); outline-offset: 2px; }

/* Desktop preview is about half the content column; the click-through stays full size. */
@media (min-width: 768px) {
    .lp-carousel__stage {
        width: calc(50% + 7rem);
        margin-inline: auto;
    }
}

.lp-lightbox {
    width: 100vw;
    height: 100vh;
    max-width: 100vw;
    max-height: 100vh;
    margin: 0;
    padding: calc(4.25rem + env(safe-area-inset-top)) 4.5rem calc(1.5rem + env(safe-area-inset-bottom));
    border: none;
    background: rgb(15 23 42 / 0.96);
    overflow: auto;
}

.lp-lightbox::backdrop { background: rgb(15 23 42 / 0.9); }

.lp-lightbox__figure { margin: 0 auto; width: min(1100px, 100%); }
.lp-lightbox img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
    background: #fff;
}

.lp-lightbox figcaption {
    margin-top: 0.75rem;
    text-align: center;
    color: #e2e8f0;
    font-size: 0.9375rem;
}

.lp-lightbox__close,
.lp-lightbox__nav {
    position: fixed;
    z-index: 2;
    border-color: transparent;
    background: rgb(255 255 255 / 0.92);
}

.lp-lightbox__close {
    top: calc(0.75rem + env(safe-area-inset-top));
    right: calc(0.75rem + env(safe-area-inset-right));
    font-size: 1.5rem;
    line-height: 1;
}

.lp-lightbox__nav--prev { left: calc(0.75rem + env(safe-area-inset-left)); top: 50%; transform: translateY(-50%); }
.lp-lightbox__nav--next { right: calc(0.75rem + env(safe-area-inset-right)); top: 50%; transform: translateY(-50%); }

@media (prefers-reduced-motion: reduce) {
    .lp-carousel__viewport { scroll-behavior: auto; }
}

/* How */
.lp-how__steps {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
    counter-reset: none;
}

.lp-how__step {
    position: relative;
    padding: 1.5rem;
    border-radius: var(--at-radius);
    background: var(--at-surface);
    border: 1px solid var(--at-border);
    box-shadow: var(--at-shadow);
}

.lp-how__num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    background: var(--at-primary);
    color: #fff;
    font-weight: 700;
    margin-bottom: 0.875rem;
}

.lp-how__step h3 { font-size: 1.0625rem; margin: 0 0 0.5rem; }
.lp-how__step p { margin: 0; font-size: 0.9rem; line-height: 1.55; color: var(--at-text-muted); }

/* Limits */
.lp-limits__box {
    display: grid;
    grid-template-columns: minmax(32rem, 1fr) minmax(0, 1.2fr);
    gap: 2.5rem;
    padding: 2.25rem;
    border-radius: var(--at-radius);
    background: var(--at-bg);
    border: 1px solid var(--at-border);
}

.lp-limits__head p { color: var(--at-text-muted); margin: 0; line-height: 1.6; text-wrap: pretty; }

.lp-limits__list { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.875rem; }

.lp-limits__list li {
    position: relative;
    padding-left: 1.75rem;
    line-height: 1.55;
    font-size: 0.9375rem;
}

.lp-limits__list li::before {
    content: 'i';
    position: absolute;
    left: 0;
    top: 0.15rem;
    width: 1.125rem;
    height: 1.125rem;
    border-radius: 50%;
    background: var(--at-primary-soft);
    color: var(--at-primary);
    font-size: 0.6875rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* More features */
.lp-more__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}

.lp-more__card {
    display: flex;
    flex-direction: column;
    padding: 1.375rem;
    border-radius: var(--at-radius);
    background: var(--at-surface);
    border: 1px solid var(--at-border);
    box-shadow: var(--at-shadow);
    color: inherit;
    transition: border-color 0.15s, box-shadow 0.15s, transform 0.15s;
}

.lp-more__card:hover,
.lp-more__card:focus-visible {
    color: inherit;
    border-color: var(--at-primary);
    box-shadow: 0 0 0 1px var(--at-primary), var(--at-shadow-lg);
}

.lp-more__title { font-weight: 700; margin-bottom: 0.375rem; }
.lp-more__text { font-size: 0.875rem; line-height: 1.55; color: var(--at-text-muted); flex: 1; }
.lp-more__link { margin-top: 1rem; font-size: 0.875rem; font-weight: 600; color: var(--at-primary); }

/* Pricing highlight */
.landing-plan__features li.is-highlight {
    color: var(--at-text);
    font-weight: 600;
    background: var(--at-primary-soft);
    margin: 0 -0.5rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    border-radius: 6px;
    border-bottom-color: transparent;
}

/* Posts */
.lp-posts__card {
    display: flex;
    flex-direction: column;
    padding: 1.375rem;
    border-radius: var(--at-radius);
    border: 1px solid var(--at-border);
    background: var(--at-bg);
    color: inherit;
    transition: border-color 0.15s;
}

.lp-posts__card:hover { color: inherit; border-color: var(--at-primary); }
.lp-posts__title { font-weight: 700; line-height: 1.35; margin-bottom: 0.5rem; }
.lp-posts__text { font-size: 0.875rem; line-height: 1.55; color: var(--at-text-muted); flex: 1; }
.lp-posts__link { margin-top: 1rem; font-size: 0.875rem; font-weight: 600; color: var(--at-primary); }

/* CTA */
.lp-cta .lp-asin-form { max-width: 36rem; }

.lp [hidden] { display: none !important; }
.lp-up { color: var(--lp-up); }
.lp-down { color: var(--lp-down); }

.lp-diff-section,
.lp-picker-section,
.lp-matrix-section { background: var(--at-bg); }

/* Small mock pieces */
.lp-mock-product .lp-mock-btn { margin-left: auto; }

.lp-mock-btn {
    flex-shrink: 0;
    font-size: 0.75rem;
    font-weight: 600;
    color: #fff;
    background: var(--at-primary);
    border-radius: 8px;
    padding: 0.375rem 0.75rem;
    white-space: nowrap;
}

.lp-check {
    display: inline-block;
    width: 0.9rem;
    height: 0.9rem;
    border-radius: 4px;
    border: 1.5px solid #cbd5e1;
    vertical-align: middle;
}

.lp-check.is-on {
    background: var(--at-primary);
    border-color: var(--at-primary);
    box-shadow: inset 0 0 0 2px #fff;
}

.lp-pill--warn { background: #fef3c7; color: #b45309; }

.lp-tag {
    display: inline-block;
    font-size: 0.6875rem;
    font-weight: 700;
    border-radius: 6px;
    padding: 0.125rem 0.5rem;
    background: var(--at-primary-soft);
    color: var(--at-primary);
}

.lp-tag--review { background: #fef3c7; color: #b45309; }

/* Listing monitor: change feed */
.lp-feed { list-style: none; margin: 0 0 0.5rem; padding: 0; display: grid; gap: 0.5rem; }

.lp-feed__item {
    display: grid;
    gap: 0.375rem;
    padding: 0.625rem 0.75rem;
    border: 1px solid var(--at-border);
    border-radius: 10px;
    animation: lp-row-in 0.5s ease both;
    animation-delay: calc(0.3s + var(--i, 0) * 0.18s);
}

.lp-feed__head { display: flex; justify-content: space-between; align-items: center; }
.lp-feed__head time { font-size: 0.6875rem; color: var(--at-text-muted); }

.lp-diff { font-size: 0.8125rem; line-height: 1.45; }
.lp-diff del,
.lp-ba del {
    color: var(--lp-down);
    background: #fef2f2;
    text-decoration-thickness: 1.5px;
    border-radius: 3px;
    padding: 0 0.125rem;
}
.lp-diff s { color: var(--at-text-muted); }

.lp-feed__thumbs { display: flex; align-items: center; gap: 0.5rem; color: var(--at-text-muted); }
.lp-feed__thumbs i {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 8px;
    background: linear-gradient(160deg, #1e293b 0%, #475569 50%, #94a3b8 100%);
}
.lp-feed__thumbs i.is-new { background: linear-gradient(160deg, #0f766e 0%, #2dd4bf 60%, #ccfbf1 100%); }

.lp-float--low { margin-top: -0.375rem; }
.lp-float--mentions .lp-float__value,
.lp-float--done .lp-float__value { font-weight: 600; }
.lp-float--done .lp-float__value { color: var(--at-text-muted); }

/* Field groups */
.lp-groups {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
}

.lp-groups--five { grid-template-columns: repeat(5, 1fr); }

.lp-group {
    padding: 1.375rem;
    border-radius: var(--at-radius);
    background: var(--at-surface);
    border: 1px solid var(--at-border);
    box-shadow: var(--at-shadow);
}

.lp-group h3 { font-size: 1rem; margin: 0 0 0.625rem; }
.lp-group ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.375rem; }
.lp-group li { font-size: 0.875rem; color: var(--at-text-muted); padding-left: 1rem; position: relative; }
.lp-group li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 0.375rem;
    height: 0.375rem;
    border-radius: 50%;
    background: var(--at-primary);
}

/* Tabs */
.lp-tabs { display: flex; flex-wrap: wrap; gap: 0.375rem; margin-bottom: 1rem; }

.lp-tab {
    border: 1px solid var(--at-border);
    background: var(--at-surface);
    color: var(--at-text-muted);
    font-size: 0.8125rem;
    font-weight: 600;
    padding: 0.375rem 0.75rem;
    border-radius: 999px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
}

.lp-tab:hover { border-color: var(--at-primary); color: var(--at-text); }
.lp-tab[aria-selected='true'] { background: var(--at-primary); border-color: var(--at-primary); color: #fff; }
.lp-tab:focus-visible { outline: 3px solid rgb(37 99 235 / 0.35); outline-offset: 2px; }
.lp-tabs--lg .lp-tab { font-size: 0.9375rem; padding: 0.5rem 1rem; }
.lp-tabs--lg { margin-bottom: 1.5rem; }

/* Before / after */
.lp-ba { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; animation: lp-row-in 0.3s ease both; }

.lp-ba__col {
    padding: 0.875rem;
    border-radius: 10px;
    background: var(--lp-soft);
    min-height: 6rem;
}

.lp-ba__col > span {
    display: block;
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--at-text-muted);
    margin-bottom: 0.375rem;
}

.lp-ba__col p { margin: 0; font-size: 0.9rem; line-height: 1.5; color: var(--at-text); }
.lp-ba__col--after { background: #f0fdf4; }
.lp-ba__col--after em { color: var(--lp-down); font-style: normal; font-weight: 600; }
.lp-ba__why { grid-column: 1 / -1; margin: 0.25rem 0 0 !important; font-size: 0.875rem; }

/* Review mentions */
.lp-mentions { list-style: none; margin: 0; padding: 0.75rem 0 0; display: grid; gap: 0.375rem; }

.lp-mentions li {
    display: grid;
    grid-template-columns: 1fr 3rem 3rem;
    align-items: center;
    padding: 0.5rem 0.625rem;
    border-radius: 8px;
    font-size: 0.875rem;
}

.lp-mentions li.is-alert { background: #fef2f2; }
.lp-mentions b { text-align: right; font-variant-numeric: tabular-nums; }

/* Reverse ASIN: pipeline */
.lp-pipe {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
}

.lp-pipe__step {
    position: relative;
    padding: 1.375rem;
    border-radius: var(--at-radius);
    background: var(--at-surface);
    border: 1px solid var(--at-border);
    box-shadow: var(--at-shadow);
}

.lp-pipe__step:not(:last-child)::after {
    content: '→';
    position: absolute;
    right: -1.05rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--at-primary);
    font-weight: 700;
    z-index: 1;
}

.lp-pipe__num,
.lp-how__num { flex-shrink: 0; }

.lp-pipe__num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: var(--at-primary-soft);
    color: var(--at-primary);
    font-weight: 700;
    margin-bottom: 0.75rem;
}

.lp-pipe__step h3 { font-size: 1rem; margin: 0 0 0.375rem; }
.lp-pipe__step p { margin: 0; font-size: 0.875rem; line-height: 1.55; color: var(--at-text-muted); }

/* Reverse ASIN: keyword picker */
.lp-picker__summary {
    margin-top: 1.5rem;
    padding: 1rem 1.125rem;
    border-radius: var(--at-radius);
    background: var(--at-surface);
    border: 1px solid var(--at-border);
    display: grid;
    gap: 0.25rem;
}

.lp-picker__summary strong { font-size: 1.125rem; }
.lp-picker__fit { font-size: 0.875rem; color: var(--lp-up); font-weight: 600; }
.lp-picker__fit.is-paid { color: var(--lp-warn); }

.lp-picker__list { list-style: none; margin: 0; padding: 0.5rem 0 0; }
.lp-picker__list li + li { border-top: 1px solid var(--at-border); }

.lp-picker__list label {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.5rem 0.25rem;
    cursor: pointer;
    font-size: 0.875rem;
}

.lp-picker__list input { width: 1rem; height: 1rem; accent-color: var(--at-primary); }
.lp-picker__vol { font-weight: 600; font-variant-numeric: tabular-nums; }
.lp-mock-btn--live { transition: opacity 0.15s; }

.lp-cards--two { grid-template-columns: repeat(2, 1fr); margin-bottom: 1.25rem; }
.lp-card__tag--info { color: var(--at-primary); background: var(--at-primary-soft); }
.lp-card--use h3 { font-size: 1.125rem; }

.lp-ticks { list-style: none; margin: 0.5rem 0 0; padding: 0; display: grid; gap: 0.5rem; }
.lp-ticks li { position: relative; padding-left: 1.5rem; font-size: 0.9rem; line-height: 1.5; color: var(--at-text-muted); }
.lp-ticks li::before { content: '✓'; position: absolute; left: 0; color: var(--lp-up); font-weight: 700; }

/* Alerts hero: Telegram + inbox */
.lp-duo { display: grid; gap: 1rem; }
.lp-tg--compact .lp-tg__body { min-height: 0; }

.lp-mail {
    background: #fff;
    color: var(--at-text);
    border-radius: 14px;
    box-shadow: var(--at-shadow-lg);
    overflow: hidden;
    max-width: 26rem;
    width: 100%;
    margin-left: auto;
    animation: lp-row-in 0.5s ease both;
    animation-delay: 1.1s;
}

.lp-mail__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.625rem 1rem;
    border-bottom: 1px solid var(--at-border);
    font-size: 0.875rem;
}

.lp-mail__head small { color: var(--at-text-muted); font-size: 0.75rem; }
.lp-mail__list { list-style: none; margin: 0; padding: 0; }

.lp-mail__list li {
    display: grid;
    grid-template-columns: 5.5rem 1fr auto;
    gap: 0 0.75rem;
    padding: 0.5rem 1rem;
    font-size: 0.8125rem;
    border-bottom: 1px solid var(--at-border);
}

.lp-mail__list li:last-child { border-bottom: none; }
.lp-mail__from { font-weight: 700; grid-row: span 2; }
.lp-mail__list strong { font-size: 0.8125rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lp-mail__list time { font-size: 0.6875rem; color: var(--at-text-muted); grid-row: span 2; }
.lp-mail__text { color: var(--at-text-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* Alerts: routing matrix */
.lp-matrix { padding: 0.5rem 1.25rem 1.25rem; }
.lp-matrix__scroll { overflow-x: auto; }
.lp-matrix table { width: 100%; border-collapse: collapse; min-width: 34rem; }

.lp-matrix th,
.lp-matrix td {
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid var(--at-border);
    text-align: center;
    font-size: 0.875rem;
}

.lp-matrix tbody th { text-align: left; font-weight: 600; }
.lp-matrix thead th { vertical-align: bottom; }
.lp-matrix thead th:first-child { text-align: left; color: var(--at-text-muted); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.04em; }
.lp-matrix thead small { display: block; font-weight: 400; color: var(--at-text-muted); font-size: 0.75rem; margin-top: 0.125rem; }
.lp-matrix tfoot td { border-bottom: none; font-weight: 700; color: var(--at-primary); font-size: 0.8125rem; }
.lp-matrix tfoot td.is-empty { color: var(--lp-warn); }

.lp-matrix__channel { font-weight: 700; }
.lp-matrix__channel::before { margin-right: 0.25rem; }
.lp-matrix__channel--oncall::before,
.lp-matrix__channel--owner::before { content: '✈'; color: #229ed9; }
.lp-matrix__channel--content::before { content: '✉'; color: var(--at-text-muted); }

.lp-matrix__cell { position: relative; display: inline-flex; cursor: pointer; }
.lp-matrix__cell input { position: absolute; opacity: 0; pointer-events: none; }

.lp-matrix__cell span {
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 7px;
    border: 1.5px solid #cbd5e1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, border-color 0.15s;
}

.lp-matrix__cell:hover span { border-color: var(--at-primary); }
.lp-matrix__cell input:checked + span { background: var(--at-primary); border-color: var(--at-primary); }
.lp-matrix__cell input:checked + span::after { content: '✓'; color: #fff; font-size: 0.875rem; font-weight: 700; }
.lp-matrix__cell input:focus-visible + span { box-shadow: 0 0 0 3px rgb(37 99 235 / 0.3); }

/* Alerts: per-ASIN rules */
.lp-rules { display: grid; gap: 0.625rem; }

.lp-rules__row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    padding: 0.75rem 0.875rem;
    border-radius: 10px;
    background: var(--lp-soft);
    font-size: 0.875rem;
}

.lp-rules__row.is-override { background: var(--at-primary-soft); box-shadow: inset 3px 0 0 var(--at-primary); }
.lp-rules__scope { font-weight: 600; }
.lp-rules__targets { display: flex; gap: 0.375rem; flex-wrap: wrap; }
.lp-rules__targets i { font-style: normal; font-size: 0.75rem; background: #fff; border: 1px solid var(--at-border); border-radius: 999px; padding: 0.125rem 0.5rem; }

/* Repricer */
.lp-seg {
    display: inline-flex;
    padding: 0.25rem;
    border-radius: 10px;
    background: var(--lp-soft);
    margin-bottom: 0.875rem;
    font-size: 0.8125rem;
    font-weight: 600;
}

.lp-seg span { padding: 0.3rem 0.75rem; border-radius: 8px; color: var(--at-text-muted); }
.lp-seg span.is-on { background: var(--at-primary); color: #fff; }

.lp-kv {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.lp-kv div { padding: 0.5rem 0.625rem; border: 1px solid var(--at-border); border-radius: 8px; display: grid; gap: 0.125rem; min-width: 0; }
.lp-kv span { font-size: 0.6875rem; color: var(--at-text-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lp-kv strong { font-size: 0.875rem; font-variant-numeric: tabular-nums; }

.lp-mock-table--log td { font-variant-numeric: tabular-nums; }

.lp-sim { display: grid; grid-template-columns: 1fr 1fr; gap: 0 0.875rem; }
.lp-field--light > span { color: var(--at-text-muted); }

.lp-sim__result {
    display: grid;
    gap: 0.25rem;
    padding: 1rem 1.125rem;
    border-radius: 12px;
    background: #0f1b30;
    color: #fff;
    margin-top: 0.25rem;
}

.lp-sim__result > span { font-size: 0.8125rem; color: #94a3b8; }
.lp-sim__result strong { font-size: 2rem; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.lp-sim__result p { margin: 0; font-size: 0.875rem; color: #cbd5e1; }
.lp-sim__result p[data-state='min'],
.lp-sim__result p[data-state='max'] { color: #fcd34d; }
.lp-sim__result p[data-state='none'] { color: #fca5a5; }

/* Competitors */
.lp-vs td,
.lp-vs th { padding-inline: 0.5rem; }
.lp-vs .lp-mock-table__kw { max-width: 12rem; }
.lp-vs .lp-delta { margin-left: 0.25rem; font-size: 0.75rem; }

.lp-vs__who {
    display: inline-block;
    border-radius: 6px;
    padding: 0.125rem 0.5rem;
    font-size: 0.6875rem;
    letter-spacing: 0.04em;
}

.lp-vs__who--you { background: var(--at-primary-soft); color: var(--at-primary); }
.lp-vs__who--rival { background: #fef3c7; color: #b45309; }

.lp-signals--three { grid-template-columns: repeat(3, 1fr); }

.lp-switch--dark { color: #e2e8f0; margin-top: 0.25rem; }

.lp-stack { display: flex; flex-direction: column; gap: 0.375rem; }
.lp-stack__row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 0.75rem;
    padding: 0.5rem 0.625rem;
    border: 1px solid var(--at-border);
    border-radius: 8px;
    font-size: 0.8125rem;
}
.lp-stack__row span { color: var(--at-text-muted); text-align: right; }

/* Responsive */
@media (max-width: 1100px) {
    .lp-cards { grid-template-columns: repeat(2, 1fr); }
    .lp-signals,
    .lp-signals--three,
    .lp-groups,
    .lp-pipe { grid-template-columns: repeat(2, 1fr); }
    .lp-groups--five { grid-template-columns: repeat(3, 1fr); }
    .lp-pipe__step::after { display: none; }
}

@media (max-width: 991px) {
    .lp-hero .landing-hero__visual { display: flex; }
    .lp-hero .landing-hero > * { min-width: 0; }
    .lp-window--hero { max-width: 100%; }
    .lp-window--hero .lp-window__body { overflow-x: auto; }
    .lp-float { margin-right: 0; }
    .lp-tg { margin: 0 auto; }
    .lp-spotlight,
    .lp-builder,
    .lp-calc,
    .lp-limits__box { grid-template-columns: 1fr; gap: 1.75rem; }
    .lp-spotlight--reverse .lp-spotlight__copy { order: 0; }
    .lp-pain__grid,
    .lp-posts__grid,
    .lp-how__steps,
    .lp-cards--three { grid-template-columns: 1fr; }
    .lp-more__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 767px) {
    .lp-asin-form__controls { flex-direction: column; }
    .lp-asin-form__submit.btn { width: 100%; }
    .lp-cards,
    .lp-cards--two,
    .lp-signals,
    .lp-signals--three,
    .lp-groups,
    .lp-groups--five,
    .lp-pipe,
    .lp-more__grid { grid-template-columns: 1fr; }
    .lp-kv { grid-template-columns: repeat(2, 1fr); }
    .lp-ba,
    .lp-sim { grid-template-columns: 1fr; }
    .lp-mail__list li { grid-template-columns: 1fr auto; }
    .lp-mail__from { display: none; }
    .lp-signal--wide { grid-column: auto; }
    .lp-calc { padding: 1.5rem; }
    .lp-hide-sm { display: none; }
    .lp-carousel__stage { display: block; position: relative; }
    .lp-carousel__nav {
        position: absolute;
        top: 38%;
        z-index: 1;
        background: rgb(255 255 255 / 0.94);
    }
    .lp-carousel__nav--prev { left: 0.5rem; }
    .lp-carousel__nav--next { right: 0.5rem; }
    .lp-lightbox {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
        padding-bottom: calc(4.75rem + env(safe-area-inset-bottom));
    }
    .lp-lightbox__nav--prev,
    .lp-lightbox__nav--next {
        top: auto;
        bottom: calc(0.75rem + env(safe-area-inset-bottom));
        transform: none;
    }
    .lp-mock-table__kw { max-width: 8.5rem; }
    .lp-window__body { padding: 0.75rem; }
}
