/*
Theme Name: itomi studio
Theme URI: http://www.itomi.studio
Version: 0.2
Author: Itomi
Author URI: http://www.itomi.it
Description: <p>bla bla.</p>
*/

@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@300;400;600&display=swap');

@font-face {
    font-family: 'bulevarregular';
    src: url('bulevar/bulevar-regular-webfont.eot');
    src: url('bulevar/bulevar-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('bulevar/bulevar-regular-webfont.woff2') format('woff2'),
         url('bulevar/bulevar-regular-webfont.woff') format('woff'),
         url('bulevar/bulevar-regular-webfont.ttf') format('truetype');
}

/* COOKIE DI MERDA */
.cky-revisit-bottom-left {display: none !important;}

*{
margin:0px;
padding:0px;
box-sizing: border-box;
}


/* KOMOREBI EFFECT */

.komorebi .word { display: inline-block; white-space: nowrap; }

.komorebi .char {
  position: relative;
  opacity: var(--o, 0);
  transition: opacity var(--t, .8s) cubic-bezier(.445, .05, .55, .95) var(--d, 0s);
}
.komorebi.is-in .char { opacity: 1; }

/* kanji: la lettera vera resta nel testo (invisibile), il kanji è sovrapposto */
.komorebi .char.kj { -webkit-text-fill-color: transparent; }
.komorebi .char.kj::after {
  content: attr(data-k);
  position: absolute; left: 0; right: 0; top: 50%;
  transform: translateY(-50%) scaleX(var(--sx, .7));
  text-align: center; white-space: nowrap;
  font-size: .85em; line-height: 1;
  font-family: "Hiragino Sans", "Yu Gothic", "Noto Sans JP", sans-serif;
  -webkit-text-fill-color: currentcolor;
}

@media (prefers-reduced-motion: reduce) {
  .komorebi .char { opacity: 1; transition: none; }
  .komorebi .char.kj { -webkit-text-fill-color: currentcolor; }
  .komorebi .char.kj::after { content: none; }
}

/* /KOMOREBI EFFECT */


@keyframes move {
    100% {
        transform: translate3d(0, 0, 1px) rotate(360deg);
    }
}

.background {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    background: #232323;
    overflow: hidden;
}

.background span {
    width: 20vmin;
    height: 20vmin;
    border-radius: 20vmin;
    backface-visibility: hidden;
    position: absolute;
    animation: move;
    animation-duration: 45;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}


.background span:nth-child(0) {
    color: #000;
    top: 48%;
    left: 59%;
    animation-duration: 52s;
    animation-delay: -30s;
    transform-origin: 12vw -6vh;
    box-shadow: 40vmin 0 5.21099338709156vmin currentColor;
}
.background span:nth-child(1) {
    color: #EC008C;
    top: 28%;
    left: 39%;
    animation-duration: 7s;
    animation-delay: -18s;
    transform-origin: -10vw -10vh;
    box-shadow: -40vmin 0 5.348445698038729vmin currentColor;
}
.background span:nth-child(2) {
    color: #000;
    top: 14%;
    left: 16%;
    animation-duration: 20s;
    animation-delay: -12s;
    transform-origin: -22vw 14vh;
    box-shadow: -40vmin 0 5.4271735726648265vmin currentColor;
}
.background span:nth-child(3) {
    color: #000;
    top: 84%;
    left: 3%;
    animation-duration: 52s;
    animation-delay: -20s;
    transform-origin: -24vw -2vh;
    box-shadow: 40vmin 0 5.215159566728413vmin currentColor;
}
.background span:nth-child(4) {
    color: #000;
    top: 51%;
    left: 2%;
    animation-duration: 29s;
    animation-delay: -28s;
    transform-origin: 9vw 1vh;
    box-shadow: -40vmin 0 5.858551733523196vmin currentColor;
}
.background span:nth-child(5) {
    color: #000;
    top: 89%;
    left: 97%;
    animation-duration: 20s;
    animation-delay: -47s;
    transform-origin: 18vw 15vh;
    box-shadow: -40vmin 0 5.3463609571875vmin currentColor;
}
.background span:nth-child(6) {
    color: #FFFB00;
    top: 40%;
    left: 91%;
    animation-duration: 46s;
    animation-delay: -46s;
    transform-origin: 3vw -20vh;
    box-shadow: -40vmin 0 5.756944103970321vmin currentColor;
}
.background span:nth-child(7) {
    color: #01CCB7;
    top: 49%;
    left: 82%;
    animation-duration: 37s;
    animation-delay: -48s;
    transform-origin: 3vw 12vh;
    box-shadow: 40vmin 0 5.600174866028842vmin currentColor;
}
.background span:nth-child(8) {
    color: #000;
    top: 63%;
    left: 77%;
    animation-duration: 33s;
    animation-delay: -9s;
    transform-origin: 10vw 1vh;
    box-shadow: 40vmin 0 5.373053480643192vmin currentColor;
}
.background span:nth-child(9) {
    color: #000;
    top: 56%;
    left: 98%;
    animation-duration: 52s;
    animation-delay: -23s;
    transform-origin: -23vw -9vh;
    box-shadow: 40vmin 0 5.453042175864671vmin currentColor;
}


#mask {
    background:rgba(255,29,37,1);
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100vw;
    height: 100vh;
    z-index: 100000000; 
}

