@font-face { 
	font-family: NotoSans; 
	src: local('NotoSans Italic'), url("../fonts/NotoSans-Italic.woff2") format('woff2'); 
    font-style: italic, oblique;
    font-display: swap;
	}
@font-face { 
    font-family: NotoSans; 
    src: local('NotoSans'), url("../fonts/NotoSans-Regular.woff2") format('woff2'); 
    font-weight: normal;
    font-display: swap; 
	}
@font-face { 
	font-family: NotoSans; 
	src: local('NotoSans Bold'), url("../fonts/NotoSans-Bold.woff2") format('woff2'); 
    font-weight: bold; 
    font-display: swap;
	}

/* @font-face { 
	font-family: NotoSans; 
	src: url("./fonts/NotoSans-BoldItalic.ttf"); 
	font-weight: bold;
	font-style: italic, oblique;
	} */
@font-face { 
	font-family: NotoSansCJK; 
	src: local('NotoSansCJK'), url("../fonts/NotoSansJP-Regular.woff2") format('woff2'); 
    font-weight: normal;
    font-display: swap;
	}
@font-face { 
	font-family: NotoSansCJK; 
	src: local('NotoSansCJK Bold'),url("../fonts/NotoSansJP-Bold.woff2") format('woff2'); 
    font-weight: bold;
    font-display: swap;
    }
@font-face {
    font-family: Consolas;
    src: local('Consolas'), url("../fonts/Consolas-Regular.woff2") format('woff2');
    font-weight: normal;
    font-display: swap;
}

@font-face {
    font-family: Consolas;
    src: local('Consolas Bold'), url("../fonts/Consolas-Bold.woff2") format('woff2');
    font-weight: bold;
    font-display: swap;
}


::selection {
    color: #000000;
    background: #fcebc2
}

.site-header {
    height: 140px;
    background-color: black;
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 100;
}

p, span {
    color: #d7d7d7;
    line-height: 28px;
    font-family: NotoSans, NotoSansCJK, sans-serif;
    margin: 0;
    font-size: 16px;
}

h1 {
    font-family: "Consolas", "Monaco", monospace;
    color: #fff;
    font-size: 42px;
    margin: auto 10px;
}

h2 {
    font-family: "Consolas", "Monaco", monospace;
    color: #fff;
    font-size: 34px;
    margin-bottom: calc(28px);
}

.post-content h2 {
    align-self: flex-start;
}

h3 {
    font-family: "Consolas", "Monaco", monospace;
    color: #fff;
    font-size: 28px;
    margin-bottom: calc(28px);
}

.post-content h3 {
    align-self: flex-start;
}

h4 {
    font-family: "Consolas", "Monaco", monospace;
    color: #fff;
    font-size: 22px;
    margin: 0;
}

.post-content h4 {
    align-self: flex-start;
}

h5 {
    font-family: "Consolas", "Monaco", monospace;
    color: #fff;
    font-size: 18px;
    margin: 0;
}

h6 {
    font-size: 14px;
    font-family: "Consolas", "Monaco", monospace;
    color: #fff;
}

ol, ul {        
    width: auto;   
    height: auto;
}

li {
    color: #d7d7d7;
    line-height: 28px;
    font-family: NotoSans, NotoSansCJK, sans-serif;
    margin: 0;
    font-size: 16px;
}

li::marker {
    font-weight: bold;
}


