 /*
CSS Style Sheet for home page
v0.4*
https://psoul.art/portoflio.html
Writen by Pierre Souloumiac, all rights reserved
© psoul.art 2025
*/

@import "fonts/PSoulFonts.css";
@import "GlobalStyle.css";

.gridContainer{
  display: grid;
  grid-template-areas:
  "topLeft header header"
  "spacer content right"
  "spacer footer right";
  grid-template-columns: 1fr 6fr 1fr;
  padding: 5px;
  max-width: 2064px; /*iPad Pro in Portrait need to use fit-content property on the navCloud element*/
  margin-left: auto;
  margin-right: auto;
  /*border: 2px solid red;*/
}

.gridContainer > div.topLeft {
  grid-area: topLeft;
  display: flex;
  justify-content: flex-end; /*align right within the grid cell*/
  /* border: 1px solid green; */
}


.gridContainer > div.spacer {
  grid-area: spacer;
  justify-self: right;
  /* border: 1px blue solid; */
}

.gridContainer > div.content {
  grid-area: content;
  max-width: 1800px;
  justify-self: center;
  /* border: 1px solid yellow; */
}

.gridContainer > div.footer {
  grid-area: footer;
  text-align: center;
  /* border: 1px solid cyan; */
}

.gridContainer > div.navBanner{
  grid-area: header;
  display: inline-flex;
  justify-content: flex-start;
  max-width: 500px;
  /*border: 1px solid magenta;*/
}

.gridContainer > div.right{
	/* border: 1px orange solid; */
}

.navButton {
  flex-basis: 100%;
  max-width: 120px;
  min-width: 80px;
  text-decoration: none;
  text-align: center;  
  font-family: "Courier Prime", monospace;
  /*border: 1px solid orange;*/
}

.navImg {
  width:100%;
  padding-top: 100%;
  background-size: 100%;
  
}

.navDesc {
  width: 100%;
  overflow: visible;
}	

#navCloud{
  display: block;
  flex: 100%;
  height: auto;
  max-width: 120px;
  background-image: url('media/NavCloudv0.2.webp');
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  /*border: 3px dotted fuchsia;*/
}

#homeImg{
  background-image: url('media/NavHomev0.2.webp');
}
#portfolioImg{
  background-image: url('media/NavPortfoliov0.2.webp');
}
#sketchesImg{
  background-image: url('media/NavSketchesv0.2.webp');
}
#storeImg{
  background-image: url('media/NavStorev0.2.webp');
}
#aboutImg{
  background-image: url('media/NavAboutv0.2.webp');
}

.navButton:hover > .navImg:not(#navCloud) {
  background-position: 0% -100%;
}

.navButton:hover > .navDesc {
  font-weight: bold;
}

.active > .navImg{
  background-position: 0% -100%;
}

.active > .navDesc {
  font-weight: bold;
}

.inactive > *:not(.tooltiptext){
  filter: grayscale(1) opacity(50%);
}

.inactive{
  cursor: not-allowed;
}

.tooltip{
  content: '';
  position: relative;
  display: inline-block;
}

.tooltiptext{
  visibility: hidden;
  width: 120px;
  background-color: lemonchiffon;
  color: #211F23;
  text-align: center;
  padding: 5px 0;
  border-radius: 8px;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  margin-left: -60px;
  transform: rotate(-20deg);
}

.tooltip:hover .tooltiptext{
  visibility: visible;
}

#blurb{
  display: none;
}


.collapsible {
  font-family: Helvetica, sans-serif;
  font-size: 15px;
  text-align: center;
  background-color: transparent;
  border-radius: 8px;
  cursor: pointer;
  padding: 8px;
  width: 100%;
  border: none;
  outline: none;  
}

button.collapsible:hover {
  background-color: darksalmon;
}

button.active{
  border: 1px solid darksalmon;
}

.blurb {
  padding: 0 18px;
  display: none;
  overflow: hidden;
}

.gallery {
  display: flex;
  flex-wrap: wrap;
  padding: 0 4px;
}


/* Create three equal columns that sit next to each other */

.singleCol{
  flex: 100%;
  max-width: 100%;
  margin: 4px;
}

.doubleCol{
  flex: 50%;
  max-width: calc(50% - 8px);
  margin: 4px;  
}

.tripleCol, .thirdCol{
  flex: 33.33%;
  max-width: calc(33.33% - 8px);
  margin: 4px;
}

.singleCol a, .doubleCol a, .tripleCol a, .thirdCol a{
  display: block;
  text-decoration: none;
}

.singleCol img, .doubleCol img, .tripleCol img, .thirdCol img{
  margin-top: 12px;
  vertical-align: middle;
}

.imgDesc{
  text-align: center;
  font-family: "Courier Prime", monospace;
  font-size: 16px;
  font-style: italic;
}

.TshirtIllustraitonA{
	width:75%;
	border: 1px solid gray;
	padding: 12.5%;
	background: rgba(255,255,255,1);
}

.TshirtIllustraitonB{
	width:100%;
	border: 1px solid gray;
	padding: 0%;
	background: rgba(255,255,255,1);
}


/*responsive layout to remove the white padding (Left and Right) for wide screens up to tablet portrait*/
@media (max-width: 2064px){
}

/* Responsive layout - makes a two column-layout instead of three columns, third column wraps */
@media (max-width: 992px){
  .gridContainer{
    grid-template-areas:
    "topLeft header"
    "content content"
    "footer footer ";
    grid-template-columns: 1fr 5fr;
    justify-content: left;
  }

  .tripleCol{
    flex: 50%;
    max-width: calc(50% - 8px);
  }

  .thirdCol{
    flex: 100%; /*resize column to 100% width of gallery container*/
    max-width: 100%;
    display: flex; /*change display to flex so that <a> blocks inside can flex and wrap*/
    flex-wrap: wrap;
    margin: 0px;
  }

  .thirdCol > a {
    margin: 4px;
    flex: calc(50% - 8px);
  }

  #pageContent{
    width: 66%;
  }

  .navDesc{
    font-size: 2.3vw;
  }

}

/* Responsive layout - makes all columns stack on top of each other instead of next to each other */
@media (max-width: 600px){
  .gridContainer{
    grid-template-areas:
    "topLeft header"
    "content content"
    "footer footer ";
    grid-template-columns: 1fr 5fr;
    justify-content: left;
  }

  .tripleCol, .doubleCol, .thirdCol{
    flex: 100%;
    max-width: 100%;
    display: block;
  }

  .navDesc{
    font-size: 2.3vw;
  }

}