.epicmask {
    -webkit-mask-image: url(images/itomi_mask.svg);
    mask-image: url(images/itomi_mask.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    -webkit-mask-position: top center;
    mask-position: top center;
    animation-name: mask_animation;
    animation-duration: 1s;
    animation-delay: 1s;
    animation-iteration-count: 1;
    animation-timing-function: ease-in;
    animation-fill-mode: forwards;
  }


  @keyframes mask_animation {
    from {
        -webkit-mask-size: 100%;
        mask-size: 100%;
    }
    to {
        -webkit-mask-size: 1000%;
        mask-size: 1000%;
    }
  } 

  @keyframes backmask_animation {
    from {
        opacity: 0.9;
    }
    to {
        opacity: 0;
    }
  }   



:root {
	--delay: 0;
	--duration: 1000ms;
	--iterations: 1;
  }

body {
	font-family: 'Roboto Mono', monospace;
  	background: #333;
  	font-size: 14px;
}

table.caratteristiche {
	width: 50%;
    border-left: 2px solid #555;
    padding-left: 10px;	
}

table.caratteristiche td { 
    padding: 5px 0px;
    text-transform: uppercase;
    font-size: 0.8em;
}


.entry p {
	padding-bottom:15px;
    line-height: 1.6em;
	color: #AAA;
    font-weight: 300;
}

.entry p.colonne {
    column-count: 2;
    column-gap: 50px;
}

.entry p.mezzacolonna {
    max-width: 50%;
    padding-right: 25px;
}

.entry p.mezzacolonnadx {
    padding-left: 50%;
}

p.testoevidenza {
    position: relative;
    font-size: 1.2em;
    font-weight: normal;
    padding: 0px 0px 20px 15px;
    color: #EC008C;
    border-left: 2px solid #EC008C;
    margin-bottom: 10px;
    line-height: 1.5em;
    margin-top: 15px;
}

p.testoevidenza::before {
    content: "";
    width: 2px;
    height: 10px;
    background: #FFFB00;
    position: absolute;
    left: -2px;
    top: -15px;
    z-index: 1;
}

p.bigtext {
    position: relative;
    font-size: 1.7em;
    line-height: 1.5em;
    margin: 15px 0px 15px 0px; 
    font-weight: 200;
}

p.bigtext::after {
    background: rgba(0, 204, 184, 0.9);
    content: "";
    display: block;
    width: 20px;
    height: 2px;
    position: absolute;
    left: -20px;
    top: -10px;
    z-index: 1;
}

p.bigtext::before {
    background: rgba(0, 204, 184, 0.9);
    content: "";
    display: block;
    width: 20px;
    height: 2px;
    position: absolute;
    left: -20px;
    bottom: 0px;
    z-index: 1;
}


div.entry a {
    text-decoration: none;
    color: #FFF;
    box-shadow: inset 0 -1px 0 0 #EC008C;
    transition-duration: 200ms;
 }

 div.entry a:hover {
     /* color: #FFFB00;
     background: #01CCB7; */
     text-decoration: none;
     color: #FFF;
     box-shadow: inset 0 -.5em 0 0 #EC008C;
 }

 div.widget a {
    box-shadow: none !important;
 }

  div.widget {
    margin-bottom: 100px;
 }
 

div.entry img {
	max-width: 100%;
	height: auto;
    margin-bottom: 15px;
}

div.entry img.size-full {
    margin: 0px -100px;
    max-width: calc(100% + 200px);  
}

div.entry img.size-medium {
    margin: 0;
    max-width: 50%;
    width: 50%;
}

.uppercase {
    text-transform: uppercase;
}

img {border : 0px;}

img.left
{
float:left;
padding:10px;
}


/* Structural
=========================================================================== */

#logo {
    cursor: pointer;
    position: absolute;
    left: 30px;
    top: 30px;
    background: url(images/itomi_studio_logo.svg) no-repeat;
    background-size: 150px 120px;
    width: 150px;
    height: 120px;
    z-index: 1000;
    transition-duration: 200ms;
}

.logo_hero {
    background: url(images/logo_hero.svg) no-repeat !important;
}

.logo_hero:hover {
    background: url(images/logo_hover.svg) no-repeat !important;
}


div.menu-main-menu-container {
    margin: 10px 0px 0px 50px;
}

#epic_page {
    position: relative;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}

#wrapper {
	position: relative;
	width: 100%;
	display: inline-block;
}

#wrapper::before {
    content: "";
    width: 13px;
    height: 2px;
    background: #01CCB7;
    position: absolute;
    right: 0px;
    top: -67px;
    z-index: 1;
}

#wrapper::after {
    content: "";
    width: 13px;
    height: 2px;
    background: #01CCB7;
    position: absolute;
    right: 0px;
    top: 0px;
    z-index: 1;
}

#header {
    width: auto;
    max-width: 1000px;
    padding: 50px 30px 30px 170px;
    margin: 0px auto;
    color: #333333;
    font-size: 1em;
    line-height: 1.5em;
    /* overflow: hidden; */
    position: relative;
    height: 150px;
}


body.hero_page #header {
    animation-name: header_animation;
    animation-duration: 1s;
    animation-delay: 2s;
    animation-iteration-count: 1;
    animation-timing-function: ease-in;
    animation-fill-mode: forwards;
    opacity: 0;
}
  
    @keyframes header_animation {
      from {
          opacity: 0;
      }
      to {
          opacity: 1;
      }
    }   

ul.menu {
	list-style-type: none;
	margin: 0;
	padding: 0;
	overflow: hidden;
    z-index: 1000;
}

ul.menu li {
    zoom: 1;
    display: inline-block;
    margin: 0px 0px 5px 0px;
  }

  ul.menu li a {
    font-size: 1.5em;
    display: inline-block;
    border-bottom: 2px solid rgba(0,0,0,0.10);
    color: #EC008C;
    text-align: center;
    margin: 0px 15px 30px 0px;
    padding-bottom: 3px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: bold;
    transition-duration: 200ms;
  }
  
  ul.menu li a:hover {
    border-bottom: 2px solid #01CCB7;
    color: #01CCB7;
  }

  ul.menu li.current-menu-item a {
    border-bottom: 2px solid yellow;
    color: #01CCB7;
  }

  li#menu-item-60 a {
    font-size: 1.1em;
  }

  li#menu-item-60 a:hover {
    border: none;
  }

  #footer div.menu-main-menu-container {
    margin: 10px 0px 0px 10px;
  }


