/*!
Theme Name: perspectyva
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: perspectyva
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

perspectyva is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
summary,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    border: 0;
}
html {
    line-height: 1;
}
table {
    border-spacing: 0;
    border-collapse: collapse;
}
caption,
td,
th {
    font-weight: 400;
    text-align: left;
    vertical-align: middle;
}
blockquote,
q {
    quotes: none;
}
blockquote:after,
blockquote:before,
q:after,
q:before {
    content: "";
    content: none;
}
a img {
    border: none;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block;
}
*,
*:after,
*:before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
img {
    display: inline-block;
    max-width: 100%;
}
a,
button {
    cursor: pointer;
}
.b,
.strong,
b,
strong {
    font-weight: 700;
}

body {
	font-size: 16px;
	font-family: "Roboto", Sans-serif;
	font-weight: 400;
	line-height: 1.3;
}


/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/* CONTAINER  */

.container {
    position: relative;
    min-height: 1px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
}
@media (min-width: 768px) {
    .container {
        width: 750px;
    }
}
@media (min-width: 1025px) {
    .container {
        width: 970px;
    }
}
@media (min-width: 1200px) {
    .container {
        width: 1170px;
    }
}
.row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}


/* NAVIGATION  */

.nav {
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    z-index: 100;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #fff;
    padding-top: 15px;
    padding-bottom: 15px;
    box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);
}
.nav__row {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
@media (max-width: 1024px) {
    .nav {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: 45px;
        -webkit-box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);
        box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        padding: 0;
    }
    .nav__container {
        height: 100%;
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }
    .nav__row {
        height: 100%;
    }
}
.nav__menu {
    -webkit-overflow-scrolling: touch;
}
@media (max-width: 1024px) {
    .nav__menu {
        position: fixed;
	    z-index: -1;
	    top: 45px;
	    left: 0;
	    overflow-y: auto;
	    width: 270px;
	    height: 100%;
	    padding: 0px 0 230px 0;
	    -webkit-transition: all 0.5s ease;
	    -o-transition: all 0.5s ease;
	    transition: all 0.5s ease;
	    -webkit-transform: translateZ(0) translateX(-120%);
	    transform: translateZ(0) translateX(-120%);
	    background-color: #fff;
    }
    .nav__menu_active {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
}
@media (min-width: 1025px) {
    .nav__menu .nav__options {
        display: none;
    }
}
.nav__addition ul,
.nav__menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.nav__menu ul li {
    position: relative;
    display: block;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.nav__menu ul li a {
    font-size: 14px;
    position: relative;
    display: block;
    text-decoration: none;
    color: #000;
}
@media (max-width: 1024px) {
    .nav__menu ul li {
        margin-bottom: 10px;
    }
    .nav__menu ul li a {
        padding: 10px 15px;
        color: #000;
    }
    .nav__menu ul li.current-menu-item > a {
        color: #000;
        background-color: var( --e-global-color-primary );
    }
}
@media (min-width: 1025px) {
    .nav__menu ul li {
        display: inline-block;
        vertical-align: middle;
    }
    .nav__menu ul li:not(:last-child) {
        margin-right: 15px;
    }
    .nav__menu ul li a {
        padding-top: 2px;
        padding-bottom: 2px;
    }
    .nav__menu ul li a:after,
    .nav__menu ul li a:before {
        position: absolute;
        bottom: -2px;
        width: 0;
        height: 2px;
        content: "";
        background-color: var( --e-global-color-primary );
    }
    .nav__menu ul li a:before {
        left: 0;
    }
    .nav__menu ul li a:after {
        right: 0;
        -webkit-transition: width 0.8s cubic-bezier(0.22, 0.61, 0.36, 1);
        -o-transition: width 0.8s cubic-bezier(0.22, 0.61, 0.36, 1);
        transition: width 0.8s cubic-bezier(0.22, 0.61, 0.36, 1);
    }
    .nav__menu ul li a:hover:before {
        width: 100%;
        -webkit-transition: width 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
        -o-transition: width 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
        transition: width 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
    }
    .nav__menu ul li a:hover:after {
        width: 100%;
        -webkit-transition: 0s;
        -o-transition: 0s;
        transition: 0s;
        background-color: transparent;
    }
    .nav__menu ul li.current-menu-item a:before,
    .nav__menu ul li.current-menu-parent > a:before {
        width: 100%;
    }
}
.nav__menu li.menu-item-has-children li {
    width: 100%;
    margin-right: 0;
}
@media (max-width: 1024px) {
    .nav__menu li.menu-item-has-children > ul {
        margin-top: 10px;
        padding-left: 10px;
    }
}
@media (min-width: 1025px) {
    .nav__menu .menu > li.menu-item-has-children > ul {
        position: absolute;
        z-index: -1;
        top: 100%;
        left: 0;
        display: none;
        visibility: hidden;
        width: 250px;
        -webkit-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        transition: all 0.5s ease;
        opacity: 0;
        -webkit-box-shadow: 0 14px 21px 0 rgba(0, 34, 78, 0.18);
        box-shadow: 0 14px 21px 0 rgba(0, 34, 78, 0.18);
    }
    .nav__menu li.menu-item-has-children > ul a {
        padding: 10px;
        -webkit-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        transition: all 0.5s ease;
        color: #00306c;
        background-color: #fff;
    }
    .nav__menu li.menu-item-has-children > ul a:hover,
    .nav__menu li.menu-item-has-children > ul li.current-menu-item a {
        color: #fff;
        background-color: #00306c;
    }
}
@media (min-width: 1025px) {
    .nav__menu li.menu-item-has-children:hover > ul {
        z-index: 1;
        display: block;
        visibility: visible;
        opacity: 1;
    }
}
.nav__menu .sub-menu .sub-menu li > a {
    padding-left: 30px;
}
.nav__logo {
    font-size: 0;
}
@media (max-width: 1024px) {
    .nav__logo {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
}
.nav__logo-content {
    display: inline-block;
}
.custom-logo-link img {
	height: auto;
}
.nav__logo img {
    vertical-align: middle;
    max-width: 100px;

}
@media (max-width: 1024px) {
    .nav__logo img {
        max-height: 35px;
    }
}

.nav__menu-translations ul {
    display: flex;
}

@media (min-width: 1025px) {
    .nav__menu-inner {
        display: flex;
        grid-gap: 30px;
        align-items: center;
    }
}

.nav__addition .widget {
	margin: 0;
}

.nav__addition ul {
	display: flex;
	align-items: center;
	font-size: 0;
	gap: 8px;
}

.hamburger {
    position: relative;
    z-index: 100;
    margin-right: 15px;
    padding: 0;
    cursor: pointer;
    border: none;
    outline: 0;
    background-color: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-tap-highlight-color: transparent;
}
.hamburger,
.hamburger__lines,
.hamburger__text {
    display: inline-block;
    vertical-align: middle;
}
.hamburger,
.hamburger__lines,
.hamburger__lines span {
    -webkit-transition: 0.25s ease-in-out;
    -o-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out;
}
.hamburger__lines {
    position: relative;
    overflow: hidden;
    width: 30px;
    height: 28px;
}
.hamburger__lines span {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    border-radius: 5px;
    background-color: #000;
}
.hamburger__text {
    font-size: 18px;
    font-weight: 700;
    margin-left: 15px;
    text-transform: uppercase;
    color: #fff;
}
.hamburger__lines span:nth-child(1) {
    top: 0;
}
.hamburger__lines span:nth-child(2),
.hamburger__lines span:nth-child(3) {
    top: 13px;
    left: -7px;
}
.hamburger__lines span:nth-child(4) {
    top: 25px;
}
.hamburger.active .hamburger__lines span:nth-child(1) {
    top: 10.5px;
    left: 50%;
    width: 0;
}
.hamburger.active .hamburger__lines span:nth-child(2) {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.hamburger.active .hamburger__lines span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.hamburger.active .hamburger__lines span:nth-child(2),
.hamburger.active .hamburger__lines span:nth-child(3) {
    left: 0;
}
.hamburger.active .hamburger__lines span:nth-child(4) {
    top: 10.5px;
    left: 50%;
    width: 0;
}
@media (min-width: 1025px) {
    .hamburger {
        display: none;
    }
}


/* FOOTER */

.socials {
	display: flex;
	align-items: center;
	font-size: 0;
	margin: 0;
	padding: 0;
	gap: 10px;
	list-style: none;
}

.socials li {
	margin: 0;
}

.footer {
    background: #fff;
    border-top: 1px solid #ddd;
    padding: 30px 0;
	margin-top: 40px;
}

.footer__info {
	display: flex;
    grid-gap: 15px;
    flex-direction: column;
}

.footer__row {
	display: grid;
	grid-gap: 30px;
}

.footer__logo {
	margin-bottom: 15px;
}

.footer__logo img {
	max-width: 150px;
}

.footer__address {
	margin-bottom: 15px;
}

.footer__menu,
.footer__menu ul {
	list-style: none;
}

.footer__menu li {
	margin-bottom: 10px;
}

.footer__menu a {
	display: block;
	text-decoration: none;
	font-weight: bold;
	color: #000;
	transition: all ease 0.2s;
}

.footer__menu .current-menu-item a,
.footer__menu a:hover {
	color: var( --e-global-color-primary );
}


@media (min-width: 1025px) {
	.footer {
		margin-top: 80px;
	}
	.footer__row {
		grid-template-columns: repeat(3, 1fr);
	}
}


/* BLOG */
.site-main {
    display: grid;
    margin-top: 100px;
    
    grid-gap: 24px;
}
@media (min-width: 1025px) {
    .site-main {
        grid-template-columns: 75% 25%;
    }
}
.page-header {
    margin-bottom: 30px;
}

.post {
    margin-bottom: 30px;
}

.post .entry-header {
    margin-bottom: 15px;
}

.post .entry-title a {
    color: #000;
    text-decoration: none;
}

.post .post-thumbnail {
    display: block;
    margin-bottom: 10px;
}

.post .post-thumbnail img {
    display: block;
    height: auto;
}

.post .entry-meta a {
    color: #ddd;
    text-decoration: none;
}

.post .entry-content {
    margin-bottom: 15px;
}

.post-next {
    display: inline-block;
    border: 2px solid #57bfe3;
    padding: 15px 15px;
    text-decoration: none;
    outline: none;
    background: transparent;
    color: #57bfe3;
    font-weight: bold;
    transition: all ease 0.2s;
}

.post-next:hover {
    background: #57bfe3;
    color: #fff;
}

.widget-area .widget {
    margin-bottom: 20px;
}

.widget-area .wp-block-heading {
    font-size: 20px;
    margin-bottom: 15px;
}

.widget-area ul {
    list-style: none;
}

.widget-area a {
    text-decoration: none;
    color: #000;
}

.widget-area .wp-block-latest-posts li,
.widget-area .wp-block-archives li,
.widget-area .wp-block-categories-list li {
    margin-bottom: 5px;
    padding: 10px 0px;
}

/* SINGLE POST */
.single .entry-content {
    margin-bottom: 15px;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.4;
}

.single .entry-title {
    font-size: 30px;
}

@media (min-width: 1025px) {
    .single .entry-title {
        font-size: 40px;
    }
}

.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6{
    margin: 30px 0 15px;
}

.entry-content p {
    margin: 15px 0;
}

.entry-content ul,
.entry-content ol {
    margin: 30px 0;
    padding-left: 15px;
}

.entry-content img {
    height: auto;
}

.entry-content .wp-caption {
    width: 100% !important;
}

.entry-content .wp-caption-text {
    opacity: 0.5;
}

.nav-links {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #ddd;
    padding-top: 15px;
}

.nav-links a {
    text-decoration: none;
    color: #000;
}