@use '../../source/scss/theme/global/config' as *; @use '../../source/scss/theme/functions/functions' as *; @use '../../source/scss/theme/functions/mixins' as *; .quotes { background: transparent; position: relative; z-index: 9; > h3 { margin-bottom: rem-calc(36); } &__grid { display: grid; gap: rem-calc(24); margin-top: rem-calc(20); @include mobile { grid-template-columns: repeat(2, 1fr); } @include desktop { grid-template-columns: repeat(3, 1fr); gap: rem-calc(30); } } &__card { display: flex; flex-direction: column; gap: rem-calc(16); padding: clamp(rem-calc(16), 4vw, rem-calc(24)); background-color: $color-white; border: 1px solid #FFEBFE; border-radius: rem-calc(12); min-width: 0; } &__head { display: flex; align-items: center; gap: rem-calc(14); } &__avatar { flex-shrink: 0; width: rem-calc(56); height: rem-calc(56); border-radius: rem-calc(10); overflow: hidden; figure, img { width: 100%; height: 100%; object-fit: cover; } } &__name { margin: 0; font-family: $headings-font-family; font-size: rem-calc(18); font-weight: $headings-font-weight; color: $headings-color; } &__body { display: flex; flex-direction: column; gap: rem-calc(10); flex: 1; } &__text { margin: 0; font-size: rem-calc(16); line-height: 1.55; color: $text-color; } &__read-more { align-self: flex-start; margin: 0; padding: 0; border: none; background: none; font: inherit; font-weight: 600; color: $primary; text-decoration: underline; text-underline-offset: rem-calc(3); cursor: pointer; &:hover { text-decoration-thickness: rem-calc(2); } &:focus-visible { outline: rem-calc(2) solid $primary; outline-offset: rem-calc(2); } } &__dialog { position: fixed; top: 50%; left: 50%; right: auto; bottom: auto; transform: translate(-50%, -50%); margin: 0; width: min(92vw, rem-calc(560)); max-height: 85vh; padding: 0; border: none; box-sizing: border-box; overflow: auto; overscroll-behavior: contain; background: transparent; &::backdrop { background: rgba(0, 0, 0, 0.55); backdrop-filter: blur(2px); } } &__dialog-panel { position: relative; padding: rem-calc(28) rem-calc(24) rem-calc(24); border-radius: rem-calc(12); background: $color-white; color: $text-color; box-shadow: 0 rem-calc(12) rem-calc(40) rgba(0, 0, 0, 0.15); } &__dialog-title { margin: 0 0 rem-calc(16); padding-right: rem-calc(36); font-size: rem-calc(20); color: $headings-color; } &__dialog-text { font-size: rem-calc(16); line-height: 1.6; p:last-child { margin-bottom: 0; } } &__dialog-close { position: absolute; top: rem-calc(16); right: rem-calc(16); display: flex; align-items: center; justify-content: center; width: rem-calc(36); height: rem-calc(36); padding: 0; border: none; border-radius: 50%; background: rgba(0, 0, 0, 0.08); color: $text-color; font-size: rem-calc(22); line-height: 1; cursor: pointer; transition: background 0.2s ease; &:hover { background: rgba(0, 0, 0, 0.14); } &:focus-visible { outline: rem-calc(2) solid $primary; outline-offset: rem-calc(2); } } }