

* {
  transition: all 0.6s ease-in-out;
}

#introVideo{
  position: relative;
  z-index:7 !important;
}

.painel {

    z-index: 8 !important;
}
p{
  font-size: 0.9em !important;
  hyphens: auto;
  text-align: justify;
}

#contacto button{
  padding: 10px !important;
  font-size: small !important;
}

.lime {
    background-color: blueviolet;
    box-shadow: 3px 3px 0 rgba(0,0,0,0.14);
}

.neon{
  background-color: crimson;
    box-shadow: 3px 3px 0 rgba(0,0,0,0.14);
}

.neonViolet{
  background-color: blueviolet;
    box-shadow: 3px 3px 0 rgba(0,0,0,0.14);
}

.cadet{
  background-color: cadetblue;
    box-shadow: 3px 3px 0 rgba(0,0,0,0.14);
}

.violet{
  background-color: violet;
    box-shadow: 3px 3px 0 rgba(0,0,0,0.14);
}

.gold{
  background-color: goldenrod;
    box-shadow: 3px 3px 0 rgba(0,0,0,0.14);
}

a{
  text-shadow: 3px 3px 0 rgba(0,0,0,0.5);
}

#Paineis {
    margin: 0;
    font-family: Arial, sans-serif;
    color: #fff;
    scroll-behavior: smooth;
    overflow-y: scroll;
    scroll-snap-type: y mandatory;
    height: 51vh;
    max-height:350px;

    /* Ocultar scrollbars */
    scrollbar-width: none;        /* Firefox */
}
#Paineis::-webkit-scrollbar {
    display: none;                /* Chrome, Safari, Edge */
}

#Paineis div {
  width: 100%;
  height: 51vh;
  max-height:350px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 60px;
  box-sizing: border-box;
  opacity: 0.05;
  scroll-snap-align: start;
  background-attachment: fixed;
  position: relative;        /* NECESSÁRIO PARA Z-INDEX */
  z-index: 1;                /* BASE */
  
}

#Paineis div:hover {
  opacity: 1;
  z-index: 999;              /* AUMENTA NO HOVER */
  transform: scale(1);    /* OPCIONAL: dá efeito visual */
}
#Paineis div:hover {
  box-shadow: 0 0 40px rgba(0,0,0,0.4);
}

#Paineis div.painel-hover {
  opacity: 1 !important;
  z-index: 999 !important;


  width: 100%;
  height: 51vh;
  max-height:350px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 60px;
  box-sizing: border-box;

  scroll-snap-align: start;
  background-attachment: fixed;
  position: relative;        /* NECESSÁRIO PARA Z-INDEX */
 
}

#Paineis div.painel-hover:hover {
  opacity: 1 !important;
  z-index: 999 !important;


  width: 100%;
  height: 51vh;
  max-height:350px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 60px;
  box-sizing: border-box;

  scroll-snap-align: start;
  background-attachment: fixed;
  position: relative;        /* NECESSÁRIO PARA Z-INDEX */
 
}

#Paineis div{

background-color:rgba(0,0,0,0.9);
}

#Paineis p, #Paineis h2{
  text-shadow: 2px 2px black;
  width:45%;
}

#contacto {
  background:

    url('https://nmd.pt/imgIndex/contactBoards.png');
    background-size: 40%;
    filter: sepia(0%)!important ;
}

#local {
  background:

    url('https://nmd.pt/imgIndex/localBoards.png');
    background-size: 33%;
}
#seo {
  background:

    url('https://nmd.pt/imgIndex/SEO2026.png');

    background-size: 40%;
}
#responsivo {
  background:

    url('https://nmd.pt/imgIndex/uiBoards7.png');

    background-size: 33%;
}
#branding {
  background:

    url('https://nmd.pt/imgIndex/brandingBoards.png');

    background-size: 25%;
}
#multimedia {
  background:

    url('https://nmd.pt/imgIndex/multimediaBoards2.png');

    background-size: 33%;
}
#ux-ui {
  background:

    url('https://nmd.pt/imgIndex/uxBoards4.png');

    background-size: 40%;
}
#servicos-webdesign {
  background:

    url('https://nmd.pt/imgIndex/webBoards5.png');

    background-size: 40%;
}


#servicos-webdesign,#ux-ui,#multimedia,#branding,#responsivo,#seo,#local,#contacto{
filter: sepia(50%) ;

background-repeat: no-repeat;   background-position-x: right;
position: relative;
} 



button{
  
        padding: 10px 4px;
        background:#d8666d;
        color:#fff;
        border:none;
        border-radius:6px;
        font-size:1.1rem;
        cursor:pointer;
        font-size: small;
      
}

#cookieBanner {
bottom:0 !important;
z-index: 6;
background-color: orange !important;
height: 60px;

}

#cookieBanner small{
  color:#333 !important;

}

.hideMe{
  display:block;
}

#Paineis p{
  line-height: 1.5em;
}


#videoUl {
    width: 300px !important;
    margin-left: -125px !important;
}

#termos, #terms{
  width: 80% !important;
  height:60vh;
  visibility: hidden;
  position: fixed;
  top:10vh;
  left:10% !important;
  z-index:10000;
  background-color: aliceblue;
}


#termsBtn, #termosBtn{
  visibility: hidden;
  position: fixed;
  top:12vh;
  right:10%;
  z-index:10001;
