p {
	font-size: 1.1rem;
	line-height: 1.5;
	color: #000;
}

.justify-content-center {
	justify-content: center;
}

.floated {
	&.left {
		float: left !important;
	}
	&.right {
		float: right !important;
	}
}

.aligned {
	&.right {
		text-align: right !important;
	}
}

.ui.fluid.card {
	width: 100% !important;
}

.ui.star.rating .active.icon {
	color: #ffbc00 !important;
	text-shadow: none !important;
}

.ui.pagination.menu {
	border: none;
}

.ui.button {
	&.yellow
	{
		background: #fff822 !important;
	  color: #000 !important;

	  &:hover {
	    background: #ffba20 !important;
	    color: #000 !important;
		}
	}

	&.white {
		background: #fff !important;
	  color: #000 !important;

	  &:hover {
	    background: #fff !important;
	    color: #000 !important;
		}
	}
}

h2 {
	font-size: 1.5rem;
}


a {
    opacity: 1 !important;
    color: #000;
    cursor: pointer;
}

.bold {
	font-weight: bold;
}

.overflow-hidden {
	overflow: hidden;
}

.action {
	img {
    width: 25px;
		pointer-events: none;
		cursor: pointer;

		&.heart {
			&:not(.outline) {
				display: none !important;
			}
		}
	}

	&.like {
		padding: 0;

		i.heart {
	    width: 100%;
	    height: 100%;
	    display: flex;
	    justify-content: center;
	    align-items: center;

			&.active {
	    	color: #ff4646;
			}
		}

		&.active {
			.heart {
				&.outline {
					display: none !important;
				}

				&:not(.outline) {
					display: block !important;
				}
			}
		}
	}

	&:not(.like) {
	  background: #f8f9fd;
	  padding: 0 !important;
	  height: 40px !important;
	  border-radius: 100px;
	  border: 1px solid #eaeaea;
	}
}

.hide-scroll {
	overflow: hidden;
	
	&.v-scroll {
		.wrapper {
			overflow-y: auto;
			overflow-x: hidden;
			visibility: hidden;
			height: 100% !important;
		}	
	}
	
	&.h-scroll {
		.wrapper {
			overflow-y: hidden;
			overflow-x: auto;
			visibility: hidden;
			width: 100% !important;
		}
	}

	&.vh-scoll {
		.wrapper{
			height: 100%;
			width: 100%;
			overflow-y: hidden;
			overflow-x: auto;
			visibility: hidden;
		}
	}
}

video, iframe.video {
	width: 100%;
	height: auto;
	object-fit: fill;
	display: flex;
}

iframe.video {
	min-height: 195px;
}

.player {
	display: flex;
	padding: 1rem 1rem .5rem;
	align-items: center;

  .actions {
  	display: flex;
  }

  .link {
  	font-size: 1.6rem !important;
    line-height: 1;

  	&.pause, &.play {
  		display: none;

  		&.visible {
  			display: block;
  			color: #000;
  		}
  	}
  }

  > .timeline {
  	padding: 0 .75rem;
  	flex: 1;
  }

  > .duration {
		font-size: 1rem !important;
    font-weight: 500;
    margin-right: 0;
    min-width: 45px;
    text-align: right;
  }
}

input {
	&.error {
	  background: #FFF6F6 !important;
	  border-color: #E0B4B4 !important;
	  color: #9F3A38 !important;
	}
}

html, body
{
    height: auto !important;
    background: #f9f9f9;
}

.main.container {
    width: 100% !important;
    background: #fff;
    margin: 0 auto !important;
}

.center.aligned {
	text-align: center;
}

.left.aligned {
	text-align: left;
}

.right.aligned {
	text-align: right;
}


.buttons {
	&.spaced {
		display: flex;

		.button {
			flex: 1;
			
			&.basic {
				border: 1px solid #dddddd;
				border-radius: .25rem;
			}

			&:not(:last-child) {
				margin-right: .5rem;
			}
		}
	}
}

.display-flex {
	display: -webkit-flex;
  display: -ms-flex;
  display: flex;
}

.custom.divider {
    border-bottom: 5px solid #2185d0 !important;
    margin: 1rem -1rem;
}

.image.rating {
  display: flex;
  align-items: center;
  justify-content: center;
  
  svg {
  	flex: 1;
    max-width: 18px;
    margin: 0 .2rem;
    width: 100%;
  }
}

.d-none {
	display: none !important;
}

.d-block {
	display: block !important;
}

.d-table {
	display: table !important;
}

.d-flex {
	display: flex !important;
}

.d-inline-block {
	display: inline-block;
}

[v-cloak] { 
	display:none; 
}

[vhidden] { 
	visibility: hidden !important;
}

.d-flex {
	display: flex;
}

.borderless {
	border: none !important;
}

.shadowless {
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
}


.radiusless {
	border-radius: 0 !important;
}

.rounded-corner {
	border-radius: 1rem !important;
}

.circular-corner {
	border-radius: 500px !important;
}

.w-25 {
	width: 25% !important;
}

.w-50 {
	width: 50% !important;
}

.w-75 {
	width: 75% !important;
}

.w-100 {
	width: 100% !important;
}

.capitalize {
	text-transform: capitalize;
}

img {
	max-width: 100%;
}

.divider.fluid {
	margin-left: -1rem !important;
	margin-right: -1rem !important;
}

.ui.celled.grid>.column:not(.row), .ui.celled.grid>.row>.column, .ui.celled.grid>.row {
	@extend .shadowless;
}

.ui.card>:last-child, .ui.cards>.card>:last-child {
	border-radius: 0;
}

.ui.secondary.menu .active.item {
	background: transparent;
	font-weight: 600;
}


span.tag {
	color: #fff;
    display: block;

	&.red {
		background: #ff3e4d!important;
		color: #fff!important;
	}
	&.yellow {
		background: linear-gradient(to right, #ffd366, #ffc73e, #ffb500) !important;
		background: #ffc12a;
		color: #000;
	}
	&.blue {
		background: #00a5ef !important;
		color: #fff !important;
	}
	&.teal {
		background: #009688 !important;
		color: #fff !important;
	}
	&.green {
		background: #00ad50 !important;
		color: #fff !important;
	}
}


.button {
	&.silver {
		background: silver;
    	color: #fff;

    	&:hover, &:active, &:focus {
    		color: #fff;
    		font-weight: bold;
    	}
	}

	&.tumblr {
		background: #44546A;
		color: #fff;

		&:hover {
			background: #394659;
			color: #fff;
		}
	}

	&.white {
		background: #fff !important;
		color: #000 !important;
		font-weight: normal !important;

		&.basic {
			border: 1px solid silver !important;
		}

		&:hover {
			font-weight: bold !important;
		}
	}
}



#body {
  margin: auto;
  background: white;
  
	.card {
		@extend .shadowless;
		position: relative !important;
		
		&.product {
			border-radius: 1rem !important;
			overflow: hidden;
	    box-shadow: 0 6px 20.1px 4.9px rgba(176,191,238,.12)!important;
	    z-index: 9;
	    
			.title a {
				display: block;
				font-size: 1.1rem;
			}

			&:hover {
			  .cover img {
			    filter: brightness(0.9);
			  }
			}

			.rating {
				font-size: 1.2rem;
			}

			.content {
				@extend .borderless;
				padding: .5rem 1rem;

				&.p-1-hf {
				  border-top: 1px solid #f1f1f1 !important;
				}

				&.cover {
					position: relative;
			    text-align: center;
			    padding: 1rem 0 !important;
			    background: #fff;
			    display: block;
			    border-bottom: 0.2rem dotted #e3e3e3 !important;

			    a {
			    	display: block;
			    }

			    img {
					  max-width: calc(100% - 2rem);
					  border-radius: 1rem;
					  margin: 0 auto;
					}

					&.preview {
						padding: 0 !important;
						border-bottom: none !important;
					}
				}

				&.bottom {
					height: 55px;
			    padding: 0 !important;
			    display: flex;
			    align-items: center;
			    border-top: 1px solid #f1f1f1 !important;

			    > div {
			    	height: 55px;
				    flex: 1;
				    padding: 0.85rem;
				    align-items: center;
				    display: flex;
				    min-width: 40px;

				    &:not(.price-wrapper) {
						  flex: none;
						  margin-left: auto;
						  justify-content: center;
						}

						&.action {
							cursor: pointer;
						}

						&.out-of-stock {
						  font-weight: 600;
						  width: 100%;
						  background: #eeeef6;
						}
					}

					.price-wrapper {
						&.has-promo {
							.price {
							  text-decoration: line-through;
							}

							.promo-price {
							  font-weight: 700;
							  color: #12973b;
							  line-height: 1;
							}
						}
					}
				}
			}

			.title {
				color: #292929;
				font-weight: 600;
				padding: 1rem !important;
				text-align: center;
				height: 100%;
				align-items: center;
		    justify-content: center;
		    display: flex;
				background: #ffffff !important;
				
				> div {
					text-align: center;
					margin: auto;
				}

		    a {
		    	max-width: 250px;
		    	margin: auto;
		    }
			}

			.price, .category {
			    font-size: 1rem;
			    padding: .5rem 0.75rem;
			    font-weight: bold;
			    color: #000;
			    display: block;
			    float: left;
			    border-radius: .25rem;
			    cursor: default;
			    position: relative;
			    line-height: 1;
			    min-width: 73px;
		    	text-align: center;
			}

			.price {
				padding: 0;
				text-align: left;
			}

			.category {
				font-size: 1.3rem;
				color: #000;
		    text-align: center;
		    display: inline-block;
		    margin: 1rem auto 0;
		    font-weight: 500;
		    float: none;
		    padding: .65rem 1rem .4rem;
		    border-radius: .8rem;
		    background: #fff14a;
			}

			.price.free {	
				&.paid {
					&::after, &::before {
					  position: absolute;
					  content: '';
					  left: 50%;
					  bottom: 0;
					  height: 100%;
					  width: 2px;
					  background: rgba(255, 255, 255, 0.45);
					  transform: rotate(45deg);
					  border-radius: 10px;
					}
				
					&::after {
						transform: rotate(-45deg);
					}	
				}
			}
		}

		&.audio {
			.content {
				&.top {
			    display: flex;
			    justify-content: center;
			    align-items: center;
			    background: #fff;
			    padding: 1.2rem;
			    border-bottom: 0.2rem dotted #e3e3e3 !important;

				  .cover {
				  	img {
				  		border-radius: 1rem;
				  		width: 140px;
				  		height: 140px;
				  	}

				  	a {
						  display: block;
						}
					}

					.info {
				    flex: 1;
				    padding: 0 1rem;

		    		span {
					    margin: .5rem 0;
					    display: block;
					    color: #000;
					    font-size: 1rem;
					    font-weight: 500;

					    &.author {
					    	font-weight: 600;
					    } 
						}
		    	}
				}
			}

			.player {
			  background: #fff;
			  margin-top: 1rem;
			  margin-bottom: -1rem;
			}
	  }

	  &.ebook {
	  	.content {
	  		&.top {
			    display: flex;
			    justify-content: center;
			    align-items: center;
			    background: #fff;
			    padding: 1.2rem;
			    border-bottom: 0.2rem dotted #e3e3e3 !important;

				  .cover {
				  	width: 40%;

				  	img {
				  		border-radius: 1rem;
				  	}

				  	a {
						  display: block;
						}
					}

					.info {
				    flex: 1;
				    padding: 0 1rem;

		    		span {
					    margin: .5rem 0;
					    display: block;
					    color: #000;
					    font-size: 1rem;
					    font-weight: 500;

					    &.author {
					    	font-weight: 600;
					    } 
						}
		    	}
				}
	  	}
	  }

	  &.video, &.type--, &.graphic {
	  	.content.cover.preview {
					padding: 0 !important;
					border-bottom: none !important;
			}
	  }
	  
	  &.graphic {
	  	.content.cover {
	  		.image {
		  		width: calc(100% - 2rem);
			    height: 180px;
			    margin: auto;
			    border-radius: 1rem;
			    background-position: center top;
			    background-size: contain;
			    background-repeat: round;
		  	}
	  	}
	  }
	}

	.cards.masonry {
		display: grid;
	  grid-gap: 10px 21px;
	  grid-template-columns: repeat(auto-fill, minmax(auto, 1fr));
	  grid-auto-rows: 20px;

	  .card {
			width: 100%;
	  }

	  &.six {
	  	grid-template-columns: repeat(6, minmax(auto, 1fr));
	  }

	  &.five {
	  	grid-template-columns: repeat(5, minmax(auto, 1fr));
	  }

	  &.four {
	  	grid-template-columns: repeat(4, minmax(auto, 1fr));
	  }

	  &.three {
	  	grid-template-columns: repeat(3, minmax(auto, 1fr));
	  }

	  &.two {
	  	grid-template-columns: repeat(2, minmax(auto, 1fr));
	  }

	  &.one {
	  	grid-template-columns: repeat(1, minmax(auto, 1fr));
	  }
	}
}