.header-useful-area {
    width: 86%;
    max-width: 1170px;
    height: 100%;
    position: relative;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.title-area {
    font-size: 52px;
    font-family: "Consolas", "Monaco", monospace;
    font-weight: bold;
    text-align: center;
    /* vertical-align: middle; */
    display: flex;
    line-height: 70px;
    margin: 0 auto;
    flex: 1;
    align-items: center;    
}

a {
    text-decoration: none;
    color: #FB6E2A;
}

.title-area a {
  text-shadow:                                                           
    0 0 5px #FB6E2A,                                                 
    0 0 30px #FB6E2A,
    0 0 60px #FB6E2A;
}

.highlight {
    margin-right: auto;
}

.highlight pre {
    /* border: 1px solid #FB6E2A; */
    /* border-radius: 3px; */
    /* box-shadow: 0 0 3px #FB6E2A; */
    background-color: #2e3538 !important;
    padding: 5px;
}

.highlight pre span {
    font-family: monospace;
}

code {
    color: #d7d7d7;
    line-height: 28px;
    font-family: monospace;
    margin: 0;
    font-size: 16px;
    background-color: #2e3538;
}

@keyframes flicker {                                                       
    0%   { filter: text-shadow(0 0 8px); opacity: 1; }                
    10%  { filter: text-shadow(0 0 4px); opacity: 0.8; }              
    20%  { filter: text-shadow(0 0 12px); opacity: 1; }               
    35%  { filter: text-shadow(0 0 6px); opacity: 0.9; }              
    50%  { filter: text-shadow(0 0 10px); opacity: 0.2; }               
    65%  { filter: text-shadow(0 0 3px); opacity: 0.7; }
    80%  { filter: text-shadow(0 0 14px); opacity: 1; }               
    90%  { filter: text-shadow(0 0 5px); opacity: 0.85; }             
    100% { filter: text-shadow(0 0 8px); opacity: 1; }                
}  

#title-highlight {
    color: #6400fa;
    text-shadow:                                                           
        0 0 5px #6400fa,                                               
        0 0 30px #6400fa,
        0 0 60px #6400fa;   
    font: inherit;
    animation: flicker 2.8s 5, flicker 4.7s 5 0.5s;
    
}

a:hover {
    color: #fbae6b;
}

a:hover #title-highlight {
    color: #a56aff;

}

.header-menu {
    display: flex;
    flex-direction: row;
    margin-top: auto;
    width: 100%;
    flex: 0 0 40px;
    justify-content: space-around;
}

.header-menu-item {
    /* margin: 10px; */
    align-content: center;
}

.header-menu-item a {
    color: #FB6E2A;
    font-size: 16px;
    font-family: Consolas, Monico, monospace;
    font-weight: 700;
    text-transform: uppercase;
    text-shadow:                                                           
        0 0 5px #FB6E2A,                                                 
        0 0 30px #FB6E2A,
        0 0 60px #FB6E2A;
    text-decoration: none;
}

.header-menu-item a:hover {
  color: #fbae6b;
}

figcaption {
    font-size: 13px;
    margin: 5px 0;
    font-family: NotoSans, NotoSansCJK, sans-serif;
    color: #AAAAAA;
}

.iframe-container {
    height: 500px;
    width: 120%;
    margin-top: 25px;
}

.iframe-container iframe {
    position: relative;
    height: 100%;
    width: 100%;
}

.content {
    /* position: absolute; */
    /* margin-top: 70px; */
    width: 100%;
    padding-top: 140px;
    padding-bottom: 190px;
    min-height: calc(100vh - 590px);
    /* 560 = 300 do footer + 100 do pad-top + 190 do pad-bottom*/
    margin-bottom: -300px;

}

.taxonomy-title {
    width:  calc(94% + 4px);
    margin: auto;
    max-width: 1170px;
}

.posts-grid {
    position: relative;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    align-content: flex-start;
    width: calc(94% + 4px);
    max-width: 1170px;
    /* height: 200px; */
    margin: auto;
    padding-top: 20px;
}

.taxonomy-grid {
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: start;
    align-items: start;
    align-content: flex-start;
    width: calc(94% + 4px);
    max-width: 1170px;
    /* height: 200px; */
    margin: auto;
    padding-top: 20px;
}

.taxonomy-text {
    flex: 0 1 calc(33% - 10px); 
    margin: 5px;   
    height: 50px;
    border: 1px solid #a56aff;
    border-radius: 6px;
    box-shadow: 0 0 6px inset #a56aff, 0 0 6px #a56aff;
    align-content: center;
}

.taxonomy-text:hover {
    background-color: #6400fa22;
}

.taxonomy-title {
    font-size: 22px;
    font-family: "Consolas", "Monaco", monospace;
    font-weight: bold;
    color: #FB6E2A;
    margin: 0 5px;
    text-shadow:                                                           
        0 0 4px #FB6E2A;    
}

.grid-sizer, .post-summary {
    width: 100%;
    /* min-width: 390px; */
    display: flex;
    min-height: 200px;
    background-color: black;
    float: left;
    margin-bottom: 10px;
    border: 1px solid #a56aff;
    border-radius: 6px;
    box-shadow: 0 0 6px inset #a56aff, 0 0 6px #a56aff;
    /* opacity: 50%; */
    /* position: absolute; */
    /* display: block;
    overflow: hidden;
    flex-grow: 1; */
    /* margin: 0 10px; */
}
.post-summary2 {
    height: 100px;
}