body.hero_page ul.menu li a {
    color: #FFF;
}

body.hero_page   ul.menu li a:hover {
    border-bottom: 2px solid #01CCB7;
    color: yellow !important;
  }



#right {
	width: auto;
    background-color: #333;
    margin: 30px 0px 10px 0px;
    padding: 0px 30px 0px 30px;
}  

body.hero_page #right {
    margin: 0px 0px 10px 0px;
    padding: 0px 100px 100px 100px;    
}

#right::after {
    background: #EC008C;
    content: "";
    display: block;
    width: 5px;
    height: 2px;
    position: absolute;
    right: 30px;
    top: 0px;
    z-index: 1;
}

#footer{
	position: relative;
	display: inline-block;
    width: 100%;
    color: #333333;
    font-size: 1em;
    line-height: 1.5em;
    margin: 50px 0px 50px 0px;
    padding: 0px 35px 0px 35px;
}

#footer_credits {
    font-size: 0.75em;
    color: #333;
    color: rgba(255,255,255,0.3);
    margin: 40px;
    text-transform: uppercase;
}

#footer_credits a,
#footer_credits a:hover,
#footer_credits a:visited {
    color: #01CCB7;
}

#menu-footer-menu::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 10px;
    border-color: transparent transparent transparent #EC008C;
    position: absolute;
    left: 25px;
    top: -5px;
    z-index: 1;
}

#menu-footer-menu::after {
    background: #01CCB7;
    content: "";
    display: block;
    width: 40px;
    height: 2px;
    position: absolute;
    left: -5px;
    bottom: 0px;
    z-index: 1;
}

#footer::before {
    content: "";
    width: 10px;
    height: 2px;
    position: absolute;
    right: 0px;
    top: 80px;
    z-index: 1;
    background: #000;
}

#footer::after {
	background: #FFFB00;
    content: "";
    display: block;
    width: 2px;
    height: 40px;
    position: absolute;
    right: 35px;
    top: 0px;
    z-index: 1;
}


.post {
	margin-bottom: 20px;
	color:#333333;
}

div.posts-home {
    margin: 0px -5px;
}

.post-home {
    width: calc(25% - 10px);
    float: left;
    position: relative;
    margin: 0px 5px 6px 5px;
    bottom: 0px;
    transition-duration: 250ms;
}

div.post-home-big {
    width: calc(50% - 10px);
    float: left;
    position: relative;
    margin: 0px 5px 6px 5px;
    bottom: 0px;
    transition-duration: 250ms;
}	

div.post-home:hover,
div.post-home-big:hover {
    bottom: 5px;
}

.post-home-title {
    position: absolute;
    bottom: 4px;
    left: 0px;
    line-height: 1em;
    color: white;
    display: block;
}	

.post-home-title a {
    background: none;
	background: rgba(0,0,0,0.75);
    color: #FFFB00;
    text-decoration: none;
    text-transform: uppercase;
    padding: 10px;
    display: inline-block;
    position: relative;
	transition-duration: 200ms;
}

.post-home-big:hover .post-home-title a,
.post-home:hover .post-home-title a {
	color: #FFFB00;
    background: #01CCB7;
	padding-top: 30px;
	font-weight: bold;
}



.cont-top {
	height: 150px;
	background-color: white;
}

.cont-middle {
	height: 300px;
	background-color: gray;
}

.cont-bottom {
	height: 600px;
	background-color: black;
}


.instavideo {
    width: 100%;
    height: auto;
}

.post-insta::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 10;
    background: rgba(248, 199, 215, 0.7);
    transition-duration: 200ms;
}

.post-insta:hover::before {
    background: none;
}

.post-insta a {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 200px;
    height: 200px;
    z-index: 100;
}

.post-insta a:hover {
    background: rgba(1, 204, 183, 0.7);
}

div.instagram_icon {
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 40px;
    height: 40px;
    padding: 10px;
    z-index: 110;
}

div.instagram_icon span {
    padding-left: 4px;
    position: absolute;
    left: 30px;
    bottom: 12px;
    opacity: 0;
    font-weight: bold;
    transition-duration: 200ms;
}

.post-insta:hover div.instagram_icon span {
    opacity: 1;
}

.instagram-logo {
    path {
      fill: #333333;
    }

    .logo {
      fill: #333;
    }
  }

/* Headings, text
=========================================================================== */



.alignleft {
	float: left;
	margin-right: 10px;
}

.alignright {
	float: right;
	margin-left: 10px;
}

.imageframe img {
	border: 5px solid #333333;
	margin: 10px;
	margin-bottom: 20px;
}

.imagecaption {
	color:#333333;
	text-align:left;
}

.entry {
	color:#AAA;
}

body.single .entry {
    background: rgba(0,0,0,0.5);
    padding: 30px;
}

.entry ul {
	list-style-type: none;
}

.entry ul li {
	position: relative;
    margin: 0px 0px 10px 15px;
}

.entry ul li::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 10px;
    border-color: transparent transparent transparent #EC008C;
    position: absolute;
    left: -15px;
    top: 4px;
    z-index: 1;
}


.navigazione2 {
	font-size: 1em;
    color: #333333;
    width: 75px;
    height: 75px;
    line-height: 75px;    
    display: inline-block;
    text-align: center;
    background: #FFFFFF;
    border-radius: 100px;
	margin: 50px 10px 20px 0;
	font-weight: bold;
}

.navigazione2:hover{
	color: #FFFB00;
	background: #01CCB7;
}


.su100 {
margin-top: 100px;

}

.post-title {

}

.grigio {
color:#333333;
}

