.combo.alert-dismissible .btn-close {
    top: auto;
}

.combo.nav-link {
    font-weight: 700;
    font-family: var(--font-main);
    text-transform: uppercase;
    color: var(--secondary);
    padding: 8px 10px;
    border-radius: 100px;
    background: transparent;
    border: 2px solid var(--secondary);
    position: relative;
}

.combo.nav-link.active {
    color: var(--secondary);
    background: var(--gray-5);
    border: 2px solid var(--secondary);
}

.combo.nav-link.select {
    color: var(--green-secondary);
    background: var(--green-primary);
    border: 2px solid var(--green-secondary);
}

.combo.icon-line-plus {
    font-weight: 500;
}

@media (max-width: 499px) {
    .combo.icon-line-plus {
        margin: 0px 4px;
    }
}

@media (min-width: 500px) {
    .combo.icon-line-plus {
        margin: 0px 10px;
    }
}

@media (min-width: 992px) {
    .combo.icon-line-plus {
        font-size: 20px;
        margin: 0px 10px;
    }
}

.combo-price {
    font-family: var(--font-main);
    font-weight: 700 !important;
}

.combo-price.customer, .combo-price.customer:focus {
    color: var(--combo-price-customer);
}

.combo-price.competitors {
    color: var(--combo-price-others);
}

.combo-price.eternet {
    color: var(--combo-price-eternet);
}

