/*
 * Promotion landings: single-jac_promo.php with parts/promos/*.php, the dealer's own
 * promotion, and templates/promo-t8pro-t9.php.
 * Loaded after main.css by jac_page_style() in inc/enqueue.php.
 */

/* =========================================================
   PROMO LANDING — pjs6-* (layout 1:1 z multisite)

   SHARED, despite the name. Used by js6.php (36), js8-pro.php (39) and
   korzysci-2025-js8-pro.php (35). Renaming these classes means touching
   every one of those landings, not just JS6.
   ========================================================= */
.pjs6-top { background: #f4f7f9; }
.pjs6-top__grid {
    max-width: var(--max-w);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: calc(100vh - var(--nav-h));
}
.pjs6-top__img { position: relative; }
.pjs6-top__img img { width: 100%; height: auto; display: block; }
.pjs6-top__form-col {
    display: flex;
    align-items: center;
    padding: 60px 48px;
}
.pjs6-form-card { max-width: 480px; }
.pjs6-form-card__title {
    font-size: clamp(1.4rem, 2.4vw, 2rem);
    font-weight: 800;
    color: var(--gray-900);
    line-height: 1.2;
    margin-bottom: 12px;
}
.pjs6-form-card__sub {
    font-size: .9375rem;
    color: #555;
    line-height: 1.6;
    margin-bottom: 24px;
}

/* Promocja własna dealera (fallback w single-jac_promo.php) — ten sam układ,
   plus elementy, których landingi importera nie mają. */
.pjs6-form-card__valid {
    font-size: .875rem;
    font-weight: 600;
    color: var(--accent-red);
    margin: -12px 0 24px;
}
.pjs6-form-card .jac-promo-landing__back a { color: var(--gray-600); }
.pjs6-form-card .jac-promo-landing__back a:hover { color: var(--brand); }
/* Landingi importera mają zdjęcia pionowe 1080x1440, dealer wgra dowolne —
   zwykle poziome. Zdjęcie wypełnia więc całą kolumnę zamiast wisieć u góry. */
.pjs6-top--dealer .pjs6-top__img img { height: 100%; object-fit: cover; }
@media (max-width: 1000px) {
    .pjs6-top--dealer .pjs6-top__img img { height: auto; max-height: 60vh; }
}
/* Bez zdjęcia: jedna kolumna, karta wyśrodkowana, bez pełnej wysokości ekranu. */
.pjs6-top__grid--solo { grid-template-columns: 1fr; min-height: 0; }
.pjs6-top__grid--solo .pjs6-top__form-col { justify-content: center; }

.pjs6-benefits { overflow: hidden; }
.pjs6-benefits__grid {
    max-width: var(--max-w);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.pjs6-benefits__text { padding: 80px 48px; }
.pjs6-benefits__eyebrow {
    font-size: .6875rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--brand);
    margin-bottom: 10px;
}
.pjs6-benefits__title {
    font-size: clamp(1.4rem, 2.4vw, 1.9rem);
    font-weight: 800;
    color: var(--gray-900);
    line-height: 1.2;
    margin-bottom: 16px;
}
.pjs6-benefits__desc { font-size: .9375rem; color: #555; line-height: 1.7; margin-bottom: 24px; }
.pjs6-benefits__img { position: relative; overflow: hidden; }
.pjs6-benefits__img::before { content: ''; display: block; aspect-ratio: 1 / 1; }
.pjs6-benefits__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }

.pjs6-benefit-card {
    border: 1.5px solid #e8e8e8;
    border-radius: 14px;
    padding: 20px 22px;
    margin-bottom: 14px;
    background: var(--white);
}
.pjs6-benefit-card__header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}
.pjs6-benefit-card__check {
    width: 28px;
    height: 28px;
    background: var(--brand);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--white);
}
.pjs6-benefit-card__check svg { width: 14px; height: 14px; }
.pjs6-benefit-card__title { font-size: .9375rem; font-weight: 700; color: var(--gray-900); }
.pjs6-benefit-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.pjs6-benefit-list li { font-size: .875rem; color: #555; line-height: 1.5; padding-left: 12px; position: relative; }
.pjs6-benefit-list li::before { content: '–'; position: absolute; left: 0; color: var(--brand); }

.pjs6-features { overflow: hidden; }
.pjs6-features__grid {
    max-width: var(--max-w);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.pjs6-features__img-col { position: relative; overflow: hidden; }
.pjs6-features__img-col::before { content: ''; display: block; aspect-ratio: 9 / 16; }
.pjs6-features__img-col img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.pjs6-features__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,.75) 0%, rgba(0,0,0,.1) 60%);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 40px 36px;
}
.pjs6-features__model-name {
    font-size: 3rem;
    font-weight: 800;
    color: var(--white);
    line-height: 1;
    margin-bottom: 8px;
}
/* Only archive/js6-03 uses it today — kept so the archived landing restores as is. */
.pjs6-features__tagline { font-size: .9375rem; color: rgba(255,255,255,.75); margin-bottom: 20px; }
.pjs6-features__more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: .875rem;
    font-weight: 600;
    color: var(--white);
    text-decoration: none;
}
.pjs6-features__more svg { width: 16px; height: 16px; }
.pjs6-features__list-col { padding: 60px 48px; background: var(--white); }
.pjs6-features__list-title {
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #999;
    margin-bottom: 20px;
}
.pjs6-feature-row {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    border: 1.5px solid #e8e8e8;
    border-radius: 12px;
    margin-bottom: 8px;
    transition: border-color .2s, box-shadow .2s;
}
.pjs6-feature-row:hover { border-color: rgba(0,93,125,.3); box-shadow: 0 4px 12px rgba(0,93,125,.07); }
.pjs6-feature-row__icon {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    color: var(--brand);
    display: flex;
    align-items: center;
    justify-content: center;
}
.pjs6-feature-row__icon svg { width: 22px; height: 22px; }
.pjs8pro-feature-icon svg { width: 22px; height: 22px; fill: #005d7d; stroke: none; }
.pjs6-feature-row__text { font-size: .875rem; color: #333; line-height: 1.45; }
.pjs6-feature-row__text small { display: block; font-size: .75rem; color: #777; margin-top: 2px; }

/* JS6 99 900 zł sale (js6.php): price card, CTAs, photo slider in the features column. */
.pjs6-price-card { margin-top: 24px; }
.pjs6-price-card__old { font-size: 1.125rem; font-weight: 600; color: #212121; text-decoration: line-through; }
.pjs6-price-card__new { font-size: 2.25rem; font-weight: 900; line-height: 1.25; letter-spacing: -.025em; color: #e53935; }
.pjs6-price-card__desc { margin-top: 12px; font-size: .875rem; line-height: 1.625; color: #555; }
.pjs6-cta { margin-top: 8px; text-transform: uppercase; }
.pjs6-cta--list { margin-top: 24px; }
.pjs6-features__slider { position: absolute; inset: 0; }
/* The column sets the height (9:16, 4:3 on phones); pj7-slider's own min-height would overflow it and clip the dots. */
.pjs6-features__slider .pj7-slider { min-height: 0; }
/* Beats .pjs6-features__img-col img, which stretches every img in the column. */
.pjs6-features__img-col .pjs6-features__badge {
    position: absolute;
    inset: auto 16px 16px auto;
    z-index: 3;
    width: 144px;
    height: auto;
    object-fit: contain;
    pointer-events: none;
}
@media (max-width: 767px) {
    .pjs6-features__img-col .pjs6-features__badge { width: 112px; }
}

.jac-promo-disclaimer {
    padding: 24px 0;
    background: #f6f6f6;
    border-top: 1px solid #e8e8e8;
}
.jac-promo-disclaimer p { font-size: .75rem; color: #888; line-height: 1.6; }

.pjs6-contact { padding: var(--section-py) 0; background: #f7f7f7; border-top: 1px solid #e8e8e8; }
.pjs6-contact__head { margin-bottom: 32px; }
.pjs6-contact__title { font-size: clamp(1.375rem, 2.8vw, 2.25rem); font-weight: 900; letter-spacing: -.03em; color: var(--gray-900); text-transform: uppercase; line-height: 1.1; margin-bottom: 4px; }
.pjs6-contact__sub { font-size: .9375rem; color: #666; }

/* Responsive promo landing */
@media (max-width: 1000px) {
    .pjs6-top__grid { grid-template-columns: 1fr; min-height: auto; }
    .pjs6-top__form-col { padding: 32px 24px; }
    .pjs6-benefits__grid { grid-template-columns: 1fr; }
    .pjs6-features__grid { grid-template-columns: 1fr; }
    .pjs6-features__img-col::before { aspect-ratio: 4 / 3; }
}
@media (max-width: 640px) {
    .pjs6-top__form-col { padding: 24px 16px; }
    .pjs6-benefits__text { padding: 40px 16px; }
    .pjs6-features__list-col { padding: 32px 16px; }
    .pjs6-form-card__title { font-size: clamp(1.1rem, 5vw, 1.4rem); }
}

/* =========================================================
   PROMO LANDING — pj7-* (layout 1:1 z multisite, J7 PLUS)

   SHARED: j7-plus.php (34), js8-pro.php (26) and js6.php (17, the slider).
   ========================================================= */
.pj7-top { background: #f4f7f9; }
.pj7-top__grid { max-width: var(--max-w); margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; min-height: calc(100vh - var(--nav-h)); }
.pj7-top__img { position: relative; }
.pj7-top__img img { width: 100%; height: auto; display: block; }
.pj7-top__form-col { background: #f4f7f9; display: flex; align-items: flex-start; padding: 48px 40px; }
.pj7-form-card { width: 100%; max-width: 520px; }
.pj7-form-card__eyebrow { font-size: .6875rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--brand); margin-bottom: 10px; }
.pj7-form-card__title { font-size: clamp(1.25rem, 2vw, 1.75rem); font-weight: 800; letter-spacing: -.03em; color: var(--gray-900); line-height: 1.2; margin-bottom: 6px; }
.pj7-form-card__sub { font-size: .875rem; color: #555; margin-bottom: 24px; font-weight: 500; }

.pj7-benefits { background: var(--white); border-top: 1px solid #e8e8e8; overflow: hidden; }
.pj7-benefits__grid { max-width: var(--max-w); margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; }
.pj7-benefits__text { padding: 56px 48px; order: 1; }
.pj7-benefits__eyebrow { font-size: .6875rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--brand); margin-bottom: 10px; }
.pj7-benefits__title { font-size: clamp(1.4rem, 2.5vw, 2.1rem); font-weight: 800; letter-spacing: -.03em; color: var(--gray-900); line-height: 1.2; margin-bottom: 10px; }
.pj7-benefits__img { position: relative; overflow: hidden; order: 2; }
.pj7-benefits__img::before { content: ''; display: block; aspect-ratio: 1 / 1; }
.pj7-benefits__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }

.pj7-offer-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.pj7-offer-list li, .pj7-special-list li { display: flex; align-items: center; gap: 14px; font-size: .9375rem; font-weight: 600; color: var(--gray-900); background: var(--white); border: 1.5px solid #e8e8e8; border-radius: 12px; padding: 14px 18px; transition: border-color .2s, box-shadow .2s; }
.pj7-offer-list li:hover, .pj7-special-list li:hover { border-color: rgba(0,93,125,.3); box-shadow: 0 4px 12px rgba(0,93,125,.07); }
.pj7-offer-list__check, .pj7-special-list__check { width: 26px; height: 26px; flex-shrink: 0; background: var(--brand); border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.pj7-offer-list__check svg, .pj7-special-list__check svg { width: 13px; height: 13px; stroke: var(--white); }

.pj7-features { border-top: 1px solid #e8e8e8; overflow: hidden; }
.pj7-features__grid { max-width: var(--max-w); margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; }
.pj7-features__img-col { position: relative; overflow: hidden; }
.pj7-features__img-col::before { content: ''; display: block; aspect-ratio: 1 / 1; }
.pj7-features__img-col img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.pj7-features__overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.75) 0%, rgba(0,0,0,.15) 60%); display: flex; flex-direction: column; justify-content: flex-end; padding: 36px; }
.pj7-features__model-name { font-size: 3.25rem; font-weight: 900; color: var(--white); letter-spacing: -.04em; line-height: 1; margin-bottom: 8px; }
.pj7-features__tagline { font-size: 1rem; font-weight: 600; color: rgba(255,255,255,.9); line-height: 1.4; margin-bottom: 20px; max-width: 320px; }
.pj7-features__more { display: inline-flex; align-items: center; gap: 7px; background: var(--brand); color: var(--white); font-size: .8125rem; font-weight: 700; padding: 10px 20px; border-radius: 8px; text-decoration: none; align-self: flex-start; transition: background .2s; }
.pj7-features__more:hover { background: #004a64; }
.pj7-features__more svg { width: 13px; height: 13px; stroke: var(--white); }
.pj7-features__list-col { padding: 48px 40px; background: var(--white); display: flex; flex-direction: column; justify-content: center; }
.pj7-features__list-title { font-size: .6875rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--brand); margin-bottom: 10px; }
.pj7-features__list-heading { font-size: clamp(1.4rem, 2.5vw, 2.1rem); font-weight: 800; letter-spacing: -.03em; color: var(--gray-900); line-height: 1.2; margin-bottom: 24px; }
.pj7-feature-row { display: flex; align-items: center; gap: 16px; padding: 14px 18px; border: 1.5px solid #e8e8e8; border-radius: 12px; margin-bottom: 8px; transition: border-color .2s, box-shadow .2s; }
.pj7-feature-row:hover { border-color: rgba(0,93,125,.3); box-shadow: 0 4px 12px rgba(0,93,125,.07); }
.pj7-feature-row__icon { width: 44px; height: 44px; flex-shrink: 0; background: rgba(0,93,125,.08); border-radius: 11px; display: flex; align-items: center; justify-content: center; }
.pj7-feature-row__icon svg { width: 22px; height: 22px; }
.pj7-feature-row__text { font-size: .9375rem; font-weight: 600; color: var(--gray-900); line-height: 1.35; }
.pj7-feature-row__text small { font-weight: 400; color: #777; display: block; font-size: .8125rem; }
.pj7-features__cta-wrap { margin-top: 8px; }

.pj7-special { background: #f4f7f9; border-top: 1px solid #e8e8e8; }
.pj7-special__grid { max-width: var(--max-w); margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; }
.pj7-special__left { padding: 56px 48px; display: flex; flex-direction: column; justify-content: center; }
.pj7-special__eyebrow { font-size: .6875rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--brand); margin-bottom: 10px; }
.pj7-special__title { font-size: clamp(1.4rem, 2.5vw, 2.1rem); font-weight: 800; letter-spacing: -.03em; color: var(--gray-900); line-height: 1.2; margin-bottom: 28px; }
.pj7-special-list { list-style: none; padding: 0; margin: 0 0 32px; display: flex; flex-direction: column; gap: 10px; }
.pj7-special-list li.pj7-special-list__item--stacked { align-items: flex-start; }
.pj7-special-list li.pj7-special-list__item--stacked .pj7-special-list__check { margin-top: 2px; }
.pj7-special-list__text { display: flex; flex-direction: column; gap: 2px; }
.pj7-special-list__sub { font-size: .8125rem; font-weight: 400; color: #6b7280; }
.pj7-special__right { position: relative; overflow: hidden; }

.pj7-slider { position: relative; width: 100%; height: 100%; min-height: 480px; overflow: hidden; }
.pj7-slider__track { display: flex; height: 100%; transition: transform .5s ease; }
.pj7-slider__slide { min-width: 100%; height: 100%; position: relative; overflow: hidden; }
.pj7-slider__slide img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.pj7-slider__slide-title { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(to top, rgba(0,0,0,.65) 0%, transparent 100%); color: var(--white); font-size: 1rem; font-weight: 700; padding: 28px 24px 20px; letter-spacing: -.01em; }
.pj7-slider__btn { position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; background: rgba(255,255,255,.9); border: none; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 10px rgba(0,0,0,.2); z-index: 2; transition: background .2s; }
.pj7-slider__btn:hover { background: var(--white); }
.pj7-slider__btn svg { width: 18px; height: 18px; stroke: var(--gray-900); }
.pj7-slider__btn--prev { left: 12px; }
.pj7-slider__btn--next { right: 12px; }
.pj7-slider__dots { position: absolute; bottom: 14px; left: 50%; transform: translateX(-50%); display: flex; gap: 7px; z-index: 2; }
.pj7-slider__dot { width: 8px; height: 8px; border-radius: 50%; background: rgba(255,255,255,.5); border: none; cursor: pointer; transition: background .2s, transform .2s; padding: 0; }
.pj7-slider__dot--active { background: var(--white); transform: scale(1.2); }

.pj7-contact { padding: var(--section-py) 0; background: var(--white); border-top: 1px solid #e8e8e8; }
.pj7-contact__head { margin-bottom: 32px; }
.pj7-contact__title { font-size: clamp(1.4rem, 2.8vw, 2.25rem); font-weight: 900; letter-spacing: -.03em; color: var(--gray-900); text-transform: uppercase; line-height: 1.1; margin-bottom: 4px; }
.pj7-contact__sub { font-size: .9375rem; color: #666; }

@media (max-width: 1000px) {
    .pj7-top__grid { grid-template-columns: 1fr; min-height: auto; }
    .pj7-top__img { height: auto; }
    .pj7-top__form-col { padding: 36px 24px; }
    .pj7-benefits__grid { grid-template-columns: 1fr; }
    .pj7-benefits__img { order: 0; }
    .pj7-benefits__text { order: 0; padding: 40px var(--section-px); }
    .pj7-features__grid { grid-template-columns: 1fr; }
    .pj7-features__list-col { padding: 36px 24px; }
    .pj7-special__grid { grid-template-columns: 1fr; }
    .pj7-special__left { padding: 40px var(--section-px); }
    .pj7-slider { min-height: 360px; }
}
@media (max-width: 640px) {
    .pj7-top__form-col { padding: 28px 20px; }
    .pj7-features__overlay { padding: 24px 20px; }
    .pj7-features__model-name { font-size: 2.25rem; }
}

/* === Promotion back link ("← Wszystkie promocje"), styled for a dark background === */
.jac-promo-landing__back {
    font-size: .8125rem;
    margin-bottom: 16px;
}
.jac-promo-landing__back a {
    color: rgba(255,255,255,.55);
    font-weight: 600;
    transition: color .2s;
}
.jac-promo-landing__back a:hover { color: #fff; }

/* ============================================================
   PROMO LANDING — T8 PRO / T9 (leasing)
   1:1 z globals.css multisite

   SHARED beyond leasing: promo-t8pro-t9.php (95) and js8-pro.php (27).
   The three promo prefixes — pjs6-, pj7-, pleas- — are in
   practice one section library with misleading names; untangling them
   belongs with the move to named ACF sections.
   ============================================================ */

/* Container of every pleas-* section below; the same values as .container. */
.pleas-why__inner,
.pleas-models__inner,
.pleas-benefits__inner,
.pleas-calc__inner,
.pleas-disclaimer__inner { max-width: var(--max-w); margin: 0 auto; padding: 0 var(--section-px); }

.pleas-top { background: #f4f7f9; }
.pleas-top__grid {
    max-width: var(--max-w);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
}
.pleas-top__img { position: relative; overflow: hidden; }
.pleas-top__img img { width: 100%; height: auto; display: block; }
.pleas-top__form-col {
    background: #f4f7f9;
    display: flex;
    align-items: flex-start;
    padding: 48px 40px;
}
.pleas-form-card { width: 100%; max-width: 520px; }
.pleas-form-card__eyebrow {
    font-size: .6875rem; font-weight: 700; letter-spacing: .14em;
    text-transform: uppercase; color: var(--brand); margin-bottom: 10px;
}
.pleas-form-card__title {
    font-size: clamp(20px, 2.2vw, 30px);
    font-weight: 800; letter-spacing: -.03em; color: #111; line-height: 1.2; margin-bottom: 6px;
}
.pleas-form-card__title sup a { font-size: .55em; color: inherit; text-decoration: none; }
.pleas-form-card__sub { font-size: .875rem; color: #555; margin-bottom: 24px; font-weight: 500; }

.pleas-why { background: #fff; border-top: 1px solid #e8e8e8; padding: var(--section-py) 0; }
.pleas-why__eyebrow,
.pleas-calc__eyebrow {
    font-size: .6875rem; font-weight: 700; letter-spacing: .14em;
    text-transform: uppercase; color: var(--brand); margin-bottom: 10px; text-align: center;
}
.pleas-why__title {
    font-size: clamp(22px, 2.5vw, 34px); font-weight: 800; letter-spacing: -.03em;
    color: #111; line-height: 1.2; margin-bottom: 40px; text-align: center;
}
.pleas-why__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.pleas-why-card {
    border: 1.5px solid #e8e8e8; border-radius: 16px; padding: 28px 22px;
    background: #fff; display: flex; flex-direction: column; gap: 12px;
    transition: box-shadow .2s, border-color .2s;
}
.pleas-why-card:hover { border-color: rgba(0,93,125,.3); box-shadow: 0 6px 20px rgba(0,93,125,.08); }
.pleas-why-card__icon {
    width: 48px; height: 48px; background: rgba(0,93,125,.08); border-radius: 12px;
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.pleas-why-card__icon svg { width: 24px; height: 24px; stroke: var(--brand); }
.pleas-why-card__title { font-size: .9375rem; font-weight: 700; color: #111; line-height: 1.3; }
.pleas-why-card__desc { font-size: .8125rem; color: #666; line-height: 1.6; }

.pleas-models { border-top: 1px solid #e8e8e8; background: var(--gray-100); padding: var(--section-py) 0; }
.pleas-models__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.pleas-models__grid--3 { grid-template-columns: repeat(3, 1fr); }
.pleas-model-card {
    background: #fff; border: 1.5px solid #e8e8e8; border-radius: 20px;
    overflow: hidden; display: flex; flex-direction: column;
}
.pleas-model-card__img-wrap { position: relative; aspect-ratio: 16/9; overflow: hidden; }
.pleas-model-card__img-wrap img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.pleas-model-card--t8 { border-color: #A0A559; }
.pleas-model-card--t9 { border-color: #9C6E48; }
.pleas-model-card__logo-overlay {
    position: absolute; top: 32px; left: 32px;
    height: 32px !important; width: auto !important;
    object-fit: contain; pointer-events: none; z-index: 2;
    filter: drop-shadow(0 2px 8px rgba(0,0,0,.4));
}
.pleas-model-card__title-overlay {
    position: absolute; bottom: 0; left: 0; right: 0;
    background: linear-gradient(to top, rgba(0,0,0,.72) 0%, transparent 100%);
    padding: 40px 24px 20px; z-index: 2;
}
.pleas-model-card__title-overlay p {
    font-size: 1.375rem; font-weight: 700; letter-spacing: .09em;
    text-transform: uppercase; color: rgba(255,255,255,.7); margin: 0 0 4px;
}
.pleas-model-card__title-overlay strong {
    font-size: 1.5rem; font-weight: 800; color: #fff; display: block; letter-spacing: -.01em;
}
.pleas-model-card__offer-label {
    font-size: .6875rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase;
    color: rgba(255,255,255,.45); margin: 0 0 10px;
}
.pleas-model-card__tagline { font-size: .8125rem; color: #777; margin-bottom: 20px; }
.pleas-model-card__body--dark .pleas-model-card__tagline { color: rgba(255,255,255,.55); }
.pleas-model-card__body {
    padding: 28px 28px 24px; display: flex; flex-direction: column; flex: 1;
}
.pleas-model-feat-list { list-style: none; padding: 0; margin: 0 0 24px; display: flex; flex-direction: column; gap: 7px; }
.pleas-model-feat-list li {
    font-size: .875rem; color: #444; line-height: 1.5; padding-left: 18px; position: relative;
}
.pleas-model-feat-list li::before {
    content: ''; position: absolute; left: 0; top: 7px;
    width: 6px; height: 6px; background: var(--brand); border-radius: 50%;
}
.pleas-model-card--t8 .pleas-model-feat-list li::before { background: #A0A559; }
.pleas-model-card--t9 .pleas-model-feat-list li::before { background: #9C6E48; }
.pleas-model-card__leasing-box {
    background: rgba(0,93,125,.06); border: 1.5px solid rgba(0,93,125,.18);
    border-radius: 14px; padding: 18px 20px; margin-bottom: 20px;
}
.pleas-model-card__rate {
    font-size: clamp(26px, 2.5vw, 36px); font-weight: 900;
    color: var(--brand); letter-spacing: -.03em; margin-bottom: 4px;
}
.pleas-model-card__rate span { font-size: .875rem; font-weight: 500; color: #666; }
.pleas-model-card__params { font-size: .75rem; color: #777; line-height: 1.7; }
.pleas-model-card__btns { display: flex; gap: 10px; flex-wrap: wrap; margin-top: auto; }
.pleas-model-card__body--dark { background: #111; }
.pleas-model-card__body--dark .pleas-model-feat-list li { color: rgba(255,255,255,.75); }
.pleas-model-card__body--dark .pleas-model-feat-list li::before { background: rgba(255,255,255,.4); }
.pleas-model-card__leasing-box--dark { background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.15); }
.pleas-model-card__body--dark .pleas-model-card__rate { color: #fff; }
.pleas-model-card__body--dark .pleas-model-card__rate span { color: rgba(255,255,255,.6); }
.pleas-model-card__body--dark .pleas-model-card__params { color: rgba(255,255,255,.5); }

.btn--t8 { background: #A0A559 !important; border-color: #A0A559 !important; color: #fff !important; }
.btn--t8:hover { background: #8f9449 !important; }
.btn--t9 { background: #9C6E48 !important; border-color: #9C6E48 !important; color: #fff !important; }
.btn--t9:hover { background: #8a5f3c !important; }
.btn--outline-light { border-color: rgba(255,255,255,.35) !important; color: #fff !important; background: transparent !important; }
.btn--outline-light:hover { border-color: #fff !important; background: rgba(255,255,255,.08) !important; }

.pleas-benefits { background: #111; padding: var(--section-py) 0; }
.pleas-benefits__title {
    font-size: clamp(20px, 2vw, 28px); font-weight: 800; color: #fff;
    letter-spacing: -.03em; text-align: center; margin-bottom: 36px;
}
.pleas-benefits__row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.pleas-benefit-item { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 12px; }
.pleas-benefit-item__icon {
    width: 56px; height: 56px; background: rgba(255,255,255,.15);
    border-radius: 50%; display: flex; align-items: center; justify-content: center;
}
.pleas-benefit-item__icon svg { width: 26px; height: 26px; stroke: #fff; }
.pleas-benefit-item__label { font-size: .875rem; font-weight: 700; color: #fff; line-height: 1.35; }

.pleas-calc { background: #fff; border-top: 1px solid #e8e8e8; padding: var(--section-py) 0; }
.pleas-calc__title {
    font-size: clamp(22px, 2.5vw, 34px); font-weight: 800; letter-spacing: -.03em;
    color: #111; text-align: center; margin-bottom: 40px;
}
.pleas-calc__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.pleas-calc-card { border: 1.5px solid #e8e8e8; border-radius: 20px; overflow: hidden; }
.pleas-calc-card__head {
    background: var(--brand); padding: 18px 24px; display: flex; align-items: center;
}
.pleas-calc-card--t8 .pleas-calc-card__head { background: #A0A559; }
.pleas-calc-card--t9 .pleas-calc-card__head { background: #9C6E48; }
.pleas-calc-card__logo { height: 28px; width: auto; object-fit: contain; display: block; }
.pleas-calc-card__body { padding: 24px; }
.pleas-calc-row {
    display: flex; justify-content: space-between; align-items: center;
    padding: 10px 0; border-bottom: 1px solid #e8e8e8; font-size: .875rem;
}
.pleas-calc-row:last-child { border-bottom: none; }
.pleas-calc-row__label { color: #666; font-weight: 500; }
.pleas-calc-row__val { color: #111; font-weight: 700; }
.pleas-calc-row--rate .pleas-calc-row__val {
    font-size: 1.75rem; font-weight: 900; color: #c0392b; letter-spacing: -.03em;
}

.pleas-contact { padding: var(--section-py) 0; background: var(--gray-100); border-top: 1px solid #e8e8e8; }
.pleas-contact__head { margin-bottom: 32px; }
.pleas-contact__title {
    font-size: clamp(22px, 2.8vw, 36px); font-weight: 900; letter-spacing: -.03em;
    color: #111; text-transform: uppercase; line-height: 1.1; margin-bottom: 4px;
}
.pleas-contact__sub { font-size: .9375rem; color: #666; }

.pleas-disclaimer { background: #fff; border-top: 1px solid #e8e8e8; padding: 24px 0; }
.pleas-disclaimer p { font-size: .6875rem; color: #999; line-height: 1.7; margin-bottom: 8px; }
.pleas-disclaimer p:last-child { margin-bottom: 0; }
.fn-link { color: inherit; text-decoration: none; }
.fn-link:hover { opacity: .7; }

@media (max-width: 1100px) {
    .pleas-why__cards { grid-template-columns: repeat(2, 1fr); }
    .pleas-benefits__row { grid-template-columns: repeat(2, 1fr); }
    .pleas-models__grid--3 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 1000px) {
    .pleas-top__grid { grid-template-columns: 1fr; }
    .pleas-top__form-col { padding: 36px 24px; }
    .pleas-models__grid,
    .pleas-models__grid--3 { grid-template-columns: 1fr; }
    .pleas-calc__grid { grid-template-columns: 1fr; }
    .pleas-calc-row--rate { flex-direction: column; align-items: flex-start; gap: 4px; }
}
@media (max-width: 640px) {
    .pleas-top__form-col { padding: 28px 20px; }
    .pleas-why__cards { grid-template-columns: 1fr; }
    .pleas-benefits__row { grid-template-columns: 1fr 1fr; }
    .pleas-model-card__btns { flex-direction: column; }
}