.art_category a {
color:#333333;
font-size: 0.8em;
text-decoration: none;
line-height: 1.0em;
}

.art_titolo {
font-size: 1.0em;
line-height: 0.9em;
}


.art_titolo a {
text-decoration: underline;
}

.grigio a {
color:#333333;
background: #FFFFFF;
text-decoration: none;
}


.grigio2 {
color:#333333;
}

.logoimg {
margin-bottom: 20px;
}


#wrapper h1 {
    font-size: 6em;
    margin-bottom: 10px;
    padding: 10px 10px;
    display: inline-block;
    position: relative;
    text-transform: uppercase;
    font-family: 'bulevarregular', 'Roboto Mono', monospace;
    line-height: 0.78em;
    color: #555555;
    background: #FFFB00;
    font-weight: normal;
}

#wrapper h1.buko {
    position: relative;
    font-size: 8em;
    padding: 15px 20px;
    border:none;
    min-height: 60px;
    line-height: 0.75em;
    margin: -60px 0px 30px 0px;
}  

#wrapper h1.buko::after {
    background: rgba(0, 204, 184, 0.9);
    content: "";
    display: block;
    width: 80%;
    height: 50%;
    position: absolute;
    left: 0px;
    bottom: -20px;
    z-index: 1;
}

#wrapper h1.buko::before {
    background: rgba(0, 204, 184, 0.9);
    content: "";
    display: block;
    width: 20px;
    height: 2px;
    position: absolute;
    left: 0px;
    bottom: 0px;
    z-index: 1;
}

#wrapper h1.home_motto {
    font-family: 'bulevarregular', 'Roboto Mono', monospace;    
    font-size: 14em;
    line-height: 0.78em;
    margin-bottom: 10px;
    padding: 30px 30px 25px 30px;
    display: inline-block;
    position: relative;
    text-transform: uppercase;
    color: #333;
    background: #FFFB00;
    opacity: 0.8;
    letter-spacing: -3px;
}

#wrapper h2 {
    font-size: 5em;
    margin-bottom: 10px;
    padding: 10px 10px;
    display: inline-block;
    position: relative;
    text-transform: uppercase;
    font-family: 'bulevarregular', 'Roboto Mono', monospace;
    line-height: 0.78em;
    color: #555555;
    background: #FFFB00;
    font-weight: normal;
}

#wrapper h3 {
    font-size: 3em;
    margin-bottom: 10px;
    padding: 10px 10px;
    display: inline-block;
    position: relative;
    text-transform: uppercase;
    font-family: 'bulevarregular', 'Roboto Mono', monospace;
    line-height: 0.78em;
    color: #FFFB00;
    background: rgba(0, 204, 184, 0.9);
    font-weight: normal;
}

h3::after {
	background: #01CCB7;
    content: "";
    display: block;
    width: 20px;
    height: 2px;
    position: absolute;
    left: -20px;
    bottom: -2px;
    z-index: 1;
}

h2::before {
    content: "";
    width: 2px;
    height: 10px;
    background: #FFFB00;
    position: absolute;
    left: 0px;
    top: -15px;
    z-index: 1;
}

h2::after {
	background: #01CCB7;
    content: "";
    display: block;
    width: 10px;
    height: 2px;
    position: absolute;
    left: -10px;
    bottom: -2px;
    z-index: 1;
}

.title_label {
    position: absolute;
    font-size: 0.6em;
    top: -60px;
    left: 30px;
    color: #FFFB00;
    transform: rotate(-90deg);
    transform-origin: top left;
}

.title_label::before {
    content: "";
    position: absolute;
    top: 0;
    left: -20px;
    height: 2px;
    width: 10px;
    background-color: #01CCB7;
}




.reveal-text,
.reveal-text::after {
  animation-delay: var(--animation-delay, 2s);
  animation-iteration-count: var(--iterations, 1);
  animation-duration: var(--duration, 800ms);
  animation-fill-mode: both;
  animation-timing-function: cubic-bezier(0.0, 0.0, 0.2, 1);
}

.reveal-text {
  --animation-delay: var(--delay, 0);
  --animation-duration: var(--duration, 800ms);
  --animation-iterations: var(--iterations, 1);
  position: relative;
  animation-name: clip-text;
  cursor: default;
}

.reveal-text::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
	height: 1000px;
	width: 100%;
    background-color: #000;
    transform: scaleX(0);
    transform-origin: 0 100%;
    pointer-events: none;
    animation-name: text-revealer;
}

.reveal-post,
.reveal-post::after {
  animation-delay: var(--animation-delay, 2s);
  animation-iteration-count: var(--iterations, 1);
  animation-duration: var(--duration, 800ms);
  animation-fill-mode: both;
  animation-timing-function: cubic-bezier(0.0, 0.0, 0.2, 1);
}

.reveal-post {
  --animation-delay: var(--delay, 0);
  --animation-duration: var(--duration, 800ms);
  --animation-iterations: var(--iterations, 1);
  position: relative;
  animation-name: clip-text;
  cursor: default;
}

.reveal-black,
.reveal-black::after {
  animation-delay: var(--animation-delay, 2s);
  animation-iteration-count: var(--iterations, 1);
  animation-duration: var(--duration, 800ms);
  animation-fill-mode: both;
  animation-timing-function: cubic-bezier(0.0, 0.0, 0.2, 1);
}

.reveal-black {
  --animation-delay: var(--delay, 0);
  --animation-duration: var(--duration, 800ms);
  --animation-iterations: var(--iterations, 1);
  position: relative;
  animation-name: clip-text;
  cursor: default;
}

.reveal-black::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
	height: 600px;
	width: 100%;
    background-color: #000;
    transform: scaleX(0);
    transform-origin: 0 50%;
    pointer-events: none;
    animation-name: text-revealer;
}


