concoction

Объявление

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » concoction » ХТМЛ и журнал » штучки


штучки

Сообщений 121 страница 150 из 171

121

[html]<style>
@import url('https://fonts.googleapis.com/css?family=Source+Code+Pro');

body {
  background-image: url('https://images.unsplash.com/photo-1472190649224-495422e1b602?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1951&q=80');
  background-size : cover;
}
nav {
  width : 240px;
  float : left;
  -webkit-transition : 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all;
  -moz-transition : 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all;
}

input {
  display: none;
}

label {
  display     : inline-block;
  margin-left : auto;
  width       : 60px;
  padding     : 18px 0;
  background-color: rgba(100,100,100,.3);
  color : #fff;
  text-align : center;
  cursor : pointer;
}

li {
  list-style-type : none;
  border-top    : 1px solid #FFF;
  border-bottom : 1px solid #ddd;
  background-color: #f4f5f6;
  background-size : 200% 100%;
  background-position : 90% 0px;
  -webkit-transition : 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all;
  -moz-transition : 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all;
}

a {
  display    : block;
  padding    : 25px 0;
  color      : #454545;
  text-align : center;
  font-family: 'Source Code Pro', sans-serif;
  text-decoration: none;
  -webkit-transition : color .1s;
  -moz-transition : color .1s;
}

a:hover {
  color : #fff;
  -webkit-transition : color .1s;
  -moz-transition : color .1s;
}

li:nth-child(1) {
  border-top : none;
  background-image : -webkit-linear-gradient(left, #78cdce 0%, #78cdce 50%, #f4f5f6 0%);
  background-image : -moz-linear-gradient(left, #78cdce 0%, #78cdce 50%, #f4f5f6 0%);
}

li:nth-child(2) {
  background-image : -webkit-linear-gradient(left, #f16767 0%, #f16767 50%, #f4f5f6 0%);
  background-image : -moz-linear-gradient(left, #f16767 0%, #f16767 50%, #f4f5f6 0%);
}

li:nth-child(3) {
  background-image : -webkit-linear-gradient(left, #f5ee32 0%, #f5ee32 50%, #f4f5f6 0%);
  background-image : -moz-linear-gradient(left, #f5ee32 0%, #f5ee32 50%, #f4f5f6 0%);
}

li:nth-child(4) {
  background-image : -webkit-linear-gradient(left, #97cc69 0%, #97cc69 50%, #f4f5f6 0%);
  background-image : -moz-linear-gradient(left, #97cc69 0%, #97cc69 50%, #f4f5f6 0%);
}

li:nth-child(5) {
  background-image : -webkit-linear-gradient(left, #507abd 0%, #507abd 50%, #f4f5f6 0%);
  background-image : -moz-linear-gradient(left, #507abd 0%, #507abd 50%, #f4f5f6 0%);
}

li:nth-child(6) {
  background-image : -webkit-linear-gradient(left, #6b408e 0%, #6b408e 50%, #f4f5f6 0%);
  background-image : -moz-linear-gradient(left, #6b408e 0%, #6b408e 50%, #f4f5f6 0%);
  border-bottom : none;
}

li:hover {
  -webkit-transition : 0.3s cubic-bezier(0.175, 0.285, 0.32,1.0) all;
  -moz-transition : 0.3s cubic-bezier(0.175, 0.285, 0.32,1.0) all;
  background-position : 0% 0%;
}

#toggle:checked ~ nav {
  margin-left:  -240px;
  -webkit-transition : 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all;
  -moz-transition : 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all;
}
</style>
<script>

</script>
<input type="checkbox" id="toggle"/>
<label for="toggle" class="fa fa-bars"></label>
<nav>
  <menu>
    <li><a href="#">home</a></li>
    <li><a href="#">about</a></li>
    <li><a href="#">places</a></li>
    <li><a href="#">apps</a></li>
    <li><a href="#">contact</a></li>
    <li><a href="#">shopping</a></li>
  </menu>
</nav>
[/html]

0

122

[html]
<style>
* {
  box-sizing: border-box;
}
body {
  height: 100%;
    background-color: #222120;
    background-image: url(https://cdn.wp.nginx.com/wp-content/the … -black.png);

}
h1{
  font-size:1em;
  text-align:center;
  color:#eee;
  letter-spacing: 1px;
  text-shadow: 1px 1px 1px rgba(0,0,0,0.9);
  padding: 20px;
}
.nav-container {
  width: 300px;
  box-shadow: 1px 3px 3px 3px black;
  transition: all 0.5s linear;
}
.nav {
  list-style-type: none;
  margin:0;
  padding:0;
}
li{
  height: 50px;
  position:relative;
  background:linear-gradient(#292929, #242424);
}
a {
  border-top: 1px solid rgba(255,255,255,0.1);
  border-bottom: 1px solid black;
  text-decoration: none;
  display:block;
  height:100%;
  width:100%;
  line-height:50px;
  color:#bbb;
  text-transform: uppercase;
  font-weight: bold;
  padding-left:25%;
  border-left: 5px solid transparent;
  letter-spacing: 1px;
  transition:all 0.3s linear;
}
.text {
  transition: all .4s linear;
}
li:hover .text{
margin-left:20px
}
.active a {
  color: #9b59b6;
  border-left:5px solid #9b59b6;
  background-color: #1B1B1B;
  outline:0;
}
li:not(.active):hover a{
  color: #eee;
  border-left:5px solid #FCFCFC;
  background-color: #1B1B1B;
}

span[class ^= "icon"]{
  position:absolute;
  left:20px;
  font-size:1.5em;
  transition: all 0.3s linear;
}

@media only screen and (max-width : 860px){
  .text{
    display:none;
  }
  .nav-container, a {
    width: 70px;
  }
  a:hover{
    width: 200px;
    z-index:1;
    border-top: 1px solid rgba(255,255,255,0.1);
    border-bottom: 1px solid black;
    box-shadow: 0 0 1px 1px black;
  }
  a:hover .text {
    display:block;
    padding-left: 30%;   
  }
 
}
@media only screen and (max-width: 480px){
  .nav-container, a{ width:50px; }
  span[class ^= "icon"]{left:8px;}
}
</style>
<script>

$('li').click(function(){
  $(this).addClass('active').siblings().removeClass('active');
});

</script>

<h1>Make Slow Resize screan to see the transition</h1>
<div class="nav-container">
  <ul class="nav">
    <li class="active">
      <a href="#">
        <span class="icon-home"></span>
        <span class="text">home</span>
      </a>
    </li>
    <li>
      <a href="#">
        <span class="icon-user"></span>
        <span class="text">About</span>
      </a>
    </li>
    <li>
      <a href="#">
         <span class="icon-play"></span>
          <span class="text">Portfolio</span>
      </a>
    </li>
    <li>
      <a href="#">
         <span class="icon-cogs"></span>
          <span class="text">Services</span>
      </a>
    </li>
    <li>
      <a href="#">
        <span class="icon-briefcase"></span>
          <span class="text">testmonials</span>
      </a>
    </li>
    <li>
      <a href="#">
         <span class="icon-calendar"></span>
          <span class="text">Contact us</span>
      </a>
    </li>
  </ul>
</div>

<script src="https://use.fontawesome.com/c9d2b81f44.js">
</script>

[/html]

0

123

[html]
<style>
p {
  line-height: 150%;
}

h1 {
  margin: 0;
  padding: 0;

  border-bottom: 5px solid #f3e8e5;

  font-family: 'Montserrat', sans-serif;
  color: #bb8f85;
}

a {
  text-decoration: none;
  color: #8b534c;
}

#post-body {
  margin: 0 15% 0 15%;
  padding: 4%;

  border-bottom: 10px solid #bb8f85;
  background: #f9f7f7;

  text-align: justify;
}

#post-body img {
  max-width: 25%;
  min-width: 10%;
  margin: 2% 0 0 2%;

  border-radius: 100%;
}

ul#menu-topo {
  margin: 0 auto;
  padding: 10px 0;

  list-style-type: none;

  font-family: 'Montserrat', sans-serif;
  font-size: 1em;
  text-align: center;
  text-transform: uppercase;
}

ul#menu-topo li {
  display: inline;

  margin: 0;
}

ul#menu-topo li a {
  display: inline-block;

  margin-right: 10px;
  margin-left: 10px;
  padding: 4px 10px;

  text-decoration: none;
}

.nav-toggle {
  display: none;
}

@media screen and (max-width: 800px) {
  body {
    margin: 0;
  }
  #post-body {
    margin: 5%;
  }
  .nav-menu {
    box-sizing: border-box;
    width: 100%;
    padding: 12px;

    background-color: #8b534c;

    table-layout: fixed;
  }
  ul#menu-topo {
    display: none;

    width: 100%;
    margin: 0;
    padding: 0;

    background-color: #8b534c;

    table-layout: fixed;

    transition: all .3s ease-in;
  }
  ul#menu-topo li {
    display: block;

    border-bottom: 1px solid #9a6760;

    line-height: 3;
    color: white;
  }
  #menu-topo li a {
    color: white;
  }
  ul#menu-topo li.hide {
    display: none !important;
  }
  #menu-topo li:hover {
    border-bottom: 1px solid #c77336;
    background-color: #c76926;
  }
  /****TOGGLE****/
  .nav-toggle-label:before {
    color: white;

    content: '☰';
  }
  .nav-toggle:checked + ul#menu-topo {
    display: table;

    margin-left: 0;
  }
}
</style>
<script>

</script>

<header class="nav-menu">
<label for="nav-toggle" class="nav-toggle-label"></label>
</header>

<input type="checkbox" id="nav-toggle" class="nav-toggle">       

<ul id="menu-topo">
<li class="nav-item"><a href="#">Home</a></li>
<li class="hide">•</li>
<li class="nav-item"><a href="#">About</a></li>
<li class="hide">•</li>
<li class="nav-item"><a href="#">Partners</a></li>
<li class="hide">•</li>
<li class="nav-item"><a href="#">Store</a></li>
</ul>

<div id="post-body">
  <h1>Human give me attention meow</h1>
 
  <img src="https://78.media.tumblr.com/dd690695a73d30b16edaaf5bdbc79b67/tumblr_ogzp1dlCao1qc9zfzo1_250.gif" align="right" alt="cat gif" />
 
  <p><b>Resize to see the menu!</b> Cat ipsum dolor sit amet, plan steps for world domination, yet run in circles, eat grass, throw it back up this human feeds me, i should be a god. Run in circles. Drink water out of the faucet loves cheeseburgers so flee in terror at cucumber discovered on floor.</p>

  <p>Destroy couch as revenge love to play with owner's hair tie lick the plastic bag knock over christmas tree purr for no reason but russian blue. Hola te quiero. Hiss at vacuum cleaner intrigued by the shower, meow kitty power! steal the warm chair right after you get up chase ball of string.</p>

  <p>Hide from vacuum cleaner sleep in the bathroom sink or stand in front of the computer screen, yet stares at human while pushing stuff off a table stand in front of the computer screen, and fall asleep on the washing machine, shake treat bag.</p>

  <p>Intently stare at the same spot leave hair everywhere flee in terror at cucumber discovered on floor or knock dish off table head butt cant eat out of my own dish. Hide at bottom of staircase to trip human hide when guests come over, for meowwww.</p>
</div>

[/html]

0

124

[html]
<style>
/* fonts  */
@import url('https://fonts.googleapis.com/css?family=Abel|Aguafina+Script|Artifika|Athiti|Condiment|Dosis|Droid+Serif|Farsan|Gurajada|Josefin+Sans|Lato|Lora|Merriweather|Noto+Serif|Open+Sans+Condensed:300|Playfair+Display|Rasa|Sahitya|Share+Tech|Text+Me+One|Titillium+Web');

body {
background: #DFC2F2;
background-image: linear-gradient( 135deg, #CE9FFC 10%, #7367F0 100%);
background-attachment: fixed;
background-size: cover;
}

#container{
box-shadow: 0 15px 30px 1px rgba(128, 128, 128, 0.31);
background: rgba(255, 255, 255, 0.90);
text-align: center;
border-radius: 5px;
overflow: hidden;
margin: 5em auto;
height: 350px;
width: 700px;

}

/* Product details  */
.product-details {
position: relative;
text-align: left;
overflow: hidden;
padding: 30px;
height: 100%;
float: left;
width: 40%;

}

/* Product Name */
#container .product-details h1{
font-family: 'Old Standard TT', serif;
display: inline-block;
position: relative;
font-size: 34px;
color: #344055;
margin: 0;

}

#container .product-details h1:before{
position: absolute;
content: '';
right: 0%;
top: 0%;
transform: translate(25px, -15px);
font-family: 'Farsan', cursive;
display: inline-block;
background: #FFA69E;
border-radius: 5px;
font-size: 14px;
padding: 5px;
color: #FFF;
margin: 0;
animation: chan-sh 6s ease infinite;

}

@keyframes chan-sh {
from  {content: 'free shipping';}
to  {content: 'New';}

}

/*Product Rating  */
.hint-star {
display: inline-block;
margin-left: 0.5em;
color: gold;
width: 50%;
}

/* The most important information about the product */
#container .product-details > p {
font-family: 'Farsan', cursive;
text-align: center;
font-size: 20px;
color: #7d7d7d;

}

/* control */

.control{
position: absolute;
bottom: 20%;
left: 22.8%;

}
/* the Button */
.btn {
transform: translateY(0px);
transition: 0.3s linear;
background: #49C608;
border-radius: 5px;
  position: relative;
  overflow: hidden;
cursor: pointer;
outline: none;
border: none;
color: #eee;
padding: 0;
margin: 0;

}

.btn:hover{transform: translateY(-4px);}

.btn span {
font-family: 'Farsan', cursive;
transition: transform 0.3s;
display: inline-block;
  padding: 10px 20px;
font-size: 1.2em;
margin:0;

}
/* shopping cart icon */
.btn .price, .shopping-cart{
background: #333;
border: 0;
margin: 0;
}

.btn .price {
transform: translateX(-10%); padding-right: 15px;
}

/* the Icon */
.btn .shopping-cart {
transform: translateX(-100%);
  position: absolute;
background: #333;
z-index: 1;
  left: 0;
  top: 0;
}

/* buy */
.btn .buy {z-index: 3; font-weight: bolder;}

.btn:hover .price {transform: translateX(-110%);}

.btn:hover .shopping-cart {transform: translateX(0%);}

/* product image  */
.product-image {
transition: all 0.3s ease-out;
display: inline-block;
position: relative;
overflow: hidden;
height: 100%;
float: right;
width: 50%;
display: inline-block;
}

#container img {width: 100%;height: 100%;}

.info {
    background: rgba(27, 26, 26, 0.9);
    font-family: 'Farsan', cursive;
    transition: all 0.3s ease-out;
    transform: translateX(-100%);
    position: absolute;
    line-height: 1.9;
    text-align: left;
    font-size: 120%;
    cursor: no-drop;
    color: #FFF;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
}

.info h2 {text-align: center}
.product-image:hover .info{transform: translateX(0);}

.info ul li{transition: 0.3s ease;}
.info ul li:hover{transform: translateX(50px) scale(1.3);}

.product-image:hover img {transition: all 0.3s ease-out;}
.product-image:hover img {transform: scale(1.2, 1.2);}

</style>
<script>
</script>
<div id="container">

<!-- Start Product details -->
<div class="product-details">
   
    <!-- Product Name -->
<h1>Biru Putaran</h1>
<!--     <span class="hint new">New</span> -->
<!--     <span class="hint free-shipping">Free Shipping</span> -->
<!--     the Product rating -->
<span class="hint-star star">
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star-half-o" aria-hidden="true"></i>
    <i class="fa fa-star-o" aria-hidden="true"></i>
</span>
   

<!-- The most important information about the product -->
    <p class="information">" Especially good for container gardening, the Angelonia will keep blooming all summer even if old flowers are removed. Once tall enough to cut, bring them inside and you'll notice a light scent that some say is reminiscent of apples. "</p>

   
   
<!--     Control -->
<div class="control">

<!-- Start Button buying -->
<button class="btn">
<!--     the Price -->
<span class="price">49 $</span>
<!--     shopping cart icon-->
   <span class="shopping-cart"><i class="fa fa-shopping-cart" aria-hidden="true"></i></span>
<!--     Buy Now / ADD to Cart-->
   <span class="buy">Buy Now</span>
</button>
<!-- End Button buying -->

</div>
   
</div>

<!-- End Product details   -->

<!-- Start product image & Information -->

<div class="product-image">

<img src="https://sc01.alicdn.com/kf/HTB1Cic9HFXXXXbZXpXXq6xXFXXX3/200006212/HTB1Cic9HFXXXXbZXpXXq6xXFXXX3.jpg" alt="Omar Dsoky">

<!-- product Information-->
<div class="info">
<h2>The Description</h2>
<ul>
    <li><strong>Sun Needs: </strong>Full Sun</li>
    <li><strong>Soil Needs: </strong>Damp</li>
    <li><strong>Zones: </strong>9 - 11</li>
    <li><strong>Height: </strong>2 - 3 feet</li>
    <li><strong>Blooms in: </strong>Mid‑Summer - Mid‑Fall</li>
    <li><strong>Features: </strong>Tolerates heat</li>
</ul>
</div>
</div>
<!--  End product image  -->

</div>

[/html]

0

125

[html]
<style>
@import url(https://fonts.googleapis.com/css?family … 00,300,700);

body {
  font-family: 'Roboto Slab', serif;
  font-weight: 300;
  font-size: 16px;
  line-height: 1.4em;
  color: #333;
  background: #eee;
  background-image: url(https://subtlepatterns.com/patterns/gplaypattern.png);
  background-position: center center;
}

h1 {
  margin: 0.5em 0 1em 0;
  font-size: 1.8em;
  font-weight: 700;
  color: #096AA3;
}

h2{
  font-weight: bold;
}

p {
  margin-bottom: 1em;
}

.animation {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.pageTitle sup
{
  font-size: .6em;
  color: #333;
}
.well {
  padding: 3%;
  margin: 20px auto;
  border:none;
  text-align: center;
}
.well p
{
  font-weight: 300;
}
.content p
{   
  font-weight: 300;
}
.cardContainer
{

  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -ms-transition: all .3s ease;
  transition: all .3s ease;

 
  /*depth of the elements */
  -webkit-perspective: 800px;
  -moz-perspective: 800px;
  -o-perspective: 800px;
  perspective: 800px;

  /*border: 1px solid #ff0000;*/
  padding-left: 1%;
}
.secondRow
{
  margin-top: -1.4%
}

.card
{
  width: 99%;
  height: 200px;
  cursor: pointer;
 
  /*transition effects */
  -webkit-transition: -webkit-transform 0.6s;
  -moz-transition: -moz-transform 0.6s;
  -o-transition: -o-transform 0.6s;
  transition: transform 0.6s;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -o-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.card.flipped
{
  -webkit-transform: rotateY( 180deg );
  -moz-transform: rotateY( 180deg );
  -o-transform: rotateY( 180deg );
  transform: rotateY( 180deg );
}
.card.flipped:
{
}

.card .front,
.card .back {
  display: block;
  height: 100%;
  width: 100%;
  line-height: 60px;
  color: white;
  text-align: center;
  font-size: 4em;
  position: absolute;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  box-shadow: 3px 5px 20px 2px rgba(0, 0, 0, 0.25);
  -webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.16), 0 2px 5px rgba(0, 0, 0, 0.26);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.16), 0 2px 5px rgba(0, 0, 0, 0.26);
}

.card .back {
  width: 100%;
  padding-left: 3%;
  padding-right: 3%;
  font-size: 16px;
  text-align: left;
  line-height: 25px;
}

.card .back {
  background: #03446A;
  -webkit-transform: rotateY( 180deg );
  -moz-transform: rotateY( 180deg );
  -o-transform: rotateY( 180deg );
  transform: rotateY( 180deg );
}

/*Colors for front and back applied here*/
.cardContainer:first-child .card .front {
  background: #2aa9e0;
}

.cardContainer:first-child .card .back {
  background: #2aa9e0;
}

.cardContainer:nth-child(2) .card .front {
  background: #f39c12;
}
.cardContainer:nth-child(2) .card .back {
  background: #f39c12;
}

.cardContainer:nth-child(3) .card .front {
  background: #27ae60;
}
.cardContainer:nth-child(3) .card .back {
  background: #27ae60;
}

.cardContainer:nth-child(4) .card .front
{
  background: #AD103C;
}
.cardContainer:nth-child(4) .card .back
{
  background: #AD103C;
}

h3.cardTitle {
  line-height: 1.2em;
  margin-top: 8%;
  font-weight: 600;
}
.content h3.cardTitle
{
  margin-top: 0%;
}

.content {
  padding: 4%;
  font-weight: 100;
  text-align: left;
  font-weight: bold;
}

@media all and (max-width: 1000px){
  h3.cardTitle{
      font-weight: 500;
       
  }
  .content p
  {
    margin-top: -15%;
    line-height: 1.2em;
  }
 
  .card
  {
   height:175px;
  }

}
@media all and (max-width : 752px) {

  .secondRow
  {
    margin-top: -3%;
  }
  .cardContainer:nth-child(3),.cardContainer:nth-child(4)
  {
    margin-top: 3%;
  }

}
@media all and (max-width : 390px) {

  .card
  {
  width:100%;
   height:150px;
  }
  .secondRow
  {
    margin-top: -9%;
  }
  .well
  {
  padding: 1%;
  }
   .cardContainer:nth-child(3),.cardContainer:nth-child(4)
  {
    margin-top: 5%;
  }
  h3.cardTitle
  {
   font-weight: 500;     
  }
  .content p
  {
    margin-top: -20%;
    line-height: 1.2em;
  }
  .cardWrapper
  {
    margin-left: 4%;
  }

}
</style>
<script>

        $('.card').click(function(){
          $(this).toggleClass('flipped');
        });
</script>

<div class="container">
        <div class="well">
          <h1 class="pageTitle">3D Flip Card Effect</h1>
          <p>Crafted with CSS3</p>
         
        </div>
        <div class="cardWrapper">

            <!-- first Row -->
            <div class="row">
                <div class="col-lg-3 col-md-3 col-sm-3 col-xs-6 cardContainer">
                  <div class="card">
                    <div class="front"><h3 class="cardTitle">Flip me!</h3></div>
                    <div class="back">
                      <div class="content">
                        <h3 class="cardTitle">I was made with CSS3</h3>
                        <br/>
                        <p id="happy"></p>
                      </div>
                    </div>
                  </div>
                </div>

                 <div class="col-lg-3 col-md-3 col-sm-3 col-xs-6 cardContainer">
                  <div class="card">
                    <div class="front"><h3 class="cardTitle">Flip me!</h3></div>
                    <div class="back">
                      <div class="content">
                        <h3 class="cardTitle">I was made with JQuery</h3>
                        <br/>
                        <p id="laugh"></p>
                      </div>
                    </div>
                  </div>
                </div>

                <div class="col-lg-3 col-md-3 col-sm-3 col-xs-6 cardContainer">
                  <div class="card">
                    <div class="front"><h3 class="cardTitle">Flip me!</h3></div>
                    <div class="back">
                      <div class="content">
                        <h3 class="cardTitle">Bootstrap is my mother</h3>
                        <br/>
                        <p id="sick"></p>
                      </div>
                    </div>
                  </div>
                </div>

                <div class="col-lg-3 col-md-3 col-sm-3 col-xs-6 cardContainer">
                  <div class="card">
                    <div class="front"><h3 class="cardTitle">Flip me!</h3></div>
                    <div class="back">
                      <div class="content">
                        <h3 class="cardTitle">Welldone!</h3>
                        <br/>
                        <p id="sad"></p>
                      </div>
                    </div>
                  </div>
                </div>
            </div>
            <!-- first Row End -->
        </div><!--cardWrapper Ends-->
         
      </div>

[/html]

0

126

[html]
<style>
:root {
--hue: 223;
--bg: hsl(var(--hue),10%,90%);
--fg: hsl(var(--hue),10%,10%);
--trans-dur: 0.3s;
font-size: calc(16px + (24 - 16) * (100vw - 320px) / (2560 - 320));
}

.icon-btns {
display: grid;
grid-gap: 3em;
grid-template-columns: repeat(2,1fr);
margin: auto;
padding: 3em 0;
}
.icon-btn {
background-color: transparent;
outline: transparent;
position: relative;
width: 4.5em;
height: 4.5em;
perspective: 24em;
transform-style: preserve-3d;
-webkit-tap-highlight-color: transparent;
border: none;
}
.icon-btn__back,
.icon-btn__front,
.icon-btn__label {
transition:
    opacity var(--trans-dur) cubic-bezier(0.83,0,0.17,1),
    transform var(--trans-dur) cubic-bezier(0.83,0,0.17,1);
}
.icon-btn__back,
.icon-btn__front {
border-radius: 1.25em;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.icon-btn__back {
background: linear-gradient(hsl(var(--hue),10%,50%),hsl(208,10%,50%));
box-shadow: 0.5em -0.5em 0.75em hsla(var(--hue),10%,10%,0.15);
display: block;
transform: rotate(15deg);
transform-origin: 100% 100%;
}
.icon-btn__front {
background-color: hsla(0,0%,100%,0.3);
box-shadow: 0 0 0 0.125em hsla(0,0%,100%,0.3) inset;
backdrop-filter: blur(0.75em);
-webkit-backdrop-filter: blur(0.75em);
display: flex;
transform-origin: 80% 50%;
}
.icon-btn--blue .icon-btn__back {
background: linear-gradient(hsl(var(--hue),90%,50%),hsl(208,90%,50%));
}
.icon-btn--green .icon-btn__back {
background: linear-gradient(hsl(123,90%,40%),hsl(108,90%,40%));
}
.icon-btn--indigo .icon-btn__back {
background: linear-gradient(hsl(253,90%,50%),hsl(238,90%,50%));
}
.icon-btn--purple .icon-btn__back {
background: linear-gradient(hsl(283,90%,50%),hsl(268,90%,50%));
}
.icon-btn--red .icon-btn__back {
background: linear-gradient(hsl(3,90%,50%),hsl(348,90%,50%));
}
.icon-btn--orange .icon-btn__back {
background: linear-gradient(hsl(43,90%,50%),hsl(28,90%,50%));
}
.icon-btn__icon {
margin: auto;
width: 1.5em;
height: 1.5em;
}
.icon-btn__label {
font-size: 0.75em;
line-height: 2;
opacity: 0;
position: absolute;
top: 100%;
right: 0;
left: 0;
transform: translateY(0);
color: #fff;
}
.icon-btn:focus-visible .icon-btn__back,
.icon-btn:hover .icon-btn__back {
transform: rotate(22.5deg);
}
.icon-btn:focus-visible .icon-btn__front,
.icon-btn:hover .icon-btn__front {
transform: translateZ(3em) rotateX(20deg) rotateY(20deg);
}
.icon-btn:focus-visible .icon-btn__label,
.icon-btn:hover .icon-btn__label {
opacity: 1;
transform: translateY(20%);
}
.sprites {
display: block;
position: fixed;
transform: translateY(-100%);
}

/* Dark theme */
@media (prefers-color-scheme: dark) {
:root {
    --bg: hsl(var(--hue),10%,30%);
    --fg: hsl(var(--hue),10%,90%);
}
}

/* Beyond mobile */
@media (min-width: 768px) {
.icon-btns {
    grid-template-columns: repeat(3,1fr);
}
}
</style>

<container style="background: #6e5a5a;
display: block;
padding: 20px 0px 10px 60px;">
<svg class="sprites" display="none">
<defs>
    <linearGradient id="icon-grad" x1="0" y1="0" x2="1" y2="1">
    <stop offset="0%" stop-color="#fff" />
    <stop offset="100%" stop-color="#222" />
    </linearGradient>
    <mask id="icon-mask">
    <rect x="0" y="0" width="24" height="24" fill="url(#icon-grad)" />
    </mask>
    <symbol id="files" viewBox="0 0 24 24">
    <g fill="hsl(0,0%,100%)" mask="url(#icon-mask)">
        <path d="m2.003,3h3.997c1.105,0,2,.895,2,2h0s14.005,0,14.005,0c1.102,0,1.995.893,1.995,1.995v1.005H0v-2.997c0-1.106.897-2.003,2.003-2.003Z"/>
        <path d="m22.005,21H1.996c-1.102,0-1.996-.893-1.996-1.996v-9.004l24-.172v9.177c0,1.102-.893,1.995-1.995,1.995Z"/>
    </g>
    </symbol>
    <symbol id="books" viewBox="0 0 24 24">
    <g fill="hsl(0,0%,100%)" mask="url(#icon-mask)">
        <path d="m14.113,22.696c-.356.389-1.022.176-1.022-.351V3.287c1.091-1.091,2.277-1.558,3.509-1.83,2.182-.481,4.125-.377,5.314-.222,1.317.171,2.087,1.342,2.087,2.495v14.357c0,1.553-1.296,2.777-2.802,2.727-1.246-.041-2.975.003-4.541.382-1.195.289-1.954.856-2.544,1.501Z"/>
        <path d="m9.887,22.696c.356.389,1.022.176,1.022-.351V3.287c-1.091-1.091-2.277-1.558-3.509-1.83-2.182-.481-4.125-.377-5.314-.222C.77,1.406,0,2.577,0,3.729v14.357c0,1.553,1.296,2.777,2.802,2.727,1.246-.041,2.975.003,4.541.382,1.194.289,1.954.856,2.544,1.501Z"/>
    </g>
    </symbol>
    <symbol id="graph" viewBox="0 0 24 24">
    <g fill="hsl(0,0%,100%)" mask="url(#icon-mask)">
        <rect rx="1" ry="1" x="0" y="12" width="6" height="12" />
        <rect rx="1" ry="1" x="9" y="0" width="6" height="24" />
        <rect rx="1" ry="1" x="18" y="6" width="6" height="18" />
    </g>
    </symbol>
    <symbol id="weather" viewBox="0 0 24 24">
    <g fill="hsl(0,0%,100%)" mask="url(#icon-mask)">
        <path d="m2.65,10.95c.916-.546,1.986-.858,3.129-.858.138,0,.276.004.414.013.388-1.331,1.13-2.499,2.113-3.403-.187-2.126-1.971-3.791-4.144-3.791-2.299,0-4.162,1.863-4.162,4.162,0,1.766,1.1,3.273,2.65,3.877Z"/>
        <path d="m19.687,12.464s-.003,0-.005,0c.002-.072.005-.144.005-.216,0-3.454-2.8-6.254-6.253-6.254-3.235,0-5.897,2.457-6.22,5.607-.454-.14-.936-.216-1.435-.216-2.679,0-4.852,2.172-4.852,4.852s2.172,4.852,4.852,4.852h13.908c2.382,0,4.313-1.931,4.313-4.312,0-2.382-1.931-4.313-4.313-4.313Z"/>
    </g>
    </symbol>
    <symbol id="pen" viewBox="0 0 24 24">
    <g fill="hsl(0,0%,100%)" mask="url(#icon-mask)">
        <path d="M3.1,0C2.5-0.1,2.1,0.6,2.5,1L10,8.5c0.2,0,0.4-0.1,0.6-0.1c1.2,0,2.2,1,2.2,2.2c0,1.2-1,2.2-2.2,2.2c-1.2,0-2.2-1-2.2-2.2c0-0.2,0-0.4,0.1-0.6L1,2.5C0.6,2.1-0.1,2.5,0,3.1L3.4,17c0.1,0.4,0.4,0.7,0.9,0.8l6.4,1.3c-0.2,0.4-0.1,0.9,0.2,1.2l3.3,3.3c0.4,0.4,1.1,0.4,1.6,0l7.8-7.8c0.4-0.4,0.4-1.1,0-1.6l-3.3-3.3c-0.3-0.3-0.8-0.4-1.2-0.2l-1.3-6.4c-0.1-0.4-0.4-0.8-0.8-0.9L3.1,0z"/>
    </g>
    </symbol>
    <symbol id="heart" viewBox="0 0 24 24">
    <g fill="hsl(0,0%,100%)" mask="url(#icon-mask)">
        <path d="m.204,9.117c.272,1.039.791,1.942,1.558,2.709l10.238,10.597,10.238-10.597c.767-.767,1.287-1.67,1.558-2.709.272-1.039.272-2.07,0-3.093-.272-1.023-.791-1.918-1.558-2.685-.767-.767-1.662-1.287-2.685-1.558-1.023-.272-2.062-.272-3.117,0-1.055.272-1.95.791-2.685,1.558l-1.75,2.11-1.75-2.11c-.767-.767-1.662-1.287-2.685-1.558s-2.054-.272-3.093,0c-1.039.272-1.942.791-2.709,1.558-.767.767-1.287,1.662-1.558,2.685-.272,1.023-.272,2.054,0,3.093Z"/>
    </g>
    </symbol>
</defs>
</svg>
<div class="icon-btns">
<button class="icon-btn icon-btn--blue" type="button">
    <span class="icon-btn__back"></span>
    <span class="icon-btn__front">
    <svg class="icon-btn__icon" width="24px" height="24px" aria-hidden="true">
        <use xlink:href="#files" />
    </svg>
    </span>
    <span class="icon-btn__label">Files</span>
</button>
<button class="icon-btn icon-btn--purple" type="button">
    <span class="icon-btn__back"></span>
    <span class="icon-btn__front">
    <svg class="icon-btn__icon" width="24px" height="24px" aria-hidden="true">
        <use xlink:href="#books" />
    </svg>
    </span>
    <span class="icon-btn__label">Books</span>
</button>
<button class="icon-btn icon-btn--red" type="button">
    <span class="icon-btn__back"></span>
    <span class="icon-btn__front">
    <svg class="icon-btn__icon" width="24px" height="24px" aria-hidden="true">
        <use xlink:href="#heart" />
    </svg>
    </span>
    <span class="icon-btn__label">Health</span>
</button>
<button class="icon-btn icon-btn--indigo" type="button">
    <span class="icon-btn__back"></span>
    <span class="icon-btn__front">
    <svg class="icon-btn__icon" width="24px" height="24px" aria-hidden="true">
        <use xlink:href="#weather" />
    </svg>
    </span>
    <span class="icon-btn__label">Weather</span>
</button>
<button class="icon-btn icon-btn--orange" type="button">
    <span class="icon-btn__back"></span>
    <span class="icon-btn__front">
    <svg class="icon-btn__icon" width="24px" height="24px" aria-hidden="true">
        <use xlink:href="#pen" />
    </svg>
    </span>
    <span class="icon-btn__label">Notes</span>
</button>
<button class="icon-btn icon-btn--green" type="button">
    <span class="icon-btn__back"></span>
    <span class="icon-btn__front">
    <svg class="icon-btn__icon" width="24px" height="24px" aria-hidden="true">
        <use xlink:href="#graph" />
    </svg>
    </span>
    <span class="icon-btn__label">Spreadsheets</span>
</button>
</div>
</container>
[/html]

0

127

[html]
<style>
* {
  box-sizing: border-box;
}
html {
  height: -webkit-fill-available;
}
body {
  --angle: 270deg;
  --hue1: 40;
  --hue2: 189;
  --hue3: 330;
  --hue4: 270;
  --light: 50%;
  --l: 0.40;
  --r1: oklch(var(--l) 0.1 60 / 0.75);

  background-image:
    linear-gradient(var(--angle), hsl(var(--hue1), 100%, var(--light)), hsl(var(--hue2), 100%, var(--light)));
  font-family: 'Montserrat', sans-serif;
  margin: 0;
  min-height: 100vh;
  min-height: -webkit-fill-available;
  overflow: hidden;
  padding: 1ch;
}
body:before {
  content: "";
  position: fixed;
  inset: 0;
  -webkit-mask-image: linear-gradient(to bottom, transparent, black);
          mask-image: linear-gradient(to bottom, transparent, black);
  background: linear-gradient(var(--angle), hsl(var(--hue3), 100%, calc(var(--light) + 20%)), hsl(var(--hue4), 50%, calc(var(--light) - 10%)));
}

.daynight {
  background-color: hsla(0, 0%, 0%, 0.15);
  border: 2px solid var(--r1);
  border-radius: 3em;
  color: hsla(0, 0%, 100%, 0.8);
  display: grid;
  padding: .75em;
  position: relative;
  width: 100%;
}
.daynight-icons {
  display: flex;
  justify-content: space-between;
  pointer-events: none;
  position: relative;
  z-index: 1;
}
.daynight-icons svg {
  fill: none;
  height: 2em;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.25;
  stroke: currentColor;
  width: 2em;
}
.daynight-input {
  appearance: none;
  background: transparent;
  inset: 0;
  position: absolute;
}
.daynight-input::-webkit-slider-runnable-track {
  height: 100%;
  width: 100%;
}
.daynight-input::-webkit-slider-thumb {
  appearance: none;
  aspect-ratio: 1 / 1;
  background: var(--r1);
  border-radius: 100%;
  height: 100%;
}

/* -moz-stuff */
@-moz-document url-prefix() {
  .daynight-input {
     height: 100%;
     width: 100%;
  }
}
.daynight-input::-moz-range-track {
  border-radius: 3em;
  height: 100%;
  width: 100%;
}
.daynight-input::-moz-range-thumb {
  appearance: none;
  aspect-ratio: 1 / 1;
  background: hsl(27.86deg 46.88% 45.84% / 75%);
  border-radius: 100%;
  height: 48px;
  width: 48px;
}

/* Stars */
#stars {
  inset: 60px 0 0 0;
  opacity: calc(50% - var(--light));
  position: fixed;
  z-index: -1;
}

#stars circle {
  animation: fade var(--animdur) linear infinite;
}

#stars line {
  opacity: 0.1;
}