/* Combo catalog, calculator and order summary. */
.combo-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 24px; }
.combo-section-heading .eyebrow { margin-bottom: 8px; }
.combo-section-heading h2 { margin: 0; font-size: clamp(1.5rem, 2.2vw, 1.85rem); }
.combo-section-heading > p { max-width: 410px; color: var(--site-muted); font-size: .86rem; margin: 0; }
.combo-recommendations .plans-grid { margin-bottom: 0; }
.pricing-box.combo-plan-card { min-width: 0; text-align: left; display: flex; flex-direction: column; background: var(--site-surface); overflow: hidden; }
.combo-plan-card > header { padding: 24px; background: var(--site-raised); }
.combo-plan-symbol { display: inline-flex; align-items: center; gap: 10px; color: var(--site-link); margin-bottom: 18px; }
.combo-plan-symbol .ui-icon { width: 22px; height: 22px; }
.combo-plan-symbol > span { font-size: .85rem; }
.combo-plan-card h3 { font-size: 1.5rem; margin: 0 0 8px; }
.combo-plan-card header p { font-size: .8rem; color: var(--site-muted); margin: 0; min-height: 3.4em; }
.combo-plan-services, .combo-summary-services { list-style: none; margin: 0; padding: 24px; display: grid; gap: 20px; }
.combo-plan-services li, .combo-summary-services li { display: flex; align-items: center; gap: 14px; min-width: 0; }
.combo-plan-services .ui-icon, .combo-summary-services .ui-icon { flex: 0 0 21px; width: 21px; height: 21px; color: var(--site-link); }
.combo-plan-services strong, .combo-summary-services strong { display: block; font-size: 1.05rem; line-height: 1.4; }
.combo-plan-services small, .combo-summary-services small { display: block; color: var(--site-muted); font-size: .74rem; margin-top: 3px; }
.combo-plan-card > footer { margin-top: auto; padding: 0 24px 24px; }
.combo-plan-amount { display: flex; align-items: baseline; gap: 5px; margin: 0; padding-top: 20px; border-top: 1px solid var(--site-border); }
.combo-plan-amount strong { font-size: 1.9rem; line-height: 1.25; letter-spacing: -.04em; }
.combo-plan-amount > span { font-size: .76rem; color: var(--site-muted); }
.combo-plan-card footer > small { display: block; font-size: .72rem; color: var(--site-muted); margin: 8px 0 20px; }
.combo-plan-card .button, .combo-price-summary > .button { display: flex; align-items: center; justify-content: space-between; width: 100%; margin: 0; gap: 16px; }
.combo-plan-card .button .ui-icon, .combo-price-summary > .button .ui-icon { width: 19px; height: 19px; }
.combo-builder { margin-top: 56px; padding-top: 36px; border-top: 1px solid var(--site-border); scroll-margin-top: 110px; }
.combo-builder-layout, .combo-checkout-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; align-items: start; gap: 28px; }
.combo-builder-options { display: grid; gap: 16px; min-width: 0; }
.combo-builder-service { padding: 16px; border: 1px solid var(--site-border); background: var(--site-surface); border-radius: 14px; min-width: 0; }
.combo-service-heading { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.combo-service-heading > div { min-width: 0; }
.combo-service-heading h3 { margin: 0 0 3px; font-size: 1rem; }
.combo-service-heading p { margin: 0; font-size: .78rem; color: var(--site-muted); }
.combo-service-icon { flex: 0 0 34px; width: 34px; height: 34px; display: grid; place-items: center; color: var(--site-link); background: var(--site-brand-soft); border-radius: 11px; }
.combo-service-icon .ui-icon { width: 20px; height: 20px; }
.combo-included { margin-left: auto; font-size: .7rem; color: var(--site-muted); padding: 4px 9px; border: 1px solid var(--site-border); border-radius: 20px; }
.combo-remove-plan { display: grid; place-items: center; margin-left: auto; flex: 0 0 44px; width: 44px; height: 44px; padding: 0; border: 1px solid var(--site-border); border-radius: 8px; background: transparent; color: var(--site-muted); }
.combo-remove-plan:hover { background: var(--site-raised); color: var(--site-text); }
.combo-remove-plan .ui-icon { width: 19px; height: 19px; }
.combo-mobile-controls { display: grid; grid-template-columns: minmax(0, 1fr) minmax(140px, .7fr); gap: 16px; margin-bottom: 14px; }
.combo-mobile-controls > div { min-width: 0; }
.combo-mobile-controls label { display: block; font-size: .78rem; margin-bottom: 8px; }
.combo-mobile-controls .input-group { flex-wrap: nowrap; height: 48px; }
.combo-mobile-controls .input-group .btn-step { flex: 0 0 44px; padding: 0; height: 48px; border: 1px solid var(--site-border); background: var(--site-raised); color: var(--site-text) !important; font-size: 1.15rem; }
.combo-mobile-controls .input-group .btn-step:disabled { color: var(--site-muted) !important; opacity: .5; }
.combo-mobile-controls .input-group input { min-width: 0; height: 48px; padding: 8px; appearance: textfield; -moz-appearance: textfield; }
.combo-mobile-controls input::-webkit-inner-spin-button, .combo-mobile-controls input::-webkit-outer-spin-button { appearance: none; margin: 0; }
.combo-builder-prices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; padding-top: 14px; border-top: 1px solid var(--site-border); }
.combo-builder-prices > div { min-width: 0; }
.combo-price-label { display: block; min-height: 2.8em; font-size: .74rem; font-weight: 500; line-height: 1.4; color: var(--site-muted); margin-bottom: 8px; }
.combo-price-label > span { display: block; font-size: .68rem; }
.combo-builder-prices .form-control { height: 44px; min-height: 44px; padding: 8px 12px; font-size: .88rem; }
.combo-reference-price, .combo-eternet-price { display: flex; align-items: center; min-height: 44px; font-size: .95rem; line-height: 1.3; }
.combo-reference-price { color: var(--site-muted); }
.combo-eternet-price { color: var(--site-text); }
.combo-builder .combo-field-hint { margin: 12px 0 0; font-size: .71rem; color: var(--site-muted); }
.combo-add-plan { display: flex; justify-content: center; align-items: center; gap: 10px; min-height: 50px; border: 1px dashed var(--site-border); border-radius: 10px; color: var(--site-link); background: transparent; font: 600 .84rem var(--font-secundary); transition: background-color .2s, border-color .2s; }
.combo-add-plan:hover:enabled { border-color: var(--site-link); background: var(--site-brand-soft); }
.combo-add-plan:disabled { opacity: .5; cursor: default; }
.combo-add-plan .ui-icon { width: 18px; height: 18px; }
.combo-comparison-note { display: flex; gap: 10px; color: var(--site-muted); font-size: .73rem; line-height: 1.6; margin: 0; padding: 0 4px; }
.combo-comparison-note .ui-icon { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 3px; }
.combo-price-summary { min-width: 0; position: sticky; top: 104px; padding: 28px; border: 1px solid var(--site-border); border-top: 3px solid var(--site-brand); border-radius: 14px; background: var(--site-raised); }
.combo-price-summary h3 { font-size: 1.3rem; margin: 0; }
.combo-summary-services { padding: 24px 0; gap: 18px; }
.combo-summary-services strong { font-size: .91rem; overflow-wrap: anywhere; }
.combo-summary-total { padding-top: 22px; border-top: 1px solid var(--site-border); }
.combo-summary-total > span { font-size: .8rem; color: var(--site-muted); }
.combo-summary-total p { margin: 6px 0; display: flex; flex-wrap: wrap; gap: 5px; align-items: baseline; }
.combo-summary-total strong { font-size: 2.2rem; line-height: 1.25; letter-spacing: -.04em; }
.combo-summary-total p > span, .combo-summary-total small { font-size: .74rem; color: var(--site-muted); }
.combo-total-comparison { margin: 24px 0; display: grid; gap: 12px; padding-top: 20px; border-top: 1px solid var(--site-border); }
.combo-total-comparison > div { display: flex; justify-content: space-between; gap: 12px; font-size: .73rem; line-height: 1.5; }
.combo-total-comparison dt { color: var(--site-muted); font-weight: 400; }
.combo-total-comparison dd { text-align: right; margin: 0; max-width: 48%; }
.combo-saving { display: flex; gap: 10px; padding: 12px; border-radius: 8px; background: var(--site-success-bg); color: var(--site-success-text); font-size: .75rem; margin: 0 0 20px; }
.combo-saving .ui-icon { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 3px; }
.combo-summary-hint { margin: 16px 0 0; font-size: .73rem; line-height: 1.6; color: var(--site-muted); }
.combo-checkout { margin-block: 40px 56px; }
.combo-checkout-form { min-width: 0; }
.combo-checkout .wizard-content { max-width: none !important; margin: 0; }
.combo-checkout .wizard-steps { scrollbar-width: thin; scrollbar-color: var(--site-border) transparent; padding-bottom: 10px; }
@media (max-width: 991.98px) {
    .combo-builder-layout, .combo-checkout-layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    .combo-price-summary { position: static; }
}
@media (max-width: 575.98px) {
    .combo-section-heading { display: block; margin-bottom: 20px; }
    .combo-section-heading > p { margin-top: 12px; font-size: .82rem; }
    .combo-builder { margin-top: 36px; padding-top: 28px; }
    .combo-builder-service { padding: 16px; }
    .combo-service-heading { gap: 10px; margin-bottom: 14px; }
    .combo-service-heading h3 { font-size: 1rem; }
    .combo-service-heading p { font-size: .72rem; }
    .combo-included { padding: 3px 7px; font-size: .65rem; }
    .combo-mobile-controls { grid-template-columns: minmax(0, 1fr) minmax(140px, 1fr); gap: 12px; }
    .combo-mobile-controls label { font-size: .72rem; }
    .combo-builder-prices { gap: 12px; }
    .combo-price-label { font-size: .7rem; }
    .combo-builder-prices .form-control { padding-inline: 8px; font-size: .8rem; }
    .combo-reference-price, .combo-eternet-price { font-size: .83rem; }
    .combo-price-summary { padding: 24px; }
    .combo-plan-card header p { min-height: 0; }
}
@media (max-width: 359.98px) {
    .combo-included { display: none; }
    .combo-mobile-controls { grid-template-columns: minmax(0, 1fr); }
    .combo-builder-prices { gap: 8px; }
}