@keyframes clip-text {
  from {
    clip-path: inset(0 100% 0 0);
  }
  to {
    clip-path: inset(0 0 0 0);
  }
}


@keyframes text-revealer {
  0%, 50% {
    transform-origin: 0 50%;
  }
  
  60%, 100% {
    transform-origin: 100% 50%;   
  }

  
  60% {
    transform: scaleX(1);
  }
  
  100% {
    transform: scaleX(0);
  }
}

h1.page_title {
    font-family: 'Roboto Mono', monospace;
	font-size: 1em;
    color: #333333;
    padding: 15px 0px 20px 0px;
    color: #EC008C;
    text-transform: uppercase;
}




p.box_azzurro {
    max-width: 50%;
	font-size: 1.0em;
    font-weight: normal;
    padding-bottom: 20px;
    color: #333;
    background: #01CCB7;
    padding: 15px;
    margin-bottom: 10px;
}

.box_azzurro a { 
    color: #000000 !important;
    border-bottom: 2px solid #FFFB00;
    text-decoration: none;
}

.box_azzurro a:hover { 
    color: #FFFB00;
    border-bottom: 2px solid #FFFB00;
    text-decoration: none;
}



h4 {
    position: relative;
    font-size: 1.5em;
    font-weight: normal;
    padding: 0px 0px 20px 5px;
    color: #EC008C;
    border-left: 2px solid #EC008C;
    margin-bottom: 10px;
    line-height: 1em;
    margin-top: 15px;
}

h4::before {
    content: "";
    width: 2px;
    height: 10px;
    background: #FFFB00;
    position: absolute;
    left: -2px;
    top: -15px;
    z-index: 1;
}



ul li 
{
padding-left: 0;
background: none;
}



ol {
    counter-reset: li;
    padding-left: 15px;
    margin-top: 10px;
    position: relative;
}

ol li {
    line-height: 1em;
    margin: 0px 0px 15px 25px;
    text-transform: uppercase;
}

ol::before {
    content: "";
    width: 60px;
    height: 2px;
    background: #01CCB7;
    position: absolute;
    left: -30px;
    top: -10px;
    z-index: 1;
}

ol::after {
    content: "";
    width: 60px;
    height: 2px;
    background: #01CCB7;
    position: absolute;
    left: -30px;
    bottom: -10px;
    z-index: 1;
}



ol li::after {
    content: "";
    width: 30px;
    height: 1px;
    background: rgba(0,0,0,0.25);
    position: absolute;
    left: -65px;
    top: 10px;
    z-index: 1;
}


.button {
    background: #EC008C;
    color: #FFFFFF !important;
    font-size: 1.2em;
    padding: 20px 25px;
    border-radius: 14px;
    text-decoration: none;
    font-weight: bold;
    text-transform: uppercase;
    display: inline-block;
    text-align: center;
}

.button:hover {
    background: #01CCB7 !important;
    color: #FFFB00 !important;
    box-shadow: none !important;
}

.disabled {
  opacity: .6;
  cursor: default;
}

.button:hover {
    background: #EC008C !important;
    color: #FFFFFF !important;
}

code {
  margin: 5px 0;
  padding: 10px;
  text-align: left;
  display: block;
  overflow: auto;  
  font: 500 1em/1.5em 'Lucida Console', 'courier new', monospace ;
 
  background: #FAFAFA;
  color:#333333;
  border: 1px solid #f2f2f2;  
}

acronym {
  cursor: help;
  border-bottom: 1px solid #777;
}

blockquote {
    margin-left: 50px;
    padding: 15px 0 0 20px;
    border-left: 2px solid #999;
    margin-bottom: 15px;
}


fieldset {border: none}


p.hasdropcap::first-letter {
    text-transform: none;
    font-feature-settings: normal;
    font-style: normal;
    letter-spacing: normal;
    line-break: auto;
    line-height: 1em;
    font-size: 90px;
    overflow-wrap: normal;
    float: left;
    margin-top: -8px;
    padding: 0px 10px 0px 0px;
    color: #EC008C;
    font-weight: 800;
}

p.testopiccolo {
    position: relative;
    text-transform: uppercase;
    font-size: 0.7em;
}

p.testopiccolo::before {
    background: rgba(0, 204, 184, 0.9);
    content: "";
    display: block;
    width: 10px;
    height: 2px;
    position: absolute;
    left: -10px;
    top: -10px;
    z-index: 1;
}

/* ISSUE NUMBER */

div.issue_number {
    position: absolute;
    left: 10px;
    top: 10px;
    color: #FFF;    
}

div.issue_number::before {
    content: "";
    width: 10px;
    height: 2px;
    border: none;
    position: absolute;
    background: #FFF;
    left: -10px;
    top: 29px;
    z-index: 1;
}

.issue_number_single {
    display: inline-block;
    position: relative;
    margin-left: 10px;
    font-size: 1.3em;
    color: #000;
    background: #FFF;
    padding: 1px 5px;
}

div.issue_number_single::before {
    content: "";
    width: 2px;
    height: 20px;
    border: none;
    position: absolute;
    background: #EC008C;
    left: -10px;
    top: -20px;
    z-index: 1;
}

div.issue_number_index {
    position: relative;
    color: #000;
    display: inline-block;
    margin-right: 10px;
    background: #FFF;
    padding: 1px 5px;
}

/* HERO PRODUCT */

body.hero_page {
    background-color: #CCCCCC;  
}

div.hero_container {
    position: relative;
    background-color: #EC008C;
    width: 100%;
    height: 100vh;    
    margin: 0 auto;  
}

div.hero_container_back {
    position: absolute;
    width: 100%;
    height: 400px;
    background: linear-gradient(180deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0) 100%);
}

div.hero_product {
	position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100vh;
    background-repeat: no-repeat;
	background-position: center;
    background-size: cover;
    background-color: #EC008C;
}

