@charset "UTF-8";

/* GENERAL CLASSES */

html,
body {
    margin: 0;
    padding: 0;
    background-color: #000
}

html {
    position: fixed;
    width: 100%;
    height: 100%;
    display: table;
}

body {
    font-family: "Domine", serif;
}

object,
video,
img {
    margin: 0 auto;
    display: block;
    width: 100%;
}

img[src*=".pdf"] {
    display: none;
}

object {
    width: 100% !important;
    height: 50vh;
    background: #cacaca;
    margin: 4vh 0;
}

object * {
    width: inherit;
    height: inherit;
}

a {
    color: darkgray;
}

a:visited {
    color: gray;
}

a:active {
    color: orange;
}

/* for always hide */

.hide {
    display: none;
}

label {
    cursor: pointer;
}

/* INTERFACE: HEADER */

.header,
.body,
.footer {
    margin: 0;
    padding: 0;
    float: left;
    display: block;
    overflow: hidden;
}

.header,
.footer {
    width: 100%;
}

.header {
    height: 90vh;
    /*transition: height 1s ease-in-out;*/
    overflow: hidden;
    position: fixed;
}

#controller-homepage:checked~.header {
    pointer-events: none;
    cursor: default;
}

#controller-homepage:checked~.header+.body .page.page-oldcontent {
    opacity: 0;
}

input[name="controller"]:not(#controller-homepage):checked~.header {
    height: 20vh;
    -webkit-transition: all 1.01s ease-in-out;
    -o-transition: all 1.01s ease-in-out;
    transition: all 1.01s ease-in-out;
}

/* INTERFACE: BODY */

.body {
    height: 0vh;
    background-color: #EDEDED;
    width: 100vw;
    overflow: auto;
    -webkit-transition: height 1s ease-in-out;
    -o-transition: height 1s ease-in-out;
    transition: height 1s ease-in-out;
    position: fixed;
    /* for new version
    bottom: 9.9vh;*/
    bottom: 0;
}

.body .pages {
    width: 100vw;
    height: inherit;
    margin: 0;
    padding: 0;
    list-style: none;
    position: fixed;
    overflow-x: hidden;
    overflow-y: auto;
    scroll-behavior: smooth;
}

.body .pages .page {
    float: left;
    width: 100vw;
    height: inherit;
    background: #EDEDED;
    opacity: 0;
    -webkit-transition: opacity 1s ease-in-out;
    -o-transition: opacity 1s ease-in-out;
    transition: opacity 1s ease-in-out;
    position: absolute;
}

.body .pages .page>* {
    padding: 5vw;
    /*max-width: 80vw;*/
    margin: 0 auto 8vh;
}

.body .pages .page .page-en,
.body .pages .page .page-pt,
.body .pages .page .page-nl {
    display: none;
    opacity: 0;
}

.titulo,
.subtitulo,
.data {
    padding-bottom: 2vh;
}

.page>div>* {
    width: 90vw;
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
    max-width: 950px;
}

input[name="controller"]:not(#controller-homepage):checked~.body {
    /* for new version
    height: 70vh; */
    height: 80vh;
}

#controller-homepage:checked~.body .pages .page-homepage {
    opacity: 1;
}

.body .pages .page-oldcontent {
    opacity: 1;
}

/* BODY: CONTENTS */

.pages .page div p.texto {
    line-height: 4vh;
    margin-bottom: 6vh;
}

.pages .page div p.texto img {
    max-width: 100%;
    height: auto;
    width: initial;
}

#social {
    width: auto;
    display: table;
}

#navigation {
    display: table;
    width: auto;
    margin: 0 auto;
    border-top: 6vh solid transparent;
    border-bottom: 6vh solid transparent;
    min-width: 191px;
}

#previous,
#next,
#first,
#last {
    width: 30px;
    height: 30px;
    font-size: 0;
    background: #fff;
    border: 4px solid lightgray;
    display: block;
    border-radius: 50%;
    float: right;
}

#previous,
#first,
#next {
    margin-right: 1vw;
}

#first {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}

#previous::before {
    content: " ";
    width: 40%;
    height: 40%;
    background: transparent;
    -webkit-transform: rotate(225deg);
    -ms-transform: rotate(225deg);
    transform: rotate(225deg);
    position: relative;
    z-index: 100;
    display: block;
    top: 20%;
    right: -25%;
    border-top: 5px solid gray;
    border-right: 5px solid gray;
}

#next::before {
    content: " ";
    width: 40%;
    height: 40%;
    background: transparent;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: relative;
    z-index: 100;
    display: block;
    top: 20%;
    right: -10%;
    border-top: 5px solid gray;
    border-right: 5px solid gray;
}

#first::before {
    content: " ";
    width: 60%;
    height: 14%;
    background: darkgray;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    position: relative;
    z-index: 100;
    display: block;
    top: 43%;
    left: 44%;
}

#first::after {
    content: " ";
    width: 30%;
    height: 30%;
    background: transparent;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: relative;
    z-index: 100;
    display: block;
    top: 14%;
    right: -5%;
    border-top: 5px solid darkgray;
    border-right: 5px solid darkgray;
}

#last::before {
    content: " ";
    width: 60%;
    height: 14%;
    background: darkgray;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    position: relative;
    z-index: 100;
    display: block;
    top: 43%;
    left: 44%;
}

#last::after {
    content: " ";
    width: 30%;
    height: 30%;
    background: transparent;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: relative;
    z-index: 100;
    display: block;
    top: 14%;
    right: -5%;
    border-top: 5px solid darkgray;
    border-right: 5px solid darkgray;
}

