/* Portfólio público — identidade compartilhada com o site institucional. */
.portfolio-page .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.portfolio-page [hidden]{display:none!important}
.portfolio-page a:focus-visible,.portfolio-page button:focus-visible{outline:3px solid var(--amber);outline-offset:5px}
.portfolio-hero{padding:86px 0 72px;border-bottom:1px solid var(--line);overflow:hidden;background:radial-gradient(ellipse at 82% 35%,#26334a55,transparent 52%)}
.hero-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center}
.portfolio-kicker{font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--text-soft);display:flex;align-items:center;gap:10px;margin-bottom:30px}
.portfolio-kicker>span{width:7px;height:7px;border-radius:50%;background:var(--amber)}
.portfolio-hero h1{font-size:clamp(42px,5.4vw,72px);line-height:1.06;letter-spacing:-.055em;font-weight:750;margin-bottom:26px}
.portfolio-hero h1 em{color:var(--amber);font-style:normal}
.portfolio-intro{color:var(--text-soft);font-size:18px;max-width:465px;margin-bottom:30px}
.portfolio-page .btn{gap:20px}.hero-caption{display:flex;align-items:center;gap:17px;margin-top:42px}.hero-caption strong{font-size:42px;line-height:1;font-weight:500;letter-spacing:-.06em;color:var(--amber)}.hero-caption>span{font-size:12px;line-height:1.65;color:var(--text-soft)}
.hero-showcase{position:relative;height:400px;margin-top:30px}.showcase-label{position:absolute;top:0;left:30px;font-size:10px;letter-spacing:.16em;color:var(--text-soft)}
.hero-showcase img{position:absolute;width:85%;border:5px solid #293142;border-radius:9px;box-shadow:0 24px 50px #0006;aspect-ratio:1080/765;object-fit:cover;object-position:top}
.showcase-back{top:40px;right:-4%;transform:rotate(7deg)}.showcase-front{top:126px;left:0;transform:rotate(-6deg)}.showcase-note{position:absolute;bottom:-16px;right:0;color:var(--text-soft);font-size:11px;display:flex;gap:30px;align-items:center}.showcase-note>span{font-size:30px;color:var(--amber)}
.portfolio-work{padding:72px 0}.work-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px}.work-heading h2{font-size:clamp(28px,3vw,39px);letter-spacing:-.04em}.work-heading p{font-size:13px;color:var(--text-soft);margin:0 0 8px}.portfolio-page .eyebrow{color:var(--amber);font-size:11px;letter-spacing:.14em}
.portfolio-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:38px}.portfolio-filters button{font:inherit;font-size:13px;min-height:44px;padding:9px 17px;border-radius:6px;border:1px solid var(--line-strong);color:var(--text-soft);background:transparent;cursor:pointer}.portfolio-filters button:hover{color:#fff;border-color:var(--amber)}.portfolio-filters button[aria-pressed=true]{background:var(--amber);border-color:var(--amber);color:var(--amber-ink);font-weight:650}.portfolio-filters button span{font-size:10px;margin-left:8px;opacity:.75}
.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 32px}.project{min-width:0}.project-visual{display:block;position:relative;overflow:hidden;border:1px solid var(--line-strong);border-radius:9px;text-decoration:none;background:#1c2536}.browser-bar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 13px;font-size:10px;color:#9eabbf;background:#141d2c}.browser-dots{font-size:8px;letter-spacing:2px;color:#6a778b}.project-visual img{width:100%;aspect-ratio:1080/765;object-fit:cover;object-position:top;transition:transform .35s ease}.project-visual:hover img{transform:scale(1.025)}.visit-overlay{position:absolute;bottom:15px;right:15px;padding:8px 14px;background:#0a0f1cee;color:white;font-size:12px;border:1px solid #ffffff33;border-radius:5px;opacity:0;transition:opacity .2s}.project-visual:hover .visit-overlay,.project-visual:focus-visible .visit-overlay{opacity:1}.project-meta{display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--amber);margin:21px 0 10px}.project-meta>span:last-child{color:#8390a3}.project h3{font-size:25px;font-weight:650;letter-spacing:-.03em}.project p{font-size:14px;color:var(--text-soft);max-width:490px;line-height:1.7;margin:10px 0 14px}.project-link{font-size:13px;text-decoration:none;border-bottom:1px solid var(--line-strong);padding-bottom:4px;display:inline-flex;gap:24px;align-items:center}.project-link:hover{color:var(--amber)}.portfolio-footnote{font-size:11px;color:var(--text-soft);margin:45px 0 0;padding-top:22px;border-top:1px solid var(--line)}
.portfolio-cta{padding:64px 0;background:var(--ink-2);border-top:1px solid var(--line)}.cta-layout{display:flex;align-items:center;justify-content:space-between;gap:35px}.portfolio-cta h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.045em;margin-top:15px}.portfolio-cta p{color:var(--text-soft);font-size:15px;margin-bottom:0}.cta-layout>.btn{flex-shrink:0}
@media(min-width:1000px){.project:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:32px;align-items:start}.project:last-child .project-visual{grid-row:1/6}.project:last-child .project-meta{margin-top:25px}.project:last-child h3{align-self:end}.project:last-child p{align-self:start}.project:last-child .project-link{justify-self:start}}
@media(max-width:800px){.portfolio-hero{padding:50px 0 55px}.hero-layout{gap:20px}.hero-showcase{height:330px}.showcase-front{top:110px}.showcase-note{bottom:10px;font-size:9px}.portfolio-kicker{font-size:9px;letter-spacing:.1em}.portfolio-intro{font-size:16px}.work-heading{display:block}.work-heading p{margin-top:15px}.projects-grid{gap:40px 22px}.project h3{font-size:21px}.cta-layout{align-items:start;flex-direction:column}}
@media(max-width:600px){.hero-layout{grid-template-columns:1fr}.portfolio-hero h1{font-size:51px}.hero-showcase{height:340px;max-width:420px;width:100%;margin:20px auto 0}.showcase-front{top:103px}.showcase-back{right:0}.showcase-note{bottom:0}.hero-caption{margin-top:28px}.portfolio-work{padding:48px 0}.projects-grid{grid-template-columns:1fr;gap:38px}.portfolio-filters{gap:7px;margin-bottom:28px}.portfolio-filters button{padding:8px 12px;font-size:12px}.portfolio-cta{padding:46px 0}.browser-bar{font-size:9px}.project h3{font-size:25px}}
/* Oito projetos: grade uniforme em quatro linhas. */
@media(min-width:1000px){.project:last-child{grid-column:auto;display:block}.project:last-child .project-meta{margin-top:21px}}