.wrapper_product {
	top: 25vh !important;
}

body.hero_page  ul#menu-header-menu li a {
    color: #FFFB00;
}


div.wp-caption {
    max-width: 100%;
}

div.wp-caption img  {
    margin-bottom: 10px;
}

p.wp-caption-text {
    position: relative;
    margin: 0px;
    border-top: 2px solid #AAA;
    padding-top: 10px;
    color: #888;
    text-transform: uppercase;
    font-size: 0.9em;
    line-height: 1.3em;
}

p.wp-caption-text::after {
	background: #01CCB7;
    content: "";
    display: block;
    width: 10px;
    height: 2px;
    position: absolute;
    left: -10px;
    bottom: 0px;
    z-index: 1;
}


/* SOLDOUT */

div.soldout {
    color: #FFFB00;
    background: #01CCB7;
    position: absolute;
    right: 0px;
    top: 0px;
    padding: 5px 10px; 
}


/* form elements */

div.entry input, div.entry textarea {
	font-family: 'Roboto Mono', monospace;
	font-size: 1em;
	background: #333;
	color: #FFFB00;
	width: 100%;
	max-width: 400px;
    height: 20px;
    padding: 20px;
    border: solid 5px #FFFB00;
}

div.entry input {
    line-height: 10px;
    height: 60px;
}

div.emaillist {
    padding: 20px;
    padding-bottom: 5px;
	background-image: linear-gradient(45deg, #01ccb7 25%, #fffb00 25%, #fffb00 50%, #01ccb7 50%, #01ccb7 75%, #fffb00 75%, #fffb00 100%);
	background-size: 28.28px 28.28px;
    max-width: 50%;
    margin-bottom: 50px;
}

div.emaillist input,
div.emaillist textarea {
	display: block;
  	margin-right: auto;
  	margin-left: auto;
    margin-bottom: 15px;
}	  

div.emaillist input[type=checkbox] {
    width: 25px;
    float: left;
    margin: 0px 10px 0px 5px;
}

input[type=button], input[type=submit], input[type=reset] { 
	font-family: 'Roboto Mono', monospace;
	font-size: 1em;
	background: #01CCB7 !important;
    height: 50px;
    padding: 10px;
    color: #333;
	max-width: 400px;
	text-transform: uppercase;
	font-weight: bold;
}

input[type=button]:hover, input[type=submit]:hover, input[type=reset]:hover { 
	color: #FFFFFF;
    background: #EC008C !important;
}

.es-field-wrap {
    margin-bottom: 5px ;
}

.es-field-wrap label {
    padding: 0px;
}

span.es_subscription_message.success {
	display: inline-block;
    background-color: #008000;
	color: #FFF;
    padding: 20px;
	width: 100%;
	margin: 20px 0px;
}

span.es_subscription_message.error {
	display: inline-block;
    background-color: #FF0000;
	color: #FFF;
    padding: 20px;
	width: 100%;
	margin: 20px 0px;
}

label 
{
display:block;
padding: 5px 0
}

.grigioscu {
	color: #333333;
}

input#submit
{
background:#333333;
color:#333333;
}

.taxonomy-description {
    margin-bottom: 30px;
}

.wp-video-shortcode {
    width: 100%;
    margin-top: 30px;
    height: 100%;
}



/**************************************************************************
 + AUTORE
 **************************************************************************/

.autore {
    margin-top: 50px;
    display: inline-block;
    position: relative;
    width: 50%;
    border: 2px solid #CCCCCC;
}

.autore::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 0;
    border-color: #CCCCCC transparent transparent transparent;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 1;
}

.autore::after {
    background: #01CCB7;
    content: "";
    display: block;
    width: 60px;
    height: 2px;
    position: absolute;
    left: 0px;
    bottom: -2px;
    z-index: 1;
}

.autore_nome {
    position: relative;
    float: left;
    margin: 34px 0px 0px 70px;
    height: 30px;
    text-transform: uppercase;
}

.autore_nome span,
.post_data span {
    color: #999;
    position: absolute;
    left: 0px;
    top: -20px;   
}

.autore_avatar img {
    position: absolute;
    left: 10px;
    top: 10px;
    width: 50px;
    height: 50px;
    border-radius: 50px;
}

.post_data {
    position: relative;
    float: left;
    margin: 34px 0px 0px 30px;
    height: 50px;
    text-transform: uppercase;
}



/**************************************************************************
 +Comments
 **************************************************************************/
.commentsblock{
	margin:0.5em;
	padding:1em;
font-size:1.1em;

}
.commentsblock textarea{
	width:410px;
}
.commentsblock input, .commentsblock textarea{
	border:1px solid #d1d1d1;
}
.commentsblock textarea:focus{
	background:#eee;
	border:1px solid #a1a1a1;
}
.commentsblock textarea:focus, .commentsblock input:focus{
	background:#eee;
	border:1px solid #a1a1a1;
}
.commentauthor{
	display:block;
	font-size:1.5em;
}
ol.commentlist{
	color:#333333;
	list-style-type:none;
	margin:0;
	margin-top:1.5em;
	padding:0;
}
.commentlist li{
	margin-bottom:0.5em;
	padding:0.5em 1em;
}
.alt{
	background:#434343;
	border:1px solid #383838;
	padding:0.5em;
}
h3#comments{
	font-size:1.6em;
}

.author
{
	margin-left:10px;
	font-size:10px;
}




div.thumb_index img {
	width: 100%;
	height: auto;
}


/* TOP BUTTON */

