/* Direção editorial: ritmo, contraste e enquadramento integral. */
:root{--gutter:clamp(20px,5vw,92px);--night:#1e2421;--header-height:83px;--hero-height:clamp(360px,calc(100svh - 325px),800px)}
html{scroll-padding-top:calc(var(--header-height) + 24px)}
.site-header{position:sticky;top:0;z-index:10;min-height:var(--header-height);padding:14px var(--gutter);gap:36px}
.brand img{width:172px;height:54px}
.preview-bar{padding:3px 12px;font-size:11px}
.opening{background:var(--paper);color:var(--ink);padding:30px var(--gutter) 30px}
.opening-intro{max-width:1320px;margin-bottom:28px;align-items:end}
.opening-intro h1{font-size:clamp(32px,3vw,46px);margin-top:8px}
.opening-intro .eyebrow{color:var(--muted);font-size:10px;letter-spacing:.19em}
.opening .text-link{border-color:#a3aa9e;color:var(--ink);font-size:15px}
.opening-work{width:min(100%,calc(var(--hero-height) * 1.499),1320px);max-width:none;margin:auto}
.opening-work>.image-link{display:grid;grid-template-columns:minmax(0,1fr);width:100%;max-width:100%;position:relative;isolation:isolate;touch-action:pan-y}
.opening-work img{grid-area:1/1;width:100%;height:auto;max-height:var(--hero-height);max-width:100%;object-fit:contain}
.opening-work figcaption{max-width:none;margin:18px 0 0;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:24px;align-items:center}
.hero-caption{gap:16px;min-width:0}
.hero-caption h2{font-size:24px}
.opening .eyebrow,.opening .small{color:var(--muted)}
.slideshow-controls{gap:6px}
.slideshow-controls button:hover{background:#efeee8}
.opening :focus-visible{outline-color:var(--accent)}
#viewer :focus-visible{outline-color:#b9d2b7}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.opening-pages{display:flex;gap:5px;align-items:center;--progress:0}
.page-step{display:grid;place-items:center;min-width:28px;min-height:44px;padding:0 3px}
.page-track{display:block;width:24px;height:2px;background:#7e8979;position:relative}
.page-fill{display:block;width:100%;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left}
.page-step[aria-current=true] .page-track{background:#b7c0b2}
.page-step[aria-current=true] .page-fill{transform:scaleX(var(--progress))}
.page-step[aria-current=true] .page-track:before{content:'';position:absolute;left:0;top:-1px;width:4px;height:4px;border-radius:50%;background:var(--accent)}
body[data-page=home] .site-header{border-bottom-color:transparent}
body[data-page=home] .interiors-invite{background:#f0efe9}
body[data-page=home] .site-footer{background:#eeede6;color:var(--ink)}
body[data-page=home] .site-footer p,body[data-page=home] .footer-bottom{color:var(--muted)}
body[data-page=home] .site-footer .text-link,body[data-page=home] .footer-bottom{border-color:#bec3b7}
.collection{padding-top:1px;max-width:1600px;margin:auto}
.section-intro{max-width:none;border:0;margin:100px 0 60px;padding:0;grid-template-columns:1.2fr 1fr;align-items:end;gap:25px 80px}
.section-intro h2{font-size:clamp(42px,4.8vw,70px);max-width:630px;letter-spacing:-.025em}
.section-intro>p:last-child{font-size:19px;justify-self:end;max-width:360px}
.collection-toolbar{position:sticky;top:var(--header-height);z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);padding:6px 0;margin-bottom:50px;font-size:14px}
.toolbar-note{color:var(--muted)}
.view-switch{display:flex;gap:8px}
.view-switch button{min-height:44px;padding:7px 15px;font-size:14px;color:var(--muted)}
.view-switch button[aria-pressed=true]{color:var(--ink);text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:1px}
.collection-works{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:110px clamp(26px,5vw,80px);align-items:start}
.work{max-width:none;margin:0;min-width:0;width:100%;scroll-margin-top:calc(var(--header-height) + 85px)}
.work.wide{grid-column:1/-1;width:86%;justify-self:center}
.work.seven{grid-column:span 7}
.work.five{grid-column:span 5}
.work.six{grid-column:span 6}
.work.offset{margin-top:100px}
.work.portrait{width:100%;max-width:470px;justify-self:center}
.work figcaption{gap:12px;margin-top:15px}
.work figcaption>div{min-width:0}
.work h3{font-size:clamp(24px,2.2vw,33px)}
.work .eyebrow{margin-bottom:5px;font-size:11px}
.work .save-label{display:none}
.save-button{padding:0;min-width:44px;justify-content:center}
.image-link{position:relative}
.image-hint{position:absolute;right:14px;bottom:14px;background:var(--paper);color:var(--ink);padding:7px 14px;font:13px var(--body);opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s;pointer-events:none}
.image-link:hover .image-hint,.image-link:focus-visible .image-hint{opacity:1;transform:none}
.collection-works.overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 30px}
.overview .work{grid-column:auto;margin:0;max-width:none;width:100%}
.overview .work.portrait{width:75%;justify-self:center}
.overview .work h3{font-size:23px}
.overview .work figcaption{gap:8px}
.overview .image-hint{display:none}
.collection-end{margin:100px auto 110px}
.collection-end h2{font-size:clamp(36px,4.7vw,65px)}
.interiors-invite{background:#e9e7df;padding-top:90px;padding-bottom:100px;gap:30px 80px}
.interiors-invite h2{font-size:clamp(38px,4.8vw,70px);letter-spacing:-.02em}
.interiors-invite>div{align-self:end}
.about{padding-top:110px;padding-bottom:120px}
.about h2{font-size:clamp(42px,4.8vw,70px)}
.site-footer{background:var(--night);color:var(--paper);border:0;padding-top:55px}
.site-footer p,.footer-bottom{color:#bac3ba}
.site-footer .text-link,.footer-bottom{border-color:#566257}
.page-lead{max-width:1440px;padding-top:65px;padding-bottom:70px}
.page-lead h1{font-size:clamp(44px,6.2vw,88px);letter-spacing:-.025em}
.interiors-layout{grid-template-columns:minmax(0,1fr) minmax(0,.82fr);gap:clamp(45px,8vw,130px);align-items:start}
.scale-study{max-width:620px;min-width:0}
.room-scene{position:relative;isolation:isolate}
.room-image{width:100%;height:auto}
.room-art{position:absolute;left:51.5%;top:33%;width:50%;transform:translate(-50%,-50%)}
.room-art img{width:100%;height:auto}
.scene-label{position:absolute;bottom:12px;left:16px;background:var(--paper);padding:4px 10px;font-size:11px;letter-spacing:.04em}
.scene-credit{font-size:12px;margin-top:12px;max-width:520px}
.interiors-copy{padding-top:20px}
.interiors-copy h2{font-size:clamp(36px,4.1vw,58px);margin:16px 0 26px}
.interiors-copy>p:not(.eyebrow){font-size:18px;color:var(--muted)}
.composition-controls{margin-top:35px;border-top:1px solid var(--line);padding-top:28px}
.composition-controls>label{display:block;font-size:14px;margin-bottom:10px}
select{font:inherit;color:var(--ink);background:transparent;border:1px solid #a9afa6;border-radius:0;padding:12px 36px 12px 12px;width:100%;min-width:0;max-width:100%;font-size:16px}
select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.study-controls{margin-top:16px;padding:16px 0 5px}
.study-actions{display:flex;flex-direction:column;align-items:flex-start;gap:22px;margin-top:22px}
.study-actions .text-link{margin:0;font-size:15px}
.study-actions .primary-link{font-size:16px;gap:18px}
.project-notes{background:var(--soft);border-top:0;padding-top:65px;padding-bottom:65px}
.simple-cta{background:var(--paper);padding-top:90px;padding-bottom:90px}
.simple-cta h2{font-size:clamp(36px,4vw,56px)}
#viewer{background:var(--night);color:var(--paper);padding:14px 30px}
#viewer .eyebrow,#viewer .small{color:#bdc8be}
.viewer-top{min-height:52px}
.viewer-top #viewer-position{margin-right:auto}
#viewer-background{min-height:44px;padding:8px 12px;font-size:13px;border-bottom:1px solid #788478}
.viewer-picture{padding:18px 0}
.viewer-actions button[aria-pressed=true]{background:#3c4b40}
#viewer.light{background:var(--paper);color:var(--ink)}
#viewer.light .eyebrow,#viewer.light .small{color:var(--muted)}
#viewer.light .viewer-actions button[aria-pressed=true]{background:var(--soft)}
#viewer.light :focus-visible{outline-color:var(--accent)}
.viewer-picture.zoomed img{width:var(--zoom-width,1440px)}
.viewer-bottom h2{font-size:30px}
@media(min-width:1500px){.opening-work img{max-height:var(--hero-height)}.opening-work figcaption{max-width:none}}
@media(max-width:1000px){.site-header{gap:24px}.brand img{width:160px}.section-intro{gap:24px 45px}.collection-works{gap:80px 35px}.work.offset{margin-top:70px}.hero-caption{display:flex}.hero-caption h2{margin:0}.interiors-layout{gap:45px}.interiors-copy{padding-top:0}.interiors-copy h2{font-size:42px}.study-actions .primary-link{padding:12px 16px;font-size:15px;gap:12px}}
@media(max-width:740px){
  :root{--header-height:75px;--gutter:22px}
  .site-header{gap:13px;padding:12px var(--gutter)}
  .brand img{width:147px;height:50px}
  #main-nav.open{padding-bottom:4px}
  .opening{padding-top:26px;padding-bottom:25px}
  .opening-intro{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:24px}
  .opening-intro h1{font-size:36px}
  .opening-intro .text-link{margin:0}
  .opening-work{width:100%}
  .opening-work img{max-height:none;width:100%;height:auto}
  .opening-work figcaption{display:grid;grid-template-columns:1fr auto;gap:10px 8px;margin-top:16px}
  .hero-caption{display:flex;gap:12px;align-items:baseline;grid-column:1/-1}
  .hero-caption h2{font-size:24px}
  .slideshow-controls{margin:0;gap:0}
  .opening-pages{gap:1px}
  .page-step{min-width:24px;padding:0 2px}
  .page-track{width:20px}
  .section-intro{display:block;margin:64px 0 35px}
  .section-intro h2{font-size:44px;max-width:480px;margin:19px 0 24px}
  .section-intro>p:last-child{font-size:18px}
  .collection-toolbar{margin-bottom:35px;padding:4px 0;top:var(--header-height)}
  .toolbar-note{font-size:12px}
  .view-switch{gap:2px}
  .view-switch button{font-size:13px;padding:7px 9px}
  .collection-works{display:grid;grid-template-columns:1fr;gap:62px}
  .work.wide,.work.seven,.work.five,.work.six{grid-column:auto;width:100%;margin:0}
  .work.portrait{max-width:84%}
  .work h3{font-size:27px}
  .collection-works.overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 18px}
  .overview .work.portrait{width:100%;max-width:100%}
  .overview .work figcaption{display:flex;flex-wrap:wrap;gap:0;margin-top:12px}
  .overview .work figcaption>div{width:100%}
  .overview .work h3{font-size:20px}
  .overview .save-button{margin-left:auto}
  .overview .rights-note{font-size:12px}
  .collection-end{margin:70px auto}
  .interiors-invite,.about{padding:60px var(--gutter)}
  .interiors-invite h2,.about h2{font-size:44px}
  .page-lead{padding-top:45px;padding-bottom:45px}
  .page-lead h1{font-size:50px}
  .page-lead>p:last-child{font-size:19px}
  .interiors-layout{gap:32px;padding-bottom:55px}
  .scale-study{width:100%;max-width:520px;margin:auto}
  .interiors-copy h2{font-size:43px}
  .composition-controls{margin-top:27px;padding-top:24px}
  .study-actions .primary-link{padding:15px 22px;font-size:16px}
  .scene-credit{font-size:12px}
  .project-notes{padding:20px var(--gutter) 35px}
  .simple-cta{padding:60px var(--gutter)}
  #viewer{padding:10px 18px}
  .viewer-top{gap:8px;font-size:12px;flex-wrap:wrap}
  #viewer-background{font-size:12px;padding:4px 8px}
  .viewer-top .text-button{padding:4px 0}
  .viewer-picture{padding:16px 0}
  .viewer-bottom h2{font-size:26px}
}
@media(max-width:370px){:root{--gutter:18px}.brand img{width:130px}.site-header{gap:10px}.menu-toggle{gap:8px}.opening-intro h1{font-size:33px}.hero-caption h2{font-size:22px}.toolbar-note{max-width:80px}.section-intro h2{font-size:39px}.page-lead h1{font-size:44px}.viewer-top #viewer-position{width:100%;line-height:1.3}.viewer-top #viewer-background{margin-right:auto}.viewer-top{gap:0}.viewer-actions button{font-size:14px;padding:6px 8px}.view-switch button{padding:7px 8px}}
@media(hover:none){.image-hint{display:none}}
@media(prefers-reduced-motion:reduce){.image-hint{transform:none;transition:none}}