/* BODY: CONTENTS: GALLERY */

.gallery,
.gallery .gallery-frame {
    display: block;
    width: 100%;
    height: auto;
    /*float: left;*/
    margin: 0;
    padding: 0;
    margin-bottom: 10vh;
}

.gallery .gallery-frame .gallery-inside {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.gallery .gallery-frame .gallery-inside li {
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
    width: calc(33% - 1em);
    list-style: none;
    margin: 0.5em;
    min-width: 100px;
}

.gallery .gallery-frame .gallery-inside li img {
    background-color: gray;
    -o-object-fit: cover;
    object-fit: cover;
    margin: 10px 10px 0 0;
}

.gallery .gallery-frame .gallery-inside li.gallery-container .gallery-image {
    width: 100%;
    height: 100%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
}

input[name="gallery"]:checked~.gallery-frame .gallery-inside li.gallery-container label.gallery-image img {
    background-color: #000;
    max-width: 70vw;
    margin: 0 auto;
    max-height: 70vh;
    -o-object-fit: contain;
    object-fit: contain;
}

input[name="gallery"]:checked~.gallery-frame .gallery-inside li {
    width: 0;
    margin: 0;
}

input[name="gallery"]:checked~.gallery-frame .gallery-inside li label.gallery-next {
    position: fixed;
    width: 50vw;
    height: 60vh;
    top: 30vh;
    left: 50vw;
}

input[name="gallery"]:checked~.gallery-frame .gallery-inside li label.gallery-previous {
    position: fixed;
    width: 50vw;
    height: 60vh;
    top: 30vh;
    left: 0;
}

input[name="gallery"]:checked~.gallery-frame .gallery-inside li label.gallery-close {
    position: fixed;
    width: 100vw;
    height: 10vh;
    top: 20vh;
    left: 0;
}

input[name="gallery"]:checked~.gallery-frame .gallery-inside li label.gallery-next::before,
input[name="gallery"]:checked~.gallery-frame .gallery-inside li label.gallery-previous::before,
input[name="gallery"]:checked~.gallery-frame .gallery-inside li label.gallery-close::before {
    font-size: 8vh;
    color: #FFF;
    opacity: .5;
    font-weight: bolder;
    -webkit-transform: scaleX(.8);
    -ms-transform: scaleX(.8);
    transform: scaleX(.8);
}

input[name="gallery"]:checked~.gallery-frame .gallery-inside li label.gallery-next::before {
    content: ">";
    position: absolute;
    right: 2vw;
    bottom: 2vh;
    font-family: 'Source Code Pro', monospace;
}

input[name="gallery"]:checked~.gallery-frame .gallery-inside li label.gallery-previous::before {
    content: "<";
    position: absolute;
    left: 2vw;
    bottom: 2vh;
    font-family: 'Source Code Pro', monospace;
}

input[name="gallery"]:checked~.gallery-frame .gallery-inside li label.gallery-close::before {
    content: "x";
    display: block;
    float: right;
    -webkit-transform: scaleX(1.3);
    -ms-transform: scaleX(1.3);
    transform: scaleX(1.3);
    font-family: 'Source Code Pro', monospace;
    font-size: 7vh;
    padding: 0;
    margin-right: 2vw;
}

#controller-gallery-image-0:checked~.gallery-frame .gallery-inside li.gallery-container,
#controller-gallery-image-00:checked~.gallery-frame .gallery-inside li.gallery-container {
    width: calc(33% - 1em);
    margin: 0.5em;
}

#controller-gallery-image-0:checked~.gallery-frame .gallery-inside li label.gallery-previous,
#controller-gallery-image-0:checked~.gallery-frame .gallery-inside li label.gallery-next,
#controller-gallery-image-0:checked~.gallery-frame .gallery-inside li label.gallery-close,
#controller-gallery-image-00:checked~.gallery-frame .gallery-inside li label.gallery-previous,
#controller-gallery-image-00:checked~.gallery-frame .gallery-inside li label.gallery-next,
#controller-gallery-image-00:checked~.gallery-frame .gallery-inside li label.gallery-close {
    display: none;
}

/* COMES FILLED 

#controller-gallery-image-1:checked ~ .gallery-frame .gallery-inside li.gallery-container-1 {
    display:block;
    width: 100%;
}

*/

/* BODY: CONTENTS : RESOURCES */

ul#resources {
    width: 100%;
    height: auto;
    display: block;
    float: left;
    padding: 0;
    margin: 0;
    list-style: none;
}

/* INTERFACE: FOOTER */

.footer {
    height: 10vh;
    display: table;
    table-layout: fixed;
    background-color: #FFF;
    position: fixed;
    bottom: 0;
}

.footer .option {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    -webkit-transition: width 1s ease-in-out;
    -o-transition: width 1s ease-in-out;
    transition: width 1s ease-in-out;
    width: 33%;
}

#controller-homepage:checked~.footer {
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

/* CHROME MOBILE URL ADDRESS BAR ISSUE */

input[name="controller"]:not(#controller-homepage):checked~.header.barissue~.body {
    height: 62vh;
}

/* LOGO */

.ptpac-logo {
    display: table;
    width: inherit;
    height: inherit;
    -webkit-transition: -webkit-transform 1s ease-in-out;
    transition: -webkit-transform 1s ease-in-out;
    -o-transition: transform 1s ease-in-out;
    transition: transform 1s ease-in-out;
    transition: transform 1s ease-in-out, -webkit-transform 1s ease-in-out;
    position: fixed;
    top: 0;
    z-index: 100;
}