#top_button {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 99;
    border: none;
    outline: none;
    background-color: #01CCB7;
    color: white;
    cursor: pointer;
    padding: 20px;
    border-radius: 20px;
  }

  #top_button::after {
      content: "";
      position: absolute;
      top: 15px;
      left: 15px;
      width: 0;
      height: 0;
      border-left: 5px solid transparent;
      border-right: 5px solid transparent;
      border-bottom: 9px solid #FFFB00;
  }
  
  #top_button:hover {
    background-color: #FFFB00; /* Add a dark-grey background on hover */
  }

  #top_button:hover::after {
    border-bottom: 9px solid #000;
}


/* GALLERY */

.gallery-item {
	float: left;
	margin-top: 10px;
	text-align: center;
	width: 23% !important;
	margin-right: 2%;
}

.gallery-item a {
	display: inline-block;
}

.gallery-item img {
	border: 5px solid #FFF !important;
}

.gallery-item img:hover {
	border: 5px solid #EC008C !important;
}

/* COLONNE */

div.colonnar {
    width: 49%;
    margin-left: 1%;
    float: right;
}

div.colonnal {
    width: 49%;
    margin-right: 1%;
    float: left;
}



/* AMAZON */

div.appip-block-wrapper * {
    font-size: 14px !important;
    font-size: 1em !important;
    text-transform: uppercase;
}

[class*="amazon-template--"],
.appip-block-wrapper .amazon-product-table {
    font-family: inherit !important;
}

h2.amazon-asin-title {
    max-width: 100%;
    background: none;
    margin: 0px !important;
    padding: 0px !important;
}


.amazon-divider {
    border-top: none !important;
    margin: 0.5em auto;
}

.appip-block-wrapper {
    clear: both;
    border: 2px solid #b5815065;
}

.amazon-list-price-label, .amazon-new-label, .amazon-used-label {
    font-weight: normal !important;
}

.amazon-new {
    color: #EC008C !important;
    font-weight: normal !important;
}

.appip-block-wrapper .amazon-product-table {
}    

div.appip-block-wrapper p {
    display: none;
}

.amazon-buying {
    text-align: left;
    box-sizing: border-box;
    float: left;
    max-width: 73%;
    width: 100%;
    border-left: 2px solid #b5815065 !important;
    padding-left: 1em;
}

a.amazon__price--button--style, a.amazon__price--button--style:visited {
    background-color: #EC008C !important;
    -moz-transition: all .1s ease !important;
    -webkit-transition: all .1s ease !important;
    transition: all .1s ease !important;    
}

a.amazon__price--button--style:hover {
    background-color: #01CCB7 !important;
}

span.asin-title {
    overflow: hidden;
    height: 70px;
    display: block; 
}

.amazon-dates a {
    margin: 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    font-size: 0.9em !important;
    border-radius: 10px;
    text-align: center;
}

/* 
NAVIGATION 
*/


.navigazione2 {
	font-size: 1em;
    color: #333333;
    width: 75px;
    height: 75px;
    line-height: 75px;    
    display: inline-block;
    text-align: center;
    background: #FFFFFF;
    border-radius: 100px;
	margin: 50px 10px 20px 0;
	font-weight: bold;
}

.navigazione2:hover{
	color: #FFFB00;
	background: #01CCB7;
}

div.navigation {
    position: relative;
    margin: 10px 0px 30px 0px;
    background: #D3A270;
    text-transform: uppercase;
    font-size: 1em;
    padding: 10px 0px 10px 0px;
    text-align: right;
    color: #936444;
    height: 40px;
}

div.navigation::after {
    position: absolute;
    content: "";
    width: 2px;
    height: 30px;
    background: #EAC5A3;
    left: 50%;
    top: 5px;
}

div.navigation a {
    display: block;
    background: #EC008C;
    color: #FFFFFF;
    line-height: 30px;
    height: 30px;
    text-decoration: none;
    text-align: left;
    padding-left: 10px;
    max-width: 150px;
    inline-size: 150px; 
    overflow: hidden;   
    overflow-wrap: break-word;
    hyphens: manual;     
}

div.nav_prev {
    position: absolute;
    left: 5px;
    top: 5px;
}

div.nav_prev a::before {
    content: "";
    position: absolute;
    left: -15px;
    top: 0px;
    width: 0; 
    height: 0; 
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent; 
    border-right: 15px solid #EC008C; 
}

div.nav_prev a:hover::before {
    border-right-color: #01CCB7; 
}


div.nav_next {
    position: absolute;
    right: 5px;
    top: 5px;
}

div.nav_next a::before {
    content: "";
    position: absolute;
    right: -15px;
    top: 0px;
    width: 0; 
    height: 0; 
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 15px solid #EC008C; 
}

div.nav_next a:hover::before {
    border-left-color: #01CCB7; 
}


div.navigation a:hover {
    color: #FFFB00;
    background: #01CCB7;
}


/* SEARCH  */

#ajaxsearchlite1 .probox .proinput input, div.asl_w .probox .proinput input {
    font-size: 14px !important;
}

div#search {
    height: 0px;
    transition-duration: 200ms;
    overflow: hidden;
    margin-left: 50px;
}

#menu-item-272 {
    float: right;
}

#menu-item-272 a {
    border: none;
    font-size: 0.85em;
}

#searchbutton {
    cursor: pointer;
}

#ajaxsearchlite1 .probox, div.asl_w .probox {
    border: 2px solid #EC008C !important;
    border-radius: 0px !important;
}

div.asl_w .probox .promagnifier .innericon svg {
    fill: #EC008C !important;
}

.ajax-load-more-wrap.infinite>.alm-btn-wrap button.alm-load-more-btn {
    width: 70px !important;
    background-color: #FFFFFF !important;
}

div.asl_w .probox .prosettings .innericon svg {
    fill: #EC008C !important;
}

div.asl_s.searchsettings {
    border-radius: 0px !important;
    box-shadow: none !important;
    border: 2px solid #EC008C !important;
    background: #FFF !important;
}


/* AJAX INFINITE SCROLL */

