/* Responsive editorial portfolio. Original photos retain their lettering. */
.hero-visual{padding:0 0 37px;margin-top:0}
.hero-showcase{transform:rotate(-1deg)}
.showcase-photo{aspect-ratio:3148/2304;background:#e7e8df}
.showcase-photo>img{object-fit:contain;object-position:center;filter:brightness(1.03)}
.showcase-bottom{min-height:140px}
.showcase-bottom p{font-size:27px;max-width:85%;letter-spacing:-.7px}
.showcase-bottom strong{font-size:.88em}
.hero-label{left:10px}
.portfolio-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 30px;align-items:start}
.portfolio-card{min-width:0}
.portfolio-photo{display:block;position:relative;overflow:hidden;aspect-ratio:3/2;border-radius:12px;background:#eeefe7}
.portfolio-photo>img{width:100%;height:100%;object-fit:contain;object-position:center}
.photo-mastersub-toro>img{object-fit:cover;object-position:center 35%;filter:brightness(1.07) contrast(1.02)}
.photo-papelaria-renascenca>img{filter:brightness(1.05) saturate(.93)}
.portfolio-photo:focus-visible{outline-offset:5px}
.portfolio-zoom{position:absolute;right:10px;bottom:10px;display:flex;align-items:center;gap:7px;background:#f8f8f3f2;color:var(--ink);border-radius:30px;padding:8px 11px;font-size:9px;font-weight:700;line-height:1.3;box-shadow:0 2px 10px #0001}
.portfolio-zoom .icon{width:13px;height:13px}
.portfolio-photo:hover .portfolio-zoom{background:var(--yellow)}
.portfolio-card .project-caption{padding-top:20px;align-items:flex-start;gap:15px}
.portfolio-card .project-caption h3{font-size:24px;line-height:1.25;letter-spacing:-.7px}
.portfolio-card .project-caption .eyebrow{font-size:9px;line-height:1.5;letter-spacing:1.25px;margin-bottom:9px}
.portfolio-card .project-caption p:last-child{font-size:13px;line-height:1.55}
.portfolio-card .round-link{width:42px;height:42px;flex-shrink:0}
.portfolio-contact{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:28px;margin-top:35px;border-top:1px solid var(--line)}
.portfolio-contact p{font-size:16px;line-height:1.6;max-width:330px}
.portfolio-contact .button{font-size:13px}
.portfolio-extra{border-block:1px solid var(--line);margin-top:6px}
.portfolio-extra>summary{display:flex;justify-content:space-between;align-items:center;gap:22px;list-style:none;padding:24px 0;cursor:pointer}
.portfolio-extra>summary::-webkit-details-marker{display:none}
.portfolio-extra>summary>span:first-child{display:block}
.portfolio-extra>summary strong{display:block;font-size:16px;line-height:1.5;letter-spacing:-.3px}
.portfolio-extra>summary strong+span{display:block;font-size:12px;color:var(--muted);line-height:1.6;margin-top:4px}
.extra-mark{font-size:26px;line-height:1;flex-shrink:0}
.portfolio-extra[open] .extra-mark{transform:rotate(45deg)}
.extra-content{padding-top:10px;padding-bottom:30px}
@media(max-width:1000px) and (min-width:641px){
  .portfolio-highlights{gap:32px 24px}
  .portfolio-card .project-caption h3{font-size:21px}
  .portfolio-card .project-caption .eyebrow{font-size:8px}
  .portfolio-card .project-caption p:last-child{font-size:12px}
  .showcase-bottom{min-height:115px}
  .showcase-bottom p{font-size:21px}
  .portfolio-contact{align-items:flex-start}
  .portfolio-contact p{font-size:14px}
  .portfolio-contact .button{font-size:12px;padding-inline:16px;flex-shrink:0}
}
@media(max-width:640px){
  .hero-visual{padding:0 0 32px;max-width:460px}
  .showcase-photo{aspect-ratio:3148/2304}
  .showcase-bottom{min-height:108px;padding:21px 23px}
  .showcase-bottom p{font-size:22px;max-width:86%}
  .showcase-bottom strong{font-size:.9em}
  .hero-label{font-size:7px;letter-spacing:.9px;left:6px}
  .portfolio-highlights{grid-template-columns:1fr;gap:31px}
  .portfolio-photo{border-radius:10px}
  .portfolio-zoom{font-size:9px;padding:8px 10px}
  .portfolio-card .project-caption{padding-top:17px}
  .portfolio-card .project-caption h3{font-size:21px}
  .portfolio-card .project-caption .eyebrow{font-size:8px}
  .portfolio-card .project-caption p:last-child{font-size:12px}
  .portfolio-card .round-link{width:40px;height:40px}
  .portfolio-contact{display:block;margin-top:28px;padding-block:25px}
  .portfolio-contact p{font-size:14px;max-width:none}
  .portfolio-contact .button{width:100%;font-size:12px;margin-top:16px;padding-inline:15px}
  .portfolio-extra>summary{padding-block:21px}
  .portfolio-extra>summary strong{font-size:15px}
  .portfolio-extra>summary strong+span{font-size:11px;max-width:270px}
  .extra-content{padding-bottom:25px}
}
@media print{.portfolio-zoom,.portfolio-contact,.portfolio-extra{display:none}.hero-showcase{transform:none}}