input[name="controller"]:not(#controller-homepage):checked~.header .ptpac-logo {
    -webkit-transform: scale(.6);
    -ms-transform: scale(.6);
    transform: scale(.6);
    -webkit-transition: width 1s ease-in-out, height 1s ease-in-out, opacity 1s ease-in-out, -webkit-transform 1s ease-in-out;
    transition: width 1s ease-in-out, height 1s ease-in-out, opacity 1s ease-in-out, -webkit-transform 1s ease-in-out;
    -o-transition: width 1s ease-in-out, height 1s ease-in-out, opacity 1s ease-in-out, transform 1s ease-in-out;
    transition: width 1s ease-in-out, height 1s ease-in-out, opacity 1s ease-in-out, transform 1s ease-in-out;
    transition: width 1s ease-in-out, height 1s ease-in-out, opacity 1s ease-in-out, transform 1s ease-in-out, -webkit-transform 1s ease-in-out;
}

/* LOGO: FRAME */

.ptpac-logo .ptpac-logo-frame {
    display: table-cell;
    vertical-align: middle;
}

/* LOGO: CONTAINER */

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container {
    width: inherit;
    display: block;
    max-width: 300px;
    height: 70px;
    margin: 0 auto;
}

/* LOGO: STAGE */

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage {
    display: block;
    width: 40%;
    -webkit-perspective: 1000px;
    perspective: 1000px;
    -webkit-transition: all 1s ease-in-out;
    -o-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
    margin: 0 auto;
    padding: 0;
    float: left;
    position: relative;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage * {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

/* LOGO: BASE */

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base {
    display: block;
    width: 100px;
    height: 100px;
    -webkit-transition: all 1s ease-in-out;
    -o-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
    margin: 0 auto;
}

#controller-homepage:not(:checked)~.header .ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base {
    /* LOGO: BASE HEADER ALLWAYS ANIMATED  */
    -webkit-animation: logo-base-live 30s linear 0s infinite normal forwards running;
    animation: logo-base-live 30s linear 0s infinite normal forwards running;
    margin: 0 auto;
}

/* LOGO: SIDE */

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: transparent;
    border-radius: 25%;
    opacity: 0.9;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    left: 0;
}

/* LOGO: SIDES */

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-2::before,
.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-2::after,
.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-3::before,
.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-3::after,
.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-4::before,
.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-4::after,
.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-7::before,
.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-7::after,
.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-8::before,
.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-8::after,
.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-9::before,
.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-9::after {
    content: ' ';
    width: 1px;
    height: 1px;
    display: block;
    position: absolute;
    margin: 0;
    padding: 0;
    background-color: transparent;
    left: 0%;
    -webkit-transition: width 1s ease-in-out, height 1s ease-in-out, opacity 1s ease-in-out, left 1s ease-in-out, border-radius 2s ease-in-out, -webkit-transform 1s ease-in-out;
    transition: width 1s ease-in-out, height 1s ease-in-out, opacity 1s ease-in-out, left 1s ease-in-out, border-radius 2s ease-in-out, -webkit-transform 1s ease-in-out;
    -o-transition: width 1s ease-in-out, height 1s ease-in-out, opacity 1s ease-in-out, transform 1s ease-in-out, left 1s ease-in-out, border-radius 2s ease-in-out;
    transition: width 1s ease-in-out, height 1s ease-in-out, opacity 1s ease-in-out, transform 1s ease-in-out, left 1s ease-in-out, border-radius 2s ease-in-out;
    transition: width 1s ease-in-out, height 1s ease-in-out, opacity 1s ease-in-out, transform 1s ease-in-out, left 1s ease-in-out, border-radius 2s ease-in-out, -webkit-transform 1s ease-in-out;
}

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-2 {
    -webkit-transform: rotateX(90deg) rotateZ(90deg) translateZ(25px);
    transform: rotateX(90deg) rotateZ(90deg) translateZ(25px);
}

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-3 {
    -webkit-transform: rotateX(90deg) rotateZ(90deg) translateZ(0);
    transform: rotateX(90deg) rotateZ(90deg) translateZ(0);
}

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-4 {
    -webkit-transform: rotateX(90deg) rotateZ(90deg) translateZ(-25px);
    transform: rotateX(90deg) rotateZ(90deg) translateZ(-25px);
}

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-7 {
    -webkit-transform: rotateY(90deg) rotateZ(90deg) translateZ(25px);
    transform: rotateY(90deg) rotateZ(90deg) translateZ(25px);
}

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-8 {
    -webkit-transform: rotateY(90deg) rotateZ(90deg) translateZ(0);
    transform: rotateY(90deg) rotateZ(90deg) translateZ(0);
}

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base .ptpac-logo-side.ptpac-logo-side-9 {
    -webkit-transform: rotateY(90deg) rotateZ(90deg) translateZ(-25px);
    transform: rotateY(90deg) rotateZ(90deg) translateZ(-25px);
}

/* LOGO: TEXT */

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-text {
    display: block;
    width: 60%;
    padding: 0;
    font-size: calc(54px + 3vh);
    -webkit-transition: all 1s ease-in-out;
    -o-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
    -webkit-animation: none;
    animation: none;
    text-align: center;
    float: left;
    position: relative;
    margin: 0;
    left: 1vw;
    right: 0;
    top: 0;
    bottom: 0;
    font-weight: bold;
}

/* LOGO: TEXT BEFORE ANIMATION */

.ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-text::before {
    content: ">_";
    position: fixed;
    font-size: calc(36px - 1.6vh);
    overflow: hidden;
    color: #FFF;
    padding: .2em;
    white-space: nowrap;
    margin-top: 89px;
    max-width: 100%;
    max-height: 100vh;
    text-align: left;
    left: calc(50% - 152px);
    top: 52vh;
    text-shadow: 2px 0 rgba(255, 0, 0, 0.9), -2px 0 rgba(0, 0, 255, 0.9);
    font-family: 'Source Code Pro', monospace;
    background-color: #000;
    width: 300px;
    -webkit-transition: opacity 1s linear, width 1s linear;
    -o-transition: opacity 1s linear, width 1s linear;
    transition: opacity 1s linear, width 1s linear;
}

/* LOGO: BACKGROUND */

.header .ptpac-logo-controller-background {
    width: 100vw;
    height: 100vh;
    position: fixed;
    z-index: -1;
    background-size: 1100vw;
    background-repeat: repeat;
    -webkit-animation: logo-background 360s linear 0s infinite normal forwards running;
    animation: logo-background 360s linear 0s infinite normal forwards running;
}

@-webkit-keyframes logo-background {
    0% {
        background-position: 1100vw;
    }

    50% {
        background-position: 100vw;
    }

    100% {
        background-position: 1100vw;
    }
}

@keyframes logo-background {
    0% {
        background-position: 1100vw;
    }

    50% {
        background-position: 100vw;
    }

    100% {
        background-position: 1100vw;
    }
}

/* LOGO: PALETTE BAR */

.ptpac-logo-palette {
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    display: table;
    position: absolute;
    bottom: 10vh;
    table-layout: fixed;
    z-index: 10;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
    height: 1vh;
    -webkit-perspective: 1000px;
    perspective: 1000px;
    -webkit-perspective-origin: center;
    perspective-origin: center;
}

.ptpac-logo-palette li {
    display: table-cell;
}

.ptpac-logo-palette li::after {
    -webkit-transform: rotateX(180deg) rotateY(0) rotateZ(-45deg);
    transform: rotateX(180deg) rotateY(0) rotateZ(-45deg);
}

/* LANGUAGES */

.header-languages {
    position: fixed;
    width: 15vw;
    right: 0;
    top: 0;
    z-index: 1000;
    pointer-events: auto;
    display: table;
    height: 4vh;
    text-align: center;
    font-weight: 600;
    font-size: calc(32px - 1.2vh);
}

.language {
    width: 25%;
    display: table-cell;
    vertical-align: middle;
}

.language::before {
    padding: .2em .2em .05em .2em;
}

/* EMAIL */

.language.email a {
    text-decoration: none;
    color: #000;
    padding: .2em .2em .05em .2em;
}

.language.email a:hover {

    background-color: #000;
    color: #FFF;
}

.footer .option::before,
.language {
    text-align: center;
    font-size: calc(19px + .25vw);
}

/* LANGUAGES: SHOW LANGUAGES INSIDE PAGES */

#language-en:checked~#controller-homepage:checked~.body .pages .page .page-en,
#language-pt:checked~#controller-homepage:checked~.body .pages .page .page-pt,
#language-nl:checked~#controller-homepage:checked~.body .pages .page .page-nl {
    display: block;
    opacity: 1;
}

#language-pt:checked~#controller-oldcontent:checked~.body .pages .page .page-pt {
    display: block;
    opacity: 1;
}

#language-en:checked~#controller-services:checked~.body .pages .page-services .page-en,
#language-pt:checked~#controller-services:checked~.body .pages .page-services .page-pt,
#language-nl:checked~#controller-services:checked~.body .pages .page-services .page-nl {
    display: block;
    opacity: 1;
}

#language-en:checked~#controller-scenarios:checked~.body .pages .page-scenarios .page-en,
#language-pt:checked~#controller-scenarios:checked~.body .pages .page-scenarios .page-pt,
#language-nl:checked~#controller-scenarios:checked~.body .pages .page-scenarios .page-nl {
    display: block;
    opacity: 1;
}

#language-en:checked~#controller-about:checked~.body .pages .page-about .page-en,
#language-pt:checked~#controller-about:checked~.body .pages .page-about .page-pt,
#language-nl:checked~#controller-about:checked~.body .pages .page-about .page-nl {
    display: block;
    opacity: 1;
}

/* LANGUAGES: SELECTED LANGUAGE */

#language-en:checked~.header .header-languages .language-en::before,
#language-pt:checked~.header .header-languages .language-pt::before,
#language-nl:checked~.header .header-languages .language-nl::before {
    background-color: #000000;
    color: #ffffff;
}

/* LANGUAGES: ENGLISH : DEFAULT */

.language-en::before {
    content: "en";
}

#language-en:checked~.footer .option.option-services::before {
    content: 'services';
}

#language-en:checked~.footer .option.option-scenarios::before {
    content: 'scenarios';
}

#language-en:checked~.footer .option.option-about::before {
    content: 'about';
}

#language-en:checked~.footer .option.option-loader::before {
    content: 'loading';
}

/* LANGUAGES: PORTUGUÊS */

.language-pt::before {
    content: "pt";
}

#language-pt:checked~.footer .option.option-services::before {
    content: 'serviços';
}

#language-pt:checked~.footer .option.option-scenarios::before {
    content: 'cenários';
}

#language-pt:checked~.footer .option.option-about::before {
    content: 'acerca';
}

