/*
 Theme Name:   Twenty Twenty Child
 Theme URI:    https://diviextended.com/
 Description:  A child theme of Twenty Twenty WordPress theme.
 Author:       Elicus Technologies
 Author URI:   https://elicus.com
 Template:     twentytwenty
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
*/

@import url("../twentytwenty/style.css");


@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,500,600&display=swap');


body {
    background: #000;
}
body, button, input, select, textarea, a, .entry-title {
	font-family: 'Roboto', sans-serif;
	font-size: 0.95vw;
    line-height: 1.3;
	font-weight: 300;
	letter-spacing: 0.05em;
	text-rendering: unset !important;
	-webkit-font-smoothing: unset !important;
	color: #FFF !important;
}
*, *::before, *::after {
	-webkit-font-smoothing: unset !important;
}
body .color-accent, body .color-accent-hover:hover, body .color-accent-hover:focus, body :root .has-accent-color, body .has-drop-cap:not(:focus):first-letter, body .wp-block-button.is-style-outline, body a {
    color: #FFF !important;
}
body:not(.overlay-header) .primary-menu > li > a, body:not(.overlay-header) .primary-menu > li > .icon, .modal-menu a, .footer-menu a, .footer-widgets a, #site-footer .wp-block-button.is-style-outline, .wp-block-pullquote:before, .singular:not(.overlay-header) .entry-header a, .archive-header a, .header-footer-group .color-accent, .header-footer-group .color-accent-hover:hover {
	color: inherit !important;
}
input[type="text"], input[type="password"], input[type="email"], input[type="url"], input[type="date"], input[type="month"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="week"], input[type="number"], input[type="search"], input[type="tel"], input[type="color"], textarea, button, .button, .faux-button, .wp-block-button__link, input[type="button"], input[type="reset"], input[type="submit"] {
	font-size: 0.90vw;
    line-height: 100%;
    outline: none;
}
body button, body .button, body .faux-button, body .wp-block-button__link, body .wp-block-file .wp-block-file__button, body input[type="button"], body input[type="reset"], body input[type="submit"], body .bg-accent, body .bg-accent-hover:hover, body .bg-accent-hover:focus, body :root .has-accent-background-color, body .comment-reply-link {
	background-color: #000;
	outline: none;
}
a {
	text-decoration: none;
}
.hidden {
	display: none;
}
.mobile-view {
	display: none;
}
.desktop-view {
	display: block;
}
a[href^="tel"] {
    color:inherit;
    text-decoration:none;
}
.bg-img {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	outline: none !important;
	width: 100%;
	height: 100%;
}
p {
    line-height: inherit;
    margin: 0 0 1em 0;
}
strong, b, strong *, b * {
	font-weight: 600;
}
.overflow_hidden {
	overflow: hidden;
}
.overflow_scroll {
	overflow-y: scroll;
	height: 100%;
}
.edit-link, .post-edit {
	display: none !important;
}


/* MAIN LAYOUT */


::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 2px rgba(0,0,0,0.3);
  	background-color: #000;
}
::-webkit-scrollbar {
    width: 2px;
    background-color: #000;
}
::-webkit-scrollbar-thumb {
    background-color: #FFF;
}


/* LAYOUT */


.grid-6 {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-gap: 0.25vw;
}
.grid-12 {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
}
.grid-13 {
	display: grid;
	grid-template-columns: repeat(13, 1fr);
}
.grid-span-1 {
	grid-column: span 1;
}
.grid-span-2 {
	grid-column: span 2;
}
.grid-span-3 {
	grid-column: span 3;
}
.grid-span-4 {
	grid-column: span 4;
}
.grid-span-5 {
	grid-column: span 5;
}
.grid-span-6 {
	grid-column: span 6;
}
.grid-span-7 {
	grid-column: span 7;
}
.grid-span-8 {
	grid-column: span 8;
}
.grid-span-9 {
	grid-column: span 9;
}
.grid-span-10 {
	grid-column: span 10;
}
.grid-span-11 {
	grid-column: span 11;
}
.grid-span-12 {
	grid-column: span 12;
}
.grid-span-13 {
	grid-column: span 13;
}

.flex {
	display: flex;
	justify-content: space-between;
}



/* TYPOGRAPHY */

.uppercase {
	text-transform: uppercase;
}
.align-center {
	text-align: center;
}



/* COLORS */






/* HEADER */