.label {
	&.white {
	    background: #fff !important;
	    color: #909090 !important;
	}

	&.silver {
	    background: silver !important;
	    color: #fff !important;
	}
}

.right.floated {
	float: right;
}

.dimmer.modals {
	overflow-y: auto;
}

#vertical-divider {
    position: relative;
    height: 100%;
		padding: 0;

    &:before {
	    content: '';
	    position: absolute;
	    width: 1px;
	    height: 100%;
	    background: #ececec;
	    z-index: 1;
	}
}


#top-menu {
  position: absolute;
  z-index: 99;
  border: none;
  height: 70px;
  max-width: 100vw;
  width: 100%;
  left: 0;
  margin: 0 auto;
	border-radius: 0;
	background: #ea4444;

	&.home {
		background: transparent;
	}

  .user {
  	&:hover {
  		color: #116CA2;
  	}

  	> .left.menu {
	    min-width: 200px;
	    background: linear-gradient(45deg,rgba(198,27,27,.93),#fc7f5a);
	    border-radius: 1rem;
			
			> .item {
		    color: #fff !important;
		    font-weight: normal !important;
		    position: relative;
		    padding-top: 1rem !important;
		    padding-bottom: 1rem !important;
				margin: 0 !important;

		    &:hover {
		    	background: #343c42 !important;
		    }

		    &:first-child {
					background: white !important;
			    color: #000 !important;
			    border-radius: 1rem 1rem 0 0 !important;

			    &:hover {
			    	background: white !important;
  					font-weight: bold !important;
			    }
		    }

		    &:last-child {
					background: #fff !important;
					color: #000 !important;
					border-radius: 0 0 1rem 1rem !important;

					&:hover {
			    	background: white !important;
  					font-weight: bold !important;
			    }
		    }
			}
  		
  		> div.item, a.item {
  			@extend .radiusless;
  		}

			.left.menu {
				top: -42px !important;
		    border-radius: .5rem 0 0 .5rem !important;
		    background: #fff;
		    box-shadow: -3px 0 5px 1px #d1d1d1 !important;
		    min-width: 200px;

		    .item {
				  position: relative;
				  padding-top: 1rem !important;
				  padding-bottom: 1rem !important;
				  color: #000 !important;

				  &:hover {
			    	background: #f7f7f7  !important;

			    	&:after {
			    		visibility: hidden;
			    	}
			    }

			    &:not(:last-child):after {
					  content: '';
					  position: absolute;
					  bottom: 0;
					  left: 5%;
					  height: 1px;
					  width: 90%;
					  background: #e0e0e0 !important;

					  &:hover {
				    	background: #ececec !important;
				    }
					}
				}
			}
  	}
  }
	
	.dropdown.cart 
  {
		position: relative;

		.items-wrapper {
			max-height: 300px;
	    overflow-y: auto;
	    overflow-x: hidden;
		}
		
    .menu 
    {
    	border-radius: 1rem;
    	margin-top: -1rem !important;
			min-width: 300px;
			max-width: 300px;
      position: absolute;
      right: 0;
      top: 85px;
      margin-top: 0;
      visibility: hidden;
		}

    .items .item 
    {
			display: flex;
			@extend .radiusless;
			width: 300px;
			cursor: text;
      margin: 0 !important;

			&.checkout {
				justify-content: center;
		    background: royalblue;
		    cursor: pointer;
		    color: #fff;
		    border-radius: 0 0 1rem 1rem !important;
		    width: 100%;
		    margin: 0 !important;
		    font-weight: 600 !important;
		    padding: 1rem;

        &:hover, &:active, &:focus 
        {
					font-weight: bold !important;
					background: #3054c1 !important;
					color: #fff;
				}
			}
			
      &:not(:last-child) 
      {
			  border-bottom: 1px solid #ebebeb;
			}

      &:hover 
      {
			  font-weight: normal !important;
			}

      .content 
      {
				text-overflow: ellipsis;
			  white-space: nowrap;
			  overflow: hidden;
			  font-size: 1.1rem;
				flex: 1;
				display: flex;
				flex-direction: column;
			}
			
      strong 
      {
				cursor: pointer;
				text-align: left;
				font-weight: 600;

        &:hover 
        {
				  color: #346894;
				}
			}

			.subcontent {
			  display: flex;
			  justify-content: center;
			  align-items: center;
			  flex-direction: row;

        input 
        {
					width: 100%;
				  border: 1px solid #dadada;
				  box-shadow: none;
				  padding: .35rem;
				  @extend .rounded-corner;
				}

        div 
        {
				  flex: 1;
				  text-align: center;

          &.price 
          {
						flex: 2;
					  text-align: left;
						color: slategrey;
				  }

          &.remove 
          {
						text-align: right;
						cursor: pointer;
						
            &[disabled="disabled"] 
            {
							cursor: default;
						}

            &:not([disabled="disabled"]):hover i 
            {
						  font-weight: bold !important;
						}
				  }
				}
			}

      .image 
      {
				background-position: bottom center;
		    background-size: cover;
		    min-width: 50px;
		    max-width: 50px;
		    width: 100%;
		    height: 50px;
		    border-radius: 1rem;
			}
		}

    span 
    {
			margin-left: .25rem;
		}
	}

	.dropdown.notifications
  {
    .menu
    {
    	border-radius: 1rem;
    	margin-top: -1rem !important;
      width: 300px;
      position: absolute;
      right: 0;
      top: 85px;
      margin-top: 0;
      visibility: hidden;

      .items-wrapper {
				max-height: 300px;
		    overflow-y: auto;
		    overflow-x: hidden;
			}

      .item 
      {
        padding: .5rem;
        text-align: left;
        border-radius: 0;
        margin: 0 !important;
        
        * {
        	font-size: .9rem;
        }

        &:not(:last-child) 
        {
          border-bottom: 1px solid whitesmoke;
        }

        .image 
        {
          width: 50px !important;
					min-width: 50px;
          height: 50px !important;
          background-position: bottom center;
          background-size: cover;
          border-radius: 100px;
        }

        time
        {
          float: right;
        }

        &.all
        {
					padding: 1rem;
			    text-align: center !important;
			    justify-content: center;
			    background: #6c176c;
			    border-radius: 0 0 1rem 1rem;
			    font-weight: bold;
			    color: #fff;

          &:hover
          {
            background: #3054c1 !important;
            font-weight: 500;
          }
        }

        &.message {
        	&:hover {
        		font-weight: 400;
        	}
        }
      }

      div.item {
        cursor: initial;

        &:hover {
        	font-weight: 400;
        }
      }
    }
  }

  .dropdown.categories {
  	.menu {
  		border-radius: 1rem;
  	}
  }

  > .header {
    padding: 0 0 0 1rem !important;
    margin: 0;
    width: 180px;

    img {
    	width: 100%;
    }
  }

	.item {
		position: relative;

		&:hover, &:active, &:focus {
			background: transparent !important;
			font-weight: 600 !important;
		}
	}

	>.right.menu > .item {
		cursor: pointer;
    display: flex;
    padding: 0 .5rem;
    text-align: center;
    flex-direction: column;
    justify-content: center;
    margin: 0 .6rem;

    span {
		  margin-top: .5rem;
		}

		i {
		  font-size: 1.3rem;
		}

		&.search-icon {
			display: none;
		}
	}
	
	> .item.search {
		flex: 1;
		max-width: 400px;
		min-width: 0;

		input {
			border-radius: 100px;
			border: none;
			font-size: 1.3rem;
		}
	}

	> .item, .right.menu > .item {
    height: 70px;
    font-size: 1.1rem;
    font-weight: 600 !important;
    color: #fff;
	}

	.ui.dropdown {
		.header {
			font-size: 1rem;
		    width: 100%;
		    display: block;
		    text-align: center;
		    margin: 0;
		    padding: 1rem;
		    position: relative;
		    color: #fff;
		}

		.left.menu {
			//@extend .shadowless;
			@extend .borderless;
		}
	}
}

#mobile-search-bar {
	display: none !important;
  position: fixed;
  top: 70px;
  left: 0;
  z-index: 99;
  background: #fff;
  padding: .75rem;
  height: 70px;
  width: 100%;
}

#mobile-menu {
  position: fixed;
  top: 1rem;
  left: 1rem;
  z-index: 99;
  background: #ffffff;
  border-radius: 1rem;
  margin: 0;
  box-shadow: none;
  border: 0;
  width: 300px;
  height: calc(100vh - 2rem);
  visibility: hidden;
  padding: 0.5rem;
  overflow-y: auto;

	.wrapper {
		display: flex !important;
		flex-direction: column;
    height: 100%;
	}

	.item {
		font-size: 1.15rem;
    padding: .8rem 1rem;
    text-transform: capitalize;
    margin: 0 1rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
		font-weight: 500;
    color: #595959;

		i {
			float: left !important;
			margin-left: 0;
			margin-right: 1rem;
		}

    &:not(:last-child) {
		  border-bottom: 1px dashed #e9e9e9;
		}

		&:hover {
			background: transparent;
			font-weight: bold;
		}

		&:before {
	    display: none;
		}
	}

	.body, .sub-body {
		display: flex !important;
		justify-content: center;
		flex-direction: column;
		flex: 1;
	}

	.footer {
		margin: 8px -0.5rem -0.5rem;
		padding: 1rem;
		background: linear-gradient(-14deg, #002542, #004d8a);
		border-radius: 0 0 .25rem .25rem;
		
		i {
	    font-size: 1.1rem;
	    color: #003a67;
		}

		p {
			margin-top: 1rem;
			text-align: center;
			font-size: .9rem;
		}

		* {
		  color: #fff;
		}

		.button {
		  padding: .5rem;
	    border-radius: .5rem;
	    background: #fff !important;

		  &:hover {
			  background: #002c4e !important;
	    	border-color: #002948;

	    	i {
	    		color: #fff;
	    	}
			}
		}
	}
}

#mobile-menu-2 {
  position: fixed;
  bottom: 0;
  background: #fff;
  z-index: 20;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin: 0;
  display: none;
	height: 70px;

	&:before {
	  content: '';
	  position: absolute;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: .2rem;
	  background: linear-gradient(to right, transparent, #b5b5b5, transparent);
	}

  > .item {
		color: #000 !important;
		font-weight: 600;
		padding: .75rem .5rem;
		font-size: .9rem;
		display: flex;
		flex-direction: column;
		text-align: center;
		margin: auto 0;
		flex: 1;

		span {
		  position: absolute;
		  top: auto;
		  right: auto;
		}

		&.ui.dropdown {
			.menu {
				border-radius: 1rem !important;
    		margin-bottom: .25rem;

				.item {
				  color: #000 !important;
				  font-weight: 500 !important;
				  font-size: 1rem !important;
				  display: block;
				}
			}
		}

		&:hover, &:active, &:visited, &:focus, &.active {
    	background: whitesmoke;
		}

		.icon {
    	margin-bottom: .25rem;
		}

		svg {
		  width: 32px;
		  height: 32px;

		  * {
		  	stroke: #565656 !important;
		  }
		}
  }
}