#language-pt:checked~.footer .option.option-loader::before {
    content: 'carregando';
}

/* LANGUAGES: NEDERLANDS */

.language-nl::before {
    content: "nl";
}

#language-nl:checked~.footer .option.option-services::before {
    content: 'diensten';
}

#language-nl:checked~.footer .option.option-scenarios::before {
    content: "scenario's";
}

#language-nl:checked~.footer .option.option-about::before {
    content: 'over';
}

#language-nl:checked~.footer .option.option-loader::before {
    content: 'bezig met laden';
}

/* MENU: oldcontent */

#controller-oldcontent:checked~.body .pages .page-oldcontent {
    opacity: 1;
}

#controller-oldcontent:checked~.body .pages .page:not(.page-oldcontent) {
    display: none;
}

/* MENU: SERVICES */

#controller-services:checked~.body .pages .page-services {
    opacity: 1;
}

#controller-services:checked~.footer .option-services {
    background-color: #EDEDED;
    color: #000000;
    pointer-events: none;
    cursor: default;
}

#controller-services:checked~.body .pages .page:not(.page-services) {
    opacity: 0;
    height: 0;
}

/* MENU: SCENARIOS */

#controller-scenarios:checked~.body .pages .page-scenarios {
    opacity: 1;
}

#controller-scenarios:checked~.footer .option-scenarios {
    background-color: #EDEDED;
    color: #000000;
    pointer-events: none;
    cursor: default;
}

#controller-scenarios:checked~.body .pages .page:not(.page-scenarios) {
    opacity: 0;
    height: 0;
}

/* MENU: ABOUT */

#controller-about:checked~.body .pages .page-about {
    opacity: 1;
}

#controller-about:checked~.footer .option-about {
    background-color: #EDEDED;
    color: #000000;
    pointer-events: none;
    cursor: default;
}

#controller-about:checked~.body .pages .page:not(.page-about) {
    opacity: 0;
    height: 0;
}

/* MENU: LOADER */

#controller-loader:not(:checked)~.footer .option-loader {
    display: none;
}

#controller-loader:checked~.footer .option-loader {
    background-color: #EDEDED;
    color: #000000;
    pointer-events: none;
    cursor: default;
}

#controller-loader:checked~.footer .option:not(.option-loader) {
    display: none;
    pointer-events: none;
    cursor: default;
}

/* HOMEPAGE: ANIMATIONS */

#controller-homepage:checked~.header .ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage {
    left: 30%;
    top: -100%;
    -webkit-transform: scale(9);
    -ms-transform: scale(9);
    transform: scale(9);
}

@-webkit-keyframes logo-stage {
    0% {}

    100% {}
}

@keyframes logo-stage {
    0% {}

    100% {}
}

#controller-homepage:not(:checked)~.header .ptpac-logo-controller-background {
    -webkit-animation-play-state: running;
    animation-play-state: running;
}

#controller-homepage:checked~.header .ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-stage .ptpac-logo-base {
    /* animation: logo-text-before-start 6s linear 0s 1 normal forwards running,  */
    -webkit-animation: logo-base-live 30s linear 0s infinite normal forwards running;
    animation: logo-base-live 30s linear 0s infinite normal forwards running;
    margin: 0 auto;
    /**/
}

/* 120s 30 1/4 parado */

@-webkit-keyframes logo-base {
    0% {}

    100% {}
}

@keyframes logo-base {
    0% {}

    100% {}
}

@-webkit-keyframes logo-base-live {
    0% {
        -webkit-transform: rotateY(0) rotateZ(0);
        transform: rotateY(0) rotateZ(0);
    }

    50% {
        -webkit-transform: rotateY(180deg) rotateZ(-180deg);
        transform: rotateY(180deg) rotateZ(-180deg);
    }

    100% {
        -webkit-transform: rotateY(360deg) rotateZ(-360deg);
        transform: rotateY(360deg) rotateZ(-360deg);
    }
}

@keyframes logo-base-live {
    0% {
        -webkit-transform: rotateY(0) rotateZ(0);
        transform: rotateY(0) rotateZ(0);
    }

    50% {
        -webkit-transform: rotateY(180deg) rotateZ(-180deg);
        transform: rotateY(180deg) rotateZ(-180deg);
    }

    100% {
        -webkit-transform: rotateY(360deg) rotateZ(-360deg);
        transform: rotateY(360deg) rotateZ(-360deg);
    }
}

#controller-homepage:checked~.header .ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-text {
    /* animation: logo-text-before-start 6s linear 0s 1 normal forwards running,  */
    -webkit-animation: logo-text 120s ease-in-out 0s 1 normal forwards running;
    animation: logo-text 120s ease-in-out 0s 1 normal forwards running;
    left: -20%;
    top: 145%;
    font-size: calc(40px + 2vh);
}

@-webkit-keyframes logo-text {
    0% {}

    100% {}
}

@keyframes logo-text {
    0% {}

    100% {}
}

#controller-homepage:checked~.header .ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-text::before {
    -webkit-animation: logo-text-before-start 6s linear 0s 1 normal forwards running, logo-text-before2 6s linear 6s 1 normal forwards running, logo-text-before3 6s linear 12s 1 normal forwards running, logo-text-before4 6s linear 18s 1 normal forwards running, logo-text-before5 6s linear 24s 1 normal forwards running, logo-text-before-end 1s linear 29s 1 normal forwards running;
    animation: logo-text-before-start 6s linear 0s 1 normal forwards running, logo-text-before2 6s linear 6s 1 normal forwards running, logo-text-before3 6s linear 12s 1 normal forwards running, logo-text-before4 6s linear 18s 1 normal forwards running, logo-text-before5 6s linear 24s 1 normal forwards running, logo-text-before-end 1s linear 29s 1 normal forwards running;
}