.social-wrapper {
    display: flex;
}
.social-wrapper img {
    width: 25px;
    margin-left: 10px;
    position: relative;
    top: 0.2em;
    transition: 0.3s;
    transform: scale(1);
}
.social-wrapper img:hover {
    transform: scale(1.1);
}
.menu-main-menu-container {
	padding: 115px 1.1vw 20px 16vw;
}
ul.menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
}
ul.menu li {
	padding: 0;
	margin: 0;
}
ul.menu li a {
	text-transform: uppercase;
}
ul.menu li a:hover, ul.menu li.active a, ul.language-chooser a:hover, ul.language-chooser li.active a {
	color: #000 !important;
	background-color: #FFF !important;
}
.lang-menu {
	position: fixed;
	right: 20px;
	top: 10px;
    display: flex;
    align-items: center;
}
ul.language-chooser {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
}
#boneca {
	position: absolute;
	left: 3vw;
	top: 40px;
	width: fit-content;
	-webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    z-index: 101;
    opacity: 1;
    transition: 0.3s;
}
#boneca img {
	max-width: 120px;
}
.scrolled .menu-main-menu-container {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	background-color: #000;
	padding: 20px 1.1vw 20px 16vw;
	height: 60px;
	z-index: 100;
}
.scrolled ul.menu {
	align-items: center;
    height: 100%;
}
.scrolled body {
	margin-top: calc(60px + 98px);
}
.scrolled #boneca {
	opacity: 0;
}

.sticky-logo {
    position: fixed;
    top: 22px;
    left: 1.1vw;
    z-index: 1000;
    width: 0;
    height: 20px;
    overflow: hidden;
    opacity: 0;
    max-width: 9vw;
}
.sticky-logo a {
    white-space: nowrap;
}
.scrolled .sticky-logo {
    opacity: 1;
}

/* FOOTER */





/* HOMEPAGE */

.homepage_blocks-item {
	height: 230px;
	display: block;
	position: relative;
	margin-bottom: 0.25rem !important;
}




/* ARCHIVES */

.img-page {
    height: 300px;
    display: flex;
    align-items: flex-end;
    transition: 0.3s;
}
.img-page > div {
	margin: auto auto 20px;
}
span.text-content {
    vertical-align: middle;
    text-transform: uppercase;
    color: white;
    font-size: 30px;
    line-height: 1;
    font-weight: 500;
}
h2.subtitle, h2.tipologia {
	font-size: 20px;
	margin-top: 10px;
	font-weight: 500;
}
h2 {
	margin: 0;
}
.filter-img {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
}
.filter-img:hover {
	-webkit-filter: grayscale(0%);
    -moz-filter: grayscale(0%);
    -ms-filter: grayscale(0%);
    -o-filter: grayscale(0%);
    filter: grayscale(0%);
    filter: none;
    opacity: 0.8;
}
.text-center {
	opacity: 0;
	pointer-events: none;
	transition: 0.3s;
}
.filter-img:hover .text-center {
	opacity: 1;
	pointer-events: all;
}



/* SINGLE */


.single .page-wrapper {
	padding: 15px 15px 15px 240px;
}
.single .grid-13 {
	grid-gap: 15px;
}
.memorial {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 80px;
 	-moz-column-gap: 80px;
 	column-gap: 80px;
    margin-top: 60px;
    margin-bottom: 150px;
    column-fill: auto;
}
.memorial p {
    -webkit-column-break-inside: avoid;
    column-break-inside: avoid;
    break-inside: avoid;
    display: inline-block;
  	width: 100%;
    font-size: 12px;
    line-height: 1.8;
    position: relative;
    margin-bottom: 18px;
}
.memorial-mobile {
    display: none;
}
.description {
	font-size: 12px;
	line-height: 1.8;
}
.single span.text-content {
	font-weight: 400;
}




/* FILMS */