#mobile-top-search {
	display: none;
	z-index: 3;
	width: 100%;
	padding: .25rem 1rem;
	font-size: 1.2rem;

	input {
    border-radius: 1rem;
    border: none;
	}
}

#blur {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(36, 93, 153, 0.43);
  z-index: 8;
}

#items-menu {
	position: fixed;
	top: 70px;
	left: 0;
  background: #fff;
  width: 100%;
  z-index: 9;
  display: none;

	&:before, &:after {
		content: '';
		position: absolute;
		bottom: 20px;
    z-index: -1;
    height: 50%;
    width: 50%;
	}

	&:before {
    left: 0;
    box-shadow: 3px 11px 9px 3px grey;
    transform: rotate(-2deg);
	}
	
	&:after {
    right: 0;
    box-shadow: -3px 11px 9px 3px grey;
    transform: rotate(2deg);
	}

	.categories {
    display: flex;
    white-space: nowrap;
    width: 100vw;
    overflow: hidden;
    height: 47px;
		text-align: left;
		background: #fff;

		.wrapper >.item {
			display: -webkit-inline-flex;
			display: inline-flex;
			margin: 0;
			padding: .5rem;
			color: #202020;
			position: relative;
			cursor: pointer;
	    font-size: 1rem;
			
			&:last-child {
				margin-right: 1rem;
			}

			&:hover {
				font-weight: bold;
			}

			&:not(:first-child) {
			    margin-left: -.25rem;
			}

			&:not(:last-child):after {
			  content: '';
				width: 1px;
				right: 0;
				height: 20px;
				top: 13.5px;
				left: initial;
				position: absolute;
				background: #dfdfdf;
			}

			> span {
				display: block;
				padding: .5rem;
				border: 1px solid #e8e8e8;
				border-radius: .25rem;
			}

			.items {
				display: none;
				position: absolute;
		    top: 100%;
		    background: #fff;
		    z-index: 99;
		    min-width: 200px;
		    left: 0;
		    max-height: calc(100vh - 113px);
		    overflow-y: auto;

		    .item {
					padding: .9rem;
					margin: 0;
					display: block;
					position: relative;

					&:not(:last-child):after {
				    content: '';
				    width: 100%;
				    bottom: 0;
				    height: 1px;
				    background: #f7f7f7;
				    z-index: 9;
				    position: absolute;
				    left: 0;
					}
		    }
			}

			&.active {
				.items {
					display: block;
				}
			}
    }
  }
}


.items-menu.popup {
	background: #fff;
	position: fixed;
	z-index: 9;
	max-width: 200px;
	border-radius: 0 0 .25rem .25rem;
  max-height: 260px;
  height: 100%;
  top: 107px !important;

	 a {
	  padding: .5rem;
	  display: block;
	  color: #000;
	  position: relative;
		
		span {
			display: block;
			padding: 0.5rem;
			border: 1px solid #e8e8e8;
			border-radius: 0.25rem;
		}

		&:last-child {
	    border-radius: 0 0 .25rem .25rem;
		}

		&:not(:last-child):after {
			content: '';
			position: absolute;
			bottom: 0;
			height: 1px;
			width: 90%;
			background: #e8e8e8;
			left: 5%;
		}
		
		&.active {
			background: white;
			color: #000;
		  font-weight: bold;
		}
	  
	  &:hover {
		  font-weight: bold;

		  &:after {
			  visibility: hidden;
			}
		}
	}
}


#top-search {
	border: none;
	position: relative;
  background-size: cover;
	background-position: center bottom;
  z-index: 2;
  overflow: hidden;
  padding-top: 100px;

  input {
  	border-radius: 100px;
    border: none;
  }
	
	.categories {
		max-width: 1280px;
		margin: auto;

		.label {
			color: #252525;
	    font-size: 1.2rem;
	    font-weight: 600;
	    border-radius: 100px;
	    border-bottom: .15rem solid #999999;

			&:hover {
				color: royalblue;
			}

			&:last-child {
				margin-right: 0;
			}
		}
	}

	form {
		max-width: 500px;
		margin: auto;
		margin-top: 1rem;
	}

  h1, h3 {
		padding: 1rem;
    background: rgb(0 0 0 / 16%);
    color: #fff;
    display: inline-block;
    margin: 0 auto;
    border-radius: 1rem;
    transform: rotate(-3deg);
	}

  h1 {
	    margin-bottom: 0;
	    max-width: 700px;
	}

	h3 {
		margin: 1rem auto;
		overflow: hidden;
		max-width: 400px;
    width: 100%;
		white-space: nowrap;
	}

	.grid {
		height: 100%;
	}
}

#single-page {
	background: #fff;
	max-width: 1100px;
	margin: 80px auto 0;
  padding: 0 1rem;

  .column {
  	background: #fff;
    padding: 1rem 0;
    min-height: 80vh;
  }

	.title-wrapper {
    background: ghostwhite;
    padding: 1rem;
    margin: 0 1rem;
    border-radius: 0.5rem;
	}
}

.section-title {
	text-align: center;
}

.home-items {
  background: #fff;
  padding: 3rem 1rem 0;
  width: 100%;

  &:first-child {
  	padding-top: 1rem;
  }

  .wrapper {
    background: transparent;
    border-radius: .5rem;
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;

    &:not(:first-child) {
    	margin-top: 4rem;
		}

		&:last-child {
			margin-bottom: 1rem;
		}

		&.posts {
	    width: initial;
	    max-width: initial;
	    padding: 1rem 1rem 2rem;
	    background: ghostwhite;
	    margin-left: -1rem;
	    margin-right: -1rem;
	    margin-bottom: -1rem;

	    .card {
				border-radius: 1rem !important;
				overflow: hidden;
				box-shadow: 0 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;
	    }

			time {
		    position: absolute;
		    right: 0.5rem;
		    top: 0.5rem;
		    font-size: 0.8rem;
		    padding: 0.5rem .75rem;
		    background: #ffffff;
		    display: block;
		    color: #000000;
		    line-height: 1;
		    text-align: right;
		    border-radius: 100px !important;
		    font-weight: 600;
			}

			.title {
				padding: 1rem !important;
				
				a {
					margin: auto;
			    font-weight: 600;
			    font-size: 1.1rem;
				}
			}

			.description {
				padding: .5rem 1rem 1rem !important;
				font-size: .9rem;
				color: grey;
			}

			.content {
			  border: none;
			  text-align: center;
			  display: flex;
			  justify-content: center;
			}
			
			.tags {
			  display: flex;
			  padding-top: 0;

			  a {
			    font-size: 0.9rem;
			    color: #000;
			    padding: 0.25rem .75rem;
			    border-radius: 100px;
			    font-weight: 500;
			    display: flex;
			    align-items: center;
			    justify-content: center;
			    background: whitesmoke;
			    text-transform: capitalize;
			  
					&:not(:last-child) {
					  margin-right: .5rem;
					}
			  }
			}
		} 
	}
}

.selection-title {
	.menu {
		@extend .radiusless;
		@extend .shadowless;
		@extend .borderless;
		background: transparent;

		a:before, a:after {
			display: none;
		}

		a {
			background: #e74545 !important;
			font-size: 1.6rem;
			position: relative;
			color: #fff !important;
			padding: 1rem 1rem .5rem !important;
			border-radius: 1rem 1rem 1rem .5rem!important;
			font-weight: 500 !important;

			&:not(:last-child) {
				margin-right: .5rem;
			}
			
			&:hover, &.active {
				color: #154f98;

				span {
				    position: absolute;
				    bottom: 0;
				    left: 0;
				    height: 3px;
				    width: 100%;
				    background: linear-gradient(to right, #ff4335, #ffcc31, #ffffff);
				    border-radius: 100%;
				}
			}

			&.trending {
			  background: #2b4798 !important;
			}

			&.newest {
			  background: #ffef33 !important;
			  color: #000 !important;
			}

			&.blog {
			  background: #fff !important;
			  color: #000 !important;
			  font-size: 1.8rem;
			  padding: 1rem !important;
			}
		}
	}
}

#notifications 
{
  margin: 0 auto !important;
  width: 100%;
  padding: 1rem;
	background: ghostwhite;
	margin-top: -1rem !important;
	
  .column 
  {
    background: white;
    border-radius: .5rem !important;

    &.items
    {
      min-height: 500px;

      .items.unstackable
      {
        background: ghostwhite;
        border-radius: .25rem;

        .item
        {
          padding: 1rem;
          text-align: left;
          border-radius: 0;
          margin: 0 !important;
          align-items: flex-end;
          min-height: 70px;
          background: #fafafa;
          
          > * {
            align-self: center;
          }

          &:not(:last-child) 
          {
            border-bottom: 2px solid white;
          }

          .image 
          {
            width: 50px !important;
            height: 50px !important;
          }

          time
          {
            color: #6f6f6f;
          }

          &.unread
          {
            background: #ffffff;
            font-weight: 600;
          }

          &:first-child {
            border-radius: .5rem .5rem 0 0;
          }

          &:last-child {
            border-radius: 0 0 .5rem 0.5rem !important;
          }
        }
      }
    }
  }
}

#footer {
	background: #2d2d2d;
	width: 100%;
	padding-top: 2rem !important;
	padding-bottom: 1rem !important;
	z-index: 0;
	margin-top: 3rem;

  li {
  	list-style-type: none !important;
  	line-height: 1.9;
  }

  .row.first {
		max-width: 1400px;
		margin: auto !important;
		width: calc(100% - 1rem) !important;
		text-align: center;
		flex-wrap: wrap;

		.column {
			flex: 1;
			min-width: 300px;
		}

		.newsletter i {
			color: #000 !important;
		}

		h4 {
	    color: #fff !important;
	    text-align: center;
	    font-size: 1.4rem;
	    font-weight: 600;
		}

		i {
			font-weight: bold;
		}
  	
  	input {
  		color: #000 !important;
  		border-radius: 500px;
  	}
  }

  li a, p {
    color: #fff !important;
    font-size: 1.2rem;
	}

	.row.last {
    padding: .5rem 0;

		* {
			color: #fff !important;
		}

		.menu {
	    justify-content: center;

	    &:first-child {
	    	* {
	    		font-size: 1.1rem;
	    	}
	    }

	    &:last-child {
	    	* {
	    		color: #8f9296 !important
	    	}
	    }
		}

		.dropdown
		{
			.menu {
			  border: none;
			  box-shadow: none;
			  border-radius: 1rem !important;
			  overflow: hidden;

			  .wrapper {
					max-height: 196px;
					overflow: auto;
			  }
			}

			&.languages, &.currencies {
				a {
					color: #000 !important;
				}

				.header {
					font-size: 1rem !important;
			    background: #0d72b9 !important;
			    border-radius: 0;
			    color: #fff !important;
			    margin: 0 auto;
			    padding: 1rem;
				}
			}
		} 

		.item {
			&:hover, &:active, &:focus {
				background: transparent !important;
				font-weight: 600;
			}
		}

		i {
    	font-size: 1.4rem;
    }
	}

	.ui.message {
    border-radius: 100px;
    padding: .75rem !important;
	}
}


#page-title {
	background: #fff;
  border-bottom: 1rem solid ghostwhite;
	border-radius: .25rem .25rem 0 0;

	.header {
		color: #000;
	}

	.item .content {
		-webkit-align-self: center;
		align-self: center;
	}
}

