@import url("w2default.css");
* { color: #fff; font-family: "Helvetica Neue", Helvetica, Arial, "sans-serif"; font-weight: normal; font-size: 12px; }

body { background-color: #000; }

.wrapper { width: 340px; }

h2 { margin: 20px 0 5px; padding: 0; }

h2, h2 * { font-size: 30px; line-height: 30px; font-weight: normal; }

p { line-height: 15px; }

a[href="javascript:void(0);"] { cursor: default; pointer-events: none; }

header { padding: 20px 0; }
header a { display: block; }
header a img { font-size: 40px; font-weight: bold; max-width: 100%; height: 80px; }

body.home header { text-align: center; }
body.home header a img { height: auto; }

footer { background-color: #000; position: fixed; bottom: 0; left: 0; width: 100%; padding: 10px 0; }
footer * { font-size: 10px; color: #fff !important; }
footer ul { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
footer li:not(:last-child) { border-right: solid 1px #fff; }
footer li a { display: block; white-space: nowrap; padding: 0 10px; }

#general-container { padding: 0 0 60px; }

#home-categories { padding: 40px 0 20px; }
#home-categories ul { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
#home-categories li:not(:last-child) { border-right: solid 1px #fff; }
#home-categories li { display: block; white-space: nowrap; padding: 0 10px; }

#home-portfolio { text-align: center; }
#home-portfolio .mini { padding: 0 45px; }
#home-portfolio .mini ul { display: grid; grid-gap: 20px; grid-template-columns: repeat(3, 1fr); }
#home-portfolio .mini ul a { display: block; }
#home-portfolio .mini ul a img { width: 70px; height: 70px; }
#home-portfolio .large { padding-top: 20px; }
#home-portfolio .large ul { display: grid; grid-gap: 20px; grid-template-columns: repeat(1, 1fr); }
#home-portfolio .large ul a { display: block; }
#home-portfolio .large ul a img { width: 250px; }
#home-portfolio .notes { text-align: center; padding-top: 20px; }

body.sobre, body.portfolio, body.contactos, body.links { background-color: #fff; }
body.sobre .wrapper, body.portfolio .wrapper, body.contactos .wrapper, body.links .wrapper { max-width: 600px; width: auto; }
body.sobre *, body.portfolio *, body.contactos *, body.links * { color: #4a4a4a; }

body.sobre .signature img { height: 28px; }
body.sobre .photo { display: flex; align-items: flex-end; padding-top: 20px; }
body.sobre .photo img { height: 100px; margin-right: 20px; }

#portfolio-container .wrapper, body.portfolio header .wrapper { max-width: 960px; width: auto; }

.grid-a { padding: 40px 0; }
.grid-a .grid-line { display: flex; }
.grid-a .grid-title { padding-right: 10px; display: inline-flex; align-items: flex-end; min-width: 76px; border: solid 1px #000; padding: 1px 0 5px; border-left: none; border-right: none; }
.grid-a .contents { display: flex; flex-wrap: wrap; border: solid 1px #000; padding: 1px 0 0; border-left: none; border-right: none; }
.grid-a .item { margin: 0 1px 1px 0; }
.grid-a .item a { display: block; }
.grid-a .item a img { width: 48px; height: 48px; }

#portfolio-detail { padding-top: 40px; }
#portfolio-detail .wrapper { width: 400px; }
#portfolio-detail h1 { font-size: 26px; line-height: 30px; margin-bottom: 20px; padding-bottom: 20px; border-bottom: solid 1px #fff; text-align: center; }
#portfolio-detail h1 em { font-size: 10px; white-space: nowrap; line-height: 15px; display: block; }
#portfolio-detail h3 { font-size: 14px; line-height: 17px; text-align: center; font-weight: normal; }
#portfolio-detail .description { text-align: center; }
#portfolio-detail .grid-b { padding: 40px 0; display: grid; grid-gap: 20px; grid-template-columns: repeat(1, 1fr); }
#portfolio-detail .grid-b .grid-item { text-align: center; }
#portfolio-detail .grid-b img { max-width: 100%; margin: 0 auto; }

body.portfolio-detail header .wrapper { width: 400px; }