#controller-homepage:not(:checked)~.header .ptpac-logo .ptpac-logo-frame .ptpac-logo-container .ptpac-logo-text::before {
    -webkit-animation-play-state: paused, paused, paused, paused, paused, paused;
    animation-play-state: paused, paused, paused, paused, paused, paused;
    opacity: 0;
}

@-webkit-keyframes logo-text-before-start {
    0% {
        content: '>_';
    }

    2% {
        content: '>U_';
    }

    5% {
        content: '>UX_';
    }

    7% {
        content: '>UX/_';
    }

    8% {
        content: '>UX/U_';
    }

    10% {
        content: '>UX/UI_';
    }

    13.5% {
        content: '>UX/UI _';
    }

    15% {
        content: '>UX/UI L_';
    }

    18% {
        content: '>UX/UI LA_';
    }

    20% {
        content: '>UX/UI LAB_';
    }

    35% {
        content: '>UX/UI LAB_';
    }

    50% {
        content: '>UX/UI LAB';
    }

    65% {
        content: '>UX/UI LAB_';
    }

    80% {
        content: '>UX/UI LAB';
    }

    95% {
        content: '>UX/UI LAB_';
    }

    100% {
        content: '>UX/UI LAB_';
    }
}

@keyframes logo-text-before-start {
    0% {
        content: '>_';
    }

    2% {
        content: '>U_';
    }

    5% {
        content: '>UX_';
    }

    7% {
        content: '>UX/_';
    }

    8% {
        content: '>UX/U_';
    }

    10% {
        content: '>UX/UI_';
    }

    13.5% {
        content: '>UX/UI _';
    }

    15% {
        content: '>UX/UI L_';
    }

    18% {
        content: '>UX/UI LA_';
    }

    20% {
        content: '>UX/UI LAB_';
    }

    35% {
        content: '>UX/UI LAB_';
    }

    50% {
        content: '>UX/UI LAB';
    }

    65% {
        content: '>UX/UI LAB_';
    }

    80% {
        content: '>UX/UI LAB';
    }

    95% {
        content: '>UX/UI LAB_';
    }

    100% {
        content: '>UX/UI LAB_';
    }
}

@-webkit-keyframes logo-text-before2 {
    0% {
        content: '>_';
    }

    2% {
        content: '>W_';
    }

    5% {
        content: '>WE_';
    }

    7% {
        content: '>WEB_';
    }

    8% {
        content: '>WEB _';
    }

    10% {
        content: '>WEB D_';
    }

    12% {
        content: '>WEB DE_';
    }

    13.4% {
        content: '>WEB DES_';
    }

    16% {
        content: '>WEB DESI_';
    }

    18% {
        content: '>WEB DESIG_';
    }

    20% {
        content: '>WEB DESIGN_';
    }

    35% {
        content: '>WEB DESIGN_';
    }

    50% {
        content: '>WEB DESIGN';
    }

    65% {
        content: '>WEB DESIGN_';
    }

    80% {
        content: '>WEB DESIGN';
    }

    95% {
        content: '>WEB DESIGN_';
    }

    100% {
        content: '>WEB DESIGN_';
    }
}

@keyframes logo-text-before2 {
    0% {
        content: '>_';
    }

    2% {
        content: '>W_';
    }

    5% {
        content: '>WE_';
    }

    7% {
        content: '>WEB_';
    }

    8% {
        content: '>WEB _';
    }

    10% {
        content: '>WEB D_';
    }

    12% {
        content: '>WEB DE_';
    }

    13.4% {
        content: '>WEB DES_';
    }

    16% {
        content: '>WEB DESI_';
    }

    18% {
        content: '>WEB DESIG_';
    }

    20% {
        content: '>WEB DESIGN_';
    }

    35% {
        content: '>WEB DESIGN_';
    }

    50% {
        content: '>WEB DESIGN';
    }

    65% {
        content: '>WEB DESIGN_';
    }

    80% {
        content: '>WEB DESIGN';
    }

    95% {
        content: '>WEB DESIGN_';
    }

    100% {
        content: '>WEB DESIGN_';
    }
}

@-webkit-keyframes logo-text-before3 {
    0% {
        content: '>W_';
    }

    3.3% {
        content: '>WE_';
    }

    6.6% {
        content: '>WEB_';
    }

    9.9% {
        content: '>WEB _';
    }

    13.2% {
        content: '>WEB D_';
    }

    16.5% {
        content: '>WEB DE_';
    }

    19.8% {
        content: '>WEB DEV_';
    }

    23.1% {
        content: '>WEB DEVE_';
    }

    26.4% {
        content: '>WEB DEVEL_';
    }

    29.7% {
        content: '>WEB DEVELO_';
    }

    33% {
        content: '>WEB DEVELOP_';
    }

    36.3% {
        content: '>WEB DEVELOPM_';
    }

    39.6% {
        content: '>WEB DEVELOPME_';
    }

    42.9% {
        content: '>WEB DEVELOPMEN_';
    }

    45% {
        content: '>WEB DEVELOPMENT_';
    }

    60% {
        content: '>WEB DEVELOPMENT';
    }

    75% {
        content: '>WEB DEVELOPMENT_';
    }

    90% {
        content: '>WEB DEVELOPMENT';
    }

    100% {
        content: '>WEB DEVELOPMENT_';
    }
}