.vimeo-player {
    display: none;
}
.vimeo-frame {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
    width: 100%;
    position: relative;
    cursor: pointer;
}
.vimeo-frame:after {
    content: "";
    display: block;
    background-image: url(images/btn-play-white.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 70px;
    height: 70px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.vimeo-frame:hover:after {
    background-image: url(images/btn-play.svg);
}
.img-page > .vimeo-player {
	margin: 0;
	width: 100% !important;
	height: 100% !important;
}
.vimeo-player iframe {
	width: 100% !important;
	height: 100% !important;
}




/* STUDIO MK27 */

.page-studiomk27 {
    overflow-x: hidden;
}
.gridresidencial {
    width: 100%;
    padding: 0;
}
.pr-1, .px-1 {
    padding-right: 0.25rem !important;
}
.pl-0, .px-0 {
    padding-left: 0 !important;
}
.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}
.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}
.col-md-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
    position: relative;
}
#studio .studio-img-tumb {
    height: 590px;
    margin-bottom: 0.25rem !important;
}
.img-stu {
    margin-bottom: 0.25rem;
    height: 320px;
}
.d-block {
    display: block !important;
}
.w-100 {
    width: 100% !important;
}
.z_10 {
    z-index: 10;
}
.studio_mk27_about {
    position: absolute;
    left: 33%;
    top: 735px;
    z-index: 10;
    padding: 40px 0;
    color: #FFF;
}
.studio_mk27_about > p {
    padding: 0 40px;
    font-size: 1.05em;
}
.studio_mk27_row {
    display: flex;
    flex-wrap: wrap;
}
.equipe-foto {
    cursor: pointer; 
}
.equipe-foto-aberta {
    pointer-events: none;
}
.equipe-nome {
    position: absolute; 
    bottom: -1px; 
    padding: 5px 8px; 
    background: #000; 
    color: #FFF;
}
.equipe-bio {
    display: none; 
    position: absolute;
    top: 0;
    background: #000;
    color: #FFF;
    font-size: 14px;
    line-height: 18px;
    height: 326px;
    z-index: 1;
    overflow: hidden;
}
.equipe-bio-txt-wrapper {
    margin: 40px;
    margin-top: 60px;
    margin-right: 25px;
    padding-right: 40px;
    height: 222px;
    overflow-y: scroll;
}
.equipe-bio p {
    margin-bottom: 0 !important;
}
.equipe-bio-title {
    font-size: 16px; 
    line-height: 20px;
}
.btn-close-equipe {
    cursor: pointer;
}
.page-id-3295 .studio_mk27_row .col-12:last-child {
    display: none;
}


/* CV */

.btn-pdf {
	display: block;
    width: fit-content;
	margin-top: 20px;
}
.btn-pdf svg {
	width: 30px;
}
.img-frame {
    position: relative;
    display: block;
}
.img-frame span {
    position: absolute;
    bottom: 21%;
    left: 50%;
    transform: translateX(-50%);
    font-weight: 400;
    font-size: 26px;
    line-height: 1;
    text-transform: uppercase;
    text-align: center;
    white-space: nowrap;
    display: none;
}
.img-frame:hover span {
    display: block;
    color: #FFF;
}
.caption-receiver {
    display: block;
    transition: 0.3s;
    opacity: 0;
}
.fotorama__caption {
    opacity: 0;
}



/* SLICK */

.img-gallery {
    opacity: 0;
    height: 80vh;
    overflow-y: hidden;
}
.img-carousel {
    height: 40vh;
    overflow-y: hidden;   
}
.img-carousel.slick-on {
    height: auto;
    overflow-y: unset;   
}
.img-gallery.slick-initialized {
    opacity: 1;
    height: auto;
    overflow-y: unset;
}
.img-gallery-item {
    margin: auto;
    width: auto;
    height: 100%;
}
.img-gallery-thumb {
    width: 62px !important;
    height: 64px !important;
    margin: 3px 0 0 0;
    border: solid 3px #000;
    transition: 0.3s;
}
.slick-current .img-gallery-thumb {
    border: solid 3px #FFF;
}
.slick-arrow {
    position: absolute;
    top: 50%;
    z-index: 1;
    transform: translateY(-50%);
    opacity: 0;
    transition: 0.3s;
    cursor: pointer;
}
.slick-arrow svg {
    width: 14px;
}
.next-arrow {
    right: 25px;
}
.prev-arrow {
    left: 25px;
}
.slick-slider:hover .slick-arrow {
    opacity: 1;
}
.slick-slider .slick-arrow.slick-disabled {
    opacity: 0.2;   
}
/*.img-gallery-nav .slick-track {
    width: fit-content !important;
    transform: unset !important;
}*/
.slick-list {
    padding: 0 !important;
}
.img-gallery-nav .slick-list {
    padding: 0 2px !important;
}
.img-gallery .slick-slide {
    height: 37.4vw !important;
    position: relative;
    display: flex !important;
    align-items: center;
    flex-direction: column;
}
.img-gallery .slick-slide img {
    position: absolute;
    object-fit: cover;
    object-position: center top;
}