.post-summary-text {
    display: flex;
    flex-direction: column;
    margin: 0px 5px 0 10px;
    /* height: 100%; */
    /* margin: 5px 10px; */
    /* overflow-wrap: break-word; */
}

.post-summary:hover {
    background-color: #6400fa22;
}

.post-summary-summary {
    font-size: 16px;
    color: #fff;    
    flex: 2;
    /* margin: 10px 0 0 0; */
}

.post-summary-summary p {
    line-height: 24px;
    /* flex: 0 0 46%; */
}

.post-summary-title {
    font-size: 22px;
    font-family: "Consolas", "Monaco", monospace;
    font-weight: bold;
    color: #FB6E2A;
    margin: 5px 0 0 0;
    text-shadow:                                                           
        0 0 4px #FB6E2A;                                                 
        /* 0 0 60px #FB6E2A; */
    /* flex: 1; */

}


.post-summary-category {
    color: #AAAAAA;
    flex: 0 0 28px;
    /* margin: 5px 0; */
    text-transform: uppercase;
    font-weight: bold;
}

.post-summary-category span {
    font-size: 10px;
}

.post-summary-category a {
    margin-right: 10px;
    color: #d7d7d7; 
}

.post-summary-category a:hover {
    color: #fbae6b; 
}

img {
    max-width: 100%;
    max-height: 100%;
}

.post-summary-image {
    flex: 0 0 auto;
    /* height: calc(100% - 20px); */
    height: 200px;
    aspect-ratio: 1;
    margin: 10px; /* 20px / 2 */
    /*align-items: center; */
    /* overflow: hidden; */
    /* margin: 10px 10px; */
    
}

