/*:root {
    color-scheme: light dark;
}

body {
    max-width: 50em;
    line-height: 1.75;
    margin-left: auto;
	margin-right: auto;
}
 */

/* =========================================================
   GLOBAL
========================================================= */

body{
  margin:0;
  min-height:100vh;

  background:#f0f1f2;

  display:grid;
  place-items:center;

  font-family:"Inter",sans-serif;
}


/* =========================================================
   COVER
========================================================= */

.cover{

  width:min(920px,90%);
  position:relative;
  overflow:hidden;

  border-radius:18px;

  padding:70px 50px;

  /* STATIC GREEN BACKGROUND */
  background:#0B3D2E;
}


/* =========================================================
   BASE CIRCLE STYLE
========================================================= */

.circle{
  position:absolute;
  border-radius:50%;

  background:rgba(126,214,171,.14);

  /* MUCH slower + softer */
  transition:
    transform 2.4s cubic-bezier(.19,1,.22,1),
    opacity 1.2s ease;

  will-change: transform;
}

/* =========================================================
   INITIAL POSITIONS
========================================================= */

.c1{
  width:340px;
  height:340px;
  top:-120px;
  right:-120px;
  transform: translate(0,0);
}

.c2{
  width:220px;
  height:220px;
  bottom:-80px;
  left:60px;
  transform: translate(0,0);
}

/* =========================================================
   EXTRA CIRCLES (hidden initially)
========================================================= */

.extra{
  opacity:0;
  transform: scale(0.2);
}

/* =========================================================
   FINAL STATE (PERMANENT POSITIONS)
========================================================= */

.cover.animate .c1{
  transform:
    translate(-120px, 90px)
    scale(1.15);
}

.cover.animate .c2{
  transform:
    translate(140px, -70px)
    scale(0.95);
}

/* EXTRA CIRCLES appear and STAY */
.cover.animate .extra{
  opacity:1;
  transform: scale(1);
}

/* FINAL STATIC POSITIONS */
.cover.animate .c3{
  width:140px;
  height:140px;

  top:25%;
  left:12%;

  transform: translate(60px, -40px);
}

.cover.animate .c4{
  width:90px;
  height:90px;

  bottom:12%;
  right:18%;

  transform: translate(-80px, 50px);
}

.cover.animate .c5{
  width:120px;
  height:120px;

  top:65%;
  right:12%;

  transform: translate(-40px, -30px);
}

/* =========================================================
   CONTENT
========================================================= */

.cover-content{
  position:relative;
  z-index:2;
}


/* =========================================================
   TAG
========================================================= */

.cover-tag{

  display:inline-block;

  margin-bottom:24px;

  padding:5px 12px;

  border-radius:20px;

  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;

  background:#2D7A5A;
  color:#A8E6CF;
}


/* =========================================================
   TITLE
========================================================= */

.cover h1{

  margin:0 0 14px;

  font-family:"Fraunces",serif;

  font-size:54px;

  line-height:1.08;

  color:#ffffff;
}


/* EMPHASIS */
.cover h1 em{

  font-style:italic;

  color:#7ED6AB;
}


/* =========================================================
   SUBTITLE
========================================================= */

.cover-sub{

  margin-bottom:30px;

  font-size:15px;

  color:rgba(255,255,255,.72);
}


/* =========================================================
   SEARCH BAR
========================================================= */

.search-bar{

  display:flex;
  gap:14px;
  flex-wrap:wrap;
}


/* INPUT */
.search-bar input{

  flex:1;
  min-width:240px;

  border:none;
  outline:none;

  border-radius:14px;

  padding:17px 18px;

  font-size:15px;

  color:#fff;

  background:rgba(255,255,255,.12);

  backdrop-filter:blur(10px);
}


/* PLACEHOLDER */
.search-bar input::placeholder{
  color:rgba(255,255,255,.55);
}


/* BUTTON */
.search-bar button{

  border:none;

  padding:0 24px;

  border-radius:14px;

  cursor:pointer;

  font-weight:600;

  background:#ffffff;
  color:#0B3D2E;

  transition:.25s ease;
}


/* BUTTON HOVER */
.search-bar button:hover{

  transform:translateY(-2px);

  background:#dff5ea;
}