font-weight: 800;
padding:10px !important;
font-size: large;
width:60px;
height:40px;
}

#Services {
    width: 500px;
    margin-left: -210px !important;
}

#Contacto{
  text-align:left;
}
.items {
    width: 500px;
    margin-left: -40px !important;
}

.submenu{
  width:500px !important;
  margin-left: -110px !important;
}

.menu ul ul { display: none; }
.menu ul li:hover > ul { display: block; }

#privacyBtn, #privacyBtnEn{
  background-color: grey !important;
}





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



  #Paineis div{
  width: 100%;
  padding:15px;
  margin:auto;
  height:60vh;
  }

  #Paineis p{

  width:100%;
}

  #cookieBanner {

height:125px !important;

}

#termos, #terms{
  width: 90% !important;
  left:5% !important;
}

#Services {
    width: 500px;
    margin-left: -200px !important;
}

.submenu{
  margin-left: -75px !important;
}

#Contact{
  margin-left: -160px !important;

  text-align:center;

}

#dateTime {

    top: 20px !important;

}
}

#introVideo{
  z-index:11000 !important;
}


#portfolioCarousel{
    display:none;

    position:fixed;
    inset:0;

    z-index:20000;

    background:rgba(0,0,0,.65);

    flex-direction:row;
    align-items:center;
    justify-content:center;

    gap:20px;

    width:90vw;
    height: 90vh;
    max-height: 600px;
    margin: auto;
}

.portfolio-info{
/*     position:fixed;
    bottom:0;
    left:0; */

    width:20%;
    margin:auto;
    min-height:200px;

    z-index:20002;

    background:rgba(10,10,10,.92);
    backdrop-filter:blur(10px);

/*     display:grid;
    grid-template-columns: 1fr auto; */
    gap:20px;

    padding:15px 20px;
    box-sizing:border-box;
    min-height: auto !important;
}

.portfolio-info-content{
    display:flex;
    flex-direction:column;
}

.portfolio-info-content h2{
    margin:0 0 8px 0;
    color:white;
}

.portfolio-info-content p{
    margin:0;
    overflow:auto;
    height:150px;
    color:white;
    text-align: left;
    font-size:medium !important;
    min-height:auto !important;
}

.portfolio-info-actions{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-end;
    gap:10px;
    min-width:140px;
}

#visitProject{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    background:goldenrod;
    color:black;

    text-decoration:none;
    text-shadow: none !important;
    font-size: small;
    height:25px;
    border-radius:10px;
    font-weight:bold;
    width: 50%;
}

#projectIframe{
    width:140%;
    height:140%;
    transform:scale(.714);
    transform-origin:top left;
    border:none;

    
}



.portfolio-frame{
    width:100%;
    height:80vh;
    max-height:570px;


}



#projectIframe{
    display:block;
    overflow:hidden;
}


#prevProject,
#nextProject{
    width:30px;
    height:120px;

    border:none;
    border-radius:25px;
    background-color: transparent;
  color: white;
    cursor:pointer;

    font-size:24px;
    font-weight: 800;
}

#closeCarousel{
  font-size: small;
    background:#ff4444;
    display:inline-flex;
    align-items:center;
    justify-content:center;

    color:white;

    text-decoration:none;
    text-shadow: none !important;

    height:25px;
    border-radius:10px;
    font-weight:bold;
    width: 50%;
}

@media (max-width:1024px){

#portfolioCarousel{
    flex-direction:column;
    gap:10px;
    width:100%;
    height:90vh;
    max-height:none;

    box-sizing:border-box;
}

.portfolio-info{
    width:95%;
    height:20vh;

    max-height:none;
    order:1;
    padding:15px;
    position:fixed;
    bottom:5vw;
    /* left:5vw; */
}

.portfolio-frame{
    width:95%;
    height:75vh;
    order:2;
    position:fixed;
    top:5vh;
    /* left:5vw; */

}

.portfolio-info-content{
  height:70px;
}

#projectIframe{
    width:100%;
    height:100%;
    transform:none;
    overflow-x:hidden;
    overscroll-behavior-x:none;

    
}

#prevProject,
#nextProject{
    position:fixed;
    top:50%;
    transform:translateY(-50%);
    z-index:20001;
    border:crimson 1px solid;
    color:goldenrod;
}

#prevProject{
    left:0px;
}

#nextProject{
    right:0px;
}
}

#app{
  margin-left:-230px !important;
}

#hideInstall{
  display: none;
}

@media (max-width:1024px){

#hideInstall{
  display: block;
}

  #app{
  margin-left:-210px !important;
}

  #privacyBtn, #privacyBtnEn{
    margin-top:15px;
  }

.portfolio-info{
    grid-template-columns:1fr;
    gap:12px;

}

.portfolio-info-actions{
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
}

#visitProject,
#closeCarousel{
    width:48%;
}


.hideMe{
  display:block;
}

.portfolio-info-content p {

    font-size: small !important;
}
.portfolio-info-content h2 {

font-size: medium !important;
}

}


.painel{
    cursor:pointer;
}

/* .painel *{
    pointer-events:none;
} */
#closeCarousel:hover,
#visitProject:hover{
  background-color: #111;
  color: white;
}


#prevProject:hover,
#nextProject:hover{
  background-color:#111;
  color: white;
}