#items {
  padding: 0 1rem;
  background: #fff;
  max-width: 1300px;
  margin: 80px auto 0 !important;
	
	i.tag {
		color: tomato;
	}

	.row {
		background: #fff;

		&:nth-child(1) {
			.sub.header	{
    		line-height: 1.5;
			}
		}
	}

	.column {
		&.left {
			visibility: visible;
			width: 300px;
	    max-width: 300px;
			z-index: 2;

			.categories {
				.title {
			    background: #b157ae;
			    color: #fff;
			    font-weight: 600;
			    text-transform: capitalize;
			    padding: 1rem;
			    margin-bottom: 1rem;
			    text-align: center;
			    border-radius: 2rem 2rem 1rem 1rem;
			    font-size: 1.3rem;
				}

				.header {
				  border-bottom: 1px solid #e5e5e5;
				  text-transform: uppercase;

				  &:hover {
				  	background: #fff;

				  	span {
						  padding: 0.5rem 1rem 0.25rem;
						  display: inline-block;
						  background: #ff4e4e;
						  margin: -0.5rem;
						  border-radius: 100px;
						  color: #fff;
						}
				  }
				}

				.category {
					.children {
						display: none;
					}

					&.active {
						.children {
							display: block;
							position: relative;
							
							.wrapper {
							  max-height: 200px;
							  overflow: auto;
							}

							a {
								&.active {
									background: ghostwhite;
								}

								&:not(.active):hover {
									background: #fff;

									span {
										display: inline-block;
										padding: .5rem;
										margin: -.5rem;
										background: ghostwhite;
									}
								}
							}

							&:after {
							  position: absolute;
							  content: '';
							  bottom: 0;
							  left: 0;
							  width: 100%;
							  height: 1px;
							  background: #e2e2e2;
							}
						}

						.header {
							span {
						    padding: 0.5rem 1rem .25rem;
						    display: inline-block;
						    background: #ff4e4e;
						    margin: -0.5rem;
						    border-radius: 100px;
						    color: #fff;
							}
						}
					}
				}
			}

			.tags {
				overflow: hidden;

				.title {
			    background: royalblue;
			    color: #fff;
			    font-weight: 600;
			    text-transform: capitalize;
			    padding: 1rem;
			    margin-bottom: 1rem;
			    text-align: center;
			    border-radius: 2rem 2rem 1rem 1rem;
			    font-size: 1.3rem;
				}

				label {
					span {
				  	position: relative;
				  	bottom: -2px;
				  }
				}

				.item {
				  padding: .85rem 1rem;

				  &:hover {
					  background: transparent;
					  color: #414040 !important;
					  font-weight: bold;
					}
				}

				.vertical.menu {
					border-radius: 1rem;
					overflow: hidden;
					height: 300px;
					padding-right: 1rem;

					&:hover {
						padding-right: 0;
						overflow: auto;
					}
				}
			}

			.price {
				.title {
					background: grey;
			    color: #fff;
			    font-weight: 600;
			    text-transform: capitalize;
			    padding: 1rem;
			    margin-bottom: 1rem;
			    text-align: center;
			    border-radius: 2rem 2rem 1rem 1rem;
			    font-size: 1.3rem;

					&:before {
						background: #e03997;
					}
				}

				label {
					text-align: center;
				}

				input {
					border-radius: 100px;
				}
			}

			.filter.countries, .filter.cities {
				overflow: visible;

				* {
				  font-size: 1.2rem;
				}
				
				.title {
			    color: #ffffff;
			    background: royalblue;
			    font-weight: 600;
			    text-transform: capitalize;
			    padding: 1rem;
			    margin-bottom: 1rem;
			    text-align: center;
			    border-radius: 2rem 2rem 1rem 1rem;
			    font-size: 1.3rem;
				}

				.ui.dropdown {
					border-radius: 1rem !important;

					.label {
					  border-radius: 100px;
					}

					.menu {
						border-radius: 1rem !important;
					}
				}
			}
		}

		&.right {
			flex: 1;
			min-height: 500px;

			.results.menu {
				.item {
					font-size: 1.3rem;
			    font-weight: 600;
			    border-radius: 100px;
			    padding: 1rem 1.5rem;
			    background: #ff4e4e;
			    color: #fff;

					&.header {
				    border: 1px solid #dbdbdb;
				    background: #fff;
				    color: #000;
					}
				}
			}

			.filter.menu {
		    height: 44px;
		    border-bottom: 1px solid #dfdfdf !important;
		    border-radius: 0;

		    > .item:hover {
					background: transparent;
			    font-weight: bold;
			    color: #104c7e;
		    }

		    > .item {
		    	&.ui.dropdown {
					  border: none;
					  border-radius: 100px !important;

					  .menu {
					  	border-radius: 1rem !important;
					  }
					}
		    }
			}

			.divider {
				border-color: #f3f3f3 !important;
				border-width: .5px;
			}
		}
	}
}



#item {
  background: white;
  max-width: 1100px;
  margin: 90px auto 0 !important;
  padding: 0 !important;
  overflow: hidden;

	.l-side {
		flex: 1;
		background: #fff;

		textarea {
			border-radius: 1rem;
		}

		.audio-container {
    	width: 100%;
    	margin-top: 1rem;
    }

    .player {
		  display: flex;
		  padding: 1rem 1rem 0.5rem;
		  align-items: center;
		  flex-direction: column;
	    max-width: 80%;
	    margin: auto;
	    position: relative;

		  .wave > wave {
			  height: 100px !important;
			}

			.link {
				font-size: 1.1rem !important;
			  box-shadow: none !important;
    		padding: .5rem;
				font-weight: 600;

				svg {
				  height: 45px;
				  color: slategrey;
				  width: 80px;
				  padding: .5rem;
				  border: 1px solid slategrey;
				  border-radius: 1rem;
				}
			}

		  > .timeline {
				padding: 0;
			  flex: 1;
			  width: 100%;
			}

			.actions {
				margin-top: 1rem;
			}

			.duration {
		    margin-top: 0;
		    font-weight: 700;
		    position: absolute;
		    top: 3.75rem;
		    z-index: 3;
		    padding: .25rem .5rem;
		    border-radius: 100%;
		    font-size: .8rem !important;
		    text-align: center;
			}
		}

		.support, .reviews, .faq, .hidden-content, .table_of_contents {
			display: none;
			min-height: 700px;
		}

		.row.menu {
			margin: 0 -1rem 2rem;
		}

		.row.item {
		  margin-top: 3rem !important;
		}
		
		.top.menu {
			@extend .radiusless;
			@extend .shadowless;
			@extend .borderless;
			margin: -1rem 0 0;
	    position: relative;
	    display: flex;
	    justify-content: center;
	    flex-wrap: wrap;

	    &:before {
		    display: none;
			}
			
			.item.dropdown {
				display: none;
			}

			.item {
				font-size: 1.2rem;
				border-radius: 100px;
			}

			.active.item {
				background: darkslateblue;
				color: #fff;
			}
		}

		.item {

			.cover {
				position: relative;

				img {
					max-width: 590px;
					border-radius: 1rem;
					margin: auto;

					&.type-ebook {
						max-width: 300px;
					}

					&.type-audio {
						max-width: 220px
					}
				}

				.ui.image {
					padding: 1rem;
				}
				
				.title {
				  font-size: 1.3rem;
				  font-weight: 700;
  				margin-bottom: 1rem;
  				padding: 0 1rem;
				}

				.actions {
					position: absolute;
					bottom: 2rem;
					left: 2rem;

					a {
						padding: .5rem 1rem;
						color: #fff;
						-webkit-border-radius: .25rem;
						-moz-border-radius: .25rem;
						-ms-border-radius: .25rem;
						-o-border-radius: .25rem;
						border-radius: .25rem;
						cursor: pointer;

						&:hover {
	    					font-weight: 600;

	    					i {
	    						font-weight: bold;
	    					}
	    				}
					}
				}
			}

			.video {
				max-width: 500px;
				margin: auto;
			}

			iframe.video, video {
				border-radius: 1rem;
			}

			.card {
				@extend .radiusless;
				@extend .shadowless;
				//border: 1px solid #e4e4e4;

				.content.title {
					position: relative;

					span {
						position: absolute;
						width: 100%;
						height: 3px;
						left: 0;
						bottom: 0;
						background: -webkit-linear-gradient(to right, #d4d4d4, #ffffff, #ffffff);
						background: -moz-linear-gradient(to right, #d4d4d4, #ffffff, #ffffff);
						background: -ms-linear-gradient(to right, #d4d4d4, #ffffff, #ffffff);
						background: -o-linear-gradient(to right, #d4d4d4, #ffffff, #ffffff);
						background: linear-gradient(to right, #d4d4d4, #ffffff, #ffffff);
					}

					.header {
						font-size: 1.1rem !important;
					    position: relative;
					    top: 2px;
					    color: #737373;
					    margin-bottom: 0;
					    display: inline-block;

					    &:nth-child(even) {
								float: right;
								position: relative;
								top: 5px;
					    }
					}
				}

				.content {
					border-top: none;

					&.features.body, &.requirements.body {
						img {
							width: auto;
						}
					}
				}

				img {
					width: 100%;
				}
			}
		}

		.hidden-content {
			padding: 2rem;
			background: rgb(255, 255, 255);
			overflow: auto;
			border-radius: 2rem !important;
			box-shadow: rgba(176, 191, 238, 0.12) 0px 6px 20.1px 4.9px !important;
		}

		.table_of_contents {
			.segments {
			  border: none;
			  box-shadow: 0 6px 20.1px 4.9px rgba(176,191,238,.12)!important;
			  border-radius: 2rem !important;
			  overflow: hidden;
			}

			.segment.secondary {
			  background: ghostwhite;
			  font-weight: 600;
			}
		}

		.reviews
		{
			textarea
			{
				height: 80px;
				min-height: 80px;
			}

			.items
			{
				border-radius: 1rem;

				h3
				{
					margin-bottom: .25rem;
					text-transform: capitalize;
					font-size: 1.1rem;
				}

				.item:not(:last-child) 
				{
					border-bottom: 1px solid #ffffff;
				}

				.item
				{
					display: flex;
					padding: 1rem !important;
					box-shadow: 0 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;
			    border-radius: 1rem;

			    &:not(:first-child) {
					  margin-top: 1rem;
					  border-top: none;
					}

					.content 
					{
						padding-left: 1rem;
						flex: 1;
					}

					.ui.label
					{
						padding: .25rem .35rem;
						font-weight: normal;
					}
				}

				.ui.form
				{
					padding: 1rem;
					border-top: 1px solid #e1e1e1;

					.ui.rating
					{
						font-size: 1.2rem;
					}
				}

				&:not(:first-child)
				{
					margin-top: 1rem;
				}
			}

			.ui.image
			{
				width: 100%;
				max-width: 60px;
				height: 100%;
			}
		}

		.support
		{
			textarea
			{
				height: 80px;
				min-height: 80px;
			}

			.comments-wrapper
			{
				border-radius: 1rem;
				box-shadow: 0 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;
				border-bottom: 1px solid #d2d2d2;
				overflow: hidden;

				h3
				{
					margin-bottom: .25rem;
					text-transform: capitalize;
					font-size: 1.1rem;
				}

				.item:not(:last-child) 
				{
					border-bottom: 1px solid #ffffff;
				}

				.parent, .children
				{
					display: flex;
					padding: 1rem;

					.content 
					{
						padding-left: 1rem;
						flex: 1;
					}
				}

				&:not(:first-child)
				{
					margin-top: 1rem;
				}

				.children
				{
					padding-left: 2rem;
					border-top: 0;
					background: #f3f3f3;

					.ui.image {
						max-width: 50px;

						img {
							border-radius: 500px !important;
						}
					}
				}
			}

			.ui.image
			{
				width: 100%;
				max-width: 60px;
			}
		}

		.card {
			.content.images {
				.ui.items {
					display: flex;
					justify-content: flex-start;
					align-items: center;
					margin: -1rem !important;
					flex-wrap: wrap;
				}

				.item {
			    cursor: pointer;
			    background-size: cover;
			    background-position: center;
			    width: 97px;
			    height: 97px;
			    margin: 0.5rem;
			    border-radius: 2rem;
				}
			}
		}

		.overview {
			img {
				width: 80% !important;
				max-width: fit-content;
				margin: auto;
				display: block;
			}
		}


		#files-list {
			min-height: 700px;

			.item {
			  display: flex;
			  align-items: center;

			  &:not(:last-child) {
				  margin-bottom: .5rem;
				}
			}

			.file-icon {
			  width: 60px;
			  height: 60px;
			  display: flex;
			  justify-content: center;
			  align-items: center;
			  padding: .5rem;
			  color: white;
			  background: #00b9a8;
			  border-radius: .5rem 0 0 .5rem;
			}

			.file-name {
			  display: flex;
			  flex: 1;
			  height: 60px;
			  align-items: center;
			  padding: .5rem 1rem;
			  text-transform: capitalize;
			  background: ghostwhite;
			  -webkit-border-radius: 0 .5rem .5rem 0;
			  -moz-border-radius: 0 .5rem .5rem 0;
			  border-radius: 0 .5rem .5rem 0;
			  font-weight: bold;
			}
		}
	}

	.r-side {
    visibility: visible;
    max-width: 380px;
    width: 100%;

    .image.rating {
    	justify-content: normal;
    }

    .ui.dropdown.button {
    	border-radius: 100px !important;

    	.menu {
    		border-radius: 1rem !important;
    		box-shadow: none !important;
    	}
    }

		.card {
	    box-shadow: 0 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;
	    margin-top: 2rem;
	    border-radius: 1rem !important;

	    &.promo {
			  box-shadow: none !important;

			  .promo-count {
			  	padding: 1rem;
			    font-weight: 600;
			    text-align: center;
			    color: slategray;
			    font-size: 1.1rem;
			  }
			}

	    .content {
	    	&:first-child {
	    		border-radius: 1rem 1rem 0 0 !important;
	    	}

	    	&:last-child {
	    		border-radius: 0 0 1rem 1rem !important;
	    	}
	    }

			&.free {
    		background: ghostwhite;

    		.button {
			    border: none;
			    width: 100%;
			    margin: 0 !important;
			    box-shadow: none !important;
			    border-top: 1px solid #d9d9d9;
			    background: #eaeaea !important;
			    color: #000 !important;

			    &:hover {
					  font-weight: bold;
					}
    		}
			}

			&.paid {
				.price {
					padding: 1.5rem 1rem 1rem;

					.header {
						padding: 1rem;
						background: ghostwhite;
						border-radius: 1rem;

						&.itemHasPromo .normal {
						  font-size: 1rem;
						  text-decoration: line-through;
						}
					}
				}

				.buttons {
					text-align: center;
			    display: flex;
			    justify-content: center;
			    align-items: center;

			    .button {
						flex: 1;
				    margin: 0 0.2rem;
				    font-size: 1.2rem;
				    padding: 1rem 0rem;
					}
				}

				.icons {
			    margin-top: .75rem;
			    text-align: center;
			    padding: .25rem;
			    background: #fff;
			    border: 1px solid #dddddd;

					i {
				    font-size: 2.5rem;
				    line-height: 1;
				    color: #1f374e;
					}
				}
			}
		}

		.item-info {
			@extend .borderless;
			border-radius: 1rem;
			margin-top: 2rem;
			box-shadow: 0 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;
			font-size: 1.2rem;
			line-height: 1.5;

			tr td:nth-child(odd) {
			    width: 40%;
			    font-weight: 600;
			}
		}

		.share-on {
			box-shadow: 0 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;

			.buttons {
				display: flex;
		    flex-wrap: wrap;
		    justify-content: center;
		    align-items: center;

				button {
			    font-size: 1.5rem;
			    margin: 0.5rem;
			    border-radius: 100px;
			    background: slategray;
			    color: #fff;
			    padding: 1rem;
				}
			}
		}	
	}
}


#similar-items {
	margin-top: 3rem !important;
	margin-bottom: -1rem;
	padding: 2rem;
  background: #f9faff;

	.header {
	  margin-bottom: 1rem;

	  div {
	    font-size: 1.3rem;
	    font-weight: 600;
	    line-height: 1.3;
	    color: #232323;
	    letter-spacing: 1px;
	    display: table;
	    text-transform: uppercase;
		}
	}

	.card {
		.content.cover {
			background: #fff !important;
		}

		&.audio, &.ebook {
			.content.top {
			  display: flex;
			  justify-content: center;
			  align-items: center;
			  background: #fff;
			  padding: 1.2rem;
			  border-bottom: .2rem dashed #efefef !important;
			}
		}
	}
}

#user-notifications {
	.item {
	    display: flex;
	    margin: 0;
	    position: relative;

	    &:not(:last-child):after {
	    	position: absolute;
	    	content: '';
	    	width: 100%;
	    	height: 1px;
	    	bottom: 0;
	    	left: 0;
				background: #f7f7f7;
		    visibility: visible;
	    }

	    .image {
		    width: 40px !important;
		}

		.date {
		    color: #949292;
		}

		.content {
		    font-size: 12px;
		    text-overflow: ellipsis;
		    overflow: hidden;
		    white-space: nowrap;
		}

		strong {
		    color: steelblue;
		}
	}
}


#user-profile {
	background: ghostwhite;

	.column {
		background: white;
	}

	.secondary.menu {
		background: #f2f2f6;
	}

	.header {
		color: #fff;
    background: #2196F3;
    font-size: 1rem;
    padding: .25rem .5rem;
    border-radius: .25rem;
    line-height: 1;
	}
	
	.ui.items {
		.content {
	    padding-top: 0.5rem;
		}
	}

	.ui.image, .ui.image img {
		width: 110px !important;
		cursor: pointer;
	}

	table.password {
		display: none;
	}

	.ui.menu {
		.item {
			&.active {
				background: tomato;
				color: #fff;
				font-weight: bold;
			}
		}
	}
}


