:root{--ink:#171716;--paper:#f3f0e9;--warm:#b97728;--line:#cbc6bb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}.nav{position:absolute;z-index:10;top:0;left:0;width:100%;height:104px;padding:18px 5vw;display:flex;align-items:center;justify-content:space-between;color:white}.brand img{width:150px;filter:brightness(0) invert(1)}nav{display:flex;gap:36px;font-size:13px;letter-spacing:.06em}nav a{border-bottom:1px solid transparent;padding-bottom:4px}nav a:hover{border-color:white}.menu{display:none;background:none;border:0;color:white;font-size:24px}.hero{height:100vh;min-height:680px;position:relative;color:white;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.1) 70%),linear-gradient(0deg,rgba(0,0,0,.35),transparent 50%)}.hero-copy{position:absolute;left:7vw;bottom:15vh}.hero-copy p,.eyebrow{font-size:11px;letter-spacing:.22em;font-weight:600}.hero h1{font-family:'Manrope';font-weight:300;font-size:clamp(48px,6.5vw,98px);line-height:.98;letter-spacing:-.045em;margin:18px 0 36px}.hero h1 em,.manifest em,.contact em{font-family:'Playfair Display';font-weight:400}.hero-copy a{font-size:13px;border-bottom:1px solid rgba(255,255,255,.6);padding-bottom:8px}.hero-copy a span{margin-left:30px}.scroll{position:absolute;right:4vw;bottom:5vh;font-size:10px;letter-spacing:.15em;writing-mode:vertical-rl}.manifest{padding:150px 9vw 160px;max-width:1450px}.manifest h2{font-family:'Manrope';font-size:clamp(42px,5.4vw,78px);font-weight:300;line-height:1.08;letter-spacing:-.04em;max-width:1100px;margin:30px 0}.manifest .lead{max-width:590px;margin-left:auto;font-size:18px;line-height:1.75;color:#4d4b47}.projects{padding:0 5vw 140px}.section-head{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--line);padding:35px 0 50px}.section-head h2,.services>h2{font-family:'Manrope';font-weight:300;font-size:clamp(38px,4vw,64px);margin:12px 0}.section-head>p{font-size:12px;color:#666}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:70px 24px}.project img{width:100%;height:520px;object-fit:cover;display:block;transition:transform .7s}.project{overflow:hidden}.project:hover img{transform:scale(1.015)}.project.wide{grid-column:span 2}.project.wide img{height:72vh}.project.tall img{height:700px}.project div{padding-top:16px}.project span{font-size:9px;letter-spacing:.18em;color:#777}.project h3{font-family:'Manrope';font-size:22px;font-weight:400;margin:7px 0}.about{background:#1c1c1b;color:#eee;display:grid;grid-template-columns:1.05fr .95fr;min-height:800px}.portrait img{width:100%;height:100%;object-fit:cover}.about-copy{padding:11vw 9vw 9vw}.about-copy h2{font-family:'Playfair Display';font-weight:400;font-size:70px;margin:20px 0}.about-copy .big{font-family:'Manrope';font-weight:300;font-size:28px;line-height:1.4}.about-copy>p:not(.eyebrow):not(.big){line-height:1.8;color:#bdbdb8}.about-copy a{display:inline-block;margin-top:30px;border-bottom:1px solid #777;padding-bottom:7px}.editorial{height:90vh;position:relative;background:#111;color:white}.editorial img{width:100%;height:100%;object-fit:cover;filter:brightness(.7)}blockquote{position:absolute;bottom:9vw;right:7vw;width:min(630px,70vw);font-family:'Playfair Display';font-size:clamp(30px,4vw,56px);line-height:1.15;font-weight:400;margin:0}.services{padding:140px 7vw}.services>h2{max-width:800px;font-size:clamp(48px,6vw,84px)}.service-list{margin-top:80px;border-top:1px solid var(--line)}.service-list>div{display:grid;grid-template-columns:70px 1fr 1fr;align-items:center;border-bottom:1px solid var(--line);padding:28px 0}.service-list span{font-size:11px;color:#888}.service-list h3{font-family:'Manrope';font-weight:400;font-size:28px;margin:0}.service-list p{max-width:450px;color:#666;line-height:1.6}.mosaic{display:grid;grid-template-columns:1fr 1fr 1fr;height:650px}.mosaic img{width:100%;height:100%;object-fit:cover}.contact{padding:150px 8vw 90px;background:#d7a14a;color:#191714}.contact h2{font-family:'Manrope';font-weight:300;font-size:clamp(55px,7vw,105px);line-height:.98;letter-spacing:-.05em;margin:28px 0}.contact>p:not(.eyebrow){font-size:18px;max-width:560px;line-height:1.6}.cta{display:inline-block;margin:35px 0 90px;border:1px solid #191714;padding:17px 25px;font-size:13px}.contact-meta{border-top:1px solid rgba(0,0,0,.3);padding-top:25px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.08em}footer{background:#141414;color:#aaa;padding:45px 5vw;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.08em}footer img{width:120px;filter:grayscale(1) brightness(4)}
@media(max-width:800px){.nav{height:80px}.brand img{width:115px}nav{display:none}.menu{display:block}.hero{min-height:640px}.hero-copy{left:6vw;bottom:13vh}.hero h1{font-size:49px}.manifest{padding:100px 7vw}.manifest .lead{margin-left:0}.section-head{display:block}.section-head>p{margin-top:20px}.grid{grid-template-columns:1fr;gap:45px}.project.wide{grid-column:auto}.project img,.project.wide img,.project.tall img{height:62vh}.about{grid-template-columns:1fr}.portrait{height:650px}.about-copy{padding:90px 7vw}.about-copy h2{font-size:54px}.editorial{height:75vh}.service-list>div{grid-template-columns:45px 1fr}.service-list p{grid-column:2;margin-top:8px}.mosaic{grid-template-columns:1fr;height:auto}.mosaic img{height:70vh}.contact{padding:100px 7vw 70px}.contact-meta{display:grid;gap:12px}footer{display:grid;gap:24px}}

/* V2 — enquadramentos revisados */
.project img{object-position:center center}
.project:nth-child(3) img{object-position:center 42%}
.project:nth-child(4) img{object-position:center 38%}
.project:nth-child(6) img{object-position:center 45%}
.portrait img{object-position:center 35%}
.editorial-project img{object-position:center 55%}
@media(max-width:800px){.portrait{height:620px}.portrait img{object-position:center 30%}.project img,.project.wide img,.project.tall img{height:auto;max-height:78vh;object-fit:contain;background:#e9e5dd}.editorial-project img{object-fit:cover;object-position:center center}}

/* V3 — imagens do portfólio preservadas integralmente */
.project{overflow:visible}
.project img,
.project.wide img,
.project.tall img{
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  display:block;
  background:transparent;
}
.project:hover img{transform:none}

/* Retrato: nova foto, sem recorte */
.about{align-items:stretch}
.portrait{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:5vw;
  background:#171716;
}
.portrait img{
  width:100%;
  height:auto;
  max-height:760px;
  object-fit:contain;
  object-position:center;
}

/* Imagem editorial inteira — sem crop */
.editorial{
  height:auto;
  min-height:0;
  overflow:hidden;
}
.editorial img{
  width:100%;
  height:auto;
  object-fit:contain;
  display:block;
  filter:brightness(.66);
}
.editorial blockquote{bottom:7vw}

/* Mosaico final: cada render mantém sua proporção original */
.mosaic{
  height:auto;
  align-items:start;
  background:#e9e5dd;
}
.mosaic img{
  width:100%;
  height:auto;
  object-fit:contain;
  display:block;
}

@media(max-width:800px){
  .project img,.project.wide img,.project.tall img{height:auto;max-height:none}
  .portrait{height:auto;padding:28px 7vw 0}
  .portrait img{height:auto;max-height:none}
  .editorial{height:auto}
  .editorial-project img{object-fit:contain}
  .editorial blockquote{position:absolute;left:7vw;right:7vw;bottom:8vw;width:auto}
  .mosaic img{height:auto}
}

/* V4 — refinamento da versão one-page */
.project div{padding-top:13px;min-height:30px}
.project span{font-size:10px;letter-spacing:.2em}
.contact-meta a{border-bottom:1px solid rgba(0,0,0,.35);width:max-content;padding-bottom:3px}
@media(max-width:800px){
  .grid{gap:54px}
  .project div{padding-top:11px}
  .contact-meta a{margin-top:4px}
}

/* V5 — portfólio ampliado e Instagram em destaque */
.more-projects{padding:130px 5vw 145px;background:#e9e5dd}
.more-projects-head{display:flex;align-items:end;justify-content:space-between;border-top:1px solid #c8c2b6;padding:30px 0 48px}
.more-projects-head>p:last-child{font-size:12px;color:#666;max-width:360px;line-height:1.6;text-align:right}
.portfolio-flow{columns:3;column-gap:22px}
.portfolio-flow figure{break-inside:avoid;margin:0 0 34px;display:inline-block;width:100%}
.portfolio-flow img{width:100%;height:auto;display:block}
.portfolio-flow figcaption{font-size:9px;letter-spacing:.18em;color:#777;padding-top:11px}
.contact-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin:35px 0 85px}
.contact-actions .cta{margin:0;flex:0 0 auto}
.instagram-feature{margin-left:auto;display:flex;flex-direction:column;align-items:flex-start;border-top:1px solid rgba(0,0,0,.35);border-bottom:1px solid rgba(0,0,0,.35);padding:18px 0 20px;min-width:min(520px,48vw)}
.instagram-feature span{font-size:9px;letter-spacing:.22em;font-weight:600;margin-bottom:8px}
.instagram-feature strong{font-family:'Manrope';font-size:clamp(28px,3vw,48px);font-weight:300;letter-spacing:-.04em}
.instagram-feature small{font-size:11px;margin-top:9px;opacity:.7}
@media(max-width:900px){.portfolio-flow{columns:2}.contact-actions{display:block}.contact-actions .cta{margin:0 0 45px}.instagram-feature{margin:0;min-width:0;width:100%}}
@media(max-width:600px){.more-projects{padding:90px 7vw}.more-projects-head{display:block}.more-projects-head>p:last-child{text-align:left;margin-top:18px}.portfolio-flow{columns:1}.portfolio-flow figure{margin-bottom:30px}.instagram-feature strong{font-size:36px}}
\n\n/* V6 — acabamento final, responsividade e acessibilidade */
:focus-visible{outline:2px solid currentColor;outline-offset:5px}
img{max-width:100%}
.nav{transition:background .25s ease,color .25s ease,box-shadow .25s ease}
.nav.is-scrolled{position:fixed;height:82px;background:rgba(23,23,22,.94);backdrop-filter:blur(12px);box-shadow:0 1px 0 rgba(255,255,255,.08)}
.nav.is-scrolled .brand img{width:132px}
section[id]{scroll-margin-top:100px}
.portfolio-flow figure img{transition:opacity .25s ease}
.portfolio-flow figure:hover img{opacity:.94}
@media(max-width:800px){
  .nav nav.mobile-open{display:flex!important;position:absolute;top:80px;left:0;right:0;background:rgba(23,23,22,.98);padding:28px 7vw 34px;flex-direction:column;gap:24px;border-top:1px solid rgba(255,255,255,.12)}
  .nav nav.mobile-open a{font-size:15px}
  .nav.is-scrolled{height:72px}.nav.is-scrolled nav.mobile-open{top:72px}
  .hero>img{object-position:center center}
  .hero-copy{right:7vw}
  .hero-copy p{line-height:1.5}
  .scroll{display:none}
  .manifest h2{font-size:clamp(38px,11vw,56px)}
  .section-head h2{font-size:clamp(38px,10vw,52px)}
  .about-copy .big{font-size:24px}
  .services{padding:100px 7vw}
  .services>h2{font-size:clamp(44px,12vw,62px)}
  .contact h2{font-size:clamp(48px,13vw,70px)}
}
@media(max-width:520px){
  .hero{min-height:610px;height:92svh}
  .hero h1{font-size:clamp(42px,13vw,54px)}
  .hero-copy{bottom:12vh}
  .manifest{padding:86px 7vw 100px}
  .projects{padding:0 7vw 100px}
  .about-copy{padding:72px 7vw 82px}
  .about-copy h2{font-size:48px}
  .service-list h3{font-size:24px}
  .contact-actions{margin-bottom:60px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
