Olá William! Segue o código completo.
Index.html:
<!DOCTYPE html>
<html lang="pt">
<head>
<meta charset="UTF-8">
<title>João da Silva - Desenvolvedor Web</title>
<link rel="shortcut icon" href="img/favicon.png">
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/site.css">
<link rel="stylesheet" href="css/index.css">
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Crimson+Text:400,400italic,600">
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Open+Sans+Condensed:700">
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Shadows+Into+Light">
</head>
<body>
<header class="titulo-principal">
<img class="foto-home" src="img/eu.jpg" alt="Foto de João da Silva">
<h1>João da Silva</h1>
<p class="subtitulo-principal">Desenvolvedor web</p>
<ul class="palavras-chave">
<li class="palavra-home eficiencia">Eficiência</li>
<li class="palavra-home boas-praticas">Boas práticas</li>
<li class="palavra-home codigo-limpo">Código limpo</li>
<li class="palavra-home css3">CSS3</li>
<li class="palavra-home html5">HTML5</li>
<li class="palavra-home javascript">JavaScript</li>
<li class="palavra-home acessibilidade">Acessibilidade</li>
<li class="palavra-home responsivo">Responsivo</li>
<li class="palavra-home otimizacoes">Otimizações</li>
<li class="palavra-home agilidade">Agilidade</li>
<li class="palavra-home design">Design</li>
</ul>
<a class="banner-twitter" href="http://twitter.com/joaodasilva">Siga-me no Twitter</a>
</header>
<main>
<section class="secao-inicio saudacao">
<p class="saudacao"><span class="saudacao-inicio">Olá,</span> meu nome é <strong>João da Silva</strong> <span class="saudacao-ultima-linha">e eu construo <em>sites <span class="maravilhosos">maravilhosos</span></em></span></p>
<a class="botao-index" href="bio.html">Conheça mais um pouco sobre mim</a>
</section>
<section class="secao-inicio trabalhos">
<h2>Trabalhos</h2>
<ul>
<li><img src="img/bmw.png" alt="Site da BMW"></li>
<li><img src="img/ibm.png" alt="Site da IBM"></li>
<li><img src="img/uol.png" alt="Site da UOL"></li>
</ul>
<a class="botao-index" href="portfolio.html">Veja mais</a>
</section>
<section class="secao-inicio blog">
<h2>Blog</h2>
<small>Últimos posts</small>
<ol>
<li class="mais-recente">
<a href="blog.html">O essencial de design responsivo</a>
<p class="inicio-post">
Design responsivo tem ganho cada vez mais atenção como técnica de desenvolvimento de páginas web para dispositivos móveis. Mas como começar?
</p>
</li>
<li>
<a href="blog.html">Por que fazer páginas acessíveis?</a>
</li>
<li>
<a href="blog.html">JavaScript não obstrusivo</a>
</li>
</ol>
<a class="botao-index" href="blog.html">Veja mais</a>
</section>
</main>
<footer>
<h2>Vamos conversar?</h2>
<p>Você pode entrar em contato comigo <a href="contato.html">por e-mail</a> ou pelo telefone <a href="tel:+551234567890">(12) 3456-7890</a></p>
</footer>
</body>
</html>
index.css:
.foto-home {
height: 200px;
border-radius: 50%;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
}
.titulo-principal {
position: relative;
}
.subtitulo-principal {
text-align: center;
font-size: 16px;
}
.palavra-home {
font-size: 400%;
font-family: "Shadows Into Light";
font-weight: bold;
color: #D5447E;
position: absolute;
}
.eficiencia {
top: 25%;
right: 35%;
transform: translate(-50%, -50%) rotate(30deg) translateZ(2px) scale(0.25);
}
.boas-praticas {
top: 35%;
left: 12%;
transform: translate(-50%, -50%) rotate(120deg) translateZ(5px) scale(0.25);
}
.codigo-limpo {
bottom: 15%;
left: 25%;
transform: translate(-50%, -50%) rotate(15deg) translateZ(2px) scale(0.25);
}
.css3 {
bottom: 26%;
right: 13.5%;
transform: translate(-50%, -50%) rotate(240deg) translateZ(1px) scale(0.25);
}
.html5 {
top: 35%;
right: 16%;
transform: translate(-50%, -50%) rotate(300deg) translateZ(3px) scale(0.25);
}
.javascript {
top: 75%;
left: 20%;
transform: translate(-50%, -50%) rotate(75deg) translateZ(2px) scale(0.25);
}
.acessibilidade {
bottom: 18%;
left: 30%;
transform: translate(-50%, -50%) rotate(200deg) translateZ(4px) scale(0.25);
}
.responsivo {
top: 18%;
right: 35%;
transform: translate(-50%, -50%) rotate(150deg) translateZ(6px) scale(0.25);
}
.otimizacoes {
bottom: 20%;
right: 25%;
transform: translate(-50%, -50%) rotate(115deg) translateZ(5px) scale(0.25);
}
.agilidade {
bottom: 10%;
left: 25%;
transform: translate(-50%, -50%) rotate(280deg) translateZ(2px) scale(0.25);
}
.design {
top: 25%;
left: 30%;
transform: translate(-50%, -50%) rotate(235deg) translateZ(5px) scale(0.25);
}
.saudacao p {
color: #99A;
line-height: 1;
font-size: 1.5em;
padding: 2em;
}
.saudacao-inicio {
color: #889;
font-size: 3em;
}
.saudacao-ultima-linha {
text-align: right;
display: block;
}
.saudacao strong {
color: #000;
font-size: 2em;
}
.saudacao em {
color: #851944;
font-size: 4em;
}
.maravilhosos {
transform: skew(-10deg) rotate(-15deg);
display: inline-block;
}
.botao-index {
font-size: 1.25em;
background-color: #851944;
color: #FFF;
border: .2em solid black;
width: 40ch;
text-align: center;
padding: .5em;
margin: 2em auto;
display: block;
}
.secao-inicio {
padding: 2em;
}
.secao-inicio h2 {
text-transform: uppercase;
font-size: 3em;
text-shadow: 2px 2px #000;
margin-bottom: .5em;
}
.trabalhos {
background-color: #3C1D3D;
border-top: 10px solid #000;
border-bottom: 10px solid #000;
}
.trabalhos h2 {
color: #FFF;
border-top: 5em;
border-bottom: 5em;
}
.trabalhos ul {
overflow: hidden;
border: 5em solid black;
}
.trabalhos li {
float: left;
width: 33.333%;
}
.trabalhos img {
width: 100%;
display: block;
}
.blog {
background-color: #999;
color: #FFF;
border-bottom: 5em solid #851944;
position: relative;
}
.blog li a {
color: #FCF;
}
.blog small {
position: relative;
top: -2em
}
footer {
background-color: #000;
color: #FFF;
padding: 2em;
}
footer h2 {
font-size: 3em;
}
footer a {
color: #F99;
}
main {
width: 100%;
padding-bottom: 0;
float: none;
}
.blog .inicio-post {
position: absolute;
top: 4em;
height: 8em;
left: 30%;
right: 4em;
background-color: #F2FFFC;
color: #000;
padding: 1.5em;
}
.blog .mais-recente {
background-color: #F2FFFC;
}
.blog .mais-recente a {
color: #F26;
}
.blog li {
width: 30%;
}
.banner-twitter {
width: 14em;
line-height: 1;
padding: 1em 0;
box-sizing: border-box;
text-align: center;
text-decoration: none;
background-color: #3C1D3D;
color: white;
border: .25em solid black;
font-size: 16px;
font-family: "Open Sans Condensed", sans-serif;
position: absolute;
top: 0;
right: 0;
transform-origin: 0 0;
transform: translate(6.5754em, -2.4749em) rotate(45deg);
}
html, body {
height: 100%;
overflow-x: hidden;
}
.palavras-chave {
perspective: 6px;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
(css genérico de todas as páginas) site.css:
p {
text-align: justify;
margin: 1rem 0;
}
body {
background-color: #F2FFFC;
font-family: "Crimson Text", "Times New Roman", serif;
line-height: 1.5;
}
main {
width: 85%;
float: left;
padding-bottom: 80px;
}
.titulo-principal {
color: #FFF;
background-color: #851944;
text-align: center;
padding: 2rem;
border-bottom: 0.5rem solid black;
font-size: 300%;
text-transform: uppercase;
}
main h2 {
font-size: 150%;
clear: both;
}
main a {
color: #851944;
}
.texto {
width: 720px;
margin-left: auto;
margin-right: auto;
padding: 1.5rem 0;
}
/*fonte dos títulos*/
h1, h2 {
font-family: "Open Sans Condensed", "Arial", sans-serif;
}
.navegacao {
background-color: #3C1D3D;
color: #F2FFFC;
font-family: "Open Sans Condensed", "Arial", sans-serif;
text-align: center;
text-transform: lowercase;
width: 15%;
position: relative;
top: 310px;
}
/*título da barra de navegação*/
.navegacao h1 {
margin-bottom: 1.25rem;
font-size: 150%;
text-transform: none;
}
.icones-sociais li {
display: inline-block;
}
.icones-sociais a {
text-indent: -9999px;
width: 40px;
height: 40px;
display: block;
}
.github {
background-image: url(../img/github.png);
}
.twitter {
background-image: url(../img/twitter.png);
}
.linkedin {
background-image: url(../img/linkedin.png);
}
.rodape-pagina {
background-color: #000;
color: #F2FFFC;
clear: both;
position: fixed;
width: 100%;
bottom: 0px;
padding: 0.5rem;
}
nav a {
color: inherit;
}
.navegacao, {
padding: 1rem;
}
.navegacao, .minha-foto {
float: right;
border-bottom: 0.5rem solid black;
border-left: 0.5rem solid black;
box-sizing: border-box;
}
strong {
font-weight: bold;
}
em {
font-style: italic;
}
.minha-foto {
position: absolute;
top:0;
right: 0;
}