/* Geemil — página inicial. Seções animadas e estáticas alternam; o estado inicial de cada
   movimento só existe sob html.mov, dentro de [data-movimento="animada"]. */

/* ───────── Abertura (animada) ───────── */
.abertura { position: relative; overflow: clip; padding: clamp(36px, 6.5vh, 72px) var(--margem) clamp(56px, 7vw, 96px); text-align: center; }
.abertura__texto { position: relative; z-index: 6; max-width: 1240px; margin: 0 auto; }
.abertura__titulo { margin-top: 22px; font-size: clamp(44px, 7.2vw, 110px); line-height: .98; }
.abertura__titulo .linha--junta { display: inline-block; vertical-align: bottom; }
.abertura__acoes { margin-top: clamp(26px, 4vh, 42px); display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }

.leque { --qc: clamp(250px, 25vw, 372px); position: relative; margin-top: clamp(40px, 6.5vh, 68px); height: calc(var(--qc) * 1.367 + 34px); }
.leque__q {
  --abre: 1; --x: 0px; --y: 0px; --r: 0deg; --sobe: 40px;
  position: absolute; left: 50%; top: 0; width: var(--w); aspect-ratio: 3 / 4.1; display: block;
  border-radius: 4px; overflow: hidden; background: var(--areia); text-decoration: none;
  box-shadow: 0 34px 60px -34px rgba(31, 22, 18, .6), 0 2px 6px rgba(31, 22, 18, .08);
  transform:
    translate3d(calc(-50% + var(--x) * var(--abre)), calc(var(--y) * var(--abre) + (1 - var(--abre)) * 90px - var(--p, 0) * var(--sobe)), 0)
    rotate(calc(var(--r) * var(--abre) * (1 - var(--p, 0) * .85)))
    scale(calc(.86 + .14 * var(--abre)));
  opacity: min(1, calc(var(--abre) * 2.4 + var(--base, 0)));
  will-change: transform;
}
.leque__q img, .leque__q video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.leque__q--centro { --w: var(--qc); --base: 1; z-index: 5; }
.leque__q--centro::after { content: ""; position: absolute; inset: 10px; border: 1px dashed rgba(236, 220, 194, .78); border-radius: 2px; pointer-events: none; }
.leque__q--e1 { --w: calc(var(--qc) * .84); --x: calc(var(--qc) * -.86); --y: 46px; --r: -5deg; --sobe: 96px; z-index: 4; }
.leque__q--d1 { --w: calc(var(--qc) * .84); --x: calc(var(--qc) * .86); --y: 46px; --r: 5deg; --sobe: 96px; z-index: 4; }
.leque__q--e2 { --w: calc(var(--qc) * .7); --x: calc(var(--qc) * -1.56); --y: 124px; --r: -10deg; --sobe: 160px; z-index: 3; }
.leque__q--d2 { --w: calc(var(--qc) * .7); --x: calc(var(--qc) * 1.56); --y: 124px; --r: 10deg; --sobe: 160px; z-index: 3; }
.leque__nome {
  position: absolute; left: 10px; bottom: 10px; padding: 8px 12px; border-radius: 2px;
  background: rgba(31, 22, 18, .78); color: var(--champanhe);
  font: 500 10.5px/1 var(--sans); letter-spacing: .18em; text-transform: uppercase;
}
a.leque__q:hover .leque__nome { background: var(--caramelo); color: #fff; }
.leque__q--d1 .leque__nome, .leque__q--d2 .leque__nome { left: auto; right: 10px; }

html.mov .abertura:not(.entrou) .leque__q { --abre: 0; }
html.mov .abertura .rotulo, html.mov .abertura__acoes { transition: opacity .8s ease .55s, transform .9s cubic-bezier(.19, 1, .22, 1) .55s; }
html.mov .abertura:not(.entrou) .rotulo, html.mov .abertura:not(.entrou) .abertura__acoes { opacity: 0; transform: translateY(14px); }

@media (max-width: 1000px) {
  .leque__q--e2, .leque__q--d2 { display: none; }
}
@media (max-width: 760px) {
  .leque__nome { display: none; }
  .abertura__titulo { font-size: clamp(34px, 10.3vw, 72px); }
  .abertura__titulo .linha--junta { display: block; }
  .leque { --qc: 58vw; height: calc(var(--qc) * 1.367 + 26px); }
  .leque__q--e2, .leque__q--d2 { display: none; }
  .leque__q--e1, .leque__q--d1 { --y: 34px; --sobe: 60px; }
  .abertura__acoes .botao { width: 100%; max-width: 360px; }
}

/* ───────── Escolha seus estofados (estática) ───────── */
.passos { padding: clamp(72px, 10vw, 150px) var(--margem); background: var(--papel); border-top: 1px solid rgba(42, 29, 24, .08); }
.passos__topo { max-width: 760px; margin: 0 auto; text-align: center; }
.passos__topo h2 { font-size: clamp(38px, 5.2vw, 76px); }
.passos__topo p { margin-top: 22px; }
.passos__lista { max-width: var(--largura); margin: clamp(40px, 5vw, 72px) auto 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(22px, 3vw, 44px); }
.passo { position: relative; display: flex; flex-direction: column; border: 1px solid var(--fio); border-radius: 4px; background: var(--linho); }
.passo__cena { position: relative; height: clamp(250px, 23vw, 320px); display: grid; place-items: center; padding: 24px; border-radius: 3px 3px 0 0; background: var(--areia) var(--trama); overflow: hidden; }
.passo h3 { padding: 22px 26px 26px; font-size: clamp(22px, 2.1vw, 29px); text-wrap: balance; }
.passo:not(:last-child)::after {
  content: ""; position: absolute; z-index: 2; left: 100%; top: clamp(125px, 11.5vw, 160px); width: clamp(22px, 3vw, 44px); height: 12px;
  background:
    linear-gradient(90deg, var(--caramelo-vivo) 0 6px, transparent 6px 11px) 0 5px / 11px 1.5px repeat-x,
    conic-gradient(from 225deg at 100% 50%, var(--caramelo-vivo) 0 90deg, transparent 0) 100% 50% / 7px 12px no-repeat;
}
/* cenas: demonstração do que acontece em cada passo */
.mini { border-radius: 3px; background: var(--papel); box-shadow: 0 14px 26px -18px rgba(31, 22, 18, .55); overflow: hidden; }
.mini img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.mini__nome { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 9px 11px 10px; font: 380 17px/1.1 var(--serifa); font-variation-settings: "SOFT" 100; }
.mini__nome small { font: 500 9px/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--suave); }
.cena-modelos { width: 100%; display: flex; align-items: center; justify-content: center; }
.cena-modelos .mini { flex: none; width: 38%; }
.cena-modelos .mini__nome small { display: none; }
.cena-modelos .mini:nth-child(1) { rotate: -5deg; translate: 7% 12px; }
.cena-modelos .mini:nth-child(2) { position: relative; z-index: 2; margin: 0 -6%; translate: 0 -14px; }
.cena-modelos .mini:nth-child(3) { rotate: 5deg; translate: -7% 12px; }
.cena-lista { position: relative; width: min(100%, 330px); }
.cena-lista .mini { width: 80%; }
.cena-lista__marcador { position: absolute; left: calc(80% - 44px); top: 10px; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 2px; background: var(--caramelo); color: #fff; }
.cena-lista__marcador svg { width: 13px; height: 15px; }
.cena-lista__botao {
  position: absolute; right: 0; bottom: -6px; display: inline-flex; align-items: center; gap: 9px; padding: 0 7px 0 13px; height: 40px;
  border: 1px solid rgba(42, 29, 24, .5); border-radius: 3px; background: var(--papel); box-shadow: 0 14px 26px -16px rgba(31, 22, 18, .6);
  font: 500 10px/1 var(--sans); letter-spacing: .15em; text-transform: uppercase; white-space: nowrap;
}
.cena-lista__botao svg { width: 12px; height: 14px; }
.cena-lista__botao b { min-width: 24px; height: 24px; display: inline-grid; place-items: center; border-radius: 2px; background: var(--caramelo); color: #fff; font-weight: 500; letter-spacing: 0; font-size: 12px; }
.cena-zap { position: relative; width: min(100%, 330px); }
.cena-zap__balao { position: relative; padding: 14px 16px 12px; border-radius: 10px 10px 2px 10px; background: #E3F5D5; color: #1d2b1f; font-size: 15.5px; line-height: 1.5; box-shadow: 0 14px 26px -18px rgba(31, 22, 18, .55); }
.cena-zap__balao strong { display: block; font-weight: 500; margin-bottom: 4px; }
.cena-zap__balao span { display: block; }
.cena-zap__selo { position: absolute; right: -10px; top: -16px; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; background: var(--zap); color: #fff; box-shadow: 0 8px 16px -8px rgba(31, 22, 18, .6); }
.cena-zap__selo svg { width: 22px; height: 22px; }
.passos__acao { margin-top: clamp(36px, 4.5vw, 60px); text-align: center; }
@media (max-width: 900px) {
  .passos__lista { grid-template-columns: minmax(0, 1fr); max-width: 460px; gap: 40px; }
  .passo__cena { height: auto; min-height: 250px; padding: 30px 24px 36px; }
  .passo:not(:last-child)::after {
    left: 50%; top: 100%; width: 12px; height: 40px; translate: -50% 0;
    background:
      linear-gradient(180deg, var(--caramelo-vivo) 0 6px, transparent 6px 11px) 5px 0 / 1.5px 11px repeat-y,
      conic-gradient(from 315deg at 50% 100%, var(--caramelo-vivo) 0 90deg, transparent 0) 50% 100% / 12px 7px no-repeat;
  }
}

/* ───────── Categorias (animada) ───────── */
.categorias { position: relative; padding: clamp(72px, 9vw, 130px) 0; }
.categorias__fila { max-width: var(--largura); margin: 0 auto; padding: 0 var(--margem); display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(28px, 3vw, 44px) clamp(16px, 2.2vw, 32px); }
.categorias__intro { grid-column: 1 / -1; max-width: 820px; margin-bottom: clamp(8px, 2vw, 28px); }
.categorias__intro h2 { font-size: clamp(40px, 5.6vw, 84px); }
.categorias__intro p { margin-top: 22px; max-width: 30em; }
.cat { display: flex; flex-direction: column; text-decoration: none; }
.cat__foto { position: relative; aspect-ratio: 4 / 5; border-radius: 4px; overflow: hidden; background: var(--areia); }
.cat__foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.cat__topo { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; margin-top: 18px; }
.cat__topo h3 { font-size: clamp(27px, 2.9vw, 42px); }
.cat__n { flex: none; font: 500 11px/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--caramelo); white-space: nowrap; }
.cat__texto { margin-top: 10px; font-size: 15.5px; line-height: 1.5; color: var(--suave); text-wrap: pretty; }
.cat .link-seta { align-self: flex-start; margin-top: 16px; }
.cat:hover .link-seta { color: var(--caramelo); }
.categorias__regua { display: none; }

/* grade (celular, tablet, sem movimento): fotos abrem por recorte ao entrar */
html.mov .categorias .cat__foto { transition: clip-path 1.1s cubic-bezier(.19, 1, .22, 1); clip-path: inset(0); }
html.mov .categorias .cat:not(.entrou) .cat__foto { clip-path: inset(100% 0 0 0); }
html.mov .categorias .cat__topo, html.mov .categorias .cat__texto, html.mov .categorias .cat .link-seta { transition: opacity .7s ease .25s; }
html.mov .categorias .cat:not(.entrou) .cat__topo, html.mov .categorias .cat:not(.entrou) .cat__texto, html.mov .categorias .cat:not(.entrou) .link-seta { opacity: 0; }

/* percurso horizontal (telas largas, com movimento) */
@media (min-width: 1024px) and (min-height: 620px) {
  html.mov .categorias { padding: 0; height: calc(100vh - var(--topo) + var(--dist, 0px)); }
  html.mov .categorias__palco { position: sticky; top: var(--topo); height: calc(100vh - var(--topo)); overflow: clip; display: flex; align-items: center; }
  html.mov .categorias__fila {
    flex: none; width: max-content; max-width: none; margin: 0; padding: 0 var(--margem); display: flex; align-items: center; gap: clamp(22px, 2.4vw, 40px);
    transform: translate3d(calc(var(--pf, 0) * -1px), 0, 0); will-change: transform;
  }
  html.mov .categorias__intro { flex: none; width: min(36vw, 520px); margin: 0 clamp(8px, 3vw, 56px) 0 0; }
  html.mov .categorias__intro h2 { font-size: clamp(44px, 5vw, 78px); }
  html.mov .cat { flex: none; width: clamp(300px, 26vw, 400px); }
  html.mov .categorias .cat__foto { aspect-ratio: auto; height: min(52vh, 500px); clip-path: none; transition: none; }
  html.mov .categorias .cat__foto img { inset: 0 -9%; width: 118%; max-width: none; transform: translate3d(calc(var(--k, 0) * -7%), 0, 0); will-change: transform; }
  html.mov .categorias .cat:not(.entrou) .cat__foto { clip-path: none; }
  html.mov .categorias .cat:not(.entrou) .cat__topo, html.mov .categorias .cat:not(.entrou) .cat__texto, html.mov .categorias .cat:not(.entrou) .link-seta { opacity: 1; }
  html.mov .categorias__regua { display: block; position: absolute; left: var(--margem); right: var(--margem); bottom: clamp(18px, 3.4vh, 34px); height: 1px; background: rgba(42, 29, 24, .16); }
  html.mov .categorias__regua i { display: block; height: 3px; margin-top: -1px; background: var(--caramelo-vivo); transform-origin: 0 50%; transform: scaleX(var(--pr, 0)); }
}
@media (max-width: 1023px) {
  .categorias__fila { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 520px) {
  .cat__topo { flex-direction: column; gap: 6px; }
  .cat__texto { font-size: 14.5px; }
}

/* ───────── Conheça nosso atelier (estática) ───────── */
.atelier { padding: clamp(40px, 5.4vw, 84px) var(--margem); }
.atelier__tela { position: relative; max-width: var(--largura); margin: 0 auto; aspect-ratio: 16 / 9; border-radius: 4px; overflow: hidden; background: #0d0907; }
.atelier__tela > img, .atelier__tela > video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.atelier__tela::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(20, 14, 11, .62) 0%, rgba(20, 14, 11, 0) 46%); pointer-events: none; }
.atelier__tela.tocando::before, .atelier__tela.tocando .atelier__titulo, .atelier__tela.tocando .atelier__tocar { display: none; }
.atelier__titulo { position: absolute; z-index: 2; left: clamp(20px, 4vw, 56px); top: clamp(18px, 3.6vw, 48px); max-width: 9em; font-size: clamp(34px, 5.6vw, 88px); color: var(--champanhe); }
.atelier__tocar {
  position: absolute; z-index: 2; left: 50%; top: 54%; translate: -50% -50%; width: clamp(76px, 8.4vw, 118px); aspect-ratio: 1;
  display: grid; place-items: center; border-radius: 50%; border: 1px solid rgba(236, 220, 194, .85);
  background: rgba(31, 22, 18, .42); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); color: var(--champanhe);
}
.atelier__tocar:hover { background: var(--champanhe); color: var(--cafe); }
.atelier__tocar svg { width: 26%; height: 26%; margin-left: 6%; }
@media (max-width: 700px) { .atelier__tela { aspect-ratio: 4 / 3.4; } }

/* ───────── Avaliações (animada) ───────── */
.avaliacoes { padding: clamp(80px, 10vw, 150px) var(--margem) clamp(90px, 11vw, 170px); }
.avaliacoes__grade { max-width: var(--largura); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 5vw, 88px); align-items: start; }
.avaliacoes__grade > * { min-width: 0; }
.avaliacoes__lado { position: sticky; top: calc(var(--topo) + clamp(28px, 7vh, 80px)); }
.avaliacoes__lado h2 { margin-top: 20px; font-size: clamp(42px, 5.6vw, 84px); }
.nota { margin-top: clamp(28px, 4vw, 52px); display: flex; align-items: flex-end; gap: 22px; }
.nota__valor { font: 330 clamp(84px, 10vw, 150px)/.8 var(--serifa); font-variation-settings: "SOFT" 100; letter-spacing: -.04em; }
.nota__estrelas { display: flex; gap: 5px; color: var(--caramelo-vivo); }
.nota__estrelas svg { width: 22px; height: 22px; fill: currentColor; stroke: currentColor; stroke-width: 1.2; stroke-linejoin: round; }
.nota__legenda { margin-top: 10px; font-size: 14.5px; color: var(--suave); }
.avaliacoes__mural { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(14px, 1.6vw, 24px); align-items: start; }
.avaliacoes__col { display: grid; gap: clamp(14px, 1.6vw, 24px); will-change: transform; }
.avaliacoes__col:nth-child(2) { margin-top: clamp(40px, 6vw, 96px); }
.depo { padding: clamp(22px, 2.2vw, 30px); border: 1px solid rgba(42, 29, 24, .12); border-radius: 4px; background: var(--papel); }
.depo__estrelas { display: flex; gap: 3px; color: var(--caramelo-vivo); }
.depo__estrelas svg { width: 14px; height: 14px; fill: currentColor; }
.depo blockquote { margin-top: 16px; font-size: 16px; line-height: 1.58; text-wrap: pretty; }
.depo figcaption { margin-top: 20px; font: 500 11px/1.3 var(--sans); letter-spacing: .18em; text-transform: uppercase; color: var(--suave); }
.avaliacoes__setas { display: none; }
.seta { width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid rgba(42, 29, 24, .45); border-radius: 3px; background: transparent; color: var(--tinta); }
.seta:hover { background: var(--tinta); color: var(--papel); }
.seta svg { width: 18px; height: 12px; }
.seta[disabled] { opacity: .35; cursor: default; }
.seta[disabled]:hover { background: transparent; color: var(--tinta); }

html.mov .avaliacoes .avaliacoes__col:nth-child(1) { transform: translate3d(0, calc((.5 - var(--p, .5)) * 90px), 0); }
html.mov .avaliacoes .avaliacoes__col:nth-child(2) { transform: translate3d(0, calc((var(--p, .5) - .5) * 130px), 0); }
html.mov .avaliacoes .nota__estrelas svg { transition: fill .5s ease, transform .7s cubic-bezier(.19, 1, .22, 1); transition-delay: calc(.5s + var(--i, 0) * .13s); }
html.mov .avaliacoes:not(.entrou) .nota__estrelas svg { fill: transparent; transform: scale(.6) rotate(-18deg); }
html.mov .avaliacoes .nota__valor { transition: clip-path 1.2s cubic-bezier(.19, 1, .22, 1) .25s; clip-path: inset(-12% -6% -45% -6%); }
html.mov .avaliacoes:not(.entrou) .nota__valor { clip-path: inset(-12% -6% 112% -6%); }

@media (max-width: 900px) {
  .avaliacoes__grade { grid-template-columns: minmax(0, 1fr); }
  .avaliacoes__lado { position: static; }
  .avaliacoes__mural { display: flex; align-items: stretch; gap: 14px; margin: 0 calc(var(--margem) * -1); padding: 0 var(--margem) 6px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
  .avaliacoes__mural::-webkit-scrollbar { display: none; }
  .avaliacoes__col { display: contents; }
  .depo { flex: none; width: min(84vw, 380px); scroll-snap-align: center; }
  html.mov .avaliacoes .avaliacoes__col:nth-child(n) { transform: none; }
  .avaliacoes__setas { display: flex; gap: 10px; margin-top: 18px; }
}

/* ───────── Instagram (estática) ───────── */
.reels { padding: clamp(72px, 9vw, 130px) 0 clamp(72px, 9vw, 130px); background: var(--areia) var(--trama); }
.reels__topo { max-width: var(--largura); margin: 0 auto; padding: 0 var(--margem); display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.reels .rotulo { color: #7C4222; }
.reels__topo h2 { margin-top: 18px; font-size: clamp(40px, 5.2vw, 76px); }
.reels__topo p { margin-top: 16px; }
.reels__setas { display: flex; gap: 10px; flex: none; }
.reels__faixa { --borda: max(var(--margem), calc((100vw - var(--largura)) / 2 + var(--margem))); margin-top: clamp(30px, 4vw, 52px); display: flex; gap: clamp(12px, 1.4vw, 20px); padding: 0 var(--borda) 8px; scroll-padding-inline: var(--borda); overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none; overscroll-behavior-x: contain; }
.reels__faixa::-webkit-scrollbar { display: none; }
.reel { position: relative; flex: none; width: clamp(200px, 19vw, 264px); aspect-ratio: 9 / 16; display: block; border-radius: 4px; overflow: hidden; background: var(--tabaco); scroll-snap-align: start; }
.reel img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.reel__tocar { position: absolute; left: 50%; top: 50%; translate: -50% -50%; width: 58px; height: 58px; display: grid; place-items: center; border-radius: 50%; background: rgba(250, 247, 241, .92); color: var(--tinta); }
.reel__tocar svg { width: 16px; height: 16px; margin-left: 3px; }
.reel:hover .reel__tocar { background: var(--caramelo); color: #fff; }
.reels__pe { max-width: var(--largura); margin: clamp(26px, 3vw, 40px) auto 0; padding: 0 var(--margem); }
.reels__pe .link-seta svg { width: 18px; height: 18px; }
@media (max-width: 700px) {
  .reels__topo { flex-direction: column; align-items: flex-start; }
  .reel { width: 58vw; }
}

/* ───────── Nossa história (animada) ───────── */
.historia { position: relative; overflow: clip; padding: clamp(80px, 10vw, 150px) var(--margem) clamp(84px, 10vw, 160px); }
.historia::before { content: ""; position: absolute; inset: 0; background: radial-gradient(60% 50% at 22% 62%, rgba(176, 106, 62, .26), transparent 70%); pointer-events: none; }
.historia__dentro { position: relative; max-width: var(--largura); margin: 0 auto; }
.historia__ano { margin-top: 18px; display: flex; flex-direction: column; font-size: clamp(30px, 3.4vw, 52px); }
.historia__desde { font-style: italic; color: var(--caramelo-claro); }
.historia__1998 { position: relative; display: block; margin: -.04em 0 0 -.03em; font-size: clamp(120px, 42vw, 640px); line-height: .8; letter-spacing: -.05em; font-weight: 300; white-space: nowrap; }
.historia__1998 span { display: block; }
.historia__contorno { color: transparent; -webkit-text-stroke: 1px rgba(236, 220, 194, .6); }
.historia__cheio { position: absolute; inset: 0; color: var(--champanhe); clip-path: inset(-8% 0 -8% 0); }
.historia__corpo { margin-top: clamp(40px, 6vw, 96px); display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 6vw, 110px); align-items: center; }
.historia__foto { position: relative; aspect-ratio: 4 / 5; border-radius: 4px; overflow: hidden; background: #0f0a08; }
.historia__foto img { position: absolute; left: 0; top: -8%; width: 100%; height: 116%; object-fit: cover; object-position: 50% 42%; }
.historia__texto p { font-size: clamp(17px, 1.35vw, 20px); line-height: 1.62; color: #d9c9b3; max-width: 34em; text-wrap: pretty; }
.historia__texto p + p { margin-top: 1.2em; }
.historia__texto .historia__frase { margin-top: clamp(30px, 3.6vw, 52px); padding-top: clamp(26px, 3vw, 44px); border-top: 1px dashed rgba(236, 220, 194, .4); font: 340 clamp(27px, 3vw, 46px)/1.14 var(--serifa); font-variation-settings: "SOFT" 100; letter-spacing: -.02em; color: var(--champanhe); max-width: 17em; text-wrap: balance; }

html.mov .historia .historia__cheio { clip-path: inset(-8% calc((1 - var(--p1, 1)) * 100%) -8% 0); }
html.mov .historia .historia__foto { transition: clip-path 1.3s cubic-bezier(.19, 1, .22, 1); clip-path: inset(0); }
html.mov .historia:not(.entrou-corpo) .historia__foto { clip-path: inset(0 0 100% 0); }
html.mov .historia .historia__foto img { transform: translate3d(0, calc((var(--p, .5) - .5) * -9%), 0); will-change: transform; }
html.mov .historia .historia__texto p { transition: opacity .9s ease, transform 1.1s cubic-bezier(.19, 1, .22, 1); transition-delay: calc(.15s + var(--i, 0) * .14s); }
html.mov .historia:not(.entrou-corpo) .historia__texto p { opacity: 0; transform: translateY(26px); }
@media (max-width: 700px) {
  .historia__corpo { grid-template-columns: 1fr; }
  .historia__foto { max-width: 420px; }
}

/* ───────── Envie seu projeto (estática) ───────── */
.projeto {
  padding: clamp(80px, 10vw, 150px) var(--margem);
  background:
    linear-gradient(rgba(42, 29, 24, .05) 1px, transparent 1px) 0 0 / 100% 44px,
    linear-gradient(90deg, rgba(42, 29, 24, .05) 1px, transparent 1px) 0 0 / 44px 100%,
    var(--papel);
}
.projeto__grade { max-width: var(--largura); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(36px, 6vw, 110px); align-items: center; }
.projeto h2 { font-size: clamp(42px, 5.8vw, 88px); }
.projeto__grade .texto { margin-top: 24px; max-width: 27em; font-size: clamp(17px, 1.3vw, 19px); }
.projeto .botao { margin-top: clamp(26px, 3vw, 40px); }
.cotada { position: relative; margin: 30px 34px 0 0; }
.cotada img { width: 100%; border-radius: 4px; box-shadow: 0 34px 60px -36px rgba(31, 22, 18, .6); }
.cota { position: absolute; color: var(--caramelo-vivo); }
.cota--l { left: 0; right: 0; top: -28px; height: 15px; border-left: 1.5px solid; border-right: 1.5px solid; }
.cota--l::before { content: ""; position: absolute; left: 0; right: 0; top: 7px; border-top: 1.5px solid; }
.cota--a { top: 0; bottom: 0; right: -30px; width: 15px; border-top: 1.5px solid; border-bottom: 1.5px solid; }
.cota--a::before { content: ""; position: absolute; top: 0; bottom: 0; left: 7px; border-left: 1.5px solid; }
.cota span { position: absolute; padding: 0 10px; background: var(--papel); font: 500 10.5px/15px var(--sans); letter-spacing: .2em; text-transform: uppercase; white-space: nowrap; }
.cota--l span { left: 50%; top: 0; translate: -50% 0; }
.cota--a span { left: 7px; top: 50%; translate: -50% -50%; rotate: 90deg; }
@media (max-width: 860px) {
  .projeto__grade { grid-template-columns: 1fr; }
  .cotada { margin-right: 30px; }
}