#user-downloads {
	background: #fff;
	min-height: 400px;

	.items .header {
		font-size: 1rem;
	}
	
	.wrapper {
		overflow-x: auto ;
	  max-width: 100vw;
	}
	
	tr td:nth-child(1) {
    width: 80px !important;
	}

	table {
		.button {
			width: 150px;
		}
	}

	.ui.image {
		position: relative;
		margin: 0;

		img {
			height: 40px;
    	width: auto;
		}
		span {
	    position: absolute;
	    padding: 0 .5rem;
	    right: 0.25rem;
	    top: 0.25rem;
	    background: #00628e;
	    border-radius: .2rem .2rem .2rem .5rem;
	    font-size: 11px;
	    color: #fff;
		}
	}
}

#user-directory {
	background: #fff;
	min-height: 400px;

	.items .header {
		font-size: 1rem;
	}
	
	.card {
  	border: 1px solid #efefef;
  	width: -webkit-calc(16.66666667% - 1rem);
  	width: calc(16.66666667% - 1rem);

  	&:hover {
		  border: none;
		}

  	.header {
		  text-transform: capitalize;
		  color: #5a5a5a;
		  white-space: nowrap;
		  text-overflow: ellipsis;
		  overflow: hidden;
		}

  	.content {
    	&:first-child {
			  background: #f6f6f6;
			  font-weight: bold;
			  padding: 1rem;
			}

			&:last-child {
			  background: #0077bc;
			  color: #fff;
			  font-weight: bold;
			  font-size: 1.1rem;
			  padding: 1rem;
			  height: 47px;

			  &:hover {
			    background: #005180;
				}
			}
  	}
	}

	.ui.image {
		position: relative;
		margin: 0;

		img {
			height: 40px;
    	width: auto;
		}
		span {
	    position: absolute;
	    padding: 0 .5rem;
	    right: 0.25rem;
	    top: 0.25rem;
	    background: #00628e;
	    border-radius: .2rem .2rem .2rem .5rem;
	    font-size: 11px;
	    color: #fff;
		}
	}
}

#user-favorites {
	background: #fff;
	min-height: 400px;

	.wrapper {
		overflow-x: auto;
	}

	table {
		img {
			height: 40px;
    	width: auto;
		}

		tr td:nth-child(1) {
	    width: 80px !important;
		}
	}
}

#user, #guest {
	max-width: 1100px;
	margin: 80px auto 0 !important;
	
	.ui.message {
		border-radius: 100px;
	}

	.action.input {
		input {
			border-radius: 100px 0 0 100px;
		}

		.button {
			border-radius: 0 100px 100px 0;
		}
	}

	> .column {
		width: 100%;

		&.title {
			display: flex;
			overflow: auto;
		}
	}

	.ui.menu:not(.pagination) {
		align-items: center;
		margin-left: auto;
		
		.item {
	    font-size: 1.3rem;
	    border: 1px solid ghostwhite;
	    border-radius: 1rem;
	    background: ghostwhite;
	    font-weight: 600;

		  &.active {
		    background: darkturquoise;
		    border: 1px solid darkturquoise;
		    color: #fff;
			}

			&:not(.active):hover {
			  border: 1px solid #fbfbfb;
			  background: #fcfcfc;
			}
		}
	}

	> .items {
		min-height: 60vh;
		box-shadow: 0 0 74px 0 rgba(115, 131, 169, 0.08) !important;
    border-radius: 2rem;
    display: flex;
    flex-direction: column;
    padding: 2rem !important;
    overflow-x: auto;
 
    .items-list {
			width: 100%;
			display: table;
    }
	}	

	.purchases {
		.titles {
		  display: flex;
		  align-items: center;
			background: royalblue;
			border-radius: 1rem 1rem 0 0;
			
			* {
			  color: #fff;
			}

		  > div {
		  	padding: 1rem;
			  flex: 1;
			  font-size: 1.3rem;
			  text-align: center;

			  &.name {
			  	flex: 2;
			  }
			}
		}


		.content {
		  display: flex;
		  align-items: center;

		  &:not(:last-child) {
				border-bottom: 1px solid whitesmoke;
		  }

		  > div {
			  flex: 1;
			  text-align: center;
			  padding: 1rem;
			  font-size: 1.1rem;

			  &.name {
			  	flex: 2;
			  }

			  &.rating .rating {
			  	font-size: 1.3rem;
			  }
			}
		
			.cover {
				a {
					background-size: cover;
					background-position: bottom center;
					display: block;
					width: 80px;
					height: 80px;
					border-radius: 500px;
					margin: auto;
				}
			}

			.ui.dropdown {
				.menu {
					border-radius: 1rem !important;
					overflow: hidden;

					.item {
						font-size: 1.1rem;
					}
				}
			}
		}
	}

	.favorites {
		.item {
		  display: flex;
		  align-items: center;

		  &:not(:last-child) {
				border-bottom: 1px solid whitesmoke;
		  }

		  > div {
			  flex: 1;
			  padding: 1rem;
			  font-size: 1.1rem;

			  &.name {
			  	flex: 2;
			  }

			  &.rating .rating {
			  	font-size: 1.3rem;
			  }

			  &.actions {
			  	text-align: right;

			  	button {
				  	margin: .25rem 0;
					  padding: .5rem;
					  min-width: 100px;
			  	}
				}

				&.category {
					a {
						font-size: 1.1rem;
						padding: .5rem 1rem;
						white-space: nowrap;
				    overflow: hidden;
				    text-overflow: ellipsis;
					}
				}
			}
		
			.cover {
				text-align: center;

				a {
					background-size: cover;
					background-position: bottom center;
					display: block;
					width: 80px;
					height: 80px;
					border-radius: 1rem;
					margin: auto;
				}
			}
		}
	}

	.notifications {
		display: block;
		padding: 1rem;

		.items {
			width: 100%;

		  .item {
		    display: flex;
		    align-items: center;
		    border-radius: 1rem;
		    overflow: hidden;
		    font-size: 1.1rem;
		    margin-bottom: 0.75rem;
		    padding: 0.5rem;
		    border-left: 3px solid #ff5f5f;
		    cursor: default;

		    time {
				  color: #979797;
				}
				
				p {
					font-size: 1.2rem;
				}

			  &.unread {
				  font-weight: 600;
				  cursor: pointer;
				}

			  .image {
					width: 80px;
			    height: 80px;
			    background-position: bottom center;
			    background-size: cover;
			    border-radius: 500px;
			  }
			}
		}
	}

	.profile {
		.items {
			.item {
				align-items: center;

				.content > div {
					text-transform: capitalize;

					&.name {
				    font-size: 1.3rem;
				    color: #ff2c53;
				    font-weight: bold;
				    border-bottom: 2px dashed #ff2c53;
				    display: table;
				    padding-bottom: .5rem;
					}

					&:not(:last-child) {
					  margin-bottom: .75rem;
					}
				}
			}

			.ui.image {
				width: 100px;
    		height: 100px;
    		display: block;
			}
		}

		input {
			border-radius: 100px !important;
		}

		.field {
			.content {
				&:first-child {
					flex: none;
					margin-right: 2rem;
				}
			}

			&.avatar {
		    border-bottom: 1px solid #dbdbdb;
		    margin-bottom: 2rem;
		    padding-bottom: 2rem;
			}
		}

		.segment {
			font-size: 1.1rem; 
			border-radius: 2rem !important;
			
			.header {
				display: table;
				font-size: 1.2rem;
				padding-bottom: .5rem;
			}

			input {
				border-radius: .5rem;
			}
		}
	}

	.subscriptions {
		.wrapper {
		  width: 100%;
		  display: table;
		}

		.item {
			display: flex;
			font-size: 1.1rem;
			text-align: center;

			> div {
			  flex: 1;
			  padding: 1rem;
			  display: flex;
			  justify-content: center;
			  align-items: center;
			}

			&.titles {
			  background: #01cdd1;
			  border-radius: 1rem 1rem 0 0;
			  
			  div {
				  font-size: 1.3rem;
				  display: flex;
				  justify-content: center;
				  align-items: center;
				  color: #fff;
				}
			}

			&:not(.titles):not(:last-child) {
			  border-bottom: 1px solid #f6f6f6;
			}
		}
	}

	.invoices {
		padding: 2rem;

		table {
			border-radius: 1rem;
			overflow: hidden;
		}

		thead {
			th {
				background: ghostwhite;
				padding: 1rem;
			}
		}

		td:last-child, th:last-child {
			text-align: right;
		} 
	}
	
	.ui.message {
		display: table !important;
		box-shadow: none;
		padding: 1rem;
	}

	.ui.pagination {
		flex: none !important;
		padding: 0 !important;
		margin: 1rem !important;
		background: #fff !important;
		overflow: hidden !important;

		* {
		  color: #000 !important;
		}

		.item {
		  &.active {
		  	background-color: #ededed !important;
			}

			&.disabled * {
    		color: #ededed !important;
			}
		}
	}
}