@keyframes logo-text-before3 {
    0% {
        content: '>W_';
    }

    3.3% {
        content: '>WE_';
    }

    6.6% {
        content: '>WEB_';
    }

    9.9% {
        content: '>WEB _';
    }

    13.2% {
        content: '>WEB D_';
    }

    16.5% {
        content: '>WEB DE_';
    }

    19.8% {
        content: '>WEB DEV_';
    }

    23.1% {
        content: '>WEB DEVE_';
    }

    26.4% {
        content: '>WEB DEVEL_';
    }

    29.7% {
        content: '>WEB DEVELO_';
    }

    33% {
        content: '>WEB DEVELOP_';
    }

    36.3% {
        content: '>WEB DEVELOPM_';
    }

    39.6% {
        content: '>WEB DEVELOPME_';
    }

    42.9% {
        content: '>WEB DEVELOPMEN_';
    }

    45% {
        content: '>WEB DEVELOPMENT_';
    }

    60% {
        content: '>WEB DEVELOPMENT';
    }

    75% {
        content: '>WEB DEVELOPMENT_';
    }

    90% {
        content: '>WEB DEVELOPMENT';
    }

    100% {
        content: '>WEB DEVELOPMENT_';
    }
}

@-webkit-keyframes logo-text-before4 {
    0% {
        content: '>_';
    }

    2.5% {
        content: '>S_';
    }

    5% {
        content: '>SI_';
    }

    7% {
        content: '>SIN_';
    }

    9% {
        content: '>SINC_';
    }

    12% {
        content: '>SINCE_';
    }

    15% {
        content: '>SINCE _';
    }

    17% {
        content: '>SINCE 2_';
    }

    20% {
        content: '>SINCE 20_';
    }

    21% {
        content: '>SINCE 200_';
    }

    23% {
        content: '>SINCE 2004_';
    }

    38% {
        content: '>SINCE 2004_';
    }

    53% {
        content: '>SINCE 2004';
    }

    68% {
        content: '>SINCE 2004_';
    }

    83% {
        content: '>SINCE 2004';
    }

    98% {
        content: '>SINCE 2004_';
    }

    100% {
        content: '>SINCE 2004_';
    }
}

@keyframes logo-text-before4 {
    0% {
        content: '>_';
    }

    2.5% {
        content: '>S_';
    }

    5% {
        content: '>SI_';
    }

    7% {
        content: '>SIN_';
    }

    9% {
        content: '>SINC_';
    }

    12% {
        content: '>SINCE_';
    }

    15% {
        content: '>SINCE _';
    }

    17% {
        content: '>SINCE 2_';
    }

    20% {
        content: '>SINCE 20_';
    }

    21% {
        content: '>SINCE 200_';
    }

    23% {
        content: '>SINCE 2004_';
    }

    38% {
        content: '>SINCE 2004_';
    }

    53% {
        content: '>SINCE 2004';
    }

    68% {
        content: '>SINCE 2004_';
    }

    83% {
        content: '>SINCE 2004';
    }

    98% {
        content: '>SINCE 2004_';
    }

    100% {
        content: '>SINCE 2004_';
    }
}

@-webkit-keyframes logo-text-before5 {
    0% {
        content: '>_';
    }

    2.5% {
        content: '>W_';
    }

    5% {
        content: '>WE_';
    }

    7% {
        content: '>WEL_';
    }

    10% {
        content: '>WELC_';
    }

    12% {
        content: '>WELCO_';
    }

    15% {
        content: '>WELCOM_';
    }

    17% {
        content: '>WELCOME_';
    }

    32% {
        content: '>WELCOME_';
        opacity: 1;
    }

    47% {
        content: '>WELCOME';
        opacity: 1;
    }

    62% {
        content: '>WELCOME_';
        opacity: 1;
    }

    77% {
        content: '>WELCOME';
        opacity: 1;
    }

    92% {
        content: '>WELCOME_';
        opacity: 1;
    }

    100% {
        content: '>WELCOME_';
        opacity: 1;
    }
}

@keyframes logo-text-before5 {
    0% {
        content: '>_';
    }

    2.5% {
        content: '>W_';
    }

    5% {
        content: '>WE_';
    }

    7% {
        content: '>WEL_';
    }

    10% {
        content: '>WELC_';
    }

    12% {
        content: '>WELCO_';
    }

    15% {
        content: '>WELCOM_';
    }

    17% {
        content: '>WELCOME_';
    }

    32% {
        content: '>WELCOME_';
        opacity: 1;
    }

    47% {
        content: '>WELCOME';
        opacity: 1;
    }

    62% {
        content: '>WELCOME_';
        opacity: 1;
    }

    77% {
        content: '>WELCOME';
        opacity: 1;
    }

    92% {
        content: '>WELCOME_';
        opacity: 1;
    }

    100% {
        content: '>WELCOME_';
        opacity: 1;
    }
}

