body.pintura{
  background: var(--pintura-bg);
  color: var(--pintura-ink);
}

.p-container{
  max-width:1080px;
  margin:0 auto;
  padding:0 6vw;
}

.p-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:2.2rem 6vw;
}
.p-nav__brand{
  font-family:var(--font-serif);
  font-style:italic;
  font-weight:400;
  font-size:1.25rem;
  text-decoration:none;
  color:var(--pintura-ink);
}
.p-nav__links{
  display:flex;
  gap:2.4rem;
  list-style:none;
  margin:0; padding:0;
}
.p-nav__links a{
  text-decoration:none;
  font-size:0.92rem;
  color:var(--pintura-ink);
  opacity:0.65;
}
.p-nav__links a:hover{ opacity:1; }
.p-nav__other{
  font-size:0.85rem;
  text-decoration:none;
  color:var(--pintura-ink);
  opacity:0.45;
}
.p-nav__other:hover{ opacity:0.8; }

.p-hero{
  padding:7vw 6vw 6vw;
  display:grid;
  grid-template-columns:1.4fr 1fr;
  gap:4rem;
  align-items:end;
}
@media (max-width:760px){ .p-hero{ grid-template-columns:1fr; gap:2rem; } }

.p-hero h1{
  font-family:var(--font-serif);
  font-style:italic;
  font-weight:400;
  font-size:clamp(2.6rem, 5vw, 4.2rem);
  line-height:1.08;
  letter-spacing:-0.01em;
  margin:0 0 1.4rem;
  max-width:14ch;
}
.p-hero p{
  font-size:1.05rem;
  line-height:1.65;
  max-width:42ch;
  opacity:0.7;
  margin:0 0 2rem;
}
.p-btn{
  display:inline-block;
  background:var(--pintura-ink);
  color:var(--pintura-bg);
  padding:0.95em 1.8em;
  border-radius:1px;
  text-decoration:none;
  font-size:0.92rem;
  font-weight:500;
}
.p-hero__note{
  font-size:0.88rem;
  line-height:1.6;
  opacity:0.5;
  padding-top:1.4rem;
  border-top:1px solid var(--pintura-line);
}

.p-section{
  padding:5.5vw 6vw;
  border-top:1px solid var(--pintura-line);
}
.p-section__label{
  font-size:0.82rem;
  color:var(--pintura-accent);
  font-weight:500;
  margin:0 0 0.6rem;
  letter-spacing:0.02em;
}
.p-section h2{
  font-family:var(--font-serif);
  font-style:italic;
  font-weight:400;
  font-size:clamp(1.8rem,3vw,2.5rem);
  margin:0 0 3rem;
  max-width:18ch;
  letter-spacing:-0.01em;
}

.p-servicios{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:0;
}
@media (max-width:640px){ .p-servicios{ grid-template-columns:1fr; } }
.p-servicio{
  padding:2rem 2.2rem 2rem 0;
  border-top:1px solid var(--pintura-line);
}
.p-servicio:nth-child(odd){ padding-right:2.2rem; }
.p-servicio:nth-child(-n+2){ border-top:none; }
.p-servicio h3{
  font-size:1.05rem;
  font-weight:600;
  margin:0 0 0.7rem;
}
.p-servicio p{
  margin:0;
  font-size:0.95rem;
  line-height:1.6;
  opacity:0.65;
}

.p-trabajos{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1.5rem;
}
@media (max-width:760px){ .p-trabajos{ grid-template-columns:1fr 1fr; } }
@media (max-width:480px){ .p-trabajos{ grid-template-columns:1fr; } }

.p-trabajo{
  aspect-ratio:4/5;
  background:var(--pintura-muted);
  position:relative;
  display:flex;
  align-items:flex-end;
  padding:1.1rem;
  border:1px solid var(--pintura-line);
}
.p-trabajo span{
  font-size:0.8rem;
  opacity:0.55;
}

.p-contacto{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4rem;
}
@media (max-width:760px){ .p-contacto{ grid-template-columns:1fr; gap:2rem; } }
.p-contacto dl{
  margin:1.5rem 0 0;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:0.7rem 1.4rem;
  font-size:0.95rem;
}
.p-contacto dt{ opacity:0.5; }
.p-contacto dd{ margin:0; }

.p-form{
  display:grid;
  gap:1rem;
}
.p-form input, .p-form textarea{
  font-family:var(--font-body);
  padding:0.9em 0;
  border:none;
  border-bottom:1px solid var(--pintura-line);
  background:transparent;
  color:var(--pintura-ink);
  font-size:0.95rem;
}
.p-form input::placeholder, .p-form textarea::placeholder{ opacity:0.5; }
.p-form textarea{ min-height:90px; resize:vertical; }
.p-form button{ margin-top:0.5rem; }

.p-footer{
  padding:2.5rem 6vw 3rem;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:0.85rem;
  opacity:0.45;
  border-top:1px solid var(--pintura-line);
}