button.ajaxloadmore {
    font-family: 'Roboto Mono', monospace !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    background: #EC008C !important;
    transition-duration: 200ms !important;
}

button.ajaxloadmore:hover {
    color: #FFFB00 !important;
    background: #01CCB7 !important;
}

button.done,
button.done:hover {
    background: transparent !important; 
    color: #936444 !important; 
    border: 2px solid #936444 !important; 
}


/* VIDEOS */



.video_box {
    position: relative;
    margin: 0px 0px 30px 0px;
    padding-bottom: 56.25%; /* proportion value to aspect ratio 16:9 (9 / 16 = 0.5625 or 56.25%) */
    height: 0;
    overflow: hidden;
}

.video_box iframe {
    position: absolute;
    top: 0; 
    left: 0;
    width: 100%;
    height: 100%;
}



/* ????????????????????????????????????????????????????????????
FOOTNOTES - NOTE A PIE PAGINA
???????????????????????????????????????????????????????????? */

ul.modern-footnotes-list {
    font-size: 1em;
    color: #777;
    font-weight: 300;
}

ul.modern-footnotes-list li::before {
    content: "";
    width: 10px;
    height: 1px;
    border: none;
    position: absolute;
    background: #000;
    left: -15px;
    top: 7px;
    z-index: 1;
}




/* ????????????????????????????????????????????????????????????

				RESPONSIVE DI STOCAZZOOOOO 

???????????????????????????????????????????????????????????? */

@media screen and (max-width: 1024px) {

    div.entry img.size-full {
        margin: 0px -20px;
        max-width: calc(100% + 40px);
    }    

    body.hero_page #right {
        margin: 0px 0px 10px 0px;
        padding: 0px 60px 0px 60px;    
    }

    #wrapper h1.home_motto {
        font-size: 12em;
        padding: 20px 20px 15px 20px;

    }


@media screen and (max-width: 782px) {

    body.hero_page #right {
        margin: 0px 0px 10px 0px;
        padding: 0px 20px 0px 20px;    
    }  

    .autore {
        width: 100%;
    }

    
    #top_button {
        left: auto;
        right: 10px;
    }
}


/*--------------------------------------------------------------
2.0 - Smartphone (any)
--------------------------------------------------------------*/

@media only screen and (max-width: 480px) {
	

	table.caratteristiche {
		width: 100%;
	}	


    #footer_credits {
        margin: 20px;
    }    

    div.post-home-big .post-home-title a {
        font-size: 2em;
        line-height: 1em;
    }    

    div.wp-caption {
        width: 100% !important;
        float: none;
        margin: 0px 0px 15px 0px;    
    }

    div.wp-caption img {
        width: 100%;
    }

    .post_data {
        margin: 34px 0px 0px 20px;
        height: 40px;
    }

    div#search {
        margin-left: 0px;
    }

    #wrapper h1.home_motto {
        font-size: 6em;
        padding: 10px 10px 5px 10px;
    }

    div.menu-main-menu-container {
        margin: 0px;
    }

    .entry p {
        font-weight: 400;
        font-size: 1.1em;
    }

    #wrapper h1.buko {
        position: relative;
        font-size: 4.5em;
        padding: 15px 20px;
        border:none;
        min-height: 40px;
        line-height: 1em;
        margin: -40px 0px 30px 0px;
    } 

    #wrapper h2 {
        font-size: 3.5em;    
    }

    #wrapper h3 {
        font-size: 2.5em;    
    }

    .autore {
        width: 100%;
    }

    h2, 
    div.emaillist {
        max-width: 100%;
    }
    
    .entry p.colonne {
        column-count: 1;
        column-gap: 0px;
    }

    .entry p.mezzacolonna {
        max-width: 100%;
        padding-right: 0px;
    }

    .entry p.mezzacolonnadx {
        max-width: 100%;
        padding-left: 0px;
    }
        
	
	#logo,
    #logo_hero {
        position: absolute;
        left: 0px;
        top: 25px;
        background-size: 100px 80px;
        width: 100px;
        height: 80px;
        z-index: 1000;
	}	

	#logo:hover,
    #logo_hero:hover {
        top: 25px;
    }

    #header {
            padding: 110px 0px 0px 15px;
            margin: 0px 0px 40px 20px;
            width: calc(100% - 41px);
    }

	div.post-home {
        width: calc(50% - 10px);
        float: left;
        position: relative;
        margin: 0px 5px 6px 5px;
        overflow: hidden;
	}		

	div.post-home-big {
        width: calc(100% - 10px);
        float: left;
        position: relative;
        margin: 0px 5px 6px 5px;
	}	
    	

	#right {
		padding: 0px 20px 0px 20px;
        margin: 10px 0px 10px 0px;
	}



    p.bigtext { 
		font-size: 1.4em;
        font-weight: 400;
	}


    #right::after {
        right: 20px;
    } 

    #footer::after {
        right: 20px;
    }      

    a.button {
        min-width: 100%;
    }

    p.box_azzurro {
        max-width: 100%;
        width: 100%;
    }

    ul.menu li a {
        margin: 0px 10px 30px 0px;
        font-size: 1.1em;  
        padding-bottom: 0px;  
    }

    #menu-item-272 a {
        border: none;
        font-size: 0.75em;
    }    

}/* Fine Smartphone */


/*--------------------------------------------------------------
3.0 - iPhone
--------------------------------------------------------------*/
@media only screen and (max-width: 380px) {

	.post-home, .post-home-big {
        width: calc(100% - 10px) !important;
        float: left;
        position: relative;
        margin-right: 0px;
        margin-bottom: 6px;
	}

  
					
}

/*--------------------------------------------------------------
3.0 - iPhone
--------------------------------------------------------------*/
@media only screen and (max-width: 320px) {

    ul.menu li a {
        margin: 0px 5px 20px 0px;
    }
    
}