/* Compact editor rows; the recommended cards above keep their own layout. */
.combo-builder .combo-price-summary { padding: 20px; }
.combo-builder .combo-price-summary h3 { font-size: 1.15rem; }
.combo-builder .combo-price-summary .eyebrow { margin-bottom: 8px; }
.combo-builder .combo-summary-services { padding-block: 16px; gap: 12px; }
.combo-builder .combo-summary-total { padding-top: 16px; }
.combo-builder .combo-summary-total strong { font-size: 1.9rem; }
.combo-builder .combo-total-comparison { margin-block: 16px; padding-top: 14px; gap: 8px; }
.combo-builder .combo-summary-hint { margin-top: 12px; }
@media (min-width: 1200px) {
    .combo-builder-service { display: grid; grid-template-columns: minmax(300px, 1fr) minmax(0, 1.2fr); gap: 12px 24px; }
    .combo-builder-service .combo-service-heading { grid-column: 1 / -1; margin: 0; }
    .combo-builder-service:first-child .combo-service-heading { grid-column: 1; }
    .combo-builder-service .combo-mobile-controls { align-self: end; margin: 0; grid-template-columns: minmax(0, 1fr) 132px; gap: 12px; }
    .combo-builder-service .combo-builder-prices { padding-top: 0; border: 0; gap: 12px; }
    .combo-builder-service .combo-price-label { min-height: 2.6em; margin-bottom: 6px; }
}