@keyframes fade {
  0%, 100% { opacity: 0.25 }
  50% { opacity: 1 }
}
</style>
<script>
const daynight = document.getElementById('daynight');
daynight.addEventListener('input', () => {
  let angle = 270 - ((270 / daynight.max) * (2*daynight.value));
  let hue = 40 - ((40/daynight.max) * (2*daynight.value));
  let light = daynight.value > 50 ? (100 - ((110/daynight.max) * daynight.value)) : 50;
  if (angle < 0) angle = 0;
  if (hue < 0) hue = 0;
  if (light < 0) light = 0;
  document.body.style.setProperty('--l', `${(((daynight.value - 0) * (60 - 40)) / (100 - 0) + 40)/100}`);
  document.body.style.setProperty('--angle', `${angle}deg`);
  document.body.style.setProperty('--hue1', `${hue}`);
  document.body.style.setProperty('--light', `${light}%`);
});

/* Init */
daynight.dispatchEvent(new Event('input'));

function checkDistance(x1, y1, x2, y2){
  return Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2));
}

function coords(amount, w, h) {
  return new Array(amount).fill().map(() => {
    let x = Math.random() - 0.5;
    let y = Math.random() - 0.5;
    x = (x * 0.96875 + 0.5) * w;
    y = (y * 0.96875 + 0.5) * h;
    return [x, y]
  })
}

function drawSVGParticles(svg, settings) {
  let c = '', l = '';
  let points = coords(settings.particles, settings.width, settings.height);
  const length = points.length;
  points = points.concat(settings.static);
  points.forEach((coord, index) => {
    const [x, y] = [...coord];
    const static = index >= length;
    l+= points.map(arr => {
      const [x1, y1] = [...arr];
      const distance = checkDistance(x, y, x1, y1);
      const alpha = 1 - distance / settings.distance;
      if (alpha > 0) return `<line x1="${x1}" y1="${y1}" x2="${x}" y2="${y}" ${static ? `data-static`:''} stroke="hsla(${settings.fill}, ${alpha})" stroke-width="${settings.strokeWidth}" />`}).join('');
    c+= `<circle cx="${x}" cy="${y}" style="--animdel:${random(0,2000)}ms;--animdur:${random(2000,10000)}ms" ${static ? `data-static`:''} r="${static ? settings.staticRad : random(settings.minRad, settings.maxRad)}" fill="${static ? `hsl(${settings.staticFill})` : `hsl(${settings.fill})`}" />`;
  });
  svg.innerHTML = l + c;
}

function random(min, max) {
  return Math.floor(Math.random() * (max - min) + min);
}

const settings = {
  distance: 500,
  fill: '41, 63%, 75%',
  fitWidth: true,
  height: document.body.offsetHeight,
  maxRad: 9,
  minRad: 2,
  particles: 40,
  static: [
    [100, 100],
    [500, 200],
    [700, 150]
  ],
  staticFill: '41, 63%, 90%',
  staticRad: 11,
  stroke: '0, 0%, 0%',
  strokeWidth: 0.5,
  width: document.body.offsetWidth
}

const svg = document.getElementById('stars');
svg.setAttribute('viewBox', `0 0 ${document.body.offsetWidth} ${document.body.offsetHeight}`)
svg.width = document.body.offsetWidth;
svg.height = document.body.offsetHeight;
drawSVGParticles(svg, settings);
</script>

<svg id="stars" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 1000 1000"></svg>

<label class="daynight">
  <input type="range" min="0" max="100" value="80" id="daynight" class="daynight-input">
  <span class="daynight-icons">
    <svg viewBox="0 0 24 24">
      <path d="M3 17h1m16 0h1m-15.4 -6.4l.7 .7m12.1 -.7l-.7 .7m-9.7 5.7a4 4 0 0 1 8 0"></path>
      <path d="M3 21l18 0"></path>
    </svg>
    <svg viewBox="0 0 24 24">
      <path d="M12 12m-4 0a4 4 0 1 0 8 0a4 4 0 1 0 -8 0"></path>
      <path d="M3 12h1m8 -9v1m8 8h1m-9 8v1m-6.4 -15.4l.7 .7m12.1 -.7l-.7 .7m0 11.4l.7 .7m-12.1 -.7l-.7 .7"></path>
      </svg>
    <svg viewBox="0 0 24 24">   
      <path d="M14.828 14.828a4 4 0 1 0 -5.656 -5.656a4 4 0 0 0 5.656 5.656z"></path>
      <path d="M6.343 17.657l-1.414 1.414"></path>
      <path d="M6.343 6.343l-1.414 -1.414"></path>
      <path d="M17.657 6.343l1.414 -1.414"></path>
      <path d="M17.657 17.657l1.414 1.414"></path>
      <path d="M4 12h-2"></path>
      <path d="M12 4v-2"></path>
      <path d="M20 12h2"></path>
      <path d="M12 20v2"></path>
    </svg>
      <svg viewBox="0 0 24 24">
      <path d="M3 13h1"></path>
      <path d="M20 13h1"></path>
      <path d="M5.6 6.6l.7 .7"></path>
      <path d="M18.4 6.6l-.7 .7"></path>
      <path d="M8 13a4 4 0 1 1 8 0"></path>
      <path d="M3 17h18"></path>
      <path d="M7 20h5"></path>
      <path d="M16 20h1"></path>
      <path d="M12 5v-1"></path>
    </svg>
    <svg viewBox="0 0 24 24">
      <path d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z"></path>
    </svg>
    <svg viewBox="0 0 24 24">
      <path d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z"></path>
      <path d="M17 4a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2"></path>
      <path d="M19 11h2m-1 -1v2"></path>
    </svg>
  </span>
</label>

[/html]

0

128

[html]
<style>
@import url('https://fonts.googleapis.com/css?family=Griffy');
:root {
--f1: 'Griffy', cursive;
--c1: #aaeeee;
--c2: #339999;
--c3: #cc9999;
--c4: #996699;
--c5: #993333;
}

text{  font-family: var(--f1);
  font-size: 4em;
  fill: var(--c3);
  animation: changeColor 20s infinite;
}
.thespiral{
  width: 500px;
  height: auto;
  animation: spin 20s alternate infinite;
 
}
@keyframes changeColor{
  25% {
    fill: var(--c4);
  }
  50% {
    fill: var(--c5);
  }
  75% {
    fill: var(--c2);
  }
  100% {
    fill: var(--c3);
  }
}
@keyframes spin{
  from{
    transform: rotate(360deg) scale(.5);
  }
  to{
  transform: rotate(-360deg) scale(1);
  }
}
</style>
<script>

</script>

<div class="thespiral">
<svg id="spiral" xmlns="http://www.w3.org/2000/svg" viewBox="-50 -50 1000 1000">
  <defs>
    <style>
      .cls-1 {
        fill: transparent;
        stroke: transparent;
        stroke-miterlimit: 10;
        stroke-width: 6.64px;
      }
    </style>
  </defs>
  <title>spiralpath</title>
  <path id="curve" class="cls-1" d="M919.3,734.91c0-258.33,209.41-467.74,467.73-467.74,232.5,0,421,188.47,421,421,0,209.25-169.63,378.87-378.87,378.87-188.32,0-341-152.66-341-341,0-169.49,137.4-306.88,306.88-306.88,152.54,0,276.2,123.65,276.2,276.19,0,137.28-111.29,248.58-248.58,248.58-123.55,0-223.72-100.17-223.72-223.72,0-111.2,90.15-201.35,201.35-201.35a181.21,181.21,0,0,1,181.21,181.21A163.09,163.09,0,0,1,1418.4,863.14a146.78,146.78,0,0,1-146.78-146.78,132.1,132.1,0,0,1,132.1-132.1,118.89,118.89,0,0,1,118.9,118.89,107,107,0,0,1-107,107,96.31,96.31,0,0,1-96.3-96.31A86.67,86.67,0,0,1,1406,627.18a78,78,0,0,1,78,78,70.2,70.2,0,0,1-70.21,70.21,63.18,63.18,0,0,1-63.18-63.18,56.87,56.87,0,0,1,56.87-56.87,51.17,51.17,0,0,1,51.17,51.18,46.06,46.06,0,0,1-46.06,46.06,41.45,41.45,0,0,1-41.45-41.46" transform="translate(-918.8 -266.67)"/>
  <text>
    <textPath xlink:href="#curve">
      The time has come ●
The walrus said ●
To talk of many things: ●
Of shoes- and ships- ●
And sealing wax- ●
Of cabbages and kings- ●
And why the sea is boiling hot- ●
And whether pigs have wings ~
      Lewis Carol
    </textPath>
  </text>
</svg>
  </div>

[/html]

0

129

