@layer components {
  @scope (.scope.staff-card) to (.scope) {
    :scope {
      display: grid;
      gap: calc(24 * var(--px-to-rem));
    }

    ._image {
      aspect-ratio: 231 / 255;
      background: #f7f2f2;
      display: grid;
      overflow: hidden;
      place-items: center;
      position: relative;
    }

    ._image:not(:has(img))::after {
      aspect-ratio: 458 / 150;
      background: var(--color-accent);
      content: '';
      height: auto;
      mask-image: url('data:image/svg+xml;utf-8,<svg viewBox="0 0 458 150" xmlns="http://www.w3.org/2000/svg"><path d="M139.34 49.1191C139.014 52.9139 139.227 60.4446 139.226 64.4902L139.23 121.575C139.23 126.955 139.102 132.463 139.498 137.824C139.668 140.136 140.379 142.702 141.877 144.503C143.129 146.106 146.671 146.754 147.334 147.425L147.183 147.741C142.611 148.849 131.743 147.684 126.675 147.776C124.394 147.817 121.715 145.256 121.54 143.001C121.145 137.921 121.005 131.45 121.389 126.306C115.716 136.828 107.529 144.652 95.8809 148.404C93.794 149.076 89.3594 149.499 88.0264 150H80.168C77.9017 149.363 75.5126 149.25 73.2412 148.55C54.3323 142.719 52.7629 121.768 52.3828 105.689C52.2548 96.8305 52.2291 87.9698 52.3047 79.1104C52.3087 76.342 52.3061 73.7234 52.3115 70.8008C52.3162 68.3394 52.526 62.8088 49.4131 61.8115C48.4316 61.4972 45.7322 62.4818 44.291 62.2637L44.2061 61.9541C46.2738 60.1289 66.5426 50.8058 70.2627 49.165L70.2568 81.4863C70.2597 86.7214 70.303 91.956 70.3867 97.1904C70.5188 112.207 70.1017 145.459 91.585 145.509C103.919 145.539 117.28 133.214 120.958 121.948C121.572 120.068 121.264 108.315 121.264 105.557L121.259 69.0674C121.241 66.1956 121.381 61.7676 117.271 61.8027C115.398 61.8188 113.609 62.6595 111.757 62.8848C114.401 60.7536 118.042 59.3912 121.09 57.8281C127.025 54.7855 133.413 52.0911 139.34 49.1191ZM418.833 47.5889C427.671 46.8982 457.342 49.1379 445.948 64.6396C439.711 71.7267 434.056 61.1757 429.693 57.4727C426.535 54.7916 423.795 52.6155 419.531 51.709C411.305 49.9605 402.973 52.0768 397.241 58.4053C389.949 66.4576 388.22 77.7178 388.707 88.1982C389.481 104.376 396.083 120.66 408.036 131.823C423.592 146.272 443.509 146.304 458 130.489V132.807C451.761 140.33 445.81 144.457 436.35 147.427C433.51 148.319 430.511 149.057 427.541 149.373C425.522 149.588 423.359 149.624 421.373 150H421.17C418.934 149.526 416.013 149.494 413.638 149.096C390.425 144.928 377.477 125.005 375.39 102.991C372.666 74.2388 389.036 49.9178 418.833 47.5889ZM246.686 71.6367C255.412 53.8778 274.008 41.2879 294.408 49.71C311.952 56.9521 311.509 85.0229 311.516 101.172L311.523 125.368C311.525 131.149 311.076 136.374 312.679 142.05C313.929 146.476 319.093 146.29 319.623 147.735C318.375 148.164 288.307 148.189 285.373 147.797L285.215 147.576C286.297 146.242 291.429 146.273 292.469 141.631C294.117 134.281 293.543 126.642 293.552 119.146C293.567 104.29 293.869 89.2871 291.924 74.5352C291.257 69.7515 289.994 64.5823 287.735 60.3271C277.03 40.1631 252.281 59.7576 248.101 74.5781C247.332 77.3052 248.78 82.3994 248.695 85.3867C248.615 88.2663 248.85 91.1591 248.874 94.0312C249.279 103.742 248.807 113.042 249.004 122.801C249.127 128.858 248.203 137.57 250.704 143.178C251.781 145.596 254.756 146.473 257.133 147.141L256.905 147.754C256.151 148.14 225.786 148.132 223.135 147.874L222.993 147.55C224.006 146.191 227.04 146.505 228.689 144.006C230.004 142.245 230.615 139.58 230.771 137.385C231.234 130.888 231.017 124.163 231.006 117.64C230.977 103.253 231.469 89.1259 229.456 74.8047C228.477 67.8438 226.227 58.6672 220.162 54.0996C207.038 45.4682 188.542 62.7769 185.382 75.1924C184.959 76.8562 185.145 83.07 185.146 84.8486L185.164 103.041L185.152 124.904C185.145 129.465 184.957 134.151 185.516 138.736C185.879 141.714 187.048 144.76 190.041 146.199C190.99 146.655 192.228 146.601 193.254 147.358L193.28 147.725C192.206 148.247 159.277 148.03 159.006 147.833C158.98 147.697 158.951 147.549 158.92 147.389C160.557 146.249 163.864 145.835 164.834 144.148C165.788 142.488 166.632 140.06 166.788 138.374C167.284 132.999 167.118 127.391 167.119 121.995L167.118 77.0762C167.117 72.9646 167.377 68.3334 166.654 64.3311C165.904 60.1775 160.199 62.3446 157.694 62.9346C160.228 60.5995 181.309 50.9854 185.19 49.1533C185.012 55.8307 185.163 63.2416 185.163 69.9746C190.361 58.0669 203.54 47.6257 216.876 47.375C222.363 46.6594 230.192 48.2557 234.848 51.2959C242.212 56.1044 244.908 63.5333 246.686 71.6367ZM356.699 49.4668C356.927 49.4295 357.088 49.5224 357.309 49.6074C357.66 55.5484 357.345 64.9808 357.345 71.1357L357.334 126.896C357.334 131.752 357.041 137.225 358.501 141.891C359.856 146.223 363.274 146.091 366.615 147.753C364.204 148.136 332.368 148.215 330.887 147.782C331.294 146.581 334.336 146.664 336.409 144.761C338.801 142.564 339.173 137.981 339.336 134.839C339.537 130.949 339.419 126.306 339.421 122.353L339.416 78.7783C339.416 74.9563 339.484 71.1086 339.354 67.29C339.101 59.9421 334.872 61.795 329.968 62.9238C332.354 60.608 352.541 51.518 356.699 49.4668ZM24.2637 0C24.5111 4.20325 24.3951 9.14282 24.3945 13.4062L24.3867 124.407C24.3748 130.126 23.3076 140.401 27.3848 144.875C28.5697 146.175 32.0322 146.832 32.415 147.339L32.3584 147.772C31.4401 148.205 3.17975 147.997 0 147.975V146.646C6.9067 145.126 6.23555 135.557 6.25098 130.175C6.26785 124.296 6.22971 118.407 6.22949 112.527L6.24316 32.6885C6.24764 28.443 6.4919 18.9121 6.01465 14.959C5.33274 13.8745 5.07659 13.6158 4.14648 12.7246C2.50061 12.5223 1.62574 12.605 0 12.7188V11.5449C1.48417 10.9852 7.59685 7.93018 9.33691 7.04297C13.5042 4.91811 20.1448 2.23776 23.8662 0H24.2637ZM343.92 15.3926C349.885 14.4072 355.516 18.4405 356.484 24.3887C357.45 30.3369 353.382 35.9356 347.411 36.877C341.469 37.8134 335.888 33.7852 334.926 27.8682C333.964 21.9511 337.985 16.3728 343.92 15.3926Z" /></svg>');
      mask-position: center center;
      mask-repeat: no-repeat;
      mask-size: cover;
      position: absolute;
      width: 40%;
    }

    ._image img {
      height: 100%;
    }

    ._main {
      letter-spacing: 0;
    }

    ._head {
      border-bottom: 0.5px dashed var(--color-black);
      display: grid;
      gap: calc(10 * var(--px-to-rem));
      padding-bottom: calc(24 * var(--px-to-rem));
    }

    ._name {
      font-size: var(--font-size-300);
      font-weight: var(--font-weight-medium);
      line-height: 1;
    }

    ._position {
      font-family: var(--font-noto-sans);
      font-size: var(--font-size-50);
      font-weight: var(--font-weight-light);
      line-height: 2;
    }

    ._body {
      display: grid;
      gap: calc(24 * var(--px-to-rem));
      padding-bottom: calc(32 * var(--px-to-rem));
      padding-top: calc(24 * var(--px-to-rem));
    }

    ._message {
      font-family: var(--font-noto-sans);
      font-size: var(--font-size-50);
      font-weight: var(--font-weight-light);
      line-height: 2;
    }

    ._tags {
      display: flex;
      flex-wrap: wrap;
      gap: calc(12 * var(--px-to-rem));
    }

    ._tag {
      border: 1px solid currentColor;
      border-radius: 5px;
      color: var(--color-accent);
      font-family: var(--font-noto-sans);
      font-size: var(--font-size-50);
      font-weight: var(--font-weight-medium);
      line-height: 1;
      padding: calc(8 * var(--px-to-rem)) calc(10 * var(--px-to-rem));
    }

    ._tag::before {
      content: '＃';
    }

    ._instagram {
      --_icon-size: calc(24 * var(--px-to-rem));
      align-items: center;
      background: var(--color-accent);
      border: 1px solid var(--color-accent);
      border-radius: 9999px;
      color: var(--color-white);
      display: grid;
      font-family: var(--font-noto-sans);
      gap: calc(16 * var(--px-to-rem));
      grid-template-columns: var(--_icon-size) auto;
      justify-content: center;
      letter-spacing: 0.1em;
      line-height: 1;
      padding: calc(16 * var(--px-to-rem)) calc(40 * var(--px-to-rem));
      transition-duration: var(--duration-default);
      transition-property: background, border-color, color;
      transition-timing-function: var(--ease-custom);
    }

    ._instagram::before {
      aspect-ratio: 1 / 1;
      background: currentColor;
      content: '';
      mask-image: url('data:image/svg+xml;utf-8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M17 1.33301C20.1296 1.33301 22.667 3.87039 22.667 7V17C22.667 20.1296 20.1296 22.667 17 22.667H7C3.87039 22.667 1.33301 20.1296 1.33301 17V7C1.33301 3.87039 3.87039 1.33301 7 1.33301H17ZM7 2.66699C4.60677 2.66699 2.66699 4.60677 2.66699 7V17C2.66699 19.3932 4.60677 21.333 7 21.333H17C19.3932 21.333 21.333 19.3932 21.333 17V7C21.333 4.60677 19.3932 2.66699 17 2.66699H7ZM9.89355 7.81445C10.7648 7.3624 11.7567 7.19685 12.7275 7.34082C13.7179 7.48768 14.6348 7.94924 15.3428 8.65723C16.0506 9.36517 16.5123 10.282 16.6592 11.2725C16.8031 12.2432 16.6376 13.2352 16.1855 14.1064C15.7335 14.9776 15.0175 15.6838 14.1406 16.125C13.264 16.5662 12.2708 16.7204 11.3018 16.5645C10.3327 16.4085 9.43721 15.9508 8.74316 15.2568C8.04912 14.5628 7.59153 13.6672 7.43555 12.6982C7.27969 11.7293 7.43389 10.7361 7.875 9.85938C8.31628 8.98269 9.02235 8.26654 9.89355 7.81445ZM12.5322 8.66016C11.8388 8.55733 11.1301 8.67519 10.5078 8.99805C9.88562 9.32093 9.38063 9.83194 9.06543 10.458C8.75033 11.0842 8.64066 11.7943 8.75195 12.4863C8.86338 13.1784 9.18984 13.8188 9.68555 14.3145C10.1813 14.8102 10.8215 15.1366 11.5137 15.248C12.2058 15.3594 12.9158 15.2497 13.542 14.9346C14.1681 14.6195 14.6791 14.1144 15.002 13.4922C15.3248 12.87 15.4426 12.1612 15.3398 11.4678C15.2349 10.7605 14.9059 10.1052 14.4004 9.59961C13.8948 9.09402 13.2395 8.76512 12.5322 8.66016ZM17.5068 5.83301C17.875 5.83308 18.1738 6.13186 18.1738 6.5C18.1738 6.86814 17.875 7.16692 17.5068 7.16699H17.5C17.1318 7.16699 16.833 6.86819 16.833 6.5C16.833 6.13181 17.1318 5.83301 17.5 5.83301H17.5068Z" /></svg>');
      mask-position: center center;
      mask-repeat: no-repeat;
      mask-size: cover;
    }

    @media (hover: hover) and (pointer: fine) {
      ._instagram:hover {
        background: transparent;
        border-color: currentColor;
        color: var(--color-accent);
      }
    }

    @media (width <= 767px) {
      ._head {
        padding-bottom: calc(18 * var(--px-to-rem));
      }

      ._name {
        font-size: var(--font-size-200);
      }

      ._body {
        gap: calc(18 * var(--px-to-rem));
        padding-top: calc(18 * var(--px-to-rem));
      }

      ._message {
        font-size: var(--font-size-25);
      }

      ._tags {
        gap: calc(8 * var(--px-to-rem));
      }

      ._tag {
        border: 1px solid currentColor;
        font-size: calc(9 * var(--px-to-rem));
        padding: calc(6 * var(--px-to-rem));
      }

      ._instagram {
        --_icon-size: calc(14.5 * var(--px-to-rem));
        font-size: var(--font-size-50);
        gap: calc(8 * var(--px-to-rem));
        padding: calc(12 * var(--px-to-rem));
      }
    }
  }
}
