.fm-site {
  --fm-orange: #ff762f;
  --fm-dark: #111110;
  --fm-muted: #aaa8a1;
  --fm-cream: #f0ede6;
  margin: 0;
  background: var(--fm-dark);
  color: #f4f1ea;
  font-family: 'DM Sans', sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
.fm-site *, .fm-site *::before, .fm-site *::after { box-sizing: border-box; }
.fm-site a { color: inherit; text-decoration: none; }
.fm-site button, .fm-site input, .fm-site select { font: inherit; }
.fm-site button, .fm-site a { -webkit-tap-highlight-color: transparent; }
.fm-site button { cursor: pointer; }
.fm-site img { display: block; max-width: 100%; }
.fm-site h1, .fm-site h2, .fm-site h3, .fm-site p { margin: 0; }
.fm-site h1, .fm-site h2, .fm-site h3 { font-family: 'Manrope', sans-serif; }
.fm-site h2 { font-size: clamp(34px, 3.8vw, 52px); line-height: 1.12; letter-spacing: -2px; font-weight: 650; }
.fm-site h2 > span { color: var(--fm-orange); }
.fm-site section[id] { scroll-margin-top: 24px; }
.fm-site :focus-visible { outline: 2px solid var(--fm-orange); outline-offset: 5px; }
.fm-container { width: min(1200px, calc(100% - 96px)); margin-inline: auto; }
.fm-section { padding-block: 106px; }
.fm-icon { width: 22px; height: 22px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.fm-symbols { width: 0; height: 0; position: absolute; overflow: hidden; }
.fm-skip { position: absolute; z-index: 50; left: 16px; top: 16px; transform: translateY(-150%); background: var(--fm-orange); color: #111 !important; padding: 14px 20px; border-radius: 5px; }
.fm-skip:focus { transform: none; }
.fm-eyebrow { display: flex; align-items: center; gap: 10px; font-size: 10px; font-weight: 600; letter-spacing: 1.9px; line-height: 1.8; }
.fm-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--fm-orange); flex-shrink: 0; }
.fm-line { width: 24px; height: 1px; background: var(--fm-orange); }
.fm-button { display: inline-flex; align-items: center; justify-content: center; gap: 26px; min-height: 54px; padding: 17px 22px; border-radius: 4px; background: var(--fm-orange); color: #15130f !important; font-size: 13px; font-weight: 650; line-height: 1.5; transition: background .2s, transform .2s; }
.fm-button:hover { background: #ff965d; transform: translateY(-2px); }
.fm-button .fm-icon { width: 19px; height: 19px; }
.fm-text-link { display: inline-flex; align-items: center; gap: 18px; min-height: 44px; font-size: 13px; font-weight: 550; transition: color .2s; }
.fm-text-link:hover { color: var(--fm-orange); }
.fm-text-link .fm-icon { width: 18px; height: 18px; transition: transform .2s; }
.fm-text-link:hover .fm-icon { transform: translateX(3px); }
.fm-header { position: relative; z-index: 20; background: #111110; border-bottom: 1px solid #ffffff12; }
.fm-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 25px; min-height: 104px; }
.fm-logo { display: flex; align-items: center; width: 128px; flex-shrink: 0; }
.fm-logo img { width: 100%; height: 78px; object-fit: contain; }
.fm-nav { display: flex; align-items: center; gap: 32px; font-size: 12px; color: #b9b7b1; }
.fm-nav > a { min-height: 44px; display: inline-flex; align-items: center; }
.fm-nav > a:hover { color: #fff; }
.fm-nav .fm-nav-cta { border: 1px solid #ffffff35; color: #f2ede5; padding: 12px 18px; border-radius: 4px; gap: 18px; margin-left: 12px; }
.fm-nav .fm-nav-cta:hover { border-color: var(--fm-orange); }
.fm-nav-cta .fm-icon { width: 16px; height: 16px; color: var(--fm-orange); }
.fm-menu-toggle { display: none; }
.fm-hero { position: relative; isolation: isolate; min-height: 740px; overflow: hidden; background: #111110; }
.fm-hero-visual { position: absolute; z-index: -2; inset: 0 0 0 30%; }
.fm-hero-visual img { width: 100%; height: 100%; object-fit: cover; object-position: 73% center; }
.fm-hero::before { content: ''; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, #111110 3%, #111110f5 29%, #111110ba 44%, #11111023 75%), linear-gradient(0deg, #111110d9, transparent 30%); }
.fm-hero-inner { min-height: 740px; position: relative; padding-block: 62px 72px; }
.fm-hero-copy { width: 62%; position: relative; }
.fm-hero-copy .fm-eyebrow { color: #d2cec4; margin-bottom: 25px; }
.fm-site h1 { font-size: clamp(48px, 5vw, 70px); line-height: 1.045; letter-spacing: -3.1px; font-weight: 650; }
.fm-site h1 > span { color: var(--fm-orange); }
.fm-hero-description { max-width: 370px; margin-top: 27px !important; color: #cac6bd; font-size: 15px; line-height: 1.85; }
.fm-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; margin-top: 31px; }
.fm-hero-actions .fm-text-link { color: #d0cbc1; font-size: 12px; }
.fm-hero-trust { display: flex; align-items: center; gap: 11px; margin-top: 26px; color: #929088; font-size: 10px; letter-spacing: .35px; }
.fm-hero-caption { position: absolute; bottom: 58px; right: 0; border-left: 1px solid #ffffff4d; padding-left: 18px; max-width: 245px; }
.fm-hero-caption > span { font-size: 8px; letter-spacing: 1.7px; color: #cec8bd; }
.fm-hero-caption p { font-size: 13px; line-height: 1.7; margin-top: 12px; }
.fm-market-band { padding-block: 27px; border-top: 1px solid #ffffff12; border-bottom: 1px solid #ffffff12; background: #171715; }
.fm-market-band .fm-container { display: flex; align-items: center; gap: 60px; }
.fm-market-band p { font-size: 8px; letter-spacing: 1.5px; line-height: 1.9; color: #939087; flex-shrink: 0; }
.fm-market-band p strong { font-weight: 550; color: #d8d2c6; }
.fm-segments { display: flex; flex-wrap: wrap; align-items: center; gap: 32px; font-family: 'Manrope', sans-serif; font-size: 17px; font-weight: 500; color: #d0cbc0; }
.fm-segments i { width: 4px; height: 4px; background: #6f5c45; border-radius: 50%; }
.fm-band-arrow { margin-left: auto; color: var(--fm-orange); font-size: 25px; }
.fm-section-top { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-bottom: 22px; border-bottom: 1px solid #ffffff1a; margin-bottom: 37px; }
.fm-section-top .fm-eyebrow { color: var(--fm-orange); font-size: 9px; }
.fm-section-caption { font-size: 8px; letter-spacing: 1.1px; color: #77756f; }
.fm-split-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 55px; }
.fm-split-heading h2 { flex: 1; }
.fm-split-heading > p { max-width: 315px; color: var(--fm-muted); font-size: 13px; line-height: 1.9; padding-bottom: 4px; }
.fm-journey { display: flex; margin-top: 59px; }
.fm-step { flex: 1; border-top: 1px solid #ffffff28; padding: 26px 26px 0; border-right: 1px solid #ffffff15; position: relative; }
.fm-step:first-child { padding-left: 0; }
.fm-step:last-child { padding-right: 0; border-right: 0; }
.fm-step::before { content: ''; position: absolute; width: 6px; height: 6px; left: 26px; top: -4px; background: var(--fm-orange); border-radius: 50%; }
.fm-step:first-child::before { left: 0; }
.fm-step-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 31px; }
.fm-step-top > span { color: #69675f; font-size: 11px; font-family: 'Manrope', sans-serif; }
.fm-step-top .fm-icon { color: var(--fm-orange); width: 26px; height: 26px; }
.fm-step h3 { font-size: 21px; font-weight: 550; letter-spacing: -.7px; line-height: 1.3; min-height: 57px; }
.fm-step > p { color: #a6a298; font-size: 12px; line-height: 1.85; margin-top: 18px; min-height: 91px; }
.fm-step-label { display: block; margin-top: 21px; color: #77756d; font-size: 7px; font-weight: 550; letter-spacing: 1.25px; }
.fm-solutions { background: var(--fm-cream); color: #27261f; }
.fm-solutions .fm-section-top { border-bottom-color: #28261924; }
.fm-solutions .fm-section-caption { color: #8b877c; }
.fm-solutions .fm-section-top .fm-eyebrow { color: #955327; }
.fm-solutions .fm-split-heading h2 > span { color: #8d8272; }
.fm-solutions .fm-split-heading > p { color: #777165; }
.fm-service-list { margin-top: 49px; }
.fm-service-row { display: flex; align-items: center; gap: 50px; padding-block: 32px; border-top: 1px solid #24221922; }
.fm-service-row:last-child { border-bottom: 1px solid #24221922; }
.fm-service-name { display: flex; gap: 36px; width: 45%; flex-shrink: 0; }
.fm-service-index { color: #a79883; font-size: 13px; padding-top: 5px; }
.fm-service-name h3 { font-size: 29px; font-weight: 550; letter-spacing: -1px; line-height: 1.23; }
.fm-service-explanation { flex: 1; }
.fm-service-explanation > p { color: #6d665b; font-size: 13px; line-height: 1.9; max-width: 445px; }
.fm-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 15px; }
.fm-tags span { font-size: 8px; padding: 5px 9px; border: 1px solid #aaa18e55; border-radius: 20px; color: #827769; }
.fm-service-arrow { color: #847664; margin-left: 10px; width: 25px; height: 25px; }
.fm-solutions-link { margin-top: 26px; color: #6b4a30 !important; }
.fm-solutions-link:hover { color: #be5727 !important; }
.fm-crm { background: #171816; overflow: hidden; }
.fm-crm-layout { display: flex; align-items: center; gap: 70px; }
.fm-crm-copy { width: 42%; flex-shrink: 0; }
.fm-crm-copy .fm-eyebrow { color: var(--fm-orange); margin-bottom: 23px; font-size: 9px; }
.fm-crm-copy h2 { font-size: 43px; }
.fm-crm-copy > p:not(.fm-eyebrow) { color: #a7a69c; font-size: 13px; line-height: 1.9; margin-top: 24px; max-width: 400px; }
.fm-feature-list { padding: 0; margin: 25px 0 31px; list-style: none; display: flex; flex-direction: column; gap: 12px; }
.fm-feature-list li { display: flex; align-items: center; gap: 10px; font-size: 12px; color: #c6c1b5; }
.fm-feature-list .fm-icon { color: var(--fm-orange); width: 16px; height: 16px; }
.fm-button-outline { background: transparent; color: #eee9dc !important; border: 1px solid #6d655652; }
.fm-button-outline:hover { background: #ff762f0e; border-color: var(--fm-orange); }
.fm-crm-visual { flex: 1; min-width: 0; border: 1px solid #ffffff22; border-radius: 9px; background: #21231f; box-shadow: 0 30px 100px #0005; position: relative; }
.fm-software-header { display: flex; gap: 20px; align-items: center; padding: 17px 16px; color: #a4a699; }
.fm-window-dots { display: flex; gap: 5px; }
.fm-window-dots i { width: 5px; height: 5px; border-radius: 50%; background: #68695d; }
.fm-software-header > span { font-size: 7px; letter-spacing: 1.1px; }
.fm-software-header > .fm-icon { width: 14px; height: 14px; margin-left: auto; color: #868a76; }
.fm-crm-visual > img { width: 100%; height: auto; background: #f8f8fb; }
.fm-crm-bottom { display: flex; align-items: center; gap: 14px; padding: 23px; background: #24251f; border-radius: 0 0 8px 8px; }
.fm-crm-bottom > p { font-size: 10px; color: #aba995; line-height: 1.75; }
.fm-crm-bottom > p > strong { display: block; color: #e1dac4; font-weight: 500; font-size: 14px; }
.fm-crm-bottom > .fm-icon { margin-left: auto; color: #b49c70; }
.fm-image-note { color: #706f64; font-size: 8px; position: absolute; left: 0; bottom: -28px; }
.fm-video-list { display: flex; gap: 23px; margin-top: 43px; }
.fm-video-card { flex: 1; min-width: 0; overflow: hidden; border-radius: 7px; border: 1px solid #ffffff1a; background: #22221e; aspect-ratio: 4 / 3; }
.fm-video-trigger { display: block; position: relative; width: 100%; height: 100%; padding: 0; border: 0; background: #1d1e1a; color: #f2eadc; }
.fm-video-trigger img { width: 100%; height: 100%; object-fit: cover; filter: brightness(.64) saturate(.6); transition: filter .3s, transform .5s; }
.fm-video-trigger:hover img { filter: brightness(.86) saturate(.9); transform: scale(1.03); }
.fm-video-trigger::after { content: ''; position: absolute; inset: 55% 0 0; background: linear-gradient(transparent, #111c); }
.fm-play { display: flex; justify-content: center; align-items: center; position: absolute; z-index: 2; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 55px; height: 55px; background: #ff762fe0; color: #18160f; border-radius: 50%; }
.fm-play svg { width: 19px; height: 19px; fill: currentColor; margin-left: 3px; }
.fm-video-index { position: absolute; z-index: 3; bottom: 20px; left: 20px; font-size: 9px; letter-spacing: 1.6px; }
.fm-video-card iframe { display: block; width: 100%; height: 100%; border: 0; }
.fm-stories-note { font-size: 10px; color: #76756c; margin-top: 19px !important; line-height: 1.7; }
.fm-focus { border-block: 1px solid #ffffff14; background: #1c1b16; padding-block: 64px; }
.fm-focus-layout { display: flex; align-items: center; justify-content: space-between; gap: 45px; flex-wrap: wrap; }
.fm-focus-layout > .fm-eyebrow { flex-basis: 100%; color: #bca78b; font-size: 8px; }
.fm-focus h2 { font-size: 43px; }
.fm-focus h2 > span { color: #aba394; }
.fm-focus-side { max-width: 350px; }
.fm-focus-side p { color: #aaa498; font-size: 13px; line-height: 1.9; }
.fm-focus-side .fm-text-link { color: #d3b999; margin-top: 23px; }
.fm-diagnosis { padding-top: 120px; background: #111110; }
.fm-diagnosis-layout { display: flex; gap: 98px; align-items: flex-start; }
.fm-diagnosis-copy { flex: 1; padding-top: 20px; }
.fm-diagnosis-copy .fm-eyebrow { color: var(--fm-orange); font-size: 9px; margin-bottom: 25px; }
.fm-diagnosis-copy h2 { font-size: 56px; }
.fm-diagnosis-copy > p:not(.fm-eyebrow) { margin-top: 24px; max-width: 365px; color: #a7a297; font-size: 14px; line-height: 1.9; }
.fm-diagnosis-steps { list-style: none; padding: 0; margin: 38px 0 0; display: flex; flex-direction: column; gap: 23px; }
.fm-diagnosis-steps li { display: flex; align-items: flex-start; gap: 17px; }
.fm-diagnosis-steps li > span { display: flex; align-items: center; justify-content: center; width: 28px; height: 28px; border: 1px solid #ff762f30; color: var(--fm-orange); border-radius: 50%; font-size: 8px; flex-shrink: 0; }
.fm-diagnosis-steps strong { font-size: 12px; color: #d6d0c3; font-weight: 550; display: block; margin-top: 2px; }
.fm-diagnosis-steps p { font-size: 11px; line-height: 1.8; color: #817c70; margin-top: 4px; }
.fm-contact-alternative { display: flex; gap: 13px; align-items: center; border-top: 1px solid #ffffff15; padding-top: 24px; margin-top: 34px; max-width: 340px; }
.fm-contact-alternative > .fm-icon { color: #ac9b7e; width: 26px; height: 26px; }
.fm-contact-alternative > span { color: #8f897e; font-size: 10px; }
.fm-contact-alternative strong { display: flex; gap: 8px; align-items: center; font-size: 11px; font-weight: 500; color: #d4c6ad; margin-top: 6px; }
.fm-contact-alternative strong > .fm-icon { width: 12px; height: 12px; }
.fm-form-wrap { width: 52%; flex-shrink: 0; background: #1d1d19; border: 1px solid #ffffff16; border-radius: 8px; padding: 33px; }
.fm-form-badge { display: block; font-size: 8px; letter-spacing: 1.4px; color: #a99b85; margin-bottom: 12px; }
.fm-form-top h3 { font-size: 30px; font-weight: 550; letter-spacing: -.9px; }
.fm-form-top p { margin-top: 9px; font-size: 12px; color: #9b9589; line-height: 1.7; }
.fm-preview-note { display: flex; align-items: center; gap: 9px; padding: 11px 12px; border-radius: 4px; background: #ff762f0a; border: 1px solid #ff762f23; color: #b9a286; font-size: 9px; line-height: 1.5; margin: 22px 0 !important; }
.fm-preview-note .fm-icon { width: 15px; height: 15px; }
.fm-site #fmLeadForm { display: grid; grid-template-columns: 1fr 1fr; gap: 19px 16px; position: relative; }
.fm-site .fm-hp { position: absolute; left: -9999px; height: 1px; width: 1px; overflow: hidden; }
.fm-site .fm-field { min-width: 0; }
.fm-site .fm-label { font-size: 10px; font-weight: 500; display: block; color: #c4bdaf; line-height: 1.6; margin-bottom: 7px; }
.fm-site .fm-req { color: #b77b4c; }
.fm-site .fm-input, .fm-site .fm-select { width: 100%; min-height: 49px; border: 1px solid #ffffff19; background: #282923; color: #eee8db; border-radius: 4px; font-size: 12px; padding: 12px; outline: none; transition: border-color .2s, background .2s; }
.fm-site .fm-input:hover, .fm-site .fm-select:hover { border-color: #ffffff3b; }
.fm-site .fm-input:focus, .fm-site .fm-select:focus { border-color: var(--fm-orange); background: #2d2d24; }
.fm-site .fm-input::placeholder { color: #77776b; }
.fm-site .fm-select { padding-right: 24px; }
.fm-site .fm-select option { background: #25261f; }
.fm-site .fm-phone { position: relative; }
.fm-site .fm-flag { position: absolute; inset: 0 auto 0 12px; display: flex; align-items: center; color: #999585; font-size: 9px; }
.fm-site .fm-phone .fm-input { padding-left: 50px; }
.fm-site .fm-msg { display: none; color: #e38e71; font-size: 9px; line-height: 1.6; margin-top: 6px; }
.fm-site .fm-msg.is-visible { display: block; }
.fm-site .fm-input.is-invalid, .fm-site .fm-select.is-invalid { border-color: #d16b55; }
.fm-site .fm-hidden { display: none !important; }
.fm-site #fmBlocoInvestimento { grid-column: 1 / -1; }
.fm-site .fm-submit { grid-column: 1 / -1; width: 100%; min-height: 54px; padding: 16px 20px; background: var(--fm-orange); color: #1a150d; border: 0; border-radius: 4px; font-size: 13px; font-weight: 650; margin-top: 3px; transition: background .2s; }
.fm-site .fm-submit:hover { background: #ff975f; }
.fm-site .fm-submit:disabled { opacity: .7; cursor: wait; }
.fm-site .fm-form-error { display: none; grid-column: 1 / -1; color: #d5b286; font-size: 11px; line-height: 1.7; background: #ff762f0a; padding: 14px; border-radius: 4px; }
.fm-site .fm-form-error.is-visible { display: block; }
.fm-form-privacy { display: flex; align-items: flex-start; gap: 9px; margin-top: 20px !important; font-size: 9px; line-height: 1.8; color: #827d6f; }
.fm-form-privacy .fm-icon { width: 14px; height: 14px; margin-top: 2px; }
.fm-form-privacy a { color: #bbaa90; text-decoration: underline; text-underline-offset: 2px; }
.fm-faq { padding-top: 24px; }
.fm-faq-layout { display: flex; gap: 100px; }
.fm-faq-layout > div:first-child { width: 35%; flex-shrink: 0; }
.fm-faq .fm-eyebrow { color: #a29784; font-size: 8px; margin-bottom: 25px; }
.fm-faq h2 { font-size: 42px; }
.fm-faq h2 > span { color: #a69b87; }
.fm-faq-intro { margin-top: 21px !important; color: #858073; font-size: 12px; line-height: 1.9; }
.fm-faq .fm-text-link { color: #d4b992; font-size: 11px; margin-top: 16px; }
.fm-faq-list { flex: 1; min-width: 0; }
.fm-faq-list details { border-bottom: 1px solid #ffffff15; padding: 19px 0; }
.fm-faq-list details:first-child { border-top: 1px solid #ffffff15; }
.fm-faq-list summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; list-style: none; cursor: pointer; font-size: 13px; line-height: 1.6; color: #cbc2b2; font-weight: 500; }
.fm-faq-list summary::-webkit-details-marker { display: none; }
.fm-faq-list summary .fm-icon { width: 16px; height: 16px; color: #8e8169; transition: transform .2s; }
.fm-faq-list details[open] summary .fm-icon { transform: rotate(180deg); color: var(--fm-orange); }
.fm-faq-list details > p { margin-top: 17px; font-size: 12px; line-height: 1.9; color: #8f8778; max-width: 95%; }
.fm-final-cta { text-align: center; padding-block: 76px 90px; border-top: 1px solid #ffffff13; background: radial-gradient(ellipse at 50% 130%, #47301b55, transparent 75%), #171713; }
.fm-final-cta .fm-eyebrow { justify-content: center; font-size: 8px; color: #9c8b71; margin-bottom: 22px; }
.fm-final-cta h2 { font-size: 53px; }
.fm-final-cta h2 > span { color: #bfab89; }
.fm-final-cta .fm-button { margin-top: 29px; }
.fm-footer { padding-block: 32px 24px; background: #0d0e0c; }
.fm-footer-top { display: flex; align-items: center; gap: 45px; padding-bottom: 25px; border-bottom: 1px solid #ffffff12; }
.fm-footer-top > p { color: #777364; font-size: 11px; line-height: 1.8; }
.fm-footer-links { margin-left: auto; display: flex; align-items: center; gap: 25px; color: #9f9580; }
.fm-footer-links > a { display: inline-flex; align-items: center; min-height: 44px; gap: 6px; font-size: 10px; }
.fm-footer-links .fm-icon { width: 13px; height: 13px; }
.fm-footer-bottom { display: flex; align-items: center; gap: 30px; justify-content: space-between; padding-top: 22px; font-size: 8px; color: #646456; }
.fm-footer-bottom a { min-height: 30px; display: flex; align-items: center; }
.fm-footer a:hover { color: #d6c4a3; }
.fm-noscript { padding: 20px; text-align: center; font-size: 13px; background: #29281e; color: #ded3bd; }
.fm-noscript a { text-decoration: underline; }
@media (min-width: 1600px) {
  .fm-container { width: min(1320px, calc(100% - 128px)); }
  .fm-site h1 { font-size: 78px; }
  .fm-hero, .fm-hero-inner { min-height: 790px; }
}
@media (max-width: 1100px) {
  .fm-container { width: calc(100% - 64px); }
  .fm-nav { gap: 22px; }
  .fm-hero, .fm-hero-inner { min-height: 670px; }
  .fm-site h1 { font-size: 56px; }
  .fm-hero-copy { width: 68%; }
  .fm-hero-caption { max-width: 195px; bottom: 42px; }
  .fm-market-band .fm-container { gap: 35px; }
  .fm-segments { font-size: 14px; gap: 19px; }
  .fm-step { padding-inline: 19px; }
  .fm-step h3 { font-size: 18px; }
  .fm-step::before { left: 19px; }
  .fm-crm-layout, .fm-diagnosis-layout { gap: 46px; }
  .fm-crm-copy h2 { font-size: 35px; }
  .fm-diagnosis-copy h2 { font-size: 45px; }
  .fm-form-wrap { width: 54%; padding: 27px; }
  .fm-faq-layout { gap: 60px; }
  .fm-faq h2 { font-size: 36px; }
}
@media (max-width: 760px) {
  .fm-container { width: calc(100% - 44px); }
  .fm-section { padding-block: 69px; }
  .fm-header-inner { min-height: 88px; }
  .fm-logo { width: 108px; }
  .fm-logo img { height: 69px; }
  .fm-menu-toggle { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid #ffffff25; border-radius: 4px; color: #ddcfb4; background: transparent; }
  .fm-nav { display: none; position: absolute; top: 100%; left: 0; right: 0; background: #171715; padding: 22px; border-bottom: 1px solid #ffffff2a; flex-direction: column; align-items: stretch; gap: 4px; }
  .fm-nav.is-open { display: flex; }
  .fm-nav > a { justify-content: space-between; padding-inline: 10px; }
  .fm-nav .fm-nav-cta { margin: 8px 0 0; }
  .fm-hero, .fm-hero-inner { min-height: 810px; }
  .fm-hero-inner { padding-block: 42px 250px; }
  .fm-hero-copy { width: 100%; }
  .fm-hero-visual { inset: 32% 0 0; }
  .fm-hero-visual img { object-position: 75% center; }
  .fm-hero::before { background: linear-gradient(180deg, #111110 23%, #111110e8 42%, #11111033 71%, #111110a8), linear-gradient(90deg, #11111066, transparent); }
  .fm-site h1 { font-size: clamp(43px, 7.3vw, 59px); line-height: 1.09; letter-spacing: -2.1px; }
  .fm-hero-copy .fm-eyebrow { font-size: 8px; letter-spacing: 1.1px; margin-bottom: 23px; }
  .fm-hero-description { max-width: 340px; font-size: 13px; margin-top: 24px !important; }
  .fm-hero-actions { margin-top: 25px; gap: 9px 24px; }
  .fm-hero-actions .fm-button { font-size: 12px; gap: 20px; }
  .fm-hero-trust { margin-top: 15px; font-size: 9px; }
  .fm-hero-caption { bottom: 31px; left: 22px; right: auto; max-width: 240px; }
  .fm-hero-caption p { font-size: 11px; margin-top: 8px; }
  .fm-market-band { padding-block: 22px; }
  .fm-market-band .fm-container { gap: 23px; align-items: flex-start; flex-direction: column; }
  .fm-market-band p { font-size: 7px; letter-spacing: 1.2px; }
  .fm-market-band p br { display: none; }
  .fm-market-band p strong { margin-left: 6px; }
  .fm-segments { font-size: 12px; gap: 13px; }
  .fm-band-arrow { display: none; }
  .fm-section-top { margin-bottom: 26px; padding-bottom: 18px; }
  .fm-section-top .fm-eyebrow { font-size: 8px; letter-spacing: 1.1px; }
  .fm-section-caption { display: none; }
  .fm-split-heading { flex-direction: column; align-items: flex-start; gap: 22px; }
  .fm-site h2 { font-size: 36px; letter-spacing: -1.35px; }
  .fm-split-heading > p { max-width: 400px; font-size: 12px; }
  .fm-journey { flex-wrap: wrap; row-gap: 39px; margin-top: 36px; }
  .fm-step { flex-basis: 50%; padding-inline: 21px; }
  .fm-step:nth-child(odd) { padding-left: 0; }
  .fm-step:nth-child(even) { padding-right: 0; border-right: 0; }
  .fm-step:nth-child(odd)::before { left: 0; }
  .fm-step-top { margin-bottom: 23px; }
  .fm-step h3 { font-size: 20px; min-height: 55px; }
  .fm-step p { font-size: 11px; min-height: 79px; }
  .fm-step-label { font-size: 6.5px; letter-spacing: .75px; margin-top: 16px; }
  .fm-service-row { flex-wrap: wrap; gap: 20px; padding-block: 29px; position: relative; }
  .fm-service-name { width: 100%; gap: 23px; }
  .fm-service-name h3 { font-size: 25px; }
  .fm-service-explanation { padding-left: 43px; flex-basis: 100%; }
  .fm-service-explanation > p { font-size: 12px; }
  .fm-service-arrow { position: absolute; top: 35px; right: 0; width: 20px; height: 20px; }
  .fm-tags span { font-size: 7px; }
  .fm-solutions-link { font-size: 11px; gap: 12px; }
  .fm-crm-layout { flex-direction: column; align-items: stretch; gap: 42px; }
  .fm-crm-copy { width: 100%; }
  .fm-crm-copy h2 { font-size: 36px; }
  .fm-crm-copy > p:not(.fm-eyebrow) { font-size: 12px; }
  .fm-crm-visual { margin-bottom: 20px; }
  .fm-crm-bottom { padding: 19px; }
  .fm-crm-bottom > p > strong { font-size: 12px; }
  .fm-video-list { flex-direction: column; gap: 18px; margin-top: 31px; }
  .fm-video-card { flex: auto; width: 100%; aspect-ratio: 16 / 10; }
  .fm-focus { padding-block: 48px; }
  .fm-focus-layout { gap: 24px; }
  .fm-focus h2 { font-size: 36px; }
  .fm-focus-side { max-width: 100%; }
  .fm-focus-side p { font-size: 12px; }
  .fm-focus-side .fm-text-link { font-size: 11px; margin-top: 16px; }
  .fm-diagnosis-layout { flex-direction: column; gap: 40px; }
  .fm-diagnosis-copy { padding-top: 0; }
  .fm-diagnosis-copy h2 { font-size: 44px; }
  .fm-diagnosis-copy > p:not(.fm-eyebrow) { font-size: 13px; }
  .fm-form-wrap { width: 100%; padding: 25px; }
  .fm-faq-layout { flex-direction: column; gap: 32px; }
  .fm-faq-layout > div:first-child { width: 100%; }
  .fm-faq h2 { font-size: 36px; }
  .fm-faq-intro { margin-top: 16px !important; }
  .fm-faq-list summary { font-size: 12px; }
  .fm-faq-list details > p { font-size: 11px; }
  .fm-final-cta { padding-block: 55px 64px; }
  .fm-final-cta .fm-eyebrow { font-size: 6px; letter-spacing: 1px; }
  .fm-final-cta h2 { font-size: 37px; }
  .fm-final-cta .fm-button { font-size: 11px; gap: 15px; }
  .fm-footer-top { flex-wrap: wrap; gap: 14px 30px; }
  .fm-footer-top > p { font-size: 9px; }
  .fm-footer-links { width: 100%; margin-left: 0; justify-content: space-between; }
  .fm-footer-bottom { flex-wrap: wrap; gap: 5px 20px; font-size: 7px; }
  .fm-footer-bottom > p { flex-basis: 100%; line-height: 1.8; }
}
@media (max-width: 400px) {
  .fm-container { width: calc(100% - 36px); }
  .fm-hero, .fm-hero-inner { min-height: 830px; }
  .fm-site h1 { font-size: 42px; }
  .fm-hero-actions .fm-button { font-size: 11px; padding-inline: 15px; gap: 14px; }
  .fm-site h2 { font-size: 32px; }
  .fm-step { padding-inline: 15px; }
  .fm-step h3 { font-size: 18px; }
  .fm-step > p { min-height: 101px; }
  .fm-form-wrap { padding: 22px 19px; }
  .fm-site #fmLeadForm { grid-template-columns: 1fr; }
  .fm-diagnosis-copy h2 { font-size: 40px; }
}
@media (prefers-reduced-motion: reduce) {
  .fm-site *, .fm-site *::before, .fm-site *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* Primeira dobra com formulário: mesmas cores, fotografia e degradê. */
.fm-site .fm-header-inner { min-height: 84px; }
.fm-site .fm-header .fm-logo img { height: 65px; }
.fm-site .fm-hero { min-height: 0; }
.fm-site .fm-hero-inner { display: flex; align-items: center; gap: 60px; min-height: calc(100svh - 84px); padding-block: 30px; }
.fm-site .fm-hero-copy { flex: 1; min-width: 0; width: auto; }
.fm-site .fm-hero h1 { font-size: clamp(38px, 4.1vw, 58px); letter-spacing: -2.1px; line-height: 1.07; }
.fm-site .fm-hero-copy .fm-eyebrow { margin-bottom: 22px; }
.fm-site .fm-hero-description { margin-top: 24px !important; max-width: 400px; font-size: 14px; }
.fm-site .fm-hero-actions { margin-top: 25px; gap: 8px 23px; }
.fm-site .fm-hero-actions .fm-button { font-size: 12px; gap: 20px; }
.fm-site .fm-hero-trust { margin-top: 18px; }
.fm-site .fm-hero-form { flex: 0 0 440px; width: 440px; max-width: 48%; padding: 26px; background: #1b1d19f2; border-color: #ffffff28; backdrop-filter: blur(8px); scroll-margin-top: 18px; }
.fm-site .fm-hero-form .fm-form-badge { margin-bottom: 8px; }
.fm-site .fm-hero-form .fm-form-top h3 { font-size: 26px; }
.fm-site .fm-hero-form .fm-form-top p { margin-top: 6px; font-size: 11px; }
.fm-site .fm-hero-form .fm-preview-note { margin: 14px 0 !important; padding: 8px 10px; }
.fm-site .fm-hero-form #fmLeadForm { gap: 13px 14px; }
.fm-site .fm-hero-form .fm-input, .fm-site .fm-hero-form .fm-select { min-height: 46px; }
.fm-site .fm-hero-form .fm-submit { min-height: 49px; }
.fm-site .fm-hero-form .fm-form-privacy { margin-top: 14px !important; }
.fm-site .fm-diagnosis-layout > .fm-diagnosis-steps { width: 47%; margin-top: 60px; flex-shrink: 0; gap: 34px; }
.fm-site .fm-diagnosis-layout > .fm-diagnosis-steps strong { font-size: 17px; line-height: 1.5; }
.fm-site .fm-diagnosis-layout > .fm-diagnosis-steps p { font-size: 13px; }
.fm-site .fm-diagnosis-layout > .fm-diagnosis-steps li > span { width: 36px; height: 36px; font-size: 10px; }

/* Carrossel: telas completas, sem cortes e sem rotação automática. */
.fm-site .fm-crm-layout { gap: 46px; }
.fm-site .fm-crm-copy { width: 36%; }
.fm-carousel { overflow: hidden; }
.fm-carousel .fm-software-header { flex-wrap: wrap; gap: 12px; padding: 12px 16px; }
.fm-carousel .fm-software-header > span { font-size: 7px; }
.fm-carousel-enlarge { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 5px 0 5px 8px; background: transparent; color: #c4b697; border: 0; font-size: 9px !important; }
.fm-carousel-enlarge:hover { color: var(--fm-orange); }
.fm-carousel-enlarge .fm-icon { width: 13px; height: 13px; }
.fm-carousel-viewport { aspect-ratio: 16 / 10; overflow: hidden; background: #f7f8fc; touch-action: pan-y; }
.fm-carousel-slide { margin: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; }
.fm-carousel-slide[hidden] { display: none !important; }
.fm-carousel-slide img { width: 100%; height: 100%; object-fit: contain; user-select: none; }
.fm-carousel-caption { padding: 18px 22px 0; display: flex; align-items: center; gap: 15px; justify-content: space-between; }
.fm-carousel-title { color: #d5cbb5; font-size: 12px; line-height: 1.6; }
.fm-carousel-count { font-size: 9px; color: #8e8977; white-space: nowrap; }
.fm-carousel-controls { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 10px 18px 5px; }
.fm-carousel-arrow { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-width: 44px; padding: 10px; border: 1px solid #ffffff22; border-radius: 50%; background: #ffffff04; color: #bca37e; transition: border-color .2s, background .2s; }
.fm-carousel-arrow:hover { border-color: var(--fm-orange); color: var(--fm-orange); background: #ff762f0c; }
.fm-carousel-arrow .fm-icon { width: 18px; height: 18px; }
.fm-arrow-back { transform: rotate(180deg); }
.fm-carousel-dots { display: flex; align-items: center; gap: 2px; }
.fm-carousel-dots button { display: flex; align-items: center; justify-content: center; width: 24px; height: 40px; background: transparent; border: 0; padding: 0; }
.fm-carousel-dots button::before { content: ''; width: 5px; height: 5px; background: #626257; border-radius: 4px; transition: width .2s, background .2s; }
.fm-carousel-dots button[aria-current="true"]::before { width: 19px; background: var(--fm-orange); }
.fm-carousel-note { color: #8d897b; font-size: 8px; line-height: 1.7; padding: 8px 22px 19px; }
.fm-crm-dialog { width: min(1320px, calc(100vw - 56px)); max-width: calc(100vw - 56px); max-height: calc(100svh - 48px); padding: 0; border: 1px solid #ffffff24; border-radius: 8px; background: #191a15; color: #e6decb; overflow-y: auto; }
.fm-crm-dialog::backdrop { background: #060705e8; backdrop-filter: blur(7px); }
.fm-dialog-inner { padding: 18px; }
.fm-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 14px; }
.fm-dialog-header h3 { font-size: 16px; font-weight: 500; letter-spacing: -.3px; }
.fm-dialog-close { width: 44px; height: 44px; border: 1px solid #ffffff25; border-radius: 50%; background: transparent; color: #cfc0a4; font-size: 28px !important; line-height: 1; }
.fm-dialog-close:hover { color: var(--fm-orange); border-color: var(--fm-orange); }
.fm-dialog-image { display: block; width: 100%; height: auto; max-height: calc(100svh - 220px); object-fit: contain; background: #f7f8fc; border-radius: 3px; }
.fm-dialog-controls { display: flex; align-items: center; justify-content: center; gap: 26px; padding-top: 16px; }
.fm-dialog-count { min-width: 65px; text-align: center; font-size: 11px; color: #b4a790; }
@media (max-width: 1100px) and (min-width: 961px) {
  .fm-site .fm-hero-inner { gap: 36px; }
  .fm-site .fm-hero-form { flex-basis: 400px; width: 400px; max-width: 49%; padding: 23px; }
  .fm-site .fm-hero h1 { font-size: 42px; }
  .fm-site .fm-crm-copy { width: 39%; }
  .fm-site .fm-crm-layout { gap: 30px; }
}
@media (max-width: 960px) {
  .fm-site .fm-hero-inner { flex-direction: column; align-items: stretch; gap: 26px; min-height: 0; padding-block: 30px 38px; }
  .fm-site .fm-hero-copy { width: 100%; }
  .fm-site .fm-hero h1 { font-size: 39px; }
  .fm-site .fm-hero-copy .fm-eyebrow { margin-bottom: 16px; }
  .fm-site .fm-hero-description { margin-top: 15px !important; line-height: 1.7; }
  .fm-site .fm-hero-actions { display: none; }
  .fm-site .fm-hero-trust { display: none; }
  .fm-site .fm-hero-form { flex-basis: auto; width: 100%; max-width: 100%; }
  .fm-site .fm-crm-layout { flex-direction: column; align-items: stretch; gap: 34px; }
  .fm-site .fm-crm-copy { width: 100%; }
  .fm-site .fm-crm-copy > p:not(.fm-eyebrow) { max-width: 520px; }
  .fm-site .fm-diagnosis-layout { flex-direction: column; gap: 24px; }
  .fm-site .fm-diagnosis-layout > .fm-diagnosis-steps { width: 100%; margin-top: 0; gap: 25px; }
}
@media (max-width: 760px) {
  .fm-site .fm-header-inner { min-height: 76px; }
  .fm-site .fm-hero-inner { padding-block: 23px 32px; gap: 22px; }
  .fm-site .fm-hero h1 { font-size: 34px; line-height: 1.07; letter-spacing: -1.1px; }
  .fm-site .fm-hero-description { font-size: 12px; max-width: 400px; }
  .fm-site .fm-hero-visual { inset: 15% 0 0; }
  .fm-site .fm-hero-form { padding: 22px; }
  .fm-site .fm-hero-form .fm-form-top h3 { font-size: 23px; }
  .fm-site .fm-hero-form .fm-label { font-size: 11px; }
  .fm-site .fm-hero-form .fm-input, .fm-site .fm-hero-form .fm-select { font-size: 16px; padding-inline: 10px; }
  .fm-site .fm-hero-form .fm-phone .fm-input { padding-left: 39px; }
  .fm-site .fm-hero-form .fm-flag { left: 9px; }
  .fm-site .fm-hero-form .fm-submit { font-size: 12px; }
  .fm-site .fm-diagnosis-layout > .fm-diagnosis-steps strong { font-size: 15px; }
  .fm-site .fm-diagnosis-layout > .fm-diagnosis-steps p { font-size: 12px; }
  .fm-carousel-caption { padding-inline: 15px; gap: 9px; }
  .fm-carousel-title { font-size: 10px; }
  .fm-carousel-controls { gap: 8px; padding-inline: 12px; }
  .fm-carousel-dots button { width: 23px; }
  .fm-carousel-note { padding-inline: 15px; font-size: 8px; }
  .fm-crm-dialog { width: calc(100vw - 24px); max-width: calc(100vw - 24px); max-height: calc(100svh - 24px); }
  .fm-dialog-inner { padding: 12px; }
  .fm-dialog-header h3 { font-size: 12px; }
  .fm-dialog-close { flex-shrink: 0; }
}
@media (max-width: 400px) {
  .fm-site .fm-hero-form { padding: 20px 17px; }
  .fm-site .fm-hero-form #fmLeadForm { grid-template-columns: 1fr 1fr; gap: 12px 10px; }
  .fm-site .fm-hero h1 { font-size: 32px; }
  .fm-site .fm-hero-copy .fm-eyebrow { font-size: 7px; letter-spacing: .9px; }
  .fm-carousel-dots button { width: 21px; }
}

/* Acesso às páginas de obrigado apenas durante a avaliação do layout. */
.fm-preview-pages { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 25px; border-top: 1px solid #ffffff12; padding-block: 13px 18px; }
.fm-preview-pages > span { font-size: 7px; letter-spacing: 1px; color: #786d5b; margin-right: auto; }
.fm-preview-pages > a { display: inline-flex; align-items: center; min-height: 36px; color: #b39975; font-size: 9px; }
.fm-preview-pages > a:hover { color: var(--fm-orange); }
html:not([data-fm-preview="true"]) .fm-preview-pages { display: none; }

/* Botões verdes com texto branco; demais detalhes mantêm a identidade. */
.fm-site { --fm-action: #25d366; --fm-action-hover: #20bd5a; --fm-action-text: #ffffff; }
.fm-site a.fm-contact-alternative[href^="https://wa.me/"] {
  background: var(--fm-action);
  border: 1px solid var(--fm-action);
  border-radius: 6px;
  padding: 17px 20px;
  color: var(--fm-action-text) !important;
  transition: background .2s, border-color .2s;
}
.fm-site a.fm-contact-alternative[href^="https://wa.me/"] > .fm-icon,
.fm-site a.fm-contact-alternative[href^="https://wa.me/"] > span,
.fm-site a.fm-contact-alternative[href^="https://wa.me/"] strong { color: var(--fm-action-text); }
.fm-site a.fm-contact-alternative[href^="https://wa.me/"]:hover {
  background: var(--fm-action-hover);
  border-color: var(--fm-action-hover);
}
.fm-site a[href^="https://wa.me/"]:focus-visible { outline-color: var(--fm-action-text); }
.fm-site .fm-noscript a[href^="https://wa.me/"] { color: var(--fm-action-text); }

/* Ações do formulário com o mesmo fundo verde e texto branco. */
.fm-site a[href="#form"] { color: var(--fm-action-text) !important; }
.fm-site a[href="#form"].fm-button,
.fm-site a[href="#form"].fm-nav-cta,
.fm-site .fm-submit {
  background: var(--fm-action);
  border-color: var(--fm-action);
  color: var(--fm-action-text) !important;
}
.fm-site a[href="#form"].fm-button:hover,
.fm-site a[href="#form"].fm-nav-cta:hover,
.fm-site .fm-submit:hover {
  background: var(--fm-action-hover);
  border-color: var(--fm-action-hover);
}
.fm-site a[href="#form"].fm-nav-cta .fm-icon { color: currentColor; }
.fm-site a[href="#form"]:focus-visible,
.fm-site .fm-submit:focus-visible { outline-color: var(--fm-action-text); }
/* Links isolados continuam escuros sobre as seções claras. */
.fm-site .fm-solutions a[href="#form"]:not(.fm-button):not(.fm-nav-cta) { color: #111110 !important; }
.fm-site .fm-solutions a[href="#form"]:focus-visible { outline-color: #111110; }