#item-r-side-toggler {
	display: none;

	a {
		background: linear-gradient(45deg, tomato, tomato, #ff826c);
	  color: #fff;
	  font-weight: 600;
	  width: 70px;
	  justify-content: center;
	}
}


#checkout-page {
	min-height: 500px;
	background: white;
	max-width: 1100px;
	margin: 80px auto 0 !important;

	> .column {
		flex: 1;

		&.right {
			max-width: 420px;
		}
	}
	
	.empty-cart-msg {
    display: table;
    width: 100%;
    font-weight: bold;
    font-size: 1.1rem !important;
    background: #fff !important;
    margin: 0 !important;
	}

	.card {
		border-radius: 2rem;
		box-shadow: 0px 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;
		height: 100%;

		> .content {
			&:first-child {
				border-radius: 2rem 2rem 0 0 !important;
				background: royalblue;
			}

			&:last-child {
				border-radius: 0 0 2rem 2rem !important;
				display: flex;
				flex-wrap: wrap;

				.button {
					height: 45px;
				}
			}
		}
	}

	.cart-title {
		padding: 2rem;
		
		* {
    	color: #fff;
    }

    > .header {
    	font-size: 1.5rem;

    	&.sub p {
				color: #fff;
				font-size: 1.2rem;
    	}
    }

    &.empty {
    	background: #ff5656;

    	* {
    		color: #fff !important;
    	}
    }
	}

	.cart-items {
		min-height: 400px;
		position: relative;
		line-height: 1.5;
    align-items: flex-start;
    align-content: flex-start;
    height: 100%;
    padding: 2rem;

		.cart-item {
			display: flex;
	    font-size: 1.1rem;
	    border-radius: 2rem;
	    width: 100%;
	    box-shadow: 0px 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;
	    margin-top: 1rem;
	    position: relative;

			&:first-child {
				margin-top: 0;
			}

			> div {
				padding: .75rem;
				display: flex;
				align-items: center;
			}

			.name {
				flex: 1;
				text-align: left;
				font-size: 1.2rem;
				display: block;
				
				.license {
				  font-size: 0.9rem;
				  color: #ffffff;
				  font-weight: 500;
				  margin-top: .25rem;
				  padding: .25rem .5rem .15rem;
				  background: #6bb752;
				  display: table;
				  border-radius: 1rem;
				}
			}

			&.subscription {
				flex-direction: column;
				overflow: hidden;

				.header {
					display: flex;
					font-weight: 600;

					div {
						padding: 1rem;
					}
				}

				.description {
			    display: flex;
			    flex-direction: column;
			    justify-content: flex-start;
			    text-align: left;
			    align-items: baseline;
			    padding: 1rem;
			    line-height: 2;
			    background: #fff;
				}

				.name {
					font-size: 1.4rem;
				}
			}

			.image {
				margin-right: .5rem;

				a {
			    width: 70px;
			    height: 70px;
			    background-size: cover;
			    background-position: bottom center;
			    display: block;
			    border-radius: 2rem;
				}
			}

			.price {
				flex: none;
				min-width: 80px;
			}

			.delete {
				flex: none;
				display: flex;
		    align-items: center;
		    font-size: 1.3rem;
		    min-width: 50px;
		    text-align: center;
		    justify-content: center;
		    color: #9c9c9c;
			}
		}
	}

	.payment-methods {
    line-height: 1.5;
    display: flex;
    flex-direction: column;

		.items {
			margin: 1rem 0 0;
	    padding: 0;
	    font-size: 1.3rem;
	    border-radius: 2rem;
	    flex: 1;
	    width: auto;
	    display: flex;
	    color: #fff;
	    flex-wrap: wrap;
	    align-items: flex-start;
	    align-content: flex-start;
			
			.header {
		    margin: 0;
		    font-size: 1.3rem !important;
		    font-weight: 600 !important;
		    color: #000 !important;
			}

			.item {
		    margin: .5rem 0;
		    padding: 2.5rem 1.5rem;
		    cursor: pointer;
		    background: #fff;
		    border-radius: 2rem;
		    width: 100%;
		    box-shadow: 0 0 20px 6px #f8f9fb;
		    overflow: hidden;
		    display: block;
		    font-size: 1.3rem;

				.wrapper {
			    justify-content: center;
			    align-items: center;
			    display: flex;
				}

				.icons {
					display: flex;
			    justify-content: flex-end;
			    align-items: center;
			    padding: 0;
			    margin: 0 1rem 0 .5rem;
			    flex: 1;

			    img {
					  flex: 1;
					  margin: 0 3px;
					  border-radius: .25rem;
					  max-width: 40px;
					}
				}

				&.crypto {
					.icons {
						img {
							max-width: 24px;
						}
					}
				}

		    .content {
					flex: none;
					margin-left: auto;
					color: #555;
		    }
			}
		}

		.total-fee {
			font-weight: bold;
	    font-size: 1.3rem;
	    padding: 1.5rem;
	    background: #f8f9fb;
	    border-radius: 2rem;
	    
			> div {
				padding: 1rem 1.5rem;
		    border-radius: 100px;
		    background: #fff;
		    color: #323232;

			  span {
				  float: right;
				}

				&.fee {
					margin-bottom: 1rem;
				}

				&.total span {
				  color: #444444;
				}
			}
		}

		.custom-amount {
		  padding: 1.5rem;
		  margin: 1rem 0;
		  background: #f8f9fb;
		  border-radius: 2rem;
		  font-size: 1.3rem !important;

		  input {
			  border-radius: 100px !important;
			}

			label {
			  margin-bottom: 1rem !important;
			  padding-left: .5rem;
			}
		}

		.cart-payment {
	    margin: 1rem 0 0;
	    padding: 1.5rem;
	    background: #f3f3f3;
	    border-radius: 2rem;

	    .bottom {
				display: flex;
				align-items: center;

				div {
					margin-left: auto;
					padding-left: 1rem;
					color: #404040;
					cursor: pointer;
				}
			}
		}
	}

	.offline-payment {
		margin-bottom: 2rem;
		padding: 1em;
    background: #fff;
    border-radius: 2rem;
	}
}


#checkout-response {
	min-height: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
	
	.card {
		box-shadow: 0px 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;
		border-radius: 2rem !important;
		overflow: hidden;
		max-width: 600px;
		width: 100%;

		.content {
			padding: 1.5rem;

			&.title {
				font-size: 2rem;
		    text-align: center;
		    padding: 2.5rem;
		    font-weight: 600;
		    color: #fff;
		    background: #139a7b;

		    &.pending {
					background: slateblue;
					font-size: 1.5rem;
		    }
			}

			&.extra {
				font-size: 1rem;
				padding: 1rem;
				font-weight: 600;

				p {
					color: #3a77ff;
				}
			}

			&.summary {
				.details {
					border-radius: .75rem;
			    overflow: hidden;
			    border: 1px solid #c7c7c7;
				}

				.item {
			    display: flex;
			    font-size: 1.1rem;
			    line-height: 1.3;
			    padding: .75rem;
					font-weight: 500;

					.price {
					  margin-left: auto;

					  &.discount {
					  	color: #139a7b;
					  }

					  &.addition {
							color: #ef3333;
					  }
					}

					&:not(:last-child) {
					  border-bottom: 1px solid #c7c7c7;
					}
				}

				.total {
					background: #f5f5f5;
			    font-weight: 700;
				}
			}
		}

		.header {
			background: transparent;
			width: 100%;
			max-width: 1100px;
			margin: auto;
			text-align: center;
			font-size: 2rem;

			&.icon {
				font-size: 3rem;
		    margin-bottom: 2rem;
		    color: #139a7b;
		    display: table;
		    width: auto;
		    padding: 0.5rem 0.5rem 0;
		    border: 3px solid #139a7b;
		    border-radius: 1rem;
			}

			&.text {
				font-weight: 600;
			}
	  }
	}
	

	&.success {
    .header {
			.message {
				font-size: 4rem;
		    color: #666;
		    text-transform: uppercase;
			}
    }
	}

	&.failure {
		.card .content.title {
			background: #ff4747;
			font-size: 1.5rem;
		}
	}

	&.confirm {
		.card {
			.content {
				&.title {
					background: #135c9a;
				}
			}
		}
	}

	.guest-token {
		background: #f5f5f5;

		.header {
			font-weight: 600;
		}

		.token {
	    padding: 1rem 1.5rem;
	    display: table;
	    margin: 1rem auto 3rem;
	    font-size: 1.3rem;
	    background: #17b38f;
	    font-weight: 600;
	    color: #fff;
	    border-radius: .5rem;
	    position: relative;
		}

		.download {
			text-align: center;
			font-size: 1.3rem;
			font-weight: 600;
			padding: .5rem;
			display: table;
			border-radius: .5rem;
			background: #e6e6e6;
			color: #363636;
			position: absolute;
			top: calc(100% + .5rem);
			right: 1rem;
		}
	}
}


