/* =====================================================
   PROJECT PAGE — TEMPLATE
===================================================== */

:root{

 --fontSizeSmall: 0.8rem;
    --fontSizeMedium: 1rem;
    --fontSizeLarge: 1.2rem;
   --fontSizeHuge: 2rem;
    --lineHeightNatural: 1.2;
    --lineHeightLow: 1.1;


    /***SPACES***/
    --spaceY: var(--fontSizeMedium);
    --spaceX: calc(var(--fontSizeMedium) * var(--lineHeightNatural));
    --bodySpaces: 0;
    --rowGutterSmall: calc(var(--fontSizeSmall) * var(--lineHeightNatural));
    --rowGutterMedium: calc(var(--fontSizeMedium) * var(--lineHeightNatural));
    --rowGutterLarge: calc(var(--fontSizeLarge) * var(--lineHeightLow));
    --rowGutterBetweenSections: calc(var(--fontSizeLarge) * 2);
    --colGutter: calc(var(--spaceX)*1);
    --mainTopSpace: 0;
    --mainBottomSpace: calc(var(--fontSizeLarge) * 2);

}
* {
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -o-text-size-adjust: 100%;
	text-size-adjust: 100%;
     box-sizing: border-box;
    /*
    -webkit-font-smoothing: smooth;
	-moz-font-smoothing: smooth;
    -moz-osx-font-smoothing: smooth;
	-ms-font-smoothing: smooth;
    -o-font-smoothing: smooth;
    text-rendering: geometricPrecision;
    */
}
@font-face {
    font-family: "Gerstner Regular";
    src: url("/media/fonts/Gerstner-ProgrammRegular.otf");
}
@font-face {
    font-family: "Gerstner Medium";
    src: url("../media/fonts/Gerstner-ProgrammMedium.otf");
}
@font-face {
    font-family: "Gerstner Bold";
    src: url("../media/fonts/Gerstner-ProgrammBold.otf");
}
body#project {
    --paletteWhite: #f5f5f5;
    --paletteGray: #999999;
    --paletteBlack:  #e4e2db;
    --paletteViolet: #0202dc;
  background: var(--paletteWhite);
  
  color: var(--textColor);
  font-family: "Gerstner Regular", sans-serif;
}

/* =========================
   HEADER — VOLVER AL INICIO
========================= */
::selection {
  background: var(--paletteViolet);
  color: white; /* o creás --paletteOrange */
}

::-moz-selection {
  background: var(--paletteViolet);
  color: white;
}
.project-header {
  position: sticky;
    top: 0;
  display: grid;
   grid-column: 1 / span 12;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--colGutter);
  justify-content: space-between;
  min-height: var(--footerHeight);
  font-size: var(--fontSizeSmall);
  padding: var(--spaceY) var(--spaceX);
}
.project-header a {
  position: relative;
  display: inline-block; /* 👈 CLAVE */
  padding: 0.25em 0.45em; /* aire alrededor de la palabra */
  padding-left: 0;
  
  color: var(--textColor);
  text-decoration: none;
}
.project-header a::before {
  content: "";
  position: absolute;

  /* controla tamaño del recuadro */
  inset: -0.02em -0.35em;

  box-shadow:
    inset 0.5px 0.5px 0 rgba(255,255,255,0),
    inset -0.5px -0.5px 0 rgba(0,0,0,0);

  transition:
    background 0.2s ease,
    box-shadow 0.2s ease;

  pointer-events: none;
  z-index: -1;
}


.project-header a:hover::before {
  background: #cacaca;
opacity: 0.7;
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.9),
    inset 2px 2px 0 rgba(255,255,255,0.4),
    inset -1px -1px 0 rgba(0,0,0,0.3),
    inset -2px -2px 0 rgba(0,0,0,0.15);
}
.back-home {
  grid-column: 1 / span 2;
   padding-left: 0;
   font-family: "Gerstner Bold", sans-serif;
  font-size: var(--fontSizeHuge);
  text-transform: uppercase;
  color: var(--textColor);
  text-decoration: none;
}

.back-home:hover {
  color: var( --paletteViolet);
}

.project-header a.next-project::before {
  
  /* controla tamaño del recuadro */
 inset: -0.1em -0.15em -0.1em -5.5em;
}
.next-project {
  grid-column: 11 / span 2; /* opcional, ahora explico */
  padding-right: 0;
  justify-self: end;
    font-family: "Gerstner Bold", sans-serif;
    justify-content: end;
  font-size: var(--fontSizeHuge);
  text-transform: uppercase;
  color: var(--textColor);
  text-decoration: none;
}

.next-project:hover {
  color: var( --paletteViolet);
}
/* =========================
   MAIN LAYOUT
========================= */

.project-content {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: var(--rowGutterLarge) var(--colGutter);
  padding-inline: var(--spaceX);
  max-width: var(--mainWidth);
  /* margin: 0 auto; */
}

/* =========================
   PROJECT INFO
   (arriba izquierda)
========================= */

