main:has(> .delivery-page) { background: #ecfaff url('/local/templates/page/img/catalog-bg.png') repeat left top; background-origin: content-box; }
.delivery-page__steps { background: #fff; }
.delivery-page { padding: 0 0 70px; color: #0a3455; }
.delivery-page * { box-sizing: border-box; }
.delivery-page__breadcrumbs { display: flex; gap: 10px; align-items: center; padding: 26px 0 18px; color: #778895; font-size: 14px; }
.delivery-page__breadcrumbs a { color: #078b51; text-decoration: none; }
.delivery-page__hero { position: relative; overflow: hidden; padding: 58px 64px; border: 1px solid #d8eee4; border-radius: 30px; background: linear-gradient(120deg,#effcf6 0%,#fff 58%,#fff1f2 100%); }
.delivery-page__hero:after { content: ""; position: absolute; right: -70px; top: -85px; width: 280px; height: 280px; border-radius: 50%; background: rgba(255,45,55,.07); }
.delivery-page__eyebrow { margin-bottom: 10px; color: #069756; font-size: 14px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.delivery-page h1 { max-width: 720px; margin: 0 0 18px; color: #072f53; font-size: clamp(38px,5vw,62px); line-height: 1.04; }
.delivery-page__hero > p { max-width: 720px; margin: 0; font-size: 19px; line-height: 1.55; }
.delivery-page__hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.delivery-page__button { display: inline-flex; min-height: 50px; padding: 0 24px; align-items: center; justify-content: center; border-radius: 12px; font-weight: 800; text-decoration: none; transition: transform .2s ease,box-shadow .2s ease; }
.delivery-page__button:hover { transform: translateY(-2px); }
.delivery-page__button--green { color: #fff; background: #06aa60; box-shadow: 0 10px 24px rgba(6,170,96,.2); }
.delivery-page__button--outline { color: #0a6f49; border: 1px solid #9fd9bd; background: #fff; }
.delivery-page__button--red { color: #fff; background: #f21827; }
.delivery-page__section { margin-top: 56px; }
.delivery-page__section-heading { display: flex; gap: 30px; align-items: end; justify-content: space-between; margin-bottom: 24px; }
.delivery-page h2 { margin: 0; color: #07365e; font-size: clamp(28px,3.2vw,42px); line-height: 1.15; }
.delivery-page__section-heading > p { max-width: 390px; margin: 0 0 4px; color: #667785; line-height: 1.5; }
.delivery-page__rates { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.delivery-page__rate-card { padding: 28px; border: 1px solid #dce7e2; border-radius: 22px; background: #fff; box-shadow: 0 12px 34px rgba(7,54,94,.07); }
.delivery-page__rate-card--accent { border-color: #b9e5ce; background: linear-gradient(145deg,#f2fff8,#fff); }
.delivery-page__rate-card--wide { display: grid; grid-column: 1/-1; grid-template-columns: 1.5fr 1fr; gap: 30px; align-items: center; }
.delivery-page__rate-card h3,.delivery-page__payment-grid h3 { margin: 0 0 18px; color: #07365e; font-size: 24px; }
.delivery-page__rate-card dl { margin: 0; }
.delivery-page__rate-card dl div { display: flex; gap: 20px; justify-content: space-between; padding: 11px 0; border-bottom: 1px solid #e8eeeb; }
.delivery-page__rate-card dt { color: #6c7b86; }
.delivery-page__rate-card dd { margin: 0; font-weight: 800; white-space: nowrap; }
.delivery-page__rate-card .delivery-page__free dd { color: #079b58; }
.delivery-page__rate-card > p,.delivery-page__rate-card > div > p { margin: 18px 0 0; color: #627380; line-height: 1.55; }
.delivery-page__rate-card a { display: inline-block; margin-top: 18px; color: #079b58; font-weight: 800; text-decoration: none; }
.delivery-page__tk { display: grid; grid-template-columns: 1.25fr 1fr; gap: 42px; padding: 38px; border-radius: 26px; color: #fff; background: #0b416d; }
.delivery-page__tk h2,.delivery-page__tk .delivery-page__eyebrow { color: #fff; }
.delivery-page__tk p { margin: 16px 0 0; color: #d7e7f2; line-height: 1.6; }
.delivery-page__tk ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.delivery-page__tk li { padding: 18px; border: 1px solid rgba(255,255,255,.15); border-radius: 15px; background: rgba(255,255,255,.08); }
.delivery-page__tk strong,.delivery-page__tk span { display: block; }
.delivery-page__tk strong { margin-bottom: 4px; font-size: 20px; }
.delivery-page__tk span { color: #d7e7f2; line-height: 1.4; }
.delivery-page__payment-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.delivery-page__payment-grid article { padding: 30px; border-radius: 22px; background: #f7faf9; }
.delivery-page__payment-icon { display: inline-flex; min-width: 48px; height: 48px; margin-bottom: 18px; padding: 0 10px; align-items: center; justify-content: center; border-radius: 12px; color: #fff; background: #09a960; font-weight: 900; }
.delivery-page__payment-grid p,.delivery-page__payment-grid li { line-height: 1.55; }
.delivery-page__payment-grid ul { padding-left: 20px; }
.delivery-page__note { margin-top: 20px; padding: 14px 16px; border-radius: 12px; color: #5d6f7c; background: #fff; }
.delivery-page__steps { margin-top: 56px; padding: 38px; border: 1px solid #e3ece8; border-radius: 26px; }
.delivery-page__steps ol { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin: 26px 0 0; padding: 0; list-style: none; }
.delivery-page__steps li { display: flex; gap: 13px; }
.delivery-page__steps li > span { flex: 0 0 36px; display: inline-flex; height: 36px; align-items: center; justify-content: center; border-radius: 50%; color: #fff; background: #08a55e; font-weight: 900; }
.delivery-page__steps strong { display: block; line-height: 1.35; }
.delivery-page__steps p { margin: 7px 0 0; color: #71808b; font-size: 14px; line-height: 1.45; }
.delivery-page__cta { display: flex; gap: 28px; align-items: center; justify-content: space-between; margin-top: 36px; padding: 34px 38px; border-radius: 24px; background: #fff0f1; }
.delivery-page__cta h2 { font-size: 30px; }
.delivery-page__cta p { margin: 8px 0 0; color: #61727e; }
@media (max-width: 900px) {
  .delivery-page__hero { padding: 42px 34px; }
  .delivery-page__steps ol { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
}
@media (max-width: 700px) {
  .delivery-page { padding-bottom: 35px; }
  .delivery-page__breadcrumbs { padding-top: 18px; }
  .delivery-page__hero { padding: 34px 22px; border-radius: 22px; }
  .delivery-page h1 { font-size: 40px; }
  .delivery-page__hero > p { font-size: 17px; }
  .delivery-page__button { width: 100%; }
  .delivery-page__section { margin-top: 40px; }
  .delivery-page__section-heading,.delivery-page__cta { display: block; }
  .delivery-page__section-heading > p { margin-top: 12px; }
  .delivery-page__rates,.delivery-page__payment-grid,.delivery-page__tk,.delivery-page__rate-card--wide { grid-template-columns: 1fr; }
  .delivery-page__rate-card { padding: 22px; }
  .delivery-page__tk,.delivery-page__steps { padding: 26px 22px; border-radius: 20px; }
  .delivery-page__steps ol { grid-template-columns: 1fr; }
  .delivery-page__cta { padding: 26px 22px; }
  .delivery-page__cta .delivery-page__button { margin-top: 20px; }
}
/* Winter delivery scene: whole troika and sleigh stay visible at every size. */
.delivery-page__hero { min-height: 440px; padding: 44px 48% 44px 42px; background: linear-gradient(120deg, #f4fcff 0%, #fffdf7 65%, #e9f6fc 100%); }
.delivery-page__hero::after { right: 24px; top: 50%; width: 44%; height: auto; aspect-ratio: 3 / 2; transform: translateY(-50%); border-radius: 0; background: transparent url('/local/templates/page/img/delivery-ded-moroz-cartoon-20261013.png') center / contain no-repeat; box-shadow: none; }
@media (min-width: 901px) { .delivery-page__hero h1 { font-size: clamp(38px, 4vw, 54px); } }
@media (max-width: 900px) {
  .delivery-page__hero { min-height: 0; padding: 34px; }
  .delivery-page__hero::after { position: relative; right: auto; top: auto; display: block; width: 100%; margin-top: 25px; transform: none; border-radius: 0; }
}
@media (max-width: 700px) {
  .delivery-page__hero { display: flex; flex-direction: column; padding: 28px 20px 20px; }
  .delivery-page__hero > .delivery-page__eyebrow { order: 0; }
  .delivery-page__hero > h1 { order: 1; }
  .delivery-page__hero::after { order: 2; flex: none; margin: 0 0 20px; border-radius: 0; }
  .delivery-page__hero > p { order: 3; }
  .delivery-page__hero-actions { order: 4; }
}
/* A small festive sign and three quiet snowflakes around the delivery scene. */
.delivery-page__hero {
  background-image: url('/local/templates/page/img/delivery-snowflake-20261013.svg'), url('/local/templates/page/img/delivery-snowflake-20261013.svg'), url('/local/templates/page/img/delivery-snowflake-20261013.svg'), linear-gradient(120deg, #f4fcff 0%, #fffdf7 65%, #e9f6fc 100%);
  background-size: 28px 28px, 20px 20px, 24px 24px, auto;
  background-position: 97% 6%, 54% 91%, 95% 93%, 0 0;
  background-repeat: no-repeat;
}
.delivery-page__hero::before {
  content: 'Спешим подарить вам\Aрадости и сладости';
  position: absolute; top: 25px; right: 6%; z-index: 1; width: 33%; padding: 12px 18px;
  border: 2px solid #e4bf75; border-radius: 16px; background: #087c51; color: #fffdf3;
  font-family: inherit; font-size: 21px; font-weight: 800; line-height: 1.3; text-align: center; white-space: pre-line;
  transform: rotate(-2deg); box-shadow: 0 5px 0 rgba(158, 120, 54, .12);
}
@media (min-width: 901px) { .delivery-page__hero::after { transform: translateY(calc(-50% + 24px)); } }
@media (max-width: 900px) {
  .delivery-page__hero::before { position: relative; display: block; top: auto; right: auto; width: fit-content; max-width: 100%; margin: 0 auto 22px; }
}
@media (max-width: 700px) {
  .delivery-page__hero::before { order: 2; width: 100%; margin: 2px 0 12px; padding: 11px 13px; font-size: 19px; }
  .delivery-page__hero::after { order: 3; }
  .delivery-page__hero > p { order: 4; }
  .delivery-page__hero-actions { order: 5; }
  .delivery-page__hero { background-position: 96% 2%, 8% 72%, 95% 66%, 0 0; }
}
/* Selected wooden Christmas sign, exported as a transparent PNG. */
.delivery-page__hero::before {
  content: '' / 'Спешим подарить вам радости и сладости'; width: 230px; height: 230px; padding: 0; border: 0; border-radius: 0;
  top: 18px; right: 13%; background: transparent url('/local/templates/page/img/delivery-wood-sign-20261013.png') center / contain no-repeat;
  transform: none; box-shadow: none;
}
@media (min-width: 901px) {
  .delivery-page__hero { min-height: 560px; padding-top: 90px; padding-bottom: 90px; }
  .delivery-page__hero::after { top: auto; bottom: 14px; transform: none; }
}
@media (max-width: 900px) {
  .delivery-page__hero::before { position: relative; top: auto; right: auto; margin: 0 auto 12px; }
}
@media (max-width: 700px) {
  .delivery-page__hero::before { width: 230px; height: 230px; max-width: 100%; flex: none; margin: 0 auto 0; }
}
/* The wooden sign is now held by Ded Moroz inside one transparent illustration. */
.delivery-page__hero::before { content: none; display: none; background: none; }
.delivery-page__hero::after { background-image: url('/local/templates/page/img/delivery-ded-moroz-held-sign-20261013.png'); }
@media (min-width: 901px) {
  .delivery-page__hero { min-height: 440px; padding-top: 44px; padding-bottom: 44px; }
  .delivery-page__hero::after { top: 50%; bottom: auto; transform: translateY(-50%); }
}
@media (max-width: 700px) {
  .delivery-page__hero::after { width: 65%; max-width: 220px; align-self: flex-end; margin-top: -52px; margin-left: auto; margin-right: 0; margin-bottom: 12px; }
}

@media (max-width: 360px) { .delivery-page__hero::after { margin-top: -36px; } }
