/*
 * Посадочная акции на tvsmotors.ru (/actions/<slug>, разметка — content/action-pages/<slug>/page.html).
 * Оформление сайта, как у страниц моделей (model-page.css): Montserrat из layout, графит #14161a,
 * фон #f2f3f5, белые карточки, синий акцент, тёмно-синяя кнопка отправки. Всё внутри .ap — обвязку не задеваем.
 * Цвета акции (06.11.2026, после двух заходов владельца): крупные блоки чёрные и белые («чёрная пятница / белая суббота»),
 * акцент — только синий сайта (кнопки, «5», субботы, шаги), у пяти подарков свои цвета в мелких значках. Оранжевого нет.
 * Исходник: Desktop\tenet-lending\tvsmotors\action-pages\action-page.css
 */
.ap{--ink:#14161a;--ink-2:#4b5259;--mute:#6b7178;--mute-2:#8b9199;--line:#e6e8ec;--field:#dfe3e9;--wash:#f7f8fa;
  --blue:oklch(0.53 0.19 262);--blue-2:oklch(0.47 0.19 262);--blue-soft:oklch(0.53 0.19 262 / .1);--blue-light:oklch(0.78 0.11 255);
  --ice:#edf3fd;
  --navy:linear-gradient(135deg,#101d33 0%,#1b3b6f 52%,#2a5ca8 100%);
  --red:oklch(0.55 0.19 27);
  --gut:32px;--sec:64px;--r:24px;--top:92px;
  color:var(--ink);-webkit-font-smoothing:antialiased;padding-bottom:24px}
@media(max-width:640px){.ap{--gut:16px;--sec:40px;--r:20px;--top:72px}}
.ap a{color:var(--blue);text-decoration:none}
.ap a:hover{color:var(--ink)}
.ap input,.ap button{font-family:inherit}
.ap [hidden]{display:none!important}
.ap img{display:block;max-width:100%}
@keyframes apFade{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(min-width:641px){.ap .only-m{display:none!important}}
@media(max-width:640px){.ap .only-d{display:none!important}}

.ap-wrap{max-width:var(--tvs-container,1320px);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut);box-sizing:border-box}
.ap-sec{margin-top:var(--sec);scroll-margin-top:var(--top)}
.ap-sec-first{margin-top:14px}
.ap-kicker{font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--blue)}
.ap-h2{margin:10px 0 0;font-size:clamp(25px,3.2vw,36px);line-height:1.1;font-weight:700;letter-spacing:-.03em;text-wrap:balance}
.ap-lead{margin:14px 0 0;max-width:780px;font-size:clamp(15px,1.4vw,16.5px);line-height:1.6;color:var(--ink-2);text-wrap:pretty}

/* кнопки: синяя — действие акции, тёмно-синяя — отправка формы (как на сайте) */
.ap-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 26px;border:0;border-radius:14px;
  cursor:pointer;background:var(--ink);color:#fff;font-size:15px;font-weight:700;text-align:center;white-space:nowrap;transition:background .15s,filter .15s}
.ap-btn:hover{background:#2c3138}
.ap-btn:disabled{opacity:.7;cursor:progress}
.ap-btn-l{height:58px;padding:0 32px;font-size:16px}
.ap-btn-blue{background:var(--blue)}
.ap-btn-blue:hover{background:var(--blue-2)}
.ap-btn-navy{background:var(--navy)}
.ap-btn-navy:hover{background:var(--navy);filter:brightness(1.12)}
@media(max-width:640px){.ap-btn,.ap-btn-l{width:100%;white-space:normal}}

/* крошки */
.ap-crumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:18px 0 14px;font-size:12.5px;font-weight:500;color:var(--mute-2)}
.ap-crumbs a{color:var(--mute)}
.ap-crumbs a:hover{color:var(--ink)}
.ap-crumbs span[aria-current]{color:var(--ink-2)}
@media(max-width:640px){.ap-crumbs{padding:12px 0 10px;font-size:12px}}