@media only screen and (min-width: 1921px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


.page-wrapper {
    grid-template-columns: repeat(12, 1fr);
}
.page-wrapper .loop-item {
    grid-column: span 3;
}
.col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
}
.studio_mk27_about > p {
    font-size: 16px;
    line-height: 21px;
}
.homepage_blocks-item {
    height: 25vh;
}
body, button, input, select, textarea, a, .entry-title {
    font-size: 0.8vw;
}
.menu a, .lang-menu a {
    font-size: 0.6vw;
}
.grid-6 {
    grid-gap: 0.15vw;
}
.memorial {
    -webkit-column-count: 4;
    -moz-column-count: 4;
    column-count: 4;
}
.studio_mk27_about {
    left: 25%;
    top: 765px;
}
#studio .studio-img-tumb {
    width: 670px;
}






}




@media only screen and (min-width: 2559px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/




.studio_mk27_about > p {
    font-size: 18px;
    line-height: 26px;
}


}


.studio_mk27_row .col-12:nth-child(70) {
    display: none;
}





@media only screen and (max-width: 1920px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


body, button, input, select, textarea, a, .entry-title {
	font-size: 0.83vw;
}






/* FILMS */

.img-page {
    height: 300px;
    overflow: hidden;
}



/* STUDIO MK27 */

.page-studiomk27 .studio_mk27_row .col-12:last-child {
    display: block;
}


/* CV */

.img-page {
    height: 300px;
    overflow: hidden;
}


}



@media only screen and (max-width: 1670px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/

/* CV */

.img-frame span {
    font-size: 18px;
}
.img-page {
    height: 300px;
}


}



@media only screen and (max-width: 1440px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}



@media only screen and (max-width: 1366px) and (min-height: 680px) and (max-height: 690px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}



@media only screen and (max-width: 1300px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/

.studio_mk27_about > p {
    padding: 0 30px;
    font-size: 15px !important;
}

}




@media only screen and (min-width: 1200px) and (max-width: 1300px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


.memorial {
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
}



}



@media only screen and (min-width: 1024px) and (max-width: 1200px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


.memorial {
    margin-left: 60px;
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
}

}



@media only screen and (max-width: 1200px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


body, a {
	font-size: 16px;
}

/* HEADER MOBILE */

.desktop-view .menu-main-menu-container, .lang-menu.desktop-view {
	display: none;	
}
.header-mobile {
	display: block;
	position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 90px;
    background-color: #000;
    z-index: 10;
    transition: 0.3s;
}
#boneca {
	position: fixed;
	left: 17px;
    top: 10px;
}
.scrolled #boneca {
    opacity: 1;
}
.scrolled body {
    margin-top: 0;
}
.scrolled .menu-main-menu-container {
	position: unset;
	padding: unset;
    height: unset;
    padding: 5px 15px;
}
.scrolled ul.menu {
	align-items: unset;
}
.site-content {
	padding-top: 90px;
}
span.text-content.text-content-mobile {
	font-weight: 300;
	display: block;
	position: absolute;
	left: 20px;
    bottom: 20px;
}
.mobile-menu.mobile-view {
	display: block;
}
.mobile-menu {
	position: fixed;
	right: -100%;
	top: 90px;
	height: calc(100vh - 90px);
	width: 58vw;
	background-color: #000;
	color: #FFF;
	transition: 0.4s;
	display: block;
	z-index: 100;
}
.mobile-menu a {
	color: #FFF !important;
	font-size: 16px;
}
.mobile-menu-active {
	right: 0;
}
ul.menu {
	flex-direction: column;
}
ul.menu li a {
	padding: 7px 0;
	display: block;
}
.menu-main-menu-container {
    padding: 5px 15px;
}
.btn-menu {
    cursor: pointer;
    position: absolute;
    right: 8px;
    top: 42px;
}
.hamburger-inner, .hamburger-inner:after, .hamburger-inner:before {
	background-color: #FFF !important;
	border-radius: 0;
    height: 3px;
}
.hamburger-box, .hamburger-inner, .hamburger-inner:after, .hamburger-inner:before {
	width: 23px;
}
.hamburger-inner:before {
    top: -8px;
}
.hamburger-inner:after {
    bottom: -8px;
}
.hamburger.is-active:hover, .hamburger:hover {
	opacity: 1;
}
.lang-menu {
    position: relative;
    right: unset;
    top: unset;
    border-top: solid 1px #FFF;
    padding: 15px 0;
    margin: 15px 15px 0;
    justify-content: space-between;
}
.social-wrapper img {
    width: 1.4em;
    top: 0.1em;
}
.lang-menu li {
	margin: 0 5px;
}
.lang-menu li a {
	font-size: 12px;
}
ul.language-chooser {
	margin: 0 -5px;
}
.scrolled .sticky-logo {
    display: none;
}