.post-summary-image img {
    /* margin: -120px 0px; */
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.post-summary-title p {
    margin: 0;
}

.post-summary-date-author {
    flex: 0 0 28px;
    margin-top: auto;
}

.post-summary-date {
    color: #AAAAAA;
    margin-right: 10px;
    font-weight: bold;
    font-size: 12px;
}

.post-summary-author {
    color: #FB6E2A;
    font-size: 13px;
}

/*
.post-summary2 {
    height: 100px;
    width: 300px;
    background-color: #FB6E2A;
    opacity: 50%;
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0 0px;
    flex-grow: 1;
    margin: 0 10px;
} */

.post-header {
    width: 100%;
    height: 570px;
    position: relative; 
    display: flex;
    align-items: center;
    justify-content: center;
}

.post-header-image {
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
    height: 100%;
    width: 100%;
    opacity: 75%;
    background-position: center center;
    background-color: #333333;
    position: absolute;
    z-index: 1;
}

.post-header-image-link {
    height: 100%;
    width: 100%;
    display: block;
}

.post-header-caption {
    background-color: black;
}

.post-header-caption p {
    font-size: 13px;
    margin: 0px 10px;
    text-align: center;
    font-family: NotoSans, NotoSansCJK, sans-serif;
    color: #AAAAAA;
    line-height: 20px;
}

.post-header-text {
    width: 800px;
    min-height: 250px;
    z-index: 10;
   /* margin: 0 auto; */
    padding: 20px auto;
    position: relative;
    /* backdrop-filter: blur(2px); */
    background-color: #000000aa;
    border-radius: 6px;
    border: 1px solid #a56aff;
    box-shadow: 0 0 6px inset #a56aff, 0 0 6px #a56aff;
    /* top: calc(50% - 90px); */
}

.post-header-category-date {
    height: 30px;
    width: 100%;
    font-size: 12px;
    margin: 0px 0;
    text-transform: uppercase;
    font-weight: bold;
    text-align: center;
    line-height: 30px;
}

.post-header-category-date span {
    margin-right: 15px;
    color: #ffffff;
    font-size: 12px;
}

.post-header-title {    
    width: 100%;
    min-height: calc(100% - 80px);
    position: absolute;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.post-header-title h1 {
  color: #a56aff;
  text-shadow: 0 0 30px #a56aff;
}

.post-header-author {
    height: 30px;
    width: 100%;
    font-size: 16px;
    text-align: center;
    position: absolute;
    bottom: 0;
}

.post-header-author span {
    margin-right: 20px;
}

.post-content {
    height: 100%;
    max-width: 850px;
    margin: 80px auto;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

.post-content p {
    margin-right: auto;
}

.post-content a {
    color: #FB6E2A;
}

.post-content a:hover {
    color: #fbae6b;
}
.post-content-image-original {
    max-width: 120%;
    /* height: 500px; */
    margin: 20px -9999px;
}

.post-content-image-original img {
    /* width: 100%; */
    /* padding: 0 300px; */
}

.post-content-image-small {
    width: 40%;
    /* height: 500px; */
    margin: 20px 0px;
}

.post-content-image-small img {
    width: 100%;
}

.post-content-image-medium {
    width: 70%;
    /* height: 500px; */
    margin: 20px 0px;
}

.post-content-image-medium img {
    width: 100%;
}

.post-content-image-large {
    width: 100%;
    margin: 20px 0px;
}

.post-content-image-large img {
    width: 100%;
    /* height: 500px; */
    /* margin: 30px -80px; */
}

.post-content-image-xlarge {
    width: 120%;
    margin: 20px 0px;
}

.post-content-image-xlarge img {
    width: 100%;
    /* height: 500px; */
    /* margin: 30px -80px; */
}

blockquote {
    background-color: #68757c59;
    margin: 20px;
    padding: 10px;
    /* color: #fff; */
    border-left: 3px solid #a56aff;
}

.post-tags {
    margin: 5px auto;
    width: 55%;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.post-tags p {
    font-size: 14px;
}

.post-tags-element {
    margin: 0 0 10px 10px;
    border: 2px solid #FB6E2A;
    border-radius: 6px;
    box-shadow: 0 0 6px inset #FB6E2A, 0 0 6px #FB6E2A;
    padding: 0 5px;
}

.post-tags-element a {
    color: #AAAAAA;
    font-size: 13px;
    font-family: NotoSans, NotoSansCJK, sans-serif;
    line-height: 24px;
}

.post-tags-element a:hover {
    color: #ffffff;
}

.post-tags-element:hover {
    background-color: #FB6E2A;
    border-color: transparent;
}

.comments-title {
    margin: 50px auto;
    width: 50%;
}

.comments-title p {
    font-size: 13px;
}

.check-this {
    width: 55%;
    /* height: 500px; */
    margin: 40px auto 20px auto;
}

.check-this-content {
    display: flex;
    margin: 0 auto;
    padding: 20px;
    flex-direction: row;
    /* justify-content: ; */
    /* width: 55%; */
    max-width: 830px;
    /* max-height: 500px; */
    background-color: #000;
    border-radius: 6px;
    border: 1px solid #a56aff;
    box-shadow: 0 0 6px inset #a56aff, 0 0 6px #a56aff;
    
}

.check-this-summary {
    width: 33.333%;
    margin-right: 15px;
}
z
.check-this-title {
    word-wrap: break-word;
}

.check-this-title h5 {
    word-wrap: break-word;
    color: #FB6E2A;
    text-shadow: 0 0 2px #FB6E2A;
}

.check-this-title h5:hover {
    color: #fbae6b;
}

.check-this-summary:nth-child(3){
    margin-right: 0;
}

.next-prev-post {
    width: 55%;
    height: 100px;
    display: flex;
    justify-content: space-between;
    margin: 150px auto 0 auto;
    
}

.next-prev-post-button {
    width: 48%;
    text-align: center;
    padding: auto 0;
    background-color: #000;
    border-radius: 6px;
    display: flex;
    border: 1px solid #a56aff;
    box-shadow: 0 0 2px inset #a56aff, 0 0 6px #a56aff;
}

.next-prev-post-button-hidden {
    background-color: transparent;
}

.prev-post-image {
    width: 40%;
    height: 100%;
    display: flex;
}

.prev-post-image img {
    width: 100%;
    object-fit: cover;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.next-prev-post-title {
    width: 60%;
    height: 100%;
    word-wrap: break-word;
    padding: 0 10px;
}

.next-prev-post-title p {
    font-size: 11px;
    line-height: 30px;
    color: #AAAAAA;
    text-transform: uppercase;
    font-weight: bold;
}

.next-prev-post-title h5 {
    overflow: hidden;
}

.next-prev-post-title-center {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 60px;
}

.next-post-image {
    width: 40%;
    height: 100%;
    display: flex;
}

.next-post-image img {
    width: 100%;
    object-fit: cover;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

.footer {
    display: flex;
    /* position: absolute; */
    width: 100%;
    bottom: 0;
    background-color: black;
    min-height: 270px;
    flex-direction: row;
    justify-content: space-around;
    flex-wrap: wrap;
    margin-top: 300px;
    padding-bottom: 0px;
}

.footer-element {
    width: 25%;
}

.footer-element-title {
    text-transform:  uppercase;
    width: 80%;
    margin: 0 auto;
    text-shadow: 0 0 6px;
}

.footer-element-content {
    font-size: 16px;
    width: 80%;
    margin: 0 auto;
    line-height: 24px;
}

.footer-element-content-flex {
    display: flex;
    /* position: absolute; */
    flex-direction: row;
    flex-wrap: wrap;
    width: 80%;
    max-height: calc(270px - 83px);
    margin: 0 auto;
    overflow-y: hidden;
}

.footer-tag {
    margin-right: 10px;
    border: 2px solid #FB6E2A;;
    box-shadow: 0 0 6px inset #FB6E2A, 0 0 6px #FB6E2A;
    border-radius: 6px;
    padding: 0 5px;
    margin: 5px 5px;
}

.footer-tag a {
    color: #AAAAAA;
    font-size: 13px;
    font-family: NotoSans, NotoSansCJK, sans-serif;
    line-height: 24px;
}

.footer-tag a:hover {
    color: #ffffff;
}

.footer-tag:hover {
    background-color: #FB6E2A;
    border-color: transparent;
}

.footer-meta {
    margin: 30px auto 10px auto;
    flex: 4 1 auto;
}

.footer-meta-text {
    font-size: 12px;
    text-align: center;
    line-height: 20px !important; 
}

body {
    background-color: #121516;
    min-height: 100%;
    margin: 0;
    position: relative;
}

html {
    font-size: 0px;
    height: 100%;
}

#commento {
    width: 50%;
    margin: 50px auto;
}

@media (max-width:1035px){
    .grid-sizer, .post-summary{
        width: 100%;
        
    }
    .posts-grid {
        width: calc(85% + 4px)
    }

    .post-summary-image {
        height: 20vw;
        margin: auto auto auto 10px;
    }

    .footer-element {   
        width: 50%;
    }
    .post-header {
        height: 400px;
    }
    .post-content, .post-tags, .check-this-content, .check-this, .next-prev-post, #commento, .comments-title {
        width: 70%;
    }
    .post-content-image-xlarge {
        width: 110%;
    }
    .post-content-image-large {
        width: 100%;
    }
    .post-content-image-medium {
        width: 70%;
    }
    .post-content-image-small {
        width: 40%;
    }

    .next-prev-post-title-center {
        height: 70px;
    }

    .next-prev-post-title p {
        height: 20px;
    }
    
}
@media (max-width:768px){
    .site-header {
        position: relative;
    }

    .title-area {
        font-size: 42px;
    }

    .header-menu-item a {
        font-size: 14px;
    }

    .content {
        padding-top: 20px;
    }

    .grid-sizer, .post-summary{
        width: 100%;
    }
    .posts-grid {
        width: calc(94% + 4px)
    }
    .post-summary-image {
        width: 0;
        margin: 0;
    }
    .footer-element {   
        width: 100%;
    }
    .post-header {
        height: 300px;
    }
    .post-header-title h1 {
        font-size: 34px;
    }
    .post-content, .post-tags, .check-this, #commento, .comments-title {
        width: 94%;
    }
    .post-content-image-xlarge {
        width: 100%;
        margin: 30px 0;
    }
    .post-content-image-large {
        width: 100%;
    }
    .post-content-image-medium {
        width: 100%;
    }
    .post-content-image-small {
        width: 100%;
    }

    .post-content-image-original {
        width: 100%;
    }
    .post-content-image-original img {
        width: 100%;
    }

    .iframe-container {
        width: 100%;
    }

    .check-this-content {
        /* margin: 5px; */
        padding: 3%;
        border-radius: 0;
        width: 94%;
    }

    .next-prev-post {
        width: 100%;
        height: 180px;
        flex-direction: column;
    }

    .next-prev-post-button {
        width: 100%;
        height: 86px;
    }

    .next-prev-post-title-center {
        height: 66px;
    }

    .next-post-image, .prev-post-image {
        width: 30%;
    }

    .next-prev-post-title {
        width: 70%;
    }

    .next-prev-post-title p {
        height: 20px;
    }

    .highlight {
        min-width: 0;
        max-width: 100%;
    }

    pre {
        overflow-x: auto;
    }


}