#checkout-messages {
	min-height: 300px;

	a {
    color: black;
    padding: .25rem .5rem;
    margin: 0 .25rem;
    background: #ffbf00;
    font-weight: bold;
    border-radius: .25rem;
	}
}


#form-checkout {
  margin-bottom: 2rem;

  input {
	  border-radius: 100px;
	  border: none;
	}

	label {
	  margin-left: 1rem;
	}
}


#cart-checkout {
	.fee {
		color: steelblue;
	}

	.card {
		border: 1px solid #dadada;
    border-radius: .25rem !important;
    background: ghostwhite;

    >.content {
    	&:nth-child(2), &:last-child {
    		background: #fff;
    	}
    }
	}

	.payment-methods {
		.items {
			@extend .rounded-corner;
		  background: #fff;
		  border: 1px solid #ebebeb;
		}

		.item {
			align-items: center;
			cursor: pointer;
			padding: 1rem !important;
			margin: 0 !important;
			
			&:not(:last-child) {
			  border-bottom: 1px solid #efefef;
			}

			&:hover, &.active {
				background: #ebebeb;
			}

			.content {
				&:nth-child(even) {
					flex: 1;
				}

				&:nth-child(odd) {
				  max-width: 40px !important;
				}
			}

			i {
			  font-size: 1.5rem;
			}
		}
	}
}


.dropdown-wrapper {
	@extend .d-flex;

	.ui.dropdown {
	  flex: 1;
	  max-width: 170px !important;
	  min-width: 170px !important;
	  text-overflow: ellipsis;

	  .text {
		  overflow: hidden;
		  white-space: nowrap;
		  text-overflow: ellipsis;
		  max-width: 120px;
		}
	}

	.ui.button {
		flex: 1;
	}
}


#coupon-form {
	.ui.input {
		border-radius: 500px;
    overflow: hidden;

    input {
			border: none;
	    outline: none;
		}
	}

	a {
		background: #13609e;
		color: #fff;

	  &.reset {
	  	background: #646464;

			&:hover {
				background: #4a4e53;
			}
		}

	  &:not(.reset):hover {
	  	background: #1672bd;
		}
	}

	.message {
    margin-bottom: 1rem;
    text-align: center;
    font-weight: 500;

    &.negative {
    	color: #ff6464;
    }

    &.positive {
    	color: #13ba65;
    }
	}
}



#coupon-form {
	div {
		border: 1px solid #e9e9e9;
	  @extend .rounded-corner;
	  margin-bottom: 1rem;
	  @extend .d-flex;
	  align-items: center;
	}

	input {
	  border: none;
	  padding: .75rem;
	  flex: 1;
	  border-right: 1px solid #e9e9e9;
	  height: 40px;
	  max-width: 175px;
	}

	span {
	  text-align: center;
	  padding: .25rem .4rem;
	}

	a {
	  padding: .35rem .5rem;
	  display: block;
	  border-radius: .15rem;
	  background: tomato;
	  color: #fff;
	  font-weight: bold;

	  &.reset {
	  	background: linear-gradient(45deg, #5b9dd4, #599ad0, #4679a4);

			&:hover {
				background: linear-gradient(45deg, #5b9dd4, #599ad0, #4679a4);
			}
		}

	  &:not(.reset):hover {
	  	background: linear-gradient(45deg, #ff7d66, #ff6b50, #ff5436);
		}
	}
}


#support {
  background: #fff;
  padding: 0 1rem;
  max-width: 1300px;
  margin: 80px auto 0 !important;
	
	.title-wrapper {
    background: ghostwhite;
    padding: 1rem;
    margin-bottom: 1rem;
    border-radius: 1rem;

    .segment {
    	border-radius: 1rem;
    }
	}

	.column {
		background: #fff;

		&.left {
			flex: 1;
			
			.segments {
				.segment {
					cursor: pointer;

					&:not(:last-child) {
						border-bottom: 1px solid gainsboro !important;
					}

					p {
						margin: 0;
					}

					div {
						margin-top: 1rem;
					}
				}
			}
		}

		&.right {
			max-width: 340px;
			width: 100%;

			input, button {
				border-radius: 100px;
			}

			textarea {
				border-radius: 1rem;
			}
		}
	}
}


#posts {
  background: #fff;
  padding: 0 1rem;
  margin: 80px auto 0 !important;
  max-width: 1300px;
  width: 100%;

	.column {
		background: #fff;

		&.left {
			flex: 1;
			min-height: 80vh;

			.segment.filter {
				background: ghostwhite;
    		border: 0;

				.label {
					text-transform: capitalize;

					i.times {
						cursor: pointer;

						&:hover {
							color: #000 !important;
						}
					}
				}
			}

			.card {
				box-shadow: 0 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;
				border-radius: 1rem !important;
				overflow: hidden;

				img {
					border-radius: 0.25rem 0.25rem 0 0;
				}

				&:hover {
					img {
					  filter: brightness(0.9);
					}
				}

				time {
			    position: absolute;
			    right: 0.5rem;
			    top: 0.5rem;
			    font-size: 0.8rem;
			    padding: 0.5rem 1rem;
			    background: #ffffff;
			    display: block;
			    color: #000000;
			    line-height: 1;
			    text-align: right;
			    border-radius: 100px !important;
			    font-weight: 600;
				}

				.title {
					padding: 1rem !important;
					font-weight: bold;
					color: #292929;
					height: 100%;
					background: #fdfdfd !important;

					a {
						max-width: 250px;
						margin-right: auto;
					}
				}

				.description {
					padding: .5rem 1rem 1rem !important;
					font-size: .9rem;
					color: grey;
				}
				
				.tags {
				  display: flex;
				  padding-top: 0;

				  a {
				    font-size: 0.8rem;
				    color: #000;
				    padding: 0.25rem 0.5rem;
				    border: 1px solid #dedede;
				    border-radius: 100px;
				  
						&:not(:last-child) {
						  margin-right: .5rem;
						}
				  }
				}

				.content {
					@extend .borderless;
				}
			}

			&.post {
				.post-title {
					padding: 1rem;
					margin: -1rem -1rem 1rem;

					h1 {
						margin: 0 !important;
				    text-transform: capitalize;
				    font-size: 1.8rem;
				    font-weight: 600;
					}

					p {
						color: #adadad;
						margin-top: 0.25rem;
						font-weight: 500;		
					}
				}

				.post-content {
					margin-top: 3rem;
				}
				
				.social-buttons {
			    margin: 0 auto 1rem;
			    border-radius: 1.5rem;
			    max-width: initial;
			    background: white;

			    .buttons {
			    	padding: 0 !important;
			    }

					.button {
					  background: ghostwhite !important;
					  border: none;
					  border-radius: 1rem;
					  font-size: 1.1rem;
					  font-weight: 600;
					  color: #252424 !important;
					}
				}
			}
		}

		&.right {
			max-width: 320px;
			width: 100%;

			input {
				border-radius: 100px;
			}

			.items-wrapper {
				.item:not(:last-child) {
					margin-bottom: 1rem;
					padding-bottom: 1rem;
					border-bottom: 1px solid #e4e4e4;
				}

				.items-title {
					border-radius: 0.25rem 0.25rem 0 .5rem;
    			margin-bottom: 1rem;
			    position: relative;
			    z-index: 1;
    			background: #fff;

			    h3 {
				    padding: 0.75rem 1rem;
				    margin: 0 !important;
				    border-left: 3px solid #0095ff;
				    text-transform: uppercase;
				    font-weight: bold;
				    font-size: 17px;
				    background: slategray;
				    border-radius: 100px;
				    text-align: right;
				    color: #fff;
			    }
				}

				img {
				  float: left;
				  max-width: 98px;
				  margin-right: .5rem;
				}

				a {
				  font-size: .9rem;
				  font-weight: bold;
				  position: relative;
				  top: -4px;

				  &.tag {
						padding: .5rem;
						display: inline-block;
						margin: 0 .1rem .3rem 0;
						border: 1px solid grey;
						border-radius: 1rem;

						&:hover {
					    color: #fff;
					    background: #ff4c3f;
					    border-color: #ff4c3f;
						}
					}
				}

				p {
				  font-size: .8rem;
				  text-align: left;
				}
			}
		}
	}
}

#posts-search {
  padding: 1rem;
  margin: -1rem;
  border-bottom: 1px solid #f1f1f1;
}

#screenshots {
	width: fit-content;
	max-width: 1024px;
	
	img {
    max-height: 90vh;
	}

	div.left, div.right {
    position: absolute;
    height: 100%;
    width: 40px;
    background: transparent;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
	}

	div.right {
    right: 0;
    left: auto;
	}

	button {
    background: transparent;
    color: #000;
    border-radius: 0;
	}
}

#preview
{
  overflow: hidden;

	#app {
		padding-top: 60px;
	}

  .ui.grid
  {
    min-height: calc(100vh - 60px);
	}
	
	#top-menu.preview .right.menu .item:first-child {
    padding: .75rem;
    background: #ffe047;
		color: #000;
		height: auto;
	}

  iframe
  {
    padding: 0;
    width: 100%;
    visibility: hidden;
  }
}

#pricing {
  background: #fff;
  text-align: center;
  border-radius: 0.5rem;
  overflow: hidden;
  margin: 80px auto 0 !important;
  max-width: 1100px;

  .column {
  	&.title {
  		padding: 1rem;
	    text-align: center;
	    line-height: 2;

			h1 {
				font-size: 1.875rem;
	    	letter-spacing: 1.5px;
	    	color: #0e76c4;
	    	margin-bottom: 0;
			}

			h3 {
				font-size: 1.4rem !important;
				color: #6c6c6c !important;
				max-width: 800px;
				margin: 1rem auto !important;
				line-height: 1.5 !important;
				font-weight: 500;
			}
  	}
  }

	.cards {
		justify-content: center;
	}

	.card {
		background: #fff;
	  box-shadow: 0px 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;
	  border-radius: 2rem !important;
	  position: relative;

		.content {
			padding: 0.5rem 1rem;
			border: none;

			&.name {
				padding: 2rem;

				span {
				  padding: 1.5rem 1rem;
				  font-size: 1.5rem;
				  font-weight: 600;
				  display: block;
				  border-radius: 1.5rem;
				  color: #fff;
				}
			}

			&.description {
				text-align: left;
				height: 100%;
				padding-bottom: 85px;

				div {
			    padding: 0.5rem 2rem;
			    font-size: 1.2rem;
			    line-height: 1.8 !important;
						
					i {
						margin-right: 1rem;
					}
				}
			}

			&.price {
		    font-size: 2.2rem !important;
		    text-align: center;
		    font-weight: 800;
		    color: #313434;
		    padding: 2rem 1rem;
		    line-height: 1;

		    span {
					display: block;
					margin-top: .75rem;
					font-size: 1.1rem;
		    }
			}
			
			&.buy {
		    text-align: center;
		    position: absolute;
		    bottom: 0;
		    padding: 1.5rem;
		    width: 100%;

		    a {
				  color: #fff;
				  font-weight: 600;
				  margin: auto;
				  border-radius: 1rem;
				  font-size: 1.3rem;
				  padding-bottom: .75rem;
				  padding-top: 1rem;

				  &:hover {
					  filter: drop-shadow(0 0 3px grey);
					}
				}
			}
		}
	}
}

