.delivery {
    padding: 40px 0 120px;
}

.delivery .container {
    display:        flex;
    flex-direction: column;
    gap:            40px;
}

.dp-section {
    display:        flex;
    flex-direction: column;
    gap:            28px;
    padding:        56px;
    border-radius:  var(--radius-2xl);
    background:     var(--bg-subtle);
    scroll-margin-top: 120px;
}

.dp-section__title {
    font-size:   40px;
    line-height: 48px;
    font-weight: 700;
    color:       var(--text-primary);
}

.dp-section__lead {
    font-size:   20px;
    line-height: 28px;
    font-weight: 600;
    color:       var(--text-primary);
}

.dp-section__subtitle {
    font-size:   18px;
    line-height: 28px;
    font-weight: 600;
    color:       var(--text-primary);
}

.dp-section__note {
    font-size:   15px;
    line-height: 22px;
    font-weight: 500;
    color:       var(--text-primary);
}

/* Текст з редактора */
.dp-text {
    display:        flex;
    flex-direction: column;
    gap:            14px;
    font-size:      16px;
    line-height:    26px;
    color:          var(--text-secondary);
}

.dp-text p { margin: 0; }

.dp-text strong { font-weight: 600; color: var(--text-primary); }

.dp-text a {
    color:           var(--blue-500);
    text-decoration: underline;
}

.dp-text--lead {
    gap:         8px;
    font-size:   18px;
    line-height: 28px;
}

.dp-text ul {
    display:        flex;
    flex-direction: column;
    gap:            12px;
    margin:         0;
    padding:        0;
    list-style:     none;
}

.dp-text--lifting li {
    font-weight: 500;
    line-height: 24px;
    color:       var(--blue-500);
}

.dp-text--lifting li::before { content: '- '; }

.dp-text--list ul { gap: 20px; }

.dp-text--list li::before { content: '• '; }

/* Картки */
.dp-grid {
    display: grid;
    gap:     20px;
    margin:  0;
    padding: 0;
    list-style: none;
}

.dp-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.dp-grid--payment { grid-template-columns: repeat(6, minmax(0, 1fr)); }

.dp-grid--payment > .dp-card { grid-column: span 2; }

.dp-grid--payment > .dp-card:nth-child(n+4) { grid-column: span 3; }

.dp-card {
    display:        flex;
    flex-direction: column;
    gap:            14px;
    padding:        28px;
    border-radius:  24px;
    background:     var(--neutral-0);
}

.dp-card__top {
    display:         flex;
    align-items:     flex-start;
    justify-content: space-between;
    gap:             12px;
}

.dp-card__icon {
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
    flex:            0 0 auto;
    width:           56px;
    height:          56px;
    border-radius:   18px;
    background:      #ecf3fb;
}

.dp-card--accent .dp-card__icon { background: var(--orange-100); }

.dp-card__badge {
    padding:       6px 12px;
    border-radius: var(--radius-pill);
    font-size:     13px;
    line-height:   1.2;
    font-weight:   500;
    color:         #d95400;
    background:    var(--orange-100);
}

.dp-card__title {
    font-size:   20px;
    line-height: 28px;
    font-weight: 600;
    color:       var(--text-primary);
}

.dp-card .dp-text {
    gap:         14px;
    line-height: 24px;
}

/* Панелі з текстом */
.dp-panel {
    padding:       28px;
    border-radius: 24px;
    background:    var(--neutral-0);
}

.dp-details {
    display:               grid;
    grid-template-columns: minmax(0, 1fr) 460px;
    gap:                   20px;
}

.dp-details .dp-text--lifting { gap: 12px; }

/* Попередження */
.dp-notices {
    display:               grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap:                   20px;
    align-items:           start;
}

.dp-notices__column {
    display:        flex;
    flex-direction: column;
    gap:            20px;
}

.dp-notice {
    display:       flex;
    gap:           16px;
    align-items:   flex-start;
    padding:       20px 24px;
    border-radius: 24px;
    background:    var(--neutral-0);
}

.dp-notice__icon {
    display:     inline-flex;
    flex:        0 0 auto;
}

.dp-notice__title {
    font-size:   18px;
    line-height: 26px;
    font-weight: 600;
    color:       var(--text-primary);
}

.dp-notice__text {
    font-size:   15px;
    line-height: 23px;
    color:       var(--text-secondary);
}

.dp-notice__text strong {
    font-weight: 600;
    color:       var(--text-primary);
}

.dp-notice--main {
    padding:    24px;
    background: var(--orange-100);
}

.dp-notice__body {
    display:        flex;
    flex-direction: column;
    gap:            8px;
}

@media (max-width: 1279px) {
    .dp-section { padding: 40px; }

    .dp-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }

    .dp-details { grid-template-columns: 1fr; }

    .dp-section__title {
        font-size:   34px;
        line-height: 42px;
    }
}

@media (max-width: 1023px) {
    .delivery { padding: 32px 0 80px; }

    .dp-grid--payment { grid-template-columns: repeat(2, minmax(0, 1fr)); }

    .dp-grid--payment > .dp-card,
    .dp-grid--payment > .dp-card:nth-child(n+4) { grid-column: auto; }

    .dp-notices { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
    .delivery .container { gap: 16px; }

    .dp-section {
        gap:           20px;
        padding:       24px 20px;
        border-radius: 24px;
    }

    .dp-section__title {
        font-size:   28px;
        line-height: 34px;
    }

    .dp-grid { gap: 12px; }

    .dp-grid--4,
    .dp-grid--payment { grid-template-columns: 1fr; }

    .dp-card,
    .dp-panel {
        padding:       20px;
        border-radius: 20px;
    }

    .dp-text--lead {
        font-size:   16px;
        line-height: 24px;
    }

    .dp-notice,
    .dp-notice--main {
        padding:       18px 20px;
        border-radius: 20px;
    }
}