[html]
<style>
@font-face {
  font-family: "Exoct";
  src: url("https://assets.codepen.io/1480814/films.EXH_____.ttf")
}
figure {
  width: 100%;
  aspect-ratio: 1;
  margin: 0 0 60px;
  padding: 5px 20px 0;
  box-sizing: border-box;
  display: grid;
  grid-template-rows: 100%;
  cursor: pointer;
  position: relative;
  filter: drop-shadow(0 0 20px rgb(0 0 0/50%));
}
figure:before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: top/cover;
  transform-origin: bottom;
  filter: brightness(.9);
  transition: .5s;
}
figure:before {
  background-image: url(https://assets.codepen.io/1480814/necro-back.jpg)
}
figure + figure:before {
  background-image: url(https://assets.codepen.io/1480814/druid-bac.jpg)
}
img {
  grid-area: 1/1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  filter: contrast(.8) brightness(.7);
  place-self: end center;
  transition: .5s;
}
figcaption {
  grid-area: 1/1;
  width: calc(100% + 40px);
  font-family: Exoct;
  color: #fff;
  font-size: min(32px,5vmin);
  text-align: center;
  place-self: end center;
  transform: perspective(500px) translateY(100%) rotateX(-90deg);
  backface-visibility: hidden;
  transform-origin: top;
  background: #000;
  transition: .5s;
}
figure:hover img {
  width: 130%;
  height: 255%;
  filter: contrast(1);
}
figure:hover::before {
  filter: brightness(.3);
  transform: perspective(500px) rotateX(60deg);
}
figure:hover figcaption{
  transform: perspective(500px)translateY(100%) rotateX(-30deg);
}

</style>

<container style="width: 200px;display: block;">
<figure>
    <img src="https://assets.codepen.io/1480814/necro.png" alt="Necromancer">
    <figcaption>The Necro</figcaption>
</figure>
<figure>
    <img src="https://assets.codepen.io/1480814/druide.png" alt="Druid">
    <figcaption>The Druid</figcaption>
</figure>
</container>   
[/html]

0

130

[html]
<style>
/* btn */
.menu {
position: relative;
display:  inline-block;
width: 30px;
height: 30px;
margin: 25px;
}
.menu span {
margin: 0 auto;
position: relative;
top: 12px;
}
.menu span:before, .menu span:after {
position: absolute;
content: '';
}
.menu span, .menu span:before, .menu span:after {
width: 30px;
height: 6px;
background-color: #000;
display: block;
}
.menu span:before {
margin-top: -12px;
}
.menu span:after {
margin-top: 12px;
}
/* --- btn --- */

/* examples */

/* example 1 */
.example1 {
  -webkit-transform: rotate(0deg); transform: rotate(0deg);
-webkit-transition: 0.2s ease; transition: 0.2s ease;
}
.example1:hover {
-webkit-transform: rotate(90deg); transform: rotate(90deg);
}

/* example 2 */
.example2 span:before, .example2 span:after {
-webkit-transition: 0.2s ease; transition: 0.2s ease;
}
.example2:hover span:before, .example2:hover span:after {
margin-top: 0px;
}

/* example 3 */
.example3 span {
-webkit-transition: 0.2s ease 0s; transition: 0.2s ease 0s;
}
.example3 span:before, .example3 span:after {
-webkit-transition-property: margin, opacity; transition-property: margin, opacity;
-webkit-transition-duration: 0.2s, 0s; transition-duration: 0.2s, 0s;
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example3:hover span {
width: 6px;
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example3:hover span:before, .example3:hover span:after {
margin-top: 0px;
opacity: 0;
-webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}

/* example 4 */
.example4 span {
-webkit-transition: 0.2s ease 0s; transition: 0.2s ease 0s;
}
.example4 span:before, .example4 span:after {
  -webkit-transition-property: margin, opacity; transition-property: margin, opacity;
-webkit-transition-duration: 0.2s, 0s; transition-duration: 0.2s, 0s;
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example4:hover span {
-webkit-transform: rotate(90deg); transform: rotate(90deg);
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example4:hover span:before, .example4:hover span:after {
margin-top: 0px;
opacity: 0;
-webkit-transition-delay: 0s, .2s; transition-delay: 0s, .2s;
}

/* example 5 */
.example5 span {
-webkit-transition-duration: 0s; transition-duration: 0s;
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example5:hover span {
background-color: rgba(0,0,0,0.0);
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example5 span:before {
-webkit-transition-property: margin, -webkit-transform; transition-property: margin, transform;
-webkit-transition-duration: 0.2s; transition-duration: 0.2s;
-webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
}
.example5:hover span:before {
margin-top: 0;
-webkit-transform: rotate(45deg); transform: rotate(45deg);
-webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}
.example5 span:after {
-webkit-transition-property: margin, -webkit-transform; transition-property: margin, transform;
-webkit-transition-duration: 0.2s; transition-duration: 0.2s;
-webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
}
.example5:hover span:after {
margin-top: 0;
-webkit-transform: rotate(-45deg); transform: rotate(-45deg);
-webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}

/* example 6 */
.example6 span {
-webkit-transition-duration: 0s; transition-duration: 0s;
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example6:hover span {
background-color: rgba(0,0,0,0.0);
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example6 span:before {
-webkit-transition-property: margin, -webkit-transform; transition-property: margin, transform;
-webkit-transition-duration: 0.2s; transition-duration: 0.2s;
-webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
-webkit-transform-origin: 100% 100%; transform-origin: 100% 100%;
}
.example6:hover span:before {
margin-top: 0;
-webkit-transform: rotate(22.5deg) skewX(22.5deg); transform: rotate(22.5deg) skewX(22.5deg);
-webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}
.example6 span:after {
-webkit-transition-property: margin, -webkit-transform; transition-property: margin, transform;
-webkit-transition-duration: 0.2s; transition-duration: 0.2s;
-webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
-webkit-transform-origin: 100% 0%; transform-origin: 100% 0%;
}
.example6:hover span:after {
margin-top: 0;
-webkit-transform: rotate(-22.5deg) skewX(-22.5deg); transform: rotate(-22.5deg) skewX(-22.5deg);
-webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}

/* example 7 */
.example7 span {
-webkit-transition-duration: 0s; transition-duration: 0s;
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example7:hover span {
background-color: rgba(0,0,0,0.0);
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example7 span:before {
-webkit-transition-property: margin, -webkit-transform; transition-property: margin, transform;
-webkit-transition-duration: 0.2s; transition-duration: 0.2s;
-webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
-webkit-transform-origin: 0% 100%; transform-origin: 0% 100%;
}
.example7:hover span:before {
margin-top: 0;
-webkit-transform: rotate(22.5deg) skewX(22.5deg); transform: rotate(22.5deg) skewX(22.5deg);
-webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}
.example7 span:after {
-webkit-transition-property: margin, -webkit-transform; transition-property: margin, transform;
-webkit-transition-duration: 0.2s; transition-duration: 0.2s;
-webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
-webkit-transform-origin: 0% 0%; transform-origin: 0% 0%;
}
.example7:hover span:after {
margin-top: 0;
-webkit-transform: rotate(-22.5deg) skewX(-22.5deg); transform: rotate(-22.5deg) skewX(-22.5deg);
-webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}

/* example 8 */
.example8 span {
-webkit-transition: 0.2s ease 0s; transition: 0.2s ease 0s;
}
.example8 span:before, .example8 span:after {
-webkit-transition-property: margin, opacity; transition-property: margin, opacity;
-webkit-transition-duration: 0.2s, 0s; transition-duration: 0.2s, 0s;
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example8:hover span {
width: 16px;
height: 16px;
margin-top: -5px;
-webkit-border-radius: 50%; border-radius: 50%;
-webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}
.example8:hover span:before, .example8:hover span:after {
margin-top: 0px;
opacity: 0;
-webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}

/* example 9 */
.example9 span {
-webkit-transition-property: margin, width; transition-property: margin, width;
-webkit-transition-duration: 0.2s; transition-duration: 0.2s;
-webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
}
.example9:hover span {
margin-top: 6px;
width: 20px;
-webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}
.example9 span:after {
  left: 0;
-webkit-transition-property: margin, left; transition-property: margin, left;
-webkit-transition-duration: 0.2s; transition-duration: 0.2s;
-webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
}
.example9:hover span:after {
margin-top: 6px;
left: -5px;
-webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}
.example9 span:before {
  left: 0;
-webkit-transition-property: margin, width, left; transition-property: margin, width, left;
-webkit-transition-duration: 0.2s; transition-duration: 0.2s;
-webkit-transition-delay: 0.2s, 0s, 0s; transition-delay: 0.2s, 0s, 0s;
}
.example9:hover span:before {
margin-top: -6px;
width: 10px;
left: 5px;
-webkit-transition-delay: 0s, 0.2s, 0.2s; transition-delay: 0s, 0.2s, 0.2s;
}
</style>
<a href="#" class="menu example1"><span></span></a>
<a href="#" class="menu example2"><span></span></a>
<a href="#" class="menu example3"><span></span></a>
<a href="#" class="menu example4"><span></span></a>
<a href="#" class="menu example5"><span></span></a>
<a href="#" class="menu example6"><span></span></a>
<a href="#" class="menu example7"><span></span></a>
<a href="#" class="menu example8"><span></span></a>
<a href="#" class="menu example9"><span></span></a>

[/html]

0

131

[html]
<style>
.button {
display: flex;
justify-content: center;
align-items: center;
position: relative;
z-index: 0;
display: flex;
width: 240px;
height: 80px;
border-radius: 40px;
box-sizing: border-box;
border: solid 1px #fff;
text-decoration: none; }
.button::before,
.button::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: calc(100% - 6px);
    height: calc(100% - 6px);
    border-radius: 40px;
    transition: all ease 0.8s;
}
.button::after {
    mix-blend-mode: multiply;
}
.glow_back {
    position: absolute;
    bottom: 6px;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 2;
    width: 218px;
    height: 44px;
    transition: all ease 0.8s;
    mix-blend-mode: overlay;
    clip-path: path(
    "m209.63,21.67l-2.74.22,4.07,2.6-9.12-2.63,4.9,3.26.24,1.34-6.87-2.78,11.15,8.28-5.67-2.31-1.76.13,1.84,3.14.97,2.79-8.85-7.21,5.88,8.34-4.99-4.04-2.89-2.09,2.29,5.65.07,2.94-1.87-.38-4.57-7.16-1.78-1.97-.19,2.59-1.03.18-1.21-.85-.53,4.2-1.1,2.39-1.36.69-1.31-3.46-1.3,3.43-1.3,2.47-1.3-1.14-1.3,3.72-1.3-8.89-1.3-2.91-1.3.92-1.3,9.08-1.3-4.94-1.3,2.97-1.3-5.84-1.3-1.52-1.3,4.5-1.3,6.44-1.3-7.17-1.3,3.91-1.3-9.47-1.3,8.47-1.3-.18-1.3,3.18-1.3-2-1.3-8.04-1.3,9.25-1.31-8.09-1.31,8.93-1.31-4.37-1.31,5.17-1.31-6.01-1.3,6.09-1.3-7.67-1.3,2.38-1.3-4.87-1.3,9.41-1.3-6.56-1.3-2.02-1.3,2.55-1.3-4.89-1.3,8.88-1.3,2.59-1.3-2.87-1.3,2.76-1.31-2.34-1.31-7.51-1.31,8.22-1.31-1.28-1.31-1.55-1.31-7.27-1.31,9.27-1.3-7.66-1.3,1.32-1.3,9.46-1.3-12.65-1.31.78-1.31,9.82-1.31-5.85-1.31,7.43-1.31-9.94-1.31,4.73-1.31-5-1.31,10.39-1.31-11.07-1.31-.92-1.31,9.25-1.31-1.73-1.31-1.77-1.31,5.08-1.31-8.19-1.31,4.41-1.31,1.25-1.31-6.67-1.31-1.7-1.31,10.54-1.31-1.7-1.31-7.25-1.31,3.28-1.31.36-1.31,2.37-1.31,1.69-1.31-.51-1.31-2.43-1.31.96-1.3-4.48-1.3,1.02-1.31,4.88-1.31-1.57-1.31,1.41-1.31-3.53-1.3,6.02-1.3-6.14-1.31,6.65-1.31-6.3-1.31,1.77-1.31-4.96-1.31-.87-1.31,11.16-1.31-3.56-1.31-8.2-1.31,1.74-1.31,7.25-1.31,1.27-1.31-10.58-1.31,3.37-1.31-1.44-1.31-1.57-1.31,11.69-1.31-10.29-1.31,3.55-1.31.6-1.31-3.37-1.31,3.78-1.31-5.84-1.31-.6-1.32-.11-1.32,2.37-.96-2.87-1.62,5.87-1.4.55-.93-1.85.16-4.93-2.34,3.81-.48-1.9-4.98,7.89-2.13.66,2.36-6.86,2.19-5.28-.65-.64-9.29,9.49,4.56-7.03-3.66,2-1.6-.28,3.83-4.69,1.91-2.61-12.76,7.37,4.28-4.27-6.14,1.93,9.4-6.15-10.98,3.68,12.01-6.11-3.41.24-6.77.93,5.22-2.56-5.3.04-4.88-.44,12.73-2.91-6.16-.38-5.06-.91,1.98-1.3h7.65L.65,13.1l12.8-.34-1.69-1.04-3.48-1.48.11-1.06-3.58-1.98,5.37.26L2.65,3.86l11.79,3.01-6.39-3.72,6.61,1.83.96-.56-3.19-2.25,2.49.25,4.79-.04-4.72,2.56,6.12-.93,3.08-.24-10.85,6.11,9.92-3.68-8.49,6.15,5.54-1.93-3.87,4.27,11.53-7.37-1.73,2.61-3.46,4.69,1.45.28,3.3-2-4.12,7.03,8.4-9.49.59.64-1.98,5.28-2.13,6.86,1.92-.66,4.49-7.88.43,1.9,2.11-3.81-.15,4.93.84,1.85,1.26-.55,1.47-5.87.87,2.87,1.19-2.37,1.19.11,1.19.6,1.18,5.84,1.19-3.78,1.18,3.37,1.18-.6,1.18-3.55,1.18,10.29,1.18-11.69,1.18,1.57,1.18,1.44,1.18-3.37,1.18,10.58,1.18-1.27,1.18-7.25,1.18-1.74,1.18,8.2,1.18,3.56,1.18-11.16,1.18.87,1.18,4.96,1.18-1.77,1.18,6.3,1.18-6.65,1.18,6.14,1.18-6.02,1.18,3.53,1.18-1.41,1.18,1.57,1.18-4.88,1.18-1.02,1.18,4.48,1.18-.96,1.18,2.43,1.18.51,1.18-1.69,1.18-2.37,1.18-.36,1.18-3.28,1.18,7.25,1.18,1.7,1.18-10.54,1.18,1.7,1.18,6.67,1.18-1.25,1.18-4.41,1.18,8.19,1.18-5.08,1.18,1.77,1.18,1.73,1.18-9.25,1.18.92,1.18,11.07,1.18-10.39,1.18,5,1.18-4.73,1.18,9.94,1.18-7.43,1.18,5.85,1.18-9.81,1.18-.78,1.18,12.65,1.18-9.46,1.18-1.32,1.18,7.66,1.18-9.27,1.18,7.27,1.18,1.55,1.18,1.28,1.18-8.22,1.18,7.51,1.18,2.34,1.18-2.76,1.18,2.87,1.18-2.59,1.18-8.88,1.18,4.89,1.18-2.56,1.18,2.02,1.18,6.56,1.18-9.41,1.18,4.87,1.18-2.38,1.18,7.67,1.18-6.09,1.18,6.01,1.18-5.17,1.18,4.37,1.18-8.93,1.18,8.09,1.18-9.25,1.18,8.04,1.18,2,1.18-3.18,1.18.18,1.18-8.47,1.18,9.47,1.18-3.91,1.18,7.17,1.18-6.44,1.18-4.5,1.18,1.52,1.18,5.84,1.18-2.97,1.18,4.94,1.18-9.08,1.18-.92,1.18,2.91,1.18,8.89,1.18-3.72,1.18,1.14,1.18-2.47,1.18-3.43,1.18,3.46,1.23-.69.99-2.39.47-4.2,1.09.85.93-.18.17-2.59,1.61,1.97,4.13,7.16,1.69.38-.06-2.94-2.07-5.65,2.61,2.09,4.51,4.04-5.31-8.34,8,7.21-.88-2.79-1.66-3.14,1.59-.13,5.12,2.31-10.07-8.29,6.21,2.78-.22-1.34-4.43-3.26,8.24,2.63-3.67-2.6,2.47-.22,2.47-.43h.76s-.41.34-.41.34l.85-.35,3.89-.04-1.52-.95,5.5-2.29,1.25.87,1.58.77-1,1.84-9.15,4.41,3.25-.05,2.73.33-4.53,2,4.65.13.17,1.03-5.55,1.48-.56.83,11.92.79h-9.98l.66.89,9.69,1.66-10.36.06,8.31,2.21,3.45,1.94-5.63.05-2.74.43Zm-3.95-18.98l1.79.54-.98-.61-.82.06Z"
    );
}
.glow_front {
    position: absolute;
    z-index: 4;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 220px;
    height: 68px;
    background: #360082;
    mix-blend-mode: screen;
    opacity: 0.5;
    clip-path: path(
    "m58.67,41.32l6.82,22.39-30.16,2.69,23.33-25.08ZM38.33,5.04l-7.07,1.43,5.89,8,1.18-9.43ZM14.14,49.43l19.4,9.23,17.03-21.36-36.43,12.13Zm-7.32-14.1l-.65,15.05,41.43-20.27-40.78,5.22Zm17.54-10.54l-18.19,2.04,5.41,4.26,12.78-6.3Zm195.63-4.06l-15.52-15.69-38.09,18.86,53.61-3.17Zm-6.18,6.1l-18.19-2.04,12.78,6.3,5.41-4.26ZM171.77,0l-18.22,17.69,26.3-14.32-8.08-3.37Zm16.97,6.47l-7.07-1.43,1.18,9.43,5.89-8ZM48.23,0l-8.08,3.37,26.3,14.32L48.23,0ZM15.52,5.04L0,20.73l53.61,3.17L15.52,5.04Zm133.58,53.38l5.41-4.26-7.82-10.3,2.41,14.57Zm-12.78,3.5l12.76,3.32-17.47-21.78,4.71,18.46Zm23.78,4.48l21.56-7.98-20.34-17.1-1.23,25.08Zm33.01.61l12.75-17.58-36.43-12.13,23.68,29.71Zm23.31-14.04v-19.4l-44.03-3.47,44.03,22.86Zm-125.56,8.57l7.62,4.4-.77-15.57-6.85,11.17Zm32.47.39l11.91,6.06-12.96-17.62,1.05,11.56Zm-57.84-7.78l5.41,4.26,2.41-14.57-7.82,10.3Zm5.43,11.09h17.19l-6.18-24.55-11.01,24.55Zm42.62-4.09l1.11-18.93-12.98,24.18,11.86-5.25Z"
    );
}
.twinkle_white {
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 210px;
    height: 58px;
    background: rgba(255, 255, 255, 0.7);
    transition: all ease 0.8s;
    clip-path: path(
    "m31.82,21c-1.13,3.75-4.54,8.87-8.93,6.69-1.67-.97-2.72-3.28-4.65-3.22l.11.48c-4.32,4.59-10.64,7.19-16.91,6.95-.98.09-1.53-.69-1.44-1.65.28-7.27-.23-17.33,7.77-20.5,5.04-3.01,11.13-2.4,15.73,1.23,2.79,1.52,2.87,4.66,1.66,7.37,2.9-.38,8.77-2.98,6.66,2.63Zm5.66-15.43c-1.42-.76-3.09.16-4.33.92-3.86,2.54-1.24,4.8,1.97,5.83,3.16,1.03,4.88-5.29,2.36-6.74ZM50.32.14c-1.99-.45-3.91,1.25-4.3,3.16-.74,1.87,1.24,5.51,3.05,3.08,1.75-1.53,5.02-4.99,1.25-6.24Zm11.3,1.45c.06,1.44-2.04,2.15-2.84.97-1.55-2.31,2.52-3.9,2.84-.98,0,0,0,0,0,.01Zm-2.99-.01s0,.05,0,.08c0-.03,0-.05,0-.08Zm122.94,39.65c-1.89-.28-6.49,2.59-6.38,4.72,0,1.3,1.32,2.53,2.59,2.03,3.17,2.13,7.67-5.14,3.79-6.75Zm26.14,4.19c-3.76-.72-7.78.11-10.96,2.25-.61-.63-.25-1.88-.95-2.39-.52-.38-1.23-.09-1.79.2-1.43.74-3.39,1.6-3.39,1.6-1.5.31-.11,3.55.99,3.76,1.42.08,1.65.91.97,2.13-.84,1.64-2.03,5.38,1.05,5,6.46-.3,12.66-4.03,15.99-9.62,1.09-1.42-.36-2.71-1.91-2.93Zm-43.05,6.57c1.25,2.17-1.97,4.41-3.54,2.51-.94.51-2.16-.29-2.13-1.35.4-2.45,4.46-3.64,5.68-1.16Zm-1.16.73s-.04-.05-.05-.07c.05.09.1.17.14.27-.03-.07-.06-.14-.08-.2Zm-15.96-.78c-.89-.86-2.7-.49-3.17.66-.61,1.23.9,2.6,2.06,1.91,1.32.1,2.06-1.65,1.11-2.57Zm24.81-.73c-1.2-1.91-4.04.04-2.49,1.76,1.2,1.91,4.04-.04,2.49-1.76Z"
    );
}
.twinkle_color {
    position: absolute;
    z-index: 6;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 200px;
    height: 66px;
    background: linear-gradient(-15deg, #ffee7f 50%, #9afcff 50%);
    clip-path: path(
    "m2.41,56.51c-1.5,1.1-2.76-1.09-2.32-2.49,1.91-9.01,13.14-9.61,20.62-10.63,3.1-.59,3.62,2.02,1.39,3.89-5.19,4.8-11.74,8.39-18.78,9m26.18-3.23c-4.98,2.71-10.25,6.41-12.92,11.49-.01.99,1.21,1.48,2.2,1.52,5.39.16,9.4-4.51,11.22-9.18.76-1.2.55-3.75-1.31-3.3M197.31,8.82c-7.04.61-13.59,4.2-18.78,9-2.2,1.86-1.73,4.49,1.39,3.89,7.47-1.01,18.71-1.62,20.62-10.63.43-1.4-.81-3.6-2.32-2.49m-29.39,4.42c4.98-2.71,10.25-6.41,12.92-11.49.01-.99-1.21-1.48-2.2-1.52-5.39-.16-9.4,4.51-11.22,9.18-.76,1.2-.55,3.75,1.31,3.3"
    );
}
.reflection_top {
    position: absolute;
    z-index: 7;
    top: 6px;
    right: 6px;
    width: 146px;
    height: 44px;
    background: linear-gradient(10deg, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.9));
    clip-path: path("m0,11.36L16.95,2.53,99.76,0l25.25,5.68,21.05,23.36-8.18,14.32-68.87-16.42L0,11.36ZM14.45,2.9");
}
.reflection_bottom {
    position: absolute;
    z-index: 8;
    left: 0;
    right: 0;
    bottom: 4px;
    margin: 0 auto;
    width: 96px;
    height: 32px;
    border-radius: 50%;
    opacity: 0.6;
    background: linear-gradient(0deg, rgba(255, 255, 255, 0.8) 10%, rgba(255, 255, 255, 0));
}
.shine {
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 204px;
    height: 62px; }
    .shine::before,
    .shine::after {
    content: "";
    position: absolute;
    top: 0;
    width: 45px;
    height: 58px;
    background: #fff;
    transform: scale(0);
    clip-path: path("m27.17,29c10.87-9.47,17.83-18.56,17.83-18.56,0,0-9.07,4.53-19.61,12.44-.6-13.08-2.89-22.88-2.89-22.88,0,0-2.29,9.81-2.89,22.88C9.07,14.97,0,10.44,0,10.44c0,0,6.96,9.08,17.83,18.56C6.96,38.47,0,47.56,0,47.56c0,0,9.07-4.53,19.61-12.44.6,13.08,2.89,22.88,2.89,22.88,0,0,2.29-9.81,2.89-22.88,10.53,7.91,19.61,12.44,19.61,12.44,0,0-6.96-9.08-17.83-18.56Z");
    transition: all ease 0.8s;
    }
    .shine::before {
    left: -1px;
    }
    .shine::after {
    right: -1px;
    }
}
.shine_shadow_R,
.shine_shadow_L {
    position: absolute;
    z-index: 9;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 4px;
    height: 52px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 0 5px #fa9cff;
    transition: all ease 0.8s;
    opacity: 0;
    transform: scale(0); }
    .shine_shadow_R::before,
    .shine_shadow_R::after {
    content: "";
    position: absolute;
    top: -3px;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 0 5px #fa9cff;
    transition: inherit;
    }
    &::before {
    transform: rotate(49deg);
    }
    &::after {
    transform: rotate(-49deg);
    }
}
.shine_shadow_R {
    right: 37px;
}
.shine_shadow_L {
    left: 37px;
}
.text {
    position: relative;
    z-index: 11;
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 2px;
    color: #fff;
    transition: all ease 0.8s;
}
&--A {
    &::before {
    background: #490869;
    }
    &::after {
    background: linear-gradient(0deg, rgba(187, 0, 212, 0) 5%, rgba(204, 0, 130, 1) 60%, rgba(30, 0, 64, 1));
    }
    .glow_back {
    background: #bf349d;
    }
    .shine_shadow_R,
    .shine_shadow_L {
    box-shadow: 0 0 5px #fa9cff;
    &::before,
    &::after {
        box-shadow: 0 0 5px #fa9cff;
    }
    }
}
&--B {
    &::before {
    background: #ab0f58;
    }
    &::after {
    background: linear-gradient(0deg, rgba(50, 50, 50, 0), rgba(50, 50, 50, 1));
    }
    .shine::before {
    display: none;
    }
    .glow_back {
    background: #a37db8;
    }
    .shine_shadow_R {
    box-shadow: 0 0 5px #f92385;
    &::before,
    &::after {
        box-shadow: 0 0 5px #f92385;
    }
    }
}
&--C {
    &::before {
    background: #005899;
    }
    &::after {
    background: linear-gradient(0deg, rgba(50, 50, 50, 0), rgba(50, 50, 50, 1));
    }
    .shine::after {
    display: none;
    }
    .glow_back {
    background: #a37db8;
    }
    .shine_shadow_L {
    box-shadow: 0 0 5px #2bd0fc;
    &::before,
    &::after {
        box-shadow: 0 0 5px #2bd0fc;
    }
    }
}
&:hover {
    .shine::before,
    .shine:after {
    transform: scale(1);
    }
    .shine_shadow_R,
    .shine_shadow_L {
    opacity: 1;
    transform: scale(1);
    }
    .twinkle_white {
    background: rgba(255, 255, 255, 1);
    }
    .text {
    letter-spacing: 4px;
    }
}
&--A:hover {
    &::before {
    background: #750ea9;
    }
    .glow_back {
    background: #ff45d1;
    }
}
&--B:hover {
    &::before {
    background: #ff1784;
    }
    .glow_back {
    background: #e2adff;
    }
}
&--C:hover {
    &::before {
    background: #007fde;
    }
    .glow_back {
    background: #e2adff;
    }
}
}

</style>
<main class="container">
  <section class="section">
    <a class="button button--A" href="#">
    <div class="glow_back"></div>
    <div class="glow_front"></div>
    <div class="twinkle_white"></div>
    <div class="twinkle_color"></div>
    <div class="reflection_top"></div>
    <div class="reflection_bottom"></div>
    <div class="shine"></div>
    <div class="shine_shadow_R"></div>
    <div class="shine_shadow_L"></div>
    <span class="text">ENTRY</span>
    </a>
</section>
<section class="section">
    <a class="button button--B" href="#">
    <div class="glow_back"></div>
    <div class="glow_front"></div>
    <div class="twinkle_white"></div>
    <div class="twinkle_color"></div>
    <div class="reflection_top"></div>
    <div class="reflection_bottom"></div>
    <div class="shine"></div>
    <div class="shine_shadow_R"></div>
    <span class="text">ENTRY</span>
    </a>
   </section>
<section class="section">
    <a class="button button--C" href="#">
    <div class="glow_back"></div>
    <div class="glow_front"></div>
    <div class="twinkle_white"></div>
    <div class="twinkle_color"></div>
    <div class="reflection_top"></div>
    <div class="reflection_bottom"></div>
    <div class="shine"></div>
    <div class="shine_shadow_L"></div>
    <span class="text">ENTRY</span>
    </a>
</section>
</main>
[/html]

0

132

[html]
<style>
@import url(https://fonts.googleapis.com/css2?famil … splay=swap);
*,
::after,
::before {
  box-sizing: border-box;
  border: 0 solid #e5e7eb;
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
}
::after,
::before {
  --tw-content: "";
}
html {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  font-family: REM, sans-serif;
  font-feature-settings: normal;
  font-variation-settings: normal;
  position: relative;
  scroll-behavior: smooth;
}
body {
  margin: 0;
  line-height: inherit;
}
hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
}
a {
  color: inherit;
  text-decoration: inherit;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
pre,
samp {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
    "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}
button,
select {
  text-transform: none;
}
[type="button"],
[type="reset"],
[type="submit"],
button {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}
:-moz-focusring {
  outline: auto;
}
:-moz-ui-invalid {
  box-shadow: none;
}
progress {
  vertical-align: baseline;
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
summary {
  display: list-item;
}
blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
dialog,
legend {
  padding: 0;
}
menu,
ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
textarea {
  resize: vertical;
}
input::-moz-placeholder,
textarea::-moz-placeholder {
  opacity: 1;
  color: #9ca3af;
}
input::placeholder,
textarea::placeholder {
  opacity: 1;
  color: #9ca3af;
}
[role="button"],
button {
  cursor: pointer;
}
:disabled {
  cursor: default;
}
audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
  display: block;
  vertical-align: middle;
}
img,
video {
  max-width: 100%;
  height: auto;
}
[hidden] {
  display: none;
}
::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
}
.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1rem;
  padding-left: 1rem;
}
@media (min-width: 640px) {
  .container {
    max-width: 640px;
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 768px;
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media (min-width: 1024px) {
  .container {
    max-width: 1024px;
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media (min-width: 1280px) {
  .container {
    max-width: 1280px;
    padding-right: 3rem;
    padding-left: 3rem;
  }
}
@media (min-width: 1536px) {
  .container {
    max-width: 1536px;
    padding-right: 14rem;
    padding-left: 14rem;
  }
}
.invisible {
  visibility: hidden;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.inset-0 {
  inset: 0px;
}
.bottom-0 {
  bottom: 0;
}
.left-0 {
  left: 0;
}
.right-0 {
  right: 0;
}
.top-0 {
  top: 0;
}
.top-1\/2 {
  top: 50%;
}
.z-10 {
  z-index: 10;
}
.z-20 {
  z-index: 20;
}
.z-30 {
  z-index: 30;
}
.m-1 {
  margin: 0.25rem;
}
.mx-10 {
  margin-left: 2.5rem;
  margin-right: 2.5rem;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.-mb-1 {
  margin-bottom: -0.25rem;
}
.-mb-8 {
  margin-bottom: -2rem;
}
.-ml-10 {
  margin-left: -2.5rem;
}
.-ml-12 {
  margin-left: -3rem;
}
.-ml-2 {
  margin-left: -0.5rem;
}
.-ml-3 {
  margin-left: -0.75rem;
}
.-mr-1 {
  margin-right: -0.25rem;
}
.-mr-10 {
  margin-right: -2.5rem;
}
.-mr-3 {
  margin-right: -0.75rem;
}
.-mr-5 {
  margin-right: -1.25rem;
}
.-mt-1 {
  margin-top: -0.25rem;
}
.-mt-10 {
  margin-top: -2.5rem;
}
.-mt-12 {
  margin-top: -3rem;
}
.mb-0 {
  margin-bottom: 0;
}
.mb-10 {
  margin-bottom: 2.5rem;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-3 {
  margin-bottom: 0.75rem;
}
.mb-32 {
  margin-bottom: 8rem;
}
.mb-9 {
  margin-bottom: 2.25rem;
}
.ml-0 {
  margin-left: 0;
}
.ml-0\.5 {
  margin-left: 0.125rem;
}
.ml-1 {
  margin-left: 0.25rem;
}
.ml-2 {
  margin-left: 0.5rem;
}
.ml-9 {
  margin-left: 2.25rem;
}
.mr-1 {
  margin-right: 0.25rem;
}
.mr-2 {
  margin-right: 0.5rem;
}
.mr-4 {
  margin-right: 1rem;
}
.mt-0 {
  margin-top: 0;
}
.mt-0\.5 {
  margin-top: 0.125rem;
}
.mt-1 {
  margin-top: 0.25rem;
}
.box-border {
  box-sizing: border-box;
}
.block {
  display: block;
}
.inline-block {
  display: inline-block;
}
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.grid {
  display: grid;
}
.hidden {
  display: none;
}
.h-0 {
  height: 0;
}
.h-0\.5 {
  height: 0.125rem;
}
.h-1 {
  height: 0.25rem;
}
.h-1\/3 {
  height: 33.333333%;
}
.h-10 {
  height: 2.5rem;
}
.h-12 {
  height: 3rem;
}
.h-16 {
  height: 4rem;
}
.h-20 {
  height: 5rem;
}
.h-24 {
  height: 6rem;
}
.h-32 {
  height: 8rem;
}
.h-4 {
  height: 1rem;
}
.h-40 {
  height: 10rem;
}
.h-48 {
  height: 12rem;
}
.h-5 {
  height: 1.25rem;
}
.h-6 {
  height: 1.5rem;
}
.h-64 {
  height: 16rem;
}
.h-8 {
  height: 2rem;
}
.h-full {
  height: 100%;
}
.w-0 {
  width: 0;
}
.w-0\.5 {
  width: 0.125rem;
}
.w-10 {
  width: 2.5rem;
}
.w-12 {
  width: 3rem;
}
.w-20 {
  width: 5rem;
}
.w-24 {
  width: 6rem;
}
.w-32 {
  width: 8rem;
}
.w-4 {
  width: 1rem;
}
.w-40 {
  width: 10rem;
}
.w-48 {
  width: 12rem;
}
.w-5 {
  width: 1.25rem;
}
.w-6 {
  width: 1.5rem;
}
.w-64 {
  width: 16rem;
}
.w-8 {
  width: 2rem;
}
.w-auto {
  width: auto;
}
.w-full {
  width: 100%;
}
.origin-bottom-left {
  transform-origin: bottom left;
}
.origin-center {
  transform-origin: center;
}
.origin-top-right {
  transform-origin: top right;
}
.-translate-x-1 {
  --tw-translate-x: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-12 {
  --tw-translate-x: -3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-2 {
  --tw-translate-x: -0.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-20 {
  --tw-translate-x: -5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-56 {
  --tw-translate-x: -14rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-8 {
  --tw-translate-x: -2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-full {
  --tw-translate-x: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-1 {
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-1\/2 {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-2 {
  --tw-translate-y: -0.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-24 {
  --tw-translate-y: -6rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-0 {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-1 {
  --tw-translate-x: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-1\/2 {
  --tw-translate-x: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-10 {
  --tw-translate-x: 2.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-12 {
  --tw-translate-x: 3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-24 {
  --tw-translate-x: 6rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-full {
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-0 {
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-1 {
  --tw-translate-y: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-10 {
  --tw-translate-y: 2.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-12 {
  --tw-translate-y: 3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-8 {
  --tw-translate-y: 2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-full {
  --tw-translate-y: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-rotate-12 {
  --tw-rotate: -12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-rotate-45 {
  --tw-rotate: -45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-rotate-90 {
  --tw-rotate: -90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-12 {
  --tw-rotate: 12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-45 {
  --tw-rotate: 45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-\[-40deg\] {
  --tw-rotate: -40deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-skew-x-12 {
  --tw-skew-x: -12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.skew-x-12 {
  --tw-skew-x: 12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.cursor-pointer {
  cursor: pointer;
}
.select-none {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.items-center {
  align-items: center;
}
.justify-start {
  justify-content: flex-start;
}
.justify-center {
  justify-content: center;
}
.gap-6 {
  gap: 1.5rem;
}
.overflow-hidden {
  overflow: hidden;
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-2xl {
  border-radius: 1rem;
}
.rounded-full {
  border-radius: 9999px;
}
.rounded-lg {
  border-radius: 0.5rem;
}
.rounded-md {
  border-radius: 0.375rem;
}
.rounded-xl {
  border-radius: 0.75rem;
}
.border {
  border-width: 1px;
}
.border-0 {
  border-width: 0;
}
.border-2 {
  border-width: 2px;
}
.border-4 {
  border-width: 4px;
}
.border-b-2 {
  border-bottom-width: 2px;
}
.border-b-4 {
  border-bottom-width: 4px;
}
.border-l-2 {
  border-left-width: 2px;
}
.border-t-2 {
  border-top-width: 2px;
}
.border-solid {
  border-style: solid;
}
.border-black {
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity));
}
.border-blue-700 {
  --tw-border-opacity: 1;
  border-color: rgb(29 78 216 / var(--tw-border-opacity));
}
.border-gray-100 {
  --tw-border-opacity: 1;
  border-color: rgb(243 244 246 / var(--tw-border-opacity));
}
.border-gray-200 {
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity));
}
.border-gray-600 {
  --tw-border-opacity: 1;
  border-color: rgb(75 85 99 / var(--tw-border-opacity));
}
.border-gray-900 {
  --tw-border-opacity: 1;
  border-color: rgb(17 24 39 / var(--tw-border-opacity));
}
.border-indigo-500 {
  --tw-border-opacity: 1;
  border-color: rgb(99 102 241 / var(--tw-border-opacity));
}
.border-indigo-600 {
  --tw-border-opacity: 1;
  border-color: rgb(79 70 229 / var(--tw-border-opacity));
}
.border-purple-500 {
  --tw-border-opacity: 1;
  border-color: rgb(168 85 247 / var(--tw-border-opacity));
}
.border-purple-700 {
  --tw-border-opacity: 1;
  border-color: rgb(126 34 206 / var(--tw-border-opacity));
}
.border-transparent {
  border-color: transparent;
}
.border-white {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity));
}
.bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}
.bg-blue-100\/60 {
  background-color: rgb(219 234 254 / 0.6);
}
.bg-blue-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(37 99 235 / var(--tw-bg-opacity));
}
.bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}
.bg-gray-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}
.bg-gray-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(75 85 99 / var(--tw-bg-opacity));
}
.bg-gray-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity));
}
.bg-gray-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(17 24 39 / var(--tw-bg-opacity));
}
.bg-green-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(74 222 128 / var(--tw-bg-opacity));
}
.bg-green-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(34 197 94 / var(--tw-bg-opacity));
}
.bg-indigo-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(79 70 229 / var(--tw-bg-opacity));
}
.bg-pink-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(236 72 153 / var(--tw-bg-opacity));
}
.bg-pink-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(157 23 77 / var(--tw-bg-opacity));
}
.bg-purple-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(192 132 252 / var(--tw-bg-opacity));
}
.bg-purple-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(168 85 247 / var(--tw-bg-opacity));
}
.bg-purple-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(147 51 234 / var(--tw-bg-opacity));
}
.bg-purple-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(126 34 206 / var(--tw-bg-opacity));
}
.bg-purple-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(107 33 168 / var(--tw-bg-opacity));
}
.bg-red-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(252 165 165 / var(--tw-bg-opacity));
}
.bg-red-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 68 68 / var(--tw-bg-opacity));
}
.bg-red-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(220 38 38 / var(--tw-bg-opacity));
}
.bg-red-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(185 28 28 / var(--tw-bg-opacity));
}
.bg-sky-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(14 165 233 / var(--tw-bg-opacity));
}
.bg-transparent {
  background-color: transparent;
}
.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.bg-gradient-to-b {
  background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
}
.bg-gradient-to-br {
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}
.bg-gradient-to-l {
  background-image: linear-gradient(to left, var(--tw-gradient-stops));
}
.bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.bg-gradient-to-t {
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
}
.bg-gradient-to-tr {
  background-image: linear-gradient(to top right, var(--tw-gradient-stops));
}
.from-\[\#ff8a05\] {
  --tw-gradient-from: #ff8a05 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 138 5 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-500 {
  --tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-600 {
  --tw-gradient-from: #2563eb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-pink-400 {
  --tw-gradient-from: #f472b6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(244 114 182 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-pink-600 {
  --tw-gradient-from: #db2777 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(219 39 119 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-purple-500 {
  --tw-gradient-from: #a855f7 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-purple-600 {
  --tw-gradient-from: #9333ea var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-transparent {
  --tw-gradient-from: transparent var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-white {
  --tw-gradient-from: #fff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.via-\[\#ff5478\] {
  --tw-gradient-to: rgb(255 84 120 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #ff5478 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-indigo-500 {
  --tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #6366f1 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-purple-600 {
  --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #9333ea var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-purple-700 {
  --tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #7e22ce var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-transparent {
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    transparent var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.to-\[\#ff00c6\] {
  --tw-gradient-to: #ff00c6 var(--tw-gradient-to-position);
}
.to-blue-400 {
  --tw-gradient-to: #60a5fa var(--tw-gradient-to-position);
}
.to-blue-500 {
  --tw-gradient-to: #3b82f6 var(--tw-gradient-to-position);
}
.to-blue-600 {
  --tw-gradient-to: #2563eb var(--tw-gradient-to-position);
}
.to-gray-50 {
  --tw-gradient-to: #f9fafb var(--tw-gradient-to-position);
}
.to-gray-700 {
  --tw-gradient-to: #374151 var(--tw-gradient-to-position);
}
.to-indigo-500 {
  --tw-gradient-to: #6366f1 var(--tw-gradient-to-position);
}
.to-pink-500 {
  --tw-gradient-to: #ec4899 var(--tw-gradient-to-position);
}
.to-pink-700 {
  --tw-gradient-to: #be185d var(--tw-gradient-to-position);
}
.to-purple-500 {
  --tw-gradient-to: #a855f7 var(--tw-gradient-to-position);
}
.to-purple-600 {
  --tw-gradient-to: #9333ea var(--tw-gradient-to-position);
}
.to-transparent {
  --tw-gradient-to: transparent var(--tw-gradient-to-position);
}
.bg-clip-text {
  -webkit-background-clip: text;
  background-clip: text;
}
.object-cover {
  -o-object-fit: cover;
  object-fit: cover;
}
.p-0 {
  padding: 0;
}
.p-0\.5 {
  padding: 0.125rem;
}
.p-4 {
  padding: 1rem;
}
.px-10 {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}
.px-12 {
  padding-left: 3rem;
  padding-right: 3rem;
}
.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.px-3\.5 {
  padding-left: 0.875rem;
  padding-right: 0.875rem;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.px-7 {
  padding-left: 1.75rem;
  padding-right: 1.75rem;
}
.px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}
.px-9 {
  padding-left: 2.25rem;
  padding-right: 2.25rem;
}
.py-0 {
  padding-top: 0;
  padding-bottom: 0;
}
.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-2\.5 {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}
.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}
.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.pb-20 {
  padding-bottom: 5rem;
}
.pl-2 {
  padding-left: 0.5rem;
}
.pl-2\.5 {
  padding-left: 0.625rem;
}
.pl-4 {
  padding-left: 1rem;
}
.pr-12 {
  padding-right: 3rem;
}
.pr-4 {
  padding-right: 1rem;
}
.pr-5 {
  padding-right: 1.25rem;
}
.pt-28 {
  padding-top: 7rem;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.align-middle {
  vertical-align: middle;
}
.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}
.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
.font-bold {
  font-weight: 700;
}
.font-medium {
  font-weight: 500;
}
.font-semibold {
  font-weight: 600;
}
.uppercase {
  text-transform: uppercase;
}
.leading-6 {
  line-height: 1.5rem;
}
.leading-\[50px\] {
  line-height: 50px;
}
.leading-tight {
  line-height: 1.25;
}
.tracking-tighter {
  letter-spacing: -0.05em;
}
.tracking-wide {
  letter-spacing: 0.025em;
}
.text-amber-300 {
  --tw-text-opacity: 1;
  color: rgb(252 211 77 / var(--tw-text-opacity));
}
.text-black {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.text-blue-500 {
  --tw-text-opacity: 1;
  color: rgb(59 130 246 / var(--tw-text-opacity));
}
.text-gray-500 {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity));
}
.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}
.text-gray-800 {
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity));
}
.text-gray-900 {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}
.text-green-400 {
  --tw-text-opacity: 1;
  color: rgb(74 222 128 / var(--tw-text-opacity));
}
.text-indigo-100 {
  --tw-text-opacity: 1;
  color: rgb(224 231 255 / var(--tw-text-opacity));
}
.text-indigo-600 {
  --tw-text-opacity: 1;
  color: rgb(79 70 229 / var(--tw-text-opacity));
}
.text-purple-500 {
  --tw-text-opacity: 1;
  color: rgb(168 85 247 / var(--tw-text-opacity));
}
.text-purple-600 {
  --tw-text-opacity: 1;
  color: rgb(147 51 234 / var(--tw-text-opacity));
}
.text-transparent {
  color: transparent;
}
.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.no-underline {
  text-decoration-line: none;
}
.opacity-0 {
  opacity: 0;
}
.opacity-10 {
  opacity: 0.1;
}
.opacity-100 {
  opacity: 1;
}
.opacity-30 {
  opacity: 0.3;
}
.opacity-5 {
  opacity: 0.05;
}
.opacity-50 {
  opacity: 0.5;
}
.opacity-80 {
  opacity: 0.8;
}
.opacity-90 {
  opacity: 0.9;
}
.opacity-\[3\%\] {
  opacity: 3%;
}
.mix-blend-screen {
  mix-blend-mode: screen;
}
.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color),
    0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-2xl {
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-inner {
  --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1),
    0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color),
    0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-md {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color),
    0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-xl {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1),
    0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color),
    0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.ring-1 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.ring-indigo-300 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(165 180 252 / var(--tw-ring-opacity));
}
.ring-offset-2 {
  --tw-ring-offset-width: 2px;
}
.ring-offset-indigo-200 {
  --tw-ring-offset-color: #c7d2fe;
}
.blur-md {
  --tw-blur: blur(12px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.blur-sm {
  --tw-blur: blur(4px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.transition {
  transition-property: color, background-color, border-color,
    text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,
    backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-colors {
  transition-property: color, background-color, border-color,
    text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.delay-100 {
  transition-delay: 0.1s;
}
.delay-200 {
  transition-delay: 0.2s;
}
.delay-300 {
  transition-delay: 0.3s;
}
.duration-100 {
  transition-duration: 0.1s;
}
.duration-1000 {
  transition-duration: 1s;
}
.duration-150 {
  transition-duration: 150ms;
}
.duration-200 {
  transition-duration: 0.2s;
}
.duration-300 {
  transition-duration: 0.3s;
}
.duration-500 {
  transition-duration: 0.5s;
}
.duration-700 {
  transition-duration: 0.7s;
}
.ease-in-out {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.ease-linear {
  transition-timing-function: linear;
}
.ease-out {
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}
body {
  font-size: 15px;
  overflow-x: hidden;
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity));
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 600;
}
.before\:absolute::before {
  content: var(--tw-content);
  position: absolute;
}
.before\:bottom-0::before {
  content: var(--tw-content);
  bottom: 0;
}
.before\:left-0::before {
  content: var(--tw-content);
  left: 0;
}
.before\:h-\[2px\]::before {
  content: var(--tw-content);
  height: 2px;
}
.before\:w-0::before {
  content: var(--tw-content);
  width: 0;
}
.before\:bg-amber-300::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(252 211 77 / var(--tw-bg-opacity));
}
.before\:transition-all::before {
  content: var(--tw-content);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.before\:duration-500::before {
  content: var(--tw-content);
  transition-duration: 0.5s;
}
.after\:absolute::after {
  content: var(--tw-content);
  position: absolute;
}
.after\:bottom-0::after {
  content: var(--tw-content);
  bottom: 0;
}
.after\:left-0::after {
  content: var(--tw-content);
  left: 0;
}
.after\:-z-10::after {
  content: var(--tw-content);
  z-index: -10;
}
.after\:h-0::after {
  content: var(--tw-content);
  height: 0;
}
.after\:w-full::after {
  content: var(--tw-content);
  width: 100%;
}
.after\:bg-amber-300::after {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(252 211 77 / var(--tw-bg-opacity));
}
.after\:text-white::after {
  content: var(--tw-content);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.after\:transition-all::after {
  content: var(--tw-content);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.after\:duration-500::after {
  content: var(--tw-content);
  transition-duration: 0.5s;
}
.focus-within\:border-blue-700:focus-within {
  --tw-border-opacity: 1;
  border-color: rgb(29 78 216 / var(--tw-border-opacity));
}
.focus-within\:bg-blue-700:focus-within {
  --tw-bg-opacity: 1;
  background-color: rgb(29 78 216 / var(--tw-bg-opacity));
}
.hover\:border-blue-600:hover {
  --tw-border-opacity: 1;
  border-color: rgb(37 99 235 / var(--tw-border-opacity));
}
.hover\:border-blue-700:hover {
  --tw-border-opacity: 1;
  border-color: rgb(29 78 216 / var(--tw-border-opacity));
}
.hover\:border-sky-500:hover {
  --tw-border-opacity: 1;
  border-color: rgb(14 165 233 / var(--tw-border-opacity));
}
.hover\:bg-blue-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(219 234 254 / var(--tw-bg-opacity));
}
.hover\:bg-blue-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(29 78 216 / var(--tw-bg-opacity));
}
.hover\:bg-gray-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity));
}
.hover\:bg-gray-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}
.hover\:bg-gray-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity));
}
.hover\:bg-gray-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity));
}
.hover\:bg-green-400:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(74 222 128 / var(--tw-bg-opacity));
}
.hover\:bg-green-500:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(34 197 94 / var(--tw-bg-opacity));
}
.hover\:bg-indigo-500:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(99 102 241 / var(--tw-bg-opacity));
}
.hover\:bg-transparent:hover {
  background-color: transparent;
}
.hover\:bg-white:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.hover\:bg-gradient-to-r:hover {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.hover\:from-gray-50:hover {
  --tw-gradient-from: #f9fafb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-green-500:hover {
  --tw-gradient-from: #22c55e var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-purple-600:hover {
  --tw-gradient-from: #9333ea var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:to-green-400:hover {
  --tw-gradient-to: #4ade80 var(--tw-gradient-to-position);
}
.hover\:to-pink-600:hover {
  --tw-gradient-to: #db2777 var(--tw-gradient-to-position);
}
.hover\:to-white:hover {
  --tw-gradient-to: #fff var(--tw-gradient-to-position);
}
.hover\:pl-10:hover {
  padding-left: 2.5rem;
}
.hover\:pr-6:hover {
  padding-right: 1.5rem;
}
.hover\:text-black:hover {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.hover\:text-blue-600:hover {
  --tw-text-opacity: 1;
  color: rgb(37 99 235 / var(--tw-text-opacity));
}
.hover\:text-gray-600:hover {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}
.hover\:text-sky-500:hover {
  --tw-text-opacity: 1;
  color: rgb(14 165 233 / var(--tw-text-opacity));
}
.hover\:text-white:hover {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.hover\:ring-1:hover {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.hover\:ring-2:hover {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.hover\:ring-green-400:hover {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(74 222 128 / var(--tw-ring-opacity));
}
.hover\:ring-purple-500:hover {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity));
}
.hover\:ring-offset-2:hover {
  --tw-ring-offset-width: 2px;
}
.hover\:ring-offset-indigo-500:hover {
  --tw-ring-offset-color: #6366f1;
}
.hover\:delay-\[\.5s\]:hover {
  transition-delay: 0.5s;
}
.before\:hover\:w-full:hover::before {
  content: var(--tw-content);
  width: 100%;
}
.after\:hover\:h-full:hover::after {
  content: var(--tw-content);
  height: 100%;
}
.after\:hover\:delay-\[0\.4s\]:hover::after {
  content: var(--tw-content);
  transition-delay: 0.4s;
}
.focus\:no-underline:focus {
  text-decoration-line: none;
}
.focus\:shadow-none:focus {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.focus\:outline-none:focus {
  outline: transparent solid 2px;
  outline-offset: 2px;
}
.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-blue-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity));
}
.focus\:ring-indigo-600:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(79 70 229 / var(--tw-ring-opacity));
}
.focus\:ring-offset-2:focus {
  --tw-ring-offset-width: 2px;
}
.active\:border-purple-600:active {
  --tw-border-opacity: 1;
  border-color: rgb(147 51 234 / var(--tw-border-opacity));
}
.active\:to-white:active {
  --tw-gradient-to: #fff var(--tw-gradient-to-position);
}
.active\:shadow-none:active {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.group:hover .group-hover\:top-0 {
  top: 0;
}
.group:hover .group-hover\:-mr-4 {
  margin-right: -1rem;
}
.group:hover .group-hover\:-mt-4 {
  margin-top: -1rem;
}
.group:hover .group-hover\:mb-0 {
  margin-bottom: 0;
}
.group:hover .group-hover\:mb-12 {
  margin-bottom: 3rem;
}
.group:hover .group-hover\:mb-32 {
  margin-bottom: 8rem;
}
.group:hover .group-hover\:ml-0 {
  margin-left: 0;
}
.group:hover .group-hover\:mr-0 {
  margin-right: 0;
}
.group:hover .group-hover\:mt-0 {
  margin-top: 0;
}
.group:hover .group-hover\:h-32 {
  height: 8rem;
}
.group:hover .group-hover\:h-56 {
  height: 14rem;
}
.group:hover .group-hover\:h-64 {
  height: 16rem;
}
.group:hover .group-hover\:h-full {
  height: 100%;
}
.group:hover .group-hover\:w-32 {
  width: 8rem;
}
.group:hover .group-hover\:w-56 {
  width: 14rem;
}
.group:hover .group-hover\:w-full {
  width: 100%;
}
.group:hover .group-hover\:-translate-x-0 {
  --tw-translate-x: -0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-x-40 {
  --tw-translate-x: -10rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-x-8 {
  --tw-translate-x: -2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-y-0 {
  --tw-translate-y: -0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-y-32 {
  --tw-translate-y: -8rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-x-0 {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-x-12 {
  --tw-translate-x: 3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-x-full {
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-y-0 {
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-rotate-180 {
  --tw-rotate: -180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:rotate-90 {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-skew-x-12 {
  --tw-skew-x: -12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:skew-x-12 {
  --tw-skew-x: 12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:border-\[25px\] {
  border-width: 25px;
}
.group:hover .group-hover\:bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-purple-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(168 85 247 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-purple-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(147 51 234 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-purple-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(126 34 206 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-opacity-0 {
  --tw-bg-opacity: 0;
}
.group:hover .group-hover\:from-\[\#ff00c6\] {
  --tw-gradient-from: #ff00c6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 0 198 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.group:hover .group-hover\:via-\[\#ff5478\] {
  --tw-gradient-to: rgb(255 84 120 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #ff5478 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.group:hover .group-hover\:to-\[\#ff8a05\] {
  --tw-gradient-to: #ff8a05 var(--tw-gradient-to-position);
}
.group:hover .group-hover\:text-blue-600 {
  --tw-text-opacity: 1;
  color: rgb(37 99 235 / var(--tw-text-opacity));
}
.group:hover .group-hover\:text-gray-200 {
  --tw-text-opacity: 1;
  color: rgb(229 231 235 / var(--tw-text-opacity));
}
.group:hover .group-hover\:text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.group:hover .group-hover\:opacity-100 {
  opacity: 1;
}
.group:hover .group-hover\:blur-sm {
  --tw-blur: blur(4px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.group:active .group-active\:bg-transparent {
  background-color: transparent;
}
.group:active .group-active\:opacity-0 {
  opacity: 0;
}
@media (min-width: 640px) {
  .sm\:mb-0 {
    margin-bottom: 0;
  }
  .sm\:w-auto {
    width: auto;
  }
  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 768px) {
  .md\:mx-0 {
    margin-left: 0;
    margin-right: 0;
  }
  .md\:w-auto {
    width: auto;
  }
  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 1024px) {
  .lg\:flex {
    display: flex;
  }
}
/*# sourceMappingURL=style.min.css.map */

</style>
<body class="bg-gray-50">
  <!-- Section Start -->
  <section class="section pt-28 pb-20" id="home">
    <div class="mx-10">
      <div class="lg:flex justify-center">
        <div class="text-center">
          <div class="text-center">
            <h1 class="text-4xl font-semibold leading-[50px] tracking-wide text-transparent bg-clip-text bg-gradient-to-l from-pink-400 to-blue-600 mb-10">
              45 CSS Only Modern Button Styles
            </h1>
          </div>
        </div>
      </div>
    </div>
  </section>
  <!-- Section End -->

  <section class="relative pb-20">
    <div class="container">
      <div class="grid md:grid-cols-3 sm:grid-cols-2 grid-cols-1 gap-6">
        <!-- 1 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-block text-lg group">
            <span class="relative z-10 block px-5 py-3 overflow-hidden font-medium leading-tight text-gray-800 transition-colors duration-300 ease-out border-2 border-gray-900 rounded-lg group-hover:text-white">
              <span class="absolute inset-0 w-full h-full px-5 py-3 rounded-lg bg-gray-50"></span>
              <span class="absolute left-0 w-48 h-48 -ml-2 transition-all duration-300 origin-top-right -rotate-90 -translate-x-full translate-y-12 bg-gray-900 group-hover:-rotate-180 ease"></span>
              <span class="relative">Button</span>
            </span>
            <span class="absolute bottom-0 right-0 w-full h-12 -mb-1 -mr-1 transition-all duration-200 ease-linear bg-gray-900 rounded-lg group-hover:mb-0 group-hover:mr-0" data-rounded="rounded-lg"></span>
          </a>
        </div>
        <!-- 2 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-flex items-center justify-start py-3 pl-4 pr-12 overflow-hidden font-semibold shadow text-indigo-600 transition-all duration-150 ease-in-out rounded hover:pl-10 hover:pr-6 bg-gray-50 group">
            <span class="absolute bottom-0 left-0 w-full h-1 transition-all duration-150 ease-in-out bg-indigo-600 group-hover:h-full"></span>
            <span class="absolute right-0 pr-4 duration-200 ease-out group-hover:translate-x-12">
              <svg class="w-5 h-5 text-green-400" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
                <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M14 5l7 7m0 0l-7 7m7-7H3"></path>
              </svg>
            </span>
            <span class="absolute left-0 pl-2.5 -translate-x-12 group-hover:translate-x-0 ease-out duration-200">
              <svg class="w-5 h-5 text-green-400" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
                <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M14 5l7 7m0 0l-7 7m7-7H3"></path>
              </svg>
            </span>
            <span class="relative w-full text-left transition-colors duration-200 ease-in-out group-hover:text-white">Button</span>
          </a>
        </div>
        <!-- 3 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative px-5 py-2 font-medium text-white group">
            <span class="absolute inset-0 w-full h-full transition-all duration-300 ease-out transform translate-x-0 -skew-x-12 bg-purple-500 group-hover:bg-purple-700 group-hover:skew-x-12"></span>
            <span class="absolute inset-0 w-full h-full transition-all duration-300 ease-out transform skew-x-12 bg-purple-700 group-hover:bg-purple-500 group-hover:-skew-x-12"></span>
            <span class="absolute bottom-0 left-0 hidden w-10 h-20 transition-all duration-100 ease-out transform -translate-x-8 translate-y-10 bg-purple-600 -rotate-12"></span>
            <span class="absolute bottom-0 right-0 hidden w-10 h-20 transition-all duration-100 ease-out transform translate-x-10 translate-y-8 bg-purple-400 -rotate-12"></span>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 4  -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="rounded-md px-3.5 py-2 m-1 overflow-hidden relative group cursor-pointer border-2 font-medium border-indigo-600 text-indigo-600 ">
            <span class="absolute w-64 h-0 transition-all duration-300 origin-center rotate-45 -translate-x-20 bg-indigo-600 top-1/2 group-hover:h-64 group-hover:-translate-y-32 ease"></span>
            <span class="relative text-indigo-600 transition duration-300 group-hover:text-white ease">Button</span>
          </a>
        </div>
        <!-- 5 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="px-5 py-2.5 relative rounded group font-medium text-white inline-block">
            <span class="absolute top-0 left-0 w-full h-full rounded opacity-50 filter blur-sm bg-gradient-to-br from-purple-600 to-blue-500"></span>
            <span class="h-full w-full inset-0 absolute mt-0.5 ml-0.5 bg-gradient-to-br filter group-active:opacity-0 rounded opacity-50 from-purple-600 to-blue-500"></span>
            <span class="absolute inset-0 w-full h-full transition-all duration-200 ease-out rounded shadow-xl bg-gradient-to-br filter group-active:opacity-0 group-hover:blur-sm from-purple-600 to-blue-500"></span>
            <span class="absolute inset-0 w-full h-full transition duration-200 ease-out rounded bg-gradient-to-br to-purple-600 from-blue-500"></span>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 6 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="px-5 py-2.5 relative rounded group overflow-hidden font-medium bg-white text-purple-600 inline-block">
            <span class="absolute top-0 left-0 flex w-full h-0 mb-0 transition-all duration-200 ease-out transform translate-y-0 bg-purple-600 group-hover:h-full opacity-90"></span>
            <span class="relative group-hover:text-white">Button</span>
          </a>
        </div>
        <!-- 7 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="rounded relative inline-flex group items-center justify-center px-3.5 py-2 m-1 cursor-pointer border-b-4 border-l-2 active:border-purple-600 active:shadow-none shadow-lg bg-gradient-to-tr from-purple-600 to-purple-500 border-purple-700 text-white">
            <span class="absolute w-0 h-0 transition-all duration-300 ease-out bg-white rounded-full group-hover:w-32 group-hover:h-32 opacity-10"></span>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 8 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-flex overflow-hidden text-white bg-gray-900 rounded group">
            <span class="px-3.5 py-2 text-white bg-purple-500 group-hover:bg-purple-600 flex items-center justify-center">
              <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
                <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M16 11V7a4 4 0 00-8 0v4M5 9h14l1 12H4L5 9z"></path>
              </svg>
            </span>
            <span class="pl-4 pr-5 py-2.5">Button</span>
          </a>
        </div>
        <!-- 9 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-flex items-center px-12 py-3 overflow-hidden text-lg font-medium text-indigo-600 border-2 border-indigo-600 rounded-full hover:text-white group hover:bg-gray-50">
            <span class="absolute left-0 block w-full h-0 transition-all bg-indigo-600 opacity-100 group-hover:h-full top-1/2 group-hover:top-0 duration-400 ease"></span>
            <span class="absolute right-0 flex items-center justify-start w-10 h-10 duration-300 transform translate-x-full group-hover:translate-x-0 ease">
              <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
                <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M14 5l7 7m0 0l-7 7m7-7H3"></path>
              </svg>
            </span>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 10 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative px-6 py-3 font-bold text-black group">
            <span class="absolute inset-0 w-full h-full transition duration-300 ease-out transform -translate-x-2 -translate-y-2 bg-red-300 group-hover:translate-x-0 group-hover:translate-y-0"></span>
            <span class="absolute inset-0 w-full h-full border-4 border-black"></span>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 11 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative rounded px-5 py-2.5 overflow-hidden group bg-green-500 hover:bg-gradient-to-r hover:from-green-500 hover:to-green-400 text-white hover:ring-2 hover:ring-offset-2 hover:ring-green-400 transition-all ease-out duration-300">
            <span class="absolute right-0 w-8 h-32 -mt-12 transition-all duration-1000 transform translate-x-12 bg-white opacity-10 rotate-12 group-hover:-translate-x-40 ease"></span>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 12 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-flex items-center justify-center p-4 px-5 py-3 overflow-hidden font-medium text-indigo-600 transition duration-300 ease-out rounded-full shadow-xl group hover:ring-1 hover:ring-purple-500">
            <span class="absolute inset-0 w-full h-full bg-gradient-to-br from-blue-600 via-purple-600 to-pink-700"></span>
            <span class="absolute bottom-0 right-0 block w-64 h-64 mb-32 mr-4 transition duration-500 origin-bottom-left transform rotate-45 translate-x-24 bg-pink-500 rounded-full opacity-30 group-hover:rotate-90 ease"></span>
            <span class="relative text-white">Button</span>
          </a>
        </div>
        <!-- 13 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative px-10 py-3 font-medium text-white transition duration-300 bg-green-400 rounded-md hover:bg-green-500 ease">
            <span class="absolute bottom-0 left-0 h-full -ml-2">
              <svg viewBox="0 0 487 487" class="w-auto h-full opacity-100 object-stretch" xmlns="http://www.w3.org/2000/svg">
                <path d="M0 .3c67 2.1 134.1 4.3 186.3 37 52.2 32.7 89.6 95.8 112.8 150.6 23.2 54.8 32.3 101.4 61.2 149.9 28.9 48.4 77.7 98.8 126.4 149.2H0V.3z" fill="#FFF" fill-rule="nonzero" fill-opacity=".1"></path>
              </svg>
            </span>
            <span class="absolute top-0 right-0 w-12 h-full -mr-3">
              <svg viewBox="0 0 487 487" class="object-cover w-full h-full" xmlns="http://www.w3.org/2000/svg">
                <path d="M487 486.7c-66.1-3.6-132.3-7.3-186.3-37s-95.9-85.3-126.2-137.2c-30.4-51.8-49.3-99.9-76.5-151.4C70.9 109.6 35.6 54.8.3 0H487v486.7z" fill="#FFF" fill-rule="nonzero" fill-opacity=".1"></path>
              </svg>
            </span>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 14 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative px-5 py-3 overflow-hidden font-medium text-gray-600 bg-white border border-gray-100 rounded-lg shadow-inner group">
            <span class="absolute top-0 left-0 w-0 h-0 transition-all duration-200 border-t-2 border-gray-600 group-hover:w-full ease"></span>
            <span class="absolute bottom-0 right-0 w-0 h-0 transition-all duration-200 border-b-2 border-gray-600 group-hover:w-full ease"></span>
            <span class="absolute top-0 left-0 w-full h-0 transition-all duration-300 delay-200 bg-gray-600 group-hover:h-full ease"></span>
            <span class="absolute bottom-0 left-0 w-full h-0 transition-all duration-300 delay-200 bg-gray-600 group-hover:h-full ease"></span>
            <span class="absolute inset-0 w-full h-full duration-300 delay-300 bg-gray-900 opacity-0 group-hover:opacity-100"></span>
            <span class="relative transition-colors duration-300 delay-200 group-hover:text-white ease">Button</span>
          </a>
        </div>
        <!-- 15 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="box-border relative z-30 inline-flex items-center justify-center w-auto px-8 py-3 overflow-hidden font-bold text-white transition-all duration-300 bg-indigo-600 rounded-md cursor-pointer group ring-offset-2 ring-1 ring-indigo-300 ring-offset-indigo-200 hover:ring-offset-indigo-500 ease focus:outline-none">
            <span class="absolute bottom-0 right-0 w-8 h-20 -mb-8 -mr-5 transition-all duration-300 ease-out transform rotate-45 translate-x-1 bg-white opacity-10 group-hover:translate-x-0"></span>
            <span class="absolute top-0 left-0 w-20 h-8 -mt-1 -ml-12 transition-all duration-300 ease-out transform -rotate-45 -translate-x-1 bg-white opacity-10 group-hover:translate-x-0"></span>
            <span class="relative z-20 flex items-center text-sm">
              <svg class="relative w-5 h-5 mr-2 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
                <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z"></path>
              </svg>
              Button
            </span>
          </a>
        </div>
        <!-- 16 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative z-30 inline-flex items-center justify-center w-auto px-8 py-3 overflow-hidden font-bold text-gray-500 transition-all duration-500 border border-gray-200 rounded-md cursor-pointer group ease bg-gradient-to-b from-white to-gray-50 hover:from-gray-50 hover:to-white active:to-white">
            <span class="w-full h-0.5 absolute bottom-0 group-active:bg-transparent left-0 bg-gray-100"></span>
            <span class="h-full w-0.5 absolute bottom-0 group-active:bg-transparent right-0 bg-gray-100"></span>
            Button
          </a>
        </div>
        <!-- 17 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-block px-4 py-2 font-medium group">
            <span class="absolute inset-0 w-full h-full transition duration-200 ease-out transform translate-x-1 translate-y-1 bg-black group-hover:-translate-x-0 group-hover:-translate-y-0"></span>
            <span class="absolute inset-0 w-full h-full bg-white border-2 border-black group-hover:bg-black"></span>
            <span class="relative text-black group-hover:text-white">Button</span>
          </a>
        </div>
  </section>
[/html]

0

133

[html]
<style>
@import url(https://fonts.googleapis.com/css2?famil … splay=swap);
*,
::after,
::before {
  box-sizing: border-box;
  border: 0 solid #e5e7eb;
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
}
::after,
::before {
  --tw-content: "";
}
html {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  font-family: REM, sans-serif;
  font-feature-settings: normal;
  font-variation-settings: normal;
  position: relative;
  scroll-behavior: smooth;
}
body {
  margin: 0;
  line-height: inherit;
}
hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
}
a {
  color: inherit;
  text-decoration: inherit;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
pre,
samp {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
    "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}
button,
select {
  text-transform: none;
}
[type="button"],
[type="reset"],
[type="submit"],
button {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}
:-moz-focusring {
  outline: auto;
}
:-moz-ui-invalid {
  box-shadow: none;
}
progress {
  vertical-align: baseline;
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
summary {
  display: list-item;
}
blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
dialog,
legend {
  padding: 0;
}
menu,
ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
textarea {
  resize: vertical;
}
input::-moz-placeholder,
textarea::-moz-placeholder {
  opacity: 1;
  color: #9ca3af;
}
input::placeholder,
textarea::placeholder {
  opacity: 1;
  color: #9ca3af;
}
[role="button"],
button {
  cursor: pointer;
}
:disabled {
  cursor: default;
}
audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
  display: block;
  vertical-align: middle;
}
img,
video {
  max-width: 100%;
  height: auto;
}
[hidden] {
  display: none;
}
::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
}
.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1rem;
  padding-left: 1rem;
}
@media (min-width: 640px) {
  .container {
    max-width: 640px;
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 768px;
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media (min-width: 1024px) {
  .container {
    max-width: 1024px;
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media (min-width: 1280px) {
  .container {
    max-width: 1280px;
    padding-right: 3rem;
    padding-left: 3rem;
  }
}
@media (min-width: 1536px) {
  .container {
    max-width: 1536px;
    padding-right: 14rem;
    padding-left: 14rem;
  }
}
.invisible {
  visibility: hidden;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.inset-0 {
  inset: 0px;
}
.bottom-0 {
  bottom: 0;
}
.left-0 {
  left: 0;
}
.right-0 {
  right: 0;
}
.top-0 {
  top: 0;
}
.top-1\/2 {
  top: 50%;
}
.z-10 {
  z-index: 10;
}
.z-20 {
  z-index: 20;
}
.z-30 {
  z-index: 30;
}
.m-1 {
  margin: 0.25rem;
}
.mx-10 {
  margin-left: 2.5rem;
  margin-right: 2.5rem;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.-mb-1 {
  margin-bottom: -0.25rem;
}
.-mb-8 {
  margin-bottom: -2rem;
}
.-ml-10 {
  margin-left: -2.5rem;
}
.-ml-12 {
  margin-left: -3rem;
}
.-ml-2 {
  margin-left: -0.5rem;
}
.-ml-3 {
  margin-left: -0.75rem;
}
.-mr-1 {
  margin-right: -0.25rem;
}
.-mr-10 {
  margin-right: -2.5rem;
}
.-mr-3 {
  margin-right: -0.75rem;
}
.-mr-5 {
  margin-right: -1.25rem;
}
.-mt-1 {
  margin-top: -0.25rem;
}
.-mt-10 {
  margin-top: -2.5rem;
}
.-mt-12 {
  margin-top: -3rem;
}
.mb-0 {
  margin-bottom: 0;
}
.mb-10 {
  margin-bottom: 2.5rem;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-3 {
  margin-bottom: 0.75rem;
}
.mb-32 {
  margin-bottom: 8rem;
}
.mb-9 {
  margin-bottom: 2.25rem;
}
.ml-0 {
  margin-left: 0;
}
.ml-0\.5 {
  margin-left: 0.125rem;
}
.ml-1 {
  margin-left: 0.25rem;
}
.ml-2 {
  margin-left: 0.5rem;
}
.ml-9 {
  margin-left: 2.25rem;
}
.mr-1 {
  margin-right: 0.25rem;
}
.mr-2 {
  margin-right: 0.5rem;
}
.mr-4 {
  margin-right: 1rem;
}
.mt-0 {
  margin-top: 0;
}
.mt-0\.5 {
  margin-top: 0.125rem;
}
.mt-1 {
  margin-top: 0.25rem;
}
.box-border {
  box-sizing: border-box;
}
.block {
  display: block;
}
.inline-block {
  display: inline-block;
}
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.grid {
  display: grid;
}
.hidden {
  display: none;
}
.h-0 {
  height: 0;
}
.h-0\.5 {
  height: 0.125rem;
}
.h-1 {
  height: 0.25rem;
}
.h-1\/3 {
  height: 33.333333%;
}
.h-10 {
  height: 2.5rem;
}
.h-12 {
  height: 3rem;
}
.h-16 {
  height: 4rem;
}
.h-20 {
  height: 5rem;
}
.h-24 {
  height: 6rem;
}
.h-32 {
  height: 8rem;
}
.h-4 {
  height: 1rem;
}
.h-40 {
  height: 10rem;
}
.h-48 {
  height: 12rem;
}
.h-5 {
  height: 1.25rem;
}
.h-6 {
  height: 1.5rem;
}
.h-64 {
  height: 16rem;
}
.h-8 {
  height: 2rem;
}
.h-full {
  height: 100%;
}
.w-0 {
  width: 0;
}
.w-0\.5 {
  width: 0.125rem;
}
.w-10 {
  width: 2.5rem;
}
.w-12 {
  width: 3rem;
}
.w-20 {
  width: 5rem;
}
.w-24 {
  width: 6rem;
}
.w-32 {
  width: 8rem;
}
.w-4 {
  width: 1rem;
}
.w-40 {
  width: 10rem;
}
.w-48 {
  width: 12rem;
}
.w-5 {
  width: 1.25rem;
}
.w-6 {
  width: 1.5rem;
}
.w-64 {
  width: 16rem;
}
.w-8 {
  width: 2rem;
}
.w-auto {
  width: auto;
}
.w-full {
  width: 100%;
}
.origin-bottom-left {
  transform-origin: bottom left;
}
.origin-center {
  transform-origin: center;
}
.origin-top-right {
  transform-origin: top right;
}
.-translate-x-1 {
  --tw-translate-x: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-12 {
  --tw-translate-x: -3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-2 {
  --tw-translate-x: -0.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-20 {
  --tw-translate-x: -5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-56 {
  --tw-translate-x: -14rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-8 {
  --tw-translate-x: -2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-full {
  --tw-translate-x: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-1 {
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-1\/2 {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-2 {
  --tw-translate-y: -0.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-24 {
  --tw-translate-y: -6rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-0 {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-1 {
  --tw-translate-x: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-1\/2 {
  --tw-translate-x: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-10 {
  --tw-translate-x: 2.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-12 {
  --tw-translate-x: 3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-24 {
  --tw-translate-x: 6rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-full {
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-0 {
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-1 {
  --tw-translate-y: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-10 {
  --tw-translate-y: 2.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-12 {
  --tw-translate-y: 3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-8 {
  --tw-translate-y: 2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-full {
  --tw-translate-y: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-rotate-12 {
  --tw-rotate: -12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-rotate-45 {
  --tw-rotate: -45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-rotate-90 {
  --tw-rotate: -90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-12 {
  --tw-rotate: 12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-45 {
  --tw-rotate: 45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-\[-40deg\] {
  --tw-rotate: -40deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-skew-x-12 {
  --tw-skew-x: -12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.skew-x-12 {
  --tw-skew-x: 12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.cursor-pointer {
  cursor: pointer;
}
.select-none {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.items-center {
  align-items: center;
}
.justify-start {
  justify-content: flex-start;
}
.justify-center {
  justify-content: center;
}
.gap-6 {
  gap: 1.5rem;
}
.overflow-hidden {
  overflow: hidden;
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-2xl {
  border-radius: 1rem;
}
.rounded-full {
  border-radius: 9999px;
}
.rounded-lg {
  border-radius: 0.5rem;
}
.rounded-md {
  border-radius: 0.375rem;
}
.rounded-xl {
  border-radius: 0.75rem;
}
.border {
  border-width: 1px;
}
.border-0 {
  border-width: 0;
}
.border-2 {
  border-width: 2px;
}
.border-4 {
  border-width: 4px;
}
.border-b-2 {
  border-bottom-width: 2px;
}
.border-b-4 {
  border-bottom-width: 4px;
}
.border-l-2 {
  border-left-width: 2px;
}
.border-t-2 {
  border-top-width: 2px;
}
.border-solid {
  border-style: solid;
}
.border-black {
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity));
}
.border-blue-700 {
  --tw-border-opacity: 1;
  border-color: rgb(29 78 216 / var(--tw-border-opacity));
}
.border-gray-100 {
  --tw-border-opacity: 1;
  border-color: rgb(243 244 246 / var(--tw-border-opacity));
}
.border-gray-200 {
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity));
}
.border-gray-600 {
  --tw-border-opacity: 1;
  border-color: rgb(75 85 99 / var(--tw-border-opacity));
}
.border-gray-900 {
  --tw-border-opacity: 1;
  border-color: rgb(17 24 39 / var(--tw-border-opacity));
}
.border-indigo-500 {
  --tw-border-opacity: 1;
  border-color: rgb(99 102 241 / var(--tw-border-opacity));
}
.border-indigo-600 {
  --tw-border-opacity: 1;
  border-color: rgb(79 70 229 / var(--tw-border-opacity));
}
.border-purple-500 {
  --tw-border-opacity: 1;
  border-color: rgb(168 85 247 / var(--tw-border-opacity));
}
.border-purple-700 {
  --tw-border-opacity: 1;
  border-color: rgb(126 34 206 / var(--tw-border-opacity));
}
.border-transparent {
  border-color: transparent;
}
.border-white {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity));
}
.bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}
.bg-blue-100\/60 {
  background-color: rgb(219 234 254 / 0.6);
}
.bg-blue-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(37 99 235 / var(--tw-bg-opacity));
}
.bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}
.bg-gray-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}
.bg-gray-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(75 85 99 / var(--tw-bg-opacity));
}
.bg-gray-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity));
}
.bg-gray-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(17 24 39 / var(--tw-bg-opacity));
}
.bg-green-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(74 222 128 / var(--tw-bg-opacity));
}
.bg-green-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(34 197 94 / var(--tw-bg-opacity));
}
.bg-indigo-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(79 70 229 / var(--tw-bg-opacity));
}
.bg-pink-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(236 72 153 / var(--tw-bg-opacity));
}
.bg-pink-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(157 23 77 / var(--tw-bg-opacity));
}
.bg-purple-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(192 132 252 / var(--tw-bg-opacity));
}
.bg-purple-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(168 85 247 / var(--tw-bg-opacity));
}
.bg-purple-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(147 51 234 / var(--tw-bg-opacity));
}
.bg-purple-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(126 34 206 / var(--tw-bg-opacity));
}
.bg-purple-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(107 33 168 / var(--tw-bg-opacity));
}
.bg-red-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(252 165 165 / var(--tw-bg-opacity));
}
.bg-red-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 68 68 / var(--tw-bg-opacity));
}
.bg-red-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(220 38 38 / var(--tw-bg-opacity));
}
.bg-red-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(185 28 28 / var(--tw-bg-opacity));
}
.bg-sky-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(14 165 233 / var(--tw-bg-opacity));
}
.bg-transparent {
  background-color: transparent;
}
.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.bg-gradient-to-b {
  background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
}
.bg-gradient-to-br {
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}
.bg-gradient-to-l {
  background-image: linear-gradient(to left, var(--tw-gradient-stops));
}
.bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.bg-gradient-to-t {
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
}
.bg-gradient-to-tr {
  background-image: linear-gradient(to top right, var(--tw-gradient-stops));
}
.from-\[\#ff8a05\] {
  --tw-gradient-from: #ff8a05 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 138 5 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-500 {
  --tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-600 {
  --tw-gradient-from: #2563eb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-pink-400 {
  --tw-gradient-from: #f472b6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(244 114 182 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-pink-600 {
  --tw-gradient-from: #db2777 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(219 39 119 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-purple-500 {
  --tw-gradient-from: #a855f7 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-purple-600 {
  --tw-gradient-from: #9333ea var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-transparent {
  --tw-gradient-from: transparent var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-white {
  --tw-gradient-from: #fff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.via-\[\#ff5478\] {
  --tw-gradient-to: rgb(255 84 120 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #ff5478 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-indigo-500 {
  --tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #6366f1 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-purple-600 {
  --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #9333ea var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-purple-700 {
  --tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #7e22ce var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-transparent {
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    transparent var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.to-\[\#ff00c6\] {
  --tw-gradient-to: #ff00c6 var(--tw-gradient-to-position);
}
.to-blue-400 {
  --tw-gradient-to: #60a5fa var(--tw-gradient-to-position);
}
.to-blue-500 {
  --tw-gradient-to: #3b82f6 var(--tw-gradient-to-position);
}
.to-blue-600 {
  --tw-gradient-to: #2563eb var(--tw-gradient-to-position);
}
.to-gray-50 {
  --tw-gradient-to: #f9fafb var(--tw-gradient-to-position);
}
.to-gray-700 {
  --tw-gradient-to: #374151 var(--tw-gradient-to-position);
}
.to-indigo-500 {
  --tw-gradient-to: #6366f1 var(--tw-gradient-to-position);
}
.to-pink-500 {
  --tw-gradient-to: #ec4899 var(--tw-gradient-to-position);
}
.to-pink-700 {
  --tw-gradient-to: #be185d var(--tw-gradient-to-position);
}
.to-purple-500 {
  --tw-gradient-to: #a855f7 var(--tw-gradient-to-position);
}
.to-purple-600 {
  --tw-gradient-to: #9333ea var(--tw-gradient-to-position);
}
.to-transparent {
  --tw-gradient-to: transparent var(--tw-gradient-to-position);
}
.bg-clip-text {
  -webkit-background-clip: text;
  background-clip: text;
}
.object-cover {
  -o-object-fit: cover;
  object-fit: cover;
}
.p-0 {
  padding: 0;
}
.p-0\.5 {
  padding: 0.125rem;
}
.p-4 {
  padding: 1rem;
}
.px-10 {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}
.px-12 {
  padding-left: 3rem;
  padding-right: 3rem;
}
.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.px-3\.5 {
  padding-left: 0.875rem;
  padding-right: 0.875rem;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.px-7 {
  padding-left: 1.75rem;
  padding-right: 1.75rem;
}
.px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}
.px-9 {
  padding-left: 2.25rem;
  padding-right: 2.25rem;
}
.py-0 {
  padding-top: 0;
  padding-bottom: 0;
}
.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-2\.5 {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}
.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}
.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.pb-20 {
  padding-bottom: 5rem;
}
.pl-2 {
  padding-left: 0.5rem;
}
.pl-2\.5 {
  padding-left: 0.625rem;
}
.pl-4 {
  padding-left: 1rem;
}
.pr-12 {
  padding-right: 3rem;
}
.pr-4 {
  padding-right: 1rem;
}
.pr-5 {
  padding-right: 1.25rem;
}
.pt-28 {
  padding-top: 7rem;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.align-middle {
  vertical-align: middle;
}
.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}
.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
.font-bold {
  font-weight: 700;
}
.font-medium {
  font-weight: 500;
}
.font-semibold {
  font-weight: 600;
}
.uppercase {
  text-transform: uppercase;
}
.leading-6 {
  line-height: 1.5rem;
}
.leading-\[50px\] {
  line-height: 50px;
}
.leading-tight {
  line-height: 1.25;
}
.tracking-tighter {
  letter-spacing: -0.05em;
}
.tracking-wide {
  letter-spacing: 0.025em;
}
.text-amber-300 {
  --tw-text-opacity: 1;
  color: rgb(252 211 77 / var(--tw-text-opacity));
}
.text-black {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.text-blue-500 {
  --tw-text-opacity: 1;
  color: rgb(59 130 246 / var(--tw-text-opacity));
}
.text-gray-500 {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity));
}
.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}
.text-gray-800 {
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity));
}
.text-gray-900 {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}
.text-green-400 {
  --tw-text-opacity: 1;
  color: rgb(74 222 128 / var(--tw-text-opacity));
}
.text-indigo-100 {
  --tw-text-opacity: 1;
  color: rgb(224 231 255 / var(--tw-text-opacity));
}
.text-indigo-600 {
  --tw-text-opacity: 1;
  color: rgb(79 70 229 / var(--tw-text-opacity));
}
.text-purple-500 {
  --tw-text-opacity: 1;
  color: rgb(168 85 247 / var(--tw-text-opacity));
}
.text-purple-600 {
  --tw-text-opacity: 1;
  color: rgb(147 51 234 / var(--tw-text-opacity));
}
.text-transparent {
  color: transparent;
}
.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.no-underline {
  text-decoration-line: none;
}
.opacity-0 {
  opacity: 0;
}
.opacity-10 {
  opacity: 0.1;
}
.opacity-100 {
  opacity: 1;
}
.opacity-30 {
  opacity: 0.3;
}
.opacity-5 {
  opacity: 0.05;
}
.opacity-50 {
  opacity: 0.5;
}
.opacity-80 {
  opacity: 0.8;
}
.opacity-90 {
  opacity: 0.9;
}
.opacity-\[3\%\] {
  opacity: 3%;
}
.mix-blend-screen {
  mix-blend-mode: screen;
}
.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color),
    0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-2xl {
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-inner {
  --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1),
    0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color),
    0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-md {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color),
    0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-xl {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1),
    0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color),
    0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.ring-1 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.ring-indigo-300 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(165 180 252 / var(--tw-ring-opacity));
}
.ring-offset-2 {
  --tw-ring-offset-width: 2px;
}
.ring-offset-indigo-200 {
  --tw-ring-offset-color: #c7d2fe;
}
.blur-md {
  --tw-blur: blur(12px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.blur-sm {
  --tw-blur: blur(4px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.transition {
  transition-property: color, background-color, border-color,
    text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,
    backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-colors {
  transition-property: color, background-color, border-color,
    text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.delay-100 {
  transition-delay: 0.1s;
}
.delay-200 {
  transition-delay: 0.2s;
}
.delay-300 {
  transition-delay: 0.3s;
}
.duration-100 {
  transition-duration: 0.1s;
}
.duration-1000 {
  transition-duration: 1s;
}
.duration-150 {
  transition-duration: 150ms;
}
.duration-200 {
  transition-duration: 0.2s;
}
.duration-300 {
  transition-duration: 0.3s;
}
.duration-500 {
  transition-duration: 0.5s;
}
.duration-700 {
  transition-duration: 0.7s;
}
.ease-in-out {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.ease-linear {
  transition-timing-function: linear;
}
.ease-out {
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}
body {
  font-size: 15px;
  overflow-x: hidden;
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity));
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 600;
}
.before\:absolute::before {
  content: var(--tw-content);
  position: absolute;
}
.before\:bottom-0::before {
  content: var(--tw-content);
  bottom: 0;
}
.before\:left-0::before {
  content: var(--tw-content);
  left: 0;
}
.before\:h-\[2px\]::before {
  content: var(--tw-content);
  height: 2px;
}
.before\:w-0::before {
  content: var(--tw-content);
  width: 0;
}
.before\:bg-amber-300::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(252 211 77 / var(--tw-bg-opacity));
}
.before\:transition-all::before {
  content: var(--tw-content);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.before\:duration-500::before {
  content: var(--tw-content);
  transition-duration: 0.5s;
}
.after\:absolute::after {
  content: var(--tw-content);
  position: absolute;
}
.after\:bottom-0::after {
  content: var(--tw-content);
  bottom: 0;
}
.after\:left-0::after {
  content: var(--tw-content);
  left: 0;
}
.after\:-z-10::after {
  content: var(--tw-content);
  z-index: -10;
}
.after\:h-0::after {
  content: var(--tw-content);
  height: 0;
}
.after\:w-full::after {
  content: var(--tw-content);
  width: 100%;
}
.after\:bg-amber-300::after {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(252 211 77 / var(--tw-bg-opacity));
}
.after\:text-white::after {
  content: var(--tw-content);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.after\:transition-all::after {
  content: var(--tw-content);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.after\:duration-500::after {
  content: var(--tw-content);
  transition-duration: 0.5s;
}
.focus-within\:border-blue-700:focus-within {
  --tw-border-opacity: 1;
  border-color: rgb(29 78 216 / var(--tw-border-opacity));
}
.focus-within\:bg-blue-700:focus-within {
  --tw-bg-opacity: 1;
  background-color: rgb(29 78 216 / var(--tw-bg-opacity));
}
.hover\:border-blue-600:hover {
  --tw-border-opacity: 1;
  border-color: rgb(37 99 235 / var(--tw-border-opacity));
}
.hover\:border-blue-700:hover {
  --tw-border-opacity: 1;
  border-color: rgb(29 78 216 / var(--tw-border-opacity));
}
.hover\:border-sky-500:hover {
  --tw-border-opacity: 1;
  border-color: rgb(14 165 233 / var(--tw-border-opacity));
}
.hover\:bg-blue-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(219 234 254 / var(--tw-bg-opacity));
}
.hover\:bg-blue-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(29 78 216 / var(--tw-bg-opacity));
}
.hover\:bg-gray-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity));
}
.hover\:bg-gray-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}
.hover\:bg-gray-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity));
}
.hover\:bg-gray-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity));
}
.hover\:bg-green-400:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(74 222 128 / var(--tw-bg-opacity));
}
.hover\:bg-green-500:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(34 197 94 / var(--tw-bg-opacity));
}
.hover\:bg-indigo-500:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(99 102 241 / var(--tw-bg-opacity));
}
.hover\:bg-transparent:hover {
  background-color: transparent;
}
.hover\:bg-white:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.hover\:bg-gradient-to-r:hover {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.hover\:from-gray-50:hover {
  --tw-gradient-from: #f9fafb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-green-500:hover {
  --tw-gradient-from: #22c55e var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-purple-600:hover {
  --tw-gradient-from: #9333ea var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:to-green-400:hover {
  --tw-gradient-to: #4ade80 var(--tw-gradient-to-position);
}
.hover\:to-pink-600:hover {
  --tw-gradient-to: #db2777 var(--tw-gradient-to-position);
}
.hover\:to-white:hover {
  --tw-gradient-to: #fff var(--tw-gradient-to-position);
}
.hover\:pl-10:hover {
  padding-left: 2.5rem;
}
.hover\:pr-6:hover {
  padding-right: 1.5rem;
}
.hover\:text-black:hover {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.hover\:text-blue-600:hover {
  --tw-text-opacity: 1;
  color: rgb(37 99 235 / var(--tw-text-opacity));
}
.hover\:text-gray-600:hover {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}
.hover\:text-sky-500:hover {
  --tw-text-opacity: 1;
  color: rgb(14 165 233 / var(--tw-text-opacity));
}
.hover\:text-white:hover {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.hover\:ring-1:hover {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.hover\:ring-2:hover {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.hover\:ring-green-400:hover {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(74 222 128 / var(--tw-ring-opacity));
}
.hover\:ring-purple-500:hover {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity));
}
.hover\:ring-offset-2:hover {
  --tw-ring-offset-width: 2px;
}
.hover\:ring-offset-indigo-500:hover {
  --tw-ring-offset-color: #6366f1;
}
.hover\:delay-\[\.5s\]:hover {
  transition-delay: 0.5s;
}
.before\:hover\:w-full:hover::before {
  content: var(--tw-content);
  width: 100%;
}
.after\:hover\:h-full:hover::after {
  content: var(--tw-content);
  height: 100%;
}
.after\:hover\:delay-\[0\.4s\]:hover::after {
  content: var(--tw-content);
  transition-delay: 0.4s;
}
.focus\:no-underline:focus {
  text-decoration-line: none;
}
.focus\:shadow-none:focus {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.focus\:outline-none:focus {
  outline: transparent solid 2px;
  outline-offset: 2px;
}
.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-blue-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity));
}
.focus\:ring-indigo-600:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(79 70 229 / var(--tw-ring-opacity));
}
.focus\:ring-offset-2:focus {
  --tw-ring-offset-width: 2px;
}
.active\:border-purple-600:active {
  --tw-border-opacity: 1;
  border-color: rgb(147 51 234 / var(--tw-border-opacity));
}
.active\:to-white:active {
  --tw-gradient-to: #fff var(--tw-gradient-to-position);
}
.active\:shadow-none:active {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.group:hover .group-hover\:top-0 {
  top: 0;
}
.group:hover .group-hover\:-mr-4 {
  margin-right: -1rem;
}
.group:hover .group-hover\:-mt-4 {
  margin-top: -1rem;
}
.group:hover .group-hover\:mb-0 {
  margin-bottom: 0;
}
.group:hover .group-hover\:mb-12 {
  margin-bottom: 3rem;
}
.group:hover .group-hover\:mb-32 {
  margin-bottom: 8rem;
}
.group:hover .group-hover\:ml-0 {
  margin-left: 0;
}
.group:hover .group-hover\:mr-0 {
  margin-right: 0;
}
.group:hover .group-hover\:mt-0 {
  margin-top: 0;
}
.group:hover .group-hover\:h-32 {
  height: 8rem;
}
.group:hover .group-hover\:h-56 {
  height: 14rem;
}
.group:hover .group-hover\:h-64 {
  height: 16rem;
}
.group:hover .group-hover\:h-full {
  height: 100%;
}
.group:hover .group-hover\:w-32 {
  width: 8rem;
}
.group:hover .group-hover\:w-56 {
  width: 14rem;
}
.group:hover .group-hover\:w-full {
  width: 100%;
}
.group:hover .group-hover\:-translate-x-0 {
  --tw-translate-x: -0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-x-40 {
  --tw-translate-x: -10rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-x-8 {
  --tw-translate-x: -2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-y-0 {
  --tw-translate-y: -0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-y-32 {
  --tw-translate-y: -8rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-x-0 {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-x-12 {
  --tw-translate-x: 3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-x-full {
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-y-0 {
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-rotate-180 {
  --tw-rotate: -180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:rotate-90 {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-skew-x-12 {
  --tw-skew-x: -12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:skew-x-12 {
  --tw-skew-x: 12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:border-\[25px\] {
  border-width: 25px;
}
.group:hover .group-hover\:bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-purple-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(168 85 247 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-purple-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(147 51 234 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-purple-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(126 34 206 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-opacity-0 {
  --tw-bg-opacity: 0;
}
.group:hover .group-hover\:from-\[\#ff00c6\] {
  --tw-gradient-from: #ff00c6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 0 198 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.group:hover .group-hover\:via-\[\#ff5478\] {
  --tw-gradient-to: rgb(255 84 120 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #ff5478 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.group:hover .group-hover\:to-\[\#ff8a05\] {
  --tw-gradient-to: #ff8a05 var(--tw-gradient-to-position);
}
.group:hover .group-hover\:text-blue-600 {
  --tw-text-opacity: 1;
  color: rgb(37 99 235 / var(--tw-text-opacity));
}
.group:hover .group-hover\:text-gray-200 {
  --tw-text-opacity: 1;
  color: rgb(229 231 235 / var(--tw-text-opacity));
}
.group:hover .group-hover\:text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.group:hover .group-hover\:opacity-100 {
  opacity: 1;
}
.group:hover .group-hover\:blur-sm {
  --tw-blur: blur(4px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.group:active .group-active\:bg-transparent {
  background-color: transparent;
}
.group:active .group-active\:opacity-0 {
  opacity: 0;
}
@media (min-width: 640px) {
  .sm\:mb-0 {
    margin-bottom: 0;
  }
  .sm\:w-auto {
    width: auto;
  }
  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 768px) {
  .md\:mx-0 {
    margin-left: 0;
    margin-right: 0;
  }
  .md\:w-auto {
    width: auto;
  }
  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 1024px) {
  .lg\:flex {
    display: flex;
  }
}
/*# sourceMappingURL=style.min.css.map */

</style>
<body class="bg-gray-50">
  <!-- Section Start -->
  <section class="section pt-28 pb-20" id="home">
    <div class="mx-10">
      <div class="lg:flex justify-center">
        <div class="text-center">
          <div class="text-center">
            <h1 class="text-4xl font-semibold leading-[50px] tracking-wide text-transparent bg-clip-text bg-gradient-to-l from-pink-400 to-blue-600 mb-10">
              45 CSS Only Modern Button Styles
            </h1>
          </div>
        </div>
      </div>
    </div>
  </section>
  <!-- Section End -->

  <section class="relative pb-20">
    <div class="container">
      <div class="grid md:grid-cols-3 sm:grid-cols-2 grid-cols-1 gap-6">

        <!-- 18 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-flex items-center justify-center p-4 px-6 py-3 overflow-hidden font-medium text-indigo-600 transition duration-300 ease-out border-2 border-purple-500 rounded-full shadow-md group">
            <span class="absolute inset-0 flex items-center justify-center w-full h-full text-white duration-300 -translate-x-full bg-purple-500 group-hover:translate-x-0 ease">
              <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
                <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M14 5l7 7m0 0l-7 7m7-7H3"></path>
              </svg>
            </span>
            <span class="absolute flex items-center justify-center w-full h-full text-purple-500 transition-all duration-300 transform group-hover:translate-x-full ease">Button</span>
            <span class="relative invisible">Button</span>
          </a>
        </div>
        <!-- 19 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative items-center justify-center inline-block p-4 px-5 py-3 overflow-hidden font-medium text-indigo-600 rounded-lg shadow-2xl group">
            <span class="absolute top-0 left-0 w-40 h-40 -mt-10 -ml-3 transition-all duration-700 bg-red-500 rounded-full blur-md ease"></span>
            <span class="absolute inset-0 w-full h-full transition duration-700 group-hover:rotate-180 ease">
              <span class="absolute bottom-0 left-0 w-24 h-24 -ml-10 bg-purple-500 rounded-full blur-md"></span>
              <span class="absolute bottom-0 right-0 w-24 h-24 -mr-10 bg-pink-500 rounded-full blur-md"></span>
            </span>
            <span class="relative text-white">Button</span>
          </a>
        </div>
        <!-- 20 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-flex items-center justify-start px-6 py-3 overflow-hidden font-medium transition-all bg-red-500 rounded-xl group">
            <span class="absolute top-0 right-0 inline-block w-4 h-4 transition-all duration-500 ease-in-out bg-red-700 rounded group-hover:-mr-4 group-hover:-mt-4">
              <span class="absolute top-0 right-0 w-5 h-5 rotate-45 translate-x-1/2 -translate-y-1/2 bg-white"></span>
            </span>
            <span class="absolute bottom-0 left-0 w-full h-full transition-all duration-500 ease-in-out delay-200 -translate-x-full translate-y-full bg-red-600 rounded-2xl group-hover:mb-12 group-hover:translate-x-0"></span>
            <span class="relative w-full text-left text-white transition-colors duration-200 ease-in-out group-hover:text-white">Button</span>
          </a>
        </div>
        <!-- 21 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="px-5 py-2.5 font-medium bg-blue-100/60 hover:bg-blue-100 hover:text-blue-600 text-blue-500 rounded-lg text-sm">
            Button
          </a>
        </div>
        <!-- 22 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-flex items-center justify-center px-4 py-2 text-base font-medium leading-6 text-white whitespace-no-wrap bg-blue-600 border border-blue-700 rounded-md shadow-sm hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500" data-rounded="rounded-md" data-primary="blue-600" data-primary-reset="{}">
            Button
          </a>
        </div>
        <!-- 23 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-flex items-center px-6 py-3 text-gray-500 bg-gray-100 rounded-md hover:bg-gray-200 hover:text-gray-600">
            Button
          </a>
        </div>
        <!-- 24 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-flex items-center justify-center px-4 py-2 text-base font-medium leading-6 text-gray-600 whitespace-no-wrap bg-white border border-gray-200 rounded-md shadow-sm hover:bg-gray-50 focus:outline-none focus:shadow-none">
            Button
          </a>
        </div>
        <!-- 25 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-flex items-center justify-center h-12 px-6 font-medium tracking-wide text-white transition duration-200 bg-gray-900 rounded-lg hover:bg-gray-800 focus:shadow-outline focus:outline-none">
            Button
          </a>
        </div>
        <!-- 26 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-flex items-center justify-center px-5 py-3 text-base font-medium text-center text-indigo-100 border border-indigo-500 rounded-lg shadow-sm cursor-pointer hover:text-white bg-gradient-to-br from-purple-500 via-indigo-500 to-indigo-500">
            <svg class="w-5 h-5 mr-2" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
              <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z"></path>
            </svg>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 27 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-flex items-center justify-center w-full px-8 py-4 text-base font-bold leading-6 text-white bg-indigo-600 border border-transparent rounded-full md:w-auto hover:bg-indigo-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-600">
            Button
          </a>
        </div>
        <!-- 28 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-flex items-center justify-center w-full px-6 py-3 mb-2 text-lg text-white bg-green-500 rounded-md hover:bg-green-400 sm:w-auto sm:mb-0" data-primary="green-400" data-rounded="rounded-2xl" data-primary-reset="{}">
            Get Started
            <svg class="w-4 h-4 ml-1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor">
              <path fill-rule="evenodd" d="M10.293 3.293a1 1 0 011.414 0l6 6a1 1 0 010 1.414l-6 6a1 1 0 01-1.414-1.414L14.586 11H3a1 1 0 110-2h11.586l-4.293-4.293a1 1 0 010-1.414z" clip-rule="evenodd"></path>
            </svg>
          </a>
        </div>
        <!-- 29 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative px-6 py-3 font-bold text-white rounded-lg group">
            <span class="absolute inset-0 w-full h-full transition duration-300 transform -translate-x-1 -translate-y-1 bg-purple-800 ease opacity-80 group-hover:translate-x-0 group-hover:translate-y-0"></span>
            <span class="absolute inset-0 w-full h-full transition duration-300 transform translate-x-1 translate-y-1 bg-pink-800 ease opacity-80 group-hover:translate-x-0 group-hover:translate-y-0 mix-blend-screen"></span>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 30 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-flex items-center justify-center px-6 py-3 overflow-hidden font-bold text-black hover:text-white rounded-md shadow-2xl group">
            <span class="absolute inset-0 w-full h-full transition duration-300 ease-out opacity-0 bg-gradient-to-br from-pink-600 via-purple-700 to-blue-400 group-hover:opacity-100"></span>
            <!-- Top glass gradient -->
            <span class="absolute top-0 left-0 w-full bg-gradient-to-b from-white to-transparent opacity-5 h-1/3"></span>
            <!-- Bottom gradient -->
            <span class="absolute bottom-0 left-0 w-full h-1/3 bg-gradient-to-t from-white to-transparent opacity-5"></span>
            <!-- Left gradient -->
            <span class="absolute bottom-0 left-0 w-4 h-full bg-gradient-to-r from-white to-transparent opacity-5"></span>
            <!-- Right gradient -->
            <span class="absolute bottom-0 right-0 w-4 h-full bg-gradient-to-l from-white to-transparent opacity-5"></span>
            <span class="absolute inset-0 w-full h-full border border-white rounded-md opacity-10"></span>
            <span class="absolute w-0 h-0 transition-all duration-300 ease-out bg-white rounded-full group-hover:w-56 group-hover:h-56 opacity-5"></span>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 31 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative p-0.5 inline-flex items-center justify-center font-bold overflow-hidden group rounded-md">
            <span class="w-full h-full bg-gradient-to-br from-[#ff8a05] via-[#ff5478] to-[#ff00c6] group-hover:from-[#ff00c6] group-hover:via-[#ff5478] group-hover:to-[#ff8a05] absolute"></span>
            <span class="relative px-6 py-3 transition-all ease-out bg-gray-900 rounded-md group-hover:bg-opacity-0 duration-400">
              <span class="relative text-white">Button</span>
            </span>
          </a>
        </div>
        <!-- 32 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-flex items-center justify-start px-5 py-3 overflow-hidden font-bold rounded-full group">
            <span class="w-32 h-32 rotate-45 translate-x-12 -translate-y-2 absolute left-0 top-0 bg-black opacity-[3%]"></span>
            <span class="absolute top-0 left-0 w-48 h-48 -mt-1 transition-all duration-500 ease-in-out rotate-45 -translate-x-56 -translate-y-24 bg-black opacity-100 group-hover:-translate-x-8"></span>
            <span class="relative w-full text-left text-blbg-black transition-colors duration-200 ease-in-out group-hover:text-gray-200">Button</span>
            <span class="absolute inset-0 border-2 border-blbg-black rounded-full"></span>
          </a>
        </div>
        <!-- 33 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative items-center justify-start inline-block px-5 py-3 overflow-hidden font-medium transition-all shadow bg-blue-600 rounded-full hover:bg-white group">
            <span class="absolute inset-0 border-0 group-hover:border-[25px] ease-linear duration-100 transition-all border-white rounded-full"></span>
            <span class="relative w-full text-left text-white transition-colors duration-200 ease-in-out group-hover:text-blue-600">Button</span>
          </a>
        </div>
        <!-- 34 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-flex items-center justify-start px-6 py-3 overflow-hidden font-medium transition-all shadow bg-white rounded hover:bg-white group">
            <span class="w-48 h-48 rounded rotate-[-40deg] bg-purple-600 absolute bottom-0 left-0 -translate-x-full ease-out duration-500 transition-all translate-y-full mb-9 ml-9 group-hover:ml-0 group-hover:mb-32 group-hover:translate-x-0"></span>
            <span class="relative w-full text-left text-black transition-colors duration-300 ease-in-out group-hover:text-white">Button</span>
          </a>
        </div>
        <!-- 35 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-flex items-center justify-center px-6 py-3 text-lg font-medium tracking-tighter text-white bg-transparent shadow rounded-md group">
            <span class="absolute inset-0 w-full h-full mt-1 ml-1 transition-all duration-300 ease-in-out bg-purple-600 rounded-md group-hover:mt-0 group-hover:ml-0"></span>
            <span class="absolute inset-0 w-full h-full bg-white rounded-md "></span>
            <span class="absolute inset-0 w-full h-full transition-all duration-200 ease-in-out delay-100 bg-purple-600 rounded-md opacity-0 group-hover:opacity-100 "></span>
            <span class="relative text-purple-600 transition-colors duration-200 ease-in-out delay-100 group-hover:text-white">Button</span>
          </a>
        </div>
        <!-- 36 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-flex items-center justify-center px-10 py-4 overflow-hidden font-mono font-medium tracking-tighter text-white bg-gray-800 rounded-lg group">
            <span class="absolute w-0 h-0 transition-all duration-500 ease-out bg-green-500 rounded-full group-hover:w-56 group-hover:h-56"></span>
            <span class="absolute inset-0 w-full h-full -mt-1 rounded-lg opacity-30 bg-gradient-to-b from-transparent via-transparent to-gray-700"></span>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 37 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-flex items-center w-full px-5 py-3 mb-3 mr-1 text-base font-semibold text-white no-underline align-middle bg-blue-600 border border-transparent border-solid rounded-md cursor-pointer select-none sm:mb-0 sm:w-auto hover:bg-blue-700 hover:border-blue-700 hover:text-white focus-within:bg-blue-700 focus-within:border-blue-700">
            Button
            <svg class="w-4 h-4 ml-2" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
              <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M14 5l7 7m0 0l-7 7m7-7H3"></path>
            </svg>
          </a>
        </div>
        <!-- 38 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-block w-auto px-6 py-3 overflow-hidden text-base font-semibold text-center shadow text-gray-800 rounded-lg bg-gray-50 hover:text-black hover:bg-white">
            Button
          </a>
        </div>

    </div><!-- Container End -->
  </section>
[/html]

0

134

[html]
<style>
@import url(https://fonts.googleapis.com/css2?famil … splay=swap);
*,
::after,
::before {
  box-sizing: border-box;
  border: 0 solid #e5e7eb;
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
}
::after,
::before {
  --tw-content: "";
}
html {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  font-family: REM, sans-serif;
  font-feature-settings: normal;
  font-variation-settings: normal;
  position: relative;
  scroll-behavior: smooth;
}
body {
  margin: 0;
  line-height: inherit;
}
hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
}
a {
  color: inherit;
  text-decoration: inherit;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
pre,
samp {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
    "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}
button,
select {
  text-transform: none;
}
[type="button"],
[type="reset"],
[type="submit"],
button {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}
:-moz-focusring {
  outline: auto;
}
:-moz-ui-invalid {
  box-shadow: none;
}
progress {
  vertical-align: baseline;
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
summary {
  display: list-item;
}
blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
dialog,
legend {
  padding: 0;
}
menu,
ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
textarea {
  resize: vertical;
}
input::-moz-placeholder,
textarea::-moz-placeholder {
  opacity: 1;
  color: #9ca3af;
}
input::placeholder,
textarea::placeholder {
  opacity: 1;
  color: #9ca3af;
}
[role="button"],
button {
  cursor: pointer;
}
:disabled {
  cursor: default;
}
audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
  display: block;
  vertical-align: middle;
}
img,
video {
  max-width: 100%;
  height: auto;
}
[hidden] {
  display: none;
}
::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
}
.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1rem;
  padding-left: 1rem;
}
@media (min-width: 640px) {
  .container {
    max-width: 640px;
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 768px;
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media (min-width: 1024px) {
  .container {
    max-width: 1024px;
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media (min-width: 1280px) {
  .container {
    max-width: 1280px;
    padding-right: 3rem;
    padding-left: 3rem;
  }
}
@media (min-width: 1536px) {
  .container {
    max-width: 1536px;
    padding-right: 14rem;
    padding-left: 14rem;
  }
}
.invisible {
  visibility: hidden;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.inset-0 {
  inset: 0px;
}
.bottom-0 {
  bottom: 0;
}
.left-0 {
  left: 0;
}
.right-0 {
  right: 0;
}
.top-0 {
  top: 0;
}
.top-1\/2 {
  top: 50%;
}
.z-10 {
  z-index: 10;
}
.z-20 {
  z-index: 20;
}
.z-30 {
  z-index: 30;
}
.m-1 {
  margin: 0.25rem;
}
.mx-10 {
  margin-left: 2.5rem;
  margin-right: 2.5rem;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.-mb-1 {
  margin-bottom: -0.25rem;
}
.-mb-8 {
  margin-bottom: -2rem;
}
.-ml-10 {
  margin-left: -2.5rem;
}
.-ml-12 {
  margin-left: -3rem;
}
.-ml-2 {
  margin-left: -0.5rem;
}
.-ml-3 {
  margin-left: -0.75rem;
}
.-mr-1 {
  margin-right: -0.25rem;
}
.-mr-10 {
  margin-right: -2.5rem;
}
.-mr-3 {
  margin-right: -0.75rem;
}
.-mr-5 {
  margin-right: -1.25rem;
}
.-mt-1 {
  margin-top: -0.25rem;
}
.-mt-10 {
  margin-top: -2.5rem;
}
.-mt-12 {
  margin-top: -3rem;
}
.mb-0 {
  margin-bottom: 0;
}
.mb-10 {
  margin-bottom: 2.5rem;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-3 {
  margin-bottom: 0.75rem;
}
.mb-32 {
  margin-bottom: 8rem;
}
.mb-9 {
  margin-bottom: 2.25rem;
}
.ml-0 {
  margin-left: 0;
}
.ml-0\.5 {
  margin-left: 0.125rem;
}
.ml-1 {
  margin-left: 0.25rem;
}
.ml-2 {
  margin-left: 0.5rem;
}
.ml-9 {
  margin-left: 2.25rem;
}
.mr-1 {
  margin-right: 0.25rem;
}
.mr-2 {
  margin-right: 0.5rem;
}
.mr-4 {
  margin-right: 1rem;
}
.mt-0 {
  margin-top: 0;
}
.mt-0\.5 {
  margin-top: 0.125rem;
}
.mt-1 {
  margin-top: 0.25rem;
}
.box-border {
  box-sizing: border-box;
}
.block {
  display: block;
}
.inline-block {
  display: inline-block;
}
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.grid {
  display: grid;
}
.hidden {
  display: none;
}
.h-0 {
  height: 0;
}
.h-0\.5 {
  height: 0.125rem;
}
.h-1 {
  height: 0.25rem;
}
.h-1\/3 {
  height: 33.333333%;
}
.h-10 {
  height: 2.5rem;
}
.h-12 {
  height: 3rem;
}
.h-16 {
  height: 4rem;
}
.h-20 {
  height: 5rem;
}
.h-24 {
  height: 6rem;
}
.h-32 {
  height: 8rem;
}
.h-4 {
  height: 1rem;
}
.h-40 {
  height: 10rem;
}
.h-48 {
  height: 12rem;
}
.h-5 {
  height: 1.25rem;
}
.h-6 {
  height: 1.5rem;
}
.h-64 {
  height: 16rem;
}
.h-8 {
  height: 2rem;
}
.h-full {
  height: 100%;
}
.w-0 {
  width: 0;
}
.w-0\.5 {
  width: 0.125rem;
}
.w-10 {
  width: 2.5rem;
}
.w-12 {
  width: 3rem;
}
.w-20 {
  width: 5rem;
}
.w-24 {
  width: 6rem;
}
.w-32 {
  width: 8rem;
}
.w-4 {
  width: 1rem;
}
.w-40 {
  width: 10rem;
}
.w-48 {
  width: 12rem;
}
.w-5 {
  width: 1.25rem;
}
.w-6 {
  width: 1.5rem;
}
.w-64 {
  width: 16rem;
}
.w-8 {
  width: 2rem;
}
.w-auto {
  width: auto;
}
.w-full {
  width: 100%;
}
.origin-bottom-left {
  transform-origin: bottom left;
}
.origin-center {
  transform-origin: center;
}
.origin-top-right {
  transform-origin: top right;
}
.-translate-x-1 {
  --tw-translate-x: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-12 {
  --tw-translate-x: -3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-2 {
  --tw-translate-x: -0.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-20 {
  --tw-translate-x: -5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-56 {
  --tw-translate-x: -14rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-8 {
  --tw-translate-x: -2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-full {
  --tw-translate-x: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-1 {
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-1\/2 {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-2 {
  --tw-translate-y: -0.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-24 {
  --tw-translate-y: -6rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-0 {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-1 {
  --tw-translate-x: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-1\/2 {
  --tw-translate-x: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-10 {
  --tw-translate-x: 2.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-12 {
  --tw-translate-x: 3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-24 {
  --tw-translate-x: 6rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-full {
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-0 {
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-1 {
  --tw-translate-y: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-10 {
  --tw-translate-y: 2.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-12 {
  --tw-translate-y: 3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-8 {
  --tw-translate-y: 2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-full {
  --tw-translate-y: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-rotate-12 {
  --tw-rotate: -12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-rotate-45 {
  --tw-rotate: -45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-rotate-90 {
  --tw-rotate: -90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-12 {
  --tw-rotate: 12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-45 {
  --tw-rotate: 45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-\[-40deg\] {
  --tw-rotate: -40deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-skew-x-12 {
  --tw-skew-x: -12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.skew-x-12 {
  --tw-skew-x: 12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.cursor-pointer {
  cursor: pointer;
}
.select-none {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.items-center {
  align-items: center;
}
.justify-start {
  justify-content: flex-start;
}
.justify-center {
  justify-content: center;
}
.gap-6 {
  gap: 1.5rem;
}
.overflow-hidden {
  overflow: hidden;
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-2xl {
  border-radius: 1rem;
}
.rounded-full {
  border-radius: 9999px;
}
.rounded-lg {
  border-radius: 0.5rem;
}
.rounded-md {
  border-radius: 0.375rem;
}
.rounded-xl {
  border-radius: 0.75rem;
}
.border {
  border-width: 1px;
}
.border-0 {
  border-width: 0;
}
.border-2 {
  border-width: 2px;
}
.border-4 {
  border-width: 4px;
}
.border-b-2 {
  border-bottom-width: 2px;
}
.border-b-4 {
  border-bottom-width: 4px;
}
.border-l-2 {
  border-left-width: 2px;
}
.border-t-2 {
  border-top-width: 2px;
}
.border-solid {
  border-style: solid;
}
.border-black {
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity));
}
.border-blue-700 {
  --tw-border-opacity: 1;
  border-color: rgb(29 78 216 / var(--tw-border-opacity));
}
.border-gray-100 {
  --tw-border-opacity: 1;
  border-color: rgb(243 244 246 / var(--tw-border-opacity));
}
.border-gray-200 {
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity));
}
.border-gray-600 {
  --tw-border-opacity: 1;
  border-color: rgb(75 85 99 / var(--tw-border-opacity));
}
.border-gray-900 {
  --tw-border-opacity: 1;
  border-color: rgb(17 24 39 / var(--tw-border-opacity));
}
.border-indigo-500 {
  --tw-border-opacity: 1;
  border-color: rgb(99 102 241 / var(--tw-border-opacity));
}
.border-indigo-600 {
  --tw-border-opacity: 1;
  border-color: rgb(79 70 229 / var(--tw-border-opacity));
}
.border-purple-500 {
  --tw-border-opacity: 1;
  border-color: rgb(168 85 247 / var(--tw-border-opacity));
}
.border-purple-700 {
  --tw-border-opacity: 1;
  border-color: rgb(126 34 206 / var(--tw-border-opacity));
}
.border-transparent {
  border-color: transparent;
}
.border-white {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity));
}
.bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}
.bg-blue-100\/60 {
  background-color: rgb(219 234 254 / 0.6);
}
.bg-blue-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(37 99 235 / var(--tw-bg-opacity));
}
.bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}
.bg-gray-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}
.bg-gray-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(75 85 99 / var(--tw-bg-opacity));
}
.bg-gray-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity));
}
.bg-gray-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(17 24 39 / var(--tw-bg-opacity));
}
.bg-green-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(74 222 128 / var(--tw-bg-opacity));
}
.bg-green-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(34 197 94 / var(--tw-bg-opacity));
}
.bg-indigo-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(79 70 229 / var(--tw-bg-opacity));
}
.bg-pink-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(236 72 153 / var(--tw-bg-opacity));
}
.bg-pink-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(157 23 77 / var(--tw-bg-opacity));
}
.bg-purple-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(192 132 252 / var(--tw-bg-opacity));
}
.bg-purple-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(168 85 247 / var(--tw-bg-opacity));
}
.bg-purple-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(147 51 234 / var(--tw-bg-opacity));
}
.bg-purple-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(126 34 206 / var(--tw-bg-opacity));
}
.bg-purple-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(107 33 168 / var(--tw-bg-opacity));
}
.bg-red-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(252 165 165 / var(--tw-bg-opacity));
}
.bg-red-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 68 68 / var(--tw-bg-opacity));
}
.bg-red-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(220 38 38 / var(--tw-bg-opacity));
}
.bg-red-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(185 28 28 / var(--tw-bg-opacity));
}
.bg-sky-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(14 165 233 / var(--tw-bg-opacity));
}
.bg-transparent {
  background-color: transparent;
}
.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.bg-gradient-to-b {
  background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
}
.bg-gradient-to-br {
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}
.bg-gradient-to-l {
  background-image: linear-gradient(to left, var(--tw-gradient-stops));
}
.bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.bg-gradient-to-t {
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
}
.bg-gradient-to-tr {
  background-image: linear-gradient(to top right, var(--tw-gradient-stops));
}
.from-\[\#ff8a05\] {
  --tw-gradient-from: #ff8a05 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 138 5 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-500 {
  --tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-600 {
  --tw-gradient-from: #2563eb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-pink-400 {
  --tw-gradient-from: #f472b6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(244 114 182 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-pink-600 {
  --tw-gradient-from: #db2777 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(219 39 119 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-purple-500 {
  --tw-gradient-from: #a855f7 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-purple-600 {
  --tw-gradient-from: #9333ea var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-transparent {
  --tw-gradient-from: transparent var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-white {
  --tw-gradient-from: #fff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.via-\[\#ff5478\] {
  --tw-gradient-to: rgb(255 84 120 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #ff5478 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-indigo-500 {
  --tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #6366f1 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-purple-600 {
  --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #9333ea var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-purple-700 {
  --tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #7e22ce var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-transparent {
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    transparent var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.to-\[\#ff00c6\] {
  --tw-gradient-to: #ff00c6 var(--tw-gradient-to-position);
}
.to-blue-400 {
  --tw-gradient-to: #60a5fa var(--tw-gradient-to-position);
}
.to-blue-500 {
  --tw-gradient-to: #3b82f6 var(--tw-gradient-to-position);
}
.to-blue-600 {
  --tw-gradient-to: #2563eb var(--tw-gradient-to-position);
}
.to-gray-50 {
  --tw-gradient-to: #f9fafb var(--tw-gradient-to-position);
}
.to-gray-700 {
  --tw-gradient-to: #374151 var(--tw-gradient-to-position);
}
.to-indigo-500 {
  --tw-gradient-to: #6366f1 var(--tw-gradient-to-position);
}
.to-pink-500 {
  --tw-gradient-to: #ec4899 var(--tw-gradient-to-position);
}
.to-pink-700 {
  --tw-gradient-to: #be185d var(--tw-gradient-to-position);
}
.to-purple-500 {
  --tw-gradient-to: #a855f7 var(--tw-gradient-to-position);
}
.to-purple-600 {
  --tw-gradient-to: #9333ea var(--tw-gradient-to-position);
}
.to-transparent {
  --tw-gradient-to: transparent var(--tw-gradient-to-position);
}
.bg-clip-text {
  -webkit-background-clip: text;
  background-clip: text;
}
.object-cover {
  -o-object-fit: cover;
  object-fit: cover;
}
.p-0 {
  padding: 0;
}
.p-0\.5 {
  padding: 0.125rem;
}
.p-4 {
  padding: 1rem;
}
.px-10 {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}
.px-12 {
  padding-left: 3rem;
  padding-right: 3rem;
}
.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.px-3\.5 {
  padding-left: 0.875rem;
  padding-right: 0.875rem;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.px-7 {
  padding-left: 1.75rem;
  padding-right: 1.75rem;
}
.px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}
.px-9 {
  padding-left: 2.25rem;
  padding-right: 2.25rem;
}
.py-0 {
  padding-top: 0;
  padding-bottom: 0;
}
.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-2\.5 {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}
.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}
.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.pb-20 {
  padding-bottom: 5rem;
}
.pl-2 {
  padding-left: 0.5rem;
}
.pl-2\.5 {
  padding-left: 0.625rem;
}
.pl-4 {
  padding-left: 1rem;
}
.pr-12 {
  padding-right: 3rem;
}
.pr-4 {
  padding-right: 1rem;
}
.pr-5 {
  padding-right: 1.25rem;
}
.pt-28 {
  padding-top: 7rem;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.align-middle {
  vertical-align: middle;
}
.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}
.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
.font-bold {
  font-weight: 700;
}
.font-medium {
  font-weight: 500;
}
.font-semibold {
  font-weight: 600;
}
.uppercase {
  text-transform: uppercase;
}
.leading-6 {
  line-height: 1.5rem;
}
.leading-\[50px\] {
  line-height: 50px;
}
.leading-tight {
  line-height: 1.25;
}
.tracking-tighter {
  letter-spacing: -0.05em;
}
.tracking-wide {
  letter-spacing: 0.025em;
}
.text-amber-300 {
  --tw-text-opacity: 1;
  color: rgb(252 211 77 / var(--tw-text-opacity));
}
.text-black {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.text-blue-500 {
  --tw-text-opacity: 1;
  color: rgb(59 130 246 / var(--tw-text-opacity));
}
.text-gray-500 {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity));
}
.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}
.text-gray-800 {
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity));
}
.text-gray-900 {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}
.text-green-400 {
  --tw-text-opacity: 1;
  color: rgb(74 222 128 / var(--tw-text-opacity));
}
.text-indigo-100 {
  --tw-text-opacity: 1;
  color: rgb(224 231 255 / var(--tw-text-opacity));
}
.text-indigo-600 {
  --tw-text-opacity: 1;
  color: rgb(79 70 229 / var(--tw-text-opacity));
}
.text-purple-500 {
  --tw-text-opacity: 1;
  color: rgb(168 85 247 / var(--tw-text-opacity));
}
.text-purple-600 {
  --tw-text-opacity: 1;
  color: rgb(147 51 234 / var(--tw-text-opacity));
}
.text-transparent {
  color: transparent;
}
.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.no-underline {
  text-decoration-line: none;
}
.opacity-0 {
  opacity: 0;
}
.opacity-10 {
  opacity: 0.1;
}
.opacity-100 {
  opacity: 1;
}
.opacity-30 {
  opacity: 0.3;
}
.opacity-5 {
  opacity: 0.05;
}
.opacity-50 {
  opacity: 0.5;
}
.opacity-80 {
  opacity: 0.8;
}
.opacity-90 {
  opacity: 0.9;
}
.opacity-\[3\%\] {
  opacity: 3%;
}
.mix-blend-screen {
  mix-blend-mode: screen;
}
.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color),
    0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-2xl {
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-inner {
  --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1),
    0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color),
    0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-md {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color),
    0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-xl {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1),
    0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color),
    0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.ring-1 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.ring-indigo-300 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(165 180 252 / var(--tw-ring-opacity));
}
.ring-offset-2 {
  --tw-ring-offset-width: 2px;
}
.ring-offset-indigo-200 {
  --tw-ring-offset-color: #c7d2fe;
}
.blur-md {
  --tw-blur: blur(12px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.blur-sm {
  --tw-blur: blur(4px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.transition {
  transition-property: color, background-color, border-color,
    text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,
    backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-colors {
  transition-property: color, background-color, border-color,
    text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.delay-100 {
  transition-delay: 0.1s;
}
.delay-200 {
  transition-delay: 0.2s;
}
.delay-300 {
  transition-delay: 0.3s;
}
.duration-100 {
  transition-duration: 0.1s;
}
.duration-1000 {
  transition-duration: 1s;
}
.duration-150 {
  transition-duration: 150ms;
}
.duration-200 {
  transition-duration: 0.2s;
}
.duration-300 {
  transition-duration: 0.3s;
}
.duration-500 {
  transition-duration: 0.5s;
}
.duration-700 {
  transition-duration: 0.7s;
}
.ease-in-out {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.ease-linear {
  transition-timing-function: linear;
}
.ease-out {
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}
body {
  font-size: 15px;
  overflow-x: hidden;
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity));
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 600;
}
.before\:absolute::before {
  content: var(--tw-content);
  position: absolute;
}
.before\:bottom-0::before {
  content: var(--tw-content);
  bottom: 0;
}
.before\:left-0::before {
  content: var(--tw-content);
  left: 0;
}
.before\:h-\[2px\]::before {
  content: var(--tw-content);
  height: 2px;
}
.before\:w-0::before {
  content: var(--tw-content);
  width: 0;
}
.before\:bg-amber-300::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(252 211 77 / var(--tw-bg-opacity));
}
.before\:transition-all::before {
  content: var(--tw-content);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.before\:duration-500::before {
  content: var(--tw-content);
  transition-duration: 0.5s;
}
.after\:absolute::after {
  content: var(--tw-content);
  position: absolute;
}
.after\:bottom-0::after {
  content: var(--tw-content);
  bottom: 0;
}
.after\:left-0::after {
  content: var(--tw-content);
  left: 0;
}
.after\:-z-10::after {
  content: var(--tw-content);
  z-index: -10;
}
.after\:h-0::after {
  content: var(--tw-content);
  height: 0;
}
.after\:w-full::after {
  content: var(--tw-content);
  width: 100%;
}
.after\:bg-amber-300::after {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(252 211 77 / var(--tw-bg-opacity));
}
.after\:text-white::after {
  content: var(--tw-content);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.after\:transition-all::after {
  content: var(--tw-content);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.after\:duration-500::after {
  content: var(--tw-content);
  transition-duration: 0.5s;
}
.focus-within\:border-blue-700:focus-within {
  --tw-border-opacity: 1;
  border-color: rgb(29 78 216 / var(--tw-border-opacity));
}
.focus-within\:bg-blue-700:focus-within {
  --tw-bg-opacity: 1;
  background-color: rgb(29 78 216 / var(--tw-bg-opacity));
}
.hover\:border-blue-600:hover {
  --tw-border-opacity: 1;
  border-color: rgb(37 99 235 / var(--tw-border-opacity));
}
.hover\:border-blue-700:hover {
  --tw-border-opacity: 1;
  border-color: rgb(29 78 216 / var(--tw-border-opacity));
}
.hover\:border-sky-500:hover {
  --tw-border-opacity: 1;
  border-color: rgb(14 165 233 / var(--tw-border-opacity));
}
.hover\:bg-blue-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(219 234 254 / var(--tw-bg-opacity));
}
.hover\:bg-blue-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(29 78 216 / var(--tw-bg-opacity));
}
.hover\:bg-gray-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity));
}
.hover\:bg-gray-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}
.hover\:bg-gray-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity));
}
.hover\:bg-gray-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity));
}
.hover\:bg-green-400:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(74 222 128 / var(--tw-bg-opacity));
}
.hover\:bg-green-500:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(34 197 94 / var(--tw-bg-opacity));
}
.hover\:bg-indigo-500:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(99 102 241 / var(--tw-bg-opacity));
}
.hover\:bg-transparent:hover {
  background-color: transparent;
}
.hover\:bg-white:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.hover\:bg-gradient-to-r:hover {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.hover\:from-gray-50:hover {
  --tw-gradient-from: #f9fafb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-green-500:hover {
  --tw-gradient-from: #22c55e var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-purple-600:hover {
  --tw-gradient-from: #9333ea var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:to-green-400:hover {
  --tw-gradient-to: #4ade80 var(--tw-gradient-to-position);
}
.hover\:to-pink-600:hover {
  --tw-gradient-to: #db2777 var(--tw-gradient-to-position);
}
.hover\:to-white:hover {
  --tw-gradient-to: #fff var(--tw-gradient-to-position);
}
.hover\:pl-10:hover {
  padding-left: 2.5rem;
}
.hover\:pr-6:hover {
  padding-right: 1.5rem;
}
.hover\:text-black:hover {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.hover\:text-blue-600:hover {
  --tw-text-opacity: 1;
  color: rgb(37 99 235 / var(--tw-text-opacity));
}
.hover\:text-gray-600:hover {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}
.hover\:text-sky-500:hover {
  --tw-text-opacity: 1;
  color: rgb(14 165 233 / var(--tw-text-opacity));
}
.hover\:text-white:hover {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.hover\:ring-1:hover {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.hover\:ring-2:hover {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.hover\:ring-green-400:hover {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(74 222 128 / var(--tw-ring-opacity));
}
.hover\:ring-purple-500:hover {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity));
}
.hover\:ring-offset-2:hover {
  --tw-ring-offset-width: 2px;
}
.hover\:ring-offset-indigo-500:hover {
  --tw-ring-offset-color: #6366f1;
}
.hover\:delay-\[\.5s\]:hover {
  transition-delay: 0.5s;
}
.before\:hover\:w-full:hover::before {
  content: var(--tw-content);
  width: 100%;
}
.after\:hover\:h-full:hover::after {
  content: var(--tw-content);
  height: 100%;
}
.after\:hover\:delay-\[0\.4s\]:hover::after {
  content: var(--tw-content);
  transition-delay: 0.4s;
}
.focus\:no-underline:focus {
  text-decoration-line: none;
}
.focus\:shadow-none:focus {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.focus\:outline-none:focus {
  outline: transparent solid 2px;
  outline-offset: 2px;
}
.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-blue-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity));
}
.focus\:ring-indigo-600:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(79 70 229 / var(--tw-ring-opacity));
}
.focus\:ring-offset-2:focus {
  --tw-ring-offset-width: 2px;
}
.active\:border-purple-600:active {
  --tw-border-opacity: 1;
  border-color: rgb(147 51 234 / var(--tw-border-opacity));
}
.active\:to-white:active {
  --tw-gradient-to: #fff var(--tw-gradient-to-position);
}
.active\:shadow-none:active {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.group:hover .group-hover\:top-0 {
  top: 0;
}
.group:hover .group-hover\:-mr-4 {
  margin-right: -1rem;
}
.group:hover .group-hover\:-mt-4 {
  margin-top: -1rem;
}
.group:hover .group-hover\:mb-0 {
  margin-bottom: 0;
}
.group:hover .group-hover\:mb-12 {
  margin-bottom: 3rem;
}
.group:hover .group-hover\:mb-32 {
  margin-bottom: 8rem;
}
.group:hover .group-hover\:ml-0 {
  margin-left: 0;
}
.group:hover .group-hover\:mr-0 {
  margin-right: 0;
}
.group:hover .group-hover\:mt-0 {
  margin-top: 0;
}
.group:hover .group-hover\:h-32 {
  height: 8rem;
}
.group:hover .group-hover\:h-56 {
  height: 14rem;
}
.group:hover .group-hover\:h-64 {
  height: 16rem;
}
.group:hover .group-hover\:h-full {
  height: 100%;
}
.group:hover .group-hover\:w-32 {
  width: 8rem;
}
.group:hover .group-hover\:w-56 {
  width: 14rem;
}
.group:hover .group-hover\:w-full {
  width: 100%;
}
.group:hover .group-hover\:-translate-x-0 {
  --tw-translate-x: -0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-x-40 {
  --tw-translate-x: -10rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-x-8 {
  --tw-translate-x: -2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-y-0 {
  --tw-translate-y: -0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-translate-y-32 {
  --tw-translate-y: -8rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-x-0 {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-x-12 {
  --tw-translate-x: 3rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-x-full {
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-y-0 {
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-rotate-180 {
  --tw-rotate: -180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:rotate-90 {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:-skew-x-12 {
  --tw-skew-x: -12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:skew-x-12 {
  --tw-skew-x: 12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y))
    rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
    scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:border-\[25px\] {
  border-width: 25px;
}
.group:hover .group-hover\:bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-purple-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(168 85 247 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-purple-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(147 51 234 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-purple-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(126 34 206 / var(--tw-bg-opacity));
}
.group:hover .group-hover\:bg-opacity-0 {
  --tw-bg-opacity: 0;
}
.group:hover .group-hover\:from-\[\#ff00c6\] {
  --tw-gradient-from: #ff00c6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 0 198 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.group:hover .group-hover\:via-\[\#ff5478\] {
  --tw-gradient-to: rgb(255 84 120 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from),
    #ff5478 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.group:hover .group-hover\:to-\[\#ff8a05\] {
  --tw-gradient-to: #ff8a05 var(--tw-gradient-to-position);
}
.group:hover .group-hover\:text-blue-600 {
  --tw-text-opacity: 1;
  color: rgb(37 99 235 / var(--tw-text-opacity));
}
.group:hover .group-hover\:text-gray-200 {
  --tw-text-opacity: 1;
  color: rgb(229 231 235 / var(--tw-text-opacity));
}
.group:hover .group-hover\:text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.group:hover .group-hover\:opacity-100 {
  opacity: 1;
}
.group:hover .group-hover\:blur-sm {
  --tw-blur: blur(4px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
    var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)
    var(--tw-sepia) var(--tw-drop-shadow);
}
.group:active .group-active\:bg-transparent {
  background-color: transparent;
}
.group:active .group-active\:opacity-0 {
  opacity: 0;
}
@media (min-width: 640px) {
  .sm\:mb-0 {
    margin-bottom: 0;
  }
  .sm\:w-auto {
    width: auto;
  }
  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 768px) {
  .md\:mx-0 {
    margin-left: 0;
    margin-right: 0;
  }
  .md\:w-auto {
    width: auto;
  }
  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 1024px) {
  .lg\:flex {
    display: flex;
  }
}
/*# sourceMappingURL=style.min.css.map */

</style>
<body class="bg-gray-50">
  <!-- Section Start -->
  <section class="section pt-28 pb-20" id="home">
    <div class="mx-10">
      <div class="lg:flex justify-center">
        <div class="text-center">
          <div class="text-center">
            <h1 class="text-4xl font-semibold leading-[50px] tracking-wide text-transparent bg-clip-text bg-gradient-to-l from-pink-400 to-blue-600 mb-10">
              45 CSS Only Modern Button Styles
            </h1>
          </div>
        </div>
      </div>
    </div>
  </section>
  <!-- Section End -->

  <section class="relative pb-20">
    <div class="container">
      <div class="grid md:grid-cols-3 sm:grid-cols-2 grid-cols-1 gap-6">

        <!-- 36 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-flex items-center justify-center px-10 py-4 overflow-hidden font-mono font-medium tracking-tighter text-white bg-gray-800 rounded-lg group">
            <span class="absolute w-0 h-0 transition-all duration-500 ease-out bg-green-500 rounded-full group-hover:w-56 group-hover:h-56"></span>
            <span class="absolute inset-0 w-full h-full -mt-1 rounded-lg opacity-30 bg-gradient-to-b from-transparent via-transparent to-gray-700"></span>
            <span class="relative">Button</span>
          </a>
        </div>
        <!-- 37 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-flex items-center w-full px-5 py-3 mb-3 mr-1 text-base font-semibold text-white no-underline align-middle bg-blue-600 border border-transparent border-solid rounded-md cursor-pointer select-none sm:mb-0 sm:w-auto hover:bg-blue-700 hover:border-blue-700 hover:text-white focus-within:bg-blue-700 focus-within:border-blue-700">
            Button
            <svg class="w-4 h-4 ml-2" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
              <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M14 5l7 7m0 0l-7 7m7-7H3"></path>
            </svg>
          </a>
        </div>
        <!-- 38 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="relative inline-block w-auto px-6 py-3 overflow-hidden text-base font-semibold text-center shadow text-gray-800 rounded-lg bg-gray-50 hover:text-black hover:bg-white">
            Button
          </a>
        </div>
        <!-- 39 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="px-10 py-4 text-xl font-semibold text-center text-white transition duration-300 rounded-lg hover:from-purple-600 hover:to-pink-600 ease bg-gradient-to-br from-purple-500 to-pink-500 md:w-auto">
            Button
          </a>
        </div>
        <!-- 40 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-flex items-center justify-center h-16 px-10 py-0 text-xl font-semibold text-center text-gray-900 no-underline align-middle transition-all duration-300 ease-in-out bg-transparent border-2 border-gray-600 border-solid rounded-full cursor-pointer select-none hover:text-blue-600 hover:border-blue-600 focus:shadow-xs focus:no-underline">
            Button
          </a>
        </div>
        <!-- 41 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-block py-4 text-xl text-white bg-gray-800 px-7 hover:bg-gray-700 rounded-xl">
            Button
          </a>
        </div>
        <!-- 42 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-block px-5 py-2 mx-auto text-white bg-blue-600 rounded-full hover:bg-blue-700 md:mx-0">
            Button
          </a>
        </div>
        <!-- 43 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="inline-block items-center justify-center px-4 py-2 text-base font-medium leading-6 text-white whitespace-no-wrap bg-sky-500 border-2 border-transparent rounded-full shadow-sm hover:bg-transparent hover:text-sky-500 hover:border-sky-500 focus:outline-none">
            Button
          </a>
        </div>
        <!-- 44 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <a href="#_" class="w-full py-4 text-xl text-center text-white transition-colors duration-300 bg-green-400 rounded-full hover:bg-green-500 ease px-9 md:w-auto">
            Button
          </a>
        </div>
        <!-- 45 -->
        <div class="border w-full h-40 flex items-center justify-center">
          <button class="btn p-4 relative border-0 uppercase text-amber-300 shadow bg-transparent hover:delay-[.5s] transition-all duration-500 hover:text-white before:absolute before:left-0 before:bottom-0 before:h-[2px] before:w-0 before:transition-all before:duration-500 before:bg-amber-300 before:hover:w-full after:absolute after:left-0 after:bottom-0 after:h-0 after:w-full after:transition-all after:duration-500 after:bg-amber-300 after:hover:h-full after:text-white after:-z-10 after:hover:delay-[0.4s]">
            Hover me
          </button>
        </div>
      </div>
    </div><!-- Container End -->
  </section>
[/html]

0

135

[html]
<style>
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;800&display=swap");

:root {
  --bg: #000000;
  --clr-1: #00c2ff;
  --clr-2: #33ff8c;
  --clr-3: #ffc640;
  --clr-4: #e54cff;

  --blur: 1rem;
  --fs: clamp(3rem, 8vw, 7rem);
  --ls: clamp(-1.75px, -0.25vw, -3.5px);
}

body {
  min-height: 100vh;
  display: grid;
  place-items: center;
  background-color: var(--bg);
  color: #fff;
  font-family: "Inter", "DM Sans", Arial, sans-serif;
}

*,
*::before,
*::after {
  font-family: inherit;
  box-sizing: border-box;
}

.content {
  text-align: center;
}

.title {
  font-size: var(--fs);
  font-weight: 800;
  letter-spacing: var(--ls);
  position: relative;
  overflow: hidden;
  background: var(--bg);
  margin: 0;
}

.subtitle {
}

.aurora {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  mix-blend-mode: darken;
  pointer-events: none;
}

.aurora__item {
  overflow: hidden;
  position: absolute;
  width: 60vw;
  height: 60vw;
  background-color: var(--clr-1);
  border-radius: 37% 29% 27% 27% / 28% 25% 41% 37%;
  filter: blur(var(--blur));
  mix-blend-mode: overlay;
}

.aurora__item:nth-of-type(1) {
  top: -50%;
  animation: aurora-border 6s ease-in-out infinite,
    aurora-1 12s ease-in-out infinite alternate;
}

.aurora__item:nth-of-type(2) {
  background-color: var(--clr-3);
  right: 0;
  top: 0;
  animation: aurora-border 6s ease-in-out infinite,
    aurora-2 12s ease-in-out infinite alternate;
}

.aurora__item:nth-of-type(3) {
  background-color: var(--clr-2);
  left: 0;
  bottom: 0;
  animation: aurora-border 6s ease-in-out infinite,
    aurora-3 8s ease-in-out infinite alternate;
}

.aurora__item:nth-of-type(4) {
  background-color: var(--clr-4);
  right: 0;
  bottom: -50%;
  animation: aurora-border 6s ease-in-out infinite,
    aurora-4 24s ease-in-out infinite alternate;
}

@keyframes aurora-1 {
  0% {
    top: 0;
    right: 0;
  }

  50% {
    top: 100%;
    right: 75%;
  }

  75% {
    top: 100%;
    right: 25%;
  }

  100% {
    top: 0;
    right: 0;
  }
}

@keyframes aurora-2 {
  0% {
    top: -50%;
    left: 0%;
  }

  60% {
    top: 100%;
    left: 75%;
  }

  85% {
    top: 100%;
    left: 25%;
  }

  100% {
    top: -50%;
    left: 0%;
  }
}

@keyframes aurora-3 {
  0% {
    bottom: 0;
    left: 0;
  }

  40% {
    bottom: 100%;
    left: 75%;
  }

  65% {
    bottom: 40%;
    left: 50%;
  }

  100% {
    bottom: 0;
    left: 0;
  }
}

@keyframes aurora-4 {
  0% {
    bottom: -50%;
    right: 0;
  }

  50% {
    bottom: 0%;
    right: 40%;
  }

  90% {
    bottom: 50%;
    right: 25%;
  }

  100% {
    bottom: -50%;
    right: 0;
  }
}

@keyframes aurora-border {
  0% {
    border-radius: 37% 29% 27% 27% / 28% 25% 41% 37%;
  }

  25% {
    border-radius: 47% 29% 39% 49% / 61% 19% 66% 26%;
  }

  50% {
    border-radius: 57% 23% 47% 72% / 63% 17% 66% 33%;
  }

  75% {
    border-radius: 28% 49% 29% 100% / 93% 20% 64% 25%;
  }

  100% {
    border-radius: 37% 29% 27% 27% / 28% 25% 41% 37%;
  }
}

</style>
<div class="content">
  <h1 class="title" style="font-size:5em">the beautiful aurora
    <div class="aurora">
      <div class="aurora__item"></div>
      <div class="aurora__item"></div>
      <div class="aurora__item"></div>
      <div class="aurora__item"></div>
    </div>
  </h1>
  <p class="subtitle">Made with love and only the CSS.</p>
</div>

[/html]

0

136

[html]
<style>
.container5 { height:500px }
</style>
<script>
var canvas = document.getElementById("canvas");

canvas.width = window.innerWidth;
canvas.height = window.innerHeight;

// Initialize the GL context
var gl = canvas.getContext('webgl');
if(!gl){
  console.error("Unable to initialize WebGL.");
}

//Time
var time = 0.0;

//************** Shader sources **************

var vertexSource = `
attribute vec2 position;
void main() {
  gl_Position = vec4(position, 0.0, 1.0);
}
`;

var fragmentSource = `
precision highp float;

#define AA

uniform float width;
uniform float height;
vec2 resolution = vec2(width, height);

uniform float time;

void main(){

float strength = 0.4;
float t = time/6.0;

vec3 col = vec3(0);
vec2 fC = gl_FragCoord.xy;

#ifdef AA
for(int i = -1; i <= 1; i++) {
    for(int j = -1; j <= 1; j++) {

    fC = gl_FragCoord.xy+vec2(i,j)/3.0;

    #endif

    //Normalized pixel coordinates (from 0 to 1)
    vec2 pos = fC/resolution.xy;

    pos.y /= resolution.x/resolution.y;
    pos = 4.0*(vec2(0.5) - pos);

    for(float k = 1.0; k < 7.0; k+=1.0){
        pos.x += strength * sin(2.0*t+k*1.5 * pos.y)+t*0.5;
        pos.y += strength * cos(2.0*t+k*1.5 * pos.x);
    }

    //Time varying pixel colour
    col += 0.5 + 0.5*cos(time+pos.xyx+vec3(0,2,4));

    #ifdef AA
    }
}

col /= 9.0;
#endif

  //Gamma
  col = pow(col, vec3(0.4545));

//Fragment colour
gl_FragColor = vec4(col,1.0);
}
`;

//************** Utility functions **************

window.addEventListener( 'resize', onWindowResize, false );

function onWindowResize(){
  canvas.width  = window.innerWidth;
  canvas.height = window.innerHeight;
gl.viewport(0, 0, canvas.width, canvas.height);
  gl.uniform1f(widthHandle, window.innerWidth);
  gl.uniform1f(heightHandle, window.innerHeight);
}

//Compile shader and combine with source
function compileShader(shaderSource, shaderType){
  var shader = gl.createShader(shaderType);
  gl.shaderSource(shader, shaderSource);
  gl.compileShader(shader);
  if(!gl.getShaderParameter(shader, gl.COMPILE_STATUS)){
  throw "Shader compile failed with: " + gl.getShaderInfoLog(shader);
  }
  return shader;
}

//From https://codepen.io/jlfwong/pen/GqmroZ
//Utility to complain loudly if we fail to find the attribute/uniform
function getAttribLocation(program, name) {
  var attributeLocation = gl.getAttribLocation(program, name);
  if (attributeLocation === -1) {
  throw 'Cannot find attribute ' + name + '.';
  }
  return attributeLocation;
}

function getUniformLocation(program, name) {
  var attributeLocation = gl.getUniformLocation(program, name);
  if (attributeLocation === -1) {
  throw 'Cannot find uniform ' + name + '.';
  }
  return attributeLocation;
}

//************** Create shaders **************

//Create vertex and fragment shaders
var vertexShader = compileShader(vertexSource, gl.VERTEX_SHADER);
var fragmentShader = compileShader(fragmentSource, gl.FRAGMENT_SHADER);

//Create shader programs
var program = gl.createProgram();
gl.attachShader(program, vertexShader);
gl.attachShader(program, fragmentShader);
gl.linkProgram(program);

gl.useProgram(program);

//Set up rectangle covering entire canvas
var vertexData = new Float32Array([
  -1.0,  1.0, // top left
  -1.0, -1.0, // bottom left
   1.0,  1.0, // top right
   1.0, -1.0, // bottom right
]);

//Create vertex buffer
var vertexDataBuffer = gl.createBuffer();
gl.bindBuffer(gl.ARRAY_BUFFER, vertexDataBuffer);
gl.bufferData(gl.ARRAY_BUFFER, vertexData, gl.STATIC_DRAW);

// Layout of our data in the vertex buffer
var positionHandle = getAttribLocation(program, 'position');

gl.enableVertexAttribArray(positionHandle);
gl.vertexAttribPointer(positionHandle,
  2,         // position is a vec2 (2 values per component)
  gl.FLOAT, // each component is a float
  false,     // don't normalize values
  2 * 4,     // two 4 byte float components per vertex (32 bit float is 4 bytes)
  0         // how many bytes inside the buffer to start from
  );

//Set uniform handle
var timeHandle = getUniformLocation(program, 'time');
var widthHandle = getUniformLocation(program, 'width');
var heightHandle = getUniformLocation(program, 'height');

gl.uniform1f(widthHandle, window.innerWidth);
gl.uniform1f(heightHandle, window.innerHeight);

var lastFrame = Date.now();
var thisFrame;

function draw(){

  //Update time
thisFrame = Date.now();
  time += (thisFrame - lastFrame)/770;
lastFrame = thisFrame;

//Send uniforms to program
  gl.uniform1f(timeHandle, time);
  //Draw a triangle strip connecting vertices 0-4
  gl.drawArrays(gl.TRIANGLE_STRIP, 0, 4);

  requestAnimationFrame(draw);
}

draw();
</script>

<container5>
  <canvas id="canvas" style="height:600px" width="1400" height="600"></canvas>
</container5>

[/html]

0

137

[html]
<style>

</style>
<script>
var canvas = document.getElementById('canvas'),
  context = canvas.getContext('2d'),
  canvasWidth = (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth),
  canvasHeight = (window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight),
  requestAnimationFrame = window.requestAnimationFrame ||
  window.mozRequestAnimationFrame ||
  window.webkitRequestAnimationFrame ||
  window.msRequestAnimationFrame;
var persons = [],
  numberOfFirefly = 30,
  birthToGive = 25;

var colors = [];
/* Galactic Tea - http://www.colourlovers.com/palette/158 … ctic_Tea*/
colors[2] = [];
colors[2]['background'] = '#2F294F';
colors[2][1] = 'rgba(74,49,89,';
colors[2][2] = 'rgba(130,91,109,';
colors[2][3] = 'rgba(185,136,131,';
colors[2][4] = 'rgba(249,241,204,';

var colorTheme = 2, //getRandomInt(0,colors.length-1);
  mainSpeed = 1;

function getRandomInt(min, max, exept) {
  var i = Math.floor(Math.random() * (max - min + 1)) + min;
  if (typeof exept == "undefined") return i;
  else if (typeof exept == 'number' && i == exept) return getRandomInt(min, max, exept);
  else if (typeof exept == "object" && (i >= exept[0] && i <= exept[1])) return getRandomInt(min, max, exept);
  else return i;
}

function isEven(n) {
  return n == parseFloat(n) ? !(n % 2) : void 0;
}

function degToRad(deg) {
  return deg * (Math.PI / 180);
}

function Firefly(id) {
  this.id = id;
  this.width = getRandomInt(3, 6);
  this.height = this.width;
  this.x = getRandomInt(0, (canvas.width - this.width));
  this.y = getRandomInt(0, (canvas.height - this.height));
  this.speed = (this.width <= 10) ? 2 : 1;
  this.alpha = 1;
  this.alphaReduction = getRandomInt(1, 3) / 1000;
  this.color = colors[colorTheme][getRandomInt(1, colors[colorTheme].length - 1)];
  this.direction = getRandomInt(0, 360);
  this.turner = getRandomInt(0, 1) == 0 ? -1 : 1;
  this.turnerAmp = getRandomInt(1, 2);
  this.isHit = false;
  this.stepCounter = 0;
  this.changeDirectionFrequency = getRandomInt(1, 200);
  this.shape = 2; //getRandomInt(2,3);
  this.shadowBlur = getRandomInt(5, 25);
}

Firefly.prototype.stop = function() {
  this.update();
}

Firefly.prototype.walk = function() {
  var next_x = this.x + Math.cos(degToRad(this.direction)) * this.speed,
    next_y = this.y + Math.sin(degToRad(this.direction)) * this.speed;

  // Canvas limits
  if (next_x >= (canvas.width - this.width) && (this.direction < 90 || this.direction > 270)) {
    next_x = canvas.width - this.width;
    this.direction = getRandomInt(90, 270, this.direction);
  }
  if (next_x <= 0 && (this.direction > 90 && this.direction < 270)) {
    next_x = 0;
    var exept = [90, 270];
    this.direction = getRandomInt(0, 360, exept);
  }
  if (next_y >= (canvas.height - this.height) && (this.direction > 0 && this.direction < 180)) {
    next_y = canvas.height - this.height;
    this.direction = getRandomInt(180, 360, this.direction);
  }
  if (next_y <= 0 && (this.direction > 180 && this.direction < 360)) {
    next_y = 0;
    this.direction = getRandomInt(0, 180, this.direction);
  }

  this.x = next_x;
  this.y = next_y;

  this.stepCounter++;

  if (this.changeDirectionFrequency && this.stepCounter == this.changeDirectionFrequency) {
    this.turner = this.turner == -1 ? 1 : -1;
    this.turnerAmp = getRandomInt(1, 2);
    this.stepCounter = 0;
    this.changeDirectionFrequency = getRandomInt(1, 200);
  }

  this.direction += this.turner * this.turnerAmp;

  this.update();
}

Firefly.prototype.takeOppositeDirection = function() {
  // Right -> Left
  if ((this.direction >= 0 && this.direction < 90) || (this.direction > 270 && this.direction <= 360)) {
    this.direction = getRandomInt(90, 270);
    return;
  }
  // Left -> Right
  if (this.direction > 90 && this.direction < 270) {
    var exept = [90, 270];
    this.direction = getRandomInt(0, 360, exept);
    return;
  }
  // Down -> Up
  if (this.direction > 0 && this.direction < 180) {
    this.direction = getRandomInt(180, 360);
    return;
  }
  // Up -> Down
  if (this.direction > 180) {
    this.direction = getRandomInt(0, 180);
  }
}

Firefly.prototype.update = function() {

  context.beginPath();

  context.fillStyle = this.color + this.alpha + ")";
  context.arc(this.x + (this.width / 2), this.y + (this.height / 2), this.width / 2, 0, 2 * Math.PI, false);
  context.shadowColor = this.color + this.alpha + ")";
  context.shadowBlur = this.shadowBlur;
  context.shadowOffsetX = 0;
  context.shadowOffsetY = 0;
  context.fill();

  if (this.id > 15) {
    this.alpha -= this.alphaReduction;
    if (this.alpha <= 0) this.die();
  }

}

Firefly.prototype.die = function() {
  persons[this.id] = null;
  delete persons[this.id];
}

window.onload = function() {
  canvas.setAttribute('width', canvasWidth);
  canvas.setAttribute('height', canvasHeight);

  start();
}

function start() {
  instantiatePopulation();
  animate();
}

function instantiatePopulation() {
  var i = 0;
  while (i < numberOfFirefly) {
    persons[i] = new Firefly(i);
    i++;
  }
}

function animate() {
  context.clearRect(0, 0, canvas.width, canvas.height);

  context.beginPath();

  // Création d'une copie de l'array persons
  persons_order = persons.slice(0);
  // Tri par ordre de position sur l'axe y (afin de gérer les z-index)
  persons_order.sort(function(a, b) {
    return a.y - b.y
  });

  // Paint les instances dans l'ordre trié
  for (var i in persons_order) {
    var u = persons_order[i].id;
    persons[u].walk();
  }

  requestAnimationFrame(animate);
}

canvas.onclick = function(e) {
  giveBirth(e, birthToGive);
}

function giveBirth(e, u) {
  var i = persons.length;
  persons[i] = new Firefly(i);
  persons[i].x = e.layerX;
  persons[i].y = e.layerY;

  if (u > 1) giveBirth(e, u - 1);
}

</script>

<canvas id="canvas"></canvas>
<span id="note">Click to add fireflies</span>
[/html]

0

138

[html]
<style>
#fireflies {
  width: 100%;
  height: 600px;
  background: #202125;
}
</style>
<script>
function Animation(selector, option) {
  this.canvas = this.init(selector);
  this.fireflies = new Array(option.count).fill({}).map(function () {
    return new Firefly(option);
  });
  this.draw();
}

Animation.prototype.init = function (selector) {
  var canvas = document.querySelector(selector);
  var resize = function () {
    canvas.width = window.innerWidth;
    canvas.height = window.innerHeight;
  }

  resize();
  window.addEventListener('resize', resize);

  return canvas;
}

Animation.prototype.draw = function () {
  var drawer = this.draw.bind(this);

  this.redraw();
  window.requestAnimationFrame(drawer);
}

Animation.prototype.redraw = function () {
  var ctx = this.canvas.getContext('2d');

  ctx.clearRect(0, 0, window.innerWidth, window.innerHeight);
  this.fireflies.forEach(function (firefly) {
    firefly.fly();
    firefly.flicker();

    ctx.beginPath();
    ctx.arc(firefly.x, firefly.y, firefly.radius, 0, Math.PI * 2);
    ctx.closePath();
    ctx.fillStyle = firefly.color;
    ctx.shadowBlur = firefly.radius * 5;
    ctx.shadowColor = "yellow";
    ctx.fill();
  })
}

function Firefly(option) {
  this.x = random(window.innerWidth, option.radius, true);
  this.y = random(window.innerHeight, option.radius, true);
  this.radius = random(option.radius + 0.5, option.radius - 0.5);
  this.veer = false;
  this.angle = random(360, 0, true);
  this.rate = random(30 / 1000, 6 / 1000);
  this.speed = random(option.speed, option.speed / 8);
  this.opacity = random(1, 0.001);
  this.flare = this.opacity > 0.5;
  this.color = option.color;
}

Firefly.prototype.fly = function () {
  if (this.angle >= 360 || this.angle <= 0 || Math.random() * 360 < 6) {
    this.veer = !this.veer;
  }

  // this.speed -= this.veer ? -.01 : .01;
  this.angle -= this.veer ? -this.speed : this.speed;
  this.x += Math.sin((Math.PI / 180) * this.angle) * this.speed;
  this.y += Math.cos((Math.PI / 180) * this.angle) * this.speed;

  if (this.x < 0) this.x += window.innerWidth;
  if (this.x > window.innerWidth) this.x -= window.innerWidth;
  if (this.y < 0) this.y += window.innerHeight;
  if (this.y > window.innerHeight) this.y -= window.innerHeight;
}

Firefly.prototype.flicker = function () {
  if (this.opacity >= 1 || this.opacity <= 0.001) {
    this.flare = !this.flare;
  }

  this.opacity -= this.flare ? -this.rate : this.rate;
  this.color = setOpacity(this.color, this.opacity.toFixed(3));
}

function random(max, min, isInt) {
  return isInt
    ? Math.floor((Math.random() * (max - min) + min))
    : Number((Math.random() * (max - min) + min).toFixed(3));
}

function setOpacity(color, opacity) {
  var colors = color.match(/^rgba\((\d+),\s*(\d+),\s*(\d+),\s*(\S+)\)$/);

  return "rgba(" + colors[1] + ", " + colors[2] + ", " + colors[3] + ", " + opacity + ")";
}

new Animation('#fireflies', {
  count: 25,
  color: 'rgba(236, 196, 94, 1)',
  speed: 1,
  radius: 2
});

</script>

<canvas id="fireflies"></canvas>

[/html]

0

139

[html]
<style>

</style>
<script>

</script>

[/html]

0

140

[html]
<style>

article { 
  width: 100%;
  max-width: 1265px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  margin: 50px 0;
}

figure {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  margin: 0 0 30px 0;
}

figure figcaption {
  width: 100%;
  max-width: 600px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between;
}

figure figcaption h1 {
  font: normal normal 400 240% / 1.5cap "Della Respira", serif;
  padding: 0 0 10px 0;
  margin: 0 0 20px 0;
  border-bottom: 1px solid #333;
  text-wrap: balance;
}

figure figcaption p {
  color: #bbb;
  padding-left: 30px;
  margin: 0;
  border-left: 10px solid;
  border-image: repeating-linear-gradient(
      43deg,
      white,
      white 4px,
      transparent 5px,
      transparent 9px,
      white 10px
    )
    10;
  text-wrap: pretty;
}

figure figcaption p span:last-of-type {
  display: none;
}

button {
  font: normal normal 400 12pt / 2cap "Golos Text", sans-serif;
  width: 200px;
  height: 50px;
  background-color: transparent;
  border: 1px solid #666;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

button::after {
  position: absolute;
  right: 100%;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #ccc;
  content: "";
  z-index: -1;
  transition: all 0.3s ease;
}

button:hover::after {
  right: 0;
  transition: all 0.3s ease;
}

button input {
  display: none;
}

button label {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  cursor: pointer;
  transition: all 0.3s ease;
}

button:hover label {
  color: black;
  transition: all 0.3s ease;
}

button label span {
  display: none;
}

button:not(:has(input:checked)) label span:first-of-type {
  display: initial;
}

button:has(input:checked) label span:last-of-type {
  display: initial;
}

section {
  width: 100%;
  height: 0;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  justify-content: stretch;
  border-right: 1px solid #555;
  border-bottom: 1px solid #555;
  border-left: 1px solid #555;
  transition: all 0.5s ease;
  position: relative;
}

section::before {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 2px;
  background-image: linear-gradient(
    90deg,
    #ff00bb,
    #ff00b6,
    #ff00a8,
    #ff0b93,
    #ff347a,
    #ff585f,
    #ff7a44,
    #ff9829,
    #ffb20c,
    #ffc500,
    #ffd100,
    #ffd500
  );
  content: "";
  z-index: 2;
  transition: all 1.2s ease;
}

figure:has(button input:checked) ~ section::before {
  width: 0px;
  transition: all 1.2s ease;
}

div {
  flex-grow: 1;
  opacity: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  transition: all 0.4s ease;
}

figure:has(button input:checked) ~ section {
  height: 220px;
  transition: all 0.5s ease;
}

figure:has(button input:checked) ~ section div,
figure:has(button input:checked)
  ~ section
  div
  + div
  + div
  + div
  + div
  + div
  + div
  + div
  + div
  + div
  + div {
  opacity: 1;
  flex-grow: 2;
  transition-delay: 0.15s;
}

figure:has(button input:checked) ~ section div + div,
figure:has(button input:checked)
  ~ section
  div
  + div
  + div
  + div
  + div
  + div
  + div
  + div
  + div
  + div {
  opacity: 1;
  transition-delay: 0.3s;
  flex-grow: 3;
}

figure:has(button input:checked) ~ section div + div + div,
figure:has(button input:checked)
  ~ section
  div
  + div
  + div
  + div
  + div
  + div
  + div
  + div
  + div {
  opacity: 1;
  transition-delay: 0.45s;
  flex-grow: 4;
}

figure:has(button input:checked) ~ section div + div + div + div,
figure:has(button input:checked)
  ~ section
  div
  + div
  + div
  + div
  + div
  + div
  + div
  + div {
  opacity: 1;
  transition-delay: 0.6s;
  flex-grow: 5;
}

figure:has(button input:checked) ~ section div + div + div + div + div,
figure:has(button input:checked)
  ~ section
  div
  + div
  + div
  + div
  + div
  + div
  + div {
  opacity: 1;
  transition-delay: 0.75s;
  flex-grow: 6;
}

figure:has(button input:checked) ~ section div + div + div + div + div + div {
  opacity: 1;
  transition-delay: 0.9s;
  flex-grow: 7;
}

section div:hover {
  flex-grow: 2 !important;
}

section:has(div:hover) div:not(:hover) {
  flex-grow: 1 !important;
}

section:has(div:hover) div {
  transition-delay: 0s !important;
}

figure:has(button input:checked) ~ section div {
  animation: pointerFix 1.7s linear 0s 1 normal;
}

@keyframes pointerFix {
  0% {
    pointer-events: none;
  }
  99% {
    pointer-events: none;
  }
  100% {
    pointer-events: initial;
  }
}

/* Change Gallery Images */

section div:first-of-type {
  background-image: url("https://picsum.photos/id/337/500/500");
}

section div + div {
  background-image: url("https://picsum.photos/id/515/500/500");
}

section div + div + div {
  background-image: url("https://picsum.photos/id/424/500/500");
}

section div + div + div + div {
  background-image: url("https://picsum.photos/id/849/500/500");
}

section div + div + div + div + div {
  background-image: url("https://picsum.photos/id/476/500/500");
}

section div + div + div + div + div + div {
  background-image: url("https://picsum.photos/id/57/500/500");
}

section div + div + div + div + div + div + div {
  background-image: url("https://picsum.photos/id/82/500/500");
}

section div + div + div + div + div + div + div + div {
  background-image: url("https://picsum.photos/id/680/500/500");
}

section div + div + div + div + div + div + div + div + div {
  background-image: url("https://picsum.photos/id/553/500/500");
}

section div + div + div + div + div + div + div + div + div + div {
  background-image: url("https://picsum.photos/id/193/500/500");
}

section div:last-of-type {
  background-image: url("https://picsum.photos/id/565/500/500");
}

@media (max-width: 900px) {
  figure {
    flex-direction: column;
    align-items: flex-start;
  }
  figure figcaption {
    margin-bottom: 20px;
  }
  figure figcaption p span:first-of-type {
    display: none;
  }
  figure figcaption p span:last-of-type {
    display: initial;
  }
  button {
    width: 100%;
    max-width: 600px;
  }
}

@media (max-width: 700px) {
  figure figcaption {
    max-width: unset;
  }
  button {
    max-width: unset;
  }
}

@media (max-width: 600px) {
  section {
    flex-direction: column;
  }
  figure:has(button input:checked) ~ section {
    height: 1000px;
  }
}

</style>
<script>

</script>

<article>
  <figure>
    <figcaption>
      <h1>
        Collapsible Gallery
      </h1>
      <p>
        Use the button <span>to the right</span> <span>below</span> to open and close my gallery. You can hover over images to expand them. I wanted to save some vertical space and give users a fun interaction on my site so here it is. You could put multiple of these stacked on each other, as an idea.
      </p>
    </figcaption>
    </figcaption>
    <button>
      <label for="init">
        <span>Expand</span>
        <span>Contract</span>
      </label>
      <input type="checkbox" name="init" id="init">
    </button>
  </figure>
  <section>
    <div> <img src=https://i.pinimg.com/564x/55/7a/a8/557aa80cdf898d1869d31fa65a0457dc.jpg>
    </div>
    <div> <img src=https://i.pinimg.com/564x/55/7a/a8/557aa80cdf898d1869d31fa65a0457dc.jpg>
    </div>
    <div> <img src=https://i.pinimg.com/564x/55/7a/a8/557aa80cdf898d1869d31fa65a0457dc.jpg>
    </div>
    <div>
    </div>
    <div>
    </div>
    <div>
    </div>
    <div>
    </div>
    <div>
    </div>
    <div>
    </div>
    <div>
    </div>
    <div>
    </div>
  </section>
</article>

[/html]

0

141

[html]
<style>
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100&display=swap');
.star {
  transform-style: preserve-3d;
  width: 1px;
  height: 1px;
  position: absolute;
  color: red;
}
.star:before {
  position: absolute;
  content: '\2726';
  color: inherit;
  inset: 0;
  //box-shadow: 0 0 1em .5em #a3c2;
  //filter: drop-shadow(0 0 .5em white);
  text-shadow: 0 0 .8em #fff5;
}

</style>
<script>
//look at fixes in the Pen https://codepen.io/ghaste/pen/OJqLbvg
//for adding mouse trail to a page that scrolls beyond the viewport, as would be the case with most websites - lol
let x1=0, y1=0;
window.client
const
  vh = Math.max(document.documentElement.clientHeight || 0, window.innerHeight || 0),
  dist_to_draw = 50,
  delay = 1000,
  fsize = [
    '1.1rem', '1.4rem', '.8rem', '1.7rem'
  ],
  colors = [
  '#E23636',
  '#F9F3EE',
  '#E1F8DC',
  '#B8AFE6',
  '#AEE1CD',
  '#5EB0E5'
],
  rand = (min, max) =>
    Math.floor(Math.random() * (max - min + 1)) + min,
  selRand = (o) => o[rand(0, o.length -1)],
  distanceTo =  (x1, y1, x2, y2) =>
    Math.sqrt((Math.pow(x2-x1,2))+(Math.pow(y2-y1,2))),
  shouldDraw = (x, y) =>
    (distanceTo(x1, y1, x, y) >= dist_to_draw),
  addStr = (x, y) => {
    const str = document.createElement("div");
    str.innerHTML = '✦';
    str.className = 'star';
    str.style.top = `${y + rand(-20,20)}px`;
    str.style.left = `${x}px`;
    str.style.color = selRand(colors);
    str.style.fontSize = selRand(fsize);
    document.body.appendChild(str);
    //console.log(rand(0, 3));
    const fs = 10 + 5 * parseFloat(getComputedStyle(str).fontSize);
    //console.log(vh, y, fs);
    //console.log((y+fs)>vh?vh-y:fs);
    str.animate({
      translate: `0 ${(y+fs)>vh?vh-y:fs}px`,
      opacity: 0,
      transform: `rotateX(${rand(1, 500)}deg) rotateY(${rand(1, 500)}deg)`
    }, {
      duration: delay,
      fill: 'forwards',

    });
    //could add a animation terminate listener, but why add the additional load
    setTimeout(() => {
        str.remove();
      }, delay);
  }

addEventListener("mousemove", (e) => {
  const {clientX, clientY} = e;
  if(shouldDraw(clientX, clientY)){
    addStr(clientX, clientY);
    x1 = clientX;
    y1 = clientY;
  }
});
</script>
<h1>Sed ut perspiciatis</h1>
Sed ut perspiciatis, unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam eaque ipsa, quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt, explicabo. Nemo enim ipsam voluptatem, quia voluptas sit, aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos, qui ratione voluptatem sequi nesciunt, neque porro quisquam est, qui dolorem ipsum, quia dolor sit, amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt, ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit, qui in ea voluptate velit esse, quam nihil molestiae consequatur, vel illum, qui dolorem eum fugiat, quo voluptas nulla pariatur? At vero eos et accusamus et iusto odio dignissimos ducimus, qui blanditiis praesentium voluptatum deleniti atque corrupti, quos dolores et quas molestias excepturi sint, obcaecati cupiditate non provident, similique sunt in culpa, qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio, cumque nihil impedit, quo minus id, quod maxime placeat, facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet, ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
[/html]

Sed ut perspiciatis, unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam eaque ipsa, quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt, explicabo. Nemo enim ipsam voluptatem, quia voluptas sit, aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos, qui ratione voluptatem sequi nesciunt, neque porro quisquam est, qui dolorem ipsum, quia dolor sit, amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt, ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit, qui in ea voluptate velit esse, quam nihil molestiae consequatur, vel illum, qui dolorem eum fugiat, quo voluptas nulla pariatur? At vero eos et accusamus et iusto odio dignissimos ducimus, qui blanditiis praesentium voluptatum deleniti atque corrupti, quos dolores et quas molestias excepturi sint, obcaecati cupiditate non provident, similique sunt in culpa, qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio, cumque nihil impedit, quo minus id, quod maxime placeat, facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet, ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
Sed ut perspiciatis, unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam eaque ipsa, quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt, explicabo. Nemo enim ipsam voluptatem, quia voluptas sit, aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos, qui ratione voluptatem sequi nesciunt, neque porro quisquam est, qui dolorem ipsum, quia dolor sit, amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt, ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit, qui in ea voluptate velit esse, quam nihil molestiae consequatur, vel illum, qui dolorem eum fugiat, quo voluptas nulla pariatur? At vero eos et accusamus et iusto odio dignissimos ducimus, qui blanditiis praesentium voluptatum deleniti atque corrupti, quos dolores et quas molestias excepturi sint, obcaecati cupiditate non provident, similique sunt in culpa, qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio, cumque nihil impedit, quo minus id, quod maxime placeat, facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet, ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.

0

142

[html]
<style>

.gallery {
  position: relative;
  width: 760px;
  height: 305px;

  &:hover :not(div[data-pos='0'],img) { cursor: pointer; }

  & .item {
    position: absolute;
    width: 175px;
    height: 150px;
    overflow: hidden;
    transition: transform 0.9s, width 0.9s, height 0.9s;

    & img {
      width: 100%;
      height: 100%;
    }
  }

  & div[data-pos='0'] {
    width: 400px;
    height: inherit;
    z-index: 10;
  }
}

div[data-pos='0'] { transform: translate(0,0); }
div[data-pos='1'] { transform: translate(405px,0); }
div[data-pos='2'] { transform: translate(585px,0); }
div[data-pos='3'] { transform: translate(405px,155px); }
div[data-pos='4'] { transform: translate(585px,155px); }

@media (width < 800px) {
  .gallery {
    width: 405px;
    height: 660px;

    & .item {
      width: 200px;
      height: 150px;
    }

    & div[data-pos='0'] {
      width: inherit;
      height: 350px;
      z-index: 10;
    }
  }

  div[data-pos='0'] { transform: translate(0,0); }
  div[data-pos='1'] { transform: translate(0,355px); }
  div[data-pos='2'] { transform: translate(0,510px); }
  div[data-pos='3'] { transform: translate(205px,355px); }
  div[data-pos='4'] { transform: translate(205px,510px); }
}
</style>
<script>
function init(e) {
  if (!e.target.closest('.item')) return;
  let hero = document.querySelector('div[data-pos="0"]');
  let target = e.target.parentElement;
  [target.dataset.pos,hero.dataset.pos] = [hero.dataset.pos,target.dataset.pos];
}

window.addEventListener('click',init,false);
</script>
<main class='gallery'>
  <div class='item' data-pos='0'><img src='https://source.unsplash.com/qvEI30ydO_w'></div>
  <div class='item' data-pos='1'><img src='https://source.unsplash.com/9KDuSi7dJv4'></div>
  <div class='item' data-pos='2'><img src='https://source.unsplash.com/d5PYB17O9jE'></div>
  <div class='item' data-pos='3'><img src='https://source.unsplash.com/Um9AkOiIDcU'></div>
  <div class='item' data-pos='4'><img src='https://source.unsplash.com/YTk8tO3PGdA'></div>
</main>

[/html]

0

143

[html]<style>
.gallery {
  --size: 100px;
  display: grid;
  grid-template-columns: repeat(6, var(--size));
  grid-auto-rows: var(--size);
  margin-bottom: var(--size);
  place-items: start center;
  gap: 5px;
 
  &:has(:hover) img:not(:hover),
  &:has(:focus) img:not(:focus){
    filter: brightness(0.5) contrast(0.5);
  }

  & img {
    object-fit: cover;
    width: calc(var(--size) * 2);
    height: calc(var(--size) * 2);
    clip-path: path("M90,10 C100,0 100,0 110,10 190,90 190,90 190,90 200,100 200,100 190,110 190,110 110,190 110,190 100,200 100,200 90,190 90,190 10,110 10,110 0,100 0,100 10,90Z");
    transition: clip-path 0.25s, filter 0.75s;
    grid-column: auto / span 2;
    border-radius: 5px;

    &:nth-child(5n - 1) {
      grid-column: 2 / span 2
    }

    &:hover,
    &:focus {
      clip-path: path("M0,0 C0,0 200,0 200,0 200,0 200,100 200,100 200,100 200,200 200,200 200,200 100,200 100,200 100,200 100,200 0,200 0,200 0,100 0,100 0,100 0,100 0,100Z");
      z-index: 1;
      transition: clip-path 0.25s, filter 0.25s;
    }
   
    &:focus {
      outline: 1px dashed black;
      outline-offset: -5px;
    }
  }
}
</style>
<script>

</script>

<article class="gallery">
  <img src="https://assets.codepen.io/1506195/unsplash-music-0.avif" alt="guitar player at concert" />
  <img src="https://assets.codepen.io/1506195/unsplash-music-1.avif" alt="duo singing" />
  <img src="https://assets.codepen.io/1506195/unsplash-music-2.avif" alt="crowd cheering" />
  <img src="https://assets.codepen.io/1506195/unsplash-music-3.avif" alt="singer performing" />
  <img src="https://assets.codepen.io/1506195/unsplash-music-4.avif" alt="singer fistbumping crowd" />
  <img src="https://assets.codepen.io/1506195/unsplash-music-5.avif" alt="man with a guitar singing" />
  <img src="https://assets.codepen.io/1506195/unsplash-music-6.avif" alt="crowd looking at a lighted stage" />
  <img src="https://assets.codepen.io/1506195/unsplash-music-7.avif" alt="woman singing on stage" />
</article>
[/html]

0

144

[hideprofile]

0

145

[html]<style>
body {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
  min-height: 100vh;
  background-image: radial-gradient(circle at 50% 100%, #1b1b35, #121225);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', 'Open Sans', system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
}

.button {
  position: relative;
  border: 1px solid transparent;
  border-radius: 6px;
  padding: 8px 16px;
  min-width: 8em;
  text-align: center;
  color: #fff;
  background-image:
    linear-gradient(to bottom, #f12828, #a00332, #9f0f31),
    linear-gradient(to bottom, #ae0034, #6f094c);
  background-clip: padding-box, border-box;
  background-origin: padding-box, border-box;
  box-shadow:
    inset 0 1px rgb(255 255 255 / .25),
    inset 0 -1px rgb(0 0 0 / .1),
    0 2px 4px rgb(0 0 0 / .25);
  transition: .2s;
  will-change: transform;
 
  &:active {
    transform: scale(.92);
    filter: brightness(.8);
  }
}

.button-hat {
  position: absolute;
  top: -15px;
  left: -17px;
  height: 44px;
  filter: drop-shadow(0 2px 1px rgb(0 0 0 / .25));
}

.canvas {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
</style>
<script>
const canvas = document.querySelector('.canvas');
const ctx = canvas.getContext('2d');

const pixelRatio = window.devicePixelRatio || 1;

const snowflakes = [];

class Snowflake {
  constructor() {
    this.x = Math.random() * canvas.width;
    this.y = Math.random() * canvas.height;
   
    const maxSize = 3;
    this.size = Math.random() * (maxSize - 1) + 1;
    this.velocity = this.size * 0.35;
    const opacity = this.size / maxSize;
    this.fill = `rgb(255 255 255 / ${opacity})`;
   
    this.windSpeed = (Math.random() - 0.5) * 0.1;
    this.windAngle = Math.random() * Math.PI * 2;
  }
  isOutsideCanvas() {
    return this.y > canvas.height + this.size;
  }
  reset() {
    this.x = Math.random() * canvas.width;
    this.y = -this.size;
  }
  update() {
    this.windAngle += this.windSpeed;
    this.wind = Math.cos(this.windAngle) * 0.5;

    this.x += this.wind;
    this.y += this.velocity;

    if (this.isOutsideCanvas()) {
      this.reset();
    }
  }
  draw() {
    ctx.beginPath();
    ctx.arc(this.x, this.y, this.size, 0, Math.PI * 2);
    ctx.fillStyle = this.fill;
    ctx.fill();
    ctx.closePath();
  }
}

const createSnowflakes = () => {
  snowflakeCount = Math.floor(window.innerWidth * window.innerHeight / 1400);
 
  for (let i = 0; i < snowflakeCount; i++) { 
    snowflakes.push(new Snowflake());
  }
}

const resizeCanvas = () => {
  const width = window.innerWidth;
  const height = window.innerHeight;
  canvas.width = width * pixelRatio;
  canvas.height = height * pixelRatio;
  canvas.style.width = `${width}px`;
  canvas.style.height = `${height}px`;
  ctx.scale(pixelRatio, pixelRatio);
  snowflakes.length = 0;
  createSnowflakes();
};

window.addEventListener('resize', resizeCanvas);

resizeCanvas();

const render = () => {
  requestAnimationFrame(render);
  ctx.clearRect(0, 0, canvas.width, canvas.height);
  snowflakes.forEach(snowflake => {
    snowflake.update();
    snowflake.draw();
  });
};

render();

</script>
<button class="button" type="button">
  Christmas button
  <img class="button-hat" src="https://assets.codepen.io/4175254/santa-hat-test-9.png" alt="">
</button>

<canvas class="canvas"></canvas>[/html]

0

146

Код:
.button {
    padding: 5px;
    cursor: pointer;
    background: linear-gradient(90deg,  #c7c5e1 0%, #887d8a 48%, #9eacc9 100%);
   text-decoration: none;
    color: #ffffffcc;
    border: 1px solid #8b859b;
    text-transform: lowercase;
    box-shadow: 2px 2px 2px 2px #c5c0c9;
}
.button:hover {
    transform: scale(1.1);
    background: linear-gradient(120deg,  #c7c5e1 0%, #887d8a 48%, #9eacc9 200%);
    text-transform: capitalize;
    border-radius: 10px;
}

0

147

[hideprofile][html]<style>
.hero {
  min-height: 300px;
  width: 100%;
  overflow: hidden;
  background: url(https://s-media-cache-ak0.pinimg.com/or … a31952.jpg);
  background-size: cover;
}

h1 {
  padding: 10px;
  margin: 20px 30px 5px 30px;
  font-size: 40px;
}
h2 {
  padding: 10px;
  margin: 0px 30px;
  font-size: 25px;
}
p {
  padding: 10px;
  margin: 0px 30px;
  font-size: 15px;
overflow: hidden;
}
a {
  color : #4466FF;
  text-decoration: none;
}
</style>
<script>
// Glitch Line Vars
var glitch_lines = 15,
glitch_line_duration_min = 100,
glitch_line_duration_max = 500,
glitch_line_timer_min = 100,
glitch_line_timer_max = 5000,
glitch_line_wait_min = 100,
glitch_line_wait_max = 3000,
glitch_line_height_min = 5,
glitch_line_height_max = 50;

// Glitch Move Vars
var glitch_move_color_1 = '#08FFF2',
glitch_move_color_2 = '#FC0DFF',
glitch_move_original_color = '#585E62',
glitch_move_opacity = .2,
glitch_move_duration_min = 1000,
glitch_move_duration_max = 300,
glitch_move_timer_min = 500,
glitch_move_timer_max = 1500,
glitch_move_wait_min = 1000,
glitch_move_wait_max = 2000,
glitch_move_amount_min = -10,
glitch_move_amount_max = 10;

// Do you want to autostart on page load?
var glitch_autostart = 1;

// Start Glitch on page load.
window.onload = function() {
if (glitch_autostart) {
    glitch = new glitch();
    glitch.init();
}
}

// Random integer function (Will correctly work w/ negative numbers)
function randomInt(min, max){
    return Math.floor(Math.random()*(max-min+1)+min);
}

// Glitch functionality
function glitch() {

// Initialize the glitches
// - Create divs
// - Load divs from <glitch> element
// - Set body to not scroll on x-axis
// - Starts glitch animations

this.init = function() {
    page_content = $('glitch').html();
    $('body').css('overflow-x', 'hidden');

    // Glitch Lines
    linecount = 0;
    this.glitchlines = [];
    while (linecount < glitch_lines) {
    $('body').append('<div class="glitch-line-'+linecount+'">'+page_content+'</div>');
    $('.glitch-line-'+linecount).css({
        'height': '100%',
        'width': '100%',
        'position': 'absolute',
        'top': '0',
        'left': '0'
    }).hide();
    this.glitchline('.glitch-line-'+linecount, linecount);
    linecount++;
    }

    // Glitch Move
    $('body').append('<div class="glitch-div-1">'+page_content+'</div>');
    $('body').append('<div class="glitch-div-2">'+page_content+'</div>');
    $('.glitch-div-1, .glitch-div-2').css({
    'height': '100%',
    'width': '100%',
    'position': 'absolute',
    'top': '0',
    'left': '0'
    });
    this.glitchmove();
}

this.glitchline = function(div, id) {
    // Store an array of glitchlines
    this.glitchlines[id] = new glitchline;
    this.glitchlines[id].start(div);
}

this.glitchmove = function() {
    glitchmove = new glitchmove;
    glitchmove.start();
}

}

// Glitch Move Animation

function glitchmove() {

// Start glitch
this.start = function() {
    selfmove = this;

    // Create a move on a regular duration
    setInterval(function() {
    // Wait a random number of ms to execute
    setTimeout(function() {
        // Create animation
        selfmove.move();
    }, randomInt(glitch_move_wait_min, glitch_move_wait_max));
    }, randomInt(glitch_move_timer_min, glitch_move_timer_max));

}

this.move = function() {
    // Move the divs a random number of pixels top & left, change the color & opacity.
    $('.glitch-div-1').css({
    'left': randomInt(glitch_move_amount_min, glitch_move_amount_max) + 'px',
    'top': randomInt(glitch_move_amount_min, glitch_move_amount_max) + 'px',
    'opacity': glitch_move_opacity,
    'color': glitch_move_color_1
    });
    $('.glitch-div-2').css({
    'left': randomInt(glitch_move_amount_min, glitch_move_amount_max) + 'px',
    'top': randomInt(glitch_move_amount_min, glitch_move_amount_max) + 'px',
    'opacity': glitch_move_opacity,
    'color': glitch_move_color_2
    });

    // Prepare to move divs back
    this.moveback();
}

this.moveback = function() {
    // Move the divs back after a random time duration
    this.timeout = setTimeout(function() {
    // Make sure we set the text back to the original color!
    $('.glitch-div-1, .glitch-div-2').css({
        'left': '0px',
        'top': '0px',
        'color': glitch_move_original_color,
        'opacity': '1',
    });
    }, randomInt(glitch_move_duration_min, glitch_move_duration_max));
}
}

function glitchline() {

this.start = function(div) {
    selfline = this;
    // Hold our timeouts.
    this.timeouts = [];

    // Create a move on a regular duration
    setInterval(function() {
    // Wait a random number of ms to execute
    setTimeout(function() {
        selfline.add(div);
    }, randomInt(glitch_line_wait_min, glitch_line_wait_max));
    }, randomInt(glitch_line_timer_min, glitch_line_timer_max));
}

this.add = function(div) {
    // change the height, width, top, and left using a random number
    $(div).css({
    'height': randomInt(glitch_line_height_min, glitch_line_height_max) + 'px',
    'width': randomInt($(window).width()/2, $(window).width()) + 'px',
    'top': randomInt(0, $(window).height()) + 'px',
    'left': randomInt(0, $(window).width()/2) + 'px',
    'position': 'fixed',
    'overflow': 'hidden',
    'display': 'block',
    'background': '#FFF'
    });
    // Set random scroll top & scroll left.
    $(div).scrollTop(randomInt(0, $(window).height()));
    $(div).scrollLeft(randomInt(0, 100));

    // Prepare to hide the div
    this.remove(div);
}

this.remove = function(div) {
    // Hide the div at a random time interval.
    this.timeouts[div] = setTimeout(function() {
    $(div).hide();
    }, randomInt(glitch_line_duration_min, glitch_line_duration_max));
}

}
</script>
<glitch style="overflow-y: hidden;">
  <div class="hero">
  </div>
  <h1>404?!</h1>
  <h2>Sometimes you take the road less travelled &hellip;</h2>
  <p>
      We're not sure how you got here, but you should head <a href="#">home</a>. </p>
   <p>
      It's probably our fault that you're here; but if you're having trouble with the site just shoot us an <a href="mailto:user@admin.com">email</a>.
   </p>
  <!-- Extra spacing! -->
  <br>
  <br>
  <br>
  <br>
  <br>
  <br>
  <br>
  <br>
 
</glitch>
  <br>
  <br>
  <br>
  <br>
[/html]

0

148

[html]
<style>
:root {
  --background: #ebebeb; /* LIGHT GRAY */
  --darkaccent: #36334c; /* DARK BLUE */
  --darkaccenthalf: rgba(54,51,76,.5);  /* DARK BLUE */
  --accent1: #eb5c77; /* PINK */
  --accent2: #59a3b4; /* LIGHT BLUE */
  --accent3: #ebcf71; /* YELLOW */
  --transwhite: rgba(260,260,260,.5);
  --transblack: rgba(0,0,0,.1);
 
  --titlefont: raleway;
  --bodyfont: open sans;
}

a {
  text-decoration: none;
}

body {
  background:url(https://www.transparenttextures.com/pat … scales.png) var(--background);
}

/*body {
background:url(https://www.transparenttextures.com/pat … quares.png) var(--background);
} */

#mangata-wrapper {
  position: relative; z-index: 1;
  margin: 50px auto 0px auto;
  width: 1000px;
}

#mangata-wrapperheader {
  position: relative; z-index: 1;
  width: 1000px; height: 540px;
  box-sizing: border-box;
  padding: 20px;
  border-radius: 30px 30px 0px 0px;
  background: var(--transwhite) url(https://media.discordapp.net/attachment … tled-1.png);
  background-repeat: no-repeat;
  background-position: top right;
  border: solid 1px var(--transblack);
}

#mangata-wrapperheader:after {
  content: "";
  pointer-events: none;
  position: absolute; z-index: 2;
  top: 430px; left: 200px;
  width: 70px; height: 70px;
  border-radius: 100%;
  background: var(--accent1);
  background: -moz-radial-gradient(top, ellipse cover, var(--accent3) 0%, var(--accent1) 100%);
  background: -webkit-gradient(radial, top center, 0px, top center, 100%, color-stop(0%, var(--accent3)), color-stop(100%, var(--accent1)));
  background: -webkit-radial-gradient(top, ellipse cover, var(--accent3) 0%, var(--accent1) 100%);
  background: -o-radial-gradient(top, ellipse cover, var(--accent3) 0%, var(--accent1) 100%);
  background: -ms-radial-gradient(top, ellipse cover, var(--accent3) 0%, var(--accent1) 100%);
  background: radial-gradient(ellipse at top, var(--accent3) 0%, var(--accent1) 100%);
  -webkit-box-shadow: 0px 0px 59px -8px rgba(54,51,76,1);
  -moz-box-shadow: 0px 0px 59px -8px rgba(54,51,76,1);
  box-shadow: 0px 0px 59px -8px rgba(54,51,76,1);
}

#mangata-header {
  position: relative; z-index: 2;
  margin: 50px auto 50px auto;
  width: 800px; height: 400px;
  overflow: hidden;
  border-radius: 20px;
  background: rgba(260,260,260,.1);
  -webkit-box-shadow: 0px 0px 49px -10px rgba(54,51,76,1);
  -moz-box-shadow: 0px 0px 49px -10px rgba(54,51,76,1);
  box-shadow: 0px 0px 49px -10px rgba(54,51,76,1);
}

#mangata-header:after {
  content: "";
  pointer-events: none;
  position: absolute; z-index: 2;
  top: 50px; left: 330px;
  width: 50px; height: 50px;
  border-radius: 100%;
  background: var(--darkaccent);
  background: -moz-radial-gradient(top, ellipse cover, var(--accent1) 0%, var(--darkaccent) 100%);
  background: -webkit-gradient(radial, top center, 0px, top center, 100%, color-stop(0%, var(--accent1)), color-stop(100%, var(--darkaccent)));
  background: -webkit-radial-gradient(top, ellipse cover, var(--accent1) 0%, var(--darkaccent) 100%);
  background: -o-radial-gradient(top, ellipse cover, var(--accent1) 0%, var(--darkaccent) 100%);
  background: -ms-radial-gradient(top, ellipse cover, var(--accent1) 0%, var(--darkaccent) 100%);
  background: radial-gradient(ellipse at top, var(--accent1) 0%, var(--darkaccent) 100%);
}

#mangata-header:before {
  content: "";
  pointer-events: none;
  position: absolute; z-index: 2;
  top: 150px; left: -15px;
  width: 30px; height: 30px;
  border-radius: 100%;
  background: var(--darkaccent);
  background: -moz-radial-gradient(top, ellipse cover, var(--background) 0%, var(--accent2) 100%);
  background: -webkit-gradient(radial, top center, 0px, top center, 100%, color-stop(0%, var(--background)), color-stop(100%, var(--accent2)));
  background: -webkit-radial-gradient(top, ellipse cover, var(--background) 0%, var(--darkaccent) 100%);
  background: -o-radial-gradient(top, ellipse cover, var(--background) 0%, var(--accent2) 100%);
  background: -ms-radial-gradient(top, ellipse cover, var(--background) 0%, var(--accent2) 100%);
  background: radial-gradient(ellipse at top, var(--background) 0%, var(--accent2) 100%);
  -webkit-box-shadow: 0px 0px 59px -20px rgba(54,51,76,1);
-moz-box-shadow: 0px 0px 59px -20px rgba(54,51,76,1);
box-shadow: 0px 0px 59px -20px rgba(54,51,76,1);
}

#mangata-header h1 {
  position: absolute; z-index: 1;
  pointer-events: none;
  top: 100px; left: 100px;
  font: 700 50px/100% var(--titlefont);
  text-transform: uppercase;
  letter-spacing: 1.5px;
  background-image: linear-gradient(2deg, var(--accent2), var(--accent1));
color: transparent;
background-clip: text;
-webkit-background-clip: text;
}

#mangata-header h2 {
  position: absolute; z-index: 0;
  left: 130px; top: 188px;
  font: 700 13px/100% var(--titlefont);
  color: rgba(0,0,0,.1);
  width: 300px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

#mangata-header h2 b {
  color: var(--accent1);
  opacity: .3;
}

#mangata-header h3 {
  position: absolute; z-index: 3;
  top: 250px; left: 280px;
  display: inline-block;
  padding: 8px 10px;
  border-radius: 8px;
  color: var(--background);
  font: 600 9px/100% var(--titlefont);
  letter-spacing: 2px;
  text-transform: uppercase;
  background: var(--darkaccent);
  background: -moz-linear-gradient(45deg, var(--darkaccent) 0%, var(--accent2) 100%)
  background: -webkit-linear-gradient(45deg, var(--darkaccent) 0%,var(--accent2) 100%);
  background: linear-gradient(45deg, var(--darkaccent) 0%,var(--accent2) 100%); 
}

#mangata-header h3 a {
  color: var(--accent3);
}

#mangata-crotch {
  padding: 10px 230px 10px 10px;
  background: var(--background) url(https://www.transparenttextures.com/pat … scales.png);
  border-right: solid 1px var(--transblack);
  border-left: solid 1px var(--transblack);
  border-bottom: solid 1px var(--transblack);
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: space-between;
  -ms-flex-line-pack: justify;
  align-content: space-between;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

#mangata-crotch svg {
  float: left;
  font-size: 30px;
  margin-right: 10px;
  color: var(--accent1);
}

#mangata-crotch a:hover svg {
  animation: rubberBand 1s infinite;
}

#mangata-crotch span {
  background: var(--transwhite);
  border: solid 1px var(--transblack);
  padding: 10px;
  border-radius: 10px;
  display: inline-block;
  max-width: 120px; height: 30px;
  font: 600 10px/100% var(--titlefont);
  text-transform: uppercase;
  letter-spacing: 3px;
  color: rgba(0,0,0,.4);
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

#mangata-crotch span b {
  font: 700 13px/100% var(--titlefont);
  background-image: linear-gradient(2deg, var(--accent2), var(--accent1));
  letter-spacing: 0px;
color: transparent;
background-clip: text;
-webkit-background-clip: text;
}

#mangata-innerwrapper {
  position: relative; z-index: 1;
  background: var(--transwhite);
  border-left: solid 1px var(--transblack);
  border-right: solid 1px var(--transblack);
  border-bottom: solid 1px var(--transblack);
  padding: 30px;
}

#mangata-avatar-crop {
  position: absolute; z-index: 5;
  top: -101px; right: 34px;
  height: 100px; width: 160px;
  overflow: hidden;
}

#mangata-avatar {
  position: absolute; z-index: 2;
  left: 20px; top: 14px;
  border-radius: 100%;
  width: 100px; height: 100px;
  background-size: cover;
  background-position: center center;
  border: solid 10px var(--background);
  box-shadow: 0px 0px 0px 1px var(--transblack);
}

#mangata-avatar:after {
  content: "";
  position: absolute; z-index: 5;
  top: 0px; right: 0px;
  border-radius: 100%;
  width: 100px; height: 100px;
  background: var(--darkaccent);
  mix-blend-mode: lighten;
}

#mangata-avatar-bg {
  content: "";
  position: absolute; z-index: 0;
  top: 9px; right: 15px;
  border-radius: 100%;
  width: 130px; height: 130px;
   background: var(--accent3);
  background: -moz-radial-gradient(top, ellipse cover, var(--accent3) 0%, var(--accent1) 100%);
  background: -webkit-gradient(radial, top center, 0px, top center, 100%, color-stop(0%, var(--accent3)), color-stop(100%, var(--accent1)));
  background: -webkit-radial-gradient(top, ellipse cover, var(--accent3) 0%, var(--accent1) 100%);
  background: -o-radial-gradient(top, ellipse cover, var(--accent3) 0%, var(--accent1) 100%);
  background: -ms-radial-gradient(top, ellipse cover, var(--accent3) 0%, var(--accent1) 100%);
  background: radial-gradient(ellipse at top, var(--accent3) 0%, var(--accent1) 100%); 
}

#mangata-avatar-bg:before {
  content: "";
  position: absolute; z-index: 0;
  top: -10px; right: -10px;
  border-radius: 100%;
  width: 150px; height: 150px;
  background:rgba(260,260,260,.3);
  border: solid 1px rgba(0,0,0,.1);
}

.mangata-forum-1,
.mangata-forum-2 {
  position: relative; z-index: -1;
  padding: 75px 50px 110px;
  margin: 0px 0px -43px 0px;
  background: var(--accent1);
  background: -moz-linear-gradient(45deg, var(--accent3) 0%, var(--accent1) 50%,var(--darkaccent) 100%)
  background: -webkit-linear-gradient(45deg, var(--accent3) 0%, var(--accent1) 50%,var(--darkaccent) 100%);
  background: linear-gradient(45deg, var(--accent3) 0%, var(--accent1) 50%,var(--darkaccent) 100%);
  border-radius: 30px 30px 0px 0px;
  font: 600 20px/100% var(--titlefont);
  text-align: left;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--background);
}

.mangata-forum-1:after {
  display: block;
  content: "The kind that makes June feel like September";
  font: 500 9px/100% var(--bodyfont);
  text-transform: uppercase;
  letter-spacing: 3px;
  color: var(--background);
}

.mangata-forum-1:before {
  position: absolute; z-index: 0;
  top: 50px; left: 50px;
  pointer-events: none;
  opacity: 0.2;
  content: "001.";
  font: 500 70px/100% var(--bodyfont);
  text-transform: uppercase;
  letter-spacing: 3px;
  color: var(--background);
}

.mangata-forum-2 {
  border-radius: 0px 0px 0px 0px;
}

.mangata-forum-2:after {
  display: block;
  content: "And I'm trying to find that peace of mind";
  font: 500 9px/100% var(--bodyfont);
  text-transform: uppercase;
  letter-spacing: 3px;
  color: var(--background);
}

.mangata-forum-2:before {
  position: absolute; z-index: 0;
  top: 50px; left: 50px;
  pointer-events: none;
  opacity: 0.2;
  content: "002.";
  font: 500 70px/100% var(--bodyfont);
  text-transform: uppercase;
  letter-spacing: 3px;
  color: var(--background);
}

path {
fill: var(--background);
}
</style>

[/html]

0

149

[html]
<style>
@import "compass/css3";

body{
  background-color:#f0f0f0;
}
.entry{
  position:relative;
  width:300px;
  height:200px;
  background: white;
  margin:15px;
  overflow:hidden;
  float:left;
  box-shadow: 0px 3px 8px rgba(0,0,0,.15);
 
 
  &:hover{
    img{
        right:0px;
      top:-5px;
        @include scale(.9);
    }
    aside{
      left:-125px;
      transition: all 0.75s ease;
      opacity:0;
    }
    i{
      left:110px;
      opacity:1;
      @include scale(.7);
    }
  }
 
  i{
    border-radius:100%;
    background-color:rgba(0,0,0,.4);
    width:80px;
    height:80px;
    display:block;
    position:absolute;
    left:260px;
    top:48px;
    text-align:center;
    line-height:72px;
    color:white;
    font-family:"effra";
    font-size:100px;
    font-weight:bold;
    opacity:0;
    transition: all 0.5s ease;
    @include scale(1);
  }
  i:after{
    content:'+';
  }
 
  aside{
    width:100px;
    padding:65px 25px 30px 25px;
    z-index:100;
    position:relative;
    left:0px;
    transition: all 0.5s ease;
  }
  strong{
    font-family: "effra";
    text-transform:uppercase;
    font-weight:bold;
    font-size:16px;
    line-height:14px;
    color:#333;
  }
 
  p{
    font-family: "Arial";
    font-size:13px;
    margin-top:20px;
    color:#888;
  }
 
  a{
    &:hover{
      cursor:pointer;
    }
    display:block;
    width:inherit;height:inherit;
   
    img{
      position:absolute;
      top:0px;
      right:-125px;
      transition: all 0.5s ease;
    }
  }
 
  ul{
    position:absolute;
    display:block;
    bottom:-5px;
    width:inherit;
  }
  li{
    display:inline-block;
    height:5px;
    width:100px;
    background-color:red;
    overflow:hidden;
    bottom:0px;
    position:relative;
    bottom:0px;
  }
}
</style>
<script>
$(document).ready(function(){
$('.entry').hover(function(){
   var li = $('li', this);
   
   for(var i = 0; i < $(li).length; i++){
     $($(li)[i]).stop().animate({
     'height':'18px'
   }, 300 + (i * 150));
   }
}, function(){
   $('li', this).stop().animate({
     'height':'5px'
   }, 250);
});
 
 
});
</script>
<article class="entry">
  <a>
    <aside>
      <strong>Quadrant Homes</strong>
      <p>Pacific Northwest Homebuilder</p>
    </aside>
    <img src="https://i.imgur.com/lIkWmas.png"/>
    <i></i>
  </a>
  <ul>
    <li style="background-color:#246f41"></li><li style="background-color:#f57b20"></li><li style="background-color:#433e42"></li>
  </ul>
</article>

<article class="entry">
  <a>
    <aside>
      <strong>Ossia</strong>
      <p>Creators of Cota Wireless Energy</p>
    </aside>
    <img src="https://i.imgur.com/OzLBARg.jpg"/>
    <i></i>
  </a>
  <ul>
    <li style="background-color:#8dcf0a"></li><li style="background-color:#5a9619"></li><li style="background-color:#2c2c2c"></li>
  </ul>
</article>

<article class="entry">
  <a>
    <aside>
      <strong>Clarity Signs</strong>
      <p>Kenmore Based Sign Shop</p>
    </aside>
    <img src="https://i.imgur.com/jUW32np.jpg"/>
    <i></i>
  </a>
  <ul>
    <li style="background-color:#d4132e"></li><li style="background-color:#282627"></li><li style="background-color:#7c7c7c"></li>
  </ul>
</article>

<article class="entry">
  <a>
    <aside>
      <strong>Maddock &amp; Associates</strong>
      <p>Tacoma Based Insurance Broker</p>
    </aside>
    <img src="https://i.imgur.com/Jc1nXxx.jpg"/>
    <i></i>
  </a>
  <ul>
    <li style="background-color:#0084be"></li><li style="background-color:#014c71"></li><li style="background-color:#329e00"></li>
  </ul>
</article>

<article class="entry">
  <a>
    <aside>
      <strong>Smart Office Environments</strong>
      <p>Office Furniture</p>
    </aside>
    <img src="https://i.imgur.com/U0Mr5kU.jpg"/>
    <i></i>
  </a>
  <ul>
    <li style="background-color:#ecce00"></li><li style="background-color:#333333"></li><li style="background-color:#cccccc"></li>
  </ul>
</article>

<article class="entry">
  <a>
    <aside>
      <strong>Cardiac Science</strong>
      <p>International Defibrillators</p>
    </aside>
    <img src="https://i.imgur.com/7tndqyT.jpg"/>
    <i></i>
  </a>
  <ul>
    <li style="background-color:#ffa43f"></li><li style="background-color:#afbc22"></li><li style="background-color:#3c8dce"></li>
  </ul>
</article>

<article class="entry">
  <a>
    <aside>
      <strong>Brennan Heating</strong>
      <p>Seattle Heating &amp; Air Conditioning</p>
    </aside>
    <img src="https://i.imgur.com/xz4mBfi.jpg"/>
    <i></i>
  </a>
  <ul>
    <li style="background-color:#d43254"></li><li style="background-color:#2f5fac"></li><li style="background-color:#57aeff"></li>
  </ul>
</article>

<article class="entry">
  <a>
    <aside>
      <strong>Divers Institute</strong>
      <p>Seattle Diving School</p>
    </aside>
    <img src="https://i.imgur.com/b3uXhJH.jpg"/>
    <i></i>
  </a>
  <ul>
    <li style="background-color:#2b8dbd"></li><li style="background-color:#264c5f"></li><li style="background-color:#f36000"></li>
  </ul>
</article>

<article class="entry">
  <a>
    <aside>
      <strong>Evoke Modern</strong>
      <p>Pacific Northwest Modern Homes</p>
    </aside>
    <img src="https://i.imgur.com/tecOxxA.jpg"/>
    <i></i>
  </a>
  <ul>
    <li style="background-color:#cecccf"></li><li style="background-color:#6581a0"></li><li style="background-color:#272425"></li>
  </ul>
</article>

<!--Typekit-->
<script type="text/javascript" src="//use.typekit.net/wyr7rug.js"></script>
<script type="text/javascript">try{Typekit.load();}catch(e){}</script>
[/html]

0

150

[html]
<style>

body {
  background: #F3F3F3;
  padding: 0;
  margin: 0;
  overflow-x: hidden;
 
  font-family: Arial, sans-serif;
  font-size: 16px;
  line-height: 20px;
}

body.open {
  overflow-y: hidden;
}

.shop {
  position: relative;
  z-index: 5;
}

.shop__header {
  box-sizing: border-box;
  position: fixed;
  background: rgba(255, 255, 255, 0.9);
  width: 100%;
  padding: 15px;
  overflow: hidden;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.shop__products {
  padding-top: 70px;
}

.shop__title {
  display: block;
  margin: 0;
  float: left;
 
  font-size: 30px;
  line-height: 40px;
}

.shop__text {
  display: block;
  padding: 0;
  margin: 0;
  float: right;
 
  .button {
    padding: 10px 15px;
  }
}

.products {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 20px 0 20px 20px;
}

.products__item {
  width: 290px;
}

.product {
  background: #FFF;
  padding: 30px 15px;
  margin: 0 20px 20px 0;
  border-radius: 5px;
  text-align: center;
}

.product__title {
  font-weight: bold;
  font-size: 20px;
  margin: 0 0 15px 0;
}

.product__text {
  margin: 0;
}

.button {
  display: inline-block;
  background: #39C;
  padding: 5px 10px;
  border-radius: 3px;
 
  font-weight: bold;
  font-size: 14px;
  text-decoration: none;
  color: #FFF;
}

.button--light {
  background: #FFF;
  color: #F00;
}

.cart {
  position: fixed;
  background: #F3F3F3;
  width: 400px;
  max-width: 90%;
  height: 100%;
  top: 0;
  right: 0;
  box-shadow: -2px 0 4px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  transform: translate(500px, 0);
  transition: transform $speed ease-in-out;
  z-index: 20;
}

body.open .cart {
  transform: translate(0, 0);
}

.cart__header {
  box-sizing: border-box;
  position: absolute;
  background: rgba(255, 255, 255, 0.9);
  width: 100%;
  padding: 15px 15px;
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: 2;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
 
  .cart__text {
    float: right;
  }
}

.cart__title {
  font-size: 20px;
  line-height: 40px;
  margin: 0;
  float: left;
}

.cart__products {
  box-sizing: border-box;
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 70px 0;
  overflow-x: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  z-index: 1;
 
  article {
    padding: 15px;
    border-bottom: 1px dotted #CCC;
   
    h1 {
      font-size: 16px;
      line-height: 20px;
      margin: 0;
    }
   
    p {
      font-size: 14px;
      margin: 0;
     
      a {
        color: #F00
      }
    }
  }
}

.cart__product {
  display: none;
}

.cart__empty {
  padding: 30px 15px;
  margin: 0;
  font-style: italic;
  text-align: center;
 
  &.hide {
    display: none;
  }
}

.cart__footer {
  box-sizing: border-box;
  position: absolute;
  background: rgba(255, 255, 255, 0.9);
  width: 100%;
  padding: 15px;
  left: 0;
  bottom: 0;
  z-index: 2;
  box-shadow: 0 -2px 4px rgba(0, 0, 0, 0.2);
  text-align: right;
}

.cart__text {
  margin: 0;
 
  .button {
    padding: 10px 15px;
  }
}

.lightbox {
  position: fixed;
  background: #000;
  width: 0;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 10;
  opacity: 0;
  transition: opacity $speed ease-in-out, width 0ms ease-in-out $speed;
}

body.open .lightbox {
  width: 100%;
  opacity: 0.8;
  transition: opacity $speed ease-in-out, width 0ms ease-in-out;
}
</style>
<script>
var cartOpen = false;
var numberOfProducts = 0;

$('body').on('click', '.js-toggle-cart', toggleCart);
$('body').on('click', '.js-add-product', addProduct);
$('body').on('click', '.js-remove-product', removeProduct);

function toggleCart(e) {
  e.preventDefault();
  if(cartOpen) {
    closeCart();
    return;
  }
  openCart();
}

function openCart() {
  cartOpen = true;
  $('body').addClass('open');
}

function closeCart() {
  cartOpen = false;
  $('body').removeClass('open');
}

function addProduct(e) {
  e.preventDefault();
  openCart();
  $('.js-cart-empty').addClass('hide');
  var product = $('.js-cart-product-template').html();
  $('.js-cart-products').prepend(product);
  numberOfProducts++;
}

function removeProduct(e) {
  e.preventDefault();
  numberOfProducts--;
  $(this).closest('.js-cart-product').hide(250);
  if(numberOfProducts == 0) {
    $('.js-cart-empty').removeClass('hide');
  }
}
</script>

<section class="shop">
  <div class="shop__header">
    <h1 class="shop__title">Название магазина</h1>
    <p class="shop__text">
      <a class="button js-toggle-cart" href="#" title="Корзинка">
        View cart
      </a>
    </p>
  </div>
  <div class="shop__products">
    <div class="products">
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 1</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 2</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 3</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 4</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 5</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 6</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 7</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 8</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 9</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 10</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 11</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
      <div class="products__item">

        <article class="product">
          <h1 class="product__title">Название 12</h1>
          <p class="product__text">
            <a class="button js-add-product" href="#" title="Add to cart">
              Add to cart
            </a>
          </p>
        </article>

      </div>
    </div>
  </div>
</section>

<aside class="cart js-cart">
  <div class="cart__header">
    <h1 class="cart__title">Shopping cart</h1>
    <p class="cart__text">
      <a class="button button--light js-toggle-cart" href="#" title="Close cart">
        Close cart
      </a>
    </p>
  </div>
  <div class="cart__products js-cart-products">
    <p class="cart__empty js-cart-empty">
      Add a product to your cart
    </p>
    <div class="cart__product js-cart-product-template">
      <article class="js-cart-product">
        <h1>Product title</h1>
        <p>
          <a class="js-remove-product" href="#" title="Delete product">
            Delete product
          </a>
        </p>
      </article>
    </div>
  </div>
  <div class="cart__footer">
    <p class="cart__text">
      <a class="button" href="https://sm411tes.rusff.me/viewtopic.php?id=21&p=5#p918" title="Buy products">
        Buy products
      </a>
    </p>
  </div>
</aside>

<div class="lightbox js-lightbox js-toggle-cart"></div>
[/html]

0


Вы здесь » concoction » ХТМЛ и журнал » штучки


Рейтинг форумов | Создать форум бесплатно