.trainer-map {aspect-ratio: 2/1;min-height: 22rem;height: 100%; } .trainer-map .leaflet-popup-content {width: min(27rem, 100vw - 5rem) !important;margin: 1.25rem; } .trainer-map .leaflet-popup-content-wrapper {border-radius: 1.25rem;box-shadow: 0 0.75rem 2rem rgba(var(--black), 0.18); } @media (max-width: 991.98px) {.trainer-map {aspect-ratio: 2/1;} } @media (max-width: 767.98px) {.trainer-map {aspect-ratio: 1/1;} } .trainer-map.card, .trainer-filter.card {overflow: hidden;border-radius: 1.5rem; } .trainer-overview {align-items: stretch; } .trainer-overview > .col {display: flex; } .trainer-divider {margin: 2.5rem 0;border: 0;border-top: 1px solid var(--gray-300); } .trainer-filter {width: 100%;padding: 1.75rem; } .trainer-filter h2 {margin-bottom: 1.5rem;font-size: 1.5rem; } .trainer-filter .form-group {width: 100%;margin-bottom: 1.25rem; } .trainer-filter label {font-weight: 700; } .trainer-filter .form-control {min-height: 3rem;border-radius: 0.625rem; } .trainer-filter__count {margin-top: auto;margin-bottom: 0;color: var(--gray-600); } @media (max-width: 991.98px) {.trainer-overview > .col + .col {margin-top: 1rem;}.trainer-map {width: 100%;} } .trainers {align-items: flex-start; } .trainer-card {height: auto;min-height: 100%; } .trainer-card__photo {background: var(--light); } .trainer-card__company {font-weight: 700;color: var(--primary);font-size: 1.125rem;line-height: 1.4;margin-bottom: 0.5rem; } .trainer-card__address {margin-top: auto;margin-bottom: 0;font-size: 1.0625rem;line-height: 1.5; } .trainer-card .card-body {flex-grow: 1;padding-bottom: 1.75rem; } .trainer-card .card-footer {gap: 0.5rem;flex-wrap: wrap;padding-left: 1.1875rem;padding-right: 1.1875rem; } .trainer-card .card-footer .btn {min-height: 2.5rem;padding: 0.5625rem 1rem;border-radius: 0.5rem; } .trainer-card__toggle svg {width: 1rem;height: 1rem; } .trainer-card__map {margin: 0; } .trainer-card.is-open {z-index: 2;border-color: var(--primary);box-shadow: 0 0.5rem 1.5rem rgba(var(--black), 0.14); } .trainer-card.card-list-item .trainer-card__company {font-size: 1.125rem; } .trainer-card.card-list-item .trainer-card__address {font-size: 1.0625rem; } .trainer-card.card-list-item .card-body {padding-bottom: 1.75rem; } .trainer-card.card-list-item .card-footer {margin-top: 1rem; } .trainer-detail {position: relative;margin-bottom: 1.5rem;padding-top: 0.875rem; } .trainer-detail::before, .trainer-detail::after {position: absolute;left: var(--trainer-pointer-left, 50%);width: 0;height: 0;content: "";transform: translateX(-50%);border-right: 1rem solid transparent;border-left: 1rem solid transparent; } .trainer-detail::before {top: -0.0625rem;z-index: 1;border-bottom: 1rem solid var(--primary); } .trainer-detail::after {top: 0.0625rem;z-index: 2;border-bottom: 1rem solid var(--white); } .trainer-detail__panel {position: relative;z-index: 1;display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 2rem;padding: 1.5rem;text-align: left;border: 2px solid var(--primary);border-radius: 1.5rem;box-shadow: 0 0.75rem 2rem rgba(var(--black), 0.1); } .trainer-detail__column {min-width: 0; } .trainer-detail__column h3 {margin-bottom: 0.375rem; } .trainer-detail__column h4 {font-size: 1rem;margin-top: 1.25rem;margin-bottom: 0.375rem; } .trainer-detail__column p {font-size: 0.875rem;line-height: 1.55; } .trainer-detail__contact {min-height: 2.75rem;margin-top: 0.75rem;padding: 0.625rem 1.25rem;border-radius: 0.625rem; } .trainer-carousel {position: relative; } .trainer-carousel__viewport {overflow: hidden;border-radius: 0.5rem; } .trainer-carousel__track {display: flex;transition: transform 0.3s ease; } .trainer-carousel__slide {flex: 0 0 100%; } .trainer-carousel__slide img {display: block;width: 100%;aspect-ratio: 4/3;object-fit: cover; } .trainer-carousel__control {position: absolute;top: 50%;width: 2.5rem;height: 2.5rem;padding: 0;border: 0;border-radius: 50%;background: var(--white);box-shadow: 0 0.125rem 0.5rem rgba(var(--black), 0.2);color: var(--black);font-size: 1.75rem;line-height: 1;transform: translateY(-50%);cursor: pointer; } .trainer-carousel__control--prev {left: 0.75rem; } .trainer-carousel__control--next {right: 0.75rem; } .trainer-carousel__dots {display: flex;justify-content: center;gap: 0.375rem;margin-top: 0.75rem; } .trainer-carousel__dots span {width: 0.5rem;height: 0.5rem;border-radius: 50%;background: rgba(var(--black), 0.2); } .trainer-carousel__dots span.is-active {background: var(--primary); } @media (max-width: 767.98px) {.trainer-detail__panel {grid-template-columns: 1fr;gap: 1rem;} } .trainer-popup {font-size: 1rem;line-height: 1.5; } .trainer-popup h3 {margin-bottom: 0.5rem;font-size: 1.5rem;line-height: 1.25; } .trainer-popup > p {margin-top: 0;margin-bottom: 0.75rem;font-size: 1.0625rem; } .trainer-popup__columns {display: grid;grid-template-columns: minmax(9rem, 0.9fr) minmax(12rem, 1.1fr);gap: 1rem;margin: 0.75rem 0 1rem; } .trainer-popup__columns p {margin: 0;font-size: 1rem;line-height: 1.5; } .trainer-popup__columns strong {display: inline-block;margin-bottom: 0.25rem;color: var(--primary);font-size: 1.0625rem; } .trainer-popup .btn {min-height: 2.75rem;padding: 0.625rem 1.125rem;border-radius: 0.625rem;font-size: 0.9375rem; } @media (max-width: 575.98px) {.trainer-popup__columns {display: block;}.trainer-popup__columns p + p {margin-top: 0.75rem;} } .trainer-registration {padding-top: 3rem;padding-bottom: 3rem;background: var(--gray-100); } .trainer-registration form {max-width: 50rem;margin: 0 auto;padding: 1.75rem;background: var(--white);border: 1px solid rgba(var(--black), 0.08);border-radius: 1.5rem;box-shadow: 0 0.75rem 2.25rem rgba(var(--black), 0.06); } .trainer-registration form .col {margin-bottom: 1rem; } .trainer-registration .form-group {margin-bottom: 0; } .trainer-registration .form-control, .trainer-registration .custom-file-label {border-radius: 1.125rem; } .trainer-registration .form-control {padding: 0.625rem 0.875rem; } .trainer-registration textarea.form-control {min-height: 6.875rem; } .trainer-registration .custom-file-label::after {border-radius: 0 1.125rem 1.125rem 0; } .trainer-registration input[type=file] {display: block;width: 100%; } .trainer-registration__note {max-width: 38.75rem;margin: 0.25rem auto 0.875rem;font-size: 0.875rem;color: var(--gray-600); } .trainer-registration .btn {min-width: 11.25rem;border-radius: 0.625rem; } @media (max-width: 767.98px) {.trainer-registration {padding-top: 1.75rem;padding-bottom: 1.75rem;}.trainer-registration form {padding: 1.375rem 1rem;border-radius: 1.125rem;} } 