/* Preserve the site's existing Bootstrap 4 spacing while using Bootstrap 5 components. */
html { scroll-behavior: auto; }
/* Reuse Desarrollo's heading clearance without applying its other detail-page rules. */
.public-site .its-page .content-tile { padding-top: 130px; }
/* Bootstrap 4 placed the tab overlap on the item, not the control. */
.public-site .politicas-page .nav-tabs .nav-item { margin-bottom: -1px; }
.public-site .politicas-page .nav-tabs .nav-link {
    margin-bottom: 0;
    color: inherit;
    transition: none;
}
/* Slick 2 adds grab cursors; retain the original public slider behavior. */
.public-site .slick-list.draggable { cursor: auto; }
.public-site .slick-list.dragging { cursor: pointer; }
/* Detail banners used these fullPage dimensions with the site's existing flex centering. */
.public-site .desarrollo-page .desarrolloVideo > .fp-tableCell {
    width: 100%;
    height: 100%;
}
.public-site {
    --bs-body-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    --bs-heading-color: inherit;
    --bs-link-color: #007bff;
    --bs-link-color-rgb: 0, 123, 255;
    --bs-link-hover-color: #0056b3;
    --bs-link-hover-color-rgb: 0, 86, 179;
}
:where(.public-site) hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
    color: #808080;
    opacity: 1;
}
:where(.public-site) small,
:where(.public-site) .small { font-size: 80%; font-weight: 400; }
:where(.public-site) svg { vertical-align: baseline; }
:where(.public-site) .btn { white-space: nowrap; }
:where(.public-site) .form-check {
    min-height: 0;
    margin-bottom: 0;
    padding-left: 1.25rem;
}
.public-site .form-check-input {
    width: auto;
    height: auto;
    appearance: auto;
    vertical-align: baseline;
    background: initial;
    border: initial;
    border-radius: initial;
}
.public-site .form-check-label { margin-bottom: 0; }
:where(.public-site) select.form-control:not([size]):not([multiple]) { height: calc(2.25rem + 2px); }
.public-site .card {
    --bs-card-color: inherit;
    --bs-card-cap-color: inherit;
}
.public-site :is(.card, .card-body, .card-header, .modal-content) { color: inherit; }
.public-site .modal {
    --bs-modal-color: inherit;
    --bs-modal-border-radius: .3rem;
    --bs-modal-inner-border-radius: .3rem;
    --bs-modal-border-color: rgba(0, 0, 0, .2);
}
:where(.public-site) .modal.fade .modal-dialog { transform: translate(0, -25%); }
:where(.public-site) .modal.show .modal-dialog { transform: translate(0, 0); }
:where(.public-site) .modal-header {
    align-items: flex-start;
    justify-content: space-between;
    border-bottom-color: #e9ecef;
}
:where(.public-site) .modal-footer {
    flex-wrap: nowrap;
    padding: 1rem;
    border-top-color: #e9ecef;
    border-radius: 0;
}
:where(.public-site) .modal-footer > * { margin: 0; }
:where(.public-site) .modal-footer > :not(:first-child) { margin-left: .25rem; }
:where(.public-site) .modal-footer > :not(:last-child) { margin-right: .25rem; }
:where(.public-site) .close:hover,
:where(.public-site) .close:focus { color: #000; text-decoration: none; opacity: .75; }
:where(.public-site) .form-control[type="file"] { overflow: visible; }
:where(.public-site) .form-control::file-selector-button,
:where(.public-site) .form-control:hover:not(:disabled):not([readonly])::file-selector-button {
    all: revert;
    appearance: button;
    font: inherit;
}

/* These are the site's own accordions, not Bootstrap accordion components. */
.public-site .investors .accordion-item {
    color: inherit;
    background: transparent;
    border: 0;
    border-radius: 0;
}
.public-site .investors .accordion-body { padding: 0; }

.row,
.container,
.container-fluid {
    --bs-gutter-x: 30px;
}
.row.g-0 { --bs-gutter-x: 0; --bs-gutter-y: 0; }

@media (min-width: 1200px) {
    .container { max-width: 1140px; }
}

a { text-decoration: none; }
label { display: inline-block; margin-bottom: .5rem; }
.form-group { margin-bottom: 1rem; }
.row > [class*="col-"] { position: relative; }
.form-consultas .form-check { position: relative; }
.form-consultas .form-check-input { float: none; position: absolute; margin-top: .3rem; margin-left: -1.25rem; }
.btn-block { display: block; width: 100%; }
.custom-control { position: relative; display: block; min-height: 1.5rem; padding-left: 1.5rem; }
.custom-control-input { position: absolute; left: 0; margin-left: 0; }
.custom-control-label { margin-bottom: 0; vertical-align: top; }
.close { float: right; font-size: 1.5rem; font-weight: 700; line-height: 1; color: #000; text-shadow: 0 1px 0 #fff; opacity: .5; }
button.close { padding: 0; background: transparent; border: 0; }
.modal-header .close { padding: 1rem; margin: -1rem -1rem -1rem auto; }