.project-info {
  grid-column: 1 / span 6;
margin-top: calc(var(--rowGutterMedium) * 3);
  align-self: start;
}

.project-title {
   /* margin-top: calc(var(--rowGutterMedium)*8); */
  font-size: var(--fontSizeHuge);
  color: var(--paletteViolet);
}

.project-meta {
  font-size: var(--fontSizeMedium);
  margin-top: calc(var(--rowGutterSmall)*-1);
  color: var(--paletteViolet);
}

.project-description {
   grid-column: 1 / span 7;
  margin-top: var(--rowGutterMedium);
  color: var(--paletteViolet);
  
}

/* =========================
   PROJECT MEDIA
   (scroll editorial)
========================= */

.project-media {
  grid-column: 3 / span 10;
  display: flex;
  flex-direction: column;
}

/* base */
.project-media figure {
  margin: 0;
  width: 80%;
}

/* ritmo vertical */
.project-media figure:nth-child(1) {
  margin-top: 20vh;
}

.project-media figure:nth-child(2) {
  margin-top: 35vh;
}

.project-media figure:nth-child(3) {
  margin-top: 25vh;
}

.project-media figure:nth-child(4) {
  margin-top: 40vh;
}

.project-media figure:nth-child(5) {
  margin-top: 20vh;
}

/* alternancia horizontal */
.project-media figure:nth-child(odd) {
  margin-left: 0;
}

.project-media figure:nth-child(even) {
  margin-left: auto;
}

.project-media img {
  width: 100%;
  height: auto;
  display: block;
}
.project-media figure.small {
  width: 40%;
}

.project-media figure.wide {
  width: 80%;
}

/* =========================
   FOOTER — SIGUIENTE
========================= */

/***FOOTER***/
footer {
 
  display: grid;
   grid-column: 1 / span 12;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--colGutter);
  justify-content: space-between;
  min-height: var(--footerHeight);
  font-size: var(--fontSizeSmall);
  padding: var(--spaceY) var(--spaceX);
}


nav.footer_menu,
nav.footer_menu ul {
  display: contents;
  list-style: none;
    text-decoration: none;
    margin-top: 50%;
}

.footer_item {
  list-style: none;
  text-decoration: none;
font-size: var(--fontSizeSmall);
 margin-top: 20%;
}

.footer1 {
  list-style: none;
  text-decoration: none;
  grid-column: 1 / span 2;
    position: relative;
  display: inline-block; /* 👈 CLAVE */
  padding: 0.25em 0.45em; /* aire alrededor de la palabra */
  font-size: var(--fontSizeSmall);
  
  color: var(--textColor);
  text-decoration: none;
}

.footer1 a::before {
  content: "";
  position: absolute;

  /* controla tamaño del recuadro */
  inset: -0.5em -0.35em;

  box-shadow:
    inset 0.5px 0.5px 0 rgba(255,255,255,0),
    inset -0.5px -0.5px 0 rgba(0,0,0,0);

  transition:
    background 0.2s ease,
    box-shadow 0.2s ease;

  pointer-events: none;
  z-index: -1;
}

.footer1 a:hover::before {
  background: #cacaca;
opacity: 0.7;
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.9),
    inset 2px 2px 0 rgba(255,255,255,0.4),
    inset -1px -1px 0 rgba(0,0,0,0.3),
    inset -2px -2px 0 rgba(0,0,0,0.15);
}
.footer2 a:hover::before {
  background: #cacaca;
opacity: 0.7;
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.9),
    inset 2px 2px 0 rgba(255,255,255,0.4),
    inset -1px -1px 0 rgba(0,0,0,0.3),
    inset -2px -2px 0 rgba(0,0,0,0.15);
}

.footer2 {
  list-style: none;
  text-decoration: none;
  grid-column: 3 / span 2;
    position: relative;
  display: inline-block; /* 👈 CLAVE */
  padding: 0.25em 0.45em; /* aire alrededor de la palabra */
  font-size: var(--fontSizeSmall);
  
  color: var(--textColor);
  text-decoration: none;
}
.footer2 a::before {
  content: "";
  position: absolute;

  /* controla tamaño del recuadro */
  inset: -0.5em -0.35em;

  box-shadow:
    inset 0.5px 0.5px 0 rgba(255,255,255,0),
    inset -0.5px -0.5px 0 rgba(0,0,0,0);

  transition:
    background 0.2s ease,
    box-shadow 0.2s ease;

  pointer-events: none;
  z-index: -1;
}

.footer3 {
  grid-column: 10 / span 2;
}
footer a {
  text-decoration: none;
  color: var(--paletteViolet);

}

a:visited {
  color: inherit;
}


/* =========================
   RESPONSIVE (opcional)
========================= */

@media (max-width: 900px) {

  .project-content {
    grid-template-columns: 1fr;
  }

  .project-info,
  .project-media {
    grid-column: 1;
  }

  .project-info {
    position: relative;
    top: auto;
    margin-bottom: var(--rowGutterLarge);
  }

}
