
:root{
  --bg:#0c0b09; --bg2:#141310; --fg:#ebe6dc; --mute:rgba(235,230,220,.55); --mute2:rgba(235,230,220,.32);
  --line:rgba(235,230,220,.14); --acc:#c89b4f;
  --serif:"Instrument Serif",Georgia,"Times New Roman",serif;
  --sans:"Inter Tight",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --pad:clamp(1.1rem,3.4vw,3rem);
  --ease:cubic-bezier(.2,.75,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--sans);font-weight:300;font-size:1.0625rem;line-height:1.55;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
figure{margin:0}
.mono{font-family:var(--mono);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;font-weight:400}
.mute{color:var(--mute)}
.serif{font-family:var(--serif);font-weight:400}
.grande{font-size:clamp(1.3rem,2.3vw,1.9rem);line-height:1.35;font-weight:300;max-width:34ch;margin:0}
.link{border-bottom:1px solid var(--line);padding-bottom:.25rem;transition:border-color .2s}
.link:hover{border-color:var(--fg)}
.skip{position:absolute;left:-999px;top:0;background:var(--fg);color:var(--bg);padding:.5rem 1rem;z-index:100}
.skip:focus{left:0}
::selection{background:var(--acc);color:var(--bg)}

/* topo */
.topo{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;justify-content:space-between;
  padding:1.1rem var(--pad);mix-blend-mode:difference;color:#fff;transition:padding .3s var(--ease)}
.topo.scrolled{padding-top:.7rem;padding-bottom:.7rem}
.marca{font-family:var(--serif);font-size:1.35rem;letter-spacing:.01em}
.nav{display:flex;gap:1.8rem;font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}
.nav a{opacity:.85;transition:opacity .2s}
.nav a:hover{opacity:1}
.nav .lang{opacity:.5;margin-left:.6rem}
.menu-btn{display:none;width:2.2rem;height:2.2rem;position:relative}
.menu-btn span{position:absolute;left:.35rem;right:.35rem;height:1px;background:#fff;transition:transform .3s var(--ease),top .3s var(--ease)}
.menu-btn span:first-child{top:.85rem}.menu-btn span:last-child{top:1.35rem}
.menu-btn[aria-expanded="true"] span:first-child{top:1.1rem;transform:rotate(45deg)}
.menu-btn[aria-expanded="true"] span:last-child{top:1.1rem;transform:rotate(-45deg)}
.menu{display:none}
@media (max-width:760px){
  .nav{display:none}.menu-btn{display:block}
  .menu{position:fixed;inset:0;z-index:40;background:var(--bg);display:flex;flex-direction:column;justify-content:center;gap:1.2rem;
    padding:var(--pad);font-family:var(--serif);font-size:2.6rem;line-height:1.1;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
  .menu.open{opacity:1;visibility:visible}
  .menu .lang{font-family:var(--mono);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-top:1rem}
}

/* hero */
.hero{position:relative;height:100svh;min-height:560px;overflow:hidden;display:grid}
.hero-img,.hero-img img{position:absolute;inset:0;width:100%;height:100%}
.hero-img img{object-fit:cover;object-position:center 40%;animation:kb 14s var(--ease) both;filter:brightness(.82)}
@keyframes kb{from{transform:scale(1.08)}to{transform:scale(1)}}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(12,11,9,.85) 0%,rgba(12,11,9,.15) 45%,rgba(12,11,9,.35) 100%)}
.hero-txt{position:relative;z-index:2;align-self:end;padding:0 var(--pad) calc(var(--pad) + 1rem)}
.hero-nome{font-family:var(--serif);font-weight:400;font-size:clamp(4.2rem,15vw,14rem);line-height:.86;letter-spacing:-.02em;margin:0 0 1.2rem -.04em}
.hero-nome em{font-style:italic;color:var(--fg)}
.hero-tag{margin:0;color:var(--mute)}
.hero-leg{position:absolute;right:var(--pad);bottom:calc(var(--pad) + 1rem);z-index:2;margin:0;color:var(--mute);max-width:26ch;text-align:right;line-height:1.5}
.hero-scroll{position:absolute;left:50%;bottom:1.1rem;transform:translateX(-50%);z-index:2;color:var(--mute);animation:bob 2.4s ease-in-out infinite}
@keyframes bob{50%{transform:translate(-50%,6px)}}
@media (max-width:760px){.hero-leg{position:static;text-align:left;max-width:none;padding:0 var(--pad) 2.4rem;order:3}.hero{grid-template-rows:1fr auto auto}.hero-txt{padding-bottom:1rem}.hero-scroll{display:none}}

/* intro */
.intro{padding:clamp(5rem,12vw,10rem) var(--pad) clamp(3rem,7vw,6rem);max-width:1500px;margin:0 auto}
.intro-txt{font-family:var(--serif);font-size:clamp(1.6rem,3.4vw,3.1rem);line-height:1.22;letter-spacing:-.005em;max-width:30ch;margin:0}

/* séries index */
.sec-tit{margin:0 var(--pad) 1.2rem;padding-top:clamp(3rem,7vw,6rem);display:flex;align-items:baseline;gap:1rem;color:var(--mute)}
.sec-tit::after{content:"";flex:1;height:1px;background:var(--line)}
.srows{border-top:1px solid var(--line);margin:0 var(--pad)}
.srow{display:grid;grid-template-columns:4rem 1fr auto;align-items:center;gap:1rem 2rem;padding:1.4rem 0;border-bottom:1px solid var(--line);position:relative;transition:padding .35s var(--ease)}
.srow-num{color:var(--mute);transition:color .3s}
.srow-tit{font-family:var(--serif);font-size:clamp(2.2rem,6vw,5.6rem);line-height:1;letter-spacing:-.02em;transition:transform .45s var(--ease),color .3s}
.srow-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;color:var(--mute);text-align:right}
.srow-thumb{display:none}
@media (hover:hover){
  .srow:hover{padding-left:1rem}
  .srow:hover .srow-tit{transform:translateX(.3rem)}
  .srow:hover .srow-num{color:var(--acc)}
}
.hover-img{position:fixed;left:0;top:0;width:min(28vw,380px);pointer-events:none;z-index:30;opacity:0;transform:translate(-50%,-50%) scale(.92) rotate(-2deg);transition:opacity .3s,transform .5s var(--ease)}
.hover-img.on{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}
.hover-img img{width:100%;height:auto;box-shadow:0 30px 80px rgba(0,0,0,.6)}
@media (max-width:760px){
  .srow{grid-template-columns:2.4rem 1fr 5.2rem;grid-template-areas:"num tit thumb" "num meta thumb"}
  .srow-num{grid-area:num;align-self:start;margin-top:.5rem}.srow-tit{grid-area:tit}.srow-meta{grid-area:meta;align-items:flex-start;text-align:left;flex-direction:row;flex-wrap:wrap;gap:.2rem .8rem}
  .srow-thumb{display:block;grid-area:thumb;width:5.2rem}.srow-thumb img{width:100%;aspect-ratio:4/5;object-fit:cover}
  .hover-img{display:none}
}

/* seleção */
.masonry{columns:3;column-gap:1.2rem;padding:0 var(--pad)}
.sel-item{display:block;break-inside:avoid;margin-bottom:1.2rem;position:relative}
.sel-item img{width:100%;aspect-ratio:var(--r);object-fit:cover;transition:opacity .4s}
.sel-leg{display:block;margin-top:.5rem;color:var(--mute2);transition:color .3s}
.sel-item:hover .sel-leg{color:var(--fg)}
.sel-item:hover img{opacity:.85}
@media (max-width:1000px){.masonry{columns:2}}
@media (max-width:520px){.masonry{columns:2;column-gap:.7rem}.sel-item{margin-bottom:.7rem}}

/* sobre teaser */
.sobre-teaser{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(2rem,6vw,6rem);align-items:center;padding:clamp(4rem,10vw,9rem) var(--pad);max-width:1500px;margin:0 auto}
.st-img img{width:100%;max-width:420px;filter:grayscale(1) contrast(1.05)}
.st-txt .link{display:inline-block;margin-top:2rem}
@media (max-width:760px){.sobre-teaser{grid-template-columns:1fr}.st-img img{max-width:240px}}

/* rodapé */
.rodape{border-top:1px solid var(--line);padding:clamp(3rem,6vw,5rem) var(--pad) 1.5rem;margin-top:clamp(3rem,6vw,5rem)}
.rodape-grid{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap}
.email{font-family:var(--serif);font-size:clamp(1.6rem,4.2vw,3.6rem);letter-spacing:-.02em;line-height:1.1;display:inline-block;border-bottom:1px solid var(--line);transition:border-color .3s;word-break:break-all}
.email:hover{border-color:var(--fg)}
.rodape-links{display:flex;flex-direction:column;gap:.5rem;font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}
.rodape-base{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:3rem;padding-top:1rem;border-top:1px solid var(--line);color:var(--mute2)}

/* série */
.serie-cab{padding:clamp(7rem,16vw,12rem) var(--pad) clamp(2rem,4vw,4rem);max-width:1500px;margin:0 auto}
.serie-num{margin:0 0 1rem;color:var(--acc)}
.serie-tit{font-family:var(--serif);font-weight:400;font-size:clamp(3.4rem,11vw,10rem);line-height:.9;letter-spacing:-.025em;margin:0 0 1.4rem -.03em}
.serie-meta{display:flex;flex-wrap:wrap;gap:.4rem 2rem;color:var(--mute);margin:0 0 2.4rem}
.serie-txt{font-size:clamp(1.1rem,1.5vw,1.3rem);line-height:1.5;max-width:62ch;margin:0;color:rgba(235,230,220,.85)}
.serie-fluxo{padding:clamp(1rem,3vw,3rem) 0 0}
.bloco{padding:clamp(1.4rem,4vw,4.5rem) var(--pad);display:grid;gap:clamp(1rem,3vw,3rem)}
.bloco-largo .fig{width:min(100%,1500px);margin:0 auto}
.bloco-par{grid-template-columns:1fr 1fr;align-items:start}
.bloco-par.dir .fig:first-child{margin-top:clamp(2rem,8vw,8rem)}
.bloco-par.esq .fig:last-child{margin-top:clamp(2rem,8vw,8rem)}
.bloco-alto .fig{width:min(100%,52vw)}
.bloco-alto.dir .fig{margin-left:auto}
.bloco-quad .fig{width:min(100%,66vw)}
.bloco-quad.dir .fig{margin-left:auto}
.fig-btn{display:block;width:100%;cursor:zoom-in}
.fig img{width:100%;height:auto}
.fig figcaption{margin-top:.7rem;color:var(--mute);letter-spacing:.03em;text-transform:none;font-size:.74rem;line-height:1.5;max-width:60ch}
.fig .sep{color:var(--mute2);margin:0 .1rem}
.fig.lowres{max-width:720px}
.bloco-par .fig.lowres{max-width:none}
@media (max-width:700px){
  .bloco-par{grid-template-columns:1fr}
  .bloco-par.dir .fig:first-child,.bloco-par.esq .fig:last-child{margin-top:0}
  .bloco-alto .fig,.bloco-quad .fig{width:100%}
  .bloco{padding:1.2rem var(--pad)}
}
.fig img{opacity:0;transform:translateY(14px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.fig.in img,.no-io .fig img{opacity:1;transform:none}
.serie-nav{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:clamp(3rem,7vw,6rem) var(--pad) 0;border-top:1px solid var(--line);margin:clamp(3rem,7vw,6rem) var(--pad) 0;padding-left:0;padding-right:0}
.serie-nav a{display:flex;flex-direction:column;gap:.6rem}
.serie-nav .serif{font-size:clamp(1.8rem,4vw,3.4rem);line-height:1;letter-spacing:-.02em;transition:color .3s}
.serie-nav a:hover .serif{color:var(--acc)}
.serie-nav .dir{text-align:right;align-items:flex-end}

/* páginas */
.pag-cab{padding:clamp(7rem,16vw,12rem) var(--pad) 2rem}
.pag-tit{font-family:var(--serif);font-weight:400;font-size:clamp(3rem,9vw,7.5rem);line-height:.92;letter-spacing:-.025em;margin:0 0 1rem -.03em}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem}
.chip{font-family:var(--mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line);padding:.55rem .9rem;border-radius:999px;transition:border-color .2s,background .2s,color .2s}
.chip:hover{border-color:var(--fg)}
.chip.on{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.chip.on .mute{color:rgba(12,11,9,.55)}
.grade{columns:4;column-gap:.9rem;padding:1rem var(--pad) 0}
.tile{break-inside:avoid;margin-bottom:.9rem}
.tile img{width:100%;aspect-ratio:var(--r);object-fit:cover}
.tile figcaption{margin-top:.4rem;color:var(--mute2);font-size:.66rem}
.tile.hide{display:none}
@media (max-width:1100px){.grade{columns:3}}
@media (max-width:700px){.grade{columns:2;column-gap:.6rem}.tile{margin-bottom:.6rem}}

.sobre{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(2rem,6vw,6rem);padding:clamp(7rem,16vw,12rem) var(--pad) 2rem;max-width:1500px;margin:0 auto}
.sobre-img img{width:100%;max-width:440px;filter:grayscale(1) contrast(1.05);position:sticky;top:6rem}
.bio p{font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.55;max-width:60ch;margin:0 0 1.2rem;color:rgba(235,230,220,.88)}
.bio em{font-style:italic;font-family:var(--serif);font-size:1.12em}
.h-mono{margin:3rem 0 .8rem}
.lista-series{list-style:none;padding:0;margin:0}
.lista-series li{border-top:1px solid var(--line)}
.lista-series li:last-child{border-bottom:1px solid var(--line)}
.lista-series a{display:flex;gap:1.2rem;align-items:baseline;padding:.9rem 0}
.lista-series .serif{font-size:clamp(1.4rem,2.6vw,2.2rem);flex:1;transition:color .2s}
.lista-series a:hover .serif{color:var(--acc)}
@media (max-width:760px){.sobre{grid-template-columns:1fr}.sobre-img img{max-width:260px;position:static}}

.contato{padding:clamp(7rem,16vw,12rem) var(--pad) 2rem;max-width:1500px;margin:0 auto}
.contato .email{margin:2.5rem 0 3.5rem}
.contato-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;border-top:1px solid var(--line);padding-top:2rem}
.contato-grid p{margin:0 0 .5rem}
@media (max-width:760px){.contato-grid{grid-template-columns:1fr}}

/* lightbox */
.lightbox{position:fixed;inset:0;z-index:90;background:rgba(8,7,6,.96);display:grid;place-items:center;padding:3.5rem var(--pad)}
.lightbox[hidden]{display:none}
.lightbox figure{max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;gap:.8rem}
.lightbox img{max-width:min(100%,1700px);max-height:calc(100svh - 8rem);width:auto;height:auto;object-fit:contain}
.lightbox figcaption{color:var(--mute);text-transform:none;letter-spacing:.03em;text-align:center;max-width:70ch}
.lightbox button{position:absolute;font-family:var(--mono);font-size:1.3rem;color:var(--mute);padding:1rem;transition:color .2s}
.lightbox button:hover{color:var(--fg)}
.lb-close{top:.6rem;right:var(--pad);font-size:1.8rem}
.lb-prev{left:var(--pad);top:50%;transform:translateY(-50%)}
.lb-next{right:var(--pad);top:50%;transform:translateY(-50%)}
@media (max-width:700px){.lb-prev,.lb-next{top:auto;bottom:.6rem;transform:none}}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.fig img{opacity:1;transform:none}}