/* ARCHIVE MOBILE */

.grid-6 {
	display: block;
}
.single .page-wrapper {
    padding: 0;
}
.single .grid-13 {
    display: block;
}
.page-wrapper.grid-6 {
	margin-top: -3px;
}
.loop-item {
	margin-top: 3px !important;
	display: block;
}
.text-center {
	opacity: 1;
}
.description-wrapper {
	padding: 30px;
}
.primeira_row .row {
	margin: 0;
}

/* FILMS MOBILE */

.page-films .filter-img {
    -webkit-filter: grayscale(0%);
    -moz-filter: grayscale(0%);
    -ms-filter: grayscale(0%);
    -o-filter: grayscale(0%);
    filter: grayscale(0%);
}


/* CV */

.post-type-archive-post_cv .img-page > div {
    margin: 0;
    position: absolute;
    left: 50%;
    bottom: 30px;
    z-index: 1;
}
.post-type-archive-post_cv .img-frame span {
    font-size: 18px;
    font-weight: 500;
}
.caption-receiver {
    margin-top: 1em !important;
}


/* SLICK */

.slick-slider .slick-arrow {
    opacity: 1;
}
.img-gallery .slick-slide {
    height: auto !important;
}
.img-gallery .slick-slide img {
    position: relative;
}
.img-gallery-item {
    width: 100% !important;
    height: auto !important;
}


}



@media only screen and (max-width: 1025px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/



}






@media only screen and (max-width: 1025px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/

.img-frame span {
    display: block;
    font-size: 26px;
}

}



@media only screen and (max-width: 1025px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/

#boneca img {
    width: 90px;
}
#boneca {
    margin-top: 0 !important;
}

}




@media only screen and (min-width: 768px) and (max-width: 1024px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/

span.text-content.position-absolute {
    top: 700px;
    left: 40px;
}
.memorial {
    margin-left: 40px;
    width: 40%;
    column-count: 1;
    margin-top: 146px;
}
.description-wrapper {
    position: relative;
    padding: 15px;
    display: block !important;
}
.description-wrapper .description {
    width: 40vw;
}
.memorial-mobile {
    display: none;
}
span.text-content.position-absolute {
    top: 570px;
}
.description-wrapper {
    width: calc(100% - 60px);
}
.description-wrapper .description {
    width: 100%;
}


}



@media only screen and (max-width: 768px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/

.memorial {
	display: none;
}
.memorial-mobile {
	display: block;
	margin: 20px 0;
	column-count: 1;
	border-top: solid 1px #FFF;
	padding-top: 20px;
}
.description-wrapper .description {
	width: 100%;
}

/* STUDIO MK27 */

.primeira_row {
    margin: 0;
}
.pr-1 {
    padding: 0 !important;
}
.studio_mk27_about {
    position: relative;
    left: unset;
    top: unset;
    margin-top: 40px;
    padding-bottom: 20px !important;
    max-width: unset;
}
.empty_div {
    display: none;
}
.img-stu {
    height: 40vh;
}
.equipe-foto {
    position: relative;
}
.equipe-nome {
    display: block !important;
}
.equipe-bio {
    position: relative;
    margin-top: -1px;
    height: unset;
}
.equipe-bio-title {
    display: none;
}
.studio_mk27_row {
	flex-direction: column;
}
.studio_mk27_row > div {
	max-width: unset;
}
.img-stu {
    margin-bottom: 3px;
}


}


@media only screen and (max-width: 414px) {
    .img-frame span {
        font-size: 16px;
    }
}



@media only screen and (max-width: 376px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


.social-wrapper img {
    width: 1.1em;
}

.mobile-menu.mobile-view {
    overflow-y: scroll;
    padding-bottom: 16em;
}


}





@media only screen and (max-width: 321px) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


.social-wrapper img {
    width: 1em;
    margin-left: 0.4em;
}

.mobile-menu.mobile-view {
    overflow-y: scroll;
    padding-bottom: 16em;
}


}






