JSFiddle - React, Tailwind, and code Playground

by Nicholas Berlette

HTML

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/tailwindcss/2.2.9/tailwind.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.9.3/css/bulma.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma-helpers/0.4.0/css/bulma-helpers.min.css">
<div class="wrapper">

		<section class="hero is-full-height">
			<div class="hero-body is-full-height">
				<div class="container has-text-centered is-full-height">
					<div class="column is-8 is-offset-2 is-6-widescreen is-offset-3-widescreen is-full-height">
						<p class="title is-1 top-16 relative is-full-width">Nicholas Berlette</p>
					</div>
          <div class="row is-10 is-offset-4 is-6-widescreen is-offset-3-widescreen is-full-height has-text-centered">
            <p class="subtitle is-full-width absolute bottom-4 has-text-centered">Jam&middot;stack Apps &nbsp;&mdash;&nbsp; User Experience &nbsp;&mdash;&nbsp; Traffic Growth</p>
          </div>
				</div>
      </div>
		</section>
</div>

CSS

html,
body, .wrapper {
  font-family: 'Tajawal', serif;
  font-size: 14px;
  font-weight: 300;
  width: 100%;
  height: 100%;
}
.wrapper {
    
}
p.subtitle {
  color: #fff;
  text-shadow: 0px 2px 5px rgba(0,0,0,0.66);
}
html, .wrapper {
  overflow-y: hidden !important;
  background: url('https://images.unsplash.com/photo-1630233840546-e49a38ea2034?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=1322&q=80'), linear-gradient(
      180deg,
      rgba(211, 214, 223, 1) 20%,
      rgba(206, 208, 220, 0.6) 38%,
      rgba(179, 183, 201, 0.0) 67%,
      rgba(0,0,0, 0.4) 100%
    );
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-blend-mode: soft-light;
}
p.subtitle {
  padding-top: 1rem;
}
a {
  color: #fff;
}
a:hover {
  color: #d3d6df;
}
.title.is-1 {
  font-size: 4rem;
}
.footer-text a {
  color: white;
}
.heart {
  font-size: 12px;
  color: red;
  margin: 0 5px 0 5px;
}
.title {
  animation-delay: 1s;
  -webkit-animation: fadein 2s; /* Safari, Chrome and Opera > 12.1 */
  -moz-animation: fadein 2s; /* Firefox < 16 */
  -ms-animation: fadein 2s; /* Internet Explorer */
  -o-animation: fadein 2s; /* Opera < 12.1 */
  animation: fadein 2s;
}
.area-center {
  animation-delay: 2s;
  -webkit-animation: fadein 2s; /* Safari, Chrome and Opera > 12.1 */
  -moz-animation: fadein 2s; /* Firefox < 16 */
  -ms-animation: fadein 2s; /* Internet Explorer */
  -o-animation: fadein 2s; /* Opera < 12.1 */
  animation: fadein 2s;
}
.subtitle {
  animation-delay: 3s;
  -webkit-animation: fadein 4s; /* Safari, Chrome and Opera > 12.1 */
  -moz-animation: fadein 2s; /* Firefox < 16 */
  -ms-animation: fadein 2s; /* Internet Explorer */
  -o-animation: fadein 2s; /* Opera < 12.1 */
  animation: fadein 4s;
}
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Firefox < 16...