/* Seção 01 — composição baseada na referência visual fornecida. */
.site-header { height: 72px; padding: 8px 6%; background: #0b0d0c; }
.site-header .monogram { font-size: 2.45rem; }
.site-header nav { gap: 34px; font-family: var(--serif); font-size: 1.05rem; }
.hero { margin-top: 72px; height: clamp(560px, 42vw, 780px); min-height: 0; max-height: none; padding: 70px 6% 50px; }
.hero-image { object-position: center 18%; filter: none; }
.hero:after { background: linear-gradient(90deg, rgba(5,12,13,.64) 0%, rgba(5,12,13,.35) 40%, transparent 65%), linear-gradient(0deg, rgba(5,12,13,.16), transparent 65%); }
.hero-word { top: -9px; left: 20%; width: 60%; font-family: Georgia, serif; font-size: clamp(150px, 23vw, 350px); line-height: .88; letter-spacing: -.06em; color: #f1dfc1; opacity: .87; mask-image: linear-gradient(#000 50%, transparent 98%); }
.hero-copy { max-width: 700px; }
.hero h1 { font-family: var(--serif); font-size: clamp(2.7rem, 4.25vw, 4.7rem); line-height: .97; letter-spacing: -.035em; margin-bottom: 16px; max-width: 720px; text-shadow: 0 2px 20px #0008; }
.hero h1 em { color: inherit; }
.hero-copy > p:not(.eyebrow) { margin: 16px 0 22px; color: #f2efe7; line-height: 1.5; font-size: clamp(1rem, 1.35vw, 1.15rem); max-width: 480px; text-shadow: 0 1px 10px #000b; }
.hero .button { background: linear-gradient(110deg,#b3884b,#c59d64); border-color: #b8955c; color: #fff8ed; font-family: var(--serif); font-size: 1.15rem; min-height: 48px; padding: 10px 24px; border-radius: 3px; gap: 32px; box-shadow: inset 0 0 0 1px #e9c89320; }
.hero .button:hover { background: #b78c52; }
@media(max-width:760px) {
  .site-header { height: 72px; }
  .site-header nav { top: 72px; font-family: var(--sans); font-size: .9375rem; gap: 0; }
  .hero { margin-top:72px; height: 710px; min-height: 0; padding: 270px 7% 45px; }
  .hero-image { object-position: 82% center; }
  .hero:after { background: linear-gradient(0deg,rgba(5,12,13,.87),rgba(5,12,13,.28) 60%,transparent 85%); }
  .hero-word { top: 15px; left: 2%; width: 96%; font-size: 32vw; opacity: .86; }
  .hero h1 { font-size: clamp(2.65rem,9.7vw,4rem); line-height:1.03; max-width: 480px; }
  .hero-copy>p:not(.eyebrow) { font-size:1rem; max-width:360px; }
  .hero .button { font-size:1.125rem; }
  .site-header:has(.menu-toggle[hidden]) + main .hero { margin-top:0; }
}
@media(max-width:360px) { .hero { height:740px; padding-top:260px; } }