@-webkit-keyframes logo-text-before-end {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes logo-text-before-end {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

/* SOCIAL BUTS */

.resp-sharing-button__link,
.resp-sharing-button__icon {
    display: inline-block
}

.resp-sharing-button__link {
    text-decoration: none;
    color: #fff;
    margin: 0.5em
}

.resp-sharing-button {
    border-radius: 5px;
    -webkit-transition: 25ms ease-out;
    -o-transition: 25ms ease-out;
    transition: 25ms ease-out;
    padding: 0.5em 0.75em;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif
}

.resp-sharing-button__icon svg {
    width: 1em;
    height: 1em;
    margin-right: 0.4em;
    vertical-align: top
}

.resp-sharing-button--small svg {
    margin: 0;
    vertical-align: middle
}

/* Non solid icons get a stroke */

.resp-sharing-button__icon {
    stroke: #fff;
    fill: none
}

/* Solid icons get a fill */

.resp-sharing-button__icon--solid,
.resp-sharing-button__icon--solidcircle {
    fill: #fff;
    stroke: none
}

.resp-sharing-button--twitter {
    background-color: #55acee
}

.resp-sharing-button--twitter:hover {
    background-color: #2795e9
}

.resp-sharing-button--pinterest {
    background-color: #bd081c
}

.resp-sharing-button--pinterest:hover {
    background-color: #8c0615
}

.resp-sharing-button--facebook {
    background-color: #3b5998
}

.resp-sharing-button--facebook:hover {
    background-color: #2d4373
}

.resp-sharing-button--tumblr {
    background-color: #35465C
}

.resp-sharing-button--tumblr:hover {
    background-color: #222d3c
}

.resp-sharing-button--reddit {
    background-color: #5f99cf
}

.resp-sharing-button--reddit:hover {
    background-color: #3a80c1
}

.resp-sharing-button--google {
    background-color: #dd4b39
}

.resp-sharing-button--google:hover {
    background-color: #c23321
}

.resp-sharing-button--linkedin {
    background-color: #0077b5
}

.resp-sharing-button--linkedin:hover {
    background-color: #046293
}

.resp-sharing-button--email {
    background-color: #777
}

.resp-sharing-button--email:hover {
    background-color: #5e5e5e
}

.resp-sharing-button--xing {
    background-color: #1a7576
}

.resp-sharing-button--xing:hover {
    background-color: #114c4c
}

.resp-sharing-button--whatsapp {
    background-color: #25D366
}

.resp-sharing-button--whatsapp:hover {
    background-color: #1da851
}

.resp-sharing-button--hackernews {
    background-color: #FF6600
}

.resp-sharing-button--hackernews:hover,
.resp-sharing-button--hackernews:focus {
    background-color: #FB6200
}

.resp-sharing-button--vk {
    background-color: #507299
}

.resp-sharing-button--vk:hover {
    background-color: #43648c
}

.resp-sharing-button--facebook {
    background-color: #3b5998;
    border-color: #3b5998;
}

.resp-sharing-button--facebook:hover,
.resp-sharing-button--facebook:active {
    background-color: #2d4373;
    border-color: #2d4373;
}

.resp-sharing-button--twitter {
    background-color: #55acee;
    border-color: #55acee;
}

.resp-sharing-button--twitter:hover,
.resp-sharing-button--twitter:active {
    background-color: #2795e9;
    border-color: #2795e9;
}

.resp-sharing-button--google {
    background-color: #dd4b39;
    border-color: #dd4b39;
}

.resp-sharing-button--google:hover,
.resp-sharing-button--google:active {
    background-color: #c23321;
    border-color: #c23321;
}

.resp-sharing-button--tumblr {
    background-color: #35465C;
    border-color: #35465C;
}

.resp-sharing-button--tumblr:hover,
.resp-sharing-button--tumblr:active {
    background-color: #222d3c;
    border-color: #222d3c;
}

.resp-sharing-button--email {
    background-color: #777777;
    border-color: #777777;
}

.resp-sharing-button--email:hover,
.resp-sharing-button--email:active {
    background-color: #5e5e5e;
    border-color: #5e5e5e;
}

.resp-sharing-button--pinterest {
    background-color: #bd081c;
    border-color: #bd081c;
}

.resp-sharing-button--pinterest:hover,
.resp-sharing-button--pinterest:active {
    background-color: #8c0615;
    border-color: #8c0615;
}

.resp-sharing-button--linkedin {
    background-color: #0077b5;
    border-color: #0077b5;
}

.resp-sharing-button--linkedin:hover,
.resp-sharing-button--linkedin:active {
    background-color: #046293;
    border-color: #046293;
}

.resp-sharing-button--reddit {
    background-color: #5f99cf;
    border-color: #5f99cf;
}

.resp-sharing-button--reddit:hover,
.resp-sharing-button--reddit:active {
    background-color: #3a80c1;
    border-color: #3a80c1;
}

.resp-sharing-button--xing {
    background-color: #1a7576;
    border-color: #1a7576;
}

.resp-sharing-button--xing:hover .resp-sharing-button--xing:active {
    background-color: #114C4C;
    border-color: #114C4C;
}

.resp-sharing-button--whatsapp {
    background-color: #25D366;
    border-color: #25D366;
}

.resp-sharing-button--whatsapp:hover,
.resp-sharing-button--whatsapp:active {
    background-color: #1DA851;
    border-color: #1DA851;
}

.resp-sharing-button--hackernews {
    background-color: #FF6600;
    border-color: #FF6600;
}

.resp-sharing-button--hackernews:hover .resp-sharing-button--hackernews:active {
    background-color: #FB6200;
    border-color: #FB6200;
}

.resp-sharing-button--vk {
    background-color: #507299;
    border-color: #507299;
}

.resp-sharing-button--vk:hover .resp-sharing-button--vk:active {
    background-color: #43648c;
    border-color: #43648c;
}

.resp-sharing-button--telegram {
    background-color: #54A9EB;
}

.resp-sharing-button--telegram:hover {
    background-color: #4B97D1;
}