css
html{
box-sizing: border-box ;
--cream : #f2eee3 ;
--black : #1b1b1b ;
--red : #d91729 ;
}
html *,
html *::before,
html *::after {
box-sizing: inherit ;
}
*::before,
*::after{
content: "" ;
position: absolute ;
}
body{
margin: 0 ;
width: 100% ;
height: 100vh ;
display: flex ;
overflow: hidden ;
position: relative ;
align-items: center ;
justify-content: center ;
background-color: var(--cream) ;
}
.butterfly{
width: 36em;
height: 35em;
position: relative;
background-repeat: no-repeat ;
background-image :
radial-gradient(circle , var(--red) 46% , transparent 53.2%) ,
radial-gradient(circle , var(--black) 46% , transparent 53.2%) ,
radial-gradient(circle at center 0 , transparent 21.9%, var(--black) 22.1% , var(--black) 22.4% , transparent 22.7%) ,
radial-gradient(circle , var(--red) 30% , var(--black) 32% , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--red) 30% , var(--black) 32% , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--black) 51% , transparent 53.2%),
radial-gradient(circle , var(--black) 51% , transparent 53.2%),
radial-gradient(circle , var(--cream) 30% , var(--black) 32% , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--cream) 30% , var(--black) 32% , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--cream) 30% , var(--black) 32% , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--cream) 30% , var(--black) 32% , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--red) 30% , var(--black) 32% , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--red) 30% , var(--black) 32% , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--red) 30% , var(--black) 32% , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--red) 30% , var(--black) 32% , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle , var(--black) 51% , transparent 53.2%) ,
radial-gradient(circle at center 0 , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 100% , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 0 , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 100% , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 0 , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 100% , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 0 , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 100% , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 0 , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 100% , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 0 , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 100% , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 0 , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 100% , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 0 , var(--cream) 51% , transparent 53.2%) ,
radial-gradient(circle at center 100% , var(--cream) 51% , transparent 53.2%) ,
linear-gradient( var(--black) 100% , transparent 0%) ,
linear-gradient( var(--black) 100% , transparent 0%) ,
radial-gradient(circle , var(--black) 46% , transparent 53.2%) ,
linear-gradient( var(--black) 100% , transparent 0%) ;
background-size :
1em 1em ,
1em 1em ,
17.7em 17.3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
3em 3em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.9em 1.9em ,
2.3em .9em ,
2.3em .9em ,
1em 1em ,
0.1em 2.1em ;
background-position :
13.12em 5em ,
21.62em 5em ,
9.02em 5.4em ,
15.12em 9.5em ,
17.52em 9.5em ,
15.12em 11.9em ,
17.52em 11.9em ,
15.12em 14.2em ,
17.52em 14.2em ,
15.12em 16.6em ,
17.52em 16.6em ,
15.12em 19em ,
17.52em 19em ,
15.12em 21.4em ,
17.52em 21.4em ,
15.12em 23.8em ,
17.52em 23.8em ,
15.12em 26.1em ,
17.52em 26.1em ,
15.2em 11.05em ,
17.55em 9em ,
15.2em 13.4em ,
17.55em 11.5em ,
15.2em 15.8em ,
17.55em 13.8em ,
15.2em 18.2em ,
17.55em 16.2em ,
15.2em 20.55em ,
17.55em 18.6em ,
15.2em 23em ,
17.55em 20.95em ,
15.2em 25.3em ,
17.55em 23.4em ,
15.25em 27.6em ,
17.55em 25.75em ,
16.7em 27.85em ,
16.45em 9.9em ,
17.4em 30.6em ,
17.8em 28.85em ;
}
.butterfly::before{
top: 19.25em ;
left: 20.9em ;
width: 10.3em ;
height: 10.3em ;
transform: scaleX(-1) ;
background-repeat: no-repeat ;
border-radius: 50% 0 50% 50% ;
background-color: var(--black) ;
background-image :
radial-gradient(circle , var(--black) 25% , var(--red) 27% , var(--red) 57% , transparent 59%) ,
radial-gradient(circle , var(--black) 25% , var(--red) 27% , var(--red) 57% , transparent 59%) ,
radial-gradient(circle , var(--cream) 29% , var(--black) 32% , var(--black) 57% , transparent 59%) ,
radial-gradient(circle , var(--cream) 29% , var(--black) 32% , var(--black) 57% , transparent 59%) ,
radial-gradient(circle , var(--cream) 29% , var(--black) 32% , var(--black) 57% , transparent 59%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 58.1% , transparent 60%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 56.6% , transparent 59%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 56.6% , transparent 59%) ,
radial-gradient(circle , var(--red) 29% , var(--black) 32% , var(--black) 57% , transparent 59%) ,
radial-gradient(circle at 50.4% 50.5% , var(--cream) 26% , var(--black) 31% , var(--black) 56.6% , transparent 59%) ,
radial-gradient(circle at 50.4% 50.5% , var(--cream) 26% , var(--black) 31% , var(--black) 56.6% , transparent 59%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 56.6% , transparent 59%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 56.6% , transparent 59%) ,
radial-gradient(circle , var(--black) 25% , var(--black) 27% , var(--black) 56.6% , transparent 59%) ,
linear-gradient(var(--cream) 100% , transparent 0) ,
linear-gradient(var(--cream) 100% , transparent 0) ,
linear-gradient(var(--cream) 100% , transparent 0) ,
linear-gradient(var(--cream) 100% , transparent 0) ,
linear-gradient(var(--red) 100% , transparent 0) ;
background-size :
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 1.6em ,
3em 1.6em ,
3em 1.6em ,
3.3em 2.5em ,
3em 2.3em ;
background-position :
1.6em -1.05em ,
-1.2em 1.8em ,
4.5em -1.1em ,
1.7em 1.8em ,
-1.2em 4.7em ,
7.45em -1.05em ,
4.55em 1.8em ,
1.7em 4.7em ,
1.7em 7.5em ,
7.45em 1.8em ,
4.55em 4.7em ,
7.45em 4.7em ,
4.55em 7.6em ,
7.45em 7.5em ,
0.45em 5.25em ,
6.25em 3.6em ,
6.25em -0.86em ,
6.15em 6.94em ,
0.45em 1.25em ;
}
.butterfly::after{
height: 4em ;
top: 10.5em ;
z-index: -1 ;
width: 1.4em ;
left: 16.8em ;
transform: rotate(44deg) ;
background-color: var(--black) ;
box-shadow:
1.6em 1.6em 0 var(--black) ,
3.3em 3.3em 0 var(--black) ,
4.95em 4.95em 0 var(--black) ,
6.65em 6.65em 0 var(--black) ,
8.3em 8.3em 0 var(--black) ,
9.95em 9.95em 0 var(--black) ;
}
.wing{
top: 4.9em ;
left: 0.4em ;
width: 14.5em ;
height: 14.4em ;
position: absolute ;
background-repeat: no-repeat;
background-color: var(--black);
border-radius: 0 97% 0 40% / 0 100% 0 52% ;
background-image :
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 50% , transparent 52%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 50% , transparent 52%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 50% , transparent 52%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 50% , transparent 52%) ,
radial-gradient(circle , var(--black) 25% , var(--red) 27% , var(--red) 50% , transparent 52%) ,
radial-gradient(circle , var(--red) 25% , var(--black) 27% , var(--black) 50% , transparent 52%),
radial-gradient(circle , var(--cream) 25% , var(--black) 27% , var(--black) 50% , transparent 52%),
radial-gradient(circle , var(--cream) 25% , var(--black) 27% , var(--black) 50% , transparent 52%),
radial-gradient(circle , var(--cream) 25% , var(--black) 27% , var(--black) 50% , transparent 52%),
radial-gradient(circle , var(--cream) 25% , var(--black) 27% , var(--black) 50% , transparent 52%),
linear-gradient(-35deg , transparent 12% , var(--cream) 12% , var(--cream) 48% , transparent 0) ,
linear-gradient( var(--cream) 100% , transparent 0) ,
linear-gradient( var(--cream) 100% , transparent 0) ,
linear-gradient( var(--red) 100% , transparent 0) ;
background-size :
7.3em 6.2em ,
7.3em 6.2em ,
7.3em 6.2em ,
7.3em 6.2em ,
7.3em 6.2em ,
6em 6em ,
7.3em 6.2em ,
7.3em 6.2em ,
7.3em 6.2em ,
6.8em 6.8em ,
6.2em 8em ,
6.2em 8em ,
6.2em 2.95em ,
6.2em 4.7em ;
background-position :
1.2em -0.7em ,
-3.55em 4.15em ,
6.05em 4.15em ,
1.25em 8.95em ,
10.75em 8.95em ,
-2.6em -0.4em ,
-3.6em 8.9em ,
5.9em 8.9em ,
10.88em 4.1em ,
1.5em 3.8em ,
-1.6em -1.2em ,
-1.1em 9.65em ,
9.8em 6.7em ,
10.1em 11.7em ;
}
.wing::before{
top: 14.4em ;
left: 4.1em ;
width: 10.3em ;
height: 10.3em ;
border-radius: 50% 0 50% 50% ;
background-repeat: no-repeat ;
background-color: var(--black) ;
background-image :
radial-gradient(circle , var(--black) 25% , var(--red) 27% , var(--red) 57% , transparent 59%),
radial-gradient(circle , var(--black) 25% , var(--red) 27% , var(--red) 57% , transparent 59%),
radial-gradient(circle , var(--cream) 29% , var(--black) 32% , var(--black) 57% , transparent 59%) ,
radial-gradient(circle , var(--cream) 29% , var(--black) 32% , var(--black) 57% , transparent 59%) ,
radial-gradient(circle , var(--cream) 29% , var(--black) 32% , var(--black) 57% , transparent 59%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 58.1% , transparent 60%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 56.6% , transparent 59%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 56.6% , transparent 59%) ,
radial-gradient(circle , var(--red) 29% , var(--black) 32% , var(--black) 57% , transparent 59%) ,
radial-gradient(circle at 50.4% 50.5% , var(--cream) 26% , var(--black) 31% , var(--black) 56.6% , transparent 59%) ,
radial-gradient(circle at 50.4% 50.5% , var(--cream) 26% , var(--black) 31% , var(--black) 56.6% , transparent 59%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 56.6% , transparent 59%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 56.6% , transparent 59%) ,
radial-gradient(circle , var(--black) 25% , var(--black) 27% , var(--black) 56.6% , transparent 59%) ,
linear-gradient(var(--cream) 100% , transparent 0) ,
linear-gradient(var(--cream) 100% , transparent 0) ,
linear-gradient(var(--cream) 100% , transparent 0) ,
linear-gradient(var(--cream) 100% , transparent 0) ,
linear-gradient(var(--red) 100% , transparent 0) ;
background-size :
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 4em ,
3em 1.6em ,
3em 1.6em ,
3em 1.6em ,
3.3em 2.5em ,
3em 2.3em ;
background-position :
1.6em -1.05em ,
-1.2em 1.8em ,
4.5em -1.1em ,
1.7em 1.8em ,
-1.2em 4.7em ,
7.45em -1.05em ,
4.55em 1.8em ,
1.7em 4.7em ,
1.7em 7.5em ,
7.45em 1.8em ,
4.55em 4.7em ,
7.45em 4.7em ,
4.55em 7.6em ,
7.45em 7.5em ,
0.45em 5.25em ,
6.25em 3.62em ,
6.25em -0.86em ,
6.15em 6.94em ,
0.45em 1.25em ;
}
.wing::after{
left: 20.4em ;
width: 14.5em ;
height: 14.4em ;
position: absolute ;
transform: scaleX(-1) ;
background-repeat: no-repeat;
background-color: var(--black) ;
border-radius: 0 97% 0 40% / 0 100% 0 52% ;
background-image :
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 50% , transparent 52%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 50% , transparent 52%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 50% , transparent 52%) ,
radial-gradient(circle , var(--black) 25% , var(--cream) 27% , var(--cream) 50% , transparent 52%) ,
radial-gradient(circle , var(--black) 25% , var(--red) 27% , var(--red) 50% , transparent 52%) ,
radial-gradient(circle , var(--red) 25% , var(--black) 27% , var(--black) 50% , transparent 52%) ,
radial-gradient(circle , var(--cream) 25% , var(--black) 27% , var(--black) 50% , transparent 52%) ,
radial-gradient(circle , var(--cream) 25% , var(--black) 27% , var(--black) 50% , transparent 52%) ,
radial-gradient(circle , var(--cream) 25% , var(--black) 27% , var(--black) 50% , transparent 52%) ,
radial-gradient(circle , var(--cream) 25% , var(--black) 27% , var(--black) 50% , transparent 52%) ,
linear-gradient(-35deg , transparent 12% , var(--cream) 12% , var(--cream) 48% , transparent 0) ,
linear-gradient( var(--cream) 100% , transparent 0) ,
linear-gradient( var(--cream) 100% , transparent 0) ,
linear-gradient( var(--red) 100% , transparent 0) ;
background-size :
7.3em 6.2em ,
7.3em 6.2em ,
7.3em 6.2em ,
7.3em 6.2em ,
7.3em 6.2em ,
6em 6em ,
7.3em 6.2em ,
7.3em 6.2em ,
7.3em 6.2em ,
6.8em 6.8em ,
6.2em 8em ,
6.2em 8em ,
6.2em 2.95em ,
6.2em 4.7em ;
background-position :
1.2em -0.7em ,
-3.55em 4.15em ,
6.05em 4.15em ,
1.25em 8.95em ,
10.75em 8.95em ,
-2.6em -0.4em ,
-3.6em 8.9em ,
5.9em 8.9em ,
10.9em 4.1em ,
1.5em 3.8em ,
-1.6em -1.2em ,
-1.1em 9.65em ,
9.8em 6.7em ,
10.1em 11.7em ;
}
@media screen and (max-width: 36em) {
.butterfly{
font-size: .7em ;
}
}