aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/Icons/Contact/Contact.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/Icons/Contact/Contact.tsx')
0 files changed, 0 insertions, 0 deletions
id='n65' href='#n65'>65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
@use "@styles/abstracts/functions" as fun;
@use "@styles/abstracts/placeholders";

.list {
  --items: 3;
  --items-size: 25ch;

  @extend %reset-list;

  display: grid;
  grid-template-columns: repeat(
    auto-fit,
    min(calc(100vw - (var(--spacing-md) * 2)), var(--items-size))
  );
  justify-content: center;
  gap: var(--spacing-sm);
  width: min(
    calc(100vw - (var(--spacing-md) * 2)),
    calc(
      (var(--items-size) * var(--items)) +
        (var(--spacing-sm) * (var(--items) - 1))
    )
  );
  margin-bottom: var(--spacing-md);
}

.item {
  text-align: center;
}

.article {
  display: flex;
  flex-flow: column nowrap;
  height: 100%;
  padding: 0 0 var(--spacing-md);
}

.title {
  flex: 1;
  margin: var(--spacing-sm) 0;
  padding: 0 var(--spacing-md);
  text-decoration: underline solid transparent 0;
  transition: all 0.3s linear 0s;
}

.link {
  display: block;
  height: 100%;
  background: var(--color-bg);
  color: inherit;
  text-decoration: none;
  border: fun.convert-px(3) solid var(--color-primary);
  border-radius: fun.convert-px(5);
  box-shadow: fun.convert-px(1) fun.convert-px(1) fun.convert-px(1)
      var(--color-shadow),
    fun.convert-px(1) fun.convert-px(2) fun.convert-px(2) fun.convert-px(-2)
      var(--color-shadow),
    fun.convert-px(3) fun.convert-px(4) fun.convert-px(5) fun.convert-px(-4)
      var(--color-shadow);
  transition: all 0.3s ease-in-out 0s;

  &:hover,
  &:focus,
  &:active {
    color: inherit;
  }

  &:hover,
  &:focus {
    box-shadow: fun.convert-px(1) fun.convert-px(1) fun.convert-px(1)
        var(--color-shadow-light),
      fun.convert-px(1) fun.convert-px(2) fun.convert-px(2) fun.convert-px(-2)
        var(--color-shadow-light),
      fun.convert-px(3) fun.convert-px(4) fun.convert-px(5) fun.convert-px(-4)
        var(--color-shadow-light),
      fun.convert-px(7) fun.convert-px(10) fun.convert-px(12) fun.convert-px(-3)
        var(--color-shadow-light);
    transform: scale(1.05);
  }

  &:focus {
    .title {
      text-decoration: underline solid var(--color-primary) 0.3ex;
    }
  }

  &:active {
    box-shadow: 0 0 0 0 var(--color-shadow);
    transform: scale(0.95);

    .title {
      text-decoration: none;
    }
  }
}

.cover {
  width: 100%;
  height: clamp(fun.convert-px(100), 20vw, fun.convert-px(150));
  position: relative;
  border: fun.convert-px(1) solid var(--color-border);
}

.meta {
  display: block;
  margin: 0;
  padding: 0 var(--spacing-md);
  font-size: var(--font-size-sm);
}