.ap-ended{margin-bottom:14px;padding:14px 18px;border-radius:14px;background:#fff;border:1px solid var(--line);font-size:14.5px;font-weight:600}

/* ── первый экран: баннер, заголовок и кнопка — текстом на чёрном поле слева ── */
.ap-banner{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:1912/840;background:#000;color:#fff}
.ap-banner picture,.ap-banner img{position:absolute;inset:0;display:block;width:100%;height:100%}
.ap-banner img{object-fit:cover;object-position:right center}
.ap-banner-txt{position:absolute;z-index:1;left:clamp(24px,5.5%,88px);top:0;bottom:22%;width:min(44%,620px);
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:clamp(18px,2.4vw,34px)}
.ap-banner-t{margin:0;font-size:clamp(26px,3.8vw,58px);line-height:1.05;font-weight:800;letter-spacing:-.035em;text-wrap:balance}
.ap a.ap-btn,.ap a.ap-btn:hover{color:#fff}
@media(max-width:1100px){.ap-banner-t{font-size:3.4vw}}
@media(max-width:860px){.ap-banner-txt{bottom:16%;width:48%}.ap-banner .ap-btn-l{height:48px;padding:0 24px;font-size:15px}}
/* телефон: текст над картинкой, у картинки — правая часть кадра (машина и шины), верх растворён в чёрном */
@media(max-width:640px){
  .ap-banner{display:flex;flex-direction:column;aspect-ratio:auto}
  .ap-banner-txt{position:relative;order:1;left:auto;top:auto;bottom:auto;width:auto;padding:28px 20px 0;gap:20px}
  .ap-banner-t{font-size:clamp(28px,8.6vw,36px)}
  .ap-banner .ap-btn-l{width:100%;height:54px;font-size:16px}
  .ap-banner picture{position:relative;order:2;inset:auto;height:auto;aspect-ratio:900/594}
  .ap-banner picture::after{content:"";position:absolute;left:0;right:0;top:0;height:38%;background:linear-gradient(#000,rgba(0,0,0,0))}
}

/* ── первый экран: чёрная карточка ── */
.ap-intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4.4vw,72px);background:var(--ink);color:#fff;border-radius:var(--r);
  padding:clamp(24px,4.4vw,60px);position:relative;overflow:hidden}
@media(max-width:960px){.ap-intro{grid-template-columns:1fr;gap:28px}}
.ap-intro .ap-kicker{color:var(--blue-light)}
.ap-h1{margin:14px 0 0;font-size:clamp(31px,4.3vw,56px);line-height:1.05;font-weight:800;letter-spacing:-.035em;text-wrap:balance}
.ap-inv{background:#fff;color:var(--ink);padding:0 .16em;border-radius:.14em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.ap-five{display:flex;align-items:center;gap:14px;margin:26px 0 0}
.ap-five b{display:grid;place-items:center;flex:none;width:clamp(62px,6vw,78px);height:clamp(62px,6vw,78px);border-radius:50%;background:var(--blue);color:#fff;
  font-size:clamp(36px,3.6vw,46px);font-weight:800;letter-spacing:-.04em}
.ap-five span{font-size:clamp(20px,2.1vw,27px);line-height:1.15;font-weight:700;letter-spacing:-.02em}
.ap-dates{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.ap-date{display:flex;align-items:stretch;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.26)}
.ap-date span{display:grid;justify-items:center;align-content:center;gap:2px;min-width:52px;padding:9px 10px}
.ap-date .fri{background:#262a31;color:#fff}
.ap-date .sat{background:#fff;color:var(--blue)}
.ap-date small{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.7}
.ap-date b{font-size:22px;line-height:1;font-weight:800;letter-spacing:-.02em}
.ap-date em{display:flex;align-items:center;padding:0 12px;font-style:normal;font-size:13px;font-weight:600;color:rgba(255,255,255,.75)}
/* телефон: три уикенда в одну строку, «ноября» — под датами */
@media(max-width:640px){
  .ap-dates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:24px}
  .ap-date{display:grid;grid-template-columns:1fr 1fr}
  .ap-date span{min-width:0;padding:8px 4px}
  .ap-date b{font-size:20px}
  .ap-date em{grid-column:1/-1;justify-content:center;padding:5px 0 6px;font-size:11.5px;border-top:1px solid rgba(255,255,255,.2)}
}
.ap-intro-h{margin:0;font-size:clamp(21px,2.1vw,26px);line-height:1.2;font-weight:700;letter-spacing:-.02em}
.ap-intro-b p{margin:12px 0 0;font-size:clamp(15px,1.3vw,16.5px);line-height:1.6;color:rgba(255,255,255,.72);text-wrap:pretty}
.ap-intro-b p b{color:#fff;font-weight:700}
.ap-intro-b .ap-slogan{margin:22px 0 24px;font-size:clamp(15px,1.45vw,18px);font-weight:800;letter-spacing:.02em;line-height:1.35;text-transform:uppercase;color:#fff}

/* ── пять подарков: у каждого свой цвет значка ── */
.ap-gifts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:28px}
@media(max-width:1180px){.ap-gifts{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.ap-gifts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ap-gift{--c:var(--blue);--cs:var(--ice);position:relative;display:flex;flex-direction:column;gap:18px;background:#fff;border-radius:20px;padding:22px 20px 24px}
.ap-gift:nth-child(1){--c:oklch(0.56 0.16 240);--cs:oklch(0.95 0.03 240)}
.ap-gift:nth-child(2){--c:oklch(0.57 0.2 27);--cs:oklch(0.95 0.03 25)}
.ap-gift:nth-child(3){--c:oklch(0.6 0.13 90);--cs:oklch(0.96 0.05 95)}
.ap-gift:nth-child(4){--c:oklch(0.56 0.12 165);--cs:oklch(0.95 0.04 165)}
.ap-gift:nth-child(5){--c:oklch(0.52 0.17 295);--cs:oklch(0.95 0.03 295)}
.ap-gift-n{position:absolute;top:20px;right:20px;font-size:13px;font-weight:800;letter-spacing:.02em;color:var(--mute-2)}
.ap-gift-ico{display:grid;place-items:center;width:54px;height:54px;border-radius:15px;background:var(--cs);color:var(--c)}
.ap-gift-ico svg{width:28px;height:28px}
.ap-gift h3{margin:0;font-size:18px;line-height:1.25;font-weight:700;letter-spacing:-.01em;text-wrap:balance}
.ap-gift p{margin:8px 0 0;font-size:14.5px;line-height:1.55;color:var(--ink-2)}
@media(max-width:560px){
  .ap-gifts{grid-template-columns:1fr;gap:10px}
  .ap-gift{display:grid;grid-template-columns:48px 1fr;column-gap:14px;padding:18px 16px}
  .ap-gift-ico{width:48px;height:48px;border-radius:13px}
  .ap-gift-ico svg{width:25px;height:25px}
  .ap-gift-n{top:18px;right:16px}
  .ap-gift h3{padding-right:28px;font-size:17px}
  .ap-gift p{margin-top:6px}
}
.ap-strip{display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;margin-top:14px;
  background:#fff;border-radius:20px;padding:16px 16px 16px 26px}
.ap-strip b{font-size:clamp(15.5px,1.4vw,17px);line-height:1.4;font-weight:700}
@media(max-width:640px){.ap-strip{padding:18px 16px}}

/* ── три уикенда: чёрная пятница / белая суббота ── */
.ap-weeks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px}
@media(max-width:900px){.ap-weeks{grid-template-columns:1fr;gap:10px}}
.ap-week{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:20px;overflow:hidden;transition:opacity .2s}
.ap-week-days{display:grid;grid-template-columns:1fr 1fr}
.ap-day{display:grid;gap:6px;padding:20px 20px 18px}
.ap-day.fri{background:var(--ink);color:#fff}
.ap-day.sat{background:#fff;color:var(--ink)}
.ap-day small{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;opacity:.6}
.ap-day b{font-size:clamp(36px,3.6vw,46px);line-height:1;font-weight:800;letter-spacing:-.04em}
.ap-day.sat b{color:var(--blue)}
.ap-day span{font-size:13px;line-height:1.35;font-weight:600}
.ap-day.fri span{color:rgba(255,255,255,.75)}
.ap-week-cap{flex:1;margin:0;padding:16px 20px 18px;background:var(--wash);border-top:1px solid var(--line);font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.ap-week-cap b{display:block;margin-bottom:2px;font-size:15.5px;color:var(--ink)}
.ap-week-st{display:inline-block;margin-left:10px;padding:4px 10px;border-radius:999px;background:var(--blue);color:#fff;font-size:11.5px;font-weight:700;vertical-align:2px;letter-spacing:0}
/* рамка поверх половинок с датами (inset-тень они перекрывают) */
.ap-week.next::after,.ap-week.now::after{content:"";position:absolute;inset:0;z-index:2;border:2px solid var(--blue);border-radius:inherit;pointer-events:none}
.ap-week.past{opacity:.5}
.ap-week.past .ap-week-st{background:var(--mute-2)}
@media(max-width:900px){.ap-day{padding:16px 18px 14px;gap:4px}.ap-day b{font-size:34px}.ap-week-cap{padding:14px 18px 16px}}
.ap-after{display:flex;align-items:center;justify-content:space-between;gap:20px 40px;flex-wrap:wrap;margin-top:22px}
.ap-after-t{flex:1 1 520px;max-width:820px}
.ap-after p{margin:0;font-size:clamp(15px,1.4vw,16.5px);line-height:1.6;color:var(--ink-2)}
.ap-after .ap-warn{margin-top:12px;padding-left:14px;border-left:3px solid var(--blue);font-weight:600;color:var(--ink)}

/* ── шаги ── */
.ap-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:28px 0 0;padding:0;list-style:none}
@media(max-width:1000px){.ap-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.ap-steps{grid-template-columns:1fr;gap:10px}}
.ap-step{background:#fff;border-radius:20px;padding:22px 20px 24px}
.ap-step-n{display:inline-flex;align-items:center;gap:10px;font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--mute)}
.ap-step-n i{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--blue);color:#fff;font-style:normal;font-size:15px;letter-spacing:0}
.ap-step:last-child .ap-step-n i{background:#fff;color:var(--blue);box-shadow:inset 0 0 0 2px var(--blue)}
.ap-step h3{margin:16px 0 0;font-size:18px;line-height:1.25;font-weight:700;letter-spacing:-.01em}
.ap-step p{margin:8px 0 0;font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.ap-step a{font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.ap-actions{margin-top:22px}

/* ── полоса «время выбирать TENET»: чёрная пятница | белая суббота ── */
.ap-band{display:grid;grid-template-columns:1.35fr 1fr;align-items:stretch;background:var(--ink);color:#fff;border-radius:var(--r);overflow:hidden}
@media(max-width:900px){.ap-band{grid-template-columns:1fr}}
.ap-band-a{padding:clamp(26px,4.4vw,60px)}
.ap-band-a .ap-h2{margin:0;color:#fff}
.ap-band-a p{margin:14px 0 0;max-width:640px;font-size:clamp(15px,1.4vw,16.5px);line-height:1.6;color:rgba(255,255,255,.72)}
.ap-band-b{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:22px;margin:10px;padding:clamp(24px,3.4vw,44px);
  background:#fff;color:var(--ink);border-radius:calc(var(--r) - 6px)}
.ap-band-slogan{margin:0;font-size:clamp(24px,2.7vw,34px);line-height:1.12;font-weight:800;letter-spacing:-.03em;text-wrap:balance}
.ap-band-slogan span{color:var(--blue)}

/* ── условия ── */
.ap-terms{background:#fff;border-radius:var(--r);padding:clamp(22px,3.8vw,48px)}
.ap-terms-body{max-width:900px;margin-top:20px;font-size:14.5px;line-height:1.62;color:var(--ink-2)}
.ap-terms-body p{margin:0 0 12px}
.ap-terms-body ol{margin:0 0 14px;padding-left:22px}
.ap-terms-body li{margin:0 0 8px;padding-left:4px}
.ap-terms-body li::marker{color:var(--blue);font-weight:800}
.ap-terms-body b{color:var(--ink);font-weight:700}
.ap-terms-body .ap-terms-note{margin:18px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:13px;color:var(--mute)}

/* ── контакты ── */
.ap-final{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:900px){.ap-final{grid-template-columns:1fr}}
.ap-final-card{display:flex;flex-direction:column;background:#fff;border-radius:var(--r);padding:clamp(24px,4vw,52px)}
.ap-final-slogan{margin:16px 0 0;font-size:clamp(15px,1.45vw,18px);font-weight:800;letter-spacing:.02em;text-transform:uppercase}
.ap-final-dealer{margin:10px 0 0;font-size:15px;line-height:1.5;color:var(--ink-2)}
.ap-contacts{display:grid;gap:14px;margin:26px 0 0;padding:0;list-style:none;font-size:15.5px;line-height:1.45;font-weight:600}
.ap-contacts li{display:flex;align-items:center;gap:14px}
.ap-ci{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:12px;background:var(--ice);color:var(--blue)}
.ap-ci svg{width:22px;height:22px}
.ap-final-btn{margin-top:auto;padding-top:30px}
.ap-map{display:block;width:100%;height:100%;min-height:380px;border:0;border-radius:var(--r);background:#e4e7eb}
@media(max-width:640px){.ap-map{min-height:300px}}

/* ── окно заявки ── */
.ap-pop{position:fixed;inset:0;z-index:110;display:flex;align-items:center;justify-content:center;padding:16px;
  background:rgba(20,22,26,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.ap-pop-box{position:relative;box-sizing:border-box;width:100%;max-width:520px;max-height:92vh;overflow-y:auto;padding:clamp(20px,3vw,32px);
  background:#fff;border-radius:24px;animation:apFade .24s ease}
.ap-pop-x{position:absolute;top:16px;right:16px;width:36px;height:36px;border:0;border-radius:50%;background:#f2f3f5;color:var(--mute);font-size:16px;cursor:pointer}
.ap-pop-x:hover{color:var(--ink)}
.ap-pop h3{margin:8px 44px 0 0;font-size:clamp(21px,2.4vw,26px);line-height:1.15;font-weight:700;letter-spacing:-.02em;text-wrap:balance}
.ap-pop-text{margin:10px 0 0;font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.ap-pop-gifts{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0;padding:0;list-style:none}
.ap-pop-gifts li{padding:6px 10px 6px 8px;border-radius:999px;background:var(--ice);font-size:12.5px;font-weight:600}
.ap-pop-gifts li::before{content:"✓";margin-right:5px;font-weight:800;color:var(--blue)}
.ap-lbl{margin:18px 0 8px;font-size:12.5px;font-weight:700;color:var(--ink-2)}
.ap-lbl span{font-weight:500;color:var(--mute-2)}
.ap-chips{display:flex;flex-wrap:wrap;gap:6px}
.ap-chips button{height:38px;padding:0 13px;border:1px solid var(--field);border-radius:10px;background:#fff;color:var(--ink);font-size:14px;font-weight:600;cursor:pointer}
.ap-chips button:hover{border-color:var(--ink)}
.ap-chips button.on{background:var(--ink);border-color:var(--ink);color:#fff}
.ap-fgrid{display:grid;gap:10px;margin-top:18px}
.ap-in{box-sizing:border-box;width:100%;height:52px;padding:0 16px;border:1px solid var(--field);border-radius:12px;background:#fff;color:var(--ink);font-size:16px}
.ap-in:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}
.ap-in[aria-invalid="true"]{border-color:var(--red)}
.ap-fbtn{width:100%;height:56px;font-size:16px}
.ap-hpx{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.ap-err{margin-top:10px;font-size:13px;font-weight:600;color:var(--red)}
.ap-fallback{margin-top:10px;font-size:13px;line-height:1.45;color:var(--ink-2)}
.ap-fine{margin-top:12px;font-size:12px;line-height:1.45;color:var(--mute-2)}
.ap-fine a{color:var(--mute)}
/* телефон: окно короче — в записи на день подарки не повторяем, кнопки выбора ниже */
@media(max-width:640px){
  .ap-pop{padding:10px}
  .ap-pop-box{max-height:94vh;padding:20px 18px}
  .ap-pop h3{font-size:21px}
  .ap-pop-text{font-size:14px}
  .ap-pop-box[data-mode="visit"] .ap-pop-gifts{display:none}
  .ap-pop-gifts li{padding:5px 9px 5px 7px;font-size:12px}
  .ap-lbl{margin:14px 0 7px}
  .ap-chips button{height:36px;padding:0 11px;font-size:13.5px}
  .ap-fgrid{margin-top:14px;gap:8px}
  .ap-in{height:50px}
  .ap-fbtn{height:54px}
}
.ap-done{padding:10px 0 4px;text-align:center;animation:apFade .3s ease}
.ap-done-ico{display:grid;place-items:center;width:58px;height:58px;margin:10px auto 14px;border-radius:50%;background:var(--ink);color:#fff;font-size:26px}
.ap-done-t{font-size:22px;font-weight:700;letter-spacing:-.02em}
.ap-done p{margin:10px auto 0;max-width:380px;font-size:15px;line-height:1.55;color:var(--ink-2)}
