/* Vizit — estilos gallery. Page structure + 20 self-contained sample cards. */
.est { background: #FBFBF9; font-family: 'Satoshi', sans-serif; color: #101418; }
.est__hero { max-width: 1180px; margin: 0 auto; padding: 56px 24px 24px; text-align: center; }
.est__badge { display: inline-block; font-size: 12.5px; font-weight: 600; color: #E63E14; background: #FFF1EC; border: 1px solid #FFD9CC; padding: 5px 12px; border-radius: 999px; }
.est__title { font-family: 'General Sans', sans-serif; font-weight: 700; font-size: clamp(34px, 4.6vw, 50px); line-height: 1.05; letter-spacing: -.025em; margin: 18px auto 0; max-width: 760px; text-wrap: balance; }
.est__sub { font-size: 17px; line-height: 1.6; color: #5b5750; margin: 18px auto 0; max-width: 540px; }
.est__filters { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 26px; }
.est__chip { font-size: 13px; font-weight: 600; padding: 8px 15px; border-radius: 999px; background: #fff; border: 1px solid #E1E0DA; color: #5b5750; cursor: pointer; font-family: inherit; }
.est__chip:hover { border-color: #101418; }
.est__chip--active { background: #101418; color: #fff; border-color: #101418; }
.est__grid { max-width: 1180px; margin: 0 auto; padding: 24px 24px 72px; display: grid; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 30px; align-items: start; }
.est__cta { max-width: 1180px; margin: 0 auto 76px; padding: 0 24px; }
.est__ctabox { background: #101418; border-radius: 26px; padding: 52px 40px; text-align: center; }
.est__ctatitle { font-family: 'General Sans', sans-serif; font-weight: 700; font-size: 30px; letter-spacing: -.02em; color: #fff; margin: 0; }
.est__ctasub { font-size: 16px; color: #b8b5ad; margin: 12px 0 26px; }
.est__ctabtn { display: inline-block; text-decoration: none; background: #FF4A1C; color: #fff; font-size: 15.5px; font-weight: 700; padding: 15px 28px; border-radius: 13px; }

/* shared sample-card bits */
.sc-av { width: 62px; height: 62px; display: flex; align-items: center; justify-content: center; font-family: 'General Sans', sans-serif; font-weight: 600; font-size: 22px; }
.sc-name { font-family: 'General Sans', sans-serif; font-weight: 700; font-size: 20px; margin: 16px 0 3px; }
.sc-role { margin: 0; font-size: 13px; }
.sc-links { margin-top: 20px; display: flex; flex-direction: column; gap: 9px; }

/* 1 Minimalista */
.c1 { background: #fff; border: 1px solid #ECEBE6; border-radius: 24px; padding: 28px; box-shadow: 0 14px 34px -20px rgba(16,20,24,.28); }
.c1-av { border-radius: 50%; background: #101418; color: #fff; }
.c1-role { color: #9a968d; }
.c1-link { display: flex; align-items: center; gap: 10px; border: 1px solid #ECEBE6; border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 600; }
.c1-dot { width: 8px; height: 8px; border-radius: 50%; }

/* 2 Noir */
.c2 { background: #0B0B0C; border: 1px solid #232326; border-radius: 24px; padding: 28px; color: #fff; }
.c2-av { border-radius: 50%; background: #171719; border: 1px solid #35353a; color: #fff; }
.c2-name { margin: 16px 0 4px; letter-spacing: .01em; }
.c2-role { font-size: 11px; color: #8b8b91; letter-spacing: .22em; text-transform: uppercase; }
.c2-link { border: 1px solid #2a2a2d; border-radius: 12px; padding: 11px 13px; font-size: 13px; color: #e6e6e8; letter-spacing: .03em; }

/* 3 Neon */
.c3 { background: radial-gradient(120% 100% at 20% 0%, #141230 0%, #0A0A12 60%); border: 1px solid #2a2650; border-radius: 24px; padding: 28px; color: #fff; }
.c3-av { border-radius: 16px; background: linear-gradient(135deg, #8B5CF6, #22D3EE); color: #0A0A12; font-weight: 700; box-shadow: 0 0 24px rgba(139,92,246,.6); }
.c3-name { background: linear-gradient(90deg, #A78BFA, #5EEAD4); -webkit-background-clip: text; background-clip: text; color: transparent; }
.c3-role { font-size: 12px; color: #a5a2c9; }
.c3-link1 { border: 1px solid #6D28D9; border-radius: 12px; padding: 11px 13px; font-size: 13px; font-weight: 600; color: #DDD6FE; box-shadow: inset 0 0 12px rgba(139,92,246,.25); }
.c3-link2 { border: 1px solid #0E7490; border-radius: 12px; padding: 11px 13px; font-size: 13px; font-weight: 600; color: #A5F3FC; box-shadow: inset 0 0 12px rgba(34,211,238,.22); }

/* 4 Editorial */
.c4 { background: #F4EFE6; border: 1px solid #E3DACA; border-radius: 24px; padding: 28px; color: #1A1A18; }
.c4-est { margin: 0 0 14px; font-family: Georgia, serif; font-style: italic; font-size: 13px; color: #8a8272; }
.c4-name { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; font-size: 30px; line-height: 1.05; margin: 0; }
.c4-rule { height: 1px; background: #D8CEBB; margin: 16px 0; }
.c4-role { margin: 0; font-family: Georgia, serif; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: #6a6355; }
.c4-links { margin-top: 20px; display: flex; flex-direction: column; gap: 0; }
.c4-row { border-top: 1px solid #E3DACA; padding: 11px 2px; font-family: Georgia, serif; font-size: 14px; display: flex; justify-content: space-between; }
.c4-arrow { color: #a29a88; }

/* 5 Sunset */
.c5 { background: linear-gradient(160deg, #FF9A5A 0%, #FF5E7E 52%, #A24BCE 100%); border-radius: 24px; padding: 28px; color: #fff; box-shadow: 0 18px 40px -20px rgba(162,75,206,.6); }
.c5-av { border-radius: 50%; background: rgba(255,255,255,.22); backdrop-filter: blur(6px); border: 1px solid rgba(255,255,255,.4); color: #fff; }
.c5-name { font-size: 21px; }
.c5-role { color: rgba(255,255,255,.85); }
.c5-link { background: rgba(255,255,255,.2); backdrop-filter: blur(6px); border: 1px solid rgba(255,255,255,.3); border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 600; }

/* 6 Pop */
.c6 { background: #FFE44D; border: 2.5px solid #101418; border-radius: 24px; padding: 26px; color: #101418; box-shadow: 6px 6px 0 #101418; }
.c6-av { width: 60px; height: 60px; border-radius: 16px; background: #FF5DA2; border: 2.5px solid #101418; color: #fff; font-weight: 700; }
.c6-name { font-size: 21px; }
.c6-role { font-weight: 600; }
.c6-links { margin-top: 20px; display: flex; flex-direction: column; gap: 10px; }
.c6-btn1 { background: #3B82F6; border: 2.5px solid #101418; border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 700; color: #fff; }
.c6-btn2 { background: #fff; border: 2.5px solid #101418; border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 700; }

/* 7 Pastel */
.c7 { background: #F3ECFF; border: 1px solid #E4D8FB; border-radius: 24px; padding: 28px; color: #3B2D57; }
.c7-av { border-radius: 50%; background: #fff; border: 1px solid #E4D8FB; color: #8B5CF6; }
.c7-role { color: #8b7fb0; }
.c7-btn { background: #fff; border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 600; color: #6D28D9; }

/* 8 Corporativo */
.c8 { background: #fff; border: 1px solid #E4E7EE; border-radius: 24px; overflow: hidden; box-shadow: 0 14px 34px -22px rgba(30,58,138,.4); }
.c8-cover { height: 66px; background: #1E3A8A; }
.c8-body { padding: 0 26px 26px; margin-top: -32px; }
.c8-av { width: 64px; height: 64px; border-radius: 14px; background: #fff; border: 3px solid #fff; box-shadow: 0 4px 10px rgba(30,58,138,.2); color: #1E3A8A; font-weight: 700; }
.c8-name { font-size: 19px; margin: 14px 0 3px; color: #0F172A; }
.c8-role { color: #64748B; }
.c8-links { margin-top: 18px; display: flex; flex-direction: column; gap: 9px; }
.c8-btn1 { background: #EFF3FB; border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 600; color: #1E3A8A; }
.c8-btn2 { border: 1px solid #E4E7EE; border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 600; color: #334155; }

/* 9 Poster */
.c9 { background: #101418; border-radius: 24px; padding: 28px; color: #fff; min-height: 250px; display: flex; flex-direction: column; }
.c9-kicker { font-size: 11px; letter-spacing: .28em; text-transform: uppercase; color: #7c7a72; }
.c9-name { font-family: 'General Sans', sans-serif; font-weight: 700; font-size: 44px; line-height: .92; letter-spacing: -.03em; margin: auto 0; color: #E7FE55; }
.c9-tags { display: flex; gap: 10px; }
.c9-tag { border: 1px solid #33332f; border-radius: 999px; padding: 8px 14px; font-size: 12px; font-weight: 600; }

/* 10 Retrô */
.c10 { background: #F0E3C8; border: 1px solid #E0CFA6; border-radius: 24px; padding: 28px; color: #4A2E1E; }
.c10-av { border-radius: 50%; background: #C65D3B; color: #F0E3C8; font-weight: 700; }
.c10-name { color: #8A3B1E; }
.c10-role { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #a5794c; }
.c10-btn1 { background: #C65D3B; border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 700; color: #F0E3C8; }
.c10-btn2 { border: 1.5px solid #C65D3B; border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 700; color: #8A3B1E; }

/* 11 Nature */
.c11 { background: #EDF3EC; border: 1px solid #D3E3CF; border-radius: 24px; padding: 28px; color: #1F3D2B; }
.c11-av { border-radius: 20px 20px 20px 4px; background: #2F6B4F; color: #EDF3EC; }
.c11-role { color: #6b8a75; }
.c11-btn1 { background: #2F6B4F; border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 600; color: #EDF3EC; }
.c11-btn2 { background: #fff; border: 1px solid #D3E3CF; border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 600; color: #2F6B4F; }

/* 12 Luxo */
.c12 { background: #0C0C0C; border: 1px solid #241E12; border-radius: 24px; padding: 28px; color: #EADfce; }
.c12-av { border-radius: 50%; border: 1px solid #C6A15B; color: #C6A15B; font-family: Georgia, serif; font-size: 24px; }
.c12-name { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; font-size: 24px; letter-spacing: .16em; margin: 18px 0 4px; color: #E7D5AE; }
.c12-role { font-size: 11px; letter-spacing: .3em; text-transform: uppercase; color: #8a7a55; }
.c12-links { margin-top: 22px; display: flex; flex-direction: column; gap: 0; }
.c12-row { border-top: 1px solid #241E12; padding: 12px 2px; font-family: Georgia, serif; font-size: 13px; letter-spacing: .05em; display: flex; justify-content: space-between; color: #C6A15B; }

/* 13 Brutalista */
.c13 { background: #fff; border: 2.5px solid #111; border-radius: 4px; padding: 24px; box-shadow: 7px 7px 0 #FF3B30; }
.c13-top { display: flex; justify-content: space-between; align-items: flex-start; }
.c13-url { font-family: 'Courier New', monospace; font-size: 10px; letter-spacing: .1em; }
.c13-num { font-family: 'General Sans', sans-serif; font-weight: 800; font-size: 40px; line-height: .8; color: #FF3B30; }
.c13-name { font-family: 'General Sans', sans-serif; font-weight: 800; font-size: 26px; text-transform: uppercase; line-height: .9; margin: 20px 0 4px; }
.c13-role { font-family: 'Courier New', monospace; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: #666; margin: 0; }
.c13-list { margin-top: 18px; }
.c13-row { border-top: 1.5px solid #111; padding: 11px 0; font-weight: 700; font-size: 13px; display: flex; justify-content: space-between; }
.c13-rule { border-top: 1.5px solid #111; }

/* 14 Y2K */
.c14 { background: linear-gradient(180deg, #6E2BE0, #B14BE0 45%, #28D8E0); border-radius: 22px; padding: 26px; color: #fff; text-align: center; position: relative; overflow: hidden; }
.c14-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.14) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.14) 1px, transparent 1px); background-size: 24px 24px; transform: perspective(160px) rotateX(48deg) translateY(70px) scale(1.6); opacity: .5; }
.c14-rel { position: relative; }
.c14-stars { font-size: 13px; letter-spacing: .3em; }
.c14-name { font-family: 'Clash Display', sans-serif; font-weight: 700; font-size: 34px; margin-top: 6px; background: linear-gradient(180deg, #fff 0%, #cdd6ff 47%, #8f9bff 53%, #fff 100%); -webkit-background-clip: text; background-clip: text; color: transparent; filter: drop-shadow(0 2px 2px rgba(0,0,0,.3)); }
.c14-role { font-size: 9px; letter-spacing: .22em; margin-top: 6px; text-shadow: 0 1px 2px rgba(0,0,0,.3); }
.c14-links { margin-top: 18px; display: flex; flex-direction: column; gap: 9px; }
.c14-btn1 { background: linear-gradient(180deg, #fff, #d9e0ff); color: #5B21B6; border-radius: 999px; padding: 11px; font-weight: 700; font-size: 12.5px; box-shadow: inset 0 -3px 0 rgba(91,33,182,.25); }
.c14-btn2 { background: linear-gradient(180deg, #FFE1F6, #FFA6E4); color: #9D174D; border-radius: 999px; padding: 11px; font-weight: 700; font-size: 12.5px; box-shadow: inset 0 -3px 0 rgba(157,23,77,.25); }

/* 15 Terminal */
.c15 { background: #070B08; border: 1px solid #16341f; border-radius: 22px; padding: 24px; color: #39FF7A; font-family: 'Courier New', ui-monospace, monospace; font-size: 12px; line-height: 1.5; }
.c15-dim { opacity: .6; font-size: 10px; }
.c15-mt { margin-top: 12px; }
.c15-cmd { color: #4de08a; }
.c15-out { color: #eafff0; }
.c15-dim2 { opacity: .75; }
.c15-links { margin-top: 14px; display: flex; flex-direction: column; gap: 8px; }
.c15-link { border: 1px solid #16341f; background: #0c160f; border-radius: 6px; padding: 10px; }
.c15-caret { margin-top: 12px; }
.c15-cursor { display: inline-block; width: 8px; height: 14px; background: #39FF7A; vertical-align: -2px; animation: vz-blink 1.1s step-end infinite; }

/* 16 Art Déco */
.c16 { background: #0E1B2A; border: 1px solid #C9A24B; border-radius: 18px; padding: 28px 24px; color: #EAD9B0; text-align: center; }
.c16-fan { display: block; margin: 0 auto; }
.c16-av { width: 58px; height: 58px; border-radius: 50%; border: 1px solid #C9A24B; margin: 14px auto 0; display: flex; align-items: center; justify-content: center; font-family: Georgia, serif; font-size: 24px; color: #C9A24B; }
.c16-name { font-family: Georgia, serif; font-weight: 400; font-size: 20px; letter-spacing: .14em; margin: 14px 0 4px; }
.c16-role { font-size: 9px; letter-spacing: .24em; text-transform: uppercase; color: #8a7a55; margin: 0; }
.c16-links { margin-top: 20px; display: flex; flex-direction: column; gap: 9px; }
.c16-btn { border: 1px solid #C9A24B; border-radius: 8px; padding: 10px; font-family: Georgia, serif; font-size: 12px; letter-spacing: .06em; color: #EAD9B0; }

/* 17 Holográfico */
.c17 { background: linear-gradient(120deg, #ffd1ff, #c1fffd 30%, #d6ffd1 55%, #fff3b0 80%, #ffd1ff); border-radius: 24px; padding: 26px; color: #3a2a4a; text-align: center; }
.c17-av { width: 70px; height: 70px; border-radius: 50%; background: rgba(255,255,255,.55); backdrop-filter: blur(4px); border: 1px solid rgba(255,255,255,.8); margin: 0 auto; display: flex; align-items: center; justify-content: center; font-family: 'Clash Display', sans-serif; font-weight: 700; font-size: 26px; color: #7a5a9a; }
.c17-name { font-family: 'Clash Display', sans-serif; font-weight: 700; font-size: 21px; margin: 14px 0 3px; }
.c17-role { font-size: 12px; color: #6a5a78; margin: 0; font-weight: 600; }
.c17-links { margin-top: 18px; display: flex; flex-direction: column; gap: 9px; }
.c17-btn { background: rgba(255,255,255,.6); backdrop-filter: blur(4px); border: 1px solid rgba(255,255,255,.8); border-radius: 14px; padding: 11px; font-size: 13px; font-weight: 600; }

/* 18 Memphis */
.c18 { background: #FFFDF5; border: 2px solid #111; border-radius: 22px; padding: 24px; position: relative; overflow: hidden; }
.c18-circle { position: absolute; top: -16px; right: -16px; width: 58px; height: 58px; border-radius: 50%; background: #FF5DA2; }
.c18-tri { position: absolute; bottom: 24px; right: 14px; width: 0; height: 0; border-left: 15px solid transparent; border-right: 15px solid transparent; border-bottom: 26px solid #23C9FF; transform: rotate(18deg); }
.c18-sq { position: absolute; top: 70px; right: 26px; width: 12px; height: 12px; background: #FFC93C; transform: rotate(20deg); }
.c18-rel { position: relative; }
.c18-av { width: 56px; height: 56px; border-radius: 14px; background: #7C4DFF; border: 2px solid #111; transform: rotate(-6deg); display: flex; align-items: center; justify-content: center; font-family: 'General Sans', sans-serif; font-weight: 800; font-size: 22px; color: #fff; }
.c18-name { font-family: 'General Sans', sans-serif; font-weight: 800; font-size: 22px; margin: 16px 0 2px; }
.c18-role { font-size: 12px; font-weight: 600; color: #555; margin: 0; }
.c18-links { margin-top: 18px; display: flex; flex-direction: column; gap: 9px; }
.c18-btn1 { background: #FFC93C; border: 2px solid #111; border-radius: 12px; padding: 10px; font-size: 13px; font-weight: 700; text-align: center; }
.c18-btn2 { background: #23C9FF; border: 2px solid #111; border-radius: 12px; padding: 10px; font-size: 13px; font-weight: 700; text-align: center; }

/* 19 Jornal */
.c19 { background: #F4F1E9; border: 1px solid #d9d3c4; border-radius: 6px; padding: 24px; color: #1a1a1a; font-family: Georgia, 'Times New Roman', serif; }
.c19-head { text-align: center; border-bottom: 3px double #1a1a1a; padding-bottom: 8px; }
.c19-masthead { font-weight: 700; font-size: 24px; letter-spacing: .03em; }
.c19-edition { font-size: 8.5px; letter-spacing: .2em; text-transform: uppercase; color: #6a6558; margin-top: 5px; font-family: 'Plus Jakarta Sans', sans-serif; }
.c19-name { font-weight: 700; font-size: 23px; line-height: 1; margin: 14px 0 6px; }
.c19-role { font-style: italic; font-size: 12px; color: #4a463d; margin: 0 0 10px; }
.c19-cols { columns: 2; column-gap: 14px; font-size: 9.5px; line-height: 1.55; color: #5a564c; text-align: justify; }
.c19-foot { border-top: 1px solid #d9d3c4; margin-top: 12px; padding-top: 9px; font-size: 12px; font-weight: 700; display: flex; justify-content: space-between; font-family: 'Plus Jakarta Sans', sans-serif; }

/* 20 Cassete */
.c20 { background: #26262b; border-radius: 16px; padding: 18px; color: #e8e8ea; }
.c20-body { background: #111216; border-radius: 9px; padding: 16px; }
.c20-label { background: #F3E9C8; border-radius: 4px; padding: 9px 10px; text-align: center; color: #1a1a1a; font-family: 'Courier New', monospace; }
.c20-title { font-size: 13px; font-weight: 700; letter-spacing: .02em; }
.c20-side { font-size: 8.5px; letter-spacing: .14em; margin-top: 2px; }
.c20-reels { display: flex; justify-content: center; gap: 36px; margin-top: 16px; }
.c20-reel { width: 46px; height: 46px; border-radius: 50%; border: 6px solid #3a3a40; background: #e8e8ea; display: flex; align-items: center; justify-content: center; }
.c20-hub { width: 12px; height: 12px; border-radius: 50%; background: #3a3a40; }
.c20-tape { height: 10px; border-radius: 3px; background: #3a3a40; margin-top: 16px; }
.c20-links { margin-top: 16px; display: flex; flex-direction: column; gap: 9px; }
.c20-btn1 { background: #1DB954; color: #fff; border-radius: 12px; padding: 11px; font-size: 13px; font-weight: 700; text-align: center; }
.c20-btn2 { background: #3a3a40; color: #e8e8ea; border-radius: 12px; padding: 11px; font-size: 13px; font-weight: 700; text-align: center; }

/* style-card footer */
.sc-foot { display: flex; align-items: center; gap: 8px; margin-top: 14px; padding: 0 4px; }
.sc-foot__label { font-size: 14px; font-weight: 700; }
.sc-foot__desc { font-size: 12px; color: #9a968d; }
.sc-foot__use { background: none; border: none; cursor: pointer; color: #FF4A1C; font-weight: 600; font-size: 13px; text-decoration: none; }

/* ---- avatares com foto na galeria ---- */
.sc-av, .c17-av, .c18-av { overflow: hidden; }
.sc-av img, .c17-av img, .c18-av img { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: inherit; }

/* ---- 21 · prestígio (advogado da landing) ---- */
.c21 { background: #fff; border: 1px solid #E3E1DB; border-radius: 24px; overflow: hidden; box-shadow: 0 14px 34px -22px rgba(20,33,61,.45); }
.c21-cover { height: 66px; background: #14213D; }
.c21-body { padding: 0 26px 26px; margin-top: -32px; text-align: center; }
.c21-av { width: 64px; height: 64px; border-radius: 50%; border: 3px solid #fff; margin: 0 auto; box-shadow: 0 4px 10px rgba(20,33,61,.25); }
.c21-name { font-family: Georgia, serif; font-weight: 400; font-size: 20px; color: #14213D; margin: 12px 0 3px; }
.c21-role { font-size: 10px; letter-spacing: .15em; text-transform: uppercase; color: #8a92a6; margin: 0; }
.c21-links { margin-top: 18px; display: flex; flex-direction: column; gap: 9px; text-align: left; }
.c21-row { display: flex; justify-content: space-between; align-items: center; border: 1px solid #E7E9EF; border-radius: 12px; padding: 11px 13px; font-size: 13.5px; font-weight: 600; color: #14213D; }
.c21-row span { color: #C9A24B; }

/* ---- 22 · festival (dj da landing) ---- */
.c22 { background: radial-gradient(150% 120% at 12% -5%, #FF2E93 0%, #7A00FF 52%, #00E0FF 110%); border-radius: 24px; padding: 26px; color: #fff; font-family: 'Clash Display', sans-serif; }
.c22-av { width: 62px; height: 62px; border-radius: 18px; overflow: hidden; border: 3px solid #FFE400; transform: rotate(-6deg); box-shadow: 0 8px 20px rgba(0,0,0,.3); }
.c22-av img { width: 100%; height: 100%; object-fit: cover; display: block; }
.c22-name { font-weight: 700; font-size: 36px; line-height: .88; letter-spacing: -.03em; margin: 14px 0 0; text-shadow: 0 3px 0 rgba(0,0,0,.18); }
.c22-tag { display: inline-block; background: #111; color: #FFE400; font-size: 9px; font-weight: 700; letter-spacing: .18em; padding: 5px 10px; border-radius: 999px; margin-top: 10px; transform: rotate(-2deg); }
.c22-links { margin-top: 16px; display: flex; flex-direction: column; gap: 10px; }
.c22-btn1 { background: #FFE400; color: #111; font-weight: 700; font-size: 13px; padding: 12px; border-radius: 13px; text-align: center; transform: rotate(-1.5deg); box-shadow: 0 5px 0 rgba(0,0,0,.2); }
.c22-btn2 { background: #00E0FF; color: #111; font-weight: 700; font-size: 13px; padding: 12px; border-radius: 13px; text-align: center; transform: rotate(1.5deg); box-shadow: 0 5px 0 rgba(0,0,0,.2); }

/* ---- 23 · boarding pass (viajante da landing) ---- */
.c23 { background: #FBF7EF; border: 1px solid #E7DFC9; border-radius: 18px; overflow: hidden; font-family: 'Courier New', ui-monospace, monospace; color: #2b2417; }
.c23-head { display: flex; justify-content: space-between; background: #FF4A1C; color: #fff; font-size: 10.5px; font-weight: 700; letter-spacing: .14em; padding: 10px 16px; }
.c23-body { padding: 18px 16px 14px; }
.c23-lbl { font-size: 9px; letter-spacing: .18em; color: #a4977a; }
.c23-name { font-size: 21px; font-weight: 700; letter-spacing: .04em; margin-top: 3px; }
.c23-route { display: flex; align-items: center; gap: 12px; margin-top: 16px; }
.c23-code { font-size: 22px; font-weight: 700; }
.c23-line { flex: 1; text-align: center; border-top: 2px dashed #d8ccab; line-height: 0; font-size: 15px; }
.c23-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 2px dashed #d8ccab; padding: 12px 16px; font-size: 9px; letter-spacing: .12em; color: #7a6f52; }
.c23-bars { width: 90px; height: 22px; background: repeating-linear-gradient(90deg, #2b2417 0 2px, transparent 2px 5px, #2b2417 5px 6px, transparent 6px 9px); }

/* ---- novos layouts renderizados de verdade na galeria ---- */
.est__real { border-radius: 22px; overflow: hidden; }
.est__real.cl-page { min-height: 0; padding: 24px 16px; }
