.fc { --m1: var(--manteiga); --m2: var(--lilas-nevoa); --m3: var(--pessego); --m4: var(--rosa-nevoa); padding-bottom: clamp(96px, 12vw, 170px); }
.fc-grade { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.fc-titulo { line-height: 1.02; }
.fc-l1 { display: block; font-size: clamp(2.5rem, 1.1rem + 4.4vw, 5.4rem); }
.fc-seu { display: block; margin-top: .3em; font-size: clamp(1.7rem, 1rem + 2.2vw, 3rem); color: var(--tinta-2); }
.fc-titulo em { position: relative; display: inline-block; }
.fc-risco { left: -6%; width: 112%; height: .5em; bottom: -.32em; }
.fc-risco path { stroke: var(--framboesa); stroke-width: 6; }
.fc-apoio { margin-top: clamp(22px, 3vw, 34px); }
.fc-acoes { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 28px; margin-top: clamp(26px, 3.4vw, 40px); }
.fc-botao { font-size: 1.12rem; padding: 18px 32px 18px 26px; }
.fc-dados { margin: 0; display: grid; gap: 2px; font-size: var(--t-mini); color: var(--tinta-2); }
.fc-dados a { font-family: var(--f-titulo); font-weight: 650; font-size: 1.3rem; color: var(--tinta); text-decoration: none; }
.fc-dados a:hover { color: var(--framboesa-escura); }

.fc-foto { position: relative; margin: 0; justify-self: center; width: min(100%, 470px); }
.fc-polaroide { position: relative; z-index: 2; display: block; padding: 14px 14px 62px; background: var(--papel); border-radius: 4px; transform: rotate(2.2deg);
  box-shadow: 0 1px 1px rgb(60 30 40 / .06), 0 22px 44px -18px rgb(70 40 50 / .38), 0 50px 80px -40px rgb(70 40 50 / .3); }
.fc-polaroide img { display: block; width: 100%; height: auto; aspect-ratio: 1080 / 1300; object-fit: cover; object-position: 50% 20%; border-radius: 2px; filter: saturate(.86) sepia(.08) brightness(1.03); }
.fc-fita { top: -14px; left: 50%; z-index: 3; }
.fc-roda { z-index: 1; left: -24%; top: -12%; width: 146%; }
.fc-roda path { stroke: var(--lilas); stroke-width: 4.5; opacity: .75; }
.fc-legenda { position: absolute; right: 22px; bottom: 16px; font-family: var(--f-titulo); font-weight: 500; font-size: 1.15rem; color: var(--lilas); font-variation-settings: "INFM" 100, "BNCE" 50; transform: rotate(-2deg); }
.fc-acoes { position: relative; }
.fc-ondas { position: relative; width: 28px; height: 44px; margin-left: -12px; flex: none; }
.fc-ondas path { stroke: var(--lilas); stroke-width: 6; }
.fc-bilhete { position: absolute; z-index: 3; left: clamp(-110px, -7vw, -24px); bottom: 4%; width: min(310px, 76%); }
.fc-bilhete blockquote { font-size: 1.1rem; }
.fc-assina { font-family: var(--f-titulo) !important; font-size: 1.35rem !important; color: var(--framboesa-escura) !important; font-weight: 650 !important; margin-top: 10px !important; text-align: right; }
.fc-nome { position: relative; display: inline-block; }
.fc-tia { position: absolute; right: 100%; top: -1.05em; margin-right: -.5em; transform: rotate(-12deg); font-size: 1em; color: var(--framboesa); font-variation-settings: "INFM" 100, "BNCE" 60; font-weight: 600; }
.fc-tia-giz { left: 70%; top: 85%; width: 1.6em; }
.fc-tia-giz path { stroke: var(--framboesa); stroke-width: 3; }

@media (max-width: 860px) {
  .fc-grade { grid-template-columns: minmax(0, 1fr); }
  .fc-foto { order: -1; width: min(86%, 400px); margin-bottom: 30px; }
  .fc-foto { margin-bottom: 20px; }
  .fc-bilhete { position: relative; left: -4%; bottom: auto; width: 82%; margin-top: -8px; }
  .fc-assina { padding-top: .9em; }
  .fc-tia { top: -1.2em; margin-right: -.2em; }
  .fc-ondas { display: none; }
  .fc-legenda { font-size: 1rem; right: 16px; bottom: 14px; }
  .fc-botao { width: 100%; justify-content: center; }
}

/* rodapé (fim.html) */
.fim { background: var(--ameixa); color: color-mix(in oklab, var(--creme) 84%, transparent); padding: clamp(56px, 7vw, 96px) var(--margem) 28px; font-size: .95rem; }
.fim-dentro { max-width: var(--largura); margin: 0 auto; display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 40px; }
.fim-marca { display: flex; gap: 16px; align-items: flex-start; }
.fim-simbolo { width: 54px; flex: none; fill: none; stroke: var(--lilas-nevoa); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.fim-coracao { fill: var(--rosa-nevoa); stroke: none; }
.fim p { margin: 0; }
.fim-nome { font-family: var(--f-titulo); font-weight: 700; font-size: 1.5rem; color: var(--creme); }
.fim-reg { margin-top: 2px !important; color: var(--manteiga); font-weight: 450; }
.fim-desc { margin-top: 12px !important; max-width: 30em; line-height: 1.55; }
.fim-tit { font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; color: var(--lilas-nevoa); margin-bottom: 12px !important; font-weight: 500; }
.fim address { font-style: normal; line-height: 1.65; }
.fim ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.fim a { color: var(--creme); text-decoration: none; display: inline-flex; min-height: 40px; align-items: center; border-bottom: 1px solid transparent; }
.fim a:hover { border-color: var(--manteiga); }
.fim-base { max-width: var(--largura); margin: clamp(40px, 5vw, 64px) auto 0; padding-top: 22px; border-top: 1px solid rgb(255 255 255 / .12);
  display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 30px; font-size: var(--t-mini); color: color-mix(in oklab, var(--creme) 68%, transparent); }
.fim-selo a { color: var(--manteiga); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; min-height: 0; }
@media (max-width: 860px) { .fim-dentro { grid-template-columns: 1fr; gap: 30px; } }