#auth {
	.ui.message {
    border-radius: 1rem;
    line-height: 1.5;
    font-weight: bold;
	}
	
	.card {
		box-shadow: 0px 6px 20.1px 4.9px rgba(176, 191, 238, 0.12) !important;
		border-radius: 1rem !important;
		overflow: hidden;
	
		input {
			border-radius: 100px;
		}

		label:not(.checkbox) {
			padding-left: 1rem;
		}

		.ui.dropdown {
			border-radius: 100px;

			.menu {
		    border-radius: 1rem !important;
		    box-shadow: none !important;

		    .item {
		    	font-size: 1.1rem;
					line-height: 1.3;

					&:not(:last-child) {
					  border-bottom: 1px solid #f3f3f3;
					}
		    }
			}
		}

		.content {
			padding: 1.5rem !important;

			&.logo {
    		background: linear-gradient(45deg, #FE8B66, #ff6347, #ff6347);

    		a {
					display: block;
					margin: -1.5rem;
					padding: 1.5rem;
    		}

    		img {
    			max-width: 220px;
    		}
			}

			.title {
				color: #2d73ad;
			}
		}
	}

	&.newsletter-unsubscribe {
		.logo {
			background: indianred !important;

			a {
			  font-size: 2rem;
			  padding: .5rem !important;
			  margin: 0 !important;
			  font-weight: 600;
			  color: #fff;
			}
		}

		h2 {
		  color: #464646;
		  font-weight: 600;
		  font-size: 1.3rem !important;
		}
	}
}


.ad {
  margin: 1rem auto;
  text-align: center;

  &:not(.ad_300x250):not(.ad_728x90):not(.responsive_ad) {
  	display: none;
  }
}

#user-message {
	border-radius: 2rem !important;
	overflow: hidden;
}

.ui.dimmer {
	height: 100vh !important;
	overflow: hidden !important;
	position: fixed;
}


#users-notif {
	padding: 1.5rem;
	font-size: 1.8rem;
	font-weight: 700;
	background: radial-gradient(#fff038, #ffef30, #fff25a);
	width: 100%;
	margin-top: -1rem;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1.5;
	color: #000;
	min-height: 80px;

	.close {
    position: absolute;
    right: 1rem;
    font-size: 1rem;
    background: #fff;
    border: none;
    box-shadow: none;
    line-height: 1.25 !important;
	}
}

#recently-viewed-items {
	padding: 1rem;
	margin: 1rem;
	border-radius: 1rem;
	background: #f1f1ff;
	width: calc(100% - 2rem);
	
	> .title {
		font-size: 1.3rem;
		padding: .75rem 1rem .5rem;
		margin: 0.5rem 0 0;
		display: table;
		color: #252525;
		font-weight: 600;
	}

	.items {
    display: flex;
    flex-wrap: nowrap;
    flex-flow: row-reverse;
    overflow: auto;
    padding: 1rem 0;
    margin: 0 1rem;

    .item {
		  min-width: 100px;
		  min-height: 100px;
		  width: 100px;
		  height: 100px;
		  display: block;
		  margin: 0 .5rem;
		  border-radius: 2rem;
		  overflow: hidden;
		  position: relative;

		  &:first-child {
			  margin-right: auto;
			}

			&:last-child {
			  margin-left: 0;
			}

			.remove {
				position: absolute;
				top: .25rem;
				right: .25rem;
				cursor: pointer;
				color: #fff;
			}

		  .image {
			  background-size: cover;
			  background-position: center;
			  width: 100px;
			  height: 100px;
			  display: block;
			}
		}
	}
}


#cookies {
	border-radius: 0;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: linear-gradient(45deg, #ce2929, #ce2929, #ffc65d);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.5rem;
  border: none;
  z-index: 9;

  * {
	  color: #fff;
	  font-weight: 400;
	}

	div.button {
    margin-left: 1rem;
    text-align: right;
    display: table;
	}

	button {
    border-radius: .75rem;
    background: #e97f46;
    font-weight: 500;
    margin: 0;
    white-space: nowrap;
	}
}


@media (max-width: 1440px) {
	#top-search .categories.large .label:nth-child(-n+5) {
    display: none;
	}
}


@media (max-width: 1280px) {
	#top-search .categories.large .label:nth-child(-n+10) {
    display: none;
	}
	
	#items .left.column {
  	position: absolute;
    background: #fff;
    top: 0;
    left: 0;
    height: 100%;
    z-index: 10;
    visibility: hidden;
		overflow: hidden;
		display: none;
  }
}


@media (max-width: 1100px) {
	#top-search .categories.large .label:nth-child(-n+15) {
		display: none;
	}

	#top-menu {
		.right.menu {
			.text {
				display: none;
			}

			.item {
				margin: 0 .15rem !important;
				
				i {
					margin: 0;
				}
			}
		}
	}

	#user-directory .card {
		width: -webkit-calc(25% - 1rem);
		width: calc(25% - 1rem);
	}
}

@media (min-width: 1025px) {
  .mobile-only {
		display: none !important;
	}

	#mobile-menu, #blur {
		visibility: hidden !important;
	}

	html {
		overflow: visible !important;
	}
}

@media (max-width: 1024px) {
	#body {
		.cards.masonry {
		  grid-template-columns: repeat(3, minmax(auto, 1fr)) !important;
		}
	}

	#item-r-side-toggler {
		display: block;
	}

	#item .r-side {
		display: none;
		position: absolute;
		right: 0;
		top: 65px;
		z-index: 2;
		background: #fff;
	}

	.desktop-only {
		display: none !important;
	}


  #checkout-page {
	  .column.right, .column.left {
			width: 100% !important;
	  }

	  .column.right {
			margin-left: auto !important;
		  margin-right: 0 !important;
		}

	  th:nth-child(2), td:nth-child(2) {
		  border-left: 0;
		}
	}

	#top-menu .right.menu > .item {
		&.blog, &.help, &.categories, &.collection {
			display: none;
		}
	}
}


@media (max-width: 768px) {
	#top-search .categories.large .label:nth-child(-n+20) {
		display: none;
	}

	#support {
		.column {
			&.right {
				display: block;
				width: 100%;
				margin-top: 1rem;
			}
		}
	}

	#footer {
		margin: 0 !important;
	}

	#user-directory .card {
		width: -webkit-calc(33.3333333% - 1rem);
		width: calc(33.3333333% - 1rem);
	}
}


@media (max-width: 680px)
{
	#body {
		.cards.masonry {
		  grid-template-columns: repeat(2, minmax(auto, 1fr)) !important;;
		}
	}

	#top-menu {
		.right.menu .item {
			padding: 1rem .75rem;

			&.search-icon {
				display: flex;
			}

			&.dropdown.search .menu {
				left: 0;
			}
		}

		> .item.search {
			display: none;
		}
	}

	#mobile-search-bar {
		display: flex;
	}

	#posts {
		.social-buttons {
			i {
				margin-right: 0 !important;
			}

			span {
				display: none;
			}
		}
	}


	#pricing {
		.ten.wide.column {
			width: 100% !important;
    	padding: 1rem !important;
		}
	}
}


@media (max-width: 570px)
{
	#items .ui.four.doubling.cards {
		padding: 1 !important;
	}

	#top-menu {
		.right.menu {
			padding-right: 0 !important;
		}
	}

	#user-directory .card {
		width: -webkit-calc(50% - 1rem);
		width: calc(50% - 1rem);
	}
}


@media (max-width: 520px) {
	#top-search .categories.large .label:nth-child(-n+25) {
		display: none;
	}

	#item .l-side .top.menu {
		justify-content: normal;
		white-space: nowrap;
    flex-wrap: nowrap;
    overflow: auto;
	}

	#items .search.item {
		display: none;
	}

	#items .left-column-toggler {
		margin-left: auto;
	}

	.ui.doubling.cards {
		display: block;
		padding: 1rem !important;

		.card {
			display: block;
			width: 100% !important;
			margin: 0 !important;

			&:not(:first-child) {
				margin-top: 1rem !important;
			}

			.content.title {
			    white-space: normal !important;
			    overflow: visible;
			    text-overflow: initial;
			    text-align: left;
			    width: 100%;
			    display: block;
			}
		}
	}
	
	#page-title {
		.column {
    	width: 100% !important;
		}

		.content {
    	padding: 0;
		}

		.image {
    	display: none;
		}
	}

	#item .l-side .top.menu {
		.item.dropdown {
			display: flex;
		}

		.tabs {
			display: none !important;
		}
	}

	#item
  {
    .reviews, .support
    {
      .ui.image
      {
        display: none;
      }

      .content
      {
        padding-left: 0 !important;
      }
    }
	}
	
	.home-items .ui.four.doubling.cards {
		margin: 0 !important;
	}
}

@media (max-width: 510px)
{
	#body {
		.cards.masonry {
		  grid-template-columns: repeat(1, minmax(auto, 1fr)) !important;;
		}
	}
}

@media (max-width: 480px)
{
	#cookies {
		bottom: 70px;
		flex-wrap: wrap;

		div.button {
			margin-top: 1rem;
		}
	}

	#item {
		margin: auto !important;

		.l-side .row.menu {
    	margin: 0;
		}
	}

	#app {
		&:not(.home) {
			#top-menu {
				height: 65px;
			}

			#menu-cover {
				display: none;
			}

			#mobile-top-search {
				padding-bottom: 1rem;
	    	margin-top: -.25rem;
			}

			#mobile-top-search, #top-menu {
				background: #ea4444;
			}

			#checkout-page {
				margin: 0 auto !important;

				.cart-items .cart-item .image {
					display: none;
				}
			}

			#single-page {
				margin-top: 20px;

				.title-wrapper h1 {
					font-size: 1.8rem;
				}
			}

			#guest, #items {
				margin: 0 auto !important;
			}
		}
	}

	#user .purchases .titles > div, #guest .purchases .titles > div {
		font-size: 1.1rem;
		font-weight: 600;
	}

	.main.container {
		padding-bottom: 70px;
	}

	.home-items {
		padding-top: 0;
	}

	.selection-title .menu a {
		font-size: 1.5rem;
		margin: 0 !important;
	}

	#users-notif {
		font-size: 1.3rem;
		text-align: center;
	}

	#top-search, #menu-cover {
		margin-top: -120px; 

		form, .categories {
			display: none;
		}
	}

	#top-search {
		padding-top: 126px;
	}

	#top-menu {
		position: relative;

		.header.logo {
			img {
				max-width: 130px;
				min-width: auto;
		    width: 100%;
			}

			i {
			  display: block;
			  color: #901ab0;
			  font-size: 1.5rem;
			}
		}

		.dropdown, .search-icon {
			display: none !important;
		}
	}

	#mobile-menu-2 {
		display: flex;
	}

	#mobile-top-search {
		display: block;
	}

	#item .l-side .reviews .item.parent .content:first-child {
		div.right {
		  position: absolute;
		  top: 3.5rem;
		  left: 0;
		  display: block;
		  width: 100%;

		  span {
				padding: .25rem;
				margin-right: .5rem;
				background: #ffffff;
				font-size: .7rem;
				font-weight: bold;
				border-radius: .25rem;
		  }
		}

		.middle {
			padding: 0 0 0 1rem;
		}
	}

	#item .l-side .support .item.parent .content:first-child {
		.middle {
			white-space: nowrap;
	    width: 100%;
		}

		.right {
	    position: absolute;
	    right: .5rem;
	    top: .5rem;

	    span {
		    padding: .1rem .25rem;
		    background: white;
		    border-radius: .25rem;
		    font-size: .7rem;
		    white-space: nowrap;
	    }
		}
	}

	#posts {
		.social-buttons {
			button {
				padding-left: .25rem;
				padding-right: .25rem;
			}
		}
	}
}

@media (max-width: 400px) {
	#checkout-page .column.right {
		max-width: 100%;
	}

	#top-menu {
		.dropdown {
			&.notifications {
				.menu {
					left: -150px !important;
				}
			}
			&.cart { 
				.menu {
					left: 20px !important;
				}
			}
		}
	}

	#mobile-menu-2 {
		.item {
			font-size: .7rem;

			svg {
				width: 28px;
				height: 28px;
			}
		}
	}

	#user-directory .card {
		width: 100%;
	}
}